From 77b9ed1e9111a7f1b7c1ed148c433fa9249a6cc0 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 15 Nov 2019 21:18:05 +0000 Subject: [PATCH 001/262] Bump react from 16.11.0 to 16.12.0 Bumps [react](https://github.com/facebook/react/tree/HEAD/packages/react) from 16.11.0 to 16.12.0. - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v16.12.0/packages/react) Signed-off-by: dependabot-preview[bot] --- package-lock.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index a2b5b692..4ed316ed 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "1.20.10", + "version": "1.20.11", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -12144,9 +12144,9 @@ } }, "react": { - "version": "16.11.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.11.0.tgz", - "integrity": "sha512-M5Y8yITaLmU0ynd0r1Yvfq98Rmll6q8AxaEe88c8e7LxO8fZ2cNgmFt0aGAS9wzf1Ao32NKXtCl+/tVVtkxq6g==", + "version": "16.12.0", + "resolved": "https://registry.npmjs.org/react/-/react-16.12.0.tgz", + "integrity": "sha512-fglqy3k5E+81pA8s+7K0/T3DBCF0ZDOher1elBFzF7O6arXJgzyu/FW+COxFvAWXJoJN9KIZbT2LXlukwphYTA==", "dev": true, "requires": { "loose-envify": "^1.1.0", From 5f20507769d567e9678b636baab7d043f3f2953b Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 18 Nov 2019 19:14:38 +0000 Subject: [PATCH 002/262] [Security] Bump https-proxy-agent from 2.2.1 to 2.2.4 Bumps [https-proxy-agent](https://github.com/TooTallNate/node-https-proxy-agent) from 2.2.1 to 2.2.4. **This update includes security fixes.** - [Release notes](https://github.com/TooTallNate/node-https-proxy-agent/releases) - [Commits](https://github.com/TooTallNate/node-https-proxy-agent/compare/2.2.1...2.2.4) Signed-off-by: dependabot-preview[bot] --- package-lock.json | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4ed316ed..f27b6b5b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -178,15 +178,6 @@ "integrity": "sha1-q11PuIP1loFtNRX495HAr0ht1ic=", "dev": true }, - "agent-base": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", - "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", - "dev": true, - "requires": { - "es6-promisify": "^5.0.0" - } - }, "ajv": { "version": "6.10.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", @@ -7253,15 +7244,24 @@ "dev": true }, "https-proxy-agent": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz", - "integrity": "sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==", + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", + "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", "dev": true, "requires": { - "agent-base": "^4.1.0", + "agent-base": "^4.3.0", "debug": "^3.1.0" }, "dependencies": { + "agent-base": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", + "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "dev": true, + "requires": { + "es6-promisify": "^5.0.0" + } + }, "debug": { "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", @@ -7272,9 +7272,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } From 92092dd7d1668372b2ffc28822de24a1e6240347 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 25 Dec 2019 21:15:14 +0000 Subject: [PATCH 003/262] Bump core-js from 3.2.1 to 3.6.1 Bumps [core-js](https://github.com/zloirock/core-js) from 3.2.1 to 3.6.1. - [Release notes](https://github.com/zloirock/core-js/releases) - [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md) - [Commits](https://github.com/zloirock/core-js/compare/v3.2.1...v3.6.1) Signed-off-by: dependabot-preview[bot] --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index f27b6b5b..b5d2a488 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3259,9 +3259,9 @@ "dev": true }, "core-js": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.2.1.tgz", - "integrity": "sha512-Qa5XSVefSVPRxy2XfUC13WbvqkxhkwB3ve+pgCQveNgYzbM/UxZeu1dcOX/xr4UmfUd+muuvsaxilQzCyUurMw==", + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.1.tgz", + "integrity": "sha512-186WjSik2iTGfDjfdCZAxv2ormxtKgemjC3SI6PL31qOA0j5LhTDVjHChccoc7brwLvpvLPiMyRlcO88C4l1QQ==", "dev": true }, "core-util-is": { From 0cdf867742b505889d6cdcb5278ed919a4cf15db Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Thu, 26 Dec 2019 18:04:32 +0000 Subject: [PATCH 004/262] [Security] Bump handlebars from 4.1.2 to 4.5.3 Bumps [handlebars](https://github.com/wycats/handlebars.js) from 4.1.2 to 4.5.3. **This update includes a security fix.** - [Release notes](https://github.com/wycats/handlebars.js/releases) - [Changelog](https://github.com/wycats/handlebars.js/blob/master/release-notes.md) - [Commits](https://github.com/wycats/handlebars.js/compare/v4.1.2...v4.5.3) Signed-off-by: dependabot-preview[bot] --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index b5d2a488..8a20e42c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6918,9 +6918,9 @@ } }, "handlebars": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz", - "integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==", + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.3.tgz", + "integrity": "sha512-3yPecJoJHK/4c6aZhSvxOyG4vJKDshV36VHp0iVCDVh7o9w2vwi3NSnL2MMPj3YdduqaBcu7cGbggJQM0br9xA==", "dev": true, "requires": { "neo-async": "^2.6.0", From 9932cb5d2f5c8c2ff38f83043d4dd6b369cc320e Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 15 Nov 2019 21:17:20 +0000 Subject: [PATCH 005/262] Bump react-dom from 16.11.0 to 16.12.0 Bumps [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) from 16.11.0 to 16.12.0. - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v16.12.0/packages/react-dom) Signed-off-by: dependabot-preview[bot] --- package-lock.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8a20e42c..353da74e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12155,15 +12155,15 @@ } }, "react-dom": { - "version": "16.11.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.11.0.tgz", - "integrity": "sha512-nrRyIUE1e7j8PaXSPtyRKtz+2y9ubW/ghNgqKFHHAHaeP0fpF5uXR+sq8IMRHC+ZUxw7W9NyCDTBtwWxvkb0iA==", + "version": "16.12.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.12.0.tgz", + "integrity": "sha512-LMxFfAGrcS3kETtQaCkTKjMiifahaMySFDn71fZUNpPHZQEzmk/GiAeIT8JSOrHB23fnuCOMruL2a8NYlw+8Gw==", "dev": true, "requires": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1", "prop-types": "^15.6.2", - "scheduler": "^0.17.0" + "scheduler": "^0.18.0" } }, "react-is": { @@ -12771,9 +12771,9 @@ "dev": true }, "scheduler": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.17.0.tgz", - "integrity": "sha512-7rro8Io3tnCPuY4la/NuI5F2yfESpnfZyT6TtkXnSWVkcu0BCDJ+8gk5ozUaFaxpIyNuWAPXrH0yFcSi28fnDA==", + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.18.0.tgz", + "integrity": "sha512-agTSHR1Nbfi6ulI0kYNK0203joW2Y5W4po4l+v03tOoiJKpTBbxpNhWDvqc/4IcOw+KLmSiQLTasZ4cab2/UWQ==", "dev": true, "requires": { "loose-envify": "^1.1.0", From 1d1519b88a01a0481a8e5a521ade65e9bb4f325e Mon Sep 17 00:00:00 2001 From: afc163 Date: Fri, 27 Dec 2019 11:09:50 +0800 Subject: [PATCH 006/262] fix: pagination should not change when click prev/next buttons to blur jumper --- src/Options.jsx | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/Options.jsx b/src/Options.jsx index 91cb219f..2631f262 100644 --- a/src/Options.jsx +++ b/src/Options.jsx @@ -45,11 +45,20 @@ class Options extends React.Component { }); } - handleBlur = () => { - const { goButton, quickGo } = this.props; + handleBlur = (e) => { + const { goButton, quickGo, rootPrefixCls } = this.props; if (goButton) { return; } + if ( + e.relatedTarget && + ( + e.relatedTarget.className.indexOf(`${rootPrefixCls}-prev`) >= 0 || + e.relatedTarget.className.indexOf(`${rootPrefixCls}-next`) >= 0 + ) + ) { + return; + } quickGo(this.getValidValue()); } From bf50ed728b63e88245e21bc65e0f34936c4bfb89 Mon Sep 17 00:00:00 2001 From: afc163 Date: Fri, 27 Dec 2019 11:22:15 +0800 Subject: [PATCH 007/262] 1.20.12 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index d4392077..38bf3215 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "1.20.11", + "version": "1.20.12", "description": "pagination ui component for react", "keywords": [ "react", From 3618150fd4e9c3e30882507e993404ed1c85b167 Mon Sep 17 00:00:00 2001 From: Kermit Date: Wed, 22 Jan 2020 16:17:05 +0800 Subject: [PATCH 008/262] fix: it not work correctly when simple mode and inputing big number; --- src/Pagination.jsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/Pagination.jsx b/src/Pagination.jsx index bde0e561..328e5465 100644 --- a/src/Pagination.jsx +++ b/src/Pagination.jsx @@ -98,6 +98,8 @@ class Pagination extends React.Component { pageSize = props.pageSize; } + current = Math.min(current, calculatePage(pageSize, undefined, props)); + this.state = { current, currentInputValue: current, @@ -173,12 +175,15 @@ class Pagination extends React.Component { getValidValue(e) { const inputValue = e.target.value; + const allPages = calculatePage(undefined, this.state, this.props); const { currentInputValue } = this.state; let value; if (inputValue === '') { value = inputValue; } else if (isNaN(Number(inputValue))) { value = currentInputValue; + } else if (inputValue >= allPages) { + value = allPages; } else { value = Number(inputValue); } From 205ba5aa7316fc346b249328efee7247e6e01b74 Mon Sep 17 00:00:00 2001 From: Kermit Date: Wed, 22 Jan 2020 16:40:25 +0800 Subject: [PATCH 009/262] add test when current is greater pages --- tests/Pagination.spec.js | 45 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/tests/Pagination.spec.js b/tests/Pagination.spec.js index 65281b47..ba0344e0 100644 --- a/tests/Pagination.spec.js +++ b/tests/Pagination.spec.js @@ -669,6 +669,51 @@ describe('simple Pagination', () => { }); }); +describe('simple Pagination when current is greater pages', () => { + let pagination = null; + const container = document.createElement('div'); + document.body.appendChild(container); + + beforeEach((done) => { + ReactDOM.render( + , + container, + function () { + pagination = this; + done(); + }, + ); + }); + + afterEach(() => { + ReactDOM.unmountComponentAtNode(container); + }); + + it('default current page is 3', () => { + const current3 = pagination.state.current; + expect(current3).to.be(3); + }); + + it('input number is greater pages', (done) => { + const greaterCurrent = TestUtils.findRenderedDOMComponentWithClass( + pagination, + 'rc-pagination-simple' + ); + const input = greaterCurrent.querySelector('input'); + input.value = '313423434343343452121'; + Simulate.change(input); + setTimeout(() => { + expect(input.value).to.be('3'); + expect(pagination.state.current).to.be(3); + done(); + }, 10); + }); +}); + describe('simple Pagination with quick jump', () => { let pagination = null; From 8d1311490686719c7318ea2be3dd2f2257f6e12f Mon Sep 17 00:00:00 2001 From: afc163 Date: Sat, 25 Jan 2020 11:36:08 +0800 Subject: [PATCH 010/262] :sparkles: release 1.20.13 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 38bf3215..1baf4a46 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "1.20.12", + "version": "1.20.13", "description": "pagination ui component for react", "keywords": [ "react", From 74407dbf1bce4ca9cf0aae236efef37313de1fdc Mon Sep 17 00:00:00 2001 From: Orkhan Huseynli Date: Tue, 11 Feb 2020 21:54:29 +0400 Subject: [PATCH 011/262] add: prettier config files --- .prettierignore | 3 +++ .prettierrc | 7 +++++++ 2 files changed, 10 insertions(+) create mode 100644 .prettierignore create mode 100644 .prettierrc diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 00000000..f71737da --- /dev/null +++ b/.prettierignore @@ -0,0 +1,3 @@ +node_modules +package.json +package-lock.json diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 00000000..27dd8afb --- /dev/null +++ b/.prettierrc @@ -0,0 +1,7 @@ +{ + "endOfLine": "lf", + "semi": true, + "singleQuote": true, + "tabWidth": 2, + "trailingComma": "all" +} From 1033787f0bdb4f026da0b2722c1d9c5a4b949d47 Mon Sep 17 00:00:00 2001 From: Orkhan Huseynli Date: Tue, 11 Feb 2020 21:56:05 +0400 Subject: [PATCH 012/262] add: az_AZ locale --- src/locale/az_AZ.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 src/locale/az_AZ.js diff --git a/src/locale/az_AZ.js b/src/locale/az_AZ.js new file mode 100644 index 00000000..cdb620ab --- /dev/null +++ b/src/locale/az_AZ.js @@ -0,0 +1,15 @@ +export default { + // Options.jsx + items_per_page: '/ səhifə', + jump_to: 'Get', + jump_to_confirm: 'təsdiqlə', + page: '', + + // Pagination.jsx + prev_page: 'Əvvəlki Səhifə', + next_page: 'Növbəti Səhifə', + prev_5: 'Əvvəlki 5 Səhifə', + next_5: 'Növbəti 5 Səhifə', + prev_3: 'Əvvəlki 3 Səhifə', + next_3: 'Növbəti 3 Səhifə', +}; From 4f7bbcf2355332235f15e7cb331dc2cfc65d2169 Mon Sep 17 00:00:00 2001 From: afc163 Date: Wed, 12 Feb 2020 17:14:44 +0800 Subject: [PATCH 013/262] :sparkles: release 1.20.14 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 1baf4a46..dc64b8e8 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "1.20.13", + "version": "1.20.14", "description": "pagination ui component for react", "keywords": [ "react", From 814cbf11c9ad274551c370ca9060460391184f61 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 13 Feb 2020 12:26:34 +0800 Subject: [PATCH 014/262] :new: pass disabled to custom prev/next item close #21351 --- examples/itemRender.js | 22 ++++++++++++++++++++++ src/Pagination.jsx | 32 +++++++++++++++++++------------- 2 files changed, 41 insertions(+), 13 deletions(-) diff --git a/examples/itemRender.js b/examples/itemRender.js index 7d9fea0c..66a5ac66 100644 --- a/examples/itemRender.js +++ b/examples/itemRender.js @@ -20,9 +20,31 @@ const textItemRender = (current, type, element) => { return element; }; +const buttonItemRender = (current, type, element) => { + if (type === 'prev') { + return ; + } + if (type === 'next') { + return ; + } + return element; +}; + +const divItemRender = (current, type, element) => { + if (type === 'prev') { + return
Prev
; + } + if (type === 'next') { + return
Next
; + } + return element; +}; + ReactDOM.render(
+ +
, document.getElementById('__react-content')); diff --git a/src/Pagination.jsx b/src/Pagination.jsx index 328e5465..33c2518e 100644 --- a/src/Pagination.jsx +++ b/src/Pagination.jsx @@ -1,4 +1,4 @@ -import React from 'react'; +import React, { cloneElement, isValidElement } from 'react'; import classNames from 'classnames'; import PropTypes from 'prop-types'; import Pager from './Pager'; @@ -339,6 +339,20 @@ class Pagination extends React.Component { } } + renderPrev(prevPage) { + const { prevIcon, itemRender } = this.props; + const prevButton = itemRender(prevPage, 'prev', this.getItemIcon(prevIcon)); + const disabled = !this.hasPrev(); + return isValidElement(prevButton) ? cloneElement(prevButton, { disabled }) : prevButton; + } + + renderNext(nextPage) { + const { nextIcon, itemRender } = this.props; + const nextButton = itemRender(nextPage, 'next', this.getItemIcon(nextIcon)); + const disabled = !this.hasNext(); + return isValidElement(nextButton) ? cloneElement(nextButton, { disabled }) : nextButton; + } + render() { const { prefixCls, className, disabled } = this.props; @@ -417,7 +431,7 @@ class Pagination extends React.Component { className={`${this.hasPrev() ? '' : `${prefixCls}-disabled`} ${prefixCls}-prev`} aria-disabled={!this.hasPrev()} > - {props.itemRender(prevPage, 'prev', this.getItemIcon(props.prevIcon))} + {this.renderPrev(prevPage)}
  • - {props.itemRender(nextPage, 'next', this.getItemIcon(props.nextIcon))} + {this.renderNext(nextPage)}
  • {gotoButton} @@ -637,11 +651,7 @@ class Pagination extends React.Component { className={`${!prevDisabled ? '' : `${prefixCls}-disabled`} ${prefixCls}-prev`} aria-disabled={prevDisabled} > - {props.itemRender( - prevPage, - 'prev', - this.getItemIcon(props.prevIcon) - )} + {this.renderPrev(prevPage)} {pagerList}
  • - {props.itemRender( - nextPage, - 'next', - this.getItemIcon(props.nextIcon) - )} + {this.renderNext(nextPage)}
  • Date: Thu, 13 Feb 2020 12:48:34 +0800 Subject: [PATCH 015/262] :white_check_mark: add test case --- tests/Pagination.spec.js | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/tests/Pagination.spec.js b/tests/Pagination.spec.js index ba0344e0..44108624 100644 --- a/tests/Pagination.spec.js +++ b/tests/Pagination.spec.js @@ -325,10 +325,10 @@ describe('Two Pagination', () => { }); }); -describe('Other props', () => { +describe('itemRender', () => { let pagination; - const currentPage = 12; const container = document.createElement('div'); + const currentPage = 12; document.body.appendChild(container); const itemRender = (current) => { @@ -381,6 +381,31 @@ describe('Other props', () => { expect(jumpNext.innerHTML).to.be(`${currentPage + 5}`); expect(active.innerHTML).to.be(`${currentPage}`); }); + + it('should support pass disabled to prev and next buttons', (done) => { + ReactDOM.unmountComponentAtNode(container); + ReactDOM.render( + , + container, + function () { + const prev = TestUtils.findRenderedDOMComponentWithClass( + this, + 'rc-pagination-prev' + ); + const next = TestUtils.findRenderedDOMComponentWithClass( + this, + 'rc-pagination-next' + ); + expect(prev.innerHTML).to.be(`0`); + expect(next.innerHTML).to.be(`2`); + done(); + } + ); + }); }); describe('Other props', () => { From 7bd4d86a1ac83919499bc4cdc12d73bfb112224e Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 13 Feb 2020 12:54:18 +0800 Subject: [PATCH 016/262] 1.20.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index dc64b8e8..f66805bc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "1.20.14", + "version": "1.21.0", "description": "pagination ui component for react", "keywords": [ "react", From f36ee7c2856c87b62d1947be8df3c83d9b6f17af Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 13:39:57 +0800 Subject: [PATCH 017/262] remove prop-types and react-lifecycles-compat --- package-lock.json | 15571 ------------------------------------------- package.json | 8 +- src/Options.jsx | 17 +- src/Pager.jsx | 15 +- src/Pagination.jsx | 34 +- 5 files changed, 6 insertions(+), 15639 deletions(-) delete mode 100644 package-lock.json diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 353da74e..00000000 --- a/package-lock.json +++ /dev/null @@ -1,15571 +0,0 @@ -{ - "name": "rc-pagination", - "version": "1.20.11", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "abbrev": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", - "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=", - "dev": true - }, - "accepts": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.1.4.tgz", - "integrity": "sha1-1xyW99QdD+2iw4zRToonwEFY30o=", - "dev": true, - "requires": { - "mime-types": "~2.0.4", - "negotiator": "0.4.9" - }, - "dependencies": { - "mime-db": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.12.0.tgz", - "integrity": "sha1-PQxjGA9FjrENMlqqN9fFiuMS6dc=", - "dev": true - }, - "mime-types": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.0.14.tgz", - "integrity": "sha1-MQ4VnbI+B3+Lsit0jav6SVcUCqY=", - "dev": true, - "requires": { - "mime-db": "~1.12.0" - } - } - } - }, - "accord": { - "version": "0.28.0", - "resolved": "https://registry.npmjs.org/accord/-/accord-0.28.0.tgz", - "integrity": "sha512-sPF34gqHegaCSryKf5wHJ8wREK1dTZnHmC9hsB7D8xjntRdd30DXDPKf0YVIcSvnXJmcYu5SCvZRz28H++kFhQ==", - "dev": true, - "requires": { - "convert-source-map": "^1.5.0", - "glob": "^7.0.5", - "indx": "^0.2.3", - "lodash.clone": "^4.3.2", - "lodash.defaults": "^4.0.1", - "lodash.flatten": "^4.2.0", - "lodash.merge": "^4.4.0", - "lodash.partialright": "^4.1.4", - "lodash.pick": "^4.2.1", - "lodash.uniq": "^4.3.0", - "resolve": "^1.5.0", - "semver": "^5.3.0", - "uglify-js": "^2.8.22", - "when": "^3.7.8" - }, - "dependencies": { - "camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true - }, - "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "lodash.merge": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", - "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==", - "dev": true - }, - "lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=", - "dev": true - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - }, - "uglify-js": { - "version": "2.8.29", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", - "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", - "dev": true, - "requires": { - "source-map": "~0.5.1", - "uglify-to-browserify": "~1.0.0", - "yargs": "~3.10.0" - } - }, - "window-size": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", - "dev": true - }, - "yargs": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", - "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", - "dev": true, - "requires": { - "camelcase": "^1.0.2", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", - "window-size": "0.1.0" - } - } - } - }, - "acorn": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", - "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", - "dev": true - }, - "acorn-dynamic-import": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz", - "integrity": "sha1-x1K9IQvvZ5UBtsbLf8hPj0cVjMQ=", - "dev": true, - "requires": { - "acorn": "^4.0.3" - }, - "dependencies": { - "acorn": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", - "dev": true - } - } - }, - "acorn-to-esprima": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/acorn-to-esprima/-/acorn-to-esprima-1.0.7.tgz", - "integrity": "sha1-lDYll2AJj56tm52iJC+rL0hQKBs=", - "dev": true - }, - "add-dom-event-listener": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/add-dom-event-listener/-/add-dom-event-listener-1.1.0.tgz", - "integrity": "sha512-WCxx1ixHT0GQU9hb0KI/mhgRQhnU+U3GvwY6ZvVjYq8rsihIGoaIOUbY0yMPBxLH5MDtr0kz3fisWGNcbWW7Jw==", - "dev": true, - "requires": { - "object-assign": "4.x" - } - }, - "adm-zip": { - "version": "0.4.13", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.13.tgz", - "integrity": "sha512-fERNJX8sOXfel6qCBCMPvZLzENBEhZTzKqg6vrOW5pvoEaQuJhRU4ndTAh6lHOxn1I6jnz2NHra56ZODM751uw==", - "dev": true - }, - "after": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/after/-/after-0.8.1.tgz", - "integrity": "sha1-q11PuIP1loFtNRX495HAr0ht1ic=", - "dev": true - }, - "ajv": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", - "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", - "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=", - "dev": true - }, - "align-text": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", - "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", - "dev": true, - "requires": { - "kind-of": "^3.0.2", - "longest": "^1.0.1", - "repeat-string": "^1.5.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "alphanum-sort": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", - "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=", - "dev": true - }, - "alter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/alter/-/alter-0.2.0.tgz", - "integrity": "sha1-x1iICGF1cgNKrmJICvJrHU0cs80=", - "dev": true, - "requires": { - "stable": "~0.1.3" - } - }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "dev": true - }, - "ansi-align": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", - "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", - "dev": true, - "requires": { - "string-width": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "ansi-colors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", - "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", - "dev": true, - "requires": { - "ansi-wrap": "^0.1.0" - } - }, - "ansi-cyan": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz", - "integrity": "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=", - "dev": true, - "requires": { - "ansi-wrap": "0.1.0" - } - }, - "ansi-escapes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", - "dev": true - }, - "ansi-gray": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", - "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", - "dev": true, - "requires": { - "ansi-wrap": "0.1.0" - } - }, - "ansi-red": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", - "integrity": "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=", - "dev": true, - "requires": { - "ansi-wrap": "0.1.0" - } - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "ansi-wrap": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", - "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=", - "dev": true - }, - "any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=", - "dev": true - }, - "anymatch": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", - "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", - "dev": true, - "requires": { - "micromatch": "^2.1.5", - "normalize-path": "^2.0.0" - }, - "dependencies": { - "arr-diff": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1" - } - }, - "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", - "dev": true - }, - "braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", - "dev": true, - "requires": { - "expand-range": "^1.8.1", - "preserve": "^0.2.0", - "repeat-element": "^1.1.2" - } - }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "dev": true, - "requires": { - "is-posix-bracket": "^0.1.0" - } - }, - "extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^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=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "dev": true, - "requires": { - "arr-diff": "^2.0.0", - "array-unique": "^0.2.1", - "braces": "^1.8.2", - "expand-brackets": "^0.1.4", - "extglob": "^0.3.1", - "filename-regex": "^2.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.1", - "kind-of": "^3.0.2", - "normalize-path": "^2.0.1", - "object.omit": "^2.0.0", - "parse-glob": "^3.0.4", - "regex-cache": "^0.4.2" - } - } - } - }, - "append-transform": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-0.4.0.tgz", - "integrity": "sha1-126/jKlNJ24keja61EpLdKthGZE=", - "dev": true, - "requires": { - "default-require-extensions": "^1.0.0" - } - }, - "archiver": { - "version": "0.14.4", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-0.14.4.tgz", - "integrity": "sha1-W53bn17hzu8hy487Ag5iQOy0MVw=", - "dev": true, - "requires": { - "async": "~0.9.0", - "buffer-crc32": "~0.2.1", - "glob": "~4.3.0", - "lazystream": "~0.1.0", - "lodash": "~3.2.0", - "readable-stream": "~1.0.26", - "tar-stream": "~1.1.0", - "zip-stream": "~0.5.0" - }, - "dependencies": { - "async": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", - "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=", - "dev": true - }, - "glob": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-4.3.5.tgz", - "integrity": "sha1-gPuwjKVA8jiszl0R0em8QedRc9M=", - "dev": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^2.0.1", - "once": "^1.3.0" - } - }, - "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.2.0", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.2.0.tgz", - "integrity": "sha1-S/UKMkP5rrC6xBpV09WZBnWkYvs=", - "dev": true - }, - "minimatch": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", - "integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=", - "dev": true, - "requires": { - "brace-expansion": "^1.0.0" - } - }, - "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.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "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 - } - } - }, - "archy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", - "dev": true - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "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==", - "dev": true - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true - }, - "array-differ": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", - "dev": true - }, - "array-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", - "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", - "dev": true - }, - "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=", - "dev": true - }, - "array-slice": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", - "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", - "dev": true - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "arraybuffer.slice": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz", - "integrity": "sha1-8zshWfBTKj8xB6JywMz70a0peco=", - "dev": true - }, - "asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", - "dev": true, - "optional": true - }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", - "dev": true, - "requires": { - "object-assign": "^4.1.1", - "util": "0.10.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true - }, - "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, - "requires": { - "inherits": "2.0.1" - } - } - } - }, - "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=", - "dev": true - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true - }, - "ast-traverse": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ast-traverse/-/ast-traverse-0.1.1.tgz", - "integrity": "sha1-ac8rg4bxnc2hux4F1o/jWdiJfeY=", - "dev": true - }, - "ast-types": { - "version": "0.9.6", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.9.6.tgz", - "integrity": "sha1-ECyenpAF0+fjgpvwxPok7oYu6bk=", - "dev": true - }, - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", - "dev": true - }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true - }, - "autoprefixer": { - "version": "6.7.7", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-6.7.7.tgz", - "integrity": "sha1-Hb0cg1ZY41zj+ZhAmdsAWFx4IBQ=", - "dev": true, - "requires": { - "browserslist": "^1.7.6", - "caniuse-db": "^1.0.30000634", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^5.2.16", - "postcss-value-parser": "^3.2.3" - } - }, - "aws-sign2": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=", - "dev": true - }, - "aws4": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", - "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=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - } - } - }, - "babel-core": { - "version": "6.26.3", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", - "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", - "dev": true, - "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": { - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "babel-eslint": { - "version": "4.1.8", - "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-4.1.8.tgz", - "integrity": "sha1-T3nnpPWHns8D9Iyxb1UqNV/MMbI=", - "dev": true, - "requires": { - "acorn-to-esprima": "^1.0.5", - "babel-core": "^5.8.33", - "lodash.assign": "^3.2.0", - "lodash.pick": "^3.1.0" - }, - "dependencies": { - "babel-core": { - "version": "5.8.38", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-5.8.38.tgz", - "integrity": "sha1-H8ruedfmG3ULALjlT238nQr4ZVg=", - "dev": true, - "requires": { - "babel-plugin-constant-folding": "^1.0.1", - "babel-plugin-dead-code-elimination": "^1.0.2", - "babel-plugin-eval": "^1.0.1", - "babel-plugin-inline-environment-variables": "^1.0.1", - "babel-plugin-jscript": "^1.0.4", - "babel-plugin-member-expression-literals": "^1.0.1", - "babel-plugin-property-literals": "^1.0.1", - "babel-plugin-proto-to-assign": "^1.0.3", - "babel-plugin-react-constant-elements": "^1.0.3", - "babel-plugin-react-display-name": "^1.0.3", - "babel-plugin-remove-console": "^1.0.1", - "babel-plugin-remove-debugger": "^1.0.1", - "babel-plugin-runtime": "^1.0.7", - "babel-plugin-undeclared-variables-check": "^1.0.2", - "babel-plugin-undefined-to-void": "^1.1.6", - "babylon": "^5.8.38", - "bluebird": "^2.9.33", - "chalk": "^1.0.0", - "convert-source-map": "^1.1.0", - "core-js": "^1.0.0", - "debug": "^2.1.1", - "detect-indent": "^3.0.0", - "esutils": "^2.0.0", - "fs-readdir-recursive": "^0.1.0", - "globals": "^6.4.0", - "home-or-tmp": "^1.0.0", - "is-integer": "^1.0.4", - "js-tokens": "1.0.1", - "json5": "^0.4.0", - "lodash": "^3.10.0", - "minimatch": "^2.0.3", - "output-file-sync": "^1.1.0", - "path-exists": "^1.0.0", - "path-is-absolute": "^1.0.0", - "private": "^0.1.6", - "regenerator": "0.8.40", - "regexpu": "^1.3.0", - "repeating": "^1.1.2", - "resolve": "^1.1.6", - "shebang-regex": "^1.0.0", - "slash": "^1.0.0", - "source-map": "^0.5.0", - "source-map-support": "^0.2.10", - "to-fast-properties": "^1.0.0", - "trim-right": "^1.0.0", - "try-resolve": "^1.0.0" - } - }, - "babylon": { - "version": "5.8.38", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-5.8.38.tgz", - "integrity": "sha1-7JsSCxG/bM1Bc6GL8hfmC3mFn/0=", - "dev": true - }, - "bluebird": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.11.0.tgz", - "integrity": "sha1-U0uQM8AiyVecVro7Plpcqvu2UOE=", - "dev": true - }, - "core-js": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", - "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=", - "dev": true - }, - "detect-indent": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-3.0.1.tgz", - "integrity": "sha1-ncXl3bzu+DJXZLlFGwK8bVQIT3U=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1", - "minimist": "^1.1.0", - "repeating": "^1.1.0" - } - }, - "globals": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/globals/-/globals-6.4.1.tgz", - "integrity": "sha1-hJgDKzttHMge68X3lpDY/in6v08=", - "dev": true - }, - "home-or-tmp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-1.0.0.tgz", - "integrity": "sha1-S58eQIAMPlDGwn94FnavzOcfOYU=", - "dev": true, - "requires": { - "os-tmpdir": "^1.0.1", - "user-home": "^1.1.1" - } - }, - "js-tokens": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.1.tgz", - "integrity": "sha1-zENaXIuUrRWst5gxQPyAGCyJrq4=", - "dev": true - }, - "json5": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.4.0.tgz", - "integrity": "sha1-BUNS5MTIDIbAkjh31EneF2pzLI0=", - "dev": true - }, - "lodash": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", - "dev": true - }, - "minimatch": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", - "integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=", - "dev": true, - "requires": { - "brace-expansion": "^1.0.0" - } - }, - "path-exists": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-1.0.0.tgz", - "integrity": "sha1-1aiZjrce83p0w06w2eum6HjuoIE=", - "dev": true - }, - "repeating": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-1.1.3.tgz", - "integrity": "sha1-PUEUIYh3U3SU+X93+Xhfq4EPpKw=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "source-map-support": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.2.10.tgz", - "integrity": "sha1-6lo5AKHByyUJagrozFwrSxDe09w=", - "dev": true, - "requires": { - "source-map": "0.1.32" - }, - "dependencies": { - "source-map": { - "version": "0.1.32", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.32.tgz", - "integrity": "sha1-yLbBZ3l7pHQKjqMyUhYv8IWRsmY=", - "dev": true, - "requires": { - "amdefine": ">=0.0.4" - } - } - } - } - } - }, - "babel-generator": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", - "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", - "dev": true, - "requires": { - "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": { - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-explode-assignable-expression": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "esutils": "^2.0.2" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" - }, - "dependencies": { - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-bindify-decorators": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" - }, - "dependencies": { - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-optimise-call-expression": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-loader": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-6.4.1.tgz", - "integrity": "sha1-CzQRLVsHSKjc2/Uaz2+b1C1QuMo=", - "dev": true, - "requires": { - "find-cache-dir": "^0.1.1", - "loader-utils": "^0.2.16", - "mkdirp": "^0.5.1", - "object-assign": "^4.0.1" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-add-module-exports": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/babel-plugin-add-module-exports/-/babel-plugin-add-module-exports-0.1.4.tgz", - "integrity": "sha1-Glttdh7h9mPYRbTqaHhxLeMcEHo=", - "dev": true, - "requires": { - "babel-template": "^6.5.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-constant-folding": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-plugin-constant-folding/-/babel-plugin-constant-folding-1.0.1.tgz", - "integrity": "sha1-g2HTZMmORJw2kr26Ue/whEKQqo4=", - "dev": true - }, - "babel-plugin-dead-code-elimination": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/babel-plugin-dead-code-elimination/-/babel-plugin-dead-code-elimination-1.0.2.tgz", - "integrity": "sha1-X3xFEnTc18zNv7s+C4XdKBIfD2U=", - "dev": true - }, - "babel-plugin-eval": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-plugin-eval/-/babel-plugin-eval-1.0.1.tgz", - "integrity": "sha1-ovrtJc5r5preS/7CY/cBaRlZUNo=", - "dev": true - }, - "babel-plugin-inline-environment-variables": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-plugin-inline-environment-variables/-/babel-plugin-inline-environment-variables-1.0.1.tgz", - "integrity": "sha1-H1jOkSB61qgmqL9kX6/mj/X+P/4=", - "dev": true - }, - "babel-plugin-jscript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/babel-plugin-jscript/-/babel-plugin-jscript-1.0.4.tgz", - "integrity": "sha1-jzQsOCduh6R9X6CovT1etsytj8w=", - "dev": true - }, - "babel-plugin-member-expression-literals": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-plugin-member-expression-literals/-/babel-plugin-member-expression-literals-1.0.1.tgz", - "integrity": "sha1-zF7bD6qNyScXDnTW0cAkQAIWJNM=", - "dev": true - }, - "babel-plugin-property-literals": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-plugin-property-literals/-/babel-plugin-property-literals-1.0.1.tgz", - "integrity": "sha1-AlIwGQAZKYCxwRjv6kjOk6q4MzY=", - "dev": true - }, - "babel-plugin-proto-to-assign": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/babel-plugin-proto-to-assign/-/babel-plugin-proto-to-assign-1.0.4.tgz", - "integrity": "sha1-xJ56/QL1d7xNoF6i3wAiUM980SM=", - "dev": true, - "requires": { - "lodash": "^3.9.3" - }, - "dependencies": { - "lodash": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", - "dev": true - } - } - }, - "babel-plugin-react-constant-elements": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/babel-plugin-react-constant-elements/-/babel-plugin-react-constant-elements-1.0.3.tgz", - "integrity": "sha1-lGc26DeEKcvDSdz/YvUcFDs041o=", - "dev": true - }, - "babel-plugin-react-display-name": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/babel-plugin-react-display-name/-/babel-plugin-react-display-name-1.0.3.tgz", - "integrity": "sha1-dU/jiSboQkpOexWrbqYTne4FFPw=", - "dev": true - }, - "babel-plugin-remove-console": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-plugin-remove-console/-/babel-plugin-remove-console-1.0.1.tgz", - "integrity": "sha1-2PJFVsOgUAXUKqqv0neH9T/wE6c=", - "dev": true - }, - "babel-plugin-remove-debugger": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-plugin-remove-debugger/-/babel-plugin-remove-debugger-1.0.1.tgz", - "integrity": "sha1-/S6jzWGkKK0fO5yJiC/0KT6MFMc=", - "dev": true - }, - "babel-plugin-runtime": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/babel-plugin-runtime/-/babel-plugin-runtime-1.0.7.tgz", - "integrity": "sha1-v3x9lm3Vbs1cF/ocslPJrLflSq8=", - "dev": true - }, - "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=", - "dev": true - }, - "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=", - "dev": true - }, - "babel-plugin-syntax-class-constructor-call": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz", - "integrity": "sha1-nLnTn+Q8hgC+yBRkVt3L1OGnZBY=", - "dev": true - }, - "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=", - "dev": true - }, - "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=", - "dev": true - }, - "babel-plugin-syntax-do-expressions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz", - "integrity": "sha1-V0d1YTmqJtOQ0JQQsDdEugfkeW0=", - "dev": true - }, - "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=", - "dev": true - }, - "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=", - "dev": true - }, - "babel-plugin-syntax-export-extensions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz", - "integrity": "sha1-cKFITw+QiaToStRLrDU8lbmxJyE=", - "dev": true - }, - "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=", - "dev": true - }, - "babel-plugin-syntax-function-bind": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz", - "integrity": "sha1-SMSV8Xe98xqYHnMvVa3AvdJgH0Y=", - "dev": true - }, - "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=", - "dev": true - }, - "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=", - "dev": true - }, - "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=", - "dev": true - }, - "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=", - "dev": true, - "requires": { - "babel-helper-remap-async-to-generator": "^6.24.1", - "babel-plugin-syntax-async-generators": "^6.5.0", - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-remap-async-to-generator": "^6.24.1", - "babel-plugin-syntax-async-functions": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-class-constructor-call": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz", - "integrity": "sha1-gNwoVQWsBn3LjWxl4vbxGrd2Xvk=", - "dev": true, - "requires": { - "babel-plugin-syntax-class-constructor-call": "^6.18.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-plugin-syntax-class-properties": "^6.8.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-explode-class": "^6.24.1", - "babel-plugin-syntax-decorators": "^6.13.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-do-expressions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz", - "integrity": "sha1-KMyvkoEtlJws0SgfaQyP3EaK6bs=", - "dev": true, - "requires": { - "babel-plugin-syntax-do-expressions": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" - }, - "dependencies": { - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-define-map": "^6.24.1", - "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.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.2", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", - "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", - "dev": true, - "requires": { - "babel-plugin-transform-strict-mode": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-types": "^6.26.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-plugin-transform-es2015-modules-amd": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-replace-supers": "^6.24.1", - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-call-delegate": "^6.24.1", - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "regexpu-core": "^2.0.0" - } - }, - "babel-plugin-transform-es3-member-expression-literals": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es3-member-expression-literals/-/babel-plugin-transform-es3-member-expression-literals-6.22.0.tgz", - "integrity": "sha1-cz00RPPsxBvvjtGmpOCWV7iWnrs=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es3-property-literals": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es3-property-literals/-/babel-plugin-transform-es3-property-literals-6.22.0.tgz", - "integrity": "sha1-sgeNWELiKr9A9z6M3pzTcRq9V1g=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", - "babel-plugin-syntax-exponentiation-operator": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-export-extensions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz", - "integrity": "sha1-U3OLR+deghhYnuqUbLvTkQm75lM=", - "dev": true, - "requires": { - "babel-plugin-syntax-export-extensions": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-plugin-syntax-flow": "^6.18.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-function-bind": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz", - "integrity": "sha1-xvuOlqwpajELjPjqQBRiQH3fapc=", - "dev": true, - "requires": { - "babel-plugin-syntax-function-bind": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-object-assign": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-assign/-/babel-plugin-transform-object-assign-6.22.0.tgz", - "integrity": "sha1-+Z0vZvGgsNSY40bFNZaEdAyqILo=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-plugin-syntax-object-rest-spread": "^6.8.0", - "babel-runtime": "^6.26.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.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=", - "dev": true, - "requires": { - "babel-helper-builder-react-jsx": "^6.24.1", - "babel-plugin-syntax-jsx": "^6.8.0", - "babel-runtime": "^6.22.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=", - "dev": true, - "requires": { - "babel-plugin-syntax-jsx": "^6.8.0", - "babel-runtime": "^6.22.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=", - "dev": true, - "requires": { - "babel-plugin-syntax-jsx": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "regenerator-transform": "^0.10.0" - } - }, - "babel-plugin-transform-runtime": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-runtime/-/babel-plugin-transform-runtime-6.23.0.tgz", - "integrity": "sha1-iEkNRGUC6puOfvsP4J7E2ZR5se4=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-undeclared-variables-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/babel-plugin-undeclared-variables-check/-/babel-plugin-undeclared-variables-check-1.0.2.tgz", - "integrity": "sha1-XPGqU52BP/ZOmWQSkK9iCWX2Xe4=", - "dev": true, - "requires": { - "leven": "^1.0.2" - } - }, - "babel-plugin-undefined-to-void": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/babel-plugin-undefined-to-void/-/babel-plugin-undefined-to-void-1.1.6.tgz", - "integrity": "sha1-f1eO+LeN+uYAM4XYQXph7aBuL4E=", - "dev": true - }, - "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=", - "dev": true, - "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.24.1", - "babel-plugin-transform-es2015-classes": "^6.24.1", - "babel-plugin-transform-es2015-computed-properties": "^6.24.1", - "babel-plugin-transform-es2015-destructuring": "^6.22.0", - "babel-plugin-transform-es2015-duplicate-keys": "^6.24.1", - "babel-plugin-transform-es2015-for-of": "^6.22.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.24.1", - "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.22.0", - "babel-plugin-transform-es2015-unicode-regex": "^6.24.1", - "babel-plugin-transform-regenerator": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "babel-plugin-transform-flow-strip-types": "^6.22.0" - } - }, - "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=", - "dev": true, - "requires": { - "babel-plugin-syntax-jsx": "^6.3.13", - "babel-plugin-transform-react-display-name": "^6.23.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" - } - }, - "babel-preset-stage-0": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz", - "integrity": "sha1-VkLRUEL5E4TX5a+LyIsduVsDnmo=", - "dev": true, - "requires": { - "babel-plugin-transform-do-expressions": "^6.22.0", - "babel-plugin-transform-function-bind": "^6.22.0", - "babel-preset-stage-1": "^6.24.1" - } - }, - "babel-preset-stage-1": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz", - "integrity": "sha1-dpLNfc1oSZB+auSgqFWJz7niv7A=", - "dev": true, - "requires": { - "babel-plugin-transform-class-constructor-call": "^6.24.1", - "babel-plugin-transform-export-extensions": "^6.22.0", - "babel-preset-stage-2": "^6.24.1" - } - }, - "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=", - "dev": true, - "requires": { - "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" - } - }, - "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=", - "dev": true, - "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.22.0" - } - }, - "babel-register": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "dev": true, - "requires": { - "babel-core": "^6.26.0", - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "home-or-tmp": "^2.0.0", - "lodash": "^4.17.4", - "mkdirp": "^0.5.1", - "source-map-support": "^0.4.15" - }, - "dependencies": { - "core-js": { - "version": "2.6.8", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.8.tgz", - "integrity": "sha512-RWlREFU74TEkdXzyl1bka66O3kYp8jeTXrvJZDzVVMH8AiHUSOFpL1yfhQJ+wHocAm1m+4971W1PPzfLuCv1vg==", - "dev": true - }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "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.4.0", - "regenerator-runtime": "^0.11.0" - }, - "dependencies": { - "core-js": { - "version": "2.6.8", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.8.tgz", - "integrity": "sha512-RWlREFU74TEkdXzyl1bka66O3kYp8jeTXrvJZDzVVMH8AiHUSOFpL1yfhQJ+wHocAm1m+4971W1PPzfLuCv1vg==" - } - } - }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" - }, - "dependencies": { - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "dev": true, - "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.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" - }, - "dependencies": { - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - }, - "dependencies": { - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - }, - "backo2": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", - "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=", - "dev": true - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "dev": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "base64-arraybuffer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.2.tgz", - "integrity": "sha1-R030qfLaJOBd8xWMOx2zw81GoVQ=", - "dev": true - }, - "base64-js": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", - "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", - "dev": true - }, - "base64id": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-0.1.0.tgz", - "integrity": "sha1-As4P3u4M709ACA4ec+g08LG/zj8=", - "dev": true - }, - "batch": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.5.1.tgz", - "integrity": "sha1-NqS6tZTAUP17UHvKDbMMLZKvT/I=", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "beeper": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/beeper/-/beeper-1.1.1.tgz", - "integrity": "sha1-5tXqjF2tABMEpwsiY4RH9pyy+Ak=", - "dev": true - }, - "benchmark": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/benchmark/-/benchmark-1.0.0.tgz", - "integrity": "sha1-Lx4vpMNZ8REiqhgwgiGOlX45DHM=", - "dev": true - }, - "better-assert": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz", - "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=", - "dev": true, - "requires": { - "callsite": "1.0.0" - } - }, - "big.js": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", - "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", - "dev": true - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "bl": { - "version": "0.9.5", - "resolved": "https://registry.npmjs.org/bl/-/bl-0.9.5.tgz", - "integrity": "sha1-wGt5evCF6gC8Unr8jvzxHeIjIFQ=", - "dev": true, - "requires": { - "readable-stream": "~1.0.26" - }, - "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.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "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 - } - } - }, - "blob": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz", - "integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE=", - "dev": true - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "bluebird": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz", - "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==", - "dev": true - }, - "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", - "dev": true - }, - "body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", - "dev": true, - "requires": { - "bytes": "3.1.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.7.0", - "raw-body": "2.4.0", - "type-is": "~1.6.17" - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", - "dev": true - }, - "boom": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", - "dev": true, - "requires": { - "hoek": "2.x.x" - } - }, - "boxen": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", - "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", - "dev": true, - "requires": { - "ansi-align": "^2.0.0", - "camelcase": "^4.0.0", - "chalk": "^2.0.1", - "cli-boxes": "^1.0.0", - "string-width": "^2.0.0", - "term-size": "^1.2.0", - "widest-line": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "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.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.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=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "breakable": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/breakable/-/breakable-1.0.0.tgz", - "integrity": "sha1-eEp5eRWjjq0nutRWtVcstLuqeME=", - "dev": true - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dev": true, - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" - } - }, - "browserify-sign": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", - "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", - "dev": true, - "requires": { - "bn.js": "^4.1.1", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.2", - "elliptic": "^6.0.0", - "inherits": "^2.0.1", - "parse-asn1": "^5.0.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==", - "dev": true, - "requires": { - "pako": "~1.0.5" - } - }, - "browserslist": { - "version": "1.7.7", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-1.7.7.tgz", - "integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=", - "dev": true, - "requires": { - "caniuse-db": "^1.0.30000639", - "electron-to-chromium": "^1.2.7" - } - }, - "buffer": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } - }, - "buffer-alloc": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", - "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", - "dev": true, - "requires": { - "buffer-alloc-unsafe": "^1.1.0", - "buffer-fill": "^1.0.0" - } - }, - "buffer-alloc-unsafe": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", - "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", - "dev": true - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", - "dev": true - }, - "buffer-fill": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", - "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", - "dev": true - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true - }, - "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=", - "dev": true - }, - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", - "dev": true - }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dev": true, - "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" - } - }, - "callsite": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", - "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", - "dev": true - }, - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true - }, - "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - } - }, - "caniuse-api": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-1.6.1.tgz", - "integrity": "sha1-tTTnxzTE+B7F++isoq0kNUuWLGw=", - "dev": true, - "requires": { - "browserslist": "^1.3.6", - "caniuse-db": "^1.0.30000529", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" - } - }, - "caniuse-db": { - "version": "1.0.30000971", - "resolved": "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000971.tgz", - "integrity": "sha512-ubSZfYXO2KMYtCVmDez82mjodeZa+mBYWAnBMAmFBPAn4C2PY4SD0eC/diYQD4Rj1K+WNdp0vr0JDtm0SQ6GNg==", - "dev": true - }, - "capture-stack-trace": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", - "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", - "dev": true - }, - "caseless": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz", - "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=", - "dev": true - }, - "center-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", - "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", - "dev": true, - "requires": { - "align-text": "^0.1.3", - "lazy-cache": "^1.0.3" - } - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "cheerio": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", - "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", - "dev": true, - "requires": { - "css-select": "~1.2.0", - "dom-serializer": "~0.1.0", - "entities": "~1.1.1", - "htmlparser2": "^3.9.1", - "lodash.assignin": "^4.0.9", - "lodash.bind": "^4.1.4", - "lodash.defaults": "^4.0.1", - "lodash.filter": "^4.4.0", - "lodash.flatten": "^4.2.0", - "lodash.foreach": "^4.3.0", - "lodash.map": "^4.4.0", - "lodash.merge": "^4.4.0", - "lodash.pick": "^4.2.1", - "lodash.reduce": "^4.4.0", - "lodash.reject": "^4.4.0", - "lodash.some": "^4.4.0" - }, - "dependencies": { - "lodash.merge": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", - "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==", - "dev": true - }, - "lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=", - "dev": true - } - } - }, - "chokidar": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", - "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", - "dev": true, - "requires": { - "anymatch": "^1.3.0", - "async-each": "^1.0.0", - "fsevents": "^1.0.0", - "glob-parent": "^2.0.0", - "inherits": "^2.0.1", - "is-binary-path": "^1.0.0", - "is-glob": "^2.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.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=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - } - } - }, - "ci-info": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz", - "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "circular-json": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", - "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", - "dev": true - }, - "clap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/clap/-/clap-1.2.3.tgz", - "integrity": "sha512-4CoL/A3hf90V3VIEjeuhSvlGFEHKzOz+Wfc2IVZc+FaUgU0ZQafJTP49fvnULipOPcAfqhyI2duwQyns6xqjYA==", - "dev": true, - "requires": { - "chalk": "^1.1.3" - } - }, - "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==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.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=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "classnames": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.2.6.tgz", - "integrity": "sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q==" - }, - "cli-boxes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", - "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", - "dev": true - }, - "cli-cursor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", - "dev": true, - "requires": { - "restore-cursor": "^1.0.1" - } - }, - "cli-width": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-1.1.1.tgz", - "integrity": "sha1-pNKT72frt7iNSk1CwMzwDE0eNm0=", - "dev": true - }, - "cliui": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "dev": true, - "requires": { - "center-align": "^0.1.1", - "right-align": "^0.1.1", - "wordwrap": "0.0.2" - }, - "dependencies": { - "wordwrap": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true - } - } - }, - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", - "dev": true - }, - "clone-stats": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=", - "dev": true - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true - }, - "co-body": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/co-body/-/co-body-5.2.0.tgz", - "integrity": "sha512-sX/LQ7LqUhgyaxzbe7IqwPeTr2yfpfUIQ/dgpKo6ZI4y4lpQA0YxAomWIY+7I7rHWcG02PG+OuPREzMW/5tszQ==", - "dev": true, - "requires": { - "inflation": "^2.0.0", - "qs": "^6.4.0", - "raw-body": "^2.2.0", - "type-is": "^1.6.14" - } - }, - "coa": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/coa/-/coa-1.0.4.tgz", - "integrity": "sha1-qe8VNmDWqGqL3sAomlxoTSF0Mv0=", - "dev": true, - "requires": { - "q": "^1.1.2" - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "collections": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/collections/-/collections-0.2.2.tgz", - "integrity": "sha1-HyMCay7zb5J+7MkB6ZxfDUj6M04=", - "dev": true, - "requires": { - "weak-map": "1.0.0" - } - }, - "color": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/color/-/color-0.11.4.tgz", - "integrity": "sha1-bXtcdPtl6EHNSHkq0e1eB7kE12Q=", - "dev": true, - "requires": { - "clone": "^1.0.2", - "color-convert": "^1.3.0", - "color-string": "^0.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "color-string": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-0.3.0.tgz", - "integrity": "sha1-J9RvtnAlxcL6JZk7+/V55HhBuZE=", - "dev": true, - "requires": { - "color-name": "^1.0.0" - } - }, - "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==", - "dev": true - }, - "colorful": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/colorful/-/colorful-2.1.0.tgz", - "integrity": "sha1-aovcvC2kKlDbO0iC+iUmOqofLY4=", - "dev": true - }, - "colormin": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colormin/-/colormin-1.1.2.tgz", - "integrity": "sha1-6i90IKcrlogaOKrlnsEkpvcpgTM=", - "dev": true, - "requires": { - "color": "^0.11.0", - "css-color-names": "0.0.4", - "has": "^1.0.1" - } - }, - "colors": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.3.3.tgz", - "integrity": "sha512-mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg==", - "dev": true - }, - "combine-lists": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/combine-lists/-/combine-lists-1.0.1.tgz", - "integrity": "sha1-RYwH4J4NkA/Ci3Cj/sLazR0st/Y=", - "dev": true, - "requires": { - "lodash": "^4.5.0" - }, - "dependencies": { - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", - "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", - "dev": true, - "requires": { - "graceful-readlink": ">= 1.0.0" - } - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "commoner": { - "version": "0.10.8", - "resolved": "https://registry.npmjs.org/commoner/-/commoner-0.10.8.tgz", - "integrity": "sha1-NPw2cs0kOT6LtH5wyqApOBH08sU=", - "dev": true, - "requires": { - "commander": "^2.5.0", - "detective": "^4.3.1", - "glob": "^5.0.15", - "graceful-fs": "^4.1.2", - "iconv-lite": "^0.4.5", - "mkdirp": "^0.5.0", - "private": "^0.1.6", - "q": "^1.1.2", - "recast": "^0.11.17" - }, - "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "recast": { - "version": "0.11.23", - "resolved": "https://registry.npmjs.org/recast/-/recast-0.11.23.tgz", - "integrity": "sha1-RR/TAEqx5N+bTktmN2sqIZEkYtM=", - "dev": true, - "requires": { - "ast-types": "0.9.6", - "esprima": "~3.1.0", - "private": "~0.1.5", - "source-map": "~0.5.0" - } - } - } - }, - "component-bind": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", - "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=", - "dev": true - }, - "component-classes": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/component-classes/-/component-classes-1.2.6.tgz", - "integrity": "sha1-xkI5TDYYpNiwuJGe/Mu9kw5c1pE=", - "dev": true, - "requires": { - "component-indexof": "0.0.3" - } - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "component-indexof": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/component-indexof/-/component-indexof-0.0.3.tgz", - "integrity": "sha1-EdCRMSI5648yyPJa6csAL/6NPCQ=", - "dev": true - }, - "component-inherit": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", - "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=", - "dev": true - }, - "composition": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/composition/-/composition-2.3.0.tgz", - "integrity": "sha1-dCgFN0yrVQxSCjNmL1pzLgII1vI=", - "dev": true, - "requires": { - "any-promise": "^1.1.0", - "co": "^4.0.2" - } - }, - "compress-commons": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-0.2.9.tgz", - "integrity": "sha1-Qi2SdDDAGr0GzUVbbfwEy0z4ADw=", - "dev": true, - "requires": { - "buffer-crc32": "~0.2.1", - "crc32-stream": "~0.3.1", - "node-int64": "~0.3.0", - "readable-stream": "~1.0.26" - }, - "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.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "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 - } - } - }, - "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 - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "configstore": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", - "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", - "dev": true, - "requires": { - "dot-prop": "^4.1.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "unique-string": "^1.0.0", - "write-file-atomic": "^2.0.0", - "xdg-basedir": "^3.0.0" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - } - } - }, - "connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "requires": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - } - }, - "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" - } - }, - "console-polyfill": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/console-polyfill/-/console-polyfill-0.2.3.tgz", - "integrity": "sha1-1FXT1XTbzcz4DhYx3yGkhv4F+Yk=", - "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=", - "dev": true - }, - "content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", - "dev": true, - "requires": { - "safe-buffer": "5.1.2" - } - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true - }, - "convert-source-map": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", - "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cookies": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.7.3.tgz", - "integrity": "sha512-+gixgxYSgQLTaTIilDHAdlNPZDENDQernEMiIcZpYYP14zgHsCt4Ce1FEjFtcp6GefhozebB6orvhAAWx/IS0A==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "keygrip": "~1.0.3" - } - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true - }, - "core-js": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.1.tgz", - "integrity": "sha512-186WjSik2iTGfDjfdCZAxv2ormxtKgemjC3SI6PL31qOA0j5LhTDVjHChccoc7brwLvpvLPiMyRlcO88C4l1QQ==", - "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 - }, - "cosmiconfig": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-2.2.2.tgz", - "integrity": "sha512-GiNXLwAFPYHy25XmTPpafYvn3CLAkJ8FLsscq78MQd1Kh0OU6Yzhn4eV2MVF4G9WEQZoWEGltatdR+ntGPMl5A==", - "dev": true, - "requires": { - "is-directory": "^0.3.1", - "js-yaml": "^3.4.3", - "minimist": "^1.2.0", - "object-assign": "^4.1.0", - "os-homedir": "^1.0.1", - "parse-json": "^2.2.0", - "require-from-string": "^1.1.0" - } - }, - "coveralls": { - "version": "2.11.16", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-2.11.16.tgz", - "integrity": "sha1-2pBhJlFC3e6VT2g3kSK+l76KtLE=", - "dev": true, - "requires": { - "js-yaml": "3.6.1", - "lcov-parse": "0.0.10", - "log-driver": "1.2.5", - "minimist": "1.2.0", - "request": "2.79.0" - }, - "dependencies": { - "js-yaml": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.6.1.tgz", - "integrity": "sha1-bl/mfYsgXOTSL60Ft3geja3MSzA=", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^2.6.0" - } - } - } - }, - "crc32-stream": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-0.3.4.tgz", - "integrity": "sha1-c7wltF+sHbZjIjGnv86JJ+nwZVI=", - "dev": true, - "requires": { - "buffer-crc32": "~0.2.1", - "readable-stream": "~1.0.24" - }, - "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.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "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 - } - } - }, - "create-ecdh": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", - "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.0.0" - } - }, - "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=", - "dev": true, - "requires": { - "capture-stack-trace": "^1.0.0" - } - }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "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=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "cryptiles": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", - "dev": true, - "requires": { - "boom": "2.x.x" - } - }, - "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==", - "dev": true, - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - } - }, - "crypto-random-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", - "dev": true - }, - "css-animation": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/css-animation/-/css-animation-1.5.0.tgz", - "integrity": "sha512-hWYoWiOZ7Vr20etzLh3kpWgtC454tW5vn4I6rLANDgpzNSkO7UfOqyCEeaoBSG9CYWQpRkFWTWbWW8o3uZrNLw==", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "component-classes": "^1.2.5" - } - }, - "css-color-names": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", - "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=", - "dev": true - }, - "css-loader": { - "version": "0.26.4", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-0.26.4.tgz", - "integrity": "sha1-th6eMNuUMD5v/IkvEOzQmtAlof0=", - "dev": true, - "requires": { - "babel-code-frame": "^6.11.0", - "css-selector-tokenizer": "^0.7.0", - "cssnano": ">=2.6.1 <4", - "loader-utils": "^1.0.2", - "lodash.camelcase": "^4.3.0", - "object-assign": "^4.0.1", - "postcss": "^5.0.6", - "postcss-modules-extract-imports": "^1.0.0", - "postcss-modules-local-by-default": "^1.0.1", - "postcss-modules-scope": "^1.0.0", - "postcss-modules-values": "^1.1.0", - "source-list-map": "^0.1.7" - }, - "dependencies": { - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - } - } - } - }, - "css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", - "dev": true, - "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" - } - }, - "css-selector-tokenizer": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz", - "integrity": "sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA==", - "dev": true, - "requires": { - "cssesc": "^0.1.0", - "fastparse": "^1.1.1", - "regexpu-core": "^1.0.0" - }, - "dependencies": { - "regexpu-core": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz", - "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", - "dev": true, - "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" - } - } - } - }, - "css-what": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", - "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", - "dev": true - }, - "cssesc": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz", - "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=", - "dev": true - }, - "cssnano": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-3.10.0.tgz", - "integrity": "sha1-Tzj2zqK5sX+gFJDyPx3GjqZcHDg=", - "dev": true, - "requires": { - "autoprefixer": "^6.3.1", - "decamelize": "^1.1.2", - "defined": "^1.0.0", - "has": "^1.0.1", - "object-assign": "^4.0.1", - "postcss": "^5.0.14", - "postcss-calc": "^5.2.0", - "postcss-colormin": "^2.1.8", - "postcss-convert-values": "^2.3.4", - "postcss-discard-comments": "^2.0.4", - "postcss-discard-duplicates": "^2.0.1", - "postcss-discard-empty": "^2.0.1", - "postcss-discard-overridden": "^0.1.1", - "postcss-discard-unused": "^2.2.1", - "postcss-filter-plugins": "^2.0.0", - "postcss-merge-idents": "^2.1.5", - "postcss-merge-longhand": "^2.0.1", - "postcss-merge-rules": "^2.0.3", - "postcss-minify-font-values": "^1.0.2", - "postcss-minify-gradients": "^1.0.1", - "postcss-minify-params": "^1.0.4", - "postcss-minify-selectors": "^2.0.4", - "postcss-normalize-charset": "^1.1.0", - "postcss-normalize-url": "^3.0.7", - "postcss-ordered-values": "^2.1.0", - "postcss-reduce-idents": "^2.2.2", - "postcss-reduce-initial": "^1.0.0", - "postcss-reduce-transforms": "^1.0.3", - "postcss-svgo": "^2.1.1", - "postcss-unique-selectors": "^2.0.2", - "postcss-value-parser": "^3.2.3", - "postcss-zindex": "^2.0.1" - } - }, - "csso": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/csso/-/csso-2.3.2.tgz", - "integrity": "sha1-3dUsWHAz9J6Utx/FVWnyUuj/X4U=", - "dev": true, - "requires": { - "clap": "^1.0.9", - "source-map": "^0.5.3" - } - }, - "ctype": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/ctype/-/ctype-0.5.3.tgz", - "integrity": "sha1-gsGMJGH3QRTvFsE1IkrQuRRMoS8=", - "dev": true - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "custom-event": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", - "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=", - "dev": true - }, - "d": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", - "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", - "dev": true, - "requires": { - "es5-ext": "^0.10.9" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "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=", - "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 - }, - "dateformat": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-2.2.0.tgz", - "integrity": "sha1-QGXiATz5+5Ft39gu+1Bq1MZ2kGI=", - "dev": true - }, - "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" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "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=", - "dev": true - }, - "deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", - "dev": true - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true - }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true - }, - "default-require-extensions": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-1.0.0.tgz", - "integrity": "sha1-836hXT4T/9m0N9M+GnW1+5eHTLg=", - "dev": true, - "requires": { - "strip-bom": "^2.0.0" - }, - "dependencies": { - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - } - } - }, - "defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", - "dev": true, - "requires": { - "clone": "^1.0.2" - } - }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, - "requires": { - "object-keys": "^1.0.12" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "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==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "defined": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", - "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", - "dev": true - }, - "defs": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/defs/-/defs-1.1.1.tgz", - "integrity": "sha1-siYJ8sehG6ej2xFoBcE5scr/qdI=", - "dev": true, - "requires": { - "alter": "~0.2.0", - "ast-traverse": "~0.1.1", - "breakable": "~1.0.0", - "esprima-fb": "~15001.1001.0-dev-harmony-fb", - "simple-fmt": "~0.1.0", - "simple-is": "~0.2.0", - "stringmap": "~0.2.2", - "stringset": "~0.2.1", - "tryor": "~0.1.2", - "yargs": "~3.27.0" - }, - "dependencies": { - "esprima-fb": { - "version": "15001.1001.0-dev-harmony-fb", - "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-15001.1001.0-dev-harmony-fb.tgz", - "integrity": "sha1-Q761fsJujPI3092LM+QlM1d/Jlk=", - "dev": true - } - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "dev": true - }, - "deprecated": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/deprecated/-/deprecated-0.0.1.tgz", - "integrity": "sha1-+cmvVGSvoeepcUWKi97yqpTVuxk=", - "dev": true - }, - "des.js": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", - "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", - "dev": true - }, - "detect-file": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", - "dev": true - }, - "detect-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "detective": { - "version": "4.7.1", - "resolved": "https://registry.npmjs.org/detective/-/detective-4.7.1.tgz", - "integrity": "sha512-H6PmeeUcZloWtdt4DAkFyzFL94arpHr3NOwwmVILFiy+9Qd4JTxxXrzfyGk/lmct2qVGBwTSwSXagqu2BxmWig==", - "dev": true, - "requires": { - "acorn": "^5.2.1", - "defined": "^1.0.0" - } - }, - "di": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=", - "dev": true - }, - "diff": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-1.4.0.tgz", - "integrity": "sha1-fyjS657nsVqX79ic5j3P2qPMur8=", - "dev": true - }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - } - }, - "doctrine": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-0.7.2.tgz", - "integrity": "sha1-fLhgNZujvpDgQLJrcpzkv6ZUxSM=", - "dev": true, - "requires": { - "esutils": "^1.1.6", - "isarray": "0.0.1" - }, - "dependencies": { - "esutils": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz", - "integrity": "sha1-wBzKqa5LiXxtDD4hCuUvPHqEQ3U=", - "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 - } - } - }, - "dom-align": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/dom-align/-/dom-align-1.9.0.tgz", - "integrity": "sha512-HvPfXISxoU7dKrbqS4vIFa1hx88wD7VdKaZ7sHWeow8y76tuzsxXkiPGbeilemLXrTd9cWbPqR4MOl4y3dkcXA==", - "dev": true - }, - "dom-scroll-into-view": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/dom-scroll-into-view/-/dom-scroll-into-view-1.2.1.tgz", - "integrity": "sha1-6PNnMt0ImwIBqI14Fdw/iObWbH4=", - "dev": true - }, - "dom-serialize": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", - "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=", - "dev": true, - "requires": { - "custom-event": "~1.0.0", - "ent": "~2.2.0", - "extend": "^3.0.0", - "void-elements": "^2.0.0" - } - }, - "dom-serializer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", - "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", - "dev": true, - "requires": { - "domelementtype": "^1.3.0", - "entities": "^1.1.1" - } - }, - "domain-browser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true - }, - "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", - "dev": true - }, - "domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", - "dev": true, - "requires": { - "domelementtype": "1" - } - }, - "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", - "domelementtype": "1" - } - }, - "dot-prop": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", - "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", - "dev": true, - "requires": { - "is-obj": "^1.0.0" - } - }, - "duplexer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", - "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", - "dev": true - }, - "duplexer2": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", - "integrity": "sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds=", - "dev": true, - "requires": { - "readable-stream": "~1.1.9" - }, - "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.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.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "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 - } - } - }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", - "dev": true - }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "dev": true, - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - }, - "dependencies": { - "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==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", - "dev": true - }, - "electron-to-chromium": { - "version": "1.3.137", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.137.tgz", - "integrity": "sha512-kGi32g42a8vS/WnYE7ELJyejRT7hbr3UeOOu0WeuYuQ29gCpg9Lrf6RdcTQVXSt/v0bjCfnlb/EWOOsiKpTmkw==", - "dev": true - }, - "elliptic": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", - "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", - "dev": true, - "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" - } - }, - "emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "dev": true - }, - "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=", - "dev": true, - "requires": { - "once": "~1.3.0" - }, - "dependencies": { - "once": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", - "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", - "dev": true, - "requires": { - "wrappy": "1" - } - } - } - }, - "engine.io": { - "version": "1.6.10", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-1.6.10.tgz", - "integrity": "sha1-+H2E4b0h0aLsf43u8MYgVKzfsno=", - "dev": true, - "requires": { - "accepts": "1.1.4", - "base64id": "0.1.0", - "debug": "2.2.0", - "engine.io-parser": "1.2.4", - "ws": "1.0.1" - }, - "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" - } - }, - "ms": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", - "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", - "dev": true - } - } - }, - "engine.io-client": { - "version": "1.6.9", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-1.6.9.tgz", - "integrity": "sha1-HWrUgEilCDyVCWlDsp0279shJAE=", - "dev": true, - "requires": { - "component-emitter": "1.1.2", - "component-inherit": "0.0.3", - "debug": "2.2.0", - "engine.io-parser": "1.2.4", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "parsejson": "0.0.1", - "parseqs": "0.0.2", - "parseuri": "0.0.4", - "ws": "1.0.1", - "xmlhttprequest-ssl": "1.5.1", - "yeast": "0.1.2" - }, - "dependencies": { - "component-emitter": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.1.2.tgz", - "integrity": "sha1-KWWU8nU9qmOZbSrwjRWpURbJrsM=", - "dev": true - }, - "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" - } - }, - "ms": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", - "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", - "dev": true - } - } - }, - "engine.io-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.2.4.tgz", - "integrity": "sha1-4Il7C/FOeS1M0qWVBVORnFaUjEI=", - "dev": true, - "requires": { - "after": "0.8.1", - "arraybuffer.slice": "0.0.6", - "base64-arraybuffer": "0.1.2", - "blob": "0.0.4", - "has-binary": "0.1.6", - "utf8": "2.1.0" - }, - "dependencies": { - "has-binary": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/has-binary/-/has-binary-0.1.6.tgz", - "integrity": "sha1-JTJvOc+k9hath4eJTjryz7x7bhA=", - "dev": true, - "requires": { - "isarray": "0.0.1" - } - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - } - } - }, - "enhanced-resolve": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz", - "integrity": "sha1-BCHjOf1xQZs9oT0Smzl5BAIwR24=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.4.0", - "object-assign": "^4.0.1", - "tapable": "^0.2.7" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - } - } - }, - "ent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", - "dev": true - }, - "entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", - "dev": true - }, - "errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", - "dev": true, - "requires": { - "prr": "~1.0.1" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "error-inject": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/error-inject/-/error-inject-1.0.0.tgz", - "integrity": "sha1-4rPZG1Su1nLzCdlQ0VSFD6EdTzc=", - "dev": true - }, - "es5-ext": { - "version": "0.10.50", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.50.tgz", - "integrity": "sha512-KMzZTPBkeQV/JcSQhI5/z6d9VWJ3EnQ194USTUwIYZ2ZbpN8+SGXQKt1h68EX44+qt+Fzr8DO17vnxrw7c3agw==", - "dev": true, - "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.1", - "next-tick": "^1.0.0" - } - }, - "es5-shim": { - "version": "4.5.13", - "resolved": "https://registry.npmjs.org/es5-shim/-/es5-shim-4.5.13.tgz", - "integrity": "sha512-xi6hh6gsvDE0MaW4Vp1lgNEBpVcCXRWfPXj5egDvtgLz4L9MEvNwYEMdJH+JJinWkwa8c3c3o5HduV7dB/e1Hw==", - "dev": true - }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "es6-map": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-set": "~0.1.5", - "es6-symbol": "~3.1.1", - "event-emitter": "~0.3.5" - } - }, - "es6-promise": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.6.tgz", - "integrity": "sha512-aRVgGdnmW2OiySVPUC9e6m+plolMAJKjZnQlCwNSuK5yQ0JN61DZSO1X1Ufd1foqWRAlig0rhduTCHe7sVtK5Q==", - "dev": true - }, - "es6-promisify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", - "dev": true, - "requires": { - "es6-promise": "^4.0.3" - } - }, - "es6-set": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-symbol": "3.1.1", - "event-emitter": "~0.3.5" - } - }, - "es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "es6-weak-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", - "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "^0.10.14", - "es6-iterator": "^2.0.1", - "es6-symbol": "^3.1.1" - } - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", - "dev": 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=", - "dev": true - }, - "escodegen": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", - "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=", - "dev": true, - "requires": { - "esprima": "^2.7.1", - "estraverse": "^1.9.1", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.2.0" - }, - "dependencies": { - "source-map": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", - "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=", - "dev": true, - "optional": true, - "requires": { - "amdefine": ">=0.0.4" - } - } - } - }, - "escope": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", - "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", - "dev": true, - "requires": { - "es6-map": "^0.1.3", - "es6-weak-map": "^2.0.1", - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - }, - "dependencies": { - "estraverse": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", - "dev": true - } - } - }, - "eslint": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-1.10.3.tgz", - "integrity": "sha1-+xmpGxPBWAgrvKKUsX2Xm8g1Ogo=", - "dev": true, - "requires": { - "chalk": "^1.0.0", - "concat-stream": "^1.4.6", - "debug": "^2.1.1", - "doctrine": "^0.7.1", - "escape-string-regexp": "^1.0.2", - "escope": "^3.3.0", - "espree": "^2.2.4", - "estraverse": "^4.1.1", - "estraverse-fb": "^1.3.1", - "esutils": "^2.0.2", - "file-entry-cache": "^1.1.1", - "glob": "^5.0.14", - "globals": "^8.11.0", - "handlebars": "^4.0.0", - "inquirer": "^0.11.0", - "is-my-json-valid": "^2.10.0", - "is-resolvable": "^1.0.0", - "js-yaml": "3.4.5", - "json-stable-stringify": "^1.0.0", - "lodash.clonedeep": "^3.0.1", - "lodash.merge": "^3.3.2", - "lodash.omit": "^3.1.0", - "minimatch": "^3.0.0", - "mkdirp": "^0.5.0", - "object-assign": "^4.0.1", - "optionator": "^0.6.0", - "path-is-absolute": "^1.0.0", - "path-is-inside": "^1.0.1", - "shelljs": "^0.5.3", - "strip-json-comments": "~1.0.1", - "text-table": "~0.2.0", - "user-home": "^2.0.0", - "xml-escape": "~1.0.0" - }, - "dependencies": { - "espree": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/espree/-/espree-2.2.5.tgz", - "integrity": "sha1-32kbkxCIlAKuspzAZnCMVmkLhUs=", - "dev": true - }, - "estraverse": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", - "dev": true - }, - "fast-levenshtein": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.0.7.tgz", - "integrity": "sha1-AXjc3uAjuSkFGTrwlZ6KdjnP3Lk=", - "dev": true - }, - "globals": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-8.18.0.tgz", - "integrity": "sha1-k9SmK9ysOM+vr8R9awNHaMsP/LQ=", - "dev": true - }, - "js-yaml": { - "version": "3.4.5", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.4.5.tgz", - "integrity": "sha1-w0A3l98SuRhmV08t4jZG/oyvtE0=", - "dev": true, - "requires": { - "argparse": "^1.0.2", - "esprima": "^2.6.0" - } - }, - "levn": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.2.5.tgz", - "integrity": "sha1-uo0znQykphDjo/FFucr0iAcVUFQ=", - "dev": true, - "requires": { - "prelude-ls": "~1.1.0", - "type-check": "~0.3.1" - } - }, - "optionator": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.6.0.tgz", - "integrity": "sha1-tj7Lvw4xX61LyYJ7Rdx7pFKE/LY=", - "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~1.0.6", - "levn": "~0.2.5", - "prelude-ls": "~1.1.1", - "type-check": "~0.3.1", - "wordwrap": "~0.0.2" - } - }, - "shelljs": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.5.3.tgz", - "integrity": "sha1-xUmCuZbHbvDB5rWfvcWCX1txMRM=", - "dev": true - }, - "user-home": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/user-home/-/user-home-2.0.0.tgz", - "integrity": "sha1-nHC/2Babwdy/SGBODwS4tJzenp8=", - "dev": true, - "requires": { - "os-homedir": "^1.0.0" - } - } - } - }, - "eslint-config-airbnb": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eslint-config-airbnb/-/eslint-config-airbnb-5.0.1.tgz", - "integrity": "sha1-et06BylgQ/X2ilP62CIlMCgAxFM=", - "dev": true - }, - "eslint-plugin-react": { - "version": "3.16.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-3.16.1.tgz", - "integrity": "sha1-Ji2Wt318SkKvgJpzwOUnpYYSKTw=", - "dev": true - }, - "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", - "dev": true - }, - "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "dev": true, - "requires": { - "estraverse": "^4.1.0" - }, - "dependencies": { - "estraverse": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", - "dev": true - } - } - }, - "estraverse": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", - "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=", - "dev": true - }, - "estraverse-fb": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/estraverse-fb/-/estraverse-fb-1.3.2.tgz", - "integrity": "sha1-0yOky15awzHOoDNBOpJT4WQ+B8Q=", - "dev": true - }, - "esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", - "dev": true - }, - "event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "eventemitter3": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", - "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==", - "dev": true - }, - "events": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", - "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dev": true, - "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "exit-hook": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", - "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", - "dev": true - }, - "expand-braces": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/expand-braces/-/expand-braces-0.1.2.tgz", - "integrity": "sha1-SIsdHSRRyz06axks/AMPRMWFX+o=", - "dev": true, - "requires": { - "array-slice": "^0.2.3", - "array-unique": "^0.2.1", - "braces": "^0.1.2" - }, - "dependencies": { - "array-slice": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", - "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", - "dev": true - }, - "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", - "dev": true - }, - "braces": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-0.1.5.tgz", - "integrity": "sha1-wIVxEIUpHYt1/ddOqw+FlygHEeY=", - "dev": true, - "requires": { - "expand-range": "^0.1.0" - } - }, - "expand-range": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-0.1.1.tgz", - "integrity": "sha1-TLjtoJk8pW+k9B/ELzy7TMrf8EQ=", - "dev": true, - "requires": { - "is-number": "^0.1.1", - "repeat-string": "^0.2.2" - } - }, - "is-number": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-0.1.1.tgz", - "integrity": "sha1-aaevEWlj1HIG7JvZtIoUIW8eOAY=", - "dev": true - }, - "repeat-string": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-0.2.2.tgz", - "integrity": "sha1-x6jTI2BoNiBZp+RlH8aITosftK4=", - "dev": true - } - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "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=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "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=", - "dev": true, - "requires": { - "fill-range": "^2.1.0" - }, - "dependencies": { - "fill-range": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", - "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", - "dev": true, - "requires": { - "is-number": "^2.1.0", - "isobject": "^2.0.0", - "randomatic": "^3.0.0", - "repeat-element": "^1.1.2", - "repeat-string": "^1.5.2" - } - }, - "is-number": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "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=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "expand-tilde": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", - "dev": true, - "requires": { - "homedir-polyfill": "^1.0.1" - } - }, - "expect.js": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/expect.js/-/expect.js-0.3.1.tgz", - "integrity": "sha1-sKWaDS7/VDdUTr8M6qYBWEHQm1s=", - "dev": true - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "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==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "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" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "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==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "extract-text-webpack-plugin": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/extract-text-webpack-plugin/-/extract-text-webpack-plugin-2.1.2.tgz", - "integrity": "sha1-dW7076gVXDaBgz+8NNpTuUF0bWw=", - "dev": true, - "requires": { - "async": "^2.1.2", - "loader-utils": "^1.0.2", - "schema-utils": "^0.3.0", - "webpack-sources": "^1.0.1" - }, - "dependencies": { - "async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", - "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", - "dev": true, - "requires": { - "lodash": "^4.17.11" - } - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - } - }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "extract-zip": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.7.tgz", - "integrity": "sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k=", - "dev": true, - "requires": { - "concat-stream": "1.6.2", - "debug": "2.6.9", - "mkdirp": "0.5.1", - "yauzl": "2.4.1" - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fancy-log": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", - "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", - "dev": true, - "requires": { - "ansi-gray": "^0.1.1", - "color-support": "^1.1.3", - "parse-node-version": "^1.0.0", - "time-stamp": "^1.0.0" - } - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "fastclick": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/fastclick/-/fastclick-1.0.6.tgz", - "integrity": "sha1-FhYlsnsaWAZAWTa9qaLBkm0Gvmo=", - "dev": true - }, - "fastparse": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", - "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", - "dev": true - }, - "fd-slicer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", - "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", - "dev": true, - "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=", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5", - "object-assign": "^4.1.0" - } - }, - "file-entry-cache": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-1.3.1.tgz", - "integrity": "sha1-RMYepgeuS+nBQC9B9EJwy/4zT/g=", - "dev": true, - "requires": { - "flat-cache": "^1.2.1", - "object-assign": "^4.0.1" - } - }, - "file-loader": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-0.10.1.tgz", - "integrity": "sha1-gVA0EZiR/GRB+1pkwRvJPCLd2EI=", - "dev": true, - "requires": { - "loader-utils": "^1.0.2" - }, - "dependencies": { - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - } - } - } - }, - "filename-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", - "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", - "dev": true - }, - "fileset": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz", - "integrity": "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=", - "dev": true, - "requires": { - "glob": "^7.0.3", - "minimatch": "^3.0.3" - }, - "dependencies": { - "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "filesize": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.6.1.tgz", - "integrity": "sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg==", - "dev": true - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - } - }, - "find-cache-dir": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz", - "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "mkdirp": "^0.5.1", - "pkg-dir": "^1.0.0" - } - }, - "find-index": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/find-index/-/find-index-0.1.1.tgz", - "integrity": "sha1-Z101iyyjiS15Whq0cjL4tuLg3eQ=", - "dev": true - }, - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "findup-sync": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", - "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", - "dev": true, - "requires": { - "detect-file": "^1.0.0", - "is-glob": "^3.1.0", - "micromatch": "^3.0.4", - "resolve-dir": "^1.0.1" - } - }, - "fined": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", - "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", - "dev": true, - "requires": { - "expand-tilde": "^2.0.2", - "is-plain-object": "^2.0.3", - "object.defaults": "^1.1.0", - "object.pick": "^1.2.0", - "parse-filepath": "^1.0.1" - } - }, - "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=", - "dev": true - }, - "flagged-respawn": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", - "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", - "dev": true - }, - "flat-cache": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.4.tgz", - "integrity": "sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==", - "dev": true, - "requires": { - "circular-json": "^0.3.1", - "graceful-fs": "^4.1.2", - "rimraf": "~2.6.2", - "write": "^0.2.1" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - } - } - }, - "flatten": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.2.tgz", - "integrity": "sha1-2uRqnXj74lKSJYzB54CkHZXAN4I=", - "dev": true - }, - "follow-redirects": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.7.0.tgz", - "integrity": "sha512-m/pZQy4Gj287eNy94nivy5wchN3Kp+Q5WgUPNy5lJSZ3sgkVKSYV/ZChMAQVIgx1SqfZ2zBZtPA2YlXIWxxJOQ==", - "dev": true, - "requires": { - "debug": "^3.2.6" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - } - } - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true - }, - "for-own": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", - "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.5", - "mime-types": "^2.1.12" - } - }, - "formidable": { - "version": "1.0.17", - "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.0.17.tgz", - "integrity": "sha1-71SRSQ+UM7cF+qdyScmQKa40hVk=", - "dev": true - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dev": true, - "requires": { - "map-cache": "^0.2.2" - } - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "dev": true - }, - "fs-access": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz", - "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=", - "dev": true, - "requires": { - "null-check": "^1.0.0" - } - }, - "fs-extra": { - "version": "0.16.5", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.16.5.tgz", - "integrity": "sha1-GtZh+myGyWCM0bSe/G/Og0k5p1A=", - "dev": true, - "requires": { - "graceful-fs": "^3.0.5", - "jsonfile": "^2.0.0", - "rimraf": "^2.2.8" - } - }, - "fs-readdir-recursive": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-0.1.2.tgz", - "integrity": "sha1-MVtPuMHKW4xH3v7zGdBz2tNWgFk=", - "dev": true - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fsevents": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", - "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", - "dev": true, - "optional": true, - "requires": { - "nan": "^2.12.1", - "node-pre-gyp": "^0.12.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.3.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.3.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^4.1.0", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.12.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.6.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.3.4", - "minizlib": "^1.1.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gaze": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/gaze/-/gaze-0.5.2.tgz", - "integrity": "sha1-QLcJU30k0dRXZ9takIaJ3+aaxE8=", - "dev": true, - "requires": { - "globule": "~0.1.0" - } - }, - "generate-function": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz", - "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==", - "dev": true, - "requires": { - "is-property": "^1.0.2" - } - }, - "generate-object-property": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", - "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", - "dev": true, - "requires": { - "is-property": "^1.0.0" - } - }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true - }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - }, - "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "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=", - "dev": true - } - } - }, - "gh-pages": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/gh-pages/-/gh-pages-0.3.1.tgz", - "integrity": "sha1-5Y9/jHxJbC+VuDNUpOPzMdwDJ6g=", - "dev": true, - "requires": { - "async": "0.2.9", - "commander": "~2.8.1", - "glob": "~4.0.2", - "graceful-fs": "2.0.1", - "lodash": "~2.4.1", - "q": "~1.0.1", - "q-io": "~1.11.0", - "wrench": "1.5.1" - }, - "dependencies": { - "async": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/async/-/async-0.2.9.tgz", - "integrity": "sha1-32MGD789Myhqdqr21Vophtn/hhk=", - "dev": true - }, - "glob": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-4.0.6.tgz", - "integrity": "sha1-aVxQvdTi+1xdNwsJHziNNwfikac=", - "dev": true, - "requires": { - "graceful-fs": "^3.0.2", - "inherits": "2", - "minimatch": "^1.0.0", - "once": "^1.3.0" - }, - "dependencies": { - "graceful-fs": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.11.tgz", - "integrity": "sha1-dhPHeKGv6mLyXGMKCG1/Osu92Bg=", - "dev": true, - "requires": { - "natives": "^1.1.0" - } - } - } - }, - "graceful-fs": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.1.tgz", - "integrity": "sha1-f9bgpIN8NdDMFTMClNlYSjiYz4Q=", - "dev": true - }, - "lodash": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz", - "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=", - "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 - }, - "minimatch": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-1.0.0.tgz", - "integrity": "sha1-4N0hILSeG3JM6NcUxSCCKpQ4V20=", - "dev": true, - "requires": { - "lru-cache": "2", - "sigmund": "~1.0.0" - } - }, - "q": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.0.1.tgz", - "integrity": "sha1-EYcq7t7okmgRCxCnGESP+xARKhQ=", - "dev": true - } - } - }, - "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", - "dev": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "dev": true, - "requires": { - "glob-parent": "^2.0.0", - "is-glob": "^2.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=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - } - } - }, - "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true, - "requires": { - "is-glob": "^2.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=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - } - } - }, - "glob-stream": { - "version": "3.1.18", - "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-3.1.18.tgz", - "integrity": "sha1-kXCl8St5Awb9/lmPMT+PeVT9FDs=", - "dev": true, - "requires": { - "glob": "^4.3.1", - "glob2base": "^0.0.12", - "minimatch": "^2.0.1", - "ordered-read-streams": "^0.1.0", - "through2": "^0.6.1", - "unique-stream": "^1.0.0" - }, - "dependencies": { - "glob": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz", - "integrity": "sha1-xstz0yJsHv7wTePFbQEvAzd+4V8=", - "dev": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^2.0.1", - "once": "^1.3.0" - } - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - }, - "minimatch": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", - "integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=", - "dev": true, - "requires": { - "brace-expansion": "^1.0.0" - } - }, - "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.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "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.33-1 <1.1.0-0", - "xtend": ">=4.0.0 <4.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=", - "dev": true, - "requires": { - "gaze": "^0.5.1" - } - }, - "glob2base": { - "version": "0.0.12", - "resolved": "https://registry.npmjs.org/glob2base/-/glob2base-0.0.12.tgz", - "integrity": "sha1-nUGbPijxLoOjYhZKJ3BVkiycDVY=", - "dev": true, - "requires": { - "find-index": "^0.1.1" - } - }, - "global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", - "dev": true, - "requires": { - "ini": "^1.3.4" - } - }, - "global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", - "dev": true, - "requires": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" - } - }, - "global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", - "dev": true, - "requires": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" - } - }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true - }, - "globule": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/globule/-/globule-0.1.0.tgz", - "integrity": "sha1-2cjt3h2nnRJaFRt5UzuXhnY0auU=", - "dev": true, - "requires": { - "glob": "~3.1.21", - "lodash": "~1.0.1", - "minimatch": "~0.2.11" - }, - "dependencies": { - "glob": { - "version": "3.1.21", - "resolved": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz", - "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=", - "dev": true, - "requires": { - "graceful-fs": "~1.2.0", - "inherits": "1", - "minimatch": "~0.2.11" - } - }, - "graceful-fs": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz", - "integrity": "sha1-FaSAaldUfLLS2/J/QuiajDRRs2Q=", - "dev": true - }, - "inherits": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz", - "integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=", - "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 - }, - "minimatch": { - "version": "0.2.14", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz", - "integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=", - "dev": true, - "requires": { - "lru-cache": "2", - "sigmund": "~1.0.0" - } - } - } - }, - "glogg": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz", - "integrity": "sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==", - "dev": true, - "requires": { - "sparkles": "^1.0.0" - } - }, - "got": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", - "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", - "dev": true, - "requires": { - "create-error-class": "^3.0.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-redirect": "^1.0.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "lowercase-keys": "^1.0.0", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "unzip-response": "^2.0.1", - "url-parse-lax": "^1.0.0" - } - }, - "graceful-fs": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.11.tgz", - "integrity": "sha1-dhPHeKGv6mLyXGMKCG1/Osu92Bg=", - "dev": true, - "requires": { - "natives": "^1.1.0" - } - }, - "graceful-readlink": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", - "dev": true - }, - "growl": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.9.2.tgz", - "integrity": "sha1-Dqd0NxXbjY3ixe3hd14bRayFwC8=", - "dev": true - }, - "gulp": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/gulp/-/gulp-3.9.1.tgz", - "integrity": "sha1-VxzkWSjdQK9lFPxAEYZgFsE4RbQ=", - "dev": true, - "requires": { - "archy": "^1.0.0", - "chalk": "^1.0.0", - "deprecated": "^0.0.1", - "gulp-util": "^3.0.0", - "interpret": "^1.0.0", - "liftoff": "^2.1.0", - "minimist": "^1.1.0", - "orchestrator": "^0.3.0", - "pretty-hrtime": "^1.0.0", - "semver": "^4.1.0", - "tildify": "^1.0.0", - "v8flags": "^2.0.2", - "vinyl-fs": "^0.3.0" - } - }, - "gulp-babel": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/gulp-babel/-/gulp-babel-6.1.3.tgz", - "integrity": "sha512-tm15R3rt4gO59WXCuqrwf4QXJM9VIJC+0J2NPYSC6xZn+cZRD5y5RPGAiHaDxCJq7Rz5BDljlrk3cEjWADF+wQ==", - "dev": true, - "requires": { - "babel-core": "^6.23.1", - "object-assign": "^4.0.1", - "plugin-error": "^1.0.1", - "replace-ext": "0.0.1", - "through2": "^2.0.0", - "vinyl-sourcemaps-apply": "^0.2.0" - } - }, - "gulp-jsx2example": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/gulp-jsx2example/-/gulp-jsx2example-1.2.4.tgz", - "integrity": "sha1-zXfAuB0Qv84GsNFINBPJ+hZBrLQ=", - "dev": true, - "requires": { - "gulp-util": "~3.0.6", - "highlight.js": "8.x", - "lodash.merge": "~3.3.2", - "marked": "~0.3.3", - "through2": "~2.0.0", - "xtemplate": "4.x", - "xtpl": "3.x" - } - }, - "gulp-less": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/gulp-less/-/gulp-less-3.5.0.tgz", - "integrity": "sha512-FQLY7unaHdTOXG0jlwxeBQcWoPPrTMQZRA7HfYwSNi9IPVx5l7GJEN72mG4ri2yigp/f/VNGUAJnFMJHBmH3iw==", - "dev": true, - "requires": { - "accord": "^0.28.0", - "less": "2.6.x || ^2.7.1", - "object-assign": "^4.0.1", - "plugin-error": "^0.1.2", - "replace-ext": "^1.0.0", - "through2": "^2.0.0", - "vinyl-sourcemaps-apply": "^0.2.0" - }, - "dependencies": { - "arr-diff": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", - "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1", - "array-slice": "^0.2.3" - } - }, - "arr-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", - "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=", - "dev": true - }, - "array-slice": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", - "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", - "dev": true - }, - "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=", - "dev": true, - "requires": { - "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=", - "dev": true - }, - "plugin-error": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", - "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", - "dev": true, - "requires": { - "ansi-cyan": "^0.1.1", - "ansi-red": "^0.1.1", - "arr-diff": "^1.0.1", - "arr-union": "^2.0.1", - "extend-shallow": "^1.1.2" - } - }, - "replace-ext": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", - "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", - "dev": true - } - } - }, - "gulp-postcss": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/gulp-postcss/-/gulp-postcss-6.4.0.tgz", - "integrity": "sha1-eKMuPIeqbNzsWuHJBeGW1HjoxdU=", - "dev": true, - "requires": { - "gulp-util": "^3.0.8", - "postcss": "^5.2.12", - "postcss-load-config": "^1.2.0", - "vinyl-sourcemaps-apply": "^0.2.1" - } - }, - "gulp-sourcemaps": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-1.6.0.tgz", - "integrity": "sha1-uG/zSdgBzrVuHZ59x7vLS33uYAw=", - "dev": true, - "requires": { - "convert-source-map": "^1.1.1", - "graceful-fs": "^4.1.2", - "strip-bom": "^2.0.0", - "through2": "^2.0.0", - "vinyl": "^1.0.0" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - }, - "vinyl": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", - "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", - "dev": true, - "requires": { - "clone": "^1.0.0", - "clone-stats": "^0.0.1", - "replace-ext": "0.0.1" - } - } - } - }, - "gulp-typescript": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gulp-typescript/-/gulp-typescript-3.0.2.tgz", - "integrity": "sha1-aEz9ddDfBkdRToZ51PnzSyjfHaU=", - "dev": true, - "requires": { - "gulp-util": "~3.0.7", - "source-map": "~0.5.3", - "through2": "~2.0.1", - "vinyl-fs": "~2.4.3" - }, - "dependencies": { - "arr-diff": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1" - } - }, - "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", - "dev": true - }, - "braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", - "dev": true, - "requires": { - "expand-range": "^1.8.1", - "preserve": "^0.2.0", - "repeat-element": "^1.1.2" - } - }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "dev": true, - "requires": { - "is-posix-bracket": "^0.1.0" - } - }, - "extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", - "dev": true, - "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=", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - } - }, - "glob-stream": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-5.3.5.tgz", - "integrity": "sha1-pVZlqajM3EGRWofHAeMtTgFvrSI=", - "dev": true, - "requires": { - "extend": "^3.0.0", - "glob": "^5.0.3", - "glob-parent": "^3.0.0", - "micromatch": "^2.3.7", - "ordered-read-streams": "^0.3.0", - "through2": "^0.6.0", - "to-absolute-glob": "^0.1.1", - "unique-stream": "^2.0.2" - }, - "dependencies": { - "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.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "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.33-1 <1.1.0-0", - "xtend": ">=4.0.0 <4.1.0-0" - } - } - } - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "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 - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "lazystream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", - "dev": true, - "requires": { - "readable-stream": "^2.0.5" - } - }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "dev": true, - "requires": { - "arr-diff": "^2.0.0", - "array-unique": "^0.2.1", - "braces": "^1.8.2", - "expand-brackets": "^0.1.4", - "extglob": "^0.3.1", - "filename-regex": "^2.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.1", - "kind-of": "^3.0.2", - "normalize-path": "^2.0.1", - "object.omit": "^2.0.0", - "parse-glob": "^3.0.4", - "regex-cache": "^0.4.2" - }, - "dependencies": { - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^1.0.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=", - "dev": true, - "requires": { - "is-stream": "^1.0.1", - "readable-stream": "^2.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 - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - }, - "unique-stream": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz", - "integrity": "sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==", - "dev": true, - "requires": { - "json-stable-stringify-without-jsonify": "^1.0.1", - "through2-filter": "^3.0.0" - }, - "dependencies": { - "through2-filter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-3.0.0.tgz", - "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==", - "dev": true, - "requires": { - "through2": "~2.0.0", - "xtend": "~4.0.0" - } - } - } - }, - "vinyl": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", - "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", - "dev": true, - "requires": { - "clone": "^1.0.0", - "clone-stats": "^0.0.1", - "replace-ext": "0.0.1" - } - }, - "vinyl-fs": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-2.4.4.tgz", - "integrity": "sha1-vm/zJwy1Xf19MGNkDegfJddTIjk=", - "dev": true, - "requires": { - "duplexify": "^3.2.0", - "glob-stream": "^5.3.2", - "graceful-fs": "^4.0.0", - "gulp-sourcemaps": "1.6.0", - "is-valid-glob": "^0.3.0", - "lazystream": "^1.0.0", - "lodash.isequal": "^4.0.0", - "merge-stream": "^1.0.0", - "mkdirp": "^0.5.0", - "object-assign": "^4.0.0", - "readable-stream": "^2.0.4", - "strip-bom": "^2.0.0", - "strip-bom-stream": "^1.0.0", - "through2": "^2.0.0", - "through2-filter": "^2.0.0", - "vali-date": "^1.0.0", - "vinyl": "^1.0.0" - } - } - } - }, - "gulp-util": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz", - "integrity": "sha1-AFTh50RQLifATBh8PsxQXdVLu08=", - "dev": true, - "requires": { - "array-differ": "^1.0.0", - "array-uniq": "^1.0.2", - "beeper": "^1.0.0", - "chalk": "^1.0.0", - "dateformat": "^2.0.0", - "fancy-log": "^1.1.0", - "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.0.0", - "minimist": "^1.1.0", - "multipipe": "^0.1.2", - "object-assign": "^3.0.0", - "replace-ext": "0.0.1", - "through2": "^2.0.0", - "vinyl": "^0.5.0" - }, - "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=", - "dev": true - } - } - }, - "gulp-watch": { - "version": "4.3.11", - "resolved": "https://registry.npmjs.org/gulp-watch/-/gulp-watch-4.3.11.tgz", - "integrity": "sha1-Fi/FY96fx3DpH5p845VVE6mhGMA=", - "dev": true, - "requires": { - "anymatch": "^1.3.0", - "chokidar": "^1.6.1", - "glob-parent": "^3.0.1", - "gulp-util": "^3.0.7", - "object-assign": "^4.1.0", - "path-is-absolute": "^1.0.1", - "readable-stream": "^2.2.2", - "slash": "^1.0.0", - "vinyl": "^1.2.0", - "vinyl-file": "^2.0.0" - }, - "dependencies": { - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - } - }, - "vinyl": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", - "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", - "dev": true, - "requires": { - "clone": "^1.0.0", - "clone-stats": "^0.0.1", - "replace-ext": "0.0.1" - } - } - } - }, - "gulplog": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", - "integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=", - "dev": true, - "requires": { - "glogg": "^1.0.0" - } - }, - "gzip-size": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-3.0.0.tgz", - "integrity": "sha1-VGGI6b3DN/Zzdy+BZgRks4nc5SA=", - "dev": true, - "requires": { - "duplexer": "^0.1.1" - } - }, - "handlebars": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.3.tgz", - "integrity": "sha512-3yPecJoJHK/4c6aZhSvxOyG4vJKDshV36VHp0iVCDVh7o9w2vwi3NSnL2MMPj3YdduqaBcu7cGbggJQM0br9xA==", - "dev": true, - "requires": { - "neo-async": "^2.6.0", - "optimist": "^0.6.1", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", - "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=", - "dev": true, - "requires": { - "chalk": "^1.1.1", - "commander": "^2.9.0", - "is-my-json-valid": "^2.12.4", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "commander": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", - "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", - "dev": true - } - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^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=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-binary": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/has-binary/-/has-binary-0.1.7.tgz", - "integrity": "sha1-aOYesWIQyVRaClzOBqhzkS/h5ow=", - "dev": true, - "requires": { - "isarray": "0.0.1" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - } - } - }, - "has-cors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", - "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=", - "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 - }, - "has-gulplog": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz", - "integrity": "sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4=", - "dev": true, - "requires": { - "sparkles": "^1.0.0" - } - }, - "has-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", - "dev": true - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "dev": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "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=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hasha": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-2.2.0.tgz", - "integrity": "sha1-eNfL/B5tZjA/55g3NlmEUXsvbuE=", - "dev": true, - "requires": { - "is-stream": "^1.0.1", - "pinkie-promise": "^2.0.0" - } - }, - "hawk": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", - "dev": true, - "requires": { - "boom": "2.x.x", - "cryptiles": "2.x.x", - "hoek": "2.x.x", - "sntp": "1.x.x" - } - }, - "highlight.js": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-8.9.1.tgz", - "integrity": "sha1-uKnFSTISqTkvAiK2SclhFJfr+4g=", - "dev": true - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "dev": true, - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", - "dev": true - }, - "hoist-non-react-statics": { - "version": "2.5.5", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz", - "integrity": "sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==", - "dev": true - }, - "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=", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.1" - } - }, - "homedir-polyfill": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", - "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", - "dev": true, - "requires": { - "parse-passwd": "^1.0.0" - } - }, - "hosted-git-info": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", - "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", - "dev": true - }, - "html-comment-regex": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/html-comment-regex/-/html-comment-regex-1.1.2.tgz", - "integrity": "sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ==", - "dev": true - }, - "html5shiv": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/html5shiv/-/html5shiv-3.7.3.tgz", - "integrity": "sha1-14qEo2e8uacQEA1XgCw4ewhGMdI=", - "dev": true - }, - "htmlparser2": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", - "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", - "dev": true, - "requires": { - "domelementtype": "^1.3.1", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.1.1" - }, - "dependencies": { - "readable-stream": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.3.0.tgz", - "integrity": "sha512-EsI+s3k3XsW+fU8fQACLN59ky34AZ14LoeVZpYwmZvldCFo0r0gnelwF2TcMjLor/BTL5aDJVBMkss0dthToPw==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "http-assert": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/http-assert/-/http-assert-1.4.1.tgz", - "integrity": "sha512-rdw7q6GTlibqVVbXr0CKelfV5iY8G2HqEUkhSk297BMbSpSL8crXC+9rjKoMcZZEsksX30le6f/4ul4E28gegw==", - "dev": true, - "requires": { - "deep-equal": "~1.0.1", - "http-errors": "~1.7.2" - } - }, - "http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "http-proxy": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz", - "integrity": "sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==", - "dev": true, - "requires": { - "eventemitter3": "^3.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "http-signature": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", - "dev": true, - "requires": { - "assert-plus": "^0.2.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "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=", - "dev": true - }, - "https-proxy-agent": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", - "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", - "dev": true, - "requires": { - "agent-base": "^4.3.0", - "debug": "^3.1.0" - }, - "dependencies": { - "agent-base": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", - "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", - "dev": true, - "requires": { - "es6-promisify": "^5.0.0" - } - }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "humanize-number": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/humanize-number/-/humanize-number-0.0.2.tgz", - "integrity": "sha1-EcCvakcWQ2M1iFiASPF5lUFInBg=", - "dev": true - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "icss-replace-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz", - "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=", - "dev": true - }, - "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", - "dev": 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=", - "dev": true, - "optional": true - }, - "import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", - "dev": true - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "indexes-of": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", - "dev": true - }, - "indexof": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", - "dev": true - }, - "indx": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/indx/-/indx-0.2.3.tgz", - "integrity": "sha1-Fdz1bunPZcAjTFE8J/vVgOcPvFA=", - "dev": true - }, - "inflation": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/inflation/-/inflation-2.0.0.tgz", - "integrity": "sha1-i0F+R8KPklpFEz2RTKH9OJEH8w8=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true - }, - "inquirer": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.11.4.tgz", - "integrity": "sha1-geM3ToNhvq/y2XAWIG01nQsy+k0=", - "dev": true, - "requires": { - "ansi-escapes": "^1.1.0", - "ansi-regex": "^2.0.0", - "chalk": "^1.0.0", - "cli-cursor": "^1.0.1", - "cli-width": "^1.0.1", - "figures": "^1.3.5", - "lodash": "^3.3.1", - "readline2": "^1.0.1", - "run-async": "^0.1.0", - "rx-lite": "^3.1.2", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "lodash": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", - "dev": true - } - } - }, - "internal-ip": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-1.2.0.tgz", - "integrity": "sha1-rp+/k7mEh4eF1QqN4bNWlWBYz1w=", - "dev": true, - "requires": { - "meow": "^3.3.0" - } - }, - "interpret": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.2.0.tgz", - "integrity": "sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==", - "dev": true - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, - "invert-kv": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "is-relative": "^1.0.0", - "is-windows": "^1.0.1" - } - }, - "is-absolute-url": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz", - "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=", - "dev": true - }, - "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=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": 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=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true - }, - "is-ci": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz", - "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==", - "dev": true, - "requires": { - "ci-info": "^1.5.0" - } - }, - "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=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.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==", - "dev": true - } - } - }, - "is-directory": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", - "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", - "dev": true - }, - "is-dotfile": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", - "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", - "dev": true - }, - "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=", - "dev": true, - "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=", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-finite": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - }, - "is-installed-globally": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", - "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", - "dev": true, - "requires": { - "global-dirs": "^0.1.0", - "is-path-inside": "^1.0.0" - } - }, - "is-integer": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-integer/-/is-integer-1.0.7.tgz", - "integrity": "sha1-a96Bqs3feLZZtmKdYpytxRqIbVw=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "is-my-ip-valid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz", - "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==", - "dev": true - }, - "is-my-json-valid": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.0.tgz", - "integrity": "sha512-XTHBZSIIxNsIsZXg7XB5l8z/OBFosl1Wao4tXLpeC7eKU4Vm/kdop2azkPqULwnfGQjmeDIyey9g7afMMtdWAA==", - "dev": true, - "requires": { - "generate-function": "^2.0.0", - "generate-object-property": "^1.1.0", - "is-my-ip-valid": "^1.0.0", - "jsonpointer": "^4.0.0", - "xtend": "^4.0.0" - } - }, - "is-npm": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", - "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", - "dev": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true - }, - "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=", - "dev": true, - "requires": { - "path-is-inside": "^1.0.1" - } - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "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=", - "dev": true - }, - "is-primitive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", - "dev": true - }, - "is-property": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", - "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=", - "dev": true - }, - "is-redirect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "is-unc-path": "^1.0.0" - } - }, - "is-resolvable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", - "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", - "dev": true - }, - "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=", - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "is-svg": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-2.1.0.tgz", - "integrity": "sha1-z2EJDaDZ77yrhyLeum8DIgjbsOk=", - "dev": true, - "requires": { - "html-comment-regex": "^1.1.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "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==", - "dev": true, - "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=", - "dev": true - }, - "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=", - "dev": true - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "isbinaryfile": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz", - "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==", - "dev": true, - "requires": { - "buffer-alloc": "^1.2.0" - } - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "ismobilejs": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/ismobilejs/-/ismobilejs-0.5.2.tgz", - "integrity": "sha512-ta9UdV60xVZk/ZafFtSFslQaE76SvNkcs1r73d2PVR21zVzx9xuYv9tNe4MxA1NN7WoeCc2RjGot3Bz1eHDx3Q==", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "istanbul": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.5.tgz", - "integrity": "sha1-ZcfXPUxNqE1POsMQuRj7C4Azczs=", - "dev": true, - "requires": { - "abbrev": "1.0.x", - "async": "1.x", - "escodegen": "1.8.x", - "esprima": "2.7.x", - "glob": "^5.0.15", - "handlebars": "^4.0.1", - "js-yaml": "3.x", - "mkdirp": "0.5.x", - "nopt": "3.x", - "once": "1.x", - "resolve": "1.1.x", - "supports-color": "^3.1.0", - "which": "^1.1.1", - "wordwrap": "^1.0.0" - }, - "dependencies": { - "resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", - "dev": true - }, - "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" - } - }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", - "dev": true - } - } - }, - "istanbul-api": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-1.3.7.tgz", - "integrity": "sha512-4/ApBnMVeEPG3EkSzcw25wDe4N66wxwn+KKn6b47vyek8Xb3NBAcg4xfuQbS7BqcZuTX4wxfD5lVagdggR3gyA==", - "dev": true, - "requires": { - "async": "^2.1.4", - "fileset": "^2.0.2", - "istanbul-lib-coverage": "^1.2.1", - "istanbul-lib-hook": "^1.2.2", - "istanbul-lib-instrument": "^1.10.2", - "istanbul-lib-report": "^1.1.5", - "istanbul-lib-source-maps": "^1.2.6", - "istanbul-reports": "^1.5.1", - "js-yaml": "^3.7.0", - "mkdirp": "^0.5.1", - "once": "^1.4.0" - }, - "dependencies": { - "async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", - "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", - "dev": true, - "requires": { - "lodash": "^4.17.11" - } - }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "istanbul-instrumenter-loader": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/istanbul-instrumenter-loader/-/istanbul-instrumenter-loader-2.0.0.tgz", - "integrity": "sha1-5UkpAKsLuoNe+oAkywC+mz7qJwA=", - "dev": true, - "requires": { - "convert-source-map": "^1.3.0", - "istanbul-lib-instrument": "^1.1.3", - "loader-utils": "^0.2.16", - "object-assign": "^4.1.0" - } - }, - "istanbul-lib-coverage": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz", - "integrity": "sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ==", - "dev": true - }, - "istanbul-lib-hook": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-1.2.2.tgz", - "integrity": "sha512-/Jmq7Y1VeHnZEQ3TL10VHyb564mn6VrQXHchON9Jf/AEcmQ3ZIiyD1BVzNOKTZf/G3gE+kiGK6SmpF9y3qGPLw==", - "dev": true, - "requires": { - "append-transform": "^0.4.0" - } - }, - "istanbul-lib-instrument": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz", - "integrity": "sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A==", - "dev": true, - "requires": { - "babel-generator": "^6.18.0", - "babel-template": "^6.16.0", - "babel-traverse": "^6.18.0", - "babel-types": "^6.18.0", - "babylon": "^6.18.0", - "istanbul-lib-coverage": "^1.2.1", - "semver": "^5.3.0" - }, - "dependencies": { - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, - "istanbul-lib-report": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-1.1.5.tgz", - "integrity": "sha512-UsYfRMoi6QO/doUshYNqcKJqVmFe9w51GZz8BS3WB0lYxAllQYklka2wP9+dGZeHYaWIdcXUx8JGdbqaoXRXzw==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^1.2.1", - "mkdirp": "^0.5.1", - "path-parse": "^1.0.5", - "supports-color": "^3.1.2" - }, - "dependencies": { - "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" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.6.tgz", - "integrity": "sha512-TtbsY5GIHgbMsMiRw35YBHGpZ1DVFEO19vxxeiDMYaeOFOCzfnYVxvl6pOUIZR4dtPhAGpSMup8OyF8ubsaqEg==", - "dev": true, - "requires": { - "debug": "^3.1.0", - "istanbul-lib-coverage": "^1.2.1", - "mkdirp": "^0.5.1", - "rimraf": "^2.6.1", - "source-map": "^0.5.3" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - } - } - }, - "istanbul-reports": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-1.5.1.tgz", - "integrity": "sha512-+cfoZ0UXzWjhAdzosCPP3AN8vvef8XDkWtTfgaN+7L3YTpNYITnCaEkceo5SEYy644VkHka/P1FvkWvrG/rrJw==", - "dev": true, - "requires": { - "handlebars": "^4.0.3" - } - }, - "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 - } - } - }, - "js-base64": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz", - "integrity": "sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "dependencies": { - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - } - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", - "dev": true - }, - "json-loader": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz", - "integrity": "sha512-QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w==", - "dev": true - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": 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=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": 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=", - "dev": true - }, - "json3": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/json3/-/json3-3.2.6.tgz", - "integrity": "sha1-9u/JPAagTemuxTBT3yVZuxniA4s=", - "dev": true - }, - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - }, - "jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true, - "optional": true - } - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsonpointer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz", - "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=", - "dev": true - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": 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=", - "dev": true - } - } - }, - "karma": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/karma/-/karma-1.1.2.tgz", - "integrity": "sha1-eM0J4KfTghxiMpH9Hsm61al2PIU=", - "dev": true, - "requires": { - "bluebird": "^3.3.0", - "body-parser": "^1.12.4", - "chokidar": "^1.4.1", - "colors": "^1.1.0", - "combine-lists": "^1.0.0", - "connect": "^3.3.5", - "core-js": "^2.2.0", - "di": "^0.0.1", - "dom-serialize": "^2.2.0", - "expand-braces": "^0.1.1", - "glob": "^7.0.3", - "graceful-fs": "^4.1.2", - "http-proxy": "^1.13.0", - "isbinaryfile": "^3.0.0", - "lodash": "^3.8.0", - "log4js": "^0.6.31", - "mime": "^1.3.4", - "minimatch": "^3.0.0", - "optimist": "^0.6.1", - "qjobs": "^1.1.4", - "rimraf": "^2.3.3", - "socket.io": "1.4.7", - "source-map": "^0.5.3", - "tmp": "0.0.28", - "useragent": "^2.1.9" - }, - "dependencies": { - "core-js": { - "version": "2.6.8", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.8.tgz", - "integrity": "sha512-RWlREFU74TEkdXzyl1bka66O3kYp8jeTXrvJZDzVVMH8AiHUSOFpL1yfhQJ+wHocAm1m+4971W1PPzfLuCv1vg==", - "dev": true - }, - "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "lodash": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", - "dev": true - } - } - }, - "karma-chrome-launcher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-1.0.1.tgz", - "integrity": "sha1-vlrnxCZPmgouIuPZhL6zJa2SyMs=", - "dev": true, - "requires": { - "fs-access": "^1.0.0", - "which": "^1.2.1" - } - }, - "karma-coverage": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-1.1.2.tgz", - "integrity": "sha512-eQawj4Cl3z/CjxslYy9ariU4uDh7cCNFZHNWXWRpl0pNeblY/4wHR7M7boTYXWrn9bY0z2pZmr11eKje/S/hIw==", - "dev": true, - "requires": { - "dateformat": "^1.0.6", - "istanbul": "^0.4.0", - "lodash": "^4.17.0", - "minimatch": "^3.0.0", - "source-map": "^0.5.1" - }, - "dependencies": { - "dateformat": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", - "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1", - "meow": "^3.3.0" - } - }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "karma-coverage-istanbul-reporter": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-1.4.3.tgz", - "integrity": "sha1-O13/RmT6W41RlrmInj9hwforgNk=", - "dev": true, - "requires": { - "istanbul-api": "^1.3.1", - "minimatch": "^3.0.4" - } - }, - "karma-coveralls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/karma-coveralls/-/karma-coveralls-1.1.2.tgz", - "integrity": "sha1-b5YO5zh5Owh7qZKEqFTva+TTKuA=", - "dev": true, - "requires": { - "coveralls": "~2.11.2", - "glob": "~5.0.0" - } - }, - "karma-firefox-launcher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/karma-firefox-launcher/-/karma-firefox-launcher-1.0.1.tgz", - "integrity": "sha1-zlj0fCATqIFW1VpdYTN8CZz1u1E=", - "dev": true - }, - "karma-ie-launcher": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/karma-ie-launcher/-/karma-ie-launcher-1.0.0.tgz", - "integrity": "sha1-SXmGhCxJAZA0bNifVJTKmDDG1Zw=", - "dev": true, - "requires": { - "lodash": "^4.6.1" - }, - "dependencies": { - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "karma-mocha": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/karma-mocha/-/karma-mocha-1.1.1.tgz", - "integrity": "sha1-As5ZtO6AwzZfCHZYYfEUrdhZGEs=", - "dev": true - }, - "karma-mocha-reporter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/karma-mocha-reporter/-/karma-mocha-reporter-2.1.0.tgz", - "integrity": "sha1-ikvuSJTDqI7GaeZA/uBSJT4D4Bs=", - "dev": true, - "requires": { - "chalk": "1.1.3" - } - }, - "karma-phantomjs-launcher": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/karma-phantomjs-launcher/-/karma-phantomjs-launcher-1.0.4.tgz", - "integrity": "sha1-0jyjSAG9qYY60xjju0vUBisTrNI=", - "dev": true, - "requires": { - "lodash": "^4.0.1", - "phantomjs-prebuilt": "^2.1.7" - }, - "dependencies": { - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "karma-safari-launcher": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/karma-safari-launcher/-/karma-safari-launcher-1.0.0.tgz", - "integrity": "sha1-lpgqLMR9BmquccVTursoMZEVos4=", - "dev": true - }, - "karma-sauce-launcher": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/karma-sauce-launcher/-/karma-sauce-launcher-1.0.0.tgz", - "integrity": "sha1-VpvzVvfBQ6M3u6Xcv1eH3g2aZAw=", - "dev": true, - "requires": { - "q": "^1.4.1", - "sauce-connect-launcher": "^0.13.0", - "saucelabs": "^1.0.1", - "wd": "^0.3.4" - } - }, - "karma-sourcemap-loader": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/karma-sourcemap-loader/-/karma-sourcemap-loader-0.3.7.tgz", - "integrity": "sha1-kTIsd/jxPUb+0GKwQuEAnUxFBdg=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - } - } - }, - "karma-webpack": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/karma-webpack/-/karma-webpack-2.0.13.tgz", - "integrity": "sha512-2cyII34jfrAabbI2+4Rk4j95Nazl98FvZQhgSiqKUDarT317rxfv/EdzZ60CyATN4PQxJdO5ucR5bOOXkEVrXw==", - "dev": true, - "requires": { - "async": "^2.0.0", - "babel-runtime": "^6.0.0", - "loader-utils": "^1.0.0", - "lodash": "^4.0.0", - "source-map": "^0.5.6", - "webpack-dev-middleware": "^1.12.0" - }, - "dependencies": { - "async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", - "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", - "dev": true, - "requires": { - "lodash": "^4.17.11" - } - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - } - }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "kew": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/kew/-/kew-0.7.0.tgz", - "integrity": "sha1-edk9LTM2PW/dKXCzNdkUGtWR15s=", - "dev": true - }, - "keygrip": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.0.3.tgz", - "integrity": "sha512-/PpesirAIfaklxUzp4Yb7xBper9MwP6hNRA6BGGUFCgbJ+BM5CKBtsoxinNXkLHAr+GXS1/lSlF2rP7cv5Fl+g==", - "dev": true - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true - }, - "klaw": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", - "integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.9" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true, - "optional": true - } - } - }, - "koa": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/koa/-/koa-1.6.2.tgz", - "integrity": "sha512-oeH9b78oNQeDzmgXSmjzHIw7eT9584Lhp9h+r7zcXnzNf+2vJf021GEJsIQ5owj8Wu2x5pArrYjURnp37rv+5Q==", - "dev": true, - "requires": { - "accepts": "^1.2.2", - "co": "^4.4.0", - "composition": "^2.1.1", - "content-disposition": "~0.5.0", - "content-type": "^1.0.0", - "cookies": "~0.7.0", - "debug": "^2.6.9", - "delegates": "^1.0.0", - "destroy": "^1.0.3", - "error-inject": "~1.0.0", - "escape-html": "~1.0.1", - "fresh": "^0.5.2", - "http-assert": "^1.1.0", - "http-errors": "^1.2.8", - "koa-compose": "^2.3.0", - "koa-is-json": "^1.0.0", - "mime-types": "^2.0.7", - "on-finished": "^2.1.0", - "only": "0.0.2", - "parseurl": "^1.3.0", - "statuses": "^1.2.0", - "type-is": "^1.5.5", - "vary": "^1.0.0" - }, - "dependencies": { - "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", - "dev": true, - "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" - } - }, - "negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", - "dev": true - } - } - }, - "koa-body": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/koa-body/-/koa-body-1.7.0.tgz", - "integrity": "sha512-4H2dutkiH9RjOoM1K61EUJ2q3uXSAcPPxm6RCfHyedi/G+v/swlVRJx+wGOMxI8MlISbwiVR5Jds8h7cb3bJJw==", - "dev": true, - "requires": { - "co-body": "^5.1.1", - "extend": "1.3.0", - "formidable": "1.0.17" - }, - "dependencies": { - "extend": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extend/-/extend-1.3.0.tgz", - "integrity": "sha1-0VFvsP9WJNLr+RI+odrFoZlABPg=", - "dev": true - } - } - }, - "koa-compose": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/koa-compose/-/koa-compose-2.5.1.tgz", - "integrity": "sha1-cmz7F2lN5cufvwPArfFyMD+D8VY=", - "dev": true - }, - "koa-favicon": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/koa-favicon/-/koa-favicon-1.2.1.tgz", - "integrity": "sha1-wAGm222m1xJyuT+1uSTDkhlIIdA=", - "dev": true, - "requires": { - "mz": "^2.0.0" - } - }, - "koa-is-json": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/koa-is-json/-/koa-is-json-1.0.0.tgz", - "integrity": "sha1-JzwH7c3Ljfaiwat9We52SRRR7BQ=", - "dev": true - }, - "koa-logger": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/koa-logger/-/koa-logger-1.3.1.tgz", - "integrity": "sha1-rT9fIZOzM0Mo8+uZphj0sEvui9U=", - "dev": true, - "requires": { - "bytes": "1", - "chalk": "^1.1.3", - "humanize-number": "0.0.2", - "passthrough-counter": "^1.0.0" - }, - "dependencies": { - "bytes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz", - "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=", - "dev": true - } - } - }, - "koa-request": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/koa-request/-/koa-request-1.0.0.tgz", - "integrity": "sha1-GTQzUkedLLll16/wqAKxoG1AjhY=", - "dev": true, - "requires": { - "request": "*" - } - }, - "koa-router": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/koa-router/-/koa-router-3.8.0.tgz", - "integrity": "sha1-ZRQONj9/PWc4ozH/w4uMUGLFua8=", - "dev": true, - "requires": { - "debug": "^2.1.0", - "koa-compose": "^2.3.0", - "methods": "^1.0.1", - "path-to-regexp": "^1.0.0" - } - }, - "koa-send": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/koa-send/-/koa-send-3.3.0.tgz", - "integrity": "sha1-WkriRVZGgMbs9geeknX6UXOoYdw=", - "dev": true, - "requires": { - "co": "^4.6.0", - "debug": "^2.6.0", - "mz": "^2.3.1", - "resolve-path": "^1.3.1" - } - }, - "koa-serve-index": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/koa-serve-index/-/koa-serve-index-1.1.1.tgz", - "integrity": "sha1-zMbO4egVDzsn+pZA2RjR02+BUpI=", - "dev": true, - "requires": { - "accepts": "~1.1.0", - "batch": "0.5.1", - "debug": "~2.0.0", - "parseurl": "~1.3.0" - }, - "dependencies": { - "debug": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.0.0.tgz", - "integrity": "sha1-ib2d9nMrUSVrxnBTQrugLtEhMe8=", - "dev": true, - "requires": { - "ms": "0.6.2" - } - }, - "ms": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.6.2.tgz", - "integrity": "sha1-2JwhJMb9wTU9Zai3e/GqxLGTcIw=", - "dev": true - } - } - }, - "koa-static": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/koa-static/-/koa-static-2.1.0.tgz", - "integrity": "sha1-z+KS6n2ryWqnI+SkiGFcxlrnQWk=", - "dev": true, - "requires": { - "debug": "^2.6.0", - "koa-send": "^3.3.0" - } - }, - "koa-webpack-dev-middleware": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/koa-webpack-dev-middleware/-/koa-webpack-dev-middleware-1.4.6.tgz", - "integrity": "sha1-bsINNkjDyAte2wtyGmg49mofxHo=", - "dev": true, - "requires": { - "webpack-dev-middleware": "^1.10.0" - } - }, - "latest-version": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", - "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", - "dev": true, - "requires": { - "package-json": "^4.0.0" - } - }, - "lazy-cache": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", - "dev": true - }, - "lazystream": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-0.1.0.tgz", - "integrity": "sha1-GyXWPHcqTCDwpe0KnXf0hLbhaSA=", - "dev": true, - "requires": { - "readable-stream": "~1.0.2" - }, - "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.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "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 - } - } - }, - "lcid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", - "dev": true, - "requires": { - "invert-kv": "^1.0.0" - } - }, - "lcov-parse": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", - "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", - "dev": true - }, - "less": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/less/-/less-2.7.3.tgz", - "integrity": "sha512-KPdIJKWcEAb02TuJtaLrhue0krtRLoRoo7x6BNJIBelO00t/CCdJQUnHW5V34OnHMWzIktSalJxRO+FvytQlCQ==", - "dev": true, - "requires": { - "errno": "^0.1.1", - "graceful-fs": "^4.1.2", - "image-size": "~0.5.0", - "mime": "^1.2.11", - "mkdirp": "^0.5.0", - "promise": "^7.1.1", - "request": "2.81.0", - "source-map": "^0.5.3" - }, - "dependencies": { - "ajv": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", - "dev": true, - "optional": true, - "requires": { - "co": "^4.6.0", - "json-stable-stringify": "^1.0.1" - } - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true, - "optional": true - }, - "har-schema": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz", - "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=", - "dev": true, - "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=", - "dev": true, - "optional": true, - "requires": { - "ajv": "^4.9.1", - "har-schema": "^1.0.5" - } - }, - "performance-now": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", - "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=", - "dev": true, - "optional": true - }, - "qs": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz", - "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=", - "dev": true, - "optional": true - }, - "request": { - "version": "2.81.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.81.0.tgz", - "integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=", - "dev": true, - "optional": true, - "requires": { - "aws-sign2": "~0.6.0", - "aws4": "^1.2.1", - "caseless": "~0.12.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.0", - "forever-agent": "~0.6.1", - "form-data": "~2.1.1", - "har-validator": "~4.2.1", - "hawk": "~3.1.3", - "http-signature": "~1.1.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.7", - "oauth-sign": "~0.8.1", - "performance-now": "^0.2.0", - "qs": "~6.4.0", - "safe-buffer": "^5.0.1", - "stringstream": "~0.0.4", - "tough-cookie": "~2.3.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.0.0" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.0.1" - } - } - } - }, - "less-loader": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-2.2.3.tgz", - "integrity": "sha1-ttj4E5yEk98J2ZKpOgBzSwj4RSg=", - "dev": true, - "requires": { - "loader-utils": "^0.2.5" - } - }, - "leven": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/leven/-/leven-1.0.2.tgz", - "integrity": "sha1-kUS27ryl8dBoAWnxpncNzqYLdcM=", - "dev": true - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "liftoff": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz", - "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=", - "dev": true, - "requires": { - "extend": "^3.0.0", - "findup-sync": "^2.0.0", - "fined": "^1.0.1", - "flagged-respawn": "^1.0.0", - "is-plain-object": "^2.0.4", - "object.map": "^1.0.0", - "rechoir": "^0.6.2", - "resolve": "^1.1.7" - } - }, - "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=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - } - } - }, - "loader-runner": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", - "dev": true - }, - "loader-utils": { - "version": "0.2.17", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", - "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", - "dev": true, - "requires": { - "big.js": "^3.1.3", - "emojis-list": "^2.0.0", - "json5": "^0.5.0", - "object-assign": "^4.0.1" - } - }, - "lodash": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-1.0.2.tgz", - "integrity": "sha1-j1dWDIO1n8JwvT1WG2kAQ0MOJVE=", - "dev": true - }, - "lodash._arraycopy": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._arraycopy/-/lodash._arraycopy-3.0.0.tgz", - "integrity": "sha1-due3wfH7klRzdIeKVi7Qaj5Q9uE=", - "dev": true - }, - "lodash._arrayeach": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._arrayeach/-/lodash._arrayeach-3.0.0.tgz", - "integrity": "sha1-urFWsqkNPxu9XGU0AzSeXlkz754=", - "dev": true - }, - "lodash._arraymap": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._arraymap/-/lodash._arraymap-3.0.0.tgz", - "integrity": "sha1-Go/Q9MDfS2HeoHbXF83Jfwo8PmY=", - "dev": true - }, - "lodash._baseassign": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz", - "integrity": "sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4=", - "dev": true, - "requires": { - "lodash._basecopy": "^3.0.0", - "lodash.keys": "^3.0.0" - } - }, - "lodash._baseclone": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/lodash._baseclone/-/lodash._baseclone-3.3.0.tgz", - "integrity": "sha1-MDUZv2OT/n5C802LYw73eU41Qrc=", - "dev": true, - "requires": { - "lodash._arraycopy": "^3.0.0", - "lodash._arrayeach": "^3.0.0", - "lodash._baseassign": "^3.0.0", - "lodash._basefor": "^3.0.0", - "lodash.isarray": "^3.0.0", - "lodash.keys": "^3.0.0" - } - }, - "lodash._basecopy": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", - "integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY=", - "dev": true - }, - "lodash._basedifference": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash._basedifference/-/lodash._basedifference-3.0.3.tgz", - "integrity": "sha1-8sIEKWwqeOArOJCBtu3KyTPPYpw=", - "dev": true, - "requires": { - "lodash._baseindexof": "^3.0.0", - "lodash._cacheindexof": "^3.0.0", - "lodash._createcache": "^3.0.0" - } - }, - "lodash._baseflatten": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/lodash._baseflatten/-/lodash._baseflatten-3.1.4.tgz", - "integrity": "sha1-B3D/gBMa9uNPO1EXlqe6UhTmX/c=", - "dev": true, - "requires": { - "lodash.isarguments": "^3.0.0", - "lodash.isarray": "^3.0.0" - } - }, - "lodash._basefor": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash._basefor/-/lodash._basefor-3.0.3.tgz", - "integrity": "sha1-dVC06SGO8J+tJDQ7YSAhx5tMIMI=", - "dev": true - }, - "lodash._baseindexof": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/lodash._baseindexof/-/lodash._baseindexof-3.1.0.tgz", - "integrity": "sha1-/lK1OhxnYeQmGNZU5KJXie1hgiw=", - "dev": true - }, - "lodash._basetostring": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz", - "integrity": "sha1-0YYdh3+CSlL2aYMtyvPuFVZqB9U=", - "dev": true - }, - "lodash._basevalues": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz", - "integrity": "sha1-W3dXYoAr3j0yl1A+JjAIIP32Ybc=", - "dev": true - }, - "lodash._bindcallback": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz", - "integrity": "sha1-5THCdkTPi1epnhftlbNcdIeJOS4=", - "dev": true - }, - "lodash._cacheindexof": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/lodash._cacheindexof/-/lodash._cacheindexof-3.0.2.tgz", - "integrity": "sha1-PcaayCSY0u5ePOVgkbr9Ktx73pI=", - "dev": true - }, - "lodash._createassigner": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz", - "integrity": "sha1-g4pbri/aymOsIt7o4Z+k5taXCxE=", - "dev": true, - "requires": { - "lodash._bindcallback": "^3.0.0", - "lodash._isiterateecall": "^3.0.0", - "lodash.restparam": "^3.0.0" - } - }, - "lodash._createcache": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/lodash._createcache/-/lodash._createcache-3.1.2.tgz", - "integrity": "sha1-VtagZAF2JeeevKa4AY4XRAvc8JM=", - "dev": true, - "requires": { - "lodash._getnative": "^3.0.0" - } - }, - "lodash._getnative": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", - "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=", - "dev": true - }, - "lodash._isiterateecall": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", - "integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw=", - "dev": true - }, - "lodash._pickbyarray": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/lodash._pickbyarray/-/lodash._pickbyarray-3.0.2.tgz", - "integrity": "sha1-H4mNlgfrVgsOFnOEt3x8bRCKpMU=", - "dev": true - }, - "lodash._pickbycallback": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._pickbycallback/-/lodash._pickbycallback-3.0.0.tgz", - "integrity": "sha1-/2G5oBens699MObFPeKK+hm4dQo=", - "dev": true, - "requires": { - "lodash._basefor": "^3.0.0", - "lodash.keysin": "^3.0.0" - } - }, - "lodash._reescape": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz", - "integrity": "sha1-Kx1vXf4HyKNVdT5fJ/rH8c3hYWo=", - "dev": true - }, - "lodash._reevaluate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz", - "integrity": "sha1-WLx0xAZklTrgsSTYBpltrKQx4u0=", - "dev": true - }, - "lodash._reinterpolate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=", - "dev": true - }, - "lodash._root": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz", - "integrity": "sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI=", - "dev": true - }, - "lodash.assign": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-3.2.0.tgz", - "integrity": "sha1-POnwI0tLIiPilrj6CsH+6OvKZPo=", - "dev": true, - "requires": { - "lodash._baseassign": "^3.0.0", - "lodash._createassigner": "^3.0.0", - "lodash.keys": "^3.0.0" - } - }, - "lodash.assignin": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", - "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", - "dev": true - }, - "lodash.bind": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", - "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=", - "dev": true - }, - "lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=", - "dev": true - }, - "lodash.clone": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", - "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=", - "dev": true - }, - "lodash.clonedeep": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-3.0.2.tgz", - "integrity": "sha1-oKHkDYKl6on/WxR7hETtY9koJ9s=", - "dev": true, - "requires": { - "lodash._baseclone": "^3.0.0", - "lodash._bindcallback": "^3.0.0" - } - }, - "lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=", - "dev": true - }, - "lodash.escape": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz", - "integrity": "sha1-mV7g3BjBtIzJLv+ucaEKq1tIdpg=", - "dev": true, - "requires": { - "lodash._root": "^3.0.0" - } - }, - "lodash.filter": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", - "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=", - "dev": true - }, - "lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", - "dev": true - }, - "lodash.foreach": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", - "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=", - "dev": true - }, - "lodash.isarguments": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", - "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=", - "dev": true - }, - "lodash.isarray": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", - "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=", - "dev": true - }, - "lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", - "dev": true - }, - "lodash.isplainobject": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-3.2.0.tgz", - "integrity": "sha1-moI4rhayAEMpYM1zRlEtASP79MU=", - "dev": true, - "requires": { - "lodash._basefor": "^3.0.0", - "lodash.isarguments": "^3.0.0", - "lodash.keysin": "^3.0.0" - } - }, - "lodash.istypedarray": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/lodash.istypedarray/-/lodash.istypedarray-3.0.6.tgz", - "integrity": "sha1-yaR3SYYHUB2OhJTSg7h8OSgc72I=", - "dev": true - }, - "lodash.keys": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", - "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=", - "dev": true, - "requires": { - "lodash._getnative": "^3.0.0", - "lodash.isarguments": "^3.0.0", - "lodash.isarray": "^3.0.0" - } - }, - "lodash.keysin": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/lodash.keysin/-/lodash.keysin-3.0.8.tgz", - "integrity": "sha1-IsRJPrvtsUJ5YqVLRFssinZ/tH8=", - "dev": true, - "requires": { - "lodash.isarguments": "^3.0.0", - "lodash.isarray": "^3.0.0" - } - }, - "lodash.map": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", - "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=", - "dev": true - }, - "lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", - "dev": true - }, - "lodash.merge": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-3.3.2.tgz", - "integrity": "sha1-DZDZPtY3sYeEN7s+IWASYNev6ZQ=", - "dev": true, - "requires": { - "lodash._arraycopy": "^3.0.0", - "lodash._arrayeach": "^3.0.0", - "lodash._createassigner": "^3.0.0", - "lodash._getnative": "^3.0.0", - "lodash.isarguments": "^3.0.0", - "lodash.isarray": "^3.0.0", - "lodash.isplainobject": "^3.0.0", - "lodash.istypedarray": "^3.0.0", - "lodash.keys": "^3.0.0", - "lodash.keysin": "^3.0.0", - "lodash.toplainobject": "^3.0.0" - } - }, - "lodash.omit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/lodash.omit/-/lodash.omit-3.1.0.tgz", - "integrity": "sha1-iX/jguZBPZrJfGH3jtHgV6AK+fM=", - "dev": true, - "requires": { - "lodash._arraymap": "^3.0.0", - "lodash._basedifference": "^3.0.0", - "lodash._baseflatten": "^3.0.0", - "lodash._bindcallback": "^3.0.0", - "lodash._pickbyarray": "^3.0.0", - "lodash._pickbycallback": "^3.0.0", - "lodash.keysin": "^3.0.0", - "lodash.restparam": "^3.0.0" - } - }, - "lodash.partialright": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/lodash.partialright/-/lodash.partialright-4.2.1.tgz", - "integrity": "sha1-ATDYDoM2MmTUAHTzKbij56ihzEs=", - "dev": true - }, - "lodash.pick": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-3.1.0.tgz", - "integrity": "sha1-8lKoVbIEa2G805BLJvdr0u/GVVA=", - "dev": true, - "requires": { - "lodash._baseflatten": "^3.0.0", - "lodash._bindcallback": "^3.0.0", - "lodash._pickbyarray": "^3.0.0", - "lodash._pickbycallback": "^3.0.0", - "lodash.restparam": "^3.0.0" - } - }, - "lodash.reduce": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", - "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=", - "dev": true - }, - "lodash.reject": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", - "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=", - "dev": true - }, - "lodash.restparam": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", - "integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU=", - "dev": true - }, - "lodash.some": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", - "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=", - "dev": true - }, - "lodash.template": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz", - "integrity": "sha1-+M3sxhaaJVvpCYrosMU9N4kx0U8=", - "dev": true, - "requires": { - "lodash._basecopy": "^3.0.0", - "lodash._basetostring": "^3.0.0", - "lodash._basevalues": "^3.0.0", - "lodash._isiterateecall": "^3.0.0", - "lodash._reinterpolate": "^3.0.0", - "lodash.escape": "^3.0.0", - "lodash.keys": "^3.0.0", - "lodash.restparam": "^3.0.0", - "lodash.templatesettings": "^3.0.0" - } - }, - "lodash.templatesettings": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz", - "integrity": "sha1-+zB4RHU7Zrnxr6VOJix0UwfbqOU=", - "dev": true, - "requires": { - "lodash._reinterpolate": "^3.0.0", - "lodash.escape": "^3.0.0" - } - }, - "lodash.toplainobject": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash.toplainobject/-/lodash.toplainobject-3.0.0.tgz", - "integrity": "sha1-KHkK2ULSk9eKpmOgfs9/UsoEGY0=", - "dev": true, - "requires": { - "lodash._basecopy": "^3.0.0", - "lodash.keysin": "^3.0.0" - } - }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", - "dev": true - }, - "log-driver": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.5.tgz", - "integrity": "sha1-euTsJXMC/XkNVXyxDJcQDYV7AFY=", - "dev": true - }, - "log4js": { - "version": "0.6.38", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-0.6.38.tgz", - "integrity": "sha1-LElBFmldb7JUgJQ9P8hy5mKlIv0=", - "dev": true, - "requires": { - "readable-stream": "~1.0.2", - "semver": "~4.3.3" - }, - "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.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "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 - } - } - }, - "longest": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", - "dev": true - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true - }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, - "make-iterator": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", - "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true - }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "dev": true, - "requires": { - "object-visit": "^1.0.0" - } - }, - "marked": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", - "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==", - "dev": true - }, - "match-require": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/match-require/-/match-require-2.1.0.tgz", - "integrity": "sha1-9n1ixMsdcD9Aj7Y7Vbmug/sl4sw=", - "dev": true, - "requires": { - "uuid": "^3.0.0" - } - }, - "math-expression-evaluator": { - "version": "1.2.17", - "resolved": "https://registry.npmjs.org/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz", - "integrity": "sha1-3oGf282E3M2PrlnGrreWFbnSZqw=", - "dev": true - }, - "math-random": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", - "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==", - "dev": true - }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "dev": true - }, - "memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, - "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - } - }, - "merge-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", - "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", - "dev": true, - "requires": { - "readable-stream": "^2.0.1" - } - }, - "merge2": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.0.3.tgz", - "integrity": "sha1-+kT4siYmFaty8ICKQB1HinDjlNs=", - "dev": true - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", - "dev": true - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true - }, - "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", - "dev": true - }, - "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", - "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", - "dev": true, - "requires": { - "mime-db": "1.40.0" - } - }, - "mimeparse": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/mimeparse/-/mimeparse-0.1.4.tgz", - "integrity": "sha1-2vsCdSNw/SJgk64xUsJxrwGsJUo=", - "dev": true - }, - "mini-store": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mini-store/-/mini-store-2.0.0.tgz", - "integrity": "sha512-EG0CuwpQmX+XL4QVS0kxNwHW5ftSbhygu1qxQH0pipugjnPkbvkalCdQbEihMwtQY6d3MTN+MS0q+aurs+RfLQ==", - "dev": true, - "requires": { - "hoist-non-react-statics": "^2.3.1", - "prop-types": "^15.6.0", - "react-lifecycles-compat": "^3.0.4", - "shallowequal": "^1.0.2" - }, - "dependencies": { - "shallowequal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", - "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==", - "dev": true - } - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "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=", - "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.7" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "dev": true, - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "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==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "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 - } - } - }, - "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": { - "commander": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.3.0.tgz", - "integrity": "sha1-/UMOiJgy7DU7ms0d4hfBHLPu+HM=", - "dev": true - }, - "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" - } - }, - "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 - }, - "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", - "minimatch": "0.3" - } - }, - "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 - }, - "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", - "sigmund": "~1.0.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 - } - } - }, - "modulex-util": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/modulex-util/-/modulex-util-1.1.10.tgz", - "integrity": "sha1-HsAiwwvgU1XVlSMBpKsUp5HYfRI=", - "dev": true - }, - "mout": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/mout/-/mout-0.11.1.tgz", - "integrity": "sha1-ujYR318OWx/7/QEWa48C0fX6K5k=", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "multipipe": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/multipipe/-/multipipe-0.1.2.tgz", - "integrity": "sha1-Ko8t33Du1WTf8tV/HhoTfZ8FB4s=", - "dev": true, - "requires": { - "duplexer2": "0.0.2" - } - }, - "mutationobserver-shim": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/mutationobserver-shim/-/mutationobserver-shim-0.3.3.tgz", - "integrity": "sha512-gciOLNN8Vsf7YzcqRjKzlAJ6y7e+B86u7i3KXes0xfxx/nfLmozlW1Vn+Sc9x3tPIePFgc1AeIFhtRgkqTjzDQ==", - "dev": true - }, - "mute-stream": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz", - "integrity": "sha1-j7+rsKmKJT0xhDMfno3rc3L6xsA=", - "dev": true - }, - "mz": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", - "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", - "dev": true, - "requires": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } - }, - "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", - "dev": true, - "optional": true - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "natives": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/natives/-/natives-1.1.6.tgz", - "integrity": "sha512-6+TDFewD4yxY14ptjKaS63GVdtKiES1pTPyxn9Jb0rBqPMZ7VcCiooEhPNsr+mqHtMGxa/5c/HhcC4uPEUw/nA==", - "dev": true - }, - "negotiator": { - "version": "0.4.9", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.4.9.tgz", - "integrity": "sha1-kuRrbbU8fkIe1koryU8IvnYw3z8=", - "dev": true - }, - "neo-async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", - "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", - "dev": true - }, - "next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", - "dev": true - }, - "node-int64": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.3.3.tgz", - "integrity": "sha1-LW5rLs5d6FiLQ9iNG8QbJs0fqE0=", - "dev": true - }, - "node-libs-browser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.0.tgz", - "integrity": "sha512-5MQunG/oyOaBdttrL40dA7bUfPORLRWMUJLQtMg7nluxUvk5XwnLdL9twQHFAjRx/y7mIMkLKT9++qPbbk6BZA==", - "dev": true, - "requires": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.0", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.11.0", - "vm-browserify": "0.0.4" - } - }, - "nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "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=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - }, - "normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", - "dev": true - }, - "normalize-url": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz", - "integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=", - "dev": true, - "requires": { - "object-assign": "^4.0.1", - "prepend-http": "^1.0.0", - "query-string": "^4.1.0", - "sort-keys": "^1.0.0" - } - }, - "normalize.css": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize.css/-/normalize.css-3.0.3.tgz", - "integrity": "sha1-rMACYuI1osqpE2Oi5eO/pPitBcY=", - "dev": true - }, - "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=", - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", - "dev": true, - "requires": { - "boolbase": "~1.0.0" - } - }, - "null-check": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/null-check/-/null-check-1.0.0.tgz", - "integrity": "sha1-l33/1xdgErnsMNKjnbXPcqBDnt0=", - "dev": true - }, - "num2fraction": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", - "dev": true - }, - "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=", - "dev": true - }, - "oauth-sign": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "object-component": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", - "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=", - "dev": true - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "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=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dev": true, - "requires": { - "isobject": "^3.0.0" - } - }, - "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - } - }, - "object.defaults": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", - "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", - "dev": true, - "requires": { - "array-each": "^1.0.1", - "array-slice": "^1.0.0", - "for-own": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "object.map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", - "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", - "dev": true, - "requires": { - "for-own": "^1.0.0", - "make-iterator": "^1.0.0" - } - }, - "object.omit": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", - "dev": true, - "requires": { - "for-own": "^0.1.4", - "is-extendable": "^0.1.1" - }, - "dependencies": { - "for-own": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", - "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - } - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", - "dev": true - }, - "only": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/only/-/only-0.0.2.tgz", - "integrity": "sha1-Kv3oTQPlC5qO3EROMGEKcCle37Q=", - "dev": true - }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - }, - "dependencies": { - "minimist": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", - "dev": true - } - } - }, - "optionator": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", - "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.4", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "wordwrap": "~1.0.0" - }, - "dependencies": { - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", - "dev": true - } - } - }, - "options": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz", - "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=", - "dev": true - }, - "orchestrator": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/orchestrator/-/orchestrator-0.3.8.tgz", - "integrity": "sha1-FOfp4nZPcxX7rBhOUGx6pt+UrX4=", - "dev": true, - "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=", - "dev": true - }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true - }, - "os-locale": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", - "dev": true, - "requires": { - "lcid": "^1.0.0" - } - }, - "os-shim": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", - "integrity": "sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=", - "dev": true - }, - "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=", - "dev": true - }, - "output-file-sync": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz", - "integrity": "sha1-0KM+7+YaIF+suQCS6CZZjVJFznY=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.4", - "mkdirp": "^0.5.1", - "object-assign": "^4.1.0" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - } - } - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true - }, - "package-json": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", - "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", - "dev": true, - "requires": { - "got": "^6.7.1", - "registry-auth-token": "^3.0.1", - "registry-url": "^3.0.3", - "semver": "^5.1.0" - }, - "dependencies": { - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, - "pako": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", - "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==", - "dev": true - }, - "parse-asn1": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.4.tgz", - "integrity": "sha512-Qs5duJcuvNExRfFZ99HDD3z4mAi3r9Wl/FOjEOijlxwCZs7E7mW2vjTpgQ4J8LpTF8x5v+1Vn5UQFejmWT11aw==", - "dev": true, - "requires": { - "asn1.js": "^4.0.0", - "browserify-aes": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "parse-filepath": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", - "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", - "dev": true, - "requires": { - "is-absolute": "^1.0.0", - "map-cache": "^0.2.0", - "path-root": "^0.1.1" - } - }, - "parse-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", - "dev": true, - "requires": { - "glob-base": "^0.3.0", - "is-dotfile": "^1.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.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=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "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=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "parse-node-version": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", - "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", - "dev": true - }, - "parse-passwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", - "dev": true - }, - "parsejson": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/parsejson/-/parsejson-0.0.1.tgz", - "integrity": "sha1-mxDGwNglq1ieaFFTgm3go7oni8w=", - "dev": true, - "requires": { - "better-assert": "~1.0.0" - } - }, - "parseqs": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.2.tgz", - "integrity": "sha1-nf5wss3aw4i95PNbHyQPpYrb5sc=", - "dev": true, - "requires": { - "better-assert": "~1.0.0" - } - }, - "parseuri": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.4.tgz", - "integrity": "sha1-gGWCo5iH4eoY3V4v4OAZAiaOk1A=", - "dev": true, - "requires": { - "better-assert": "~1.0.0" - } - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true - }, - "passthrough-counter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/passthrough-counter/-/passthrough-counter-1.0.0.tgz", - "integrity": "sha1-GWfZ5m2lcrXAI8eH2xEqOHqxZvo=", - "dev": true - }, - "path-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", - "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=", - "dev": true - }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "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=", - "dev": true - }, - "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=", - "dev": true - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true - }, - "path-root": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", - "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", - "dev": true, - "requires": { - "path-root-regex": "^0.1.0" - } - }, - "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=", - "dev": true - }, - "path-to-regexp": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", - "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", - "dev": true, - "requires": { - "isarray": "0.0.1" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - } - } - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - } - } - }, - "pbkdf2": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", - "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", - "dev": true, - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "phantomjs-prebuilt": { - "version": "2.1.16", - "resolved": "https://registry.npmjs.org/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.16.tgz", - "integrity": "sha1-79ISpKOWbTZHaE6ouniFSb4q7+8=", - "dev": true, - "requires": { - "es6-promise": "^4.0.3", - "extract-zip": "^1.6.5", - "fs-extra": "^1.0.0", - "hasha": "^2.2.0", - "kew": "^0.7.0", - "progress": "^1.1.8", - "request": "^2.81.0", - "request-progress": "^2.0.1", - "which": "^1.2.10" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-extra": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz", - "integrity": "sha1-zTzl9+fLYUWIP8rjGR6Yd/hYeVA=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", - "dev": true, - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true - }, - "request": { - "version": "2.88.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.0", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", - "dev": true, - "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - } - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "pkg-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", - "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", - "dev": true, - "requires": { - "find-up": "^1.0.0" - } - }, - "plugin-error": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", - "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", - "dev": true, - "requires": { - "ansi-colors": "^1.0.1", - "arr-diff": "^4.0.0", - "arr-union": "^3.1.0", - "extend-shallow": "^3.0.2" - } - }, - "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=", - "dev": true - }, - "postcss": { - "version": "5.2.18", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", - "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "js-base64": "^2.1.9", - "source-map": "^0.5.6", - "supports-color": "^3.2.3" - }, - "dependencies": { - "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" - } - } - } - }, - "postcss-calc": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-5.3.1.tgz", - "integrity": "sha1-d7rnypKK2FcW4v2kLyYb98HWW14=", - "dev": true, - "requires": { - "postcss": "^5.0.2", - "postcss-message-helpers": "^2.0.0", - "reduce-css-calc": "^1.2.6" - } - }, - "postcss-colormin": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-2.2.2.tgz", - "integrity": "sha1-ZjFBfV8OkJo9fsJrJMio0eT5bks=", - "dev": true, - "requires": { - "colormin": "^1.0.5", - "postcss": "^5.0.13", - "postcss-value-parser": "^3.2.3" - } - }, - "postcss-convert-values": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz", - "integrity": "sha1-u9hZPFwf0uPRwyK7kl3K6Nrk1i0=", - "dev": true, - "requires": { - "postcss": "^5.0.11", - "postcss-value-parser": "^3.1.2" - } - }, - "postcss-discard-comments": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz", - "integrity": "sha1-vv6J+v1bPazlzM5Rt2uBUUvgDj0=", - "dev": true, - "requires": { - "postcss": "^5.0.14" - } - }, - "postcss-discard-duplicates": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz", - "integrity": "sha1-uavye4isGIFYpesSq8riAmO5GTI=", - "dev": true, - "requires": { - "postcss": "^5.0.4" - } - }, - "postcss-discard-empty": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz", - "integrity": "sha1-0rS9nVztXr2Nyt52QMfXzX9PkrU=", - "dev": true, - "requires": { - "postcss": "^5.0.14" - } - }, - "postcss-discard-overridden": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz", - "integrity": "sha1-ix6vVU9ob7KIzYdMVWZ7CqNmjVg=", - "dev": true, - "requires": { - "postcss": "^5.0.16" - } - }, - "postcss-discard-unused": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz", - "integrity": "sha1-vOMLLMWR/8Y0Mitfs0ZLbZNPRDM=", - "dev": true, - "requires": { - "postcss": "^5.0.14", - "uniqs": "^2.0.0" - } - }, - "postcss-filter-plugins": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/postcss-filter-plugins/-/postcss-filter-plugins-2.0.3.tgz", - "integrity": "sha512-T53GVFsdinJhgwm7rg1BzbeBRomOg9y5MBVhGcsV0CxurUdVj1UlPdKtn7aqYA/c/QVkzKMjq2bSV5dKG5+AwQ==", - "dev": true, - "requires": { - "postcss": "^5.0.4" - } - }, - "postcss-load-config": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-1.2.0.tgz", - "integrity": "sha1-U56a/J3chiASHr+djDZz4M5Q0oo=", - "dev": true, - "requires": { - "cosmiconfig": "^2.1.0", - "object-assign": "^4.1.0", - "postcss-load-options": "^1.2.0", - "postcss-load-plugins": "^2.3.0" - } - }, - "postcss-load-options": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/postcss-load-options/-/postcss-load-options-1.2.0.tgz", - "integrity": "sha1-sJixVZ3awt8EvAuzdfmaXP4rbYw=", - "dev": true, - "requires": { - "cosmiconfig": "^2.1.0", - "object-assign": "^4.1.0" - } - }, - "postcss-load-plugins": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz", - "integrity": "sha1-dFdoEWWZrKLwCfrUJrABdQSdjZI=", - "dev": true, - "requires": { - "cosmiconfig": "^2.1.1", - "object-assign": "^4.1.0" - } - }, - "postcss-loader": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-1.3.3.tgz", - "integrity": "sha1-piHqH6KQYqg5cqRvVEhncTAZFus=", - "dev": true, - "requires": { - "loader-utils": "^1.0.2", - "object-assign": "^4.1.1", - "postcss": "^5.2.15", - "postcss-load-config": "^1.2.0" - }, - "dependencies": { - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - } - } - } - }, - "postcss-merge-idents": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz", - "integrity": "sha1-TFUwMTwI4dWzu/PSu8dH4njuonA=", - "dev": true, - "requires": { - "has": "^1.0.1", - "postcss": "^5.0.10", - "postcss-value-parser": "^3.1.1" - } - }, - "postcss-merge-longhand": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz", - "integrity": "sha1-I9kM0Sewp3mUkVMyc5A0oaTz1lg=", - "dev": true, - "requires": { - "postcss": "^5.0.4" - } - }, - "postcss-merge-rules": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz", - "integrity": "sha1-0d9d+qexrMO+VT8OnhDofGG19yE=", - "dev": true, - "requires": { - "browserslist": "^1.5.2", - "caniuse-api": "^1.5.2", - "postcss": "^5.0.4", - "postcss-selector-parser": "^2.2.2", - "vendors": "^1.0.0" - } - }, - "postcss-message-helpers": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz", - "integrity": "sha1-pPL0+rbk/gAvCu0ABHjN9S+bpg4=", - "dev": true - }, - "postcss-minify-font-values": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz", - "integrity": "sha1-S1jttWZB66fIR0qzUmyv17vey2k=", - "dev": true, - "requires": { - "object-assign": "^4.0.1", - "postcss": "^5.0.4", - "postcss-value-parser": "^3.0.2" - } - }, - "postcss-minify-gradients": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz", - "integrity": "sha1-Xb2hE3NwP4PPtKPqOIHY11/15uE=", - "dev": true, - "requires": { - "postcss": "^5.0.12", - "postcss-value-parser": "^3.3.0" - } - }, - "postcss-minify-params": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz", - "integrity": "sha1-rSzgcTc7lDs9kwo/pZo1jCjW8fM=", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.1", - "postcss": "^5.0.2", - "postcss-value-parser": "^3.0.2", - "uniqs": "^2.0.0" - } - }, - "postcss-minify-selectors": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz", - "integrity": "sha1-ssapjAByz5G5MtGkllCBFDEXNb8=", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.2", - "has": "^1.0.1", - "postcss": "^5.0.14", - "postcss-selector-parser": "^2.0.0" - } - }, - "postcss-modules-extract-imports": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.1.tgz", - "integrity": "sha512-6jt9XZwUhwmRUhb/CkyJY020PYaPJsCyt3UjbaWo6XEbH/94Hmv6MP7fG2C5NDU/BcHzyGYxNtHvM+LTf9HrYw==", - "dev": true, - "requires": { - "postcss": "^6.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "postcss": { - "version": "6.0.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", - "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.4.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-modules-local-by-default": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz", - "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=", - "dev": true, - "requires": { - "css-selector-tokenizer": "^0.7.0", - "postcss": "^6.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "postcss": { - "version": "6.0.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", - "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.4.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-modules-scope": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz", - "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=", - "dev": true, - "requires": { - "css-selector-tokenizer": "^0.7.0", - "postcss": "^6.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "postcss": { - "version": "6.0.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", - "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.4.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-modules-values": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz", - "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=", - "dev": true, - "requires": { - "icss-replace-symbols": "^1.1.0", - "postcss": "^6.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "postcss": { - "version": "6.0.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", - "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.4.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-charset": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz", - "integrity": "sha1-757nEhLX/nWceO0WL2HtYrXLk/E=", - "dev": true, - "requires": { - "postcss": "^5.0.5" - } - }, - "postcss-normalize-url": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz", - "integrity": "sha1-EI90s/L82viRov+j6kWSJ5/HgiI=", - "dev": true, - "requires": { - "is-absolute-url": "^2.0.0", - "normalize-url": "^1.4.0", - "postcss": "^5.0.14", - "postcss-value-parser": "^3.2.3" - } - }, - "postcss-ordered-values": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz", - "integrity": "sha1-7sbCpntsQSqNsgQud/6NpD+VwR0=", - "dev": true, - "requires": { - "postcss": "^5.0.4", - "postcss-value-parser": "^3.0.1" - } - }, - "postcss-reduce-idents": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz", - "integrity": "sha1-wsbSDMlYKE9qv75j92Cb9AkFmtM=", - "dev": true, - "requires": { - "postcss": "^5.0.4", - "postcss-value-parser": "^3.0.2" - } - }, - "postcss-reduce-initial": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz", - "integrity": "sha1-aPgGlfBF0IJjqHmtJA343WT2ROo=", - "dev": true, - "requires": { - "postcss": "^5.0.4" - } - }, - "postcss-reduce-transforms": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz", - "integrity": "sha1-/3b02CEkN7McKYpC0uFEQCV3GuE=", - "dev": true, - "requires": { - "has": "^1.0.1", - "postcss": "^5.0.8", - "postcss-value-parser": "^3.0.1" - } - }, - "postcss-selector-parser": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz", - "integrity": "sha1-+UN3iGBsPJrO4W/+jYsWKX8nu5A=", - "dev": true, - "requires": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - }, - "postcss-svgo": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-2.1.6.tgz", - "integrity": "sha1-tt8YqmE7Zm4TPwittSGcJoSsEI0=", - "dev": true, - "requires": { - "is-svg": "^2.0.0", - "postcss": "^5.0.14", - "postcss-value-parser": "^3.2.3", - "svgo": "^0.7.0" - } - }, - "postcss-unique-selectors": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz", - "integrity": "sha1-mB1X0p3csz57Hf4f1DuGSfkzyh0=", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.1", - "postcss": "^5.0.4", - "uniqs": "^2.0.0" - } - }, - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - }, - "postcss-zindex": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-2.2.0.tgz", - "integrity": "sha1-0hCd3AVbka9n/EyzsCWUZjnSryI=", - "dev": true, - "requires": { - "has": "^1.0.1", - "postcss": "^5.0.4", - "uniqs": "^2.0.0" - } - }, - "pre-commit": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/pre-commit/-/pre-commit-1.2.2.tgz", - "integrity": "sha1-287g7p3nI15X95xW186UZBpp7sY=", - "dev": true, - "requires": { - "cross-spawn": "^5.0.1", - "spawn-sync": "^1.0.15", - "which": "1.2.x" - } - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "dev": true - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "dev": true - }, - "preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", - "dev": true - }, - "pretty-hrtime": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", - "dev": true - }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", - "dev": true - }, - "progress": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", - "dev": true - }, - "progress-bar-webpack-plugin": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/progress-bar-webpack-plugin/-/progress-bar-webpack-plugin-1.12.1.tgz", - "integrity": "sha512-tVbPB5xBbqNwdH3mwcxzjL1r1Vrm/xGu93OsqVSAbCaXGoKFvfWIh0gpMDpn2kYsPVRSAIK0pBkP9Vfs+JJibQ==", - "dev": true, - "requires": { - "chalk": "^1.1.1", - "object.assign": "^4.0.1", - "progress": "^1.1.8" - } - }, - "promise": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "dev": true, - "optional": true, - "requires": { - "asap": "~2.0.3" - } - }, - "prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", - "requires": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, - "prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", - "dev": true - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, - "psl": { - "version": "1.1.31", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", - "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==", - "dev": true - }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - }, - "q": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", - "dev": true - }, - "q-io": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/q-io/-/q-io-1.11.6.tgz", - "integrity": "sha1-poUJduHo98W9D6Plg19eudlPoXM=", - "dev": true, - "requires": { - "collections": "^0.2.0", - "mime": "^1.2.11", - "mimeparse": "^0.1.4", - "q": "^1.0.1", - "qs": "^1.2.1", - "url2": "^0.0.0" - }, - "dependencies": { - "qs": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-1.2.2.tgz", - "integrity": "sha1-GbV/8k3CqZzh+L32r82ln472H4g=", - "dev": true - } - } - }, - "qjobs": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", - "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", - "dev": true - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "dev": true - }, - "query-string": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", - "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=", - "dev": true, - "requires": { - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" - } - }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true - }, - "raf": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", - "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", - "dev": true, - "requires": { - "performance-now": "^2.1.0" - } - }, - "randomatic": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", - "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", - "dev": true, - "requires": { - "is-number": "^4.0.0", - "kind-of": "^6.0.0", - "math-random": "^1.0.1" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true - } - } - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, - "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true - }, - "raw-body": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", - "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", - "dev": true, - "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "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=", - "dev": true - } - } - }, - "rc-align": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/rc-align/-/rc-align-2.4.5.tgz", - "integrity": "sha512-nv9wYUYdfyfK+qskThf4BQUSIadeI/dCsfaMZfNEoxm9HwOIioQ+LyqmMK6jWHAZQgOzMLaqawhuBXlF63vgjw==", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "dom-align": "^1.7.0", - "prop-types": "^15.5.8", - "rc-util": "^4.0.4" - } - }, - "rc-animate": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/rc-animate/-/rc-animate-2.9.2.tgz", - "integrity": "sha512-rkJjeJgfbDqVjVX1/QTRfS7PiCq3AnmeYo840cVcuC4pXq4k4yAQMsC2v5BPXXdawC04vnyO4/qHQdbx9ANaiw==", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.6", - "css-animation": "^1.3.2", - "prop-types": "15.x", - "raf": "^3.4.0", - "rc-util": "^4.8.0", - "react-lifecycles-compat": "^3.0.4" - } - }, - "rc-menu": { - "version": "7.4.23", - "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-7.4.23.tgz", - "integrity": "sha512-d0pUMN0Zr3GCFxNpas8p7AUTeX8viItUOQXku4AsyX82ZzUz79HgGul2Nk17BIFTtLzqdB7/NT6WVb5PAOOILw==", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "classnames": "2.x", - "dom-scroll-into-view": "1.x", - "ismobilejs": "^0.5.1", - "mini-store": "^2.0.0", - "mutationobserver-shim": "^0.3.2", - "prop-types": "^15.5.6", - "rc-animate": "2.x", - "rc-trigger": "^2.3.0", - "rc-util": "^4.1.0", - "resize-observer-polyfill": "^1.5.0" - } - }, - "rc-select": { - "version": "9.2.1", - "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-9.2.1.tgz", - "integrity": "sha512-nW/Zr2OCgxN26OX8ff3xcO1wK0e1l5ixnEfyN15Rbdk7TNI/rIPJIjPCQAoihRpk9A2C/GH8pahjlvKV1Vj++g==", - "dev": true, - "requires": { - "babel-runtime": "^6.23.0", - "classnames": "2.x", - "component-classes": "1.x", - "dom-scroll-into-view": "1.x", - "prop-types": "^15.5.8", - "raf": "^3.4.0", - "rc-animate": "2.x", - "rc-menu": "^7.3.0", - "rc-trigger": "^2.5.4", - "rc-util": "^4.0.4", - "react-lifecycles-compat": "^3.0.2", - "warning": "^4.0.2" - } - }, - "rc-test": { - "version": "6.0.9", - "resolved": "https://registry.npmjs.org/rc-test/-/rc-test-6.0.9.tgz", - "integrity": "sha512-SfDRqT/gXWxVAaSvSgZ/xXBqEs5xE7Kb9ug8nrBuDuXw58EshRs/193lmg3Eu6wmcKI9lYj7CNUIpYGi/12ijQ==", - "dev": true, - "requires": { - "colorful": "2.x", - "commander": "2.8.x", - "console-polyfill": "^0.2.3", - "es5-shim": "^4.5.9", - "es6-promise": "^4.1.0", - "fs-extra": "^0.16.5", - "glob": "~5.0.15", - "gulp": "^3.8.10", - "html5shiv": "^3.7.3", - "istanbul-instrumenter-loader": "2.x", - "karma": "~1.1.2", - "karma-chrome-launcher": "~1.0.1", - "karma-coverage": "^1.1.1", - "karma-coverage-istanbul-reporter": "^1.3.0", - "karma-coveralls": "~1.1.2", - "karma-firefox-launcher": "~1.0.0", - "karma-ie-launcher": "~1.0.0", - "karma-mocha": "~1.1.1", - "karma-mocha-reporter": "~2.1.0", - "karma-phantomjs-launcher": "~1.0.1", - "karma-safari-launcher": "~1.0.0", - "karma-sauce-launcher": "~1.0.0", - "karma-sourcemap-loader": "~0.3.7", - "karma-webpack": "2.x", - "match-require": "2.x", - "minimist": "1.x", - "mocha": "2.x", - "object-assign": "4.x", - "phantomjs-prebuilt": "^2.1.4", - "shelljs": "0.3.x" - } - }, - "rc-tools": { - "version": "6.5.7", - "resolved": "https://registry.npmjs.org/rc-tools/-/rc-tools-6.5.7.tgz", - "integrity": "sha512-6CoFCKdg8ncayeGDVo/Y/TOodr+tW+VjXfZc+kiMnvKDo4kL9+pWFleoN5Lx0uHESydvRhz5KPiMQzkZtimIdg==", - "dev": true, - "requires": { - "autoprefixer": "^6.x", - "babel-core": "^6.5.2", - "babel-eslint": "^4.1.8", - "babel-loader": "^6.2.2", - "babel-plugin-add-module-exports": "^0.1.2", - "babel-plugin-transform-es3-member-expression-literals": "^6.22.0", - "babel-plugin-transform-es3-property-literals": "^6.22.0", - "babel-plugin-transform-object-assign": "^6.22.0", - "babel-plugin-transform-runtime": "6.x", - "babel-preset-es2015": "^6.24.1", - "babel-preset-react": "^6.3.13", - "babel-preset-stage-0": "^6.3.13", - "chalk": "^2.0.1", - "colorful": "2.x", - "commander": "2.8.x", - "console-polyfill": "~0.2.1", - "css-loader": "^0.26.1", - "es5-shim": "4.x", - "es6-promise": "~3.2.1", - "eslint": "^1.10.3", - "eslint-config-airbnb": "^5.0.1", - "eslint-plugin-react": "^3.16.1", - "extract-text-webpack-plugin": "2.x", - "fastclick": "~1.0.6", - "file-loader": "^0.10.0", - "filesize": "^3.5.10", - "fs-extra": "^0.16.5", - "gh-pages": "^0.3.0", - "glob": "~5.0.15", - "gulp": "^3.8.10", - "gulp-babel": "^6.1.2", - "gulp-jsx2example": "^1.2.4", - "gulp-less": "3.x", - "gulp-postcss": "^6.1.0", - "gulp-typescript": "~3.0.2", - "gulp-watch": "^4.3.10", - "gzip-size": "^3.0.0", - "highlight.js": "^8.9.1", - "html5shiv": "3.x", - "internal-ip": "^1.1.0", - "koa": "^1.1.2", - "koa-body": "^1.4.0", - "koa-favicon": "^1.2.0", - "koa-logger": "1.x", - "koa-request": "~1.0.0", - "koa-router": "3.x", - "koa-serve-index": "^1.1.1", - "koa-static": "^2.0.0", - "koa-webpack-dev-middleware": "^1.1.0", - "less": "2.x", - "less-loader": "2.x", - "match-require": "2.x", - "merge2": "~1.0.2", - "minimist": "1.x", - "modulex-util": "^1.1.9", - "normalize.css": "^3.0.3", - "object-assign": "4.x", - "postcss-loader": "^1.2.2", - "progress-bar-webpack-plugin": "^1.9.3", - "recursive-readdir": "^2.2.1", - "request": "^2.81.0", - "shelljs": "0.3.x", - "strip-ansi": "^4.0.0", - "style-loader": "^0.13.1", - "svg-sprite-loader": "^0.3.0", - "tar.gz": "^1.0.5", - "through2": "^0.6.5", - "ts-loader": "2.x", - "tslint": "4.x", - "typescript": "2.x", - "url-loader": "^0.5.7", - "webpack": "^2.2.1", - "xtemplate": "^4.4.2", - "xtpl": "^3.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "es6-promise": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.2.1.tgz", - "integrity": "sha1-7FYjOGgDKQkgcXDDlEjiREndH8Q=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", - "dev": true, - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "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.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "request": { - "version": "2.88.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.0", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "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-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "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.33-1 <1.1.0-0", - "xtend": ">=4.0.0 <4.1.0-0" - } - }, - "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", - "dev": true, - "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - } - } - }, - "rc-trigger": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-2.6.5.tgz", - "integrity": "sha512-m6Cts9hLeZWsTvWnuMm7oElhf+03GOjOLfTuU0QmdB9ZrW7jR2IpI5rpNM7i9MvAAlMAmTx5Zr7g3uu/aMvZAw==", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.6", - "prop-types": "15.x", - "rc-align": "^2.4.0", - "rc-animate": "2.x", - "rc-util": "^4.4.0", - "react-lifecycles-compat": "^3.0.4" - } - }, - "rc-util": { - "version": "4.8.4", - "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-4.8.4.tgz", - "integrity": "sha512-1B2h0/pMXfSUBRAgPdoDIKK5XBuzLBuLI9rLwUEW163SPoDvfb9jmg3ymBPtzne2jWgwtdNw4j0vIq/8Yo849A==", - "dev": true, - "requires": { - "add-dom-event-listener": "^1.1.0", - "babel-runtime": "6.x", - "prop-types": "^15.5.10", - "react-lifecycles-compat": "^3.0.4", - "shallowequal": "^0.2.2" - } - }, - "react": { - "version": "16.12.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.12.0.tgz", - "integrity": "sha512-fglqy3k5E+81pA8s+7K0/T3DBCF0ZDOher1elBFzF7O6arXJgzyu/FW+COxFvAWXJoJN9KIZbT2LXlukwphYTA==", - "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2" - } - }, - "react-dom": { - "version": "16.12.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.12.0.tgz", - "integrity": "sha512-LMxFfAGrcS3kETtQaCkTKjMiifahaMySFDn71fZUNpPHZQEzmk/GiAeIT8JSOrHB23fnuCOMruL2a8NYlw+8Gw==", - "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2", - "scheduler": "^0.18.0" - } - }, - "react-is": { - "version": "16.8.6", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.8.6.tgz", - "integrity": "sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA==" - }, - "react-lifecycles-compat": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", - "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.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=", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - } - } - }, - "readline2": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/readline2/-/readline2-1.0.1.tgz", - "integrity": "sha1-QQWWCP/BVHV7cV2ZidGZ/783LjU=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "mute-stream": "0.0.5" - } - }, - "recast": { - "version": "0.10.33", - "resolved": "https://registry.npmjs.org/recast/-/recast-0.10.33.tgz", - "integrity": "sha1-lCgI96oBbx+nFCxGHX5XBKqo1pc=", - "dev": true, - "requires": { - "ast-types": "0.8.12", - "esprima-fb": "~15001.1001.0-dev-harmony-fb", - "private": "~0.1.5", - "source-map": "~0.5.0" - }, - "dependencies": { - "ast-types": { - "version": "0.8.12", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.8.12.tgz", - "integrity": "sha1-oNkOQ1G7iHcWyD/WN+v4GK9K38w=", - "dev": true - }, - "esprima-fb": { - "version": "15001.1001.0-dev-harmony-fb", - "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-15001.1001.0-dev-harmony-fb.tgz", - "integrity": "sha1-Q761fsJujPI3092LM+QlM1d/Jlk=", - "dev": true - } - } - }, - "rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", - "dev": true, - "requires": { - "resolve": "^1.1.6" - } - }, - "recursive-readdir": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", - "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", - "dev": true, - "requires": { - "minimatch": "3.0.4" - } - }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, - "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - } - }, - "reduce-css-calc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz", - "integrity": "sha1-dHyRTgSWFKTJz7umKYca0dKSdxY=", - "dev": true, - "requires": { - "balanced-match": "^0.4.2", - "math-expression-evaluator": "^1.2.14", - "reduce-function-call": "^1.0.1" - }, - "dependencies": { - "balanced-match": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", - "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=", - "dev": true - } - } - }, - "reduce-function-call": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/reduce-function-call/-/reduce-function-call-1.0.2.tgz", - "integrity": "sha1-WiAL+S4ON3UXUv5FsKszD9S2vpk=", - "dev": true, - "requires": { - "balanced-match": "^0.4.2" - }, - "dependencies": { - "balanced-match": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", - "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=", - "dev": true - } - } - }, - "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true - }, - "regenerator": { - "version": "0.8.40", - "resolved": "https://registry.npmjs.org/regenerator/-/regenerator-0.8.40.tgz", - "integrity": "sha1-oORXxY69uuV1yfjNdRJ+k3VkNdg=", - "dev": true, - "requires": { - "commoner": "~0.10.3", - "defs": "~1.1.0", - "esprima-fb": "~15001.1001.0-dev-harmony-fb", - "private": "~0.1.5", - "recast": "0.10.33", - "through": "~2.3.8" - }, - "dependencies": { - "esprima-fb": { - "version": "15001.1001.0-dev-harmony-fb", - "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-15001.1001.0-dev-harmony-fb.tgz", - "integrity": "sha1-Q761fsJujPI3092LM+QlM1d/Jlk=", - "dev": true - } - } - }, - "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==", - "dev": true, - "requires": { - "babel-runtime": "^6.18.0", - "babel-types": "^6.19.0", - "private": "^0.1.6" - } - }, - "regex-cache": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", - "dev": true, - "requires": { - "is-equal-shallow": "^0.1.3" - } - }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "dev": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "regexpu": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/regexpu/-/regexpu-1.3.0.tgz", - "integrity": "sha1-5TTcmRqeWEYFDJjebX3UpVyeoW0=", - "dev": true, - "requires": { - "esprima": "^2.6.0", - "recast": "^0.10.10", - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" - } - }, - "regexpu-core": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", - "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", - "dev": true, - "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" - } - }, - "registry-auth-token": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", - "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", - "dev": true, - "requires": { - "rc": "^1.1.6", - "safe-buffer": "^5.0.1" - } - }, - "registry-url": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", - "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", - "dev": true, - "requires": { - "rc": "^1.0.1" - } - }, - "regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", - "dev": true - }, - "regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - } - } - }, - "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=", - "dev": true - }, - "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", - "dev": true - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true - }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "replace-ext": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", - "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=", - "dev": true - }, - "request": { - "version": "2.79.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz", - "integrity": "sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4=", - "dev": true, - "requires": { - "aws-sign2": "~0.6.0", - "aws4": "^1.2.1", - "caseless": "~0.11.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.0", - "forever-agent": "~0.6.1", - "form-data": "~2.1.1", - "har-validator": "~2.0.6", - "hawk": "~3.1.3", - "http-signature": "~1.1.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.7", - "oauth-sign": "~0.8.1", - "qs": "~6.3.0", - "stringstream": "~0.0.4", - "tough-cookie": "~2.3.0", - "tunnel-agent": "~0.4.1", - "uuid": "^3.0.0" - }, - "dependencies": { - "qs": { - "version": "6.3.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.2.tgz", - "integrity": "sha1-51vV9uJoEioqDgvaYwslUMFmUCw=", - "dev": true - } - } - }, - "request-progress": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-2.0.1.tgz", - "integrity": "sha1-XTa7V5YcZzqlt4jbyBQf3yO0Tgg=", - "dev": true, - "requires": { - "throttleit": "^1.0.0" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-from-string": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", - "integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=", - "dev": true - }, - "require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", - "dev": true - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", - "dev": true - }, - "resize-observer-polyfill": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", - "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==", - "dev": true - }, - "resolve": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.11.0.tgz", - "integrity": "sha512-WL2pBDjqT6pGUNSUzMw00o4T7If+z4H2x3Gz893WoUQ5KW8Vr9txp00ykiP16VBaZF5+j/OcXJHZ9+PCvdiDKw==", - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } - }, - "resolve-dir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", - "dev": true, - "requires": { - "expand-tilde": "^2.0.0", - "global-modules": "^1.0.0" - } - }, - "resolve-path": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/resolve-path/-/resolve-path-1.4.0.tgz", - "integrity": "sha1-xL2p9e+y/OZSR4c6s2u02DT+Fvc=", - "dev": true, - "requires": { - "http-errors": "~1.6.2", - "path-is-absolute": "1.0.1" - }, - "dependencies": { - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - } - } - }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "dev": true - }, - "restore-cursor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", - "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", - "dev": true, - "requires": { - "exit-hook": "^1.0.0", - "onetime": "^1.0.0" - } - }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true - }, - "right-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", - "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", - "dev": true, - "requires": { - "align-text": "^0.1.1" - } - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "run-async": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz", - "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=", - "dev": true, - "requires": { - "once": "^1.3.0" - } - }, - "rx-lite": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz", - "integrity": "sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI=", - "dev": true - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "dev": true, - "requires": { - "ret": "~0.1.10" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "sauce-connect-launcher": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/sauce-connect-launcher/-/sauce-connect-launcher-0.13.0.tgz", - "integrity": "sha1-JdffnaFqXtHKoT30JMtXywttWiI=", - "dev": true, - "requires": { - "adm-zip": "~0.4.3", - "async": "1.4.0", - "lodash": "3.10.1", - "rimraf": "2.4.3" - }, - "dependencies": { - "async": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/async/-/async-1.4.0.tgz", - "integrity": "sha1-Nfhvg8WeBCHQmc2akdgnj7V4wA0=", - "dev": true - }, - "lodash": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", - "dev": true - }, - "rimraf": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.4.3.tgz", - "integrity": "sha1-5bUclDekxYKtuVXp8oz42UXicq8=", - "dev": true, - "requires": { - "glob": "^5.0.14" - } - } - } - }, - "saucelabs": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/saucelabs/-/saucelabs-1.5.0.tgz", - "integrity": "sha512-jlX3FGdWvYf4Q3LFfFWS1QvPg3IGCGWxIc8QBFdPTbpTJnt/v17FHXYVAn7C8sHf1yUXo2c7yIM0isDryfYtHQ==", - "dev": true, - "requires": { - "https-proxy-agent": "^2.2.1" - } - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "scheduler": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.18.0.tgz", - "integrity": "sha512-agTSHR1Nbfi6ulI0kYNK0203joW2Y5W4po4l+v03tOoiJKpTBbxpNhWDvqc/4IcOw+KLmSiQLTasZ4cab2/UWQ==", - "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - } - }, - "schema-utils": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.3.0.tgz", - "integrity": "sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8=", - "dev": true, - "requires": { - "ajv": "^5.0.0" - }, - "dependencies": { - "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "dev": true, - "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" - } - }, - "fast-deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", - "dev": true - }, - "json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", - "dev": true - } - } - }, - "semver": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz", - "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=", - "dev": true - }, - "semver-diff": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", - "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", - "dev": true, - "requires": { - "semver": "^5.0.3" - }, - "dependencies": { - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, - "sequencify": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/sequencify/-/sequencify-0.0.7.tgz", - "integrity": "sha1-kM/xnQLgcCf9dn9erT57ldHnOAw=", - "dev": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "set-value": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", - "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.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=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", - "dev": true - }, - "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", - "dev": true - }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "shallowequal": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-0.2.2.tgz", - "integrity": "sha1-HjL9W8q2rWiKSBLLDMBO/HXHAU4=", - "dev": true, - "requires": { - "lodash.keys": "^3.1.2" - } - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "shelljs": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.3.0.tgz", - "integrity": "sha1-NZbmMHp4FUT1kfN9phg2DzHbV7E=", - "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 - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true - }, - "simple-fmt": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/simple-fmt/-/simple-fmt-0.1.0.tgz", - "integrity": "sha1-GRv1ZqWeZTBILLJatTtKjchcOms=", - "dev": true - }, - "simple-is": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/simple-is/-/simple-is-0.2.0.tgz", - "integrity": "sha1-Krt1qt453rXMgVzhDmGRFkhQuvA=", - "dev": true - }, - "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", - "dev": true - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "dev": true, - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.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=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "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==", - "dev": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "dev": true, - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "sniffr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/sniffr/-/sniffr-1.1.4.tgz", - "integrity": "sha1-xX+p/B6PzMR0Mr43ZMozt5aY4Og=", - "dev": true - }, - "sntp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", - "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", - "dev": true, - "requires": { - "hoek": "2.x.x" - } - }, - "socket.io": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-1.4.7.tgz", - "integrity": "sha1-krf3y4jFeX1NruJ5/oB12+bT+hw=", - "dev": true, - "requires": { - "debug": "2.2.0", - "engine.io": "1.6.10", - "has-binary": "0.1.7", - "socket.io-adapter": "0.4.0", - "socket.io-client": "1.4.6", - "socket.io-parser": "2.2.6" - }, - "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" - } - }, - "ms": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", - "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", - "dev": true - } - } - }, - "socket.io-adapter": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-0.4.0.tgz", - "integrity": "sha1-+5+CqxqmUpC/csNleVW5MKmRok8=", - "dev": true, - "requires": { - "debug": "2.2.0", - "socket.io-parser": "2.2.2" - }, - "dependencies": { - "component-emitter": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.1.2.tgz", - "integrity": "sha1-KWWU8nU9qmOZbSrwjRWpURbJrsM=", - "dev": true - }, - "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" - } - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - }, - "ms": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", - "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", - "dev": true - }, - "socket.io-parser": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-2.2.2.tgz", - "integrity": "sha1-PXr2tkSX6Va32f53X5mXFgJ/lBc=", - "dev": true, - "requires": { - "benchmark": "1.0.0", - "component-emitter": "1.1.2", - "debug": "0.7.4", - "isarray": "0.0.1", - "json3": "3.2.6" - }, - "dependencies": { - "debug": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz", - "integrity": "sha1-BuHqgILCyxTjmAbiLi9vdX+Srzk=", - "dev": true - } - } - } - } - }, - "socket.io-client": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-1.4.6.tgz", - "integrity": "sha1-SbC6U379FbgpfIQBbmQuHHx1LD0=", - "dev": true, - "requires": { - "backo2": "1.0.2", - "component-bind": "1.0.0", - "component-emitter": "1.2.0", - "debug": "2.2.0", - "engine.io-client": "1.6.9", - "has-binary": "0.1.7", - "indexof": "0.0.1", - "object-component": "0.0.3", - "parseuri": "0.0.4", - "socket.io-parser": "2.2.6", - "to-array": "0.1.4" - }, - "dependencies": { - "component-emitter": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.0.tgz", - "integrity": "sha1-zNETqGOI0GSC0D3j/H35hSa6jv4=", - "dev": true - }, - "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" - } - }, - "ms": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", - "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", - "dev": true - } - } - }, - "socket.io-parser": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-2.2.6.tgz", - "integrity": "sha1-ON/WHfUNz4qx2eIJEyK/kCuii5k=", - "dev": true, - "requires": { - "benchmark": "1.0.0", - "component-emitter": "1.1.2", - "debug": "2.2.0", - "isarray": "0.0.1", - "json3": "3.3.2" - }, - "dependencies": { - "component-emitter": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.1.2.tgz", - "integrity": "sha1-KWWU8nU9qmOZbSrwjRWpURbJrsM=", - "dev": true - }, - "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" - } - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - }, - "json3": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz", - "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=", - "dev": true - }, - "ms": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", - "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", - "dev": true - } - } - }, - "sort-keys": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", - "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", - "dev": true, - "requires": { - "is-plain-obj": "^1.0.0" - } - }, - "source-list-map": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-0.1.8.tgz", - "integrity": "sha1-xVCyq1Qn9rPyH1r+rYjE9Vh7IQY=", - "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-map-resolve": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", - "dev": true, - "requires": { - "atob": "^2.1.1", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "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==", - "dev": true, - "requires": { - "source-map": "^0.5.6" - } - }, - "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=", - "dev": true - }, - "sparkles": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", - "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==", - "dev": true - }, - "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.4.7", - "os-shim": "^0.1.2" - } - }, - "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz", - "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - } - } - }, - "stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "dev": true - }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dev": true, - "requires": { - "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=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true - }, - "stream-browserify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", - "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", - "dev": true, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" - } - }, - "stream-consume": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.1.tgz", - "integrity": "sha512-tNa3hzgkjEP7XbCkbRXe1jpg+ievoa0O4SCFlMOYEscGSS4JJsckGL8swUyAa/ApGU3Ae4t6Honor4HhL+tRyg==", - "dev": true - }, - "stream-http": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", - "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", - "dev": true, - "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" - } - }, - "stream-shift": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", - "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", - "dev": true - }, - "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=", - "dev": true - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "stringmap": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/stringmap/-/stringmap-0.2.2.tgz", - "integrity": "sha1-VWwTeyWPlCuHdvWy71gqoGnX0bE=", - "dev": true - }, - "stringset": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/stringset/-/stringset-0.2.1.tgz", - "integrity": "sha1-7yWcTjSTRDd/zRyRPdLoSMnAQrU=", - "dev": true - }, - "stringstream": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz", - "integrity": "sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==", - "dev": true - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-1.0.0.tgz", - "integrity": "sha1-hbiGLzhEtabV7IRnqTWYFzo295Q=", - "dev": true, - "requires": { - "first-chunk-stream": "^1.0.0", - "is-utf8": "^0.2.0" - } - }, - "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=", - "dev": true, - "requires": { - "first-chunk-stream": "^1.0.0", - "strip-bom": "^2.0.0" - }, - "dependencies": { - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - } - } - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - } - }, - "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 - }, - "style-loader": { - "version": "0.13.2", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.13.2.tgz", - "integrity": "sha1-dFMzhM9pjHEEx5URULSXF63C87s=", - "dev": true, - "requires": { - "loader-utils": "^1.0.2" - }, - "dependencies": { - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - } - } - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - }, - "svg-sprite-loader": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/svg-sprite-loader/-/svg-sprite-loader-0.3.1.tgz", - "integrity": "sha1-RLIsdyS8dyVsMGsXliV65u/uUVo=", - "dev": true, - "requires": { - "cheerio": "^0.22.0", - "extend": "^3.0.0", - "image-size": "^0.3.5", - "loader-utils": "^0.2.11", - "postcss": "^5.2.10", - "sniffr": "1.1.4" - }, - "dependencies": { - "image-size": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.3.5.tgz", - "integrity": "sha1-gyQOqy+1sAsEqrjHSwRx6cunrYw=", - "dev": true - } - } - }, - "svgo": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-0.7.2.tgz", - "integrity": "sha1-n1dyQTlSE1xv779Ar+ak+qiLS7U=", - "dev": true, - "requires": { - "coa": "~1.0.1", - "colors": "~1.1.2", - "csso": "~2.3.1", - "js-yaml": "~3.7.0", - "mkdirp": "~0.5.1", - "sax": "~1.2.1", - "whet.extend": "~0.9.9" - }, - "dependencies": { - "colors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", - "dev": true - }, - "js-yaml": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.7.0.tgz", - "integrity": "sha1-XJZ93YN6m/3KXy3oQlOr6KHAO4A=", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^2.6.0" - } - } - } - }, - "tapable": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.2.9.tgz", - "integrity": "sha512-2wsvQ+4GwBvLPLWsNfLCDYGsW6xb7aeC6utq2Qh0PFwgEy7K7dsma9Jsmb2zSQj7GvYAyUGSntLtsv++GmgL1A==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.1.5.tgz", - "integrity": "sha1-vpIYwTDCACnhB7D5Z/sj3gV50Tw=", - "dev": true, - "requires": { - "bl": "^0.9.0", - "end-of-stream": "^1.0.0", - "readable-stream": "~1.0.33", - "xtend": "^4.0.0" - }, - "dependencies": { - "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==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "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.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "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 - } - } - }, - "tar.gz": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/tar.gz/-/tar.gz-1.0.7.tgz", - "integrity": "sha512-uhGatJvds/3diZrETqMj4RxBR779LKlIE74SsMcn5JProZsfs9j0QBwWO1RW+IWNJxS2x8Zzra1+AW6OQHWphg==", - "dev": true, - "requires": { - "bluebird": "^2.9.34", - "commander": "^2.8.1", - "fstream": "^1.0.8", - "mout": "^0.11.0", - "tar": "^2.1.1" - }, - "dependencies": { - "bluebird": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.11.0.tgz", - "integrity": "sha1-U0uQM8AiyVecVro7Plpcqvu2UOE=", - "dev": true - } - } - }, - "term-size": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", - "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", - "dev": true, - "requires": { - "execa": "^0.7.0" - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "thenify": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.0.tgz", - "integrity": "sha1-5p44obq+lpsBCCB5eLn2K4hgSDk=", - "dev": true, - "requires": { - "any-promise": "^1.0.0" - } - }, - "thenify-all": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=", - "dev": true, - "requires": { - "thenify": ">= 3.1.0 < 4" - } - }, - "throttleit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", - "integrity": "sha1-nnhYNtr0Z0MUWlmEtiaNgoUorGw=", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "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=", - "dev": true, - "requires": { - "through2": "~2.0.0", - "xtend": "~4.0.0" - } - }, - "tildify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/tildify/-/tildify-1.2.0.tgz", - "integrity": "sha1-3OwD9V3Km3qj5bBPIYF+tW5jWIo=", - "dev": true, - "requires": { - "os-homedir": "^1.0.0" - } - }, - "time-stamp": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", - "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=", - "dev": true - }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", - "dev": true - }, - "timers-browserify": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", - "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", - "dev": true, - "requires": { - "setimmediate": "^1.0.4" - } - }, - "tmp": { - "version": "0.0.28", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.28.tgz", - "integrity": "sha1-Fyc1t/YU6nrzlmT6hM8N5OUV0SA=", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.1" - } - }, - "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=", - "dev": true, - "requires": { - "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=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "to-array": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", - "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=", - "dev": true - }, - "to-arraybuffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "dev": true - }, - "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=", - "dev": true - }, - "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 - }, - "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=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "dev": true, - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "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=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", - "dev": true - }, - "tough-cookie": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", - "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", - "dev": true, - "requires": { - "punycode": "^1.4.1" - } - }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - }, - "trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true - }, - "try-resolve": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/try-resolve/-/try-resolve-1.0.1.tgz", - "integrity": "sha1-z95vq9ctY+V5fPqrhzq76OcA6RI=", - "dev": true - }, - "tryor": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/tryor/-/tryor-0.1.2.tgz", - "integrity": "sha1-gUXkynyv9ArN48z5Rui4u3W0Fys=", - "dev": true - }, - "ts-loader": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-2.3.7.tgz", - "integrity": "sha512-8t3bu2FcEkXb+D4L+Cn8qiK2E2C6Ms4/GQChvz6IMbVurcFHLXrhW4EMtfaol1a1ASQACZGDUGit4NHnX9g7hQ==", - "dev": true, - "requires": { - "chalk": "^2.0.1", - "enhanced-resolve": "^3.0.0", - "loader-utils": "^1.0.2", - "semver": "^5.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - } - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "tslint": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-4.5.1.tgz", - "integrity": "sha1-BTVocb7yOkNJBnNABvwYgza6gks=", - "dev": true, - "requires": { - "babel-code-frame": "^6.20.0", - "colors": "^1.1.2", - "diff": "^3.0.1", - "findup-sync": "~0.3.0", - "glob": "^7.1.1", - "optimist": "~0.6.0", - "resolve": "^1.1.7", - "tsutils": "^1.1.0", - "update-notifier": "^2.0.0" - }, - "dependencies": { - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "findup-sync": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", - "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", - "dev": true, - "requires": { - "glob": "~5.0.0" - }, - "dependencies": { - "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", - "dev": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "tsutils": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-1.9.1.tgz", - "integrity": "sha1-ufmrROVa+WgYMdXyjQrur1x1DLA=", - "dev": true - }, - "tty-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true - }, - "tunnel-agent": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", - "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=", - "dev": true - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, - "typescript": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.9.2.tgz", - "integrity": "sha512-Gr4p6nFNaoufRIY4NMdpQRNmgxVIGMs4Fcu/ujdYk3nAZqk7supzBE9idmvfZIlH/Cuj//dvi+019qEue9lV0w==", - "dev": true - }, - "uglify-js": { - "version": "3.5.15", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.15.tgz", - "integrity": "sha512-fe7aYFotptIddkwcm6YuA0HmknBZ52ZzOsUxZEdhhkSsz7RfjHDX2QDxwKTiv4JQ5t5NhfmpgAK+J7LiDhKSqg==", - "dev": true, - "optional": true, - "requires": { - "commander": "~2.20.0", - "source-map": "~0.6.1" - }, - "dependencies": { - "commander": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", - "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", - "dev": true, - "optional": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - } - } - }, - "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=", - "dev": true, - "optional": true - }, - "ultron": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz", - "integrity": "sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po=", - "dev": true - }, - "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=", - "dev": true - }, - "underscore.string": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.0.3.tgz", - "integrity": "sha1-Rhe4waJQz25QZPu7Nj0PqWzxRVI=", - "dev": true - }, - "union-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", - "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^0.4.3" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "set-value": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", - "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" - } - } - } - }, - "uniq": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", - "dev": true - }, - "uniqs": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", - "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=", - "dev": true - }, - "unique-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-1.0.0.tgz", - "integrity": "sha1-1ZpKdUJ0R9mqbJHnAmP40mpLEEs=", - "dev": true - }, - "unique-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", - "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", - "dev": true, - "requires": { - "crypto-random-string": "^1.0.0" - } - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "dev": true - }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dev": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "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=", - "dev": true - } - } - }, - "unzip-response": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", - "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", - "dev": true - }, - "upath": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.2.tgz", - "integrity": "sha512-kXpym8nmDmlCBr7nKdIx8P2jNBa+pBpIUFRnKJ4dr8htyYGJFokkr2ZvERRtUN+9SY+JqXouNgUPtv6JQva/2Q==", - "dev": true - }, - "update-notifier": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", - "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", - "dev": true, - "requires": { - "boxen": "^1.2.1", - "chalk": "^2.0.1", - "configstore": "^3.0.0", - "import-lazy": "^2.1.0", - "is-ci": "^1.0.10", - "is-installed-globally": "^0.1.0", - "is-npm": "^1.0.0", - "latest-version": "^3.0.0", - "semver-diff": "^2.0.0", - "xdg-basedir": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - }, - "dependencies": { - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - } - } - }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true - }, - "url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "dev": true, - "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=", - "dev": true - } - } - }, - "url-loader": { - "version": "0.5.9", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-0.5.9.tgz", - "integrity": "sha512-B7QYFyvv+fOBqBVeefsxv6koWWtjmHaMFT6KZWti4KRw8YUD/hOU+3AECvXuzyVawIBx3z7zQRejXCDSO5kk1Q==", - "dev": true, - "requires": { - "loader-utils": "^1.0.2", - "mime": "1.3.x" - }, - "dependencies": { - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - } - }, - "mime": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.3.6.tgz", - "integrity": "sha1-WR2E02U6awtKO5343lqoEI5y5eA=", - "dev": true - } - } - }, - "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=", - "dev": true, - "requires": { - "prepend-http": "^1.0.1" - } - }, - "url2": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/url2/-/url2-0.0.0.tgz", - "integrity": "sha1-Tqq9HVw6yQ1iq0SFyZhCKGWgSxo=", - "dev": true - }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true - }, - "user-home": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz", - "integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=", - "dev": true - }, - "useragent": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.3.0.tgz", - "integrity": "sha512-4AoH4pxuSvHCjqLO04sU6U/uE65BYza8l/KKBS0b0hnUPWi+cQ2BpeTEwejCSx9SPV5/U03nniDTrWx5NrmKdw==", - "dev": true, - "requires": { - "lru-cache": "4.1.x", - "tmp": "0.0.x" - } - }, - "utf8": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/utf8/-/utf8-2.1.0.tgz", - "integrity": "sha1-DP7FyAUtRKI+OqqQgQToB1+V39U=", - "dev": true - }, - "util": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", - "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", - "dev": true, - "requires": { - "inherits": "2.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "dev": true - }, - "uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", - "dev": true - }, - "v8flags": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz", - "integrity": "sha1-qrGh+jDUX4jdMhFIh1rALAtV5bQ=", - "dev": true, - "requires": { - "user-home": "^1.1.1" - } - }, - "vali-date": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", - "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "vargs": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/vargs/-/vargs-0.1.0.tgz", - "integrity": "sha1-a2GE2mUgzDIEzhtAfKwm2SYJ6/8=", - "dev": true - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "dev": true - }, - "vendors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.3.tgz", - "integrity": "sha512-fOi47nsJP5Wqefa43kyWSg80qF+Q3XA6MUkgi7Hp1HQaKDQW4cQrK2D0P7mmbFtsV1N89am55Yru/nyEwRubcw==", - "dev": true - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - } - } - }, - "vinyl": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz", - "integrity": "sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4=", - "dev": true, - "requires": { - "clone": "^1.0.0", - "clone-stats": "^0.0.1", - "replace-ext": "0.0.1" - } - }, - "vinyl-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/vinyl-file/-/vinyl-file-2.0.0.tgz", - "integrity": "sha1-p+v1/779obfRjRQPyweyI++2dRo=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.3.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0", - "strip-bom-stream": "^2.0.0", - "vinyl": "^1.1.0" - }, - "dependencies": { - "first-chunk-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz", - "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", - "dev": true, - "requires": { - "readable-stream": "^2.0.2" - } - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - }, - "strip-bom-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-2.0.0.tgz", - "integrity": "sha1-+H217yYT9paKpUWr/h7HKLaoKco=", - "dev": true, - "requires": { - "first-chunk-stream": "^2.0.0", - "strip-bom": "^2.0.0" - } - }, - "vinyl": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", - "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", - "dev": true, - "requires": { - "clone": "^1.0.0", - "clone-stats": "^0.0.1", - "replace-ext": "0.0.1" - } - } - } - }, - "vinyl-fs": { - "version": "0.3.14", - "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-0.3.14.tgz", - "integrity": "sha1-mmhRzhysHBzqX+hsCTHWIMLPqeY=", - "dev": true, - "requires": { - "defaults": "^1.0.0", - "glob-stream": "^3.1.5", - "glob-watcher": "^0.0.6", - "graceful-fs": "^3.0.0", - "mkdirp": "^0.5.0", - "strip-bom": "^1.0.0", - "through2": "^0.6.1", - "vinyl": "^0.4.0" - }, - "dependencies": { - "clone": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", - "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=", - "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 - }, - "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.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "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.33-1 <1.1.0-0", - "xtend": ">=4.0.0 <4.1.0-0" - } - }, - "vinyl": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", - "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", - "dev": true, - "requires": { - "clone": "^0.2.0", - "clone-stats": "^0.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=", - "dev": true, - "requires": { - "source-map": "^0.5.1" - } - }, - "vm-browserify": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", - "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", - "dev": true, - "requires": { - "indexof": "0.0.1" - } - }, - "void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", - "dev": true - }, - "warning": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", - "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, - "watchpack": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", - "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", - "dev": true, - "requires": { - "chokidar": "^2.0.2", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0" - }, - "dependencies": { - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "chokidar": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.6.tgz", - "integrity": "sha512-V2jUo67OKkc6ySiRpJrjlpJKl9kDuG+Xb8VgsGzb+aEouhgS1D0weyPU4lEzdAcsCAvrih2J2BqyXqHWvVLw5g==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - } - } - }, - "wd": { - "version": "0.3.12", - "resolved": "https://registry.npmjs.org/wd/-/wd-0.3.12.tgz", - "integrity": "sha1-P7Tx11n4yF3eU5PRczT/4D6bsyk=", - "dev": true, - "requires": { - "archiver": "~0.14.0", - "async": "~1.0.0", - "lodash": "~3.9.3", - "q": "~1.4.1", - "request": "~2.55.0", - "underscore.string": "~3.0.3", - "vargs": "~0.1.0" - }, - "dependencies": { - "asn1": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz", - "integrity": "sha1-VZvhg3bQik7E2+gId9J4GGObLfc=", - "dev": true - }, - "assert-plus": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz", - "integrity": "sha1-7nQAlBMALYTOxyGcasgRgS5yMWA=", - "dev": true - }, - "async": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", - "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=", - "dev": true - }, - "aws-sign2": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.5.0.tgz", - "integrity": "sha1-xXED96F/wDfwLXwuZLYC6iI/fWM=", - "dev": true - }, - "bluebird": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.11.0.tgz", - "integrity": "sha1-U0uQM8AiyVecVro7Plpcqvu2UOE=", - "dev": true - }, - "caseless": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.9.0.tgz", - "integrity": "sha1-t7Zc5r8UE4hlOc/VM/CzDv+pz4g=", - "dev": true - }, - "combined-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-0.0.7.tgz", - "integrity": "sha1-ATfmV7qlp1QcV6w3rF/AfXO03B8=", - "dev": true, - "requires": { - "delayed-stream": "0.0.5" - } - }, - "delayed-stream": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-0.0.5.tgz", - "integrity": "sha1-1LH0OpPoKW3+AmlPRoC8N6MTxz8=", - "dev": true - }, - "form-data": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-0.2.0.tgz", - "integrity": "sha1-Jvi8JtpkQOKZy9z7aQNcT3em5GY=", - "dev": true, - "requires": { - "async": "~0.9.0", - "combined-stream": "~0.0.4", - "mime-types": "~2.0.3" - }, - "dependencies": { - "async": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", - "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=", - "dev": true - } - } - }, - "har-validator": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-1.8.0.tgz", - "integrity": "sha1-2DhCsOtMQ1lgrrEIoGejqpTA7rI=", - "dev": true, - "requires": { - "bluebird": "^2.9.30", - "chalk": "^1.0.0", - "commander": "^2.8.1", - "is-my-json-valid": "^2.12.0" - } - }, - "hawk": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-2.3.1.tgz", - "integrity": "sha1-HnMc45RH+h0PbXB/e87r7A/R7B8=", - "dev": true, - "requires": { - "boom": "2.x.x", - "cryptiles": "2.x.x", - "hoek": "2.x.x", - "sntp": "1.x.x" - } - }, - "http-signature": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-0.10.1.tgz", - "integrity": "sha1-T72sEyVZqoMjEh5UB3nAoBKyfmY=", - "dev": true, - "requires": { - "asn1": "0.1.11", - "assert-plus": "^0.1.5", - "ctype": "0.5.3" - } - }, - "lodash": { - "version": "3.9.3", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.9.3.tgz", - "integrity": "sha1-AVnoaDL+/8bWHYUrEqlTuZSWvTI=", - "dev": true - }, - "mime-db": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.12.0.tgz", - "integrity": "sha1-PQxjGA9FjrENMlqqN9fFiuMS6dc=", - "dev": true - }, - "mime-types": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.0.14.tgz", - "integrity": "sha1-MQ4VnbI+B3+Lsit0jav6SVcUCqY=", - "dev": true, - "requires": { - "mime-db": "~1.12.0" - } - }, - "node-uuid": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz", - "integrity": "sha1-sEDrCSOWivq/jTL7HxfxFn/auQc=", - "dev": true - }, - "oauth-sign": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.6.0.tgz", - "integrity": "sha1-fb6uRPbKRU4fFoRR1jB0ZzWBPOM=", - "dev": true - }, - "q": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", - "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=", - "dev": true - }, - "qs": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-2.4.2.tgz", - "integrity": "sha1-9854jld33wtQENp/fE5zujJHD1o=", - "dev": true - }, - "request": { - "version": "2.55.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.55.0.tgz", - "integrity": "sha1-11wc32eddrsQD5v/4f5VG1wk6T0=", - "dev": true, - "requires": { - "aws-sign2": "~0.5.0", - "bl": "~0.9.0", - "caseless": "~0.9.0", - "combined-stream": "~0.0.5", - "forever-agent": "~0.6.0", - "form-data": "~0.2.0", - "har-validator": "^1.4.0", - "hawk": "~2.3.0", - "http-signature": "~0.10.0", - "isstream": "~0.1.1", - "json-stringify-safe": "~5.0.0", - "mime-types": "~2.0.1", - "node-uuid": "~1.4.0", - "oauth-sign": "~0.6.0", - "qs": "~2.4.0", - "stringstream": "~0.0.4", - "tough-cookie": ">=0.12.0", - "tunnel-agent": "~0.4.0" - } - } - } - }, - "weak-map": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/weak-map/-/weak-map-1.0.0.tgz", - "integrity": "sha1-tm5Wqd8L0lp2u/G1FNsSkIBhSjc=", - "dev": true - }, - "webpack": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-2.7.0.tgz", - "integrity": "sha512-MjAA0ZqO1ba7ZQJRnoCdbM56mmFpipOPUv/vQpwwfSI42p5PVDdoiuK2AL2FwFUVgT859Jr43bFZXRg/LNsqvg==", - "dev": true, - "requires": { - "acorn": "^5.0.0", - "acorn-dynamic-import": "^2.0.0", - "ajv": "^4.7.0", - "ajv-keywords": "^1.1.1", - "async": "^2.1.2", - "enhanced-resolve": "^3.3.0", - "interpret": "^1.0.0", - "json-loader": "^0.5.4", - "json5": "^0.5.1", - "loader-runner": "^2.3.0", - "loader-utils": "^0.2.16", - "memory-fs": "~0.4.1", - "mkdirp": "~0.5.0", - "node-libs-browser": "^2.0.0", - "source-map": "^0.5.3", - "supports-color": "^3.1.0", - "tapable": "~0.2.5", - "uglify-js": "^2.8.27", - "watchpack": "^1.3.1", - "webpack-sources": "^1.0.1", - "yargs": "^6.0.0" - }, - "dependencies": { - "ajv": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", - "dev": true, - "requires": { - "co": "^4.6.0", - "json-stable-stringify": "^1.0.1" - } - }, - "async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", - "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", - "dev": true, - "requires": { - "lodash": "^4.17.11" - } - }, - "camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true - }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - }, - "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" - } - }, - "uglify-js": { - "version": "2.8.29", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", - "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", - "dev": true, - "requires": { - "source-map": "~0.5.1", - "uglify-to-browserify": "~1.0.0", - "yargs": "~3.10.0" - }, - "dependencies": { - "yargs": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", - "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", - "dev": true, - "requires": { - "camelcase": "^1.0.2", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", - "window-size": "0.1.0" - } - } - } - }, - "window-size": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", - "dev": true - }, - "yargs": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", - "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", - "dev": true, - "requires": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^4.2.0" - }, - "dependencies": { - "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true - }, - "cliui": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" - } - } - } - } - } - }, - "webpack-dev-middleware": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-1.12.2.tgz", - "integrity": "sha512-FCrqPy1yy/sN6U/SaEZcHKRXGlqU0DUaEBL45jkUYoB8foVb6wCnbIJ1HKIx+qUFTW+3JpVcCJCxZ8VATL4e+A==", - "dev": true, - "requires": { - "memory-fs": "~0.4.1", - "mime": "^1.5.0", - "path-is-absolute": "^1.0.0", - "range-parser": "^1.0.3", - "time-stamp": "^2.0.0" - }, - "dependencies": { - "time-stamp": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-2.2.0.tgz", - "integrity": "sha512-zxke8goJQpBeEgD82CXABeMh0LSJcj7CXEd0OHOg45HgcofF7pxNwZm9+RknpxpDhwN4gFpySkApKfFYfRQnUA==", - "dev": true - } - } - }, - "webpack-sources": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", - "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", - "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - }, - "dependencies": { - "source-list-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "when": { - "version": "3.7.8", - "resolved": "https://registry.npmjs.org/when/-/when-3.7.8.tgz", - "integrity": "sha1-xxMLan6gRpPoQs3J56Hyqjmjn4I=", - "dev": true - }, - "whet.extend": { - "version": "0.9.9", - "resolved": "https://registry.npmjs.org/whet.extend/-/whet.extend-0.9.9.tgz", - "integrity": "sha1-+HfVv2SMl+WqVC+twW1qJZucEaE=", - "dev": true - }, - "which": { - "version": "1.2.14", - "resolved": "https://registry.npmjs.org/which/-/which-1.2.14.tgz", - "integrity": "sha1-mofEN48D6CfOyvGs31bHNsAcFOU=", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", - "dev": true - }, - "widest-line": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", - "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", - "dev": true, - "requires": { - "string-width": "^2.1.1" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "window-size": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz", - "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY=", - "dev": true - }, - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", - "dev": true - }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "wrench": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/wrench/-/wrench-1.5.1.tgz", - "integrity": "sha1-P3pRmw5AkzhyO7A5sgmlQRdrqkI=", - "dev": true - }, - "write": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", - "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", - "dev": true, - "requires": { - "mkdirp": "^0.5.1" - } - }, - "write-file-atomic": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", - "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - } - } - }, - "ws": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-1.0.1.tgz", - "integrity": "sha1-fQsqLljN3YGQOcKcneZQReGzEOk=", - "dev": true, - "requires": { - "options": ">=0.0.5", - "ultron": "1.0.x" - } - }, - "xdg-basedir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", - "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", - "dev": true - }, - "xml-escape": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/xml-escape/-/xml-escape-1.0.0.tgz", - "integrity": "sha1-AJY9aXsq3wwYXE4E5zF0upsojrI=", - "dev": true - }, - "xmlhttprequest-ssl": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.1.tgz", - "integrity": "sha1-O3dB/qSoZnWXbpCNKW1ERZYfqmc=", - "dev": true - }, - "xtemplate": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/xtemplate/-/xtemplate-4.6.1.tgz", - "integrity": "sha1-EbtP4x6Hi9oK+aE5q00y/gz/rT8=", - "dev": true, - "requires": { - "escape-html": "~1.0.3" - } - }, - "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "dev": true - }, - "xtpl": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/xtpl/-/xtpl-3.4.0.tgz", - "integrity": "sha1-Aq8IktNpa6ZHUHuAIUdfon+tyHA=", - "dev": true - }, - "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - }, - "yargs": { - "version": "3.27.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.27.0.tgz", - "integrity": "sha1-ISBUaTFuk5Ex1Z8toMbX+YIh6kA=", - "dev": true, - "requires": { - "camelcase": "^1.2.1", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", - "os-locale": "^1.4.0", - "window-size": "^0.1.2", - "y18n": "^3.2.0" - }, - "dependencies": { - "camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true - } - } - }, - "yargs-parser": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", - "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", - "dev": true, - "requires": { - "camelcase": "^3.0.0" - }, - "dependencies": { - "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true - } - } - }, - "yauzl": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz", - "integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=", - "dev": true, - "requires": { - "fd-slicer": "~1.0.1" - } - }, - "yeast": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", - "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=", - "dev": true - }, - "zip-stream": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-0.5.2.tgz", - "integrity": "sha1-Mty8UG0Nq00hNyYlvX66rDwv/1Y=", - "dev": true, - "requires": { - "compress-commons": "~0.2.0", - "lodash": "~3.2.0", - "readable-stream": "~1.0.26" - }, - "dependencies": { - "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.2.0", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.2.0.tgz", - "integrity": "sha1-S/UKMkP5rrC6xBpV09WZBnWkYvs=", - "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.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "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 - } - } - } - } -} diff --git a/package.json b/package.json index f66805bc..90f683f0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "1.21.0", + "version": "2.0.0", "description": "pagination ui component for react", "keywords": [ "react", @@ -57,7 +57,7 @@ "core-js": "^3.1.4", "expect.js": "0.3.x", "pre-commit": "1.x", - "rc-select": "9.x", + "rc-select": "10.x", "rc-test": "^6.0.1", "rc-tools": "6.x", "react": "^16.5.2", @@ -68,8 +68,6 @@ ], "dependencies": { "babel-runtime": "6.x", - "classnames": "^2.2.6", - "prop-types": "^15.5.7", - "react-lifecycles-compat": "^3.0.4" + "classnames": "^2.2.6" } } diff --git a/src/Options.jsx b/src/Options.jsx index 2631f262..8f9ad83a 100644 --- a/src/Options.jsx +++ b/src/Options.jsx @@ -1,23 +1,8 @@ +/* eslint react/prop-types: 0 */ import React from 'react'; -import PropTypes from 'prop-types'; import KEYCODE from './KeyCode'; class Options extends React.Component { - static propTypes = { - disabled: PropTypes.bool, - changeSize: PropTypes.func, - quickGo: PropTypes.func, - selectComponentClass: PropTypes.func, - current: PropTypes.number, - pageSizeOptions: PropTypes.arrayOf(PropTypes.string), - pageSize: PropTypes.number, - buildOptionText: PropTypes.func, - locale: PropTypes.object, - rootPrefixCls: PropTypes.string, - selectPrefixCls: PropTypes.string, - goButton: PropTypes.oneOfType([PropTypes.bool, PropTypes.node]), - }; - static defaultProps = { pageSizeOptions: ['10', '20', '30', '40'], }; diff --git a/src/Pager.jsx b/src/Pager.jsx index 39d333c2..a4958518 100644 --- a/src/Pager.jsx +++ b/src/Pager.jsx @@ -1,5 +1,5 @@ +/* eslint react/prop-types: 0 */ import React from 'react'; -import PropTypes from 'prop-types'; import classNames from 'classnames'; const Pager = (props) => { @@ -31,17 +31,4 @@ const Pager = (props) => { ); }; -Pager.propTypes = { - page: PropTypes.number, - active: PropTypes.bool, - last: PropTypes.bool, - locale: PropTypes.object, - className: PropTypes.string, - showTitle: PropTypes.bool, - rootPrefixCls: PropTypes.string, - onClick: PropTypes.func, - onKeyPress: PropTypes.func, - itemRender: PropTypes.func, -}; - export default Pager; diff --git a/src/Pagination.jsx b/src/Pagination.jsx index 33c2518e..f63c55e0 100644 --- a/src/Pagination.jsx +++ b/src/Pagination.jsx @@ -1,11 +1,10 @@ +/* eslint react/prop-types: 0 */ import React, { cloneElement, isValidElement } from 'react'; import classNames from 'classnames'; -import PropTypes from 'prop-types'; import Pager from './Pager'; import Options from './Options'; import KEYCODE from './KeyCode'; import LOCALE from './locale/zh_CN'; -import { polyfill } from 'react-lifecycles-compat'; function noop() { } @@ -29,35 +28,6 @@ function calculatePage(p, state, props) { } class Pagination extends React.Component { - static propTypes = { - disabled: PropTypes.bool, - prefixCls: PropTypes.string, - className: PropTypes.string, - current: PropTypes.number, - defaultCurrent: PropTypes.number, - total: PropTypes.number, - pageSize: PropTypes.number, - defaultPageSize: PropTypes.number, - onChange: PropTypes.func, - hideOnSinglePage: PropTypes.bool, - showSizeChanger: PropTypes.bool, - showLessItems: PropTypes.bool, - onShowSizeChange: PropTypes.func, - selectComponentClass: PropTypes.func, - showPrevNextJumpers: PropTypes.bool, - showQuickJumper: PropTypes.oneOfType([PropTypes.bool, PropTypes.object]), - showTitle: PropTypes.bool, - pageSizeOptions: PropTypes.arrayOf(PropTypes.string), - showTotal: PropTypes.func, - locale: PropTypes.object, - style: PropTypes.object, - itemRender: PropTypes.func, - prevIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.node]), - nextIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.node]), - jumpPrevIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.node]), - jumpNextIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.node]), - }; - static defaultProps = { defaultCurrent: 1, total: 0, @@ -682,6 +652,4 @@ class Pagination extends React.Component { } } -polyfill(Pagination); - export default Pagination; From d772b58266179fbe1cb37f709a7b9162b6e3cdb4 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 13:40:34 +0800 Subject: [PATCH 018/262] update HISTORY.md --- HISTORY.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/HISTORY.md b/HISTORY.md index 61ce1280..39e4ba44 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,3 +1,8 @@ +2.0.0 +================== + +* Remove prop-types and react-lifecycles-compat + 1.20.0 ================== From 98de7421a03f02b8ed43e8fc4f32dae64165a03a Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 14:16:33 +0800 Subject: [PATCH 019/262] revert to select 9.x --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 90f683f0..34f65f83 100644 --- a/package.json +++ b/package.json @@ -57,7 +57,7 @@ "core-js": "^3.1.4", "expect.js": "0.3.x", "pre-commit": "1.x", - "rc-select": "10.x", + "rc-select": "9.x", "rc-test": "^6.0.1", "rc-tools": "6.x", "react": "^16.5.2", From ace03924ac2c3e637aa5e8df18365224ce46c285 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 16:01:29 +0800 Subject: [PATCH 020/262] refactor to father --- .editorconfig | 9 - .eslintignore | 1 - .eslintrc.js | 13 + .fatherrc.js | 8 + .gitignore | 8 +- .npmignore | 29 + .prettierignore | 9 + .travis.yml | 14 +- assets/index.less | 60 +- dist/rc-pagination.css | 324 ++ dist/rc-pagination.css.map | 1 + dist/rc-pagination.js | 5857 ++++++++++++++++++++++++++++++ dist/rc-pagination.js.map | 1 + dist/rc-pagination.min.css | 324 ++ dist/rc-pagination.min.css.map | 1 + dist/rc-pagination.min.js | 2476 +++++++++++++ examples/default.html | 1 - examples/default.js | 20 +- examples/itemRender.html | 1 - examples/itemRender.js | 17 +- examples/jumper.html | 1 - examples/jumper.js | 15 +- examples/jumperWithGoButton.html | 1 - examples/jumperWithGoButton.js | 25 +- examples/lessPages.html | 1 - examples/lessPages.js | 60 +- examples/locale.html | 1 - examples/locale.js | 12 +- examples/more.html | 1 - examples/more.js | 10 +- examples/showTitle.html | 1 - examples/showTitle.js | 16 +- examples/showTotal.html | 1 - examples/showTotal.js | 41 +- examples/simple.html | 1 - examples/simple.js | 10 +- examples/sizer.html | 1 - examples/sizer.js | 11 +- examples/stupid.html | 1 - examples/stupid.js | 7 +- examples/styles.html | 1 - examples/styles.js | 8 +- index.js | 2 +- jest.config.js | 3 + package.json | 110 +- tests/helper/two-pagination.jsx | 4 +- tsconfig.json | 14 + 47 files changed, 9300 insertions(+), 233 deletions(-) delete mode 100644 .editorconfig delete mode 100644 .eslintignore create mode 100644 .eslintrc.js create mode 100644 .fatherrc.js create mode 100644 .npmignore create mode 100644 dist/rc-pagination.css create mode 100644 dist/rc-pagination.css.map create mode 100644 dist/rc-pagination.js create mode 100644 dist/rc-pagination.js.map create mode 100644 dist/rc-pagination.min.css create mode 100644 dist/rc-pagination.min.css.map create mode 100644 dist/rc-pagination.min.js delete mode 100644 examples/default.html delete mode 100644 examples/itemRender.html delete mode 100644 examples/jumper.html delete mode 100644 examples/jumperWithGoButton.html delete mode 100644 examples/lessPages.html delete mode 100644 examples/locale.html delete mode 100644 examples/more.html delete mode 100644 examples/showTitle.html delete mode 100644 examples/showTotal.html delete mode 100644 examples/simple.html delete mode 100644 examples/sizer.html delete mode 100644 examples/stupid.html delete mode 100644 examples/styles.html create mode 100644 jest.config.js create mode 100644 tsconfig.json diff --git a/.editorconfig b/.editorconfig deleted file mode 100644 index 604c94ef..00000000 --- a/.editorconfig +++ /dev/null @@ -1,9 +0,0 @@ -# top-most EditorConfig file -root = true - -# Unix-style newlines with a newline ending every file -[*.{js,css}] -end_of_line = lf -insert_final_newline = true -indent_style = space -indent_size = 2 diff --git a/.eslintignore b/.eslintignore deleted file mode 100644 index 3c3629e6..00000000 --- a/.eslintignore +++ /dev/null @@ -1 +0,0 @@ -node_modules diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 00000000..cf8ad0b5 --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,13 @@ +const base = require('@umijs/fabric/dist/eslint'); + +module.exports = { + ...base, + rules: { + ...base.rules, + 'no-template-curly-in-string': 0, + 'prefer-promise-reject-errors': 0, + 'react/no-array-index-key': 0, + 'react/sort-comp': 0, + '@typescript-eslint/no-explicit-any': 0, + }, +}; diff --git a/.fatherrc.js b/.fatherrc.js new file mode 100644 index 00000000..767a2abf --- /dev/null +++ b/.fatherrc.js @@ -0,0 +1,8 @@ +export default { + cjs: 'babel', + esm: { type: 'babel', importLibToEs: true }, + preCommit: { + eslint: true, + prettier: true, + }, +}; diff --git a/.gitignore b/.gitignore index 6ba367c1..971b25d7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,6 @@ +.storybook *.iml *.log -*.log.* .idea/ .ipr .iws @@ -21,11 +21,11 @@ Thumbs.db .build node_modules .cache -dist assets/**/*.css build lib es -.vscode -coverage/ yarn.lock +package-lock.json +coverage/ +.doc diff --git a/.npmignore b/.npmignore new file mode 100644 index 00000000..8db6ebd6 --- /dev/null +++ b/.npmignore @@ -0,0 +1,29 @@ +build/ +*.cfg +nohup.out +*.iml +.idea/ +.ipr +.iws +*~ +~* +*.diff +*.log +*.patch +*.bak +.DS_Store +Thumbs.db +.project +.*proj +.svn/ +*.swp +out/ +.build +node_modules +.cache +examples +tests +src +/index.js +.* +assets/**/*.less \ No newline at end of file diff --git a/.prettierignore b/.prettierignore index f71737da..e1497d59 100644 --- a/.prettierignore +++ b/.prettierignore @@ -1,3 +1,12 @@ +.storybook node_modules +lib +es +.cache package.json package-lock.json +public +.site +_site +.umi +.doc diff --git a/.travis.yml b/.travis.yml index fbc62f81..b0ecf870 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,19 +1,17 @@ language: node_js -sudo: false - node_js: -- 11 + - 10 script: -- | + - | if [ "$TEST_TYPE" = test ]; then - npm test + npm run coverage && \ + bash <(curl -s https://codecov.io/bash) else npm run $TEST_TYPE fi env: matrix: - - TEST_TYPE=lint - - TEST_TYPE=test - - TEST_TYPE=coverage + - TEST_TYPE=lint + - TEST_TYPE=test diff --git a/assets/index.less b/assets/index.less index 5f10c6b5..37f7272d 100644 --- a/assets/index.less +++ b/assets/index.less @@ -1,3 +1,5 @@ +@import '~rc-select/assets/index.less'; + @prefixClass: rc-pagination; .disabled-item() { @@ -31,7 +33,7 @@ } &:after { - content: " "; + content: ' '; display: block; height: 0; clear: both; @@ -84,9 +86,10 @@ } } - &-jump-prev, &-jump-next { + &-jump-prev, + &-jump-next { &:after { - content: "•••"; + content: '•••'; display: block; letter-spacing: 2px; color: #ccc; @@ -99,13 +102,12 @@ color: #2db7f5; } } - } &-jump-prev { &:hover { &:after { - content: "«"; + content: '«'; } } } @@ -113,11 +115,11 @@ &-jump-next { &:hover { &:after { - content: "»"; + content: '»'; } } } - + &-jump-prev-custom-icon, &-jump-next-custom-icon { position: relative; @@ -129,9 +131,9 @@ bottom: 0; left: 0; margin: auto; - transition: all .2s; + transition: all 0.2s; - content: "•••"; + content: '•••'; opacity: 1; display: block; letter-spacing: 2px; @@ -143,7 +145,7 @@ .custom-icon-jump-prev, .custom-icon-jump-next { opacity: 0; - transition: all .2s; + transition: all 0.2s; } &:hover { @@ -160,10 +162,15 @@ } } - &-prev, &-jump-prev, &-jump-next { + &-prev, + &-jump-prev, + &-jump-next { margin-right: 8px; } - &-prev, &-next, &-jump-prev, &-jump-next { + &-prev, + &-next, + &-jump-prev, + &-jump-next { cursor: pointer; color: #666; font-size: 10px; @@ -179,7 +186,7 @@ &-prev { a { &:after { - content: "‹"; + content: '‹'; display: block; } } @@ -188,13 +195,14 @@ &-next { a { &:after { - content: "›"; + content: '›'; display: block; } } } - &-prev, &-next { + &-prev, + &-next { border: 1px solid #d9d9d9; font-size: 18px; a { @@ -268,13 +276,15 @@ border-radius: 6px; height: 28px; user-select: none; - transition: all .3s cubic-bezier(.645,.045,.355,1); + transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); position: relative; - color: rgba(0,0,0,.65); + color: rgba(0, 0, 0, 0.65); background-color: #fff; border-color: #d9d9d9; - &:hover, &:active, &:focus { + &:hover, + &:active, + &:focus { color: #2db7f5; background-color: #fff; border-color: #2db7f5; @@ -284,7 +294,8 @@ } &-simple { - .@{prefixClass}-prev, .@{prefixClass}-next { + .@{prefixClass}-prev, + .@{prefixClass}-next { border: none; height: 24px; line-height: 24px; @@ -331,19 +342,20 @@ border-radius: 6px; height: 26px; user-select: none; - transition: all .3s cubic-bezier(.645,.045,.355,1); + transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); position: relative; - color: rgba(0,0,0,.65); + color: rgba(0, 0, 0, 0.65); background-color: #fff; border-color: #d9d9d9; - &:hover, &:active, &:focus { + &:hover, + &:active, + &:focus { color: #2db7f5; background-color: #fff; border-color: #2db7f5; } } - } } } @@ -355,4 +367,4 @@ display: none; } } -} \ No newline at end of file +} diff --git a/dist/rc-pagination.css b/dist/rc-pagination.css new file mode 100644 index 00000000..bdc703f5 --- /dev/null +++ b/dist/rc-pagination.css @@ -0,0 +1,324 @@ +.rc-pagination { + font-size: 12px; + font-family: 'Arial'; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + padding: 0; +} +.rc-pagination > li { + list-style: none; +} +.rc-pagination-total-text { + float: left; + height: 30px; + line-height: 30px; + list-style: none; + padding: 0; + margin: 0 8px 0 0; +} +.rc-pagination:after { + content: ' '; + display: block; + height: 0; + clear: both; + overflow: hidden; + visibility: hidden; +} +.rc-pagination-item { + cursor: pointer; + border-radius: 6px; + min-width: 28px; + height: 28px; + line-height: 28px; + text-align: center; + list-style: none; + float: left; + border: 1px solid #d9d9d9; + background-color: #fff; + margin-right: 8px; +} +.rc-pagination-item a { + text-decoration: none; + color: #666; +} +.rc-pagination-item:hover { + border-color: #2db7f5; +} +.rc-pagination-item:hover a { + color: #2db7f5; +} +.rc-pagination-item-disabled { + cursor: not-allowed; +} +.rc-pagination-item-disabled:hover { + border-color: #d9d9d9; +} +.rc-pagination-item-disabled:hover a { + color: #d9d9d9; +} +.rc-pagination-item-active { + background-color: #2db7f5; + border-color: #2db7f5; +} +.rc-pagination-item-active a { + color: #fff; +} +.rc-pagination-item-active:hover a { + color: #fff; +} +.rc-pagination-jump-prev:after, +.rc-pagination-jump-next:after { + content: '\2022\2022\2022'; + display: block; + letter-spacing: 2px; + color: #ccc; + font-size: 12px; + margin-top: 1px; +} +.rc-pagination-jump-prev:hover:after, +.rc-pagination-jump-next:hover:after { + color: #2db7f5; +} +.rc-pagination-jump-prev:hover:after { + content: '\AB'; +} +.rc-pagination-jump-next:hover:after { + content: '\BB'; +} +.rc-pagination-jump-prev-custom-icon, +.rc-pagination-jump-next-custom-icon { + position: relative; +} +.rc-pagination-jump-prev-custom-icon:after, +.rc-pagination-jump-next-custom-icon:after { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + margin: auto; + transition: all 0.2s; + content: '\2022\2022\2022'; + opacity: 1; + display: block; + letter-spacing: 2px; + color: #ccc; + font-size: 12px; + margin-top: 1px; +} +.rc-pagination-jump-prev-custom-icon .custom-icon-jump-prev, +.rc-pagination-jump-next-custom-icon .custom-icon-jump-prev, +.rc-pagination-jump-prev-custom-icon .custom-icon-jump-next, +.rc-pagination-jump-next-custom-icon .custom-icon-jump-next { + opacity: 0; + transition: all 0.2s; +} +.rc-pagination-jump-prev-custom-icon:hover:after, +.rc-pagination-jump-next-custom-icon:hover:after { + opacity: 0; + color: #ccc; +} +.rc-pagination-jump-prev-custom-icon:hover .custom-icon-jump-prev, +.rc-pagination-jump-next-custom-icon:hover .custom-icon-jump-prev, +.rc-pagination-jump-prev-custom-icon:hover .custom-icon-jump-next, +.rc-pagination-jump-next-custom-icon:hover .custom-icon-jump-next { + opacity: 1; + color: #2db7f5; +} +.rc-pagination-prev, +.rc-pagination-jump-prev, +.rc-pagination-jump-next { + margin-right: 8px; +} +.rc-pagination-prev, +.rc-pagination-next, +.rc-pagination-jump-prev, +.rc-pagination-jump-next { + cursor: pointer; + color: #666; + font-size: 10px; + border-radius: 6px; + list-style: none; + min-width: 28px; + height: 28px; + line-height: 28px; + float: left; + text-align: center; +} +.rc-pagination-prev a:after { + content: '\2039'; + display: block; +} +.rc-pagination-next a:after { + content: '\203A'; + display: block; +} +.rc-pagination-prev, +.rc-pagination-next { + border: 1px solid #d9d9d9; + font-size: 18px; +} +.rc-pagination-prev a, +.rc-pagination-next a { + color: #666; +} +.rc-pagination-prev a:after, +.rc-pagination-next a:after { + margin-top: -1px; +} +.rc-pagination-disabled { + cursor: not-allowed; +} +.rc-pagination-disabled a { + color: #ccc; +} +.rc-pagination-disabled .rc-pagination-item, +.rc-pagination-disabled .rc-pagination-prev, +.rc-pagination-disabled .rc-pagination-next { + cursor: not-allowed; +} +.rc-pagination-disabled .rc-pagination-item:hover, +.rc-pagination-disabled .rc-pagination-prev:hover, +.rc-pagination-disabled .rc-pagination-next:hover { + border-color: #d9d9d9; +} +.rc-pagination-disabled .rc-pagination-item:hover a, +.rc-pagination-disabled .rc-pagination-prev:hover a, +.rc-pagination-disabled .rc-pagination-next:hover a { + color: #d9d9d9; +} +.rc-pagination-disabled .rc-pagination-jump-prev, +.rc-pagination-disabled .rc-pagination-jump-next { + pointer-events: none; +} +.rc-pagination-options { + float: left; + margin-left: 15px; +} +.rc-pagination-options-size-changer { + float: left; + width: 80px; +} +.rc-pagination-options-quick-jumper { + float: left; + margin-left: 16px; + height: 28px; + line-height: 28px; +} +.rc-pagination-options-quick-jumper input { + margin: 0 8px; + box-sizing: border-box; + background-color: #fff; + border-radius: 6px; + border: 1px solid #d9d9d9; + outline: none; + padding: 3px 12px; + width: 50px; + height: 28px; +} +.rc-pagination-options-quick-jumper input:hover { + border-color: #2db7f5; +} +.rc-pagination-options-quick-jumper button { + display: inline-block; + margin: 0 8px; + font-weight: 500; + text-align: center; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + background-image: none; + border: 1px solid transparent; + white-space: nowrap; + padding: 0 15px; + font-size: 12px; + border-radius: 6px; + height: 28px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); + position: relative; + color: rgba(0, 0, 0, 0.65); + background-color: #fff; + border-color: #d9d9d9; +} +.rc-pagination-options-quick-jumper button:hover, +.rc-pagination-options-quick-jumper button:active, +.rc-pagination-options-quick-jumper button:focus { + color: #2db7f5; + background-color: #fff; + border-color: #2db7f5; +} +.rc-pagination-simple .rc-pagination-prev, +.rc-pagination-simple .rc-pagination-next { + border: none; + height: 24px; + line-height: 24px; + margin: 0; + font-size: 18px; +} +.rc-pagination-simple .rc-pagination-simple-pager { + float: left; + margin-right: 8px; + list-style: none; +} +.rc-pagination-simple .rc-pagination-simple-pager .rc-pagination-slash { + margin: 0 10px; +} +.rc-pagination-simple .rc-pagination-simple-pager input { + margin: 0 8px; + box-sizing: border-box; + background-color: #fff; + border-radius: 6px; + border: 1px solid #d9d9d9; + outline: none; + padding: 5px 8px; + min-height: 20px; +} +.rc-pagination-simple .rc-pagination-simple-pager input:hover { + border-color: #2db7f5; +} +.rc-pagination-simple .rc-pagination-simple-pager button { + display: inline-block; + margin: 0 8px; + font-weight: 500; + text-align: center; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + background-image: none; + border: 1px solid transparent; + white-space: nowrap; + padding: 0 8px; + font-size: 12px; + border-radius: 6px; + height: 26px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); + position: relative; + color: rgba(0, 0, 0, 0.65); + background-color: #fff; + border-color: #d9d9d9; +} +.rc-pagination-simple .rc-pagination-simple-pager button:hover, +.rc-pagination-simple .rc-pagination-simple-pager button:active, +.rc-pagination-simple .rc-pagination-simple-pager button:focus { + color: #2db7f5; + background-color: #fff; + border-color: #2db7f5; +} +@media only screen and (max-width: 1024px) { + .rc-pagination-item-after-jump-prev, + .rc-pagination-item-before-jump-next { + display: none; + } +} + +/*# sourceMappingURL=rc-pagination.css.map*/ diff --git a/dist/rc-pagination.css.map b/dist/rc-pagination.css.map new file mode 100644 index 00000000..a549fd26 --- /dev/null +++ b/dist/rc-pagination.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./assets/index.less"],"names":[],"mappings":"AAaA;EACE;EACA;EACA;KAAA;MAAA;UAAA;EACA;CAZD;AAQD;EAOI;CAZH;AAeC;EACE;EACA;EACA;EACA;EACA;EACA;CAbH;AAgBC;EACE;EACA;EACA;EACA;EACA;EACA;CAdH;AAiBC;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAfH;AAIC;EAcI;EACA;CAfL;AAkBG;EACE;CAhBL;AAeG;EAGI;CAfP;AAmBG;EA/DF;CA+CD;AA7CC;EACE;CA+CH;AAhDC;EAGI;CAgDL;AAcG;EACE;EACA;CAZL;AAUG;EAKI;CAZP;AAeK;EAEI;CAdT;AAqBG;;EACE;EACA;EACA;EACA;EACA;EACA;CAlBL;AAsBK;;EACE;CAnBP;AA2BK;EACE;CAzBP;AAgCK;EACE;CA9BP;AAmCC;;EAEE;CAjCH;AAmCG;;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;CAjCL;AAcC;;;;EAwBI;EACA;CAhCL;AAoCK;;EACE;EACA;CAjCP;AA8BG;;;;EAQI;EACA;CAhCP;AAqCC;;;EACE;CAjCH;AAmCC;;;;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CA9BH;AAmCK;EACE;EACA;CAjCP;AAwCK;EACE;EACA;CAtCP;AA2CC;;EACE;EACA;CAxCH;AAsCC;;EAII;CAtCL;AAuCK;;EACE;CApCP;AAyCC;EACE;CAvCH;AAsCC;EAGI;CAtCL;AAmCC;;;EA5MA;CA8KD;AA5KC;;;EACE;CAgLH;AAjLC;;;EAGI;CAmLL;AAoBC;;EAcI;CA9BL;AAkCC;EACE;EACA;CAhCH;AAiCG;EACE;EACA;CA/BL;AAkCG;EACE;EACA;EACA;EACA;CAhCL;AA4BG;EAOI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAhCP;AAkCO;EACE;CAhCT;AAcG;EAuBI;EACA;EACA;EACA;EACA;MAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;KAAA;MAAA;UAAA;EACA;EACA;EACA;EACA;EACA;CAlCP;AAoCO;;;EACE;EACA;EACA;CAhCT;AAsCC;;EAEI;EACA;EACA;EACA;EACA;CApCL;AA8BC;EAUI;EACA;EACA;CArCL;AAyBC;EAeM;CArCP;AAsBC;EAmBM;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAtCP;AAwCO;EACE;CAtCT;AASC;EAkCM;EACA;EACA;EACA;EACA;MAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;KAAA;MAAA;UAAA;EACA;EACA;EACA;EACA;EACA;CAxCP;AA0CO;;;EACE;EACA;EACA;CAtCT;AA8CD;EAEI;;IAEE;GA7CH;CACF","file":"rc-pagination.css","sourcesContent":["@prefixClass: rc-pagination;\n\n.disabled-item() {\n cursor: not-allowed;\n\n &:hover {\n border-color: #d9d9d9;\n a {\n color: #d9d9d9;\n }\n }\n}\n\n.@{prefixClass} {\n font-size: 12px;\n font-family: 'Arial';\n user-select: none;\n padding: 0;\n\n > li {\n list-style: none;\n }\n\n &-total-text {\n float: left;\n height: 30px;\n line-height: 30px;\n list-style: none;\n padding: 0;\n margin: 0 8px 0 0;\n }\n\n &:after {\n content: \" \";\n display: block;\n height: 0;\n clear: both;\n overflow: hidden;\n visibility: hidden;\n }\n\n &-item {\n cursor: pointer;\n border-radius: 6px;\n min-width: 28px;\n height: 28px;\n line-height: 28px;\n text-align: center;\n list-style: none;\n float: left;\n border: 1px solid #d9d9d9;\n background-color: #fff;\n margin-right: 8px;\n\n a {\n text-decoration: none;\n color: #666;\n }\n\n &:hover {\n border-color: #2db7f5;\n a {\n color: #2db7f5;\n }\n }\n\n &-disabled {\n .disabled-item();\n }\n\n &-active {\n background-color: #2db7f5;\n border-color: #2db7f5;\n\n a {\n color: #fff;\n }\n\n &:hover {\n a {\n color: #fff;\n }\n }\n }\n }\n\n &-jump-prev, &-jump-next {\n &:after {\n content: \"•••\";\n display: block;\n letter-spacing: 2px;\n color: #ccc;\n font-size: 12px;\n margin-top: 1px;\n }\n\n &:hover {\n &:after {\n color: #2db7f5;\n }\n }\n\n }\n\n &-jump-prev {\n &:hover {\n &:after {\n content: \"«\";\n }\n }\n }\n\n &-jump-next {\n &:hover {\n &:after {\n content: \"»\";\n }\n }\n }\n \n &-jump-prev-custom-icon,\n &-jump-next-custom-icon {\n position: relative;\n\n &:after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n margin: auto;\n transition: all .2s;\n\n content: \"•••\";\n opacity: 1;\n display: block;\n letter-spacing: 2px;\n color: #ccc;\n font-size: 12px;\n margin-top: 1px;\n }\n\n .custom-icon-jump-prev,\n .custom-icon-jump-next {\n opacity: 0;\n transition: all .2s;\n }\n\n &:hover {\n &:after {\n opacity: 0;\n color: #ccc;\n }\n\n .custom-icon-jump-prev,\n .custom-icon-jump-next {\n opacity: 1;\n color: #2db7f5;\n }\n }\n }\n\n &-prev, &-jump-prev, &-jump-next {\n margin-right: 8px;\n }\n &-prev, &-next, &-jump-prev, &-jump-next {\n cursor: pointer;\n color: #666;\n font-size: 10px;\n border-radius: 6px;\n list-style: none;\n min-width: 28px;\n height: 28px;\n line-height: 28px;\n float: left;\n text-align: center;\n }\n\n &-prev {\n a {\n &:after {\n content: \"‹\";\n display: block;\n }\n }\n }\n\n &-next {\n a {\n &:after {\n content: \"›\";\n display: block;\n }\n }\n }\n\n &-prev, &-next {\n border: 1px solid #d9d9d9;\n font-size: 18px;\n a {\n color: #666;\n &:after {\n margin-top: -1px;\n }\n }\n }\n\n &-disabled {\n cursor: not-allowed;\n a {\n color: #ccc;\n }\n\n .@{prefixClass}-item,\n .@{prefixClass}-prev,\n .@{prefixClass}-next {\n .disabled-item();\n }\n\n .@{prefixClass}-jump-prev,\n .@{prefixClass}-jump-next {\n pointer-events: none;\n }\n }\n\n &-options {\n float: left;\n margin-left: 15px;\n &-size-changer {\n float: left;\n width: 80px;\n }\n\n &-quick-jumper {\n float: left;\n margin-left: 16px;\n height: 28px;\n line-height: 28px;\n\n input {\n margin: 0 8px;\n box-sizing: border-box;\n background-color: #fff;\n border-radius: 6px;\n border: 1px solid #d9d9d9;\n outline: none;\n padding: 3px 12px;\n width: 50px;\n height: 28px;\n\n &:hover {\n border-color: #2db7f5;\n }\n }\n\n button {\n display: inline-block;\n margin: 0 8px;\n font-weight: 500;\n text-align: center;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 0 15px;\n font-size: 12px;\n border-radius: 6px;\n height: 28px;\n user-select: none;\n transition: all .3s cubic-bezier(.645,.045,.355,1);\n position: relative;\n color: rgba(0,0,0,.65);\n background-color: #fff;\n border-color: #d9d9d9;\n\n &:hover, &:active, &:focus {\n color: #2db7f5;\n background-color: #fff;\n border-color: #2db7f5;\n }\n }\n }\n }\n\n &-simple {\n .@{prefixClass}-prev, .@{prefixClass}-next {\n border: none;\n height: 24px;\n line-height: 24px;\n margin: 0;\n font-size: 18px;\n }\n\n .@{prefixClass}-simple-pager {\n float: left;\n margin-right: 8px;\n list-style: none;\n\n .@{prefixClass}-slash {\n margin: 0 10px;\n }\n\n input {\n margin: 0 8px;\n box-sizing: border-box;\n background-color: #fff;\n border-radius: 6px;\n border: 1px solid #d9d9d9;\n outline: none;\n padding: 5px 8px;\n min-height: 20px;\n\n &:hover {\n border-color: #2db7f5;\n }\n }\n\n button {\n display: inline-block;\n margin: 0 8px;\n font-weight: 500;\n text-align: center;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 0 8px;\n font-size: 12px;\n border-radius: 6px;\n height: 26px;\n user-select: none;\n transition: all .3s cubic-bezier(.645,.045,.355,1);\n position: relative;\n color: rgba(0,0,0,.65);\n background-color: #fff;\n border-color: #d9d9d9;\n\n &:hover, &:active, &:focus {\n color: #2db7f5;\n background-color: #fff;\n border-color: #2db7f5;\n }\n }\n\n }\n }\n}\n\n@media only screen and (max-width: 1024px) {\n .@{prefixClass}-item {\n &-after-jump-prev,\n &-before-jump-next {\n display: none;\n }\n }\n}\n\n\n// WEBPACK FOOTER //\n// ./assets/index.less"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/rc-pagination.js b/dist/rc-pagination.js new file mode 100644 index 00000000..95368a9a --- /dev/null +++ b/dist/rc-pagination.js @@ -0,0 +1,5857 @@ +(function webpackUniversalModuleDefinition(root, factory) { + if (typeof exports === 'object' && typeof module === 'object') + module.exports = factory(require('react')); + else if (typeof define === 'function' && define.amd) + define(['react'], factory); + else if (typeof exports === 'object') + exports['rc-pagination'] = factory(require('react')); + else root['rc-pagination'] = factory(root['React']); +})(this, function(__WEBPACK_EXTERNAL_MODULE_33__) { + return /******/ (function(modules) { + // webpackBootstrap + /******/ // The module cache + /******/ var installedModules = {}; // The require function + /******/ + /******/ /******/ function __webpack_require__(moduleId) { + /******/ + /******/ // Check if module is in cache + /******/ if (installedModules[moduleId]) { + /******/ return installedModules[moduleId].exports; + /******/ + } // Create a new module (and put it into the cache) + /******/ /******/ var module = (installedModules[moduleId] = { + /******/ i: moduleId, + /******/ l: false, + /******/ exports: {}, + /******/ + }); // Execute the module function + /******/ + /******/ /******/ modules[moduleId].call( + module.exports, + module, + module.exports, + __webpack_require__, + ); // Flag the module as loaded + /******/ + /******/ /******/ module.l = true; // Return the exports of the module + /******/ + /******/ /******/ return module.exports; + /******/ + } // expose the modules object (__webpack_modules__) + /******/ + /******/ + /******/ /******/ __webpack_require__.m = modules; // expose the module cache + /******/ + /******/ /******/ __webpack_require__.c = installedModules; // identity function for calling harmony imports with the correct context + /******/ + /******/ /******/ __webpack_require__.i = function(value) { + return value; + }; // define getter function for harmony exports + /******/ + /******/ /******/ __webpack_require__.d = function(exports, name, getter) { + /******/ if (!__webpack_require__.o(exports, name)) { + /******/ Object.defineProperty(exports, name, { + /******/ configurable: false, + /******/ enumerable: true, + /******/ get: getter, + /******/ + }); + /******/ + } + /******/ + }; // getDefaultExport function for compatibility with non-harmony modules + /******/ + /******/ /******/ __webpack_require__.n = function(module) { + /******/ var getter = + module && module.__esModule + ? /******/ function getDefault() { + return module['default']; + } + : /******/ function getModuleExports() { + return module; + }; + /******/ __webpack_require__.d(getter, 'a', getter); + /******/ return getter; + /******/ + }; // Object.prototype.hasOwnProperty.call + /******/ + /******/ /******/ __webpack_require__.o = function(object, property) { + return Object.prototype.hasOwnProperty.call(object, property); + }; // __webpack_public_path__ + /******/ + /******/ /******/ __webpack_require__.p = ''; // Load entry module and return exports + /******/ + /******/ /******/ return __webpack_require__((__webpack_require__.s = 107)); + /******/ + })( + /************************************************************************/ + /******/ [ + /* 0 */ + /***/ function(module, exports) { + var core = (module.exports = { version: '2.6.11' }); + if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef + + /***/ + }, + /* 1 */ + /***/ function(module, exports, __webpack_require__) { + // Thank's IE8 for his funny defineProperty + module.exports = !__webpack_require__(11)(function() { + return ( + Object.defineProperty({}, 'a', { + get: function() { + return 7; + }, + }).a != 7 + ); + }); + + /***/ + }, + /* 2 */ + /***/ function(module, exports) { + // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 + var global = (module.exports = + typeof window != 'undefined' && window.Math == Math + ? window + : typeof self != 'undefined' && self.Math == Math + ? self + : // eslint-disable-next-line no-new-func + Function('return this')()); + if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef + + /***/ + }, + /* 3 */ + /***/ function(module, exports) { + var hasOwnProperty = {}.hasOwnProperty; + module.exports = function(it, key) { + return hasOwnProperty.call(it, key); + }; + + /***/ + }, + /* 4 */ + /***/ function(module, exports, __webpack_require__) { + var anObject = __webpack_require__(10); + var IE8_DOM_DEFINE = __webpack_require__(46); + var toPrimitive = __webpack_require__(28); + var dP = Object.defineProperty; + + exports.f = __webpack_require__(1) + ? Object.defineProperty + : function defineProperty(O, P, Attributes) { + anObject(O); + P = toPrimitive(P, true); + anObject(Attributes); + if (IE8_DOM_DEFINE) + try { + return dP(O, P, Attributes); + } catch (e) { + /* empty */ + } + if ('get' in Attributes || 'set' in Attributes) + throw TypeError('Accessors not supported!'); + if ('value' in Attributes) O[P] = Attributes.value; + return O; + }; + + /***/ + }, + /* 5 */ + /***/ function(module, exports, __webpack_require__) { + var global = __webpack_require__(2); + var core = __webpack_require__(0); + var ctx = __webpack_require__(44); + var hide = __webpack_require__(6); + var has = __webpack_require__(3); + var PROTOTYPE = 'prototype'; + + var $export = function(type, name, source) { + var IS_FORCED = type & $export.F; + var IS_GLOBAL = type & $export.G; + var IS_STATIC = type & $export.S; + var IS_PROTO = type & $export.P; + var IS_BIND = type & $export.B; + var IS_WRAP = type & $export.W; + var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); + var expProto = exports[PROTOTYPE]; + var target = IS_GLOBAL + ? global + : IS_STATIC + ? global[name] + : (global[name] || {})[PROTOTYPE]; + var key, own, out; + if (IS_GLOBAL) source = name; + for (key in source) { + // contains in native + own = !IS_FORCED && target && target[key] !== undefined; + if (own && has(exports, key)) continue; + // export native or passed + out = own ? target[key] : source[key]; + // prevent global pollution for namespaces + exports[key] = + IS_GLOBAL && typeof target[key] != 'function' + ? source[key] + : // bind timers to global for call from export context + IS_BIND && own + ? ctx(out, global) + : // wrap global constructors for prevent change them in library + IS_WRAP && target[key] == out + ? (function(C) { + var F = function(a, b, c) { + if (this instanceof C) { + switch (arguments.length) { + case 0: + return new C(); + case 1: + return new C(a); + case 2: + return new C(a, b); + } + return new C(a, b, c); + } + return C.apply(this, arguments); + }; + F[PROTOTYPE] = C[PROTOTYPE]; + return F; + // make static versions for prototype methods + })(out) + : IS_PROTO && typeof out == 'function' + ? ctx(Function.call, out) + : out; + // export proto methods to core.%CONSTRUCTOR%.methods.%NAME% + if (IS_PROTO) { + (exports.virtual || (exports.virtual = {}))[key] = out; + // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME% + if (type & $export.R && expProto && !expProto[key]) + hide(expProto, key, out); + } + } + }; + // type bitmap + $export.F = 1; // forced + $export.G = 2; // global + $export.S = 4; // static + $export.P = 8; // proto + $export.B = 16; // bind + $export.W = 32; // wrap + $export.U = 64; // safe + $export.R = 128; // real proto method for `library` + module.exports = $export; + + /***/ + }, + /* 6 */ + /***/ function(module, exports, __webpack_require__) { + var dP = __webpack_require__(4); + var createDesc = __webpack_require__(16); + module.exports = __webpack_require__(1) + ? function(object, key, value) { + return dP.f(object, key, createDesc(1, value)); + } + : function(object, key, value) { + object[key] = value; + return object; + }; + + /***/ + }, + /* 7 */ + /***/ function(module, exports) { + module.exports = function(it) { + return typeof it === 'object' + ? it !== null + : typeof it === 'function'; + }; + + /***/ + }, + /* 8 */ + /***/ function(module, exports, __webpack_require__) { + // to indexed object, toObject with fallback for non-array-like ES3 strings + var IObject = __webpack_require__(47); + var defined = __webpack_require__(18); + module.exports = function(it) { + return IObject(defined(it)); + }; + + /***/ + }, + /* 9 */ + /***/ function(module, exports, __webpack_require__) { + var store = __webpack_require__(25)('wks'); + var uid = __webpack_require__(17); + var Symbol = __webpack_require__(2).Symbol; + var USE_SYMBOL = typeof Symbol == 'function'; + + var $exports = (module.exports = function(name) { + return ( + store[name] || + (store[name] = + (USE_SYMBOL && Symbol[name]) || + (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)) + ); + }); + + $exports.store = store; + + /***/ + }, + /* 10 */ + /***/ function(module, exports, __webpack_require__) { + var isObject = __webpack_require__(7); + module.exports = function(it) { + if (!isObject(it)) throw TypeError(it + ' is not an object!'); + return it; + }; + + /***/ + }, + /* 11 */ + /***/ function(module, exports) { + module.exports = function(exec) { + try { + return !!exec(); + } catch (e) { + return true; + } + }; + + /***/ + }, + /* 12 */ + /***/ function(module, exports) { + // shim for using process in browser + var process = (module.exports = {}); + + // cached from whatever global is present so that test runners that stub it + // don't break things. But we need to wrap it in a try catch in case it is + // wrapped in strict mode code which doesn't define any globals. It's inside a + // function because try/catches deoptimize in certain engines. + + var cachedSetTimeout; + var cachedClearTimeout; + + function defaultSetTimout() { + throw new Error('setTimeout has not been defined'); + } + function defaultClearTimeout() { + throw new Error('clearTimeout has not been defined'); + } + (function() { + try { + if (typeof setTimeout === 'function') { + cachedSetTimeout = setTimeout; + } else { + cachedSetTimeout = defaultSetTimout; + } + } catch (e) { + cachedSetTimeout = defaultSetTimout; + } + try { + if (typeof clearTimeout === 'function') { + cachedClearTimeout = clearTimeout; + } else { + cachedClearTimeout = defaultClearTimeout; + } + } catch (e) { + cachedClearTimeout = defaultClearTimeout; + } + })(); + function runTimeout(fun) { + if (cachedSetTimeout === setTimeout) { + //normal enviroments in sane situations + return setTimeout(fun, 0); + } + // if setTimeout wasn't available but was latter defined + if ( + (cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && + setTimeout + ) { + cachedSetTimeout = setTimeout; + return setTimeout(fun, 0); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedSetTimeout(fun, 0); + } catch (e) { + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedSetTimeout.call(null, fun, 0); + } catch (e) { + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error + return cachedSetTimeout.call(this, fun, 0); + } + } + } + function runClearTimeout(marker) { + if (cachedClearTimeout === clearTimeout) { + //normal enviroments in sane situations + return clearTimeout(marker); + } + // if clearTimeout wasn't available but was latter defined + if ( + (cachedClearTimeout === defaultClearTimeout || + !cachedClearTimeout) && + clearTimeout + ) { + cachedClearTimeout = clearTimeout; + return clearTimeout(marker); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedClearTimeout(marker); + } catch (e) { + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedClearTimeout.call(null, marker); + } catch (e) { + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. + // Some versions of I.E. have different rules for clearTimeout vs setTimeout + return cachedClearTimeout.call(this, marker); + } + } + } + var queue = []; + var draining = false; + var currentQueue; + var queueIndex = -1; + + function cleanUpNextTick() { + if (!draining || !currentQueue) { + return; + } + draining = false; + if (currentQueue.length) { + queue = currentQueue.concat(queue); + } else { + queueIndex = -1; + } + if (queue.length) { + drainQueue(); + } + } + + function drainQueue() { + if (draining) { + return; + } + var timeout = runTimeout(cleanUpNextTick); + draining = true; + + var len = queue.length; + while (len) { + currentQueue = queue; + queue = []; + while (++queueIndex < len) { + if (currentQueue) { + currentQueue[queueIndex].run(); + } + } + queueIndex = -1; + len = queue.length; + } + currentQueue = null; + draining = false; + runClearTimeout(timeout); + } + + process.nextTick = function(fun) { + var args = new Array(arguments.length - 1); + if (arguments.length > 1) { + for (var i = 1; i < arguments.length; i++) { + args[i - 1] = arguments[i]; + } + } + queue.push(new Item(fun, args)); + if (queue.length === 1 && !draining) { + runTimeout(drainQueue); + } + }; + + // v8 likes predictible objects + function Item(fun, array) { + this.fun = fun; + this.array = array; + } + Item.prototype.run = function() { + this.fun.apply(null, this.array); + }; + process.title = 'browser'; + process.browser = true; + process.env = {}; + process.argv = []; + process.version = ''; // empty string to avoid regexp issues + process.versions = {}; + + function noop() {} + + process.on = noop; + process.addListener = noop; + process.once = noop; + process.off = noop; + process.removeListener = noop; + process.removeAllListeners = noop; + process.emit = noop; + process.prependListener = noop; + process.prependOnceListener = noop; + + process.listeners = function(name) { + return []; + }; + + process.binding = function(name) { + throw new Error('process.binding is not supported'); + }; + + process.cwd = function() { + return '/'; + }; + process.chdir = function(dir) { + throw new Error('process.chdir is not supported'); + }; + process.umask = function() { + return 0; + }; + + /***/ + }, + /* 13 */ + /***/ function(module, exports) { + module.exports = true; + + /***/ + }, + /* 14 */ + /***/ function(module, exports, __webpack_require__) { + // 19.1.2.14 / 15.2.3.14 Object.keys(O) + var $keys = __webpack_require__(51); + var enumBugKeys = __webpack_require__(19); + + module.exports = + Object.keys || + function keys(O) { + return $keys(O, enumBugKeys); + }; + + /***/ + }, + /* 15 */ + /***/ function(module, exports) { + exports.f = {}.propertyIsEnumerable; + + /***/ + }, + /* 16 */ + /***/ function(module, exports) { + module.exports = function(bitmap, value) { + return { + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value: value, + }; + }; + + /***/ + }, + /* 17 */ + /***/ function(module, exports) { + var id = 0; + var px = Math.random(); + module.exports = function(key) { + return 'Symbol('.concat( + key === undefined ? '' : key, + ')_', + (++id + px).toString(36), + ); + }; + + /***/ + }, + /* 18 */ + /***/ function(module, exports) { + // 7.2.1 RequireObjectCoercible(argument) + module.exports = function(it) { + if (it == undefined) throw TypeError("Can't call method on " + it); + return it; + }; + + /***/ + }, + /* 19 */ + /***/ function(module, exports) { + // IE 8- don't enum bug keys + module.exports = 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'.split( + ',', + ); + + /***/ + }, + /* 20 */ + /***/ function(module, exports) { + module.exports = {}; + + /***/ + }, + /* 21 */ + /***/ function(module, exports, __webpack_require__) { + // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) + var anObject = __webpack_require__(10); + var dPs = __webpack_require__(82); + var enumBugKeys = __webpack_require__(19); + var IE_PROTO = __webpack_require__(24)('IE_PROTO'); + var Empty = function() { + /* empty */ + }; + var PROTOTYPE = 'prototype'; + + // Create object with fake `null` prototype: use iframe Object with cleared prototype + var createDict = function() { + // Thrash, waste and sodomy: IE GC bug + var iframe = __webpack_require__(45)('iframe'); + var i = enumBugKeys.length; + var lt = '<'; + var gt = '>'; + var iframeDocument; + iframe.style.display = 'none'; + __webpack_require__(76).appendChild(iframe); + iframe.src = 'javascript:'; // eslint-disable-line no-script-url + // createDict = iframe.contentWindow.Object; + // html.removeChild(iframe); + iframeDocument = iframe.contentWindow.document; + iframeDocument.open(); + iframeDocument.write( + lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt, + ); + iframeDocument.close(); + createDict = iframeDocument.F; + while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]]; + return createDict(); + }; + + module.exports = + Object.create || + function create(O, Properties) { + var result; + if (O !== null) { + Empty[PROTOTYPE] = anObject(O); + result = new Empty(); + Empty[PROTOTYPE] = null; + // add "__proto__" for Object.getPrototypeOf polyfill + result[IE_PROTO] = O; + } else result = createDict(); + return Properties === undefined ? result : dPs(result, Properties); + }; + + /***/ + }, + /* 22 */ + /***/ function(module, exports) { + exports.f = Object.getOwnPropertySymbols; + + /***/ + }, + /* 23 */ + /***/ function(module, exports, __webpack_require__) { + var def = __webpack_require__(4).f; + var has = __webpack_require__(3); + var TAG = __webpack_require__(9)('toStringTag'); + + module.exports = function(it, tag, stat) { + if (it && !has((it = stat ? it : it.prototype), TAG)) + def(it, TAG, { configurable: true, value: tag }); + }; + + /***/ + }, + /* 24 */ + /***/ function(module, exports, __webpack_require__) { + var shared = __webpack_require__(25)('keys'); + var uid = __webpack_require__(17); + module.exports = function(key) { + return shared[key] || (shared[key] = uid(key)); + }; + + /***/ + }, + /* 25 */ + /***/ function(module, exports, __webpack_require__) { + var core = __webpack_require__(0); + var global = __webpack_require__(2); + var SHARED = '__core-js_shared__'; + var store = global[SHARED] || (global[SHARED] = {}); + + (module.exports = function(key, value) { + return store[key] || (store[key] = value !== undefined ? value : {}); + })('versions', []).push({ + version: core.version, + mode: __webpack_require__(13) ? 'pure' : 'global', + copyright: '© 2019 Denis Pushkarev (zloirock.ru)', + }); + + /***/ + }, + /* 26 */ + /***/ function(module, exports) { + // 7.1.4 ToInteger + var ceil = Math.ceil; + var floor = Math.floor; + module.exports = function(it) { + return isNaN((it = +it)) ? 0 : (it > 0 ? floor : ceil)(it); + }; + + /***/ + }, + /* 27 */ + /***/ function(module, exports, __webpack_require__) { + // 7.1.13 ToObject(argument) + var defined = __webpack_require__(18); + module.exports = function(it) { + return Object(defined(it)); + }; + + /***/ + }, + /* 28 */ + /***/ function(module, exports, __webpack_require__) { + // 7.1.1 ToPrimitive(input [, PreferredType]) + var isObject = __webpack_require__(7); + // instead of the ES6 spec version, we didn't implement @@toPrimitive case + // and the second argument - flag - preferred type is a string + module.exports = function(it, S) { + if (!isObject(it)) return it; + var fn, val; + if ( + S && + typeof (fn = it.toString) == 'function' && + !isObject((val = fn.call(it))) + ) + return val; + if ( + typeof (fn = it.valueOf) == 'function' && + !isObject((val = fn.call(it))) + ) + return val; + if ( + !S && + typeof (fn = it.toString) == 'function' && + !isObject((val = fn.call(it))) + ) + return val; + throw TypeError("Can't convert object to primitive value"); + }; + + /***/ + }, + /* 29 */ + /***/ function(module, exports, __webpack_require__) { + var global = __webpack_require__(2); + var core = __webpack_require__(0); + var LIBRARY = __webpack_require__(13); + var wksExt = __webpack_require__(30); + var defineProperty = __webpack_require__(4).f; + module.exports = function(name) { + var $Symbol = + core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {}); + if (name.charAt(0) != '_' && !(name in $Symbol)) + defineProperty($Symbol, name, { value: wksExt.f(name) }); + }; + + /***/ + }, + /* 30 */ + /***/ function(module, exports, __webpack_require__) { + exports.f = __webpack_require__(9); + + /***/ + }, + /* 31 */ + /***/ function(module, exports, __webpack_require__) { + /* WEBPACK VAR INJECTION */ (function(process) { + /** + * Copyright (c) 2013-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + + if (process.env.NODE_ENV !== 'production') { + var ReactIs = __webpack_require__(53); + + // By explicitly using `prop-types` you are opting into new development behavior. + // http://fb.me/prop-types-in-prod + var throwOnDirectAccess = true; + module.exports = __webpack_require__(103)( + ReactIs.isElement, + throwOnDirectAccess, + ); + } else { + // By explicitly using `prop-types` you are opting into new production behavior. + // http://fb.me/prop-types-in-prod + module.exports = __webpack_require__(102)(); + } + + /* WEBPACK VAR INJECTION */ + }.call(exports, __webpack_require__(12))); + + /***/ + }, + /* 32 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + /** + * Copyright (c) 2013-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + + var ReactPropTypesSecret = + 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'; + + module.exports = ReactPropTypesSecret; + + /***/ + }, + /* 33 */ + /***/ function(module, exports) { + module.exports = __WEBPACK_EXTERNAL_MODULE_33__; + + /***/ + }, + /* 34 */ + /***/ function(module, __webpack_exports__, __webpack_require__) { + 'use strict'; + /* harmony default export */ __webpack_exports__['a'] = { + ZERO: 48, + NINE: 57, + + NUMPAD_ZERO: 96, + NUMPAD_NINE: 105, + + BACKSPACE: 8, + DELETE: 46, + ENTER: 13, + + ARROW_UP: 38, + ARROW_DOWN: 40, + }; + + /***/ + }, + /* 35 */ + /***/ function(module, exports, __webpack_require__) { + module.exports = { default: __webpack_require__(68), __esModule: true }; + + /***/ + }, + /* 36 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + + exports.__esModule = true; + + exports.default = function(instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError('Cannot call a class as a function'); + } + }; + + /***/ + }, + /* 37 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + + exports.__esModule = true; + + var _defineProperty = __webpack_require__(35); + + var _defineProperty2 = _interopRequireDefault(_defineProperty); + + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; + } + + exports.default = (function() { + function defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ('value' in descriptor) descriptor.writable = true; + (0, _defineProperty2.default)(target, descriptor.key, descriptor); + } + } + + return function(Constructor, protoProps, staticProps) { + if (protoProps) defineProperties(Constructor.prototype, protoProps); + if (staticProps) defineProperties(Constructor, staticProps); + return Constructor; + }; + })(); + + /***/ + }, + /* 38 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + + exports.__esModule = true; + + var _defineProperty = __webpack_require__(35); + + var _defineProperty2 = _interopRequireDefault(_defineProperty); + + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; + } + + exports.default = function(obj, key, value) { + if (key in obj) { + (0, _defineProperty2.default)(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true, + }); + } else { + obj[key] = value; + } + + return obj; + }; + + /***/ + }, + /* 39 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + + exports.__esModule = true; + + var _setPrototypeOf = __webpack_require__(62); + + var _setPrototypeOf2 = _interopRequireDefault(_setPrototypeOf); + + var _create = __webpack_require__(61); + + var _create2 = _interopRequireDefault(_create); + + var _typeof2 = __webpack_require__(41); + + var _typeof3 = _interopRequireDefault(_typeof2); + + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; + } + + exports.default = function(subClass, superClass) { + if (typeof superClass !== 'function' && superClass !== null) { + throw new TypeError( + 'Super expression must either be null or a function, not ' + + (typeof superClass === 'undefined' + ? 'undefined' + : (0, _typeof3.default)(superClass)), + ); + } + + subClass.prototype = (0, _create2.default)( + superClass && superClass.prototype, + { + constructor: { + value: subClass, + enumerable: false, + writable: true, + configurable: true, + }, + }, + ); + if (superClass) + _setPrototypeOf2.default + ? (0, _setPrototypeOf2.default)(subClass, superClass) + : (subClass.__proto__ = superClass); + }; + + /***/ + }, + /* 40 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + + exports.__esModule = true; + + var _typeof2 = __webpack_require__(41); + + var _typeof3 = _interopRequireDefault(_typeof2); + + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; + } + + exports.default = function(self, call) { + if (!self) { + throw new ReferenceError( + "this hasn't been initialised - super() hasn't been called", + ); + } + + return call && + ((typeof call === 'undefined' + ? 'undefined' + : (0, _typeof3.default)(call)) === 'object' || + typeof call === 'function') + ? call + : self; + }; + + /***/ + }, + /* 41 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + + exports.__esModule = true; + + var _iterator = __webpack_require__(64); + + var _iterator2 = _interopRequireDefault(_iterator); + + var _symbol = __webpack_require__(63); + + var _symbol2 = _interopRequireDefault(_symbol); + + var _typeof = + typeof _symbol2.default === 'function' && + typeof _iterator2.default === 'symbol' + ? function(obj) { + return typeof obj; + } + : function(obj) { + return obj && + typeof _symbol2.default === 'function' && + obj.constructor === _symbol2.default && + obj !== _symbol2.default.prototype + ? 'symbol' + : typeof obj; + }; + + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; + } + + exports.default = + typeof _symbol2.default === 'function' && + _typeof(_iterator2.default) === 'symbol' + ? function(obj) { + return typeof obj === 'undefined' ? 'undefined' : _typeof(obj); + } + : function(obj) { + return obj && + typeof _symbol2.default === 'function' && + obj.constructor === _symbol2.default && + obj !== _symbol2.default.prototype + ? 'symbol' + : typeof obj === 'undefined' + ? 'undefined' + : _typeof(obj); + }; + + /***/ + }, + /* 42 */ + /***/ function(module, exports, __webpack_require__) { + var __WEBPACK_AMD_DEFINE_ARRAY__, + __WEBPACK_AMD_DEFINE_RESULT__; /*! + Copyright (c) 2017 Jed Watson. + Licensed under the MIT License (MIT), see + http://jedwatson.github.io/classnames +*/ + /* global define */ + + (function() { + 'use strict'; + + var hasOwn = {}.hasOwnProperty; + + function classNames() { + var classes = []; + + for (var i = 0; i < arguments.length; i++) { + var arg = arguments[i]; + if (!arg) continue; + + var argType = typeof arg; + + if (argType === 'string' || argType === 'number') { + classes.push(arg); + } else if (Array.isArray(arg) && arg.length) { + var inner = classNames.apply(null, arg); + if (inner) { + classes.push(inner); + } + } else if (argType === 'object') { + for (var key in arg) { + if (hasOwn.call(arg, key) && arg[key]) { + classes.push(key); + } + } + } + } + + return classes.join(' '); + } + + if (typeof module !== 'undefined' && module.exports) { + classNames.default = classNames; + module.exports = classNames; + } else if (true) { + // register as 'classnames', consistent with npm package name + !((__WEBPACK_AMD_DEFINE_ARRAY__ = []), + (__WEBPACK_AMD_DEFINE_RESULT__ = function() { + return classNames; + }.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)), + __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && + (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); + } else { + window.classNames = classNames; + } + })(); + + /***/ + }, + /* 43 */ + /***/ function(module, exports) { + var toString = {}.toString; + + module.exports = function(it) { + return toString.call(it).slice(8, -1); + }; + + /***/ + }, + /* 44 */ + /***/ function(module, exports, __webpack_require__) { + // optional / simple context binding + var aFunction = __webpack_require__(72); + module.exports = function(fn, that, length) { + aFunction(fn); + if (that === undefined) return fn; + switch (length) { + case 1: + return function(a) { + return fn.call(that, a); + }; + case 2: + return function(a, b) { + return fn.call(that, a, b); + }; + case 3: + return function(a, b, c) { + return fn.call(that, a, b, c); + }; + } + return function(/* ...args */) { + return fn.apply(that, arguments); + }; + }; + + /***/ + }, + /* 45 */ + /***/ function(module, exports, __webpack_require__) { + var isObject = __webpack_require__(7); + var document = __webpack_require__(2).document; + // typeof document.createElement is 'object' in old IE + var is = isObject(document) && isObject(document.createElement); + module.exports = function(it) { + return is ? document.createElement(it) : {}; + }; + + /***/ + }, + /* 46 */ + /***/ function(module, exports, __webpack_require__) { + module.exports = + !__webpack_require__(1) && + !__webpack_require__(11)(function() { + return ( + Object.defineProperty(__webpack_require__(45)('div'), 'a', { + get: function() { + return 7; + }, + }).a != 7 + ); + }); + + /***/ + }, + /* 47 */ + /***/ function(module, exports, __webpack_require__) { + // fallback for non-array-like ES3 and non-enumerable old V8 strings + var cof = __webpack_require__(43); + // eslint-disable-next-line no-prototype-builtins + module.exports = Object('z').propertyIsEnumerable(0) + ? Object + : function(it) { + return cof(it) == 'String' ? it.split('') : Object(it); + }; + + /***/ + }, + /* 48 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + + var LIBRARY = __webpack_require__(13); + var $export = __webpack_require__(5); + var redefine = __webpack_require__(52); + var hide = __webpack_require__(6); + var Iterators = __webpack_require__(20); + var $iterCreate = __webpack_require__(78); + var setToStringTag = __webpack_require__(23); + var getPrototypeOf = __webpack_require__(84); + var ITERATOR = __webpack_require__(9)('iterator'); + var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next` + var FF_ITERATOR = '@@iterator'; + var KEYS = 'keys'; + var VALUES = 'values'; + + var returnThis = function() { + return this; + }; + + module.exports = function( + Base, + NAME, + Constructor, + next, + DEFAULT, + IS_SET, + FORCED, + ) { + $iterCreate(Constructor, NAME, next); + var getMethod = function(kind) { + if (!BUGGY && kind in proto) return proto[kind]; + switch (kind) { + case KEYS: + return function keys() { + return new Constructor(this, kind); + }; + case VALUES: + return function values() { + return new Constructor(this, kind); + }; + } + return function entries() { + return new Constructor(this, kind); + }; + }; + var TAG = NAME + ' Iterator'; + var DEF_VALUES = DEFAULT == VALUES; + var VALUES_BUG = false; + var proto = Base.prototype; + var $native = + proto[ITERATOR] || + proto[FF_ITERATOR] || + (DEFAULT && proto[DEFAULT]); + var $default = $native || getMethod(DEFAULT); + var $entries = DEFAULT + ? !DEF_VALUES + ? $default + : getMethod('entries') + : undefined; + var $anyNative = NAME == 'Array' ? proto.entries || $native : $native; + var methods, key, IteratorPrototype; + // Fix native + if ($anyNative) { + IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); + if ( + IteratorPrototype !== Object.prototype && + IteratorPrototype.next + ) { + // Set @@toStringTag to native iterators + setToStringTag(IteratorPrototype, TAG, true); + // fix for some old engines + if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') + hide(IteratorPrototype, ITERATOR, returnThis); + } + } + // fix Array#{values, @@iterator}.name in V8 / FF + if (DEF_VALUES && $native && $native.name !== VALUES) { + VALUES_BUG = true; + $default = function values() { + return $native.call(this); + }; + } + // Define iterator + if ( + (!LIBRARY || FORCED) && + (BUGGY || VALUES_BUG || !proto[ITERATOR]) + ) { + hide(proto, ITERATOR, $default); + } + // Plug for library + Iterators[NAME] = $default; + Iterators[TAG] = returnThis; + if (DEFAULT) { + methods = { + values: DEF_VALUES ? $default : getMethod(VALUES), + keys: IS_SET ? $default : getMethod(KEYS), + entries: $entries, + }; + if (FORCED) + for (key in methods) { + if (!(key in proto)) redefine(proto, key, methods[key]); + } + else + $export( + $export.P + $export.F * (BUGGY || VALUES_BUG), + NAME, + methods, + ); + } + return methods; + }; + + /***/ + }, + /* 49 */ + /***/ function(module, exports, __webpack_require__) { + var pIE = __webpack_require__(15); + var createDesc = __webpack_require__(16); + var toIObject = __webpack_require__(8); + var toPrimitive = __webpack_require__(28); + var has = __webpack_require__(3); + var IE8_DOM_DEFINE = __webpack_require__(46); + var gOPD = Object.getOwnPropertyDescriptor; + + exports.f = __webpack_require__(1) + ? gOPD + : function getOwnPropertyDescriptor(O, P) { + O = toIObject(O); + P = toPrimitive(P, true); + if (IE8_DOM_DEFINE) + try { + return gOPD(O, P); + } catch (e) { + /* empty */ + } + if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]); + }; + + /***/ + }, + /* 50 */ + /***/ function(module, exports, __webpack_require__) { + // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O) + var $keys = __webpack_require__(51); + var hiddenKeys = __webpack_require__(19).concat('length', 'prototype'); + + exports.f = + Object.getOwnPropertyNames || + function getOwnPropertyNames(O) { + return $keys(O, hiddenKeys); + }; + + /***/ + }, + /* 51 */ + /***/ function(module, exports, __webpack_require__) { + var has = __webpack_require__(3); + var toIObject = __webpack_require__(8); + var arrayIndexOf = __webpack_require__(74)(false); + var IE_PROTO = __webpack_require__(24)('IE_PROTO'); + + module.exports = function(object, names) { + var O = toIObject(object); + var i = 0; + var result = []; + var key; + for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); + // Don't enum bug & hidden keys + while (names.length > i) + if (has(O, (key = names[i++]))) { + ~arrayIndexOf(result, key) || result.push(key); + } + return result; + }; + + /***/ + }, + /* 52 */ + /***/ function(module, exports, __webpack_require__) { + module.exports = __webpack_require__(6); + + /***/ + }, + /* 53 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + /* WEBPACK VAR INJECTION */ (function(process) { + if (process.env.NODE_ENV === 'production') { + module.exports = __webpack_require__(105); + } else { + module.exports = __webpack_require__(104); + } + + /* WEBPACK VAR INJECTION */ + }.call(exports, __webpack_require__(12))); + + /***/ + }, + /* 54 */ + /***/ function(module, __webpack_exports__, __webpack_require__) { + 'use strict'; + Object.defineProperty(__webpack_exports__, '__esModule', { + value: true, + }); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__Pagination__ = __webpack_require__( + 58, + ); + /* harmony reexport (binding) */ __webpack_require__.d( + __webpack_exports__, + 'default', + function() { + return __WEBPACK_IMPORTED_MODULE_0__Pagination__['a']; + }, + ); + + /***/ + }, + /* 55 */ + /***/ function(module, exports) { + // removed by extract-text-webpack-plugin + /***/ + }, + /* 56 */ + /***/ function(module, __webpack_exports__, __webpack_require__) { + 'use strict'; + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__( + 36, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__ = __webpack_require__( + 37, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__( + 40, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__( + 39, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__( + 33, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_4_react__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__( + 31, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_5_prop_types__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__KeyCode__ = __webpack_require__( + 34, + ); + + var Options = (function(_React$Component) { + __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()( + Options, + _React$Component, + ); + + function Options() { + var _ref; + + var _temp, _this, _ret; + + __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()( + this, + Options, + ); + + for ( + var _len = arguments.length, args = Array(_len), _key = 0; + _key < _len; + _key++ + ) { + args[_key] = arguments[_key]; + } + + return ( + (_ret = + ((_temp = + ((_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()( + this, + (_ref = + Options.__proto__ || + Object.getPrototypeOf(Options)).call.apply( + _ref, + [this].concat(args), + ), + )), + _this)), + (_this.state = { + goInputText: '', + }), + (_this.buildOptionText = function(value) { + return value + ' ' + _this.props.locale.items_per_page; + }), + (_this.changeSize = function(value) { + _this.props.changeSize(Number(value)); + }), + (_this.handleChange = function(e) { + _this.setState({ + goInputText: e.target.value, + }); + }), + (_this.handleBlur = function(e) { + var _this$props = _this.props, + goButton = _this$props.goButton, + quickGo = _this$props.quickGo, + rootPrefixCls = _this$props.rootPrefixCls; + + if (goButton) { + return; + } + if ( + e.relatedTarget && + (e.relatedTarget.className.indexOf( + rootPrefixCls + '-prev', + ) >= 0 || + e.relatedTarget.className.indexOf( + rootPrefixCls + '-next', + ) >= 0) + ) { + return; + } + quickGo(_this.getValidValue()); + }), + (_this.go = function(e) { + var goInputText = _this.state.goInputText; + + if (goInputText === '') { + return; + } + if ( + e.keyCode === + __WEBPACK_IMPORTED_MODULE_6__KeyCode__['a' /* default */] + .ENTER || + e.type === 'click' + ) { + _this.setState({ + goInputText: '', + }); + _this.props.quickGo(_this.getValidValue()); + } + }), + _temp)), + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()( + _this, + _ret, + ) + ); + } + + __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default()( + Options, + [ + { + key: 'getValidValue', + value: function getValidValue() { + var _state = this.state, + goInputText = _state.goInputText, + current = _state.current; + + return !goInputText || isNaN(goInputText) + ? current + : Number(goInputText); + }, + }, + { + key: 'render', + value: function render() { + var _this2 = this; + + var _props = this.props, + pageSize = _props.pageSize, + pageSizeOptions = _props.pageSizeOptions, + locale = _props.locale, + rootPrefixCls = _props.rootPrefixCls, + changeSize = _props.changeSize, + quickGo = _props.quickGo, + goButton = _props.goButton, + selectComponentClass = _props.selectComponentClass, + buildOptionText = _props.buildOptionText, + selectPrefixCls = _props.selectPrefixCls, + disabled = _props.disabled; + var goInputText = this.state.goInputText; + + var prefixCls = rootPrefixCls + '-options'; + var Select = selectComponentClass; + var changeSelect = null; + var goInput = null; + var gotoButton = null; + + if (!changeSize && !quickGo) { + return null; + } + + if (changeSize && Select) { + var options = pageSizeOptions.map(function(opt, i) { + return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( + Select.Option, + { key: i, value: opt }, + (buildOptionText || _this2.buildOptionText)(opt), + ); + }); + + changeSelect = __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( + Select, + { + disabled: disabled, + prefixCls: selectPrefixCls, + showSearch: false, + className: prefixCls + '-size-changer', + optionLabelProp: 'children', + dropdownMatchSelectWidth: false, + value: (pageSize || pageSizeOptions[0]).toString(), + onChange: this.changeSize, + getPopupContainer: function getPopupContainer( + triggerNode, + ) { + return triggerNode.parentNode; + }, + }, + options, + ); + } + + if (quickGo) { + if (goButton) { + gotoButton = + typeof goButton === 'boolean' + ? __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( + 'button', + { + type: 'button', + onClick: this.go, + onKeyUp: this.go, + disabled: disabled, + }, + locale.jump_to_confirm, + ) + : __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( + 'span', + { + onClick: this.go, + onKeyUp: this.go, + }, + goButton, + ); + } + goInput = __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( + 'div', + { className: prefixCls + '-quick-jumper' }, + locale.jump_to, + __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( + 'input', + { + disabled: disabled, + type: 'text', + value: goInputText, + onChange: this.handleChange, + onKeyUp: this.go, + onBlur: this.handleBlur, + }, + ), + locale.page, + gotoButton, + ); + } + + return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( + 'li', + { className: '' + prefixCls }, + changeSelect, + goInput, + ); + }, + }, + ], + ); + + return Options; + })(__WEBPACK_IMPORTED_MODULE_4_react___default.a.Component); + + Options.propTypes = { + disabled: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool, + changeSize: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, + quickGo: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, + selectComponentClass: + __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, + current: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.number, + pageSizeOptions: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.arrayOf( + __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, + ), + pageSize: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.number, + buildOptionText: + __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, + locale: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object, + rootPrefixCls: + __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, + selectPrefixCls: + __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, + goButton: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.oneOfType( + [ + __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool, + __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.node, + ], + ), + }; + Options.defaultProps = { + pageSizeOptions: ['10', '20', '30', '40'], + }; + + /* harmony default export */ __webpack_exports__['a'] = Options; + + /***/ + }, + /* 57 */ + /***/ function(module, __webpack_exports__, __webpack_require__) { + 'use strict'; + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty__ = __webpack_require__( + 38, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__( + 33, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_1_react__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_prop_types__ = __webpack_require__( + 31, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_prop_types___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_2_prop_types__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_classnames__ = __webpack_require__( + 42, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_classnames___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_3_classnames__, + ); + + var Pager = function Pager(props) { + var _classNames; + + var prefixCls = props.rootPrefixCls + '-item'; + var cls = __WEBPACK_IMPORTED_MODULE_3_classnames___default()( + prefixCls, + prefixCls + '-' + props.page, + ((_classNames = {}), + __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty___default()( + _classNames, + prefixCls + '-active', + props.active, + ), + __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty___default()( + _classNames, + props.className, + !!props.className, + ), + __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty___default()( + _classNames, + prefixCls + '-disabled', + !props.page, + ), + _classNames), + ); + + var handleClick = function handleClick() { + props.onClick(props.page); + }; + + var handleKeyPress = function handleKeyPress(e) { + props.onKeyPress(e, props.onClick, props.page); + }; + + return __WEBPACK_IMPORTED_MODULE_1_react___default.a.createElement( + 'li', + { + title: props.showTitle ? props.page : null, + className: cls, + onClick: handleClick, + onKeyPress: handleKeyPress, + tabIndex: '0', + }, + props.itemRender( + props.page, + 'page', + __WEBPACK_IMPORTED_MODULE_1_react___default.a.createElement( + 'a', + null, + props.page, + ), + ), + ); + }; + + Pager.propTypes = { + page: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number, + active: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.bool, + last: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.bool, + locale: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.object, + className: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.string, + showTitle: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.bool, + rootPrefixCls: + __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.string, + onClick: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.func, + onKeyPress: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.func, + itemRender: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.func, + }; + + /* harmony default export */ __webpack_exports__['a'] = Pager; + + /***/ + }, + /* 58 */ + /***/ function(module, __webpack_exports__, __webpack_require__) { + 'use strict'; + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty__ = __webpack_require__( + 38, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__ = __webpack_require__( + 65, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__( + 36, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass__ = __webpack_require__( + 37, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__( + 40, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__( + 39, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__( + 33, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_6_react__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames__ = __webpack_require__( + 42, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_7_classnames__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__( + 31, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n( + __WEBPACK_IMPORTED_MODULE_8_prop_types__, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__Pager__ = __webpack_require__( + 57, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__Options__ = __webpack_require__( + 56, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__KeyCode__ = __webpack_require__( + 34, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__locale_zh_CN__ = __webpack_require__( + 59, + ); + /* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_lifecycles_compat__ = __webpack_require__( + 106, + ); + + function noop() {} + + function isInteger(value) { + return ( + typeof value === 'number' && + isFinite(value) && + Math.floor(value) === value + ); + } + + function defaultItemRender(page, type, element) { + return element; + } + + function calculatePage(p, state, props) { + var pageSize = p; + if (typeof pageSize === 'undefined') { + pageSize = state.pageSize; + } + return Math.floor((props.total - 1) / pageSize) + 1; + } + + var Pagination = (function(_React$Component) { + __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()( + Pagination, + _React$Component, + ); + + function Pagination(props) { + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()( + this, + Pagination, + ); + + var _this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()( + this, + (Pagination.__proto__ || Object.getPrototypeOf(Pagination)).call( + this, + props, + ), + ); + + _initialiseProps.call(_this); + + var hasOnChange = props.onChange !== noop; + var hasCurrent = 'current' in props; + if (hasCurrent && !hasOnChange) { + console.warn( + 'Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.', + ); // eslint-disable-line + } + + var current = props.defaultCurrent; + if ('current' in props) { + current = props.current; + } + + var pageSize = props.defaultPageSize; + if ('pageSize' in props) { + pageSize = props.pageSize; + } + + current = Math.min( + current, + calculatePage(pageSize, undefined, props), + ); + + _this.state = { + current: current, + currentInputValue: current, + pageSize: pageSize, + }; + return _this; + } + + __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass___default()( + Pagination, + [ + { + key: 'componentDidUpdate', + value: function componentDidUpdate(prevProps, prevState) { + // When current page change, fix focused style of prev item + // A hacky solution of https://github.com/ant-design/ant-design/issues/8948 + var prefixCls = this.props.prefixCls; + + if ( + prevState.current !== this.state.current && + this.paginationNode + ) { + var lastCurrentNode = this.paginationNode.querySelector( + '.' + prefixCls + '-item-' + prevState.current, + ); + if ( + lastCurrentNode && + document.activeElement === lastCurrentNode + ) { + lastCurrentNode.blur(); + } + } + }, + }, + { + key: 'getValidValue', + value: function getValidValue(e) { + var inputValue = e.target.value; + var allPages = calculatePage( + undefined, + this.state, + this.props, + ); + var currentInputValue = this.state.currentInputValue; + + var value = void 0; + if (inputValue === '') { + value = inputValue; + } else if (isNaN(Number(inputValue))) { + value = currentInputValue; + } else if (inputValue >= allPages) { + value = allPages; + } else { + value = Number(inputValue); + } + return value; + }, + }, + { + key: 'renderPrev', + value: function renderPrev(prevPage) { + var _props = this.props, + prevIcon = _props.prevIcon, + itemRender = _props.itemRender; + + var prevButton = itemRender( + prevPage, + 'prev', + this.getItemIcon(prevIcon), + ); + var disabled = !this.hasPrev(); + return __webpack_require__.i( + __WEBPACK_IMPORTED_MODULE_6_react__['isValidElement'], + )(prevButton) + ? __webpack_require__.i( + __WEBPACK_IMPORTED_MODULE_6_react__['cloneElement'], + )(prevButton, { disabled: disabled }) + : prevButton; + }, + }, + { + key: 'renderNext', + value: function renderNext(nextPage) { + var _props2 = this.props, + nextIcon = _props2.nextIcon, + itemRender = _props2.itemRender; + + var nextButton = itemRender( + nextPage, + 'next', + this.getItemIcon(nextIcon), + ); + var disabled = !this.hasNext(); + return __webpack_require__.i( + __WEBPACK_IMPORTED_MODULE_6_react__['isValidElement'], + )(nextButton) + ? __webpack_require__.i( + __WEBPACK_IMPORTED_MODULE_6_react__['cloneElement'], + )(nextButton, { disabled: disabled }) + : nextButton; + }, + }, + { + key: 'render', + value: function render() { + var _props3 = this.props, + prefixCls = _props3.prefixCls, + className = _props3.className, + disabled = _props3.disabled; + + // When hideOnSinglePage is true and there is only 1 page, hide the pager + + if ( + this.props.hideOnSinglePage === true && + this.props.total <= this.state.pageSize + ) { + return null; + } + + var props = this.props; + var locale = props.locale; + + var allPages = calculatePage( + undefined, + this.state, + this.props, + ); + var pagerList = []; + var jumpPrev = null; + var jumpNext = null; + var firstPager = null; + var lastPager = null; + var gotoButton = null; + + var goButton = + props.showQuickJumper && props.showQuickJumper.goButton; + var pageBufferSize = props.showLessItems ? 1 : 2; + var _state = this.state, + current = _state.current, + pageSize = _state.pageSize; + + var prevPage = current - 1 > 0 ? current - 1 : 0; + var nextPage = + current + 1 < allPages ? current + 1 : allPages; + + var dataOrAriaAttributeProps = Object.keys(props).reduce( + function(prev, key) { + if ( + key.substr(0, 5) === 'data-' || + key.substr(0, 5) === 'aria-' || + key === 'role' + ) { + prev[key] = props[key]; + } + return prev; + }, + {}, + ); + + if (props.simple) { + if (goButton) { + if (typeof goButton === 'boolean') { + gotoButton = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'button', + { + type: 'button', + onClick: this.handleGoTO, + onKeyUp: this.handleGoTO, + }, + locale.jump_to_confirm, + ); + } else { + gotoButton = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'span', + { + onClick: this.handleGoTO, + onKeyUp: this.handleGoTO, + }, + goButton, + ); + } + gotoButton = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'li', + { + title: props.showTitle + ? '' + + locale.jump_to + + this.state.current + + '/' + + allPages + : null, + className: prefixCls + '-simple-pager', + }, + gotoButton, + ); + } + + return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'ul', + __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()( + { + className: + prefixCls + + ' ' + + prefixCls + + '-simple ' + + props.className, + style: props.style, + ref: this.savePaginationNode, + }, + dataOrAriaAttributeProps, + ), + __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'li', + { + title: props.showTitle ? locale.prev_page : null, + onClick: this.prev, + tabIndex: this.hasPrev() ? 0 : null, + onKeyPress: this.runIfEnterPrev, + className: + (this.hasPrev() ? '' : prefixCls + '-disabled') + + ' ' + + prefixCls + + '-prev', + 'aria-disabled': !this.hasPrev(), + }, + this.renderPrev(prevPage), + ), + __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'li', + { + title: props.showTitle + ? this.state.current + '/' + allPages + : null, + className: prefixCls + '-simple-pager', + }, + __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'input', + { + type: 'text', + value: this.state.currentInputValue, + onKeyDown: this.handleKeyDown, + onKeyUp: this.handleKeyUp, + onChange: this.handleKeyUp, + size: '3', + }, + ), + __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'span', + { className: prefixCls + '-slash' }, + '/', + ), + allPages, + ), + __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'li', + { + title: props.showTitle ? locale.next_page : null, + onClick: this.next, + tabIndex: this.hasPrev() ? 0 : null, + onKeyPress: this.runIfEnterNext, + className: + (this.hasNext() ? '' : prefixCls + '-disabled') + + ' ' + + prefixCls + + '-next', + 'aria-disabled': !this.hasNext(), + }, + this.renderNext(nextPage), + ), + gotoButton, + ); + } + + if (allPages <= 5 + pageBufferSize * 2) { + var pagerProps = { + locale: locale, + rootPrefixCls: prefixCls, + onClick: this.handleChange, + onKeyPress: this.runIfEnter, + showTitle: props.showTitle, + itemRender: props.itemRender, + }; + if (!allPages) { + pagerList.push( + __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + __WEBPACK_IMPORTED_MODULE_9__Pager__[ + 'a' /* default */ + ], + __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()( + {}, + pagerProps, + { + key: 'noPager', + page: allPages, + className: prefixCls + '-disabled', + }, + ), + ), + ); + } + for (var i = 1; i <= allPages; i++) { + var active = this.state.current === i; + pagerList.push( + __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + __WEBPACK_IMPORTED_MODULE_9__Pager__[ + 'a' /* default */ + ], + __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()( + {}, + pagerProps, + { + key: i, + page: i, + active: active, + }, + ), + ), + ); + } + } else { + var prevItemTitle = props.showLessItems + ? locale.prev_3 + : locale.prev_5; + var nextItemTitle = props.showLessItems + ? locale.next_3 + : locale.next_5; + if (props.showPrevNextJumpers) { + var jumpPrevClassString = prefixCls + '-jump-prev'; + if (props.jumpPrevIcon) { + jumpPrevClassString += + ' ' + prefixCls + '-jump-prev-custom-icon'; + } + jumpPrev = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'li', + { + title: props.showTitle ? prevItemTitle : null, + key: 'prev', + onClick: this.jumpPrev, + tabIndex: '0', + onKeyPress: this.runIfEnterJumpPrev, + className: jumpPrevClassString, + }, + props.itemRender( + this.getJumpPrevPage(), + 'jump-prev', + this.getItemIcon(props.jumpPrevIcon), + ), + ); + var jumpNextClassString = prefixCls + '-jump-next'; + if (props.jumpNextIcon) { + jumpNextClassString += + ' ' + prefixCls + '-jump-next-custom-icon'; + } + jumpNext = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'li', + { + title: props.showTitle ? nextItemTitle : null, + key: 'next', + tabIndex: '0', + onClick: this.jumpNext, + onKeyPress: this.runIfEnterJumpNext, + className: jumpNextClassString, + }, + props.itemRender( + this.getJumpNextPage(), + 'jump-next', + this.getItemIcon(props.jumpNextIcon), + ), + ); + } + lastPager = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + __WEBPACK_IMPORTED_MODULE_9__Pager__['a' /* default */], + { + locale: props.locale, + last: true, + rootPrefixCls: prefixCls, + onClick: this.handleChange, + onKeyPress: this.runIfEnter, + key: allPages, + page: allPages, + active: false, + showTitle: props.showTitle, + itemRender: props.itemRender, + }, + ); + firstPager = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + __WEBPACK_IMPORTED_MODULE_9__Pager__['a' /* default */], + { + locale: props.locale, + rootPrefixCls: prefixCls, + onClick: this.handleChange, + onKeyPress: this.runIfEnter, + key: 1, + page: 1, + active: false, + showTitle: props.showTitle, + itemRender: props.itemRender, + }, + ); + + var left = Math.max(1, current - pageBufferSize); + var right = Math.min(current + pageBufferSize, allPages); + + if (current - 1 <= pageBufferSize) { + right = 1 + pageBufferSize * 2; + } + + if (allPages - current <= pageBufferSize) { + left = allPages - pageBufferSize * 2; + } + + for (var _i = left; _i <= right; _i++) { + var _active = current === _i; + pagerList.push( + __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + __WEBPACK_IMPORTED_MODULE_9__Pager__[ + 'a' /* default */ + ], + { + locale: props.locale, + rootPrefixCls: prefixCls, + onClick: this.handleChange, + onKeyPress: this.runIfEnter, + key: _i, + page: _i, + active: _active, + showTitle: props.showTitle, + itemRender: props.itemRender, + }, + ), + ); + } + + if ( + current - 1 >= pageBufferSize * 2 && + current !== 1 + 2 + ) { + pagerList[0] = __WEBPACK_IMPORTED_MODULE_6_react___default.a.cloneElement( + pagerList[0], + { + className: prefixCls + '-item-after-jump-prev', + }, + ); + pagerList.unshift(jumpPrev); + } + if ( + allPages - current >= pageBufferSize * 2 && + current !== allPages - 2 + ) { + pagerList[ + pagerList.length - 1 + ] = __WEBPACK_IMPORTED_MODULE_6_react___default.a.cloneElement( + pagerList[pagerList.length - 1], + { + className: prefixCls + '-item-before-jump-next', + }, + ); + pagerList.push(jumpNext); + } + + if (left !== 1) { + pagerList.unshift(firstPager); + } + if (right !== allPages) { + pagerList.push(lastPager); + } + } + + var totalText = null; + + if (props.showTotal) { + totalText = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'li', + { className: prefixCls + '-total-text' }, + props.showTotal(props.total, [ + props.total === 0 ? 0 : (current - 1) * pageSize + 1, + current * pageSize > props.total + ? props.total + : current * pageSize, + ]), + ); + } + var prevDisabled = !this.hasPrev() || !allPages; + var nextDisabled = !this.hasNext() || !allPages; + return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'ul', + __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()( + { + className: __WEBPACK_IMPORTED_MODULE_7_classnames___default()( + prefixCls, + className, + __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty___default()( + {}, + prefixCls + '-disabled', + disabled, + ), + ), + style: props.style, + unselectable: 'unselectable', + ref: this.savePaginationNode, + }, + dataOrAriaAttributeProps, + ), + totalText, + __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'li', + { + title: props.showTitle ? locale.prev_page : null, + onClick: this.prev, + tabIndex: prevDisabled ? null : 0, + onKeyPress: this.runIfEnterPrev, + className: + (!prevDisabled ? '' : prefixCls + '-disabled') + + ' ' + + prefixCls + + '-prev', + 'aria-disabled': prevDisabled, + }, + this.renderPrev(prevPage), + ), + pagerList, + __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'li', + { + title: props.showTitle ? locale.next_page : null, + onClick: this.next, + tabIndex: nextDisabled ? null : 0, + onKeyPress: this.runIfEnterNext, + className: + (!nextDisabled ? '' : prefixCls + '-disabled') + + ' ' + + prefixCls + + '-next', + 'aria-disabled': nextDisabled, + }, + this.renderNext(nextPage), + ), + __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + __WEBPACK_IMPORTED_MODULE_10__Options__[ + 'a' /* default */ + ], + { + disabled: disabled, + locale: props.locale, + rootPrefixCls: prefixCls, + selectComponentClass: props.selectComponentClass, + selectPrefixCls: props.selectPrefixCls, + changeSize: this.props.showSizeChanger + ? this.changePageSize + : null, + current: this.state.current, + pageSize: this.state.pageSize, + pageSizeOptions: this.props.pageSizeOptions, + quickGo: this.shouldDisplayQuickJumper() + ? this.handleChange + : null, + goButton: goButton, + }, + ), + ); + }, + }, + ], + [ + { + key: 'getDerivedStateFromProps', + value: function getDerivedStateFromProps(props, prevState) { + var newState = {}; + + if ('current' in props) { + newState.current = props.current; + + if (props.current !== prevState.current) { + newState.currentInputValue = newState.current; + } + } + + if ( + 'pageSize' in props && + props.pageSize !== prevState.pageSize + ) { + var current = prevState.current; + var newCurrent = calculatePage( + props.pageSize, + prevState, + props, + ); + current = current > newCurrent ? newCurrent : current; + + if (!('current' in props)) { + newState.current = current; + newState.currentInputValue = current; + } + newState.pageSize = props.pageSize; + } + + return newState; + }, + + /** + * computed icon node that need to be rendered. + * @param {React.ReactNode | React.ComponentType} icon received icon. + * @returns {React.ReactNode} + */ + }, + ], + ); + + return Pagination; + })(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); + + Pagination.propTypes = { + disabled: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, + prefixCls: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string, + className: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string, + current: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.number, + defaultCurrent: + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.number, + total: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.number, + pageSize: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.number, + defaultPageSize: + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.number, + onChange: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, + hideOnSinglePage: + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, + showSizeChanger: + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, + showLessItems: + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, + onShowSizeChange: + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, + selectComponentClass: + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, + showPrevNextJumpers: + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, + showQuickJumper: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.oneOfType( + [ + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.object, + ], + ), + showTitle: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, + pageSizeOptions: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.arrayOf( + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string, + ), + showTotal: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, + locale: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.object, + style: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.object, + itemRender: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, + prevIcon: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.oneOfType( + [ + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.node, + ], + ), + nextIcon: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.oneOfType( + [ + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.node, + ], + ), + jumpPrevIcon: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.oneOfType( + [ + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.node, + ], + ), + jumpNextIcon: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.oneOfType( + [ + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, + __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.node, + ], + ), + }; + Pagination.defaultProps = { + defaultCurrent: 1, + total: 0, + defaultPageSize: 10, + onChange: noop, + className: '', + selectPrefixCls: 'rc-select', + prefixCls: 'rc-pagination', + selectComponentClass: null, + hideOnSinglePage: false, + showPrevNextJumpers: true, + showQuickJumper: false, + showSizeChanger: false, + showLessItems: false, + showTitle: true, + onShowSizeChange: noop, + locale: + __WEBPACK_IMPORTED_MODULE_12__locale_zh_CN__['a' /* default */], + style: {}, + itemRender: defaultItemRender, + }; + + var _initialiseProps = function _initialiseProps() { + var _this2 = this; + + this.getJumpPrevPage = function() { + return Math.max( + 1, + _this2.state.current - (_this2.props.showLessItems ? 3 : 5), + ); + }; + + this.getJumpNextPage = function() { + return Math.min( + calculatePage(undefined, _this2.state, _this2.props), + _this2.state.current + (_this2.props.showLessItems ? 3 : 5), + ); + }; + + this.getItemIcon = function(icon) { + var prefixCls = _this2.props.prefixCls; + + var iconNode = + icon || + __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement('a', { + className: prefixCls + '-item-link', + }); + if (typeof icon === 'function') { + iconNode = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + icon, + __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()( + {}, + _this2.props, + ), + ); + } + return iconNode; + }; + + this.savePaginationNode = function(node) { + _this2.paginationNode = node; + }; + + this.isValid = function(page) { + return isInteger(page) && page !== _this2.state.current; + }; + + this.shouldDisplayQuickJumper = function() { + var _props4 = _this2.props, + showQuickJumper = _props4.showQuickJumper, + pageSize = _props4.pageSize, + total = _props4.total; + + if (total <= pageSize) { + return false; + } + return showQuickJumper; + }; + + this.handleKeyDown = function(e) { + if ( + e.keyCode === + __WEBPACK_IMPORTED_MODULE_11__KeyCode__['a' /* default */] + .ARROW_UP || + e.keyCode === + __WEBPACK_IMPORTED_MODULE_11__KeyCode__['a' /* default */] + .ARROW_DOWN + ) { + e.preventDefault(); + } + }; + + this.handleKeyUp = function(e) { + var value = _this2.getValidValue(e); + var currentInputValue = _this2.state.currentInputValue; + + if (value !== currentInputValue) { + _this2.setState({ + currentInputValue: value, + }); + } + if ( + e.keyCode === + __WEBPACK_IMPORTED_MODULE_11__KeyCode__['a' /* default */].ENTER + ) { + _this2.handleChange(value); + } else if ( + e.keyCode === + __WEBPACK_IMPORTED_MODULE_11__KeyCode__['a' /* default */] + .ARROW_UP + ) { + _this2.handleChange(value - 1); + } else if ( + e.keyCode === + __WEBPACK_IMPORTED_MODULE_11__KeyCode__['a' /* default */] + .ARROW_DOWN + ) { + _this2.handleChange(value + 1); + } + }; + + this.changePageSize = function(size) { + var current = _this2.state.current; + var newCurrent = calculatePage(size, _this2.state, _this2.props); + current = current > newCurrent ? newCurrent : current; + // fix the issue: + // Once 'total' is 0, 'current' in 'onShowSizeChange' is 0, which is not correct. + if (newCurrent === 0) { + current = _this2.state.current; + } + + if (typeof size === 'number') { + if (!('pageSize' in _this2.props)) { + _this2.setState({ + pageSize: size, + }); + } + if (!('current' in _this2.props)) { + _this2.setState({ + current: current, + currentInputValue: current, + }); + } + } + _this2.props.onShowSizeChange(current, size); + }; + + this.handleChange = function(p) { + var disabled = _this2.props.disabled; + + var page = p; + if (_this2.isValid(page) && !disabled) { + var currentPage = calculatePage( + undefined, + _this2.state, + _this2.props, + ); + if (page > currentPage) { + page = currentPage; + } else if (page < 1) { + page = 1; + } + + if (!('current' in _this2.props)) { + _this2.setState({ + current: page, + currentInputValue: page, + }); + } + + var pageSize = _this2.state.pageSize; + _this2.props.onChange(page, pageSize); + + return page; + } + + return _this2.state.current; + }; + + this.prev = function() { + if (_this2.hasPrev()) { + _this2.handleChange(_this2.state.current - 1); + } + }; + + this.next = function() { + if (_this2.hasNext()) { + _this2.handleChange(_this2.state.current + 1); + } + }; + + this.jumpPrev = function() { + _this2.handleChange(_this2.getJumpPrevPage()); + }; + + this.jumpNext = function() { + _this2.handleChange(_this2.getJumpNextPage()); + }; + + this.hasPrev = function() { + return _this2.state.current > 1; + }; + + this.hasNext = function() { + return ( + _this2.state.current < + calculatePage(undefined, _this2.state, _this2.props) + ); + }; + + this.runIfEnter = function(event, callback) { + for ( + var _len = arguments.length, + restParams = Array(_len > 2 ? _len - 2 : 0), + _key = 2; + _key < _len; + _key++ + ) { + restParams[_key - 2] = arguments[_key]; + } + + if (event.key === 'Enter' || event.charCode === 13) { + callback.apply(undefined, restParams); + } + }; + + this.runIfEnterPrev = function(e) { + _this2.runIfEnter(e, _this2.prev); + }; + + this.runIfEnterNext = function(e) { + _this2.runIfEnter(e, _this2.next); + }; + + this.runIfEnterJumpPrev = function(e) { + _this2.runIfEnter(e, _this2.jumpPrev); + }; + + this.runIfEnterJumpNext = function(e) { + _this2.runIfEnter(e, _this2.jumpNext); + }; + + this.handleGoTO = function(e) { + if ( + e.keyCode === + __WEBPACK_IMPORTED_MODULE_11__KeyCode__['a' /* default */] + .ENTER || + e.type === 'click' + ) { + _this2.handleChange(_this2.state.currentInputValue); + } + }; + }; + + __webpack_require__.i( + __WEBPACK_IMPORTED_MODULE_13_react_lifecycles_compat__[ + 'a' /* polyfill */ + ], + )(Pagination); + + /* harmony default export */ __webpack_exports__['a'] = Pagination; + + /***/ + }, + /* 59 */ + /***/ function(module, __webpack_exports__, __webpack_require__) { + 'use strict'; + /* harmony default export */ __webpack_exports__['a'] = { + // Options.jsx + items_per_page: '条/页', + jump_to: '跳至', + jump_to_confirm: '确定', + page: '页', + + // Pagination.jsx + prev_page: '上一页', + next_page: '下一页', + prev_5: '向前 5 页', + next_5: '向后 5 页', + prev_3: '向前 3 页', + next_3: '向后 3 页', + }; + + /***/ + }, + /* 60 */ + /***/ function(module, exports, __webpack_require__) { + module.exports = { default: __webpack_require__(66), __esModule: true }; + + /***/ + }, + /* 61 */ + /***/ function(module, exports, __webpack_require__) { + module.exports = { default: __webpack_require__(67), __esModule: true }; + + /***/ + }, + /* 62 */ + /***/ function(module, exports, __webpack_require__) { + module.exports = { default: __webpack_require__(69), __esModule: true }; + + /***/ + }, + /* 63 */ + /***/ function(module, exports, __webpack_require__) { + module.exports = { default: __webpack_require__(70), __esModule: true }; + + /***/ + }, + /* 64 */ + /***/ function(module, exports, __webpack_require__) { + module.exports = { default: __webpack_require__(71), __esModule: true }; + + /***/ + }, + /* 65 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + + exports.__esModule = true; + + var _assign = __webpack_require__(60); + + var _assign2 = _interopRequireDefault(_assign); + + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; + } + + exports.default = + _assign2.default || + function(target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i]; + + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } + } + + return target; + }; + + /***/ + }, + /* 66 */ + /***/ function(module, exports, __webpack_require__) { + __webpack_require__(90); + module.exports = __webpack_require__(0).Object.assign; + + /***/ + }, + /* 67 */ + /***/ function(module, exports, __webpack_require__) { + __webpack_require__(91); + var $Object = __webpack_require__(0).Object; + module.exports = function create(P, D) { + return $Object.create(P, D); + }; + + /***/ + }, + /* 68 */ + /***/ function(module, exports, __webpack_require__) { + __webpack_require__(92); + var $Object = __webpack_require__(0).Object; + module.exports = function defineProperty(it, key, desc) { + return $Object.defineProperty(it, key, desc); + }; + + /***/ + }, + /* 69 */ + /***/ function(module, exports, __webpack_require__) { + __webpack_require__(93); + module.exports = __webpack_require__(0).Object.setPrototypeOf; + + /***/ + }, + /* 70 */ + /***/ function(module, exports, __webpack_require__) { + __webpack_require__(96); + __webpack_require__(94); + __webpack_require__(97); + __webpack_require__(98); + module.exports = __webpack_require__(0).Symbol; + + /***/ + }, + /* 71 */ + /***/ function(module, exports, __webpack_require__) { + __webpack_require__(95); + __webpack_require__(99); + module.exports = __webpack_require__(30).f('iterator'); + + /***/ + }, + /* 72 */ + /***/ function(module, exports) { + module.exports = function(it) { + if (typeof it != 'function') + throw TypeError(it + ' is not a function!'); + return it; + }; + + /***/ + }, + /* 73 */ + /***/ function(module, exports) { + module.exports = function() { + /* empty */ + }; + + /***/ + }, + /* 74 */ + /***/ function(module, exports, __webpack_require__) { + // false -> Array#indexOf + // true -> Array#includes + var toIObject = __webpack_require__(8); + var toLength = __webpack_require__(88); + var toAbsoluteIndex = __webpack_require__(87); + module.exports = function(IS_INCLUDES) { + return function($this, el, fromIndex) { + var O = toIObject($this); + var length = toLength(O.length); + var index = toAbsoluteIndex(fromIndex, length); + var value; + // Array#includes uses SameValueZero equality algorithm + // eslint-disable-next-line no-self-compare + if (IS_INCLUDES && el != el) + while (length > index) { + value = O[index++]; + // eslint-disable-next-line no-self-compare + if (value != value) return true; + // Array#indexOf ignores holes, Array#includes - not + } + else + for (; length > index; index++) + if (IS_INCLUDES || index in O) { + if (O[index] === el) return IS_INCLUDES || index || 0; + } + return !IS_INCLUDES && -1; + }; + }; + + /***/ + }, + /* 75 */ + /***/ function(module, exports, __webpack_require__) { + // all enumerable object keys, includes symbols + var getKeys = __webpack_require__(14); + var gOPS = __webpack_require__(22); + var pIE = __webpack_require__(15); + module.exports = function(it) { + var result = getKeys(it); + var getSymbols = gOPS.f; + if (getSymbols) { + var symbols = getSymbols(it); + var isEnum = pIE.f; + var i = 0; + var key; + while (symbols.length > i) + if (isEnum.call(it, (key = symbols[i++]))) result.push(key); + } + return result; + }; + + /***/ + }, + /* 76 */ + /***/ function(module, exports, __webpack_require__) { + var document = __webpack_require__(2).document; + module.exports = document && document.documentElement; + + /***/ + }, + /* 77 */ + /***/ function(module, exports, __webpack_require__) { + // 7.2.2 IsArray(argument) + var cof = __webpack_require__(43); + module.exports = + Array.isArray || + function isArray(arg) { + return cof(arg) == 'Array'; + }; + + /***/ + }, + /* 78 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + + var create = __webpack_require__(21); + var descriptor = __webpack_require__(16); + var setToStringTag = __webpack_require__(23); + var IteratorPrototype = {}; + + // 25.1.2.1.1 %IteratorPrototype%[@@iterator]() + __webpack_require__(6)( + IteratorPrototype, + __webpack_require__(9)('iterator'), + function() { + return this; + }, + ); + + module.exports = function(Constructor, NAME, next) { + Constructor.prototype = create(IteratorPrototype, { + next: descriptor(1, next), + }); + setToStringTag(Constructor, NAME + ' Iterator'); + }; + + /***/ + }, + /* 79 */ + /***/ function(module, exports) { + module.exports = function(done, value) { + return { value: value, done: !!done }; + }; + + /***/ + }, + /* 80 */ + /***/ function(module, exports, __webpack_require__) { + var META = __webpack_require__(17)('meta'); + var isObject = __webpack_require__(7); + var has = __webpack_require__(3); + var setDesc = __webpack_require__(4).f; + var id = 0; + var isExtensible = + Object.isExtensible || + function() { + return true; + }; + var FREEZE = !__webpack_require__(11)(function() { + return isExtensible(Object.preventExtensions({})); + }); + var setMeta = function(it) { + setDesc(it, META, { + value: { + i: 'O' + ++id, // object ID + w: {}, // weak collections IDs + }, + }); + }; + var fastKey = function(it, create) { + // return primitive with prefix + if (!isObject(it)) + return typeof it == 'symbol' + ? it + : (typeof it == 'string' ? 'S' : 'P') + it; + if (!has(it, META)) { + // can't set metadata to uncaught frozen object + if (!isExtensible(it)) return 'F'; + // not necessary to add metadata + if (!create) return 'E'; + // add missing metadata + setMeta(it); + // return object ID + } + return it[META].i; + }; + var getWeak = function(it, create) { + if (!has(it, META)) { + // can't set metadata to uncaught frozen object + if (!isExtensible(it)) return true; + // not necessary to add metadata + if (!create) return false; + // add missing metadata + setMeta(it); + // return hash weak collections IDs + } + return it[META].w; + }; + // add metadata on freeze-family methods calling + var onFreeze = function(it) { + if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) + setMeta(it); + return it; + }; + var meta = (module.exports = { + KEY: META, + NEED: false, + fastKey: fastKey, + getWeak: getWeak, + onFreeze: onFreeze, + }); + + /***/ + }, + /* 81 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + + // 19.1.2.1 Object.assign(target, source, ...) + var DESCRIPTORS = __webpack_require__(1); + var getKeys = __webpack_require__(14); + var gOPS = __webpack_require__(22); + var pIE = __webpack_require__(15); + var toObject = __webpack_require__(27); + var IObject = __webpack_require__(47); + var $assign = Object.assign; + + // should work with symbols and should have deterministic property order (V8 bug) + module.exports = + !$assign || + __webpack_require__(11)(function() { + var A = {}; + var B = {}; + // eslint-disable-next-line no-undef + var S = Symbol(); + var K = 'abcdefghijklmnopqrst'; + A[S] = 7; + K.split('').forEach(function(k) { + B[k] = k; + }); + return ( + $assign({}, A)[S] != 7 || + Object.keys($assign({}, B)).join('') != K + ); + }) + ? function assign(target, source) { + // eslint-disable-line no-unused-vars + var T = toObject(target); + var aLen = arguments.length; + var index = 1; + var getSymbols = gOPS.f; + var isEnum = pIE.f; + while (aLen > index) { + var S = IObject(arguments[index++]); + var keys = getSymbols + ? getKeys(S).concat(getSymbols(S)) + : getKeys(S); + var length = keys.length; + var j = 0; + var key; + while (length > j) { + key = keys[j++]; + if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key]; + } + } + return T; + } + : $assign; + + /***/ + }, + /* 82 */ + /***/ function(module, exports, __webpack_require__) { + var dP = __webpack_require__(4); + var anObject = __webpack_require__(10); + var getKeys = __webpack_require__(14); + + module.exports = __webpack_require__(1) + ? Object.defineProperties + : function defineProperties(O, Properties) { + anObject(O); + var keys = getKeys(Properties); + var length = keys.length; + var i = 0; + var P; + while (length > i) dP.f(O, (P = keys[i++]), Properties[P]); + return O; + }; + + /***/ + }, + /* 83 */ + /***/ function(module, exports, __webpack_require__) { + // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window + var toIObject = __webpack_require__(8); + var gOPN = __webpack_require__(50).f; + var toString = {}.toString; + + var windowNames = + typeof window == 'object' && window && Object.getOwnPropertyNames + ? Object.getOwnPropertyNames(window) + : []; + + var getWindowNames = function(it) { + try { + return gOPN(it); + } catch (e) { + return windowNames.slice(); + } + }; + + module.exports.f = function getOwnPropertyNames(it) { + return windowNames && toString.call(it) == '[object Window]' + ? getWindowNames(it) + : gOPN(toIObject(it)); + }; + + /***/ + }, + /* 84 */ + /***/ function(module, exports, __webpack_require__) { + // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) + var has = __webpack_require__(3); + var toObject = __webpack_require__(27); + var IE_PROTO = __webpack_require__(24)('IE_PROTO'); + var ObjectProto = Object.prototype; + + module.exports = + Object.getPrototypeOf || + function(O) { + O = toObject(O); + if (has(O, IE_PROTO)) return O[IE_PROTO]; + if ( + typeof O.constructor == 'function' && + O instanceof O.constructor + ) { + return O.constructor.prototype; + } + return O instanceof Object ? ObjectProto : null; + }; + + /***/ + }, + /* 85 */ + /***/ function(module, exports, __webpack_require__) { + // Works with __proto__ only. Old v8 can't work with null proto objects. + /* eslint-disable no-proto */ + var isObject = __webpack_require__(7); + var anObject = __webpack_require__(10); + var check = function(O, proto) { + anObject(O); + if (!isObject(proto) && proto !== null) + throw TypeError(proto + ": can't set as prototype!"); + }; + module.exports = { + set: + Object.setPrototypeOf || + ('__proto__' in {} // eslint-disable-line + ? (function(test, buggy, set) { + try { + set = __webpack_require__(44)( + Function.call, + __webpack_require__(49).f(Object.prototype, '__proto__') + .set, + 2, + ); + set(test, []); + buggy = !(test instanceof Array); + } catch (e) { + buggy = true; + } + return function setPrototypeOf(O, proto) { + check(O, proto); + if (buggy) O.__proto__ = proto; + else set(O, proto); + return O; + }; + })({}, false) + : undefined), + check: check, + }; + + /***/ + }, + /* 86 */ + /***/ function(module, exports, __webpack_require__) { + var toInteger = __webpack_require__(26); + var defined = __webpack_require__(18); + // true -> String#at + // false -> String#codePointAt + module.exports = function(TO_STRING) { + return function(that, pos) { + var s = String(defined(that)); + var i = toInteger(pos); + var l = s.length; + var a, b; + if (i < 0 || i >= l) return TO_STRING ? '' : undefined; + a = s.charCodeAt(i); + return a < 0xd800 || + a > 0xdbff || + i + 1 === l || + (b = s.charCodeAt(i + 1)) < 0xdc00 || + b > 0xdfff + ? TO_STRING + ? s.charAt(i) + : a + : TO_STRING + ? s.slice(i, i + 2) + : ((a - 0xd800) << 10) + (b - 0xdc00) + 0x10000; + }; + }; + + /***/ + }, + /* 87 */ + /***/ function(module, exports, __webpack_require__) { + var toInteger = __webpack_require__(26); + var max = Math.max; + var min = Math.min; + module.exports = function(index, length) { + index = toInteger(index); + return index < 0 ? max(index + length, 0) : min(index, length); + }; + + /***/ + }, + /* 88 */ + /***/ function(module, exports, __webpack_require__) { + // 7.1.15 ToLength + var toInteger = __webpack_require__(26); + var min = Math.min; + module.exports = function(it) { + return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 + }; + + /***/ + }, + /* 89 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + + var addToUnscopables = __webpack_require__(73); + var step = __webpack_require__(79); + var Iterators = __webpack_require__(20); + var toIObject = __webpack_require__(8); + + // 22.1.3.4 Array.prototype.entries() + // 22.1.3.13 Array.prototype.keys() + // 22.1.3.29 Array.prototype.values() + // 22.1.3.30 Array.prototype[@@iterator]() + module.exports = __webpack_require__(48)( + Array, + 'Array', + function(iterated, kind) { + this._t = toIObject(iterated); // target + this._i = 0; // next index + this._k = kind; // kind + // 22.1.5.2.1 %ArrayIteratorPrototype%.next() + }, + function() { + var O = this._t; + var kind = this._k; + var index = this._i++; + if (!O || index >= O.length) { + this._t = undefined; + return step(1); + } + if (kind == 'keys') return step(0, index); + if (kind == 'values') return step(0, O[index]); + return step(0, [index, O[index]]); + }, + 'values', + ); + + // argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7) + Iterators.Arguments = Iterators.Array; + + addToUnscopables('keys'); + addToUnscopables('values'); + addToUnscopables('entries'); + + /***/ + }, + /* 90 */ + /***/ function(module, exports, __webpack_require__) { + // 19.1.3.1 Object.assign(target, source) + var $export = __webpack_require__(5); + + $export($export.S + $export.F, 'Object', { + assign: __webpack_require__(81), + }); + + /***/ + }, + /* 91 */ + /***/ function(module, exports, __webpack_require__) { + var $export = __webpack_require__(5); + // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) + $export($export.S, 'Object', { create: __webpack_require__(21) }); + + /***/ + }, + /* 92 */ + /***/ function(module, exports, __webpack_require__) { + var $export = __webpack_require__(5); + // 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes) + $export($export.S + $export.F * !__webpack_require__(1), 'Object', { + defineProperty: __webpack_require__(4).f, + }); + + /***/ + }, + /* 93 */ + /***/ function(module, exports, __webpack_require__) { + // 19.1.3.19 Object.setPrototypeOf(O, proto) + var $export = __webpack_require__(5); + $export($export.S, 'Object', { + setPrototypeOf: __webpack_require__(85).set, + }); + + /***/ + }, + /* 94 */ + /***/ function(module, exports) { + /***/ + }, + /* 95 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + + var $at = __webpack_require__(86)(true); + + // 21.1.3.27 String.prototype[@@iterator]() + __webpack_require__(48)( + String, + 'String', + function(iterated) { + this._t = String(iterated); // target + this._i = 0; // next index + // 21.1.5.2.1 %StringIteratorPrototype%.next() + }, + function() { + var O = this._t; + var index = this._i; + var point; + if (index >= O.length) return { value: undefined, done: true }; + point = $at(O, index); + this._i += point.length; + return { value: point, done: false }; + }, + ); + + /***/ + }, + /* 96 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + + // ECMAScript 6 symbols shim + var global = __webpack_require__(2); + var has = __webpack_require__(3); + var DESCRIPTORS = __webpack_require__(1); + var $export = __webpack_require__(5); + var redefine = __webpack_require__(52); + var META = __webpack_require__(80).KEY; + var $fails = __webpack_require__(11); + var shared = __webpack_require__(25); + var setToStringTag = __webpack_require__(23); + var uid = __webpack_require__(17); + var wks = __webpack_require__(9); + var wksExt = __webpack_require__(30); + var wksDefine = __webpack_require__(29); + var enumKeys = __webpack_require__(75); + var isArray = __webpack_require__(77); + var anObject = __webpack_require__(10); + var isObject = __webpack_require__(7); + var toObject = __webpack_require__(27); + var toIObject = __webpack_require__(8); + var toPrimitive = __webpack_require__(28); + var createDesc = __webpack_require__(16); + var _create = __webpack_require__(21); + var gOPNExt = __webpack_require__(83); + var $GOPD = __webpack_require__(49); + var $GOPS = __webpack_require__(22); + var $DP = __webpack_require__(4); + var $keys = __webpack_require__(14); + var gOPD = $GOPD.f; + var dP = $DP.f; + var gOPN = gOPNExt.f; + var $Symbol = global.Symbol; + var $JSON = global.JSON; + var _stringify = $JSON && $JSON.stringify; + var PROTOTYPE = 'prototype'; + var HIDDEN = wks('_hidden'); + var TO_PRIMITIVE = wks('toPrimitive'); + var isEnum = {}.propertyIsEnumerable; + var SymbolRegistry = shared('symbol-registry'); + var AllSymbols = shared('symbols'); + var OPSymbols = shared('op-symbols'); + var ObjectProto = Object[PROTOTYPE]; + var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f; + var QObject = global.QObject; + // Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173 + var setter = + !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild; + + // fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687 + var setSymbolDesc = + DESCRIPTORS && + $fails(function() { + return ( + _create( + dP({}, 'a', { + get: function() { + return dP(this, 'a', { value: 7 }).a; + }, + }), + ).a != 7 + ); + }) + ? function(it, key, D) { + var protoDesc = gOPD(ObjectProto, key); + if (protoDesc) delete ObjectProto[key]; + dP(it, key, D); + if (protoDesc && it !== ObjectProto) + dP(ObjectProto, key, protoDesc); + } + : dP; + + var wrap = function(tag) { + var sym = (AllSymbols[tag] = _create($Symbol[PROTOTYPE])); + sym._k = tag; + return sym; + }; + + var isSymbol = + USE_NATIVE && typeof $Symbol.iterator == 'symbol' + ? function(it) { + return typeof it == 'symbol'; + } + : function(it) { + return it instanceof $Symbol; + }; + + var $defineProperty = function defineProperty(it, key, D) { + if (it === ObjectProto) $defineProperty(OPSymbols, key, D); + anObject(it); + key = toPrimitive(key, true); + anObject(D); + if (has(AllSymbols, key)) { + if (!D.enumerable) { + if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {})); + it[HIDDEN][key] = true; + } else { + if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false; + D = _create(D, { enumerable: createDesc(0, false) }); + } + return setSymbolDesc(it, key, D); + } + return dP(it, key, D); + }; + var $defineProperties = function defineProperties(it, P) { + anObject(it); + var keys = enumKeys((P = toIObject(P))); + var i = 0; + var l = keys.length; + var key; + while (l > i) $defineProperty(it, (key = keys[i++]), P[key]); + return it; + }; + var $create = function create(it, P) { + return P === undefined + ? _create(it) + : $defineProperties(_create(it), P); + }; + var $propertyIsEnumerable = function propertyIsEnumerable(key) { + var E = isEnum.call(this, (key = toPrimitive(key, true))); + if ( + this === ObjectProto && + has(AllSymbols, key) && + !has(OPSymbols, key) + ) + return false; + return E || + !has(this, key) || + !has(AllSymbols, key) || + (has(this, HIDDEN) && this[HIDDEN][key]) + ? E + : true; + }; + var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor( + it, + key, + ) { + it = toIObject(it); + key = toPrimitive(key, true); + if ( + it === ObjectProto && + has(AllSymbols, key) && + !has(OPSymbols, key) + ) + return; + var D = gOPD(it, key); + if ( + D && + has(AllSymbols, key) && + !(has(it, HIDDEN) && it[HIDDEN][key]) + ) + D.enumerable = true; + return D; + }; + var $getOwnPropertyNames = function getOwnPropertyNames(it) { + var names = gOPN(toIObject(it)); + var result = []; + var i = 0; + var key; + while (names.length > i) { + if ( + !has(AllSymbols, (key = names[i++])) && + key != HIDDEN && + key != META + ) + result.push(key); + } + return result; + }; + var $getOwnPropertySymbols = function getOwnPropertySymbols(it) { + var IS_OP = it === ObjectProto; + var names = gOPN(IS_OP ? OPSymbols : toIObject(it)); + var result = []; + var i = 0; + var key; + while (names.length > i) { + if ( + has(AllSymbols, (key = names[i++])) && + (IS_OP ? has(ObjectProto, key) : true) + ) + result.push(AllSymbols[key]); + } + return result; + }; + + // 19.4.1.1 Symbol([description]) + if (!USE_NATIVE) { + $Symbol = function Symbol() { + if (this instanceof $Symbol) + throw TypeError('Symbol is not a constructor!'); + var tag = uid(arguments.length > 0 ? arguments[0] : undefined); + var $set = function(value) { + if (this === ObjectProto) $set.call(OPSymbols, value); + if (has(this, HIDDEN) && has(this[HIDDEN], tag)) + this[HIDDEN][tag] = false; + setSymbolDesc(this, tag, createDesc(1, value)); + }; + if (DESCRIPTORS && setter) + setSymbolDesc(ObjectProto, tag, { + configurable: true, + set: $set, + }); + return wrap(tag); + }; + redefine($Symbol[PROTOTYPE], 'toString', function toString() { + return this._k; + }); + + $GOPD.f = $getOwnPropertyDescriptor; + $DP.f = $defineProperty; + __webpack_require__(50).f = gOPNExt.f = $getOwnPropertyNames; + __webpack_require__(15).f = $propertyIsEnumerable; + $GOPS.f = $getOwnPropertySymbols; + + if (DESCRIPTORS && !__webpack_require__(13)) { + redefine( + ObjectProto, + 'propertyIsEnumerable', + $propertyIsEnumerable, + true, + ); + } + + wksExt.f = function(name) { + return wrap(wks(name)); + }; + } + + $export($export.G + $export.W + $export.F * !USE_NATIVE, { + Symbol: $Symbol, + }); + + for ( + var es6Symbols = // 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 + 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'.split( + ',', + ), + j = 0; + es6Symbols.length > j; + + ) + wks(es6Symbols[j++]); + + for ( + var wellKnownSymbols = $keys(wks.store), k = 0; + wellKnownSymbols.length > k; + + ) + wksDefine(wellKnownSymbols[k++]); + + $export($export.S + $export.F * !USE_NATIVE, 'Symbol', { + // 19.4.2.1 Symbol.for(key) + for: function(key) { + return has(SymbolRegistry, (key += '')) + ? SymbolRegistry[key] + : (SymbolRegistry[key] = $Symbol(key)); + }, + // 19.4.2.5 Symbol.keyFor(sym) + keyFor: function keyFor(sym) { + if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!'); + for (var key in SymbolRegistry) + if (SymbolRegistry[key] === sym) return key; + }, + useSetter: function() { + setter = true; + }, + useSimple: function() { + setter = false; + }, + }); + + $export($export.S + $export.F * !USE_NATIVE, 'Object', { + // 19.1.2.2 Object.create(O [, Properties]) + create: $create, + // 19.1.2.4 Object.defineProperty(O, P, Attributes) + defineProperty: $defineProperty, + // 19.1.2.3 Object.defineProperties(O, Properties) + defineProperties: $defineProperties, + // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) + getOwnPropertyDescriptor: $getOwnPropertyDescriptor, + // 19.1.2.7 Object.getOwnPropertyNames(O) + getOwnPropertyNames: $getOwnPropertyNames, + // 19.1.2.8 Object.getOwnPropertySymbols(O) + getOwnPropertySymbols: $getOwnPropertySymbols, + }); + + // Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives + // https://bugs.chromium.org/p/v8/issues/detail?id=3443 + var FAILS_ON_PRIMITIVES = $fails(function() { + $GOPS.f(1); + }); + + $export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', { + getOwnPropertySymbols: function getOwnPropertySymbols(it) { + return $GOPS.f(toObject(it)); + }, + }); + + // 24.3.2 JSON.stringify(value [, replacer [, space]]) + $JSON && + $export( + $export.S + + $export.F * + (!USE_NATIVE || + $fails(function() { + var S = $Symbol(); + // MS Edge converts symbol values to JSON as {} + // WebKit converts symbol values to JSON as null + // V8 throws on boxed symbols + return ( + _stringify([S]) != '[null]' || + _stringify({ a: S }) != '{}' || + _stringify(Object(S)) != '{}' + ); + })), + 'JSON', + { + stringify: function stringify(it) { + var args = [it]; + var i = 1; + var replacer, $replacer; + while (arguments.length > i) args.push(arguments[i++]); + $replacer = replacer = args[1]; + if ((!isObject(replacer) && it === undefined) || isSymbol(it)) + return; // IE8 returns string on undefined + if (!isArray(replacer)) + replacer = function(key, value) { + if (typeof $replacer == 'function') + value = $replacer.call(this, key, value); + if (!isSymbol(value)) return value; + }; + args[1] = replacer; + return _stringify.apply($JSON, args); + }, + }, + ); + + // 19.4.3.4 Symbol.prototype[@@toPrimitive](hint) + $Symbol[PROTOTYPE][TO_PRIMITIVE] || + __webpack_require__(6)( + $Symbol[PROTOTYPE], + TO_PRIMITIVE, + $Symbol[PROTOTYPE].valueOf, + ); + // 19.4.3.5 Symbol.prototype[@@toStringTag] + setToStringTag($Symbol, 'Symbol'); + // 20.2.1.9 Math[@@toStringTag] + setToStringTag(Math, 'Math', true); + // 24.3.3 JSON[@@toStringTag] + setToStringTag(global.JSON, 'JSON', true); + + /***/ + }, + /* 97 */ + /***/ function(module, exports, __webpack_require__) { + __webpack_require__(29)('asyncIterator'); + + /***/ + }, + /* 98 */ + /***/ function(module, exports, __webpack_require__) { + __webpack_require__(29)('observable'); + + /***/ + }, + /* 99 */ + /***/ function(module, exports, __webpack_require__) { + __webpack_require__(89); + var global = __webpack_require__(2); + var hide = __webpack_require__(6); + var Iterators = __webpack_require__(20); + var TO_STRING_TAG = __webpack_require__(9)('toStringTag'); + + var DOMIterables = ( + 'CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' + + 'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' + + 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' + + 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' + + 'TextTrackList,TouchList' + ).split(','); + + for (var i = 0; i < DOMIterables.length; i++) { + var NAME = DOMIterables[i]; + var Collection = global[NAME]; + var proto = Collection && Collection.prototype; + if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME); + Iterators[NAME] = Iterators.Array; + } + + /***/ + }, + /* 100 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + /* +object-assign +(c) Sindre Sorhus +@license MIT +*/ + + /* eslint-disable no-unused-vars */ + var getOwnPropertySymbols = Object.getOwnPropertySymbols; + var hasOwnProperty = Object.prototype.hasOwnProperty; + var propIsEnumerable = Object.prototype.propertyIsEnumerable; + + function toObject(val) { + if (val === null || val === undefined) { + throw new TypeError( + 'Object.assign cannot be called with null or undefined', + ); + } + + return Object(val); + } + + function shouldUseNative() { + try { + if (!Object.assign) { + return false; + } + + // Detect buggy property enumeration order in older V8 versions. + + // https://bugs.chromium.org/p/v8/issues/detail?id=4118 + var test1 = new String('abc'); // eslint-disable-line no-new-wrappers + test1[5] = 'de'; + if (Object.getOwnPropertyNames(test1)[0] === '5') { + return false; + } + + // https://bugs.chromium.org/p/v8/issues/detail?id=3056 + var test2 = {}; + for (var i = 0; i < 10; i++) { + test2['_' + String.fromCharCode(i)] = i; + } + var order2 = Object.getOwnPropertyNames(test2).map(function(n) { + return test2[n]; + }); + if (order2.join('') !== '0123456789') { + return false; + } + + // https://bugs.chromium.org/p/v8/issues/detail?id=3056 + var test3 = {}; + 'abcdefghijklmnopqrst'.split('').forEach(function(letter) { + test3[letter] = letter; + }); + if ( + Object.keys(Object.assign({}, test3)).join('') !== + 'abcdefghijklmnopqrst' + ) { + return false; + } + + return true; + } catch (err) { + // We don't expect any of the above to throw, but better to be safe. + return false; + } + } + + module.exports = shouldUseNative() + ? Object.assign + : function(target, source) { + var from; + var to = toObject(target); + var symbols; + + for (var s = 1; s < arguments.length; s++) { + from = Object(arguments[s]); + + for (var key in from) { + if (hasOwnProperty.call(from, key)) { + to[key] = from[key]; + } + } + + if (getOwnPropertySymbols) { + symbols = getOwnPropertySymbols(from); + for (var i = 0; i < symbols.length; i++) { + if (propIsEnumerable.call(from, symbols[i])) { + to[symbols[i]] = from[symbols[i]]; + } + } + } + } + + return to; + }; + + /***/ + }, + /* 101 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + /* WEBPACK VAR INJECTION */ (function(process) { + /** + * Copyright (c) 2013-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + + var printWarning = function() {}; + + if (process.env.NODE_ENV !== 'production') { + var ReactPropTypesSecret = __webpack_require__(32); + var loggedTypeFailures = {}; + var has = Function.call.bind(Object.prototype.hasOwnProperty); + + printWarning = function(text) { + var message = 'Warning: ' + text; + if (typeof console !== 'undefined') { + console.error(message); + } + try { + // --- Welcome to debugging React --- + // This error was thrown as a convenience so that you can use this stack + // to find the callsite that caused this warning to fire. + throw new Error(message); + } catch (x) {} + }; + } + + /** + * Assert that the values match with the type specs. + * Error messages are memorized and will only be shown once. + * + * @param {object} typeSpecs Map of name to a ReactPropType + * @param {object} values Runtime values that need to be type-checked + * @param {string} location e.g. "prop", "context", "child context" + * @param {string} componentName Name of the component for error messages. + * @param {?Function} getStack Returns the component stack. + * @private + */ + function checkPropTypes( + typeSpecs, + values, + location, + componentName, + getStack, + ) { + if (process.env.NODE_ENV !== 'production') { + for (var typeSpecName in typeSpecs) { + if (has(typeSpecs, typeSpecName)) { + var error; + // Prop type validation may throw. In case they do, we don't want to + // fail the render phase where it didn't fail before. So we log it. + // After these have been cleaned up, we'll let them throw. + try { + // This is intentionally an invariant that gets caught. It's the same + // behavior as without this statement except with a better message. + if (typeof typeSpecs[typeSpecName] !== 'function') { + var err = Error( + (componentName || 'React class') + + ': ' + + location + + ' type `' + + typeSpecName + + '` is invalid; ' + + 'it must be a function, usually from the `prop-types` package, but received `' + + typeof typeSpecs[typeSpecName] + + '`.', + ); + err.name = 'Invariant Violation'; + throw err; + } + error = typeSpecs[typeSpecName]( + values, + typeSpecName, + componentName, + location, + null, + ReactPropTypesSecret, + ); + } catch (ex) { + error = ex; + } + if (error && !(error instanceof Error)) { + printWarning( + (componentName || 'React class') + + ': type specification of ' + + location + + ' `' + + typeSpecName + + '` is invalid; the type checker ' + + 'function must return `null` or an `Error` but returned a ' + + typeof error + + '. ' + + 'You may have forgotten to pass an argument to the type checker ' + + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + + 'shape all require an argument).', + ); + } + if ( + error instanceof Error && + !(error.message in loggedTypeFailures) + ) { + // Only monitor this failure once because there tends to be a lot of the + // same error. + loggedTypeFailures[error.message] = true; + + var stack = getStack ? getStack() : ''; + + printWarning( + 'Failed ' + + location + + ' type: ' + + error.message + + (stack != null ? stack : ''), + ); + } + } + } + } + } + + /** + * Resets warning cache when testing. + * + * @private + */ + checkPropTypes.resetWarningCache = function() { + if (process.env.NODE_ENV !== 'production') { + loggedTypeFailures = {}; + } + }; + + module.exports = checkPropTypes; + + /* WEBPACK VAR INJECTION */ + }.call(exports, __webpack_require__(12))); + + /***/ + }, + /* 102 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + /** + * Copyright (c) 2013-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + + var ReactPropTypesSecret = __webpack_require__(32); + + function emptyFunction() {} + function emptyFunctionWithReset() {} + emptyFunctionWithReset.resetWarningCache = emptyFunction; + + module.exports = function() { + function shim( + props, + propName, + componentName, + location, + propFullName, + secret, + ) { + if (secret === ReactPropTypesSecret) { + // It is still safe when called from React. + return; + } + var err = new Error( + 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' + + 'Use PropTypes.checkPropTypes() to call them. ' + + 'Read more at http://fb.me/use-check-prop-types', + ); + err.name = 'Invariant Violation'; + throw err; + } + shim.isRequired = shim; + function getShim() { + return shim; + } + // Important! + // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`. + var ReactPropTypes = { + array: shim, + bool: shim, + func: shim, + number: shim, + object: shim, + string: shim, + symbol: shim, + + any: shim, + arrayOf: getShim, + element: shim, + elementType: shim, + instanceOf: getShim, + node: shim, + objectOf: getShim, + oneOf: getShim, + oneOfType: getShim, + shape: getShim, + exact: getShim, + + checkPropTypes: emptyFunctionWithReset, + resetWarningCache: emptyFunction, + }; + + ReactPropTypes.PropTypes = ReactPropTypes; + + return ReactPropTypes; + }; + + /***/ + }, + /* 103 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + /* WEBPACK VAR INJECTION */ (function(process) { + /** + * Copyright (c) 2013-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + + var ReactIs = __webpack_require__(53); + var assign = __webpack_require__(100); + + var ReactPropTypesSecret = __webpack_require__(32); + var checkPropTypes = __webpack_require__(101); + + var has = Function.call.bind(Object.prototype.hasOwnProperty); + var printWarning = function() {}; + + if (process.env.NODE_ENV !== 'production') { + printWarning = function(text) { + var message = 'Warning: ' + text; + if (typeof console !== 'undefined') { + console.error(message); + } + try { + // --- Welcome to debugging React --- + // This error was thrown as a convenience so that you can use this stack + // to find the callsite that caused this warning to fire. + throw new Error(message); + } catch (x) {} + }; + } + + function emptyFunctionThatReturnsNull() { + return null; + } + + module.exports = function(isValidElement, throwOnDirectAccess) { + /* global Symbol */ + var ITERATOR_SYMBOL = + typeof Symbol === 'function' && Symbol.iterator; + var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec. + + /** + * Returns the iterator method function contained on the iterable object. + * + * Be sure to invoke the function with the iterable as context: + * + * var iteratorFn = getIteratorFn(myIterable); + * if (iteratorFn) { + * var iterator = iteratorFn.call(myIterable); + * ... + * } + * + * @param {?object} maybeIterable + * @return {?function} + */ + function getIteratorFn(maybeIterable) { + var iteratorFn = + maybeIterable && + ((ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL]) || + maybeIterable[FAUX_ITERATOR_SYMBOL]); + if (typeof iteratorFn === 'function') { + return iteratorFn; + } + } + + /** + * Collection of methods that allow declaration and validation of props that are + * supplied to React components. Example usage: + * + * var Props = require('ReactPropTypes'); + * var MyArticle = React.createClass({ + * propTypes: { + * // An optional string prop named "description". + * description: Props.string, + * + * // A required enum prop named "category". + * category: Props.oneOf(['News','Photos']).isRequired, + * + * // A prop named "dialog" that requires an instance of Dialog. + * dialog: Props.instanceOf(Dialog).isRequired + * }, + * render: function() { ... } + * }); + * + * A more formal specification of how these methods are used: + * + * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...) + * decl := ReactPropTypes.{type}(.isRequired)? + * + * Each and every declaration produces a function with the same signature. This + * allows the creation of custom validation functions. For example: + * + * var MyLink = React.createClass({ + * propTypes: { + * // An optional string or URI prop named "href". + * href: function(props, propName, componentName) { + * var propValue = props[propName]; + * if (propValue != null && typeof propValue !== 'string' && + * !(propValue instanceof URI)) { + * return new Error( + * 'Expected a string or an URI for ' + propName + ' in ' + + * componentName + * ); + * } + * } + * }, + * render: function() {...} + * }); + * + * @internal + */ + + var ANONYMOUS = '<>'; + + // Important! + // Keep this list in sync with production version in `./factoryWithThrowingShims.js`. + var ReactPropTypes = { + array: createPrimitiveTypeChecker('array'), + bool: createPrimitiveTypeChecker('boolean'), + func: createPrimitiveTypeChecker('function'), + number: createPrimitiveTypeChecker('number'), + object: createPrimitiveTypeChecker('object'), + string: createPrimitiveTypeChecker('string'), + symbol: createPrimitiveTypeChecker('symbol'), + + any: createAnyTypeChecker(), + arrayOf: createArrayOfTypeChecker, + element: createElementTypeChecker(), + elementType: createElementTypeTypeChecker(), + instanceOf: createInstanceTypeChecker, + node: createNodeChecker(), + objectOf: createObjectOfTypeChecker, + oneOf: createEnumTypeChecker, + oneOfType: createUnionTypeChecker, + shape: createShapeTypeChecker, + exact: createStrictShapeTypeChecker, + }; + + /** + * inlined Object.is polyfill to avoid requiring consumers ship their own + * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is + */ + /*eslint-disable no-self-compare*/ + function is(x, y) { + // SameValue algorithm + if (x === y) { + // Steps 1-5, 7-10 + // Steps 6.b-6.e: +0 != -0 + return x !== 0 || 1 / x === 1 / y; + } else { + // Step 6.a: NaN == NaN + return x !== x && y !== y; + } + } + /*eslint-enable no-self-compare*/ + + /** + * We use an Error-like object for backward compatibility as people may call + * PropTypes directly and inspect their output. However, we don't use real + * Errors anymore. We don't inspect their stack anyway, and creating them + * is prohibitively expensive if they are created too often, such as what + * happens in oneOfType() for any type before the one that matched. + */ + function PropTypeError(message) { + this.message = message; + this.stack = ''; + } + // Make `instanceof Error` still work for returned errors. + PropTypeError.prototype = Error.prototype; + + function createChainableTypeChecker(validate) { + if (process.env.NODE_ENV !== 'production') { + var manualPropTypeCallCache = {}; + var manualPropTypeWarningCount = 0; + } + function checkType( + isRequired, + props, + propName, + componentName, + location, + propFullName, + secret, + ) { + componentName = componentName || ANONYMOUS; + propFullName = propFullName || propName; + + if (secret !== ReactPropTypesSecret) { + if (throwOnDirectAccess) { + // New behavior only for users of `prop-types` package + var err = new Error( + 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' + + 'Use `PropTypes.checkPropTypes()` to call them. ' + + 'Read more at http://fb.me/use-check-prop-types', + ); + err.name = 'Invariant Violation'; + throw err; + } else if ( + process.env.NODE_ENV !== 'production' && + typeof console !== 'undefined' + ) { + // Old behavior for people using React.PropTypes + var cacheKey = componentName + ':' + propName; + if ( + !manualPropTypeCallCache[cacheKey] && + // Avoid spamming the console because they are often not actionable except for lib authors + manualPropTypeWarningCount < 3 + ) { + printWarning( + 'You are manually calling a React.PropTypes validation ' + + 'function for the `' + + propFullName + + '` prop on `' + + componentName + + '`. This is deprecated ' + + 'and will throw in the standalone `prop-types` package. ' + + 'You may be seeing this warning due to a third-party PropTypes ' + + 'library. See https://fb.me/react-warning-dont-call-proptypes ' + + 'for details.', + ); + manualPropTypeCallCache[cacheKey] = true; + manualPropTypeWarningCount++; + } + } + } + if (props[propName] == null) { + if (isRequired) { + if (props[propName] === null) { + return new PropTypeError( + 'The ' + + location + + ' `' + + propFullName + + '` is marked as required ' + + ('in `' + + componentName + + '`, but its value is `null`.'), + ); + } + return new PropTypeError( + 'The ' + + location + + ' `' + + propFullName + + '` is marked as required in ' + + ('`' + + componentName + + '`, but its value is `undefined`.'), + ); + } + return null; + } else { + return validate( + props, + propName, + componentName, + location, + propFullName, + ); + } + } + + var chainedCheckType = checkType.bind(null, false); + chainedCheckType.isRequired = checkType.bind(null, true); + + return chainedCheckType; + } + + function createPrimitiveTypeChecker(expectedType) { + function validate( + props, + propName, + componentName, + location, + propFullName, + secret, + ) { + var propValue = props[propName]; + var propType = getPropType(propValue); + if (propType !== expectedType) { + // `propValue` being instance of, say, date/regexp, pass the 'object' + // check, but we can offer a more precise error message here rather than + // 'of type `object`'. + var preciseType = getPreciseType(propValue); + + return new PropTypeError( + 'Invalid ' + + location + + ' `' + + propFullName + + '` of type ' + + ('`' + + preciseType + + '` supplied to `' + + componentName + + '`, expected ') + + ('`' + expectedType + '`.'), + ); + } + return null; + } + return createChainableTypeChecker(validate); + } + + function createAnyTypeChecker() { + return createChainableTypeChecker(emptyFunctionThatReturnsNull); + } + + function createArrayOfTypeChecker(typeChecker) { + function validate( + props, + propName, + componentName, + location, + propFullName, + ) { + if (typeof typeChecker !== 'function') { + return new PropTypeError( + 'Property `' + + propFullName + + '` of component `' + + componentName + + '` has invalid PropType notation inside arrayOf.', + ); + } + var propValue = props[propName]; + if (!Array.isArray(propValue)) { + var propType = getPropType(propValue); + return new PropTypeError( + 'Invalid ' + + location + + ' `' + + propFullName + + '` of type ' + + ('`' + + propType + + '` supplied to `' + + componentName + + '`, expected an array.'), + ); + } + for (var i = 0; i < propValue.length; i++) { + var error = typeChecker( + propValue, + i, + componentName, + location, + propFullName + '[' + i + ']', + ReactPropTypesSecret, + ); + if (error instanceof Error) { + return error; + } + } + return null; + } + return createChainableTypeChecker(validate); + } + + function createElementTypeChecker() { + function validate( + props, + propName, + componentName, + location, + propFullName, + ) { + var propValue = props[propName]; + if (!isValidElement(propValue)) { + var propType = getPropType(propValue); + return new PropTypeError( + 'Invalid ' + + location + + ' `' + + propFullName + + '` of type ' + + ('`' + + propType + + '` supplied to `' + + componentName + + '`, expected a single ReactElement.'), + ); + } + return null; + } + return createChainableTypeChecker(validate); + } + + function createElementTypeTypeChecker() { + function validate( + props, + propName, + componentName, + location, + propFullName, + ) { + var propValue = props[propName]; + if (!ReactIs.isValidElementType(propValue)) { + var propType = getPropType(propValue); + return new PropTypeError( + 'Invalid ' + + location + + ' `' + + propFullName + + '` of type ' + + ('`' + + propType + + '` supplied to `' + + componentName + + '`, expected a single ReactElement type.'), + ); + } + return null; + } + return createChainableTypeChecker(validate); + } + + function createInstanceTypeChecker(expectedClass) { + function validate( + props, + propName, + componentName, + location, + propFullName, + ) { + if (!(props[propName] instanceof expectedClass)) { + var expectedClassName = expectedClass.name || ANONYMOUS; + var actualClassName = getClassName(props[propName]); + return new PropTypeError( + 'Invalid ' + + location + + ' `' + + propFullName + + '` of type ' + + ('`' + + actualClassName + + '` supplied to `' + + componentName + + '`, expected ') + + ('instance of `' + expectedClassName + '`.'), + ); + } + return null; + } + return createChainableTypeChecker(validate); + } + + function createEnumTypeChecker(expectedValues) { + if (!Array.isArray(expectedValues)) { + if (process.env.NODE_ENV !== 'production') { + if (arguments.length > 1) { + printWarning( + 'Invalid arguments supplied to oneOf, expected an array, got ' + + arguments.length + + ' arguments. ' + + 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).', + ); + } else { + printWarning( + 'Invalid argument supplied to oneOf, expected an array.', + ); + } + } + return emptyFunctionThatReturnsNull; + } + + function validate( + props, + propName, + componentName, + location, + propFullName, + ) { + var propValue = props[propName]; + for (var i = 0; i < expectedValues.length; i++) { + if (is(propValue, expectedValues[i])) { + return null; + } + } + + var valuesString = JSON.stringify( + expectedValues, + function replacer(key, value) { + var type = getPreciseType(value); + if (type === 'symbol') { + return String(value); + } + return value; + }, + ); + return new PropTypeError( + 'Invalid ' + + location + + ' `' + + propFullName + + '` of value `' + + String(propValue) + + '` ' + + ('supplied to `' + + componentName + + '`, expected one of ' + + valuesString + + '.'), + ); + } + return createChainableTypeChecker(validate); + } + + function createObjectOfTypeChecker(typeChecker) { + function validate( + props, + propName, + componentName, + location, + propFullName, + ) { + if (typeof typeChecker !== 'function') { + return new PropTypeError( + 'Property `' + + propFullName + + '` of component `' + + componentName + + '` has invalid PropType notation inside objectOf.', + ); + } + var propValue = props[propName]; + var propType = getPropType(propValue); + if (propType !== 'object') { + return new PropTypeError( + 'Invalid ' + + location + + ' `' + + propFullName + + '` of type ' + + ('`' + + propType + + '` supplied to `' + + componentName + + '`, expected an object.'), + ); + } + for (var key in propValue) { + if (has(propValue, key)) { + var error = typeChecker( + propValue, + key, + componentName, + location, + propFullName + '.' + key, + ReactPropTypesSecret, + ); + if (error instanceof Error) { + return error; + } + } + } + return null; + } + return createChainableTypeChecker(validate); + } + + function createUnionTypeChecker(arrayOfTypeCheckers) { + if (!Array.isArray(arrayOfTypeCheckers)) { + process.env.NODE_ENV !== 'production' + ? printWarning( + 'Invalid argument supplied to oneOfType, expected an instance of array.', + ) + : void 0; + return emptyFunctionThatReturnsNull; + } + + for (var i = 0; i < arrayOfTypeCheckers.length; i++) { + var checker = arrayOfTypeCheckers[i]; + if (typeof checker !== 'function') { + printWarning( + 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' + + 'received ' + + getPostfixForTypeWarning(checker) + + ' at index ' + + i + + '.', + ); + return emptyFunctionThatReturnsNull; + } + } + + function validate( + props, + propName, + componentName, + location, + propFullName, + ) { + for (var i = 0; i < arrayOfTypeCheckers.length; i++) { + var checker = arrayOfTypeCheckers[i]; + if ( + checker( + props, + propName, + componentName, + location, + propFullName, + ReactPropTypesSecret, + ) == null + ) { + return null; + } + } + + return new PropTypeError( + 'Invalid ' + + location + + ' `' + + propFullName + + '` supplied to ' + + ('`' + componentName + '`.'), + ); + } + return createChainableTypeChecker(validate); + } + + function createNodeChecker() { + function validate( + props, + propName, + componentName, + location, + propFullName, + ) { + if (!isNode(props[propName])) { + return new PropTypeError( + 'Invalid ' + + location + + ' `' + + propFullName + + '` supplied to ' + + ('`' + componentName + '`, expected a ReactNode.'), + ); + } + return null; + } + return createChainableTypeChecker(validate); + } + + function createShapeTypeChecker(shapeTypes) { + function validate( + props, + propName, + componentName, + location, + propFullName, + ) { + var propValue = props[propName]; + var propType = getPropType(propValue); + if (propType !== 'object') { + return new PropTypeError( + 'Invalid ' + + location + + ' `' + + propFullName + + '` of type `' + + propType + + '` ' + + ('supplied to `' + + componentName + + '`, expected `object`.'), + ); + } + for (var key in shapeTypes) { + var checker = shapeTypes[key]; + if (!checker) { + continue; + } + var error = checker( + propValue, + key, + componentName, + location, + propFullName + '.' + key, + ReactPropTypesSecret, + ); + if (error) { + return error; + } + } + return null; + } + return createChainableTypeChecker(validate); + } + + function createStrictShapeTypeChecker(shapeTypes) { + function validate( + props, + propName, + componentName, + location, + propFullName, + ) { + var propValue = props[propName]; + var propType = getPropType(propValue); + if (propType !== 'object') { + return new PropTypeError( + 'Invalid ' + + location + + ' `' + + propFullName + + '` of type `' + + propType + + '` ' + + ('supplied to `' + + componentName + + '`, expected `object`.'), + ); + } + // We need to check all keys in case some are required but missing from + // props. + var allKeys = assign({}, props[propName], shapeTypes); + for (var key in allKeys) { + var checker = shapeTypes[key]; + if (!checker) { + return new PropTypeError( + 'Invalid ' + + location + + ' `' + + propFullName + + '` key `' + + key + + '` supplied to `' + + componentName + + '`.' + + '\nBad object: ' + + JSON.stringify(props[propName], null, ' ') + + '\nValid keys: ' + + JSON.stringify(Object.keys(shapeTypes), null, ' '), + ); + } + var error = checker( + propValue, + key, + componentName, + location, + propFullName + '.' + key, + ReactPropTypesSecret, + ); + if (error) { + return error; + } + } + return null; + } + + return createChainableTypeChecker(validate); + } + + function isNode(propValue) { + switch (typeof propValue) { + case 'number': + case 'string': + case 'undefined': + return true; + case 'boolean': + return !propValue; + case 'object': + if (Array.isArray(propValue)) { + return propValue.every(isNode); + } + if (propValue === null || isValidElement(propValue)) { + return true; + } + + var iteratorFn = getIteratorFn(propValue); + if (iteratorFn) { + var iterator = iteratorFn.call(propValue); + var step; + if (iteratorFn !== propValue.entries) { + while (!(step = iterator.next()).done) { + if (!isNode(step.value)) { + return false; + } + } + } else { + // Iterator will provide entry [k,v] tuples rather than values. + while (!(step = iterator.next()).done) { + var entry = step.value; + if (entry) { + if (!isNode(entry[1])) { + return false; + } + } + } + } + } else { + return false; + } + + return true; + default: + return false; + } + } + + function isSymbol(propType, propValue) { + // Native Symbol. + if (propType === 'symbol') { + return true; + } + + // falsy value can't be a Symbol + if (!propValue) { + return false; + } + + // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol' + if (propValue['@@toStringTag'] === 'Symbol') { + return true; + } + + // Fallback for non-spec compliant Symbols which are polyfilled. + if (typeof Symbol === 'function' && propValue instanceof Symbol) { + return true; + } + + return false; + } + + // Equivalent of `typeof` but with special handling for array and regexp. + function getPropType(propValue) { + var propType = typeof propValue; + if (Array.isArray(propValue)) { + return 'array'; + } + if (propValue instanceof RegExp) { + // Old webkits (at least until Android 4.0) return 'function' rather than + // 'object' for typeof a RegExp. We'll normalize this here so that /bla/ + // passes PropTypes.object. + return 'object'; + } + if (isSymbol(propType, propValue)) { + return 'symbol'; + } + return propType; + } + + // This handles more types than `getPropType`. Only used for error messages. + // See `createPrimitiveTypeChecker`. + function getPreciseType(propValue) { + if (typeof propValue === 'undefined' || propValue === null) { + return '' + propValue; + } + var propType = getPropType(propValue); + if (propType === 'object') { + if (propValue instanceof Date) { + return 'date'; + } else if (propValue instanceof RegExp) { + return 'regexp'; + } + } + return propType; + } + + // Returns a string that is postfixed to a warning about an invalid type. + // For example, "undefined" or "of type array" + function getPostfixForTypeWarning(value) { + var type = getPreciseType(value); + switch (type) { + case 'array': + case 'object': + return 'an ' + type; + case 'boolean': + case 'date': + case 'regexp': + return 'a ' + type; + default: + return type; + } + } + + // Returns class name of the object, if any. + function getClassName(propValue) { + if (!propValue.constructor || !propValue.constructor.name) { + return ANONYMOUS; + } + return propValue.constructor.name; + } + + ReactPropTypes.checkPropTypes = checkPropTypes; + ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache; + ReactPropTypes.PropTypes = ReactPropTypes; + + return ReactPropTypes; + }; + + /* WEBPACK VAR INJECTION */ + }.call(exports, __webpack_require__(12))); + + /***/ + }, + /* 104 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + /* WEBPACK VAR INJECTION */ (function(process) { + /** @license React v16.12.0 + * react-is.development.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + + if (process.env.NODE_ENV !== 'production') { + (function() { + 'use strict'; + + Object.defineProperty(exports, '__esModule', { value: true }); + + // The Symbol used to tag the ReactElement-like types. If there is no native Symbol + // nor polyfill, then a plain number is used for performance. + var hasSymbol = typeof Symbol === 'function' && Symbol.for; + var REACT_ELEMENT_TYPE = hasSymbol + ? Symbol.for('react.element') + : 0xeac7; + var REACT_PORTAL_TYPE = hasSymbol + ? Symbol.for('react.portal') + : 0xeaca; + var REACT_FRAGMENT_TYPE = hasSymbol + ? Symbol.for('react.fragment') + : 0xeacb; + var REACT_STRICT_MODE_TYPE = hasSymbol + ? Symbol.for('react.strict_mode') + : 0xeacc; + var REACT_PROFILER_TYPE = hasSymbol + ? Symbol.for('react.profiler') + : 0xead2; + var REACT_PROVIDER_TYPE = hasSymbol + ? Symbol.for('react.provider') + : 0xeacd; + var REACT_CONTEXT_TYPE = hasSymbol + ? Symbol.for('react.context') + : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary + // (unstable) APIs that have been removed. Can we remove the symbols? + + var REACT_ASYNC_MODE_TYPE = hasSymbol + ? Symbol.for('react.async_mode') + : 0xeacf; + var REACT_CONCURRENT_MODE_TYPE = hasSymbol + ? Symbol.for('react.concurrent_mode') + : 0xeacf; + var REACT_FORWARD_REF_TYPE = hasSymbol + ? Symbol.for('react.forward_ref') + : 0xead0; + var REACT_SUSPENSE_TYPE = hasSymbol + ? Symbol.for('react.suspense') + : 0xead1; + var REACT_SUSPENSE_LIST_TYPE = hasSymbol + ? Symbol.for('react.suspense_list') + : 0xead8; + var REACT_MEMO_TYPE = hasSymbol + ? Symbol.for('react.memo') + : 0xead3; + var REACT_LAZY_TYPE = hasSymbol + ? Symbol.for('react.lazy') + : 0xead4; + var REACT_FUNDAMENTAL_TYPE = hasSymbol + ? Symbol.for('react.fundamental') + : 0xead5; + var REACT_RESPONDER_TYPE = hasSymbol + ? Symbol.for('react.responder') + : 0xead6; + var REACT_SCOPE_TYPE = hasSymbol + ? Symbol.for('react.scope') + : 0xead7; + + function isValidElementType(type) { + return ( + typeof type === 'string' || + typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill. + type === REACT_FRAGMENT_TYPE || + type === REACT_CONCURRENT_MODE_TYPE || + type === REACT_PROFILER_TYPE || + type === REACT_STRICT_MODE_TYPE || + type === REACT_SUSPENSE_TYPE || + type === REACT_SUSPENSE_LIST_TYPE || + (typeof type === 'object' && + type !== null && + (type.$$typeof === REACT_LAZY_TYPE || + type.$$typeof === REACT_MEMO_TYPE || + type.$$typeof === REACT_PROVIDER_TYPE || + type.$$typeof === REACT_CONTEXT_TYPE || + type.$$typeof === REACT_FORWARD_REF_TYPE || + type.$$typeof === REACT_FUNDAMENTAL_TYPE || + type.$$typeof === REACT_RESPONDER_TYPE || + type.$$typeof === REACT_SCOPE_TYPE)) + ); + } + + /** + * Forked from fbjs/warning: + * https://github.com/facebook/fbjs/blob/e66ba20ad5be433eb54423f2b097d829324d9de6/packages/fbjs/src/__forks__/warning.js + * + * Only change is we use console.warn instead of console.error, + * and do nothing when 'console' is not supported. + * This really simplifies the code. + * --- + * Similar to invariant but only logs a warning if the condition is not met. + * This can be used to log issues in development environments in critical + * paths. Removing the logging code for production environments will keep the + * same logic and follow the same code paths. + */ + var lowPriorityWarningWithoutStack = function() {}; + + { + var printWarning = function(format) { + for ( + var _len = arguments.length, + args = new Array(_len > 1 ? _len - 1 : 0), + _key = 1; + _key < _len; + _key++ + ) { + args[_key - 1] = arguments[_key]; + } + + var argIndex = 0; + var message = + 'Warning: ' + + format.replace(/%s/g, function() { + return args[argIndex++]; + }); + + if (typeof console !== 'undefined') { + console.warn(message); + } + + try { + // --- Welcome to debugging React --- + // This error was thrown as a convenience so that you can use this stack + // to find the callsite that caused this warning to fire. + throw new Error(message); + } catch (x) {} + }; + + lowPriorityWarningWithoutStack = function(condition, format) { + if (format === undefined) { + throw new Error( + '`lowPriorityWarningWithoutStack(condition, format, ...args)` requires a warning ' + + 'message argument', + ); + } + + if (!condition) { + for ( + var _len2 = arguments.length, + args = new Array(_len2 > 2 ? _len2 - 2 : 0), + _key2 = 2; + _key2 < _len2; + _key2++ + ) { + args[_key2 - 2] = arguments[_key2]; + } + + printWarning.apply(void 0, [format].concat(args)); + } + }; + } + + var lowPriorityWarningWithoutStack$1 = lowPriorityWarningWithoutStack; + + function typeOf(object) { + if (typeof object === 'object' && object !== null) { + var $$typeof = object.$$typeof; + + switch ($$typeof) { + case REACT_ELEMENT_TYPE: + var type = object.type; + + switch (type) { + case REACT_ASYNC_MODE_TYPE: + case REACT_CONCURRENT_MODE_TYPE: + case REACT_FRAGMENT_TYPE: + case REACT_PROFILER_TYPE: + case REACT_STRICT_MODE_TYPE: + case REACT_SUSPENSE_TYPE: + return type; + + default: + var $$typeofType = type && type.$$typeof; + + switch ($$typeofType) { + case REACT_CONTEXT_TYPE: + case REACT_FORWARD_REF_TYPE: + case REACT_LAZY_TYPE: + case REACT_MEMO_TYPE: + case REACT_PROVIDER_TYPE: + return $$typeofType; + + default: + return $$typeof; + } + } + + case REACT_PORTAL_TYPE: + return $$typeof; + } + } + + return undefined; + } // AsyncMode is deprecated along with isAsyncMode + + var AsyncMode = REACT_ASYNC_MODE_TYPE; + var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE; + var ContextConsumer = REACT_CONTEXT_TYPE; + var ContextProvider = REACT_PROVIDER_TYPE; + var Element = REACT_ELEMENT_TYPE; + var ForwardRef = REACT_FORWARD_REF_TYPE; + var Fragment = REACT_FRAGMENT_TYPE; + var Lazy = REACT_LAZY_TYPE; + var Memo = REACT_MEMO_TYPE; + var Portal = REACT_PORTAL_TYPE; + var Profiler = REACT_PROFILER_TYPE; + var StrictMode = REACT_STRICT_MODE_TYPE; + var Suspense = REACT_SUSPENSE_TYPE; + var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated + + function isAsyncMode(object) { + { + if (!hasWarnedAboutDeprecatedIsAsyncMode) { + hasWarnedAboutDeprecatedIsAsyncMode = true; + lowPriorityWarningWithoutStack$1( + false, + 'The ReactIs.isAsyncMode() alias has been deprecated, ' + + 'and will be removed in React 17+. Update your code to use ' + + 'ReactIs.isConcurrentMode() instead. It has the exact same API.', + ); + } + } + + return ( + isConcurrentMode(object) || + typeOf(object) === REACT_ASYNC_MODE_TYPE + ); + } + function isConcurrentMode(object) { + return typeOf(object) === REACT_CONCURRENT_MODE_TYPE; + } + function isContextConsumer(object) { + return typeOf(object) === REACT_CONTEXT_TYPE; + } + function isContextProvider(object) { + return typeOf(object) === REACT_PROVIDER_TYPE; + } + function isElement(object) { + return ( + typeof object === 'object' && + object !== null && + object.$$typeof === REACT_ELEMENT_TYPE + ); + } + function isForwardRef(object) { + return typeOf(object) === REACT_FORWARD_REF_TYPE; + } + function isFragment(object) { + return typeOf(object) === REACT_FRAGMENT_TYPE; + } + function isLazy(object) { + return typeOf(object) === REACT_LAZY_TYPE; + } + function isMemo(object) { + return typeOf(object) === REACT_MEMO_TYPE; + } + function isPortal(object) { + return typeOf(object) === REACT_PORTAL_TYPE; + } + function isProfiler(object) { + return typeOf(object) === REACT_PROFILER_TYPE; + } + function isStrictMode(object) { + return typeOf(object) === REACT_STRICT_MODE_TYPE; + } + function isSuspense(object) { + return typeOf(object) === REACT_SUSPENSE_TYPE; + } + + exports.typeOf = typeOf; + exports.AsyncMode = AsyncMode; + exports.ConcurrentMode = ConcurrentMode; + exports.ContextConsumer = ContextConsumer; + exports.ContextProvider = ContextProvider; + exports.Element = Element; + exports.ForwardRef = ForwardRef; + exports.Fragment = Fragment; + exports.Lazy = Lazy; + exports.Memo = Memo; + exports.Portal = Portal; + exports.Profiler = Profiler; + exports.StrictMode = StrictMode; + exports.Suspense = Suspense; + exports.isValidElementType = isValidElementType; + exports.isAsyncMode = isAsyncMode; + exports.isConcurrentMode = isConcurrentMode; + exports.isContextConsumer = isContextConsumer; + exports.isContextProvider = isContextProvider; + exports.isElement = isElement; + exports.isForwardRef = isForwardRef; + exports.isFragment = isFragment; + exports.isLazy = isLazy; + exports.isMemo = isMemo; + exports.isPortal = isPortal; + exports.isProfiler = isProfiler; + exports.isStrictMode = isStrictMode; + exports.isSuspense = isSuspense; + })(); + } + + /* WEBPACK VAR INJECTION */ + }.call(exports, __webpack_require__(12))); + + /***/ + }, + /* 105 */ + /***/ function(module, exports, __webpack_require__) { + 'use strict'; + /** @license React v16.12.0 + * react-is.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + + Object.defineProperty(exports, '__esModule', { value: !0 }); + var b = 'function' === typeof Symbol && Symbol.for, + c = b ? Symbol.for('react.element') : 60103, + d = b ? Symbol.for('react.portal') : 60106, + e = b ? Symbol.for('react.fragment') : 60107, + f = b ? Symbol.for('react.strict_mode') : 60108, + g = b ? Symbol.for('react.profiler') : 60114, + h = b ? Symbol.for('react.provider') : 60109, + k = b ? Symbol.for('react.context') : 60110, + l = b ? Symbol.for('react.async_mode') : 60111, + m = b ? Symbol.for('react.concurrent_mode') : 60111, + n = b ? Symbol.for('react.forward_ref') : 60112, + p = b ? Symbol.for('react.suspense') : 60113, + q = b ? Symbol.for('react.suspense_list') : 60120, + r = b ? Symbol.for('react.memo') : 60115, + t = b ? Symbol.for('react.lazy') : 60116, + v = b ? Symbol.for('react.fundamental') : 60117, + w = b ? Symbol.for('react.responder') : 60118, + x = b ? Symbol.for('react.scope') : 60119; + function y(a) { + if ('object' === typeof a && null !== a) { + var u = a.$$typeof; + switch (u) { + case c: + switch (((a = a.type), a)) { + case l: + case m: + case e: + case g: + case f: + case p: + return a; + default: + switch (((a = a && a.$$typeof), a)) { + case k: + case n: + case t: + case r: + case h: + return a; + default: + return u; + } + } + case d: + return u; + } + } + } + function z(a) { + return y(a) === m; + } + exports.typeOf = y; + exports.AsyncMode = l; + exports.ConcurrentMode = m; + exports.ContextConsumer = k; + exports.ContextProvider = h; + exports.Element = c; + exports.ForwardRef = n; + exports.Fragment = e; + exports.Lazy = t; + exports.Memo = r; + exports.Portal = d; + exports.Profiler = g; + exports.StrictMode = f; + exports.Suspense = p; + exports.isValidElementType = function(a) { + return ( + 'string' === typeof a || + 'function' === typeof a || + a === e || + a === m || + a === g || + a === f || + a === p || + a === q || + ('object' === typeof a && + null !== a && + (a.$$typeof === t || + a.$$typeof === r || + a.$$typeof === h || + a.$$typeof === k || + a.$$typeof === n || + a.$$typeof === v || + a.$$typeof === w || + a.$$typeof === x)) + ); + }; + exports.isAsyncMode = function(a) { + return z(a) || y(a) === l; + }; + exports.isConcurrentMode = z; + exports.isContextConsumer = function(a) { + return y(a) === k; + }; + exports.isContextProvider = function(a) { + return y(a) === h; + }; + exports.isElement = function(a) { + return 'object' === typeof a && null !== a && a.$$typeof === c; + }; + exports.isForwardRef = function(a) { + return y(a) === n; + }; + exports.isFragment = function(a) { + return y(a) === e; + }; + exports.isLazy = function(a) { + return y(a) === t; + }; + exports.isMemo = function(a) { + return y(a) === r; + }; + exports.isPortal = function(a) { + return y(a) === d; + }; + exports.isProfiler = function(a) { + return y(a) === g; + }; + exports.isStrictMode = function(a) { + return y(a) === f; + }; + exports.isSuspense = function(a) { + return y(a) === p; + }; + + /***/ + }, + /* 106 */ + /***/ function(module, __webpack_exports__, __webpack_require__) { + 'use strict'; + /* harmony export (binding) */ __webpack_require__.d( + __webpack_exports__, + 'a', + function() { + return polyfill; + }, + ); + /** + * Copyright (c) 2013-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + + function componentWillMount() { + // Call this.constructor.gDSFP to support sub-classes. + var state = this.constructor.getDerivedStateFromProps( + this.props, + this.state, + ); + if (state !== null && state !== undefined) { + this.setState(state); + } + } + + function componentWillReceiveProps(nextProps) { + // Call this.constructor.gDSFP to support sub-classes. + // Use the setState() updater to ensure state isn't stale in certain edge cases. + function updater(prevState) { + var state = this.constructor.getDerivedStateFromProps( + nextProps, + prevState, + ); + return state !== null && state !== undefined ? state : null; + } + // Binding "this" is important for shallow renderer support. + this.setState(updater.bind(this)); + } + + function componentWillUpdate(nextProps, nextState) { + try { + var prevProps = this.props; + var prevState = this.state; + this.props = nextProps; + this.state = nextState; + this.__reactInternalSnapshotFlag = true; + this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate( + prevProps, + prevState, + ); + } finally { + this.props = prevProps; + this.state = prevState; + } + } + + // React may warn about cWM/cWRP/cWU methods being deprecated. + // Add a flag to suppress these warnings for this special case. + componentWillMount.__suppressDeprecationWarning = true; + componentWillReceiveProps.__suppressDeprecationWarning = true; + componentWillUpdate.__suppressDeprecationWarning = true; + + function polyfill(Component) { + var prototype = Component.prototype; + + if (!prototype || !prototype.isReactComponent) { + throw new Error('Can only polyfill class components'); + } + + if ( + typeof Component.getDerivedStateFromProps !== 'function' && + typeof prototype.getSnapshotBeforeUpdate !== 'function' + ) { + return Component; + } + + // If new component APIs are defined, "unsafe" lifecycles won't be called. + // Error if any of these lifecycles are present, + // Because they would work differently between older and newer (16.3+) versions of React. + var foundWillMountName = null; + var foundWillReceivePropsName = null; + var foundWillUpdateName = null; + if (typeof prototype.componentWillMount === 'function') { + foundWillMountName = 'componentWillMount'; + } else if ( + typeof prototype.UNSAFE_componentWillMount === 'function' + ) { + foundWillMountName = 'UNSAFE_componentWillMount'; + } + if (typeof prototype.componentWillReceiveProps === 'function') { + foundWillReceivePropsName = 'componentWillReceiveProps'; + } else if ( + typeof prototype.UNSAFE_componentWillReceiveProps === 'function' + ) { + foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps'; + } + if (typeof prototype.componentWillUpdate === 'function') { + foundWillUpdateName = 'componentWillUpdate'; + } else if ( + typeof prototype.UNSAFE_componentWillUpdate === 'function' + ) { + foundWillUpdateName = 'UNSAFE_componentWillUpdate'; + } + if ( + foundWillMountName !== null || + foundWillReceivePropsName !== null || + foundWillUpdateName !== null + ) { + var componentName = Component.displayName || Component.name; + var newApiName = + typeof Component.getDerivedStateFromProps === 'function' + ? 'getDerivedStateFromProps()' + : 'getSnapshotBeforeUpdate()'; + + throw Error( + 'Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n' + + componentName + + ' uses ' + + newApiName + + ' but also contains the following legacy lifecycles:' + + (foundWillMountName !== null + ? '\n ' + foundWillMountName + : '') + + (foundWillReceivePropsName !== null + ? '\n ' + foundWillReceivePropsName + : '') + + (foundWillUpdateName !== null + ? '\n ' + foundWillUpdateName + : '') + + '\n\nThe above lifecycles should be removed. Learn more about this warning here:\n' + + 'https://fb.me/react-async-component-lifecycle-hooks', + ); + } + + // React <= 16.2 does not support static getDerivedStateFromProps. + // As a workaround, use cWM and cWRP to invoke the new static lifecycle. + // Newer versions of React will ignore these lifecycles if gDSFP exists. + if (typeof Component.getDerivedStateFromProps === 'function') { + prototype.componentWillMount = componentWillMount; + prototype.componentWillReceiveProps = componentWillReceiveProps; + } + + // React <= 16.2 does not support getSnapshotBeforeUpdate. + // As a workaround, use cWU to invoke the new lifecycle. + // Newer versions of React will ignore that lifecycle if gSBU exists. + if (typeof prototype.getSnapshotBeforeUpdate === 'function') { + if (typeof prototype.componentDidUpdate !== 'function') { + throw new Error( + 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype', + ); + } + + prototype.componentWillUpdate = componentWillUpdate; + + var componentDidUpdate = prototype.componentDidUpdate; + + prototype.componentDidUpdate = function componentDidUpdatePolyfill( + prevProps, + prevState, + maybeSnapshot, + ) { + // 16.3+ will not execute our will-update method; + // It will pass a snapshot value to did-update though. + // Older versions will require our polyfilled will-update value. + // We need to handle both cases, but can't just check for the presence of "maybeSnapshot", + // Because for <= 15.x versions this might be a "prevContext" object. + // We also can't just check "__reactInternalSnapshot", + // Because get-snapshot might return a falsy value. + // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior. + var snapshot = this.__reactInternalSnapshotFlag + ? this.__reactInternalSnapshot + : maybeSnapshot; + + componentDidUpdate.call(this, prevProps, prevState, snapshot); + }; + } + + return Component; + } + + /***/ + }, + /* 107 */ + /***/ function(module, exports, __webpack_require__) { + __webpack_require__(54); + module.exports = __webpack_require__(55); + + /***/ + }, + /******/ + ], + ); +}); +//# sourceMappingURL=rc-pagination.js.map diff --git a/dist/rc-pagination.js.map b/dist/rc-pagination.js.map new file mode 100644 index 00000000..8a803383 --- /dev/null +++ b/dist/rc-pagination.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap cf03c8c062ca5c1a738d","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_core.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_descriptors.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_global.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_has.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-dp.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_export.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_hide.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_is-object.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_to-iobject.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_wks.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_an-object.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_fails.js","webpack:///./~/_process@0.11.10@process/browser.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_library.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-keys.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-pie.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_property-desc.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_uid.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_defined.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_enum-bug-keys.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_iterators.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-create.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-gops.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_set-to-string-tag.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_shared-key.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_shared.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_to-integer.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_to-object.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_to-primitive.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_wks-define.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_wks-ext.js","webpack:///./~/_prop-types@15.7.2@prop-types/index.js","webpack:///./~/_prop-types@15.7.2@prop-types/lib/ReactPropTypesSecret.js","webpack:///external {\"root\":\"React\",\"commonjs2\":\"react\",\"commonjs\":\"react\",\"amd\":\"react\"}","webpack:///./src/KeyCode.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/define-property.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/helpers/classCallCheck.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/helpers/createClass.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/helpers/defineProperty.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/helpers/inherits.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/helpers/possibleConstructorReturn.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/helpers/typeof.js","webpack:///./~/_classnames@2.2.6@classnames/index.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_cof.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_ctx.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_dom-create.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_ie8-dom-define.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_iobject.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_iter-define.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-gopd.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-gopn.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-keys-internal.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_redefine.js","webpack:///./~/_react-is@16.12.0@react-is/index.js","webpack:///./src/index.js","webpack:///./assets/index.less?8fdf","webpack:///./src/Options.jsx","webpack:///./src/Pager.jsx","webpack:///./src/Pagination.jsx","webpack:///./src/locale/zh_CN.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/assign.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/create.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/set-prototype-of.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/core-js/symbol.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/core-js/symbol/iterator.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/helpers/extends.js","webpack:///./~/_core-js@2.6.11@core-js/library/fn/object/assign.js","webpack:///./~/_core-js@2.6.11@core-js/library/fn/object/create.js","webpack:///./~/_core-js@2.6.11@core-js/library/fn/object/define-property.js","webpack:///./~/_core-js@2.6.11@core-js/library/fn/object/set-prototype-of.js","webpack:///./~/_core-js@2.6.11@core-js/library/fn/symbol/index.js","webpack:///./~/_core-js@2.6.11@core-js/library/fn/symbol/iterator.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_a-function.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_add-to-unscopables.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_array-includes.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_enum-keys.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_html.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_is-array.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_iter-create.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_iter-step.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_meta.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-assign.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-dps.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-gopn-ext.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-gpo.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_set-proto.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_string-at.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_to-absolute-index.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_to-length.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es6.array.iterator.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es6.object.assign.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es6.object.create.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es6.object.define-property.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es6.object.set-prototype-of.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es6.string.iterator.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es6.symbol.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es7.symbol.async-iterator.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es7.symbol.observable.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/web.dom.iterable.js","webpack:///./~/_object-assign@4.1.1@object-assign/index.js","webpack:///./~/_prop-types@15.7.2@prop-types/checkPropTypes.js","webpack:///./~/_prop-types@15.7.2@prop-types/factoryWithThrowingShims.js","webpack:///./~/_prop-types@15.7.2@prop-types/factoryWithTypeCheckers.js","webpack:///./~/_react-is@16.12.0@react-is/cjs/react-is.development.js","webpack:///./~/_react-is@16.12.0@react-is/cjs/react-is.production.min.js","webpack:///./~/_react-lifecycles-compat@3.0.4@react-lifecycles-compat/react-lifecycles-compat.es.js"],"names":["ZERO","NINE","NUMPAD_ZERO","NUMPAD_NINE","BACKSPACE","DELETE","ENTER","ARROW_UP","ARROW_DOWN","Options","state","goInputText","buildOptionText","value","props","locale","items_per_page","changeSize","Number","handleChange","e","setState","target","handleBlur","goButton","quickGo","rootPrefixCls","relatedTarget","className","indexOf","getValidValue","go","keyCode","KEYCODE","type","current","isNaN","pageSize","pageSizeOptions","selectComponentClass","selectPrefixCls","disabled","prefixCls","Select","changeSelect","goInput","gotoButton","options","map","opt","i","toString","triggerNode","parentNode","jump_to_confirm","jump_to","page","React","Component","propTypes","PropTypes","bool","func","number","arrayOf","string","object","oneOfType","node","defaultProps","Pager","cls","classNames","active","handleClick","onClick","handleKeyPress","onKeyPress","showTitle","itemRender","last","noop","isInteger","isFinite","Math","floor","defaultItemRender","element","calculatePage","p","total","Pagination","hasOnChange","onChange","hasCurrent","console","warn","defaultCurrent","defaultPageSize","min","undefined","currentInputValue","prevProps","prevState","paginationNode","lastCurrentNode","querySelector","document","activeElement","blur","inputValue","allPages","prevPage","prevIcon","prevButton","getItemIcon","hasPrev","isValidElement","cloneElement","nextPage","nextIcon","nextButton","hasNext","hideOnSinglePage","pagerList","jumpPrev","jumpNext","firstPager","lastPager","showQuickJumper","pageBufferSize","showLessItems","dataOrAriaAttributeProps","Object","keys","reduce","prev","key","substr","simple","handleGoTO","style","savePaginationNode","prev_page","runIfEnterPrev","renderPrev","handleKeyDown","handleKeyUp","next_page","next","runIfEnterNext","renderNext","pagerProps","runIfEnter","push","prevItemTitle","prev_3","prev_5","nextItemTitle","next_3","next_5","showPrevNextJumpers","jumpPrevClassString","jumpPrevIcon","runIfEnterJumpPrev","getJumpPrevPage","jumpNextClassString","jumpNextIcon","runIfEnterJumpNext","getJumpNextPage","left","max","right","unshift","length","totalText","showTotal","prevDisabled","nextDisabled","showSizeChanger","changePageSize","shouldDisplayQuickJumper","newState","newCurrent","onShowSizeChange","LOCALE","icon","iconNode","createElement","isValid","preventDefault","size","currentPage","event","callback","restParams","charCode","polyfill"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,O;QCVA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA,2CAA2C,cAAc;;QAEzD;QACA;QACA;QACA;QACA;QACA;QACA;QACA,KAAK;QACL;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;QAEA;QACA;;;;;;;AChEA,6BAA6B;AAC7B,uCAAuC;;;;;;;ACDvC;AACA,kBAAkB,mBAAO,CAAC,EAAU;AACpC,iCAAiC,QAAQ,mBAAmB,UAAU,EAAE,EAAE;AAC1E,CAAC;;;;;;;ACHD;AACA;AACA;AACA;AACA;AACA,yCAAyC;;;;;;;ACLzC,uBAAuB;AACvB;AACA;AACA;;;;;;;ACHA,eAAe,mBAAO,CAAC,EAAc;AACrC,qBAAqB,mBAAO,CAAC,EAAmB;AAChD,kBAAkB,mBAAO,CAAC,EAAiB;AAC3C;;AAEA,YAAY,mBAAO,CAAC,CAAgB;AACpC;AACA;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;AACA;AACA;AACA;;;;;;;ACfA,aAAa,mBAAO,CAAC,CAAW;AAChC,WAAW,mBAAO,CAAC,CAAS;AAC5B,UAAU,mBAAO,CAAC,EAAQ;AAC1B,WAAW,mBAAO,CAAC,CAAS;AAC5B,UAAU,mBAAO,CAAC,CAAQ;AAC1B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iEAAiE;AACjE;AACA,kFAAkF;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,SAAS;AACT;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,eAAe;AACf,eAAe;AACf,eAAe;AACf,gBAAgB;AAChB;;;;;;;AC7DA,SAAS,mBAAO,CAAC,CAAc;AAC/B,iBAAiB,mBAAO,CAAC,EAAkB;AAC3C,iBAAiB,mBAAO,CAAC,CAAgB;AACzC;AACA,CAAC;AACD;AACA;AACA;;;;;;;ACPA;AACA;AACA;;;;;;;ACFA;AACA,cAAc,mBAAO,CAAC,EAAY;AAClC,cAAc,mBAAO,CAAC,EAAY;AAClC;AACA;AACA;;;;;;;ACLA,YAAY,mBAAO,CAAC,EAAW;AAC/B,UAAU,mBAAO,CAAC,EAAQ;AAC1B,aAAa,mBAAO,CAAC,CAAW;AAChC;;AAEA;AACA;AACA;AACA;;AAEA;;;;;;;ACVA,eAAe,mBAAO,CAAC,CAAc;AACrC;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;ACNA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,qCAAqC;;AAErC;AACA;AACA;;AAEA,2BAA2B;AAC3B;AACA;AACA;AACA,4BAA4B,UAAU;;;;;;;ACvLtC;;;;;;;ACAA;AACA,YAAY,mBAAO,CAAC,EAAyB;AAC7C,kBAAkB,mBAAO,CAAC,EAAkB;;AAE5C;AACA;AACA;;;;;;;ACNA,cAAc;;;;;;;ACAd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACPA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA;;;;;;;ACHA;;;;;;;ACAA;AACA,eAAe,mBAAO,CAAC,EAAc;AACrC,UAAU,mBAAO,CAAC,EAAe;AACjC,kBAAkB,mBAAO,CAAC,EAAkB;AAC5C,eAAe,mBAAO,CAAC,EAAe;AACtC,yBAAyB;AACzB;;AAEA;AACA;AACA;AACA,eAAe,mBAAO,CAAC,EAAe;AACtC;AACA;AACA;AACA;AACA;AACA,EAAE,mBAAO,CAAC,EAAS;AACnB,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;;;;;;ACxCA;;;;;;;ACAA,UAAU,mBAAO,CAAC,CAAc;AAChC,UAAU,mBAAO,CAAC,CAAQ;AAC1B,UAAU,mBAAO,CAAC,CAAQ;;AAE1B;AACA,oEAAoE,iCAAiC;AACrG;;;;;;;ACNA,aAAa,mBAAO,CAAC,EAAW;AAChC,UAAU,mBAAO,CAAC,EAAQ;AAC1B;AACA;AACA;;;;;;;ACJA,WAAW,mBAAO,CAAC,CAAS;AAC5B,aAAa,mBAAO,CAAC,CAAW;AAChC;AACA,kDAAkD;;AAElD;AACA,qEAAqE;AACrE,CAAC;AACD;AACA,QAAQ,mBAAO,CAAC,EAAY;AAC5B;AACA,CAAC;;;;;;;ACXD;AACA;AACA;AACA;AACA;AACA;;;;;;;ACLA;AACA,cAAc,mBAAO,CAAC,EAAY;AAClC;AACA;AACA;;;;;;;ACJA;AACA,eAAe,mBAAO,CAAC,CAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACXA,aAAa,mBAAO,CAAC,CAAW;AAChC,WAAW,mBAAO,CAAC,CAAS;AAC5B,cAAc,mBAAO,CAAC,EAAY;AAClC,aAAa,mBAAO,CAAC,EAAY;AACjC,qBAAqB,mBAAO,CAAC,CAAc;AAC3C;AACA,0DAA0D,sBAAsB;AAChF,kFAAkF,wBAAwB;AAC1G;;;;;;;ACRA,YAAY,mBAAO,CAAC,CAAQ;;;;;;;ACA5B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,gBAAgB,mBAAO,CAAC,EAAU;;AAElC;AACA;AACA;AACA,mBAAmB,mBAAO,CAAC,GAA2B;AACtD,CAAC;AACD;AACA;AACA,mBAAmB,mBAAO,CAAC,GAA4B;AACvD;;;;;;;;;AClBA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;;AAEA;;;;;;;ACXA,gD;;;;;;;ACAe;AACbA,QAAM,EADO;AAEbC,QAAM,EAFO;;AAIbC,eAAa,EAJA;AAKbC,eAAa,GALA;;AAObC,aAAW,CAPE;AAQbC,UAAQ,EARK;AASbC,SAAO,EATM;;AAWbC,YAAU,EAXG;AAYbC,cAAY;AAZC,CAAf,E;;;;;;ACAA,kBAAkB,YAAY,mBAAO,CAAC,EAA2C,sB;;;;;;;ACApE;;AAEb;;AAEA;AACA;AACA;AACA;AACA,E;;;;;;;ACRa;;AAEb;;AAEA,sBAAsB,mBAAO,CAAC,EAAmC;;AAEjE;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA,mBAAmB,kBAAkB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC,G;;;;;;;AC1BY;;AAEb;;AAEA,sBAAsB,mBAAO,CAAC,EAAmC;;AAEjE;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;;AAEA;AACA,E;;;;;;;ACvBa;;AAEb;;AAEA,sBAAsB,mBAAO,CAAC,EAAoC;;AAElE;;AAEA,cAAc,mBAAO,CAAC,EAA0B;;AAEhD;;AAEA,eAAe,mBAAO,CAAC,EAAmB;;AAE1C;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,E;;;;;;;AChCa;;AAEb;;AAEA,eAAe,mBAAO,CAAC,EAAmB;;AAE1C;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;;AAEA;AACA,E;;;;;;;AChBa;;AAEb;;AAEA,gBAAgB,mBAAO,CAAC,EAA4B;;AAEpD;;AAEA,cAAc,mBAAO,CAAC,EAAmB;;AAEzC;;AAEA,iHAAiH,mBAAmB,EAAE,mBAAmB,4JAA4J;;AAErT,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA,CAAC;AACD;AACA,E;;;;;;ACpBA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,gBAAgB;;AAEhB;AACA;;AAEA,iBAAiB,sBAAsB;AACvC;AACA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,EAAE,UAAU,IAA4E;AACxF;AACA,EAAE,iCAAqB,EAAE,kCAAE;AAC3B;AACA,GAAG;AAAA,oGAAC;AACJ,EAAE;AACF;AACA;AACA,CAAC;;;;;;;ACnDD,iBAAiB;;AAEjB;AACA;AACA;;;;;;;ACJA;AACA,gBAAgB,mBAAO,CAAC,EAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACnBA,eAAe,mBAAO,CAAC,CAAc;AACrC,eAAe,mBAAO,CAAC,CAAW;AAClC;AACA;AACA;AACA;AACA;;;;;;;ACNA,kBAAkB,mBAAO,CAAC,CAAgB,MAAM,mBAAO,CAAC,EAAU;AAClE,+BAA+B,mBAAO,CAAC,EAAe,gBAAgB,mBAAmB,UAAU,EAAE,EAAE;AACvG,CAAC;;;;;;;ACFD;AACA,UAAU,mBAAO,CAAC,EAAQ;AAC1B;AACA;AACA;AACA;;;;;;;;ACLa;AACb,cAAc,mBAAO,CAAC,EAAY;AAClC,cAAc,mBAAO,CAAC,CAAW;AACjC,eAAe,mBAAO,CAAC,EAAa;AACpC,WAAW,mBAAO,CAAC,CAAS;AAC5B,gBAAgB,mBAAO,CAAC,EAAc;AACtC,kBAAkB,mBAAO,CAAC,EAAgB;AAC1C,qBAAqB,mBAAO,CAAC,EAAsB;AACnD,qBAAqB,mBAAO,CAAC,EAAe;AAC5C,eAAe,mBAAO,CAAC,CAAQ;AAC/B,8CAA8C;AAC9C;AACA;AACA;;AAEA,8BAA8B,aAAa;;AAE3C;AACA;AACA;AACA;AACA;AACA,yCAAyC,oCAAoC;AAC7E,6CAA6C,oCAAoC;AACjF,KAAK,4BAA4B,oCAAoC;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,mBAAmB;AACnC;AACA;AACA,kCAAkC,2BAA2B;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;;;;;;ACpEA,UAAU,mBAAO,CAAC,EAAe;AACjC,iBAAiB,mBAAO,CAAC,EAAkB;AAC3C,gBAAgB,mBAAO,CAAC,CAAe;AACvC,kBAAkB,mBAAO,CAAC,EAAiB;AAC3C,UAAU,mBAAO,CAAC,CAAQ;AAC1B,qBAAqB,mBAAO,CAAC,EAAmB;AAChD;;AAEA,YAAY,mBAAO,CAAC,CAAgB;AACpC;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;AACA;;;;;;;ACfA;AACA,YAAY,mBAAO,CAAC,EAAyB;AAC7C,iBAAiB,mBAAO,CAAC,EAAkB;;AAE3C;AACA;AACA;;;;;;;ACNA,UAAU,mBAAO,CAAC,CAAQ;AAC1B,gBAAgB,mBAAO,CAAC,CAAe;AACvC,mBAAmB,mBAAO,CAAC,EAAmB;AAC9C,eAAe,mBAAO,CAAC,EAAe;;AAEtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AChBA,iBAAiB,mBAAO,CAAC,CAAS;;;;;;;;ACAlC,+CAAa;;AAEb;AACA,mBAAmB,mBAAO,CAAC,GAAkC;AAC7D,CAAC;AACD,mBAAmB,mBAAO,CAAC,GAA+B;AAC1D;;;;;;;;;ACNA;AAAA;AAAA;;;;;;;ACAA,yC;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;;IAEMC,O;;;;;;;;;;;;;;qPAoBJC,K,GAAQ;AACNC,mBAAa;AADP,K,QASRC,e,GAAkB,UAACC,KAAD,EAAW;AAC3B,aAAUA,KAAV,SAAmB,MAAKC,KAAL,CAAWC,MAAX,CAAkBC,cAArC;AACD,K,QAEDC,U,GAAa,UAACJ,KAAD,EAAW;AACtB,YAAKC,KAAL,CAAWG,UAAX,CAAsBC,OAAOL,KAAP,CAAtB;AACD,K,QAEDM,Y,GAAe,UAACC,CAAD,EAAO;AACpB,YAAKC,QAAL,CAAc;AACZV,qBAAaS,EAAEE,MAAF,CAAST;AADV,OAAd;AAGD,K,QAEDU,U,GAAa,UAACH,CAAD,EAAO;AAAA,wBAC2B,MAAKN,KADhC;AAAA,UACVU,QADU,eACVA,QADU;AAAA,UACAC,OADA,eACAA,OADA;AAAA,UACSC,aADT,eACSA,aADT;;AAElB,UAAIF,QAAJ,EAAc;AACZ;AACD;AACD,UACEJ,EAAEO,aAAF,KAEEP,EAAEO,aAAF,CAAgBC,SAAhB,CAA0BC,OAA1B,CAAqCH,aAArC,eAA8D,CAA9D,IACAN,EAAEO,aAAF,CAAgBC,SAAhB,CAA0BC,OAA1B,CAAqCH,aAArC,eAA8D,CAHhE,CADF,EAME;AACA;AACD;AACDD,cAAQ,MAAKK,aAAL,EAAR;AACD,K,QAEDC,E,GAAK,UAACX,CAAD,EAAO;AAAA,UACFT,WADE,GACc,MAAKD,KADnB,CACFC,WADE;;AAEV,UAAIA,gBAAgB,EAApB,EAAwB;AACtB;AACD;AACD,UAAIS,EAAEY,OAAF,KAAcC,yDAAOA,CAAC3B,KAAtB,IAA+Bc,EAAEc,IAAF,KAAW,OAA9C,EAAuD;AACrD,cAAKb,QAAL,CAAc;AACZV,uBAAa;AADD,SAAd;AAGA,cAAKG,KAAL,CAAWW,OAAX,CAAmB,MAAKK,aAAL,EAAnB;AACD;AACF,K;;;;;oCA/Ce;AAAA,mBACmB,KAAKpB,KADxB;AAAA,UACNC,WADM,UACNA,WADM;AAAA,UACOwB,OADP,UACOA,OADP;;AAEd,aAAO,CAACxB,WAAD,IAAgByB,MAAMzB,WAAN,CAAhB,GAAqCwB,OAArC,GAA+CjB,OAAOP,WAAP,CAAtD;AACD;;;6BA8CQ;AAAA;;AAAA,mBAKH,KAAKG,KALF;AAAA,UAELuB,QAFK,UAELA,QAFK;AAAA,UAEKC,eAFL,UAEKA,eAFL;AAAA,UAEsBvB,MAFtB,UAEsBA,MAFtB;AAAA,UAE8BW,aAF9B,UAE8BA,aAF9B;AAAA,UAE6CT,UAF7C,UAE6CA,UAF7C;AAAA,UAGLQ,OAHK,UAGLA,OAHK;AAAA,UAGID,QAHJ,UAGIA,QAHJ;AAAA,UAGce,oBAHd,UAGcA,oBAHd;AAAA,UAGoC3B,eAHpC,UAGoCA,eAHpC;AAAA,UAIL4B,eAJK,UAILA,eAJK;AAAA,UAIYC,QAJZ,UAIYA,QAJZ;AAAA,UAMC9B,WAND,GAMiB,KAAKD,KANtB,CAMCC,WAND;;AAOP,UAAM+B,YAAehB,aAAf,aAAN;AACA,UAAMiB,SAASJ,oBAAf;AACA,UAAIK,eAAe,IAAnB;AACA,UAAIC,UAAU,IAAd;AACA,UAAIC,aAAa,IAAjB;;AAEA,UAAI,CAAC7B,UAAD,IAAe,CAACQ,OAApB,EAA6B;AAC3B,eAAO,IAAP;AACD;;AAED,UAAIR,cAAc0B,MAAlB,EAA0B;AACxB,YAAMI,UAAUT,gBAAgBU,GAAhB,CAAoB,UAACC,GAAD,EAAMC,CAAN;AAAA,iBAClC;AAAC,kBAAD,CAAQ,MAAR;AAAA,cAAe,KAAKA,CAApB,EAAuB,OAAOD,GAA9B;AACG,aAACrC,mBAAmB,OAAKA,eAAzB,EAA0CqC,GAA1C;AADH,WADkC;AAAA,SAApB,CAAhB;;AAMAL,uBACE;AAAC,gBAAD;AAAA;AACE,sBAAUH,QADZ;AAEE,uBAAWD,eAFb;AAGE,wBAAY,KAHd;AAIE,uBAAcE,SAAd,kBAJF;AAKE,6BAAgB,UALlB;AAME,sCAA0B,KAN5B;AAOE,mBAAO,CAACL,YAAYC,gBAAgB,CAAhB,CAAb,EAAiCa,QAAjC,EAPT;AAQE,sBAAU,KAAKlC,UARjB;AASE,+BAAmB;AAAA,qBAAemC,YAAYC,UAA3B;AAAA;AATrB;AAWGN;AAXH,SADF;AAeD;;AAED,UAAItB,OAAJ,EAAa;AACX,YAAID,QAAJ,EAAc;AACZsB,uBAAa,OAAOtB,QAAP,KAAoB,SAApB,GACX;AAAA;AAAA;AACE,oBAAK,QADP;AAEE,uBAAS,KAAKO,EAFhB;AAGE,uBAAS,KAAKA,EAHhB;AAIE,wBAAUU;AAJZ;AAMG1B,mBAAOuC;AANV,WADW,GAUX;AAAA;AAAA;AACE,uBAAS,KAAKvB,EADhB;AAEE,uBAAS,KAAKA;AAFhB;AAIGP;AAJH,WAVF;AAiBD;AACDqB,kBACE;AAAA;AAAA,YAAK,WAAcH,SAAd,kBAAL;AACG3B,iBAAOwC,OADV;AAEE;AACE,sBAAUd,QADZ;AAEE,kBAAK,MAFP;AAGE,mBAAO9B,WAHT;AAIE,sBAAU,KAAKQ,YAJjB;AAKE,qBAAS,KAAKY,EALhB;AAME,oBAAQ,KAAKR;AANf,YAFF;AAUGR,iBAAOyC,IAVV;AAWGV;AAXH,SADF;AAeD;;AAED,aACE;AAAA;AAAA,UAAI,gBAAcJ,SAAlB;AACGE,oBADH;AAEGC;AAFH,OADF;AAMD;;;;EA7JmBY,6CAAKA,CAACC,S;;AAAtBjD,O,CACGkD,S,GAAY;AACjBlB,YAAUmB,kDAASA,CAACC,IADH;AAEjB5C,cAAY2C,kDAASA,CAACE,IAFL;AAGjBrC,WAASmC,kDAASA,CAACE,IAHF;AAIjBvB,wBAAsBqB,kDAASA,CAACE,IAJf;AAKjB3B,WAASyB,kDAASA,CAACG,MALF;AAMjBzB,mBAAiBsB,kDAASA,CAACI,OAAV,CAAkBJ,kDAASA,CAACK,MAA5B,CANA;AAOjB5B,YAAUuB,kDAASA,CAACG,MAPH;AAQjBnD,mBAAiBgD,kDAASA,CAACE,IARV;AASjB/C,UAAQ6C,kDAASA,CAACM,MATD;AAUjBxC,iBAAekC,kDAASA,CAACK,MAVR;AAWjBzB,mBAAiBoB,kDAASA,CAACK,MAXV;AAYjBzC,YAAUoC,kDAASA,CAACO,SAAV,CAAoB,CAACP,kDAASA,CAACC,IAAX,EAAiBD,kDAASA,CAACQ,IAA3B,CAApB;AAZO,C;AADf3D,O,CAgBG4D,Y,GAAe;AACpB/B,mBAAiB,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB;AADG,C;;;AAgJT7B,gEAAf,E;;;;;;;;;;;;;;;;ACpKA;AACA;AACA;;AAEA,IAAM6D,QAAQ,SAARA,KAAQ,CAACxD,KAAD,EAAW;AAAA;;AACvB,MAAM4B,YAAe5B,MAAMY,aAArB,UAAN;AACA,MAAM6C,MAAMC,kDAAUA,CAAC9B,SAAX,EAAyBA,SAAzB,SAAsC5B,MAAM0C,IAA5C,+GACNd,SADM,cACe5B,MAAM2D,MADrB,6FAET3D,MAAMc,SAFG,EAES,CAAC,CAACd,MAAMc,SAFjB,6FAGNc,SAHM,gBAGiB,CAAC5B,MAAM0C,IAHxB,gBAAZ;;AAMA,MAAMkB,cAAc,SAAdA,WAAc,GAAM;AACxB5D,UAAM6D,OAAN,CAAc7D,MAAM0C,IAApB;AACD,GAFD;;AAIA,MAAMoB,iBAAiB,SAAjBA,cAAiB,IAAK;AAC1B9D,UAAM+D,UAAN,CAAiBzD,CAAjB,EAAoBN,MAAM6D,OAA1B,EAAmC7D,MAAM0C,IAAzC;AACD,GAFD;;AAIA,SACE;AAAA;AAAA;AACE,aAAO1C,MAAMgE,SAAN,GAAkBhE,MAAM0C,IAAxB,GAA+B,IADxC;AAEE,iBAAWe,GAFb;AAGE,eAASG,WAHX;AAIE,kBAAYE,cAJd;AAKE,gBAAS;AALX;AAOG9D,UAAMiE,UAAN,CAAiBjE,MAAM0C,IAAvB,EAA6B,MAA7B,EAAqC;AAAA;AAAA;AAAI1C,YAAM0C;AAAV,KAArC;AAPH,GADF;AAWD,CA3BD;;AA6BAc,MAAMX,SAAN,GAAkB;AAChBH,QAAMI,kDAASA,CAACG,MADA;AAEhBU,UAAQb,kDAASA,CAACC,IAFF;AAGhBmB,QAAMpB,kDAASA,CAACC,IAHA;AAIhB9C,UAAQ6C,kDAASA,CAACM,MAJF;AAKhBtC,aAAWgC,kDAASA,CAACK,MALL;AAMhBa,aAAWlB,kDAASA,CAACC,IANL;AAOhBnC,iBAAekC,kDAASA,CAACK,MAPT;AAQhBU,WAASf,kDAASA,CAACE,IARH;AAShBe,cAAYjB,kDAASA,CAACE,IATN;AAUhBiB,cAAYnB,kDAASA,CAACE;AAVN,CAAlB;;AAaeQ,8DAAf,E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASW,IAAT,GAAgB,CACf;;AAED,SAASC,SAAT,CAAmBrE,KAAnB,EAA0B;AACxB,SAAO,OAAOA,KAAP,KAAiB,QAAjB,IACLsE,SAAStE,KAAT,CADK,IAELuE,KAAKC,KAAL,CAAWxE,KAAX,MAAsBA,KAFxB;AAGD;;AAED,SAASyE,iBAAT,CAA2B9B,IAA3B,EAAiCtB,IAAjC,EAAuCqD,OAAvC,EAAgD;AAC9C,SAAOA,OAAP;AACD;;AAED,SAASC,aAAT,CAAuBC,CAAvB,EAA0B/E,KAA1B,EAAiCI,KAAjC,EAAwC;AACtC,MAAIuB,WAAWoD,CAAf;AACA,MAAI,OAAOpD,QAAP,KAAoB,WAAxB,EAAqC;AACnCA,eAAW3B,MAAM2B,QAAjB;AACD;AACD,SAAO+C,KAAKC,KAAL,CAAW,CAACvE,MAAM4E,KAAN,GAAc,CAAf,IAAoBrD,QAA/B,IAA2C,CAAlD;AACD;;IAEKsD,U;;;AAmDJ,sBAAY7E,KAAZ,EAAmB;AAAA;;AAAA,qLACXA,KADW;;AAAA;;AAGjB,QAAM8E,cAAc9E,MAAM+E,QAAN,KAAmBZ,IAAvC;AACA,QAAMa,aAAc,aAAahF,KAAjC;AACA,QAAIgF,cAAc,CAACF,WAAnB,EAAgC;AAC9BG,cAAQC,IAAR,CAAa,yIAAb,EAD8B,CAC2H;AAC1J;;AAED,QAAI7D,UAAUrB,MAAMmF,cAApB;AACA,QAAI,aAAanF,KAAjB,EAAwB;AACtBqB,gBAAUrB,MAAMqB,OAAhB;AACD;;AAED,QAAIE,WAAWvB,MAAMoF,eAArB;AACA,QAAI,cAAcpF,KAAlB,EAAyB;AACvBuB,iBAAWvB,MAAMuB,QAAjB;AACD;;AAEDF,cAAUiD,KAAKe,GAAL,CAAShE,OAAT,EAAkBqD,cAAcnD,QAAd,EAAwB+D,SAAxB,EAAmCtF,KAAnC,CAAlB,CAAV;;AAEA,UAAKJ,KAAL,GAAa;AACXyB,sBADW;AAEXkE,yBAAmBlE,OAFR;AAGXE;AAHW,KAAb;AArBiB;AA0BlB;;;;uCAEkBiE,S,EAAWC,S,EAAW;AACvC;AACA;AAFuC,UAG/B7D,SAH+B,GAGjB,KAAK5B,KAHY,CAG/B4B,SAH+B;;AAIvC,UAAI6D,UAAUpE,OAAV,KAAsB,KAAKzB,KAAL,CAAWyB,OAAjC,IAA4C,KAAKqE,cAArD,EAAqE;AACnE,YAAMC,kBAAkB,KAAKD,cAAL,CAAoBE,aAApB,OAClBhE,SADkB,cACA6D,UAAUpE,OADV,CAAxB;AAGA,YAAIsE,mBAAmBE,SAASC,aAAT,KAA2BH,eAAlD,EAAmE;AACjEA,0BAAgBI,IAAhB;AACD;AACF;AACF;;;kCAsDazF,C,EAAG;AACf,UAAM0F,aAAa1F,EAAEE,MAAF,CAAST,KAA5B;AACA,UAAMkG,WAAWvB,cAAcY,SAAd,EAAyB,KAAK1F,KAA9B,EAAqC,KAAKI,KAA1C,CAAjB;AAFe,UAGPuF,iBAHO,GAGe,KAAK3F,KAHpB,CAGP2F,iBAHO;;AAIf,UAAIxF,cAAJ;AACA,UAAIiG,eAAe,EAAnB,EAAuB;AACrBjG,gBAAQiG,UAAR;AACD,OAFD,MAEO,IAAI1E,MAAMlB,OAAO4F,UAAP,CAAN,CAAJ,EAA+B;AACpCjG,gBAAQwF,iBAAR;AACD,OAFM,MAEA,IAAIS,cAAcC,QAAlB,EAA4B;AACjClG,gBAAQkG,QAAR;AACD,OAFM,MAEA;AACLlG,gBAAQK,OAAO4F,UAAP,CAAR;AACD;AACD,aAAOjG,KAAP;AACD;;;+BAuJUmG,Q,EAAU;AAAA,mBACc,KAAKlG,KADnB;AAAA,UACXmG,QADW,UACXA,QADW;AAAA,UACDlC,UADC,UACDA,UADC;;AAEnB,UAAMmC,aAAanC,WAAWiC,QAAX,EAAqB,MAArB,EAA6B,KAAKG,WAAL,CAAiBF,QAAjB,CAA7B,CAAnB;AACA,UAAMxE,WAAW,CAAC,KAAK2E,OAAL,EAAlB;AACA,aAAOC,4EAAcA,CAACH,UAAf,IAA6BI,0EAAYA,CAACJ,UAAb,EAAyB,EAAEzE,kBAAF,EAAzB,CAA7B,GAAsEyE,UAA7E;AACD;;;+BAEUK,Q,EAAU;AAAA,oBACc,KAAKzG,KADnB;AAAA,UACX0G,QADW,WACXA,QADW;AAAA,UACDzC,UADC,WACDA,UADC;;AAEnB,UAAM0C,aAAa1C,WAAWwC,QAAX,EAAqB,MAArB,EAA6B,KAAKJ,WAAL,CAAiBK,QAAjB,CAA7B,CAAnB;AACA,UAAM/E,WAAW,CAAC,KAAKiF,OAAL,EAAlB;AACA,aAAOL,4EAAcA,CAACI,UAAf,IAA6BH,0EAAYA,CAACG,UAAb,EAAyB,EAAEhF,kBAAF,EAAzB,CAA7B,GAAsEgF,UAA7E;AACD;;;6BAEQ;AAAA,oBACoC,KAAK3G,KADzC;AAAA,UACC4B,SADD,WACCA,SADD;AAAA,UACYd,SADZ,WACYA,SADZ;AAAA,UACuBa,QADvB,WACuBA,QADvB;;AAGP;;AACA,UAAI,KAAK3B,KAAL,CAAW6G,gBAAX,KAAgC,IAAhC,IAAwC,KAAK7G,KAAL,CAAW4E,KAAX,IAAoB,KAAKhF,KAAL,CAAW2B,QAA3E,EAAqF;AACnF,eAAO,IAAP;AACD;;AAED,UAAMvB,QAAQ,KAAKA,KAAnB;AACA,UAAMC,SAASD,MAAMC,MAArB;;AAEA,UAAMgG,WAAWvB,cAAcY,SAAd,EAAyB,KAAK1F,KAA9B,EAAqC,KAAKI,KAA1C,CAAjB;AACA,UAAM8G,YAAY,EAAlB;AACA,UAAIC,WAAW,IAAf;AACA,UAAIC,WAAW,IAAf;AACA,UAAIC,aAAa,IAAjB;AACA,UAAIC,YAAY,IAAhB;AACA,UAAIlF,aAAa,IAAjB;;AAEA,UAAMtB,WAAYV,MAAMmH,eAAN,IAAyBnH,MAAMmH,eAAN,CAAsBzG,QAAjE;AACA,UAAM0G,iBAAiBpH,MAAMqH,aAAN,GAAsB,CAAtB,GAA0B,CAAjD;AApBO,mBAqBuB,KAAKzH,KArB5B;AAAA,UAqBCyB,OArBD,UAqBCA,OArBD;AAAA,UAqBUE,QArBV,UAqBUA,QArBV;;;AAuBP,UAAM2E,WAAW7E,UAAU,CAAV,GAAc,CAAd,GAAkBA,UAAU,CAA5B,GAAgC,CAAjD;AACA,UAAMoF,WAAWpF,UAAU,CAAV,GAAc4E,QAAd,GAAyB5E,UAAU,CAAnC,GAAuC4E,QAAxD;;AAEA,UAAMqB,2BAA2BC,OAAOC,IAAP,CAAYxH,KAAZ,EAAmByH,MAAnB,CAA0B,UAACC,IAAD,EAAOC,GAAP,EAAe;AACxE,YAAKA,IAAIC,MAAJ,CAAW,CAAX,EAAc,CAAd,MAAqB,OAArB,IAAgCD,IAAIC,MAAJ,CAAW,CAAX,EAAc,CAAd,MAAqB,OAArD,IAAgED,QAAQ,MAA7E,EAAsF;AACpFD,eAAKC,GAAL,IAAY3H,MAAM2H,GAAN,CAAZ;AACD;AACD,eAAOD,IAAP;AACD,OALgC,EAK9B,EAL8B,CAAjC;;AAOA,UAAI1H,MAAM6H,MAAV,EAAkB;AAChB,YAAInH,QAAJ,EAAc;AACZ,cAAI,OAAOA,QAAP,KAAoB,SAAxB,EAAmC;AACjCsB,yBACE;AAAA;AAAA;AACE,sBAAK,QADP;AAEE,yBAAS,KAAK8F,UAFhB;AAGE,yBAAS,KAAKA;AAHhB;AAKG7H,qBAAOuC;AALV,aADF;AASD,WAVD,MAUO;AACLR,yBACE;AAAA;AAAA;AACE,yBAAS,KAAK8F,UADhB;AAEE,yBAAS,KAAKA;AAFhB;AAGEpH;AAHF,aADF;AAMD;AACDsB,uBACE;AAAA;AAAA;AACE,qBAAOhC,MAAMgE,SAAN,QAAqB/D,OAAOwC,OAA5B,GAAsC,KAAK7C,KAAL,CAAWyB,OAAjD,SAA4D4E,QAA5D,GAAyE,IADlF;AAEE,yBAAcrE,SAAd;AAFF;AAIGI;AAJH,WADF;AAQD;;AAED,eACE;AAAA;AAAA;AACE,uBAAcJ,SAAd,SAA2BA,SAA3B,gBAA+C5B,MAAMc,SADvD;AAEE,mBAAOd,MAAM+H,KAFf;AAGE,iBAAK,KAAKC;AAHZ,aAIMV,wBAJN;AAME;AAAA;AAAA;AACE,qBAAOtH,MAAMgE,SAAN,GAAkB/D,OAAOgI,SAAzB,GAAqC,IAD9C;AAEE,uBAAS,KAAKP,IAFhB;AAGE,wBAAU,KAAKpB,OAAL,KAAiB,CAAjB,GAAqB,IAHjC;AAIE,0BAAY,KAAK4B,cAJnB;AAKE,0BAAc,KAAK5B,OAAL,KAAiB,EAAjB,GAAyB1E,SAAzB,cAAd,UAA+DA,SAA/D,UALF;AAME,+BAAe,CAAC,KAAK0E,OAAL;AANlB;AAQG,iBAAK6B,UAAL,CAAgBjC,QAAhB;AARH,WANF;AAgBE;AAAA;AAAA;AACE,qBAAOlG,MAAMgE,SAAN,GAAqB,KAAKpE,KAAL,CAAWyB,OAAhC,SAA2C4E,QAA3C,GAAwD,IADjE;AAEE,yBAAcrE,SAAd;AAFF;AAIE;AACE,oBAAK,MADP;AAEE,qBAAO,KAAKhC,KAAL,CAAW2F,iBAFpB;AAGE,yBAAW,KAAK6C,aAHlB;AAIE,uBAAS,KAAKC,WAJhB;AAKE,wBAAU,KAAKA,WALjB;AAME,oBAAK;AANP,cAJF;AAYE;AAAA;AAAA,gBAAM,WAAczG,SAAd,WAAN;AAAA;AAAA,aAZF;AAaGqE;AAbH,WAhBF;AA+BE;AAAA;AAAA;AACE,qBAAOjG,MAAMgE,SAAN,GAAkB/D,OAAOqI,SAAzB,GAAqC,IAD9C;AAEE,uBAAS,KAAKC,IAFhB;AAGE,wBAAU,KAAKjC,OAAL,KAAiB,CAAjB,GAAqB,IAHjC;AAIE,0BAAY,KAAKkC,cAJnB;AAKE,0BAAc,KAAK5B,OAAL,KAAiB,EAAjB,GAAyBhF,SAAzB,cAAd,UAA+DA,SAA/D,UALF;AAME,+BAAe,CAAC,KAAKgF,OAAL;AANlB;AAQG,iBAAK6B,UAAL,CAAgBhC,QAAhB;AARH,WA/BF;AAyCGzE;AAzCH,SADF;AA6CD;;AAED,UAAIiE,YAAY,IAAImB,iBAAiB,CAArC,EAAwC;AACtC,YAAMsB,aAAa;AACjBzI,wBADiB;AAEjBW,yBAAegB,SAFE;AAGjBiC,mBAAS,KAAKxD,YAHG;AAIjB0D,sBAAY,KAAK4E,UAJA;AAKjB3E,qBAAWhE,MAAMgE,SALA;AAMjBC,sBAAYjE,MAAMiE;AAND,SAAnB;AAQA,YAAI,CAACgC,QAAL,EAAe;AACba,oBAAU8B,IAAV,CACE,4DAAC,uDAAD,4EACMF,UADN;AAEE,iBAAI,SAFN;AAGE,kBAAMzC,QAHR;AAIE,uBAAcrE,SAAd;AAJF,aADF;AAQD;AACD,aAAK,IAAIQ,IAAI,CAAb,EAAgBA,KAAK6D,QAArB,EAA+B7D,GAA/B,EAAoC;AAClC,cAAMuB,SAAS,KAAK/D,KAAL,CAAWyB,OAAX,KAAuBe,CAAtC;AACA0E,oBAAU8B,IAAV,CACE,4DAAC,uDAAD,4EACMF,UADN;AAEE,iBAAKtG,CAFP;AAGE,kBAAMA,CAHR;AAIE,oBAAQuB;AAJV,aADF;AAQD;AACF,OA9BD,MA8BO;AACL,YAAMkF,gBAAgB7I,MAAMqH,aAAN,GAAsBpH,OAAO6I,MAA7B,GAAsC7I,OAAO8I,MAAnE;AACA,YAAMC,gBAAgBhJ,MAAMqH,aAAN,GAAsBpH,OAAOgJ,MAA7B,GAAsChJ,OAAOiJ,MAAnE;AACA,YAAIlJ,MAAMmJ,mBAAV,EAA+B;AAC7B,cAAIC,sBAAyBxH,SAAzB,eAAJ;AACA,cAAI5B,MAAMqJ,YAAV,EAAwB;AACtBD,yCAA2BxH,SAA3B;AACD;AACDmF,qBACE;AAAA;AAAA;AACE,qBAAO/G,MAAMgE,SAAN,GAAkB6E,aAAlB,GAAkC,IAD3C;AAEE,mBAAI,MAFN;AAGE,uBAAS,KAAK9B,QAHhB;AAIE,wBAAS,GAJX;AAKE,0BAAY,KAAKuC,kBALnB;AAME,yBAAWF;AANb;AAQGpJ,kBAAMiE,UAAN,CACC,KAAKsF,eAAL,EADD,EAEC,WAFD,EAGC,KAAKlD,WAAL,CAAiBrG,MAAMqJ,YAAvB,CAHD;AARH,WADF;AAgBA,cAAIG,sBAAyB5H,SAAzB,eAAJ;AACA,cAAI5B,MAAMyJ,YAAV,EAAwB;AACtBD,yCAA2B5H,SAA3B;AACD;AACDoF,qBACE;AAAA;AAAA;AACE,qBAAOhH,MAAMgE,SAAN,GAAkBgF,aAAlB,GAAkC,IAD3C;AAEE,mBAAI,MAFN;AAGE,wBAAS,GAHX;AAIE,uBAAS,KAAKhC,QAJhB;AAKE,0BAAY,KAAK0C,kBALnB;AAME,yBAAWF;AANb;AAQGxJ,kBAAMiE,UAAN,CACC,KAAK0F,eAAL,EADD,EAEC,WAFD,EAGC,KAAKtD,WAAL,CAAiBrG,MAAMyJ,YAAvB,CAHD;AARH,WADF;AAgBD;AACDvC,oBACE,4DAAC,uDAAD;AACE,kBAAQlH,MAAMC,MADhB;AAEE,oBAFF;AAGE,yBAAe2B,SAHjB;AAIE,mBAAS,KAAKvB,YAJhB;AAKE,sBAAY,KAAKsI,UALnB;AAME,eAAK1C,QANP;AAOE,gBAAMA,QAPR;AAQE,kBAAQ,KARV;AASE,qBAAWjG,MAAMgE,SATnB;AAUE,sBAAYhE,MAAMiE;AAVpB,UADF;AAcAgD,qBACE,4DAAC,uDAAD;AACE,kBAAQjH,MAAMC,MADhB;AAEE,yBAAe2B,SAFjB;AAGE,mBAAS,KAAKvB,YAHhB;AAIE,sBAAY,KAAKsI,UAJnB;AAKE,eAAK,CALP;AAME,gBAAM,CANR;AAOE,kBAAQ,KAPV;AAQE,qBAAW3I,MAAMgE,SARnB;AASE,sBAAYhE,MAAMiE;AATpB,UADF;;AAcA,YAAI2F,OAAOtF,KAAKuF,GAAL,CAAS,CAAT,EAAYxI,UAAU+F,cAAtB,CAAX;AACA,YAAI0C,QAAQxF,KAAKe,GAAL,CAAShE,UAAU+F,cAAnB,EAAmCnB,QAAnC,CAAZ;;AAEA,YAAI5E,UAAU,CAAV,IAAe+F,cAAnB,EAAmC;AACjC0C,kBAAQ,IAAI1C,iBAAiB,CAA7B;AACD;;AAED,YAAInB,WAAW5E,OAAX,IAAsB+F,cAA1B,EAA0C;AACxCwC,iBAAO3D,WAAWmB,iBAAiB,CAAnC;AACD;;AAED,aAAK,IAAIhF,KAAIwH,IAAb,EAAmBxH,MAAK0H,KAAxB,EAA+B1H,IAA/B,EAAoC;AAClC,cAAMuB,UAAStC,YAAYe,EAA3B;AACA0E,oBAAU8B,IAAV,CACE,4DAAC,uDAAD;AACE,oBAAQ5I,MAAMC,MADhB;AAEE,2BAAe2B,SAFjB;AAGE,qBAAS,KAAKvB,YAHhB;AAIE,wBAAY,KAAKsI,UAJnB;AAKE,iBAAKvG,EALP;AAME,kBAAMA,EANR;AAOE,oBAAQuB,OAPV;AAQE,uBAAW3D,MAAMgE,SARnB;AASE,wBAAYhE,MAAMiE;AATpB,YADF;AAaD;;AAED,YAAI5C,UAAU,CAAV,IAAe+F,iBAAiB,CAAhC,IAAqC/F,YAAY,IAAI,CAAzD,EAA4D;AAC1DyF,oBAAU,CAAV,IAAenE,6CAAKA,CAAC6D,YAAN,CAAmBM,UAAU,CAAV,CAAnB,EAAiC;AAC9ChG,uBAAcc,SAAd;AAD8C,WAAjC,CAAf;AAGAkF,oBAAUiD,OAAV,CAAkBhD,QAAlB;AACD;AACD,YAAId,WAAW5E,OAAX,IAAsB+F,iBAAiB,CAAvC,IAA4C/F,YAAY4E,WAAW,CAAvE,EAA0E;AACxEa,oBAAUA,UAAUkD,MAAV,GAAmB,CAA7B,IAAkCrH,6CAAKA,CAAC6D,YAAN,CAAmBM,UAAUA,UAAUkD,MAAV,GAAmB,CAA7B,CAAnB,EAAoD;AACpFlJ,uBAAcc,SAAd;AADoF,WAApD,CAAlC;AAGAkF,oBAAU8B,IAAV,CAAe5B,QAAf;AACD;;AAED,YAAI4C,SAAS,CAAb,EAAgB;AACd9C,oBAAUiD,OAAV,CAAkB9C,UAAlB;AACD;AACD,YAAI6C,UAAU7D,QAAd,EAAwB;AACtBa,oBAAU8B,IAAV,CAAe1B,SAAf;AACD;AACF;;AAED,UAAI+C,YAAY,IAAhB;;AAEA,UAAIjK,MAAMkK,SAAV,EAAqB;AACnBD,oBACE;AAAA;AAAA,YAAI,WAAcrI,SAAd,gBAAJ;AACG5B,gBAAMkK,SAAN,CACClK,MAAM4E,KADP,EAEC,CACE5E,MAAM4E,KAAN,KAAgB,CAAhB,GAAoB,CAApB,GAAwB,CAACvD,UAAU,CAAX,IAAgBE,QAAhB,GAA2B,CADrD,EAEEF,UAAUE,QAAV,GAAqBvB,MAAM4E,KAA3B,GAAmC5E,MAAM4E,KAAzC,GAAiDvD,UAAUE,QAF7D,CAFD;AADH,SADF;AAWD;AACD,UAAM4I,eAAe,CAAC,KAAK7D,OAAL,EAAD,IAAmB,CAACL,QAAzC;AACA,UAAMmE,eAAe,CAAC,KAAKxD,OAAL,EAAD,IAAmB,CAACX,QAAzC;AACA,aACE;AAAA;AAAA;AACE,qBAAWvC,kDAAUA,CAAC9B,SAAX,EAAsBd,SAAtB,mFACLc,SADK,gBACkBD,QADlB,EADb;AAIE,iBAAO3B,MAAM+H,KAJf;AAKE,wBAAa,cALf;AAME,eAAK,KAAKC;AANZ,WAOMV,wBAPN;AASG2C,iBATH;AAUE;AAAA;AAAA;AACE,mBAAOjK,MAAMgE,SAAN,GAAkB/D,OAAOgI,SAAzB,GAAqC,IAD9C;AAEE,qBAAS,KAAKP,IAFhB;AAGE,sBAAUyC,eAAe,IAAf,GAAsB,CAHlC;AAIE,wBAAY,KAAKjC,cAJnB;AAKE,wBAAc,CAACiC,YAAD,GAAgB,EAAhB,GAAwBvI,SAAxB,cAAd,UAA8DA,SAA9D,UALF;AAME,6BAAeuI;AANjB;AAQG,eAAKhC,UAAL,CAAgBjC,QAAhB;AARH,SAVF;AAoBGY,iBApBH;AAqBE;AAAA;AAAA;AACE,mBAAO9G,MAAMgE,SAAN,GAAkB/D,OAAOqI,SAAzB,GAAqC,IAD9C;AAEE,qBAAS,KAAKC,IAFhB;AAGE,sBAAU6B,eAAe,IAAf,GAAsB,CAHlC;AAIE,wBAAY,KAAK5B,cAJnB;AAKE,wBAAc,CAAC4B,YAAD,GAAgB,EAAhB,GAAwBxI,SAAxB,cAAd,UAA8DA,SAA9D,UALF;AAME,6BAAewI;AANjB;AAQG,eAAK3B,UAAL,CAAgBhC,QAAhB;AARH,SArBF;AA+BE,oEAAC,0DAAD;AACE,oBAAU9E,QADZ;AAEE,kBAAQ3B,MAAMC,MAFhB;AAGE,yBAAe2B,SAHjB;AAIE,gCAAsB5B,MAAMyB,oBAJ9B;AAKE,2BAAiBzB,MAAM0B,eALzB;AAME,sBAAY,KAAK1B,KAAL,CAAWqK,eAAX,GAA6B,KAAKC,cAAlC,GAAmD,IANjE;AAOE,mBAAS,KAAK1K,KAAL,CAAWyB,OAPtB;AAQE,oBAAU,KAAKzB,KAAL,CAAW2B,QARvB;AASE,2BAAiB,KAAKvB,KAAL,CAAWwB,eAT9B;AAUE,mBAAS,KAAK+I,wBAAL,KAAkC,KAAKlK,YAAvC,GAAsD,IAVjE;AAWE,oBAAUK;AAXZ;AA/BF,OADF;AA+CD;;;6CA9iB+BV,K,EAAOyF,S,EAAW;AAChD,UAAM+E,WAAW,EAAjB;;AAEA,UAAI,aAAaxK,KAAjB,EAAwB;AACtBwK,iBAASnJ,OAAT,GAAmBrB,MAAMqB,OAAzB;;AAEA,YAAIrB,MAAMqB,OAAN,KAAkBoE,UAAUpE,OAAhC,EAAyC;AACvCmJ,mBAASjF,iBAAT,GAA6BiF,SAASnJ,OAAtC;AACD;AACF;;AAED,UAAI,cAAcrB,KAAd,IAAuBA,MAAMuB,QAAN,KAAmBkE,UAAUlE,QAAxD,EAAkE;AAChE,YAAIF,UAAUoE,UAAUpE,OAAxB;AACA,YAAMoJ,aAAa/F,cAAc1E,MAAMuB,QAApB,EAA8BkE,SAA9B,EAAyCzF,KAAzC,CAAnB;AACAqB,kBAAUA,UAAUoJ,UAAV,GAAuBA,UAAvB,GAAoCpJ,OAA9C;;AAEA,YAAI,EAAE,aAAarB,KAAf,CAAJ,EAA2B;AACzBwK,mBAASnJ,OAAT,GAAmBA,OAAnB;AACAmJ,mBAASjF,iBAAT,GAA6BlE,OAA7B;AACD;AACDmJ,iBAASjJ,QAAT,GAAoBvB,MAAMuB,QAA1B;AACD;;AAED,aAAOiJ,QAAP;AACD;;AAaD;;;;;;;;;EAlIuB7H,6CAAKA,CAACC,S;;AAAzBiC,U,CACGhC,S,GAAY;AACjBlB,YAAUmB,kDAASA,CAACC,IADH;AAEjBnB,aAAWkB,kDAASA,CAACK,MAFJ;AAGjBrC,aAAWgC,kDAASA,CAACK,MAHJ;AAIjB9B,WAASyB,kDAASA,CAACG,MAJF;AAKjBkC,kBAAgBrC,kDAASA,CAACG,MALT;AAMjB2B,SAAO9B,kDAASA,CAACG,MANA;AAOjB1B,YAAUuB,kDAASA,CAACG,MAPH;AAQjBmC,mBAAiBtC,kDAASA,CAACG,MARV;AASjB8B,YAAUjC,kDAASA,CAACE,IATH;AAUjB6D,oBAAkB/D,kDAASA,CAACC,IAVX;AAWjBsH,mBAAiBvH,kDAASA,CAACC,IAXV;AAYjBsE,iBAAevE,kDAASA,CAACC,IAZR;AAajB2H,oBAAkB5H,kDAASA,CAACE,IAbX;AAcjBvB,wBAAsBqB,kDAASA,CAACE,IAdf;AAejBmG,uBAAqBrG,kDAASA,CAACC,IAfd;AAgBjBoE,mBAAiBrE,kDAASA,CAACO,SAAV,CAAoB,CAACP,kDAASA,CAACC,IAAX,EAAiBD,kDAASA,CAACM,MAA3B,CAApB,CAhBA;AAiBjBY,aAAWlB,kDAASA,CAACC,IAjBJ;AAkBjBvB,mBAAiBsB,kDAASA,CAACI,OAAV,CAAkBJ,kDAASA,CAACK,MAA5B,CAlBA;AAmBjB+G,aAAWpH,kDAASA,CAACE,IAnBJ;AAoBjB/C,UAAQ6C,kDAASA,CAACM,MApBD;AAqBjB2E,SAAOjF,kDAASA,CAACM,MArBA;AAsBjBa,cAAYnB,kDAASA,CAACE,IAtBL;AAuBjBmD,YAAUrD,kDAASA,CAACO,SAAV,CAAoB,CAACP,kDAASA,CAACE,IAAX,EAAiBF,kDAASA,CAACQ,IAA3B,CAApB,CAvBO;AAwBjBoD,YAAU5D,kDAASA,CAACO,SAAV,CAAoB,CAACP,kDAASA,CAACE,IAAX,EAAiBF,kDAASA,CAACQ,IAA3B,CAApB,CAxBO;AAyBjB+F,gBAAcvG,kDAASA,CAACO,SAAV,CAAoB,CAACP,kDAASA,CAACE,IAAX,EAAiBF,kDAASA,CAACQ,IAA3B,CAApB,CAzBG;AA0BjBmG,gBAAc3G,kDAASA,CAACO,SAAV,CAAoB,CAACP,kDAASA,CAACE,IAAX,EAAiBF,kDAASA,CAACQ,IAA3B,CAApB;AA1BG,C;AADfuB,U,CA8BGtB,Y,GAAe;AACpB4B,kBAAgB,CADI;AAEpBP,SAAO,CAFa;AAGpBQ,mBAAiB,EAHG;AAIpBL,YAAUZ,IAJU;AAKpBrD,aAAW,EALS;AAMpBY,mBAAiB,WANG;AAOpBE,aAAW,eAPS;AAQpBH,wBAAsB,IARF;AASpBoF,oBAAkB,KATE;AAUpBsC,uBAAqB,IAVD;AAWpBhC,mBAAiB,KAXG;AAYpBkD,mBAAiB,KAZG;AAapBhD,iBAAe,KAbK;AAcpBrD,aAAW,IAdS;AAepB0G,oBAAkBvG,IAfE;AAgBpBlE,UAAQ0K,+DAhBY;AAiBpB5C,SAAO,EAjBa;AAkBpB9D,cAAYO;AAlBQ,C;;;;;OAyFtB+E,e,GAAkB,YAAM;AACtB,WAAOjF,KAAKuF,GAAL,CAAS,CAAT,EAAY,OAAKjK,KAAL,CAAWyB,OAAX,IAAsB,OAAKrB,KAAL,CAAWqH,aAAX,GAA2B,CAA3B,GAA+B,CAArD,CAAZ,CAAP;AACD,G;;OAEDsC,e,GAAkB,YAAM;AACtB,WAAOrF,KAAKe,GAAL,CACLX,cAAcY,SAAd,EAAyB,OAAK1F,KAA9B,EAAqC,OAAKI,KAA1C,CADK,EAEL,OAAKJ,KAAL,CAAWyB,OAAX,IAAsB,OAAKrB,KAAL,CAAWqH,aAAX,GAA2B,CAA3B,GAA+B,CAArD,CAFK,CAAP;AAID,G;;OAODhB,W,GAAc,UAACuE,IAAD,EAAU;AAAA,QACdhJ,SADc,GACA,OAAK5B,KADL,CACd4B,SADc;;AAEtB,QAAIiJ,WAAWD,QACV,mEAAG,WAAchJ,SAAd,eAAH,GADL;AAEA,QAAI,OAAOgJ,IAAP,KAAgB,UAApB,EAAgC;AAC9BC,iBAAWlI,6CAAKA,CAACmI,aAAN,CAAoBF,IAApB,4EAA+B,OAAK5K,KAApC,EAAX;AACD;AACD,WAAO6K,QAAP;AACD,G;;OAmBD7C,kB,GAAqB,UAAC1E,IAAD,EAAU;AAC7B,WAAKoC,cAAL,GAAsBpC,IAAtB;AACD,G;;OAEDyH,O,GAAU,UAACrI,IAAD,EAAU;AAClB,WAAO0B,UAAU1B,IAAV,KAAmBA,SAAS,OAAK9C,KAAL,CAAWyB,OAA9C;AACD,G;;OAEDkJ,wB,GAA2B,YAAM;AAAA,kBACc,OAAKvK,KADnB;AAAA,QACvBmH,eADuB,WACvBA,eADuB;AAAA,QACN5F,QADM,WACNA,QADM;AAAA,QACIqD,KADJ,WACIA,KADJ;;AAE/B,QAAIA,SAASrD,QAAb,EAAuB;AACrB,aAAO,KAAP;AACD;AACD,WAAO4F,eAAP;AACD,G;;OAEDiB,a,GAAgB,UAAC9H,CAAD,EAAO;AACrB,QAAIA,EAAEY,OAAF,KAAcC,0DAAOA,CAAC1B,QAAtB,IAAkCa,EAAEY,OAAF,KAAcC,0DAAOA,CAACzB,UAA5D,EAAwE;AACtEY,QAAE0K,cAAF;AACD;AACF,G;;OAED3C,W,GAAc,UAAC/H,CAAD,EAAO;AACnB,QAAMP,QAAQ,OAAKiB,aAAL,CAAmBV,CAAnB,CAAd;AADmB,QAEXiF,iBAFW,GAEW,OAAK3F,KAFhB,CAEX2F,iBAFW;;AAGnB,QAAIxF,UAAUwF,iBAAd,EAAiC;AAC/B,aAAKhF,QAAL,CAAc;AACZgF,2BAAmBxF;AADP,OAAd;AAGD;AACD,QAAIO,EAAEY,OAAF,KAAcC,0DAAOA,CAAC3B,KAA1B,EAAiC;AAC/B,aAAKa,YAAL,CAAkBN,KAAlB;AACD,KAFD,MAEO,IAAIO,EAAEY,OAAF,KAAcC,0DAAOA,CAAC1B,QAA1B,EAAoC;AACzC,aAAKY,YAAL,CAAkBN,QAAQ,CAA1B;AACD,KAFM,MAEA,IAAIO,EAAEY,OAAF,KAAcC,0DAAOA,CAACzB,UAA1B,EAAsC;AAC3C,aAAKW,YAAL,CAAkBN,QAAQ,CAA1B;AACD;AACF,G;;OAEDuK,c,GAAiB,UAACW,IAAD,EAAU;AACzB,QAAI5J,UAAU,OAAKzB,KAAL,CAAWyB,OAAzB;AACA,QAAMoJ,aAAa/F,cAAcuG,IAAd,EAAoB,OAAKrL,KAAzB,EAAgC,OAAKI,KAArC,CAAnB;AACAqB,cAAUA,UAAUoJ,UAAV,GAAuBA,UAAvB,GAAoCpJ,OAA9C;AACA;AACA;AACA,QAAIoJ,eAAe,CAAnB,EAAsB;AACpBpJ,gBAAU,OAAKzB,KAAL,CAAWyB,OAArB;AACD;;AAED,QAAI,OAAO4J,IAAP,KAAgB,QAApB,EAA8B;AAC5B,UAAI,EAAE,cAAc,OAAKjL,KAArB,CAAJ,EAAiC;AAC/B,eAAKO,QAAL,CAAc;AACZgB,oBAAU0J;AADE,SAAd;AAGD;AACD,UAAI,EAAE,aAAa,OAAKjL,KAApB,CAAJ,EAAgC;AAC9B,eAAKO,QAAL,CAAc;AACZc,0BADY;AAEZkE,6BAAmBlE;AAFP,SAAd;AAID;AACF;AACD,WAAKrB,KAAL,CAAW0K,gBAAX,CAA4BrJ,OAA5B,EAAqC4J,IAArC;AACD,G;;OAED5K,Y,GAAe,UAACsE,CAAD,EAAO;AAAA,QACZhD,QADY,GACC,OAAK3B,KADN,CACZ2B,QADY;;;AAGpB,QAAIe,OAAOiC,CAAX;AACA,QAAI,OAAKoG,OAAL,CAAarI,IAAb,KAAsB,CAACf,QAA3B,EAAqC;AACnC,UAAMuJ,cAAcxG,cAAcY,SAAd,EAAyB,OAAK1F,KAA9B,EAAqC,OAAKI,KAA1C,CAApB;AACA,UAAI0C,OAAOwI,WAAX,EAAwB;AACtBxI,eAAOwI,WAAP;AACD,OAFD,MAEO,IAAIxI,OAAO,CAAX,EAAc;AACnBA,eAAO,CAAP;AACD;;AAED,UAAI,EAAE,aAAa,OAAK1C,KAApB,CAAJ,EAAgC;AAC9B,eAAKO,QAAL,CAAc;AACZc,mBAASqB,IADG;AAEZ6C,6BAAmB7C;AAFP,SAAd;AAID;;AAED,UAAMnB,WAAW,OAAK3B,KAAL,CAAW2B,QAA5B;AACA,aAAKvB,KAAL,CAAW+E,QAAX,CAAoBrC,IAApB,EAA0BnB,QAA1B;;AAEA,aAAOmB,IAAP;AACD;;AAED,WAAO,OAAK9C,KAAL,CAAWyB,OAAlB;AACD,G;;OAEDqG,I,GAAO,YAAM;AACX,QAAI,OAAKpB,OAAL,EAAJ,EAAoB;AAClB,aAAKjG,YAAL,CAAkB,OAAKT,KAAL,CAAWyB,OAAX,GAAqB,CAAvC;AACD;AACF,G;;OAEDkH,I,GAAO,YAAM;AACX,QAAI,OAAK3B,OAAL,EAAJ,EAAoB;AAClB,aAAKvG,YAAL,CAAkB,OAAKT,KAAL,CAAWyB,OAAX,GAAqB,CAAvC;AACD;AACF,G;;OAED0F,Q,GAAW,YAAM;AACf,WAAK1G,YAAL,CAAkB,OAAKkJ,eAAL,EAAlB;AACD,G;;OAEDvC,Q,GAAW,YAAM;AACf,WAAK3G,YAAL,CAAkB,OAAKsJ,eAAL,EAAlB;AACD,G;;OAEDrD,O,GAAU,YAAM;AACd,WAAO,OAAK1G,KAAL,CAAWyB,OAAX,GAAqB,CAA5B;AACD,G;;OAEDuF,O,GAAU,YAAM;AACd,WAAO,OAAKhH,KAAL,CAAWyB,OAAX,GAAqBqD,cAAcY,SAAd,EAAyB,OAAK1F,KAA9B,EAAqC,OAAKI,KAA1C,CAA5B;AACD,G;;OAED2I,U,GAAa,UAACwC,KAAD,EAAQC,QAAR,EAAoC;AAAA,sCAAfC,UAAe;AAAfA,gBAAe;AAAA;;AAC/C,QAAIF,MAAMxD,GAAN,KAAc,OAAd,IAAyBwD,MAAMG,QAAN,KAAmB,EAAhD,EAAoD;AAClDF,gCAAYC,UAAZ;AACD;AACF,G;;OAEDnD,c,GAAiB,aAAK;AACpB,WAAKS,UAAL,CAAgBrI,CAAhB,EAAmB,OAAKoH,IAAxB;AACD,G;;OAEDc,c,GAAiB,aAAK;AACpB,WAAKG,UAAL,CAAgBrI,CAAhB,EAAmB,OAAKiI,IAAxB;AACD,G;;OAEDe,kB,GAAqB,aAAK;AACxB,WAAKX,UAAL,CAAgBrI,CAAhB,EAAmB,OAAKyG,QAAxB;AACD,G;;OAED2C,kB,GAAqB,aAAK;AACxB,WAAKf,UAAL,CAAgBrI,CAAhB,EAAmB,OAAK0G,QAAxB;AACD,G;;OAEDc,U,GAAa,aAAK;AAChB,QAAIxH,EAAEY,OAAF,KAAcC,0DAAOA,CAAC3B,KAAtB,IAA+Bc,EAAEc,IAAF,KAAW,OAA9C,EAAuD;AACrD,aAAKf,YAAL,CAAkB,OAAKT,KAAL,CAAW2F,iBAA7B;AACD;AACF,G;;;AAyVHgG,iGAAQA,CAAC1G,UAAT;;AAEeA,mEAAf,E;;;;;;;AC9qBe;AACb;AACA3E,kBAAgB,KAFH;AAGbuC,WAAS,IAHI;AAIbD,mBAAiB,IAJJ;AAKbE,QAAM,GALO;;AAOb;AACAuF,aAAW,KARE;AASbK,aAAW,KATE;AAUbS,UAAQ,QAVK;AAWbG,UAAQ,QAXK;AAYbJ,UAAQ,QAZK;AAabG,UAAQ;AAbK,CAAf,E;;;;;;ACAA,kBAAkB,YAAY,mBAAO,CAAC,EAAkC,sB;;;;;;ACAxE,kBAAkB,YAAY,mBAAO,CAAC,EAAkC,sB;;;;;;ACAxE,kBAAkB,YAAY,mBAAO,CAAC,EAA4C,sB;;;;;;ACAlF,kBAAkB,YAAY,mBAAO,CAAC,EAA2B,sB;;;;;;ACAjE,kBAAkB,YAAY,mBAAO,CAAC,EAAoC,sB;;;;;;;ACA7D;;AAEb;;AAEA,cAAc,mBAAO,CAAC,EAA0B;;AAEhD;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA,iBAAiB,sBAAsB;AACvC;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,E;;;;;;ACtBA,mBAAO,CAAC,EAAiC;AACzC,iBAAiB,mBAAO,CAAC,CAAqB;;;;;;;ACD9C,mBAAO,CAAC,EAAiC;AACzC,cAAc,mBAAO,CAAC,CAAqB;AAC3C;AACA;AACA;;;;;;;ACJA,mBAAO,CAAC,EAA0C;AAClD,cAAc,mBAAO,CAAC,CAAqB;AAC3C;AACA;AACA;;;;;;;ACJA,mBAAO,CAAC,EAA2C;AACnD,iBAAiB,mBAAO,CAAC,CAAqB;;;;;;;ACD9C,mBAAO,CAAC,EAA0B;AAClC,mBAAO,CAAC,EAAoC;AAC5C,mBAAO,CAAC,EAAyC;AACjD,mBAAO,CAAC,EAAqC;AAC7C,iBAAiB,mBAAO,CAAC,CAAqB;;;;;;;ACJ9C,mBAAO,CAAC,EAAmC;AAC3C,mBAAO,CAAC,EAAgC;AACxC,iBAAiB,mBAAO,CAAC,EAAwB;;;;;;;ACFjD;AACA;AACA;AACA;;;;;;;ACHA,8BAA8B;;;;;;;ACA9B;AACA;AACA,gBAAgB,mBAAO,CAAC,CAAe;AACvC,eAAe,mBAAO,CAAC,EAAc;AACrC,sBAAsB,mBAAO,CAAC,EAAsB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,YAAY,eAAe;AAChC;AACA,KAAK;AACL;AACA;;;;;;;ACtBA;AACA,cAAc,mBAAO,CAAC,EAAgB;AACtC,WAAW,mBAAO,CAAC,EAAgB;AACnC,UAAU,mBAAO,CAAC,EAAe;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;ACdA,eAAe,mBAAO,CAAC,CAAW;AAClC;;;;;;;ACDA;AACA,UAAU,mBAAO,CAAC,EAAQ;AAC1B;AACA;AACA;;;;;;;;ACJa;AACb,aAAa,mBAAO,CAAC,EAAkB;AACvC,iBAAiB,mBAAO,CAAC,EAAkB;AAC3C,qBAAqB,mBAAO,CAAC,EAAsB;AACnD;;AAEA;AACA,mBAAO,CAAC,CAAS,qBAAqB,mBAAO,CAAC,CAAQ,4BAA4B,aAAa,EAAE;;AAEjG;AACA,qDAAqD,4BAA4B;AACjF;AACA;;;;;;;ACZA;AACA,UAAU;AACV;;;;;;;ACFA,WAAW,mBAAO,CAAC,EAAQ;AAC3B,eAAe,mBAAO,CAAC,CAAc;AACrC,UAAU,mBAAO,CAAC,CAAQ;AAC1B,cAAc,mBAAO,CAAC,CAAc;AACpC;AACA;AACA;AACA;AACA,cAAc,mBAAO,CAAC,EAAU;AAChC,iDAAiD;AACjD,CAAC;AACD;AACA,qBAAqB;AACrB;AACA,SAAS;AACT,GAAG,EAAE;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACpDa;AACb;AACA,kBAAkB,mBAAO,CAAC,CAAgB;AAC1C,cAAc,mBAAO,CAAC,EAAgB;AACtC,WAAW,mBAAO,CAAC,EAAgB;AACnC,UAAU,mBAAO,CAAC,EAAe;AACjC,eAAe,mBAAO,CAAC,EAAc;AACrC,cAAc,mBAAO,CAAC,EAAY;AAClC;;AAEA;AACA,6BAA6B,mBAAO,CAAC,EAAU;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,UAAU,EAAE;AAChD,mBAAmB,sCAAsC;AACzD,CAAC,qCAAqC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,CAAC;;;;;;;ACrCD,SAAS,mBAAO,CAAC,CAAc;AAC/B,eAAe,mBAAO,CAAC,EAAc;AACrC,cAAc,mBAAO,CAAC,EAAgB;;AAEtC,iBAAiB,mBAAO,CAAC,CAAgB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACZA;AACA,gBAAgB,mBAAO,CAAC,CAAe;AACvC,WAAW,mBAAO,CAAC,EAAgB;AACnC,iBAAiB;;AAEjB;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;;;;;;AClBA;AACA,UAAU,mBAAO,CAAC,CAAQ;AAC1B,eAAe,mBAAO,CAAC,EAAc;AACrC,eAAe,mBAAO,CAAC,EAAe;AACtC;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;ACZA;AACA;AACA,eAAe,mBAAO,CAAC,CAAc;AACrC,eAAe,mBAAO,CAAC,EAAc;AACrC;AACA;AACA;AACA;AACA;AACA,kDAAkD;AAClD;AACA;AACA,cAAc,mBAAO,CAAC,EAAQ,iBAAiB,mBAAO,CAAC,EAAgB;AACvE;AACA;AACA,OAAO,YAAY,cAAc;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,GAAG;AACR;AACA;;;;;;;ACxBA,gBAAgB,mBAAO,CAAC,EAAe;AACvC,cAAc,mBAAO,CAAC,EAAY;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AChBA,gBAAgB,mBAAO,CAAC,EAAe;AACvC;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AACA,gBAAgB,mBAAO,CAAC,EAAe;AACvC;AACA;AACA,2DAA2D;AAC3D;;;;;;;;ACLa;AACb,uBAAuB,mBAAO,CAAC,EAAuB;AACtD,WAAW,mBAAO,CAAC,EAAc;AACjC,gBAAgB,mBAAO,CAAC,EAAc;AACtC,gBAAgB,mBAAO,CAAC,CAAe;;AAEvC;AACA;AACA;AACA;AACA,iBAAiB,mBAAO,CAAC,EAAgB;AACzC,gCAAgC;AAChC,cAAc;AACd,iBAAiB;AACjB;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;;;;;;;ACjCA;AACA,cAAc,mBAAO,CAAC,CAAW;;AAEjC,0CAA0C,SAAS,mBAAO,CAAC,EAAkB,GAAG;;;;;;;ACHhF,cAAc,mBAAO,CAAC,CAAW;AACjC;AACA,8BAA8B,SAAS,mBAAO,CAAC,EAAkB,GAAG;;;;;;;ACFpE,cAAc,mBAAO,CAAC,CAAW;AACjC;AACA,iCAAiC,mBAAO,CAAC,CAAgB,cAAc,iBAAiB,mBAAO,CAAC,CAAc,KAAK;;;;;;;ACFnH;AACA,cAAc,mBAAO,CAAC,CAAW;AACjC,8BAA8B,iBAAiB,mBAAO,CAAC,EAAc,OAAO;;;;;;;;;;;;;;ACF/D;AACb,UAAU,mBAAO,CAAC,EAAc;;AAEhC;AACA,mBAAO,CAAC,EAAgB;AACxB,6BAA6B;AAC7B,cAAc;AACd;AACA,CAAC;AACD;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA,UAAU;AACV,CAAC;;;;;;;;AChBY;AACb;AACA,aAAa,mBAAO,CAAC,CAAW;AAChC,UAAU,mBAAO,CAAC,CAAQ;AAC1B,kBAAkB,mBAAO,CAAC,CAAgB;AAC1C,cAAc,mBAAO,CAAC,CAAW;AACjC,eAAe,mBAAO,CAAC,EAAa;AACpC,WAAW,mBAAO,CAAC,EAAS;AAC5B,aAAa,mBAAO,CAAC,EAAU;AAC/B,aAAa,mBAAO,CAAC,EAAW;AAChC,qBAAqB,mBAAO,CAAC,EAAsB;AACnD,UAAU,mBAAO,CAAC,EAAQ;AAC1B,UAAU,mBAAO,CAAC,CAAQ;AAC1B,aAAa,mBAAO,CAAC,EAAY;AACjC,gBAAgB,mBAAO,CAAC,EAAe;AACvC,eAAe,mBAAO,CAAC,EAAc;AACrC,cAAc,mBAAO,CAAC,EAAa;AACnC,eAAe,mBAAO,CAAC,EAAc;AACrC,eAAe,mBAAO,CAAC,CAAc;AACrC,eAAe,mBAAO,CAAC,EAAc;AACrC,gBAAgB,mBAAO,CAAC,CAAe;AACvC,kBAAkB,mBAAO,CAAC,EAAiB;AAC3C,iBAAiB,mBAAO,CAAC,EAAkB;AAC3C,cAAc,mBAAO,CAAC,EAAkB;AACxC,cAAc,mBAAO,CAAC,EAAoB;AAC1C,YAAY,mBAAO,CAAC,EAAgB;AACpC,YAAY,mBAAO,CAAC,EAAgB;AACpC,UAAU,mBAAO,CAAC,CAAc;AAChC,YAAY,mBAAO,CAAC,EAAgB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sBAAsB;AACtB,sBAAsB,uBAAuB,WAAW,IAAI;AAC5D,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D;AAC3D;AACA,KAAK;AACL;AACA,sBAAsB,mCAAmC;AACzD,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gEAAgE,gCAAgC;AAChG;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,EAAE,mBAAO,CAAC,EAAgB;AAC1B,EAAE,mBAAO,CAAC,EAAe;AACzB;;AAEA,sBAAsB,mBAAO,CAAC,EAAY;AAC1C;AACA;;AAEA;AACA;AACA;AACA;;AAEA,0DAA0D,kBAAkB;;AAE5E;AACA;AACA;AACA,oBAAoB,uBAAuB;;AAE3C,oDAAoD,6BAA6B;;AAEjF;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH,0BAA0B,eAAe,EAAE;AAC3C,0BAA0B,gBAAgB;AAC1C,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA,8CAA8C,YAAY,EAAE;;AAE5D;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,OAAO,QAAQ,iCAAiC;AACpG,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,wEAAwE;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA,oCAAoC,mBAAO,CAAC,CAAS;AACrD;AACA;AACA;AACA;AACA;AACA;;;;;;;ACrPA,mBAAO,CAAC,EAAe;;;;;;;ACAvB,mBAAO,CAAC,EAAe;;;;;;;ACAvB,mBAAO,CAAC,EAAsB;AAC9B,aAAa,mBAAO,CAAC,CAAW;AAChC,WAAW,mBAAO,CAAC,CAAS;AAC5B,gBAAgB,mBAAO,CAAC,EAAc;AACtC,oBAAoB,mBAAO,CAAC,CAAQ;;AAEpC;AACA;AACA;AACA;AACA;;AAEA,eAAe,yBAAyB;AACxC;AACA;AACA;AACA;AACA;AACA;;;;;;;;AClBA;AACA;AACA;AACA;AACA;;AAEa;AACb;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,gCAAgC;AAChC;AACA;AACA;AACA;;AAEA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA,EAAE;AACF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,gBAAgB,sBAAsB;AACtC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,kBAAkB,oBAAoB;AACtC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;ACzFA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;;AAEA;AACA,6BAA6B,mBAAO,CAAC,EAA4B;AACjE;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,UAAU;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4GAA4G;AAC5G;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,2DAA2D;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;;ACrGA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb,2BAA2B,mBAAO,CAAC,EAA4B;;AAE/D;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;;;;;;;AC/DA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb,cAAc,mBAAO,CAAC,EAAU;AAChC,aAAa,mBAAO,CAAC,GAAe;;AAEpC,2BAA2B,mBAAO,CAAC,EAA4B;AAC/D,qBAAqB,mBAAO,CAAC,GAAkB;;AAE/C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,0CAA0C;;AAE1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,6BAA6B;AAC7B,QAAQ;AACR;AACA;AACA;AACA;AACA,+BAA+B,KAAK;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,4BAA4B;AAC5B,OAAO;AACP;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,sBAAsB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,qBAAqB,2BAA2B;AAChD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,mBAAmB,gCAAgC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB,gCAAgC;AACrD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;;;;;AC9kBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEa;;;;AAIb;AACA;AACA;;AAEA,8CAA8C,cAAc;;AAE5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0EAA0E;AAC1E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,0FAA0F,aAAa;AACvG;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;;AAEA;AACA,gGAAgG,eAAe;AAC/G;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;;AAEhD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;AC3OA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEa,4CAA4C,SAAS;AAClE;AACA,kMAAkM,cAAc,kCAAkC,iBAAiB,UAAU,0BAA0B,mDAAmD,kCAAkC,4CAA4C,kBAAkB,kBAAkB,cAAc;AAC1d,iBAAiB,oBAAoB,yBAAyB,0BAA0B,0BAA0B,kBAAkB,qBAAqB,mBAAmB,eAAe,eAAe,iBAAiB,mBAAmB,qBAAqB;AACnQ,uCAAuC,6PAA6P,gCAAgC,uBAAuB,2BAA2B,sCAAsC,iBAAiB,sCAAsC;AACnd,8BAA8B,qDAAqD,iCAAiC,iBAAiB,+BAA+B,iBAAiB,2BAA2B,iBAAiB,2BAA2B,iBAAiB,6BAA6B,iBAAiB,+BAA+B,iBAAiB,iCAAiC,iBAAiB,+BAA+B;;;;;;;;ACd5b;AAAA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEoB","file":"rc-pagination.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"rc-pagination\"] = factory(require(\"react\"));\n\telse\n\t\troot[\"rc-pagination\"] = factory(root[\"React\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_33__) {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 107);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap cf03c8c062ca5c1a738d","var core = module.exports = { version: '2.6.11' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_core.js\n// module id = 0\n// module chunks = 0","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('./_fails')(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_descriptors.js\n// module id = 1\n// module chunks = 0","// 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_global.js\n// module id = 2\n// module chunks = 0","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_has.js\n// module id = 3\n// module chunks = 0","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-dp.js\n// module id = 4\n// module chunks = 0","var global = require('./_global');\nvar core = require('./_core');\nvar ctx = require('./_ctx');\nvar hide = require('./_hide');\nvar has = require('./_has');\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 IS_WRAP = type & $export.W;\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE];\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];\n var key, own, out;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n if (own && has(exports, key)) continue;\n // export native or passed\n out = own ? target[key] : source[key];\n // prevent global pollution for namespaces\n exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]\n // bind timers to global for call from export context\n : IS_BIND && own ? ctx(out, global)\n // wrap global constructors for prevent change them in library\n : IS_WRAP && target[key] == out ? (function (C) {\n var F = function (a, b, c) {\n if (this instanceof C) {\n switch (arguments.length) {\n case 0: return new C();\n case 1: return new C(a);\n case 2: return new C(a, b);\n } return new C(a, b, c);\n } return C.apply(this, arguments);\n };\n F[PROTOTYPE] = C[PROTOTYPE];\n return F;\n // make static versions for prototype methods\n })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%\n if (IS_PROTO) {\n (exports.virtual || (exports.virtual = {}))[key] = out;\n // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%\n if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);\n }\n }\n};\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_export.js\n// module id = 5\n// module chunks = 0","var dP = require('./_object-dp');\nvar createDesc = require('./_property-desc');\nmodule.exports = require('./_descriptors') ? 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_hide.js\n// module id = 6\n// module chunks = 0","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_is-object.js\n// module id = 7\n// module chunks = 0","// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = require('./_iobject');\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_to-iobject.js\n// module id = 8\n// module chunks = 0","var store = require('./_shared')('wks');\nvar uid = require('./_uid');\nvar Symbol = require('./_global').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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_wks.js\n// module id = 9\n// module chunks = 0","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_an-object.js\n// module id = 10\n// module chunks = 0","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_fails.js\n// module id = 11\n// module chunks = 0","// 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_process@0.11.10@process/browser.js\n// module id = 12\n// module chunks = 0","module.exports = true;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_library.js\n// module id = 13\n// module chunks = 0","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-keys.js\n// module id = 14\n// module chunks = 0","exports.f = {}.propertyIsEnumerable;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-pie.js\n// module id = 15\n// module chunks = 0","module.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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_property-desc.js\n// module id = 16\n// module chunks = 0","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_uid.js\n// module id = 17\n// module chunks = 0","// 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_defined.js\n// module id = 18\n// module chunks = 0","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_enum-bug-keys.js\n// module id = 19\n// module chunks = 0","module.exports = {};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_iterators.js\n// module id = 20\n// module chunks = 0","// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = require('./_an-object');\nvar dPs = require('./_object-dps');\nvar enumBugKeys = require('./_enum-bug-keys');\nvar IE_PROTO = require('./_shared-key')('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 = require('./_dom-create')('iframe');\n var i = enumBugKeys.length;\n var lt = '<';\n var gt = '>';\n var iframeDocument;\n iframe.style.display = 'none';\n require('./_html').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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-create.js\n// module id = 21\n// module chunks = 0","exports.f = Object.getOwnPropertySymbols;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-gops.js\n// module id = 22\n// module chunks = 0","var def = require('./_object-dp').f;\nvar has = require('./_has');\nvar TAG = require('./_wks')('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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_set-to-string-tag.js\n// module id = 23\n// module chunks = 0","var shared = require('./_shared')('keys');\nvar uid = require('./_uid');\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_shared-key.js\n// module id = 24\n// module chunks = 0","var core = require('./_core');\nvar global = require('./_global');\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: core.version,\n mode: require('./_library') ? 'pure' : 'global',\n copyright: '© 2019 Denis Pushkarev (zloirock.ru)'\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_shared.js\n// module id = 25\n// module chunks = 0","// 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_to-integer.js\n// module id = 26\n// module chunks = 0","// 7.1.13 ToObject(argument)\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_to-object.js\n// module id = 27\n// module chunks = 0","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('./_is-object');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_to-primitive.js\n// module id = 28\n// module chunks = 0","var global = require('./_global');\nvar core = require('./_core');\nvar LIBRARY = require('./_library');\nvar wksExt = require('./_wks-ext');\nvar defineProperty = require('./_object-dp').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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_wks-define.js\n// module id = 29\n// module chunks = 0","exports.f = require('./_wks');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_wks-ext.js\n// module id = 30\n// module chunks = 0","/**\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\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_prop-types@15.7.2@prop-types/index.js\n// module id = 31\n// module chunks = 0","/**\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'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_prop-types@15.7.2@prop-types/lib/ReactPropTypesSecret.js\n// module id = 32\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_33__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external {\"root\":\"React\",\"commonjs2\":\"react\",\"commonjs\":\"react\",\"amd\":\"react\"}\n// module id = 33\n// module chunks = 0","export default {\n ZERO: 48,\n NINE: 57,\n\n NUMPAD_ZERO: 96,\n NUMPAD_NINE: 105,\n\n BACKSPACE: 8,\n DELETE: 46,\n ENTER: 13,\n\n ARROW_UP: 38,\n ARROW_DOWN: 40,\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/KeyCode.js","module.exports = { \"default\": require(\"core-js/library/fn/object/define-property\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/define-property.js\n// module id = 35\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nexports.default = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/helpers/classCallCheck.js\n// module id = 36\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _defineProperty = require(\"../core-js/object/define-property\");\n\nvar _defineProperty2 = _interopRequireDefault(_defineProperty);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n (0, _defineProperty2.default)(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/helpers/createClass.js\n// module id = 37\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _defineProperty = require(\"../core-js/object/define-property\");\n\nvar _defineProperty2 = _interopRequireDefault(_defineProperty);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (obj, key, value) {\n if (key in obj) {\n (0, _defineProperty2.default)(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/helpers/defineProperty.js\n// module id = 38\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _setPrototypeOf = require(\"../core-js/object/set-prototype-of\");\n\nvar _setPrototypeOf2 = _interopRequireDefault(_setPrototypeOf);\n\nvar _create = require(\"../core-js/object/create\");\n\nvar _create2 = _interopRequireDefault(_create);\n\nvar _typeof2 = require(\"../helpers/typeof\");\n\nvar _typeof3 = _interopRequireDefault(_typeof2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + (typeof superClass === \"undefined\" ? \"undefined\" : (0, _typeof3.default)(superClass)));\n }\n\n subClass.prototype = (0, _create2.default)(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf2.default ? (0, _setPrototypeOf2.default)(subClass, superClass) : subClass.__proto__ = superClass;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/helpers/inherits.js\n// module id = 39\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _typeof2 = require(\"../helpers/typeof\");\n\nvar _typeof3 = _interopRequireDefault(_typeof2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && ((typeof call === \"undefined\" ? \"undefined\" : (0, _typeof3.default)(call)) === \"object\" || typeof call === \"function\") ? call : self;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/helpers/possibleConstructorReturn.js\n// module id = 40\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _iterator = require(\"../core-js/symbol/iterator\");\n\nvar _iterator2 = _interopRequireDefault(_iterator);\n\nvar _symbol = require(\"../core-js/symbol\");\n\nvar _symbol2 = _interopRequireDefault(_symbol);\n\nvar _typeof = typeof _symbol2.default === \"function\" && typeof _iterator2.default === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof _symbol2.default === \"function\" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? \"symbol\" : typeof obj; };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = typeof _symbol2.default === \"function\" && _typeof(_iterator2.default) === \"symbol\" ? function (obj) {\n return typeof obj === \"undefined\" ? \"undefined\" : _typeof(obj);\n} : function (obj) {\n return obj && typeof _symbol2.default === \"function\" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? \"symbol\" : typeof obj === \"undefined\" ? \"undefined\" : _typeof(obj);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/helpers/typeof.js\n// module id = 41\n// module chunks = 0","/*!\n Copyright (c) 2017 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg) && arg.length) {\n\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\tif (inner) {\n\t\t\t\t\tclasses.push(inner);\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_classnames@2.2.6@classnames/index.js\n// module id = 42\n// module chunks = 0","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_cof.js\n// module id = 43\n// module chunks = 0","// optional / simple context binding\nvar aFunction = require('./_a-function');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_ctx.js\n// module id = 44\n// module chunks = 0","var isObject = require('./_is-object');\nvar document = require('./_global').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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_dom-create.js\n// module id = 45\n// module chunks = 0","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_ie8-dom-define.js\n// module id = 46\n// module chunks = 0","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = require('./_cof');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_iobject.js\n// module id = 47\n// module chunks = 0","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('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 && typeof IteratorPrototype[ITERATOR] != 'function') 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_iter-define.js\n// module id = 48\n// module chunks = 0","var pIE = require('./_object-pie');\nvar createDesc = require('./_property-desc');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar has = require('./_has');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar gOPD = Object.getOwnPropertyDescriptor;\n\nexports.f = require('./_descriptors') ? 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-gopd.js\n// module id = 49\n// module chunks = 0","// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\nvar $keys = require('./_object-keys-internal');\nvar hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype');\n\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return $keys(O, hiddenKeys);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-gopn.js\n// module id = 50\n// module chunks = 0","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-keys-internal.js\n// module id = 51\n// module chunks = 0","module.exports = require('./_hide');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_redefine.js\n// module id = 52\n// module chunks = 0","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_react-is@16.12.0@react-is/index.js\n// module id = 53\n// module chunks = 0","export { default } from './Pagination';\n\n\n\n// WEBPACK FOOTER //\n// ./src/index.js","// removed by extract-text-webpack-plugin\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./assets/index.less\n// module id = 55\n// module chunks = 0","import React from 'react';\nimport PropTypes from 'prop-types';\nimport KEYCODE from './KeyCode';\n\nclass Options extends React.Component {\n static propTypes = {\n disabled: PropTypes.bool,\n changeSize: PropTypes.func,\n quickGo: PropTypes.func,\n selectComponentClass: PropTypes.func,\n current: PropTypes.number,\n pageSizeOptions: PropTypes.arrayOf(PropTypes.string),\n pageSize: PropTypes.number,\n buildOptionText: PropTypes.func,\n locale: PropTypes.object,\n rootPrefixCls: PropTypes.string,\n selectPrefixCls: PropTypes.string,\n goButton: PropTypes.oneOfType([PropTypes.bool, PropTypes.node]),\n };\n\n static defaultProps = {\n pageSizeOptions: ['10', '20', '30', '40'],\n };\n\n state = {\n goInputText: '',\n };\n\n getValidValue() {\n const { goInputText, current } = this.state;\n return !goInputText || isNaN(goInputText) ? current : Number(goInputText);\n }\n\n buildOptionText = (value) => {\n return `${value} ${this.props.locale.items_per_page}`;\n }\n\n changeSize = (value) => {\n this.props.changeSize(Number(value));\n }\n\n handleChange = (e) => {\n this.setState({\n goInputText: e.target.value,\n });\n }\n\n handleBlur = (e) => {\n const { goButton, quickGo, rootPrefixCls } = this.props;\n if (goButton) {\n return;\n }\n if (\n e.relatedTarget &&\n (\n e.relatedTarget.className.indexOf(`${rootPrefixCls}-prev`) >= 0 ||\n e.relatedTarget.className.indexOf(`${rootPrefixCls}-next`) >= 0\n )\n ) {\n return;\n }\n quickGo(this.getValidValue());\n }\n\n go = (e) => {\n const { goInputText } = this.state;\n if (goInputText === '') {\n return;\n }\n if (e.keyCode === KEYCODE.ENTER || e.type === 'click') {\n this.setState({\n goInputText: '',\n });\n this.props.quickGo(this.getValidValue());\n }\n }\n\n render() {\n const {\n pageSize, pageSizeOptions, locale, rootPrefixCls, changeSize,\n quickGo, goButton, selectComponentClass, buildOptionText,\n selectPrefixCls, disabled,\n } = this.props;\n const { goInputText } = this.state;\n const prefixCls = `${rootPrefixCls}-options`;\n const Select = selectComponentClass;\n let changeSelect = null;\n let goInput = null;\n let gotoButton = null;\n\n if (!changeSize && !quickGo) {\n return null;\n }\n\n if (changeSize && Select) {\n const options = pageSizeOptions.map((opt, i) => (\n \n {(buildOptionText || this.buildOptionText)(opt)}\n \n ));\n\n changeSelect = (\n triggerNode.parentNode}\n >\n {options}\n \n );\n }\n\n if (quickGo) {\n if (goButton) {\n gotoButton = typeof goButton === 'boolean' ? (\n \n {locale.jump_to_confirm}\n \n ) : (\n \n {goButton}\n \n );\n }\n goInput = (\n
    \n {locale.jump_to}\n \n {locale.page}\n {gotoButton}\n
    \n );\n }\n\n return (\n
  • \n {changeSelect}\n {goInput}\n
  • \n );\n }\n}\n\nexport default Options;\n\n\n\n// WEBPACK FOOTER //\n// ./src/Options.jsx","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst Pager = (props) => {\n const prefixCls = `${props.rootPrefixCls}-item`;\n const cls = classNames(prefixCls, `${prefixCls}-${props.page}`, {\n [`${prefixCls}-active`]: props.active,\n [props.className]: !!props.className,\n [`${prefixCls}-disabled`]: !props.page,\n });\n\n const handleClick = () => {\n props.onClick(props.page);\n };\n\n const handleKeyPress = e => {\n props.onKeyPress(e, props.onClick, props.page);\n };\n\n return (\n \n {props.itemRender(props.page, 'page', {props.page})}\n \n );\n};\n\nPager.propTypes = {\n page: PropTypes.number,\n active: PropTypes.bool,\n last: PropTypes.bool,\n locale: PropTypes.object,\n className: PropTypes.string,\n showTitle: PropTypes.bool,\n rootPrefixCls: PropTypes.string,\n onClick: PropTypes.func,\n onKeyPress: PropTypes.func,\n itemRender: PropTypes.func,\n};\n\nexport default Pager;\n\n\n\n// WEBPACK FOOTER //\n// ./src/Pager.jsx","import React, { cloneElement, isValidElement } from 'react';\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\nimport Pager from './Pager';\nimport Options from './Options';\nimport KEYCODE from './KeyCode';\nimport LOCALE from './locale/zh_CN';\nimport { polyfill } from 'react-lifecycles-compat';\n\nfunction noop() {\n}\n\nfunction isInteger(value) {\n return typeof value === 'number' &&\n isFinite(value) &&\n Math.floor(value) === value;\n}\n\nfunction defaultItemRender(page, type, element) {\n return element;\n}\n\nfunction calculatePage(p, state, props) {\n let pageSize = p;\n if (typeof pageSize === 'undefined') {\n pageSize = state.pageSize;\n }\n return Math.floor((props.total - 1) / pageSize) + 1;\n}\n\nclass Pagination extends React.Component {\n static propTypes = {\n disabled: PropTypes.bool,\n prefixCls: PropTypes.string,\n className: PropTypes.string,\n current: PropTypes.number,\n defaultCurrent: PropTypes.number,\n total: PropTypes.number,\n pageSize: PropTypes.number,\n defaultPageSize: PropTypes.number,\n onChange: PropTypes.func,\n hideOnSinglePage: PropTypes.bool,\n showSizeChanger: PropTypes.bool,\n showLessItems: PropTypes.bool,\n onShowSizeChange: PropTypes.func,\n selectComponentClass: PropTypes.func,\n showPrevNextJumpers: PropTypes.bool,\n showQuickJumper: PropTypes.oneOfType([PropTypes.bool, PropTypes.object]),\n showTitle: PropTypes.bool,\n pageSizeOptions: PropTypes.arrayOf(PropTypes.string),\n showTotal: PropTypes.func,\n locale: PropTypes.object,\n style: PropTypes.object,\n itemRender: PropTypes.func,\n prevIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n nextIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n jumpPrevIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n jumpNextIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n };\n\n static defaultProps = {\n defaultCurrent: 1,\n total: 0,\n defaultPageSize: 10,\n onChange: noop,\n className: '',\n selectPrefixCls: 'rc-select',\n prefixCls: 'rc-pagination',\n selectComponentClass: null,\n hideOnSinglePage: false,\n showPrevNextJumpers: true,\n showQuickJumper: false,\n showSizeChanger: false,\n showLessItems: false,\n showTitle: true,\n onShowSizeChange: noop,\n locale: LOCALE,\n style: {},\n itemRender: defaultItemRender,\n };\n\n constructor(props) {\n super(props);\n\n const hasOnChange = props.onChange !== noop;\n const hasCurrent = ('current' in props);\n if (hasCurrent && !hasOnChange) {\n console.warn('Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.'); // eslint-disable-line\n }\n\n let current = props.defaultCurrent;\n if ('current' in props) {\n current = props.current;\n }\n\n let pageSize = props.defaultPageSize;\n if ('pageSize' in props) {\n pageSize = props.pageSize;\n }\n\n current = Math.min(current, calculatePage(pageSize, undefined, props));\n\n this.state = {\n current,\n currentInputValue: current,\n pageSize,\n };\n }\n\n componentDidUpdate(prevProps, prevState) {\n // When current page change, fix focused style of prev item\n // A hacky solution of https://github.com/ant-design/ant-design/issues/8948\n const { prefixCls } = this.props;\n if (prevState.current !== this.state.current && this.paginationNode) {\n const lastCurrentNode = this.paginationNode.querySelector(\n `.${prefixCls}-item-${prevState.current}`\n );\n if (lastCurrentNode && document.activeElement === lastCurrentNode) {\n lastCurrentNode.blur();\n }\n }\n }\n\n static getDerivedStateFromProps(props, prevState) {\n const newState = {};\n\n if ('current' in props) {\n newState.current = props.current;\n\n if (props.current !== prevState.current) {\n newState.currentInputValue = newState.current;\n }\n }\n\n if ('pageSize' in props && props.pageSize !== prevState.pageSize) {\n let current = prevState.current;\n const newCurrent = calculatePage(props.pageSize, prevState, props);\n current = current > newCurrent ? newCurrent : current;\n\n if (!('current' in props)) {\n newState.current = current;\n newState.currentInputValue = current;\n }\n newState.pageSize = props.pageSize;\n }\n\n return newState;\n }\n\n getJumpPrevPage = () => {\n return Math.max(1, this.state.current - (this.props.showLessItems ? 3 : 5));\n }\n\n getJumpNextPage = () => {\n return Math.min(\n calculatePage(undefined, this.state, this.props),\n this.state.current + (this.props.showLessItems ? 3 : 5)\n );\n }\n\n /**\n * computed icon node that need to be rendered.\n * @param {React.ReactNode | React.ComponentType} icon received icon.\n * @returns {React.ReactNode}\n */\n getItemIcon = (icon) => {\n const { prefixCls } = this.props;\n let iconNode = icon\n || ;\n if (typeof icon === 'function') {\n iconNode = React.createElement(icon, { ...this.props });\n }\n return iconNode;\n }\n\n getValidValue(e) {\n const inputValue = e.target.value;\n const allPages = calculatePage(undefined, this.state, this.props);\n const { currentInputValue } = this.state;\n let value;\n if (inputValue === '') {\n value = inputValue;\n } else if (isNaN(Number(inputValue))) {\n value = currentInputValue;\n } else if (inputValue >= allPages) {\n value = allPages;\n } else {\n value = Number(inputValue);\n }\n return value;\n }\n\n savePaginationNode = (node) => {\n this.paginationNode = node;\n }\n\n isValid = (page) => {\n return isInteger(page) && page !== this.state.current;\n }\n\n shouldDisplayQuickJumper = () => {\n const { showQuickJumper, pageSize, total } = this.props;\n if (total <= pageSize) {\n return false;\n }\n return showQuickJumper;\n }\n\n handleKeyDown = (e) => {\n if (e.keyCode === KEYCODE.ARROW_UP || e.keyCode === KEYCODE.ARROW_DOWN) {\n e.preventDefault();\n }\n }\n\n handleKeyUp = (e) => {\n const value = this.getValidValue(e);\n const { currentInputValue } = this.state;\n if (value !== currentInputValue) {\n this.setState({\n currentInputValue: value,\n });\n }\n if (e.keyCode === KEYCODE.ENTER) {\n this.handleChange(value);\n } else if (e.keyCode === KEYCODE.ARROW_UP) {\n this.handleChange(value - 1);\n } else if (e.keyCode === KEYCODE.ARROW_DOWN) {\n this.handleChange(value + 1);\n }\n }\n\n changePageSize = (size) => {\n let current = this.state.current;\n const newCurrent = calculatePage(size, this.state, this.props);\n current = current > newCurrent ? newCurrent : current;\n // fix the issue:\n // Once 'total' is 0, 'current' in 'onShowSizeChange' is 0, which is not correct.\n if (newCurrent === 0) {\n current = this.state.current;\n }\n\n if (typeof size === 'number') {\n if (!('pageSize' in this.props)) {\n this.setState({\n pageSize: size,\n });\n }\n if (!('current' in this.props)) {\n this.setState({\n current,\n currentInputValue: current,\n });\n }\n }\n this.props.onShowSizeChange(current, size);\n }\n\n handleChange = (p) => {\n const { disabled } = this.props;\n\n let page = p;\n if (this.isValid(page) && !disabled) {\n const currentPage = calculatePage(undefined, this.state, this.props);\n if (page > currentPage) {\n page = currentPage;\n } else if (page < 1) {\n page = 1;\n }\n\n if (!('current' in this.props)) {\n this.setState({\n current: page,\n currentInputValue: page,\n });\n }\n\n const pageSize = this.state.pageSize;\n this.props.onChange(page, pageSize);\n\n return page;\n }\n\n return this.state.current;\n }\n\n prev = () => {\n if (this.hasPrev()) {\n this.handleChange(this.state.current - 1);\n }\n }\n\n next = () => {\n if (this.hasNext()) {\n this.handleChange(this.state.current + 1);\n }\n }\n\n jumpPrev = () => {\n this.handleChange(this.getJumpPrevPage());\n }\n\n jumpNext = () => {\n this.handleChange(this.getJumpNextPage());\n }\n\n hasPrev = () => {\n return this.state.current > 1;\n }\n\n hasNext = () => {\n return this.state.current < calculatePage(undefined, this.state, this.props);\n }\n\n runIfEnter = (event, callback, ...restParams) => {\n if (event.key === 'Enter' || event.charCode === 13) {\n callback(...restParams);\n }\n }\n\n runIfEnterPrev = e => {\n this.runIfEnter(e, this.prev);\n }\n\n runIfEnterNext = e => {\n this.runIfEnter(e, this.next);\n }\n\n runIfEnterJumpPrev = e => {\n this.runIfEnter(e, this.jumpPrev);\n }\n\n runIfEnterJumpNext = e => {\n this.runIfEnter(e, this.jumpNext);\n }\n\n handleGoTO = e => {\n if (e.keyCode === KEYCODE.ENTER || e.type === 'click') {\n this.handleChange(this.state.currentInputValue);\n }\n }\n\n renderPrev(prevPage) {\n const { prevIcon, itemRender } = this.props;\n const prevButton = itemRender(prevPage, 'prev', this.getItemIcon(prevIcon));\n const disabled = !this.hasPrev();\n return isValidElement(prevButton) ? cloneElement(prevButton, { disabled }) : prevButton;\n }\n\n renderNext(nextPage) {\n const { nextIcon, itemRender } = this.props;\n const nextButton = itemRender(nextPage, 'next', this.getItemIcon(nextIcon));\n const disabled = !this.hasNext();\n return isValidElement(nextButton) ? cloneElement(nextButton, { disabled }) : nextButton;\n }\n\n render() {\n const { prefixCls, className, disabled } = this.props;\n\n // When hideOnSinglePage is true and there is only 1 page, hide the pager\n if (this.props.hideOnSinglePage === true && this.props.total <= this.state.pageSize) {\n return null;\n }\n\n const props = this.props;\n const locale = props.locale;\n\n const allPages = calculatePage(undefined, this.state, this.props);\n const pagerList = [];\n let jumpPrev = null;\n let jumpNext = null;\n let firstPager = null;\n let lastPager = null;\n let gotoButton = null;\n\n const goButton = (props.showQuickJumper && props.showQuickJumper.goButton);\n const pageBufferSize = props.showLessItems ? 1 : 2;\n const { current, pageSize } = this.state;\n\n const prevPage = current - 1 > 0 ? current - 1 : 0;\n const nextPage = current + 1 < allPages ? current + 1 : allPages;\n\n const dataOrAriaAttributeProps = Object.keys(props).reduce((prev, key) => {\n if ((key.substr(0, 5) === 'data-' || key.substr(0, 5) === 'aria-' || key === 'role')) {\n prev[key] = props[key];\n }\n return prev;\n }, {});\n\n if (props.simple) {\n if (goButton) {\n if (typeof goButton === 'boolean') {\n gotoButton = (\n \n {locale.jump_to_confirm}\n \n );\n } else {\n gotoButton = (\n {goButton}\n );\n }\n gotoButton = (\n \n {gotoButton}\n \n );\n }\n\n return (\n \n \n {this.renderPrev(prevPage)}\n \n \n \n /\n {allPages}\n \n \n {this.renderNext(nextPage)}\n \n {gotoButton}\n \n );\n }\n\n if (allPages <= 5 + pageBufferSize * 2) {\n const pagerProps = {\n locale,\n rootPrefixCls: prefixCls,\n onClick: this.handleChange,\n onKeyPress: this.runIfEnter,\n showTitle: props.showTitle,\n itemRender: props.itemRender,\n };\n if (!allPages) {\n pagerList.push(\n \n );\n }\n for (let i = 1; i <= allPages; i++) {\n const active = this.state.current === i;\n pagerList.push(\n \n );\n }\n } else {\n const prevItemTitle = props.showLessItems ? locale.prev_3 : locale.prev_5;\n const nextItemTitle = props.showLessItems ? locale.next_3 : locale.next_5;\n if (props.showPrevNextJumpers) {\n let jumpPrevClassString = `${prefixCls}-jump-prev`;\n if (props.jumpPrevIcon) {\n jumpPrevClassString += ` ${prefixCls}-jump-prev-custom-icon`;\n }\n jumpPrev = (\n \n {props.itemRender(\n this.getJumpPrevPage(),\n 'jump-prev',\n this.getItemIcon(props.jumpPrevIcon)\n )}\n \n );\n let jumpNextClassString = `${prefixCls}-jump-next`;\n if (props.jumpNextIcon) {\n jumpNextClassString += ` ${prefixCls}-jump-next-custom-icon`;\n }\n jumpNext = (\n \n {props.itemRender(\n this.getJumpNextPage(),\n 'jump-next',\n this.getItemIcon(props.jumpNextIcon)\n )}\n \n );\n }\n lastPager = (\n \n );\n firstPager = (\n \n );\n\n let left = Math.max(1, current - pageBufferSize);\n let right = Math.min(current + pageBufferSize, allPages);\n\n if (current - 1 <= pageBufferSize) {\n right = 1 + pageBufferSize * 2;\n }\n\n if (allPages - current <= pageBufferSize) {\n left = allPages - pageBufferSize * 2;\n }\n\n for (let i = left; i <= right; i++) {\n const active = current === i;\n pagerList.push(\n \n );\n }\n\n if (current - 1 >= pageBufferSize * 2 && current !== 1 + 2) {\n pagerList[0] = React.cloneElement(pagerList[0], {\n className: `${prefixCls}-item-after-jump-prev`,\n });\n pagerList.unshift(jumpPrev);\n }\n if (allPages - current >= pageBufferSize * 2 && current !== allPages - 2) {\n pagerList[pagerList.length - 1] = React.cloneElement(pagerList[pagerList.length - 1], {\n className: `${prefixCls}-item-before-jump-next`,\n });\n pagerList.push(jumpNext);\n }\n\n if (left !== 1) {\n pagerList.unshift(firstPager);\n }\n if (right !== allPages) {\n pagerList.push(lastPager);\n }\n }\n\n let totalText = null;\n\n if (props.showTotal) {\n totalText = (\n
  • \n {props.showTotal(\n props.total,\n [\n props.total === 0 ? 0 : (current - 1) * pageSize + 1,\n current * pageSize > props.total ? props.total : current * pageSize,\n ]\n )}\n
  • \n );\n }\n const prevDisabled = !this.hasPrev() || !allPages;\n const nextDisabled = !this.hasNext() || !allPages;\n return (\n \n {totalText}\n \n {this.renderPrev(prevPage)}\n \n {pagerList}\n \n {this.renderNext(nextPage)}\n \n \n \n );\n }\n}\n\npolyfill(Pagination);\n\nexport default Pagination;\n\n\n\n// WEBPACK FOOTER //\n// ./src/Pagination.jsx","export default {\n // Options.jsx\n items_per_page: '条/页',\n jump_to: '跳至',\n jump_to_confirm: '确定',\n page: '页',\n\n // Pagination.jsx\n prev_page: '上一页',\n next_page: '下一页',\n prev_5: '向前 5 页',\n next_5: '向后 5 页',\n prev_3: '向前 3 页',\n next_3: '向后 3 页',\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/locale/zh_CN.js","module.exports = { \"default\": require(\"core-js/library/fn/object/assign\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/assign.js\n// module id = 60\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/object/create\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/create.js\n// module id = 61\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/object/set-prototype-of\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/set-prototype-of.js\n// module id = 62\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/symbol\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/core-js/symbol.js\n// module id = 63\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/symbol/iterator\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/core-js/symbol/iterator.js\n// module id = 64\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _assign = require(\"../core-js/object/assign\");\n\nvar _assign2 = _interopRequireDefault(_assign);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = _assign2.default || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/helpers/extends.js\n// module id = 65\n// module chunks = 0","require('../../modules/es6.object.assign');\nmodule.exports = require('../../modules/_core').Object.assign;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/fn/object/assign.js\n// module id = 66\n// module chunks = 0","require('../../modules/es6.object.create');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function create(P, D) {\n return $Object.create(P, D);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/fn/object/create.js\n// module id = 67\n// module chunks = 0","require('../../modules/es6.object.define-property');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function defineProperty(it, key, desc) {\n return $Object.defineProperty(it, key, desc);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/fn/object/define-property.js\n// module id = 68\n// module chunks = 0","require('../../modules/es6.object.set-prototype-of');\nmodule.exports = require('../../modules/_core').Object.setPrototypeOf;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/fn/object/set-prototype-of.js\n// module id = 69\n// module chunks = 0","require('../../modules/es6.symbol');\nrequire('../../modules/es6.object.to-string');\nrequire('../../modules/es7.symbol.async-iterator');\nrequire('../../modules/es7.symbol.observable');\nmodule.exports = require('../../modules/_core').Symbol;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/fn/symbol/index.js\n// module id = 70\n// module chunks = 0","require('../../modules/es6.string.iterator');\nrequire('../../modules/web.dom.iterable');\nmodule.exports = require('../../modules/_wks-ext').f('iterator');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/fn/symbol/iterator.js\n// module id = 71\n// module chunks = 0","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_a-function.js\n// module id = 72\n// module chunks = 0","module.exports = function () { /* empty */ };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_add-to-unscopables.js\n// module id = 73\n// module chunks = 0","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_array-includes.js\n// module id = 74\n// module chunks = 0","// all enumerable object keys, includes symbols\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_enum-keys.js\n// module id = 75\n// module chunks = 0","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_html.js\n// module id = 76\n// module chunks = 0","// 7.2.2 IsArray(argument)\nvar cof = require('./_cof');\nmodule.exports = Array.isArray || function isArray(arg) {\n return cof(arg) == 'Array';\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_is-array.js\n// module id = 77\n// module chunks = 0","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_iter-create.js\n// module id = 78\n// module chunks = 0","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_iter-step.js\n// module id = 79\n// module chunks = 0","var META = require('./_uid')('meta');\nvar isObject = require('./_is-object');\nvar has = require('./_has');\nvar setDesc = require('./_object-dp').f;\nvar id = 0;\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\nvar FREEZE = !require('./_fails')(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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_meta.js\n// module id = 80\n// module chunks = 0","'use strict';\n// 19.1.2.1 Object.assign(target, source, ...)\nvar DESCRIPTORS = require('./_descriptors');\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\nvar toObject = require('./_to-object');\nvar IObject = require('./_iobject');\nvar $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || require('./_fails')(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) {\n key = keys[j++];\n if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-assign.js\n// module id = 81\n// module chunks = 0","var dP = require('./_object-dp');\nvar anObject = require('./_an-object');\nvar getKeys = require('./_object-keys');\n\nmodule.exports = require('./_descriptors') ? 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-dps.js\n// module id = 82\n// module chunks = 0","// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = require('./_to-iobject');\nvar gOPN = require('./_object-gopn').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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-gopn-ext.js\n// module id = 83\n// module chunks = 0","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-gpo.js\n// module id = 84\n// module chunks = 0","// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nvar isObject = require('./_is-object');\nvar anObject = require('./_an-object');\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 = require('./_ctx')(Function.call, require('./_object-gopd').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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_set-proto.js\n// module id = 85\n// module chunks = 0","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_string-at.js\n// module id = 86\n// module chunks = 0","var toInteger = require('./_to-integer');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_to-absolute-index.js\n// module id = 87\n// module chunks = 0","// 7.1.15 ToLength\nvar toInteger = require('./_to-integer');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_to-length.js\n// module id = 88\n// module chunks = 0","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\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 = require('./_iter-define')(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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es6.array.iterator.js\n// module id = 89\n// module chunks = 0","// 19.1.3.1 Object.assign(target, source)\nvar $export = require('./_export');\n\n$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') });\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es6.object.assign.js\n// module id = 90\n// module chunks = 0","var $export = require('./_export');\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\n$export($export.S, 'Object', { create: require('./_object-create') });\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es6.object.create.js\n// module id = 91\n// module chunks = 0","var $export = require('./_export');\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperty: require('./_object-dp').f });\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es6.object.define-property.js\n// module id = 92\n// module chunks = 0","// 19.1.3.19 Object.setPrototypeOf(O, proto)\nvar $export = require('./_export');\n$export($export.S, 'Object', { setPrototypeOf: require('./_set-proto').set });\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es6.object.set-prototype-of.js\n// module id = 93\n// module chunks = 0","'use strict';\nvar $at = require('./_string-at')(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\nrequire('./_iter-define')(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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es6.string.iterator.js\n// module id = 95\n// module chunks = 0","'use strict';\n// ECMAScript 6 symbols shim\nvar global = require('./_global');\nvar has = require('./_has');\nvar DESCRIPTORS = require('./_descriptors');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar META = require('./_meta').KEY;\nvar $fails = require('./_fails');\nvar shared = require('./_shared');\nvar setToStringTag = require('./_set-to-string-tag');\nvar uid = require('./_uid');\nvar wks = require('./_wks');\nvar wksExt = require('./_wks-ext');\nvar wksDefine = require('./_wks-define');\nvar enumKeys = require('./_enum-keys');\nvar isArray = require('./_is-array');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar toObject = require('./_to-object');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar createDesc = require('./_property-desc');\nvar _create = require('./_object-create');\nvar gOPNExt = require('./_object-gopn-ext');\nvar $GOPD = require('./_object-gopd');\nvar $GOPS = require('./_object-gops');\nvar $DP = require('./_object-dp');\nvar $keys = require('./_object-keys');\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' && !!$GOPS.f;\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 require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames;\n require('./_object-pie').f = $propertyIsEnumerable;\n $GOPS.f = $getOwnPropertySymbols;\n\n if (DESCRIPTORS && !require('./_library')) {\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(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');\n for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;\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// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\nvar FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });\n\n$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n return $GOPS.f(toObject(it));\n }\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 var args = [it];\n var i = 1;\n var replacer, $replacer;\n while (arguments.length > i) args.push(arguments[i++]);\n $replacer = replacer = args[1];\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') 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] || require('./_hide')($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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es6.symbol.js\n// module id = 96\n// module chunks = 0","require('./_wks-define')('asyncIterator');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es7.symbol.async-iterator.js\n// module id = 97\n// module chunks = 0","require('./_wks-define')('observable');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es7.symbol.observable.js\n// module id = 98\n// module chunks = 0","require('./es6.array.iterator');\nvar global = require('./_global');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar TO_STRING_TAG = require('./_wks')('toStringTag');\n\nvar DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +\n 'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +\n 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +\n 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +\n 'TextTrackList,TouchList').split(',');\n\nfor (var i = 0; i < DOMIterables.length; i++) {\n var NAME = DOMIterables[i];\n var Collection = global[NAME];\n var proto = Collection && Collection.prototype;\n if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);\n Iterators[NAME] = Iterators.Array;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/web.dom.iterable.js\n// module id = 99\n// module chunks = 0","/*\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_object-assign@4.1.1@object-assign/index.js\n// module id = 100\n// module chunks = 0","/**\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'use strict';\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n var loggedTypeFailures = {};\n var has = Function.call.bind(Object.prototype.hasOwnProperty);\n\n printWarning = function(text) {\n var message = 'Warning: ' + text;\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\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n var err = Error(\n (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'\n );\n err.name = 'Invariant Violation';\n throw err;\n }\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n if (error && !(error instanceof Error)) {\n printWarning(\n (componentName || 'React class') + ': type specification of ' +\n location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n 'You may have forgotten to pass an argument to the type checker ' +\n 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n 'shape all require an argument).'\n );\n }\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n printWarning(\n 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n );\n }\n }\n }\n }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n if (process.env.NODE_ENV !== 'production') {\n loggedTypeFailures = {};\n }\n}\n\nmodule.exports = checkPropTypes;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_prop-types@15.7.2@prop-types/checkPropTypes.js\n// module id = 101\n// module chunks = 0","/**\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'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_prop-types@15.7.2@prop-types/factoryWithThrowingShims.js\n// module id = 102\n// module chunks = 0","/**\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'use strict';\n\nvar ReactIs = require('react-is');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar checkPropTypes = require('./checkPropTypes');\n\nvar has = Function.call.bind(Object.prototype.hasOwnProperty);\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\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\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n elementType: createElementTypeTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message) {\n this.message = message;\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!ReactIs.isValidElementType(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n printWarning(\n 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n );\n } else {\n printWarning('Invalid argument supplied to oneOf, expected an array.');\n }\n }\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n var type = getPreciseType(value);\n if (type === 'symbol') {\n return String(value);\n }\n return value;\n });\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (has(propValue, key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n return null;\n }\n }\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (!checker) {\n continue;\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from\n // props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // falsy value can't be a Symbol\n if (!propValue) {\n return false;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_prop-types@15.7.2@prop-types/factoryWithTypeCheckers.js\n// module id = 103\n// module chunks = 0","/** @license React v16.12.0\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\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'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE);\n}\n\n/**\n * Forked from fbjs/warning:\n * https://github.com/facebook/fbjs/blob/e66ba20ad5be433eb54423f2b097d829324d9de6/packages/fbjs/src/__forks__/warning.js\n *\n * Only change is we use console.warn instead of console.error,\n * and do nothing when 'console' is not supported.\n * This really simplifies the code.\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 */\nvar lowPriorityWarningWithoutStack = function () {};\n\n{\n var printWarning = function (format) {\n for (var _len = arguments.length, args = new 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\n if (typeof console !== 'undefined') {\n console.warn(message);\n }\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 lowPriorityWarningWithoutStack = function (condition, format) {\n if (format === undefined) {\n throw new Error('`lowPriorityWarningWithoutStack(condition, format, ...args)` requires a warning ' + 'message argument');\n }\n\n if (!condition) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n args[_key2 - 2] = arguments[_key2];\n }\n\n printWarning.apply(void 0, [format].concat(args));\n }\n };\n}\n\nvar lowPriorityWarningWithoutStack$1 = lowPriorityWarningWithoutStack;\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true;\n lowPriorityWarningWithoutStack$1(false, 'The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.typeOf = typeOf;\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isValidElementType = isValidElementType;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\n })();\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_react-is@16.12.0@react-is/cjs/react-is.development.js\n// module id = 104\n// module chunks = 0","/** @license React v16.12.0\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\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'use strict';Object.defineProperty(exports,\"__esModule\",{value:!0});\nvar b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?Symbol.for(\"react.suspense_list\"):\n60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.fundamental\"):60117,w=b?Symbol.for(\"react.responder\"):60118,x=b?Symbol.for(\"react.scope\"):60119;function y(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function z(a){return y(a)===m}\nexports.typeOf=y;exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;exports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===v||a.$$typeof===w||a.$$typeof===x)};exports.isAsyncMode=function(a){return z(a)||y(a)===l};exports.isConcurrentMode=z;exports.isContextConsumer=function(a){return y(a)===k};exports.isContextProvider=function(a){return y(a)===h};\nexports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return y(a)===n};exports.isFragment=function(a){return y(a)===e};exports.isLazy=function(a){return y(a)===t};exports.isMemo=function(a){return y(a)===r};exports.isPortal=function(a){return y(a)===d};exports.isProfiler=function(a){return y(a)===g};exports.isStrictMode=function(a){return y(a)===f};exports.isSuspense=function(a){return y(a)===p};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_react-is@16.12.0@react-is/cjs/react-is.production.min.js\n// module id = 105\n// module chunks = 0","/**\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\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\nexport { polyfill };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_react-lifecycles-compat@3.0.4@react-lifecycles-compat/react-lifecycles-compat.es.js\n// module id = 106\n// module chunks = 0"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/rc-pagination.min.css b/dist/rc-pagination.min.css new file mode 100644 index 00000000..0ac67ca8 --- /dev/null +++ b/dist/rc-pagination.min.css @@ -0,0 +1,324 @@ +.rc-pagination { + font-size: 12px; + font-family: 'Arial'; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + padding: 0; +} +.rc-pagination > li { + list-style: none; +} +.rc-pagination-total-text { + float: left; + height: 30px; + line-height: 30px; + list-style: none; + padding: 0; + margin: 0 8px 0 0; +} +.rc-pagination:after { + content: ' '; + display: block; + height: 0; + clear: both; + overflow: hidden; + visibility: hidden; +} +.rc-pagination-item { + cursor: pointer; + border-radius: 6px; + min-width: 28px; + height: 28px; + line-height: 28px; + text-align: center; + list-style: none; + float: left; + border: 1px solid #d9d9d9; + background-color: #fff; + margin-right: 8px; +} +.rc-pagination-item a { + text-decoration: none; + color: #666; +} +.rc-pagination-item:hover { + border-color: #2db7f5; +} +.rc-pagination-item:hover a { + color: #2db7f5; +} +.rc-pagination-item-disabled { + cursor: not-allowed; +} +.rc-pagination-item-disabled:hover { + border-color: #d9d9d9; +} +.rc-pagination-item-disabled:hover a { + color: #d9d9d9; +} +.rc-pagination-item-active { + background-color: #2db7f5; + border-color: #2db7f5; +} +.rc-pagination-item-active a { + color: #fff; +} +.rc-pagination-item-active:hover a { + color: #fff; +} +.rc-pagination-jump-prev:after, +.rc-pagination-jump-next:after { + content: '\2022\2022\2022'; + display: block; + letter-spacing: 2px; + color: #ccc; + font-size: 12px; + margin-top: 1px; +} +.rc-pagination-jump-prev:hover:after, +.rc-pagination-jump-next:hover:after { + color: #2db7f5; +} +.rc-pagination-jump-prev:hover:after { + content: '\AB'; +} +.rc-pagination-jump-next:hover:after { + content: '\BB'; +} +.rc-pagination-jump-prev-custom-icon, +.rc-pagination-jump-next-custom-icon { + position: relative; +} +.rc-pagination-jump-prev-custom-icon:after, +.rc-pagination-jump-next-custom-icon:after { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + margin: auto; + transition: all 0.2s; + content: '\2022\2022\2022'; + opacity: 1; + display: block; + letter-spacing: 2px; + color: #ccc; + font-size: 12px; + margin-top: 1px; +} +.rc-pagination-jump-prev-custom-icon .custom-icon-jump-prev, +.rc-pagination-jump-next-custom-icon .custom-icon-jump-prev, +.rc-pagination-jump-prev-custom-icon .custom-icon-jump-next, +.rc-pagination-jump-next-custom-icon .custom-icon-jump-next { + opacity: 0; + transition: all 0.2s; +} +.rc-pagination-jump-prev-custom-icon:hover:after, +.rc-pagination-jump-next-custom-icon:hover:after { + opacity: 0; + color: #ccc; +} +.rc-pagination-jump-prev-custom-icon:hover .custom-icon-jump-prev, +.rc-pagination-jump-next-custom-icon:hover .custom-icon-jump-prev, +.rc-pagination-jump-prev-custom-icon:hover .custom-icon-jump-next, +.rc-pagination-jump-next-custom-icon:hover .custom-icon-jump-next { + opacity: 1; + color: #2db7f5; +} +.rc-pagination-prev, +.rc-pagination-jump-prev, +.rc-pagination-jump-next { + margin-right: 8px; +} +.rc-pagination-prev, +.rc-pagination-next, +.rc-pagination-jump-prev, +.rc-pagination-jump-next { + cursor: pointer; + color: #666; + font-size: 10px; + border-radius: 6px; + list-style: none; + min-width: 28px; + height: 28px; + line-height: 28px; + float: left; + text-align: center; +} +.rc-pagination-prev a:after { + content: '\2039'; + display: block; +} +.rc-pagination-next a:after { + content: '\203A'; + display: block; +} +.rc-pagination-prev, +.rc-pagination-next { + border: 1px solid #d9d9d9; + font-size: 18px; +} +.rc-pagination-prev a, +.rc-pagination-next a { + color: #666; +} +.rc-pagination-prev a:after, +.rc-pagination-next a:after { + margin-top: -1px; +} +.rc-pagination-disabled { + cursor: not-allowed; +} +.rc-pagination-disabled a { + color: #ccc; +} +.rc-pagination-disabled .rc-pagination-item, +.rc-pagination-disabled .rc-pagination-prev, +.rc-pagination-disabled .rc-pagination-next { + cursor: not-allowed; +} +.rc-pagination-disabled .rc-pagination-item:hover, +.rc-pagination-disabled .rc-pagination-prev:hover, +.rc-pagination-disabled .rc-pagination-next:hover { + border-color: #d9d9d9; +} +.rc-pagination-disabled .rc-pagination-item:hover a, +.rc-pagination-disabled .rc-pagination-prev:hover a, +.rc-pagination-disabled .rc-pagination-next:hover a { + color: #d9d9d9; +} +.rc-pagination-disabled .rc-pagination-jump-prev, +.rc-pagination-disabled .rc-pagination-jump-next { + pointer-events: none; +} +.rc-pagination-options { + float: left; + margin-left: 15px; +} +.rc-pagination-options-size-changer { + float: left; + width: 80px; +} +.rc-pagination-options-quick-jumper { + float: left; + margin-left: 16px; + height: 28px; + line-height: 28px; +} +.rc-pagination-options-quick-jumper input { + margin: 0 8px; + box-sizing: border-box; + background-color: #fff; + border-radius: 6px; + border: 1px solid #d9d9d9; + outline: none; + padding: 3px 12px; + width: 50px; + height: 28px; +} +.rc-pagination-options-quick-jumper input:hover { + border-color: #2db7f5; +} +.rc-pagination-options-quick-jumper button { + display: inline-block; + margin: 0 8px; + font-weight: 500; + text-align: center; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + background-image: none; + border: 1px solid transparent; + white-space: nowrap; + padding: 0 15px; + font-size: 12px; + border-radius: 6px; + height: 28px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); + position: relative; + color: rgba(0, 0, 0, 0.65); + background-color: #fff; + border-color: #d9d9d9; +} +.rc-pagination-options-quick-jumper button:hover, +.rc-pagination-options-quick-jumper button:active, +.rc-pagination-options-quick-jumper button:focus { + color: #2db7f5; + background-color: #fff; + border-color: #2db7f5; +} +.rc-pagination-simple .rc-pagination-prev, +.rc-pagination-simple .rc-pagination-next { + border: none; + height: 24px; + line-height: 24px; + margin: 0; + font-size: 18px; +} +.rc-pagination-simple .rc-pagination-simple-pager { + float: left; + margin-right: 8px; + list-style: none; +} +.rc-pagination-simple .rc-pagination-simple-pager .rc-pagination-slash { + margin: 0 10px; +} +.rc-pagination-simple .rc-pagination-simple-pager input { + margin: 0 8px; + box-sizing: border-box; + background-color: #fff; + border-radius: 6px; + border: 1px solid #d9d9d9; + outline: none; + padding: 5px 8px; + min-height: 20px; +} +.rc-pagination-simple .rc-pagination-simple-pager input:hover { + border-color: #2db7f5; +} +.rc-pagination-simple .rc-pagination-simple-pager button { + display: inline-block; + margin: 0 8px; + font-weight: 500; + text-align: center; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + background-image: none; + border: 1px solid transparent; + white-space: nowrap; + padding: 0 8px; + font-size: 12px; + border-radius: 6px; + height: 26px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); + position: relative; + color: rgba(0, 0, 0, 0.65); + background-color: #fff; + border-color: #d9d9d9; +} +.rc-pagination-simple .rc-pagination-simple-pager button:hover, +.rc-pagination-simple .rc-pagination-simple-pager button:active, +.rc-pagination-simple .rc-pagination-simple-pager button:focus { + color: #2db7f5; + background-color: #fff; + border-color: #2db7f5; +} +@media only screen and (max-width: 1024px) { + .rc-pagination-item-after-jump-prev, + .rc-pagination-item-before-jump-next { + display: none; + } +} + +/*# sourceMappingURL=rc-pagination.min.css.map*/ diff --git a/dist/rc-pagination.min.css.map b/dist/rc-pagination.min.css.map new file mode 100644 index 00000000..a83e1aa1 --- /dev/null +++ b/dist/rc-pagination.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./assets/index.less"],"names":[],"mappings":"AAaA;EACE;EACA;EACA;KAAA;MAAA;UAAA;EACA;CAZD;AAQD;EAOI;CAZH;AAeC;EACE;EACA;EACA;EACA;EACA;EACA;CAbH;AAgBC;EACE;EACA;EACA;EACA;EACA;EACA;CAdH;AAiBC;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAfH;AAIC;EAcI;EACA;CAfL;AAkBG;EACE;CAhBL;AAeG;EAGI;CAfP;AAmBG;EA/DF;CA+CD;AA7CC;EACE;CA+CH;AAhDC;EAGI;CAgDL;AAcG;EACE;EACA;CAZL;AAUG;EAKI;CAZP;AAeK;EAEI;CAdT;AAqBG;;EACE;EACA;EACA;EACA;EACA;EACA;CAlBL;AAsBK;;EACE;CAnBP;AA2BK;EACE;CAzBP;AAgCK;EACE;CA9BP;AAmCC;;EAEE;CAjCH;AAmCG;;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;CAjCL;AAcC;;;;EAwBI;EACA;CAhCL;AAoCK;;EACE;EACA;CAjCP;AA8BG;;;;EAQI;EACA;CAhCP;AAqCC;;;EACE;CAjCH;AAmCC;;;;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CA9BH;AAmCK;EACE;EACA;CAjCP;AAwCK;EACE;EACA;CAtCP;AA2CC;;EACE;EACA;CAxCH;AAsCC;;EAII;CAtCL;AAuCK;;EACE;CApCP;AAyCC;EACE;CAvCH;AAsCC;EAGI;CAtCL;AAmCC;;;EA5MA;CA8KD;AA5KC;;;EACE;CAgLH;AAjLC;;;EAGI;CAmLL;AAoBC;;EAcI;CA9BL;AAkCC;EACE;EACA;CAhCH;AAiCG;EACE;EACA;CA/BL;AAkCG;EACE;EACA;EACA;EACA;CAhCL;AA4BG;EAOI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAhCP;AAkCO;EACE;CAhCT;AAcG;EAuBI;EACA;EACA;EACA;EACA;MAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;KAAA;MAAA;UAAA;EACA;EACA;EACA;EACA;EACA;CAlCP;AAoCO;;;EACE;EACA;EACA;CAhCT;AAsCC;;EAEI;EACA;EACA;EACA;EACA;CApCL;AA8BC;EAUI;EACA;EACA;CArCL;AAyBC;EAeM;CArCP;AAsBC;EAmBM;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAtCP;AAwCO;EACE;CAtCT;AASC;EAkCM;EACA;EACA;EACA;EACA;MAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;KAAA;MAAA;UAAA;EACA;EACA;EACA;EACA;EACA;CAxCP;AA0CO;;;EACE;EACA;EACA;CAtCT;AA8CD;EAEI;;IAEE;GA7CH;CACF","file":"rc-pagination.min.css","sourcesContent":["@prefixClass: rc-pagination;\n\n.disabled-item() {\n cursor: not-allowed;\n\n &:hover {\n border-color: #d9d9d9;\n a {\n color: #d9d9d9;\n }\n }\n}\n\n.@{prefixClass} {\n font-size: 12px;\n font-family: 'Arial';\n user-select: none;\n padding: 0;\n\n > li {\n list-style: none;\n }\n\n &-total-text {\n float: left;\n height: 30px;\n line-height: 30px;\n list-style: none;\n padding: 0;\n margin: 0 8px 0 0;\n }\n\n &:after {\n content: \" \";\n display: block;\n height: 0;\n clear: both;\n overflow: hidden;\n visibility: hidden;\n }\n\n &-item {\n cursor: pointer;\n border-radius: 6px;\n min-width: 28px;\n height: 28px;\n line-height: 28px;\n text-align: center;\n list-style: none;\n float: left;\n border: 1px solid #d9d9d9;\n background-color: #fff;\n margin-right: 8px;\n\n a {\n text-decoration: none;\n color: #666;\n }\n\n &:hover {\n border-color: #2db7f5;\n a {\n color: #2db7f5;\n }\n }\n\n &-disabled {\n .disabled-item();\n }\n\n &-active {\n background-color: #2db7f5;\n border-color: #2db7f5;\n\n a {\n color: #fff;\n }\n\n &:hover {\n a {\n color: #fff;\n }\n }\n }\n }\n\n &-jump-prev, &-jump-next {\n &:after {\n content: \"•••\";\n display: block;\n letter-spacing: 2px;\n color: #ccc;\n font-size: 12px;\n margin-top: 1px;\n }\n\n &:hover {\n &:after {\n color: #2db7f5;\n }\n }\n\n }\n\n &-jump-prev {\n &:hover {\n &:after {\n content: \"«\";\n }\n }\n }\n\n &-jump-next {\n &:hover {\n &:after {\n content: \"»\";\n }\n }\n }\n \n &-jump-prev-custom-icon,\n &-jump-next-custom-icon {\n position: relative;\n\n &:after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n margin: auto;\n transition: all .2s;\n\n content: \"•••\";\n opacity: 1;\n display: block;\n letter-spacing: 2px;\n color: #ccc;\n font-size: 12px;\n margin-top: 1px;\n }\n\n .custom-icon-jump-prev,\n .custom-icon-jump-next {\n opacity: 0;\n transition: all .2s;\n }\n\n &:hover {\n &:after {\n opacity: 0;\n color: #ccc;\n }\n\n .custom-icon-jump-prev,\n .custom-icon-jump-next {\n opacity: 1;\n color: #2db7f5;\n }\n }\n }\n\n &-prev, &-jump-prev, &-jump-next {\n margin-right: 8px;\n }\n &-prev, &-next, &-jump-prev, &-jump-next {\n cursor: pointer;\n color: #666;\n font-size: 10px;\n border-radius: 6px;\n list-style: none;\n min-width: 28px;\n height: 28px;\n line-height: 28px;\n float: left;\n text-align: center;\n }\n\n &-prev {\n a {\n &:after {\n content: \"‹\";\n display: block;\n }\n }\n }\n\n &-next {\n a {\n &:after {\n content: \"›\";\n display: block;\n }\n }\n }\n\n &-prev, &-next {\n border: 1px solid #d9d9d9;\n font-size: 18px;\n a {\n color: #666;\n &:after {\n margin-top: -1px;\n }\n }\n }\n\n &-disabled {\n cursor: not-allowed;\n a {\n color: #ccc;\n }\n\n .@{prefixClass}-item,\n .@{prefixClass}-prev,\n .@{prefixClass}-next {\n .disabled-item();\n }\n\n .@{prefixClass}-jump-prev,\n .@{prefixClass}-jump-next {\n pointer-events: none;\n }\n }\n\n &-options {\n float: left;\n margin-left: 15px;\n &-size-changer {\n float: left;\n width: 80px;\n }\n\n &-quick-jumper {\n float: left;\n margin-left: 16px;\n height: 28px;\n line-height: 28px;\n\n input {\n margin: 0 8px;\n box-sizing: border-box;\n background-color: #fff;\n border-radius: 6px;\n border: 1px solid #d9d9d9;\n outline: none;\n padding: 3px 12px;\n width: 50px;\n height: 28px;\n\n &:hover {\n border-color: #2db7f5;\n }\n }\n\n button {\n display: inline-block;\n margin: 0 8px;\n font-weight: 500;\n text-align: center;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 0 15px;\n font-size: 12px;\n border-radius: 6px;\n height: 28px;\n user-select: none;\n transition: all .3s cubic-bezier(.645,.045,.355,1);\n position: relative;\n color: rgba(0,0,0,.65);\n background-color: #fff;\n border-color: #d9d9d9;\n\n &:hover, &:active, &:focus {\n color: #2db7f5;\n background-color: #fff;\n border-color: #2db7f5;\n }\n }\n }\n }\n\n &-simple {\n .@{prefixClass}-prev, .@{prefixClass}-next {\n border: none;\n height: 24px;\n line-height: 24px;\n margin: 0;\n font-size: 18px;\n }\n\n .@{prefixClass}-simple-pager {\n float: left;\n margin-right: 8px;\n list-style: none;\n\n .@{prefixClass}-slash {\n margin: 0 10px;\n }\n\n input {\n margin: 0 8px;\n box-sizing: border-box;\n background-color: #fff;\n border-radius: 6px;\n border: 1px solid #d9d9d9;\n outline: none;\n padding: 5px 8px;\n min-height: 20px;\n\n &:hover {\n border-color: #2db7f5;\n }\n }\n\n button {\n display: inline-block;\n margin: 0 8px;\n font-weight: 500;\n text-align: center;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 0 8px;\n font-size: 12px;\n border-radius: 6px;\n height: 26px;\n user-select: none;\n transition: all .3s cubic-bezier(.645,.045,.355,1);\n position: relative;\n color: rgba(0,0,0,.65);\n background-color: #fff;\n border-color: #d9d9d9;\n\n &:hover, &:active, &:focus {\n color: #2db7f5;\n background-color: #fff;\n border-color: #2db7f5;\n }\n }\n\n }\n }\n}\n\n@media only screen and (max-width: 1024px) {\n .@{prefixClass}-item {\n &-after-jump-prev,\n &-before-jump-next {\n display: none;\n }\n }\n}\n\n\n// WEBPACK FOOTER //\n// ./assets/index.less"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/rc-pagination.min.js b/dist/rc-pagination.min.js new file mode 100644 index 00000000..be2f56f5 --- /dev/null +++ b/dist/rc-pagination.min.js @@ -0,0 +1,2476 @@ +!(function(e, t) { + 'object' == typeof exports && 'object' == typeof module + ? (module.exports = t(require('react'))) + : 'function' == typeof define && define.amd + ? define(['react'], t) + : 'object' == typeof exports + ? (exports['rc-pagination'] = t(require('react'))) + : (e['rc-pagination'] = t(e.React)); +})(this, function(e) { + return (function(e) { + function t(r) { + if (n[r]) return n[r].exports; + var o = (n[r] = { i: r, l: !1, exports: {} }); + return e[r].call(o.exports, o, o.exports, t), (o.l = !0), o.exports; + } + var n = {}; + return ( + (t.m = e), + (t.c = n), + (t.i = function(e) { + return e; + }), + (t.d = function(e, n, r) { + t.o(e, n) || + Object.defineProperty(e, n, { + configurable: !1, + enumerable: !0, + get: r, + }); + }), + (t.n = function(e) { + var n = + e && e.__esModule + ? function() { + return e.default; + } + : function() { + return e; + }; + return t.d(n, 'a', n), n; + }), + (t.o = function(e, t) { + return Object.prototype.hasOwnProperty.call(e, t); + }), + (t.p = ''), + t((t.s = 100)) + ); + })([ + function(e, t) { + var n = (e.exports = { version: '2.6.11' }); + 'number' == typeof __e && (__e = n); + }, + function(e, t, n) { + e.exports = !n(11)(function() { + return ( + 7 != + Object.defineProperty({}, 'a', { + get: function() { + return 7; + }, + }).a + ); + }); + }, + function(e, t) { + var n = (e.exports = + 'undefined' != typeof window && window.Math == Math + ? window + : 'undefined' != typeof self && self.Math == Math + ? self + : Function('return this')()); + 'number' == typeof __g && (__g = n); + }, + function(e, t) { + var n = {}.hasOwnProperty; + e.exports = function(e, t) { + return n.call(e, t); + }; + }, + function(e, t, n) { + var r = n(10), + o = n(44), + i = n(27), + a = Object.defineProperty; + t.f = n(1) + ? Object.defineProperty + : function(e, t, n) { + if ((r(e), (t = i(t, !0)), r(n), o)) + try { + return a(e, t, n); + } catch (e) {} + if ('get' in n || 'set' in n) + throw TypeError('Accessors not supported!'); + return 'value' in n && (e[t] = n.value), e; + }; + }, + function(e, t, n) { + var r = n(2), + o = n(0), + i = n(42), + a = n(6), + u = n(3), + s = function(e, t, n) { + var c, + l, + f, + p = e & s.F, + h = e & s.G, + d = e & s.S, + v = e & s.P, + m = e & s.B, + y = e & s.W, + g = h ? o : o[t] || (o[t] = {}), + b = g.prototype, + x = h ? r : d ? r[t] : (r[t] || {}).prototype; + h && (n = t); + for (c in n) + ((l = !p && x && void 0 !== x[c]) && u(g, c)) || + ((f = l ? x[c] : n[c]), + (g[c] = + h && 'function' != typeof x[c] + ? n[c] + : m && l + ? i(f, r) + : y && x[c] == f + ? (function(e) { + var t = function(t, n, r) { + if (this instanceof e) { + switch (arguments.length) { + case 0: + return new e(); + case 1: + return new e(t); + case 2: + return new e(t, n); + } + return new e(t, n, r); + } + return e.apply(this, arguments); + }; + return (t.prototype = e.prototype), t; + })(f) + : v && 'function' == typeof f + ? i(Function.call, f) + : f), + v && + (((g.virtual || (g.virtual = {}))[c] = f), + e & s.R && b && !b[c] && a(b, c, f))); + }; + (s.F = 1), + (s.G = 2), + (s.S = 4), + (s.P = 8), + (s.B = 16), + (s.W = 32), + (s.U = 64), + (s.R = 128), + (e.exports = s); + }, + function(e, t, n) { + var r = n(4), + o = n(15); + e.exports = n(1) + ? function(e, t, n) { + return r.f(e, t, o(1, n)); + } + : function(e, t, n) { + return (e[t] = n), e; + }; + }, + function(e, t) { + e.exports = function(e) { + return 'object' == typeof e ? null !== e : 'function' == typeof e; + }; + }, + function(e, t, n) { + var r = n(45), + o = n(17); + e.exports = function(e) { + return r(o(e)); + }; + }, + function(e, t, n) { + var r = n(24)('wks'), + o = n(16), + i = n(2).Symbol, + a = 'function' == typeof i; + (e.exports = function(e) { + return r[e] || (r[e] = (a && i[e]) || (a ? i : o)('Symbol.' + e)); + }).store = r; + }, + function(e, t, n) { + var r = n(7); + e.exports = function(e) { + if (!r(e)) throw TypeError(e + ' is not an object!'); + return e; + }; + }, + function(e, t) { + e.exports = function(e) { + try { + return !!e(); + } catch (e) { + return !0; + } + }; + }, + function(e, t) { + e.exports = !0; + }, + function(e, t, n) { + var r = n(49), + o = n(18); + e.exports = + Object.keys || + function(e) { + return r(e, o); + }; + }, + function(e, t) { + t.f = {}.propertyIsEnumerable; + }, + function(e, t) { + e.exports = function(e, t) { + return { + enumerable: !(1 & e), + configurable: !(2 & e), + writable: !(4 & e), + value: t, + }; + }; + }, + function(e, t) { + var n = 0, + r = Math.random(); + e.exports = function(e) { + return 'Symbol('.concat( + void 0 === e ? '' : e, + ')_', + (++n + r).toString(36), + ); + }; + }, + function(e, t) { + e.exports = function(e) { + if (void 0 == e) throw TypeError("Can't call method on " + e); + return e; + }; + }, + function(e, t) { + e.exports = 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'.split( + ',', + ); + }, + function(e, t) { + e.exports = {}; + }, + function(e, t, n) { + var r = n(10), + o = n(79), + i = n(18), + a = n(23)('IE_PROTO'), + u = function() {}, + s = function() { + var e, + t = n(43)('iframe'), + r = i.length; + for ( + t.style.display = 'none', + n(73).appendChild(t), + t.src = 'javascript:', + e = t.contentWindow.document, + e.open(), + e.write(''), + e.close(), + s = e.F; + r--; + + ) + delete s.prototype[i[r]]; + return s(); + }; + e.exports = + Object.create || + function(e, t) { + var n; + return ( + null !== e + ? ((u.prototype = r(e)), + (n = new u()), + (u.prototype = null), + (n[a] = e)) + : (n = s()), + void 0 === t ? n : o(n, t) + ); + }; + }, + function(e, t) { + t.f = Object.getOwnPropertySymbols; + }, + function(e, t, n) { + var r = n(4).f, + o = n(3), + i = n(9)('toStringTag'); + e.exports = function(e, t, n) { + e && + !o((e = n ? e : e.prototype), i) && + r(e, i, { configurable: !0, value: t }); + }; + }, + function(e, t, n) { + var r = n(24)('keys'), + o = n(16); + e.exports = function(e) { + return r[e] || (r[e] = o(e)); + }; + }, + function(e, t, n) { + var r = n(0), + o = n(2), + i = o['__core-js_shared__'] || (o['__core-js_shared__'] = {}); + (e.exports = function(e, t) { + return i[e] || (i[e] = void 0 !== t ? t : {}); + })('versions', []).push({ + version: r.version, + mode: n(12) ? 'pure' : 'global', + copyright: '© 2019 Denis Pushkarev (zloirock.ru)', + }); + }, + function(e, t) { + var n = Math.ceil, + r = Math.floor; + e.exports = function(e) { + return isNaN((e = +e)) ? 0 : (e > 0 ? r : n)(e); + }; + }, + function(e, t, n) { + var r = n(17); + e.exports = function(e) { + return Object(r(e)); + }; + }, + function(e, t, n) { + var r = n(7); + e.exports = function(e, t) { + if (!r(e)) return e; + var n, o; + if (t && 'function' == typeof (n = e.toString) && !r((o = n.call(e)))) + return o; + if ('function' == typeof (n = e.valueOf) && !r((o = n.call(e)))) + return o; + if (!t && 'function' == typeof (n = e.toString) && !r((o = n.call(e)))) + return o; + throw TypeError("Can't convert object to primitive value"); + }; + }, + function(e, t, n) { + var r = n(2), + o = n(0), + i = n(12), + a = n(29), + u = n(4).f; + e.exports = function(e) { + var t = o.Symbol || (o.Symbol = i ? {} : r.Symbol || {}); + '_' == e.charAt(0) || e in t || u(t, e, { value: a.f(e) }); + }; + }, + function(e, t, n) { + t.f = n(9); + }, + function(e, t, n) { + e.exports = n(97)(); + }, + function(t, n) { + t.exports = e; + }, + function(e, t, n) { + 'use strict'; + t.a = { + ZERO: 48, + NINE: 57, + NUMPAD_ZERO: 96, + NUMPAD_NINE: 105, + BACKSPACE: 8, + DELETE: 46, + ENTER: 13, + ARROW_UP: 38, + ARROW_DOWN: 40, + }; + }, + function(e, t, n) { + e.exports = { default: n(65), __esModule: !0 }; + }, + function(e, t, n) { + 'use strict'; + (t.__esModule = !0), + (t.default = function(e, t) { + if (!(e instanceof t)) + throw new TypeError('Cannot call a class as a function'); + }); + }, + function(e, t, n) { + 'use strict'; + t.__esModule = !0; + var r = n(33), + o = (function(e) { + return e && e.__esModule ? e : { default: e }; + })(r); + t.default = (function() { + function e(e, t) { + for (var n = 0; n < t.length; n++) { + var r = t[n]; + (r.enumerable = r.enumerable || !1), + (r.configurable = !0), + 'value' in r && (r.writable = !0), + (0, o.default)(e, r.key, r); + } + } + return function(t, n, r) { + return n && e(t.prototype, n), r && e(t, r), t; + }; + })(); + }, + function(e, t, n) { + 'use strict'; + t.__esModule = !0; + var r = n(33), + o = (function(e) { + return e && e.__esModule ? e : { default: e }; + })(r); + t.default = function(e, t, n) { + return ( + t in e + ? (0, o.default)(e, t, { + value: n, + enumerable: !0, + configurable: !0, + writable: !0, + }) + : (e[t] = n), + e + ); + }; + }, + function(e, t, n) { + 'use strict'; + function r(e) { + return e && e.__esModule ? e : { default: e }; + } + t.__esModule = !0; + var o = n(59), + i = r(o), + a = n(58), + u = r(a), + s = n(39), + c = r(s); + t.default = function(e, t) { + if ('function' != typeof t && null !== t) + throw new TypeError( + 'Super expression must either be null or a function, not ' + + (void 0 === t ? 'undefined' : (0, c.default)(t)), + ); + (e.prototype = (0, u.default)(t && t.prototype, { + constructor: { + value: e, + enumerable: !1, + writable: !0, + configurable: !0, + }, + })), + t && (i.default ? (0, i.default)(e, t) : (e.__proto__ = t)); + }; + }, + function(e, t, n) { + 'use strict'; + t.__esModule = !0; + var r = n(39), + o = (function(e) { + return e && e.__esModule ? e : { default: e }; + })(r); + t.default = function(e, t) { + if (!e) + throw new ReferenceError( + "this hasn't been initialised - super() hasn't been called", + ); + return !t || + ('object' !== (void 0 === t ? 'undefined' : (0, o.default)(t)) && + 'function' != typeof t) + ? e + : t; + }; + }, + function(e, t, n) { + 'use strict'; + function r(e) { + return e && e.__esModule ? e : { default: e }; + } + t.__esModule = !0; + var o = n(61), + i = r(o), + a = n(60), + u = r(a), + s = + 'function' == typeof u.default && 'symbol' == typeof i.default + ? function(e) { + return typeof e; + } + : function(e) { + return e && + 'function' == typeof u.default && + e.constructor === u.default && + e !== u.default.prototype + ? 'symbol' + : typeof e; + }; + t.default = + 'function' == typeof u.default && 'symbol' === s(i.default) + ? function(e) { + return void 0 === e ? 'undefined' : s(e); + } + : function(e) { + return e && + 'function' == typeof u.default && + e.constructor === u.default && + e !== u.default.prototype + ? 'symbol' + : void 0 === e + ? 'undefined' + : s(e); + }; + }, + function(e, t, n) { + var r, o; + !(function() { + 'use strict'; + function n() { + for (var e = [], t = 0; t < arguments.length; t++) { + var r = arguments[t]; + if (r) { + var o = typeof r; + if ('string' === o || 'number' === o) e.push(r); + else if (Array.isArray(r) && r.length) { + var a = n.apply(null, r); + a && e.push(a); + } else if ('object' === o) + for (var u in r) i.call(r, u) && r[u] && e.push(u); + } + } + return e.join(' '); + } + var i = {}.hasOwnProperty; + void 0 !== e && e.exports + ? ((n.default = n), (e.exports = n)) + : ((r = []), + void 0 !== + (o = function() { + return n; + }.apply(t, r)) && (e.exports = o)); + })(); + }, + function(e, t) { + var n = {}.toString; + e.exports = function(e) { + return n.call(e).slice(8, -1); + }; + }, + function(e, t, n) { + var r = n(69); + e.exports = function(e, t, n) { + if ((r(e), void 0 === t)) return e; + switch (n) { + case 1: + return function(n) { + return e.call(t, n); + }; + case 2: + return function(n, r) { + return e.call(t, n, r); + }; + case 3: + return function(n, r, o) { + return e.call(t, n, r, o); + }; + } + return function() { + return e.apply(t, arguments); + }; + }; + }, + function(e, t, n) { + var r = n(7), + o = n(2).document, + i = r(o) && r(o.createElement); + e.exports = function(e) { + return i ? o.createElement(e) : {}; + }; + }, + function(e, t, n) { + e.exports = + !n(1) && + !n(11)(function() { + return ( + 7 != + Object.defineProperty(n(43)('div'), 'a', { + get: function() { + return 7; + }, + }).a + ); + }); + }, + function(e, t, n) { + var r = n(41); + e.exports = Object('z').propertyIsEnumerable(0) + ? Object + : function(e) { + return 'String' == r(e) ? e.split('') : Object(e); + }; + }, + function(e, t, n) { + 'use strict'; + var r = n(12), + o = n(5), + i = n(50), + a = n(6), + u = n(19), + s = n(75), + c = n(22), + l = n(81), + f = n(9)('iterator'), + p = !([].keys && 'next' in [].keys()), + h = function() { + return this; + }; + e.exports = function(e, t, n, d, v, m, y) { + s(n, t, d); + var g, + b, + x, + _ = function(e) { + if (!p && e in w) return w[e]; + switch (e) { + case 'keys': + case 'values': + return function() { + return new n(this, e); + }; + } + return function() { + return new n(this, e); + }; + }, + S = t + ' Iterator', + P = 'values' == v, + O = !1, + w = e.prototype, + E = w[f] || w['@@iterator'] || (v && w[v]), + C = E || _(v), + N = v ? (P ? _('entries') : C) : void 0, + j = 'Array' == t ? w.entries || E : E; + if ( + (j && + (x = l(j.call(new e()))) !== Object.prototype && + x.next && + (c(x, S, !0), r || 'function' == typeof x[f] || a(x, f, h)), + P && + E && + 'values' !== E.name && + ((O = !0), + (C = function() { + return E.call(this); + })), + (r && !y) || (!p && !O && w[f]) || a(w, f, C), + (u[t] = C), + (u[S] = h), + v) + ) + if ( + ((g = { + values: P ? C : _('values'), + keys: m ? C : _('keys'), + entries: N, + }), + y) + ) + for (b in g) b in w || i(w, b, g[b]); + else o(o.P + o.F * (p || O), t, g); + return g; + }; + }, + function(e, t, n) { + var r = n(14), + o = n(15), + i = n(8), + a = n(27), + u = n(3), + s = n(44), + c = Object.getOwnPropertyDescriptor; + t.f = n(1) + ? c + : function(e, t) { + if (((e = i(e)), (t = a(t, !0)), s)) + try { + return c(e, t); + } catch (e) {} + if (u(e, t)) return o(!r.f.call(e, t), e[t]); + }; + }, + function(e, t, n) { + var r = n(49), + o = n(18).concat('length', 'prototype'); + t.f = + Object.getOwnPropertyNames || + function(e) { + return r(e, o); + }; + }, + function(e, t, n) { + var r = n(3), + o = n(8), + i = n(71)(!1), + a = n(23)('IE_PROTO'); + e.exports = function(e, t) { + var n, + u = o(e), + s = 0, + c = []; + for (n in u) n != a && r(u, n) && c.push(n); + for (; t.length > s; ) r(u, (n = t[s++])) && (~i(c, n) || c.push(n)); + return c; + }; + }, + function(e, t, n) { + e.exports = n(6); + }, + function(e, t, n) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + var r = n(55); + n.d(t, 'default', function() { + return r.a; + }); + }, + function(e, t) {}, + function(e, t, n) { + 'use strict'; + var r = n(34), + o = n.n(r), + i = n(35), + a = n.n(i), + u = n(38), + s = n.n(u), + c = n(37), + l = n.n(c), + f = n(31), + p = n.n(f), + h = n(30), + d = n.n(h), + v = n(32), + m = (function(e) { + function t() { + var e, n, r, i; + o()(this, t); + for (var a = arguments.length, u = Array(a), c = 0; c < a; c++) + u[c] = arguments[c]; + return ( + (n = r = s()( + this, + (e = t.__proto__ || Object.getPrototypeOf(t)).call.apply( + e, + [this].concat(u), + ), + )), + (r.state = { goInputText: '' }), + (r.buildOptionText = function(e) { + return e + ' ' + r.props.locale.items_per_page; + }), + (r.changeSize = function(e) { + r.props.changeSize(Number(e)); + }), + (r.handleChange = function(e) { + r.setState({ goInputText: e.target.value }); + }), + (r.handleBlur = function(e) { + var t = r.props, + n = t.goButton, + o = t.quickGo, + i = t.rootPrefixCls; + n || + (e.relatedTarget && + (e.relatedTarget.className.indexOf(i + '-prev') >= 0 || + e.relatedTarget.className.indexOf(i + '-next') >= 0)) || + o(r.getValidValue()); + }), + (r.go = function(e) { + '' !== r.state.goInputText && + ((e.keyCode !== v.a.ENTER && 'click' !== e.type) || + (r.setState({ goInputText: '' }), + r.props.quickGo(r.getValidValue()))); + }), + (i = n), + s()(r, i) + ); + } + return ( + l()(t, e), + a()(t, [ + { + key: 'getValidValue', + value: function() { + var e = this.state, + t = e.goInputText, + n = e.current; + return !t || isNaN(t) ? n : Number(t); + }, + }, + { + key: 'render', + value: function() { + var e = this, + t = this.props, + n = t.pageSize, + r = t.pageSizeOptions, + o = t.locale, + i = t.rootPrefixCls, + a = t.changeSize, + u = t.quickGo, + s = t.goButton, + c = t.selectComponentClass, + l = t.buildOptionText, + f = t.selectPrefixCls, + h = t.disabled, + d = this.state.goInputText, + v = i + '-options', + m = c, + y = null, + g = null, + b = null; + if (!a && !u) return null; + if (a && m) { + var x = r.map(function(t, n) { + return p.a.createElement( + m.Option, + { key: n, value: t }, + (l || e.buildOptionText)(t), + ); + }); + y = p.a.createElement( + m, + { + disabled: h, + prefixCls: f, + showSearch: !1, + className: v + '-size-changer', + optionLabelProp: 'children', + dropdownMatchSelectWidth: !1, + value: (n || r[0]).toString(), + onChange: this.changeSize, + getPopupContainer: function(e) { + return e.parentNode; + }, + }, + x, + ); + } + return ( + u && + (s && + (b = + 'boolean' == typeof s + ? p.a.createElement( + 'button', + { + type: 'button', + onClick: this.go, + onKeyUp: this.go, + disabled: h, + }, + o.jump_to_confirm, + ) + : p.a.createElement( + 'span', + { onClick: this.go, onKeyUp: this.go }, + s, + )), + (g = p.a.createElement( + 'div', + { className: v + '-quick-jumper' }, + o.jump_to, + p.a.createElement('input', { + disabled: h, + type: 'text', + value: d, + onChange: this.handleChange, + onKeyUp: this.go, + onBlur: this.handleBlur, + }), + o.page, + b, + ))), + p.a.createElement('li', { className: '' + v }, y, g) + ); + }, + }, + ]), + t + ); + })(p.a.Component); + (m.propTypes = { + disabled: d.a.bool, + changeSize: d.a.func, + quickGo: d.a.func, + selectComponentClass: d.a.func, + current: d.a.number, + pageSizeOptions: d.a.arrayOf(d.a.string), + pageSize: d.a.number, + buildOptionText: d.a.func, + locale: d.a.object, + rootPrefixCls: d.a.string, + selectPrefixCls: d.a.string, + goButton: d.a.oneOfType([d.a.bool, d.a.node]), + }), + (m.defaultProps = { pageSizeOptions: ['10', '20', '30', '40'] }), + (t.a = m); + }, + function(e, t, n) { + 'use strict'; + var r = n(36), + o = n.n(r), + i = n(31), + a = n.n(i), + u = n(30), + s = n.n(u), + c = n(40), + l = n.n(c), + f = function(e) { + var t, + n = e.rootPrefixCls + '-item', + r = l()( + n, + n + '-' + e.page, + ((t = {}), + o()(t, n + '-active', e.active), + o()(t, e.className, !!e.className), + o()(t, n + '-disabled', !e.page), + t), + ), + i = function() { + e.onClick(e.page); + }, + u = function(t) { + e.onKeyPress(t, e.onClick, e.page); + }; + return a.a.createElement( + 'li', + { + title: e.showTitle ? e.page : null, + className: r, + onClick: i, + onKeyPress: u, + tabIndex: '0', + }, + e.itemRender(e.page, 'page', a.a.createElement('a', null, e.page)), + ); + }; + (f.propTypes = { + page: s.a.number, + active: s.a.bool, + last: s.a.bool, + locale: s.a.object, + className: s.a.string, + showTitle: s.a.bool, + rootPrefixCls: s.a.string, + onClick: s.a.func, + onKeyPress: s.a.func, + itemRender: s.a.func, + }), + (t.a = f); + }, + function(e, t, n) { + 'use strict'; + function r() {} + function o(e) { + return 'number' == typeof e && isFinite(e) && Math.floor(e) === e; + } + function i(e, t, n) { + return n; + } + function a(e, t, n) { + var r = e; + return ( + void 0 === r && (r = t.pageSize), Math.floor((n.total - 1) / r) + 1 + ); + } + var u = n(36), + s = n.n(u), + c = n(62), + l = n.n(c), + f = n(34), + p = n.n(f), + h = n(35), + d = n.n(h), + v = n(38), + m = n.n(v), + y = n(37), + g = n.n(y), + b = n(31), + x = n.n(b), + _ = n(40), + S = n.n(_), + P = n(30), + O = n.n(P), + w = n(54), + E = n(53), + C = n(32), + N = n(56), + j = n(99), + T = (function(e) { + function t(e) { + p()(this, t); + var n = m()( + this, + (t.__proto__ || Object.getPrototypeOf(t)).call(this, e), + ); + I.call(n); + var o = e.onChange !== r; + 'current' in e && + !o && + console.warn( + 'Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.', + ); + var i = e.defaultCurrent; + 'current' in e && (i = e.current); + var u = e.defaultPageSize; + return ( + 'pageSize' in e && (u = e.pageSize), + (i = Math.min(i, a(u, void 0, e))), + (n.state = { current: i, currentInputValue: i, pageSize: u }), + n + ); + } + return ( + g()(t, e), + d()( + t, + [ + { + key: 'componentDidUpdate', + value: function(e, t) { + var n = this.props.prefixCls; + if ( + t.current !== this.state.current && + this.paginationNode + ) { + var r = this.paginationNode.querySelector( + '.' + n + '-item-' + t.current, + ); + r && document.activeElement === r && r.blur(); + } + }, + }, + { + key: 'getValidValue', + value: function(e) { + var t = e.target.value, + n = a(void 0, this.state, this.props), + r = this.state.currentInputValue; + return '' === t + ? t + : isNaN(Number(t)) + ? r + : t >= n + ? n + : Number(t); + }, + }, + { + key: 'renderPrev', + value: function(e) { + var t = this.props, + r = t.prevIcon, + o = t.itemRender, + i = o(e, 'prev', this.getItemIcon(r)), + a = !this.hasPrev(); + return n.i(b.isValidElement)(i) + ? n.i(b.cloneElement)(i, { disabled: a }) + : i; + }, + }, + { + key: 'renderNext', + value: function(e) { + var t = this.props, + r = t.nextIcon, + o = t.itemRender, + i = o(e, 'next', this.getItemIcon(r)), + a = !this.hasNext(); + return n.i(b.isValidElement)(i) + ? n.i(b.cloneElement)(i, { disabled: a }) + : i; + }, + }, + { + key: 'render', + value: function() { + var e = this.props, + t = e.prefixCls, + n = e.className, + r = e.disabled; + if ( + !0 === this.props.hideOnSinglePage && + this.props.total <= this.state.pageSize + ) + return null; + var o = this.props, + i = o.locale, + u = a(void 0, this.state, this.props), + c = [], + f = null, + p = null, + h = null, + d = null, + v = null, + m = o.showQuickJumper && o.showQuickJumper.goButton, + y = o.showLessItems ? 1 : 2, + g = this.state, + b = g.current, + _ = g.pageSize, + P = b - 1 > 0 ? b - 1 : 0, + O = b + 1 < u ? b + 1 : u, + C = Object.keys(o).reduce(function(e, t) { + return ( + ('data-' !== t.substr(0, 5) && + 'aria-' !== t.substr(0, 5) && + 'role' !== t) || + (e[t] = o[t]), + e + ); + }, {}); + if (o.simple) + return ( + m && + ((v = + 'boolean' == typeof m + ? x.a.createElement( + 'button', + { + type: 'button', + onClick: this.handleGoTO, + onKeyUp: this.handleGoTO, + }, + i.jump_to_confirm, + ) + : x.a.createElement( + 'span', + { + onClick: this.handleGoTO, + onKeyUp: this.handleGoTO, + }, + m, + )), + (v = x.a.createElement( + 'li', + { + title: o.showTitle + ? '' + i.jump_to + this.state.current + '/' + u + : null, + className: t + '-simple-pager', + }, + v, + ))), + x.a.createElement( + 'ul', + l()( + { + className: t + ' ' + t + '-simple ' + o.className, + style: o.style, + ref: this.savePaginationNode, + }, + C, + ), + x.a.createElement( + 'li', + { + title: o.showTitle ? i.prev_page : null, + onClick: this.prev, + tabIndex: this.hasPrev() ? 0 : null, + onKeyPress: this.runIfEnterPrev, + className: + (this.hasPrev() ? '' : t + '-disabled') + + ' ' + + t + + '-prev', + 'aria-disabled': !this.hasPrev(), + }, + this.renderPrev(P), + ), + x.a.createElement( + 'li', + { + title: o.showTitle + ? this.state.current + '/' + u + : null, + className: t + '-simple-pager', + }, + x.a.createElement('input', { + type: 'text', + value: this.state.currentInputValue, + onKeyDown: this.handleKeyDown, + onKeyUp: this.handleKeyUp, + onChange: this.handleKeyUp, + size: '3', + }), + x.a.createElement( + 'span', + { className: t + '-slash' }, + '/', + ), + u, + ), + x.a.createElement( + 'li', + { + title: o.showTitle ? i.next_page : null, + onClick: this.next, + tabIndex: this.hasPrev() ? 0 : null, + onKeyPress: this.runIfEnterNext, + className: + (this.hasNext() ? '' : t + '-disabled') + + ' ' + + t + + '-next', + 'aria-disabled': !this.hasNext(), + }, + this.renderNext(O), + ), + v, + ) + ); + if (u <= 5 + 2 * y) { + var N = { + locale: i, + rootPrefixCls: t, + onClick: this.handleChange, + onKeyPress: this.runIfEnter, + showTitle: o.showTitle, + itemRender: o.itemRender, + }; + u || + c.push( + x.a.createElement( + w.a, + l()({}, N, { + key: 'noPager', + page: u, + className: t + '-disabled', + }), + ), + ); + for (var j = 1; j <= u; j++) { + var T = this.state.current === j; + c.push( + x.a.createElement( + w.a, + l()({}, N, { key: j, page: j, active: T }), + ), + ); + } + } else { + var I = o.showLessItems ? i.prev_3 : i.prev_5, + k = o.showLessItems ? i.next_3 : i.next_5; + if (o.showPrevNextJumpers) { + var M = t + '-jump-prev'; + o.jumpPrevIcon && + (M += ' ' + t + '-jump-prev-custom-icon'), + (f = x.a.createElement( + 'li', + { + title: o.showTitle ? I : null, + key: 'prev', + onClick: this.jumpPrev, + tabIndex: '0', + onKeyPress: this.runIfEnterJumpPrev, + className: M, + }, + o.itemRender( + this.getJumpPrevPage(), + 'jump-prev', + this.getItemIcon(o.jumpPrevIcon), + ), + )); + var R = t + '-jump-next'; + o.jumpNextIcon && + (R += ' ' + t + '-jump-next-custom-icon'), + (p = x.a.createElement( + 'li', + { + title: o.showTitle ? k : null, + key: 'next', + tabIndex: '0', + onClick: this.jumpNext, + onKeyPress: this.runIfEnterJumpNext, + className: R, + }, + o.itemRender( + this.getJumpNextPage(), + 'jump-next', + this.getItemIcon(o.jumpNextIcon), + ), + )); + } + (d = x.a.createElement(w.a, { + locale: o.locale, + last: !0, + rootPrefixCls: t, + onClick: this.handleChange, + onKeyPress: this.runIfEnter, + key: u, + page: u, + active: !1, + showTitle: o.showTitle, + itemRender: o.itemRender, + })), + (h = x.a.createElement(w.a, { + locale: o.locale, + rootPrefixCls: t, + onClick: this.handleChange, + onKeyPress: this.runIfEnter, + key: 1, + page: 1, + active: !1, + showTitle: o.showTitle, + itemRender: o.itemRender, + })); + var z = Math.max(1, b - y), + A = Math.min(b + y, u); + b - 1 <= y && (A = 1 + 2 * y), + u - b <= y && (z = u - 2 * y); + for (var L = z; L <= A; L++) { + var D = b === L; + c.push( + x.a.createElement(w.a, { + locale: o.locale, + rootPrefixCls: t, + onClick: this.handleChange, + onKeyPress: this.runIfEnter, + key: L, + page: L, + active: D, + showTitle: o.showTitle, + itemRender: o.itemRender, + }), + ); + } + b - 1 >= 2 * y && + 3 !== b && + ((c[0] = x.a.cloneElement(c[0], { + className: t + '-item-after-jump-prev', + })), + c.unshift(f)), + u - b >= 2 * y && + b !== u - 2 && + ((c[c.length - 1] = x.a.cloneElement( + c[c.length - 1], + { className: t + '-item-before-jump-next' }, + )), + c.push(p)), + 1 !== z && c.unshift(h), + A !== u && c.push(d); + } + var U = null; + o.showTotal && + (U = x.a.createElement( + 'li', + { className: t + '-total-text' }, + o.showTotal(o.total, [ + 0 === o.total ? 0 : (b - 1) * _ + 1, + b * _ > o.total ? o.total : b * _, + ]), + )); + var W = !this.hasPrev() || !u, + F = !this.hasNext() || !u; + return x.a.createElement( + 'ul', + l()( + { + className: S()(t, n, s()({}, t + '-disabled', r)), + style: o.style, + unselectable: 'unselectable', + ref: this.savePaginationNode, + }, + C, + ), + U, + x.a.createElement( + 'li', + { + title: o.showTitle ? i.prev_page : null, + onClick: this.prev, + tabIndex: W ? null : 0, + onKeyPress: this.runIfEnterPrev, + className: + (W ? t + '-disabled' : '') + ' ' + t + '-prev', + 'aria-disabled': W, + }, + this.renderPrev(P), + ), + c, + x.a.createElement( + 'li', + { + title: o.showTitle ? i.next_page : null, + onClick: this.next, + tabIndex: F ? null : 0, + onKeyPress: this.runIfEnterNext, + className: + (F ? t + '-disabled' : '') + ' ' + t + '-next', + 'aria-disabled': F, + }, + this.renderNext(O), + ), + x.a.createElement(E.a, { + disabled: r, + locale: o.locale, + rootPrefixCls: t, + selectComponentClass: o.selectComponentClass, + selectPrefixCls: o.selectPrefixCls, + changeSize: this.props.showSizeChanger + ? this.changePageSize + : null, + current: this.state.current, + pageSize: this.state.pageSize, + pageSizeOptions: this.props.pageSizeOptions, + quickGo: this.shouldDisplayQuickJumper() + ? this.handleChange + : null, + goButton: m, + }), + ); + }, + }, + ], + [ + { + key: 'getDerivedStateFromProps', + value: function(e, t) { + var n = {}; + if ( + ('current' in e && + ((n.current = e.current), + e.current !== t.current && + (n.currentInputValue = n.current)), + 'pageSize' in e && e.pageSize !== t.pageSize) + ) { + var r = t.current, + o = a(e.pageSize, t, e); + (r = r > o ? o : r), + 'current' in e || + ((n.current = r), (n.currentInputValue = r)), + (n.pageSize = e.pageSize); + } + return n; + }, + }, + ], + ), + t + ); + })(x.a.Component); + (T.propTypes = { + disabled: O.a.bool, + prefixCls: O.a.string, + className: O.a.string, + current: O.a.number, + defaultCurrent: O.a.number, + total: O.a.number, + pageSize: O.a.number, + defaultPageSize: O.a.number, + onChange: O.a.func, + hideOnSinglePage: O.a.bool, + showSizeChanger: O.a.bool, + showLessItems: O.a.bool, + onShowSizeChange: O.a.func, + selectComponentClass: O.a.func, + showPrevNextJumpers: O.a.bool, + showQuickJumper: O.a.oneOfType([O.a.bool, O.a.object]), + showTitle: O.a.bool, + pageSizeOptions: O.a.arrayOf(O.a.string), + showTotal: O.a.func, + locale: O.a.object, + style: O.a.object, + itemRender: O.a.func, + prevIcon: O.a.oneOfType([O.a.func, O.a.node]), + nextIcon: O.a.oneOfType([O.a.func, O.a.node]), + jumpPrevIcon: O.a.oneOfType([O.a.func, O.a.node]), + jumpNextIcon: O.a.oneOfType([O.a.func, O.a.node]), + }), + (T.defaultProps = { + defaultCurrent: 1, + total: 0, + defaultPageSize: 10, + onChange: r, + className: '', + selectPrefixCls: 'rc-select', + prefixCls: 'rc-pagination', + selectComponentClass: null, + hideOnSinglePage: !1, + showPrevNextJumpers: !0, + showQuickJumper: !1, + showSizeChanger: !1, + showLessItems: !1, + showTitle: !0, + onShowSizeChange: r, + locale: N.a, + style: {}, + itemRender: i, + }); + var I = function() { + var e = this; + (this.getJumpPrevPage = function() { + return Math.max(1, e.state.current - (e.props.showLessItems ? 3 : 5)); + }), + (this.getJumpNextPage = function() { + return Math.min( + a(void 0, e.state, e.props), + e.state.current + (e.props.showLessItems ? 3 : 5), + ); + }), + (this.getItemIcon = function(t) { + var n = e.props.prefixCls, + r = t || x.a.createElement('a', { className: n + '-item-link' }); + return ( + 'function' == typeof t && + (r = x.a.createElement(t, l()({}, e.props))), + r + ); + }), + (this.savePaginationNode = function(t) { + e.paginationNode = t; + }), + (this.isValid = function(t) { + return o(t) && t !== e.state.current; + }), + (this.shouldDisplayQuickJumper = function() { + var t = e.props, + n = t.showQuickJumper, + r = t.pageSize; + return !(t.total <= r) && n; + }), + (this.handleKeyDown = function(e) { + (e.keyCode !== C.a.ARROW_UP && e.keyCode !== C.a.ARROW_DOWN) || + e.preventDefault(); + }), + (this.handleKeyUp = function(t) { + var n = e.getValidValue(t); + n !== e.state.currentInputValue && + e.setState({ currentInputValue: n }), + t.keyCode === C.a.ENTER + ? e.handleChange(n) + : t.keyCode === C.a.ARROW_UP + ? e.handleChange(n - 1) + : t.keyCode === C.a.ARROW_DOWN && e.handleChange(n + 1); + }), + (this.changePageSize = function(t) { + var n = e.state.current, + r = a(t, e.state, e.props); + (n = n > r ? r : n), + 0 === r && (n = e.state.current), + 'number' == typeof t && + ('pageSize' in e.props || e.setState({ pageSize: t }), + 'current' in e.props || + e.setState({ current: n, currentInputValue: n })), + e.props.onShowSizeChange(n, t); + }), + (this.handleChange = function(t) { + var n = e.props.disabled, + r = t; + if (e.isValid(r) && !n) { + var o = a(void 0, e.state, e.props); + r > o ? (r = o) : r < 1 && (r = 1), + 'current' in e.props || + e.setState({ current: r, currentInputValue: r }); + var i = e.state.pageSize; + return e.props.onChange(r, i), r; + } + return e.state.current; + }), + (this.prev = function() { + e.hasPrev() && e.handleChange(e.state.current - 1); + }), + (this.next = function() { + e.hasNext() && e.handleChange(e.state.current + 1); + }), + (this.jumpPrev = function() { + e.handleChange(e.getJumpPrevPage()); + }), + (this.jumpNext = function() { + e.handleChange(e.getJumpNextPage()); + }), + (this.hasPrev = function() { + return e.state.current > 1; + }), + (this.hasNext = function() { + return e.state.current < a(void 0, e.state, e.props); + }), + (this.runIfEnter = function(e, t) { + for ( + var n = arguments.length, r = Array(n > 2 ? n - 2 : 0), o = 2; + o < n; + o++ + ) + r[o - 2] = arguments[o]; + ('Enter' !== e.key && 13 !== e.charCode) || t.apply(void 0, r); + }), + (this.runIfEnterPrev = function(t) { + e.runIfEnter(t, e.prev); + }), + (this.runIfEnterNext = function(t) { + e.runIfEnter(t, e.next); + }), + (this.runIfEnterJumpPrev = function(t) { + e.runIfEnter(t, e.jumpPrev); + }), + (this.runIfEnterJumpNext = function(t) { + e.runIfEnter(t, e.jumpNext); + }), + (this.handleGoTO = function(t) { + (t.keyCode !== C.a.ENTER && 'click' !== t.type) || + e.handleChange(e.state.currentInputValue); + }); + }; + n.i(j.a)(T), (t.a = T); + }, + function(e, t, n) { + 'use strict'; + t.a = { + items_per_page: '条/页', + jump_to: '跳至', + jump_to_confirm: '确定', + page: '页', + prev_page: '上一页', + next_page: '下一页', + prev_5: '向前 5 页', + next_5: '向后 5 页', + prev_3: '向前 3 页', + next_3: '向后 3 页', + }; + }, + function(e, t, n) { + e.exports = { default: n(63), __esModule: !0 }; + }, + function(e, t, n) { + e.exports = { default: n(64), __esModule: !0 }; + }, + function(e, t, n) { + e.exports = { default: n(66), __esModule: !0 }; + }, + function(e, t, n) { + e.exports = { default: n(67), __esModule: !0 }; + }, + function(e, t, n) { + e.exports = { default: n(68), __esModule: !0 }; + }, + function(e, t, n) { + 'use strict'; + t.__esModule = !0; + var r = n(57), + o = (function(e) { + return e && e.__esModule ? e : { default: e }; + })(r); + t.default = + o.default || + function(e) { + for (var t = 1; t < arguments.length; t++) { + var n = arguments[t]; + for (var r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]); + } + return e; + }; + }, + function(e, t, n) { + n(87), (e.exports = n(0).Object.assign); + }, + function(e, t, n) { + n(88); + var r = n(0).Object; + e.exports = function(e, t) { + return r.create(e, t); + }; + }, + function(e, t, n) { + n(89); + var r = n(0).Object; + e.exports = function(e, t, n) { + return r.defineProperty(e, t, n); + }; + }, + function(e, t, n) { + n(90), (e.exports = n(0).Object.setPrototypeOf); + }, + function(e, t, n) { + n(93), n(91), n(94), n(95), (e.exports = n(0).Symbol); + }, + function(e, t, n) { + n(92), n(96), (e.exports = n(29).f('iterator')); + }, + function(e, t) { + e.exports = function(e) { + if ('function' != typeof e) throw TypeError(e + ' is not a function!'); + return e; + }; + }, + function(e, t) { + e.exports = function() {}; + }, + function(e, t, n) { + var r = n(8), + o = n(85), + i = n(84); + e.exports = function(e) { + return function(t, n, a) { + var u, + s = r(t), + c = o(s.length), + l = i(a, c); + if (e && n != n) { + for (; c > l; ) if ((u = s[l++]) != u) return !0; + } else + for (; c > l; l++) + if ((e || l in s) && s[l] === n) return e || l || 0; + return !e && -1; + }; + }; + }, + function(e, t, n) { + var r = n(13), + o = n(21), + i = n(14); + e.exports = function(e) { + var t = r(e), + n = o.f; + if (n) + for (var a, u = n(e), s = i.f, c = 0; u.length > c; ) + s.call(e, (a = u[c++])) && t.push(a); + return t; + }; + }, + function(e, t, n) { + var r = n(2).document; + e.exports = r && r.documentElement; + }, + function(e, t, n) { + var r = n(41); + e.exports = + Array.isArray || + function(e) { + return 'Array' == r(e); + }; + }, + function(e, t, n) { + 'use strict'; + var r = n(20), + o = n(15), + i = n(22), + a = {}; + n(6)(a, n(9)('iterator'), function() { + return this; + }), + (e.exports = function(e, t, n) { + (e.prototype = r(a, { next: o(1, n) })), i(e, t + ' Iterator'); + }); + }, + function(e, t) { + e.exports = function(e, t) { + return { value: t, done: !!e }; + }; + }, + function(e, t, n) { + var r = n(16)('meta'), + o = n(7), + i = n(3), + a = n(4).f, + u = 0, + s = + Object.isExtensible || + function() { + return !0; + }, + c = !n(11)(function() { + return s(Object.preventExtensions({})); + }), + l = function(e) { + a(e, r, { value: { i: 'O' + ++u, w: {} } }); + }, + f = function(e, t) { + if (!o(e)) + return 'symbol' == typeof e + ? e + : ('string' == typeof e ? 'S' : 'P') + e; + if (!i(e, r)) { + if (!s(e)) return 'F'; + if (!t) return 'E'; + l(e); + } + return e[r].i; + }, + p = function(e, t) { + if (!i(e, r)) { + if (!s(e)) return !0; + if (!t) return !1; + l(e); + } + return e[r].w; + }, + h = function(e) { + return c && d.NEED && s(e) && !i(e, r) && l(e), e; + }, + d = (e.exports = { + KEY: r, + NEED: !1, + fastKey: f, + getWeak: p, + onFreeze: h, + }); + }, + function(e, t, n) { + 'use strict'; + var r = n(1), + o = n(13), + i = n(21), + a = n(14), + u = n(26), + s = n(45), + c = Object.assign; + e.exports = + !c || + n(11)(function() { + var e = {}, + t = {}, + n = Symbol(), + r = 'abcdefghijklmnopqrst'; + return ( + (e[n] = 7), + r.split('').forEach(function(e) { + t[e] = e; + }), + 7 != c({}, e)[n] || Object.keys(c({}, t)).join('') != r + ); + }) + ? function(e, t) { + for ( + var n = u(e), c = arguments.length, l = 1, f = i.f, p = a.f; + c > l; + + ) + for ( + var h, + d = s(arguments[l++]), + v = f ? o(d).concat(f(d)) : o(d), + m = v.length, + y = 0; + m > y; + + ) + (h = v[y++]), (r && !p.call(d, h)) || (n[h] = d[h]); + return n; + } + : c; + }, + function(e, t, n) { + var r = n(4), + o = n(10), + i = n(13); + e.exports = n(1) + ? Object.defineProperties + : function(e, t) { + o(e); + for (var n, a = i(t), u = a.length, s = 0; u > s; ) + r.f(e, (n = a[s++]), t[n]); + return e; + }; + }, + function(e, t, n) { + var r = n(8), + o = n(48).f, + i = {}.toString, + a = + 'object' == typeof window && window && Object.getOwnPropertyNames + ? Object.getOwnPropertyNames(window) + : [], + u = function(e) { + try { + return o(e); + } catch (e) { + return a.slice(); + } + }; + e.exports.f = function(e) { + return a && '[object Window]' == i.call(e) ? u(e) : o(r(e)); + }; + }, + function(e, t, n) { + var r = n(3), + o = n(26), + i = n(23)('IE_PROTO'), + a = Object.prototype; + e.exports = + Object.getPrototypeOf || + function(e) { + return ( + (e = o(e)), + r(e, i) + ? e[i] + : 'function' == typeof e.constructor && e instanceof e.constructor + ? e.constructor.prototype + : e instanceof Object + ? a + : null + ); + }; + }, + function(e, t, n) { + var r = n(7), + o = n(10), + i = function(e, t) { + if ((o(e), !r(t) && null !== t)) + throw TypeError(t + ": can't set as prototype!"); + }; + e.exports = { + set: + Object.setPrototypeOf || + ('__proto__' in {} + ? (function(e, t, r) { + try { + (r = n(42)( + Function.call, + n(47).f(Object.prototype, '__proto__').set, + 2, + )), + r(e, []), + (t = !(e instanceof Array)); + } catch (e) { + t = !0; + } + return function(e, n) { + return i(e, n), t ? (e.__proto__ = n) : r(e, n), e; + }; + })({}, !1) + : void 0), + check: i, + }; + }, + function(e, t, n) { + var r = n(25), + o = n(17); + e.exports = function(e) { + return function(t, n) { + var i, + a, + u = String(o(t)), + s = r(n), + c = u.length; + return s < 0 || s >= c + ? e + ? '' + : void 0 + : ((i = u.charCodeAt(s)), + i < 55296 || + i > 56319 || + s + 1 === c || + (a = u.charCodeAt(s + 1)) < 56320 || + a > 57343 + ? e + ? u.charAt(s) + : i + : e + ? u.slice(s, s + 2) + : a - 56320 + ((i - 55296) << 10) + 65536); + }; + }; + }, + function(e, t, n) { + var r = n(25), + o = Math.max, + i = Math.min; + e.exports = function(e, t) { + return (e = r(e)), e < 0 ? o(e + t, 0) : i(e, t); + }; + }, + function(e, t, n) { + var r = n(25), + o = Math.min; + e.exports = function(e) { + return e > 0 ? o(r(e), 9007199254740991) : 0; + }; + }, + function(e, t, n) { + 'use strict'; + var r = n(70), + o = n(76), + i = n(19), + a = n(8); + (e.exports = n(46)( + Array, + 'Array', + function(e, t) { + (this._t = a(e)), (this._i = 0), (this._k = t); + }, + function() { + var e = this._t, + t = this._k, + n = this._i++; + return !e || n >= e.length + ? ((this._t = void 0), o(1)) + : 'keys' == t + ? o(0, n) + : 'values' == t + ? o(0, e[n]) + : o(0, [n, e[n]]); + }, + 'values', + )), + (i.Arguments = i.Array), + r('keys'), + r('values'), + r('entries'); + }, + function(e, t, n) { + var r = n(5); + r(r.S + r.F, 'Object', { assign: n(78) }); + }, + function(e, t, n) { + var r = n(5); + r(r.S, 'Object', { create: n(20) }); + }, + function(e, t, n) { + var r = n(5); + r(r.S + r.F * !n(1), 'Object', { defineProperty: n(4).f }); + }, + function(e, t, n) { + var r = n(5); + r(r.S, 'Object', { setPrototypeOf: n(82).set }); + }, + function(e, t) {}, + function(e, t, n) { + 'use strict'; + var r = n(83)(!0); + n(46)( + String, + 'String', + function(e) { + (this._t = String(e)), (this._i = 0); + }, + function() { + var e, + t = this._t, + n = this._i; + return n >= t.length + ? { value: void 0, done: !0 } + : ((e = r(t, n)), (this._i += e.length), { value: e, done: !1 }); + }, + ); + }, + function(e, t, n) { + 'use strict'; + var r = n(2), + o = n(3), + i = n(1), + a = n(5), + u = n(50), + s = n(77).KEY, + c = n(11), + l = n(24), + f = n(22), + p = n(16), + h = n(9), + d = n(29), + v = n(28), + m = n(72), + y = n(74), + g = n(10), + b = n(7), + x = n(26), + _ = n(8), + S = n(27), + P = n(15), + O = n(20), + w = n(80), + E = n(47), + C = n(21), + N = n(4), + j = n(13), + T = E.f, + I = N.f, + k = w.f, + M = r.Symbol, + R = r.JSON, + z = R && R.stringify, + A = h('_hidden'), + L = h('toPrimitive'), + D = {}.propertyIsEnumerable, + U = l('symbol-registry'), + W = l('symbols'), + F = l('op-symbols'), + V = Object.prototype, + K = 'function' == typeof M && !!C.f, + J = r.QObject, + G = !J || !J.prototype || !J.prototype.findChild, + B = + i && + c(function() { + return ( + 7 != + O( + I({}, 'a', { + get: function() { + return I(this, 'a', { value: 7 }).a; + }, + }), + ).a + ); + }) + ? function(e, t, n) { + var r = T(V, t); + r && delete V[t], I(e, t, n), r && e !== V && I(V, t, r); + } + : I, + q = function(e) { + var t = (W[e] = O(M.prototype)); + return (t._k = e), t; + }, + Q = + K && 'symbol' == typeof M.iterator + ? function(e) { + return 'symbol' == typeof e; + } + : function(e) { + return e instanceof M; + }, + H = function(e, t, n) { + return ( + e === V && H(F, t, n), + g(e), + (t = S(t, !0)), + g(n), + o(W, t) + ? (n.enumerable + ? (o(e, A) && e[A][t] && (e[A][t] = !1), + (n = O(n, { enumerable: P(0, !1) }))) + : (o(e, A) || I(e, A, P(1, {})), (e[A][t] = !0)), + B(e, t, n)) + : I(e, t, n) + ); + }, + Y = function(e, t) { + g(e); + for (var n, r = m((t = _(t))), o = 0, i = r.length; i > o; ) + H(e, (n = r[o++]), t[n]); + return e; + }, + Z = function(e, t) { + return void 0 === t ? O(e) : Y(O(e), t); + }, + X = function(e) { + var t = D.call(this, (e = S(e, !0))); + return ( + !(this === V && o(W, e) && !o(F, e)) && + (!(t || !o(this, e) || !o(W, e) || (o(this, A) && this[A][e])) || t) + ); + }, + $ = function(e, t) { + if (((e = _(e)), (t = S(t, !0)), e !== V || !o(W, t) || o(F, t))) { + var n = T(e, t); + return ( + !n || !o(W, t) || (o(e, A) && e[A][t]) || (n.enumerable = !0), n + ); + } + }, + ee = function(e) { + for (var t, n = k(_(e)), r = [], i = 0; n.length > i; ) + o(W, (t = n[i++])) || t == A || t == s || r.push(t); + return r; + }, + te = function(e) { + for ( + var t, n = e === V, r = k(n ? F : _(e)), i = [], a = 0; + r.length > a; + + ) + !o(W, (t = r[a++])) || (n && !o(V, t)) || i.push(W[t]); + return i; + }; + K || + ((M = function() { + if (this instanceof M) + throw TypeError('Symbol is not a constructor!'); + var e = p(arguments.length > 0 ? arguments[0] : void 0), + t = function(n) { + this === V && t.call(F, n), + o(this, A) && o(this[A], e) && (this[A][e] = !1), + B(this, e, P(1, n)); + }; + return i && G && B(V, e, { configurable: !0, set: t }), q(e); + }), + u(M.prototype, 'toString', function() { + return this._k; + }), + (E.f = $), + (N.f = H), + (n(48).f = w.f = ee), + (n(14).f = X), + (C.f = te), + i && !n(12) && u(V, 'propertyIsEnumerable', X, !0), + (d.f = function(e) { + return q(h(e)); + })), + a(a.G + a.W + a.F * !K, { Symbol: M }); + for ( + var ne = 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'.split( + ',', + ), + re = 0; + ne.length > re; + + ) + h(ne[re++]); + for (var oe = j(h.store), ie = 0; oe.length > ie; ) v(oe[ie++]); + a(a.S + a.F * !K, 'Symbol', { + for: function(e) { + return o(U, (e += '')) ? U[e] : (U[e] = M(e)); + }, + keyFor: function(e) { + if (!Q(e)) throw TypeError(e + ' is not a symbol!'); + for (var t in U) if (U[t] === e) return t; + }, + useSetter: function() { + G = !0; + }, + useSimple: function() { + G = !1; + }, + }), + a(a.S + a.F * !K, 'Object', { + create: Z, + defineProperty: H, + defineProperties: Y, + getOwnPropertyDescriptor: $, + getOwnPropertyNames: ee, + getOwnPropertySymbols: te, + }); + var ae = c(function() { + C.f(1); + }); + a(a.S + a.F * ae, 'Object', { + getOwnPropertySymbols: function(e) { + return C.f(x(e)); + }, + }), + R && + a( + a.S + + a.F * + (!K || + c(function() { + var e = M(); + return ( + '[null]' != z([e]) || + '{}' != z({ a: e }) || + '{}' != z(Object(e)) + ); + })), + 'JSON', + { + stringify: function(e) { + for (var t, n, r = [e], o = 1; arguments.length > o; ) + r.push(arguments[o++]); + if (((n = t = r[1]), (b(t) || void 0 !== e) && !Q(e))) + return ( + y(t) || + (t = function(e, t) { + if ( + ('function' == typeof n && (t = n.call(this, e, t)), + !Q(t)) + ) + return t; + }), + (r[1] = t), + z.apply(R, r) + ); + }, + }, + ), + M.prototype[L] || n(6)(M.prototype, L, M.prototype.valueOf), + f(M, 'Symbol'), + f(Math, 'Math', !0), + f(r.JSON, 'JSON', !0); + }, + function(e, t, n) { + n(28)('asyncIterator'); + }, + function(e, t, n) { + n(28)('observable'); + }, + function(e, t, n) { + n(86); + for ( + var r = n(2), + o = n(6), + i = n(19), + a = n(9)('toStringTag'), + u = 'CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList'.split( + ',', + ), + s = 0; + s < u.length; + s++ + ) { + var c = u[s], + l = r[c], + f = l && l.prototype; + f && !f[a] && o(f, a, c), (i[c] = i.Array); + } + }, + function(e, t, n) { + 'use strict'; + function r() {} + function o() {} + var i = n(98); + (o.resetWarningCache = r), + (e.exports = function() { + function e(e, t, n, r, o, a) { + if (a !== i) { + var u = new Error( + 'Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types', + ); + throw ((u.name = 'Invariant Violation'), u); + } + } + function t() { + return e; + } + e.isRequired = e; + var n = { + array: e, + bool: e, + func: e, + number: e, + object: e, + string: e, + symbol: e, + any: e, + arrayOf: t, + element: e, + elementType: e, + instanceOf: t, + node: e, + objectOf: t, + oneOf: t, + oneOfType: t, + shape: t, + exact: t, + checkPropTypes: o, + resetWarningCache: r, + }; + return (n.PropTypes = n), n; + }); + }, + function(e, t, n) { + 'use strict'; + e.exports = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'; + }, + function(e, t, n) { + 'use strict'; + function r() { + var e = this.constructor.getDerivedStateFromProps( + this.props, + this.state, + ); + null !== e && void 0 !== e && this.setState(e); + } + function o(e) { + function t(t) { + var n = this.constructor.getDerivedStateFromProps(e, t); + return null !== n && void 0 !== n ? n : null; + } + this.setState(t.bind(this)); + } + function i(e, t) { + try { + var n = this.props, + r = this.state; + (this.props = e), + (this.state = t), + (this.__reactInternalSnapshotFlag = !0), + (this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(n, r)); + } finally { + (this.props = n), (this.state = r); + } + } + function a(e) { + var t = e.prototype; + if (!t || !t.isReactComponent) + throw new Error('Can only polyfill class components'); + if ( + 'function' != typeof e.getDerivedStateFromProps && + 'function' != typeof t.getSnapshotBeforeUpdate + ) + return e; + var n = null, + a = null, + u = null; + if ( + ('function' == typeof t.componentWillMount + ? (n = 'componentWillMount') + : 'function' == typeof t.UNSAFE_componentWillMount && + (n = 'UNSAFE_componentWillMount'), + 'function' == typeof t.componentWillReceiveProps + ? (a = 'componentWillReceiveProps') + : 'function' == typeof t.UNSAFE_componentWillReceiveProps && + (a = 'UNSAFE_componentWillReceiveProps'), + 'function' == typeof t.componentWillUpdate + ? (u = 'componentWillUpdate') + : 'function' == typeof t.UNSAFE_componentWillUpdate && + (u = 'UNSAFE_componentWillUpdate'), + null !== n || null !== a || null !== u) + ) { + var s = e.displayName || e.name, + c = + 'function' == typeof e.getDerivedStateFromProps + ? 'getDerivedStateFromProps()' + : 'getSnapshotBeforeUpdate()'; + throw Error( + 'Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n' + + s + + ' uses ' + + c + + ' but also contains the following legacy lifecycles:' + + (null !== n ? '\n ' + n : '') + + (null !== a ? '\n ' + a : '') + + (null !== u ? '\n ' + u : '') + + '\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://fb.me/react-async-component-lifecycle-hooks', + ); + } + if ( + ('function' == typeof e.getDerivedStateFromProps && + ((t.componentWillMount = r), (t.componentWillReceiveProps = o)), + 'function' == typeof t.getSnapshotBeforeUpdate) + ) { + if ('function' != typeof t.componentDidUpdate) + throw new Error( + 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype', + ); + t.componentWillUpdate = i; + var l = t.componentDidUpdate; + t.componentDidUpdate = function(e, t, n) { + var r = this.__reactInternalSnapshotFlag + ? this.__reactInternalSnapshot + : n; + l.call(this, e, t, r); + }; + } + return e; + } + n.d(t, 'a', function() { + return a; + }), + (r.__suppressDeprecationWarning = !0), + (o.__suppressDeprecationWarning = !0), + (i.__suppressDeprecationWarning = !0); + }, + function(e, t, n) { + n(51), (e.exports = n(52)); + }, + ]); +}); diff --git a/examples/default.html b/examples/default.html deleted file mode 100644 index 48cdce85..00000000 --- a/examples/default.html +++ /dev/null @@ -1 +0,0 @@ -placeholder diff --git a/examples/default.js b/examples/default.js index 88e42be4..353e9423 100644 --- a/examples/default.js +++ b/examples/default.js @@ -1,22 +1,26 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import ReactDOM from 'react-dom'; import Pagination from 'rc-pagination'; -import 'rc-pagination/assets/index.less'; +import '../assets/index.less'; +import 'rc-select/assets/index.less'; -class App extends React.Component { +export default class App extends React.Component { state = { current: 3, }; - onChange = (page) => { + onChange = page => { console.log(page); this.setState({ current: page, }); - } + }; render() { - return ; + return ( + + ); } } - -ReactDOM.render(, document.getElementById('__react-content')); diff --git a/examples/itemRender.html b/examples/itemRender.html deleted file mode 100644 index 48cdce85..00000000 --- a/examples/itemRender.html +++ /dev/null @@ -1 +0,0 @@ -placeholder diff --git a/examples/itemRender.js b/examples/itemRender.js index 66a5ac66..344eef00 100644 --- a/examples/itemRender.js +++ b/examples/itemRender.js @@ -1,7 +1,6 @@ -import 'rc-pagination/assets/index.less'; +import '../assets/index.less'; import Pagination from 'rc-pagination'; import React from 'react'; -import ReactDOM from 'react-dom'; const itemRender = (current, type, element) => { if (type === 'page') { @@ -22,10 +21,10 @@ const textItemRender = (current, type, element) => { const buttonItemRender = (current, type, element) => { if (type === 'prev') { - return ; + return ; } if (type === 'next') { - return ; + return ; } return element; }; @@ -40,11 +39,13 @@ const divItemRender = (current, type, element) => { return element; }; -ReactDOM.render( -
    +const App = () => ( + <> -
    -, document.getElementById('__react-content')); + +); + +export default App; diff --git a/examples/jumper.html b/examples/jumper.html deleted file mode 100644 index 48cdce85..00000000 --- a/examples/jumper.html +++ /dev/null @@ -1 +0,0 @@ -placeholder diff --git a/examples/jumper.js b/examples/jumper.js index b8eeafad..ffbc4953 100644 --- a/examples/jumper.js +++ b/examples/jumper.js @@ -1,10 +1,9 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import ReactDOM from 'react-dom'; import Select from 'rc-select'; import Pagination from 'rc-pagination'; -import 'rc-pagination/assets/index.less'; -import 'rc-select/assets/index.css'; +import '../assets/index.less'; +import 'rc-select/assets/index.less'; function onShowSizeChange(current, pageSize) { console.log(current); @@ -16,8 +15,8 @@ function onChange(current, pageSize) { console.log('onChange:pageSize=', pageSize); } -ReactDOM.render( -
    +const App = () => ( + <> -
    -, document.getElementById('__react-content')); + +); + +export default App; diff --git a/examples/jumperWithGoButton.html b/examples/jumperWithGoButton.html deleted file mode 100644 index 48cdce85..00000000 --- a/examples/jumperWithGoButton.html +++ /dev/null @@ -1 +0,0 @@ -placeholder diff --git a/examples/jumperWithGoButton.js b/examples/jumperWithGoButton.js index 6ba5d685..0c581925 100644 --- a/examples/jumperWithGoButton.js +++ b/examples/jumperWithGoButton.js @@ -1,31 +1,29 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import ReactDOM from 'react-dom'; import Select from 'rc-select'; import Pagination from 'rc-pagination'; -import 'rc-pagination/assets/index.less'; -import 'rc-select/assets/index.css'; +import '../assets/index.less'; +import 'rc-select/assets/index.less'; class App extends React.Component { - onShowSizeChange = (current, pageSize) => { console.log(current); console.log(pageSize); - } + }; onChange = (current, pageSize) => { console.log('onChange:current=', current); console.log('onChange:pageSize=', pageSize); - } + }; render() { return ( -
    + <>

    customize node

    确定 }} + showQuickJumper={{ goButton: }} defaultPageSize={20} defaultCurrent={5} onShowSizeChange={this.onShowSizeChange} @@ -33,10 +31,15 @@ class App extends React.Component { total={450} />

    default node

    - -
    + + ); } } -ReactDOM.render(, document.getElementById('__react-content')); +export default App; diff --git a/examples/lessPages.html b/examples/lessPages.html deleted file mode 100644 index b3a42524..00000000 --- a/examples/lessPages.html +++ /dev/null @@ -1 +0,0 @@ -placeholder \ No newline at end of file diff --git a/examples/lessPages.js b/examples/lessPages.js index d69d3816..c20f9309 100644 --- a/examples/lessPages.js +++ b/examples/lessPages.js @@ -1,36 +1,36 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import ReactDOM from 'react-dom'; import Pagination from 'rc-pagination'; -import 'rc-pagination/assets/index.less'; +import '../assets/index.less'; -const arrowPath = 'M869 487.8L491.2 159.9c-2.9-2.5-6.6-3.9-10.5-3.9h' + +const arrowPath = + 'M869 487.8L491.2 159.9c-2.9-2.5-6.6-3.9-10.5-3.9h' + '-88.5c-7.4 0-10.8 9.2-5.2 14l350.2 304H152c-4.4 0-8 3.6-8 8v' + '60c0 4.4 3.6 8 8 8h585.1L386.9 854c-5.6 4.9-2.2 14 5.2 14h91' + '.5c1.9 0 3.8-0.7 5.2-2L869 536.2c14.7-12.8 14.7-35.6 0-48.4z'; const doublePath = [ 'M533.2 492.3L277.9 166.1c-3-3.9-7.7-6.1-12.6-6.1H188c-6' + - '.7 0-10.4 7.7-6.3 12.9L447.1 512 181.7 851.1c-4.1 5.2-0' + - '.4 12.9 6.3 12.9h77.3c4.9 0 9.6-2.3 12.6-6.1l255.3-326.' + - '1c9.1-11.7 9.1-27.9 0-39.5z', + '.7 0-10.4 7.7-6.3 12.9L447.1 512 181.7 851.1c-4.1 5.2-0' + + '.4 12.9 6.3 12.9h77.3c4.9 0 9.6-2.3 12.6-6.1l255.3-326.' + + '1c9.1-11.7 9.1-27.9 0-39.5z', 'M837.2 492.3L581.9 166.1c-3-3.9-7.7-6.1-12.6-6.1H492c-6' + - '.7 0-10.4 7.7-6.3 12.9L751.1 512 485.7 851.1c-4.1 5.2-0' + - '.4 12.9 6.3 12.9h77.3c4.9 0 9.6-2.3 12.6-6.1l255.3-326.' + - '1c9.1-11.7 9.1-27.9 0-39.5z', + '.7 0-10.4 7.7-6.3 12.9L751.1 512 485.7 851.1c-4.1 5.2-0' + + '.4 12.9 6.3 12.9h77.3c4.9 0 9.6-2.3 12.6-6.1l255.3-326.' + + '1c9.1-11.7 9.1-27.9 0-39.5z', ]; const getSvgIcon = (path, reverse, type) => { const paths = Array.isArray(path) ? path : [path]; const renderPaths = paths.map((p, i) => { - return ( - - ); + return ; }); return ( - { fill="currentColor" style={{ verticalAlign: '-.125em', - transform: `rotate(${reverse && 180 || 0}deg)`, + transform: `rotate(${(reverse && 180) || 0}deg)`, }} > {renderPaths} @@ -58,24 +58,26 @@ class App extends React.Component { current: 3, useIcon: true, }; - onChange = (page) => { + onChange = page => { console.log(page); this.setState({ current: page, }); - } + }; toggleCustomIcon = () => { this.setState({ useIcon: !this.state.useIcon, }); - } + }; render() { - const iconsProps = this.state.useIcon && { - prevIcon, - nextIcon, - jumpPrevIcon, - jumpNextIcon, - } || {}; + const iconsProps = + (this.state.useIcon && { + prevIcon, + nextIcon, + jumpPrevIcon, + jumpNextIcon, + }) || + {}; return (
    - + - Is using icon: {this.state.useIcon && 'true' || 'false'} + Is using icon: {(this.state.useIcon && 'true') || 'false'}
    @@ -105,4 +105,4 @@ class App extends React.Component { } } -ReactDOM.render(, document.getElementById('__react-content')); +export default App; diff --git a/examples/locale.html b/examples/locale.html deleted file mode 100644 index b3a42524..00000000 --- a/examples/locale.html +++ /dev/null @@ -1 +0,0 @@ -placeholder \ No newline at end of file diff --git a/examples/locale.js b/examples/locale.js index 1c5e3776..287a5a01 100644 --- a/examples/locale.js +++ b/examples/locale.js @@ -3,9 +3,9 @@ import React from 'react'; import ReactDOM from 'react-dom'; import Select from 'rc-select'; import Pagination from 'rc-pagination'; -import localeInfo from 'rc-pagination/lib/locale/en_US'; -import 'rc-pagination/assets/index.less'; -import 'rc-select/assets/index.css'; +import localeInfo from '../src/locale/en_US'; +import '../assets/index.less'; +import 'rc-select/assets/index.less'; function onShowSizeChange(current, pageSize) { console.log(current); @@ -17,7 +17,7 @@ function onChange(current, pageSize) { console.log('onChange:pageSize=', pageSize); } -ReactDOM.render( +const App = () => ( -, document.getElementById('__react-content')); +); + +export default App; diff --git a/examples/more.html b/examples/more.html deleted file mode 100644 index 48cdce85..00000000 --- a/examples/more.html +++ /dev/null @@ -1 +0,0 @@ -placeholder diff --git a/examples/more.js b/examples/more.js index 6ce13877..65ad1789 100644 --- a/examples/more.js +++ b/examples/more.js @@ -1,9 +1,9 @@ -import 'rc-pagination/assets/index.less'; +import '../assets/index.less'; import Pagination from 'rc-pagination'; import React from 'react'; -import ReactDOM from 'react-dom'; -ReactDOM.render( - , - document.getElementById('__react-content') +const App = () => ( + ); + +export default App; diff --git a/examples/showTitle.html b/examples/showTitle.html deleted file mode 100644 index 48cdce85..00000000 --- a/examples/showTitle.html +++ /dev/null @@ -1 +0,0 @@ -placeholder diff --git a/examples/showTitle.js b/examples/showTitle.js index 8265d97a..444b5c81 100644 --- a/examples/showTitle.js +++ b/examples/showTitle.js @@ -1,19 +1,18 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import ReactDOM from 'react-dom'; import Pagination from 'rc-pagination'; -import 'rc-pagination/assets/index.less'; +import '../assets/index.less'; class App extends React.Component { state = { current: 3, }; - onChange = (page) => { + onChange = page => { console.log(page); this.setState({ current: page, }); - } + }; render() { return (
    @@ -24,10 +23,15 @@ class App extends React.Component { showLessItems showTitle={false} /> - +
    ); } } -ReactDOM.render(, document.getElementById('__react-content')); +export default App; diff --git a/examples/showTotal.html b/examples/showTotal.html deleted file mode 100644 index 48cdce85..00000000 --- a/examples/showTotal.html +++ /dev/null @@ -1 +0,0 @@ -placeholder diff --git a/examples/showTotal.js b/examples/showTotal.js index 24cb017d..e406b0b2 100644 --- a/examples/showTotal.js +++ b/examples/showTotal.js @@ -2,23 +2,26 @@ import React from 'react'; import ReactDOM from 'react-dom'; import Pagination from 'rc-pagination'; -import 'rc-pagination/assets/index.less'; +import '../assets/index.less'; -ReactDOM.render( -
    - `Total ${total} items`} - total={455} - /> -
    - `${range[0]} - ${range[1]} of ${total} items`} - total={455} - /> -
    - `${range[0]} - ${range[1]} of ${total} items`} - total={0} - /> -
    -, document.getElementById('__react-content')); +const App = () => ( + <> + `Total ${total} items`} total={455} /> +
    + + `${range[0]} - ${range[1]} of ${total} items` + } + total={455} + /> +
    + + `${range[0]} - ${range[1]} of ${total} items` + } + total={0} + /> + +); + +export default App; diff --git a/examples/simple.html b/examples/simple.html deleted file mode 100644 index b3a42524..00000000 --- a/examples/simple.html +++ /dev/null @@ -1 +0,0 @@ -placeholder \ No newline at end of file diff --git a/examples/simple.js b/examples/simple.js index fb52c558..b550ba40 100644 --- a/examples/simple.js +++ b/examples/simple.js @@ -1,11 +1,9 @@ // use jsx to render html, do not modify simple.html -import 'rc-pagination/assets/index.less'; +import '../assets/index.less'; import Pagination from 'rc-pagination'; import React from 'react'; -import ReactDOM from 'react-dom'; -ReactDOM.render( - , - document.getElementById('__react-content') -); +const App = () => ; + +export default App; diff --git a/examples/sizer.html b/examples/sizer.html deleted file mode 100644 index b3a42524..00000000 --- a/examples/sizer.html +++ /dev/null @@ -1 +0,0 @@ -placeholder \ No newline at end of file diff --git a/examples/sizer.js b/examples/sizer.js index f20f7e10..bf9bcbf7 100644 --- a/examples/sizer.js +++ b/examples/sizer.js @@ -1,19 +1,18 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import ReactDOM from 'react-dom'; import Select from 'rc-select'; import Pagination from 'rc-pagination'; -import 'rc-pagination/assets/index.less'; -import 'rc-select/assets/index.css'; +import '../assets/index.less'; +import 'rc-select/assets/index.less'; -class Hello extends React.Component { +class App extends React.Component { state = { pageSize: 20, }; onShowSizeChange = (current, pageSize) => { console.log(current); this.setState({ pageSize }); - } + }; render() { return (
    +`; + +exports[`Example styles 1`] = ` +
    +
      -
    +
  • +
  • +
  • + + 1 + +
  • +
  • + + 2 + +
  • +
  • + + 3 + +
  • +
  • +
  • + +
    `; diff --git a/tests/__snapshots__/simple.test.tsx.snap b/tests/__snapshots__/simple.test.tsx.snap new file mode 100644 index 00000000..8dee2660 --- /dev/null +++ b/tests/__snapshots__/simple.test.tsx.snap @@ -0,0 +1,69 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`simple Pagination props: showQuickJumper should render normally quick-jumper 1`] = ` +
    + 跳至 + + 页 +
    +`; + +exports[`simple Pagination props: showQuickJumper should render normally quick-jumper with custom goButton 1`] = ` +
    + 跳至 + + 页 + +
  • + + + +
  • +
    +
    +`; + +exports[`simple Pagination props: showQuickJumper should render normally quick-jumper with goButton 1`] = ` +
    + 跳至 + + 页 + +
  • + +
  • +
    +
    +`; diff --git a/tests/demo.test.tsx b/tests/demo.test.tsx index bca40e84..577e5cf7 100644 --- a/tests/demo.test.tsx +++ b/tests/demo.test.tsx @@ -15,7 +15,7 @@ describe('Example', () => { const Example = require(path.join(exampleDir, file)).default; const { container } = render(); - expect(container.firstChild).toMatchSnapshot(); + expect(container).toMatchSnapshot(); }); }); }); diff --git a/tests/simple.test.tsx b/tests/simple.test.tsx index 4845a0e5..c02e8d19 100644 --- a/tests/simple.test.tsx +++ b/tests/simple.test.tsx @@ -249,4 +249,54 @@ describe('simple Pagination', () => { fireEvent.click(button); expect(input).toHaveProperty('value', '2'); }); + + // 修复 4.0.0 重构导致的问题: https://github.com/ant-design/ant-design/issues/46671 + describe('props: showQuickJumper', () => { + const Demo: typeof Pagination = (props) => ( + + ); + + it('should render normally quick-jumper', () => { + const { container } = render(); + + const quickJumper = container.querySelector( + '.rc-pagination-options-quick-jumper', + ); + expect(quickJumper).toBeTruthy(); + expect(quickJumper).toMatchSnapshot(); + }); + + it('should render normally quick-jumper with goButton', () => { + const { container } = render( + , + ); + + const quickJumper = container.querySelector( + '.rc-pagination-options-quick-jumper', + ); + expect(quickJumper).toBeTruthy(); + expect(quickJumper).toMatchSnapshot(); + }); + + // custom goButton + it('should render normally quick-jumper with custom goButton', () => { + const { container } = render( + go }} + />, + ); + + const quickJumper = container.querySelector( + '.rc-pagination-options-quick-jumper', + ); + expect(quickJumper.querySelector('.foo')).toBeTruthy(); + expect(quickJumper).toMatchSnapshot(); + }); + }); }); From 998957fdfbd8acccdcc517f018aabdc2aaf97326 Mon Sep 17 00:00:00 2001 From: MadCcc <1075746765@qq.com> Date: Thu, 28 Dec 2023 14:22:01 +0800 Subject: [PATCH 224/262] v4.0.4 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 587cb51e..b3df0d2f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "4.0.3", + "version": "4.0.4", "description": "pagination ui component for react", "keywords": [ "react", From b89cb0e651985cc07304891badd2bbb3b33eb8eb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 3 Jan 2024 06:42:09 +0800 Subject: [PATCH 225/262] chore(deps-dev): bump eslint-plugin-unicorn from 49.0.0 to 50.0.1 (#552) Bumps [eslint-plugin-unicorn](https://github.com/sindresorhus/eslint-plugin-unicorn) from 49.0.0 to 50.0.1. - [Release notes](https://github.com/sindresorhus/eslint-plugin-unicorn/releases) - [Commits](https://github.com/sindresorhus/eslint-plugin-unicorn/compare/v49.0.0...v50.0.1) --- updated-dependencies: - dependency-name: eslint-plugin-unicorn dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index b3df0d2f..70c484ef 100644 --- a/package.json +++ b/package.json @@ -59,7 +59,7 @@ "dumi": "^2.1.2", "eslint": "^8.54.0", "eslint-plugin-jest": "^27.6.0", - "eslint-plugin-unicorn": "^49.0.0", + "eslint-plugin-unicorn": "^50.0.1", "father": "^4.0.0", "gh-pages": "^6.1.0", "glob": "^10.3.10", From 2b3cdd49f26430db59ea8543460ecccafbec1faf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 May 2024 15:19:18 +0800 Subject: [PATCH 226/262] chore(deps-dev): bump husky from 8.0.3 to 9.0.11 (#561) Bumps [husky](https://github.com/typicode/husky) from 8.0.3 to 9.0.11. - [Release notes](https://github.com/typicode/husky/releases) - [Commits](https://github.com/typicode/husky/compare/v8.0.3...v9.0.11) --- updated-dependencies: - dependency-name: husky dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 70c484ef..99f6372c 100644 --- a/package.json +++ b/package.json @@ -63,7 +63,7 @@ "father": "^4.0.0", "gh-pages": "^6.1.0", "glob": "^10.3.10", - "husky": "^8.0.3", + "husky": "^9.0.11", "identity-obj-proxy": "^3.0.0", "less": "^4.1.3", "lint-staged": "^15.0.2", From 0039f7aee04579732fa6e1f9fd113a84d6445776 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 May 2024 15:19:33 +0800 Subject: [PATCH 227/262] chore(deps-dev): bump eslint-plugin-unicorn from 50.0.1 to 52.0.0 (#568) Bumps [eslint-plugin-unicorn](https://github.com/sindresorhus/eslint-plugin-unicorn) from 50.0.1 to 52.0.0. - [Release notes](https://github.com/sindresorhus/eslint-plugin-unicorn/releases) - [Commits](https://github.com/sindresorhus/eslint-plugin-unicorn/compare/v50.0.1...v52.0.0) --- updated-dependencies: - dependency-name: eslint-plugin-unicorn dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 99f6372c..cff4d043 100644 --- a/package.json +++ b/package.json @@ -59,7 +59,7 @@ "dumi": "^2.1.2", "eslint": "^8.54.0", "eslint-plugin-jest": "^27.6.0", - "eslint-plugin-unicorn": "^50.0.1", + "eslint-plugin-unicorn": "^52.0.0", "father": "^4.0.0", "gh-pages": "^6.1.0", "glob": "^10.3.10", From a88171aa3fbb00e0b88453244130d09f584dfe7a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 May 2024 15:19:43 +0800 Subject: [PATCH 228/262] chore(deps-dev): bump np from 9.2.0 to 10.0.5 (#578) Bumps [np](https://github.com/sindresorhus/np) from 9.2.0 to 10.0.5. - [Release notes](https://github.com/sindresorhus/np/releases) - [Commits](https://github.com/sindresorhus/np/compare/v9.2.0...v10.0.5) --- updated-dependencies: - dependency-name: np dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index cff4d043..e0c00182 100644 --- a/package.json +++ b/package.json @@ -67,7 +67,7 @@ "identity-obj-proxy": "^3.0.0", "less": "^4.1.3", "lint-staged": "^15.0.2", - "np": "^9.0.0", + "np": "^10.0.5", "prettier": "^3.1.0", "rc-select": "^14.1.2", "rc-test": "^7.0.15", From 264d0031355f6492b0a1a3d951c3572a994d7bbe Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 May 2024 15:19:56 +0800 Subject: [PATCH 229/262] chore(deps-dev): bump @testing-library/react from 14.3.1 to 15.0.4 (#580) Bumps [@testing-library/react](https://github.com/testing-library/react-testing-library) from 14.3.1 to 15.0.4. - [Release notes](https://github.com/testing-library/react-testing-library/releases) - [Changelog](https://github.com/testing-library/react-testing-library/blob/main/CHANGELOG.md) - [Commits](https://github.com/testing-library/react-testing-library/compare/v14.3.1...v15.0.4) --- updated-dependencies: - dependency-name: "@testing-library/react" dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e0c00182..41deed09 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "devDependencies": { "@rc-component/father-plugin": "^1.0.0", "@testing-library/jest-dom": "^6.1.5", - "@testing-library/react": "^14.0.0", + "@testing-library/react": "^15.0.4", "@types/jest": "^29.2.2", "@types/react": "^18.0.0", "@types/react-dom": "^18.0.0", From 55fd68e2b8a6426aedb5adb7856c422c0766eaa1 Mon Sep 17 00:00:00 2001 From: branqa <36072780+branqa@users.noreply.github.com> Date: Tue, 14 May 2024 09:20:43 +0200 Subject: [PATCH 230/262] Added sr_Cyrl_RS locale for Serbian Cyrillic (#385) * Added sr_Cyrl_RS locale for Serbian Cyrillic * Added sr_Cyrl_RS locale for Serbian Cyrillic - new line fix --------- Co-authored-by: Branka Slavkovic --- src/locale/sr_Cyrl_RS.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 src/locale/sr_Cyrl_RS.js diff --git a/src/locale/sr_Cyrl_RS.js b/src/locale/sr_Cyrl_RS.js new file mode 100644 index 00000000..6a998ea2 --- /dev/null +++ b/src/locale/sr_Cyrl_RS.js @@ -0,0 +1,15 @@ +export default { + // Options.jsx + items_per_page: '/ страни', + jump_to: 'Иди на', + page: '', + + // Pagination.jsx + prev_page: 'Претходна страна', + next_page: 'Следећа страна', + prev_5: 'Претходних 5 Страна', + next_5: 'Следећих 5 Страна', + prev_3: 'Претходних 3 Стране', + next_3: 'Следећих 3 Стране', + page_size: 'Page Size', +}; From 53ad26316bd6d4e4a76ae4fc101c817eb08120ea Mon Sep 17 00:00:00 2001 From: ice <49827327+GetWebHB@users.noreply.github.com> Date: Tue, 14 May 2024 15:36:56 +0800 Subject: [PATCH 231/262] feat: add prop direction (#569) * feat: add prop direction * refactor(props): direction -> align * refactor: remove flex class --------- Co-authored-by: 1999iceweb <1999iceweb@polyhedra.network> --- README.md | 1 + assets/index.less | 13 +++ docs/demo/align.md | 8 ++ docs/examples/align.tsx | 13 +++ src/Pagination.tsx | 4 + src/interface.ts | 1 + tests/__snapshots__/demo.test.tsx.snap | 122 +++++++++++++++++++++++++ tests/index.test.tsx | 15 +++ 8 files changed, 177 insertions(+) create mode 100644 docs/demo/align.md create mode 100644 docs/examples/align.tsx diff --git a/README.md b/README.md index efc21403..fce836a5 100644 --- a/README.md +++ b/README.md @@ -55,6 +55,7 @@ ReactDOM.render(, container); | Parameter | Description | Type | Default | | ---------------------------- | --------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | | disabled | disable pagination | Bool | - | +| align | align of pagination | start \| center \| end | undefined | | defaultCurrent | uncontrolled current page | Number | 1 | | current | current page | Number | undefined | | total | items total count | Number | 0 | diff --git a/assets/index.less b/assets/index.less index e84b0e76..aed81e27 100644 --- a/assets/index.less +++ b/assets/index.less @@ -13,6 +13,7 @@ @pagination-item-input-bg: #fff; .@{pagination-prefix-cls} { + display: flex; margin: 0; padding: 0; font-size: 14px; @@ -24,6 +25,18 @@ list-style: none; } + &-start { + justify-content: start; + } + + &-center { + justify-content: center; + } + + &-end { + justify-content: end; + } + &::after { display: block; clear: both; diff --git a/docs/demo/align.md b/docs/demo/align.md new file mode 100644 index 00000000..5d8a6660 --- /dev/null +++ b/docs/demo/align.md @@ -0,0 +1,8 @@ +--- +title: align +nav: + title: align + path: /align +--- + + diff --git a/docs/examples/align.tsx b/docs/examples/align.tsx new file mode 100644 index 00000000..c902114d --- /dev/null +++ b/docs/examples/align.tsx @@ -0,0 +1,13 @@ +import '../../assets/index.less'; +import React from 'react'; +import Pagination from 'rc-pagination'; + +const App = () => ( + <> + + + + +); + +export default App; diff --git a/src/Pagination.tsx b/src/Pagination.tsx index b3c6763c..28189454 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -51,6 +51,7 @@ const Pagination: React.FC = (props) => { // config hideOnSinglePage, + align, showPrevNextJumpers = true, showQuickJumper, showLessItems, @@ -556,6 +557,9 @@ const Pagination: React.FC = (props) => { } const cls = classNames(prefixCls, className, { + [`${prefixCls}-start`]: align === 'start', + [`${prefixCls}-center`]: align === 'center', + [`${prefixCls}-end`]: align === 'end', [`${prefixCls}-simple`]: simple, [`${prefixCls}-disabled`]: disabled, }); diff --git a/src/interface.ts b/src/interface.ts index 56838c8e..be78072a 100644 --- a/src/interface.ts +++ b/src/interface.ts @@ -31,6 +31,7 @@ export interface PaginationData { defaultPageSize: number; hideOnSinglePage: boolean; + align: 'start' | 'center' | 'end'; showSizeChanger: boolean; showLessItems: boolean; showPrevNextJumpers: boolean; diff --git a/tests/__snapshots__/demo.test.tsx.snap b/tests/__snapshots__/demo.test.tsx.snap index e31cf30b..3ff98abb 100644 --- a/tests/__snapshots__/demo.test.tsx.snap +++ b/tests/__snapshots__/demo.test.tsx.snap @@ -1,5 +1,127 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP +exports[`Example align 1`] = ` +
    + + + +
    +`; + exports[`Example basic 1`] = `
      { }); }); + describe('should support align props', () => { + it('should support align to start', () => { + const { container } = render(); + expect(container.querySelector('.rc-pagination-start')).toBeTruthy(); + }); + it('should support align to center', () => { + const { container } = render(); + expect(container.querySelector('.rc-pagination-center')).toBeTruthy(); + }); + it('should support align to end', () => { + const { container } = render(); + expect(container.querySelector('.rc-pagination-end')).toBeTruthy(); + }); + }); + it('disabled', () => { const { container, getByRole } = render( Date: Thu, 23 May 2024 17:00:52 +0800 Subject: [PATCH 232/262] 4.1.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 41deed09..4b97c9e2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "4.0.4", + "version": "4.1.0", "description": "pagination ui component for react", "keywords": [ "react", From 8f9f2e5772aa0d74daec2394f55b9d7287a688c3 Mon Sep 17 00:00:00 2001 From: ice <49827327+coding-ice@users.noreply.github.com> Date: Sat, 22 Jun 2024 16:55:30 +0800 Subject: [PATCH 233/262] feat: simple prop extend to object (#591) * feat: simple prop extend to object * Update src/interface.ts Co-authored-by: afc163 * docs: update .md * type: optimize any * refactor: remove dead code * fix: code * Update src/Pagination.tsx Co-authored-by: afc163 --------- Co-authored-by: iceweb1999 <1999iceweb@polyhedra.network> Co-authored-by: afc163 --- README.md | 2 +- assets/index.less | 6 ++-- docs/examples/simple.tsx | 7 ++++ src/Pagination.tsx | 25 +++++++------ src/interface.ts | 2 +- tests/__snapshots__/demo.test.tsx.snap | 40 +++++++++++++++++++++ tests/__snapshots__/simple.test.tsx.snap | 45 ++++++++++++++++++++++++ tests/simple.test.tsx | 5 +++ 8 files changed, 117 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index fce836a5..fc91fe57 100644 --- a/README.md +++ b/README.md @@ -71,7 +71,7 @@ ReactDOM.render(, container); | showQuickJumper | show quick goto jumper | Bool / Object | false / {goButton: true} | | showTotal | show total records and range | Function(total, [from, to]) | - | | className | className of pagination | String | - | -| simple | when set, show simple pager | Object | null | +| simple | when set, show simple pager | Bool / { readOnly?: boolean; } | - | | locale | to set l10n config | Object | [zh_CN](https://github.com/react-component/pagination/blob/master/src/locale/zh_CN.js) | | style | the style of pagination | Object | {} | | showLessItems | show less page items | Bool | false | diff --git a/assets/index.less b/assets/index.less index aed81e27..64ceac6d 100644 --- a/assets/index.less +++ b/assets/index.less @@ -210,7 +210,7 @@ } &-slash { - margin: 0 10px 0 5px; + margin: 0 10px 0 12px; } &-options { @@ -262,14 +262,14 @@ } &-simple &-simple-pager { - display: inline-block; + display: flex; + align-items: center; height: @pagination-item-size-sm; margin-right: 8px; input { box-sizing: border-box; height: 100%; - margin-right: 8px; padding: 0 6px; text-align: center; background-color: @pagination-item-input-bg; diff --git a/docs/examples/simple.tsx b/docs/examples/simple.tsx index 3469f6b9..beeba080 100644 --- a/docs/examples/simple.tsx +++ b/docs/examples/simple.tsx @@ -16,6 +16,13 @@ export default () => { onChange={setPageIndex} />
      + +

      = (props) => { // ================== Simple ================== // FIXME: ts type + const isReadOnly = typeof simple === 'object' ? simple.readOnly : !simple; let gotoButton: any = goButton; let simplePager: React.ReactNode = null; @@ -380,16 +381,20 @@ const Pagination: React.FC = (props) => { title={showTitle ? `${current}/${allPages}` : null} className={`${prefixCls}-simple-pager`} > - + {isReadOnly ? ( + internalInputVal + ) : ( + + )} / {allPages} diff --git a/src/interface.ts b/src/interface.ts index be78072a..7cc6032b 100644 --- a/src/interface.ts +++ b/src/interface.ts @@ -37,7 +37,7 @@ export interface PaginationData { showPrevNextJumpers: boolean; showQuickJumper: boolean | object; showTitle: boolean; - simple: boolean; + simple: boolean | { readOnly?: boolean; }; disabled: boolean; locale: PaginationLocale; diff --git a/tests/__snapshots__/demo.test.tsx.snap b/tests/__snapshots__/demo.test.tsx.snap index 3ff98abb..0e218d2a 100644 --- a/tests/__snapshots__/demo.test.tsx.snap +++ b/tests/__snapshots__/demo.test.tsx.snap @@ -3375,6 +3375,46 @@ exports[`Example simple 1`] = `

    +
      +
    • +
    • +
    • + 1 + + / + + 5 +
    • +
    • +
    • +
    +
      diff --git a/tests/__snapshots__/simple.test.tsx.snap b/tests/__snapshots__/simple.test.tsx.snap index 8dee2660..f2bcb51a 100644 --- a/tests/__snapshots__/simple.test.tsx.snap +++ b/tests/__snapshots__/simple.test.tsx.snap @@ -67,3 +67,48 @@ exports[`simple Pagination props: showQuickJumper should render normally quick-j
    `; + +exports[`simple Pagination should support simple is readOnly value 1`] = ` +
    +
      +
    • +
    • +
    • + 1 + + / + + 0 +
    • +
    • +
    • +
    +
    +`; diff --git a/tests/simple.test.tsx b/tests/simple.test.tsx index c02e8d19..7bef3f8b 100644 --- a/tests/simple.test.tsx +++ b/tests/simple.test.tsx @@ -299,4 +299,9 @@ describe('simple Pagination', () => { expect(quickJumper).toMatchSnapshot(); }); }); + + it('should support simple is readOnly value', () => { + const { container } = render(); + expect(container).toMatchSnapshot(); + }); }); From 8a2b7fa3869922b47d155156675cfc6b84082878 Mon Sep 17 00:00:00 2001 From: afc163 Date: Sat, 22 Jun 2024 16:56:07 +0800 Subject: [PATCH 234/262] 4.2.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 4b97c9e2..e253d0dd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "4.1.0", + "version": "4.2.0", "description": "pagination ui component for react", "keywords": [ "react", From 7a82b92ac69bfd4143160d1f6fc0ad84356061f9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 26 Jul 2024 10:03:01 +0800 Subject: [PATCH 235/262] chore(deps-dev): bump eslint-plugin-unicorn from 52.0.0 to 55.0.0 (#598) Bumps [eslint-plugin-unicorn](https://github.com/sindresorhus/eslint-plugin-unicorn) from 52.0.0 to 55.0.0. - [Release notes](https://github.com/sindresorhus/eslint-plugin-unicorn/releases) - [Commits](https://github.com/sindresorhus/eslint-plugin-unicorn/compare/v52.0.0...v55.0.0) --- updated-dependencies: - dependency-name: eslint-plugin-unicorn dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e253d0dd..b7eef013 100644 --- a/package.json +++ b/package.json @@ -59,7 +59,7 @@ "dumi": "^2.1.2", "eslint": "^8.54.0", "eslint-plugin-jest": "^27.6.0", - "eslint-plugin-unicorn": "^52.0.0", + "eslint-plugin-unicorn": "^55.0.0", "father": "^4.0.0", "gh-pages": "^6.1.0", "glob": "^10.3.10", From 8d5b49cb195dc514c2b7814801cec178a607241c Mon Sep 17 00:00:00 2001 From: Avan Date: Tue, 13 Aug 2024 18:20:46 +0800 Subject: [PATCH 236/262] test: use codecov/codecov-action (#605) --- .github/workflows/main.yml | 44 ++++++++++++++++++++------------------ 1 file changed, 23 insertions(+), 21 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index dbee7374..2097f2a7 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,24 +1,20 @@ name: CI -on: - push: - branches: [master] - pull_request: - branches: [master] +on: ['push', 'pull_request'] jobs: setup: runs-on: ubuntu-latest steps: - name: checkout - uses: actions/checkout@master + uses: actions/checkout@v4 - - uses: actions/setup-node@v1 + - uses: actions/setup-node@v4 with: - node-version: '18' + node-version: '20' - name: cache package-lock.json - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: package-temp-dir key: lock-${{ github.sha }} @@ -32,9 +28,10 @@ jobs: mkdir package-temp-dir fi cp package-lock.json package-temp-dir + - name: cache node_modules id: node_modules_cache_id - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: node_modules key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }} @@ -47,16 +44,16 @@ jobs: runs-on: ubuntu-latest steps: - name: checkout - uses: actions/checkout@master + uses: actions/checkout@v4 - name: restore cache from package-lock.json - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: package-temp-dir key: lock-${{ github.sha }} - name: restore cache from node_modules - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: node_modules key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }} @@ -70,16 +67,16 @@ jobs: runs-on: ubuntu-latest steps: - name: checkout - uses: actions/checkout@master + uses: actions/checkout@v4 - name: restore cache from package-lock.json - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: package-temp-dir key: lock-${{ github.sha }} - name: restore cache from node_modules - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: node_modules key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }} @@ -93,21 +90,26 @@ jobs: runs-on: ubuntu-latest steps: - name: checkout - uses: actions/checkout@master + uses: actions/checkout@v4 - name: restore cache from package-lock.json - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: package-temp-dir key: lock-${{ github.sha }} - name: restore cache from node_modules - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: node_modules key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }} - name: coverage - run: npm test -- --coverage && bash <(curl -s https://codecov.io/bash) + run: npm test -- --coverage + + - name: Upload coverage to Codecov + uses: codecov/codecov-action@v4 + with: + token: ${{ secrets.CODECOV_TOKEN }} - needs: setup \ No newline at end of file + needs: setup From 2176badd8602e8d85a42e30c468dda2ad95f4dc0 Mon Sep 17 00:00:00 2001 From: Avan Date: Fri, 23 Aug 2024 17:47:31 +0800 Subject: [PATCH 237/262] test: use unified github action yml (#606) --- .github/workflows/main.yml | 119 ++----------------------------------- .gitignore | 2 + bunfig.toml | 2 + 3 files changed, 9 insertions(+), 114 deletions(-) create mode 100644 bunfig.toml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 2097f2a7..5735e2d2 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,115 +1,6 @@ -name: CI - -on: ['push', 'pull_request'] - +name: ✅ test +on: [push, pull_request] jobs: - setup: - runs-on: ubuntu-latest - steps: - - name: checkout - uses: actions/checkout@v4 - - - uses: actions/setup-node@v4 - with: - node-version: '20' - - - name: cache package-lock.json - uses: actions/cache@v4 - with: - path: package-temp-dir - key: lock-${{ github.sha }} - - - name: create package-lock.json - run: npm i --package-lock-only --ignore-scripts - - - name: hack for singe file - run: | - if [ ! -d "package-temp-dir" ]; then - mkdir package-temp-dir - fi - cp package-lock.json package-temp-dir - - - name: cache node_modules - id: node_modules_cache_id - uses: actions/cache@v4 - with: - path: node_modules - key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }} - - - name: install - if: steps.node_modules_cache_id.outputs.cache-hit != 'true' - run: npm ci - - lint: - runs-on: ubuntu-latest - steps: - - name: checkout - uses: actions/checkout@v4 - - - name: restore cache from package-lock.json - uses: actions/cache@v4 - with: - path: package-temp-dir - key: lock-${{ github.sha }} - - - name: restore cache from node_modules - uses: actions/cache@v4 - with: - path: node_modules - key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }} - - - name: lint - run: npm run lint - - needs: setup - - compile: - runs-on: ubuntu-latest - steps: - - name: checkout - uses: actions/checkout@v4 - - - name: restore cache from package-lock.json - uses: actions/cache@v4 - with: - path: package-temp-dir - key: lock-${{ github.sha }} - - - name: restore cache from node_modules - uses: actions/cache@v4 - with: - path: node_modules - key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }} - - - name: compile - run: npm run compile - - needs: setup - - coverage: - runs-on: ubuntu-latest - steps: - - name: checkout - uses: actions/checkout@v4 - - - name: restore cache from package-lock.json - uses: actions/cache@v4 - with: - path: package-temp-dir - key: lock-${{ github.sha }} - - - name: restore cache from node_modules - uses: actions/cache@v4 - with: - path: node_modules - key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }} - - - name: coverage - run: npm test -- --coverage - - - name: Upload coverage to Codecov - uses: codecov/codecov-action@v4 - with: - token: ${{ secrets.CODECOV_TOKEN }} - - needs: setup + test: + uses: react-component/rc-test/.github/workflows/test.yml@main + secrets: inherit \ No newline at end of file diff --git a/.gitignore b/.gitignore index 5c55b6f1..36e64185 100644 --- a/.gitignore +++ b/.gitignore @@ -42,3 +42,5 @@ docs-dist # dumi .dumi/tmp .dumi/tmp-production + +bun.lockb \ No newline at end of file diff --git a/bunfig.toml b/bunfig.toml new file mode 100644 index 00000000..80d57b63 --- /dev/null +++ b/bunfig.toml @@ -0,0 +1,2 @@ +[install] +peer = false \ No newline at end of file From 0176824f90d0cd6ea2ede3eca8887bab8d8d04aa Mon Sep 17 00:00:00 2001 From: afc163 Date: Fri, 20 Sep 2024 14:18:40 +0800 Subject: [PATCH 238/262] Create FUNDING.yml --- .github/FUNDING.yml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 .github/FUNDING.yml diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 00000000..33b1999c --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,15 @@ +# These are supported funding model platforms + +github: ant-design # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] +patreon: # Replace with a single Patreon username +open_collective: ant-design # Replace with a single Open Collective username +ko_fi: # Replace with a single Ko-fi username +tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel +community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry +liberapay: # Replace with a single Liberapay username +issuehunt: # Replace with a single IssueHunt username +lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry +polar: # Replace with a single Polar username +buy_me_a_coffee: # Replace with a single Buy Me a Coffee username +thanks_dev: # Replace with a single thanks.dev username +custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] From f4b851fed37c48510b1e0ae5d082d667a6e9c528 Mon Sep 17 00:00:00 2001 From: Prakash K <59553606+prakashks20@users.noreply.github.com> Date: Sun, 22 Sep 2024 18:20:15 +0530 Subject: [PATCH 239/262] feat: showSizeChanger accept SelectProps Co-authored-by: Prakash Kandhasamy Co-authored-by: afc163 --- README.md | 59 ++--- docs/demo/showSizeChanger.md | 8 + docs/examples/showSizeChanger.tsx | 42 ++++ package.json | 1 + src/Options.tsx | 45 +++- src/Pagination.tsx | 7 +- src/interface.ts | 6 +- tests/__snapshots__/demo.test.tsx.snap | 331 +++++++++++++++++++++++++ tests/options.test.tsx | 27 +- tests/sizer.test.tsx | 89 +++++++ 10 files changed, 553 insertions(+), 62 deletions(-) create mode 100644 docs/demo/showSizeChanger.md create mode 100644 docs/examples/showSizeChanger.tsx diff --git a/README.md b/README.md index fc91fe57..43e3062a 100644 --- a/README.md +++ b/README.md @@ -52,35 +52,36 @@ ReactDOM.render(, container); ## API -| Parameter | Description | Type | Default | -| ---------------------------- | --------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| disabled | disable pagination | Bool | - | -| align | align of pagination | start \| center \| end | undefined | -| defaultCurrent | uncontrolled current page | Number | 1 | -| current | current page | Number | undefined | -| total | items total count | Number | 0 | -| defaultPageSize | default items per page | Number | 10 | -| pageSize | items per page | Number | 10 | -| onChange | page change callback | Function(current, pageSize) | - | -| showSizeChanger | show pageSize changer | Bool | `false` when total less then `totalBoundaryShowSizeChanger`, `true` when otherwise | -| totalBoundaryShowSizeChanger | when total larger than it, `showSizeChanger` will be true | number | 50 | -| pageSizeOptions | specify the sizeChanger selections | Array | ['10', '20', '50', '100'] | -| onShowSizeChange | pageSize change callback | Function(current, size) | - | -| hideOnSinglePage | hide on single page | Bool | false | -| showPrevNextJumpers | show jump-prev, jump-next | Bool | true | -| showQuickJumper | show quick goto jumper | Bool / Object | false / {goButton: true} | -| showTotal | show total records and range | Function(total, [from, to]) | - | -| className | className of pagination | String | - | -| simple | when set, show simple pager | Bool / { readOnly?: boolean; } | - | -| locale | to set l10n config | Object | [zh_CN](https://github.com/react-component/pagination/blob/master/src/locale/zh_CN.js) | -| style | the style of pagination | Object | {} | -| showLessItems | show less page items | Bool | false | -| showTitle | show page items title | Bool | true | -| itemRender | custom page item renderer | Function(current, type: 'page' \| 'prev' \| 'next' \| 'jump-prev' \| 'jump-next', element): React.ReactNode \| `(current, type, element) => element` | | -| prevIcon | specify the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | -| nextIcon | specify the default next icon | ReactNode \| (props: PaginationProps) => ReactNode | | -| jumpPrevIcon | specify the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | -| jumpNextIcon | specify the default next icon | ReactNode \| (props: PaginationProps) => ReactNode | | +// prettier-ignore +| Parameter | Description | Type | Default | +| --- | --- | --- | --- | +| disabled | disable pagination | Bool | - | +| align | align of pagination | start \| center \| end | undefined | +| defaultCurrent | uncontrolled current page | Number | 1 | +| current | current page | Number | undefined | +| total | items total count | Number | 0 | +| defaultPageSize | default items per page | Number | 10 | +| pageSize | items per page | Number | 10 | +| onChange | page change callback | Function(current, pageSize) | - | +| showSizeChanger | show pageSize changer | boolean \| [SelectProps](https://github.com/react-component/select/blob/561f8b7d69fd5dd2cd7d917c88976cca4e539a9d/src/Select.tsx#L112) | `false` when total less than `totalBoundaryShowSizeChanger`, `true` when otherwise | +| totalBoundaryShowSizeChanger | when total larger than it, `showSizeChanger` will be true | number | 50 | +| pageSizeOptions | specify the sizeChanger selections | Array | ['10', '20', '50', '100'] | +| onShowSizeChange | pageSize change callback | Function(current, size) | - | +| hideOnSinglePage | hide on single page | Bool | false | +| showPrevNextJumpers | show jump-prev, jump-next | Bool | true | +| showQuickJumper | show quick goto jumper | Bool / Object | false / {goButton: true} | +| showTotal | show total records and range | Function(total, [from, to]) | - | +| className | className of pagination | String | - | +| simple | when set, show simple pager | Bool / { readOnly?: boolean; } | - | +| locale | to set l10n config | Object | [zh_CN](https://github.com/react-component/pagination/blob/master/src/locale/zh_CN.js) | +| style | the style of pagination | Object | {} | +| showLessItems | show less page items | Bool | false | +| showTitle | show page items title | Bool | true | +| itemRender | custom page item renderer | Function(current, type: 'page' \| 'prev' \| 'next' \| 'jump-prev' \| 'jump-next', element): React.ReactNode \| `(current, type, element) => element` | | +| prevIcon | specify the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | +| nextIcon | specify the default next icon | ReactNode \| (props: PaginationProps) => ReactNode | | +| jumpPrevIcon | specify the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | +| jumpNextIcon | specify the default next icon | ReactNode \| (props: PaginationProps) => ReactNode | | ## License diff --git a/docs/demo/showSizeChanger.md b/docs/demo/showSizeChanger.md new file mode 100644 index 00000000..bda79137 --- /dev/null +++ b/docs/demo/showSizeChanger.md @@ -0,0 +1,8 @@ +--- +title: showSizeChanger +nav: + title: Demo + path: /demo +--- + + diff --git a/docs/examples/showSizeChanger.tsx b/docs/examples/showSizeChanger.tsx new file mode 100644 index 00000000..b086391a --- /dev/null +++ b/docs/examples/showSizeChanger.tsx @@ -0,0 +1,42 @@ +import React from 'react'; +import Pagination from 'rc-pagination'; +import Select from 'rc-select'; +import '../../assets/index.less'; + +export default () => { + const onPageSizeOnChange = (value) => { + console.log(value); + }; + + return ( + <> + + + + + ); +}; diff --git a/package.json b/package.json index b7eef013..c8faa806 100644 --- a/package.json +++ b/package.json @@ -50,6 +50,7 @@ "@rc-component/father-plugin": "^1.0.0", "@testing-library/jest-dom": "^6.1.5", "@testing-library/react": "^15.0.4", + "@testing-library/user-event": "^14.5.2", "@types/jest": "^29.2.2", "@types/react": "^18.0.0", "@types/react-dom": "^18.0.0", diff --git a/src/Options.tsx b/src/Options.tsx index 99733aaf..6973b568 100644 --- a/src/Options.tsx +++ b/src/Options.tsx @@ -1,8 +1,9 @@ import type { SelectProps } from 'rc-select'; import type { OptionProps } from 'rc-select/es/Option'; import KEYCODE from 'rc-util/lib/KeyCode'; +import classNames from 'classnames'; import React from 'react'; -import type { PaginationLocale } from './interface'; +import type { PaginationLocale, PaginationProps } from './interface'; interface InternalSelectProps extends SelectProps { /** @@ -25,6 +26,7 @@ interface OptionsProps { selectComponentClass: React.ComponentType> & { Option?: React.ComponentType>; }; + showSizeChanger: PaginationProps['showSizeChanger']; } const defaultPageSizeOptions = ['10', '20', '50', '100']; @@ -42,6 +44,7 @@ const Options: React.FC = (props) => { selectPrefixCls, disabled, buildOptionText, + showSizeChanger, } = props; const [goInputText, setGoInputText] = React.useState(''); @@ -57,8 +60,11 @@ const Options: React.FC = (props) => { ? buildOptionText : (value: string) => `${value} ${locale.items_per_page}`; - const changeSizeHandle = (value: number) => { + const changeSizeHandle = (value: number, option) => { changeSize?.(Number(value)); + if (typeof showSizeChanger === 'object') { + showSizeChanger.onChange?.(value, option); + } }; const handleChange = (e: React.ChangeEvent) => { @@ -109,7 +115,7 @@ const Options: React.FC = (props) => { // ============== render ============== - if (!changeSize && !quickGo) { + if (!showSizeChanger && !quickGo) { return null; } @@ -117,26 +123,41 @@ const Options: React.FC = (props) => { let goInput: React.ReactNode = null; let gotoButton: React.ReactNode = null; - if (changeSize && Select) { - const options = getPageSizeOptions().map((opt, i) => ( - - {mergeBuildOptionText(opt)} - - )); + if (showSizeChanger && Select) { + const { + options: showSizeChangerOptions, + className: showSizeChangerClassName, + } = + typeof showSizeChanger === 'object' + ? showSizeChanger + : ({} as SelectProps); + // use showSizeChanger.options if existed, otherwise use pageSizeOptions + const options = showSizeChangerOptions + ? undefined + : getPageSizeOptions().map((opt, i) => ( + + {mergeBuildOptionText(opt)} + + )); changeSelect = ( diff --git a/src/Pagination.tsx b/src/Pagination.tsx index 449b5c3c..fd37018b 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -63,7 +63,7 @@ const Pagination: React.FC = (props) => { disabled, simple, showTotal, - showSizeChanger: showSizeChangerProp, + showSizeChanger = total > totalBoundaryShowSizeChanger, pageSizeOptions, // render @@ -225,8 +225,6 @@ const Pagination: React.FC = (props) => { const hasPrev = current > 1; const hasNext = current < calculatePage(undefined, pageSize, total); - const showSizeChanger = - showSizeChangerProp ?? total > totalBoundaryShowSizeChanger; function prevHandle() { if (hasPrev) handleChange(current - 1); @@ -586,11 +584,12 @@ const Pagination: React.FC = (props) => { disabled={disabled} selectComponentClass={selectComponentClass} selectPrefixCls={selectPrefixCls} - changeSize={showSizeChanger ? changePageSize : null} + changeSize={changePageSize} pageSize={pageSize} pageSizeOptions={pageSizeOptions} quickGo={shouldDisplayQuickJumper ? handleChange : null} goButton={gotoButton} + showSizeChanger={showSizeChanger} /> ); diff --git a/src/interface.ts b/src/interface.ts index 7cc6032b..6a1d60d3 100644 --- a/src/interface.ts +++ b/src/interface.ts @@ -1,4 +1,5 @@ import type React from 'react'; +import type { SelectProps } from 'rc-select'; export interface PaginationLocale { // Options @@ -32,12 +33,12 @@ export interface PaginationData { hideOnSinglePage: boolean; align: 'start' | 'center' | 'end'; - showSizeChanger: boolean; + showSizeChanger: boolean | SelectProps; showLessItems: boolean; showPrevNextJumpers: boolean; showQuickJumper: boolean | object; showTitle: boolean; - simple: boolean | { readOnly?: boolean; }; + simple: boolean | { readOnly?: boolean }; disabled: boolean; locale: PaginationLocale; @@ -62,7 +63,6 @@ export interface PaginationProps element: React.ReactNode, ) => React.ReactNode; showTotal?: (total: number, range: [number, number]) => React.ReactNode; - // WAI-ARIA role?: React.AriaRole | undefined; } diff --git a/tests/__snapshots__/demo.test.tsx.snap b/tests/__snapshots__/demo.test.tsx.snap index 0e218d2a..cab49ac7 100644 --- a/tests/__snapshots__/demo.test.tsx.snap +++ b/tests/__snapshots__/demo.test.tsx.snap @@ -2874,6 +2874,337 @@ exports[`Example more 1`] = ` `; +exports[`Example showSizeChanger 1`] = ` +
    + + + +
    +`; + exports[`Example showTitle 1`] = `
    diff --git a/tests/options.test.tsx b/tests/options.test.tsx index 715bb959..747644bc 100644 --- a/tests/options.test.tsx +++ b/tests/options.test.tsx @@ -12,6 +12,7 @@ const WrapperOptions: React.FC = (props) => ( pageSize={10} changeSize={jest.fn()} quickGo={jest.fn()} + showSizeChanger {...props} /> ); @@ -22,19 +23,17 @@ describe('Options', () => { expect(container.firstChild).toMatchSnapshot(); }); - describe('props:buildOptionText', () => { - it('should render correctly', () => { - const mockBuildOptionText = jest - .fn() - .mockImplementation((value) => ( -
    buildOptionText-{value}
    - )); - const { container } = render( - , - ); - const options = container.querySelector('.custom-options'); - expect(options).toBeTruthy(); - expect(options).toHaveTextContent('buildOptionText-10'); - }); + it('props:buildOptionText should render correctly', () => { + const mockBuildOptionText = jest + .fn() + .mockImplementation((value) => ( +
    buildOptionText-{value}
    + )); + const { container } = render( + , + ); + const options = container.querySelector('.custom-options'); + expect(options).toBeTruthy(); + expect(options).toHaveTextContent('buildOptionText-10'); }); }); diff --git a/tests/sizer.test.tsx b/tests/sizer.test.tsx index b6832ccc..9643c507 100644 --- a/tests/sizer.test.tsx +++ b/tests/sizer.test.tsx @@ -1,5 +1,6 @@ import React from 'react'; import { render, fireEvent } from '@testing-library/react'; +import userEvent from '@testing-library/user-event'; import Select from 'rc-select'; import Pagination from '../src'; @@ -82,4 +83,92 @@ describe('Pagination with sizer', () => { container.querySelector('.rc-select-selection-item'), ).toHaveTextContent('20 条/页'); }); + + describe('showSizeChanger is object', () => { + const options = [ + { value: '10', label: '10 条每页' }, + { value: '25', label: '25 条每页' }, + { value: '50', label: '50 条每页' }, + { value: '75', label: '75 条每页' }, + { value: '100', label: '100 条每页' }, + ]; + + it('showSizeChanger.className should be added to select node', async () => { + const { container } = render( + , + ); + const select = container.querySelector('.rc-select'); + expect(select.className).toContain('custom-class-name'); + expect(select.className).toContain('rc-pagination-options-size-changer'); + }); + + it('should onChange called when pageSize change', () => { + const onChange = jest.fn(); + const { container, getByRole } = render( + , + ); + const select = getByRole('combobox'); + expect(select).toBeTruthy(); + fireEvent.mouseDown(select); + expect( + container.querySelectorAll('.rc-select-item')[2], + ).toHaveTextContent('50 条每页'); + const pageSize1 = container.querySelectorAll('.rc-select-item')[1]; + fireEvent.click(pageSize1); + expect(onChange).toHaveBeenCalledWith('25', { + label: '25 条每页', + value: '25', + }); + }); + + it('should onChange called when pageSize change with search', async () => { + const onChange = jest.fn(); + const { container } = render( + , + ); + expect(container.querySelector('input').hasAttribute('readOnly')).toBe( + false, + ); + await userEvent.type(container.querySelector('input'), '25'); + expect( + container.querySelectorAll('.rc-select-item-option-content'), + ).toHaveLength(1); + expect( + container.querySelector('.rc-select-item-option-content').textContent, + ).toBe('25 条每页'); + const pageSize1 = container.querySelector( + '.rc-select-item-option-content', + ); + expect(pageSize1).toBeInTheDocument(); + fireEvent.click(pageSize1); + expect(onChange).toHaveBeenCalledWith('25', { + label: '25 条每页', + value: '25', + }); + }); + }); }); From db8a0077ded9abcf1d5ebf3802fa93af26033665 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 22 Sep 2024 20:55:34 +0800 Subject: [PATCH 240/262] chore(deps-dev): bump @testing-library/react from 15.0.7 to 16.0.1 (#608) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c8faa806..f04eaf46 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "devDependencies": { "@rc-component/father-plugin": "^1.0.0", "@testing-library/jest-dom": "^6.1.5", - "@testing-library/react": "^15.0.4", + "@testing-library/react": "^16.0.1", "@testing-library/user-event": "^14.5.2", "@types/jest": "^29.2.2", "@types/react": "^18.0.0", From d4e59b479264880fb47e70359b8d2117fce105c3 Mon Sep 17 00:00:00 2001 From: afc163 Date: Sun, 22 Sep 2024 21:00:38 +0800 Subject: [PATCH 241/262] chore: fix husky and lint-staged warning (#614) --- .husky/pre-commit | 5 +---- package.json | 5 ++--- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/.husky/pre-commit b/.husky/pre-commit index d24fdfc6..c27d8893 100755 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -1,4 +1 @@ -#!/usr/bin/env sh -. "$(dirname -- "$0")/_/husky.sh" - -npx lint-staged +lint-staged diff --git a/package.json b/package.json index f04eaf46..f929e8a7 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "test": "rc-test", "coverage": "rc-test --coverage", "now-build": "npm run docs:build", - "prepare": "husky install" + "prepare": "husky" }, "dependencies": { "@babel/runtime": "^7.10.1", @@ -87,8 +87,7 @@ }, "lint-staged": { "**/*.{js,jsx,tsx,ts,md,json}": [ - "prettier --write", - "git add" + "prettier --write" ] } } From 8f26e36a4844d130433e040582bf79d42a28d1b1 Mon Sep 17 00:00:00 2001 From: afc163 Date: Sun, 22 Sep 2024 21:02:53 +0800 Subject: [PATCH 242/262] 4.3.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index f929e8a7..57822d99 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "4.2.0", + "version": "4.3.0", "description": "pagination ui component for react", "keywords": [ "react", From 1784380c336dc27e719387cf5259f47152bf2081 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8C=E8=B4=A7=E7=88=B1=E5=90=83=E7=99=BD=E8=90=9D?= =?UTF-8?q?=E5=8D=9C?= Date: Tue, 10 Dec 2024 16:47:04 +0800 Subject: [PATCH 243/262] feat: Add `sizeChangerRender` instead of `selectComponentClass` (#631) * chore: init docs * docs: all cover * test: fix index test * test: fix test * fix: type * test: fix test * chore: update demo * docs: back * test: fix test * test: fix test * chore: fix lint * test: update snapshot --- docs/examples/align.tsx | 2 +- docs/examples/basic.tsx | 2 +- docs/examples/controlled.tsx | 2 +- docs/examples/itemRender.tsx | 2 +- docs/examples/jumper.tsx | 19 +- docs/examples/jumperWithGoButton.tsx | 8 +- docs/examples/lessPages.tsx | 2 +- docs/examples/locale.tsx | 7 +- docs/examples/more.tsx | 2 +- docs/examples/showSizeChanger.tsx | 31 +- docs/examples/showTitle.tsx | 2 +- docs/examples/showTotal.tsx | 2 +- docs/examples/simple.tsx | 12 +- docs/examples/sizer.tsx | 19 +- docs/examples/styles.tsx | 2 +- docs/examples/utils/commonUtil.tsx | 49 ++ jest.config.js | 2 - package.json | 2 +- src/Options.tsx | 167 +++--- src/Pagination.tsx | 6 +- src/interface.ts | 10 +- tests/__snapshots__/demo.test.tsx.snap | 677 +++++++++++----------- tests/__snapshots__/options.test.tsx.snap | 52 +- tests/commonUtil.tsx | 27 + tests/index.test.tsx | 41 +- tests/options.test.tsx | 6 +- tests/simple.test.tsx | 9 +- tests/sizer.test.tsx | 184 +++--- tests/two-pagination.tsx | 8 +- 29 files changed, 753 insertions(+), 601 deletions(-) create mode 100644 docs/examples/utils/commonUtil.tsx create mode 100644 tests/commonUtil.tsx diff --git a/docs/examples/align.tsx b/docs/examples/align.tsx index c902114d..609e725c 100644 --- a/docs/examples/align.tsx +++ b/docs/examples/align.tsx @@ -1,6 +1,6 @@ import '../../assets/index.less'; import React from 'react'; -import Pagination from 'rc-pagination'; +import Pagination from '../../src'; const App = () => ( <> diff --git a/docs/examples/basic.tsx b/docs/examples/basic.tsx index b3299f2c..8eaffc05 100644 --- a/docs/examples/basic.tsx +++ b/docs/examples/basic.tsx @@ -1,6 +1,6 @@ import '../../assets/index.less'; import React from 'react'; -import Pagination from 'rc-pagination'; +import Pagination from '../../src'; const App = () => ( <> diff --git a/docs/examples/controlled.tsx b/docs/examples/controlled.tsx index d1fca6d3..376791f2 100644 --- a/docs/examples/controlled.tsx +++ b/docs/examples/controlled.tsx @@ -1,5 +1,5 @@ import React, { useState } from 'react'; -import Pagination from 'rc-pagination'; +import Pagination from '../../src'; import '../../assets/index.less'; import 'rc-select/assets/index.less'; diff --git a/docs/examples/itemRender.tsx b/docs/examples/itemRender.tsx index 9e9a8daf..035c9c2f 100644 --- a/docs/examples/itemRender.tsx +++ b/docs/examples/itemRender.tsx @@ -1,6 +1,6 @@ import '../../assets/index.less'; import React from 'react'; -import Pagination from 'rc-pagination'; +import Pagination from '../../src'; const itemRender = (current, type, element) => { if (type === 'page') { diff --git a/docs/examples/jumper.tsx b/docs/examples/jumper.tsx index 182c195b..24202353 100644 --- a/docs/examples/jumper.tsx +++ b/docs/examples/jumper.tsx @@ -1,9 +1,8 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import Select from 'rc-select'; -import Pagination from 'rc-pagination'; import '../../assets/index.less'; import 'rc-select/assets/index.less'; +import PaginationWithSizeChanger from './utils/commonUtil'; function onShowSizeChange(current, pageSize) { console.log(current); @@ -18,8 +17,8 @@ function onChange(current, pageSize) { const App = () => ( <>

    默认

    - ( total={450} />

    禁用

    - ( disabled />

    单页默认隐藏

    - ( total={8} />
    - { @@ -20,8 +20,8 @@ class App extends React.Component { return ( <>

    customize node

    - 确定 }} defaultPageSize={20} diff --git a/docs/examples/lessPages.tsx b/docs/examples/lessPages.tsx index 13116c2b..63831387 100644 --- a/docs/examples/lessPages.tsx +++ b/docs/examples/lessPages.tsx @@ -1,6 +1,6 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import Pagination from 'rc-pagination'; +import Pagination from '../../src'; import '../../assets/index.less'; const arrowPath = diff --git a/docs/examples/locale.tsx b/docs/examples/locale.tsx index c48e93b8..61490186 100644 --- a/docs/examples/locale.tsx +++ b/docs/examples/locale.tsx @@ -1,10 +1,9 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import Select from 'rc-select'; -import Pagination from 'rc-pagination'; import localeInfo from '../../src/locale/en_US'; import '../../assets/index.less'; import 'rc-select/assets/index.less'; +import PaginationWithSizeChanger from './utils/commonUtil'; function onShowSizeChange(current, pageSize) { console.log(current); @@ -17,8 +16,8 @@ function onChange(current, pageSize) { } const App = () => ( - ( diff --git a/docs/examples/showSizeChanger.tsx b/docs/examples/showSizeChanger.tsx index b086391a..ff9059fc 100644 --- a/docs/examples/showSizeChanger.tsx +++ b/docs/examples/showSizeChanger.tsx @@ -1,7 +1,6 @@ import React from 'react'; -import Pagination from 'rc-pagination'; -import Select from 'rc-select'; import '../../assets/index.less'; +import PaginationWithSizeChanger from './utils/commonUtil'; export default () => { const onPageSizeOnChange = (value) => { @@ -10,31 +9,31 @@ export default () => { return ( <> - - - diff --git a/docs/examples/showTitle.tsx b/docs/examples/showTitle.tsx index ff581328..d76c713e 100644 --- a/docs/examples/showTitle.tsx +++ b/docs/examples/showTitle.tsx @@ -1,6 +1,6 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import Pagination from 'rc-pagination'; +import Pagination from '../../src'; import '../../assets/index.less'; class App extends React.Component { diff --git a/docs/examples/showTotal.tsx b/docs/examples/showTotal.tsx index 25cd1c72..b7a7c042 100644 --- a/docs/examples/showTotal.tsx +++ b/docs/examples/showTotal.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import Pagination from 'rc-pagination'; +import Pagination from '../../src'; import '../../assets/index.less'; const App = () => ( diff --git a/docs/examples/simple.tsx b/docs/examples/simple.tsx index beeba080..f0c9faf5 100644 --- a/docs/examples/simple.tsx +++ b/docs/examples/simple.tsx @@ -1,7 +1,7 @@ import React, { useState } from 'react'; -import Pagination from 'rc-pagination'; -import Select from 'rc-select'; +import Pagination from '../../src'; import '../../assets/index.less'; +import PaginationWithSizeChanger from './utils/commonUtil'; export default () => { const [pageIndex, setPageIndex] = useState(1); @@ -32,24 +32,24 @@ export default () => { showTotal={(total) => `Total ${total} items`} />
    -
    Antd #46671 - ); diff --git a/docs/examples/sizer.tsx b/docs/examples/sizer.tsx index 19212bc2..f60f0330 100644 --- a/docs/examples/sizer.tsx +++ b/docs/examples/sizer.tsx @@ -1,9 +1,8 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import Select from 'rc-select'; -import Pagination from 'rc-pagination'; import '../../assets/index.less'; import 'rc-select/assets/index.less'; +import PaginationWithSizeChanger from './utils/commonUtil'; class App extends React.Component { state = { @@ -19,30 +18,30 @@ class App extends React.Component { const { pageSize } = this.state; return (
    - - - - ( diff --git a/docs/examples/utils/commonUtil.tsx b/docs/examples/utils/commonUtil.tsx new file mode 100644 index 00000000..b40ec64f --- /dev/null +++ b/docs/examples/utils/commonUtil.tsx @@ -0,0 +1,49 @@ +import type { PaginationProps } from 'rc-pagination'; +import Pagination from '../../../src'; +import Select from 'rc-select'; +import React from 'react'; + +export const getSizeChangerRender = (selectProps?: any) => { + const render: PaginationProps['sizeChangerRender'] = ({ + disabled, + size: pageSize, + onSizeChange, + 'aria-label': ariaLabel, + className, + options, + }) => ( + triggerNode.parentNode} - aria-label={locale.page_size} - defaultOpen={false} - {...(typeof showSizeChanger === 'object' ? showSizeChanger : null)} - className={classNames( - `${prefixCls}-size-changer`, - showSizeChangerClassName, - )} - options={showSizeChangerOptions} - onChange={changeSizeHandle} - > - {options} - - ); + // >>>>> Size Changer + if (showSizeChanger && sizeChangerRender) { + changeSelect = sizeChangerRender({ + disabled, + size: pageSize, + onSizeChange: (nextValue) => { + changeSize?.(Number(nextValue)); + }, + 'aria-label': locale.page_size, + className: `${prefixCls}-size-changer`, + options: getPageSizeOptions().map((opt) => ({ + label: mergeBuildOptionText(opt), + value: opt, + })), + }); } + // if (showSizeChanger && Select) { + // const { + // options: showSizeChangerOptions, + // className: showSizeChangerClassName, + // } = + // typeof showSizeChanger === 'object' + // ? showSizeChanger + // : ({} as SelectProps); + // // use showSizeChanger.options if existed, otherwise use pageSizeOptions + // const options = showSizeChangerOptions + // ? undefined + // : getPageSizeOptions().map((opt, i) => ( + // + // {mergeBuildOptionText(opt)} + // + // )); + + // changeSelect = ( + // + // ); + // } + + // >>>>> Quick Go if (quickGo) { if (goButton) { gotoButton = diff --git a/src/Pagination.tsx b/src/Pagination.tsx index fd37018b..410d96c4 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -39,7 +39,7 @@ const Pagination: React.FC = (props) => { prefixCls = 'rc-pagination', selectPrefixCls = 'rc-select', className, - selectComponentClass, + // selectComponentClass, // control current: currentProp, @@ -64,6 +64,7 @@ const Pagination: React.FC = (props) => { simple, showTotal, showSizeChanger = total > totalBoundaryShowSizeChanger, + sizeChangerRender, pageSizeOptions, // render @@ -582,7 +583,7 @@ const Pagination: React.FC = (props) => { locale={locale} rootPrefixCls={prefixCls} disabled={disabled} - selectComponentClass={selectComponentClass} + // selectComponentClass={selectComponentClass} selectPrefixCls={selectPrefixCls} changeSize={changePageSize} pageSize={pageSize} @@ -590,6 +591,7 @@ const Pagination: React.FC = (props) => { quickGo={shouldDisplayQuickJumper ? handleChange : null} goButton={gotoButton} showSizeChanger={showSizeChanger} + sizeChangerRender={sizeChangerRender} /> ); diff --git a/src/interface.ts b/src/interface.ts index 6a1d60d3..37ce71fa 100644 --- a/src/interface.ts +++ b/src/interface.ts @@ -1,5 +1,5 @@ import type React from 'react'; -import type { SelectProps } from 'rc-select'; +import type { SizeChangerRender } from './Options'; export interface PaginationLocale { // Options @@ -22,7 +22,8 @@ export interface PaginationData { className: string; selectPrefixCls: string; prefixCls: string; - pageSizeOptions: string[] | number[]; + // pageSizeOptions: string[] | number[]; + pageSizeOptions: number[]; current: number; defaultCurrent: number; @@ -33,7 +34,8 @@ export interface PaginationData { hideOnSinglePage: boolean; align: 'start' | 'center' | 'end'; - showSizeChanger: boolean | SelectProps; + showSizeChanger: boolean; + sizeChangerRender?: SizeChangerRender; showLessItems: boolean; showPrevNextJumpers: boolean; showQuickJumper: boolean | object; @@ -45,7 +47,7 @@ export interface PaginationData { style: React.CSSProperties; - selectComponentClass: React.ComponentType; + // selectComponentClass: React.ComponentType; prevIcon: React.ComponentType | React.ReactNode; nextIcon: React.ComponentType | React.ReactNode; jumpPrevIcon: React.ComponentType | React.ReactNode; diff --git a/tests/__snapshots__/demo.test.tsx.snap b/tests/__snapshots__/demo.test.tsx.snap index cab49ac7..4ed03894 100644 --- a/tests/__snapshots__/demo.test.tsx.snap +++ b/tests/__snapshots__/demo.test.tsx.snap @@ -1649,31 +1649,35 @@ exports[`Example jumper 1`] = ` class="rc-select-selector" > - - - - 20 条/页 + + + + + 20 条/页 +
    @@ -1830,32 +1834,36 @@ exports[`Example jumper 1`] = ` class="rc-select-selector" > - - - - 20 条/页 + + + + + 20 条/页 +
    @@ -1925,31 +1933,35 @@ exports[`Example jumper 1`] = ` class="rc-select-selector" > - - - - 10 条/页 + + + + + 10 条/页 + @@ -2005,31 +2017,35 @@ exports[`Example jumper 1`] = ` class="rc-select-selector" > - - - - 10 条/页 + + + + + 10 条/页 + @@ -2180,31 +2196,35 @@ exports[`Example jumperWithGoButton 1`] = ` class="rc-select-selector" > - - - - 20 条/页 + + + + + 20 条/页 + @@ -2717,31 +2737,35 @@ exports[`Example locale 1`] = ` class="rc-select-selector" > - - - - 20 / page + + + + + 20 / page + @@ -3052,31 +3076,35 @@ exports[`Example showSizeChanger 1`] = ` class="rc-select-selector" > - - - - 10 条/页 + + + + + 10 条/页 + @@ -3098,7 +3126,7 @@ exports[`Example showSizeChanger 1`] = ` />
  • @@ -3109,58 +3137,14 @@ exports[`Example showSizeChanger 1`] = `
  • - - 2 - -
  • -
  • - - 3 - -
  • -
  • - - 4 - -
  • -
  • - - 5 - -
  • -
  • @@ -3169,34 +3153,41 @@ exports[`Example showSizeChanger 1`] = ` > @@ -3892,31 +3883,35 @@ exports[`Example simple 1`] = ` class="rc-select-selector" > - - - - 10 条/页 + + + + + 10 条/页 + @@ -3981,31 +3976,35 @@ exports[`Example simple 1`] = ` class="rc-select-selector" > - - - - 10 条/页 + + + + + 10 条/页 + @@ -4101,31 +4100,35 @@ exports[`Example sizer 1`] = ` class="rc-select-selector" > - - - - 15 条/页 + + + + + 15 条/页 + @@ -4285,31 +4288,35 @@ exports[`Example sizer 1`] = ` class="rc-select-selector" > - - - - 15 条/页 + + + + + 15 条/页 + diff --git a/tests/__snapshots__/options.test.tsx.snap b/tests/__snapshots__/options.test.tsx.snap index 5824f3f0..c241a318 100644 --- a/tests/__snapshots__/options.test.tsx.snap +++ b/tests/__snapshots__/options.test.tsx.snap @@ -12,31 +12,35 @@ exports[`Options should render correctly 1`] = ` class="rc-select-selector" > - - - - 10 条/页 + + + + + 10 条/页 + diff --git a/tests/commonUtil.tsx b/tests/commonUtil.tsx new file mode 100644 index 00000000..7ab44a23 --- /dev/null +++ b/tests/commonUtil.tsx @@ -0,0 +1,27 @@ +import Select from 'rc-select'; +import type { PaginationProps } from '../src/interface'; +import React from 'react'; + +export const sizeChangerRender: PaginationProps['sizeChangerRender'] = ({ + disabled, + size: pageSize, + onSizeChange, + 'aria-label': ariaLabel, + className, + options, +}) => { + return ( + triggerNode.parentNode} aria-label={ariaLabel} defaultOpen={false} - // {...(typeof showSizeChanger === 'object' ? showSizeChanger : null)} className={className} options={options} onChange={onSizeChange} diff --git a/src/Options.tsx b/src/Options.tsx index 6efe6930..8efd5dd6 100644 --- a/src/Options.tsx +++ b/src/Options.tsx @@ -1,17 +1,7 @@ -// import type { SelectProps } from 'rc-select'; -// import type { OptionProps } from 'rc-select/es/Option'; import KEYCODE from 'rc-util/lib/KeyCode'; -// import classNames from 'classnames'; import React from 'react'; import type { PaginationLocale } from './interface'; -// interface InternalSelectProps extends SelectProps { -// /** -// * form antd v5.5.0, popupMatchSelectWidth default is true -// */ -// popupMatchSelectWidth?: boolean; -// } - export type SizeChangerRender = (info: { disabled: boolean; size: number; @@ -35,10 +25,6 @@ interface OptionsProps { changeSize?: (size: number) => void; quickGo?: (value: number) => void; buildOptionText?: (value: number | string) => string; - // selectComponentClass: React.ComponentType> & { - // Option?: React.ComponentType>; - // }; - // showSizeChanger: PaginationProps['showSizeChanger']; showSizeChanger: boolean; sizeChangerRender?: SizeChangerRender; } @@ -54,8 +40,6 @@ const Options: React.FC = (props) => { goButton, quickGo, rootPrefixCls, - // selectComponentClass, - // selectPrefixCls, disabled, buildOptionText, showSizeChanger, @@ -75,13 +59,6 @@ const Options: React.FC = (props) => { ? buildOptionText : (value: string | number) => `${value} ${locale.items_per_page}`; - // const changeSizeHandle = (value: number, option) => { - // changeSize?.(Number(value)); - // if (typeof showSizeChanger === 'object') { - // showSizeChanger.onChange?.(value, option); - // } - // }; - const handleChange = (e: React.ChangeEvent) => { setGoInputText(e.target.value); }; @@ -155,47 +132,6 @@ const Options: React.FC = (props) => { }); } - // if (showSizeChanger && Select) { - // const { - // options: showSizeChangerOptions, - // className: showSizeChangerClassName, - // } = - // typeof showSizeChanger === 'object' - // ? showSizeChanger - // : ({} as SelectProps); - // // use showSizeChanger.options if existed, otherwise use pageSizeOptions - // const options = showSizeChangerOptions - // ? undefined - // : getPageSizeOptions().map((opt, i) => ( - // - // {mergeBuildOptionText(opt)} - // - // )); - - // changeSelect = ( - // - // ); - // } - // >>>>> Quick Go if (quickGo) { if (goButton) { diff --git a/src/Pagination.tsx b/src/Pagination.tsx index 410d96c4..21e8b2b3 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -39,7 +39,6 @@ const Pagination: React.FC = (props) => { prefixCls = 'rc-pagination', selectPrefixCls = 'rc-select', className, - // selectComponentClass, // control current: currentProp, @@ -583,7 +582,6 @@ const Pagination: React.FC = (props) => { locale={locale} rootPrefixCls={prefixCls} disabled={disabled} - // selectComponentClass={selectComponentClass} selectPrefixCls={selectPrefixCls} changeSize={changePageSize} pageSize={pageSize} diff --git a/src/interface.ts b/src/interface.ts index 37ce71fa..68e2198d 100644 --- a/src/interface.ts +++ b/src/interface.ts @@ -22,7 +22,6 @@ export interface PaginationData { className: string; selectPrefixCls: string; prefixCls: string; - // pageSizeOptions: string[] | number[]; pageSizeOptions: number[]; current: number; @@ -47,7 +46,6 @@ export interface PaginationData { style: React.CSSProperties; - // selectComponentClass: React.ComponentType; prevIcon: React.ComponentType | React.ReactNode; nextIcon: React.ComponentType | React.ReactNode; jumpPrevIcon: React.ComponentType | React.ReactNode; diff --git a/tests/options.test.tsx b/tests/options.test.tsx index 97abb9d4..161ebd0a 100644 --- a/tests/options.test.tsx +++ b/tests/options.test.tsx @@ -1,5 +1,4 @@ import { render } from '@testing-library/react'; -// import Select from 'rc-select'; import zhCN from '../src/locale/zh_CN'; import Options from '../src/Options'; import * as React from 'react'; @@ -9,7 +8,6 @@ const WrapperOptions: React.FC = (props) => ( { total={500} pageSize={15} showSizeChanger - // selectComponentClass={Select} sizeChangerRender={sizeChangerRender} />, ); @@ -119,7 +118,6 @@ describe('simple Pagination', () => { const { container, getByRole } = render( { total={500} pageSize={15} showSizeChanger - // selectComponentClass={Select} sizeChangerRender={sizeChangerRender} />, ); @@ -28,7 +27,6 @@ describe('Pagination with sizer', () => { total={500} pageSize={20} showSizeChanger - // selectComponentClass={Select} sizeChangerRender={sizeChangerRender} />, ); @@ -42,7 +40,6 @@ describe('Pagination with sizer', () => { total={500} pageSize={45} showSizeChanger - // selectComponentClass={Select} sizeChangerRender={sizeChangerRender} />, ); @@ -57,7 +54,6 @@ describe('Pagination with sizer', () => { const onChange = jest.fn(); const { container, getByRole } = render( { it('should contains locale text in selected pageSize when pageSizeOptions are numbers', () => { const { container } = render( { container.querySelector('.rc-select-selection-item'), ).toHaveTextContent('20 条/页'); }); - - // describe('showSizeChanger is object', () => { - // const options = [ - // { value: '10', label: '10 条每页' }, - // { value: '25', label: '25 条每页' }, - // { value: '50', label: '50 条每页' }, - // { value: '75', label: '75 条每页' }, - // { value: '100', label: '100 条每页' }, - // ]; - - // it('showSizeChanger.className should be added to select node', async () => { - // const { container } = render( - // , - // ); - // const select = container.querySelector('.rc-select'); - // expect(select.className).toContain('custom-class-name'); - // expect(select.className).toContain('rc-pagination-options-size-changer'); - // }); - - // it('should onChange called when pageSize change', () => { - // const onChange = jest.fn(); - // const { container, getByRole } = render( - // , - // ); - // const select = getByRole('combobox'); - // expect(select).toBeTruthy(); - // fireEvent.mouseDown(select); - // expect( - // container.querySelectorAll('.rc-select-item')[2], - // ).toHaveTextContent('50 条每页'); - // const pageSize1 = container.querySelectorAll('.rc-select-item')[1]; - // fireEvent.click(pageSize1); - // expect(onChange).toHaveBeenCalledWith('25', { - // label: '25 条每页', - // value: '25', - // }); - // }); - - // it('should onChange called when pageSize change with search', async () => { - // const onChange = jest.fn(); - // const { container } = render( - // , - // ); - // expect(container.querySelector('input').hasAttribute('readOnly')).toBe( - // false, - // ); - // await userEvent.type(container.querySelector('input'), '25'); - // expect( - // container.querySelectorAll('.rc-select-item-option-content'), - // ).toHaveLength(1); - // expect( - // container.querySelector('.rc-select-item-option-content').textContent, - // ).toBe('25 条每页'); - // const pageSize1 = container.querySelector( - // '.rc-select-item-option-content', - // ); - // expect(pageSize1).toBeInTheDocument(); - // fireEvent.click(pageSize1); - // expect(onChange).toHaveBeenCalledWith('25', { - // label: '25 条每页', - // value: '25', - // }); - // }); - // }); }); diff --git a/tests/two-pagination.tsx b/tests/two-pagination.tsx index f439f6f2..ea30b656 100644 --- a/tests/two-pagination.tsx +++ b/tests/two-pagination.tsx @@ -22,7 +22,6 @@ class Hello extends React.Component { Date: Tue, 10 Dec 2024 19:44:10 +0800 Subject: [PATCH 246/262] 5.0.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 839a86a3..76a0e9fe 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "5.0.0-0", + "version": "5.0.0", "description": "pagination ui component for react", "keywords": [ "react", From 513f191b226dd375c3e09b399b691d330dc90e79 Mon Sep 17 00:00:00 2001 From: Jony J <1844749591@qq.com> Date: Fri, 24 Jan 2025 17:10:37 +0800 Subject: [PATCH 247/262] fix: add aria-label for accessibility in Pagination component and update snapshots (#634) --- src/Pagination.tsx | 1 + tests/__snapshots__/demo.test.tsx.snap | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/src/Pagination.tsx b/src/Pagination.tsx index 21e8b2b3..04b18118 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -384,6 +384,7 @@ const Pagination: React.FC = (props) => { ) : ( Date: Mon, 27 Jan 2025 13:19:33 +0800 Subject: [PATCH 248/262] 5.1.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 76a0e9fe..00c5c889 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "5.0.0", + "version": "5.1.0", "description": "pagination ui component for react", "keywords": [ "react", From b39236404cd5a13757a73ccfbd4cbc2717aad02b Mon Sep 17 00:00:00 2001 From: lijianan <574980606@qq.com> Date: Fri, 7 Feb 2025 10:41:34 +0800 Subject: [PATCH 249/262] chore: use rc-component/util (#635) * chore: use rc-component/util * fix: fix * fix: fix * fix: fix * fix: fix * fix: fix * fix: fix --- package.json | 16 ++++++++-------- src/Options.tsx | 14 +++++++------- src/Pagination.tsx | 23 ++++++++++------------- tests/index.test.tsx | 3 +-- 4 files changed, 26 insertions(+), 30 deletions(-) diff --git a/package.json b/package.json index 00c5c889..df119bb2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { - "name": "rc-pagination", - "version": "5.1.0", + "name": "@rc-component/pagination", + "version": "1.0.0", "description": "pagination ui component for react", "keywords": [ "react", @@ -43,8 +43,8 @@ }, "dependencies": { "@babel/runtime": "^7.10.1", - "classnames": "^2.3.2", - "rc-util": "^5.38.0" + "@rc-component/util": "^1.2.0", + "classnames": "^2.3.2" }, "devDependencies": { "@rc-component/father-plugin": "^1.0.0", @@ -52,8 +52,8 @@ "@testing-library/react": "^16.0.1", "@testing-library/user-event": "^14.5.2", "@types/jest": "^29.2.2", - "@types/react": "^18.0.0", - "@types/react-dom": "^18.0.0", + "@types/react": "^19.0.8", + "@types/react-dom": "^19.0.3", "@umijs/fabric": "^4.0.1", "coveralls": "^3.0.6", "cross-env": "^7.0.0", @@ -72,8 +72,8 @@ "prettier": "^3.1.0", "rc-select": "^14.16.4", "rc-test": "^7.0.15", - "react": "^18.2.0", - "react-dom": "^18.2.0" + "react": "^19.0.0", + "react-dom": "^19.0.0" }, "peerDependencies": { "react": ">=16.9.0", diff --git a/src/Options.tsx b/src/Options.tsx index 8efd5dd6..9608697c 100644 --- a/src/Options.tsx +++ b/src/Options.tsx @@ -1,4 +1,4 @@ -import KEYCODE from 'rc-util/lib/KeyCode'; +import KEYCODE from '@rc-component/util/lib/KeyCode'; import React from 'react'; import type { PaginationLocale } from './interface'; @@ -48,11 +48,11 @@ const Options: React.FC = (props) => { const [goInputText, setGoInputText] = React.useState(''); - const getValidValue = () => { + const getValidValue = React.useMemo(() => { return !goInputText || Number.isNaN(goInputText) ? undefined : Number(goInputText); - }; + }, [goInputText]); const mergeBuildOptionText = typeof buildOptionText === 'function' @@ -70,12 +70,12 @@ const Options: React.FC = (props) => { setGoInputText(''); if ( e.relatedTarget && - (e.relatedTarget.className.indexOf(`${rootPrefixCls}-item-link`) >= 0 || - e.relatedTarget.className.indexOf(`${rootPrefixCls}-item`) >= 0) + (e.relatedTarget.className.includes(`${rootPrefixCls}-item-link`) || + e.relatedTarget.className.includes(`${rootPrefixCls}-item`)) ) { return; } - quickGo?.(getValidValue()); + quickGo?.(getValidValue); }; const go = (e: any) => { @@ -84,7 +84,7 @@ const Options: React.FC = (props) => { } if (e.keyCode === KEYCODE.ENTER || e.type === 'click') { setGoInputText(''); - quickGo?.(getValidValue()); + quickGo?.(getValidValue); } }; diff --git a/src/Pagination.tsx b/src/Pagination.tsx index 04b18118..ff4ac02e 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -1,8 +1,8 @@ import classNames from 'classnames'; -import useMergedState from 'rc-util/lib/hooks/useMergedState'; -import KeyCode from 'rc-util/lib/KeyCode'; -import pickAttrs from 'rc-util/lib/pickAttrs'; -import warning from 'rc-util/lib/warning'; +import useMergedState from '@rc-component/util/lib/hooks/useMergedState'; +import KeyCode from '@rc-component/util/lib/KeyCode'; +import pickAttrs from '@rc-component/util/lib/pickAttrs'; +import warning from '@rc-component/util/lib/warning'; import React, { useEffect } from 'react'; import type { PaginationProps } from './interface'; import zhCN from './locale/zh_CN'; @@ -10,11 +10,8 @@ import Options from './Options'; import type { PagerProps } from './Pager'; import Pager from './Pager'; -const defaultItemRender: PaginationProps['itemRender'] = ( - page, - type, - element, -) => element; +const defaultItemRender: PaginationProps['itemRender'] = (_, __, element) => + element; function noop() {} @@ -244,8 +241,8 @@ const Pagination: React.FC = (props) => { function runIfEnter( event: React.KeyboardEvent, - callback, - ...restParams + callback: (...args: any[]) => void, + ...restParams: any[] ) { if ( event.key === 'Enter' || @@ -300,7 +297,7 @@ const Pagination: React.FC = (props) => { } } - let jumpPrev: React.ReactElement = null; + let jumpPrev: React.ReactElement = null; const dataOrAriaAttributeProps = pickAttrs(props, { aria: true, @@ -316,7 +313,7 @@ const Pagination: React.FC = (props) => { ); - let jumpNext: React.ReactElement = null; + let jumpNext: React.ReactElement = null; const allPages = calculatePage(undefined, pageSize, total); diff --git a/tests/index.test.tsx b/tests/index.test.tsx index 7f5c8e12..7efb5407 100644 --- a/tests/index.test.tsx +++ b/tests/index.test.tsx @@ -1,9 +1,8 @@ import type { RenderResult } from '@testing-library/react'; import { render, fireEvent } from '@testing-library/react'; -import Select from 'rc-select'; import React from 'react'; import Pagination from '../src'; -import { resetWarned } from 'rc-util/lib/warning'; +import { resetWarned } from '@rc-component/util/lib/warning'; import { sizeChangerRender } from './commonUtil'; describe('Default Pagination', () => { From 6ca5adc7d48288cad1a71bc57e5495c94c89518e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 7 Feb 2025 10:42:51 +0800 Subject: [PATCH 250/262] chore(deps-dev): bump eslint-plugin-jest from 27.9.0 to 28.10.0 (#633) Bumps [eslint-plugin-jest](https://github.com/jest-community/eslint-plugin-jest) from 27.9.0 to 28.10.0. - [Release notes](https://github.com/jest-community/eslint-plugin-jest/releases) - [Changelog](https://github.com/jest-community/eslint-plugin-jest/blob/main/CHANGELOG.md) - [Commits](https://github.com/jest-community/eslint-plugin-jest/compare/v27.9.0...v28.10.0) --- updated-dependencies: - dependency-name: eslint-plugin-jest dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index df119bb2..b20d71b7 100644 --- a/package.json +++ b/package.json @@ -59,7 +59,7 @@ "cross-env": "^7.0.0", "dumi": "^2.1.2", "eslint": "^8.54.0", - "eslint-plugin-jest": "^27.6.0", + "eslint-plugin-jest": "^28.10.0", "eslint-plugin-unicorn": "^55.0.0", "father": "^4.0.0", "gh-pages": "^6.1.0", From cac9d012e00f162b2c8deb4679a8699d89fdbc14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8C=E8=B4=A7=E7=88=B1=E5=90=83=E7=99=BD=E8=90=9D?= =?UTF-8?q?=E5=8D=9C?= Date: Fri, 7 Feb 2025 10:53:02 +0800 Subject: [PATCH 251/262] chore: bump father version (#636) --- package.json | 6 +++--- src/Pagination.tsx | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index b20d71b7..a1e3dd53 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "docs:deploy": "gh-pages -d docs-dist", "gh-pages": "npm run docs:build && npm run docs:deploy", "compile": "father build && lessc assets/index.less assets/index.css", - "prepublishOnly": "npm run compile && np --yolo --no-publish && npm run gh-pages", + "prepublishOnly": "npm run compile && rc-np", "lint": "eslint src/ --ext .ts,.tsx,.jsx,.js,.md", "prettier": "prettier --write \"**/*.{ts,tsx,js,jsx,json,md}\"", "test": "rc-test", @@ -47,7 +47,8 @@ "classnames": "^2.3.2" }, "devDependencies": { - "@rc-component/father-plugin": "^1.0.0", + "@rc-component/father-plugin": "^2.0.2", + "@rc-component/np": "^1.0.3", "@testing-library/jest-dom": "^6.1.5", "@testing-library/react": "^16.0.1", "@testing-library/user-event": "^14.5.2", @@ -68,7 +69,6 @@ "identity-obj-proxy": "^3.0.0", "less": "^4.1.3", "lint-staged": "^15.0.2", - "np": "^10.0.5", "prettier": "^3.1.0", "rc-select": "^14.16.4", "rc-test": "^7.0.15", diff --git a/src/Pagination.tsx b/src/Pagination.tsx index ff4ac02e..14afe207 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -119,7 +119,7 @@ const Pagination: React.FC = (props) => { /> ); if (typeof icon === 'function') { - iconNode = React.createElement(icon, { ...props }); + iconNode = React.createElement(icon, props); } return iconNode as React.ReactNode; } From eb2b65e0abe964af56464cd0938b3042f89c68f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8C=E8=B4=A7=E6=9C=BA=E5=99=A8=E4=BA=BA?= Date: Fri, 7 Feb 2025 10:53:45 +0800 Subject: [PATCH 252/262] chore: rm useless deps --- package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/package.json b/package.json index a1e3dd53..c5c21660 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,6 @@ "prepare": "husky" }, "dependencies": { - "@babel/runtime": "^7.10.1", "@rc-component/util": "^1.2.0", "classnames": "^2.3.2" }, From 47c07cee34817e3e91ca860b635f2d371567fa2d Mon Sep 17 00:00:00 2001 From: thinkasany <480968828@qq.com> Date: Wed, 19 Feb 2025 14:59:38 +0800 Subject: [PATCH 253/262] feat: support classnames and styles (#641) --- src/Pager.tsx | 3 +++ src/Pagination.tsx | 4 ++++ src/interface.ts | 4 ++++ tests/index.test.tsx | 13 +++++++++++++ 4 files changed, 24 insertions(+) diff --git a/src/Pager.tsx b/src/Pager.tsx index 2d357787..483ca6db 100644 --- a/src/Pager.tsx +++ b/src/Pager.tsx @@ -8,6 +8,7 @@ export interface PagerProps extends Pick { page: number; active?: boolean; className?: string; + style?: React.CSSProperties; showTitle: boolean; onClick?: (page: number) => void; onKeyPress?: ( @@ -23,6 +24,7 @@ const Pager: React.FC = (props) => { page, active, className, + style, showTitle, onClick, onKeyPress, @@ -54,6 +56,7 @@ const Pager: React.FC = (props) => {
  • = (props) => { prefixCls = 'rc-pagination', selectPrefixCls = 'rc-select', className, + classNames: paginationClassNames, + styles, // control current: currentProp, @@ -332,6 +334,8 @@ const Pagination: React.FC = (props) => { showTitle, itemRender, page: -1, + className: paginationClassNames?.item, + style: styles?.item, }; const prevPage = current - 1 > 0 ? current - 1 : 0; diff --git a/src/interface.ts b/src/interface.ts index 68e2198d..b37a0788 100644 --- a/src/interface.ts +++ b/src/interface.ts @@ -18,7 +18,11 @@ export interface PaginationLocale { page_size?: string; } +type SemanticName = 'item'; + export interface PaginationData { + styles?: Partial>; + classNames?: Partial>; className: string; selectPrefixCls: string; prefixCls: string; diff --git a/tests/index.test.tsx b/tests/index.test.tsx index 7efb5407..9b57e113 100644 --- a/tests/index.test.tsx +++ b/tests/index.test.tsx @@ -241,6 +241,19 @@ describe('Controlled Pagination', () => { }); describe('Other props', () => { + it('support classnames and styles', () => { + const { container } = render( + , + ); + const item = container.querySelector('.rc-pagination-item'); + expect(item).toHaveClass('custom-test'); + expect(item).toHaveStyle('color: red'); + }); it('should support custom default icon', () => { const nextIcon = () => nextIcon; const prevIcon = () => prevIcon; From c6cd4dbe40b628ffdf2e0eeb7b9df622e9f9a7d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8C=E8=B4=A7=E6=9C=BA=E5=99=A8=E4=BA=BA?= Date: Wed, 19 Feb 2025 15:02:00 +0800 Subject: [PATCH 254/262] chore: bump version to 1.1.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c5c21660..d3dc2455 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@rc-component/pagination", - "version": "1.0.0", + "version": "1.1.0", "description": "pagination ui component for react", "keywords": [ "react", From cdd2a2889e28b9098c81b48882c2db59e3c62040 Mon Sep 17 00:00:00 2001 From: thinkasany <480968828@qq.com> Date: Thu, 20 Feb 2025 16:16:27 +0800 Subject: [PATCH 255/262] feat: add item for prev/next (#642) * feat: add item for prev/next * add test * add test --- src/Pagination.tsx | 6 ++++-- tests/index.test.tsx | 18 ++++++++++++++++++ 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/src/Pagination.tsx b/src/Pagination.tsx index 75d868a7..77b7d785 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -523,9 +523,10 @@ const Pagination: React.FC = (props) => { onClick={prevHandle} tabIndex={prevDisabled ? null : 0} onKeyDown={runIfEnterPrev} - className={classNames(`${prefixCls}-prev`, { + className={classNames(`${prefixCls}-prev`, paginationClassNames?.item, { [`${prefixCls}-disabled`]: prevDisabled, })} + style={styles?.item} aria-disabled={prevDisabled} > {prev} @@ -551,9 +552,10 @@ const Pagination: React.FC = (props) => { onClick={nextHandle} tabIndex={nextTabIndex} onKeyDown={runIfEnterNext} - className={classNames(`${prefixCls}-next`, { + className={classNames(`${prefixCls}-next`, paginationClassNames?.item, { [`${prefixCls}-disabled`]: nextDisabled, })} + style={styles?.item} aria-disabled={nextDisabled} > {next} diff --git a/tests/index.test.tsx b/tests/index.test.tsx index 9b57e113..4e616e2c 100644 --- a/tests/index.test.tsx +++ b/tests/index.test.tsx @@ -251,8 +251,26 @@ describe('Other props', () => { />, ); const item = container.querySelector('.rc-pagination-item'); + const prev = container.querySelector('.rc-pagination-prev'); + const next = container.querySelector('.rc-pagination-next'); expect(item).toHaveClass('custom-test'); + expect(prev).toHaveClass('custom-test'); + expect(next).toHaveClass('custom-test'); expect(item).toHaveStyle('color: red'); + expect(prev).toHaveStyle('color: red'); + expect(next).toHaveStyle('color: red'); + }); + it('should have 5 items when there are 3 pages and current page is 2', () => { + const { container } = render( + , + ); + const items = container.querySelectorAll('.custom-test'); + expect(items.length).toBe(5); }); it('should support custom default icon', () => { const nextIcon = () => nextIcon; From 3f3da3d71abdaee5f00304320af202903b58bdb5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8C=E8=B4=A7=E6=9C=BA=E5=99=A8=E4=BA=BA?= Date: Thu, 20 Feb 2025 16:19:15 +0800 Subject: [PATCH 256/262] chore: bump version to 1.1.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index d3dc2455..93528fb5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@rc-component/pagination", - "version": "1.1.0", + "version": "1.1.1", "description": "pagination ui component for react", "keywords": [ "react", From 5f897f666296649b03caf8a80681a667f70d83b9 Mon Sep 17 00:00:00 2001 From: Radha Rani <142741446+radha-rani-n@users.noreply.github.com> Date: Wed, 11 Jun 2025 23:29:12 -0400 Subject: [PATCH 257/262] add telugu language support (#656) --- src/locale/te_IN.ts | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 src/locale/te_IN.ts diff --git a/src/locale/te_IN.ts b/src/locale/te_IN.ts new file mode 100644 index 00000000..ea162c3c --- /dev/null +++ b/src/locale/te_IN.ts @@ -0,0 +1,20 @@ +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + //options + items_per_page: '/ పేజీ', + jump_to: 'వెళ్ళండి', + jump_to_confirm: 'నిర్ధారించండి', + page: 'పేజీ', + + //pagination + prev_page: 'మునుపటి పేజీ', + next_page: 'తదుపరి పేజీ', + prev_5: 'మునుపటి 5 పేజీలు', + next_5: 'తదుపరి 5 పేజీలు', + prev_3: 'మునుపటి 3 పేజీలు', + next_3: 'తదుపరి 3 పేజీలు', + page_size: 'పేజీ పరిమాణం', +}; + +export default locale; From d9904339c2b840dea5dc4601d8ea154221e089f3 Mon Sep 17 00:00:00 2001 From: EmilyyyLiu <100924403+EmilyyyLiu@users.noreply.github.com> Date: Tue, 16 Sep 2025 14:37:41 +0800 Subject: [PATCH 258/262] refactor: Upgrade utils and replace useMergedState (#657) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * refactor: Upgrade utils and replace useMergedState * Update src/Pagination.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update src/Pagination.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --------- Co-authored-by: 刘欢 Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- package.json | 2 +- src/Pagination.tsx | 25 ++++++++++++++----------- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index 93528fb5..6874deba 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "prepare": "husky" }, "dependencies": { - "@rc-component/util": "^1.2.0", + "@rc-component/util": "^1.3.0", "classnames": "^2.3.2" }, "devDependencies": { diff --git a/src/Pagination.tsx b/src/Pagination.tsx index 77b7d785..d20993bf 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -1,5 +1,5 @@ import classNames from 'classnames'; -import useMergedState from '@rc-component/util/lib/hooks/useMergedState'; +import useControlledState from '@rc-component/util/lib/hooks/useControlledState'; import KeyCode from '@rc-component/util/lib/KeyCode'; import pickAttrs from '@rc-component/util/lib/pickAttrs'; import warning from '@rc-component/util/lib/warning'; @@ -75,17 +75,20 @@ const Pagination: React.FC = (props) => { const paginationRef = React.useRef(null); - const [pageSize, setPageSize] = useMergedState(10, { - value: pageSizeProp, - defaultValue: defaultPageSize, - }); + const [pageSize, setPageSize] = useControlledState( + defaultPageSize, + pageSizeProp, + ); - const [current, setCurrent] = useMergedState(1, { - value: currentProp, - defaultValue: defaultCurrent, - postState: (c) => - Math.max(1, Math.min(c, calculatePage(undefined, pageSize, total))), - }); + const [internalCurrent, setCurrent] = useControlledState( + defaultCurrent, + currentProp, + ); + + const current = Math.max( + 1, + Math.min(internalCurrent, calculatePage(undefined, pageSize, total)), + ); const [internalInputVal, setInternalInputVal] = React.useState(current); From b8515b735f1b24c0680482ee732c92262881a31e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8C=E8=B4=A7=E6=9C=BA=E5=99=A8=E4=BA=BA?= Date: Tue, 16 Sep 2025 14:40:28 +0800 Subject: [PATCH 259/262] chore: bump version to 1.1.2 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 6874deba..fd921d2c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@rc-component/pagination", - "version": "1.1.1", + "version": "1.1.2", "description": "pagination ui component for react", "keywords": [ "react", From 270ddcc901a946de84bc31ee7f2044c8f384fc70 Mon Sep 17 00:00:00 2001 From: divyeshagrawal <138372682+divyeshagrawal@users.noreply.github.com> Date: Fri, 26 Sep 2025 08:21:45 +0530 Subject: [PATCH 260/262] feat: Add Marathi language support (#658) * feat: Add Marathi language support * feat: update translations --- src/locale/mr_IN.ts | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 src/locale/mr_IN.ts diff --git a/src/locale/mr_IN.ts b/src/locale/mr_IN.ts new file mode 100644 index 00000000..eec6ec25 --- /dev/null +++ b/src/locale/mr_IN.ts @@ -0,0 +1,20 @@ +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options + items_per_page: '/ पृष्ठ', + jump_to: 'यावर जा ', + jump_to_confirm: 'पुष्टी करा', + page: 'पृष्ठ', + + // Pagination + prev_page: 'मागील पृष्ठ', + next_page: 'पुढील पृष्ठ', + prev_5: 'मागील ५ पृष्ठे', + next_5: 'पुढील ५ पृष्ठे', + prev_3: 'मागील ३ पृष्ठे', + next_3: 'पुढील ३ पृष्ठे', + page_size: 'पृष्ठ आकार', +}; + +export default locale; From f755b4739d06d643ac5a7547bec660cb8200777d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8C=E8=B4=A7=E6=9C=BA=E5=99=A8=E4=BA=BA?= Date: Fri, 26 Sep 2025 11:06:16 +0800 Subject: [PATCH 261/262] chore: bump version to 1.1.3 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index fd921d2c..1192ecc5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@rc-component/pagination", - "version": "1.1.2", + "version": "1.1.3", "description": "pagination ui component for react", "keywords": [ "react", From 9f6b74cbad3a3ddbe42c9a08621de7cb24dce7b7 Mon Sep 17 00:00:00 2001 From: lijianan <574980606@qq.com> Date: Sun, 28 Sep 2025 14:49:21 +0800 Subject: [PATCH 262/262] perf: uninstall classnames, install clsx (#659) --- package.json | 3 ++- src/Pager.tsx | 4 ++-- src/Pagination.tsx | 16 ++++++++-------- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index 1192ecc5..9e665ddb 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ }, "dependencies": { "@rc-component/util": "^1.3.0", - "classnames": "^2.3.2" + "clsx": "^2.1.1" }, "devDependencies": { "@rc-component/father-plugin": "^2.0.2", @@ -52,6 +52,7 @@ "@testing-library/react": "^16.0.1", "@testing-library/user-event": "^14.5.2", "@types/jest": "^29.2.2", + "@types/node": "^24.5.2", "@types/react": "^19.0.8", "@types/react-dom": "^19.0.3", "@umijs/fabric": "^4.0.1", diff --git a/src/Pager.tsx b/src/Pager.tsx index 483ca6db..0d1dcc4f 100644 --- a/src/Pager.tsx +++ b/src/Pager.tsx @@ -1,5 +1,5 @@ /* eslint react/prop-types: 0 */ -import classNames from 'classnames'; +import { clsx } from 'clsx'; import React from 'react'; import type { PaginationProps } from './interface'; @@ -32,7 +32,7 @@ const Pager: React.FC = (props) => { } = props; const prefixCls = `${rootPrefixCls}-item`; - const cls = classNames( + const cls = clsx( prefixCls, `${prefixCls}-${page}`, { diff --git a/src/Pagination.tsx b/src/Pagination.tsx index d20993bf..dbc977d4 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -1,4 +1,4 @@ -import classNames from 'classnames'; +import { clsx } from 'clsx'; import useControlledState from '@rc-component/util/lib/hooks/useControlledState'; import KeyCode from '@rc-component/util/lib/KeyCode'; import pickAttrs from '@rc-component/util/lib/pickAttrs'; @@ -446,7 +446,7 @@ const Pagination: React.FC = (props) => { onClick={jumpPrevHandle} tabIndex={0} onKeyDown={runIfEnterJumpPrev} - className={classNames(`${prefixCls}-jump-prev`, { + className={clsx(`${prefixCls}-jump-prev`, { [`${prefixCls}-jump-prev-custom-icon`]: !!jumpPrevIcon, })} > @@ -461,7 +461,7 @@ const Pagination: React.FC = (props) => { onClick={jumpNextHandle} tabIndex={0} onKeyDown={runIfEnterJumpNext} - className={classNames(`${prefixCls}-jump-next`, { + className={clsx(`${prefixCls}-jump-next`, { [`${prefixCls}-jump-next-custom-icon`]: !!jumpNextIcon, })} > @@ -488,7 +488,7 @@ const Pagination: React.FC = (props) => { if (current - 1 >= pageBufferSize * 2 && current !== 1 + 2) { pagerList[0] = React.cloneElement(pagerList[0], { - className: classNames( + className: clsx( `${prefixCls}-item-after-jump-prev`, pagerList[0].props.className, ), @@ -500,7 +500,7 @@ const Pagination: React.FC = (props) => { if (allPages - current >= pageBufferSize * 2 && current !== allPages - 2) { const lastOne = pagerList[pagerList.length - 1]; pagerList[pagerList.length - 1] = React.cloneElement(lastOne, { - className: classNames( + className: clsx( `${prefixCls}-item-before-jump-next`, lastOne.props.className, ), @@ -526,7 +526,7 @@ const Pagination: React.FC = (props) => { onClick={prevHandle} tabIndex={prevDisabled ? null : 0} onKeyDown={runIfEnterPrev} - className={classNames(`${prefixCls}-prev`, paginationClassNames?.item, { + className={clsx(`${prefixCls}-prev`, paginationClassNames?.item, { [`${prefixCls}-disabled`]: prevDisabled, })} style={styles?.item} @@ -555,7 +555,7 @@ const Pagination: React.FC = (props) => { onClick={nextHandle} tabIndex={nextTabIndex} onKeyDown={runIfEnterNext} - className={classNames(`${prefixCls}-next`, paginationClassNames?.item, { + className={clsx(`${prefixCls}-next`, paginationClassNames?.item, { [`${prefixCls}-disabled`]: nextDisabled, })} style={styles?.item} @@ -566,7 +566,7 @@ const Pagination: React.FC = (props) => { ); } - const cls = classNames(prefixCls, className, { + const cls = clsx(prefixCls, className, { [`${prefixCls}-start`]: align === 'start', [`${prefixCls}-center`]: align === 'center', [`${prefixCls}-end`]: align === 'end',
  • @@ -38,4 +37,4 @@ class Hello extends React.Component { } } -ReactDOM.render(, document.getElementById('__react-content')); +export default App; diff --git a/examples/stupid.html b/examples/stupid.html deleted file mode 100644 index 48cdce85..00000000 --- a/examples/stupid.html +++ /dev/null @@ -1 +0,0 @@ -placeholder diff --git a/examples/stupid.js b/examples/stupid.js index cbec4a9b..b5f66021 100644 --- a/examples/stupid.js +++ b/examples/stupid.js @@ -3,9 +3,6 @@ import Pagination from 'rc-pagination'; import React from 'react'; import ReactDOM from 'react-dom'; -import 'rc-pagination/assets/index.less'; +import '../assets/index.less'; -ReactDOM.render( - , - document.getElementById('__react-content') -); +export default () => ; diff --git a/examples/styles.html b/examples/styles.html deleted file mode 100644 index b3a42524..00000000 --- a/examples/styles.html +++ /dev/null @@ -1 +0,0 @@ -placeholder \ No newline at end of file diff --git a/examples/styles.js b/examples/styles.js index 5f264430..bed7ca74 100644 --- a/examples/styles.js +++ b/examples/styles.js @@ -1,9 +1,7 @@ -import 'rc-pagination/assets/index.less'; +import '../assets/index.less'; import Pagination from 'rc-pagination'; import React from 'react'; -import ReactDOM from 'react-dom'; -ReactDOM.render( - , - document.getElementById('__react-content') +export default () => ( + ); diff --git a/index.js b/index.js index 9f594e65..fd4d7e5c 100644 --- a/index.js +++ b/index.js @@ -1 +1 @@ -export { default } from './src/'; +module.exports = require('./src/'); diff --git a/jest.config.js b/jest.config.js new file mode 100644 index 00000000..66a2c875 --- /dev/null +++ b/jest.config.js @@ -0,0 +1,3 @@ +module.exports = { + snapshotSerializers: [require.resolve('enzyme-to-json/serializer')], +}; diff --git a/package.json b/package.json index 34f65f83..d70c8bfe 100644 --- a/package.json +++ b/package.json @@ -6,10 +6,20 @@ "react", "react-component", "react-pagination", - "pagination" + "pagination", + "antd", + "pager" ], - "homepage": "http://github.com/react-component/pagination", - "author": "i@xiaoba.me", + "main": "./lib/index", + "module": "./es/index", + "files": [ + "assets/*.css", + "assets/*.less", + "es", + "lib", + "dist" + ], + "homepage": "https://react-component.github.io/pagination", "repository": { "type": "git", "url": "git@github.com:react-component/pagination.git" @@ -18,56 +28,56 @@ "url": "http://github.com/react-component/pagination/issues" }, "license": "MIT", - "files": [ - "dist", - "lib", - "es", - "assets/*.css", - "rc-pagination.d.ts" - ], - "main": "lib/index", - "module": "es/index", - "types": "rc-pagination.d.ts", - "config": { - "port": 3000, - "entry": { - "rc-pagination": [ - "./src/index.js", - "./assets/index.less" - ] - } - }, "scripts": { - "dist": "rc-tools run dist", - "build": "rc-tools run build", - "compile": "rc-tools run compile --babel-runtime", - "gh-pages": "rc-tools run gh-pages", - "start": "rc-tools run server", - "pub": "rc-tools run pub --babel-runtime", - "lint": "rc-tools run lint", - "lint:fix": "rc-tools run lint --fix", - "karma": "rc-test run karma", - "saucelabs": "rc-test run saucelabs", - "test": "rc-test run test", - "chrome-test": "rc-test run chrome-test", - "coverage": "rc-test run coverage", - "now-build": "npm run build" + "start": "cross-env NODE_ENV=development father doc dev --storybook", + "build": "father doc build --storybook", + "compile": "father build && lessc assets/index.less assets/index.css", + "gh-pages": "npm run build && father doc deploy", + "prepublishOnly": "npm run compile && np --yolo --no-publish && npm run gh-pages", + "lint": "eslint src/ --ext .ts,.tsx,.jsx,.js,.md", + "prettier": "prettier --write \"**/*.{ts,tsx,js,jsx,json,md}\"", + "pretty-quick": "pretty-quick", + "test": "father test", + "coverage": "father test --coverage" + }, + "dependencies": { + "classnames": "^2.2.1" }, "devDependencies": { - "core-js": "^3.1.4", - "expect.js": "0.3.x", - "pre-commit": "1.x", - "rc-select": "9.x", - "rc-test": "^6.0.1", - "rc-tools": "6.x", - "react": "^16.5.2", - "react-dom": "^16.5.2" + "@types/classnames": "^2.2.9", + "@types/react": "^16.9.2", + "@types/react-dom": "^16.9.0", + "@umijs/fabric": "^1.1.10", + "coveralls": "^3.0.6", + "cross-env": "^6.0.0", + "enzyme": "^3.0.0", + "enzyme-adapter-react-16": "^1.0.1", + "enzyme-to-json": "^3.4.0", + "eslint": "^6.6.0", + "father": "^2.13.4", + "husky": "^3.0.9", + "less": "^3.10.3", + "np": "^5.1.0", + "prettier": "^1.18.2", + "pretty-quick": "^2.0.1", + "react": "^16.0.0", + "react-dom": "^16.0.0", + "react-test-renderer": "^16.0.0", + "rc-select": "^10.0.1" }, - "pre-commit": [ - "lint" - ], - "dependencies": { - "babel-runtime": "6.x", - "classnames": "^2.2.6" + "peerDependencies": { + "react": "^16.0.0", + "react-dom": "^16.0.0" + }, + "husky": { + "hooks": { + "pre-commit": "pretty-quick --staged" + } + }, + "cnpm": { + "mode": "npm" + }, + "tnpm": { + "mode": "npm" } } diff --git a/tests/helper/two-pagination.jsx b/tests/helper/two-pagination.jsx index a95140aa..0f8d4695 100644 --- a/tests/helper/two-pagination.jsx +++ b/tests/helper/two-pagination.jsx @@ -1,4 +1,4 @@ -import 'rc-select/assets/index.css'; +import 'rc-select/assets/index.less'; import Pagination from '../../src'; import React from 'react'; import Select from 'rc-select'; @@ -11,7 +11,7 @@ class Hello extends React.Component { this.setState({ pageSize: 50, }); - } + }; render() { return (
    diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 00000000..2f0b5855 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,14 @@ +{ + "compilerOptions": { + "target": "esnext", + "module": "commonjs", + "lib": ["dom", "es2017"], + "jsx": "react", + "strict": true, + "esModuleInterop": true, + "experimentalDecorators": true, + "emitDecoratorMetadata": true, + "skipLibCheck": true, + "declaration": true + } +} From a18df2a6ebb6656f155f0c6efc8dd1c6d030414f Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 16:02:22 +0800 Subject: [PATCH 021/262] prettier code and auto fix eslint --- HISTORY.md | 133 ++++++------- README.md | 58 +++--- dist/rc-pagination.js | 4 +- now.json | 2 +- rc-pagination.d.ts | 8 +- src/Options.jsx | 74 ++++---- src/Pager.jsx | 2 +- src/Pagination.jsx | 191 ++++++++++--------- src/locale/nl_BE.js | 8 +- src/locale/nl_NL.js | 8 +- tests/Pagination.spec.js | 392 ++++++++++++++++++++++----------------- 11 files changed, 459 insertions(+), 421 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index 39e4ba44..d69314b2 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,128 +1,103 @@ -2.0.0 -================== +# 2.0.0 -* Remove prop-types and react-lifecycles-compat +- Remove prop-types and react-lifecycles-compat -1.20.0 -================== + # 1.20.0 -* Add locale `ms_MY` +- Add locale `ms_MY` -1.19.0 -================== + # 1.19.0 -* Support Latvian localization +- Support Latvian localization -1.18.0 -================== + # 1.18.0 -* Support `disabled` +- Support `disabled` -1.17.0 -================== + # 1.17.0 -* Add `prevIcon`, `nextIcon`, `jumpPrevIcon`, `jumpNextIcon`. +- Add `prevIcon`, `nextIcon`, `jumpPrevIcon`, `jumpNextIcon`. -1.16.1 -================== + # 1.16.1 -* Add locale `sl_SI`. #130 +- Add locale `sl_SI`. #130 -1.16.0 -================== + # 1.16.0 -* Add locale `id_ID` -* Add prop `showPrevNextJumpers` +- Add locale `id_ID` +- Add prop `showPrevNextJumpers` -1.15.2 -================== + # 1.15.2 -* Add locale `tr_TR`. +- Add locale `tr_TR`. -1.12.0 -================== + # 1.12.0 -* `itemRender(current, type)` => `itemRender(current, type, element): element`. +- `itemRender(current, type)` => `itemRender(current, type, element): element`. -1.11.0 -================== + # 1.11.0 -* Add `goButton`. +- Add `goButton`. -1.10.0 -================== + # 1.10.0 -* Add `itemRender`. +- Add `itemRender`. -1.9.0 -================== + # 1.9.0 -* Add keyboard support -* Add es folder. +- Add keyboard support +- Add es folder. -1.8.0 -================== + # 1.8.0 -* Add locale `zh_TW`. -* Add `showTitle`. +- Add locale `zh_TW`. +- Add `showTitle`. -1.7.5 -================== + # 1.7.5 -* Add locale `sk_SK(Slovak)`. +- Add locale `sk_SK(Slovak)`. -1.7.4 -================== + # 1.7.4 -* Add locale `et_EE(Estonian)`. +- Add locale `et_EE(Estonian)`. -1.7.3 -================== + # 1.7.3 -* Add locale `Czech`. +- Add locale `Czech`. -1.7.2 -================== + # 1.7.2 -* Add locale `ko_KR(Korean)`. +- Add locale `ko_KR(Korean)`. -1.7.1 -================== + # 1.7.1 -* Add locale `ca_ES (Catalan)`. +- Add locale `ca_ES (Catalan)`. -1.7.0 -================== + # 1.7.0 -* support `showLessItems`. #55 -* Add `pageSize` as onChange's second argument. +- support `showLessItems`. #55 +- Add `pageSize` as onChange's second argument. -1.6.0 -================== + # 1.6.0 -* Add `range` as showTotal's second argument. +- Add `range` as showTotal's second argument. -1.5.5 / 2016-09-01 -================== + # 1.5.5 / 2016-09-01 -* Fix #34 +- Fix #34 -1.5.4 / 2016-07-31 -================== + # 1.5.4 / 2016-07-31 -* Add space before per page #33 +- Add space before per page #33 -1.5.0 / 2016-03-02 -================== + # 1.5.0 / 2016-03-02 -* Add `defaultPageSize` and fix `pageSize` to a controlled prop +- Add `defaultPageSize` and fix `pageSize` to a controlled prop -1.3.0 / 2015-11-25 -================== + # 1.3.0 / 2015-11-25 -* Add `defaultCurrent` prop +- Add `defaultCurrent` prop -1.2.0 -================== + # 1.2.0 -* Allow specifying the page size for **sizeChanger** +- Allow specifying the page size for **sizeChanger** diff --git a/README.md b/README.md index 33765858..8baff20f 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ # rc-pagination + --- React Pagination Component. @@ -34,7 +35,7 @@ online example: http://react-component.github.io/pagination/examples/ ## Feature -* support ie9,ie9+,chrome,firefox,safari +- support ie9,ie9+,chrome,firefox,safari ## Install @@ -50,34 +51,33 @@ React.render(, container); ## API -| Parameter | Description | Type | Default | -|------------------|------------------------------------|---------------|--------------------------| -| disabled | disable pagination | Bool | - | -| defaultCurrent | uncontrolled current page | Number | 1 | -| current | current page | Number | undefined | -| total | items total count | Number | 0 | -| defaultPageSize | default items per page | Number | 10 | -| pageSize | items per page | Number | 10 | -| onChange | page change callback | Function(current, pageSize) | - | -| showSizeChanger | show pageSize changer | Bool | false | -| pageSizeOptions | specify the sizeChanger selections | Array | ['10', '20', '30', '40'] | -| onShowSizeChange | pageSize change callback | Function(current, size) | - | -| hideOnSinglePage | hide on single page | Bool | false | -| showPrevNextJumpers | show jump-prev, jump-next | Bool | true | -| showQuickJumper | show quick goto jumper | Bool / Object | false / {goButton: true} | -| showTotal | show total records and range | Function(total, [from, to]) | - | -| className | className of pagination | String | - | -| simple | when set, show simple pager | Object | null | -| locale | to set l10n config | Object | [zh_CN](https://github.com/react-component/pagination/blob/master/src/locale/zh_CN.js) | -| style | the style of pagination | Object | {} | -| showLessItems | show less page items | Bool | false | -| showTitle | show page items title | Bool | true | -| itemRender | custom page item renderer | Function(current, type: 'page' | 'prev' | 'next' | 'jump-prev' | 'jump-next', element): React.ReactNode| `(current, type, element) => element` | -| prevIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | -| nextIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | -| jumpPrevIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | -| jumpNextIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | - +| Parameter | Description | Type | Default | +| ------------------- | ----------------------------------- | -------------------------------------------------- | -------------------------------------------------------------------------------------- | +| disabled | disable pagination | Bool | - | +| defaultCurrent | uncontrolled current page | Number | 1 | +| current | current page | Number | undefined | +| total | items total count | Number | 0 | +| defaultPageSize | default items per page | Number | 10 | +| pageSize | items per page | Number | 10 | +| onChange | page change callback | Function(current, pageSize) | - | +| showSizeChanger | show pageSize changer | Bool | false | +| pageSizeOptions | specify the sizeChanger selections | Array | ['10', '20', '30', '40'] | +| onShowSizeChange | pageSize change callback | Function(current, size) | - | +| hideOnSinglePage | hide on single page | Bool | false | +| showPrevNextJumpers | show jump-prev, jump-next | Bool | true | +| showQuickJumper | show quick goto jumper | Bool / Object | false / {goButton: true} | +| showTotal | show total records and range | Function(total, [from, to]) | - | +| className | className of pagination | String | - | +| simple | when set, show simple pager | Object | null | +| locale | to set l10n config | Object | [zh_CN](https://github.com/react-component/pagination/blob/master/src/locale/zh_CN.js) | +| style | the style of pagination | Object | {} | +| showLessItems | show less page items | Bool | false | +| showTitle | show page items title | Bool | true | +| itemRender | custom page item renderer | Function(current, type: 'page' | 'prev' | 'next' | 'jump-prev' | 'jump-next', element): React.ReactNode | `(current, type, element) => element` | +| prevIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | +| nextIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | +| jumpPrevIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | +| jumpNextIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | ## License diff --git a/dist/rc-pagination.js b/dist/rc-pagination.js index 95368a9a..5e86d0b6 100644 --- a/dist/rc-pagination.js +++ b/dist/rc-pagination.js @@ -3818,8 +3818,8 @@ }); for ( - var es6Symbols = // 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 - 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'.split( + var es6Symbols = 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'.split( + // 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 ',', ), j = 0; diff --git a/now.json b/now.json index 68715170..2eb01e64 100644 --- a/now.json +++ b/now.json @@ -8,4 +8,4 @@ "config": { "distDir": "build" } } ] -} \ No newline at end of file +} diff --git a/rc-pagination.d.ts b/rc-pagination.d.ts index f57ba79e..7a1da96c 100644 --- a/rc-pagination.d.ts +++ b/rc-pagination.d.ts @@ -32,9 +32,13 @@ declare module 'rc-pagination' { export interface PaginationProps extends Partial { onChange?: (page: number, pageSize: number) => void; onShowSizeChange?: (current: number, size: number) => void; - itemRender?: (page: number, type: string, element: React.ReactNode) => React.ReactNode; + itemRender?: ( + page: number, + type: string, + element: React.ReactNode, + ) => React.ReactNode; showTotal?: (total: number, range: [number, number]) => React.ReactNode; } - export default class Pagination extends React.Component { } + export default class Pagination extends React.Component {} } diff --git a/src/Options.jsx b/src/Options.jsx index 8f9ad83a..d5f8194a 100644 --- a/src/Options.jsx +++ b/src/Options.jsx @@ -16,38 +16,34 @@ class Options extends React.Component { return !goInputText || isNaN(goInputText) ? current : Number(goInputText); } - buildOptionText = (value) => { - return `${value} ${this.props.locale.items_per_page}`; - } + buildOptionText = value => `${value} ${this.props.locale.items_per_page}`; - changeSize = (value) => { + changeSize = value => { this.props.changeSize(Number(value)); - } + }; - handleChange = (e) => { + handleChange = e => { this.setState({ goInputText: e.target.value, }); - } + }; - handleBlur = (e) => { + handleBlur = e => { const { goButton, quickGo, rootPrefixCls } = this.props; if (goButton) { return; } if ( e.relatedTarget && - ( - e.relatedTarget.className.indexOf(`${rootPrefixCls}-prev`) >= 0 || - e.relatedTarget.className.indexOf(`${rootPrefixCls}-next`) >= 0 - ) + (e.relatedTarget.className.indexOf(`${rootPrefixCls}-prev`) >= 0 || + e.relatedTarget.className.indexOf(`${rootPrefixCls}-next`) >= 0) ) { return; } quickGo(this.getValidValue()); - } + }; - go = (e) => { + go = e => { const { goInputText } = this.state; if (goInputText === '') { return; @@ -58,13 +54,21 @@ class Options extends React.Component { }); this.props.quickGo(this.getValidValue()); } - } + }; render() { const { - pageSize, pageSizeOptions, locale, rootPrefixCls, changeSize, - quickGo, goButton, selectComponentClass, buildOptionText, - selectPrefixCls, disabled, + pageSize, + pageSizeOptions, + locale, + rootPrefixCls, + changeSize, + quickGo, + goButton, + selectComponentClass, + buildOptionText, + selectPrefixCls, + disabled, } = this.props; const { goInputText } = this.state; const prefixCls = `${rootPrefixCls}-options`; @@ -97,29 +101,27 @@ class Options extends React.Component { getPopupContainer={triggerNode => triggerNode.parentNode} > {options} - + ); } if (quickGo) { if (goButton) { - gotoButton = typeof goButton === 'boolean' ? ( - - ) : ( - - {goButton} - - ); + gotoButton = + typeof goButton === 'boolean' ? ( + + ) : ( + + {goButton} + + ); } goInput = (
    diff --git a/src/Pager.jsx b/src/Pager.jsx index a4958518..49ec7130 100644 --- a/src/Pager.jsx +++ b/src/Pager.jsx @@ -2,7 +2,7 @@ import React from 'react'; import classNames from 'classnames'; -const Pager = (props) => { +const Pager = props => { const prefixCls = `${props.rootPrefixCls}-item`; const cls = classNames(prefixCls, `${prefixCls}-${props.page}`, { [`${prefixCls}-active`]: props.active, diff --git a/src/Pagination.jsx b/src/Pagination.jsx index f63c55e0..1784ee52 100644 --- a/src/Pagination.jsx +++ b/src/Pagination.jsx @@ -6,13 +6,12 @@ import Options from './Options'; import KEYCODE from './KeyCode'; import LOCALE from './locale/zh_CN'; -function noop() { -} +function noop() {} function isInteger(value) { - return typeof value === 'number' && - isFinite(value) && - Math.floor(value) === value; + return ( + typeof value === 'number' && isFinite(value) && Math.floor(value) === value + ); } function defaultItemRender(page, type, element) { @@ -53,9 +52,11 @@ class Pagination extends React.Component { super(props); const hasOnChange = props.onChange !== noop; - const hasCurrent = ('current' in props); + const hasCurrent = 'current' in props; if (hasCurrent && !hasOnChange) { - console.warn('Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.'); // eslint-disable-line + console.warn( + 'Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.', + ); // eslint-disable-line } let current = props.defaultCurrent; @@ -83,7 +84,7 @@ class Pagination extends React.Component { const { prefixCls } = this.props; if (prevState.current !== this.state.current && this.paginationNode) { const lastCurrentNode = this.paginationNode.querySelector( - `.${prefixCls}-item-${prevState.current}` + `.${prefixCls}-item-${prevState.current}`, ); if (lastCurrentNode && document.activeElement === lastCurrentNode) { lastCurrentNode.blur(); @@ -103,7 +104,7 @@ class Pagination extends React.Component { } if ('pageSize' in props && props.pageSize !== prevState.pageSize) { - let current = prevState.current; + let { current } = prevState; const newCurrent = calculatePage(props.pageSize, prevState, props); current = current > newCurrent ? newCurrent : current; @@ -117,31 +118,28 @@ class Pagination extends React.Component { return newState; } - getJumpPrevPage = () => { - return Math.max(1, this.state.current - (this.props.showLessItems ? 3 : 5)); - } + getJumpPrevPage = () => + Math.max(1, this.state.current - (this.props.showLessItems ? 3 : 5)); - getJumpNextPage = () => { - return Math.min( + getJumpNextPage = () => + Math.min( calculatePage(undefined, this.state, this.props), - this.state.current + (this.props.showLessItems ? 3 : 5) + this.state.current + (this.props.showLessItems ? 3 : 5), ); - } /** * computed icon node that need to be rendered. * @param {React.ReactNode | React.ComponentType} icon received icon. * @returns {React.ReactNode} */ - getItemIcon = (icon) => { + getItemIcon = icon => { const { prefixCls } = this.props; - let iconNode = icon - || ; + let iconNode = icon || ; if (typeof icon === 'function') { iconNode = React.createElement(icon, { ...this.props }); } return iconNode; - } + }; getValidValue(e) { const inputValue = e.target.value; @@ -160,13 +158,11 @@ class Pagination extends React.Component { return value; } - savePaginationNode = (node) => { + savePaginationNode = node => { this.paginationNode = node; - } + }; - isValid = (page) => { - return isInteger(page) && page !== this.state.current; - } + isValid = page => isInteger(page) && page !== this.state.current; shouldDisplayQuickJumper = () => { const { showQuickJumper, pageSize, total } = this.props; @@ -174,15 +170,15 @@ class Pagination extends React.Component { return false; } return showQuickJumper; - } + }; - handleKeyDown = (e) => { + handleKeyDown = e => { if (e.keyCode === KEYCODE.ARROW_UP || e.keyCode === KEYCODE.ARROW_DOWN) { e.preventDefault(); } - } + }; - handleKeyUp = (e) => { + handleKeyUp = e => { const value = this.getValidValue(e); const { currentInputValue } = this.state; if (value !== currentInputValue) { @@ -197,10 +193,10 @@ class Pagination extends React.Component { } else if (e.keyCode === KEYCODE.ARROW_DOWN) { this.handleChange(value + 1); } - } + }; - changePageSize = (size) => { - let current = this.state.current; + changePageSize = size => { + let { current } = this.state; const newCurrent = calculatePage(size, this.state, this.props); current = current > newCurrent ? newCurrent : current; // fix the issue: @@ -223,9 +219,9 @@ class Pagination extends React.Component { } } this.props.onShowSizeChange(current, size); - } + }; - handleChange = (p) => { + handleChange = p => { const { disabled } = this.props; let page = p; @@ -244,95 +240,99 @@ class Pagination extends React.Component { }); } - const pageSize = this.state.pageSize; + const { pageSize } = this.state; this.props.onChange(page, pageSize); return page; } return this.state.current; - } + }; prev = () => { if (this.hasPrev()) { this.handleChange(this.state.current - 1); } - } + }; next = () => { if (this.hasNext()) { this.handleChange(this.state.current + 1); } - } + }; jumpPrev = () => { this.handleChange(this.getJumpPrevPage()); - } + }; jumpNext = () => { this.handleChange(this.getJumpNextPage()); - } + }; - hasPrev = () => { - return this.state.current > 1; - } + hasPrev = () => this.state.current > 1; - hasNext = () => { - return this.state.current < calculatePage(undefined, this.state, this.props); - } + hasNext = () => + this.state.current < calculatePage(undefined, this.state, this.props); runIfEnter = (event, callback, ...restParams) => { if (event.key === 'Enter' || event.charCode === 13) { callback(...restParams); } - } + }; runIfEnterPrev = e => { this.runIfEnter(e, this.prev); - } + }; runIfEnterNext = e => { this.runIfEnter(e, this.next); - } + }; runIfEnterJumpPrev = e => { this.runIfEnter(e, this.jumpPrev); - } + }; runIfEnterJumpNext = e => { this.runIfEnter(e, this.jumpNext); - } + }; handleGoTO = e => { if (e.keyCode === KEYCODE.ENTER || e.type === 'click') { this.handleChange(this.state.currentInputValue); } - } + }; renderPrev(prevPage) { const { prevIcon, itemRender } = this.props; const prevButton = itemRender(prevPage, 'prev', this.getItemIcon(prevIcon)); const disabled = !this.hasPrev(); - return isValidElement(prevButton) ? cloneElement(prevButton, { disabled }) : prevButton; + return isValidElement(prevButton) + ? cloneElement(prevButton, { disabled }) + : prevButton; } renderNext(nextPage) { const { nextIcon, itemRender } = this.props; const nextButton = itemRender(nextPage, 'next', this.getItemIcon(nextIcon)); const disabled = !this.hasNext(); - return isValidElement(nextButton) ? cloneElement(nextButton, { disabled }) : nextButton; + return isValidElement(nextButton) + ? cloneElement(nextButton, { disabled }) + : nextButton; } render() { const { prefixCls, className, disabled } = this.props; // When hideOnSinglePage is true and there is only 1 page, hide the pager - if (this.props.hideOnSinglePage === true && this.props.total <= this.state.pageSize) { + if ( + this.props.hideOnSinglePage === true && + this.props.total <= this.state.pageSize + ) { return null; } - const props = this.props; - const locale = props.locale; + const { props } = this; + const { locale } = props; const allPages = calculatePage(undefined, this.state, this.props); const pagerList = []; @@ -342,7 +342,7 @@ class Pagination extends React.Component { let lastPager = null; let gotoButton = null; - const goButton = (props.showQuickJumper && props.showQuickJumper.goButton); + const goButton = props.showQuickJumper && props.showQuickJumper.goButton; const pageBufferSize = props.showLessItems ? 1 : 2; const { current, pageSize } = this.state; @@ -350,7 +350,11 @@ class Pagination extends React.Component { const nextPage = current + 1 < allPages ? current + 1 : allPages; const dataOrAriaAttributeProps = Object.keys(props).reduce((prev, key) => { - if ((key.substr(0, 5) === 'data-' || key.substr(0, 5) === 'aria-' || key === 'role')) { + if ( + key.substr(0, 5) === 'data-' || + key.substr(0, 5) === 'aria-' || + key === 'role' + ) { prev[key] = props[key]; } return prev; @@ -370,15 +374,18 @@ class Pagination extends React.Component { ); } else { gotoButton = ( - {goButton} + + {goButton} + ); } gotoButton = (
  • {gotoButton} @@ -398,7 +405,9 @@ class Pagination extends React.Component { onClick={this.prev} tabIndex={this.hasPrev() ? 0 : null} onKeyPress={this.runIfEnterPrev} - className={`${this.hasPrev() ? '' : `${prefixCls}-disabled`} ${prefixCls}-prev`} + className={`${ + this.hasPrev() ? '' : `${prefixCls}-disabled` + } ${prefixCls}-prev`} aria-disabled={!this.hasPrev()} > {this.renderPrev(prevPage)} @@ -423,7 +432,9 @@ class Pagination extends React.Component { onClick={this.next} tabIndex={this.hasPrev() ? 0 : null} onKeyPress={this.runIfEnterNext} - className={`${this.hasNext() ? '' : `${prefixCls}-disabled`} ${prefixCls}-next`} + className={`${ + this.hasNext() ? '' : `${prefixCls}-disabled` + } ${prefixCls}-next`} aria-disabled={!this.hasNext()} > {this.renderNext(nextPage)} @@ -449,18 +460,13 @@ class Pagination extends React.Component { key="noPager" page={allPages} className={`${prefixCls}-disabled`} - /> + />, ); } for (let i = 1; i <= allPages; i++) { const active = this.state.current === i; pagerList.push( - + , ); } } else { @@ -483,7 +489,7 @@ class Pagination extends React.Component { {props.itemRender( this.getJumpPrevPage(), 'jump-prev', - this.getItemIcon(props.jumpPrevIcon) + this.getItemIcon(props.jumpPrevIcon), )}
  • ); @@ -503,7 +509,7 @@ class Pagination extends React.Component { {props.itemRender( this.getJumpNextPage(), 'jump-next', - this.getItemIcon(props.jumpNextIcon) + this.getItemIcon(props.jumpNextIcon), )} ); @@ -560,7 +566,7 @@ class Pagination extends React.Component { active={active} showTitle={props.showTitle} itemRender={props.itemRender} - /> + />, ); } @@ -570,10 +576,16 @@ class Pagination extends React.Component { }); pagerList.unshift(jumpPrev); } - if (allPages - current >= pageBufferSize * 2 && current !== allPages - 2) { - pagerList[pagerList.length - 1] = React.cloneElement(pagerList[pagerList.length - 1], { - className: `${prefixCls}-item-before-jump-next`, - }); + if ( + allPages - current >= pageBufferSize * 2 && + current !== allPages - 2 + ) { + pagerList[pagerList.length - 1] = React.cloneElement( + pagerList[pagerList.length - 1], + { + className: `${prefixCls}-item-before-jump-next`, + }, + ); pagerList.push(jumpNext); } @@ -590,13 +602,10 @@ class Pagination extends React.Component { if (props.showTotal) { totalText = (
  • - {props.showTotal( - props.total, - [ - props.total === 0 ? 0 : (current - 1) * pageSize + 1, - current * pageSize > props.total ? props.total : current * pageSize, - ] - )} + {props.showTotal(props.total, [ + props.total === 0 ? 0 : (current - 1) * pageSize + 1, + current * pageSize > props.total ? props.total : current * pageSize, + ])}
  • ); } @@ -618,7 +627,9 @@ class Pagination extends React.Component { onClick={this.prev} tabIndex={prevDisabled ? null : 0} onKeyPress={this.runIfEnterPrev} - className={`${!prevDisabled ? '' : `${prefixCls}-disabled`} ${prefixCls}-prev`} + className={`${ + !prevDisabled ? '' : `${prefixCls}-disabled` + } ${prefixCls}-prev`} aria-disabled={prevDisabled} > {this.renderPrev(prevPage)} @@ -629,7 +640,9 @@ class Pagination extends React.Component { onClick={this.next} tabIndex={nextDisabled ? null : 0} onKeyPress={this.runIfEnterNext} - className={`${!nextDisabled ? '' : `${prefixCls}-disabled`} ${prefixCls}-next`} + className={`${ + !nextDisabled ? '' : `${prefixCls}-disabled` + } ${prefixCls}-next`} aria-disabled={nextDisabled} > {this.renderNext(nextPage)} diff --git a/src/locale/nl_BE.js b/src/locale/nl_BE.js index 26a327b3..c588e1e2 100644 --- a/src/locale/nl_BE.js +++ b/src/locale/nl_BE.js @@ -8,8 +8,8 @@ export default { // Pagination.jsx prev_page: 'Vorige pagina', next_page: 'Volgende pagina', - prev_5: 'Vorige 5 pagina\'s', - next_5: 'Volgende 5 pagina\'s', - prev_3: 'Vorige 3 pagina\'s', - next_3: 'Volgende 3 pagina\'s', + prev_5: "Vorige 5 pagina's", + next_5: "Volgende 5 pagina's", + prev_3: "Vorige 3 pagina's", + next_3: "Volgende 3 pagina's", }; diff --git a/src/locale/nl_NL.js b/src/locale/nl_NL.js index 26a327b3..c588e1e2 100644 --- a/src/locale/nl_NL.js +++ b/src/locale/nl_NL.js @@ -8,8 +8,8 @@ export default { // Pagination.jsx prev_page: 'Vorige pagina', next_page: 'Volgende pagina', - prev_5: 'Vorige 5 pagina\'s', - next_5: 'Volgende 5 pagina\'s', - prev_3: 'Vorige 3 pagina\'s', - next_3: 'Volgende 3 pagina\'s', + prev_5: "Vorige 5 pagina's", + next_5: "Volgende 5 pagina's", + prev_3: "Vorige 3 pagina's", + next_3: "Volgende 3 pagina's", }; diff --git a/tests/Pagination.spec.js b/tests/Pagination.spec.js index 44108624..f5200df0 100644 --- a/tests/Pagination.spec.js +++ b/tests/Pagination.spec.js @@ -22,8 +22,12 @@ describe('Uncontrolled Pagination', () => { } function shouldHighlightRight() { - const pagers = TestUtils.scryRenderedDOMComponentsWithTag(pagination, 'li') - .filter(pager => pager.className.indexOf('rc-pagination-total-text') === -1); + const pagers = TestUtils.scryRenderedDOMComponentsWithTag( + pagination, + 'li', + ).filter( + pager => pager.className.indexOf('rc-pagination-total-text') === -1, + ); const current2 = pagination.state.current; pagers.forEach((pager, index) => { // page starts from 1 @@ -35,17 +39,19 @@ describe('Uncontrolled Pagination', () => { }); } - beforeEach((done) => { + beforeEach(done => { ReactDOM.render( `${range[0]} - ${range[1]} of ${total} items`} + showTotal={(total, range) => + `${range[0]} - ${range[1]} of ${total} items` + } />, container, - function () { + function() { pagination = this; done(); }, @@ -65,18 +71,23 @@ describe('Uncontrolled Pagination', () => { it('prev-button should be disabled', () => { const prevButton = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-prev' + 'rc-pagination-prev', ); expect(TestUtils.isDOMComponent(prevButton)).to.be(true); expect(prevButton.className).to.contain('rc-pagination-disabled'); expect(prevButton.getAttribute('aria-disabled')).to.equal('true'); }); - it('should hightlight current page and not highlight other page', shouldHighlightRight); + it( + 'should hightlight current page and not highlight other page', + shouldHighlightRight, + ); it('should calc page right', () => { const pagers = TestUtils.scryRenderedDOMComponentsWithTag(pagination, 'li') - .filter(pager => pager.className.indexOf('rc-pagination-total-text') === -1) + .filter( + pager => pager.className.indexOf('rc-pagination-total-text') === -1, + ) .filter(pager => pager.className.indexOf('rc-pagination-options') === -1); const knownPageCount = 3; const buttonLength = 2; @@ -86,7 +97,7 @@ describe('Uncontrolled Pagination', () => { it('next button should not be disabled', () => { const nextButton = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-next' + 'rc-pagination-next', ); expect(TestUtils.isDOMComponent(nextButton)).to.be(true); @@ -94,8 +105,11 @@ describe('Uncontrolled Pagination', () => { expect(nextButton.getAttribute('aria-disabled')).to.equal('false'); }); - it('should response mouse click right', (done) => { - const pagers = TestUtils.scryRenderedDOMComponentsWithClass(pagination, 'rc-pagination-item'); + it('should response mouse click right', done => { + const pagers = TestUtils.scryRenderedDOMComponentsWithClass( + pagination, + 'rc-pagination-item', + ); expect(pagers.length).to.be(3); const page2 = pagers[1]; expect(TestUtils.isDOMComponent(page2)).to.be(true); @@ -111,10 +125,10 @@ describe('Uncontrolled Pagination', () => { }, 10); }); - it('should response next page', (done) => { + it('should response next page', done => { const nextButton = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-next' + 'rc-pagination-next', ); expect(TestUtils.isDOMComponent(nextButton)).to.be(true); Simulate.click(nextButton); @@ -126,10 +140,10 @@ describe('Uncontrolled Pagination', () => { }, 10); }); - it('should quick jump to expect page', (done) => { + it('should quick jump to expect page', done => { const quickJumper = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-options-quick-jumper' + 'rc-pagination-options-quick-jumper', ); const input = quickJumper.querySelector('input'); const goButton = quickJumper.querySelector('button'); @@ -149,10 +163,10 @@ describe('Uncontrolled Pagination', () => { }); // https://github.com/ant-design/ant-design/issues/17763 - it('should not jump when blur input when there is goButton', (done) => { + it('should not jump when blur input when there is goButton', done => { const quickJumper = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-options-quick-jumper' + 'rc-pagination-options-quick-jumper', ); const input = quickJumper.querySelector('input'); Simulate.change(input, { target: { value: '2' } }); @@ -167,13 +181,14 @@ describe('Uncontrolled Pagination', () => { }); // https://github.com/ant-design/ant-design/issues/17763 - it('should not jump when blur input when there is not goButton', (done) => { + it('should not jump when blur input when there is not goButton', done => { ReactDOM.render( , container, - function () { + function() { const quickJumper = TestUtils.findRenderedDOMComponentWithClass( - this, 'rc-pagination-options-quick-jumper', + this, + 'rc-pagination-options-quick-jumper', ); const input = quickJumper.querySelector('input'); Simulate.change(input, { target: { value: '2' } }); @@ -189,29 +204,32 @@ describe('Uncontrolled Pagination', () => { }); // https://github.com/ant-design/ant-design/issues/15539 - it('should hide quick jumper when only one page', (done) => { + it('should hide quick jumper when only one page', done => { ReactDOM.render( , container, - function () { + function() { expect(() => { - TestUtils.findRenderedDOMComponentWithClass(this, 'rc-pagination-options-quick-jumper'); + TestUtils.findRenderedDOMComponentWithClass( + this, + 'rc-pagination-options-quick-jumper', + ); }).to.throwException(/Did not find exactly one match/); done(); }, ); }); - it('should display total items', (done) => { + it('should display total items', done => { const totalText = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-total-text' + 'rc-pagination-total-text', ); expect(TestUtils.isDOMComponent(totalText)).to.be(true); expect(totalText.innerHTML).to.be('1 - 10 of 25 items'); const nextButton = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-next' + 'rc-pagination-next', ); Simulate.click(nextButton); setTimeout(() => { @@ -237,14 +255,14 @@ describe('Controlled Pagination', () => { pageSize = pSize; } - beforeEach((done) => { + beforeEach(done => { ReactDOM.render( , container, - function () { + function() { pagination = this; done(); - } + }, ); }); @@ -252,7 +270,7 @@ describe('Controlled Pagination', () => { ReactDOM.unmountComponentAtNode(container); }); - it('not replace currentInputValue if current not change', (done) => { + it('not replace currentInputValue if current not change', done => { pagination.state.current = 1; pagination.state.currentInputValue = 1; pagination.forceUpdate(); @@ -273,10 +291,10 @@ describe('Controlled Pagination', () => { expect(pagination.state.current).to.be(2); }); - it('should not response mouse click', (done) => { + it('should not response mouse click', done => { const nextButton = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-next' + 'rc-pagination-next', ); expect(TestUtils.isDOMComponent(nextButton)).to.be(true); Simulate.click(nextButton); @@ -294,8 +312,8 @@ describe('Two Pagination', () => { const container = document.createElement('div'); document.body.appendChild(container); - beforeEach((done) => { - ReactDOM.render(, container, function () { + beforeEach(done => { + ReactDOM.render(, container, function() { entry = this; done(); }); @@ -312,7 +330,7 @@ describe('Two Pagination', () => { expect(p2.state.pageSize).to.be(20); }); - it('should sync pageSize via state', (done) => { + it('should sync pageSize via state', done => { const p1 = TestUtils.scryRenderedComponentsWithType(entry, Pagination)[0]; const p2 = TestUtils.scryRenderedComponentsWithType(entry, Pagination)[1]; const hook = TestUtils.scryRenderedDOMComponentsWithClass(entry, 'hook')[0]; @@ -331,22 +349,18 @@ describe('itemRender', () => { const currentPage = 12; document.body.appendChild(container); - const itemRender = (current) => { + const itemRender = current => { return
    {current}; }; - beforeEach((done) => { + beforeEach(done => { ReactDOM.render( - , + , container, - function () { + function() { pagination = this; done(); - } + }, ); }); @@ -357,53 +371,59 @@ describe('itemRender', () => { it('should support custom itemRender', () => { const prev = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-prev' + 'rc-pagination-prev', ); const next = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-next' + 'rc-pagination-next', ); const jumpPrev = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-jump-prev' + 'rc-pagination-jump-prev', ); const jumpNext = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-jump-next' + 'rc-pagination-jump-next', ); const active = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-item-active' + 'rc-pagination-item-active', + ); + expect(prev.innerHTML).to.be( + `${currentPage - 1}`, + ); + expect(next.innerHTML).to.be( + `${currentPage + 1}`, + ); + expect(jumpPrev.innerHTML).to.be( + `${currentPage - 5}`, + ); + expect(jumpNext.innerHTML).to.be( + `${currentPage + 5}`, + ); + expect(active.innerHTML).to.be( + `${currentPage}`, ); - expect(prev.innerHTML).to.be(`${currentPage - 1}`); - expect(next.innerHTML).to.be(`${currentPage + 1}`); - expect(jumpPrev.innerHTML).to.be(`${currentPage - 5}`); - expect(jumpNext.innerHTML).to.be(`${currentPage + 5}`); - expect(active.innerHTML).to.be(`${currentPage}`); }); - it('should support pass disabled to prev and next buttons', (done) => { + it('should support pass disabled to prev and next buttons', done => { ReactDOM.unmountComponentAtNode(container); ReactDOM.render( - , + , container, - function () { + function() { const prev = TestUtils.findRenderedDOMComponentWithClass( this, - 'rc-pagination-prev' + 'rc-pagination-prev', ); const next = TestUtils.findRenderedDOMComponentWithClass( this, - 'rc-pagination-next' + 'rc-pagination-next', ); expect(prev.innerHTML).to.be(`0`); expect(next.innerHTML).to.be(`2`); done(); - } + }, ); }); }); @@ -423,18 +443,14 @@ describe('Other props', () => { jumpPrevIcon, jumpNextIcon, }; - beforeEach((done) => { + beforeEach(done => { ReactDOM.render( - , + , container, - function () { + function() { pagination = this; done(); - } + }, ); }); @@ -445,19 +461,19 @@ describe('Other props', () => { it('should support custom default icon', () => { const nextIconElement = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-next' + 'rc-pagination-next', ); const prevIconElement = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-prev' + 'rc-pagination-prev', ); const jumpNextIconElement = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-jump-next' + 'rc-pagination-jump-next', ); const jumpPrevIconElement = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-jump-prev' + 'rc-pagination-jump-prev', ); expect(nextIconElement.innerText).to.be('nextIcon'); expect(prevIconElement.innerText).to.be('prevIcon'); @@ -470,7 +486,7 @@ describe('hideOnSinglePage props', () => { const container = document.createElement('div'); document.body.appendChild(container); - const itemRender = (current) => { + const itemRender = current => { return {current}; }; @@ -478,42 +494,51 @@ describe('hideOnSinglePage props', () => { ReactDOM.unmountComponentAtNode(container); }); - it('should hide pager if hideOnSinglePage equals true', (done) => { + it('should hide pager if hideOnSinglePage equals true', done => { ReactDOM.render( , container, - function () { + function() { expect(() => { TestUtils.findRenderedDOMComponentWithClass(this, 'rc-pagination'); }).to.throwException(/Did not find exactly one match/); done(); - } + }, ); }); - it('should show pager if hideOnSinglePage equals false', (done) => { + it('should show pager if hideOnSinglePage equals false', done => { ReactDOM.render( - , + , container, - function () { + function() { expect(() => { TestUtils.findRenderedDOMComponentWithClass(this, 'rc-pagination'); }).to.not.throwException(); done(); - } + }, ); }); - it('should show pager if hideOnSinglePage equals true but more than 1 page', (done) => { + it('should show pager if hideOnSinglePage equals true but more than 1 page', done => { ReactDOM.render( - , + , container, - function () { + function() { expect(() => { TestUtils.findRenderedDOMComponentWithClass(this, 'rc-pagination'); }).to.not.throwException(); done(); - } + }, ); }); }); @@ -527,39 +552,49 @@ describe('showPrevNextJumpers props', () => { ReactDOM.unmountComponentAtNode(container); }); - it('should hide jump-prev, jump-next if showPrevNextJumpers equals false', (done) => { + it('should hide jump-prev, jump-next if showPrevNextJumpers equals false', done => { ReactDOM.render( - , + , container, - function () { + function() { expect(() => { - TestUtils.findRenderedDOMComponentWithClass(this, 'rc-pagination-jump-prev'); + TestUtils.findRenderedDOMComponentWithClass( + this, + 'rc-pagination-jump-prev', + ); }).to.throwException(/Did not find exactly one match/); expect(() => { - TestUtils.findRenderedDOMComponentWithClass(this, 'rc-pagination-jump-next'); + TestUtils.findRenderedDOMComponentWithClass( + this, + 'rc-pagination-jump-next', + ); }).to.throwException(/Did not find exactly one match/); done(); - } + }, ); }); - it('should show jump-prev, jump-next if showPrevNextJumpers equals true', (done) => { + it('should show jump-prev, jump-next if showPrevNextJumpers equals true', done => { ReactDOM.render( , container, - function () { + function() { const jumpPrev = TestUtils.findRenderedDOMComponentWithClass( this, - 'rc-pagination-jump-prev' + 'rc-pagination-jump-prev', ); const jumpNext = TestUtils.findRenderedDOMComponentWithClass( this, - 'rc-pagination-jump-next' + 'rc-pagination-jump-next', ); expect(TestUtils.isDOMComponent(jumpPrev)).to.be(true); expect(TestUtils.isDOMComponent(jumpNext)).to.be(true); done(); - } + }, ); }); }); @@ -576,17 +611,19 @@ describe('custom showQuickJumper button Pagination', () => { pageSize = pSize; } - beforeEach((done) => { + beforeEach(done => { ReactDOM.render( go }} - showTotal={(total, range) => `${range[0]} - ${range[1]} of ${total} items`} + showTotal={(total, range) => + `${range[0]} - ${range[1]} of ${total} items` + } />, container, - function () { + function() { pagination = this; done(); }, @@ -597,10 +634,10 @@ describe('custom showQuickJumper button Pagination', () => { ReactDOM.unmountComponentAtNode(container); }); - it('should quick jump to expect page', (done) => { + it('should quick jump to expect page', done => { const quickJumper = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-options-quick-jumper' + 'rc-pagination-options-quick-jumper', ); const input = quickJumper.querySelector('input'); const goButton = quickJumper.querySelector('button'); @@ -621,14 +658,14 @@ describe('custom showQuickJumper button Pagination', () => { }); // https://github.com/ant-design/ant-design/issues/10080 - it('should not quick jump to previous page when input invalid char', (done) => { + it('should not quick jump to previous page when input invalid char', done => { const pager = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination' + 'rc-pagination', ); const nextButton = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-next' + 'rc-pagination-next', ); Simulate.click(nextButton); const input = pager.querySelector('input'); @@ -644,22 +681,23 @@ describe('custom showQuickJumper button Pagination', () => { }); }); - describe('simple Pagination', () => { let pagination = null; const container = document.createElement('div'); document.body.appendChild(container); - beforeEach((done) => { + beforeEach(done => { ReactDOM.render( `${range[0]} - ${range[1]} of ${total} items`} + showTotal={(total, range) => + `${range[0]} - ${range[1]} of ${total} items` + } />, container, - function () { + function() { pagination = this; done(); }, @@ -678,7 +716,7 @@ describe('simple Pagination', () => { it('prev-button should be disabled', () => { const prevButton = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-prev' + 'rc-pagination-prev', ); expect(TestUtils.isDOMComponent(prevButton)).to.be(true); expect(prevButton.className).to.contain('rc-pagination-disabled'); @@ -688,7 +726,7 @@ describe('simple Pagination', () => { it('no quick jump', () => { const simplePagers = TestUtils.scryRenderedDOMComponentsWithClass( pagination, - 'rc-pagination-simple-pager' + 'rc-pagination-simple-pager', ); expect(simplePagers.length).to.be(1); }); @@ -699,15 +737,11 @@ describe('simple Pagination when current is greater pages', () => { const container = document.createElement('div'); document.body.appendChild(container); - beforeEach((done) => { + beforeEach(done => { ReactDOM.render( - , + , container, - function () { + function() { pagination = this; done(); }, @@ -723,10 +757,10 @@ describe('simple Pagination when current is greater pages', () => { expect(current3).to.be(3); }); - it('input number is greater pages', (done) => { + it('input number is greater pages', done => { const greaterCurrent = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-simple' + 'rc-pagination-simple', ); const input = greaterCurrent.querySelector('input'); input.value = '313423434343343452121'; @@ -739,7 +773,6 @@ describe('simple Pagination when current is greater pages', () => { }); }); - describe('simple Pagination with quick jump', () => { let pagination = null; const container = document.createElement('div'); @@ -752,7 +785,7 @@ describe('simple Pagination with quick jump', () => { pageSize = pSize; } - beforeEach((done) => { + beforeEach(done => { ReactDOM.render( { defaultCurrent={1} total={25} showQuickJumper={{ goButton: }} - showTotal={(total, range) => `${range[0]} - ${range[1]} of ${total} items`} + showTotal={(total, range) => + `${range[0]} - ${range[1]} of ${total} items` + } />, container, - function () { + function() { pagination = this; done(); }, @@ -774,10 +809,10 @@ describe('simple Pagination with quick jump', () => { ReactDOM.unmountComponentAtNode(container); }); - it('should quick jump to expect page', (done) => { + it('should quick jump to expect page', done => { const quickJumper = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-simple' + 'rc-pagination-simple', ); const input = quickJumper.querySelector('input'); const goButton = quickJumper.querySelector('button'); @@ -805,11 +840,11 @@ describe('current value on onShowSizeChange when total is 0', () => { const container = document.createElement('div'); document.body.appendChild(container); - const onShowSizeChange = (current) => { + const onShowSizeChange = current => { changeCurrent = current; }; - beforeEach((done) => { + beforeEach(done => { ReactDOM.render( { onShowSizeChange={onShowSizeChange} current={1} total={0} - showTotal={(total, range) => `${range[0]} - ${range[1]} of ${total} items`} + showTotal={(total, range) => + `${range[0]} - ${range[1]} of ${total} items` + } />, container, - function () { + function() { pagination = this; done(); }, @@ -831,10 +868,10 @@ describe('current value on onShowSizeChange when total is 0', () => { ReactDOM.unmountComponentAtNode(container); }); - it('current should equal to the current in onShowSizeChange', (done) => { + it('current should equal to the current in onShowSizeChange', done => { const sizeChanger = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-options-size-changer' + 'rc-pagination-options-size-changer', ); Simulate.click(sizeChanger); setTimeout(() => { @@ -852,7 +889,7 @@ describe('current value on onShowSizeChange when total is 0', () => { it('when total is 0, pager should show and disabled', () => { const itemButton = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-item' + 'rc-pagination-item', ); expect(TestUtils.isDOMComponent(itemButton)).to.be(true); expect(itemButton.className).to.contain('rc-pagination-item-disabled'); @@ -861,7 +898,7 @@ describe('current value on onShowSizeChange when total is 0', () => { it('when total is 0, `from` and `to` should be 0', () => { const totalText = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-total-text' + 'rc-pagination-total-text', ); expect(TestUtils.isDOMComponent(totalText)).to.be(true); expect(totalText.innerHTML).to.be('0 - 0 of 0 items'); @@ -874,7 +911,7 @@ describe('data and aria props', () => { document.body.appendChild(container); describe('with simple prop', () => { - beforeEach((done) => { + beforeEach(done => { ReactDOM.render( { role="navigation" />, container, - function () { + function() { pagination = this; done(); }, @@ -897,22 +934,30 @@ describe('data and aria props', () => { }); it('renders data attributes', () => { - expect(pagination.paginationNode.getAttribute('data-test')).to.be('test-id'); + expect(pagination.paginationNode.getAttribute('data-test')).to.be( + 'test-id', + ); expect(pagination.paginationNode.getAttribute('data-id')).to.be('12345'); }); it('renders aria attributes', () => { - expect(pagination.paginationNode.getAttribute('aria-labelledby')).to.be('labelledby-id'); - expect(pagination.paginationNode.getAttribute('aria-label')).to.be('label-id'); + expect(pagination.paginationNode.getAttribute('aria-labelledby')).to.be( + 'labelledby-id', + ); + expect(pagination.paginationNode.getAttribute('aria-label')).to.be( + 'label-id', + ); }); it('renders role attribute', () => { - expect(pagination.paginationNode.getAttribute('role')).to.be('navigation'); + expect(pagination.paginationNode.getAttribute('role')).to.be( + 'navigation', + ); }); }); describe('without simple prop', () => { - beforeEach((done) => { + beforeEach(done => { ReactDOM.render( { role="navigation" />, container, - function () { + function() { pagination = this; done(); }, @@ -934,17 +979,25 @@ describe('data and aria props', () => { }); it('renders data attributes', () => { - expect(pagination.paginationNode.getAttribute('data-test')).to.be('test-id'); + expect(pagination.paginationNode.getAttribute('data-test')).to.be( + 'test-id', + ); expect(pagination.paginationNode.getAttribute('data-id')).to.be('12345'); }); it('renders aria attributes', () => { - expect(pagination.paginationNode.getAttribute('aria-labelledby')).to.be('labelledby-id'); - expect(pagination.paginationNode.getAttribute('aria-label')).to.be('label-id'); + expect(pagination.paginationNode.getAttribute('aria-labelledby')).to.be( + 'labelledby-id', + ); + expect(pagination.paginationNode.getAttribute('aria-label')).to.be( + 'label-id', + ); }); it('renders role attribute', () => { - expect(pagination.paginationNode.getAttribute('role')).to.be('navigation'); + expect(pagination.paginationNode.getAttribute('role')).to.be( + 'navigation', + ); }); }); }); @@ -957,7 +1010,7 @@ describe('disabled', () => { ReactDOM.unmountComponentAtNode(container); }); - it('full pagination', (done) => { + it('full pagination', done => { ReactDOM.render( { disabled />, container, - function () { + function() { const pagination = this; // Root expect( TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-disabled' - ) + 'rc-pagination-disabled', + ), ).to.be.ok(); expect( - TestUtils.findRenderedDOMComponentWithTag( - pagination, - 'input' - ) + TestUtils.findRenderedDOMComponentWithTag(pagination, 'input'), ).to.be.ok(); expect( - TestUtils.findRenderedComponentWithType( - pagination, - Select, - ).props.disabled + TestUtils.findRenderedComponentWithType(pagination, Select).props + .disabled, ).to.be.ok(); expect( - TestUtils.findRenderedDOMComponentWithTag( - pagination, - 'input' - ).disabled + TestUtils.findRenderedDOMComponentWithTag(pagination, 'input') + .disabled, ).to.be.ok(); expect( - TestUtils.findRenderedDOMComponentWithTag( - pagination, - 'button' - ).disabled + TestUtils.findRenderedDOMComponentWithTag(pagination, 'button') + .disabled, ).to.be.ok(); done(); @@ -1024,7 +1068,7 @@ describe('Pagination with jumper', () => { current = page; } - beforeEach((done) => { + beforeEach(done => { ReactDOM.render( { showQuickJumper />, container, - function () { + function() { pagination = this; done(); }, @@ -1045,10 +1089,10 @@ describe('Pagination with jumper', () => { current = 10; }); - it('when input less than 1', (done) => { + it('when input less than 1', done => { const quickJumper = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-options-quick-jumper' + 'rc-pagination-options-quick-jumper', ); const input = quickJumper.querySelector('input'); expect(TestUtils.isDOMComponent(input)).to.be(true); @@ -1064,10 +1108,10 @@ describe('Pagination with jumper', () => { }, 10); }); - it('when input onBlur', (done) => { + it('when input onBlur', done => { const quickJumper = TestUtils.findRenderedDOMComponentWithClass( pagination, - 'rc-pagination-options-quick-jumper' + 'rc-pagination-options-quick-jumper', ); const input = quickJumper.querySelector('input'); expect(TestUtils.isDOMComponent(input)).to.be(true); From b1ac0b02f7270fb5e13c27a5a1fb2cb6e17ace8d Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 16:14:51 +0800 Subject: [PATCH 022/262] fix eslint errors --- .eslintrc.js | 1 + src/Options.jsx | 1 + src/Pagination.jsx | 19 ++++++++++++------- 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index cf8ad0b5..fc4eec67 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -9,5 +9,6 @@ module.exports = { 'react/no-array-index-key': 0, 'react/sort-comp': 0, '@typescript-eslint/no-explicit-any': 0, + 'jsx-a11y/no-noninteractive-tabindex': 0, }, }; diff --git a/src/Options.jsx b/src/Options.jsx index d5f8194a..e120b581 100644 --- a/src/Options.jsx +++ b/src/Options.jsx @@ -13,6 +13,7 @@ class Options extends React.Component { getValidValue() { const { goInputText, current } = this.state; + // eslint-disable-next-line no-restricted-globals return !goInputText || isNaN(goInputText) ? current : Number(goInputText); } diff --git a/src/Pagination.jsx b/src/Pagination.jsx index 1784ee52..e2cd7f70 100644 --- a/src/Pagination.jsx +++ b/src/Pagination.jsx @@ -10,6 +10,7 @@ function noop() {} function isInteger(value) { return ( + // eslint-disable-next-line no-restricted-globals typeof value === 'number' && isFinite(value) && Math.floor(value) === value ); } @@ -19,10 +20,7 @@ function defaultItemRender(page, type, element) { } function calculatePage(p, state, props) { - let pageSize = p; - if (typeof pageSize === 'undefined') { - pageSize = state.pageSize; - } + const pageSize = typeof p === 'undefined' ? state.pageSize : p; return Math.floor((props.total - 1) / pageSize) + 1; } @@ -54,18 +52,21 @@ class Pagination extends React.Component { const hasOnChange = props.onChange !== noop; const hasCurrent = 'current' in props; if (hasCurrent && !hasOnChange) { + // eslint-disable-next-line no-console console.warn( 'Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.', - ); // eslint-disable-line + ); } let current = props.defaultCurrent; if ('current' in props) { + // eslint-disable-next-line prefer-destructuring current = props.current; } let pageSize = props.defaultPageSize; if ('pageSize' in props) { + // eslint-disable-next-line prefer-destructuring pageSize = props.pageSize; } @@ -134,6 +135,7 @@ class Pagination extends React.Component { */ getItemIcon = icon => { const { prefixCls } = this.props; + // eslint-disable-next-line jsx-a11y/anchor-has-content let iconNode = icon || ; if (typeof icon === 'function') { iconNode = React.createElement(icon, { ...this.props }); @@ -148,6 +150,7 @@ class Pagination extends React.Component { let value; if (inputValue === '') { value = inputValue; + // eslint-disable-next-line no-restricted-globals } else if (isNaN(Number(inputValue))) { value = currentInputValue; } else if (inputValue >= allPages) { @@ -202,6 +205,7 @@ class Pagination extends React.Component { // fix the issue: // Once 'total' is 0, 'current' in 'onShowSizeChange' is 0, which is not correct. if (newCurrent === 0) { + // eslint-disable-next-line prefer-destructuring current = this.state.current; } @@ -355,6 +359,7 @@ class Pagination extends React.Component { key.substr(0, 5) === 'aria-' || key === 'role' ) { + // eslint-disable-next-line no-param-reassign prev[key] = props[key]; } return prev; @@ -463,7 +468,7 @@ class Pagination extends React.Component { />, ); } - for (let i = 1; i <= allPages; i++) { + for (let i = 1; i <= allPages; i += 1) { const active = this.state.current === i; pagerList.push( , @@ -553,7 +558,7 @@ class Pagination extends React.Component { left = allPages - pageBufferSize * 2; } - for (let i = left; i <= right; i++) { + for (let i = left; i <= right; i += 1) { const active = current === i; pagerList.push( Date: Thu, 27 Feb 2020 16:43:18 +0800 Subject: [PATCH 023/262] mirgrate test case --- .../{Pagination.spec.js => Pagination.xx.js} | 0 tests/index.test.js | 80 +++++++++++++++++++ 2 files changed, 80 insertions(+) rename tests/{Pagination.spec.js => Pagination.xx.js} (100%) create mode 100644 tests/index.test.js diff --git a/tests/Pagination.spec.js b/tests/Pagination.xx.js similarity index 100% rename from tests/Pagination.spec.js rename to tests/Pagination.xx.js diff --git a/tests/index.test.js b/tests/index.test.js new file mode 100644 index 00000000..86599655 --- /dev/null +++ b/tests/index.test.js @@ -0,0 +1,80 @@ +import React from 'react'; +import { mount } from 'enzyme'; +import Pagination from '../src'; + +describe('Uncontrolled Pagination', () => { + let wrapper; + const onChange = jest.fn(); + + function shouldHighlightRight() { + const pagers = wrapper.find('li:not(.rc-pagination-total-text)'); + pagers.forEach((pager, index) => { + // page starts from 1 + if (index === wrapper.state().current) { + expect(pager.hasClass('rc-pagination-item-active')).toBe(true); + } else { + expect(pager.hasClass('rc-pagination-item-active')).toBe(false); + } + }); + } + + beforeEach(() => { + wrapper = mount( + + `${range[0]} - ${range[1]} of ${total} items` + } + />, + ); + }); + + afterEach(() => { + wrapper.unmount(); + onChange.mockReset(); + }); + + it('default current page is 1', () => { + expect(wrapper.state().current).toBe(1); + }); + + it('prev-button should be disabled', () => { + const prevButton = wrapper.find('.rc-pagination-prev'); + expect(prevButton.hasClass('rc-pagination-disabled')).toBe(true); + expect(prevButton.getDOMNode().getAttribute('aria-disabled')).toBe('true'); + }); + + it( + 'should hightlight current page and not highlight other page', + shouldHighlightRight, + ); + + it('should calc page right', () => { + const pagers = wrapper.find( + 'li:not(.rc-pagination-total-text):not(.rc-pagination-options)', + ); + const knownPageCount = 3; + const buttonLength = 2; + expect(pagers.length).toBe(knownPageCount + buttonLength); + }); + + it('next button should not be disabled', () => { + const nextButton = wrapper.find('.rc-pagination-next'); + expect(nextButton.hasClass('rc-pagination-disabled')).toBe(false); + expect(nextButton.getDOMNode().getAttribute('aria-disabled')).toBe('false'); + }); + + it('should response mouse click right', () => { + const pagers = wrapper.find('.rc-pagination-item'); + expect(pagers.length).toBe(3); + const page2 = pagers.at(1); + expect(page2.hasClass('rc-pagination-item-2')).toBe(true); + page2.simulate('click'); + expect(wrapper.state().current).toBe(2); + expect(onChange).toHaveBeenLastCalledWith(2, 10); + shouldHighlightRight(); + }); +}); From e9d190b0cacbd72c62bc599753dbe0fff9498697 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 16:50:16 +0800 Subject: [PATCH 024/262] :white_check_mark: add codecov badge --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 8baff20f..962bcce3 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,7 @@ React Pagination Component. [![NPM version][npm-image]][npm-url] [![build status][travis-image]][travis-url] [![Test coverage][coveralls-image]][coveralls-url] +[![codecov](https://codecov.io/gh/react-component/pagination/branch/master/graph/badge.svg)](https://codecov.io/gh/react-component/pagination) [![Dependencies](https://img.shields.io/david/react-component/pagination.svg?style=flat-square)](https://david-dm.org/react-component/pagination) [![DevDependencies](https://img.shields.io/david/dev/react-component/pagination.svg?style=flat-square)](https://david-dm.org/react-component/pagination?type=dev) [![npm download][download-image]][download-url] From 542995d2c9e55b4744dd40343d792abbfa10da97 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 17:08:49 +0800 Subject: [PATCH 025/262] test: Migrated Uncontrolled Pagination test cases --- tests/index.test.js | 63 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) diff --git a/tests/index.test.js b/tests/index.test.js index 86599655..3e59580c 100644 --- a/tests/index.test.js +++ b/tests/index.test.js @@ -2,6 +2,9 @@ import React from 'react'; import { mount } from 'enzyme'; import Pagination from '../src'; +const sleep = (timeout = 0) => + new Promise(resolve => setTimeout(resolve, timeout)); + describe('Uncontrolled Pagination', () => { let wrapper; const onChange = jest.fn(); @@ -77,4 +80,64 @@ describe('Uncontrolled Pagination', () => { expect(onChange).toHaveBeenLastCalledWith(2, 10); shouldHighlightRight(); }); + + it('should response next page', () => { + const nextButton = wrapper.find('.rc-pagination-next'); + nextButton.simulate('click'); + expect(wrapper.state().current).toBe(2); + expect(onChange).toHaveBeenLastCalledWith(2, 10); + shouldHighlightRight(); + }); + + it('should quick jump to expect page', () => { + const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); + const input = quickJumper.find('input'); + const goButton = quickJumper.find('button'); + input.simulate('change', { target: { value: '2' } }); + goButton.simulate('click'); + expect(wrapper.state().current).toBe(2); + expect(onChange).toHaveBeenLastCalledWith(2, 10); + }); + + // https://github.com/ant-design/ant-design/issues/17763 + it('should not jump when blur input when there is goButton', () => { + const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); + const input = quickJumper.find('input'); + input.simulate('focus'); + input.simulate('change', { target: { value: '2' } }); + input.simulate('blur'); + expect(wrapper.state().current).toBe(1); + expect(onChange).not.toBeCalled(); + }); + + // https://github.com/ant-design/ant-design/issues/17763 + it('should not jump when blur input when there is not goButton', () => { + const component = mount( + , + ); + const quickJumper = component.find('.rc-pagination-options-quick-jumper'); + const input = quickJumper.find('input'); + input.simulate('change', { target: { value: '2' } }); + input.simulate('blur'); + expect(component.state().current).toBe(2); + }); + + // https://github.com/ant-design/ant-design/issues/15539 + it('should hide quick jumper when only one page', () => { + const component = mount( + , + ); + const quickJumper = component.find('.rc-pagination-options-quick-jumper'); + expect(quickJumper.length).toBe(0); + }); + + it('should display total items', () => { + const totalText = wrapper.find('.rc-pagination-total-text'); + expect(totalText.text()).toBe('1 - 10 of 25 items'); + const nextButton = wrapper.find('.rc-pagination-next'); + nextButton.simulate('click'); + expect(totalText.text()).toBe('11 - 20 of 25 items'); + nextButton.simulate('click'); + expect(totalText.text()).toBe('21 - 25 of 25 items'); + }); }); From f1a514a7357b8dfa854c86e2d4a789aecf2294c6 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 17:17:02 +0800 Subject: [PATCH 026/262] fix eslint errors --- examples/default.js | 4 +++- examples/itemRender.js | 2 +- examples/jumper.js | 2 +- examples/jumperWithGoButton.js | 2 +- examples/lessPages.js | 2 +- examples/locale.js | 2 +- examples/more.js | 2 +- examples/showTitle.js | 4 +++- examples/showTotal.js | 4 +--- examples/simple.js | 4 +--- examples/sizer.js | 4 +++- examples/stupid.js | 5 +---- examples/styles.js | 2 +- 13 files changed, 19 insertions(+), 20 deletions(-) diff --git a/examples/default.js b/examples/default.js index 353e9423..5ec50146 100644 --- a/examples/default.js +++ b/examples/default.js @@ -1,6 +1,6 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import Pagination from 'rc-pagination'; +import Pagination from '..'; import '../assets/index.less'; import 'rc-select/assets/index.less'; @@ -8,12 +8,14 @@ export default class App extends React.Component { state = { current: 3, }; + onChange = page => { console.log(page); this.setState({ current: page, }); }; + render() { return ( { if (type === 'page') { diff --git a/examples/jumper.js b/examples/jumper.js index ffbc4953..c838434f 100644 --- a/examples/jumper.js +++ b/examples/jumper.js @@ -1,7 +1,7 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; import Select from 'rc-select'; -import Pagination from 'rc-pagination'; +import Pagination from '..'; import '../assets/index.less'; import 'rc-select/assets/index.less'; diff --git a/examples/jumperWithGoButton.js b/examples/jumperWithGoButton.js index 0c581925..f92c9432 100644 --- a/examples/jumperWithGoButton.js +++ b/examples/jumperWithGoButton.js @@ -1,7 +1,7 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; import Select from 'rc-select'; -import Pagination from 'rc-pagination'; +import Pagination from '..'; import '../assets/index.less'; import 'rc-select/assets/index.less'; diff --git a/examples/lessPages.js b/examples/lessPages.js index c20f9309..6796cfc7 100644 --- a/examples/lessPages.js +++ b/examples/lessPages.js @@ -1,6 +1,6 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import Pagination from 'rc-pagination'; +import Pagination from '..'; import '../assets/index.less'; const arrowPath = diff --git a/examples/locale.js b/examples/locale.js index 287a5a01..94f626dc 100644 --- a/examples/locale.js +++ b/examples/locale.js @@ -2,7 +2,7 @@ import React from 'react'; import ReactDOM from 'react-dom'; import Select from 'rc-select'; -import Pagination from 'rc-pagination'; +import Pagination from '..'; import localeInfo from '../src/locale/en_US'; import '../assets/index.less'; import 'rc-select/assets/index.less'; diff --git a/examples/more.js b/examples/more.js index 65ad1789..5cf92376 100644 --- a/examples/more.js +++ b/examples/more.js @@ -1,6 +1,6 @@ import '../assets/index.less'; -import Pagination from 'rc-pagination'; import React from 'react'; +import Pagination from '..'; const App = () => ( diff --git a/examples/showTitle.js b/examples/showTitle.js index 444b5c81..e22a81b6 100644 --- a/examples/showTitle.js +++ b/examples/showTitle.js @@ -1,18 +1,20 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import Pagination from 'rc-pagination'; +import Pagination from '..'; import '../assets/index.less'; class App extends React.Component { state = { current: 3, }; + onChange = page => { console.log(page); this.setState({ current: page, }); }; + render() { return (
    diff --git a/examples/showTotal.js b/examples/showTotal.js index e406b0b2..c0425caa 100644 --- a/examples/showTotal.js +++ b/examples/showTotal.js @@ -1,7 +1,5 @@ -/* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import ReactDOM from 'react-dom'; -import Pagination from 'rc-pagination'; +import Pagination from '..'; import '../assets/index.less'; const App = () => ( diff --git a/examples/simple.js b/examples/simple.js index b550ba40..09759077 100644 --- a/examples/simple.js +++ b/examples/simple.js @@ -1,8 +1,6 @@ -// use jsx to render html, do not modify simple.html - import '../assets/index.less'; -import Pagination from 'rc-pagination'; import React from 'react'; +import Pagination from '..'; const App = () => ; diff --git a/examples/sizer.js b/examples/sizer.js index bf9bcbf7..080b1a54 100644 --- a/examples/sizer.js +++ b/examples/sizer.js @@ -1,7 +1,7 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; import Select from 'rc-select'; -import Pagination from 'rc-pagination'; +import Pagination from '..'; import '../assets/index.less'; import 'rc-select/assets/index.less'; @@ -9,10 +9,12 @@ class App extends React.Component { state = { pageSize: 20, }; + onShowSizeChange = (current, pageSize) => { console.log(current); this.setState({ pageSize }); }; + render() { return (
    diff --git a/examples/stupid.js b/examples/stupid.js index b5f66021..d4456b36 100644 --- a/examples/stupid.js +++ b/examples/stupid.js @@ -1,8 +1,5 @@ -// use jsx to render html, do not modify simple.html - -import Pagination from 'rc-pagination'; import React from 'react'; -import ReactDOM from 'react-dom'; +import Pagination from '..'; import '../assets/index.less'; export default () => ; diff --git a/examples/styles.js b/examples/styles.js index bed7ca74..6931b939 100644 --- a/examples/styles.js +++ b/examples/styles.js @@ -1,6 +1,6 @@ import '../assets/index.less'; -import Pagination from 'rc-pagination'; import React from 'react'; +import Pagination from '..'; export default () => ( From 6d054116d1880c2329f085a4a1f909d361f808e0 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 17:47:38 +0800 Subject: [PATCH 027/262] :white_check_mark: add two pagination and itemRender test cases --- tests/index.test.js | 28 ++++++++++++-- tests/itemRender.test.js | 53 +++++++++++++++++++++++++++ tests/{helper => }/two-pagination.jsx | 10 +++-- tests/two-pagination.test.js | 31 ++++++++++++++++ 4 files changed, 115 insertions(+), 7 deletions(-) create mode 100644 tests/itemRender.test.js rename tests/{helper => }/two-pagination.jsx (85%) create mode 100644 tests/two-pagination.test.js diff --git a/tests/index.test.js b/tests/index.test.js index 3e59580c..d1e50020 100644 --- a/tests/index.test.js +++ b/tests/index.test.js @@ -2,9 +2,6 @@ import React from 'react'; import { mount } from 'enzyme'; import Pagination from '../src'; -const sleep = (timeout = 0) => - new Promise(resolve => setTimeout(resolve, timeout)); - describe('Uncontrolled Pagination', () => { let wrapper; const onChange = jest.fn(); @@ -141,3 +138,28 @@ describe('Uncontrolled Pagination', () => { expect(totalText.text()).toBe('21 - 25 of 25 items'); }); }); + +describe('Controlled Pagination', () => { + let wrapper; + const onChange = jest.fn(); + + beforeEach(() => { + wrapper = mount(); + }); + + afterEach(() => { + wrapper.unmount(); + onChange.mockReset(); + }); + + it('current should equal defaultCurrent', () => { + expect(wrapper.state().current).toBe(2); + }); + + it('should not response mouse click', () => { + const nextButton = wrapper.find('.rc-pagination-next'); + nextButton.simulate('click'); + expect(wrapper.state().current).toBe(2); + expect(onChange).toHaveBeenLastCalledWith(3, 10); + }); +}); diff --git a/tests/itemRender.test.js b/tests/itemRender.test.js new file mode 100644 index 00000000..4bedbd2d --- /dev/null +++ b/tests/itemRender.test.js @@ -0,0 +1,53 @@ +import React from 'react'; +import { mount } from 'enzyme'; +import Pagination from '../src'; + +describe('itemRender', () => { + let wrapper; + const currentPage = 12; + const itemRender = current => {current}; + + beforeEach(() => { + wrapper = mount( + , + ); + }); + + afterEach(() => { + wrapper.unmount(); + }); + + it('should support custom itemRender', () => { + const prev = wrapper.find('.rc-pagination-prev'); + const next = wrapper.find('.rc-pagination-next'); + const jumpPrev = wrapper.find('.rc-pagination-jump-prev'); + const jumpNext = wrapper.find('.rc-pagination-jump-next'); + const active = wrapper.find('.rc-pagination-item-active'); + + expect(prev.getDOMNode().innerHTML).toBe( + `${currentPage - 1}`, + ); + expect(next.getDOMNode().innerHTML).toBe( + `${currentPage + 1}`, + ); + expect(jumpPrev.getDOMNode().innerHTML).toBe( + `${currentPage - 5}`, + ); + expect(jumpNext.getDOMNode().innerHTML).toBe( + `${currentPage + 5}`, + ); + expect(active.getDOMNode().innerHTML).toBe( + `${currentPage}`, + ); + }); + + it('should support pass disabled to prev and next buttons', () => { + const component = mount( + , + ); + const prev = component.find('.rc-pagination-prev'); + const next = component.find('.rc-pagination-next'); + expect(prev.getDOMNode().innerHTML).toBe('0'); + expect(next.getDOMNode().innerHTML).toBe('2'); + }); +}); diff --git a/tests/helper/two-pagination.jsx b/tests/two-pagination.jsx similarity index 85% rename from tests/helper/two-pagination.jsx rename to tests/two-pagination.jsx index 0f8d4695..14dca6bd 100644 --- a/tests/helper/two-pagination.jsx +++ b/tests/two-pagination.jsx @@ -1,21 +1,23 @@ import 'rc-select/assets/index.less'; -import Pagination from '../../src'; import React from 'react'; import Select from 'rc-select'; +import Pagination from '../src'; class Hello extends React.Component { state = { pageSize: 20, }; + changeSize = () => { this.setState({ pageSize: 50, }); }; + render() { return ( -
    - -
    + ); } } diff --git a/tests/two-pagination.test.js b/tests/two-pagination.test.js new file mode 100644 index 00000000..75650b8d --- /dev/null +++ b/tests/two-pagination.test.js @@ -0,0 +1,31 @@ +import React from 'react'; +import { mount } from 'enzyme'; +import Pagination from '../src'; +import TwoPagination from './two-pagination'; + +describe('Two Pagination', () => { + let wrapper; + + beforeEach(() => { + wrapper = mount(); + }); + + afterEach(() => { + wrapper.unmount(); + }); + + it('should has initial pageSize 20', () => { + const p1 = wrapper.find(Pagination).at(0); + const p2 = wrapper.find(Pagination).at(1); + expect(p1.state().pageSize).toBe(20); + expect(p2.state().pageSize).toBe(20); + }); + + it('should sync pageSize via state', () => { + const p1 = wrapper.find(Pagination).at(0); + const p2 = wrapper.find(Pagination).at(1); + wrapper.find('.hook').simulate('click'); + expect(p1.state().pageSize).toBe(50); + expect(p2.state().pageSize).toBe(50); + }); +}); From fec4d628f073ece6b76ec6e8bcd07c391dce1158 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 18:05:19 +0800 Subject: [PATCH 028/262] :white_check_mark: migrate more tests --- tests/Pagination.xx.js | 124 +---------------------------------------- tests/index.js | 7 --- tests/index.test.js | 82 +++++++++++++++++++++++++++ 3 files changed, 83 insertions(+), 130 deletions(-) delete mode 100644 tests/index.js diff --git a/tests/Pagination.xx.js b/tests/Pagination.xx.js index f5200df0..3a2bc4e8 100644 --- a/tests/Pagination.xx.js +++ b/tests/Pagination.xx.js @@ -5,7 +5,7 @@ import Select from 'rc-select'; import React from 'react'; import TestUtils from 'react-dom/test-utils'; import ReactDOM from 'react-dom'; -import TwoPagination from './helper/two-pagination'; +import TwoPagination from './two-pagination'; const Simulate = TestUtils.Simulate; @@ -543,62 +543,6 @@ describe('hideOnSinglePage props', () => { }); }); -describe('showPrevNextJumpers props', () => { - const container = document.createElement('div'); - const currentPage = 12; - document.body.appendChild(container); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - }); - - it('should hide jump-prev, jump-next if showPrevNextJumpers equals false', done => { - ReactDOM.render( - , - container, - function() { - expect(() => { - TestUtils.findRenderedDOMComponentWithClass( - this, - 'rc-pagination-jump-prev', - ); - }).to.throwException(/Did not find exactly one match/); - expect(() => { - TestUtils.findRenderedDOMComponentWithClass( - this, - 'rc-pagination-jump-next', - ); - }).to.throwException(/Did not find exactly one match/); - done(); - }, - ); - }); - - it('should show jump-prev, jump-next if showPrevNextJumpers equals true', done => { - ReactDOM.render( - , - container, - function() { - const jumpPrev = TestUtils.findRenderedDOMComponentWithClass( - this, - 'rc-pagination-jump-prev', - ); - const jumpNext = TestUtils.findRenderedDOMComponentWithClass( - this, - 'rc-pagination-jump-next', - ); - expect(TestUtils.isDOMComponent(jumpPrev)).to.be(true); - expect(TestUtils.isDOMComponent(jumpNext)).to.be(true); - done(); - }, - ); - }); -}); - describe('custom showQuickJumper button Pagination', () => { let pagination = null; const container = document.createElement('div'); @@ -1057,69 +1001,3 @@ describe('disabled', () => { ); }); }); - -describe('Pagination with jumper', () => { - let pagination = null; - const container = document.createElement('div'); - document.body.appendChild(container); - - let current = 10; - function onChange(page) { - current = page; - } - - beforeEach(done => { - ReactDOM.render( - , - container, - function() { - pagination = this; - done(); - }, - ); - }); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - current = 10; - }); - - it('when input less than 1', done => { - const quickJumper = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-options-quick-jumper', - ); - const input = quickJumper.querySelector('input'); - expect(TestUtils.isDOMComponent(input)).to.be(true); - input.value = '-1'; - Simulate.change(input); - setTimeout(() => { - Simulate.keyUp(input, { key: 'Enter', keyCode: 13, which: 13 }); - setTimeout(() => { - expect(pagination.state.current).to.be(1); - expect(current).to.be(1); - done(); - }, 10); - }, 10); - }); - - it('when input onBlur', done => { - const quickJumper = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-options-quick-jumper', - ); - const input = quickJumper.querySelector('input'); - expect(TestUtils.isDOMComponent(input)).to.be(true); - Simulate.blur(input); - setTimeout(() => { - expect(pagination.state.current).to.be(10); - expect(current).to.be(10); - done(); - }, 10); - }); -}); diff --git a/tests/index.js b/tests/index.js deleted file mode 100644 index bc8b22b9..00000000 --- a/tests/index.js +++ /dev/null @@ -1,7 +0,0 @@ -/** - * only require other specs here - */ - -import 'core-js/es/map'; -import 'core-js/es/set'; -import './Pagination.spec'; diff --git a/tests/index.test.js b/tests/index.test.js index d1e50020..ea7c63a1 100644 --- a/tests/index.test.js +++ b/tests/index.test.js @@ -163,3 +163,85 @@ describe('Controlled Pagination', () => { expect(onChange).toHaveBeenLastCalledWith(3, 10); }); }); + +describe('Other props', () => { + it('should support custom default icon', () => { + const nextIcon = () => nextIcon; + const prevIcon = () => prevIcon; + const jumpNextIcon = () => jumpNextIcon; + const jumpPrevIcon = () => jumpPrevIcon; + const iconsProps = { + prevIcon, + nextIcon, + jumpPrevIcon, + jumpNextIcon, + }; + const wrapper = mount( + , + ); + const prev = wrapper.find('.rc-pagination-prev'); + const next = wrapper.find('.rc-pagination-next'); + const jumpPrev = wrapper.find('.rc-pagination-jump-prev'); + const jumpNext = wrapper.find('.rc-pagination-jump-next'); + expect(prev.text()).toBe('prevIcon'); + expect(next.text()).toBe('nextIcon'); + expect(jumpPrev.text()).toBe('jumpPrevIcon'); + expect(jumpNext.text()).toBe('jumpNextIcon'); + }); + + describe('showPrevNextJumpers props', () => { + it('should hide jump-prev, jump-next if showPrevNextJumpers equals false', () => { + const wrapper = mount( + , + ); + const prev = wrapper.find('.rc-pagination-jump-prev'); + const next = wrapper.find('.rc-pagination-jump-next'); + expect(prev.exists()).toBe(false); + expect(next.exists()).toBe(false); + }); + + it('should show jump-prev, jump-next if showPrevNextJumpers equals true', () => { + const wrapper = mount( + , + ); + const prev = wrapper.find('.rc-pagination-jump-prev'); + const next = wrapper.find('.rc-pagination-jump-next'); + expect(prev.exists()).toBe(true); + expect(next.exists()).toBe(true); + }); + }); + + describe('hideOnSinglePage props', () => { + const itemRender = current => {current}; + + it('should hide pager if hideOnSinglePage equals true', () => { + const wrapper = mount( + , + ); + expect(wrapper.find('.rc-pagination').exists()).toBe(false); + }); + + it('should show pager if hideOnSinglePage equals false', () => { + const wrapper = mount( + , + ); + expect(wrapper.find('.rc-pagination').exists()).toBe(true); + }); + + it('should show pager if hideOnSinglePage equals true but more than 1 page', () => { + const wrapper = mount( + , + ); + expect(wrapper.find('.rc-pagination').exists()).toBe(true); + }); + }); +}); From 531bac6389913d2b418ec209858d43e92a3112a9 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 18:07:35 +0800 Subject: [PATCH 029/262] refactor render code --- src/Pagination.jsx | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/Pagination.jsx b/src/Pagination.jsx index e2cd7f70..d4e23940 100644 --- a/src/Pagination.jsx +++ b/src/Pagination.jsx @@ -325,18 +325,21 @@ class Pagination extends React.Component { } render() { - const { prefixCls, className, disabled } = this.props; + const { + prefixCls, + className, + disabled, + hideOnSinglePage, + total, + locale, + } = this.props; // When hideOnSinglePage is true and there is only 1 page, hide the pager - if ( - this.props.hideOnSinglePage === true && - this.props.total <= this.state.pageSize - ) { + if (hideOnSinglePage === true && total <= this.state.pageSize) { return null; } const { props } = this; - const { locale } = props; const allPages = calculatePage(undefined, this.state, this.props); const pagerList = []; From b9fcc33c6bef63dd46c39fbfd5c0aad7371cf246 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 18:10:53 +0800 Subject: [PATCH 030/262] refactor render code --- src/Pagination.jsx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Pagination.jsx b/src/Pagination.jsx index d4e23940..deec7448 100644 --- a/src/Pagination.jsx +++ b/src/Pagination.jsx @@ -328,6 +328,7 @@ class Pagination extends React.Component { const { prefixCls, className, + style, disabled, hideOnSinglePage, total, @@ -403,8 +404,8 @@ class Pagination extends React.Component { return (
      From 4864f169cfc606d306372ddfb5eff62349702001 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 18:12:28 +0800 Subject: [PATCH 031/262] refactor render code --- src/Pagination.jsx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Pagination.jsx b/src/Pagination.jsx index deec7448..5d8ace8c 100644 --- a/src/Pagination.jsx +++ b/src/Pagination.jsx @@ -414,9 +414,9 @@ class Pagination extends React.Component { onClick={this.prev} tabIndex={this.hasPrev() ? 0 : null} onKeyPress={this.runIfEnterPrev} - className={`${ - this.hasPrev() ? '' : `${prefixCls}-disabled` - } ${prefixCls}-prev`} + className={classNames(`${prefixCls}-prev`, { + [`${prefixCls}-disabled`]: !this.hasPrev(), + })} aria-disabled={!this.hasPrev()} > {this.renderPrev(prevPage)} @@ -441,9 +441,9 @@ class Pagination extends React.Component { onClick={this.next} tabIndex={this.hasPrev() ? 0 : null} onKeyPress={this.runIfEnterNext} - className={`${ - this.hasNext() ? '' : `${prefixCls}-disabled` - } ${prefixCls}-next`} + className={classNames(`${prefixCls}-next`, { + [`${prefixCls}-disabled`]: !this.hasNext(), + })} aria-disabled={!this.hasNext()} > {this.renderNext(nextPage)} From cc285da9386aec12b49982e435fabb8e9007f316 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 20:33:13 +0800 Subject: [PATCH 032/262] migrated all test cases --- tests/Pagination.xx.js | 1003 --------------------------------------- tests/data-aria.test.js | 76 +++ tests/index.test.js | 92 ++++ tests/jumper.test.js | 113 +++++ tests/simple.test.js | 51 ++ 5 files changed, 332 insertions(+), 1003 deletions(-) delete mode 100644 tests/Pagination.xx.js create mode 100644 tests/data-aria.test.js create mode 100644 tests/jumper.test.js create mode 100644 tests/simple.test.js diff --git a/tests/Pagination.xx.js b/tests/Pagination.xx.js deleted file mode 100644 index 3a2bc4e8..00000000 --- a/tests/Pagination.xx.js +++ /dev/null @@ -1,1003 +0,0 @@ -/* eslint func-names: 0, no-console: 0 */ -import expect from 'expect.js'; -import Pagination from '../src'; -import Select from 'rc-select'; -import React from 'react'; -import TestUtils from 'react-dom/test-utils'; -import ReactDOM from 'react-dom'; -import TwoPagination from './two-pagination'; - -const Simulate = TestUtils.Simulate; - -describe('Uncontrolled Pagination', () => { - let pagination = null; - const container = document.createElement('div'); - document.body.appendChild(container); - - let current = 1; - let pageSize; - function onChange(page, pSize) { - current = page; - pageSize = pSize; - } - - function shouldHighlightRight() { - const pagers = TestUtils.scryRenderedDOMComponentsWithTag( - pagination, - 'li', - ).filter( - pager => pager.className.indexOf('rc-pagination-total-text') === -1, - ); - const current2 = pagination.state.current; - pagers.forEach((pager, index) => { - // page starts from 1 - if (index === current2) { - expect(pager.className).to.contain('rc-pagination-item-active'); - } else { - expect(pager.className).to.not.contain('rc-pagination-item-active'); - } - }); - } - - beforeEach(done => { - ReactDOM.render( - - `${range[0]} - ${range[1]} of ${total} items` - } - />, - container, - function() { - pagination = this; - done(); - }, - ); - }); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - current = 1; - }); - - it('default current page is 1', () => { - const current2 = pagination.state.current; - expect(current2).to.be(1); - }); - - it('prev-button should be disabled', () => { - const prevButton = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-prev', - ); - expect(TestUtils.isDOMComponent(prevButton)).to.be(true); - expect(prevButton.className).to.contain('rc-pagination-disabled'); - expect(prevButton.getAttribute('aria-disabled')).to.equal('true'); - }); - - it( - 'should hightlight current page and not highlight other page', - shouldHighlightRight, - ); - - it('should calc page right', () => { - const pagers = TestUtils.scryRenderedDOMComponentsWithTag(pagination, 'li') - .filter( - pager => pager.className.indexOf('rc-pagination-total-text') === -1, - ) - .filter(pager => pager.className.indexOf('rc-pagination-options') === -1); - const knownPageCount = 3; - const buttonLength = 2; - expect(pagers.length).to.be(knownPageCount + buttonLength); - }); - - it('next button should not be disabled', () => { - const nextButton = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-next', - ); - - expect(TestUtils.isDOMComponent(nextButton)).to.be(true); - expect(nextButton.className).to.not.contain('rc-pagination-disabled'); - expect(nextButton.getAttribute('aria-disabled')).to.equal('false'); - }); - - it('should response mouse click right', done => { - const pagers = TestUtils.scryRenderedDOMComponentsWithClass( - pagination, - 'rc-pagination-item', - ); - expect(pagers.length).to.be(3); - const page2 = pagers[1]; - expect(TestUtils.isDOMComponent(page2)).to.be(true); - expect(page2.className).to.contain('rc-pagination-item-2'); - - Simulate.click(page2); - setTimeout(() => { - expect(pagination.state.current).to.be(2); - expect(current).to.be(2); - expect(pageSize).to.be(10); - shouldHighlightRight(); - done(); - }, 10); - }); - - it('should response next page', done => { - const nextButton = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-next', - ); - expect(TestUtils.isDOMComponent(nextButton)).to.be(true); - Simulate.click(nextButton); - setTimeout(() => { - expect(pagination.state.current).to.be(2); - expect(current).to.be(2); - expect(pageSize).to.be(10); - done(); - }, 10); - }); - - it('should quick jump to expect page', done => { - const quickJumper = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-options-quick-jumper', - ); - const input = quickJumper.querySelector('input'); - const goButton = quickJumper.querySelector('button'); - expect(TestUtils.isDOMComponent(quickJumper)).to.be(true); - expect(TestUtils.isDOMComponent(input)).to.be(true); - expect(TestUtils.isDOMComponent(goButton)).to.be(true); - Simulate.change(input, { target: { value: '2' } }); - setTimeout(() => { - Simulate.click(goButton); - setTimeout(() => { - expect(pagination.state.current).to.be(2); - expect(current).to.be(2); - expect(pageSize).to.be(10); - done(); - }, 10); - }, 10); - }); - - // https://github.com/ant-design/ant-design/issues/17763 - it('should not jump when blur input when there is goButton', done => { - const quickJumper = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-options-quick-jumper', - ); - const input = quickJumper.querySelector('input'); - Simulate.change(input, { target: { value: '2' } }); - setTimeout(() => { - Simulate.blur(input); - setTimeout(() => { - expect(pagination.state.current).to.be(1); - expect(current).to.be(1); - done(); - }, 10); - }, 10); - }); - - // https://github.com/ant-design/ant-design/issues/17763 - it('should not jump when blur input when there is not goButton', done => { - ReactDOM.render( - , - container, - function() { - const quickJumper = TestUtils.findRenderedDOMComponentWithClass( - this, - 'rc-pagination-options-quick-jumper', - ); - const input = quickJumper.querySelector('input'); - Simulate.change(input, { target: { value: '2' } }); - setTimeout(() => { - Simulate.blur(input); - setTimeout(() => { - expect(this.state.current).to.be(2); - done(); - }, 10); - }, 10); - }, - ); - }); - - // https://github.com/ant-design/ant-design/issues/15539 - it('should hide quick jumper when only one page', done => { - ReactDOM.render( - , - container, - function() { - expect(() => { - TestUtils.findRenderedDOMComponentWithClass( - this, - 'rc-pagination-options-quick-jumper', - ); - }).to.throwException(/Did not find exactly one match/); - done(); - }, - ); - }); - - it('should display total items', done => { - const totalText = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-total-text', - ); - expect(TestUtils.isDOMComponent(totalText)).to.be(true); - expect(totalText.innerHTML).to.be('1 - 10 of 25 items'); - const nextButton = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-next', - ); - Simulate.click(nextButton); - setTimeout(() => { - expect(totalText.innerHTML).to.be('11 - 20 of 25 items'); - Simulate.click(nextButton); - setTimeout(() => { - expect(totalText.innerHTML).to.be('21 - 25 of 25 items'); - done(); - }, 10); - }, 10); - }); -}); - -describe('Controlled Pagination', () => { - let pagination = null; - const container = document.createElement('div'); - document.body.appendChild(container); - - let current = 2; - let pageSize; - function onChange(page, pSize) { - current = page; - pageSize = pSize; - } - - beforeEach(done => { - ReactDOM.render( - , - container, - function() { - pagination = this; - done(); - }, - ); - }); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - }); - - it('not replace currentInputValue if current not change', done => { - pagination.state.current = 1; - pagination.state.currentInputValue = 1; - pagination.forceUpdate(); - expect(pagination.state.current).to.be(1); - expect(pagination.state.currentInputValue).to.be(1); - - setTimeout(() => { - pagination.state.currentInputValue = 1; - pagination.forceUpdate(); - expect(pagination.state.current).to.be(2); - expect(pagination.state.currentInputValue).to.be(1); - - done(); - }, 10); - }); - - it('current should equal defaultCurrent', () => { - expect(pagination.state.current).to.be(2); - }); - - it('should not response mouse click', done => { - const nextButton = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-next', - ); - expect(TestUtils.isDOMComponent(nextButton)).to.be(true); - Simulate.click(nextButton); - setTimeout(() => { - expect(pagination.state.current).to.be(2); - expect(current).to.be(3); - expect(pageSize).to.be(10); - done(); - }, 10); - }); -}); - -describe('Two Pagination', () => { - let entry = null; - const container = document.createElement('div'); - document.body.appendChild(container); - - beforeEach(done => { - ReactDOM.render(, container, function() { - entry = this; - done(); - }); - }); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - }); - - it('should has initial pageSize 20', () => { - const p1 = TestUtils.scryRenderedComponentsWithType(entry, Pagination)[0]; - const p2 = TestUtils.scryRenderedComponentsWithType(entry, Pagination)[1]; - expect(p1.state.pageSize).to.be(20); - expect(p2.state.pageSize).to.be(20); - }); - - it('should sync pageSize via state', done => { - const p1 = TestUtils.scryRenderedComponentsWithType(entry, Pagination)[0]; - const p2 = TestUtils.scryRenderedComponentsWithType(entry, Pagination)[1]; - const hook = TestUtils.scryRenderedDOMComponentsWithClass(entry, 'hook')[0]; - Simulate.click(hook); - setTimeout(() => { - expect(p1.state.pageSize).to.be(50); - expect(p2.state.pageSize).to.be(50); - done(); - }, 100); - }); -}); - -describe('itemRender', () => { - let pagination; - const container = document.createElement('div'); - const currentPage = 12; - document.body.appendChild(container); - - const itemRender = current => { - return {current}; - }; - - beforeEach(done => { - ReactDOM.render( - , - container, - function() { - pagination = this; - done(); - }, - ); - }); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - }); - - it('should support custom itemRender', () => { - const prev = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-prev', - ); - const next = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-next', - ); - const jumpPrev = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-jump-prev', - ); - const jumpNext = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-jump-next', - ); - const active = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-item-active', - ); - expect(prev.innerHTML).to.be( - `${currentPage - 1}`, - ); - expect(next.innerHTML).to.be( - `${currentPage + 1}`, - ); - expect(jumpPrev.innerHTML).to.be( - `${currentPage - 5}`, - ); - expect(jumpNext.innerHTML).to.be( - `${currentPage + 5}`, - ); - expect(active.innerHTML).to.be( - `${currentPage}`, - ); - }); - - it('should support pass disabled to prev and next buttons', done => { - ReactDOM.unmountComponentAtNode(container); - ReactDOM.render( - , - container, - function() { - const prev = TestUtils.findRenderedDOMComponentWithClass( - this, - 'rc-pagination-prev', - ); - const next = TestUtils.findRenderedDOMComponentWithClass( - this, - 'rc-pagination-next', - ); - expect(prev.innerHTML).to.be(`0`); - expect(next.innerHTML).to.be(`2`); - done(); - }, - ); - }); -}); - -describe('Other props', () => { - let pagination; - const currentPage = 12; - const container = document.createElement('div'); - document.body.appendChild(container); - const nextIcon = () => nextIcon; - const prevIcon = () => prevIcon; - const jumpNextIcon = () => jumpNextIcon; - const jumpPrevIcon = () => jumpPrevIcon; - const iconsProps = { - prevIcon, - nextIcon, - jumpPrevIcon, - jumpNextIcon, - }; - beforeEach(done => { - ReactDOM.render( - , - container, - function() { - pagination = this; - done(); - }, - ); - }); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - }); - - it('should support custom default icon', () => { - const nextIconElement = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-next', - ); - const prevIconElement = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-prev', - ); - const jumpNextIconElement = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-jump-next', - ); - const jumpPrevIconElement = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-jump-prev', - ); - expect(nextIconElement.innerText).to.be('nextIcon'); - expect(prevIconElement.innerText).to.be('prevIcon'); - expect(jumpNextIconElement.innerText).to.be('jumpNextIcon'); - expect(jumpPrevIconElement.innerText).to.be('jumpPrevIcon'); - }); -}); - -describe('hideOnSinglePage props', () => { - const container = document.createElement('div'); - document.body.appendChild(container); - - const itemRender = current => { - return {current}; - }; - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - }); - - it('should hide pager if hideOnSinglePage equals true', done => { - ReactDOM.render( - , - container, - function() { - expect(() => { - TestUtils.findRenderedDOMComponentWithClass(this, 'rc-pagination'); - }).to.throwException(/Did not find exactly one match/); - done(); - }, - ); - }); - - it('should show pager if hideOnSinglePage equals false', done => { - ReactDOM.render( - , - container, - function() { - expect(() => { - TestUtils.findRenderedDOMComponentWithClass(this, 'rc-pagination'); - }).to.not.throwException(); - done(); - }, - ); - }); - - it('should show pager if hideOnSinglePage equals true but more than 1 page', done => { - ReactDOM.render( - , - container, - function() { - expect(() => { - TestUtils.findRenderedDOMComponentWithClass(this, 'rc-pagination'); - }).to.not.throwException(); - done(); - }, - ); - }); -}); - -describe('custom showQuickJumper button Pagination', () => { - let pagination = null; - const container = document.createElement('div'); - document.body.appendChild(container); - - let current = 1; - let pageSize; - function onChange(page, pSize) { - current = page; - pageSize = pSize; - } - - beforeEach(done => { - ReactDOM.render( - go }} - showTotal={(total, range) => - `${range[0]} - ${range[1]} of ${total} items` - } - />, - container, - function() { - pagination = this; - done(); - }, - ); - }); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - }); - - it('should quick jump to expect page', done => { - const quickJumper = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-options-quick-jumper', - ); - const input = quickJumper.querySelector('input'); - const goButton = quickJumper.querySelector('button'); - expect(TestUtils.isDOMComponent(quickJumper)).to.be(true); - expect(TestUtils.isDOMComponent(input)).to.be(true); - expect(TestUtils.isDOMComponent(goButton)).to.be(true); - input.value = '2'; - Simulate.change(input); - setTimeout(() => { - Simulate.click(goButton); - setTimeout(() => { - expect(pagination.state.current).to.be(2); - expect(current).to.be(2); - expect(pageSize).to.be(10); - done(); - }, 10); - }, 10); - }); - - // https://github.com/ant-design/ant-design/issues/10080 - it('should not quick jump to previous page when input invalid char', done => { - const pager = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination', - ); - const nextButton = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-next', - ); - Simulate.click(nextButton); - const input = pager.querySelector('input'); - input.value = '&'; - Simulate.change(input); - setTimeout(() => { - Simulate.keyUp(input, { key: 'Enter', keyCode: 13, which: 13 }); - setTimeout(() => { - expect(pagination.state.current).to.be(2); - done(); - }, 10); - }, 10); - }); -}); - -describe('simple Pagination', () => { - let pagination = null; - const container = document.createElement('div'); - document.body.appendChild(container); - - beforeEach(done => { - ReactDOM.render( - - `${range[0]} - ${range[1]} of ${total} items` - } - />, - container, - function() { - pagination = this; - done(); - }, - ); - }); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - }); - - it('default current page is 1', () => { - const current3 = pagination.state.current; - expect(current3).to.be(1); - }); - - it('prev-button should be disabled', () => { - const prevButton = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-prev', - ); - expect(TestUtils.isDOMComponent(prevButton)).to.be(true); - expect(prevButton.className).to.contain('rc-pagination-disabled'); - expect(prevButton.getAttribute('aria-disabled')).to.equal('true'); - }); - - it('no quick jump', () => { - const simplePagers = TestUtils.scryRenderedDOMComponentsWithClass( - pagination, - 'rc-pagination-simple-pager', - ); - expect(simplePagers.length).to.be(1); - }); -}); - -describe('simple Pagination when current is greater pages', () => { - let pagination = null; - const container = document.createElement('div'); - document.body.appendChild(container); - - beforeEach(done => { - ReactDOM.render( - , - container, - function() { - pagination = this; - done(); - }, - ); - }); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - }); - - it('default current page is 3', () => { - const current3 = pagination.state.current; - expect(current3).to.be(3); - }); - - it('input number is greater pages', done => { - const greaterCurrent = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-simple', - ); - const input = greaterCurrent.querySelector('input'); - input.value = '313423434343343452121'; - Simulate.change(input); - setTimeout(() => { - expect(input.value).to.be('3'); - expect(pagination.state.current).to.be(3); - done(); - }, 10); - }); -}); - -describe('simple Pagination with quick jump', () => { - let pagination = null; - const container = document.createElement('div'); - document.body.appendChild(container); - - let current = 1; - let pageSize; - function onChange(page, pSize) { - current = page; - pageSize = pSize; - } - - beforeEach(done => { - ReactDOM.render( - go }} - showTotal={(total, range) => - `${range[0]} - ${range[1]} of ${total} items` - } - />, - container, - function() { - pagination = this; - done(); - }, - ); - }); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - }); - - it('should quick jump to expect page', done => { - const quickJumper = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-simple', - ); - const input = quickJumper.querySelector('input'); - const goButton = quickJumper.querySelector('button'); - expect(TestUtils.isDOMComponent(quickJumper)).to.be(true); - expect(TestUtils.isDOMComponent(input)).to.be(true); - expect(TestUtils.isDOMComponent(goButton)).to.be(true); - input.value = '2'; - Simulate.change(input); - setTimeout(() => { - Simulate.click(goButton); - setTimeout(() => { - expect(pagination.state.current).to.be(2); - expect(current).to.be(2); - expect(pageSize).to.be(10); - done(); - }, 10); - }, 10); - }); -}); - -// https://github.com/ant-design/ant-design/issues/10524 -describe('current value on onShowSizeChange when total is 0', () => { - let pagination = null; - let changeCurrent = 0; - const container = document.createElement('div'); - document.body.appendChild(container); - - const onShowSizeChange = current => { - changeCurrent = current; - }; - - beforeEach(done => { - ReactDOM.render( - - `${range[0]} - ${range[1]} of ${total} items` - } - />, - container, - function() { - pagination = this; - done(); - }, - ); - }); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - }); - - it('current should equal to the current in onShowSizeChange', done => { - const sizeChanger = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-options-size-changer', - ); - Simulate.click(sizeChanger); - setTimeout(() => { - const menu = sizeChanger.querySelector('.rc-select-selection'); - // Simulate to choose item of the drop down menu - Simulate.keyDown(menu, { key: 'Down', keyCode: 40, which: 40 }); - setTimeout(() => { - Simulate.keyDown(menu, { key: 'Enter', keyCode: 13, which: 13 }); - expect(pagination.state.current).to.be(changeCurrent); - done(); - }, 10); - }, 10); - }); - - it('when total is 0, pager should show and disabled', () => { - const itemButton = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-item', - ); - expect(TestUtils.isDOMComponent(itemButton)).to.be(true); - expect(itemButton.className).to.contain('rc-pagination-item-disabled'); - }); - - it('when total is 0, `from` and `to` should be 0', () => { - const totalText = TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-total-text', - ); - expect(TestUtils.isDOMComponent(totalText)).to.be(true); - expect(totalText.innerHTML).to.be('0 - 0 of 0 items'); - }); -}); - -describe('data and aria props', () => { - let pagination = null; - const container = document.createElement('div'); - document.body.appendChild(container); - - describe('with simple prop', () => { - beforeEach(done => { - ReactDOM.render( - , - container, - function() { - pagination = this; - done(); - }, - ); - }); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - }); - - it('renders data attributes', () => { - expect(pagination.paginationNode.getAttribute('data-test')).to.be( - 'test-id', - ); - expect(pagination.paginationNode.getAttribute('data-id')).to.be('12345'); - }); - - it('renders aria attributes', () => { - expect(pagination.paginationNode.getAttribute('aria-labelledby')).to.be( - 'labelledby-id', - ); - expect(pagination.paginationNode.getAttribute('aria-label')).to.be( - 'label-id', - ); - }); - - it('renders role attribute', () => { - expect(pagination.paginationNode.getAttribute('role')).to.be( - 'navigation', - ); - }); - }); - - describe('without simple prop', () => { - beforeEach(done => { - ReactDOM.render( - , - container, - function() { - pagination = this; - done(); - }, - ); - }); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - }); - - it('renders data attributes', () => { - expect(pagination.paginationNode.getAttribute('data-test')).to.be( - 'test-id', - ); - expect(pagination.paginationNode.getAttribute('data-id')).to.be('12345'); - }); - - it('renders aria attributes', () => { - expect(pagination.paginationNode.getAttribute('aria-labelledby')).to.be( - 'labelledby-id', - ); - expect(pagination.paginationNode.getAttribute('aria-label')).to.be( - 'label-id', - ); - }); - - it('renders role attribute', () => { - expect(pagination.paginationNode.getAttribute('role')).to.be( - 'navigation', - ); - }); - }); -}); - -describe('disabled', () => { - const container = document.createElement('div'); - document.body.appendChild(container); - - afterEach(() => { - ReactDOM.unmountComponentAtNode(container); - }); - - it('full pagination', done => { - ReactDOM.render( - , - container, - function() { - const pagination = this; - - // Root - expect( - TestUtils.findRenderedDOMComponentWithClass( - pagination, - 'rc-pagination-disabled', - ), - ).to.be.ok(); - - expect( - TestUtils.findRenderedDOMComponentWithTag(pagination, 'input'), - ).to.be.ok(); - - expect( - TestUtils.findRenderedComponentWithType(pagination, Select).props - .disabled, - ).to.be.ok(); - - expect( - TestUtils.findRenderedDOMComponentWithTag(pagination, 'input') - .disabled, - ).to.be.ok(); - - expect( - TestUtils.findRenderedDOMComponentWithTag(pagination, 'button') - .disabled, - ).to.be.ok(); - - done(); - }, - ); - }); -}); diff --git a/tests/data-aria.test.js b/tests/data-aria.test.js new file mode 100644 index 00000000..c6e4b084 --- /dev/null +++ b/tests/data-aria.test.js @@ -0,0 +1,76 @@ +import React from 'react'; +import { mount } from 'enzyme'; +import Pagination from '../src'; + +describe('data and aria props', () => { + let wrapper; + + describe('with simple prop', () => { + beforeEach(() => { + wrapper = mount( + , + ); + }); + + afterEach(() => { + wrapper.unmount(); + }); + + it('renders data attributes', () => { + expect(wrapper.getDOMNode().getAttribute('data-test')).toBe('test-id'); + expect(wrapper.getDOMNode().getAttribute('data-id')).toBe('12345'); + }); + + it('renders aria attributes', () => { + expect(wrapper.getDOMNode().getAttribute('aria-labelledby')).toBe( + 'labelledby-id', + ); + expect(wrapper.getDOMNode().getAttribute('aria-label')).toBe('label-id'); + }); + + it('renders role attribute', () => { + expect(wrapper.getDOMNode().getAttribute('role')).toBe('navigation'); + }); + }); + + describe('without simple prop', () => { + beforeEach(() => { + wrapper = mount( + , + ); + }); + + afterEach(() => { + wrapper.unmount(); + }); + + it('renders data attributes', () => { + expect(wrapper.getDOMNode().getAttribute('data-test')).toBe('test-id'); + expect(wrapper.getDOMNode().getAttribute('data-id')).toBe('12345'); + }); + + it('renders aria attributes', () => { + expect(wrapper.getDOMNode().getAttribute('aria-labelledby')).toBe( + 'labelledby-id', + ); + expect(wrapper.getDOMNode().getAttribute('aria-label')).toBe('label-id'); + }); + + it('renders role attribute', () => { + expect(wrapper.getDOMNode().getAttribute('role')).toBe('navigation'); + }); + }); +}); diff --git a/tests/index.test.js b/tests/index.test.js index ea7c63a1..1999ec26 100644 --- a/tests/index.test.js +++ b/tests/index.test.js @@ -1,5 +1,6 @@ import React from 'react'; import { mount } from 'enzyme'; +import Select from 'rc-select'; import Pagination from '../src'; describe('Uncontrolled Pagination', () => { @@ -244,4 +245,95 @@ describe('Other props', () => { expect(wrapper.find('.rc-pagination').exists()).toBe(true); }); }); + + it('disabled', () => { + const wrapper = mount( + , + ); + expect(wrapper.find('.rc-pagination-disabled').exists()).toBe(true); + expect(wrapper.find('input').exists()).toBe(true); + expect(wrapper.find(Select).props().disabled).toBe(true); + expect( + wrapper + .find('input') + .at(0) + .getDOMNode().disabled, + ).toBe(true); + expect( + wrapper + .find('button') + .at(0) + .getDOMNode().disabled, + ).toBe(true); + }); +}); + +// https://github.com/ant-design/ant-design/issues/10524 +describe('current value on onShowSizeChange when total is 0', () => { + let wrapper; + const onShowSizeChange = jest.fn(); + + beforeEach(() => { + wrapper = mount( + + `${range[0]} - ${range[1]} of ${total} items` + } + />, + ); + }); + + afterEach(() => { + wrapper.unmount(); + onShowSizeChange.mockReset(); + }); + + it('should call onShowSizeChange when no change', () => { + const sizeChanger = wrapper + .find('.rc-pagination-options-size-changer') + .at(0); + sizeChanger.simulate('click'); + const input = sizeChanger.find('input'); + input.simulate('keyDown', { key: 'Down', keyCode: 40, which: 40 }); + input.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); + expect(onShowSizeChange).not.toBeCalled(); + }); + + it('current should equal to the current in onShowSizeChange', () => { + const sizeChanger = wrapper + .find('.rc-pagination-options-size-changer') + .at(0); + sizeChanger.simulate('click'); + const input = sizeChanger.find('input'); + input.simulate('keyDown', { key: 'Down', keyCode: 40, which: 40 }); + input.simulate('keyDown', { key: 'Down', keyCode: 40, which: 40 }); + input.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); + expect(onShowSizeChange).toHaveBeenLastCalledWith( + wrapper.state().current, + 20, + ); + }); + + it('when total is 0, pager should show and disabled', () => { + const itemButton = wrapper.find('.rc-pagination-item'); + expect(itemButton.hasClass('rc-pagination-item-disabled')).toBe(true); + }); + + it('when total is 0, `from` and `to` should be 0', () => { + const totalText = wrapper.find('.rc-pagination-total-text'); + expect(totalText.text()).toBe('0 - 0 of 0 items'); + }); }); diff --git a/tests/jumper.test.js b/tests/jumper.test.js new file mode 100644 index 00000000..3e7ca4cc --- /dev/null +++ b/tests/jumper.test.js @@ -0,0 +1,113 @@ +import React from 'react'; +import { mount } from 'enzyme'; +import Pagination from '../src'; + +describe('Pagination with jumper', () => { + let wrapper; + const onChange = jest.fn(); + + beforeEach(() => { + wrapper = mount( + , + ); + }); + + afterEach(() => { + wrapper.unmount(); + onChange.mockReset(); + }); + + it('when input less than 1', () => { + const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); + const input = quickJumper.find('input'); + input.simulate('change', { target: { value: '-1' } }); + input.simulate('keyUp', { key: 'Enter', keyCode: 13, which: 13 }); + expect(wrapper.state().current).toBe(1); + expect(onChange).toHaveBeenLastCalledWith(1, 10); + }); + + it('should not call onChange when blur input', () => { + const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); + const input = quickJumper.find('input'); + input.simulate('blur'); + expect(wrapper.state().current).toBe(10); + expect(onChange).not.toBeCalled(); + }); +}); + +describe('simple quick jumper', () => { + let wrapper; + const onChange = jest.fn(); + + beforeEach(() => { + wrapper = mount( + go }} + showTotal={(total, range) => + `${range[0]} - ${range[1]} of ${total} items` + } + />, + ); + }); + + afterEach(() => { + wrapper.unmount(); + onChange.mockReset(); + }); + + it('should quick jump to expect page', () => { + const quickJumper = wrapper.find('.rc-pagination-simple'); + const input = quickJumper.find('input'); + const goButton = quickJumper.find('button'); + input.simulate('change', { target: { value: '2' } }); + goButton.simulate('click'); + expect(wrapper.state().current).toBe(2); + expect(onChange).toHaveBeenLastCalledWith(2, 10); + }); + + describe('custom showQuickJumper button Pagination', () => { + beforeEach(() => { + wrapper = mount( + go }} + showTotal={(total, range) => + `${range[0]} - ${range[1]} of ${total} items` + } + />, + ); + }); + + it('should quick jump to expect page', () => { + const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); + const input = quickJumper.find('input'); + const goButton = quickJumper.find('button'); + input.simulate('change', { target: { value: '2' } }); + goButton.simulate('click'); + expect(wrapper.state().current).toBe(2); + expect(onChange).toHaveBeenLastCalledWith(2, 10); + }); + + // https://github.com/ant-design/ant-design/issues/10080 + it('should not quick jump to previous page when input invalid char', () => { + const nextButton = wrapper.find('.rc-pagination-next'); + nextButton.simulate('click'); + const input = wrapper.find('input'); + input.simulate('change', { target: { value: '&' } }); + input.simulate('keyUp', { key: 'Enter', keyCode: 13, which: 13 }); + expect(wrapper.state().current).toBe(2); + expect(onChange).toHaveBeenLastCalledWith(2, 10); + }); + }); +}); diff --git a/tests/simple.test.js b/tests/simple.test.js new file mode 100644 index 00000000..db2fb34b --- /dev/null +++ b/tests/simple.test.js @@ -0,0 +1,51 @@ +import React from 'react'; +import { mount } from 'enzyme'; +import Pagination from '../src'; + +describe('simple Pagination', () => { + let wrapper; + + beforeEach(() => { + wrapper = mount( + + `${range[0]} - ${range[1]} of ${total} items` + } + />, + ); + }); + + afterEach(() => { + wrapper.unmount(); + }); + + it('default current page is 1', () => { + expect(wrapper.state().current).toBe(1); + }); + + it('prev-button should be disabled', () => { + const prevButton = wrapper.find('.rc-pagination-prev'); + expect(prevButton.hasClass('rc-pagination-disabled')).toBe(true); + expect(prevButton.getDOMNode().getAttribute('aria-disabled')).toBe('true'); + }); + + it('no quick jump', () => { + const simplePagers = wrapper.find('.rc-pagination-simple-pager'); + expect(simplePagers.length).toBe(1); + }); + + it('simple Pagination when current is greater than page count', () => { + const component = mount( + , + ); + expect(component.state().current).toBe(3); + const greaterCurrent = component.find('.rc-pagination-simple'); + const input = greaterCurrent.find('input'); + input.simulate('change', { target: { value: '313423434343343452121' } }); + expect(input.getDOMNode().value).toBe('3'); + expect(component.state().current).toBe(3); + }); +}); From e211eaf5c26dbc7f077ae98378c9fe99f662d3f5 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 20:44:22 +0800 Subject: [PATCH 033/262] :hammer: refactor render --- src/Pagination.jsx | 167 +++++++++++++++++++++++---------------------- 1 file changed, 87 insertions(+), 80 deletions(-) diff --git a/src/Pagination.jsx b/src/Pagination.jsx index 5d8ace8c..a1a39acb 100644 --- a/src/Pagination.jsx +++ b/src/Pagination.jsx @@ -333,15 +333,28 @@ class Pagination extends React.Component { hideOnSinglePage, total, locale, + showQuickJumper, + showLessItems, + showTitle, + showTotal, + showSizeChanger, + simple, + itemRender, + showPrevNextJumpers, + jumpPrevIcon, + jumpNextIcon, + selectComponentClass, + selectPrefixCls, + pageSizeOptions, } = this.props; + const { current, pageSize, currentInputValue } = this.state; + // When hideOnSinglePage is true and there is only 1 page, hide the pager - if (hideOnSinglePage === true && total <= this.state.pageSize) { + if (hideOnSinglePage === true && total <= pageSize) { return null; } - const { props } = this; - const allPages = calculatePage(undefined, this.state, this.props); const pagerList = []; let jumpPrev = null; @@ -350,26 +363,28 @@ class Pagination extends React.Component { let lastPager = null; let gotoButton = null; - const goButton = props.showQuickJumper && props.showQuickJumper.goButton; - const pageBufferSize = props.showLessItems ? 1 : 2; - const { current, pageSize } = this.state; + const goButton = showQuickJumper && showQuickJumper.goButton; + const pageBufferSize = showLessItems ? 1 : 2; const prevPage = current - 1 > 0 ? current - 1 : 0; const nextPage = current + 1 < allPages ? current + 1 : allPages; - const dataOrAriaAttributeProps = Object.keys(props).reduce((prev, key) => { - if ( - key.substr(0, 5) === 'data-' || - key.substr(0, 5) === 'aria-' || - key === 'role' - ) { - // eslint-disable-next-line no-param-reassign - prev[key] = props[key]; - } - return prev; - }, {}); + const dataOrAriaAttributeProps = Object.keys(this.props).reduce( + (prev, key) => { + if ( + key.substr(0, 5) === 'data-' || + key.substr(0, 5) === 'aria-' || + key === 'role' + ) { + // eslint-disable-next-line no-param-reassign + prev[key] = this.props[key]; + } + return prev; + }, + {}, + ); - if (props.simple) { + if (simple) { if (goButton) { if (typeof goButton === 'boolean') { gotoButton = ( @@ -390,11 +405,7 @@ class Pagination extends React.Component { } gotoButton = (
    • {gotoButton} @@ -410,7 +421,7 @@ class Pagination extends React.Component { {...dataOrAriaAttributeProps} >
    • , ); } } else { - const prevItemTitle = props.showLessItems ? locale.prev_3 : locale.prev_5; - const nextItemTitle = props.showLessItems ? locale.next_3 : locale.next_5; - if (props.showPrevNextJumpers) { - let jumpPrevClassString = `${prefixCls}-jump-prev`; - if (props.jumpPrevIcon) { - jumpPrevClassString += ` ${prefixCls}-jump-prev-custom-icon`; - } + const prevItemTitle = showLessItems ? locale.prev_3 : locale.prev_5; + const nextItemTitle = showLessItems ? locale.next_3 : locale.next_5; + if (showPrevNextJumpers) { jumpPrev = (
    • - {props.itemRender( + {itemRender( this.getJumpPrevPage(), 'jump-prev', - this.getItemIcon(props.jumpPrevIcon), + this.getItemIcon(jumpPrevIcon), )}
    • ); - let jumpNextClassString = `${prefixCls}-jump-next`; - if (props.jumpNextIcon) { - jumpNextClassString += ` ${prefixCls}-jump-next-custom-icon`; - } jumpNext = (
    • - {props.itemRender( + {itemRender( this.getJumpNextPage(), 'jump-next', - this.getItemIcon(props.jumpNextIcon), + this.getItemIcon(jumpNextIcon), )}
    • ); } lastPager = ( ); firstPager = ( ); @@ -566,21 +573,21 @@ class Pagination extends React.Component { const active = current === i; pagerList.push( , ); } if (current - 1 >= pageBufferSize * 2 && current !== 1 + 2) { - pagerList[0] = React.cloneElement(pagerList[0], { + pagerList[0] = cloneElement(pagerList[0], { className: `${prefixCls}-item-after-jump-prev`, }); pagerList.unshift(jumpPrev); @@ -589,7 +596,7 @@ class Pagination extends React.Component { allPages - current >= pageBufferSize * 2 && current !== allPages - 2 ) { - pagerList[pagerList.length - 1] = React.cloneElement( + pagerList[pagerList.length - 1] = cloneElement( pagerList[pagerList.length - 1], { className: `${prefixCls}-item-before-jump-next`, @@ -608,12 +615,12 @@ class Pagination extends React.Component { let totalText = null; - if (props.showTotal) { + if (showTotal) { totalText = (
    • - {props.showTotal(props.total, [ - props.total === 0 ? 0 : (current - 1) * pageSize + 1, - current * pageSize > props.total ? props.total : current * pageSize, + {showTotal(total, [ + total === 0 ? 0 : (current - 1) * pageSize + 1, + current * pageSize > total ? total : current * pageSize, ])}
    • ); @@ -625,47 +632,47 @@ class Pagination extends React.Component { className={classNames(prefixCls, className, { [`${prefixCls}-disabled`]: disabled, })} - style={props.style} + style={style} unselectable="unselectable" ref={this.savePaginationNode} {...dataOrAriaAttributeProps} > {totalText}
    • {this.renderPrev(prevPage)}
    • {pagerList}
    • {this.renderNext(nextPage)}
    • From bdb3a83c6bb9e5059ed207285844ddb33dd6fc41 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 20:47:07 +0800 Subject: [PATCH 034/262] :up: upgrade devDeps --- package.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index d70c8bfe..32d98f31 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "2.0.0", + "version": "1.21.0", "description": "pagination ui component for react", "keywords": [ "react", @@ -47,17 +47,17 @@ "@types/classnames": "^2.2.9", "@types/react": "^16.9.2", "@types/react-dom": "^16.9.0", - "@umijs/fabric": "^1.1.10", + "@umijs/fabric": "^2.0.3", "coveralls": "^3.0.6", - "cross-env": "^6.0.0", + "cross-env": "^7.0.0", "enzyme": "^3.0.0", "enzyme-adapter-react-16": "^1.0.1", "enzyme-to-json": "^3.4.0", "eslint": "^6.6.0", "father": "^2.13.4", - "husky": "^3.0.9", + "husky": "^4.2.3", "less": "^3.10.3", - "np": "^5.1.0", + "np": "^6.2.0", "prettier": "^1.18.2", "pretty-quick": "^2.0.1", "react": "^16.0.0", From d3aac606d1c7bfb5fdc416c01469c26b96218ab7 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 21:01:45 +0800 Subject: [PATCH 035/262] add test case --- tests/jumper.test.js | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/tests/jumper.test.js b/tests/jumper.test.js index 3e7ca4cc..f389d59b 100644 --- a/tests/jumper.test.js +++ b/tests/jumper.test.js @@ -110,4 +110,40 @@ describe('simple quick jumper', () => { expect(onChange).toHaveBeenLastCalledWith(2, 10); }); }); + + it('goButton could be true', () => { + wrapper = mount( + , + ); + expect(wrapper.find('button').exists()).toBe(true); + }); + + it('goButton defaultly hidden', () => { + wrapper = mount( + , + ); + expect(wrapper.find('button').exists()).toBe(false); + }); + + it('goButton could be false', () => { + wrapper = mount( + , + ); + expect(wrapper.find('button').exists()).toBe(false); + }); }); From 73906bbe119d4fb05f73c92fa839888ee9d9eaa4 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 21:06:19 +0800 Subject: [PATCH 036/262] remove unused code --- examples/locale.js | 1 - 1 file changed, 1 deletion(-) diff --git a/examples/locale.js b/examples/locale.js index 94f626dc..94bfaa25 100644 --- a/examples/locale.js +++ b/examples/locale.js @@ -1,6 +1,5 @@ /* eslint func-names: 0, no-console: 0 */ import React from 'react'; -import ReactDOM from 'react-dom'; import Select from 'rc-select'; import Pagination from '..'; import localeInfo from '../src/locale/en_US'; From ea672f9c7362537b79eb5183783f737fdd8c8916 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 21:20:38 +0800 Subject: [PATCH 037/262] :wastebasket: remove dist file --- .gitignore | 1 + assets/index.less | 2 - dist/rc-pagination.css | 324 -- dist/rc-pagination.css.map | 1 - dist/rc-pagination.js | 5857 -------------------------------- dist/rc-pagination.js.map | 1 - dist/rc-pagination.min.css | 324 -- dist/rc-pagination.min.css.map | 1 - dist/rc-pagination.min.js | 2476 -------------- 9 files changed, 1 insertion(+), 8986 deletions(-) delete mode 100644 dist/rc-pagination.css delete mode 100644 dist/rc-pagination.css.map delete mode 100644 dist/rc-pagination.js delete mode 100644 dist/rc-pagination.js.map delete mode 100644 dist/rc-pagination.min.css delete mode 100644 dist/rc-pagination.min.css.map delete mode 100644 dist/rc-pagination.min.js diff --git a/.gitignore b/.gitignore index 971b25d7..e09cd3b0 100644 --- a/.gitignore +++ b/.gitignore @@ -29,3 +29,4 @@ yarn.lock package-lock.json coverage/ .doc +dist \ No newline at end of file diff --git a/assets/index.less b/assets/index.less index 37f7272d..f3f84087 100644 --- a/assets/index.less +++ b/assets/index.less @@ -1,5 +1,3 @@ -@import '~rc-select/assets/index.less'; - @prefixClass: rc-pagination; .disabled-item() { diff --git a/dist/rc-pagination.css b/dist/rc-pagination.css deleted file mode 100644 index bdc703f5..00000000 --- a/dist/rc-pagination.css +++ /dev/null @@ -1,324 +0,0 @@ -.rc-pagination { - font-size: 12px; - font-family: 'Arial'; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - padding: 0; -} -.rc-pagination > li { - list-style: none; -} -.rc-pagination-total-text { - float: left; - height: 30px; - line-height: 30px; - list-style: none; - padding: 0; - margin: 0 8px 0 0; -} -.rc-pagination:after { - content: ' '; - display: block; - height: 0; - clear: both; - overflow: hidden; - visibility: hidden; -} -.rc-pagination-item { - cursor: pointer; - border-radius: 6px; - min-width: 28px; - height: 28px; - line-height: 28px; - text-align: center; - list-style: none; - float: left; - border: 1px solid #d9d9d9; - background-color: #fff; - margin-right: 8px; -} -.rc-pagination-item a { - text-decoration: none; - color: #666; -} -.rc-pagination-item:hover { - border-color: #2db7f5; -} -.rc-pagination-item:hover a { - color: #2db7f5; -} -.rc-pagination-item-disabled { - cursor: not-allowed; -} -.rc-pagination-item-disabled:hover { - border-color: #d9d9d9; -} -.rc-pagination-item-disabled:hover a { - color: #d9d9d9; -} -.rc-pagination-item-active { - background-color: #2db7f5; - border-color: #2db7f5; -} -.rc-pagination-item-active a { - color: #fff; -} -.rc-pagination-item-active:hover a { - color: #fff; -} -.rc-pagination-jump-prev:after, -.rc-pagination-jump-next:after { - content: '\2022\2022\2022'; - display: block; - letter-spacing: 2px; - color: #ccc; - font-size: 12px; - margin-top: 1px; -} -.rc-pagination-jump-prev:hover:after, -.rc-pagination-jump-next:hover:after { - color: #2db7f5; -} -.rc-pagination-jump-prev:hover:after { - content: '\AB'; -} -.rc-pagination-jump-next:hover:after { - content: '\BB'; -} -.rc-pagination-jump-prev-custom-icon, -.rc-pagination-jump-next-custom-icon { - position: relative; -} -.rc-pagination-jump-prev-custom-icon:after, -.rc-pagination-jump-next-custom-icon:after { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - margin: auto; - transition: all 0.2s; - content: '\2022\2022\2022'; - opacity: 1; - display: block; - letter-spacing: 2px; - color: #ccc; - font-size: 12px; - margin-top: 1px; -} -.rc-pagination-jump-prev-custom-icon .custom-icon-jump-prev, -.rc-pagination-jump-next-custom-icon .custom-icon-jump-prev, -.rc-pagination-jump-prev-custom-icon .custom-icon-jump-next, -.rc-pagination-jump-next-custom-icon .custom-icon-jump-next { - opacity: 0; - transition: all 0.2s; -} -.rc-pagination-jump-prev-custom-icon:hover:after, -.rc-pagination-jump-next-custom-icon:hover:after { - opacity: 0; - color: #ccc; -} -.rc-pagination-jump-prev-custom-icon:hover .custom-icon-jump-prev, -.rc-pagination-jump-next-custom-icon:hover .custom-icon-jump-prev, -.rc-pagination-jump-prev-custom-icon:hover .custom-icon-jump-next, -.rc-pagination-jump-next-custom-icon:hover .custom-icon-jump-next { - opacity: 1; - color: #2db7f5; -} -.rc-pagination-prev, -.rc-pagination-jump-prev, -.rc-pagination-jump-next { - margin-right: 8px; -} -.rc-pagination-prev, -.rc-pagination-next, -.rc-pagination-jump-prev, -.rc-pagination-jump-next { - cursor: pointer; - color: #666; - font-size: 10px; - border-radius: 6px; - list-style: none; - min-width: 28px; - height: 28px; - line-height: 28px; - float: left; - text-align: center; -} -.rc-pagination-prev a:after { - content: '\2039'; - display: block; -} -.rc-pagination-next a:after { - content: '\203A'; - display: block; -} -.rc-pagination-prev, -.rc-pagination-next { - border: 1px solid #d9d9d9; - font-size: 18px; -} -.rc-pagination-prev a, -.rc-pagination-next a { - color: #666; -} -.rc-pagination-prev a:after, -.rc-pagination-next a:after { - margin-top: -1px; -} -.rc-pagination-disabled { - cursor: not-allowed; -} -.rc-pagination-disabled a { - color: #ccc; -} -.rc-pagination-disabled .rc-pagination-item, -.rc-pagination-disabled .rc-pagination-prev, -.rc-pagination-disabled .rc-pagination-next { - cursor: not-allowed; -} -.rc-pagination-disabled .rc-pagination-item:hover, -.rc-pagination-disabled .rc-pagination-prev:hover, -.rc-pagination-disabled .rc-pagination-next:hover { - border-color: #d9d9d9; -} -.rc-pagination-disabled .rc-pagination-item:hover a, -.rc-pagination-disabled .rc-pagination-prev:hover a, -.rc-pagination-disabled .rc-pagination-next:hover a { - color: #d9d9d9; -} -.rc-pagination-disabled .rc-pagination-jump-prev, -.rc-pagination-disabled .rc-pagination-jump-next { - pointer-events: none; -} -.rc-pagination-options { - float: left; - margin-left: 15px; -} -.rc-pagination-options-size-changer { - float: left; - width: 80px; -} -.rc-pagination-options-quick-jumper { - float: left; - margin-left: 16px; - height: 28px; - line-height: 28px; -} -.rc-pagination-options-quick-jumper input { - margin: 0 8px; - box-sizing: border-box; - background-color: #fff; - border-radius: 6px; - border: 1px solid #d9d9d9; - outline: none; - padding: 3px 12px; - width: 50px; - height: 28px; -} -.rc-pagination-options-quick-jumper input:hover { - border-color: #2db7f5; -} -.rc-pagination-options-quick-jumper button { - display: inline-block; - margin: 0 8px; - font-weight: 500; - text-align: center; - -ms-touch-action: manipulation; - touch-action: manipulation; - cursor: pointer; - background-image: none; - border: 1px solid transparent; - white-space: nowrap; - padding: 0 15px; - font-size: 12px; - border-radius: 6px; - height: 28px; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); - position: relative; - color: rgba(0, 0, 0, 0.65); - background-color: #fff; - border-color: #d9d9d9; -} -.rc-pagination-options-quick-jumper button:hover, -.rc-pagination-options-quick-jumper button:active, -.rc-pagination-options-quick-jumper button:focus { - color: #2db7f5; - background-color: #fff; - border-color: #2db7f5; -} -.rc-pagination-simple .rc-pagination-prev, -.rc-pagination-simple .rc-pagination-next { - border: none; - height: 24px; - line-height: 24px; - margin: 0; - font-size: 18px; -} -.rc-pagination-simple .rc-pagination-simple-pager { - float: left; - margin-right: 8px; - list-style: none; -} -.rc-pagination-simple .rc-pagination-simple-pager .rc-pagination-slash { - margin: 0 10px; -} -.rc-pagination-simple .rc-pagination-simple-pager input { - margin: 0 8px; - box-sizing: border-box; - background-color: #fff; - border-radius: 6px; - border: 1px solid #d9d9d9; - outline: none; - padding: 5px 8px; - min-height: 20px; -} -.rc-pagination-simple .rc-pagination-simple-pager input:hover { - border-color: #2db7f5; -} -.rc-pagination-simple .rc-pagination-simple-pager button { - display: inline-block; - margin: 0 8px; - font-weight: 500; - text-align: center; - -ms-touch-action: manipulation; - touch-action: manipulation; - cursor: pointer; - background-image: none; - border: 1px solid transparent; - white-space: nowrap; - padding: 0 8px; - font-size: 12px; - border-radius: 6px; - height: 26px; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); - position: relative; - color: rgba(0, 0, 0, 0.65); - background-color: #fff; - border-color: #d9d9d9; -} -.rc-pagination-simple .rc-pagination-simple-pager button:hover, -.rc-pagination-simple .rc-pagination-simple-pager button:active, -.rc-pagination-simple .rc-pagination-simple-pager button:focus { - color: #2db7f5; - background-color: #fff; - border-color: #2db7f5; -} -@media only screen and (max-width: 1024px) { - .rc-pagination-item-after-jump-prev, - .rc-pagination-item-before-jump-next { - display: none; - } -} - -/*# sourceMappingURL=rc-pagination.css.map*/ diff --git a/dist/rc-pagination.css.map b/dist/rc-pagination.css.map deleted file mode 100644 index a549fd26..00000000 --- a/dist/rc-pagination.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./assets/index.less"],"names":[],"mappings":"AAaA;EACE;EACA;EACA;KAAA;MAAA;UAAA;EACA;CAZD;AAQD;EAOI;CAZH;AAeC;EACE;EACA;EACA;EACA;EACA;EACA;CAbH;AAgBC;EACE;EACA;EACA;EACA;EACA;EACA;CAdH;AAiBC;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAfH;AAIC;EAcI;EACA;CAfL;AAkBG;EACE;CAhBL;AAeG;EAGI;CAfP;AAmBG;EA/DF;CA+CD;AA7CC;EACE;CA+CH;AAhDC;EAGI;CAgDL;AAcG;EACE;EACA;CAZL;AAUG;EAKI;CAZP;AAeK;EAEI;CAdT;AAqBG;;EACE;EACA;EACA;EACA;EACA;EACA;CAlBL;AAsBK;;EACE;CAnBP;AA2BK;EACE;CAzBP;AAgCK;EACE;CA9BP;AAmCC;;EAEE;CAjCH;AAmCG;;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;CAjCL;AAcC;;;;EAwBI;EACA;CAhCL;AAoCK;;EACE;EACA;CAjCP;AA8BG;;;;EAQI;EACA;CAhCP;AAqCC;;;EACE;CAjCH;AAmCC;;;;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CA9BH;AAmCK;EACE;EACA;CAjCP;AAwCK;EACE;EACA;CAtCP;AA2CC;;EACE;EACA;CAxCH;AAsCC;;EAII;CAtCL;AAuCK;;EACE;CApCP;AAyCC;EACE;CAvCH;AAsCC;EAGI;CAtCL;AAmCC;;;EA5MA;CA8KD;AA5KC;;;EACE;CAgLH;AAjLC;;;EAGI;CAmLL;AAoBC;;EAcI;CA9BL;AAkCC;EACE;EACA;CAhCH;AAiCG;EACE;EACA;CA/BL;AAkCG;EACE;EACA;EACA;EACA;CAhCL;AA4BG;EAOI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAhCP;AAkCO;EACE;CAhCT;AAcG;EAuBI;EACA;EACA;EACA;EACA;MAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;KAAA;MAAA;UAAA;EACA;EACA;EACA;EACA;EACA;CAlCP;AAoCO;;;EACE;EACA;EACA;CAhCT;AAsCC;;EAEI;EACA;EACA;EACA;EACA;CApCL;AA8BC;EAUI;EACA;EACA;CArCL;AAyBC;EAeM;CArCP;AAsBC;EAmBM;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAtCP;AAwCO;EACE;CAtCT;AASC;EAkCM;EACA;EACA;EACA;EACA;MAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;KAAA;MAAA;UAAA;EACA;EACA;EACA;EACA;EACA;CAxCP;AA0CO;;;EACE;EACA;EACA;CAtCT;AA8CD;EAEI;;IAEE;GA7CH;CACF","file":"rc-pagination.css","sourcesContent":["@prefixClass: rc-pagination;\n\n.disabled-item() {\n cursor: not-allowed;\n\n &:hover {\n border-color: #d9d9d9;\n a {\n color: #d9d9d9;\n }\n }\n}\n\n.@{prefixClass} {\n font-size: 12px;\n font-family: 'Arial';\n user-select: none;\n padding: 0;\n\n > li {\n list-style: none;\n }\n\n &-total-text {\n float: left;\n height: 30px;\n line-height: 30px;\n list-style: none;\n padding: 0;\n margin: 0 8px 0 0;\n }\n\n &:after {\n content: \" \";\n display: block;\n height: 0;\n clear: both;\n overflow: hidden;\n visibility: hidden;\n }\n\n &-item {\n cursor: pointer;\n border-radius: 6px;\n min-width: 28px;\n height: 28px;\n line-height: 28px;\n text-align: center;\n list-style: none;\n float: left;\n border: 1px solid #d9d9d9;\n background-color: #fff;\n margin-right: 8px;\n\n a {\n text-decoration: none;\n color: #666;\n }\n\n &:hover {\n border-color: #2db7f5;\n a {\n color: #2db7f5;\n }\n }\n\n &-disabled {\n .disabled-item();\n }\n\n &-active {\n background-color: #2db7f5;\n border-color: #2db7f5;\n\n a {\n color: #fff;\n }\n\n &:hover {\n a {\n color: #fff;\n }\n }\n }\n }\n\n &-jump-prev, &-jump-next {\n &:after {\n content: \"•••\";\n display: block;\n letter-spacing: 2px;\n color: #ccc;\n font-size: 12px;\n margin-top: 1px;\n }\n\n &:hover {\n &:after {\n color: #2db7f5;\n }\n }\n\n }\n\n &-jump-prev {\n &:hover {\n &:after {\n content: \"«\";\n }\n }\n }\n\n &-jump-next {\n &:hover {\n &:after {\n content: \"»\";\n }\n }\n }\n \n &-jump-prev-custom-icon,\n &-jump-next-custom-icon {\n position: relative;\n\n &:after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n margin: auto;\n transition: all .2s;\n\n content: \"•••\";\n opacity: 1;\n display: block;\n letter-spacing: 2px;\n color: #ccc;\n font-size: 12px;\n margin-top: 1px;\n }\n\n .custom-icon-jump-prev,\n .custom-icon-jump-next {\n opacity: 0;\n transition: all .2s;\n }\n\n &:hover {\n &:after {\n opacity: 0;\n color: #ccc;\n }\n\n .custom-icon-jump-prev,\n .custom-icon-jump-next {\n opacity: 1;\n color: #2db7f5;\n }\n }\n }\n\n &-prev, &-jump-prev, &-jump-next {\n margin-right: 8px;\n }\n &-prev, &-next, &-jump-prev, &-jump-next {\n cursor: pointer;\n color: #666;\n font-size: 10px;\n border-radius: 6px;\n list-style: none;\n min-width: 28px;\n height: 28px;\n line-height: 28px;\n float: left;\n text-align: center;\n }\n\n &-prev {\n a {\n &:after {\n content: \"‹\";\n display: block;\n }\n }\n }\n\n &-next {\n a {\n &:after {\n content: \"›\";\n display: block;\n }\n }\n }\n\n &-prev, &-next {\n border: 1px solid #d9d9d9;\n font-size: 18px;\n a {\n color: #666;\n &:after {\n margin-top: -1px;\n }\n }\n }\n\n &-disabled {\n cursor: not-allowed;\n a {\n color: #ccc;\n }\n\n .@{prefixClass}-item,\n .@{prefixClass}-prev,\n .@{prefixClass}-next {\n .disabled-item();\n }\n\n .@{prefixClass}-jump-prev,\n .@{prefixClass}-jump-next {\n pointer-events: none;\n }\n }\n\n &-options {\n float: left;\n margin-left: 15px;\n &-size-changer {\n float: left;\n width: 80px;\n }\n\n &-quick-jumper {\n float: left;\n margin-left: 16px;\n height: 28px;\n line-height: 28px;\n\n input {\n margin: 0 8px;\n box-sizing: border-box;\n background-color: #fff;\n border-radius: 6px;\n border: 1px solid #d9d9d9;\n outline: none;\n padding: 3px 12px;\n width: 50px;\n height: 28px;\n\n &:hover {\n border-color: #2db7f5;\n }\n }\n\n button {\n display: inline-block;\n margin: 0 8px;\n font-weight: 500;\n text-align: center;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 0 15px;\n font-size: 12px;\n border-radius: 6px;\n height: 28px;\n user-select: none;\n transition: all .3s cubic-bezier(.645,.045,.355,1);\n position: relative;\n color: rgba(0,0,0,.65);\n background-color: #fff;\n border-color: #d9d9d9;\n\n &:hover, &:active, &:focus {\n color: #2db7f5;\n background-color: #fff;\n border-color: #2db7f5;\n }\n }\n }\n }\n\n &-simple {\n .@{prefixClass}-prev, .@{prefixClass}-next {\n border: none;\n height: 24px;\n line-height: 24px;\n margin: 0;\n font-size: 18px;\n }\n\n .@{prefixClass}-simple-pager {\n float: left;\n margin-right: 8px;\n list-style: none;\n\n .@{prefixClass}-slash {\n margin: 0 10px;\n }\n\n input {\n margin: 0 8px;\n box-sizing: border-box;\n background-color: #fff;\n border-radius: 6px;\n border: 1px solid #d9d9d9;\n outline: none;\n padding: 5px 8px;\n min-height: 20px;\n\n &:hover {\n border-color: #2db7f5;\n }\n }\n\n button {\n display: inline-block;\n margin: 0 8px;\n font-weight: 500;\n text-align: center;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 0 8px;\n font-size: 12px;\n border-radius: 6px;\n height: 26px;\n user-select: none;\n transition: all .3s cubic-bezier(.645,.045,.355,1);\n position: relative;\n color: rgba(0,0,0,.65);\n background-color: #fff;\n border-color: #d9d9d9;\n\n &:hover, &:active, &:focus {\n color: #2db7f5;\n background-color: #fff;\n border-color: #2db7f5;\n }\n }\n\n }\n }\n}\n\n@media only screen and (max-width: 1024px) {\n .@{prefixClass}-item {\n &-after-jump-prev,\n &-before-jump-next {\n display: none;\n }\n }\n}\n\n\n// WEBPACK FOOTER //\n// ./assets/index.less"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/rc-pagination.js b/dist/rc-pagination.js deleted file mode 100644 index 5e86d0b6..00000000 --- a/dist/rc-pagination.js +++ /dev/null @@ -1,5857 +0,0 @@ -(function webpackUniversalModuleDefinition(root, factory) { - if (typeof exports === 'object' && typeof module === 'object') - module.exports = factory(require('react')); - else if (typeof define === 'function' && define.amd) - define(['react'], factory); - else if (typeof exports === 'object') - exports['rc-pagination'] = factory(require('react')); - else root['rc-pagination'] = factory(root['React']); -})(this, function(__WEBPACK_EXTERNAL_MODULE_33__) { - return /******/ (function(modules) { - // webpackBootstrap - /******/ // The module cache - /******/ var installedModules = {}; // The require function - /******/ - /******/ /******/ function __webpack_require__(moduleId) { - /******/ - /******/ // Check if module is in cache - /******/ if (installedModules[moduleId]) { - /******/ return installedModules[moduleId].exports; - /******/ - } // Create a new module (and put it into the cache) - /******/ /******/ var module = (installedModules[moduleId] = { - /******/ i: moduleId, - /******/ l: false, - /******/ exports: {}, - /******/ - }); // Execute the module function - /******/ - /******/ /******/ modules[moduleId].call( - module.exports, - module, - module.exports, - __webpack_require__, - ); // Flag the module as loaded - /******/ - /******/ /******/ module.l = true; // Return the exports of the module - /******/ - /******/ /******/ return module.exports; - /******/ - } // expose the modules object (__webpack_modules__) - /******/ - /******/ - /******/ /******/ __webpack_require__.m = modules; // expose the module cache - /******/ - /******/ /******/ __webpack_require__.c = installedModules; // identity function for calling harmony imports with the correct context - /******/ - /******/ /******/ __webpack_require__.i = function(value) { - return value; - }; // define getter function for harmony exports - /******/ - /******/ /******/ __webpack_require__.d = function(exports, name, getter) { - /******/ if (!__webpack_require__.o(exports, name)) { - /******/ Object.defineProperty(exports, name, { - /******/ configurable: false, - /******/ enumerable: true, - /******/ get: getter, - /******/ - }); - /******/ - } - /******/ - }; // getDefaultExport function for compatibility with non-harmony modules - /******/ - /******/ /******/ __webpack_require__.n = function(module) { - /******/ var getter = - module && module.__esModule - ? /******/ function getDefault() { - return module['default']; - } - : /******/ function getModuleExports() { - return module; - }; - /******/ __webpack_require__.d(getter, 'a', getter); - /******/ return getter; - /******/ - }; // Object.prototype.hasOwnProperty.call - /******/ - /******/ /******/ __webpack_require__.o = function(object, property) { - return Object.prototype.hasOwnProperty.call(object, property); - }; // __webpack_public_path__ - /******/ - /******/ /******/ __webpack_require__.p = ''; // Load entry module and return exports - /******/ - /******/ /******/ return __webpack_require__((__webpack_require__.s = 107)); - /******/ - })( - /************************************************************************/ - /******/ [ - /* 0 */ - /***/ function(module, exports) { - var core = (module.exports = { version: '2.6.11' }); - if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef - - /***/ - }, - /* 1 */ - /***/ function(module, exports, __webpack_require__) { - // Thank's IE8 for his funny defineProperty - module.exports = !__webpack_require__(11)(function() { - return ( - Object.defineProperty({}, 'a', { - get: function() { - return 7; - }, - }).a != 7 - ); - }); - - /***/ - }, - /* 2 */ - /***/ function(module, exports) { - // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 - var global = (module.exports = - typeof window != 'undefined' && window.Math == Math - ? window - : typeof self != 'undefined' && self.Math == Math - ? self - : // eslint-disable-next-line no-new-func - Function('return this')()); - if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef - - /***/ - }, - /* 3 */ - /***/ function(module, exports) { - var hasOwnProperty = {}.hasOwnProperty; - module.exports = function(it, key) { - return hasOwnProperty.call(it, key); - }; - - /***/ - }, - /* 4 */ - /***/ function(module, exports, __webpack_require__) { - var anObject = __webpack_require__(10); - var IE8_DOM_DEFINE = __webpack_require__(46); - var toPrimitive = __webpack_require__(28); - var dP = Object.defineProperty; - - exports.f = __webpack_require__(1) - ? Object.defineProperty - : function defineProperty(O, P, Attributes) { - anObject(O); - P = toPrimitive(P, true); - anObject(Attributes); - if (IE8_DOM_DEFINE) - try { - return dP(O, P, Attributes); - } catch (e) { - /* empty */ - } - if ('get' in Attributes || 'set' in Attributes) - throw TypeError('Accessors not supported!'); - if ('value' in Attributes) O[P] = Attributes.value; - return O; - }; - - /***/ - }, - /* 5 */ - /***/ function(module, exports, __webpack_require__) { - var global = __webpack_require__(2); - var core = __webpack_require__(0); - var ctx = __webpack_require__(44); - var hide = __webpack_require__(6); - var has = __webpack_require__(3); - var PROTOTYPE = 'prototype'; - - var $export = function(type, name, source) { - var IS_FORCED = type & $export.F; - var IS_GLOBAL = type & $export.G; - var IS_STATIC = type & $export.S; - var IS_PROTO = type & $export.P; - var IS_BIND = type & $export.B; - var IS_WRAP = type & $export.W; - var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); - var expProto = exports[PROTOTYPE]; - var target = IS_GLOBAL - ? global - : IS_STATIC - ? global[name] - : (global[name] || {})[PROTOTYPE]; - var key, own, out; - if (IS_GLOBAL) source = name; - for (key in source) { - // contains in native - own = !IS_FORCED && target && target[key] !== undefined; - if (own && has(exports, key)) continue; - // export native or passed - out = own ? target[key] : source[key]; - // prevent global pollution for namespaces - exports[key] = - IS_GLOBAL && typeof target[key] != 'function' - ? source[key] - : // bind timers to global for call from export context - IS_BIND && own - ? ctx(out, global) - : // wrap global constructors for prevent change them in library - IS_WRAP && target[key] == out - ? (function(C) { - var F = function(a, b, c) { - if (this instanceof C) { - switch (arguments.length) { - case 0: - return new C(); - case 1: - return new C(a); - case 2: - return new C(a, b); - } - return new C(a, b, c); - } - return C.apply(this, arguments); - }; - F[PROTOTYPE] = C[PROTOTYPE]; - return F; - // make static versions for prototype methods - })(out) - : IS_PROTO && typeof out == 'function' - ? ctx(Function.call, out) - : out; - // export proto methods to core.%CONSTRUCTOR%.methods.%NAME% - if (IS_PROTO) { - (exports.virtual || (exports.virtual = {}))[key] = out; - // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME% - if (type & $export.R && expProto && !expProto[key]) - hide(expProto, key, out); - } - } - }; - // type bitmap - $export.F = 1; // forced - $export.G = 2; // global - $export.S = 4; // static - $export.P = 8; // proto - $export.B = 16; // bind - $export.W = 32; // wrap - $export.U = 64; // safe - $export.R = 128; // real proto method for `library` - module.exports = $export; - - /***/ - }, - /* 6 */ - /***/ function(module, exports, __webpack_require__) { - var dP = __webpack_require__(4); - var createDesc = __webpack_require__(16); - module.exports = __webpack_require__(1) - ? function(object, key, value) { - return dP.f(object, key, createDesc(1, value)); - } - : function(object, key, value) { - object[key] = value; - return object; - }; - - /***/ - }, - /* 7 */ - /***/ function(module, exports) { - module.exports = function(it) { - return typeof it === 'object' - ? it !== null - : typeof it === 'function'; - }; - - /***/ - }, - /* 8 */ - /***/ function(module, exports, __webpack_require__) { - // to indexed object, toObject with fallback for non-array-like ES3 strings - var IObject = __webpack_require__(47); - var defined = __webpack_require__(18); - module.exports = function(it) { - return IObject(defined(it)); - }; - - /***/ - }, - /* 9 */ - /***/ function(module, exports, __webpack_require__) { - var store = __webpack_require__(25)('wks'); - var uid = __webpack_require__(17); - var Symbol = __webpack_require__(2).Symbol; - var USE_SYMBOL = typeof Symbol == 'function'; - - var $exports = (module.exports = function(name) { - return ( - store[name] || - (store[name] = - (USE_SYMBOL && Symbol[name]) || - (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)) - ); - }); - - $exports.store = store; - - /***/ - }, - /* 10 */ - /***/ function(module, exports, __webpack_require__) { - var isObject = __webpack_require__(7); - module.exports = function(it) { - if (!isObject(it)) throw TypeError(it + ' is not an object!'); - return it; - }; - - /***/ - }, - /* 11 */ - /***/ function(module, exports) { - module.exports = function(exec) { - try { - return !!exec(); - } catch (e) { - return true; - } - }; - - /***/ - }, - /* 12 */ - /***/ function(module, exports) { - // shim for using process in browser - var process = (module.exports = {}); - - // cached from whatever global is present so that test runners that stub it - // don't break things. But we need to wrap it in a try catch in case it is - // wrapped in strict mode code which doesn't define any globals. It's inside a - // function because try/catches deoptimize in certain engines. - - var cachedSetTimeout; - var cachedClearTimeout; - - function defaultSetTimout() { - throw new Error('setTimeout has not been defined'); - } - function defaultClearTimeout() { - throw new Error('clearTimeout has not been defined'); - } - (function() { - try { - if (typeof setTimeout === 'function') { - cachedSetTimeout = setTimeout; - } else { - cachedSetTimeout = defaultSetTimout; - } - } catch (e) { - cachedSetTimeout = defaultSetTimout; - } - try { - if (typeof clearTimeout === 'function') { - cachedClearTimeout = clearTimeout; - } else { - cachedClearTimeout = defaultClearTimeout; - } - } catch (e) { - cachedClearTimeout = defaultClearTimeout; - } - })(); - function runTimeout(fun) { - if (cachedSetTimeout === setTimeout) { - //normal enviroments in sane situations - return setTimeout(fun, 0); - } - // if setTimeout wasn't available but was latter defined - if ( - (cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && - setTimeout - ) { - cachedSetTimeout = setTimeout; - return setTimeout(fun, 0); - } - try { - // when when somebody has screwed with setTimeout but no I.E. maddness - return cachedSetTimeout(fun, 0); - } catch (e) { - try { - // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally - return cachedSetTimeout.call(null, fun, 0); - } catch (e) { - // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error - return cachedSetTimeout.call(this, fun, 0); - } - } - } - function runClearTimeout(marker) { - if (cachedClearTimeout === clearTimeout) { - //normal enviroments in sane situations - return clearTimeout(marker); - } - // if clearTimeout wasn't available but was latter defined - if ( - (cachedClearTimeout === defaultClearTimeout || - !cachedClearTimeout) && - clearTimeout - ) { - cachedClearTimeout = clearTimeout; - return clearTimeout(marker); - } - try { - // when when somebody has screwed with setTimeout but no I.E. maddness - return cachedClearTimeout(marker); - } catch (e) { - try { - // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally - return cachedClearTimeout.call(null, marker); - } catch (e) { - // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. - // Some versions of I.E. have different rules for clearTimeout vs setTimeout - return cachedClearTimeout.call(this, marker); - } - } - } - var queue = []; - var draining = false; - var currentQueue; - var queueIndex = -1; - - function cleanUpNextTick() { - if (!draining || !currentQueue) { - return; - } - draining = false; - if (currentQueue.length) { - queue = currentQueue.concat(queue); - } else { - queueIndex = -1; - } - if (queue.length) { - drainQueue(); - } - } - - function drainQueue() { - if (draining) { - return; - } - var timeout = runTimeout(cleanUpNextTick); - draining = true; - - var len = queue.length; - while (len) { - currentQueue = queue; - queue = []; - while (++queueIndex < len) { - if (currentQueue) { - currentQueue[queueIndex].run(); - } - } - queueIndex = -1; - len = queue.length; - } - currentQueue = null; - draining = false; - runClearTimeout(timeout); - } - - process.nextTick = function(fun) { - var args = new Array(arguments.length - 1); - if (arguments.length > 1) { - for (var i = 1; i < arguments.length; i++) { - args[i - 1] = arguments[i]; - } - } - queue.push(new Item(fun, args)); - if (queue.length === 1 && !draining) { - runTimeout(drainQueue); - } - }; - - // v8 likes predictible objects - function Item(fun, array) { - this.fun = fun; - this.array = array; - } - Item.prototype.run = function() { - this.fun.apply(null, this.array); - }; - process.title = 'browser'; - process.browser = true; - process.env = {}; - process.argv = []; - process.version = ''; // empty string to avoid regexp issues - process.versions = {}; - - function noop() {} - - process.on = noop; - process.addListener = noop; - process.once = noop; - process.off = noop; - process.removeListener = noop; - process.removeAllListeners = noop; - process.emit = noop; - process.prependListener = noop; - process.prependOnceListener = noop; - - process.listeners = function(name) { - return []; - }; - - process.binding = function(name) { - throw new Error('process.binding is not supported'); - }; - - process.cwd = function() { - return '/'; - }; - process.chdir = function(dir) { - throw new Error('process.chdir is not supported'); - }; - process.umask = function() { - return 0; - }; - - /***/ - }, - /* 13 */ - /***/ function(module, exports) { - module.exports = true; - - /***/ - }, - /* 14 */ - /***/ function(module, exports, __webpack_require__) { - // 19.1.2.14 / 15.2.3.14 Object.keys(O) - var $keys = __webpack_require__(51); - var enumBugKeys = __webpack_require__(19); - - module.exports = - Object.keys || - function keys(O) { - return $keys(O, enumBugKeys); - }; - - /***/ - }, - /* 15 */ - /***/ function(module, exports) { - exports.f = {}.propertyIsEnumerable; - - /***/ - }, - /* 16 */ - /***/ function(module, exports) { - module.exports = function(bitmap, value) { - return { - enumerable: !(bitmap & 1), - configurable: !(bitmap & 2), - writable: !(bitmap & 4), - value: value, - }; - }; - - /***/ - }, - /* 17 */ - /***/ function(module, exports) { - var id = 0; - var px = Math.random(); - module.exports = function(key) { - return 'Symbol('.concat( - key === undefined ? '' : key, - ')_', - (++id + px).toString(36), - ); - }; - - /***/ - }, - /* 18 */ - /***/ function(module, exports) { - // 7.2.1 RequireObjectCoercible(argument) - module.exports = function(it) { - if (it == undefined) throw TypeError("Can't call method on " + it); - return it; - }; - - /***/ - }, - /* 19 */ - /***/ function(module, exports) { - // IE 8- don't enum bug keys - module.exports = 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'.split( - ',', - ); - - /***/ - }, - /* 20 */ - /***/ function(module, exports) { - module.exports = {}; - - /***/ - }, - /* 21 */ - /***/ function(module, exports, __webpack_require__) { - // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) - var anObject = __webpack_require__(10); - var dPs = __webpack_require__(82); - var enumBugKeys = __webpack_require__(19); - var IE_PROTO = __webpack_require__(24)('IE_PROTO'); - var Empty = function() { - /* empty */ - }; - var PROTOTYPE = 'prototype'; - - // Create object with fake `null` prototype: use iframe Object with cleared prototype - var createDict = function() { - // Thrash, waste and sodomy: IE GC bug - var iframe = __webpack_require__(45)('iframe'); - var i = enumBugKeys.length; - var lt = '<'; - var gt = '>'; - var iframeDocument; - iframe.style.display = 'none'; - __webpack_require__(76).appendChild(iframe); - iframe.src = 'javascript:'; // eslint-disable-line no-script-url - // createDict = iframe.contentWindow.Object; - // html.removeChild(iframe); - iframeDocument = iframe.contentWindow.document; - iframeDocument.open(); - iframeDocument.write( - lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt, - ); - iframeDocument.close(); - createDict = iframeDocument.F; - while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]]; - return createDict(); - }; - - module.exports = - Object.create || - function create(O, Properties) { - var result; - if (O !== null) { - Empty[PROTOTYPE] = anObject(O); - result = new Empty(); - Empty[PROTOTYPE] = null; - // add "__proto__" for Object.getPrototypeOf polyfill - result[IE_PROTO] = O; - } else result = createDict(); - return Properties === undefined ? result : dPs(result, Properties); - }; - - /***/ - }, - /* 22 */ - /***/ function(module, exports) { - exports.f = Object.getOwnPropertySymbols; - - /***/ - }, - /* 23 */ - /***/ function(module, exports, __webpack_require__) { - var def = __webpack_require__(4).f; - var has = __webpack_require__(3); - var TAG = __webpack_require__(9)('toStringTag'); - - module.exports = function(it, tag, stat) { - if (it && !has((it = stat ? it : it.prototype), TAG)) - def(it, TAG, { configurable: true, value: tag }); - }; - - /***/ - }, - /* 24 */ - /***/ function(module, exports, __webpack_require__) { - var shared = __webpack_require__(25)('keys'); - var uid = __webpack_require__(17); - module.exports = function(key) { - return shared[key] || (shared[key] = uid(key)); - }; - - /***/ - }, - /* 25 */ - /***/ function(module, exports, __webpack_require__) { - var core = __webpack_require__(0); - var global = __webpack_require__(2); - var SHARED = '__core-js_shared__'; - var store = global[SHARED] || (global[SHARED] = {}); - - (module.exports = function(key, value) { - return store[key] || (store[key] = value !== undefined ? value : {}); - })('versions', []).push({ - version: core.version, - mode: __webpack_require__(13) ? 'pure' : 'global', - copyright: '© 2019 Denis Pushkarev (zloirock.ru)', - }); - - /***/ - }, - /* 26 */ - /***/ function(module, exports) { - // 7.1.4 ToInteger - var ceil = Math.ceil; - var floor = Math.floor; - module.exports = function(it) { - return isNaN((it = +it)) ? 0 : (it > 0 ? floor : ceil)(it); - }; - - /***/ - }, - /* 27 */ - /***/ function(module, exports, __webpack_require__) { - // 7.1.13 ToObject(argument) - var defined = __webpack_require__(18); - module.exports = function(it) { - return Object(defined(it)); - }; - - /***/ - }, - /* 28 */ - /***/ function(module, exports, __webpack_require__) { - // 7.1.1 ToPrimitive(input [, PreferredType]) - var isObject = __webpack_require__(7); - // instead of the ES6 spec version, we didn't implement @@toPrimitive case - // and the second argument - flag - preferred type is a string - module.exports = function(it, S) { - if (!isObject(it)) return it; - var fn, val; - if ( - S && - typeof (fn = it.toString) == 'function' && - !isObject((val = fn.call(it))) - ) - return val; - if ( - typeof (fn = it.valueOf) == 'function' && - !isObject((val = fn.call(it))) - ) - return val; - if ( - !S && - typeof (fn = it.toString) == 'function' && - !isObject((val = fn.call(it))) - ) - return val; - throw TypeError("Can't convert object to primitive value"); - }; - - /***/ - }, - /* 29 */ - /***/ function(module, exports, __webpack_require__) { - var global = __webpack_require__(2); - var core = __webpack_require__(0); - var LIBRARY = __webpack_require__(13); - var wksExt = __webpack_require__(30); - var defineProperty = __webpack_require__(4).f; - module.exports = function(name) { - var $Symbol = - core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {}); - if (name.charAt(0) != '_' && !(name in $Symbol)) - defineProperty($Symbol, name, { value: wksExt.f(name) }); - }; - - /***/ - }, - /* 30 */ - /***/ function(module, exports, __webpack_require__) { - exports.f = __webpack_require__(9); - - /***/ - }, - /* 31 */ - /***/ function(module, exports, __webpack_require__) { - /* WEBPACK VAR INJECTION */ (function(process) { - /** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - - if (process.env.NODE_ENV !== 'production') { - var ReactIs = __webpack_require__(53); - - // By explicitly using `prop-types` you are opting into new development behavior. - // http://fb.me/prop-types-in-prod - var throwOnDirectAccess = true; - module.exports = __webpack_require__(103)( - ReactIs.isElement, - throwOnDirectAccess, - ); - } else { - // By explicitly using `prop-types` you are opting into new production behavior. - // http://fb.me/prop-types-in-prod - module.exports = __webpack_require__(102)(); - } - - /* WEBPACK VAR INJECTION */ - }.call(exports, __webpack_require__(12))); - - /***/ - }, - /* 32 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - /** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - - var ReactPropTypesSecret = - 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'; - - module.exports = ReactPropTypesSecret; - - /***/ - }, - /* 33 */ - /***/ function(module, exports) { - module.exports = __WEBPACK_EXTERNAL_MODULE_33__; - - /***/ - }, - /* 34 */ - /***/ function(module, __webpack_exports__, __webpack_require__) { - 'use strict'; - /* harmony default export */ __webpack_exports__['a'] = { - ZERO: 48, - NINE: 57, - - NUMPAD_ZERO: 96, - NUMPAD_NINE: 105, - - BACKSPACE: 8, - DELETE: 46, - ENTER: 13, - - ARROW_UP: 38, - ARROW_DOWN: 40, - }; - - /***/ - }, - /* 35 */ - /***/ function(module, exports, __webpack_require__) { - module.exports = { default: __webpack_require__(68), __esModule: true }; - - /***/ - }, - /* 36 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - - exports.__esModule = true; - - exports.default = function(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError('Cannot call a class as a function'); - } - }; - - /***/ - }, - /* 37 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - - exports.__esModule = true; - - var _defineProperty = __webpack_require__(35); - - var _defineProperty2 = _interopRequireDefault(_defineProperty); - - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - - exports.default = (function() { - function defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ('value' in descriptor) descriptor.writable = true; - (0, _defineProperty2.default)(target, descriptor.key, descriptor); - } - } - - return function(Constructor, protoProps, staticProps) { - if (protoProps) defineProperties(Constructor.prototype, protoProps); - if (staticProps) defineProperties(Constructor, staticProps); - return Constructor; - }; - })(); - - /***/ - }, - /* 38 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - - exports.__esModule = true; - - var _defineProperty = __webpack_require__(35); - - var _defineProperty2 = _interopRequireDefault(_defineProperty); - - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - - exports.default = function(obj, key, value) { - if (key in obj) { - (0, _defineProperty2.default)(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true, - }); - } else { - obj[key] = value; - } - - return obj; - }; - - /***/ - }, - /* 39 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - - exports.__esModule = true; - - var _setPrototypeOf = __webpack_require__(62); - - var _setPrototypeOf2 = _interopRequireDefault(_setPrototypeOf); - - var _create = __webpack_require__(61); - - var _create2 = _interopRequireDefault(_create); - - var _typeof2 = __webpack_require__(41); - - var _typeof3 = _interopRequireDefault(_typeof2); - - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - - exports.default = function(subClass, superClass) { - if (typeof superClass !== 'function' && superClass !== null) { - throw new TypeError( - 'Super expression must either be null or a function, not ' + - (typeof superClass === 'undefined' - ? 'undefined' - : (0, _typeof3.default)(superClass)), - ); - } - - subClass.prototype = (0, _create2.default)( - superClass && superClass.prototype, - { - constructor: { - value: subClass, - enumerable: false, - writable: true, - configurable: true, - }, - }, - ); - if (superClass) - _setPrototypeOf2.default - ? (0, _setPrototypeOf2.default)(subClass, superClass) - : (subClass.__proto__ = superClass); - }; - - /***/ - }, - /* 40 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - - exports.__esModule = true; - - var _typeof2 = __webpack_require__(41); - - var _typeof3 = _interopRequireDefault(_typeof2); - - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - - exports.default = function(self, call) { - if (!self) { - throw new ReferenceError( - "this hasn't been initialised - super() hasn't been called", - ); - } - - return call && - ((typeof call === 'undefined' - ? 'undefined' - : (0, _typeof3.default)(call)) === 'object' || - typeof call === 'function') - ? call - : self; - }; - - /***/ - }, - /* 41 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - - exports.__esModule = true; - - var _iterator = __webpack_require__(64); - - var _iterator2 = _interopRequireDefault(_iterator); - - var _symbol = __webpack_require__(63); - - var _symbol2 = _interopRequireDefault(_symbol); - - var _typeof = - typeof _symbol2.default === 'function' && - typeof _iterator2.default === 'symbol' - ? function(obj) { - return typeof obj; - } - : function(obj) { - return obj && - typeof _symbol2.default === 'function' && - obj.constructor === _symbol2.default && - obj !== _symbol2.default.prototype - ? 'symbol' - : typeof obj; - }; - - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - - exports.default = - typeof _symbol2.default === 'function' && - _typeof(_iterator2.default) === 'symbol' - ? function(obj) { - return typeof obj === 'undefined' ? 'undefined' : _typeof(obj); - } - : function(obj) { - return obj && - typeof _symbol2.default === 'function' && - obj.constructor === _symbol2.default && - obj !== _symbol2.default.prototype - ? 'symbol' - : typeof obj === 'undefined' - ? 'undefined' - : _typeof(obj); - }; - - /***/ - }, - /* 42 */ - /***/ function(module, exports, __webpack_require__) { - var __WEBPACK_AMD_DEFINE_ARRAY__, - __WEBPACK_AMD_DEFINE_RESULT__; /*! - Copyright (c) 2017 Jed Watson. - Licensed under the MIT License (MIT), see - http://jedwatson.github.io/classnames -*/ - /* global define */ - - (function() { - 'use strict'; - - var hasOwn = {}.hasOwnProperty; - - function classNames() { - var classes = []; - - for (var i = 0; i < arguments.length; i++) { - var arg = arguments[i]; - if (!arg) continue; - - var argType = typeof arg; - - if (argType === 'string' || argType === 'number') { - classes.push(arg); - } else if (Array.isArray(arg) && arg.length) { - var inner = classNames.apply(null, arg); - if (inner) { - classes.push(inner); - } - } else if (argType === 'object') { - for (var key in arg) { - if (hasOwn.call(arg, key) && arg[key]) { - classes.push(key); - } - } - } - } - - return classes.join(' '); - } - - if (typeof module !== 'undefined' && module.exports) { - classNames.default = classNames; - module.exports = classNames; - } else if (true) { - // register as 'classnames', consistent with npm package name - !((__WEBPACK_AMD_DEFINE_ARRAY__ = []), - (__WEBPACK_AMD_DEFINE_RESULT__ = function() { - return classNames; - }.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && - (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else { - window.classNames = classNames; - } - })(); - - /***/ - }, - /* 43 */ - /***/ function(module, exports) { - var toString = {}.toString; - - module.exports = function(it) { - return toString.call(it).slice(8, -1); - }; - - /***/ - }, - /* 44 */ - /***/ function(module, exports, __webpack_require__) { - // optional / simple context binding - var aFunction = __webpack_require__(72); - module.exports = function(fn, that, length) { - aFunction(fn); - if (that === undefined) return fn; - switch (length) { - case 1: - return function(a) { - return fn.call(that, a); - }; - case 2: - return function(a, b) { - return fn.call(that, a, b); - }; - case 3: - return function(a, b, c) { - return fn.call(that, a, b, c); - }; - } - return function(/* ...args */) { - return fn.apply(that, arguments); - }; - }; - - /***/ - }, - /* 45 */ - /***/ function(module, exports, __webpack_require__) { - var isObject = __webpack_require__(7); - var document = __webpack_require__(2).document; - // typeof document.createElement is 'object' in old IE - var is = isObject(document) && isObject(document.createElement); - module.exports = function(it) { - return is ? document.createElement(it) : {}; - }; - - /***/ - }, - /* 46 */ - /***/ function(module, exports, __webpack_require__) { - module.exports = - !__webpack_require__(1) && - !__webpack_require__(11)(function() { - return ( - Object.defineProperty(__webpack_require__(45)('div'), 'a', { - get: function() { - return 7; - }, - }).a != 7 - ); - }); - - /***/ - }, - /* 47 */ - /***/ function(module, exports, __webpack_require__) { - // fallback for non-array-like ES3 and non-enumerable old V8 strings - var cof = __webpack_require__(43); - // eslint-disable-next-line no-prototype-builtins - module.exports = Object('z').propertyIsEnumerable(0) - ? Object - : function(it) { - return cof(it) == 'String' ? it.split('') : Object(it); - }; - - /***/ - }, - /* 48 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - - var LIBRARY = __webpack_require__(13); - var $export = __webpack_require__(5); - var redefine = __webpack_require__(52); - var hide = __webpack_require__(6); - var Iterators = __webpack_require__(20); - var $iterCreate = __webpack_require__(78); - var setToStringTag = __webpack_require__(23); - var getPrototypeOf = __webpack_require__(84); - var ITERATOR = __webpack_require__(9)('iterator'); - var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next` - var FF_ITERATOR = '@@iterator'; - var KEYS = 'keys'; - var VALUES = 'values'; - - var returnThis = function() { - return this; - }; - - module.exports = function( - Base, - NAME, - Constructor, - next, - DEFAULT, - IS_SET, - FORCED, - ) { - $iterCreate(Constructor, NAME, next); - var getMethod = function(kind) { - if (!BUGGY && kind in proto) return proto[kind]; - switch (kind) { - case KEYS: - return function keys() { - return new Constructor(this, kind); - }; - case VALUES: - return function values() { - return new Constructor(this, kind); - }; - } - return function entries() { - return new Constructor(this, kind); - }; - }; - var TAG = NAME + ' Iterator'; - var DEF_VALUES = DEFAULT == VALUES; - var VALUES_BUG = false; - var proto = Base.prototype; - var $native = - proto[ITERATOR] || - proto[FF_ITERATOR] || - (DEFAULT && proto[DEFAULT]); - var $default = $native || getMethod(DEFAULT); - var $entries = DEFAULT - ? !DEF_VALUES - ? $default - : getMethod('entries') - : undefined; - var $anyNative = NAME == 'Array' ? proto.entries || $native : $native; - var methods, key, IteratorPrototype; - // Fix native - if ($anyNative) { - IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); - if ( - IteratorPrototype !== Object.prototype && - IteratorPrototype.next - ) { - // Set @@toStringTag to native iterators - setToStringTag(IteratorPrototype, TAG, true); - // fix for some old engines - if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') - hide(IteratorPrototype, ITERATOR, returnThis); - } - } - // fix Array#{values, @@iterator}.name in V8 / FF - if (DEF_VALUES && $native && $native.name !== VALUES) { - VALUES_BUG = true; - $default = function values() { - return $native.call(this); - }; - } - // Define iterator - if ( - (!LIBRARY || FORCED) && - (BUGGY || VALUES_BUG || !proto[ITERATOR]) - ) { - hide(proto, ITERATOR, $default); - } - // Plug for library - Iterators[NAME] = $default; - Iterators[TAG] = returnThis; - if (DEFAULT) { - methods = { - values: DEF_VALUES ? $default : getMethod(VALUES), - keys: IS_SET ? $default : getMethod(KEYS), - entries: $entries, - }; - if (FORCED) - for (key in methods) { - if (!(key in proto)) redefine(proto, key, methods[key]); - } - else - $export( - $export.P + $export.F * (BUGGY || VALUES_BUG), - NAME, - methods, - ); - } - return methods; - }; - - /***/ - }, - /* 49 */ - /***/ function(module, exports, __webpack_require__) { - var pIE = __webpack_require__(15); - var createDesc = __webpack_require__(16); - var toIObject = __webpack_require__(8); - var toPrimitive = __webpack_require__(28); - var has = __webpack_require__(3); - var IE8_DOM_DEFINE = __webpack_require__(46); - var gOPD = Object.getOwnPropertyDescriptor; - - exports.f = __webpack_require__(1) - ? gOPD - : function getOwnPropertyDescriptor(O, P) { - O = toIObject(O); - P = toPrimitive(P, true); - if (IE8_DOM_DEFINE) - try { - return gOPD(O, P); - } catch (e) { - /* empty */ - } - if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]); - }; - - /***/ - }, - /* 50 */ - /***/ function(module, exports, __webpack_require__) { - // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O) - var $keys = __webpack_require__(51); - var hiddenKeys = __webpack_require__(19).concat('length', 'prototype'); - - exports.f = - Object.getOwnPropertyNames || - function getOwnPropertyNames(O) { - return $keys(O, hiddenKeys); - }; - - /***/ - }, - /* 51 */ - /***/ function(module, exports, __webpack_require__) { - var has = __webpack_require__(3); - var toIObject = __webpack_require__(8); - var arrayIndexOf = __webpack_require__(74)(false); - var IE_PROTO = __webpack_require__(24)('IE_PROTO'); - - module.exports = function(object, names) { - var O = toIObject(object); - var i = 0; - var result = []; - var key; - for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); - // Don't enum bug & hidden keys - while (names.length > i) - if (has(O, (key = names[i++]))) { - ~arrayIndexOf(result, key) || result.push(key); - } - return result; - }; - - /***/ - }, - /* 52 */ - /***/ function(module, exports, __webpack_require__) { - module.exports = __webpack_require__(6); - - /***/ - }, - /* 53 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - /* WEBPACK VAR INJECTION */ (function(process) { - if (process.env.NODE_ENV === 'production') { - module.exports = __webpack_require__(105); - } else { - module.exports = __webpack_require__(104); - } - - /* WEBPACK VAR INJECTION */ - }.call(exports, __webpack_require__(12))); - - /***/ - }, - /* 54 */ - /***/ function(module, __webpack_exports__, __webpack_require__) { - 'use strict'; - Object.defineProperty(__webpack_exports__, '__esModule', { - value: true, - }); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__Pagination__ = __webpack_require__( - 58, - ); - /* harmony reexport (binding) */ __webpack_require__.d( - __webpack_exports__, - 'default', - function() { - return __WEBPACK_IMPORTED_MODULE_0__Pagination__['a']; - }, - ); - - /***/ - }, - /* 55 */ - /***/ function(module, exports) { - // removed by extract-text-webpack-plugin - /***/ - }, - /* 56 */ - /***/ function(module, __webpack_exports__, __webpack_require__) { - 'use strict'; - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__( - 36, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__ = __webpack_require__( - 37, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__( - 40, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__( - 39, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__( - 33, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_4_react__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__( - 31, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_5_prop_types__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__KeyCode__ = __webpack_require__( - 34, - ); - - var Options = (function(_React$Component) { - __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()( - Options, - _React$Component, - ); - - function Options() { - var _ref; - - var _temp, _this, _ret; - - __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()( - this, - Options, - ); - - for ( - var _len = arguments.length, args = Array(_len), _key = 0; - _key < _len; - _key++ - ) { - args[_key] = arguments[_key]; - } - - return ( - (_ret = - ((_temp = - ((_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()( - this, - (_ref = - Options.__proto__ || - Object.getPrototypeOf(Options)).call.apply( - _ref, - [this].concat(args), - ), - )), - _this)), - (_this.state = { - goInputText: '', - }), - (_this.buildOptionText = function(value) { - return value + ' ' + _this.props.locale.items_per_page; - }), - (_this.changeSize = function(value) { - _this.props.changeSize(Number(value)); - }), - (_this.handleChange = function(e) { - _this.setState({ - goInputText: e.target.value, - }); - }), - (_this.handleBlur = function(e) { - var _this$props = _this.props, - goButton = _this$props.goButton, - quickGo = _this$props.quickGo, - rootPrefixCls = _this$props.rootPrefixCls; - - if (goButton) { - return; - } - if ( - e.relatedTarget && - (e.relatedTarget.className.indexOf( - rootPrefixCls + '-prev', - ) >= 0 || - e.relatedTarget.className.indexOf( - rootPrefixCls + '-next', - ) >= 0) - ) { - return; - } - quickGo(_this.getValidValue()); - }), - (_this.go = function(e) { - var goInputText = _this.state.goInputText; - - if (goInputText === '') { - return; - } - if ( - e.keyCode === - __WEBPACK_IMPORTED_MODULE_6__KeyCode__['a' /* default */] - .ENTER || - e.type === 'click' - ) { - _this.setState({ - goInputText: '', - }); - _this.props.quickGo(_this.getValidValue()); - } - }), - _temp)), - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()( - _this, - _ret, - ) - ); - } - - __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default()( - Options, - [ - { - key: 'getValidValue', - value: function getValidValue() { - var _state = this.state, - goInputText = _state.goInputText, - current = _state.current; - - return !goInputText || isNaN(goInputText) - ? current - : Number(goInputText); - }, - }, - { - key: 'render', - value: function render() { - var _this2 = this; - - var _props = this.props, - pageSize = _props.pageSize, - pageSizeOptions = _props.pageSizeOptions, - locale = _props.locale, - rootPrefixCls = _props.rootPrefixCls, - changeSize = _props.changeSize, - quickGo = _props.quickGo, - goButton = _props.goButton, - selectComponentClass = _props.selectComponentClass, - buildOptionText = _props.buildOptionText, - selectPrefixCls = _props.selectPrefixCls, - disabled = _props.disabled; - var goInputText = this.state.goInputText; - - var prefixCls = rootPrefixCls + '-options'; - var Select = selectComponentClass; - var changeSelect = null; - var goInput = null; - var gotoButton = null; - - if (!changeSize && !quickGo) { - return null; - } - - if (changeSize && Select) { - var options = pageSizeOptions.map(function(opt, i) { - return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( - Select.Option, - { key: i, value: opt }, - (buildOptionText || _this2.buildOptionText)(opt), - ); - }); - - changeSelect = __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( - Select, - { - disabled: disabled, - prefixCls: selectPrefixCls, - showSearch: false, - className: prefixCls + '-size-changer', - optionLabelProp: 'children', - dropdownMatchSelectWidth: false, - value: (pageSize || pageSizeOptions[0]).toString(), - onChange: this.changeSize, - getPopupContainer: function getPopupContainer( - triggerNode, - ) { - return triggerNode.parentNode; - }, - }, - options, - ); - } - - if (quickGo) { - if (goButton) { - gotoButton = - typeof goButton === 'boolean' - ? __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( - 'button', - { - type: 'button', - onClick: this.go, - onKeyUp: this.go, - disabled: disabled, - }, - locale.jump_to_confirm, - ) - : __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( - 'span', - { - onClick: this.go, - onKeyUp: this.go, - }, - goButton, - ); - } - goInput = __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( - 'div', - { className: prefixCls + '-quick-jumper' }, - locale.jump_to, - __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( - 'input', - { - disabled: disabled, - type: 'text', - value: goInputText, - onChange: this.handleChange, - onKeyUp: this.go, - onBlur: this.handleBlur, - }, - ), - locale.page, - gotoButton, - ); - } - - return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( - 'li', - { className: '' + prefixCls }, - changeSelect, - goInput, - ); - }, - }, - ], - ); - - return Options; - })(__WEBPACK_IMPORTED_MODULE_4_react___default.a.Component); - - Options.propTypes = { - disabled: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool, - changeSize: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, - quickGo: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, - selectComponentClass: - __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, - current: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.number, - pageSizeOptions: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.arrayOf( - __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, - ), - pageSize: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.number, - buildOptionText: - __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, - locale: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object, - rootPrefixCls: - __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, - selectPrefixCls: - __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, - goButton: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.oneOfType( - [ - __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool, - __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.node, - ], - ), - }; - Options.defaultProps = { - pageSizeOptions: ['10', '20', '30', '40'], - }; - - /* harmony default export */ __webpack_exports__['a'] = Options; - - /***/ - }, - /* 57 */ - /***/ function(module, __webpack_exports__, __webpack_require__) { - 'use strict'; - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty__ = __webpack_require__( - 38, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__( - 33, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_1_react__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_prop_types__ = __webpack_require__( - 31, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_prop_types___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_2_prop_types__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_classnames__ = __webpack_require__( - 42, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_classnames___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_3_classnames__, - ); - - var Pager = function Pager(props) { - var _classNames; - - var prefixCls = props.rootPrefixCls + '-item'; - var cls = __WEBPACK_IMPORTED_MODULE_3_classnames___default()( - prefixCls, - prefixCls + '-' + props.page, - ((_classNames = {}), - __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty___default()( - _classNames, - prefixCls + '-active', - props.active, - ), - __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty___default()( - _classNames, - props.className, - !!props.className, - ), - __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty___default()( - _classNames, - prefixCls + '-disabled', - !props.page, - ), - _classNames), - ); - - var handleClick = function handleClick() { - props.onClick(props.page); - }; - - var handleKeyPress = function handleKeyPress(e) { - props.onKeyPress(e, props.onClick, props.page); - }; - - return __WEBPACK_IMPORTED_MODULE_1_react___default.a.createElement( - 'li', - { - title: props.showTitle ? props.page : null, - className: cls, - onClick: handleClick, - onKeyPress: handleKeyPress, - tabIndex: '0', - }, - props.itemRender( - props.page, - 'page', - __WEBPACK_IMPORTED_MODULE_1_react___default.a.createElement( - 'a', - null, - props.page, - ), - ), - ); - }; - - Pager.propTypes = { - page: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number, - active: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.bool, - last: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.bool, - locale: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.object, - className: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.string, - showTitle: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.bool, - rootPrefixCls: - __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.string, - onClick: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.func, - onKeyPress: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.func, - itemRender: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.func, - }; - - /* harmony default export */ __webpack_exports__['a'] = Pager; - - /***/ - }, - /* 58 */ - /***/ function(module, __webpack_exports__, __webpack_require__) { - 'use strict'; - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty__ = __webpack_require__( - 38, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__ = __webpack_require__( - 65, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__( - 36, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass__ = __webpack_require__( - 37, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__( - 40, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__( - 39, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__( - 33, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_6_react__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames__ = __webpack_require__( - 42, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_7_classnames__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__( - 31, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n( - __WEBPACK_IMPORTED_MODULE_8_prop_types__, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__Pager__ = __webpack_require__( - 57, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__Options__ = __webpack_require__( - 56, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__KeyCode__ = __webpack_require__( - 34, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__locale_zh_CN__ = __webpack_require__( - 59, - ); - /* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_lifecycles_compat__ = __webpack_require__( - 106, - ); - - function noop() {} - - function isInteger(value) { - return ( - typeof value === 'number' && - isFinite(value) && - Math.floor(value) === value - ); - } - - function defaultItemRender(page, type, element) { - return element; - } - - function calculatePage(p, state, props) { - var pageSize = p; - if (typeof pageSize === 'undefined') { - pageSize = state.pageSize; - } - return Math.floor((props.total - 1) / pageSize) + 1; - } - - var Pagination = (function(_React$Component) { - __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()( - Pagination, - _React$Component, - ); - - function Pagination(props) { - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()( - this, - Pagination, - ); - - var _this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()( - this, - (Pagination.__proto__ || Object.getPrototypeOf(Pagination)).call( - this, - props, - ), - ); - - _initialiseProps.call(_this); - - var hasOnChange = props.onChange !== noop; - var hasCurrent = 'current' in props; - if (hasCurrent && !hasOnChange) { - console.warn( - 'Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.', - ); // eslint-disable-line - } - - var current = props.defaultCurrent; - if ('current' in props) { - current = props.current; - } - - var pageSize = props.defaultPageSize; - if ('pageSize' in props) { - pageSize = props.pageSize; - } - - current = Math.min( - current, - calculatePage(pageSize, undefined, props), - ); - - _this.state = { - current: current, - currentInputValue: current, - pageSize: pageSize, - }; - return _this; - } - - __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass___default()( - Pagination, - [ - { - key: 'componentDidUpdate', - value: function componentDidUpdate(prevProps, prevState) { - // When current page change, fix focused style of prev item - // A hacky solution of https://github.com/ant-design/ant-design/issues/8948 - var prefixCls = this.props.prefixCls; - - if ( - prevState.current !== this.state.current && - this.paginationNode - ) { - var lastCurrentNode = this.paginationNode.querySelector( - '.' + prefixCls + '-item-' + prevState.current, - ); - if ( - lastCurrentNode && - document.activeElement === lastCurrentNode - ) { - lastCurrentNode.blur(); - } - } - }, - }, - { - key: 'getValidValue', - value: function getValidValue(e) { - var inputValue = e.target.value; - var allPages = calculatePage( - undefined, - this.state, - this.props, - ); - var currentInputValue = this.state.currentInputValue; - - var value = void 0; - if (inputValue === '') { - value = inputValue; - } else if (isNaN(Number(inputValue))) { - value = currentInputValue; - } else if (inputValue >= allPages) { - value = allPages; - } else { - value = Number(inputValue); - } - return value; - }, - }, - { - key: 'renderPrev', - value: function renderPrev(prevPage) { - var _props = this.props, - prevIcon = _props.prevIcon, - itemRender = _props.itemRender; - - var prevButton = itemRender( - prevPage, - 'prev', - this.getItemIcon(prevIcon), - ); - var disabled = !this.hasPrev(); - return __webpack_require__.i( - __WEBPACK_IMPORTED_MODULE_6_react__['isValidElement'], - )(prevButton) - ? __webpack_require__.i( - __WEBPACK_IMPORTED_MODULE_6_react__['cloneElement'], - )(prevButton, { disabled: disabled }) - : prevButton; - }, - }, - { - key: 'renderNext', - value: function renderNext(nextPage) { - var _props2 = this.props, - nextIcon = _props2.nextIcon, - itemRender = _props2.itemRender; - - var nextButton = itemRender( - nextPage, - 'next', - this.getItemIcon(nextIcon), - ); - var disabled = !this.hasNext(); - return __webpack_require__.i( - __WEBPACK_IMPORTED_MODULE_6_react__['isValidElement'], - )(nextButton) - ? __webpack_require__.i( - __WEBPACK_IMPORTED_MODULE_6_react__['cloneElement'], - )(nextButton, { disabled: disabled }) - : nextButton; - }, - }, - { - key: 'render', - value: function render() { - var _props3 = this.props, - prefixCls = _props3.prefixCls, - className = _props3.className, - disabled = _props3.disabled; - - // When hideOnSinglePage is true and there is only 1 page, hide the pager - - if ( - this.props.hideOnSinglePage === true && - this.props.total <= this.state.pageSize - ) { - return null; - } - - var props = this.props; - var locale = props.locale; - - var allPages = calculatePage( - undefined, - this.state, - this.props, - ); - var pagerList = []; - var jumpPrev = null; - var jumpNext = null; - var firstPager = null; - var lastPager = null; - var gotoButton = null; - - var goButton = - props.showQuickJumper && props.showQuickJumper.goButton; - var pageBufferSize = props.showLessItems ? 1 : 2; - var _state = this.state, - current = _state.current, - pageSize = _state.pageSize; - - var prevPage = current - 1 > 0 ? current - 1 : 0; - var nextPage = - current + 1 < allPages ? current + 1 : allPages; - - var dataOrAriaAttributeProps = Object.keys(props).reduce( - function(prev, key) { - if ( - key.substr(0, 5) === 'data-' || - key.substr(0, 5) === 'aria-' || - key === 'role' - ) { - prev[key] = props[key]; - } - return prev; - }, - {}, - ); - - if (props.simple) { - if (goButton) { - if (typeof goButton === 'boolean') { - gotoButton = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'button', - { - type: 'button', - onClick: this.handleGoTO, - onKeyUp: this.handleGoTO, - }, - locale.jump_to_confirm, - ); - } else { - gotoButton = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'span', - { - onClick: this.handleGoTO, - onKeyUp: this.handleGoTO, - }, - goButton, - ); - } - gotoButton = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'li', - { - title: props.showTitle - ? '' + - locale.jump_to + - this.state.current + - '/' + - allPages - : null, - className: prefixCls + '-simple-pager', - }, - gotoButton, - ); - } - - return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'ul', - __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()( - { - className: - prefixCls + - ' ' + - prefixCls + - '-simple ' + - props.className, - style: props.style, - ref: this.savePaginationNode, - }, - dataOrAriaAttributeProps, - ), - __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'li', - { - title: props.showTitle ? locale.prev_page : null, - onClick: this.prev, - tabIndex: this.hasPrev() ? 0 : null, - onKeyPress: this.runIfEnterPrev, - className: - (this.hasPrev() ? '' : prefixCls + '-disabled') + - ' ' + - prefixCls + - '-prev', - 'aria-disabled': !this.hasPrev(), - }, - this.renderPrev(prevPage), - ), - __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'li', - { - title: props.showTitle - ? this.state.current + '/' + allPages - : null, - className: prefixCls + '-simple-pager', - }, - __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'input', - { - type: 'text', - value: this.state.currentInputValue, - onKeyDown: this.handleKeyDown, - onKeyUp: this.handleKeyUp, - onChange: this.handleKeyUp, - size: '3', - }, - ), - __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'span', - { className: prefixCls + '-slash' }, - '/', - ), - allPages, - ), - __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'li', - { - title: props.showTitle ? locale.next_page : null, - onClick: this.next, - tabIndex: this.hasPrev() ? 0 : null, - onKeyPress: this.runIfEnterNext, - className: - (this.hasNext() ? '' : prefixCls + '-disabled') + - ' ' + - prefixCls + - '-next', - 'aria-disabled': !this.hasNext(), - }, - this.renderNext(nextPage), - ), - gotoButton, - ); - } - - if (allPages <= 5 + pageBufferSize * 2) { - var pagerProps = { - locale: locale, - rootPrefixCls: prefixCls, - onClick: this.handleChange, - onKeyPress: this.runIfEnter, - showTitle: props.showTitle, - itemRender: props.itemRender, - }; - if (!allPages) { - pagerList.push( - __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - __WEBPACK_IMPORTED_MODULE_9__Pager__[ - 'a' /* default */ - ], - __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()( - {}, - pagerProps, - { - key: 'noPager', - page: allPages, - className: prefixCls + '-disabled', - }, - ), - ), - ); - } - for (var i = 1; i <= allPages; i++) { - var active = this.state.current === i; - pagerList.push( - __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - __WEBPACK_IMPORTED_MODULE_9__Pager__[ - 'a' /* default */ - ], - __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()( - {}, - pagerProps, - { - key: i, - page: i, - active: active, - }, - ), - ), - ); - } - } else { - var prevItemTitle = props.showLessItems - ? locale.prev_3 - : locale.prev_5; - var nextItemTitle = props.showLessItems - ? locale.next_3 - : locale.next_5; - if (props.showPrevNextJumpers) { - var jumpPrevClassString = prefixCls + '-jump-prev'; - if (props.jumpPrevIcon) { - jumpPrevClassString += - ' ' + prefixCls + '-jump-prev-custom-icon'; - } - jumpPrev = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'li', - { - title: props.showTitle ? prevItemTitle : null, - key: 'prev', - onClick: this.jumpPrev, - tabIndex: '0', - onKeyPress: this.runIfEnterJumpPrev, - className: jumpPrevClassString, - }, - props.itemRender( - this.getJumpPrevPage(), - 'jump-prev', - this.getItemIcon(props.jumpPrevIcon), - ), - ); - var jumpNextClassString = prefixCls + '-jump-next'; - if (props.jumpNextIcon) { - jumpNextClassString += - ' ' + prefixCls + '-jump-next-custom-icon'; - } - jumpNext = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'li', - { - title: props.showTitle ? nextItemTitle : null, - key: 'next', - tabIndex: '0', - onClick: this.jumpNext, - onKeyPress: this.runIfEnterJumpNext, - className: jumpNextClassString, - }, - props.itemRender( - this.getJumpNextPage(), - 'jump-next', - this.getItemIcon(props.jumpNextIcon), - ), - ); - } - lastPager = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - __WEBPACK_IMPORTED_MODULE_9__Pager__['a' /* default */], - { - locale: props.locale, - last: true, - rootPrefixCls: prefixCls, - onClick: this.handleChange, - onKeyPress: this.runIfEnter, - key: allPages, - page: allPages, - active: false, - showTitle: props.showTitle, - itemRender: props.itemRender, - }, - ); - firstPager = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - __WEBPACK_IMPORTED_MODULE_9__Pager__['a' /* default */], - { - locale: props.locale, - rootPrefixCls: prefixCls, - onClick: this.handleChange, - onKeyPress: this.runIfEnter, - key: 1, - page: 1, - active: false, - showTitle: props.showTitle, - itemRender: props.itemRender, - }, - ); - - var left = Math.max(1, current - pageBufferSize); - var right = Math.min(current + pageBufferSize, allPages); - - if (current - 1 <= pageBufferSize) { - right = 1 + pageBufferSize * 2; - } - - if (allPages - current <= pageBufferSize) { - left = allPages - pageBufferSize * 2; - } - - for (var _i = left; _i <= right; _i++) { - var _active = current === _i; - pagerList.push( - __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - __WEBPACK_IMPORTED_MODULE_9__Pager__[ - 'a' /* default */ - ], - { - locale: props.locale, - rootPrefixCls: prefixCls, - onClick: this.handleChange, - onKeyPress: this.runIfEnter, - key: _i, - page: _i, - active: _active, - showTitle: props.showTitle, - itemRender: props.itemRender, - }, - ), - ); - } - - if ( - current - 1 >= pageBufferSize * 2 && - current !== 1 + 2 - ) { - pagerList[0] = __WEBPACK_IMPORTED_MODULE_6_react___default.a.cloneElement( - pagerList[0], - { - className: prefixCls + '-item-after-jump-prev', - }, - ); - pagerList.unshift(jumpPrev); - } - if ( - allPages - current >= pageBufferSize * 2 && - current !== allPages - 2 - ) { - pagerList[ - pagerList.length - 1 - ] = __WEBPACK_IMPORTED_MODULE_6_react___default.a.cloneElement( - pagerList[pagerList.length - 1], - { - className: prefixCls + '-item-before-jump-next', - }, - ); - pagerList.push(jumpNext); - } - - if (left !== 1) { - pagerList.unshift(firstPager); - } - if (right !== allPages) { - pagerList.push(lastPager); - } - } - - var totalText = null; - - if (props.showTotal) { - totalText = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'li', - { className: prefixCls + '-total-text' }, - props.showTotal(props.total, [ - props.total === 0 ? 0 : (current - 1) * pageSize + 1, - current * pageSize > props.total - ? props.total - : current * pageSize, - ]), - ); - } - var prevDisabled = !this.hasPrev() || !allPages; - var nextDisabled = !this.hasNext() || !allPages; - return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'ul', - __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()( - { - className: __WEBPACK_IMPORTED_MODULE_7_classnames___default()( - prefixCls, - className, - __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_defineProperty___default()( - {}, - prefixCls + '-disabled', - disabled, - ), - ), - style: props.style, - unselectable: 'unselectable', - ref: this.savePaginationNode, - }, - dataOrAriaAttributeProps, - ), - totalText, - __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'li', - { - title: props.showTitle ? locale.prev_page : null, - onClick: this.prev, - tabIndex: prevDisabled ? null : 0, - onKeyPress: this.runIfEnterPrev, - className: - (!prevDisabled ? '' : prefixCls + '-disabled') + - ' ' + - prefixCls + - '-prev', - 'aria-disabled': prevDisabled, - }, - this.renderPrev(prevPage), - ), - pagerList, - __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'li', - { - title: props.showTitle ? locale.next_page : null, - onClick: this.next, - tabIndex: nextDisabled ? null : 0, - onKeyPress: this.runIfEnterNext, - className: - (!nextDisabled ? '' : prefixCls + '-disabled') + - ' ' + - prefixCls + - '-next', - 'aria-disabled': nextDisabled, - }, - this.renderNext(nextPage), - ), - __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - __WEBPACK_IMPORTED_MODULE_10__Options__[ - 'a' /* default */ - ], - { - disabled: disabled, - locale: props.locale, - rootPrefixCls: prefixCls, - selectComponentClass: props.selectComponentClass, - selectPrefixCls: props.selectPrefixCls, - changeSize: this.props.showSizeChanger - ? this.changePageSize - : null, - current: this.state.current, - pageSize: this.state.pageSize, - pageSizeOptions: this.props.pageSizeOptions, - quickGo: this.shouldDisplayQuickJumper() - ? this.handleChange - : null, - goButton: goButton, - }, - ), - ); - }, - }, - ], - [ - { - key: 'getDerivedStateFromProps', - value: function getDerivedStateFromProps(props, prevState) { - var newState = {}; - - if ('current' in props) { - newState.current = props.current; - - if (props.current !== prevState.current) { - newState.currentInputValue = newState.current; - } - } - - if ( - 'pageSize' in props && - props.pageSize !== prevState.pageSize - ) { - var current = prevState.current; - var newCurrent = calculatePage( - props.pageSize, - prevState, - props, - ); - current = current > newCurrent ? newCurrent : current; - - if (!('current' in props)) { - newState.current = current; - newState.currentInputValue = current; - } - newState.pageSize = props.pageSize; - } - - return newState; - }, - - /** - * computed icon node that need to be rendered. - * @param {React.ReactNode | React.ComponentType} icon received icon. - * @returns {React.ReactNode} - */ - }, - ], - ); - - return Pagination; - })(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); - - Pagination.propTypes = { - disabled: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, - prefixCls: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string, - className: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string, - current: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.number, - defaultCurrent: - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.number, - total: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.number, - pageSize: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.number, - defaultPageSize: - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.number, - onChange: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - hideOnSinglePage: - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, - showSizeChanger: - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, - showLessItems: - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, - onShowSizeChange: - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - selectComponentClass: - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - showPrevNextJumpers: - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, - showQuickJumper: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.oneOfType( - [ - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.object, - ], - ), - showTitle: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, - pageSizeOptions: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.arrayOf( - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string, - ), - showTotal: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - locale: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.object, - style: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.object, - itemRender: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - prevIcon: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.oneOfType( - [ - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.node, - ], - ), - nextIcon: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.oneOfType( - [ - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.node, - ], - ), - jumpPrevIcon: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.oneOfType( - [ - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.node, - ], - ), - jumpNextIcon: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.oneOfType( - [ - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.node, - ], - ), - }; - Pagination.defaultProps = { - defaultCurrent: 1, - total: 0, - defaultPageSize: 10, - onChange: noop, - className: '', - selectPrefixCls: 'rc-select', - prefixCls: 'rc-pagination', - selectComponentClass: null, - hideOnSinglePage: false, - showPrevNextJumpers: true, - showQuickJumper: false, - showSizeChanger: false, - showLessItems: false, - showTitle: true, - onShowSizeChange: noop, - locale: - __WEBPACK_IMPORTED_MODULE_12__locale_zh_CN__['a' /* default */], - style: {}, - itemRender: defaultItemRender, - }; - - var _initialiseProps = function _initialiseProps() { - var _this2 = this; - - this.getJumpPrevPage = function() { - return Math.max( - 1, - _this2.state.current - (_this2.props.showLessItems ? 3 : 5), - ); - }; - - this.getJumpNextPage = function() { - return Math.min( - calculatePage(undefined, _this2.state, _this2.props), - _this2.state.current + (_this2.props.showLessItems ? 3 : 5), - ); - }; - - this.getItemIcon = function(icon) { - var prefixCls = _this2.props.prefixCls; - - var iconNode = - icon || - __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement('a', { - className: prefixCls + '-item-link', - }); - if (typeof icon === 'function') { - iconNode = __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - icon, - __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()( - {}, - _this2.props, - ), - ); - } - return iconNode; - }; - - this.savePaginationNode = function(node) { - _this2.paginationNode = node; - }; - - this.isValid = function(page) { - return isInteger(page) && page !== _this2.state.current; - }; - - this.shouldDisplayQuickJumper = function() { - var _props4 = _this2.props, - showQuickJumper = _props4.showQuickJumper, - pageSize = _props4.pageSize, - total = _props4.total; - - if (total <= pageSize) { - return false; - } - return showQuickJumper; - }; - - this.handleKeyDown = function(e) { - if ( - e.keyCode === - __WEBPACK_IMPORTED_MODULE_11__KeyCode__['a' /* default */] - .ARROW_UP || - e.keyCode === - __WEBPACK_IMPORTED_MODULE_11__KeyCode__['a' /* default */] - .ARROW_DOWN - ) { - e.preventDefault(); - } - }; - - this.handleKeyUp = function(e) { - var value = _this2.getValidValue(e); - var currentInputValue = _this2.state.currentInputValue; - - if (value !== currentInputValue) { - _this2.setState({ - currentInputValue: value, - }); - } - if ( - e.keyCode === - __WEBPACK_IMPORTED_MODULE_11__KeyCode__['a' /* default */].ENTER - ) { - _this2.handleChange(value); - } else if ( - e.keyCode === - __WEBPACK_IMPORTED_MODULE_11__KeyCode__['a' /* default */] - .ARROW_UP - ) { - _this2.handleChange(value - 1); - } else if ( - e.keyCode === - __WEBPACK_IMPORTED_MODULE_11__KeyCode__['a' /* default */] - .ARROW_DOWN - ) { - _this2.handleChange(value + 1); - } - }; - - this.changePageSize = function(size) { - var current = _this2.state.current; - var newCurrent = calculatePage(size, _this2.state, _this2.props); - current = current > newCurrent ? newCurrent : current; - // fix the issue: - // Once 'total' is 0, 'current' in 'onShowSizeChange' is 0, which is not correct. - if (newCurrent === 0) { - current = _this2.state.current; - } - - if (typeof size === 'number') { - if (!('pageSize' in _this2.props)) { - _this2.setState({ - pageSize: size, - }); - } - if (!('current' in _this2.props)) { - _this2.setState({ - current: current, - currentInputValue: current, - }); - } - } - _this2.props.onShowSizeChange(current, size); - }; - - this.handleChange = function(p) { - var disabled = _this2.props.disabled; - - var page = p; - if (_this2.isValid(page) && !disabled) { - var currentPage = calculatePage( - undefined, - _this2.state, - _this2.props, - ); - if (page > currentPage) { - page = currentPage; - } else if (page < 1) { - page = 1; - } - - if (!('current' in _this2.props)) { - _this2.setState({ - current: page, - currentInputValue: page, - }); - } - - var pageSize = _this2.state.pageSize; - _this2.props.onChange(page, pageSize); - - return page; - } - - return _this2.state.current; - }; - - this.prev = function() { - if (_this2.hasPrev()) { - _this2.handleChange(_this2.state.current - 1); - } - }; - - this.next = function() { - if (_this2.hasNext()) { - _this2.handleChange(_this2.state.current + 1); - } - }; - - this.jumpPrev = function() { - _this2.handleChange(_this2.getJumpPrevPage()); - }; - - this.jumpNext = function() { - _this2.handleChange(_this2.getJumpNextPage()); - }; - - this.hasPrev = function() { - return _this2.state.current > 1; - }; - - this.hasNext = function() { - return ( - _this2.state.current < - calculatePage(undefined, _this2.state, _this2.props) - ); - }; - - this.runIfEnter = function(event, callback) { - for ( - var _len = arguments.length, - restParams = Array(_len > 2 ? _len - 2 : 0), - _key = 2; - _key < _len; - _key++ - ) { - restParams[_key - 2] = arguments[_key]; - } - - if (event.key === 'Enter' || event.charCode === 13) { - callback.apply(undefined, restParams); - } - }; - - this.runIfEnterPrev = function(e) { - _this2.runIfEnter(e, _this2.prev); - }; - - this.runIfEnterNext = function(e) { - _this2.runIfEnter(e, _this2.next); - }; - - this.runIfEnterJumpPrev = function(e) { - _this2.runIfEnter(e, _this2.jumpPrev); - }; - - this.runIfEnterJumpNext = function(e) { - _this2.runIfEnter(e, _this2.jumpNext); - }; - - this.handleGoTO = function(e) { - if ( - e.keyCode === - __WEBPACK_IMPORTED_MODULE_11__KeyCode__['a' /* default */] - .ENTER || - e.type === 'click' - ) { - _this2.handleChange(_this2.state.currentInputValue); - } - }; - }; - - __webpack_require__.i( - __WEBPACK_IMPORTED_MODULE_13_react_lifecycles_compat__[ - 'a' /* polyfill */ - ], - )(Pagination); - - /* harmony default export */ __webpack_exports__['a'] = Pagination; - - /***/ - }, - /* 59 */ - /***/ function(module, __webpack_exports__, __webpack_require__) { - 'use strict'; - /* harmony default export */ __webpack_exports__['a'] = { - // Options.jsx - items_per_page: '条/页', - jump_to: '跳至', - jump_to_confirm: '确定', - page: '页', - - // Pagination.jsx - prev_page: '上一页', - next_page: '下一页', - prev_5: '向前 5 页', - next_5: '向后 5 页', - prev_3: '向前 3 页', - next_3: '向后 3 页', - }; - - /***/ - }, - /* 60 */ - /***/ function(module, exports, __webpack_require__) { - module.exports = { default: __webpack_require__(66), __esModule: true }; - - /***/ - }, - /* 61 */ - /***/ function(module, exports, __webpack_require__) { - module.exports = { default: __webpack_require__(67), __esModule: true }; - - /***/ - }, - /* 62 */ - /***/ function(module, exports, __webpack_require__) { - module.exports = { default: __webpack_require__(69), __esModule: true }; - - /***/ - }, - /* 63 */ - /***/ function(module, exports, __webpack_require__) { - module.exports = { default: __webpack_require__(70), __esModule: true }; - - /***/ - }, - /* 64 */ - /***/ function(module, exports, __webpack_require__) { - module.exports = { default: __webpack_require__(71), __esModule: true }; - - /***/ - }, - /* 65 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - - exports.__esModule = true; - - var _assign = __webpack_require__(60); - - var _assign2 = _interopRequireDefault(_assign); - - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - - exports.default = - _assign2.default || - function(target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i]; - - for (var key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; - } - } - } - - return target; - }; - - /***/ - }, - /* 66 */ - /***/ function(module, exports, __webpack_require__) { - __webpack_require__(90); - module.exports = __webpack_require__(0).Object.assign; - - /***/ - }, - /* 67 */ - /***/ function(module, exports, __webpack_require__) { - __webpack_require__(91); - var $Object = __webpack_require__(0).Object; - module.exports = function create(P, D) { - return $Object.create(P, D); - }; - - /***/ - }, - /* 68 */ - /***/ function(module, exports, __webpack_require__) { - __webpack_require__(92); - var $Object = __webpack_require__(0).Object; - module.exports = function defineProperty(it, key, desc) { - return $Object.defineProperty(it, key, desc); - }; - - /***/ - }, - /* 69 */ - /***/ function(module, exports, __webpack_require__) { - __webpack_require__(93); - module.exports = __webpack_require__(0).Object.setPrototypeOf; - - /***/ - }, - /* 70 */ - /***/ function(module, exports, __webpack_require__) { - __webpack_require__(96); - __webpack_require__(94); - __webpack_require__(97); - __webpack_require__(98); - module.exports = __webpack_require__(0).Symbol; - - /***/ - }, - /* 71 */ - /***/ function(module, exports, __webpack_require__) { - __webpack_require__(95); - __webpack_require__(99); - module.exports = __webpack_require__(30).f('iterator'); - - /***/ - }, - /* 72 */ - /***/ function(module, exports) { - module.exports = function(it) { - if (typeof it != 'function') - throw TypeError(it + ' is not a function!'); - return it; - }; - - /***/ - }, - /* 73 */ - /***/ function(module, exports) { - module.exports = function() { - /* empty */ - }; - - /***/ - }, - /* 74 */ - /***/ function(module, exports, __webpack_require__) { - // false -> Array#indexOf - // true -> Array#includes - var toIObject = __webpack_require__(8); - var toLength = __webpack_require__(88); - var toAbsoluteIndex = __webpack_require__(87); - module.exports = function(IS_INCLUDES) { - return function($this, el, fromIndex) { - var O = toIObject($this); - var length = toLength(O.length); - var index = toAbsoluteIndex(fromIndex, length); - var value; - // Array#includes uses SameValueZero equality algorithm - // eslint-disable-next-line no-self-compare - if (IS_INCLUDES && el != el) - while (length > index) { - value = O[index++]; - // eslint-disable-next-line no-self-compare - if (value != value) return true; - // Array#indexOf ignores holes, Array#includes - not - } - else - for (; length > index; index++) - if (IS_INCLUDES || index in O) { - if (O[index] === el) return IS_INCLUDES || index || 0; - } - return !IS_INCLUDES && -1; - }; - }; - - /***/ - }, - /* 75 */ - /***/ function(module, exports, __webpack_require__) { - // all enumerable object keys, includes symbols - var getKeys = __webpack_require__(14); - var gOPS = __webpack_require__(22); - var pIE = __webpack_require__(15); - module.exports = function(it) { - var result = getKeys(it); - var getSymbols = gOPS.f; - if (getSymbols) { - var symbols = getSymbols(it); - var isEnum = pIE.f; - var i = 0; - var key; - while (symbols.length > i) - if (isEnum.call(it, (key = symbols[i++]))) result.push(key); - } - return result; - }; - - /***/ - }, - /* 76 */ - /***/ function(module, exports, __webpack_require__) { - var document = __webpack_require__(2).document; - module.exports = document && document.documentElement; - - /***/ - }, - /* 77 */ - /***/ function(module, exports, __webpack_require__) { - // 7.2.2 IsArray(argument) - var cof = __webpack_require__(43); - module.exports = - Array.isArray || - function isArray(arg) { - return cof(arg) == 'Array'; - }; - - /***/ - }, - /* 78 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - - var create = __webpack_require__(21); - var descriptor = __webpack_require__(16); - var setToStringTag = __webpack_require__(23); - var IteratorPrototype = {}; - - // 25.1.2.1.1 %IteratorPrototype%[@@iterator]() - __webpack_require__(6)( - IteratorPrototype, - __webpack_require__(9)('iterator'), - function() { - return this; - }, - ); - - module.exports = function(Constructor, NAME, next) { - Constructor.prototype = create(IteratorPrototype, { - next: descriptor(1, next), - }); - setToStringTag(Constructor, NAME + ' Iterator'); - }; - - /***/ - }, - /* 79 */ - /***/ function(module, exports) { - module.exports = function(done, value) { - return { value: value, done: !!done }; - }; - - /***/ - }, - /* 80 */ - /***/ function(module, exports, __webpack_require__) { - var META = __webpack_require__(17)('meta'); - var isObject = __webpack_require__(7); - var has = __webpack_require__(3); - var setDesc = __webpack_require__(4).f; - var id = 0; - var isExtensible = - Object.isExtensible || - function() { - return true; - }; - var FREEZE = !__webpack_require__(11)(function() { - return isExtensible(Object.preventExtensions({})); - }); - var setMeta = function(it) { - setDesc(it, META, { - value: { - i: 'O' + ++id, // object ID - w: {}, // weak collections IDs - }, - }); - }; - var fastKey = function(it, create) { - // return primitive with prefix - if (!isObject(it)) - return typeof it == 'symbol' - ? it - : (typeof it == 'string' ? 'S' : 'P') + it; - if (!has(it, META)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return 'F'; - // not necessary to add metadata - if (!create) return 'E'; - // add missing metadata - setMeta(it); - // return object ID - } - return it[META].i; - }; - var getWeak = function(it, create) { - if (!has(it, META)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return true; - // not necessary to add metadata - if (!create) return false; - // add missing metadata - setMeta(it); - // return hash weak collections IDs - } - return it[META].w; - }; - // add metadata on freeze-family methods calling - var onFreeze = function(it) { - if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) - setMeta(it); - return it; - }; - var meta = (module.exports = { - KEY: META, - NEED: false, - fastKey: fastKey, - getWeak: getWeak, - onFreeze: onFreeze, - }); - - /***/ - }, - /* 81 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - - // 19.1.2.1 Object.assign(target, source, ...) - var DESCRIPTORS = __webpack_require__(1); - var getKeys = __webpack_require__(14); - var gOPS = __webpack_require__(22); - var pIE = __webpack_require__(15); - var toObject = __webpack_require__(27); - var IObject = __webpack_require__(47); - var $assign = Object.assign; - - // should work with symbols and should have deterministic property order (V8 bug) - module.exports = - !$assign || - __webpack_require__(11)(function() { - var A = {}; - var B = {}; - // eslint-disable-next-line no-undef - var S = Symbol(); - var K = 'abcdefghijklmnopqrst'; - A[S] = 7; - K.split('').forEach(function(k) { - B[k] = k; - }); - return ( - $assign({}, A)[S] != 7 || - Object.keys($assign({}, B)).join('') != K - ); - }) - ? function assign(target, source) { - // eslint-disable-line no-unused-vars - var T = toObject(target); - var aLen = arguments.length; - var index = 1; - var getSymbols = gOPS.f; - var isEnum = pIE.f; - while (aLen > index) { - var S = IObject(arguments[index++]); - var keys = getSymbols - ? getKeys(S).concat(getSymbols(S)) - : getKeys(S); - var length = keys.length; - var j = 0; - var key; - while (length > j) { - key = keys[j++]; - if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key]; - } - } - return T; - } - : $assign; - - /***/ - }, - /* 82 */ - /***/ function(module, exports, __webpack_require__) { - var dP = __webpack_require__(4); - var anObject = __webpack_require__(10); - var getKeys = __webpack_require__(14); - - module.exports = __webpack_require__(1) - ? Object.defineProperties - : function defineProperties(O, Properties) { - anObject(O); - var keys = getKeys(Properties); - var length = keys.length; - var i = 0; - var P; - while (length > i) dP.f(O, (P = keys[i++]), Properties[P]); - return O; - }; - - /***/ - }, - /* 83 */ - /***/ function(module, exports, __webpack_require__) { - // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window - var toIObject = __webpack_require__(8); - var gOPN = __webpack_require__(50).f; - var toString = {}.toString; - - var windowNames = - typeof window == 'object' && window && Object.getOwnPropertyNames - ? Object.getOwnPropertyNames(window) - : []; - - var getWindowNames = function(it) { - try { - return gOPN(it); - } catch (e) { - return windowNames.slice(); - } - }; - - module.exports.f = function getOwnPropertyNames(it) { - return windowNames && toString.call(it) == '[object Window]' - ? getWindowNames(it) - : gOPN(toIObject(it)); - }; - - /***/ - }, - /* 84 */ - /***/ function(module, exports, __webpack_require__) { - // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) - var has = __webpack_require__(3); - var toObject = __webpack_require__(27); - var IE_PROTO = __webpack_require__(24)('IE_PROTO'); - var ObjectProto = Object.prototype; - - module.exports = - Object.getPrototypeOf || - function(O) { - O = toObject(O); - if (has(O, IE_PROTO)) return O[IE_PROTO]; - if ( - typeof O.constructor == 'function' && - O instanceof O.constructor - ) { - return O.constructor.prototype; - } - return O instanceof Object ? ObjectProto : null; - }; - - /***/ - }, - /* 85 */ - /***/ function(module, exports, __webpack_require__) { - // Works with __proto__ only. Old v8 can't work with null proto objects. - /* eslint-disable no-proto */ - var isObject = __webpack_require__(7); - var anObject = __webpack_require__(10); - var check = function(O, proto) { - anObject(O); - if (!isObject(proto) && proto !== null) - throw TypeError(proto + ": can't set as prototype!"); - }; - module.exports = { - set: - Object.setPrototypeOf || - ('__proto__' in {} // eslint-disable-line - ? (function(test, buggy, set) { - try { - set = __webpack_require__(44)( - Function.call, - __webpack_require__(49).f(Object.prototype, '__proto__') - .set, - 2, - ); - set(test, []); - buggy = !(test instanceof Array); - } catch (e) { - buggy = true; - } - return function setPrototypeOf(O, proto) { - check(O, proto); - if (buggy) O.__proto__ = proto; - else set(O, proto); - return O; - }; - })({}, false) - : undefined), - check: check, - }; - - /***/ - }, - /* 86 */ - /***/ function(module, exports, __webpack_require__) { - var toInteger = __webpack_require__(26); - var defined = __webpack_require__(18); - // true -> String#at - // false -> String#codePointAt - module.exports = function(TO_STRING) { - return function(that, pos) { - var s = String(defined(that)); - var i = toInteger(pos); - var l = s.length; - var a, b; - if (i < 0 || i >= l) return TO_STRING ? '' : undefined; - a = s.charCodeAt(i); - return a < 0xd800 || - a > 0xdbff || - i + 1 === l || - (b = s.charCodeAt(i + 1)) < 0xdc00 || - b > 0xdfff - ? TO_STRING - ? s.charAt(i) - : a - : TO_STRING - ? s.slice(i, i + 2) - : ((a - 0xd800) << 10) + (b - 0xdc00) + 0x10000; - }; - }; - - /***/ - }, - /* 87 */ - /***/ function(module, exports, __webpack_require__) { - var toInteger = __webpack_require__(26); - var max = Math.max; - var min = Math.min; - module.exports = function(index, length) { - index = toInteger(index); - return index < 0 ? max(index + length, 0) : min(index, length); - }; - - /***/ - }, - /* 88 */ - /***/ function(module, exports, __webpack_require__) { - // 7.1.15 ToLength - var toInteger = __webpack_require__(26); - var min = Math.min; - module.exports = function(it) { - return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 - }; - - /***/ - }, - /* 89 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - - var addToUnscopables = __webpack_require__(73); - var step = __webpack_require__(79); - var Iterators = __webpack_require__(20); - var toIObject = __webpack_require__(8); - - // 22.1.3.4 Array.prototype.entries() - // 22.1.3.13 Array.prototype.keys() - // 22.1.3.29 Array.prototype.values() - // 22.1.3.30 Array.prototype[@@iterator]() - module.exports = __webpack_require__(48)( - Array, - 'Array', - function(iterated, kind) { - this._t = toIObject(iterated); // target - this._i = 0; // next index - this._k = kind; // kind - // 22.1.5.2.1 %ArrayIteratorPrototype%.next() - }, - function() { - var O = this._t; - var kind = this._k; - var index = this._i++; - if (!O || index >= O.length) { - this._t = undefined; - return step(1); - } - if (kind == 'keys') return step(0, index); - if (kind == 'values') return step(0, O[index]); - return step(0, [index, O[index]]); - }, - 'values', - ); - - // argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7) - Iterators.Arguments = Iterators.Array; - - addToUnscopables('keys'); - addToUnscopables('values'); - addToUnscopables('entries'); - - /***/ - }, - /* 90 */ - /***/ function(module, exports, __webpack_require__) { - // 19.1.3.1 Object.assign(target, source) - var $export = __webpack_require__(5); - - $export($export.S + $export.F, 'Object', { - assign: __webpack_require__(81), - }); - - /***/ - }, - /* 91 */ - /***/ function(module, exports, __webpack_require__) { - var $export = __webpack_require__(5); - // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) - $export($export.S, 'Object', { create: __webpack_require__(21) }); - - /***/ - }, - /* 92 */ - /***/ function(module, exports, __webpack_require__) { - var $export = __webpack_require__(5); - // 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes) - $export($export.S + $export.F * !__webpack_require__(1), 'Object', { - defineProperty: __webpack_require__(4).f, - }); - - /***/ - }, - /* 93 */ - /***/ function(module, exports, __webpack_require__) { - // 19.1.3.19 Object.setPrototypeOf(O, proto) - var $export = __webpack_require__(5); - $export($export.S, 'Object', { - setPrototypeOf: __webpack_require__(85).set, - }); - - /***/ - }, - /* 94 */ - /***/ function(module, exports) { - /***/ - }, - /* 95 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - - var $at = __webpack_require__(86)(true); - - // 21.1.3.27 String.prototype[@@iterator]() - __webpack_require__(48)( - String, - 'String', - function(iterated) { - this._t = String(iterated); // target - this._i = 0; // next index - // 21.1.5.2.1 %StringIteratorPrototype%.next() - }, - function() { - var O = this._t; - var index = this._i; - var point; - if (index >= O.length) return { value: undefined, done: true }; - point = $at(O, index); - this._i += point.length; - return { value: point, done: false }; - }, - ); - - /***/ - }, - /* 96 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - - // ECMAScript 6 symbols shim - var global = __webpack_require__(2); - var has = __webpack_require__(3); - var DESCRIPTORS = __webpack_require__(1); - var $export = __webpack_require__(5); - var redefine = __webpack_require__(52); - var META = __webpack_require__(80).KEY; - var $fails = __webpack_require__(11); - var shared = __webpack_require__(25); - var setToStringTag = __webpack_require__(23); - var uid = __webpack_require__(17); - var wks = __webpack_require__(9); - var wksExt = __webpack_require__(30); - var wksDefine = __webpack_require__(29); - var enumKeys = __webpack_require__(75); - var isArray = __webpack_require__(77); - var anObject = __webpack_require__(10); - var isObject = __webpack_require__(7); - var toObject = __webpack_require__(27); - var toIObject = __webpack_require__(8); - var toPrimitive = __webpack_require__(28); - var createDesc = __webpack_require__(16); - var _create = __webpack_require__(21); - var gOPNExt = __webpack_require__(83); - var $GOPD = __webpack_require__(49); - var $GOPS = __webpack_require__(22); - var $DP = __webpack_require__(4); - var $keys = __webpack_require__(14); - var gOPD = $GOPD.f; - var dP = $DP.f; - var gOPN = gOPNExt.f; - var $Symbol = global.Symbol; - var $JSON = global.JSON; - var _stringify = $JSON && $JSON.stringify; - var PROTOTYPE = 'prototype'; - var HIDDEN = wks('_hidden'); - var TO_PRIMITIVE = wks('toPrimitive'); - var isEnum = {}.propertyIsEnumerable; - var SymbolRegistry = shared('symbol-registry'); - var AllSymbols = shared('symbols'); - var OPSymbols = shared('op-symbols'); - var ObjectProto = Object[PROTOTYPE]; - var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f; - var QObject = global.QObject; - // Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173 - var setter = - !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild; - - // fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687 - var setSymbolDesc = - DESCRIPTORS && - $fails(function() { - return ( - _create( - dP({}, 'a', { - get: function() { - return dP(this, 'a', { value: 7 }).a; - }, - }), - ).a != 7 - ); - }) - ? function(it, key, D) { - var protoDesc = gOPD(ObjectProto, key); - if (protoDesc) delete ObjectProto[key]; - dP(it, key, D); - if (protoDesc && it !== ObjectProto) - dP(ObjectProto, key, protoDesc); - } - : dP; - - var wrap = function(tag) { - var sym = (AllSymbols[tag] = _create($Symbol[PROTOTYPE])); - sym._k = tag; - return sym; - }; - - var isSymbol = - USE_NATIVE && typeof $Symbol.iterator == 'symbol' - ? function(it) { - return typeof it == 'symbol'; - } - : function(it) { - return it instanceof $Symbol; - }; - - var $defineProperty = function defineProperty(it, key, D) { - if (it === ObjectProto) $defineProperty(OPSymbols, key, D); - anObject(it); - key = toPrimitive(key, true); - anObject(D); - if (has(AllSymbols, key)) { - if (!D.enumerable) { - if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {})); - it[HIDDEN][key] = true; - } else { - if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false; - D = _create(D, { enumerable: createDesc(0, false) }); - } - return setSymbolDesc(it, key, D); - } - return dP(it, key, D); - }; - var $defineProperties = function defineProperties(it, P) { - anObject(it); - var keys = enumKeys((P = toIObject(P))); - var i = 0; - var l = keys.length; - var key; - while (l > i) $defineProperty(it, (key = keys[i++]), P[key]); - return it; - }; - var $create = function create(it, P) { - return P === undefined - ? _create(it) - : $defineProperties(_create(it), P); - }; - var $propertyIsEnumerable = function propertyIsEnumerable(key) { - var E = isEnum.call(this, (key = toPrimitive(key, true))); - if ( - this === ObjectProto && - has(AllSymbols, key) && - !has(OPSymbols, key) - ) - return false; - return E || - !has(this, key) || - !has(AllSymbols, key) || - (has(this, HIDDEN) && this[HIDDEN][key]) - ? E - : true; - }; - var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor( - it, - key, - ) { - it = toIObject(it); - key = toPrimitive(key, true); - if ( - it === ObjectProto && - has(AllSymbols, key) && - !has(OPSymbols, key) - ) - return; - var D = gOPD(it, key); - if ( - D && - has(AllSymbols, key) && - !(has(it, HIDDEN) && it[HIDDEN][key]) - ) - D.enumerable = true; - return D; - }; - var $getOwnPropertyNames = function getOwnPropertyNames(it) { - var names = gOPN(toIObject(it)); - var result = []; - var i = 0; - var key; - while (names.length > i) { - if ( - !has(AllSymbols, (key = names[i++])) && - key != HIDDEN && - key != META - ) - result.push(key); - } - return result; - }; - var $getOwnPropertySymbols = function getOwnPropertySymbols(it) { - var IS_OP = it === ObjectProto; - var names = gOPN(IS_OP ? OPSymbols : toIObject(it)); - var result = []; - var i = 0; - var key; - while (names.length > i) { - if ( - has(AllSymbols, (key = names[i++])) && - (IS_OP ? has(ObjectProto, key) : true) - ) - result.push(AllSymbols[key]); - } - return result; - }; - - // 19.4.1.1 Symbol([description]) - if (!USE_NATIVE) { - $Symbol = function Symbol() { - if (this instanceof $Symbol) - throw TypeError('Symbol is not a constructor!'); - var tag = uid(arguments.length > 0 ? arguments[0] : undefined); - var $set = function(value) { - if (this === ObjectProto) $set.call(OPSymbols, value); - if (has(this, HIDDEN) && has(this[HIDDEN], tag)) - this[HIDDEN][tag] = false; - setSymbolDesc(this, tag, createDesc(1, value)); - }; - if (DESCRIPTORS && setter) - setSymbolDesc(ObjectProto, tag, { - configurable: true, - set: $set, - }); - return wrap(tag); - }; - redefine($Symbol[PROTOTYPE], 'toString', function toString() { - return this._k; - }); - - $GOPD.f = $getOwnPropertyDescriptor; - $DP.f = $defineProperty; - __webpack_require__(50).f = gOPNExt.f = $getOwnPropertyNames; - __webpack_require__(15).f = $propertyIsEnumerable; - $GOPS.f = $getOwnPropertySymbols; - - if (DESCRIPTORS && !__webpack_require__(13)) { - redefine( - ObjectProto, - 'propertyIsEnumerable', - $propertyIsEnumerable, - true, - ); - } - - wksExt.f = function(name) { - return wrap(wks(name)); - }; - } - - $export($export.G + $export.W + $export.F * !USE_NATIVE, { - Symbol: $Symbol, - }); - - for ( - var es6Symbols = 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'.split( - // 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 - ',', - ), - j = 0; - es6Symbols.length > j; - - ) - wks(es6Symbols[j++]); - - for ( - var wellKnownSymbols = $keys(wks.store), k = 0; - wellKnownSymbols.length > k; - - ) - wksDefine(wellKnownSymbols[k++]); - - $export($export.S + $export.F * !USE_NATIVE, 'Symbol', { - // 19.4.2.1 Symbol.for(key) - for: function(key) { - return has(SymbolRegistry, (key += '')) - ? SymbolRegistry[key] - : (SymbolRegistry[key] = $Symbol(key)); - }, - // 19.4.2.5 Symbol.keyFor(sym) - keyFor: function keyFor(sym) { - if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!'); - for (var key in SymbolRegistry) - if (SymbolRegistry[key] === sym) return key; - }, - useSetter: function() { - setter = true; - }, - useSimple: function() { - setter = false; - }, - }); - - $export($export.S + $export.F * !USE_NATIVE, 'Object', { - // 19.1.2.2 Object.create(O [, Properties]) - create: $create, - // 19.1.2.4 Object.defineProperty(O, P, Attributes) - defineProperty: $defineProperty, - // 19.1.2.3 Object.defineProperties(O, Properties) - defineProperties: $defineProperties, - // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) - getOwnPropertyDescriptor: $getOwnPropertyDescriptor, - // 19.1.2.7 Object.getOwnPropertyNames(O) - getOwnPropertyNames: $getOwnPropertyNames, - // 19.1.2.8 Object.getOwnPropertySymbols(O) - getOwnPropertySymbols: $getOwnPropertySymbols, - }); - - // Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives - // https://bugs.chromium.org/p/v8/issues/detail?id=3443 - var FAILS_ON_PRIMITIVES = $fails(function() { - $GOPS.f(1); - }); - - $export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', { - getOwnPropertySymbols: function getOwnPropertySymbols(it) { - return $GOPS.f(toObject(it)); - }, - }); - - // 24.3.2 JSON.stringify(value [, replacer [, space]]) - $JSON && - $export( - $export.S + - $export.F * - (!USE_NATIVE || - $fails(function() { - var S = $Symbol(); - // MS Edge converts symbol values to JSON as {} - // WebKit converts symbol values to JSON as null - // V8 throws on boxed symbols - return ( - _stringify([S]) != '[null]' || - _stringify({ a: S }) != '{}' || - _stringify(Object(S)) != '{}' - ); - })), - 'JSON', - { - stringify: function stringify(it) { - var args = [it]; - var i = 1; - var replacer, $replacer; - while (arguments.length > i) args.push(arguments[i++]); - $replacer = replacer = args[1]; - if ((!isObject(replacer) && it === undefined) || isSymbol(it)) - return; // IE8 returns string on undefined - if (!isArray(replacer)) - replacer = function(key, value) { - if (typeof $replacer == 'function') - value = $replacer.call(this, key, value); - if (!isSymbol(value)) return value; - }; - args[1] = replacer; - return _stringify.apply($JSON, args); - }, - }, - ); - - // 19.4.3.4 Symbol.prototype[@@toPrimitive](hint) - $Symbol[PROTOTYPE][TO_PRIMITIVE] || - __webpack_require__(6)( - $Symbol[PROTOTYPE], - TO_PRIMITIVE, - $Symbol[PROTOTYPE].valueOf, - ); - // 19.4.3.5 Symbol.prototype[@@toStringTag] - setToStringTag($Symbol, 'Symbol'); - // 20.2.1.9 Math[@@toStringTag] - setToStringTag(Math, 'Math', true); - // 24.3.3 JSON[@@toStringTag] - setToStringTag(global.JSON, 'JSON', true); - - /***/ - }, - /* 97 */ - /***/ function(module, exports, __webpack_require__) { - __webpack_require__(29)('asyncIterator'); - - /***/ - }, - /* 98 */ - /***/ function(module, exports, __webpack_require__) { - __webpack_require__(29)('observable'); - - /***/ - }, - /* 99 */ - /***/ function(module, exports, __webpack_require__) { - __webpack_require__(89); - var global = __webpack_require__(2); - var hide = __webpack_require__(6); - var Iterators = __webpack_require__(20); - var TO_STRING_TAG = __webpack_require__(9)('toStringTag'); - - var DOMIterables = ( - 'CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' + - 'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' + - 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' + - 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' + - 'TextTrackList,TouchList' - ).split(','); - - for (var i = 0; i < DOMIterables.length; i++) { - var NAME = DOMIterables[i]; - var Collection = global[NAME]; - var proto = Collection && Collection.prototype; - if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME); - Iterators[NAME] = Iterators.Array; - } - - /***/ - }, - /* 100 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - /* -object-assign -(c) Sindre Sorhus -@license MIT -*/ - - /* eslint-disable no-unused-vars */ - var getOwnPropertySymbols = Object.getOwnPropertySymbols; - var hasOwnProperty = Object.prototype.hasOwnProperty; - var propIsEnumerable = Object.prototype.propertyIsEnumerable; - - function toObject(val) { - if (val === null || val === undefined) { - throw new TypeError( - 'Object.assign cannot be called with null or undefined', - ); - } - - return Object(val); - } - - function shouldUseNative() { - try { - if (!Object.assign) { - return false; - } - - // Detect buggy property enumeration order in older V8 versions. - - // https://bugs.chromium.org/p/v8/issues/detail?id=4118 - var test1 = new String('abc'); // eslint-disable-line no-new-wrappers - test1[5] = 'de'; - if (Object.getOwnPropertyNames(test1)[0] === '5') { - return false; - } - - // https://bugs.chromium.org/p/v8/issues/detail?id=3056 - var test2 = {}; - for (var i = 0; i < 10; i++) { - test2['_' + String.fromCharCode(i)] = i; - } - var order2 = Object.getOwnPropertyNames(test2).map(function(n) { - return test2[n]; - }); - if (order2.join('') !== '0123456789') { - return false; - } - - // https://bugs.chromium.org/p/v8/issues/detail?id=3056 - var test3 = {}; - 'abcdefghijklmnopqrst'.split('').forEach(function(letter) { - test3[letter] = letter; - }); - if ( - Object.keys(Object.assign({}, test3)).join('') !== - 'abcdefghijklmnopqrst' - ) { - return false; - } - - return true; - } catch (err) { - // We don't expect any of the above to throw, but better to be safe. - return false; - } - } - - module.exports = shouldUseNative() - ? Object.assign - : function(target, source) { - var from; - var to = toObject(target); - var symbols; - - for (var s = 1; s < arguments.length; s++) { - from = Object(arguments[s]); - - for (var key in from) { - if (hasOwnProperty.call(from, key)) { - to[key] = from[key]; - } - } - - if (getOwnPropertySymbols) { - symbols = getOwnPropertySymbols(from); - for (var i = 0; i < symbols.length; i++) { - if (propIsEnumerable.call(from, symbols[i])) { - to[symbols[i]] = from[symbols[i]]; - } - } - } - } - - return to; - }; - - /***/ - }, - /* 101 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - /* WEBPACK VAR INJECTION */ (function(process) { - /** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - - var printWarning = function() {}; - - if (process.env.NODE_ENV !== 'production') { - var ReactPropTypesSecret = __webpack_require__(32); - var loggedTypeFailures = {}; - var has = Function.call.bind(Object.prototype.hasOwnProperty); - - printWarning = function(text) { - var message = 'Warning: ' + text; - if (typeof console !== 'undefined') { - console.error(message); - } - try { - // --- Welcome to debugging React --- - // This error was thrown as a convenience so that you can use this stack - // to find the callsite that caused this warning to fire. - throw new Error(message); - } catch (x) {} - }; - } - - /** - * Assert that the values match with the type specs. - * Error messages are memorized and will only be shown once. - * - * @param {object} typeSpecs Map of name to a ReactPropType - * @param {object} values Runtime values that need to be type-checked - * @param {string} location e.g. "prop", "context", "child context" - * @param {string} componentName Name of the component for error messages. - * @param {?Function} getStack Returns the component stack. - * @private - */ - function checkPropTypes( - typeSpecs, - values, - location, - componentName, - getStack, - ) { - if (process.env.NODE_ENV !== 'production') { - for (var typeSpecName in typeSpecs) { - if (has(typeSpecs, typeSpecName)) { - var error; - // Prop type validation may throw. In case they do, we don't want to - // fail the render phase where it didn't fail before. So we log it. - // After these have been cleaned up, we'll let them throw. - try { - // This is intentionally an invariant that gets caught. It's the same - // behavior as without this statement except with a better message. - if (typeof typeSpecs[typeSpecName] !== 'function') { - var err = Error( - (componentName || 'React class') + - ': ' + - location + - ' type `' + - typeSpecName + - '` is invalid; ' + - 'it must be a function, usually from the `prop-types` package, but received `' + - typeof typeSpecs[typeSpecName] + - '`.', - ); - err.name = 'Invariant Violation'; - throw err; - } - error = typeSpecs[typeSpecName]( - values, - typeSpecName, - componentName, - location, - null, - ReactPropTypesSecret, - ); - } catch (ex) { - error = ex; - } - if (error && !(error instanceof Error)) { - printWarning( - (componentName || 'React class') + - ': type specification of ' + - location + - ' `' + - typeSpecName + - '` is invalid; the type checker ' + - 'function must return `null` or an `Error` but returned a ' + - typeof error + - '. ' + - 'You may have forgotten to pass an argument to the type checker ' + - 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + - 'shape all require an argument).', - ); - } - if ( - error instanceof Error && - !(error.message in loggedTypeFailures) - ) { - // Only monitor this failure once because there tends to be a lot of the - // same error. - loggedTypeFailures[error.message] = true; - - var stack = getStack ? getStack() : ''; - - printWarning( - 'Failed ' + - location + - ' type: ' + - error.message + - (stack != null ? stack : ''), - ); - } - } - } - } - } - - /** - * Resets warning cache when testing. - * - * @private - */ - checkPropTypes.resetWarningCache = function() { - if (process.env.NODE_ENV !== 'production') { - loggedTypeFailures = {}; - } - }; - - module.exports = checkPropTypes; - - /* WEBPACK VAR INJECTION */ - }.call(exports, __webpack_require__(12))); - - /***/ - }, - /* 102 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - /** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - - var ReactPropTypesSecret = __webpack_require__(32); - - function emptyFunction() {} - function emptyFunctionWithReset() {} - emptyFunctionWithReset.resetWarningCache = emptyFunction; - - module.exports = function() { - function shim( - props, - propName, - componentName, - location, - propFullName, - secret, - ) { - if (secret === ReactPropTypesSecret) { - // It is still safe when called from React. - return; - } - var err = new Error( - 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' + - 'Use PropTypes.checkPropTypes() to call them. ' + - 'Read more at http://fb.me/use-check-prop-types', - ); - err.name = 'Invariant Violation'; - throw err; - } - shim.isRequired = shim; - function getShim() { - return shim; - } - // Important! - // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`. - var ReactPropTypes = { - array: shim, - bool: shim, - func: shim, - number: shim, - object: shim, - string: shim, - symbol: shim, - - any: shim, - arrayOf: getShim, - element: shim, - elementType: shim, - instanceOf: getShim, - node: shim, - objectOf: getShim, - oneOf: getShim, - oneOfType: getShim, - shape: getShim, - exact: getShim, - - checkPropTypes: emptyFunctionWithReset, - resetWarningCache: emptyFunction, - }; - - ReactPropTypes.PropTypes = ReactPropTypes; - - return ReactPropTypes; - }; - - /***/ - }, - /* 103 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - /* WEBPACK VAR INJECTION */ (function(process) { - /** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - - var ReactIs = __webpack_require__(53); - var assign = __webpack_require__(100); - - var ReactPropTypesSecret = __webpack_require__(32); - var checkPropTypes = __webpack_require__(101); - - var has = Function.call.bind(Object.prototype.hasOwnProperty); - var printWarning = function() {}; - - if (process.env.NODE_ENV !== 'production') { - printWarning = function(text) { - var message = 'Warning: ' + text; - if (typeof console !== 'undefined') { - console.error(message); - } - try { - // --- Welcome to debugging React --- - // This error was thrown as a convenience so that you can use this stack - // to find the callsite that caused this warning to fire. - throw new Error(message); - } catch (x) {} - }; - } - - function emptyFunctionThatReturnsNull() { - return null; - } - - module.exports = function(isValidElement, throwOnDirectAccess) { - /* global Symbol */ - var ITERATOR_SYMBOL = - typeof Symbol === 'function' && Symbol.iterator; - var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec. - - /** - * Returns the iterator method function contained on the iterable object. - * - * Be sure to invoke the function with the iterable as context: - * - * var iteratorFn = getIteratorFn(myIterable); - * if (iteratorFn) { - * var iterator = iteratorFn.call(myIterable); - * ... - * } - * - * @param {?object} maybeIterable - * @return {?function} - */ - function getIteratorFn(maybeIterable) { - var iteratorFn = - maybeIterable && - ((ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL]) || - maybeIterable[FAUX_ITERATOR_SYMBOL]); - if (typeof iteratorFn === 'function') { - return iteratorFn; - } - } - - /** - * Collection of methods that allow declaration and validation of props that are - * supplied to React components. Example usage: - * - * var Props = require('ReactPropTypes'); - * var MyArticle = React.createClass({ - * propTypes: { - * // An optional string prop named "description". - * description: Props.string, - * - * // A required enum prop named "category". - * category: Props.oneOf(['News','Photos']).isRequired, - * - * // A prop named "dialog" that requires an instance of Dialog. - * dialog: Props.instanceOf(Dialog).isRequired - * }, - * render: function() { ... } - * }); - * - * A more formal specification of how these methods are used: - * - * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...) - * decl := ReactPropTypes.{type}(.isRequired)? - * - * Each and every declaration produces a function with the same signature. This - * allows the creation of custom validation functions. For example: - * - * var MyLink = React.createClass({ - * propTypes: { - * // An optional string or URI prop named "href". - * href: function(props, propName, componentName) { - * var propValue = props[propName]; - * if (propValue != null && typeof propValue !== 'string' && - * !(propValue instanceof URI)) { - * return new Error( - * 'Expected a string or an URI for ' + propName + ' in ' + - * componentName - * ); - * } - * } - * }, - * render: function() {...} - * }); - * - * @internal - */ - - var ANONYMOUS = '<>'; - - // Important! - // Keep this list in sync with production version in `./factoryWithThrowingShims.js`. - var ReactPropTypes = { - array: createPrimitiveTypeChecker('array'), - bool: createPrimitiveTypeChecker('boolean'), - func: createPrimitiveTypeChecker('function'), - number: createPrimitiveTypeChecker('number'), - object: createPrimitiveTypeChecker('object'), - string: createPrimitiveTypeChecker('string'), - symbol: createPrimitiveTypeChecker('symbol'), - - any: createAnyTypeChecker(), - arrayOf: createArrayOfTypeChecker, - element: createElementTypeChecker(), - elementType: createElementTypeTypeChecker(), - instanceOf: createInstanceTypeChecker, - node: createNodeChecker(), - objectOf: createObjectOfTypeChecker, - oneOf: createEnumTypeChecker, - oneOfType: createUnionTypeChecker, - shape: createShapeTypeChecker, - exact: createStrictShapeTypeChecker, - }; - - /** - * inlined Object.is polyfill to avoid requiring consumers ship their own - * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is - */ - /*eslint-disable no-self-compare*/ - function is(x, y) { - // SameValue algorithm - if (x === y) { - // Steps 1-5, 7-10 - // Steps 6.b-6.e: +0 != -0 - return x !== 0 || 1 / x === 1 / y; - } else { - // Step 6.a: NaN == NaN - return x !== x && y !== y; - } - } - /*eslint-enable no-self-compare*/ - - /** - * We use an Error-like object for backward compatibility as people may call - * PropTypes directly and inspect their output. However, we don't use real - * Errors anymore. We don't inspect their stack anyway, and creating them - * is prohibitively expensive if they are created too often, such as what - * happens in oneOfType() for any type before the one that matched. - */ - function PropTypeError(message) { - this.message = message; - this.stack = ''; - } - // Make `instanceof Error` still work for returned errors. - PropTypeError.prototype = Error.prototype; - - function createChainableTypeChecker(validate) { - if (process.env.NODE_ENV !== 'production') { - var manualPropTypeCallCache = {}; - var manualPropTypeWarningCount = 0; - } - function checkType( - isRequired, - props, - propName, - componentName, - location, - propFullName, - secret, - ) { - componentName = componentName || ANONYMOUS; - propFullName = propFullName || propName; - - if (secret !== ReactPropTypesSecret) { - if (throwOnDirectAccess) { - // New behavior only for users of `prop-types` package - var err = new Error( - 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' + - 'Use `PropTypes.checkPropTypes()` to call them. ' + - 'Read more at http://fb.me/use-check-prop-types', - ); - err.name = 'Invariant Violation'; - throw err; - } else if ( - process.env.NODE_ENV !== 'production' && - typeof console !== 'undefined' - ) { - // Old behavior for people using React.PropTypes - var cacheKey = componentName + ':' + propName; - if ( - !manualPropTypeCallCache[cacheKey] && - // Avoid spamming the console because they are often not actionable except for lib authors - manualPropTypeWarningCount < 3 - ) { - printWarning( - 'You are manually calling a React.PropTypes validation ' + - 'function for the `' + - propFullName + - '` prop on `' + - componentName + - '`. This is deprecated ' + - 'and will throw in the standalone `prop-types` package. ' + - 'You may be seeing this warning due to a third-party PropTypes ' + - 'library. See https://fb.me/react-warning-dont-call-proptypes ' + - 'for details.', - ); - manualPropTypeCallCache[cacheKey] = true; - manualPropTypeWarningCount++; - } - } - } - if (props[propName] == null) { - if (isRequired) { - if (props[propName] === null) { - return new PropTypeError( - 'The ' + - location + - ' `' + - propFullName + - '` is marked as required ' + - ('in `' + - componentName + - '`, but its value is `null`.'), - ); - } - return new PropTypeError( - 'The ' + - location + - ' `' + - propFullName + - '` is marked as required in ' + - ('`' + - componentName + - '`, but its value is `undefined`.'), - ); - } - return null; - } else { - return validate( - props, - propName, - componentName, - location, - propFullName, - ); - } - } - - var chainedCheckType = checkType.bind(null, false); - chainedCheckType.isRequired = checkType.bind(null, true); - - return chainedCheckType; - } - - function createPrimitiveTypeChecker(expectedType) { - function validate( - props, - propName, - componentName, - location, - propFullName, - secret, - ) { - var propValue = props[propName]; - var propType = getPropType(propValue); - if (propType !== expectedType) { - // `propValue` being instance of, say, date/regexp, pass the 'object' - // check, but we can offer a more precise error message here rather than - // 'of type `object`'. - var preciseType = getPreciseType(propValue); - - return new PropTypeError( - 'Invalid ' + - location + - ' `' + - propFullName + - '` of type ' + - ('`' + - preciseType + - '` supplied to `' + - componentName + - '`, expected ') + - ('`' + expectedType + '`.'), - ); - } - return null; - } - return createChainableTypeChecker(validate); - } - - function createAnyTypeChecker() { - return createChainableTypeChecker(emptyFunctionThatReturnsNull); - } - - function createArrayOfTypeChecker(typeChecker) { - function validate( - props, - propName, - componentName, - location, - propFullName, - ) { - if (typeof typeChecker !== 'function') { - return new PropTypeError( - 'Property `' + - propFullName + - '` of component `' + - componentName + - '` has invalid PropType notation inside arrayOf.', - ); - } - var propValue = props[propName]; - if (!Array.isArray(propValue)) { - var propType = getPropType(propValue); - return new PropTypeError( - 'Invalid ' + - location + - ' `' + - propFullName + - '` of type ' + - ('`' + - propType + - '` supplied to `' + - componentName + - '`, expected an array.'), - ); - } - for (var i = 0; i < propValue.length; i++) { - var error = typeChecker( - propValue, - i, - componentName, - location, - propFullName + '[' + i + ']', - ReactPropTypesSecret, - ); - if (error instanceof Error) { - return error; - } - } - return null; - } - return createChainableTypeChecker(validate); - } - - function createElementTypeChecker() { - function validate( - props, - propName, - componentName, - location, - propFullName, - ) { - var propValue = props[propName]; - if (!isValidElement(propValue)) { - var propType = getPropType(propValue); - return new PropTypeError( - 'Invalid ' + - location + - ' `' + - propFullName + - '` of type ' + - ('`' + - propType + - '` supplied to `' + - componentName + - '`, expected a single ReactElement.'), - ); - } - return null; - } - return createChainableTypeChecker(validate); - } - - function createElementTypeTypeChecker() { - function validate( - props, - propName, - componentName, - location, - propFullName, - ) { - var propValue = props[propName]; - if (!ReactIs.isValidElementType(propValue)) { - var propType = getPropType(propValue); - return new PropTypeError( - 'Invalid ' + - location + - ' `' + - propFullName + - '` of type ' + - ('`' + - propType + - '` supplied to `' + - componentName + - '`, expected a single ReactElement type.'), - ); - } - return null; - } - return createChainableTypeChecker(validate); - } - - function createInstanceTypeChecker(expectedClass) { - function validate( - props, - propName, - componentName, - location, - propFullName, - ) { - if (!(props[propName] instanceof expectedClass)) { - var expectedClassName = expectedClass.name || ANONYMOUS; - var actualClassName = getClassName(props[propName]); - return new PropTypeError( - 'Invalid ' + - location + - ' `' + - propFullName + - '` of type ' + - ('`' + - actualClassName + - '` supplied to `' + - componentName + - '`, expected ') + - ('instance of `' + expectedClassName + '`.'), - ); - } - return null; - } - return createChainableTypeChecker(validate); - } - - function createEnumTypeChecker(expectedValues) { - if (!Array.isArray(expectedValues)) { - if (process.env.NODE_ENV !== 'production') { - if (arguments.length > 1) { - printWarning( - 'Invalid arguments supplied to oneOf, expected an array, got ' + - arguments.length + - ' arguments. ' + - 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).', - ); - } else { - printWarning( - 'Invalid argument supplied to oneOf, expected an array.', - ); - } - } - return emptyFunctionThatReturnsNull; - } - - function validate( - props, - propName, - componentName, - location, - propFullName, - ) { - var propValue = props[propName]; - for (var i = 0; i < expectedValues.length; i++) { - if (is(propValue, expectedValues[i])) { - return null; - } - } - - var valuesString = JSON.stringify( - expectedValues, - function replacer(key, value) { - var type = getPreciseType(value); - if (type === 'symbol') { - return String(value); - } - return value; - }, - ); - return new PropTypeError( - 'Invalid ' + - location + - ' `' + - propFullName + - '` of value `' + - String(propValue) + - '` ' + - ('supplied to `' + - componentName + - '`, expected one of ' + - valuesString + - '.'), - ); - } - return createChainableTypeChecker(validate); - } - - function createObjectOfTypeChecker(typeChecker) { - function validate( - props, - propName, - componentName, - location, - propFullName, - ) { - if (typeof typeChecker !== 'function') { - return new PropTypeError( - 'Property `' + - propFullName + - '` of component `' + - componentName + - '` has invalid PropType notation inside objectOf.', - ); - } - var propValue = props[propName]; - var propType = getPropType(propValue); - if (propType !== 'object') { - return new PropTypeError( - 'Invalid ' + - location + - ' `' + - propFullName + - '` of type ' + - ('`' + - propType + - '` supplied to `' + - componentName + - '`, expected an object.'), - ); - } - for (var key in propValue) { - if (has(propValue, key)) { - var error = typeChecker( - propValue, - key, - componentName, - location, - propFullName + '.' + key, - ReactPropTypesSecret, - ); - if (error instanceof Error) { - return error; - } - } - } - return null; - } - return createChainableTypeChecker(validate); - } - - function createUnionTypeChecker(arrayOfTypeCheckers) { - if (!Array.isArray(arrayOfTypeCheckers)) { - process.env.NODE_ENV !== 'production' - ? printWarning( - 'Invalid argument supplied to oneOfType, expected an instance of array.', - ) - : void 0; - return emptyFunctionThatReturnsNull; - } - - for (var i = 0; i < arrayOfTypeCheckers.length; i++) { - var checker = arrayOfTypeCheckers[i]; - if (typeof checker !== 'function') { - printWarning( - 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' + - 'received ' + - getPostfixForTypeWarning(checker) + - ' at index ' + - i + - '.', - ); - return emptyFunctionThatReturnsNull; - } - } - - function validate( - props, - propName, - componentName, - location, - propFullName, - ) { - for (var i = 0; i < arrayOfTypeCheckers.length; i++) { - var checker = arrayOfTypeCheckers[i]; - if ( - checker( - props, - propName, - componentName, - location, - propFullName, - ReactPropTypesSecret, - ) == null - ) { - return null; - } - } - - return new PropTypeError( - 'Invalid ' + - location + - ' `' + - propFullName + - '` supplied to ' + - ('`' + componentName + '`.'), - ); - } - return createChainableTypeChecker(validate); - } - - function createNodeChecker() { - function validate( - props, - propName, - componentName, - location, - propFullName, - ) { - if (!isNode(props[propName])) { - return new PropTypeError( - 'Invalid ' + - location + - ' `' + - propFullName + - '` supplied to ' + - ('`' + componentName + '`, expected a ReactNode.'), - ); - } - return null; - } - return createChainableTypeChecker(validate); - } - - function createShapeTypeChecker(shapeTypes) { - function validate( - props, - propName, - componentName, - location, - propFullName, - ) { - var propValue = props[propName]; - var propType = getPropType(propValue); - if (propType !== 'object') { - return new PropTypeError( - 'Invalid ' + - location + - ' `' + - propFullName + - '` of type `' + - propType + - '` ' + - ('supplied to `' + - componentName + - '`, expected `object`.'), - ); - } - for (var key in shapeTypes) { - var checker = shapeTypes[key]; - if (!checker) { - continue; - } - var error = checker( - propValue, - key, - componentName, - location, - propFullName + '.' + key, - ReactPropTypesSecret, - ); - if (error) { - return error; - } - } - return null; - } - return createChainableTypeChecker(validate); - } - - function createStrictShapeTypeChecker(shapeTypes) { - function validate( - props, - propName, - componentName, - location, - propFullName, - ) { - var propValue = props[propName]; - var propType = getPropType(propValue); - if (propType !== 'object') { - return new PropTypeError( - 'Invalid ' + - location + - ' `' + - propFullName + - '` of type `' + - propType + - '` ' + - ('supplied to `' + - componentName + - '`, expected `object`.'), - ); - } - // We need to check all keys in case some are required but missing from - // props. - var allKeys = assign({}, props[propName], shapeTypes); - for (var key in allKeys) { - var checker = shapeTypes[key]; - if (!checker) { - return new PropTypeError( - 'Invalid ' + - location + - ' `' + - propFullName + - '` key `' + - key + - '` supplied to `' + - componentName + - '`.' + - '\nBad object: ' + - JSON.stringify(props[propName], null, ' ') + - '\nValid keys: ' + - JSON.stringify(Object.keys(shapeTypes), null, ' '), - ); - } - var error = checker( - propValue, - key, - componentName, - location, - propFullName + '.' + key, - ReactPropTypesSecret, - ); - if (error) { - return error; - } - } - return null; - } - - return createChainableTypeChecker(validate); - } - - function isNode(propValue) { - switch (typeof propValue) { - case 'number': - case 'string': - case 'undefined': - return true; - case 'boolean': - return !propValue; - case 'object': - if (Array.isArray(propValue)) { - return propValue.every(isNode); - } - if (propValue === null || isValidElement(propValue)) { - return true; - } - - var iteratorFn = getIteratorFn(propValue); - if (iteratorFn) { - var iterator = iteratorFn.call(propValue); - var step; - if (iteratorFn !== propValue.entries) { - while (!(step = iterator.next()).done) { - if (!isNode(step.value)) { - return false; - } - } - } else { - // Iterator will provide entry [k,v] tuples rather than values. - while (!(step = iterator.next()).done) { - var entry = step.value; - if (entry) { - if (!isNode(entry[1])) { - return false; - } - } - } - } - } else { - return false; - } - - return true; - default: - return false; - } - } - - function isSymbol(propType, propValue) { - // Native Symbol. - if (propType === 'symbol') { - return true; - } - - // falsy value can't be a Symbol - if (!propValue) { - return false; - } - - // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol' - if (propValue['@@toStringTag'] === 'Symbol') { - return true; - } - - // Fallback for non-spec compliant Symbols which are polyfilled. - if (typeof Symbol === 'function' && propValue instanceof Symbol) { - return true; - } - - return false; - } - - // Equivalent of `typeof` but with special handling for array and regexp. - function getPropType(propValue) { - var propType = typeof propValue; - if (Array.isArray(propValue)) { - return 'array'; - } - if (propValue instanceof RegExp) { - // Old webkits (at least until Android 4.0) return 'function' rather than - // 'object' for typeof a RegExp. We'll normalize this here so that /bla/ - // passes PropTypes.object. - return 'object'; - } - if (isSymbol(propType, propValue)) { - return 'symbol'; - } - return propType; - } - - // This handles more types than `getPropType`. Only used for error messages. - // See `createPrimitiveTypeChecker`. - function getPreciseType(propValue) { - if (typeof propValue === 'undefined' || propValue === null) { - return '' + propValue; - } - var propType = getPropType(propValue); - if (propType === 'object') { - if (propValue instanceof Date) { - return 'date'; - } else if (propValue instanceof RegExp) { - return 'regexp'; - } - } - return propType; - } - - // Returns a string that is postfixed to a warning about an invalid type. - // For example, "undefined" or "of type array" - function getPostfixForTypeWarning(value) { - var type = getPreciseType(value); - switch (type) { - case 'array': - case 'object': - return 'an ' + type; - case 'boolean': - case 'date': - case 'regexp': - return 'a ' + type; - default: - return type; - } - } - - // Returns class name of the object, if any. - function getClassName(propValue) { - if (!propValue.constructor || !propValue.constructor.name) { - return ANONYMOUS; - } - return propValue.constructor.name; - } - - ReactPropTypes.checkPropTypes = checkPropTypes; - ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache; - ReactPropTypes.PropTypes = ReactPropTypes; - - return ReactPropTypes; - }; - - /* WEBPACK VAR INJECTION */ - }.call(exports, __webpack_require__(12))); - - /***/ - }, - /* 104 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - /* WEBPACK VAR INJECTION */ (function(process) { - /** @license React v16.12.0 - * react-is.development.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - - if (process.env.NODE_ENV !== 'production') { - (function() { - 'use strict'; - - Object.defineProperty(exports, '__esModule', { value: true }); - - // The Symbol used to tag the ReactElement-like types. If there is no native Symbol - // nor polyfill, then a plain number is used for performance. - var hasSymbol = typeof Symbol === 'function' && Symbol.for; - var REACT_ELEMENT_TYPE = hasSymbol - ? Symbol.for('react.element') - : 0xeac7; - var REACT_PORTAL_TYPE = hasSymbol - ? Symbol.for('react.portal') - : 0xeaca; - var REACT_FRAGMENT_TYPE = hasSymbol - ? Symbol.for('react.fragment') - : 0xeacb; - var REACT_STRICT_MODE_TYPE = hasSymbol - ? Symbol.for('react.strict_mode') - : 0xeacc; - var REACT_PROFILER_TYPE = hasSymbol - ? Symbol.for('react.profiler') - : 0xead2; - var REACT_PROVIDER_TYPE = hasSymbol - ? Symbol.for('react.provider') - : 0xeacd; - var REACT_CONTEXT_TYPE = hasSymbol - ? Symbol.for('react.context') - : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary - // (unstable) APIs that have been removed. Can we remove the symbols? - - var REACT_ASYNC_MODE_TYPE = hasSymbol - ? Symbol.for('react.async_mode') - : 0xeacf; - var REACT_CONCURRENT_MODE_TYPE = hasSymbol - ? Symbol.for('react.concurrent_mode') - : 0xeacf; - var REACT_FORWARD_REF_TYPE = hasSymbol - ? Symbol.for('react.forward_ref') - : 0xead0; - var REACT_SUSPENSE_TYPE = hasSymbol - ? Symbol.for('react.suspense') - : 0xead1; - var REACT_SUSPENSE_LIST_TYPE = hasSymbol - ? Symbol.for('react.suspense_list') - : 0xead8; - var REACT_MEMO_TYPE = hasSymbol - ? Symbol.for('react.memo') - : 0xead3; - var REACT_LAZY_TYPE = hasSymbol - ? Symbol.for('react.lazy') - : 0xead4; - var REACT_FUNDAMENTAL_TYPE = hasSymbol - ? Symbol.for('react.fundamental') - : 0xead5; - var REACT_RESPONDER_TYPE = hasSymbol - ? Symbol.for('react.responder') - : 0xead6; - var REACT_SCOPE_TYPE = hasSymbol - ? Symbol.for('react.scope') - : 0xead7; - - function isValidElementType(type) { - return ( - typeof type === 'string' || - typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill. - type === REACT_FRAGMENT_TYPE || - type === REACT_CONCURRENT_MODE_TYPE || - type === REACT_PROFILER_TYPE || - type === REACT_STRICT_MODE_TYPE || - type === REACT_SUSPENSE_TYPE || - type === REACT_SUSPENSE_LIST_TYPE || - (typeof type === 'object' && - type !== null && - (type.$$typeof === REACT_LAZY_TYPE || - type.$$typeof === REACT_MEMO_TYPE || - type.$$typeof === REACT_PROVIDER_TYPE || - type.$$typeof === REACT_CONTEXT_TYPE || - type.$$typeof === REACT_FORWARD_REF_TYPE || - type.$$typeof === REACT_FUNDAMENTAL_TYPE || - type.$$typeof === REACT_RESPONDER_TYPE || - type.$$typeof === REACT_SCOPE_TYPE)) - ); - } - - /** - * Forked from fbjs/warning: - * https://github.com/facebook/fbjs/blob/e66ba20ad5be433eb54423f2b097d829324d9de6/packages/fbjs/src/__forks__/warning.js - * - * Only change is we use console.warn instead of console.error, - * and do nothing when 'console' is not supported. - * This really simplifies the code. - * --- - * Similar to invariant but only logs a warning if the condition is not met. - * This can be used to log issues in development environments in critical - * paths. Removing the logging code for production environments will keep the - * same logic and follow the same code paths. - */ - var lowPriorityWarningWithoutStack = function() {}; - - { - var printWarning = function(format) { - for ( - var _len = arguments.length, - args = new Array(_len > 1 ? _len - 1 : 0), - _key = 1; - _key < _len; - _key++ - ) { - args[_key - 1] = arguments[_key]; - } - - var argIndex = 0; - var message = - 'Warning: ' + - format.replace(/%s/g, function() { - return args[argIndex++]; - }); - - if (typeof console !== 'undefined') { - console.warn(message); - } - - try { - // --- Welcome to debugging React --- - // This error was thrown as a convenience so that you can use this stack - // to find the callsite that caused this warning to fire. - throw new Error(message); - } catch (x) {} - }; - - lowPriorityWarningWithoutStack = function(condition, format) { - if (format === undefined) { - throw new Error( - '`lowPriorityWarningWithoutStack(condition, format, ...args)` requires a warning ' + - 'message argument', - ); - } - - if (!condition) { - for ( - var _len2 = arguments.length, - args = new Array(_len2 > 2 ? _len2 - 2 : 0), - _key2 = 2; - _key2 < _len2; - _key2++ - ) { - args[_key2 - 2] = arguments[_key2]; - } - - printWarning.apply(void 0, [format].concat(args)); - } - }; - } - - var lowPriorityWarningWithoutStack$1 = lowPriorityWarningWithoutStack; - - function typeOf(object) { - if (typeof object === 'object' && object !== null) { - var $$typeof = object.$$typeof; - - switch ($$typeof) { - case REACT_ELEMENT_TYPE: - var type = object.type; - - switch (type) { - case REACT_ASYNC_MODE_TYPE: - case REACT_CONCURRENT_MODE_TYPE: - case REACT_FRAGMENT_TYPE: - case REACT_PROFILER_TYPE: - case REACT_STRICT_MODE_TYPE: - case REACT_SUSPENSE_TYPE: - return type; - - default: - var $$typeofType = type && type.$$typeof; - - switch ($$typeofType) { - case REACT_CONTEXT_TYPE: - case REACT_FORWARD_REF_TYPE: - case REACT_LAZY_TYPE: - case REACT_MEMO_TYPE: - case REACT_PROVIDER_TYPE: - return $$typeofType; - - default: - return $$typeof; - } - } - - case REACT_PORTAL_TYPE: - return $$typeof; - } - } - - return undefined; - } // AsyncMode is deprecated along with isAsyncMode - - var AsyncMode = REACT_ASYNC_MODE_TYPE; - var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE; - var ContextConsumer = REACT_CONTEXT_TYPE; - var ContextProvider = REACT_PROVIDER_TYPE; - var Element = REACT_ELEMENT_TYPE; - var ForwardRef = REACT_FORWARD_REF_TYPE; - var Fragment = REACT_FRAGMENT_TYPE; - var Lazy = REACT_LAZY_TYPE; - var Memo = REACT_MEMO_TYPE; - var Portal = REACT_PORTAL_TYPE; - var Profiler = REACT_PROFILER_TYPE; - var StrictMode = REACT_STRICT_MODE_TYPE; - var Suspense = REACT_SUSPENSE_TYPE; - var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated - - function isAsyncMode(object) { - { - if (!hasWarnedAboutDeprecatedIsAsyncMode) { - hasWarnedAboutDeprecatedIsAsyncMode = true; - lowPriorityWarningWithoutStack$1( - false, - 'The ReactIs.isAsyncMode() alias has been deprecated, ' + - 'and will be removed in React 17+. Update your code to use ' + - 'ReactIs.isConcurrentMode() instead. It has the exact same API.', - ); - } - } - - return ( - isConcurrentMode(object) || - typeOf(object) === REACT_ASYNC_MODE_TYPE - ); - } - function isConcurrentMode(object) { - return typeOf(object) === REACT_CONCURRENT_MODE_TYPE; - } - function isContextConsumer(object) { - return typeOf(object) === REACT_CONTEXT_TYPE; - } - function isContextProvider(object) { - return typeOf(object) === REACT_PROVIDER_TYPE; - } - function isElement(object) { - return ( - typeof object === 'object' && - object !== null && - object.$$typeof === REACT_ELEMENT_TYPE - ); - } - function isForwardRef(object) { - return typeOf(object) === REACT_FORWARD_REF_TYPE; - } - function isFragment(object) { - return typeOf(object) === REACT_FRAGMENT_TYPE; - } - function isLazy(object) { - return typeOf(object) === REACT_LAZY_TYPE; - } - function isMemo(object) { - return typeOf(object) === REACT_MEMO_TYPE; - } - function isPortal(object) { - return typeOf(object) === REACT_PORTAL_TYPE; - } - function isProfiler(object) { - return typeOf(object) === REACT_PROFILER_TYPE; - } - function isStrictMode(object) { - return typeOf(object) === REACT_STRICT_MODE_TYPE; - } - function isSuspense(object) { - return typeOf(object) === REACT_SUSPENSE_TYPE; - } - - exports.typeOf = typeOf; - exports.AsyncMode = AsyncMode; - exports.ConcurrentMode = ConcurrentMode; - exports.ContextConsumer = ContextConsumer; - exports.ContextProvider = ContextProvider; - exports.Element = Element; - exports.ForwardRef = ForwardRef; - exports.Fragment = Fragment; - exports.Lazy = Lazy; - exports.Memo = Memo; - exports.Portal = Portal; - exports.Profiler = Profiler; - exports.StrictMode = StrictMode; - exports.Suspense = Suspense; - exports.isValidElementType = isValidElementType; - exports.isAsyncMode = isAsyncMode; - exports.isConcurrentMode = isConcurrentMode; - exports.isContextConsumer = isContextConsumer; - exports.isContextProvider = isContextProvider; - exports.isElement = isElement; - exports.isForwardRef = isForwardRef; - exports.isFragment = isFragment; - exports.isLazy = isLazy; - exports.isMemo = isMemo; - exports.isPortal = isPortal; - exports.isProfiler = isProfiler; - exports.isStrictMode = isStrictMode; - exports.isSuspense = isSuspense; - })(); - } - - /* WEBPACK VAR INJECTION */ - }.call(exports, __webpack_require__(12))); - - /***/ - }, - /* 105 */ - /***/ function(module, exports, __webpack_require__) { - 'use strict'; - /** @license React v16.12.0 - * react-is.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - - Object.defineProperty(exports, '__esModule', { value: !0 }); - var b = 'function' === typeof Symbol && Symbol.for, - c = b ? Symbol.for('react.element') : 60103, - d = b ? Symbol.for('react.portal') : 60106, - e = b ? Symbol.for('react.fragment') : 60107, - f = b ? Symbol.for('react.strict_mode') : 60108, - g = b ? Symbol.for('react.profiler') : 60114, - h = b ? Symbol.for('react.provider') : 60109, - k = b ? Symbol.for('react.context') : 60110, - l = b ? Symbol.for('react.async_mode') : 60111, - m = b ? Symbol.for('react.concurrent_mode') : 60111, - n = b ? Symbol.for('react.forward_ref') : 60112, - p = b ? Symbol.for('react.suspense') : 60113, - q = b ? Symbol.for('react.suspense_list') : 60120, - r = b ? Symbol.for('react.memo') : 60115, - t = b ? Symbol.for('react.lazy') : 60116, - v = b ? Symbol.for('react.fundamental') : 60117, - w = b ? Symbol.for('react.responder') : 60118, - x = b ? Symbol.for('react.scope') : 60119; - function y(a) { - if ('object' === typeof a && null !== a) { - var u = a.$$typeof; - switch (u) { - case c: - switch (((a = a.type), a)) { - case l: - case m: - case e: - case g: - case f: - case p: - return a; - default: - switch (((a = a && a.$$typeof), a)) { - case k: - case n: - case t: - case r: - case h: - return a; - default: - return u; - } - } - case d: - return u; - } - } - } - function z(a) { - return y(a) === m; - } - exports.typeOf = y; - exports.AsyncMode = l; - exports.ConcurrentMode = m; - exports.ContextConsumer = k; - exports.ContextProvider = h; - exports.Element = c; - exports.ForwardRef = n; - exports.Fragment = e; - exports.Lazy = t; - exports.Memo = r; - exports.Portal = d; - exports.Profiler = g; - exports.StrictMode = f; - exports.Suspense = p; - exports.isValidElementType = function(a) { - return ( - 'string' === typeof a || - 'function' === typeof a || - a === e || - a === m || - a === g || - a === f || - a === p || - a === q || - ('object' === typeof a && - null !== a && - (a.$$typeof === t || - a.$$typeof === r || - a.$$typeof === h || - a.$$typeof === k || - a.$$typeof === n || - a.$$typeof === v || - a.$$typeof === w || - a.$$typeof === x)) - ); - }; - exports.isAsyncMode = function(a) { - return z(a) || y(a) === l; - }; - exports.isConcurrentMode = z; - exports.isContextConsumer = function(a) { - return y(a) === k; - }; - exports.isContextProvider = function(a) { - return y(a) === h; - }; - exports.isElement = function(a) { - return 'object' === typeof a && null !== a && a.$$typeof === c; - }; - exports.isForwardRef = function(a) { - return y(a) === n; - }; - exports.isFragment = function(a) { - return y(a) === e; - }; - exports.isLazy = function(a) { - return y(a) === t; - }; - exports.isMemo = function(a) { - return y(a) === r; - }; - exports.isPortal = function(a) { - return y(a) === d; - }; - exports.isProfiler = function(a) { - return y(a) === g; - }; - exports.isStrictMode = function(a) { - return y(a) === f; - }; - exports.isSuspense = function(a) { - return y(a) === p; - }; - - /***/ - }, - /* 106 */ - /***/ function(module, __webpack_exports__, __webpack_require__) { - 'use strict'; - /* harmony export (binding) */ __webpack_require__.d( - __webpack_exports__, - 'a', - function() { - return polyfill; - }, - ); - /** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - - function componentWillMount() { - // Call this.constructor.gDSFP to support sub-classes. - var state = this.constructor.getDerivedStateFromProps( - this.props, - this.state, - ); - if (state !== null && state !== undefined) { - this.setState(state); - } - } - - function componentWillReceiveProps(nextProps) { - // Call this.constructor.gDSFP to support sub-classes. - // Use the setState() updater to ensure state isn't stale in certain edge cases. - function updater(prevState) { - var state = this.constructor.getDerivedStateFromProps( - nextProps, - prevState, - ); - return state !== null && state !== undefined ? state : null; - } - // Binding "this" is important for shallow renderer support. - this.setState(updater.bind(this)); - } - - function componentWillUpdate(nextProps, nextState) { - try { - var prevProps = this.props; - var prevState = this.state; - this.props = nextProps; - this.state = nextState; - this.__reactInternalSnapshotFlag = true; - this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate( - prevProps, - prevState, - ); - } finally { - this.props = prevProps; - this.state = prevState; - } - } - - // React may warn about cWM/cWRP/cWU methods being deprecated. - // Add a flag to suppress these warnings for this special case. - componentWillMount.__suppressDeprecationWarning = true; - componentWillReceiveProps.__suppressDeprecationWarning = true; - componentWillUpdate.__suppressDeprecationWarning = true; - - function polyfill(Component) { - var prototype = Component.prototype; - - if (!prototype || !prototype.isReactComponent) { - throw new Error('Can only polyfill class components'); - } - - if ( - typeof Component.getDerivedStateFromProps !== 'function' && - typeof prototype.getSnapshotBeforeUpdate !== 'function' - ) { - return Component; - } - - // If new component APIs are defined, "unsafe" lifecycles won't be called. - // Error if any of these lifecycles are present, - // Because they would work differently between older and newer (16.3+) versions of React. - var foundWillMountName = null; - var foundWillReceivePropsName = null; - var foundWillUpdateName = null; - if (typeof prototype.componentWillMount === 'function') { - foundWillMountName = 'componentWillMount'; - } else if ( - typeof prototype.UNSAFE_componentWillMount === 'function' - ) { - foundWillMountName = 'UNSAFE_componentWillMount'; - } - if (typeof prototype.componentWillReceiveProps === 'function') { - foundWillReceivePropsName = 'componentWillReceiveProps'; - } else if ( - typeof prototype.UNSAFE_componentWillReceiveProps === 'function' - ) { - foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps'; - } - if (typeof prototype.componentWillUpdate === 'function') { - foundWillUpdateName = 'componentWillUpdate'; - } else if ( - typeof prototype.UNSAFE_componentWillUpdate === 'function' - ) { - foundWillUpdateName = 'UNSAFE_componentWillUpdate'; - } - if ( - foundWillMountName !== null || - foundWillReceivePropsName !== null || - foundWillUpdateName !== null - ) { - var componentName = Component.displayName || Component.name; - var newApiName = - typeof Component.getDerivedStateFromProps === 'function' - ? 'getDerivedStateFromProps()' - : 'getSnapshotBeforeUpdate()'; - - throw Error( - 'Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n' + - componentName + - ' uses ' + - newApiName + - ' but also contains the following legacy lifecycles:' + - (foundWillMountName !== null - ? '\n ' + foundWillMountName - : '') + - (foundWillReceivePropsName !== null - ? '\n ' + foundWillReceivePropsName - : '') + - (foundWillUpdateName !== null - ? '\n ' + foundWillUpdateName - : '') + - '\n\nThe above lifecycles should be removed. Learn more about this warning here:\n' + - 'https://fb.me/react-async-component-lifecycle-hooks', - ); - } - - // React <= 16.2 does not support static getDerivedStateFromProps. - // As a workaround, use cWM and cWRP to invoke the new static lifecycle. - // Newer versions of React will ignore these lifecycles if gDSFP exists. - if (typeof Component.getDerivedStateFromProps === 'function') { - prototype.componentWillMount = componentWillMount; - prototype.componentWillReceiveProps = componentWillReceiveProps; - } - - // React <= 16.2 does not support getSnapshotBeforeUpdate. - // As a workaround, use cWU to invoke the new lifecycle. - // Newer versions of React will ignore that lifecycle if gSBU exists. - if (typeof prototype.getSnapshotBeforeUpdate === 'function') { - if (typeof prototype.componentDidUpdate !== 'function') { - throw new Error( - 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype', - ); - } - - prototype.componentWillUpdate = componentWillUpdate; - - var componentDidUpdate = prototype.componentDidUpdate; - - prototype.componentDidUpdate = function componentDidUpdatePolyfill( - prevProps, - prevState, - maybeSnapshot, - ) { - // 16.3+ will not execute our will-update method; - // It will pass a snapshot value to did-update though. - // Older versions will require our polyfilled will-update value. - // We need to handle both cases, but can't just check for the presence of "maybeSnapshot", - // Because for <= 15.x versions this might be a "prevContext" object. - // We also can't just check "__reactInternalSnapshot", - // Because get-snapshot might return a falsy value. - // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior. - var snapshot = this.__reactInternalSnapshotFlag - ? this.__reactInternalSnapshot - : maybeSnapshot; - - componentDidUpdate.call(this, prevProps, prevState, snapshot); - }; - } - - return Component; - } - - /***/ - }, - /* 107 */ - /***/ function(module, exports, __webpack_require__) { - __webpack_require__(54); - module.exports = __webpack_require__(55); - - /***/ - }, - /******/ - ], - ); -}); -//# sourceMappingURL=rc-pagination.js.map diff --git a/dist/rc-pagination.js.map b/dist/rc-pagination.js.map deleted file mode 100644 index 8a803383..00000000 --- a/dist/rc-pagination.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap cf03c8c062ca5c1a738d","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_core.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_descriptors.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_global.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_has.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-dp.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_export.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_hide.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_is-object.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_to-iobject.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_wks.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_an-object.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_fails.js","webpack:///./~/_process@0.11.10@process/browser.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_library.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-keys.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-pie.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_property-desc.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_uid.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_defined.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_enum-bug-keys.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_iterators.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-create.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-gops.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_set-to-string-tag.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_shared-key.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_shared.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_to-integer.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_to-object.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_to-primitive.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_wks-define.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_wks-ext.js","webpack:///./~/_prop-types@15.7.2@prop-types/index.js","webpack:///./~/_prop-types@15.7.2@prop-types/lib/ReactPropTypesSecret.js","webpack:///external {\"root\":\"React\",\"commonjs2\":\"react\",\"commonjs\":\"react\",\"amd\":\"react\"}","webpack:///./src/KeyCode.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/define-property.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/helpers/classCallCheck.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/helpers/createClass.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/helpers/defineProperty.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/helpers/inherits.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/helpers/possibleConstructorReturn.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/helpers/typeof.js","webpack:///./~/_classnames@2.2.6@classnames/index.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_cof.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_ctx.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_dom-create.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_ie8-dom-define.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_iobject.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_iter-define.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-gopd.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-gopn.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-keys-internal.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_redefine.js","webpack:///./~/_react-is@16.12.0@react-is/index.js","webpack:///./src/index.js","webpack:///./assets/index.less?8fdf","webpack:///./src/Options.jsx","webpack:///./src/Pager.jsx","webpack:///./src/Pagination.jsx","webpack:///./src/locale/zh_CN.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/assign.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/create.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/set-prototype-of.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/core-js/symbol.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/core-js/symbol/iterator.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/helpers/extends.js","webpack:///./~/_core-js@2.6.11@core-js/library/fn/object/assign.js","webpack:///./~/_core-js@2.6.11@core-js/library/fn/object/create.js","webpack:///./~/_core-js@2.6.11@core-js/library/fn/object/define-property.js","webpack:///./~/_core-js@2.6.11@core-js/library/fn/object/set-prototype-of.js","webpack:///./~/_core-js@2.6.11@core-js/library/fn/symbol/index.js","webpack:///./~/_core-js@2.6.11@core-js/library/fn/symbol/iterator.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_a-function.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_add-to-unscopables.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_array-includes.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_enum-keys.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_html.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_is-array.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_iter-create.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_iter-step.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_meta.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-assign.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-dps.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-gopn-ext.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_object-gpo.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_set-proto.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_string-at.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_to-absolute-index.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/_to-length.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es6.array.iterator.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es6.object.assign.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es6.object.create.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es6.object.define-property.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es6.object.set-prototype-of.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es6.string.iterator.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es6.symbol.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es7.symbol.async-iterator.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/es7.symbol.observable.js","webpack:///./~/_core-js@2.6.11@core-js/library/modules/web.dom.iterable.js","webpack:///./~/_object-assign@4.1.1@object-assign/index.js","webpack:///./~/_prop-types@15.7.2@prop-types/checkPropTypes.js","webpack:///./~/_prop-types@15.7.2@prop-types/factoryWithThrowingShims.js","webpack:///./~/_prop-types@15.7.2@prop-types/factoryWithTypeCheckers.js","webpack:///./~/_react-is@16.12.0@react-is/cjs/react-is.development.js","webpack:///./~/_react-is@16.12.0@react-is/cjs/react-is.production.min.js","webpack:///./~/_react-lifecycles-compat@3.0.4@react-lifecycles-compat/react-lifecycles-compat.es.js"],"names":["ZERO","NINE","NUMPAD_ZERO","NUMPAD_NINE","BACKSPACE","DELETE","ENTER","ARROW_UP","ARROW_DOWN","Options","state","goInputText","buildOptionText","value","props","locale","items_per_page","changeSize","Number","handleChange","e","setState","target","handleBlur","goButton","quickGo","rootPrefixCls","relatedTarget","className","indexOf","getValidValue","go","keyCode","KEYCODE","type","current","isNaN","pageSize","pageSizeOptions","selectComponentClass","selectPrefixCls","disabled","prefixCls","Select","changeSelect","goInput","gotoButton","options","map","opt","i","toString","triggerNode","parentNode","jump_to_confirm","jump_to","page","React","Component","propTypes","PropTypes","bool","func","number","arrayOf","string","object","oneOfType","node","defaultProps","Pager","cls","classNames","active","handleClick","onClick","handleKeyPress","onKeyPress","showTitle","itemRender","last","noop","isInteger","isFinite","Math","floor","defaultItemRender","element","calculatePage","p","total","Pagination","hasOnChange","onChange","hasCurrent","console","warn","defaultCurrent","defaultPageSize","min","undefined","currentInputValue","prevProps","prevState","paginationNode","lastCurrentNode","querySelector","document","activeElement","blur","inputValue","allPages","prevPage","prevIcon","prevButton","getItemIcon","hasPrev","isValidElement","cloneElement","nextPage","nextIcon","nextButton","hasNext","hideOnSinglePage","pagerList","jumpPrev","jumpNext","firstPager","lastPager","showQuickJumper","pageBufferSize","showLessItems","dataOrAriaAttributeProps","Object","keys","reduce","prev","key","substr","simple","handleGoTO","style","savePaginationNode","prev_page","runIfEnterPrev","renderPrev","handleKeyDown","handleKeyUp","next_page","next","runIfEnterNext","renderNext","pagerProps","runIfEnter","push","prevItemTitle","prev_3","prev_5","nextItemTitle","next_3","next_5","showPrevNextJumpers","jumpPrevClassString","jumpPrevIcon","runIfEnterJumpPrev","getJumpPrevPage","jumpNextClassString","jumpNextIcon","runIfEnterJumpNext","getJumpNextPage","left","max","right","unshift","length","totalText","showTotal","prevDisabled","nextDisabled","showSizeChanger","changePageSize","shouldDisplayQuickJumper","newState","newCurrent","onShowSizeChange","LOCALE","icon","iconNode","createElement","isValid","preventDefault","size","currentPage","event","callback","restParams","charCode","polyfill"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,O;QCVA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA,2CAA2C,cAAc;;QAEzD;QACA;QACA;QACA;QACA;QACA;QACA;QACA,KAAK;QACL;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;QAEA;QACA;;;;;;;AChEA,6BAA6B;AAC7B,uCAAuC;;;;;;;ACDvC;AACA,kBAAkB,mBAAO,CAAC,EAAU;AACpC,iCAAiC,QAAQ,mBAAmB,UAAU,EAAE,EAAE;AAC1E,CAAC;;;;;;;ACHD;AACA;AACA;AACA;AACA;AACA,yCAAyC;;;;;;;ACLzC,uBAAuB;AACvB;AACA;AACA;;;;;;;ACHA,eAAe,mBAAO,CAAC,EAAc;AACrC,qBAAqB,mBAAO,CAAC,EAAmB;AAChD,kBAAkB,mBAAO,CAAC,EAAiB;AAC3C;;AAEA,YAAY,mBAAO,CAAC,CAAgB;AACpC;AACA;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;AACA;AACA;AACA;;;;;;;ACfA,aAAa,mBAAO,CAAC,CAAW;AAChC,WAAW,mBAAO,CAAC,CAAS;AAC5B,UAAU,mBAAO,CAAC,EAAQ;AAC1B,WAAW,mBAAO,CAAC,CAAS;AAC5B,UAAU,mBAAO,CAAC,CAAQ;AAC1B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iEAAiE;AACjE;AACA,kFAAkF;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,SAAS;AACT;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,eAAe;AACf,eAAe;AACf,eAAe;AACf,gBAAgB;AAChB;;;;;;;AC7DA,SAAS,mBAAO,CAAC,CAAc;AAC/B,iBAAiB,mBAAO,CAAC,EAAkB;AAC3C,iBAAiB,mBAAO,CAAC,CAAgB;AACzC;AACA,CAAC;AACD;AACA;AACA;;;;;;;ACPA;AACA;AACA;;;;;;;ACFA;AACA,cAAc,mBAAO,CAAC,EAAY;AAClC,cAAc,mBAAO,CAAC,EAAY;AAClC;AACA;AACA;;;;;;;ACLA,YAAY,mBAAO,CAAC,EAAW;AAC/B,UAAU,mBAAO,CAAC,EAAQ;AAC1B,aAAa,mBAAO,CAAC,CAAW;AAChC;;AAEA;AACA;AACA;AACA;;AAEA;;;;;;;ACVA,eAAe,mBAAO,CAAC,CAAc;AACrC;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;ACNA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,qCAAqC;;AAErC;AACA;AACA;;AAEA,2BAA2B;AAC3B;AACA;AACA;AACA,4BAA4B,UAAU;;;;;;;ACvLtC;;;;;;;ACAA;AACA,YAAY,mBAAO,CAAC,EAAyB;AAC7C,kBAAkB,mBAAO,CAAC,EAAkB;;AAE5C;AACA;AACA;;;;;;;ACNA,cAAc;;;;;;;ACAd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACPA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA;;;;;;;ACHA;;;;;;;ACAA;AACA,eAAe,mBAAO,CAAC,EAAc;AACrC,UAAU,mBAAO,CAAC,EAAe;AACjC,kBAAkB,mBAAO,CAAC,EAAkB;AAC5C,eAAe,mBAAO,CAAC,EAAe;AACtC,yBAAyB;AACzB;;AAEA;AACA;AACA;AACA,eAAe,mBAAO,CAAC,EAAe;AACtC;AACA;AACA;AACA;AACA;AACA,EAAE,mBAAO,CAAC,EAAS;AACnB,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;;;;;;ACxCA;;;;;;;ACAA,UAAU,mBAAO,CAAC,CAAc;AAChC,UAAU,mBAAO,CAAC,CAAQ;AAC1B,UAAU,mBAAO,CAAC,CAAQ;;AAE1B;AACA,oEAAoE,iCAAiC;AACrG;;;;;;;ACNA,aAAa,mBAAO,CAAC,EAAW;AAChC,UAAU,mBAAO,CAAC,EAAQ;AAC1B;AACA;AACA;;;;;;;ACJA,WAAW,mBAAO,CAAC,CAAS;AAC5B,aAAa,mBAAO,CAAC,CAAW;AAChC;AACA,kDAAkD;;AAElD;AACA,qEAAqE;AACrE,CAAC;AACD;AACA,QAAQ,mBAAO,CAAC,EAAY;AAC5B;AACA,CAAC;;;;;;;ACXD;AACA;AACA;AACA;AACA;AACA;;;;;;;ACLA;AACA,cAAc,mBAAO,CAAC,EAAY;AAClC;AACA;AACA;;;;;;;ACJA;AACA,eAAe,mBAAO,CAAC,CAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACXA,aAAa,mBAAO,CAAC,CAAW;AAChC,WAAW,mBAAO,CAAC,CAAS;AAC5B,cAAc,mBAAO,CAAC,EAAY;AAClC,aAAa,mBAAO,CAAC,EAAY;AACjC,qBAAqB,mBAAO,CAAC,CAAc;AAC3C;AACA,0DAA0D,sBAAsB;AAChF,kFAAkF,wBAAwB;AAC1G;;;;;;;ACRA,YAAY,mBAAO,CAAC,CAAQ;;;;;;;ACA5B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,gBAAgB,mBAAO,CAAC,EAAU;;AAElC;AACA;AACA;AACA,mBAAmB,mBAAO,CAAC,GAA2B;AACtD,CAAC;AACD;AACA;AACA,mBAAmB,mBAAO,CAAC,GAA4B;AACvD;;;;;;;;;AClBA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;;AAEA;;;;;;;ACXA,gD;;;;;;;ACAe;AACbA,QAAM,EADO;AAEbC,QAAM,EAFO;;AAIbC,eAAa,EAJA;AAKbC,eAAa,GALA;;AAObC,aAAW,CAPE;AAQbC,UAAQ,EARK;AASbC,SAAO,EATM;;AAWbC,YAAU,EAXG;AAYbC,cAAY;AAZC,CAAf,E;;;;;;ACAA,kBAAkB,YAAY,mBAAO,CAAC,EAA2C,sB;;;;;;;ACApE;;AAEb;;AAEA;AACA;AACA;AACA;AACA,E;;;;;;;ACRa;;AAEb;;AAEA,sBAAsB,mBAAO,CAAC,EAAmC;;AAEjE;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA,mBAAmB,kBAAkB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC,G;;;;;;;AC1BY;;AAEb;;AAEA,sBAAsB,mBAAO,CAAC,EAAmC;;AAEjE;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;;AAEA;AACA,E;;;;;;;ACvBa;;AAEb;;AAEA,sBAAsB,mBAAO,CAAC,EAAoC;;AAElE;;AAEA,cAAc,mBAAO,CAAC,EAA0B;;AAEhD;;AAEA,eAAe,mBAAO,CAAC,EAAmB;;AAE1C;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,E;;;;;;;AChCa;;AAEb;;AAEA,eAAe,mBAAO,CAAC,EAAmB;;AAE1C;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;;AAEA;AACA,E;;;;;;;AChBa;;AAEb;;AAEA,gBAAgB,mBAAO,CAAC,EAA4B;;AAEpD;;AAEA,cAAc,mBAAO,CAAC,EAAmB;;AAEzC;;AAEA,iHAAiH,mBAAmB,EAAE,mBAAmB,4JAA4J;;AAErT,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA,CAAC;AACD;AACA,E;;;;;;ACpBA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,gBAAgB;;AAEhB;AACA;;AAEA,iBAAiB,sBAAsB;AACvC;AACA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,EAAE,UAAU,IAA4E;AACxF;AACA,EAAE,iCAAqB,EAAE,kCAAE;AAC3B;AACA,GAAG;AAAA,oGAAC;AACJ,EAAE;AACF;AACA;AACA,CAAC;;;;;;;ACnDD,iBAAiB;;AAEjB;AACA;AACA;;;;;;;ACJA;AACA,gBAAgB,mBAAO,CAAC,EAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACnBA,eAAe,mBAAO,CAAC,CAAc;AACrC,eAAe,mBAAO,CAAC,CAAW;AAClC;AACA;AACA;AACA;AACA;;;;;;;ACNA,kBAAkB,mBAAO,CAAC,CAAgB,MAAM,mBAAO,CAAC,EAAU;AAClE,+BAA+B,mBAAO,CAAC,EAAe,gBAAgB,mBAAmB,UAAU,EAAE,EAAE;AACvG,CAAC;;;;;;;ACFD;AACA,UAAU,mBAAO,CAAC,EAAQ;AAC1B;AACA;AACA;AACA;;;;;;;;ACLa;AACb,cAAc,mBAAO,CAAC,EAAY;AAClC,cAAc,mBAAO,CAAC,CAAW;AACjC,eAAe,mBAAO,CAAC,EAAa;AACpC,WAAW,mBAAO,CAAC,CAAS;AAC5B,gBAAgB,mBAAO,CAAC,EAAc;AACtC,kBAAkB,mBAAO,CAAC,EAAgB;AAC1C,qBAAqB,mBAAO,CAAC,EAAsB;AACnD,qBAAqB,mBAAO,CAAC,EAAe;AAC5C,eAAe,mBAAO,CAAC,CAAQ;AAC/B,8CAA8C;AAC9C;AACA;AACA;;AAEA,8BAA8B,aAAa;;AAE3C;AACA;AACA;AACA;AACA;AACA,yCAAyC,oCAAoC;AAC7E,6CAA6C,oCAAoC;AACjF,KAAK,4BAA4B,oCAAoC;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,mBAAmB;AACnC;AACA;AACA,kCAAkC,2BAA2B;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;;;;;;ACpEA,UAAU,mBAAO,CAAC,EAAe;AACjC,iBAAiB,mBAAO,CAAC,EAAkB;AAC3C,gBAAgB,mBAAO,CAAC,CAAe;AACvC,kBAAkB,mBAAO,CAAC,EAAiB;AAC3C,UAAU,mBAAO,CAAC,CAAQ;AAC1B,qBAAqB,mBAAO,CAAC,EAAmB;AAChD;;AAEA,YAAY,mBAAO,CAAC,CAAgB;AACpC;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;AACA;;;;;;;ACfA;AACA,YAAY,mBAAO,CAAC,EAAyB;AAC7C,iBAAiB,mBAAO,CAAC,EAAkB;;AAE3C;AACA;AACA;;;;;;;ACNA,UAAU,mBAAO,CAAC,CAAQ;AAC1B,gBAAgB,mBAAO,CAAC,CAAe;AACvC,mBAAmB,mBAAO,CAAC,EAAmB;AAC9C,eAAe,mBAAO,CAAC,EAAe;;AAEtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AChBA,iBAAiB,mBAAO,CAAC,CAAS;;;;;;;;ACAlC,+CAAa;;AAEb;AACA,mBAAmB,mBAAO,CAAC,GAAkC;AAC7D,CAAC;AACD,mBAAmB,mBAAO,CAAC,GAA+B;AAC1D;;;;;;;;;ACNA;AAAA;AAAA;;;;;;;ACAA,yC;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;;IAEMC,O;;;;;;;;;;;;;;qPAoBJC,K,GAAQ;AACNC,mBAAa;AADP,K,QASRC,e,GAAkB,UAACC,KAAD,EAAW;AAC3B,aAAUA,KAAV,SAAmB,MAAKC,KAAL,CAAWC,MAAX,CAAkBC,cAArC;AACD,K,QAEDC,U,GAAa,UAACJ,KAAD,EAAW;AACtB,YAAKC,KAAL,CAAWG,UAAX,CAAsBC,OAAOL,KAAP,CAAtB;AACD,K,QAEDM,Y,GAAe,UAACC,CAAD,EAAO;AACpB,YAAKC,QAAL,CAAc;AACZV,qBAAaS,EAAEE,MAAF,CAAST;AADV,OAAd;AAGD,K,QAEDU,U,GAAa,UAACH,CAAD,EAAO;AAAA,wBAC2B,MAAKN,KADhC;AAAA,UACVU,QADU,eACVA,QADU;AAAA,UACAC,OADA,eACAA,OADA;AAAA,UACSC,aADT,eACSA,aADT;;AAElB,UAAIF,QAAJ,EAAc;AACZ;AACD;AACD,UACEJ,EAAEO,aAAF,KAEEP,EAAEO,aAAF,CAAgBC,SAAhB,CAA0BC,OAA1B,CAAqCH,aAArC,eAA8D,CAA9D,IACAN,EAAEO,aAAF,CAAgBC,SAAhB,CAA0BC,OAA1B,CAAqCH,aAArC,eAA8D,CAHhE,CADF,EAME;AACA;AACD;AACDD,cAAQ,MAAKK,aAAL,EAAR;AACD,K,QAEDC,E,GAAK,UAACX,CAAD,EAAO;AAAA,UACFT,WADE,GACc,MAAKD,KADnB,CACFC,WADE;;AAEV,UAAIA,gBAAgB,EAApB,EAAwB;AACtB;AACD;AACD,UAAIS,EAAEY,OAAF,KAAcC,yDAAOA,CAAC3B,KAAtB,IAA+Bc,EAAEc,IAAF,KAAW,OAA9C,EAAuD;AACrD,cAAKb,QAAL,CAAc;AACZV,uBAAa;AADD,SAAd;AAGA,cAAKG,KAAL,CAAWW,OAAX,CAAmB,MAAKK,aAAL,EAAnB;AACD;AACF,K;;;;;oCA/Ce;AAAA,mBACmB,KAAKpB,KADxB;AAAA,UACNC,WADM,UACNA,WADM;AAAA,UACOwB,OADP,UACOA,OADP;;AAEd,aAAO,CAACxB,WAAD,IAAgByB,MAAMzB,WAAN,CAAhB,GAAqCwB,OAArC,GAA+CjB,OAAOP,WAAP,CAAtD;AACD;;;6BA8CQ;AAAA;;AAAA,mBAKH,KAAKG,KALF;AAAA,UAELuB,QAFK,UAELA,QAFK;AAAA,UAEKC,eAFL,UAEKA,eAFL;AAAA,UAEsBvB,MAFtB,UAEsBA,MAFtB;AAAA,UAE8BW,aAF9B,UAE8BA,aAF9B;AAAA,UAE6CT,UAF7C,UAE6CA,UAF7C;AAAA,UAGLQ,OAHK,UAGLA,OAHK;AAAA,UAGID,QAHJ,UAGIA,QAHJ;AAAA,UAGce,oBAHd,UAGcA,oBAHd;AAAA,UAGoC3B,eAHpC,UAGoCA,eAHpC;AAAA,UAIL4B,eAJK,UAILA,eAJK;AAAA,UAIYC,QAJZ,UAIYA,QAJZ;AAAA,UAMC9B,WAND,GAMiB,KAAKD,KANtB,CAMCC,WAND;;AAOP,UAAM+B,YAAehB,aAAf,aAAN;AACA,UAAMiB,SAASJ,oBAAf;AACA,UAAIK,eAAe,IAAnB;AACA,UAAIC,UAAU,IAAd;AACA,UAAIC,aAAa,IAAjB;;AAEA,UAAI,CAAC7B,UAAD,IAAe,CAACQ,OAApB,EAA6B;AAC3B,eAAO,IAAP;AACD;;AAED,UAAIR,cAAc0B,MAAlB,EAA0B;AACxB,YAAMI,UAAUT,gBAAgBU,GAAhB,CAAoB,UAACC,GAAD,EAAMC,CAAN;AAAA,iBAClC;AAAC,kBAAD,CAAQ,MAAR;AAAA,cAAe,KAAKA,CAApB,EAAuB,OAAOD,GAA9B;AACG,aAACrC,mBAAmB,OAAKA,eAAzB,EAA0CqC,GAA1C;AADH,WADkC;AAAA,SAApB,CAAhB;;AAMAL,uBACE;AAAC,gBAAD;AAAA;AACE,sBAAUH,QADZ;AAEE,uBAAWD,eAFb;AAGE,wBAAY,KAHd;AAIE,uBAAcE,SAAd,kBAJF;AAKE,6BAAgB,UALlB;AAME,sCAA0B,KAN5B;AAOE,mBAAO,CAACL,YAAYC,gBAAgB,CAAhB,CAAb,EAAiCa,QAAjC,EAPT;AAQE,sBAAU,KAAKlC,UARjB;AASE,+BAAmB;AAAA,qBAAemC,YAAYC,UAA3B;AAAA;AATrB;AAWGN;AAXH,SADF;AAeD;;AAED,UAAItB,OAAJ,EAAa;AACX,YAAID,QAAJ,EAAc;AACZsB,uBAAa,OAAOtB,QAAP,KAAoB,SAApB,GACX;AAAA;AAAA;AACE,oBAAK,QADP;AAEE,uBAAS,KAAKO,EAFhB;AAGE,uBAAS,KAAKA,EAHhB;AAIE,wBAAUU;AAJZ;AAMG1B,mBAAOuC;AANV,WADW,GAUX;AAAA;AAAA;AACE,uBAAS,KAAKvB,EADhB;AAEE,uBAAS,KAAKA;AAFhB;AAIGP;AAJH,WAVF;AAiBD;AACDqB,kBACE;AAAA;AAAA,YAAK,WAAcH,SAAd,kBAAL;AACG3B,iBAAOwC,OADV;AAEE;AACE,sBAAUd,QADZ;AAEE,kBAAK,MAFP;AAGE,mBAAO9B,WAHT;AAIE,sBAAU,KAAKQ,YAJjB;AAKE,qBAAS,KAAKY,EALhB;AAME,oBAAQ,KAAKR;AANf,YAFF;AAUGR,iBAAOyC,IAVV;AAWGV;AAXH,SADF;AAeD;;AAED,aACE;AAAA;AAAA,UAAI,gBAAcJ,SAAlB;AACGE,oBADH;AAEGC;AAFH,OADF;AAMD;;;;EA7JmBY,6CAAKA,CAACC,S;;AAAtBjD,O,CACGkD,S,GAAY;AACjBlB,YAAUmB,kDAASA,CAACC,IADH;AAEjB5C,cAAY2C,kDAASA,CAACE,IAFL;AAGjBrC,WAASmC,kDAASA,CAACE,IAHF;AAIjBvB,wBAAsBqB,kDAASA,CAACE,IAJf;AAKjB3B,WAASyB,kDAASA,CAACG,MALF;AAMjBzB,mBAAiBsB,kDAASA,CAACI,OAAV,CAAkBJ,kDAASA,CAACK,MAA5B,CANA;AAOjB5B,YAAUuB,kDAASA,CAACG,MAPH;AAQjBnD,mBAAiBgD,kDAASA,CAACE,IARV;AASjB/C,UAAQ6C,kDAASA,CAACM,MATD;AAUjBxC,iBAAekC,kDAASA,CAACK,MAVR;AAWjBzB,mBAAiBoB,kDAASA,CAACK,MAXV;AAYjBzC,YAAUoC,kDAASA,CAACO,SAAV,CAAoB,CAACP,kDAASA,CAACC,IAAX,EAAiBD,kDAASA,CAACQ,IAA3B,CAApB;AAZO,C;AADf3D,O,CAgBG4D,Y,GAAe;AACpB/B,mBAAiB,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB;AADG,C;;;AAgJT7B,gEAAf,E;;;;;;;;;;;;;;;;ACpKA;AACA;AACA;;AAEA,IAAM6D,QAAQ,SAARA,KAAQ,CAACxD,KAAD,EAAW;AAAA;;AACvB,MAAM4B,YAAe5B,MAAMY,aAArB,UAAN;AACA,MAAM6C,MAAMC,kDAAUA,CAAC9B,SAAX,EAAyBA,SAAzB,SAAsC5B,MAAM0C,IAA5C,+GACNd,SADM,cACe5B,MAAM2D,MADrB,6FAET3D,MAAMc,SAFG,EAES,CAAC,CAACd,MAAMc,SAFjB,6FAGNc,SAHM,gBAGiB,CAAC5B,MAAM0C,IAHxB,gBAAZ;;AAMA,MAAMkB,cAAc,SAAdA,WAAc,GAAM;AACxB5D,UAAM6D,OAAN,CAAc7D,MAAM0C,IAApB;AACD,GAFD;;AAIA,MAAMoB,iBAAiB,SAAjBA,cAAiB,IAAK;AAC1B9D,UAAM+D,UAAN,CAAiBzD,CAAjB,EAAoBN,MAAM6D,OAA1B,EAAmC7D,MAAM0C,IAAzC;AACD,GAFD;;AAIA,SACE;AAAA;AAAA;AACE,aAAO1C,MAAMgE,SAAN,GAAkBhE,MAAM0C,IAAxB,GAA+B,IADxC;AAEE,iBAAWe,GAFb;AAGE,eAASG,WAHX;AAIE,kBAAYE,cAJd;AAKE,gBAAS;AALX;AAOG9D,UAAMiE,UAAN,CAAiBjE,MAAM0C,IAAvB,EAA6B,MAA7B,EAAqC;AAAA;AAAA;AAAI1C,YAAM0C;AAAV,KAArC;AAPH,GADF;AAWD,CA3BD;;AA6BAc,MAAMX,SAAN,GAAkB;AAChBH,QAAMI,kDAASA,CAACG,MADA;AAEhBU,UAAQb,kDAASA,CAACC,IAFF;AAGhBmB,QAAMpB,kDAASA,CAACC,IAHA;AAIhB9C,UAAQ6C,kDAASA,CAACM,MAJF;AAKhBtC,aAAWgC,kDAASA,CAACK,MALL;AAMhBa,aAAWlB,kDAASA,CAACC,IANL;AAOhBnC,iBAAekC,kDAASA,CAACK,MAPT;AAQhBU,WAASf,kDAASA,CAACE,IARH;AAShBe,cAAYjB,kDAASA,CAACE,IATN;AAUhBiB,cAAYnB,kDAASA,CAACE;AAVN,CAAlB;;AAaeQ,8DAAf,E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASW,IAAT,GAAgB,CACf;;AAED,SAASC,SAAT,CAAmBrE,KAAnB,EAA0B;AACxB,SAAO,OAAOA,KAAP,KAAiB,QAAjB,IACLsE,SAAStE,KAAT,CADK,IAELuE,KAAKC,KAAL,CAAWxE,KAAX,MAAsBA,KAFxB;AAGD;;AAED,SAASyE,iBAAT,CAA2B9B,IAA3B,EAAiCtB,IAAjC,EAAuCqD,OAAvC,EAAgD;AAC9C,SAAOA,OAAP;AACD;;AAED,SAASC,aAAT,CAAuBC,CAAvB,EAA0B/E,KAA1B,EAAiCI,KAAjC,EAAwC;AACtC,MAAIuB,WAAWoD,CAAf;AACA,MAAI,OAAOpD,QAAP,KAAoB,WAAxB,EAAqC;AACnCA,eAAW3B,MAAM2B,QAAjB;AACD;AACD,SAAO+C,KAAKC,KAAL,CAAW,CAACvE,MAAM4E,KAAN,GAAc,CAAf,IAAoBrD,QAA/B,IAA2C,CAAlD;AACD;;IAEKsD,U;;;AAmDJ,sBAAY7E,KAAZ,EAAmB;AAAA;;AAAA,qLACXA,KADW;;AAAA;;AAGjB,QAAM8E,cAAc9E,MAAM+E,QAAN,KAAmBZ,IAAvC;AACA,QAAMa,aAAc,aAAahF,KAAjC;AACA,QAAIgF,cAAc,CAACF,WAAnB,EAAgC;AAC9BG,cAAQC,IAAR,CAAa,yIAAb,EAD8B,CAC2H;AAC1J;;AAED,QAAI7D,UAAUrB,MAAMmF,cAApB;AACA,QAAI,aAAanF,KAAjB,EAAwB;AACtBqB,gBAAUrB,MAAMqB,OAAhB;AACD;;AAED,QAAIE,WAAWvB,MAAMoF,eAArB;AACA,QAAI,cAAcpF,KAAlB,EAAyB;AACvBuB,iBAAWvB,MAAMuB,QAAjB;AACD;;AAEDF,cAAUiD,KAAKe,GAAL,CAAShE,OAAT,EAAkBqD,cAAcnD,QAAd,EAAwB+D,SAAxB,EAAmCtF,KAAnC,CAAlB,CAAV;;AAEA,UAAKJ,KAAL,GAAa;AACXyB,sBADW;AAEXkE,yBAAmBlE,OAFR;AAGXE;AAHW,KAAb;AArBiB;AA0BlB;;;;uCAEkBiE,S,EAAWC,S,EAAW;AACvC;AACA;AAFuC,UAG/B7D,SAH+B,GAGjB,KAAK5B,KAHY,CAG/B4B,SAH+B;;AAIvC,UAAI6D,UAAUpE,OAAV,KAAsB,KAAKzB,KAAL,CAAWyB,OAAjC,IAA4C,KAAKqE,cAArD,EAAqE;AACnE,YAAMC,kBAAkB,KAAKD,cAAL,CAAoBE,aAApB,OAClBhE,SADkB,cACA6D,UAAUpE,OADV,CAAxB;AAGA,YAAIsE,mBAAmBE,SAASC,aAAT,KAA2BH,eAAlD,EAAmE;AACjEA,0BAAgBI,IAAhB;AACD;AACF;AACF;;;kCAsDazF,C,EAAG;AACf,UAAM0F,aAAa1F,EAAEE,MAAF,CAAST,KAA5B;AACA,UAAMkG,WAAWvB,cAAcY,SAAd,EAAyB,KAAK1F,KAA9B,EAAqC,KAAKI,KAA1C,CAAjB;AAFe,UAGPuF,iBAHO,GAGe,KAAK3F,KAHpB,CAGP2F,iBAHO;;AAIf,UAAIxF,cAAJ;AACA,UAAIiG,eAAe,EAAnB,EAAuB;AACrBjG,gBAAQiG,UAAR;AACD,OAFD,MAEO,IAAI1E,MAAMlB,OAAO4F,UAAP,CAAN,CAAJ,EAA+B;AACpCjG,gBAAQwF,iBAAR;AACD,OAFM,MAEA,IAAIS,cAAcC,QAAlB,EAA4B;AACjClG,gBAAQkG,QAAR;AACD,OAFM,MAEA;AACLlG,gBAAQK,OAAO4F,UAAP,CAAR;AACD;AACD,aAAOjG,KAAP;AACD;;;+BAuJUmG,Q,EAAU;AAAA,mBACc,KAAKlG,KADnB;AAAA,UACXmG,QADW,UACXA,QADW;AAAA,UACDlC,UADC,UACDA,UADC;;AAEnB,UAAMmC,aAAanC,WAAWiC,QAAX,EAAqB,MAArB,EAA6B,KAAKG,WAAL,CAAiBF,QAAjB,CAA7B,CAAnB;AACA,UAAMxE,WAAW,CAAC,KAAK2E,OAAL,EAAlB;AACA,aAAOC,4EAAcA,CAACH,UAAf,IAA6BI,0EAAYA,CAACJ,UAAb,EAAyB,EAAEzE,kBAAF,EAAzB,CAA7B,GAAsEyE,UAA7E;AACD;;;+BAEUK,Q,EAAU;AAAA,oBACc,KAAKzG,KADnB;AAAA,UACX0G,QADW,WACXA,QADW;AAAA,UACDzC,UADC,WACDA,UADC;;AAEnB,UAAM0C,aAAa1C,WAAWwC,QAAX,EAAqB,MAArB,EAA6B,KAAKJ,WAAL,CAAiBK,QAAjB,CAA7B,CAAnB;AACA,UAAM/E,WAAW,CAAC,KAAKiF,OAAL,EAAlB;AACA,aAAOL,4EAAcA,CAACI,UAAf,IAA6BH,0EAAYA,CAACG,UAAb,EAAyB,EAAEhF,kBAAF,EAAzB,CAA7B,GAAsEgF,UAA7E;AACD;;;6BAEQ;AAAA,oBACoC,KAAK3G,KADzC;AAAA,UACC4B,SADD,WACCA,SADD;AAAA,UACYd,SADZ,WACYA,SADZ;AAAA,UACuBa,QADvB,WACuBA,QADvB;;AAGP;;AACA,UAAI,KAAK3B,KAAL,CAAW6G,gBAAX,KAAgC,IAAhC,IAAwC,KAAK7G,KAAL,CAAW4E,KAAX,IAAoB,KAAKhF,KAAL,CAAW2B,QAA3E,EAAqF;AACnF,eAAO,IAAP;AACD;;AAED,UAAMvB,QAAQ,KAAKA,KAAnB;AACA,UAAMC,SAASD,MAAMC,MAArB;;AAEA,UAAMgG,WAAWvB,cAAcY,SAAd,EAAyB,KAAK1F,KAA9B,EAAqC,KAAKI,KAA1C,CAAjB;AACA,UAAM8G,YAAY,EAAlB;AACA,UAAIC,WAAW,IAAf;AACA,UAAIC,WAAW,IAAf;AACA,UAAIC,aAAa,IAAjB;AACA,UAAIC,YAAY,IAAhB;AACA,UAAIlF,aAAa,IAAjB;;AAEA,UAAMtB,WAAYV,MAAMmH,eAAN,IAAyBnH,MAAMmH,eAAN,CAAsBzG,QAAjE;AACA,UAAM0G,iBAAiBpH,MAAMqH,aAAN,GAAsB,CAAtB,GAA0B,CAAjD;AApBO,mBAqBuB,KAAKzH,KArB5B;AAAA,UAqBCyB,OArBD,UAqBCA,OArBD;AAAA,UAqBUE,QArBV,UAqBUA,QArBV;;;AAuBP,UAAM2E,WAAW7E,UAAU,CAAV,GAAc,CAAd,GAAkBA,UAAU,CAA5B,GAAgC,CAAjD;AACA,UAAMoF,WAAWpF,UAAU,CAAV,GAAc4E,QAAd,GAAyB5E,UAAU,CAAnC,GAAuC4E,QAAxD;;AAEA,UAAMqB,2BAA2BC,OAAOC,IAAP,CAAYxH,KAAZ,EAAmByH,MAAnB,CAA0B,UAACC,IAAD,EAAOC,GAAP,EAAe;AACxE,YAAKA,IAAIC,MAAJ,CAAW,CAAX,EAAc,CAAd,MAAqB,OAArB,IAAgCD,IAAIC,MAAJ,CAAW,CAAX,EAAc,CAAd,MAAqB,OAArD,IAAgED,QAAQ,MAA7E,EAAsF;AACpFD,eAAKC,GAAL,IAAY3H,MAAM2H,GAAN,CAAZ;AACD;AACD,eAAOD,IAAP;AACD,OALgC,EAK9B,EAL8B,CAAjC;;AAOA,UAAI1H,MAAM6H,MAAV,EAAkB;AAChB,YAAInH,QAAJ,EAAc;AACZ,cAAI,OAAOA,QAAP,KAAoB,SAAxB,EAAmC;AACjCsB,yBACE;AAAA;AAAA;AACE,sBAAK,QADP;AAEE,yBAAS,KAAK8F,UAFhB;AAGE,yBAAS,KAAKA;AAHhB;AAKG7H,qBAAOuC;AALV,aADF;AASD,WAVD,MAUO;AACLR,yBACE;AAAA;AAAA;AACE,yBAAS,KAAK8F,UADhB;AAEE,yBAAS,KAAKA;AAFhB;AAGEpH;AAHF,aADF;AAMD;AACDsB,uBACE;AAAA;AAAA;AACE,qBAAOhC,MAAMgE,SAAN,QAAqB/D,OAAOwC,OAA5B,GAAsC,KAAK7C,KAAL,CAAWyB,OAAjD,SAA4D4E,QAA5D,GAAyE,IADlF;AAEE,yBAAcrE,SAAd;AAFF;AAIGI;AAJH,WADF;AAQD;;AAED,eACE;AAAA;AAAA;AACE,uBAAcJ,SAAd,SAA2BA,SAA3B,gBAA+C5B,MAAMc,SADvD;AAEE,mBAAOd,MAAM+H,KAFf;AAGE,iBAAK,KAAKC;AAHZ,aAIMV,wBAJN;AAME;AAAA;AAAA;AACE,qBAAOtH,MAAMgE,SAAN,GAAkB/D,OAAOgI,SAAzB,GAAqC,IAD9C;AAEE,uBAAS,KAAKP,IAFhB;AAGE,wBAAU,KAAKpB,OAAL,KAAiB,CAAjB,GAAqB,IAHjC;AAIE,0BAAY,KAAK4B,cAJnB;AAKE,0BAAc,KAAK5B,OAAL,KAAiB,EAAjB,GAAyB1E,SAAzB,cAAd,UAA+DA,SAA/D,UALF;AAME,+BAAe,CAAC,KAAK0E,OAAL;AANlB;AAQG,iBAAK6B,UAAL,CAAgBjC,QAAhB;AARH,WANF;AAgBE;AAAA;AAAA;AACE,qBAAOlG,MAAMgE,SAAN,GAAqB,KAAKpE,KAAL,CAAWyB,OAAhC,SAA2C4E,QAA3C,GAAwD,IADjE;AAEE,yBAAcrE,SAAd;AAFF;AAIE;AACE,oBAAK,MADP;AAEE,qBAAO,KAAKhC,KAAL,CAAW2F,iBAFpB;AAGE,yBAAW,KAAK6C,aAHlB;AAIE,uBAAS,KAAKC,WAJhB;AAKE,wBAAU,KAAKA,WALjB;AAME,oBAAK;AANP,cAJF;AAYE;AAAA;AAAA,gBAAM,WAAczG,SAAd,WAAN;AAAA;AAAA,aAZF;AAaGqE;AAbH,WAhBF;AA+BE;AAAA;AAAA;AACE,qBAAOjG,MAAMgE,SAAN,GAAkB/D,OAAOqI,SAAzB,GAAqC,IAD9C;AAEE,uBAAS,KAAKC,IAFhB;AAGE,wBAAU,KAAKjC,OAAL,KAAiB,CAAjB,GAAqB,IAHjC;AAIE,0BAAY,KAAKkC,cAJnB;AAKE,0BAAc,KAAK5B,OAAL,KAAiB,EAAjB,GAAyBhF,SAAzB,cAAd,UAA+DA,SAA/D,UALF;AAME,+BAAe,CAAC,KAAKgF,OAAL;AANlB;AAQG,iBAAK6B,UAAL,CAAgBhC,QAAhB;AARH,WA/BF;AAyCGzE;AAzCH,SADF;AA6CD;;AAED,UAAIiE,YAAY,IAAImB,iBAAiB,CAArC,EAAwC;AACtC,YAAMsB,aAAa;AACjBzI,wBADiB;AAEjBW,yBAAegB,SAFE;AAGjBiC,mBAAS,KAAKxD,YAHG;AAIjB0D,sBAAY,KAAK4E,UAJA;AAKjB3E,qBAAWhE,MAAMgE,SALA;AAMjBC,sBAAYjE,MAAMiE;AAND,SAAnB;AAQA,YAAI,CAACgC,QAAL,EAAe;AACba,oBAAU8B,IAAV,CACE,4DAAC,uDAAD,4EACMF,UADN;AAEE,iBAAI,SAFN;AAGE,kBAAMzC,QAHR;AAIE,uBAAcrE,SAAd;AAJF,aADF;AAQD;AACD,aAAK,IAAIQ,IAAI,CAAb,EAAgBA,KAAK6D,QAArB,EAA+B7D,GAA/B,EAAoC;AAClC,cAAMuB,SAAS,KAAK/D,KAAL,CAAWyB,OAAX,KAAuBe,CAAtC;AACA0E,oBAAU8B,IAAV,CACE,4DAAC,uDAAD,4EACMF,UADN;AAEE,iBAAKtG,CAFP;AAGE,kBAAMA,CAHR;AAIE,oBAAQuB;AAJV,aADF;AAQD;AACF,OA9BD,MA8BO;AACL,YAAMkF,gBAAgB7I,MAAMqH,aAAN,GAAsBpH,OAAO6I,MAA7B,GAAsC7I,OAAO8I,MAAnE;AACA,YAAMC,gBAAgBhJ,MAAMqH,aAAN,GAAsBpH,OAAOgJ,MAA7B,GAAsChJ,OAAOiJ,MAAnE;AACA,YAAIlJ,MAAMmJ,mBAAV,EAA+B;AAC7B,cAAIC,sBAAyBxH,SAAzB,eAAJ;AACA,cAAI5B,MAAMqJ,YAAV,EAAwB;AACtBD,yCAA2BxH,SAA3B;AACD;AACDmF,qBACE;AAAA;AAAA;AACE,qBAAO/G,MAAMgE,SAAN,GAAkB6E,aAAlB,GAAkC,IAD3C;AAEE,mBAAI,MAFN;AAGE,uBAAS,KAAK9B,QAHhB;AAIE,wBAAS,GAJX;AAKE,0BAAY,KAAKuC,kBALnB;AAME,yBAAWF;AANb;AAQGpJ,kBAAMiE,UAAN,CACC,KAAKsF,eAAL,EADD,EAEC,WAFD,EAGC,KAAKlD,WAAL,CAAiBrG,MAAMqJ,YAAvB,CAHD;AARH,WADF;AAgBA,cAAIG,sBAAyB5H,SAAzB,eAAJ;AACA,cAAI5B,MAAMyJ,YAAV,EAAwB;AACtBD,yCAA2B5H,SAA3B;AACD;AACDoF,qBACE;AAAA;AAAA;AACE,qBAAOhH,MAAMgE,SAAN,GAAkBgF,aAAlB,GAAkC,IAD3C;AAEE,mBAAI,MAFN;AAGE,wBAAS,GAHX;AAIE,uBAAS,KAAKhC,QAJhB;AAKE,0BAAY,KAAK0C,kBALnB;AAME,yBAAWF;AANb;AAQGxJ,kBAAMiE,UAAN,CACC,KAAK0F,eAAL,EADD,EAEC,WAFD,EAGC,KAAKtD,WAAL,CAAiBrG,MAAMyJ,YAAvB,CAHD;AARH,WADF;AAgBD;AACDvC,oBACE,4DAAC,uDAAD;AACE,kBAAQlH,MAAMC,MADhB;AAEE,oBAFF;AAGE,yBAAe2B,SAHjB;AAIE,mBAAS,KAAKvB,YAJhB;AAKE,sBAAY,KAAKsI,UALnB;AAME,eAAK1C,QANP;AAOE,gBAAMA,QAPR;AAQE,kBAAQ,KARV;AASE,qBAAWjG,MAAMgE,SATnB;AAUE,sBAAYhE,MAAMiE;AAVpB,UADF;AAcAgD,qBACE,4DAAC,uDAAD;AACE,kBAAQjH,MAAMC,MADhB;AAEE,yBAAe2B,SAFjB;AAGE,mBAAS,KAAKvB,YAHhB;AAIE,sBAAY,KAAKsI,UAJnB;AAKE,eAAK,CALP;AAME,gBAAM,CANR;AAOE,kBAAQ,KAPV;AAQE,qBAAW3I,MAAMgE,SARnB;AASE,sBAAYhE,MAAMiE;AATpB,UADF;;AAcA,YAAI2F,OAAOtF,KAAKuF,GAAL,CAAS,CAAT,EAAYxI,UAAU+F,cAAtB,CAAX;AACA,YAAI0C,QAAQxF,KAAKe,GAAL,CAAShE,UAAU+F,cAAnB,EAAmCnB,QAAnC,CAAZ;;AAEA,YAAI5E,UAAU,CAAV,IAAe+F,cAAnB,EAAmC;AACjC0C,kBAAQ,IAAI1C,iBAAiB,CAA7B;AACD;;AAED,YAAInB,WAAW5E,OAAX,IAAsB+F,cAA1B,EAA0C;AACxCwC,iBAAO3D,WAAWmB,iBAAiB,CAAnC;AACD;;AAED,aAAK,IAAIhF,KAAIwH,IAAb,EAAmBxH,MAAK0H,KAAxB,EAA+B1H,IAA/B,EAAoC;AAClC,cAAMuB,UAAStC,YAAYe,EAA3B;AACA0E,oBAAU8B,IAAV,CACE,4DAAC,uDAAD;AACE,oBAAQ5I,MAAMC,MADhB;AAEE,2BAAe2B,SAFjB;AAGE,qBAAS,KAAKvB,YAHhB;AAIE,wBAAY,KAAKsI,UAJnB;AAKE,iBAAKvG,EALP;AAME,kBAAMA,EANR;AAOE,oBAAQuB,OAPV;AAQE,uBAAW3D,MAAMgE,SARnB;AASE,wBAAYhE,MAAMiE;AATpB,YADF;AAaD;;AAED,YAAI5C,UAAU,CAAV,IAAe+F,iBAAiB,CAAhC,IAAqC/F,YAAY,IAAI,CAAzD,EAA4D;AAC1DyF,oBAAU,CAAV,IAAenE,6CAAKA,CAAC6D,YAAN,CAAmBM,UAAU,CAAV,CAAnB,EAAiC;AAC9ChG,uBAAcc,SAAd;AAD8C,WAAjC,CAAf;AAGAkF,oBAAUiD,OAAV,CAAkBhD,QAAlB;AACD;AACD,YAAId,WAAW5E,OAAX,IAAsB+F,iBAAiB,CAAvC,IAA4C/F,YAAY4E,WAAW,CAAvE,EAA0E;AACxEa,oBAAUA,UAAUkD,MAAV,GAAmB,CAA7B,IAAkCrH,6CAAKA,CAAC6D,YAAN,CAAmBM,UAAUA,UAAUkD,MAAV,GAAmB,CAA7B,CAAnB,EAAoD;AACpFlJ,uBAAcc,SAAd;AADoF,WAApD,CAAlC;AAGAkF,oBAAU8B,IAAV,CAAe5B,QAAf;AACD;;AAED,YAAI4C,SAAS,CAAb,EAAgB;AACd9C,oBAAUiD,OAAV,CAAkB9C,UAAlB;AACD;AACD,YAAI6C,UAAU7D,QAAd,EAAwB;AACtBa,oBAAU8B,IAAV,CAAe1B,SAAf;AACD;AACF;;AAED,UAAI+C,YAAY,IAAhB;;AAEA,UAAIjK,MAAMkK,SAAV,EAAqB;AACnBD,oBACE;AAAA;AAAA,YAAI,WAAcrI,SAAd,gBAAJ;AACG5B,gBAAMkK,SAAN,CACClK,MAAM4E,KADP,EAEC,CACE5E,MAAM4E,KAAN,KAAgB,CAAhB,GAAoB,CAApB,GAAwB,CAACvD,UAAU,CAAX,IAAgBE,QAAhB,GAA2B,CADrD,EAEEF,UAAUE,QAAV,GAAqBvB,MAAM4E,KAA3B,GAAmC5E,MAAM4E,KAAzC,GAAiDvD,UAAUE,QAF7D,CAFD;AADH,SADF;AAWD;AACD,UAAM4I,eAAe,CAAC,KAAK7D,OAAL,EAAD,IAAmB,CAACL,QAAzC;AACA,UAAMmE,eAAe,CAAC,KAAKxD,OAAL,EAAD,IAAmB,CAACX,QAAzC;AACA,aACE;AAAA;AAAA;AACE,qBAAWvC,kDAAUA,CAAC9B,SAAX,EAAsBd,SAAtB,mFACLc,SADK,gBACkBD,QADlB,EADb;AAIE,iBAAO3B,MAAM+H,KAJf;AAKE,wBAAa,cALf;AAME,eAAK,KAAKC;AANZ,WAOMV,wBAPN;AASG2C,iBATH;AAUE;AAAA;AAAA;AACE,mBAAOjK,MAAMgE,SAAN,GAAkB/D,OAAOgI,SAAzB,GAAqC,IAD9C;AAEE,qBAAS,KAAKP,IAFhB;AAGE,sBAAUyC,eAAe,IAAf,GAAsB,CAHlC;AAIE,wBAAY,KAAKjC,cAJnB;AAKE,wBAAc,CAACiC,YAAD,GAAgB,EAAhB,GAAwBvI,SAAxB,cAAd,UAA8DA,SAA9D,UALF;AAME,6BAAeuI;AANjB;AAQG,eAAKhC,UAAL,CAAgBjC,QAAhB;AARH,SAVF;AAoBGY,iBApBH;AAqBE;AAAA;AAAA;AACE,mBAAO9G,MAAMgE,SAAN,GAAkB/D,OAAOqI,SAAzB,GAAqC,IAD9C;AAEE,qBAAS,KAAKC,IAFhB;AAGE,sBAAU6B,eAAe,IAAf,GAAsB,CAHlC;AAIE,wBAAY,KAAK5B,cAJnB;AAKE,wBAAc,CAAC4B,YAAD,GAAgB,EAAhB,GAAwBxI,SAAxB,cAAd,UAA8DA,SAA9D,UALF;AAME,6BAAewI;AANjB;AAQG,eAAK3B,UAAL,CAAgBhC,QAAhB;AARH,SArBF;AA+BE,oEAAC,0DAAD;AACE,oBAAU9E,QADZ;AAEE,kBAAQ3B,MAAMC,MAFhB;AAGE,yBAAe2B,SAHjB;AAIE,gCAAsB5B,MAAMyB,oBAJ9B;AAKE,2BAAiBzB,MAAM0B,eALzB;AAME,sBAAY,KAAK1B,KAAL,CAAWqK,eAAX,GAA6B,KAAKC,cAAlC,GAAmD,IANjE;AAOE,mBAAS,KAAK1K,KAAL,CAAWyB,OAPtB;AAQE,oBAAU,KAAKzB,KAAL,CAAW2B,QARvB;AASE,2BAAiB,KAAKvB,KAAL,CAAWwB,eAT9B;AAUE,mBAAS,KAAK+I,wBAAL,KAAkC,KAAKlK,YAAvC,GAAsD,IAVjE;AAWE,oBAAUK;AAXZ;AA/BF,OADF;AA+CD;;;6CA9iB+BV,K,EAAOyF,S,EAAW;AAChD,UAAM+E,WAAW,EAAjB;;AAEA,UAAI,aAAaxK,KAAjB,EAAwB;AACtBwK,iBAASnJ,OAAT,GAAmBrB,MAAMqB,OAAzB;;AAEA,YAAIrB,MAAMqB,OAAN,KAAkBoE,UAAUpE,OAAhC,EAAyC;AACvCmJ,mBAASjF,iBAAT,GAA6BiF,SAASnJ,OAAtC;AACD;AACF;;AAED,UAAI,cAAcrB,KAAd,IAAuBA,MAAMuB,QAAN,KAAmBkE,UAAUlE,QAAxD,EAAkE;AAChE,YAAIF,UAAUoE,UAAUpE,OAAxB;AACA,YAAMoJ,aAAa/F,cAAc1E,MAAMuB,QAApB,EAA8BkE,SAA9B,EAAyCzF,KAAzC,CAAnB;AACAqB,kBAAUA,UAAUoJ,UAAV,GAAuBA,UAAvB,GAAoCpJ,OAA9C;;AAEA,YAAI,EAAE,aAAarB,KAAf,CAAJ,EAA2B;AACzBwK,mBAASnJ,OAAT,GAAmBA,OAAnB;AACAmJ,mBAASjF,iBAAT,GAA6BlE,OAA7B;AACD;AACDmJ,iBAASjJ,QAAT,GAAoBvB,MAAMuB,QAA1B;AACD;;AAED,aAAOiJ,QAAP;AACD;;AAaD;;;;;;;;;EAlIuB7H,6CAAKA,CAACC,S;;AAAzBiC,U,CACGhC,S,GAAY;AACjBlB,YAAUmB,kDAASA,CAACC,IADH;AAEjBnB,aAAWkB,kDAASA,CAACK,MAFJ;AAGjBrC,aAAWgC,kDAASA,CAACK,MAHJ;AAIjB9B,WAASyB,kDAASA,CAACG,MAJF;AAKjBkC,kBAAgBrC,kDAASA,CAACG,MALT;AAMjB2B,SAAO9B,kDAASA,CAACG,MANA;AAOjB1B,YAAUuB,kDAASA,CAACG,MAPH;AAQjBmC,mBAAiBtC,kDAASA,CAACG,MARV;AASjB8B,YAAUjC,kDAASA,CAACE,IATH;AAUjB6D,oBAAkB/D,kDAASA,CAACC,IAVX;AAWjBsH,mBAAiBvH,kDAASA,CAACC,IAXV;AAYjBsE,iBAAevE,kDAASA,CAACC,IAZR;AAajB2H,oBAAkB5H,kDAASA,CAACE,IAbX;AAcjBvB,wBAAsBqB,kDAASA,CAACE,IAdf;AAejBmG,uBAAqBrG,kDAASA,CAACC,IAfd;AAgBjBoE,mBAAiBrE,kDAASA,CAACO,SAAV,CAAoB,CAACP,kDAASA,CAACC,IAAX,EAAiBD,kDAASA,CAACM,MAA3B,CAApB,CAhBA;AAiBjBY,aAAWlB,kDAASA,CAACC,IAjBJ;AAkBjBvB,mBAAiBsB,kDAASA,CAACI,OAAV,CAAkBJ,kDAASA,CAACK,MAA5B,CAlBA;AAmBjB+G,aAAWpH,kDAASA,CAACE,IAnBJ;AAoBjB/C,UAAQ6C,kDAASA,CAACM,MApBD;AAqBjB2E,SAAOjF,kDAASA,CAACM,MArBA;AAsBjBa,cAAYnB,kDAASA,CAACE,IAtBL;AAuBjBmD,YAAUrD,kDAASA,CAACO,SAAV,CAAoB,CAACP,kDAASA,CAACE,IAAX,EAAiBF,kDAASA,CAACQ,IAA3B,CAApB,CAvBO;AAwBjBoD,YAAU5D,kDAASA,CAACO,SAAV,CAAoB,CAACP,kDAASA,CAACE,IAAX,EAAiBF,kDAASA,CAACQ,IAA3B,CAApB,CAxBO;AAyBjB+F,gBAAcvG,kDAASA,CAACO,SAAV,CAAoB,CAACP,kDAASA,CAACE,IAAX,EAAiBF,kDAASA,CAACQ,IAA3B,CAApB,CAzBG;AA0BjBmG,gBAAc3G,kDAASA,CAACO,SAAV,CAAoB,CAACP,kDAASA,CAACE,IAAX,EAAiBF,kDAASA,CAACQ,IAA3B,CAApB;AA1BG,C;AADfuB,U,CA8BGtB,Y,GAAe;AACpB4B,kBAAgB,CADI;AAEpBP,SAAO,CAFa;AAGpBQ,mBAAiB,EAHG;AAIpBL,YAAUZ,IAJU;AAKpBrD,aAAW,EALS;AAMpBY,mBAAiB,WANG;AAOpBE,aAAW,eAPS;AAQpBH,wBAAsB,IARF;AASpBoF,oBAAkB,KATE;AAUpBsC,uBAAqB,IAVD;AAWpBhC,mBAAiB,KAXG;AAYpBkD,mBAAiB,KAZG;AAapBhD,iBAAe,KAbK;AAcpBrD,aAAW,IAdS;AAepB0G,oBAAkBvG,IAfE;AAgBpBlE,UAAQ0K,+DAhBY;AAiBpB5C,SAAO,EAjBa;AAkBpB9D,cAAYO;AAlBQ,C;;;;;OAyFtB+E,e,GAAkB,YAAM;AACtB,WAAOjF,KAAKuF,GAAL,CAAS,CAAT,EAAY,OAAKjK,KAAL,CAAWyB,OAAX,IAAsB,OAAKrB,KAAL,CAAWqH,aAAX,GAA2B,CAA3B,GAA+B,CAArD,CAAZ,CAAP;AACD,G;;OAEDsC,e,GAAkB,YAAM;AACtB,WAAOrF,KAAKe,GAAL,CACLX,cAAcY,SAAd,EAAyB,OAAK1F,KAA9B,EAAqC,OAAKI,KAA1C,CADK,EAEL,OAAKJ,KAAL,CAAWyB,OAAX,IAAsB,OAAKrB,KAAL,CAAWqH,aAAX,GAA2B,CAA3B,GAA+B,CAArD,CAFK,CAAP;AAID,G;;OAODhB,W,GAAc,UAACuE,IAAD,EAAU;AAAA,QACdhJ,SADc,GACA,OAAK5B,KADL,CACd4B,SADc;;AAEtB,QAAIiJ,WAAWD,QACV,mEAAG,WAAchJ,SAAd,eAAH,GADL;AAEA,QAAI,OAAOgJ,IAAP,KAAgB,UAApB,EAAgC;AAC9BC,iBAAWlI,6CAAKA,CAACmI,aAAN,CAAoBF,IAApB,4EAA+B,OAAK5K,KAApC,EAAX;AACD;AACD,WAAO6K,QAAP;AACD,G;;OAmBD7C,kB,GAAqB,UAAC1E,IAAD,EAAU;AAC7B,WAAKoC,cAAL,GAAsBpC,IAAtB;AACD,G;;OAEDyH,O,GAAU,UAACrI,IAAD,EAAU;AAClB,WAAO0B,UAAU1B,IAAV,KAAmBA,SAAS,OAAK9C,KAAL,CAAWyB,OAA9C;AACD,G;;OAEDkJ,wB,GAA2B,YAAM;AAAA,kBACc,OAAKvK,KADnB;AAAA,QACvBmH,eADuB,WACvBA,eADuB;AAAA,QACN5F,QADM,WACNA,QADM;AAAA,QACIqD,KADJ,WACIA,KADJ;;AAE/B,QAAIA,SAASrD,QAAb,EAAuB;AACrB,aAAO,KAAP;AACD;AACD,WAAO4F,eAAP;AACD,G;;OAEDiB,a,GAAgB,UAAC9H,CAAD,EAAO;AACrB,QAAIA,EAAEY,OAAF,KAAcC,0DAAOA,CAAC1B,QAAtB,IAAkCa,EAAEY,OAAF,KAAcC,0DAAOA,CAACzB,UAA5D,EAAwE;AACtEY,QAAE0K,cAAF;AACD;AACF,G;;OAED3C,W,GAAc,UAAC/H,CAAD,EAAO;AACnB,QAAMP,QAAQ,OAAKiB,aAAL,CAAmBV,CAAnB,CAAd;AADmB,QAEXiF,iBAFW,GAEW,OAAK3F,KAFhB,CAEX2F,iBAFW;;AAGnB,QAAIxF,UAAUwF,iBAAd,EAAiC;AAC/B,aAAKhF,QAAL,CAAc;AACZgF,2BAAmBxF;AADP,OAAd;AAGD;AACD,QAAIO,EAAEY,OAAF,KAAcC,0DAAOA,CAAC3B,KAA1B,EAAiC;AAC/B,aAAKa,YAAL,CAAkBN,KAAlB;AACD,KAFD,MAEO,IAAIO,EAAEY,OAAF,KAAcC,0DAAOA,CAAC1B,QAA1B,EAAoC;AACzC,aAAKY,YAAL,CAAkBN,QAAQ,CAA1B;AACD,KAFM,MAEA,IAAIO,EAAEY,OAAF,KAAcC,0DAAOA,CAACzB,UAA1B,EAAsC;AAC3C,aAAKW,YAAL,CAAkBN,QAAQ,CAA1B;AACD;AACF,G;;OAEDuK,c,GAAiB,UAACW,IAAD,EAAU;AACzB,QAAI5J,UAAU,OAAKzB,KAAL,CAAWyB,OAAzB;AACA,QAAMoJ,aAAa/F,cAAcuG,IAAd,EAAoB,OAAKrL,KAAzB,EAAgC,OAAKI,KAArC,CAAnB;AACAqB,cAAUA,UAAUoJ,UAAV,GAAuBA,UAAvB,GAAoCpJ,OAA9C;AACA;AACA;AACA,QAAIoJ,eAAe,CAAnB,EAAsB;AACpBpJ,gBAAU,OAAKzB,KAAL,CAAWyB,OAArB;AACD;;AAED,QAAI,OAAO4J,IAAP,KAAgB,QAApB,EAA8B;AAC5B,UAAI,EAAE,cAAc,OAAKjL,KAArB,CAAJ,EAAiC;AAC/B,eAAKO,QAAL,CAAc;AACZgB,oBAAU0J;AADE,SAAd;AAGD;AACD,UAAI,EAAE,aAAa,OAAKjL,KAApB,CAAJ,EAAgC;AAC9B,eAAKO,QAAL,CAAc;AACZc,0BADY;AAEZkE,6BAAmBlE;AAFP,SAAd;AAID;AACF;AACD,WAAKrB,KAAL,CAAW0K,gBAAX,CAA4BrJ,OAA5B,EAAqC4J,IAArC;AACD,G;;OAED5K,Y,GAAe,UAACsE,CAAD,EAAO;AAAA,QACZhD,QADY,GACC,OAAK3B,KADN,CACZ2B,QADY;;;AAGpB,QAAIe,OAAOiC,CAAX;AACA,QAAI,OAAKoG,OAAL,CAAarI,IAAb,KAAsB,CAACf,QAA3B,EAAqC;AACnC,UAAMuJ,cAAcxG,cAAcY,SAAd,EAAyB,OAAK1F,KAA9B,EAAqC,OAAKI,KAA1C,CAApB;AACA,UAAI0C,OAAOwI,WAAX,EAAwB;AACtBxI,eAAOwI,WAAP;AACD,OAFD,MAEO,IAAIxI,OAAO,CAAX,EAAc;AACnBA,eAAO,CAAP;AACD;;AAED,UAAI,EAAE,aAAa,OAAK1C,KAApB,CAAJ,EAAgC;AAC9B,eAAKO,QAAL,CAAc;AACZc,mBAASqB,IADG;AAEZ6C,6BAAmB7C;AAFP,SAAd;AAID;;AAED,UAAMnB,WAAW,OAAK3B,KAAL,CAAW2B,QAA5B;AACA,aAAKvB,KAAL,CAAW+E,QAAX,CAAoBrC,IAApB,EAA0BnB,QAA1B;;AAEA,aAAOmB,IAAP;AACD;;AAED,WAAO,OAAK9C,KAAL,CAAWyB,OAAlB;AACD,G;;OAEDqG,I,GAAO,YAAM;AACX,QAAI,OAAKpB,OAAL,EAAJ,EAAoB;AAClB,aAAKjG,YAAL,CAAkB,OAAKT,KAAL,CAAWyB,OAAX,GAAqB,CAAvC;AACD;AACF,G;;OAEDkH,I,GAAO,YAAM;AACX,QAAI,OAAK3B,OAAL,EAAJ,EAAoB;AAClB,aAAKvG,YAAL,CAAkB,OAAKT,KAAL,CAAWyB,OAAX,GAAqB,CAAvC;AACD;AACF,G;;OAED0F,Q,GAAW,YAAM;AACf,WAAK1G,YAAL,CAAkB,OAAKkJ,eAAL,EAAlB;AACD,G;;OAEDvC,Q,GAAW,YAAM;AACf,WAAK3G,YAAL,CAAkB,OAAKsJ,eAAL,EAAlB;AACD,G;;OAEDrD,O,GAAU,YAAM;AACd,WAAO,OAAK1G,KAAL,CAAWyB,OAAX,GAAqB,CAA5B;AACD,G;;OAEDuF,O,GAAU,YAAM;AACd,WAAO,OAAKhH,KAAL,CAAWyB,OAAX,GAAqBqD,cAAcY,SAAd,EAAyB,OAAK1F,KAA9B,EAAqC,OAAKI,KAA1C,CAA5B;AACD,G;;OAED2I,U,GAAa,UAACwC,KAAD,EAAQC,QAAR,EAAoC;AAAA,sCAAfC,UAAe;AAAfA,gBAAe;AAAA;;AAC/C,QAAIF,MAAMxD,GAAN,KAAc,OAAd,IAAyBwD,MAAMG,QAAN,KAAmB,EAAhD,EAAoD;AAClDF,gCAAYC,UAAZ;AACD;AACF,G;;OAEDnD,c,GAAiB,aAAK;AACpB,WAAKS,UAAL,CAAgBrI,CAAhB,EAAmB,OAAKoH,IAAxB;AACD,G;;OAEDc,c,GAAiB,aAAK;AACpB,WAAKG,UAAL,CAAgBrI,CAAhB,EAAmB,OAAKiI,IAAxB;AACD,G;;OAEDe,kB,GAAqB,aAAK;AACxB,WAAKX,UAAL,CAAgBrI,CAAhB,EAAmB,OAAKyG,QAAxB;AACD,G;;OAED2C,kB,GAAqB,aAAK;AACxB,WAAKf,UAAL,CAAgBrI,CAAhB,EAAmB,OAAK0G,QAAxB;AACD,G;;OAEDc,U,GAAa,aAAK;AAChB,QAAIxH,EAAEY,OAAF,KAAcC,0DAAOA,CAAC3B,KAAtB,IAA+Bc,EAAEc,IAAF,KAAW,OAA9C,EAAuD;AACrD,aAAKf,YAAL,CAAkB,OAAKT,KAAL,CAAW2F,iBAA7B;AACD;AACF,G;;;AAyVHgG,iGAAQA,CAAC1G,UAAT;;AAEeA,mEAAf,E;;;;;;;AC9qBe;AACb;AACA3E,kBAAgB,KAFH;AAGbuC,WAAS,IAHI;AAIbD,mBAAiB,IAJJ;AAKbE,QAAM,GALO;;AAOb;AACAuF,aAAW,KARE;AASbK,aAAW,KATE;AAUbS,UAAQ,QAVK;AAWbG,UAAQ,QAXK;AAYbJ,UAAQ,QAZK;AAabG,UAAQ;AAbK,CAAf,E;;;;;;ACAA,kBAAkB,YAAY,mBAAO,CAAC,EAAkC,sB;;;;;;ACAxE,kBAAkB,YAAY,mBAAO,CAAC,EAAkC,sB;;;;;;ACAxE,kBAAkB,YAAY,mBAAO,CAAC,EAA4C,sB;;;;;;ACAlF,kBAAkB,YAAY,mBAAO,CAAC,EAA2B,sB;;;;;;ACAjE,kBAAkB,YAAY,mBAAO,CAAC,EAAoC,sB;;;;;;;ACA7D;;AAEb;;AAEA,cAAc,mBAAO,CAAC,EAA0B;;AAEhD;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA,iBAAiB,sBAAsB;AACvC;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,E;;;;;;ACtBA,mBAAO,CAAC,EAAiC;AACzC,iBAAiB,mBAAO,CAAC,CAAqB;;;;;;;ACD9C,mBAAO,CAAC,EAAiC;AACzC,cAAc,mBAAO,CAAC,CAAqB;AAC3C;AACA;AACA;;;;;;;ACJA,mBAAO,CAAC,EAA0C;AAClD,cAAc,mBAAO,CAAC,CAAqB;AAC3C;AACA;AACA;;;;;;;ACJA,mBAAO,CAAC,EAA2C;AACnD,iBAAiB,mBAAO,CAAC,CAAqB;;;;;;;ACD9C,mBAAO,CAAC,EAA0B;AAClC,mBAAO,CAAC,EAAoC;AAC5C,mBAAO,CAAC,EAAyC;AACjD,mBAAO,CAAC,EAAqC;AAC7C,iBAAiB,mBAAO,CAAC,CAAqB;;;;;;;ACJ9C,mBAAO,CAAC,EAAmC;AAC3C,mBAAO,CAAC,EAAgC;AACxC,iBAAiB,mBAAO,CAAC,EAAwB;;;;;;;ACFjD;AACA;AACA;AACA;;;;;;;ACHA,8BAA8B;;;;;;;ACA9B;AACA;AACA,gBAAgB,mBAAO,CAAC,CAAe;AACvC,eAAe,mBAAO,CAAC,EAAc;AACrC,sBAAsB,mBAAO,CAAC,EAAsB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,YAAY,eAAe;AAChC;AACA,KAAK;AACL;AACA;;;;;;;ACtBA;AACA,cAAc,mBAAO,CAAC,EAAgB;AACtC,WAAW,mBAAO,CAAC,EAAgB;AACnC,UAAU,mBAAO,CAAC,EAAe;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;ACdA,eAAe,mBAAO,CAAC,CAAW;AAClC;;;;;;;ACDA;AACA,UAAU,mBAAO,CAAC,EAAQ;AAC1B;AACA;AACA;;;;;;;;ACJa;AACb,aAAa,mBAAO,CAAC,EAAkB;AACvC,iBAAiB,mBAAO,CAAC,EAAkB;AAC3C,qBAAqB,mBAAO,CAAC,EAAsB;AACnD;;AAEA;AACA,mBAAO,CAAC,CAAS,qBAAqB,mBAAO,CAAC,CAAQ,4BAA4B,aAAa,EAAE;;AAEjG;AACA,qDAAqD,4BAA4B;AACjF;AACA;;;;;;;ACZA;AACA,UAAU;AACV;;;;;;;ACFA,WAAW,mBAAO,CAAC,EAAQ;AAC3B,eAAe,mBAAO,CAAC,CAAc;AACrC,UAAU,mBAAO,CAAC,CAAQ;AAC1B,cAAc,mBAAO,CAAC,CAAc;AACpC;AACA;AACA;AACA;AACA,cAAc,mBAAO,CAAC,EAAU;AAChC,iDAAiD;AACjD,CAAC;AACD;AACA,qBAAqB;AACrB;AACA,SAAS;AACT,GAAG,EAAE;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACpDa;AACb;AACA,kBAAkB,mBAAO,CAAC,CAAgB;AAC1C,cAAc,mBAAO,CAAC,EAAgB;AACtC,WAAW,mBAAO,CAAC,EAAgB;AACnC,UAAU,mBAAO,CAAC,EAAe;AACjC,eAAe,mBAAO,CAAC,EAAc;AACrC,cAAc,mBAAO,CAAC,EAAY;AAClC;;AAEA;AACA,6BAA6B,mBAAO,CAAC,EAAU;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,UAAU,EAAE;AAChD,mBAAmB,sCAAsC;AACzD,CAAC,qCAAqC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,CAAC;;;;;;;ACrCD,SAAS,mBAAO,CAAC,CAAc;AAC/B,eAAe,mBAAO,CAAC,EAAc;AACrC,cAAc,mBAAO,CAAC,EAAgB;;AAEtC,iBAAiB,mBAAO,CAAC,CAAgB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACZA;AACA,gBAAgB,mBAAO,CAAC,CAAe;AACvC,WAAW,mBAAO,CAAC,EAAgB;AACnC,iBAAiB;;AAEjB;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;;;;;;AClBA;AACA,UAAU,mBAAO,CAAC,CAAQ;AAC1B,eAAe,mBAAO,CAAC,EAAc;AACrC,eAAe,mBAAO,CAAC,EAAe;AACtC;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;ACZA;AACA;AACA,eAAe,mBAAO,CAAC,CAAc;AACrC,eAAe,mBAAO,CAAC,EAAc;AACrC;AACA;AACA;AACA;AACA;AACA,kDAAkD;AAClD;AACA;AACA,cAAc,mBAAO,CAAC,EAAQ,iBAAiB,mBAAO,CAAC,EAAgB;AACvE;AACA;AACA,OAAO,YAAY,cAAc;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,GAAG;AACR;AACA;;;;;;;ACxBA,gBAAgB,mBAAO,CAAC,EAAe;AACvC,cAAc,mBAAO,CAAC,EAAY;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AChBA,gBAAgB,mBAAO,CAAC,EAAe;AACvC;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AACA,gBAAgB,mBAAO,CAAC,EAAe;AACvC;AACA;AACA,2DAA2D;AAC3D;;;;;;;;ACLa;AACb,uBAAuB,mBAAO,CAAC,EAAuB;AACtD,WAAW,mBAAO,CAAC,EAAc;AACjC,gBAAgB,mBAAO,CAAC,EAAc;AACtC,gBAAgB,mBAAO,CAAC,CAAe;;AAEvC;AACA;AACA;AACA;AACA,iBAAiB,mBAAO,CAAC,EAAgB;AACzC,gCAAgC;AAChC,cAAc;AACd,iBAAiB;AACjB;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;;;;;;;ACjCA;AACA,cAAc,mBAAO,CAAC,CAAW;;AAEjC,0CAA0C,SAAS,mBAAO,CAAC,EAAkB,GAAG;;;;;;;ACHhF,cAAc,mBAAO,CAAC,CAAW;AACjC;AACA,8BAA8B,SAAS,mBAAO,CAAC,EAAkB,GAAG;;;;;;;ACFpE,cAAc,mBAAO,CAAC,CAAW;AACjC;AACA,iCAAiC,mBAAO,CAAC,CAAgB,cAAc,iBAAiB,mBAAO,CAAC,CAAc,KAAK;;;;;;;ACFnH;AACA,cAAc,mBAAO,CAAC,CAAW;AACjC,8BAA8B,iBAAiB,mBAAO,CAAC,EAAc,OAAO;;;;;;;;;;;;;;ACF/D;AACb,UAAU,mBAAO,CAAC,EAAc;;AAEhC;AACA,mBAAO,CAAC,EAAgB;AACxB,6BAA6B;AAC7B,cAAc;AACd;AACA,CAAC;AACD;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA,UAAU;AACV,CAAC;;;;;;;;AChBY;AACb;AACA,aAAa,mBAAO,CAAC,CAAW;AAChC,UAAU,mBAAO,CAAC,CAAQ;AAC1B,kBAAkB,mBAAO,CAAC,CAAgB;AAC1C,cAAc,mBAAO,CAAC,CAAW;AACjC,eAAe,mBAAO,CAAC,EAAa;AACpC,WAAW,mBAAO,CAAC,EAAS;AAC5B,aAAa,mBAAO,CAAC,EAAU;AAC/B,aAAa,mBAAO,CAAC,EAAW;AAChC,qBAAqB,mBAAO,CAAC,EAAsB;AACnD,UAAU,mBAAO,CAAC,EAAQ;AAC1B,UAAU,mBAAO,CAAC,CAAQ;AAC1B,aAAa,mBAAO,CAAC,EAAY;AACjC,gBAAgB,mBAAO,CAAC,EAAe;AACvC,eAAe,mBAAO,CAAC,EAAc;AACrC,cAAc,mBAAO,CAAC,EAAa;AACnC,eAAe,mBAAO,CAAC,EAAc;AACrC,eAAe,mBAAO,CAAC,CAAc;AACrC,eAAe,mBAAO,CAAC,EAAc;AACrC,gBAAgB,mBAAO,CAAC,CAAe;AACvC,kBAAkB,mBAAO,CAAC,EAAiB;AAC3C,iBAAiB,mBAAO,CAAC,EAAkB;AAC3C,cAAc,mBAAO,CAAC,EAAkB;AACxC,cAAc,mBAAO,CAAC,EAAoB;AAC1C,YAAY,mBAAO,CAAC,EAAgB;AACpC,YAAY,mBAAO,CAAC,EAAgB;AACpC,UAAU,mBAAO,CAAC,CAAc;AAChC,YAAY,mBAAO,CAAC,EAAgB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sBAAsB;AACtB,sBAAsB,uBAAuB,WAAW,IAAI;AAC5D,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D;AAC3D;AACA,KAAK;AACL;AACA,sBAAsB,mCAAmC;AACzD,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gEAAgE,gCAAgC;AAChG;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,EAAE,mBAAO,CAAC,EAAgB;AAC1B,EAAE,mBAAO,CAAC,EAAe;AACzB;;AAEA,sBAAsB,mBAAO,CAAC,EAAY;AAC1C;AACA;;AAEA;AACA;AACA;AACA;;AAEA,0DAA0D,kBAAkB;;AAE5E;AACA;AACA;AACA,oBAAoB,uBAAuB;;AAE3C,oDAAoD,6BAA6B;;AAEjF;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH,0BAA0B,eAAe,EAAE;AAC3C,0BAA0B,gBAAgB;AAC1C,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA,8CAA8C,YAAY,EAAE;;AAE5D;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,OAAO,QAAQ,iCAAiC;AACpG,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,wEAAwE;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA,oCAAoC,mBAAO,CAAC,CAAS;AACrD;AACA;AACA;AACA;AACA;AACA;;;;;;;ACrPA,mBAAO,CAAC,EAAe;;;;;;;ACAvB,mBAAO,CAAC,EAAe;;;;;;;ACAvB,mBAAO,CAAC,EAAsB;AAC9B,aAAa,mBAAO,CAAC,CAAW;AAChC,WAAW,mBAAO,CAAC,CAAS;AAC5B,gBAAgB,mBAAO,CAAC,EAAc;AACtC,oBAAoB,mBAAO,CAAC,CAAQ;;AAEpC;AACA;AACA;AACA;AACA;;AAEA,eAAe,yBAAyB;AACxC;AACA;AACA;AACA;AACA;AACA;;;;;;;;AClBA;AACA;AACA;AACA;AACA;;AAEa;AACb;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,gCAAgC;AAChC;AACA;AACA;AACA;;AAEA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA,EAAE;AACF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,gBAAgB,sBAAsB;AACtC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,kBAAkB,oBAAoB;AACtC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;ACzFA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;;AAEA;AACA,6BAA6B,mBAAO,CAAC,EAA4B;AACjE;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,UAAU;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4GAA4G;AAC5G;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,2DAA2D;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;;ACrGA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb,2BAA2B,mBAAO,CAAC,EAA4B;;AAE/D;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;;;;;;;AC/DA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb,cAAc,mBAAO,CAAC,EAAU;AAChC,aAAa,mBAAO,CAAC,GAAe;;AAEpC,2BAA2B,mBAAO,CAAC,EAA4B;AAC/D,qBAAqB,mBAAO,CAAC,GAAkB;;AAE/C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,0CAA0C;;AAE1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,6BAA6B;AAC7B,QAAQ;AACR;AACA;AACA;AACA;AACA,+BAA+B,KAAK;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,4BAA4B;AAC5B,OAAO;AACP;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,sBAAsB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,qBAAqB,2BAA2B;AAChD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,mBAAmB,gCAAgC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB,gCAAgC;AACrD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;;;;;AC9kBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEa;;;;AAIb;AACA;AACA;;AAEA,8CAA8C,cAAc;;AAE5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0EAA0E;AAC1E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,0FAA0F,aAAa;AACvG;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;;AAEA;AACA,gGAAgG,eAAe;AAC/G;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;;AAEhD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;AC3OA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEa,4CAA4C,SAAS;AAClE;AACA,kMAAkM,cAAc,kCAAkC,iBAAiB,UAAU,0BAA0B,mDAAmD,kCAAkC,4CAA4C,kBAAkB,kBAAkB,cAAc;AAC1d,iBAAiB,oBAAoB,yBAAyB,0BAA0B,0BAA0B,kBAAkB,qBAAqB,mBAAmB,eAAe,eAAe,iBAAiB,mBAAmB,qBAAqB;AACnQ,uCAAuC,6PAA6P,gCAAgC,uBAAuB,2BAA2B,sCAAsC,iBAAiB,sCAAsC;AACnd,8BAA8B,qDAAqD,iCAAiC,iBAAiB,+BAA+B,iBAAiB,2BAA2B,iBAAiB,2BAA2B,iBAAiB,6BAA6B,iBAAiB,+BAA+B,iBAAiB,iCAAiC,iBAAiB,+BAA+B;;;;;;;;ACd5b;AAAA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEoB","file":"rc-pagination.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"rc-pagination\"] = factory(require(\"react\"));\n\telse\n\t\troot[\"rc-pagination\"] = factory(root[\"React\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_33__) {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 107);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap cf03c8c062ca5c1a738d","var core = module.exports = { version: '2.6.11' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_core.js\n// module id = 0\n// module chunks = 0","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('./_fails')(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_descriptors.js\n// module id = 1\n// module chunks = 0","// 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_global.js\n// module id = 2\n// module chunks = 0","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_has.js\n// module id = 3\n// module chunks = 0","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-dp.js\n// module id = 4\n// module chunks = 0","var global = require('./_global');\nvar core = require('./_core');\nvar ctx = require('./_ctx');\nvar hide = require('./_hide');\nvar has = require('./_has');\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 IS_WRAP = type & $export.W;\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE];\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];\n var key, own, out;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n if (own && has(exports, key)) continue;\n // export native or passed\n out = own ? target[key] : source[key];\n // prevent global pollution for namespaces\n exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]\n // bind timers to global for call from export context\n : IS_BIND && own ? ctx(out, global)\n // wrap global constructors for prevent change them in library\n : IS_WRAP && target[key] == out ? (function (C) {\n var F = function (a, b, c) {\n if (this instanceof C) {\n switch (arguments.length) {\n case 0: return new C();\n case 1: return new C(a);\n case 2: return new C(a, b);\n } return new C(a, b, c);\n } return C.apply(this, arguments);\n };\n F[PROTOTYPE] = C[PROTOTYPE];\n return F;\n // make static versions for prototype methods\n })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%\n if (IS_PROTO) {\n (exports.virtual || (exports.virtual = {}))[key] = out;\n // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%\n if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);\n }\n }\n};\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_export.js\n// module id = 5\n// module chunks = 0","var dP = require('./_object-dp');\nvar createDesc = require('./_property-desc');\nmodule.exports = require('./_descriptors') ? 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_hide.js\n// module id = 6\n// module chunks = 0","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_is-object.js\n// module id = 7\n// module chunks = 0","// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = require('./_iobject');\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_to-iobject.js\n// module id = 8\n// module chunks = 0","var store = require('./_shared')('wks');\nvar uid = require('./_uid');\nvar Symbol = require('./_global').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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_wks.js\n// module id = 9\n// module chunks = 0","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_an-object.js\n// module id = 10\n// module chunks = 0","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_fails.js\n// module id = 11\n// module chunks = 0","// 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_process@0.11.10@process/browser.js\n// module id = 12\n// module chunks = 0","module.exports = true;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_library.js\n// module id = 13\n// module chunks = 0","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-keys.js\n// module id = 14\n// module chunks = 0","exports.f = {}.propertyIsEnumerable;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-pie.js\n// module id = 15\n// module chunks = 0","module.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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_property-desc.js\n// module id = 16\n// module chunks = 0","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_uid.js\n// module id = 17\n// module chunks = 0","// 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_defined.js\n// module id = 18\n// module chunks = 0","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_enum-bug-keys.js\n// module id = 19\n// module chunks = 0","module.exports = {};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_iterators.js\n// module id = 20\n// module chunks = 0","// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = require('./_an-object');\nvar dPs = require('./_object-dps');\nvar enumBugKeys = require('./_enum-bug-keys');\nvar IE_PROTO = require('./_shared-key')('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 = require('./_dom-create')('iframe');\n var i = enumBugKeys.length;\n var lt = '<';\n var gt = '>';\n var iframeDocument;\n iframe.style.display = 'none';\n require('./_html').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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-create.js\n// module id = 21\n// module chunks = 0","exports.f = Object.getOwnPropertySymbols;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-gops.js\n// module id = 22\n// module chunks = 0","var def = require('./_object-dp').f;\nvar has = require('./_has');\nvar TAG = require('./_wks')('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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_set-to-string-tag.js\n// module id = 23\n// module chunks = 0","var shared = require('./_shared')('keys');\nvar uid = require('./_uid');\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_shared-key.js\n// module id = 24\n// module chunks = 0","var core = require('./_core');\nvar global = require('./_global');\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: core.version,\n mode: require('./_library') ? 'pure' : 'global',\n copyright: '© 2019 Denis Pushkarev (zloirock.ru)'\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_shared.js\n// module id = 25\n// module chunks = 0","// 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_to-integer.js\n// module id = 26\n// module chunks = 0","// 7.1.13 ToObject(argument)\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_to-object.js\n// module id = 27\n// module chunks = 0","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('./_is-object');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_to-primitive.js\n// module id = 28\n// module chunks = 0","var global = require('./_global');\nvar core = require('./_core');\nvar LIBRARY = require('./_library');\nvar wksExt = require('./_wks-ext');\nvar defineProperty = require('./_object-dp').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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_wks-define.js\n// module id = 29\n// module chunks = 0","exports.f = require('./_wks');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_wks-ext.js\n// module id = 30\n// module chunks = 0","/**\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\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_prop-types@15.7.2@prop-types/index.js\n// module id = 31\n// module chunks = 0","/**\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'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_prop-types@15.7.2@prop-types/lib/ReactPropTypesSecret.js\n// module id = 32\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_33__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external {\"root\":\"React\",\"commonjs2\":\"react\",\"commonjs\":\"react\",\"amd\":\"react\"}\n// module id = 33\n// module chunks = 0","export default {\n ZERO: 48,\n NINE: 57,\n\n NUMPAD_ZERO: 96,\n NUMPAD_NINE: 105,\n\n BACKSPACE: 8,\n DELETE: 46,\n ENTER: 13,\n\n ARROW_UP: 38,\n ARROW_DOWN: 40,\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/KeyCode.js","module.exports = { \"default\": require(\"core-js/library/fn/object/define-property\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/define-property.js\n// module id = 35\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nexports.default = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/helpers/classCallCheck.js\n// module id = 36\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _defineProperty = require(\"../core-js/object/define-property\");\n\nvar _defineProperty2 = _interopRequireDefault(_defineProperty);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n (0, _defineProperty2.default)(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/helpers/createClass.js\n// module id = 37\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _defineProperty = require(\"../core-js/object/define-property\");\n\nvar _defineProperty2 = _interopRequireDefault(_defineProperty);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (obj, key, value) {\n if (key in obj) {\n (0, _defineProperty2.default)(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/helpers/defineProperty.js\n// module id = 38\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _setPrototypeOf = require(\"../core-js/object/set-prototype-of\");\n\nvar _setPrototypeOf2 = _interopRequireDefault(_setPrototypeOf);\n\nvar _create = require(\"../core-js/object/create\");\n\nvar _create2 = _interopRequireDefault(_create);\n\nvar _typeof2 = require(\"../helpers/typeof\");\n\nvar _typeof3 = _interopRequireDefault(_typeof2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + (typeof superClass === \"undefined\" ? \"undefined\" : (0, _typeof3.default)(superClass)));\n }\n\n subClass.prototype = (0, _create2.default)(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf2.default ? (0, _setPrototypeOf2.default)(subClass, superClass) : subClass.__proto__ = superClass;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/helpers/inherits.js\n// module id = 39\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _typeof2 = require(\"../helpers/typeof\");\n\nvar _typeof3 = _interopRequireDefault(_typeof2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && ((typeof call === \"undefined\" ? \"undefined\" : (0, _typeof3.default)(call)) === \"object\" || typeof call === \"function\") ? call : self;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/helpers/possibleConstructorReturn.js\n// module id = 40\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _iterator = require(\"../core-js/symbol/iterator\");\n\nvar _iterator2 = _interopRequireDefault(_iterator);\n\nvar _symbol = require(\"../core-js/symbol\");\n\nvar _symbol2 = _interopRequireDefault(_symbol);\n\nvar _typeof = typeof _symbol2.default === \"function\" && typeof _iterator2.default === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof _symbol2.default === \"function\" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? \"symbol\" : typeof obj; };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = typeof _symbol2.default === \"function\" && _typeof(_iterator2.default) === \"symbol\" ? function (obj) {\n return typeof obj === \"undefined\" ? \"undefined\" : _typeof(obj);\n} : function (obj) {\n return obj && typeof _symbol2.default === \"function\" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? \"symbol\" : typeof obj === \"undefined\" ? \"undefined\" : _typeof(obj);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/helpers/typeof.js\n// module id = 41\n// module chunks = 0","/*!\n Copyright (c) 2017 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg) && arg.length) {\n\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\tif (inner) {\n\t\t\t\t\tclasses.push(inner);\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_classnames@2.2.6@classnames/index.js\n// module id = 42\n// module chunks = 0","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_cof.js\n// module id = 43\n// module chunks = 0","// optional / simple context binding\nvar aFunction = require('./_a-function');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_ctx.js\n// module id = 44\n// module chunks = 0","var isObject = require('./_is-object');\nvar document = require('./_global').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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_dom-create.js\n// module id = 45\n// module chunks = 0","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_ie8-dom-define.js\n// module id = 46\n// module chunks = 0","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = require('./_cof');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_iobject.js\n// module id = 47\n// module chunks = 0","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('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 && typeof IteratorPrototype[ITERATOR] != 'function') 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_iter-define.js\n// module id = 48\n// module chunks = 0","var pIE = require('./_object-pie');\nvar createDesc = require('./_property-desc');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar has = require('./_has');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar gOPD = Object.getOwnPropertyDescriptor;\n\nexports.f = require('./_descriptors') ? 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-gopd.js\n// module id = 49\n// module chunks = 0","// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\nvar $keys = require('./_object-keys-internal');\nvar hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype');\n\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return $keys(O, hiddenKeys);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-gopn.js\n// module id = 50\n// module chunks = 0","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-keys-internal.js\n// module id = 51\n// module chunks = 0","module.exports = require('./_hide');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_redefine.js\n// module id = 52\n// module chunks = 0","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_react-is@16.12.0@react-is/index.js\n// module id = 53\n// module chunks = 0","export { default } from './Pagination';\n\n\n\n// WEBPACK FOOTER //\n// ./src/index.js","// removed by extract-text-webpack-plugin\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./assets/index.less\n// module id = 55\n// module chunks = 0","import React from 'react';\nimport PropTypes from 'prop-types';\nimport KEYCODE from './KeyCode';\n\nclass Options extends React.Component {\n static propTypes = {\n disabled: PropTypes.bool,\n changeSize: PropTypes.func,\n quickGo: PropTypes.func,\n selectComponentClass: PropTypes.func,\n current: PropTypes.number,\n pageSizeOptions: PropTypes.arrayOf(PropTypes.string),\n pageSize: PropTypes.number,\n buildOptionText: PropTypes.func,\n locale: PropTypes.object,\n rootPrefixCls: PropTypes.string,\n selectPrefixCls: PropTypes.string,\n goButton: PropTypes.oneOfType([PropTypes.bool, PropTypes.node]),\n };\n\n static defaultProps = {\n pageSizeOptions: ['10', '20', '30', '40'],\n };\n\n state = {\n goInputText: '',\n };\n\n getValidValue() {\n const { goInputText, current } = this.state;\n return !goInputText || isNaN(goInputText) ? current : Number(goInputText);\n }\n\n buildOptionText = (value) => {\n return `${value} ${this.props.locale.items_per_page}`;\n }\n\n changeSize = (value) => {\n this.props.changeSize(Number(value));\n }\n\n handleChange = (e) => {\n this.setState({\n goInputText: e.target.value,\n });\n }\n\n handleBlur = (e) => {\n const { goButton, quickGo, rootPrefixCls } = this.props;\n if (goButton) {\n return;\n }\n if (\n e.relatedTarget &&\n (\n e.relatedTarget.className.indexOf(`${rootPrefixCls}-prev`) >= 0 ||\n e.relatedTarget.className.indexOf(`${rootPrefixCls}-next`) >= 0\n )\n ) {\n return;\n }\n quickGo(this.getValidValue());\n }\n\n go = (e) => {\n const { goInputText } = this.state;\n if (goInputText === '') {\n return;\n }\n if (e.keyCode === KEYCODE.ENTER || e.type === 'click') {\n this.setState({\n goInputText: '',\n });\n this.props.quickGo(this.getValidValue());\n }\n }\n\n render() {\n const {\n pageSize, pageSizeOptions, locale, rootPrefixCls, changeSize,\n quickGo, goButton, selectComponentClass, buildOptionText,\n selectPrefixCls, disabled,\n } = this.props;\n const { goInputText } = this.state;\n const prefixCls = `${rootPrefixCls}-options`;\n const Select = selectComponentClass;\n let changeSelect = null;\n let goInput = null;\n let gotoButton = null;\n\n if (!changeSize && !quickGo) {\n return null;\n }\n\n if (changeSize && Select) {\n const options = pageSizeOptions.map((opt, i) => (\n \n {(buildOptionText || this.buildOptionText)(opt)}\n \n ));\n\n changeSelect = (\n triggerNode.parentNode}\n >\n {options}\n \n );\n }\n\n if (quickGo) {\n if (goButton) {\n gotoButton = typeof goButton === 'boolean' ? (\n \n {locale.jump_to_confirm}\n \n ) : (\n \n {goButton}\n \n );\n }\n goInput = (\n
      \n {locale.jump_to}\n \n {locale.page}\n {gotoButton}\n
      \n );\n }\n\n return (\n
    • \n {changeSelect}\n {goInput}\n
    • \n );\n }\n}\n\nexport default Options;\n\n\n\n// WEBPACK FOOTER //\n// ./src/Options.jsx","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst Pager = (props) => {\n const prefixCls = `${props.rootPrefixCls}-item`;\n const cls = classNames(prefixCls, `${prefixCls}-${props.page}`, {\n [`${prefixCls}-active`]: props.active,\n [props.className]: !!props.className,\n [`${prefixCls}-disabled`]: !props.page,\n });\n\n const handleClick = () => {\n props.onClick(props.page);\n };\n\n const handleKeyPress = e => {\n props.onKeyPress(e, props.onClick, props.page);\n };\n\n return (\n \n {props.itemRender(props.page, 'page', {props.page})}\n \n );\n};\n\nPager.propTypes = {\n page: PropTypes.number,\n active: PropTypes.bool,\n last: PropTypes.bool,\n locale: PropTypes.object,\n className: PropTypes.string,\n showTitle: PropTypes.bool,\n rootPrefixCls: PropTypes.string,\n onClick: PropTypes.func,\n onKeyPress: PropTypes.func,\n itemRender: PropTypes.func,\n};\n\nexport default Pager;\n\n\n\n// WEBPACK FOOTER //\n// ./src/Pager.jsx","import React, { cloneElement, isValidElement } from 'react';\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\nimport Pager from './Pager';\nimport Options from './Options';\nimport KEYCODE from './KeyCode';\nimport LOCALE from './locale/zh_CN';\nimport { polyfill } from 'react-lifecycles-compat';\n\nfunction noop() {\n}\n\nfunction isInteger(value) {\n return typeof value === 'number' &&\n isFinite(value) &&\n Math.floor(value) === value;\n}\n\nfunction defaultItemRender(page, type, element) {\n return element;\n}\n\nfunction calculatePage(p, state, props) {\n let pageSize = p;\n if (typeof pageSize === 'undefined') {\n pageSize = state.pageSize;\n }\n return Math.floor((props.total - 1) / pageSize) + 1;\n}\n\nclass Pagination extends React.Component {\n static propTypes = {\n disabled: PropTypes.bool,\n prefixCls: PropTypes.string,\n className: PropTypes.string,\n current: PropTypes.number,\n defaultCurrent: PropTypes.number,\n total: PropTypes.number,\n pageSize: PropTypes.number,\n defaultPageSize: PropTypes.number,\n onChange: PropTypes.func,\n hideOnSinglePage: PropTypes.bool,\n showSizeChanger: PropTypes.bool,\n showLessItems: PropTypes.bool,\n onShowSizeChange: PropTypes.func,\n selectComponentClass: PropTypes.func,\n showPrevNextJumpers: PropTypes.bool,\n showQuickJumper: PropTypes.oneOfType([PropTypes.bool, PropTypes.object]),\n showTitle: PropTypes.bool,\n pageSizeOptions: PropTypes.arrayOf(PropTypes.string),\n showTotal: PropTypes.func,\n locale: PropTypes.object,\n style: PropTypes.object,\n itemRender: PropTypes.func,\n prevIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n nextIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n jumpPrevIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n jumpNextIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n };\n\n static defaultProps = {\n defaultCurrent: 1,\n total: 0,\n defaultPageSize: 10,\n onChange: noop,\n className: '',\n selectPrefixCls: 'rc-select',\n prefixCls: 'rc-pagination',\n selectComponentClass: null,\n hideOnSinglePage: false,\n showPrevNextJumpers: true,\n showQuickJumper: false,\n showSizeChanger: false,\n showLessItems: false,\n showTitle: true,\n onShowSizeChange: noop,\n locale: LOCALE,\n style: {},\n itemRender: defaultItemRender,\n };\n\n constructor(props) {\n super(props);\n\n const hasOnChange = props.onChange !== noop;\n const hasCurrent = ('current' in props);\n if (hasCurrent && !hasOnChange) {\n console.warn('Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.'); // eslint-disable-line\n }\n\n let current = props.defaultCurrent;\n if ('current' in props) {\n current = props.current;\n }\n\n let pageSize = props.defaultPageSize;\n if ('pageSize' in props) {\n pageSize = props.pageSize;\n }\n\n current = Math.min(current, calculatePage(pageSize, undefined, props));\n\n this.state = {\n current,\n currentInputValue: current,\n pageSize,\n };\n }\n\n componentDidUpdate(prevProps, prevState) {\n // When current page change, fix focused style of prev item\n // A hacky solution of https://github.com/ant-design/ant-design/issues/8948\n const { prefixCls } = this.props;\n if (prevState.current !== this.state.current && this.paginationNode) {\n const lastCurrentNode = this.paginationNode.querySelector(\n `.${prefixCls}-item-${prevState.current}`\n );\n if (lastCurrentNode && document.activeElement === lastCurrentNode) {\n lastCurrentNode.blur();\n }\n }\n }\n\n static getDerivedStateFromProps(props, prevState) {\n const newState = {};\n\n if ('current' in props) {\n newState.current = props.current;\n\n if (props.current !== prevState.current) {\n newState.currentInputValue = newState.current;\n }\n }\n\n if ('pageSize' in props && props.pageSize !== prevState.pageSize) {\n let current = prevState.current;\n const newCurrent = calculatePage(props.pageSize, prevState, props);\n current = current > newCurrent ? newCurrent : current;\n\n if (!('current' in props)) {\n newState.current = current;\n newState.currentInputValue = current;\n }\n newState.pageSize = props.pageSize;\n }\n\n return newState;\n }\n\n getJumpPrevPage = () => {\n return Math.max(1, this.state.current - (this.props.showLessItems ? 3 : 5));\n }\n\n getJumpNextPage = () => {\n return Math.min(\n calculatePage(undefined, this.state, this.props),\n this.state.current + (this.props.showLessItems ? 3 : 5)\n );\n }\n\n /**\n * computed icon node that need to be rendered.\n * @param {React.ReactNode | React.ComponentType} icon received icon.\n * @returns {React.ReactNode}\n */\n getItemIcon = (icon) => {\n const { prefixCls } = this.props;\n let iconNode = icon\n || ;\n if (typeof icon === 'function') {\n iconNode = React.createElement(icon, { ...this.props });\n }\n return iconNode;\n }\n\n getValidValue(e) {\n const inputValue = e.target.value;\n const allPages = calculatePage(undefined, this.state, this.props);\n const { currentInputValue } = this.state;\n let value;\n if (inputValue === '') {\n value = inputValue;\n } else if (isNaN(Number(inputValue))) {\n value = currentInputValue;\n } else if (inputValue >= allPages) {\n value = allPages;\n } else {\n value = Number(inputValue);\n }\n return value;\n }\n\n savePaginationNode = (node) => {\n this.paginationNode = node;\n }\n\n isValid = (page) => {\n return isInteger(page) && page !== this.state.current;\n }\n\n shouldDisplayQuickJumper = () => {\n const { showQuickJumper, pageSize, total } = this.props;\n if (total <= pageSize) {\n return false;\n }\n return showQuickJumper;\n }\n\n handleKeyDown = (e) => {\n if (e.keyCode === KEYCODE.ARROW_UP || e.keyCode === KEYCODE.ARROW_DOWN) {\n e.preventDefault();\n }\n }\n\n handleKeyUp = (e) => {\n const value = this.getValidValue(e);\n const { currentInputValue } = this.state;\n if (value !== currentInputValue) {\n this.setState({\n currentInputValue: value,\n });\n }\n if (e.keyCode === KEYCODE.ENTER) {\n this.handleChange(value);\n } else if (e.keyCode === KEYCODE.ARROW_UP) {\n this.handleChange(value - 1);\n } else if (e.keyCode === KEYCODE.ARROW_DOWN) {\n this.handleChange(value + 1);\n }\n }\n\n changePageSize = (size) => {\n let current = this.state.current;\n const newCurrent = calculatePage(size, this.state, this.props);\n current = current > newCurrent ? newCurrent : current;\n // fix the issue:\n // Once 'total' is 0, 'current' in 'onShowSizeChange' is 0, which is not correct.\n if (newCurrent === 0) {\n current = this.state.current;\n }\n\n if (typeof size === 'number') {\n if (!('pageSize' in this.props)) {\n this.setState({\n pageSize: size,\n });\n }\n if (!('current' in this.props)) {\n this.setState({\n current,\n currentInputValue: current,\n });\n }\n }\n this.props.onShowSizeChange(current, size);\n }\n\n handleChange = (p) => {\n const { disabled } = this.props;\n\n let page = p;\n if (this.isValid(page) && !disabled) {\n const currentPage = calculatePage(undefined, this.state, this.props);\n if (page > currentPage) {\n page = currentPage;\n } else if (page < 1) {\n page = 1;\n }\n\n if (!('current' in this.props)) {\n this.setState({\n current: page,\n currentInputValue: page,\n });\n }\n\n const pageSize = this.state.pageSize;\n this.props.onChange(page, pageSize);\n\n return page;\n }\n\n return this.state.current;\n }\n\n prev = () => {\n if (this.hasPrev()) {\n this.handleChange(this.state.current - 1);\n }\n }\n\n next = () => {\n if (this.hasNext()) {\n this.handleChange(this.state.current + 1);\n }\n }\n\n jumpPrev = () => {\n this.handleChange(this.getJumpPrevPage());\n }\n\n jumpNext = () => {\n this.handleChange(this.getJumpNextPage());\n }\n\n hasPrev = () => {\n return this.state.current > 1;\n }\n\n hasNext = () => {\n return this.state.current < calculatePage(undefined, this.state, this.props);\n }\n\n runIfEnter = (event, callback, ...restParams) => {\n if (event.key === 'Enter' || event.charCode === 13) {\n callback(...restParams);\n }\n }\n\n runIfEnterPrev = e => {\n this.runIfEnter(e, this.prev);\n }\n\n runIfEnterNext = e => {\n this.runIfEnter(e, this.next);\n }\n\n runIfEnterJumpPrev = e => {\n this.runIfEnter(e, this.jumpPrev);\n }\n\n runIfEnterJumpNext = e => {\n this.runIfEnter(e, this.jumpNext);\n }\n\n handleGoTO = e => {\n if (e.keyCode === KEYCODE.ENTER || e.type === 'click') {\n this.handleChange(this.state.currentInputValue);\n }\n }\n\n renderPrev(prevPage) {\n const { prevIcon, itemRender } = this.props;\n const prevButton = itemRender(prevPage, 'prev', this.getItemIcon(prevIcon));\n const disabled = !this.hasPrev();\n return isValidElement(prevButton) ? cloneElement(prevButton, { disabled }) : prevButton;\n }\n\n renderNext(nextPage) {\n const { nextIcon, itemRender } = this.props;\n const nextButton = itemRender(nextPage, 'next', this.getItemIcon(nextIcon));\n const disabled = !this.hasNext();\n return isValidElement(nextButton) ? cloneElement(nextButton, { disabled }) : nextButton;\n }\n\n render() {\n const { prefixCls, className, disabled } = this.props;\n\n // When hideOnSinglePage is true and there is only 1 page, hide the pager\n if (this.props.hideOnSinglePage === true && this.props.total <= this.state.pageSize) {\n return null;\n }\n\n const props = this.props;\n const locale = props.locale;\n\n const allPages = calculatePage(undefined, this.state, this.props);\n const pagerList = [];\n let jumpPrev = null;\n let jumpNext = null;\n let firstPager = null;\n let lastPager = null;\n let gotoButton = null;\n\n const goButton = (props.showQuickJumper && props.showQuickJumper.goButton);\n const pageBufferSize = props.showLessItems ? 1 : 2;\n const { current, pageSize } = this.state;\n\n const prevPage = current - 1 > 0 ? current - 1 : 0;\n const nextPage = current + 1 < allPages ? current + 1 : allPages;\n\n const dataOrAriaAttributeProps = Object.keys(props).reduce((prev, key) => {\n if ((key.substr(0, 5) === 'data-' || key.substr(0, 5) === 'aria-' || key === 'role')) {\n prev[key] = props[key];\n }\n return prev;\n }, {});\n\n if (props.simple) {\n if (goButton) {\n if (typeof goButton === 'boolean') {\n gotoButton = (\n \n {locale.jump_to_confirm}\n \n );\n } else {\n gotoButton = (\n {goButton}\n );\n }\n gotoButton = (\n \n {gotoButton}\n \n );\n }\n\n return (\n \n \n {this.renderPrev(prevPage)}\n \n \n \n /\n {allPages}\n \n \n {this.renderNext(nextPage)}\n \n {gotoButton}\n
    \n );\n }\n\n if (allPages <= 5 + pageBufferSize * 2) {\n const pagerProps = {\n locale,\n rootPrefixCls: prefixCls,\n onClick: this.handleChange,\n onKeyPress: this.runIfEnter,\n showTitle: props.showTitle,\n itemRender: props.itemRender,\n };\n if (!allPages) {\n pagerList.push(\n \n );\n }\n for (let i = 1; i <= allPages; i++) {\n const active = this.state.current === i;\n pagerList.push(\n \n );\n }\n } else {\n const prevItemTitle = props.showLessItems ? locale.prev_3 : locale.prev_5;\n const nextItemTitle = props.showLessItems ? locale.next_3 : locale.next_5;\n if (props.showPrevNextJumpers) {\n let jumpPrevClassString = `${prefixCls}-jump-prev`;\n if (props.jumpPrevIcon) {\n jumpPrevClassString += ` ${prefixCls}-jump-prev-custom-icon`;\n }\n jumpPrev = (\n \n {props.itemRender(\n this.getJumpPrevPage(),\n 'jump-prev',\n this.getItemIcon(props.jumpPrevIcon)\n )}\n \n );\n let jumpNextClassString = `${prefixCls}-jump-next`;\n if (props.jumpNextIcon) {\n jumpNextClassString += ` ${prefixCls}-jump-next-custom-icon`;\n }\n jumpNext = (\n \n {props.itemRender(\n this.getJumpNextPage(),\n 'jump-next',\n this.getItemIcon(props.jumpNextIcon)\n )}\n \n );\n }\n lastPager = (\n \n );\n firstPager = (\n \n );\n\n let left = Math.max(1, current - pageBufferSize);\n let right = Math.min(current + pageBufferSize, allPages);\n\n if (current - 1 <= pageBufferSize) {\n right = 1 + pageBufferSize * 2;\n }\n\n if (allPages - current <= pageBufferSize) {\n left = allPages - pageBufferSize * 2;\n }\n\n for (let i = left; i <= right; i++) {\n const active = current === i;\n pagerList.push(\n \n );\n }\n\n if (current - 1 >= pageBufferSize * 2 && current !== 1 + 2) {\n pagerList[0] = React.cloneElement(pagerList[0], {\n className: `${prefixCls}-item-after-jump-prev`,\n });\n pagerList.unshift(jumpPrev);\n }\n if (allPages - current >= pageBufferSize * 2 && current !== allPages - 2) {\n pagerList[pagerList.length - 1] = React.cloneElement(pagerList[pagerList.length - 1], {\n className: `${prefixCls}-item-before-jump-next`,\n });\n pagerList.push(jumpNext);\n }\n\n if (left !== 1) {\n pagerList.unshift(firstPager);\n }\n if (right !== allPages) {\n pagerList.push(lastPager);\n }\n }\n\n let totalText = null;\n\n if (props.showTotal) {\n totalText = (\n
  • \n {props.showTotal(\n props.total,\n [\n props.total === 0 ? 0 : (current - 1) * pageSize + 1,\n current * pageSize > props.total ? props.total : current * pageSize,\n ]\n )}\n
  • \n );\n }\n const prevDisabled = !this.hasPrev() || !allPages;\n const nextDisabled = !this.hasNext() || !allPages;\n return (\n \n {totalText}\n \n {this.renderPrev(prevPage)}\n \n {pagerList}\n \n {this.renderNext(nextPage)}\n \n \n \n );\n }\n}\n\npolyfill(Pagination);\n\nexport default Pagination;\n\n\n\n// WEBPACK FOOTER //\n// ./src/Pagination.jsx","export default {\n // Options.jsx\n items_per_page: '条/页',\n jump_to: '跳至',\n jump_to_confirm: '确定',\n page: '页',\n\n // Pagination.jsx\n prev_page: '上一页',\n next_page: '下一页',\n prev_5: '向前 5 页',\n next_5: '向后 5 页',\n prev_3: '向前 3 页',\n next_3: '向后 3 页',\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/locale/zh_CN.js","module.exports = { \"default\": require(\"core-js/library/fn/object/assign\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/assign.js\n// module id = 60\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/object/create\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/create.js\n// module id = 61\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/object/set-prototype-of\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/set-prototype-of.js\n// module id = 62\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/symbol\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/core-js/symbol.js\n// module id = 63\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/symbol/iterator\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/core-js/symbol/iterator.js\n// module id = 64\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _assign = require(\"../core-js/object/assign\");\n\nvar _assign2 = _interopRequireDefault(_assign);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = _assign2.default || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/helpers/extends.js\n// module id = 65\n// module chunks = 0","require('../../modules/es6.object.assign');\nmodule.exports = require('../../modules/_core').Object.assign;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/fn/object/assign.js\n// module id = 66\n// module chunks = 0","require('../../modules/es6.object.create');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function create(P, D) {\n return $Object.create(P, D);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/fn/object/create.js\n// module id = 67\n// module chunks = 0","require('../../modules/es6.object.define-property');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function defineProperty(it, key, desc) {\n return $Object.defineProperty(it, key, desc);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/fn/object/define-property.js\n// module id = 68\n// module chunks = 0","require('../../modules/es6.object.set-prototype-of');\nmodule.exports = require('../../modules/_core').Object.setPrototypeOf;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/fn/object/set-prototype-of.js\n// module id = 69\n// module chunks = 0","require('../../modules/es6.symbol');\nrequire('../../modules/es6.object.to-string');\nrequire('../../modules/es7.symbol.async-iterator');\nrequire('../../modules/es7.symbol.observable');\nmodule.exports = require('../../modules/_core').Symbol;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/fn/symbol/index.js\n// module id = 70\n// module chunks = 0","require('../../modules/es6.string.iterator');\nrequire('../../modules/web.dom.iterable');\nmodule.exports = require('../../modules/_wks-ext').f('iterator');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/fn/symbol/iterator.js\n// module id = 71\n// module chunks = 0","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_a-function.js\n// module id = 72\n// module chunks = 0","module.exports = function () { /* empty */ };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_add-to-unscopables.js\n// module id = 73\n// module chunks = 0","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_array-includes.js\n// module id = 74\n// module chunks = 0","// all enumerable object keys, includes symbols\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_enum-keys.js\n// module id = 75\n// module chunks = 0","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_html.js\n// module id = 76\n// module chunks = 0","// 7.2.2 IsArray(argument)\nvar cof = require('./_cof');\nmodule.exports = Array.isArray || function isArray(arg) {\n return cof(arg) == 'Array';\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_is-array.js\n// module id = 77\n// module chunks = 0","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_iter-create.js\n// module id = 78\n// module chunks = 0","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_iter-step.js\n// module id = 79\n// module chunks = 0","var META = require('./_uid')('meta');\nvar isObject = require('./_is-object');\nvar has = require('./_has');\nvar setDesc = require('./_object-dp').f;\nvar id = 0;\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\nvar FREEZE = !require('./_fails')(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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_meta.js\n// module id = 80\n// module chunks = 0","'use strict';\n// 19.1.2.1 Object.assign(target, source, ...)\nvar DESCRIPTORS = require('./_descriptors');\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\nvar toObject = require('./_to-object');\nvar IObject = require('./_iobject');\nvar $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || require('./_fails')(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) {\n key = keys[j++];\n if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-assign.js\n// module id = 81\n// module chunks = 0","var dP = require('./_object-dp');\nvar anObject = require('./_an-object');\nvar getKeys = require('./_object-keys');\n\nmodule.exports = require('./_descriptors') ? 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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-dps.js\n// module id = 82\n// module chunks = 0","// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = require('./_to-iobject');\nvar gOPN = require('./_object-gopn').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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-gopn-ext.js\n// module id = 83\n// module chunks = 0","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_object-gpo.js\n// module id = 84\n// module chunks = 0","// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nvar isObject = require('./_is-object');\nvar anObject = require('./_an-object');\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 = require('./_ctx')(Function.call, require('./_object-gopd').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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_set-proto.js\n// module id = 85\n// module chunks = 0","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_string-at.js\n// module id = 86\n// module chunks = 0","var toInteger = require('./_to-integer');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_to-absolute-index.js\n// module id = 87\n// module chunks = 0","// 7.1.15 ToLength\nvar toInteger = require('./_to-integer');\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/_to-length.js\n// module id = 88\n// module chunks = 0","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\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 = require('./_iter-define')(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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es6.array.iterator.js\n// module id = 89\n// module chunks = 0","// 19.1.3.1 Object.assign(target, source)\nvar $export = require('./_export');\n\n$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') });\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es6.object.assign.js\n// module id = 90\n// module chunks = 0","var $export = require('./_export');\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\n$export($export.S, 'Object', { create: require('./_object-create') });\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es6.object.create.js\n// module id = 91\n// module chunks = 0","var $export = require('./_export');\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperty: require('./_object-dp').f });\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es6.object.define-property.js\n// module id = 92\n// module chunks = 0","// 19.1.3.19 Object.setPrototypeOf(O, proto)\nvar $export = require('./_export');\n$export($export.S, 'Object', { setPrototypeOf: require('./_set-proto').set });\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es6.object.set-prototype-of.js\n// module id = 93\n// module chunks = 0","'use strict';\nvar $at = require('./_string-at')(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\nrequire('./_iter-define')(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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es6.string.iterator.js\n// module id = 95\n// module chunks = 0","'use strict';\n// ECMAScript 6 symbols shim\nvar global = require('./_global');\nvar has = require('./_has');\nvar DESCRIPTORS = require('./_descriptors');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar META = require('./_meta').KEY;\nvar $fails = require('./_fails');\nvar shared = require('./_shared');\nvar setToStringTag = require('./_set-to-string-tag');\nvar uid = require('./_uid');\nvar wks = require('./_wks');\nvar wksExt = require('./_wks-ext');\nvar wksDefine = require('./_wks-define');\nvar enumKeys = require('./_enum-keys');\nvar isArray = require('./_is-array');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar toObject = require('./_to-object');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar createDesc = require('./_property-desc');\nvar _create = require('./_object-create');\nvar gOPNExt = require('./_object-gopn-ext');\nvar $GOPD = require('./_object-gopd');\nvar $GOPS = require('./_object-gops');\nvar $DP = require('./_object-dp');\nvar $keys = require('./_object-keys');\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' && !!$GOPS.f;\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 require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames;\n require('./_object-pie').f = $propertyIsEnumerable;\n $GOPS.f = $getOwnPropertySymbols;\n\n if (DESCRIPTORS && !require('./_library')) {\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(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');\n for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;\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// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\nvar FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });\n\n$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n return $GOPS.f(toObject(it));\n }\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 var args = [it];\n var i = 1;\n var replacer, $replacer;\n while (arguments.length > i) args.push(arguments[i++]);\n $replacer = replacer = args[1];\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') 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] || require('./_hide')($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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es6.symbol.js\n// module id = 96\n// module chunks = 0","require('./_wks-define')('asyncIterator');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es7.symbol.async-iterator.js\n// module id = 97\n// module chunks = 0","require('./_wks-define')('observable');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/es7.symbol.observable.js\n// module id = 98\n// module chunks = 0","require('./es6.array.iterator');\nvar global = require('./_global');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar TO_STRING_TAG = require('./_wks')('toStringTag');\n\nvar DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +\n 'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +\n 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +\n 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +\n 'TextTrackList,TouchList').split(',');\n\nfor (var i = 0; i < DOMIterables.length; i++) {\n var NAME = DOMIterables[i];\n var Collection = global[NAME];\n var proto = Collection && Collection.prototype;\n if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);\n Iterators[NAME] = Iterators.Array;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.6.11@core-js/library/modules/web.dom.iterable.js\n// module id = 99\n// module chunks = 0","/*\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\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_object-assign@4.1.1@object-assign/index.js\n// module id = 100\n// module chunks = 0","/**\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'use strict';\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n var loggedTypeFailures = {};\n var has = Function.call.bind(Object.prototype.hasOwnProperty);\n\n printWarning = function(text) {\n var message = 'Warning: ' + text;\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\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n var err = Error(\n (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'\n );\n err.name = 'Invariant Violation';\n throw err;\n }\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n if (error && !(error instanceof Error)) {\n printWarning(\n (componentName || 'React class') + ': type specification of ' +\n location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n 'You may have forgotten to pass an argument to the type checker ' +\n 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n 'shape all require an argument).'\n );\n }\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n printWarning(\n 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n );\n }\n }\n }\n }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n if (process.env.NODE_ENV !== 'production') {\n loggedTypeFailures = {};\n }\n}\n\nmodule.exports = checkPropTypes;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_prop-types@15.7.2@prop-types/checkPropTypes.js\n// module id = 101\n// module chunks = 0","/**\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'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_prop-types@15.7.2@prop-types/factoryWithThrowingShims.js\n// module id = 102\n// module chunks = 0","/**\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'use strict';\n\nvar ReactIs = require('react-is');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar checkPropTypes = require('./checkPropTypes');\n\nvar has = Function.call.bind(Object.prototype.hasOwnProperty);\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\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\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n elementType: createElementTypeTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message) {\n this.message = message;\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!ReactIs.isValidElementType(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n printWarning(\n 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n );\n } else {\n printWarning('Invalid argument supplied to oneOf, expected an array.');\n }\n }\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n var type = getPreciseType(value);\n if (type === 'symbol') {\n return String(value);\n }\n return value;\n });\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (has(propValue, key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n return null;\n }\n }\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (!checker) {\n continue;\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from\n // props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // falsy value can't be a Symbol\n if (!propValue) {\n return false;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_prop-types@15.7.2@prop-types/factoryWithTypeCheckers.js\n// module id = 103\n// module chunks = 0","/** @license React v16.12.0\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\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'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE);\n}\n\n/**\n * Forked from fbjs/warning:\n * https://github.com/facebook/fbjs/blob/e66ba20ad5be433eb54423f2b097d829324d9de6/packages/fbjs/src/__forks__/warning.js\n *\n * Only change is we use console.warn instead of console.error,\n * and do nothing when 'console' is not supported.\n * This really simplifies the code.\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 */\nvar lowPriorityWarningWithoutStack = function () {};\n\n{\n var printWarning = function (format) {\n for (var _len = arguments.length, args = new 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\n if (typeof console !== 'undefined') {\n console.warn(message);\n }\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 lowPriorityWarningWithoutStack = function (condition, format) {\n if (format === undefined) {\n throw new Error('`lowPriorityWarningWithoutStack(condition, format, ...args)` requires a warning ' + 'message argument');\n }\n\n if (!condition) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n args[_key2 - 2] = arguments[_key2];\n }\n\n printWarning.apply(void 0, [format].concat(args));\n }\n };\n}\n\nvar lowPriorityWarningWithoutStack$1 = lowPriorityWarningWithoutStack;\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true;\n lowPriorityWarningWithoutStack$1(false, 'The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.typeOf = typeOf;\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isValidElementType = isValidElementType;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\n })();\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_react-is@16.12.0@react-is/cjs/react-is.development.js\n// module id = 104\n// module chunks = 0","/** @license React v16.12.0\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\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'use strict';Object.defineProperty(exports,\"__esModule\",{value:!0});\nvar b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?Symbol.for(\"react.suspense_list\"):\n60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.fundamental\"):60117,w=b?Symbol.for(\"react.responder\"):60118,x=b?Symbol.for(\"react.scope\"):60119;function y(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function z(a){return y(a)===m}\nexports.typeOf=y;exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;exports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===v||a.$$typeof===w||a.$$typeof===x)};exports.isAsyncMode=function(a){return z(a)||y(a)===l};exports.isConcurrentMode=z;exports.isContextConsumer=function(a){return y(a)===k};exports.isContextProvider=function(a){return y(a)===h};\nexports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return y(a)===n};exports.isFragment=function(a){return y(a)===e};exports.isLazy=function(a){return y(a)===t};exports.isMemo=function(a){return y(a)===r};exports.isPortal=function(a){return y(a)===d};exports.isProfiler=function(a){return y(a)===g};exports.isStrictMode=function(a){return y(a)===f};exports.isSuspense=function(a){return y(a)===p};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_react-is@16.12.0@react-is/cjs/react-is.production.min.js\n// module id = 105\n// module chunks = 0","/**\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\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\nexport { polyfill };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_react-lifecycles-compat@3.0.4@react-lifecycles-compat/react-lifecycles-compat.es.js\n// module id = 106\n// module chunks = 0"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/rc-pagination.min.css b/dist/rc-pagination.min.css deleted file mode 100644 index 0ac67ca8..00000000 --- a/dist/rc-pagination.min.css +++ /dev/null @@ -1,324 +0,0 @@ -.rc-pagination { - font-size: 12px; - font-family: 'Arial'; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - padding: 0; -} -.rc-pagination > li { - list-style: none; -} -.rc-pagination-total-text { - float: left; - height: 30px; - line-height: 30px; - list-style: none; - padding: 0; - margin: 0 8px 0 0; -} -.rc-pagination:after { - content: ' '; - display: block; - height: 0; - clear: both; - overflow: hidden; - visibility: hidden; -} -.rc-pagination-item { - cursor: pointer; - border-radius: 6px; - min-width: 28px; - height: 28px; - line-height: 28px; - text-align: center; - list-style: none; - float: left; - border: 1px solid #d9d9d9; - background-color: #fff; - margin-right: 8px; -} -.rc-pagination-item a { - text-decoration: none; - color: #666; -} -.rc-pagination-item:hover { - border-color: #2db7f5; -} -.rc-pagination-item:hover a { - color: #2db7f5; -} -.rc-pagination-item-disabled { - cursor: not-allowed; -} -.rc-pagination-item-disabled:hover { - border-color: #d9d9d9; -} -.rc-pagination-item-disabled:hover a { - color: #d9d9d9; -} -.rc-pagination-item-active { - background-color: #2db7f5; - border-color: #2db7f5; -} -.rc-pagination-item-active a { - color: #fff; -} -.rc-pagination-item-active:hover a { - color: #fff; -} -.rc-pagination-jump-prev:after, -.rc-pagination-jump-next:after { - content: '\2022\2022\2022'; - display: block; - letter-spacing: 2px; - color: #ccc; - font-size: 12px; - margin-top: 1px; -} -.rc-pagination-jump-prev:hover:after, -.rc-pagination-jump-next:hover:after { - color: #2db7f5; -} -.rc-pagination-jump-prev:hover:after { - content: '\AB'; -} -.rc-pagination-jump-next:hover:after { - content: '\BB'; -} -.rc-pagination-jump-prev-custom-icon, -.rc-pagination-jump-next-custom-icon { - position: relative; -} -.rc-pagination-jump-prev-custom-icon:after, -.rc-pagination-jump-next-custom-icon:after { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - margin: auto; - transition: all 0.2s; - content: '\2022\2022\2022'; - opacity: 1; - display: block; - letter-spacing: 2px; - color: #ccc; - font-size: 12px; - margin-top: 1px; -} -.rc-pagination-jump-prev-custom-icon .custom-icon-jump-prev, -.rc-pagination-jump-next-custom-icon .custom-icon-jump-prev, -.rc-pagination-jump-prev-custom-icon .custom-icon-jump-next, -.rc-pagination-jump-next-custom-icon .custom-icon-jump-next { - opacity: 0; - transition: all 0.2s; -} -.rc-pagination-jump-prev-custom-icon:hover:after, -.rc-pagination-jump-next-custom-icon:hover:after { - opacity: 0; - color: #ccc; -} -.rc-pagination-jump-prev-custom-icon:hover .custom-icon-jump-prev, -.rc-pagination-jump-next-custom-icon:hover .custom-icon-jump-prev, -.rc-pagination-jump-prev-custom-icon:hover .custom-icon-jump-next, -.rc-pagination-jump-next-custom-icon:hover .custom-icon-jump-next { - opacity: 1; - color: #2db7f5; -} -.rc-pagination-prev, -.rc-pagination-jump-prev, -.rc-pagination-jump-next { - margin-right: 8px; -} -.rc-pagination-prev, -.rc-pagination-next, -.rc-pagination-jump-prev, -.rc-pagination-jump-next { - cursor: pointer; - color: #666; - font-size: 10px; - border-radius: 6px; - list-style: none; - min-width: 28px; - height: 28px; - line-height: 28px; - float: left; - text-align: center; -} -.rc-pagination-prev a:after { - content: '\2039'; - display: block; -} -.rc-pagination-next a:after { - content: '\203A'; - display: block; -} -.rc-pagination-prev, -.rc-pagination-next { - border: 1px solid #d9d9d9; - font-size: 18px; -} -.rc-pagination-prev a, -.rc-pagination-next a { - color: #666; -} -.rc-pagination-prev a:after, -.rc-pagination-next a:after { - margin-top: -1px; -} -.rc-pagination-disabled { - cursor: not-allowed; -} -.rc-pagination-disabled a { - color: #ccc; -} -.rc-pagination-disabled .rc-pagination-item, -.rc-pagination-disabled .rc-pagination-prev, -.rc-pagination-disabled .rc-pagination-next { - cursor: not-allowed; -} -.rc-pagination-disabled .rc-pagination-item:hover, -.rc-pagination-disabled .rc-pagination-prev:hover, -.rc-pagination-disabled .rc-pagination-next:hover { - border-color: #d9d9d9; -} -.rc-pagination-disabled .rc-pagination-item:hover a, -.rc-pagination-disabled .rc-pagination-prev:hover a, -.rc-pagination-disabled .rc-pagination-next:hover a { - color: #d9d9d9; -} -.rc-pagination-disabled .rc-pagination-jump-prev, -.rc-pagination-disabled .rc-pagination-jump-next { - pointer-events: none; -} -.rc-pagination-options { - float: left; - margin-left: 15px; -} -.rc-pagination-options-size-changer { - float: left; - width: 80px; -} -.rc-pagination-options-quick-jumper { - float: left; - margin-left: 16px; - height: 28px; - line-height: 28px; -} -.rc-pagination-options-quick-jumper input { - margin: 0 8px; - box-sizing: border-box; - background-color: #fff; - border-radius: 6px; - border: 1px solid #d9d9d9; - outline: none; - padding: 3px 12px; - width: 50px; - height: 28px; -} -.rc-pagination-options-quick-jumper input:hover { - border-color: #2db7f5; -} -.rc-pagination-options-quick-jumper button { - display: inline-block; - margin: 0 8px; - font-weight: 500; - text-align: center; - -ms-touch-action: manipulation; - touch-action: manipulation; - cursor: pointer; - background-image: none; - border: 1px solid transparent; - white-space: nowrap; - padding: 0 15px; - font-size: 12px; - border-radius: 6px; - height: 28px; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); - position: relative; - color: rgba(0, 0, 0, 0.65); - background-color: #fff; - border-color: #d9d9d9; -} -.rc-pagination-options-quick-jumper button:hover, -.rc-pagination-options-quick-jumper button:active, -.rc-pagination-options-quick-jumper button:focus { - color: #2db7f5; - background-color: #fff; - border-color: #2db7f5; -} -.rc-pagination-simple .rc-pagination-prev, -.rc-pagination-simple .rc-pagination-next { - border: none; - height: 24px; - line-height: 24px; - margin: 0; - font-size: 18px; -} -.rc-pagination-simple .rc-pagination-simple-pager { - float: left; - margin-right: 8px; - list-style: none; -} -.rc-pagination-simple .rc-pagination-simple-pager .rc-pagination-slash { - margin: 0 10px; -} -.rc-pagination-simple .rc-pagination-simple-pager input { - margin: 0 8px; - box-sizing: border-box; - background-color: #fff; - border-radius: 6px; - border: 1px solid #d9d9d9; - outline: none; - padding: 5px 8px; - min-height: 20px; -} -.rc-pagination-simple .rc-pagination-simple-pager input:hover { - border-color: #2db7f5; -} -.rc-pagination-simple .rc-pagination-simple-pager button { - display: inline-block; - margin: 0 8px; - font-weight: 500; - text-align: center; - -ms-touch-action: manipulation; - touch-action: manipulation; - cursor: pointer; - background-image: none; - border: 1px solid transparent; - white-space: nowrap; - padding: 0 8px; - font-size: 12px; - border-radius: 6px; - height: 26px; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); - position: relative; - color: rgba(0, 0, 0, 0.65); - background-color: #fff; - border-color: #d9d9d9; -} -.rc-pagination-simple .rc-pagination-simple-pager button:hover, -.rc-pagination-simple .rc-pagination-simple-pager button:active, -.rc-pagination-simple .rc-pagination-simple-pager button:focus { - color: #2db7f5; - background-color: #fff; - border-color: #2db7f5; -} -@media only screen and (max-width: 1024px) { - .rc-pagination-item-after-jump-prev, - .rc-pagination-item-before-jump-next { - display: none; - } -} - -/*# sourceMappingURL=rc-pagination.min.css.map*/ diff --git a/dist/rc-pagination.min.css.map b/dist/rc-pagination.min.css.map deleted file mode 100644 index a83e1aa1..00000000 --- a/dist/rc-pagination.min.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./assets/index.less"],"names":[],"mappings":"AAaA;EACE;EACA;EACA;KAAA;MAAA;UAAA;EACA;CAZD;AAQD;EAOI;CAZH;AAeC;EACE;EACA;EACA;EACA;EACA;EACA;CAbH;AAgBC;EACE;EACA;EACA;EACA;EACA;EACA;CAdH;AAiBC;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAfH;AAIC;EAcI;EACA;CAfL;AAkBG;EACE;CAhBL;AAeG;EAGI;CAfP;AAmBG;EA/DF;CA+CD;AA7CC;EACE;CA+CH;AAhDC;EAGI;CAgDL;AAcG;EACE;EACA;CAZL;AAUG;EAKI;CAZP;AAeK;EAEI;CAdT;AAqBG;;EACE;EACA;EACA;EACA;EACA;EACA;CAlBL;AAsBK;;EACE;CAnBP;AA2BK;EACE;CAzBP;AAgCK;EACE;CA9BP;AAmCC;;EAEE;CAjCH;AAmCG;;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;CAjCL;AAcC;;;;EAwBI;EACA;CAhCL;AAoCK;;EACE;EACA;CAjCP;AA8BG;;;;EAQI;EACA;CAhCP;AAqCC;;;EACE;CAjCH;AAmCC;;;;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CA9BH;AAmCK;EACE;EACA;CAjCP;AAwCK;EACE;EACA;CAtCP;AA2CC;;EACE;EACA;CAxCH;AAsCC;;EAII;CAtCL;AAuCK;;EACE;CApCP;AAyCC;EACE;CAvCH;AAsCC;EAGI;CAtCL;AAmCC;;;EA5MA;CA8KD;AA5KC;;;EACE;CAgLH;AAjLC;;;EAGI;CAmLL;AAoBC;;EAcI;CA9BL;AAkCC;EACE;EACA;CAhCH;AAiCG;EACE;EACA;CA/BL;AAkCG;EACE;EACA;EACA;EACA;CAhCL;AA4BG;EAOI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAhCP;AAkCO;EACE;CAhCT;AAcG;EAuBI;EACA;EACA;EACA;EACA;MAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;KAAA;MAAA;UAAA;EACA;EACA;EACA;EACA;EACA;CAlCP;AAoCO;;;EACE;EACA;EACA;CAhCT;AAsCC;;EAEI;EACA;EACA;EACA;EACA;CApCL;AA8BC;EAUI;EACA;EACA;CArCL;AAyBC;EAeM;CArCP;AAsBC;EAmBM;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAtCP;AAwCO;EACE;CAtCT;AASC;EAkCM;EACA;EACA;EACA;EACA;MAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;KAAA;MAAA;UAAA;EACA;EACA;EACA;EACA;EACA;CAxCP;AA0CO;;;EACE;EACA;EACA;CAtCT;AA8CD;EAEI;;IAEE;GA7CH;CACF","file":"rc-pagination.min.css","sourcesContent":["@prefixClass: rc-pagination;\n\n.disabled-item() {\n cursor: not-allowed;\n\n &:hover {\n border-color: #d9d9d9;\n a {\n color: #d9d9d9;\n }\n }\n}\n\n.@{prefixClass} {\n font-size: 12px;\n font-family: 'Arial';\n user-select: none;\n padding: 0;\n\n > li {\n list-style: none;\n }\n\n &-total-text {\n float: left;\n height: 30px;\n line-height: 30px;\n list-style: none;\n padding: 0;\n margin: 0 8px 0 0;\n }\n\n &:after {\n content: \" \";\n display: block;\n height: 0;\n clear: both;\n overflow: hidden;\n visibility: hidden;\n }\n\n &-item {\n cursor: pointer;\n border-radius: 6px;\n min-width: 28px;\n height: 28px;\n line-height: 28px;\n text-align: center;\n list-style: none;\n float: left;\n border: 1px solid #d9d9d9;\n background-color: #fff;\n margin-right: 8px;\n\n a {\n text-decoration: none;\n color: #666;\n }\n\n &:hover {\n border-color: #2db7f5;\n a {\n color: #2db7f5;\n }\n }\n\n &-disabled {\n .disabled-item();\n }\n\n &-active {\n background-color: #2db7f5;\n border-color: #2db7f5;\n\n a {\n color: #fff;\n }\n\n &:hover {\n a {\n color: #fff;\n }\n }\n }\n }\n\n &-jump-prev, &-jump-next {\n &:after {\n content: \"•••\";\n display: block;\n letter-spacing: 2px;\n color: #ccc;\n font-size: 12px;\n margin-top: 1px;\n }\n\n &:hover {\n &:after {\n color: #2db7f5;\n }\n }\n\n }\n\n &-jump-prev {\n &:hover {\n &:after {\n content: \"«\";\n }\n }\n }\n\n &-jump-next {\n &:hover {\n &:after {\n content: \"»\";\n }\n }\n }\n \n &-jump-prev-custom-icon,\n &-jump-next-custom-icon {\n position: relative;\n\n &:after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n margin: auto;\n transition: all .2s;\n\n content: \"•••\";\n opacity: 1;\n display: block;\n letter-spacing: 2px;\n color: #ccc;\n font-size: 12px;\n margin-top: 1px;\n }\n\n .custom-icon-jump-prev,\n .custom-icon-jump-next {\n opacity: 0;\n transition: all .2s;\n }\n\n &:hover {\n &:after {\n opacity: 0;\n color: #ccc;\n }\n\n .custom-icon-jump-prev,\n .custom-icon-jump-next {\n opacity: 1;\n color: #2db7f5;\n }\n }\n }\n\n &-prev, &-jump-prev, &-jump-next {\n margin-right: 8px;\n }\n &-prev, &-next, &-jump-prev, &-jump-next {\n cursor: pointer;\n color: #666;\n font-size: 10px;\n border-radius: 6px;\n list-style: none;\n min-width: 28px;\n height: 28px;\n line-height: 28px;\n float: left;\n text-align: center;\n }\n\n &-prev {\n a {\n &:after {\n content: \"‹\";\n display: block;\n }\n }\n }\n\n &-next {\n a {\n &:after {\n content: \"›\";\n display: block;\n }\n }\n }\n\n &-prev, &-next {\n border: 1px solid #d9d9d9;\n font-size: 18px;\n a {\n color: #666;\n &:after {\n margin-top: -1px;\n }\n }\n }\n\n &-disabled {\n cursor: not-allowed;\n a {\n color: #ccc;\n }\n\n .@{prefixClass}-item,\n .@{prefixClass}-prev,\n .@{prefixClass}-next {\n .disabled-item();\n }\n\n .@{prefixClass}-jump-prev,\n .@{prefixClass}-jump-next {\n pointer-events: none;\n }\n }\n\n &-options {\n float: left;\n margin-left: 15px;\n &-size-changer {\n float: left;\n width: 80px;\n }\n\n &-quick-jumper {\n float: left;\n margin-left: 16px;\n height: 28px;\n line-height: 28px;\n\n input {\n margin: 0 8px;\n box-sizing: border-box;\n background-color: #fff;\n border-radius: 6px;\n border: 1px solid #d9d9d9;\n outline: none;\n padding: 3px 12px;\n width: 50px;\n height: 28px;\n\n &:hover {\n border-color: #2db7f5;\n }\n }\n\n button {\n display: inline-block;\n margin: 0 8px;\n font-weight: 500;\n text-align: center;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 0 15px;\n font-size: 12px;\n border-radius: 6px;\n height: 28px;\n user-select: none;\n transition: all .3s cubic-bezier(.645,.045,.355,1);\n position: relative;\n color: rgba(0,0,0,.65);\n background-color: #fff;\n border-color: #d9d9d9;\n\n &:hover, &:active, &:focus {\n color: #2db7f5;\n background-color: #fff;\n border-color: #2db7f5;\n }\n }\n }\n }\n\n &-simple {\n .@{prefixClass}-prev, .@{prefixClass}-next {\n border: none;\n height: 24px;\n line-height: 24px;\n margin: 0;\n font-size: 18px;\n }\n\n .@{prefixClass}-simple-pager {\n float: left;\n margin-right: 8px;\n list-style: none;\n\n .@{prefixClass}-slash {\n margin: 0 10px;\n }\n\n input {\n margin: 0 8px;\n box-sizing: border-box;\n background-color: #fff;\n border-radius: 6px;\n border: 1px solid #d9d9d9;\n outline: none;\n padding: 5px 8px;\n min-height: 20px;\n\n &:hover {\n border-color: #2db7f5;\n }\n }\n\n button {\n display: inline-block;\n margin: 0 8px;\n font-weight: 500;\n text-align: center;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 0 8px;\n font-size: 12px;\n border-radius: 6px;\n height: 26px;\n user-select: none;\n transition: all .3s cubic-bezier(.645,.045,.355,1);\n position: relative;\n color: rgba(0,0,0,.65);\n background-color: #fff;\n border-color: #d9d9d9;\n\n &:hover, &:active, &:focus {\n color: #2db7f5;\n background-color: #fff;\n border-color: #2db7f5;\n }\n }\n\n }\n }\n}\n\n@media only screen and (max-width: 1024px) {\n .@{prefixClass}-item {\n &-after-jump-prev,\n &-before-jump-next {\n display: none;\n }\n }\n}\n\n\n// WEBPACK FOOTER //\n// ./assets/index.less"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/rc-pagination.min.js b/dist/rc-pagination.min.js deleted file mode 100644 index be2f56f5..00000000 --- a/dist/rc-pagination.min.js +++ /dev/null @@ -1,2476 +0,0 @@ -!(function(e, t) { - 'object' == typeof exports && 'object' == typeof module - ? (module.exports = t(require('react'))) - : 'function' == typeof define && define.amd - ? define(['react'], t) - : 'object' == typeof exports - ? (exports['rc-pagination'] = t(require('react'))) - : (e['rc-pagination'] = t(e.React)); -})(this, function(e) { - return (function(e) { - function t(r) { - if (n[r]) return n[r].exports; - var o = (n[r] = { i: r, l: !1, exports: {} }); - return e[r].call(o.exports, o, o.exports, t), (o.l = !0), o.exports; - } - var n = {}; - return ( - (t.m = e), - (t.c = n), - (t.i = function(e) { - return e; - }), - (t.d = function(e, n, r) { - t.o(e, n) || - Object.defineProperty(e, n, { - configurable: !1, - enumerable: !0, - get: r, - }); - }), - (t.n = function(e) { - var n = - e && e.__esModule - ? function() { - return e.default; - } - : function() { - return e; - }; - return t.d(n, 'a', n), n; - }), - (t.o = function(e, t) { - return Object.prototype.hasOwnProperty.call(e, t); - }), - (t.p = ''), - t((t.s = 100)) - ); - })([ - function(e, t) { - var n = (e.exports = { version: '2.6.11' }); - 'number' == typeof __e && (__e = n); - }, - function(e, t, n) { - e.exports = !n(11)(function() { - return ( - 7 != - Object.defineProperty({}, 'a', { - get: function() { - return 7; - }, - }).a - ); - }); - }, - function(e, t) { - var n = (e.exports = - 'undefined' != typeof window && window.Math == Math - ? window - : 'undefined' != typeof self && self.Math == Math - ? self - : Function('return this')()); - 'number' == typeof __g && (__g = n); - }, - function(e, t) { - var n = {}.hasOwnProperty; - e.exports = function(e, t) { - return n.call(e, t); - }; - }, - function(e, t, n) { - var r = n(10), - o = n(44), - i = n(27), - a = Object.defineProperty; - t.f = n(1) - ? Object.defineProperty - : function(e, t, n) { - if ((r(e), (t = i(t, !0)), r(n), o)) - try { - return a(e, t, n); - } catch (e) {} - if ('get' in n || 'set' in n) - throw TypeError('Accessors not supported!'); - return 'value' in n && (e[t] = n.value), e; - }; - }, - function(e, t, n) { - var r = n(2), - o = n(0), - i = n(42), - a = n(6), - u = n(3), - s = function(e, t, n) { - var c, - l, - f, - p = e & s.F, - h = e & s.G, - d = e & s.S, - v = e & s.P, - m = e & s.B, - y = e & s.W, - g = h ? o : o[t] || (o[t] = {}), - b = g.prototype, - x = h ? r : d ? r[t] : (r[t] || {}).prototype; - h && (n = t); - for (c in n) - ((l = !p && x && void 0 !== x[c]) && u(g, c)) || - ((f = l ? x[c] : n[c]), - (g[c] = - h && 'function' != typeof x[c] - ? n[c] - : m && l - ? i(f, r) - : y && x[c] == f - ? (function(e) { - var t = function(t, n, r) { - if (this instanceof e) { - switch (arguments.length) { - case 0: - return new e(); - case 1: - return new e(t); - case 2: - return new e(t, n); - } - return new e(t, n, r); - } - return e.apply(this, arguments); - }; - return (t.prototype = e.prototype), t; - })(f) - : v && 'function' == typeof f - ? i(Function.call, f) - : f), - v && - (((g.virtual || (g.virtual = {}))[c] = f), - e & s.R && b && !b[c] && a(b, c, f))); - }; - (s.F = 1), - (s.G = 2), - (s.S = 4), - (s.P = 8), - (s.B = 16), - (s.W = 32), - (s.U = 64), - (s.R = 128), - (e.exports = s); - }, - function(e, t, n) { - var r = n(4), - o = n(15); - e.exports = n(1) - ? function(e, t, n) { - return r.f(e, t, o(1, n)); - } - : function(e, t, n) { - return (e[t] = n), e; - }; - }, - function(e, t) { - e.exports = function(e) { - return 'object' == typeof e ? null !== e : 'function' == typeof e; - }; - }, - function(e, t, n) { - var r = n(45), - o = n(17); - e.exports = function(e) { - return r(o(e)); - }; - }, - function(e, t, n) { - var r = n(24)('wks'), - o = n(16), - i = n(2).Symbol, - a = 'function' == typeof i; - (e.exports = function(e) { - return r[e] || (r[e] = (a && i[e]) || (a ? i : o)('Symbol.' + e)); - }).store = r; - }, - function(e, t, n) { - var r = n(7); - e.exports = function(e) { - if (!r(e)) throw TypeError(e + ' is not an object!'); - return e; - }; - }, - function(e, t) { - e.exports = function(e) { - try { - return !!e(); - } catch (e) { - return !0; - } - }; - }, - function(e, t) { - e.exports = !0; - }, - function(e, t, n) { - var r = n(49), - o = n(18); - e.exports = - Object.keys || - function(e) { - return r(e, o); - }; - }, - function(e, t) { - t.f = {}.propertyIsEnumerable; - }, - function(e, t) { - e.exports = function(e, t) { - return { - enumerable: !(1 & e), - configurable: !(2 & e), - writable: !(4 & e), - value: t, - }; - }; - }, - function(e, t) { - var n = 0, - r = Math.random(); - e.exports = function(e) { - return 'Symbol('.concat( - void 0 === e ? '' : e, - ')_', - (++n + r).toString(36), - ); - }; - }, - function(e, t) { - e.exports = function(e) { - if (void 0 == e) throw TypeError("Can't call method on " + e); - return e; - }; - }, - function(e, t) { - e.exports = 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'.split( - ',', - ); - }, - function(e, t) { - e.exports = {}; - }, - function(e, t, n) { - var r = n(10), - o = n(79), - i = n(18), - a = n(23)('IE_PROTO'), - u = function() {}, - s = function() { - var e, - t = n(43)('iframe'), - r = i.length; - for ( - t.style.display = 'none', - n(73).appendChild(t), - t.src = 'javascript:', - e = t.contentWindow.document, - e.open(), - e.write(''), - e.close(), - s = e.F; - r--; - - ) - delete s.prototype[i[r]]; - return s(); - }; - e.exports = - Object.create || - function(e, t) { - var n; - return ( - null !== e - ? ((u.prototype = r(e)), - (n = new u()), - (u.prototype = null), - (n[a] = e)) - : (n = s()), - void 0 === t ? n : o(n, t) - ); - }; - }, - function(e, t) { - t.f = Object.getOwnPropertySymbols; - }, - function(e, t, n) { - var r = n(4).f, - o = n(3), - i = n(9)('toStringTag'); - e.exports = function(e, t, n) { - e && - !o((e = n ? e : e.prototype), i) && - r(e, i, { configurable: !0, value: t }); - }; - }, - function(e, t, n) { - var r = n(24)('keys'), - o = n(16); - e.exports = function(e) { - return r[e] || (r[e] = o(e)); - }; - }, - function(e, t, n) { - var r = n(0), - o = n(2), - i = o['__core-js_shared__'] || (o['__core-js_shared__'] = {}); - (e.exports = function(e, t) { - return i[e] || (i[e] = void 0 !== t ? t : {}); - })('versions', []).push({ - version: r.version, - mode: n(12) ? 'pure' : 'global', - copyright: '© 2019 Denis Pushkarev (zloirock.ru)', - }); - }, - function(e, t) { - var n = Math.ceil, - r = Math.floor; - e.exports = function(e) { - return isNaN((e = +e)) ? 0 : (e > 0 ? r : n)(e); - }; - }, - function(e, t, n) { - var r = n(17); - e.exports = function(e) { - return Object(r(e)); - }; - }, - function(e, t, n) { - var r = n(7); - e.exports = function(e, t) { - if (!r(e)) return e; - var n, o; - if (t && 'function' == typeof (n = e.toString) && !r((o = n.call(e)))) - return o; - if ('function' == typeof (n = e.valueOf) && !r((o = n.call(e)))) - return o; - if (!t && 'function' == typeof (n = e.toString) && !r((o = n.call(e)))) - return o; - throw TypeError("Can't convert object to primitive value"); - }; - }, - function(e, t, n) { - var r = n(2), - o = n(0), - i = n(12), - a = n(29), - u = n(4).f; - e.exports = function(e) { - var t = o.Symbol || (o.Symbol = i ? {} : r.Symbol || {}); - '_' == e.charAt(0) || e in t || u(t, e, { value: a.f(e) }); - }; - }, - function(e, t, n) { - t.f = n(9); - }, - function(e, t, n) { - e.exports = n(97)(); - }, - function(t, n) { - t.exports = e; - }, - function(e, t, n) { - 'use strict'; - t.a = { - ZERO: 48, - NINE: 57, - NUMPAD_ZERO: 96, - NUMPAD_NINE: 105, - BACKSPACE: 8, - DELETE: 46, - ENTER: 13, - ARROW_UP: 38, - ARROW_DOWN: 40, - }; - }, - function(e, t, n) { - e.exports = { default: n(65), __esModule: !0 }; - }, - function(e, t, n) { - 'use strict'; - (t.__esModule = !0), - (t.default = function(e, t) { - if (!(e instanceof t)) - throw new TypeError('Cannot call a class as a function'); - }); - }, - function(e, t, n) { - 'use strict'; - t.__esModule = !0; - var r = n(33), - o = (function(e) { - return e && e.__esModule ? e : { default: e }; - })(r); - t.default = (function() { - function e(e, t) { - for (var n = 0; n < t.length; n++) { - var r = t[n]; - (r.enumerable = r.enumerable || !1), - (r.configurable = !0), - 'value' in r && (r.writable = !0), - (0, o.default)(e, r.key, r); - } - } - return function(t, n, r) { - return n && e(t.prototype, n), r && e(t, r), t; - }; - })(); - }, - function(e, t, n) { - 'use strict'; - t.__esModule = !0; - var r = n(33), - o = (function(e) { - return e && e.__esModule ? e : { default: e }; - })(r); - t.default = function(e, t, n) { - return ( - t in e - ? (0, o.default)(e, t, { - value: n, - enumerable: !0, - configurable: !0, - writable: !0, - }) - : (e[t] = n), - e - ); - }; - }, - function(e, t, n) { - 'use strict'; - function r(e) { - return e && e.__esModule ? e : { default: e }; - } - t.__esModule = !0; - var o = n(59), - i = r(o), - a = n(58), - u = r(a), - s = n(39), - c = r(s); - t.default = function(e, t) { - if ('function' != typeof t && null !== t) - throw new TypeError( - 'Super expression must either be null or a function, not ' + - (void 0 === t ? 'undefined' : (0, c.default)(t)), - ); - (e.prototype = (0, u.default)(t && t.prototype, { - constructor: { - value: e, - enumerable: !1, - writable: !0, - configurable: !0, - }, - })), - t && (i.default ? (0, i.default)(e, t) : (e.__proto__ = t)); - }; - }, - function(e, t, n) { - 'use strict'; - t.__esModule = !0; - var r = n(39), - o = (function(e) { - return e && e.__esModule ? e : { default: e }; - })(r); - t.default = function(e, t) { - if (!e) - throw new ReferenceError( - "this hasn't been initialised - super() hasn't been called", - ); - return !t || - ('object' !== (void 0 === t ? 'undefined' : (0, o.default)(t)) && - 'function' != typeof t) - ? e - : t; - }; - }, - function(e, t, n) { - 'use strict'; - function r(e) { - return e && e.__esModule ? e : { default: e }; - } - t.__esModule = !0; - var o = n(61), - i = r(o), - a = n(60), - u = r(a), - s = - 'function' == typeof u.default && 'symbol' == typeof i.default - ? function(e) { - return typeof e; - } - : function(e) { - return e && - 'function' == typeof u.default && - e.constructor === u.default && - e !== u.default.prototype - ? 'symbol' - : typeof e; - }; - t.default = - 'function' == typeof u.default && 'symbol' === s(i.default) - ? function(e) { - return void 0 === e ? 'undefined' : s(e); - } - : function(e) { - return e && - 'function' == typeof u.default && - e.constructor === u.default && - e !== u.default.prototype - ? 'symbol' - : void 0 === e - ? 'undefined' - : s(e); - }; - }, - function(e, t, n) { - var r, o; - !(function() { - 'use strict'; - function n() { - for (var e = [], t = 0; t < arguments.length; t++) { - var r = arguments[t]; - if (r) { - var o = typeof r; - if ('string' === o || 'number' === o) e.push(r); - else if (Array.isArray(r) && r.length) { - var a = n.apply(null, r); - a && e.push(a); - } else if ('object' === o) - for (var u in r) i.call(r, u) && r[u] && e.push(u); - } - } - return e.join(' '); - } - var i = {}.hasOwnProperty; - void 0 !== e && e.exports - ? ((n.default = n), (e.exports = n)) - : ((r = []), - void 0 !== - (o = function() { - return n; - }.apply(t, r)) && (e.exports = o)); - })(); - }, - function(e, t) { - var n = {}.toString; - e.exports = function(e) { - return n.call(e).slice(8, -1); - }; - }, - function(e, t, n) { - var r = n(69); - e.exports = function(e, t, n) { - if ((r(e), void 0 === t)) return e; - switch (n) { - case 1: - return function(n) { - return e.call(t, n); - }; - case 2: - return function(n, r) { - return e.call(t, n, r); - }; - case 3: - return function(n, r, o) { - return e.call(t, n, r, o); - }; - } - return function() { - return e.apply(t, arguments); - }; - }; - }, - function(e, t, n) { - var r = n(7), - o = n(2).document, - i = r(o) && r(o.createElement); - e.exports = function(e) { - return i ? o.createElement(e) : {}; - }; - }, - function(e, t, n) { - e.exports = - !n(1) && - !n(11)(function() { - return ( - 7 != - Object.defineProperty(n(43)('div'), 'a', { - get: function() { - return 7; - }, - }).a - ); - }); - }, - function(e, t, n) { - var r = n(41); - e.exports = Object('z').propertyIsEnumerable(0) - ? Object - : function(e) { - return 'String' == r(e) ? e.split('') : Object(e); - }; - }, - function(e, t, n) { - 'use strict'; - var r = n(12), - o = n(5), - i = n(50), - a = n(6), - u = n(19), - s = n(75), - c = n(22), - l = n(81), - f = n(9)('iterator'), - p = !([].keys && 'next' in [].keys()), - h = function() { - return this; - }; - e.exports = function(e, t, n, d, v, m, y) { - s(n, t, d); - var g, - b, - x, - _ = function(e) { - if (!p && e in w) return w[e]; - switch (e) { - case 'keys': - case 'values': - return function() { - return new n(this, e); - }; - } - return function() { - return new n(this, e); - }; - }, - S = t + ' Iterator', - P = 'values' == v, - O = !1, - w = e.prototype, - E = w[f] || w['@@iterator'] || (v && w[v]), - C = E || _(v), - N = v ? (P ? _('entries') : C) : void 0, - j = 'Array' == t ? w.entries || E : E; - if ( - (j && - (x = l(j.call(new e()))) !== Object.prototype && - x.next && - (c(x, S, !0), r || 'function' == typeof x[f] || a(x, f, h)), - P && - E && - 'values' !== E.name && - ((O = !0), - (C = function() { - return E.call(this); - })), - (r && !y) || (!p && !O && w[f]) || a(w, f, C), - (u[t] = C), - (u[S] = h), - v) - ) - if ( - ((g = { - values: P ? C : _('values'), - keys: m ? C : _('keys'), - entries: N, - }), - y) - ) - for (b in g) b in w || i(w, b, g[b]); - else o(o.P + o.F * (p || O), t, g); - return g; - }; - }, - function(e, t, n) { - var r = n(14), - o = n(15), - i = n(8), - a = n(27), - u = n(3), - s = n(44), - c = Object.getOwnPropertyDescriptor; - t.f = n(1) - ? c - : function(e, t) { - if (((e = i(e)), (t = a(t, !0)), s)) - try { - return c(e, t); - } catch (e) {} - if (u(e, t)) return o(!r.f.call(e, t), e[t]); - }; - }, - function(e, t, n) { - var r = n(49), - o = n(18).concat('length', 'prototype'); - t.f = - Object.getOwnPropertyNames || - function(e) { - return r(e, o); - }; - }, - function(e, t, n) { - var r = n(3), - o = n(8), - i = n(71)(!1), - a = n(23)('IE_PROTO'); - e.exports = function(e, t) { - var n, - u = o(e), - s = 0, - c = []; - for (n in u) n != a && r(u, n) && c.push(n); - for (; t.length > s; ) r(u, (n = t[s++])) && (~i(c, n) || c.push(n)); - return c; - }; - }, - function(e, t, n) { - e.exports = n(6); - }, - function(e, t, n) { - 'use strict'; - Object.defineProperty(t, '__esModule', { value: !0 }); - var r = n(55); - n.d(t, 'default', function() { - return r.a; - }); - }, - function(e, t) {}, - function(e, t, n) { - 'use strict'; - var r = n(34), - o = n.n(r), - i = n(35), - a = n.n(i), - u = n(38), - s = n.n(u), - c = n(37), - l = n.n(c), - f = n(31), - p = n.n(f), - h = n(30), - d = n.n(h), - v = n(32), - m = (function(e) { - function t() { - var e, n, r, i; - o()(this, t); - for (var a = arguments.length, u = Array(a), c = 0; c < a; c++) - u[c] = arguments[c]; - return ( - (n = r = s()( - this, - (e = t.__proto__ || Object.getPrototypeOf(t)).call.apply( - e, - [this].concat(u), - ), - )), - (r.state = { goInputText: '' }), - (r.buildOptionText = function(e) { - return e + ' ' + r.props.locale.items_per_page; - }), - (r.changeSize = function(e) { - r.props.changeSize(Number(e)); - }), - (r.handleChange = function(e) { - r.setState({ goInputText: e.target.value }); - }), - (r.handleBlur = function(e) { - var t = r.props, - n = t.goButton, - o = t.quickGo, - i = t.rootPrefixCls; - n || - (e.relatedTarget && - (e.relatedTarget.className.indexOf(i + '-prev') >= 0 || - e.relatedTarget.className.indexOf(i + '-next') >= 0)) || - o(r.getValidValue()); - }), - (r.go = function(e) { - '' !== r.state.goInputText && - ((e.keyCode !== v.a.ENTER && 'click' !== e.type) || - (r.setState({ goInputText: '' }), - r.props.quickGo(r.getValidValue()))); - }), - (i = n), - s()(r, i) - ); - } - return ( - l()(t, e), - a()(t, [ - { - key: 'getValidValue', - value: function() { - var e = this.state, - t = e.goInputText, - n = e.current; - return !t || isNaN(t) ? n : Number(t); - }, - }, - { - key: 'render', - value: function() { - var e = this, - t = this.props, - n = t.pageSize, - r = t.pageSizeOptions, - o = t.locale, - i = t.rootPrefixCls, - a = t.changeSize, - u = t.quickGo, - s = t.goButton, - c = t.selectComponentClass, - l = t.buildOptionText, - f = t.selectPrefixCls, - h = t.disabled, - d = this.state.goInputText, - v = i + '-options', - m = c, - y = null, - g = null, - b = null; - if (!a && !u) return null; - if (a && m) { - var x = r.map(function(t, n) { - return p.a.createElement( - m.Option, - { key: n, value: t }, - (l || e.buildOptionText)(t), - ); - }); - y = p.a.createElement( - m, - { - disabled: h, - prefixCls: f, - showSearch: !1, - className: v + '-size-changer', - optionLabelProp: 'children', - dropdownMatchSelectWidth: !1, - value: (n || r[0]).toString(), - onChange: this.changeSize, - getPopupContainer: function(e) { - return e.parentNode; - }, - }, - x, - ); - } - return ( - u && - (s && - (b = - 'boolean' == typeof s - ? p.a.createElement( - 'button', - { - type: 'button', - onClick: this.go, - onKeyUp: this.go, - disabled: h, - }, - o.jump_to_confirm, - ) - : p.a.createElement( - 'span', - { onClick: this.go, onKeyUp: this.go }, - s, - )), - (g = p.a.createElement( - 'div', - { className: v + '-quick-jumper' }, - o.jump_to, - p.a.createElement('input', { - disabled: h, - type: 'text', - value: d, - onChange: this.handleChange, - onKeyUp: this.go, - onBlur: this.handleBlur, - }), - o.page, - b, - ))), - p.a.createElement('li', { className: '' + v }, y, g) - ); - }, - }, - ]), - t - ); - })(p.a.Component); - (m.propTypes = { - disabled: d.a.bool, - changeSize: d.a.func, - quickGo: d.a.func, - selectComponentClass: d.a.func, - current: d.a.number, - pageSizeOptions: d.a.arrayOf(d.a.string), - pageSize: d.a.number, - buildOptionText: d.a.func, - locale: d.a.object, - rootPrefixCls: d.a.string, - selectPrefixCls: d.a.string, - goButton: d.a.oneOfType([d.a.bool, d.a.node]), - }), - (m.defaultProps = { pageSizeOptions: ['10', '20', '30', '40'] }), - (t.a = m); - }, - function(e, t, n) { - 'use strict'; - var r = n(36), - o = n.n(r), - i = n(31), - a = n.n(i), - u = n(30), - s = n.n(u), - c = n(40), - l = n.n(c), - f = function(e) { - var t, - n = e.rootPrefixCls + '-item', - r = l()( - n, - n + '-' + e.page, - ((t = {}), - o()(t, n + '-active', e.active), - o()(t, e.className, !!e.className), - o()(t, n + '-disabled', !e.page), - t), - ), - i = function() { - e.onClick(e.page); - }, - u = function(t) { - e.onKeyPress(t, e.onClick, e.page); - }; - return a.a.createElement( - 'li', - { - title: e.showTitle ? e.page : null, - className: r, - onClick: i, - onKeyPress: u, - tabIndex: '0', - }, - e.itemRender(e.page, 'page', a.a.createElement('a', null, e.page)), - ); - }; - (f.propTypes = { - page: s.a.number, - active: s.a.bool, - last: s.a.bool, - locale: s.a.object, - className: s.a.string, - showTitle: s.a.bool, - rootPrefixCls: s.a.string, - onClick: s.a.func, - onKeyPress: s.a.func, - itemRender: s.a.func, - }), - (t.a = f); - }, - function(e, t, n) { - 'use strict'; - function r() {} - function o(e) { - return 'number' == typeof e && isFinite(e) && Math.floor(e) === e; - } - function i(e, t, n) { - return n; - } - function a(e, t, n) { - var r = e; - return ( - void 0 === r && (r = t.pageSize), Math.floor((n.total - 1) / r) + 1 - ); - } - var u = n(36), - s = n.n(u), - c = n(62), - l = n.n(c), - f = n(34), - p = n.n(f), - h = n(35), - d = n.n(h), - v = n(38), - m = n.n(v), - y = n(37), - g = n.n(y), - b = n(31), - x = n.n(b), - _ = n(40), - S = n.n(_), - P = n(30), - O = n.n(P), - w = n(54), - E = n(53), - C = n(32), - N = n(56), - j = n(99), - T = (function(e) { - function t(e) { - p()(this, t); - var n = m()( - this, - (t.__proto__ || Object.getPrototypeOf(t)).call(this, e), - ); - I.call(n); - var o = e.onChange !== r; - 'current' in e && - !o && - console.warn( - 'Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.', - ); - var i = e.defaultCurrent; - 'current' in e && (i = e.current); - var u = e.defaultPageSize; - return ( - 'pageSize' in e && (u = e.pageSize), - (i = Math.min(i, a(u, void 0, e))), - (n.state = { current: i, currentInputValue: i, pageSize: u }), - n - ); - } - return ( - g()(t, e), - d()( - t, - [ - { - key: 'componentDidUpdate', - value: function(e, t) { - var n = this.props.prefixCls; - if ( - t.current !== this.state.current && - this.paginationNode - ) { - var r = this.paginationNode.querySelector( - '.' + n + '-item-' + t.current, - ); - r && document.activeElement === r && r.blur(); - } - }, - }, - { - key: 'getValidValue', - value: function(e) { - var t = e.target.value, - n = a(void 0, this.state, this.props), - r = this.state.currentInputValue; - return '' === t - ? t - : isNaN(Number(t)) - ? r - : t >= n - ? n - : Number(t); - }, - }, - { - key: 'renderPrev', - value: function(e) { - var t = this.props, - r = t.prevIcon, - o = t.itemRender, - i = o(e, 'prev', this.getItemIcon(r)), - a = !this.hasPrev(); - return n.i(b.isValidElement)(i) - ? n.i(b.cloneElement)(i, { disabled: a }) - : i; - }, - }, - { - key: 'renderNext', - value: function(e) { - var t = this.props, - r = t.nextIcon, - o = t.itemRender, - i = o(e, 'next', this.getItemIcon(r)), - a = !this.hasNext(); - return n.i(b.isValidElement)(i) - ? n.i(b.cloneElement)(i, { disabled: a }) - : i; - }, - }, - { - key: 'render', - value: function() { - var e = this.props, - t = e.prefixCls, - n = e.className, - r = e.disabled; - if ( - !0 === this.props.hideOnSinglePage && - this.props.total <= this.state.pageSize - ) - return null; - var o = this.props, - i = o.locale, - u = a(void 0, this.state, this.props), - c = [], - f = null, - p = null, - h = null, - d = null, - v = null, - m = o.showQuickJumper && o.showQuickJumper.goButton, - y = o.showLessItems ? 1 : 2, - g = this.state, - b = g.current, - _ = g.pageSize, - P = b - 1 > 0 ? b - 1 : 0, - O = b + 1 < u ? b + 1 : u, - C = Object.keys(o).reduce(function(e, t) { - return ( - ('data-' !== t.substr(0, 5) && - 'aria-' !== t.substr(0, 5) && - 'role' !== t) || - (e[t] = o[t]), - e - ); - }, {}); - if (o.simple) - return ( - m && - ((v = - 'boolean' == typeof m - ? x.a.createElement( - 'button', - { - type: 'button', - onClick: this.handleGoTO, - onKeyUp: this.handleGoTO, - }, - i.jump_to_confirm, - ) - : x.a.createElement( - 'span', - { - onClick: this.handleGoTO, - onKeyUp: this.handleGoTO, - }, - m, - )), - (v = x.a.createElement( - 'li', - { - title: o.showTitle - ? '' + i.jump_to + this.state.current + '/' + u - : null, - className: t + '-simple-pager', - }, - v, - ))), - x.a.createElement( - 'ul', - l()( - { - className: t + ' ' + t + '-simple ' + o.className, - style: o.style, - ref: this.savePaginationNode, - }, - C, - ), - x.a.createElement( - 'li', - { - title: o.showTitle ? i.prev_page : null, - onClick: this.prev, - tabIndex: this.hasPrev() ? 0 : null, - onKeyPress: this.runIfEnterPrev, - className: - (this.hasPrev() ? '' : t + '-disabled') + - ' ' + - t + - '-prev', - 'aria-disabled': !this.hasPrev(), - }, - this.renderPrev(P), - ), - x.a.createElement( - 'li', - { - title: o.showTitle - ? this.state.current + '/' + u - : null, - className: t + '-simple-pager', - }, - x.a.createElement('input', { - type: 'text', - value: this.state.currentInputValue, - onKeyDown: this.handleKeyDown, - onKeyUp: this.handleKeyUp, - onChange: this.handleKeyUp, - size: '3', - }), - x.a.createElement( - 'span', - { className: t + '-slash' }, - '/', - ), - u, - ), - x.a.createElement( - 'li', - { - title: o.showTitle ? i.next_page : null, - onClick: this.next, - tabIndex: this.hasPrev() ? 0 : null, - onKeyPress: this.runIfEnterNext, - className: - (this.hasNext() ? '' : t + '-disabled') + - ' ' + - t + - '-next', - 'aria-disabled': !this.hasNext(), - }, - this.renderNext(O), - ), - v, - ) - ); - if (u <= 5 + 2 * y) { - var N = { - locale: i, - rootPrefixCls: t, - onClick: this.handleChange, - onKeyPress: this.runIfEnter, - showTitle: o.showTitle, - itemRender: o.itemRender, - }; - u || - c.push( - x.a.createElement( - w.a, - l()({}, N, { - key: 'noPager', - page: u, - className: t + '-disabled', - }), - ), - ); - for (var j = 1; j <= u; j++) { - var T = this.state.current === j; - c.push( - x.a.createElement( - w.a, - l()({}, N, { key: j, page: j, active: T }), - ), - ); - } - } else { - var I = o.showLessItems ? i.prev_3 : i.prev_5, - k = o.showLessItems ? i.next_3 : i.next_5; - if (o.showPrevNextJumpers) { - var M = t + '-jump-prev'; - o.jumpPrevIcon && - (M += ' ' + t + '-jump-prev-custom-icon'), - (f = x.a.createElement( - 'li', - { - title: o.showTitle ? I : null, - key: 'prev', - onClick: this.jumpPrev, - tabIndex: '0', - onKeyPress: this.runIfEnterJumpPrev, - className: M, - }, - o.itemRender( - this.getJumpPrevPage(), - 'jump-prev', - this.getItemIcon(o.jumpPrevIcon), - ), - )); - var R = t + '-jump-next'; - o.jumpNextIcon && - (R += ' ' + t + '-jump-next-custom-icon'), - (p = x.a.createElement( - 'li', - { - title: o.showTitle ? k : null, - key: 'next', - tabIndex: '0', - onClick: this.jumpNext, - onKeyPress: this.runIfEnterJumpNext, - className: R, - }, - o.itemRender( - this.getJumpNextPage(), - 'jump-next', - this.getItemIcon(o.jumpNextIcon), - ), - )); - } - (d = x.a.createElement(w.a, { - locale: o.locale, - last: !0, - rootPrefixCls: t, - onClick: this.handleChange, - onKeyPress: this.runIfEnter, - key: u, - page: u, - active: !1, - showTitle: o.showTitle, - itemRender: o.itemRender, - })), - (h = x.a.createElement(w.a, { - locale: o.locale, - rootPrefixCls: t, - onClick: this.handleChange, - onKeyPress: this.runIfEnter, - key: 1, - page: 1, - active: !1, - showTitle: o.showTitle, - itemRender: o.itemRender, - })); - var z = Math.max(1, b - y), - A = Math.min(b + y, u); - b - 1 <= y && (A = 1 + 2 * y), - u - b <= y && (z = u - 2 * y); - for (var L = z; L <= A; L++) { - var D = b === L; - c.push( - x.a.createElement(w.a, { - locale: o.locale, - rootPrefixCls: t, - onClick: this.handleChange, - onKeyPress: this.runIfEnter, - key: L, - page: L, - active: D, - showTitle: o.showTitle, - itemRender: o.itemRender, - }), - ); - } - b - 1 >= 2 * y && - 3 !== b && - ((c[0] = x.a.cloneElement(c[0], { - className: t + '-item-after-jump-prev', - })), - c.unshift(f)), - u - b >= 2 * y && - b !== u - 2 && - ((c[c.length - 1] = x.a.cloneElement( - c[c.length - 1], - { className: t + '-item-before-jump-next' }, - )), - c.push(p)), - 1 !== z && c.unshift(h), - A !== u && c.push(d); - } - var U = null; - o.showTotal && - (U = x.a.createElement( - 'li', - { className: t + '-total-text' }, - o.showTotal(o.total, [ - 0 === o.total ? 0 : (b - 1) * _ + 1, - b * _ > o.total ? o.total : b * _, - ]), - )); - var W = !this.hasPrev() || !u, - F = !this.hasNext() || !u; - return x.a.createElement( - 'ul', - l()( - { - className: S()(t, n, s()({}, t + '-disabled', r)), - style: o.style, - unselectable: 'unselectable', - ref: this.savePaginationNode, - }, - C, - ), - U, - x.a.createElement( - 'li', - { - title: o.showTitle ? i.prev_page : null, - onClick: this.prev, - tabIndex: W ? null : 0, - onKeyPress: this.runIfEnterPrev, - className: - (W ? t + '-disabled' : '') + ' ' + t + '-prev', - 'aria-disabled': W, - }, - this.renderPrev(P), - ), - c, - x.a.createElement( - 'li', - { - title: o.showTitle ? i.next_page : null, - onClick: this.next, - tabIndex: F ? null : 0, - onKeyPress: this.runIfEnterNext, - className: - (F ? t + '-disabled' : '') + ' ' + t + '-next', - 'aria-disabled': F, - }, - this.renderNext(O), - ), - x.a.createElement(E.a, { - disabled: r, - locale: o.locale, - rootPrefixCls: t, - selectComponentClass: o.selectComponentClass, - selectPrefixCls: o.selectPrefixCls, - changeSize: this.props.showSizeChanger - ? this.changePageSize - : null, - current: this.state.current, - pageSize: this.state.pageSize, - pageSizeOptions: this.props.pageSizeOptions, - quickGo: this.shouldDisplayQuickJumper() - ? this.handleChange - : null, - goButton: m, - }), - ); - }, - }, - ], - [ - { - key: 'getDerivedStateFromProps', - value: function(e, t) { - var n = {}; - if ( - ('current' in e && - ((n.current = e.current), - e.current !== t.current && - (n.currentInputValue = n.current)), - 'pageSize' in e && e.pageSize !== t.pageSize) - ) { - var r = t.current, - o = a(e.pageSize, t, e); - (r = r > o ? o : r), - 'current' in e || - ((n.current = r), (n.currentInputValue = r)), - (n.pageSize = e.pageSize); - } - return n; - }, - }, - ], - ), - t - ); - })(x.a.Component); - (T.propTypes = { - disabled: O.a.bool, - prefixCls: O.a.string, - className: O.a.string, - current: O.a.number, - defaultCurrent: O.a.number, - total: O.a.number, - pageSize: O.a.number, - defaultPageSize: O.a.number, - onChange: O.a.func, - hideOnSinglePage: O.a.bool, - showSizeChanger: O.a.bool, - showLessItems: O.a.bool, - onShowSizeChange: O.a.func, - selectComponentClass: O.a.func, - showPrevNextJumpers: O.a.bool, - showQuickJumper: O.a.oneOfType([O.a.bool, O.a.object]), - showTitle: O.a.bool, - pageSizeOptions: O.a.arrayOf(O.a.string), - showTotal: O.a.func, - locale: O.a.object, - style: O.a.object, - itemRender: O.a.func, - prevIcon: O.a.oneOfType([O.a.func, O.a.node]), - nextIcon: O.a.oneOfType([O.a.func, O.a.node]), - jumpPrevIcon: O.a.oneOfType([O.a.func, O.a.node]), - jumpNextIcon: O.a.oneOfType([O.a.func, O.a.node]), - }), - (T.defaultProps = { - defaultCurrent: 1, - total: 0, - defaultPageSize: 10, - onChange: r, - className: '', - selectPrefixCls: 'rc-select', - prefixCls: 'rc-pagination', - selectComponentClass: null, - hideOnSinglePage: !1, - showPrevNextJumpers: !0, - showQuickJumper: !1, - showSizeChanger: !1, - showLessItems: !1, - showTitle: !0, - onShowSizeChange: r, - locale: N.a, - style: {}, - itemRender: i, - }); - var I = function() { - var e = this; - (this.getJumpPrevPage = function() { - return Math.max(1, e.state.current - (e.props.showLessItems ? 3 : 5)); - }), - (this.getJumpNextPage = function() { - return Math.min( - a(void 0, e.state, e.props), - e.state.current + (e.props.showLessItems ? 3 : 5), - ); - }), - (this.getItemIcon = function(t) { - var n = e.props.prefixCls, - r = t || x.a.createElement('a', { className: n + '-item-link' }); - return ( - 'function' == typeof t && - (r = x.a.createElement(t, l()({}, e.props))), - r - ); - }), - (this.savePaginationNode = function(t) { - e.paginationNode = t; - }), - (this.isValid = function(t) { - return o(t) && t !== e.state.current; - }), - (this.shouldDisplayQuickJumper = function() { - var t = e.props, - n = t.showQuickJumper, - r = t.pageSize; - return !(t.total <= r) && n; - }), - (this.handleKeyDown = function(e) { - (e.keyCode !== C.a.ARROW_UP && e.keyCode !== C.a.ARROW_DOWN) || - e.preventDefault(); - }), - (this.handleKeyUp = function(t) { - var n = e.getValidValue(t); - n !== e.state.currentInputValue && - e.setState({ currentInputValue: n }), - t.keyCode === C.a.ENTER - ? e.handleChange(n) - : t.keyCode === C.a.ARROW_UP - ? e.handleChange(n - 1) - : t.keyCode === C.a.ARROW_DOWN && e.handleChange(n + 1); - }), - (this.changePageSize = function(t) { - var n = e.state.current, - r = a(t, e.state, e.props); - (n = n > r ? r : n), - 0 === r && (n = e.state.current), - 'number' == typeof t && - ('pageSize' in e.props || e.setState({ pageSize: t }), - 'current' in e.props || - e.setState({ current: n, currentInputValue: n })), - e.props.onShowSizeChange(n, t); - }), - (this.handleChange = function(t) { - var n = e.props.disabled, - r = t; - if (e.isValid(r) && !n) { - var o = a(void 0, e.state, e.props); - r > o ? (r = o) : r < 1 && (r = 1), - 'current' in e.props || - e.setState({ current: r, currentInputValue: r }); - var i = e.state.pageSize; - return e.props.onChange(r, i), r; - } - return e.state.current; - }), - (this.prev = function() { - e.hasPrev() && e.handleChange(e.state.current - 1); - }), - (this.next = function() { - e.hasNext() && e.handleChange(e.state.current + 1); - }), - (this.jumpPrev = function() { - e.handleChange(e.getJumpPrevPage()); - }), - (this.jumpNext = function() { - e.handleChange(e.getJumpNextPage()); - }), - (this.hasPrev = function() { - return e.state.current > 1; - }), - (this.hasNext = function() { - return e.state.current < a(void 0, e.state, e.props); - }), - (this.runIfEnter = function(e, t) { - for ( - var n = arguments.length, r = Array(n > 2 ? n - 2 : 0), o = 2; - o < n; - o++ - ) - r[o - 2] = arguments[o]; - ('Enter' !== e.key && 13 !== e.charCode) || t.apply(void 0, r); - }), - (this.runIfEnterPrev = function(t) { - e.runIfEnter(t, e.prev); - }), - (this.runIfEnterNext = function(t) { - e.runIfEnter(t, e.next); - }), - (this.runIfEnterJumpPrev = function(t) { - e.runIfEnter(t, e.jumpPrev); - }), - (this.runIfEnterJumpNext = function(t) { - e.runIfEnter(t, e.jumpNext); - }), - (this.handleGoTO = function(t) { - (t.keyCode !== C.a.ENTER && 'click' !== t.type) || - e.handleChange(e.state.currentInputValue); - }); - }; - n.i(j.a)(T), (t.a = T); - }, - function(e, t, n) { - 'use strict'; - t.a = { - items_per_page: '条/页', - jump_to: '跳至', - jump_to_confirm: '确定', - page: '页', - prev_page: '上一页', - next_page: '下一页', - prev_5: '向前 5 页', - next_5: '向后 5 页', - prev_3: '向前 3 页', - next_3: '向后 3 页', - }; - }, - function(e, t, n) { - e.exports = { default: n(63), __esModule: !0 }; - }, - function(e, t, n) { - e.exports = { default: n(64), __esModule: !0 }; - }, - function(e, t, n) { - e.exports = { default: n(66), __esModule: !0 }; - }, - function(e, t, n) { - e.exports = { default: n(67), __esModule: !0 }; - }, - function(e, t, n) { - e.exports = { default: n(68), __esModule: !0 }; - }, - function(e, t, n) { - 'use strict'; - t.__esModule = !0; - var r = n(57), - o = (function(e) { - return e && e.__esModule ? e : { default: e }; - })(r); - t.default = - o.default || - function(e) { - for (var t = 1; t < arguments.length; t++) { - var n = arguments[t]; - for (var r in n) - Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]); - } - return e; - }; - }, - function(e, t, n) { - n(87), (e.exports = n(0).Object.assign); - }, - function(e, t, n) { - n(88); - var r = n(0).Object; - e.exports = function(e, t) { - return r.create(e, t); - }; - }, - function(e, t, n) { - n(89); - var r = n(0).Object; - e.exports = function(e, t, n) { - return r.defineProperty(e, t, n); - }; - }, - function(e, t, n) { - n(90), (e.exports = n(0).Object.setPrototypeOf); - }, - function(e, t, n) { - n(93), n(91), n(94), n(95), (e.exports = n(0).Symbol); - }, - function(e, t, n) { - n(92), n(96), (e.exports = n(29).f('iterator')); - }, - function(e, t) { - e.exports = function(e) { - if ('function' != typeof e) throw TypeError(e + ' is not a function!'); - return e; - }; - }, - function(e, t) { - e.exports = function() {}; - }, - function(e, t, n) { - var r = n(8), - o = n(85), - i = n(84); - e.exports = function(e) { - return function(t, n, a) { - var u, - s = r(t), - c = o(s.length), - l = i(a, c); - if (e && n != n) { - for (; c > l; ) if ((u = s[l++]) != u) return !0; - } else - for (; c > l; l++) - if ((e || l in s) && s[l] === n) return e || l || 0; - return !e && -1; - }; - }; - }, - function(e, t, n) { - var r = n(13), - o = n(21), - i = n(14); - e.exports = function(e) { - var t = r(e), - n = o.f; - if (n) - for (var a, u = n(e), s = i.f, c = 0; u.length > c; ) - s.call(e, (a = u[c++])) && t.push(a); - return t; - }; - }, - function(e, t, n) { - var r = n(2).document; - e.exports = r && r.documentElement; - }, - function(e, t, n) { - var r = n(41); - e.exports = - Array.isArray || - function(e) { - return 'Array' == r(e); - }; - }, - function(e, t, n) { - 'use strict'; - var r = n(20), - o = n(15), - i = n(22), - a = {}; - n(6)(a, n(9)('iterator'), function() { - return this; - }), - (e.exports = function(e, t, n) { - (e.prototype = r(a, { next: o(1, n) })), i(e, t + ' Iterator'); - }); - }, - function(e, t) { - e.exports = function(e, t) { - return { value: t, done: !!e }; - }; - }, - function(e, t, n) { - var r = n(16)('meta'), - o = n(7), - i = n(3), - a = n(4).f, - u = 0, - s = - Object.isExtensible || - function() { - return !0; - }, - c = !n(11)(function() { - return s(Object.preventExtensions({})); - }), - l = function(e) { - a(e, r, { value: { i: 'O' + ++u, w: {} } }); - }, - f = function(e, t) { - if (!o(e)) - return 'symbol' == typeof e - ? e - : ('string' == typeof e ? 'S' : 'P') + e; - if (!i(e, r)) { - if (!s(e)) return 'F'; - if (!t) return 'E'; - l(e); - } - return e[r].i; - }, - p = function(e, t) { - if (!i(e, r)) { - if (!s(e)) return !0; - if (!t) return !1; - l(e); - } - return e[r].w; - }, - h = function(e) { - return c && d.NEED && s(e) && !i(e, r) && l(e), e; - }, - d = (e.exports = { - KEY: r, - NEED: !1, - fastKey: f, - getWeak: p, - onFreeze: h, - }); - }, - function(e, t, n) { - 'use strict'; - var r = n(1), - o = n(13), - i = n(21), - a = n(14), - u = n(26), - s = n(45), - c = Object.assign; - e.exports = - !c || - n(11)(function() { - var e = {}, - t = {}, - n = Symbol(), - r = 'abcdefghijklmnopqrst'; - return ( - (e[n] = 7), - r.split('').forEach(function(e) { - t[e] = e; - }), - 7 != c({}, e)[n] || Object.keys(c({}, t)).join('') != r - ); - }) - ? function(e, t) { - for ( - var n = u(e), c = arguments.length, l = 1, f = i.f, p = a.f; - c > l; - - ) - for ( - var h, - d = s(arguments[l++]), - v = f ? o(d).concat(f(d)) : o(d), - m = v.length, - y = 0; - m > y; - - ) - (h = v[y++]), (r && !p.call(d, h)) || (n[h] = d[h]); - return n; - } - : c; - }, - function(e, t, n) { - var r = n(4), - o = n(10), - i = n(13); - e.exports = n(1) - ? Object.defineProperties - : function(e, t) { - o(e); - for (var n, a = i(t), u = a.length, s = 0; u > s; ) - r.f(e, (n = a[s++]), t[n]); - return e; - }; - }, - function(e, t, n) { - var r = n(8), - o = n(48).f, - i = {}.toString, - a = - 'object' == typeof window && window && Object.getOwnPropertyNames - ? Object.getOwnPropertyNames(window) - : [], - u = function(e) { - try { - return o(e); - } catch (e) { - return a.slice(); - } - }; - e.exports.f = function(e) { - return a && '[object Window]' == i.call(e) ? u(e) : o(r(e)); - }; - }, - function(e, t, n) { - var r = n(3), - o = n(26), - i = n(23)('IE_PROTO'), - a = Object.prototype; - e.exports = - Object.getPrototypeOf || - function(e) { - return ( - (e = o(e)), - r(e, i) - ? e[i] - : 'function' == typeof e.constructor && e instanceof e.constructor - ? e.constructor.prototype - : e instanceof Object - ? a - : null - ); - }; - }, - function(e, t, n) { - var r = n(7), - o = n(10), - i = function(e, t) { - if ((o(e), !r(t) && null !== t)) - throw TypeError(t + ": can't set as prototype!"); - }; - e.exports = { - set: - Object.setPrototypeOf || - ('__proto__' in {} - ? (function(e, t, r) { - try { - (r = n(42)( - Function.call, - n(47).f(Object.prototype, '__proto__').set, - 2, - )), - r(e, []), - (t = !(e instanceof Array)); - } catch (e) { - t = !0; - } - return function(e, n) { - return i(e, n), t ? (e.__proto__ = n) : r(e, n), e; - }; - })({}, !1) - : void 0), - check: i, - }; - }, - function(e, t, n) { - var r = n(25), - o = n(17); - e.exports = function(e) { - return function(t, n) { - var i, - a, - u = String(o(t)), - s = r(n), - c = u.length; - return s < 0 || s >= c - ? e - ? '' - : void 0 - : ((i = u.charCodeAt(s)), - i < 55296 || - i > 56319 || - s + 1 === c || - (a = u.charCodeAt(s + 1)) < 56320 || - a > 57343 - ? e - ? u.charAt(s) - : i - : e - ? u.slice(s, s + 2) - : a - 56320 + ((i - 55296) << 10) + 65536); - }; - }; - }, - function(e, t, n) { - var r = n(25), - o = Math.max, - i = Math.min; - e.exports = function(e, t) { - return (e = r(e)), e < 0 ? o(e + t, 0) : i(e, t); - }; - }, - function(e, t, n) { - var r = n(25), - o = Math.min; - e.exports = function(e) { - return e > 0 ? o(r(e), 9007199254740991) : 0; - }; - }, - function(e, t, n) { - 'use strict'; - var r = n(70), - o = n(76), - i = n(19), - a = n(8); - (e.exports = n(46)( - Array, - 'Array', - function(e, t) { - (this._t = a(e)), (this._i = 0), (this._k = t); - }, - function() { - var e = this._t, - t = this._k, - n = this._i++; - return !e || n >= e.length - ? ((this._t = void 0), o(1)) - : 'keys' == t - ? o(0, n) - : 'values' == t - ? o(0, e[n]) - : o(0, [n, e[n]]); - }, - 'values', - )), - (i.Arguments = i.Array), - r('keys'), - r('values'), - r('entries'); - }, - function(e, t, n) { - var r = n(5); - r(r.S + r.F, 'Object', { assign: n(78) }); - }, - function(e, t, n) { - var r = n(5); - r(r.S, 'Object', { create: n(20) }); - }, - function(e, t, n) { - var r = n(5); - r(r.S + r.F * !n(1), 'Object', { defineProperty: n(4).f }); - }, - function(e, t, n) { - var r = n(5); - r(r.S, 'Object', { setPrototypeOf: n(82).set }); - }, - function(e, t) {}, - function(e, t, n) { - 'use strict'; - var r = n(83)(!0); - n(46)( - String, - 'String', - function(e) { - (this._t = String(e)), (this._i = 0); - }, - function() { - var e, - t = this._t, - n = this._i; - return n >= t.length - ? { value: void 0, done: !0 } - : ((e = r(t, n)), (this._i += e.length), { value: e, done: !1 }); - }, - ); - }, - function(e, t, n) { - 'use strict'; - var r = n(2), - o = n(3), - i = n(1), - a = n(5), - u = n(50), - s = n(77).KEY, - c = n(11), - l = n(24), - f = n(22), - p = n(16), - h = n(9), - d = n(29), - v = n(28), - m = n(72), - y = n(74), - g = n(10), - b = n(7), - x = n(26), - _ = n(8), - S = n(27), - P = n(15), - O = n(20), - w = n(80), - E = n(47), - C = n(21), - N = n(4), - j = n(13), - T = E.f, - I = N.f, - k = w.f, - M = r.Symbol, - R = r.JSON, - z = R && R.stringify, - A = h('_hidden'), - L = h('toPrimitive'), - D = {}.propertyIsEnumerable, - U = l('symbol-registry'), - W = l('symbols'), - F = l('op-symbols'), - V = Object.prototype, - K = 'function' == typeof M && !!C.f, - J = r.QObject, - G = !J || !J.prototype || !J.prototype.findChild, - B = - i && - c(function() { - return ( - 7 != - O( - I({}, 'a', { - get: function() { - return I(this, 'a', { value: 7 }).a; - }, - }), - ).a - ); - }) - ? function(e, t, n) { - var r = T(V, t); - r && delete V[t], I(e, t, n), r && e !== V && I(V, t, r); - } - : I, - q = function(e) { - var t = (W[e] = O(M.prototype)); - return (t._k = e), t; - }, - Q = - K && 'symbol' == typeof M.iterator - ? function(e) { - return 'symbol' == typeof e; - } - : function(e) { - return e instanceof M; - }, - H = function(e, t, n) { - return ( - e === V && H(F, t, n), - g(e), - (t = S(t, !0)), - g(n), - o(W, t) - ? (n.enumerable - ? (o(e, A) && e[A][t] && (e[A][t] = !1), - (n = O(n, { enumerable: P(0, !1) }))) - : (o(e, A) || I(e, A, P(1, {})), (e[A][t] = !0)), - B(e, t, n)) - : I(e, t, n) - ); - }, - Y = function(e, t) { - g(e); - for (var n, r = m((t = _(t))), o = 0, i = r.length; i > o; ) - H(e, (n = r[o++]), t[n]); - return e; - }, - Z = function(e, t) { - return void 0 === t ? O(e) : Y(O(e), t); - }, - X = function(e) { - var t = D.call(this, (e = S(e, !0))); - return ( - !(this === V && o(W, e) && !o(F, e)) && - (!(t || !o(this, e) || !o(W, e) || (o(this, A) && this[A][e])) || t) - ); - }, - $ = function(e, t) { - if (((e = _(e)), (t = S(t, !0)), e !== V || !o(W, t) || o(F, t))) { - var n = T(e, t); - return ( - !n || !o(W, t) || (o(e, A) && e[A][t]) || (n.enumerable = !0), n - ); - } - }, - ee = function(e) { - for (var t, n = k(_(e)), r = [], i = 0; n.length > i; ) - o(W, (t = n[i++])) || t == A || t == s || r.push(t); - return r; - }, - te = function(e) { - for ( - var t, n = e === V, r = k(n ? F : _(e)), i = [], a = 0; - r.length > a; - - ) - !o(W, (t = r[a++])) || (n && !o(V, t)) || i.push(W[t]); - return i; - }; - K || - ((M = function() { - if (this instanceof M) - throw TypeError('Symbol is not a constructor!'); - var e = p(arguments.length > 0 ? arguments[0] : void 0), - t = function(n) { - this === V && t.call(F, n), - o(this, A) && o(this[A], e) && (this[A][e] = !1), - B(this, e, P(1, n)); - }; - return i && G && B(V, e, { configurable: !0, set: t }), q(e); - }), - u(M.prototype, 'toString', function() { - return this._k; - }), - (E.f = $), - (N.f = H), - (n(48).f = w.f = ee), - (n(14).f = X), - (C.f = te), - i && !n(12) && u(V, 'propertyIsEnumerable', X, !0), - (d.f = function(e) { - return q(h(e)); - })), - a(a.G + a.W + a.F * !K, { Symbol: M }); - for ( - var ne = 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'.split( - ',', - ), - re = 0; - ne.length > re; - - ) - h(ne[re++]); - for (var oe = j(h.store), ie = 0; oe.length > ie; ) v(oe[ie++]); - a(a.S + a.F * !K, 'Symbol', { - for: function(e) { - return o(U, (e += '')) ? U[e] : (U[e] = M(e)); - }, - keyFor: function(e) { - if (!Q(e)) throw TypeError(e + ' is not a symbol!'); - for (var t in U) if (U[t] === e) return t; - }, - useSetter: function() { - G = !0; - }, - useSimple: function() { - G = !1; - }, - }), - a(a.S + a.F * !K, 'Object', { - create: Z, - defineProperty: H, - defineProperties: Y, - getOwnPropertyDescriptor: $, - getOwnPropertyNames: ee, - getOwnPropertySymbols: te, - }); - var ae = c(function() { - C.f(1); - }); - a(a.S + a.F * ae, 'Object', { - getOwnPropertySymbols: function(e) { - return C.f(x(e)); - }, - }), - R && - a( - a.S + - a.F * - (!K || - c(function() { - var e = M(); - return ( - '[null]' != z([e]) || - '{}' != z({ a: e }) || - '{}' != z(Object(e)) - ); - })), - 'JSON', - { - stringify: function(e) { - for (var t, n, r = [e], o = 1; arguments.length > o; ) - r.push(arguments[o++]); - if (((n = t = r[1]), (b(t) || void 0 !== e) && !Q(e))) - return ( - y(t) || - (t = function(e, t) { - if ( - ('function' == typeof n && (t = n.call(this, e, t)), - !Q(t)) - ) - return t; - }), - (r[1] = t), - z.apply(R, r) - ); - }, - }, - ), - M.prototype[L] || n(6)(M.prototype, L, M.prototype.valueOf), - f(M, 'Symbol'), - f(Math, 'Math', !0), - f(r.JSON, 'JSON', !0); - }, - function(e, t, n) { - n(28)('asyncIterator'); - }, - function(e, t, n) { - n(28)('observable'); - }, - function(e, t, n) { - n(86); - for ( - var r = n(2), - o = n(6), - i = n(19), - a = n(9)('toStringTag'), - u = 'CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList'.split( - ',', - ), - s = 0; - s < u.length; - s++ - ) { - var c = u[s], - l = r[c], - f = l && l.prototype; - f && !f[a] && o(f, a, c), (i[c] = i.Array); - } - }, - function(e, t, n) { - 'use strict'; - function r() {} - function o() {} - var i = n(98); - (o.resetWarningCache = r), - (e.exports = function() { - function e(e, t, n, r, o, a) { - if (a !== i) { - var u = new Error( - 'Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types', - ); - throw ((u.name = 'Invariant Violation'), u); - } - } - function t() { - return e; - } - e.isRequired = e; - var n = { - array: e, - bool: e, - func: e, - number: e, - object: e, - string: e, - symbol: e, - any: e, - arrayOf: t, - element: e, - elementType: e, - instanceOf: t, - node: e, - objectOf: t, - oneOf: t, - oneOfType: t, - shape: t, - exact: t, - checkPropTypes: o, - resetWarningCache: r, - }; - return (n.PropTypes = n), n; - }); - }, - function(e, t, n) { - 'use strict'; - e.exports = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'; - }, - function(e, t, n) { - 'use strict'; - function r() { - var e = this.constructor.getDerivedStateFromProps( - this.props, - this.state, - ); - null !== e && void 0 !== e && this.setState(e); - } - function o(e) { - function t(t) { - var n = this.constructor.getDerivedStateFromProps(e, t); - return null !== n && void 0 !== n ? n : null; - } - this.setState(t.bind(this)); - } - function i(e, t) { - try { - var n = this.props, - r = this.state; - (this.props = e), - (this.state = t), - (this.__reactInternalSnapshotFlag = !0), - (this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(n, r)); - } finally { - (this.props = n), (this.state = r); - } - } - function a(e) { - var t = e.prototype; - if (!t || !t.isReactComponent) - throw new Error('Can only polyfill class components'); - if ( - 'function' != typeof e.getDerivedStateFromProps && - 'function' != typeof t.getSnapshotBeforeUpdate - ) - return e; - var n = null, - a = null, - u = null; - if ( - ('function' == typeof t.componentWillMount - ? (n = 'componentWillMount') - : 'function' == typeof t.UNSAFE_componentWillMount && - (n = 'UNSAFE_componentWillMount'), - 'function' == typeof t.componentWillReceiveProps - ? (a = 'componentWillReceiveProps') - : 'function' == typeof t.UNSAFE_componentWillReceiveProps && - (a = 'UNSAFE_componentWillReceiveProps'), - 'function' == typeof t.componentWillUpdate - ? (u = 'componentWillUpdate') - : 'function' == typeof t.UNSAFE_componentWillUpdate && - (u = 'UNSAFE_componentWillUpdate'), - null !== n || null !== a || null !== u) - ) { - var s = e.displayName || e.name, - c = - 'function' == typeof e.getDerivedStateFromProps - ? 'getDerivedStateFromProps()' - : 'getSnapshotBeforeUpdate()'; - throw Error( - 'Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n' + - s + - ' uses ' + - c + - ' but also contains the following legacy lifecycles:' + - (null !== n ? '\n ' + n : '') + - (null !== a ? '\n ' + a : '') + - (null !== u ? '\n ' + u : '') + - '\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://fb.me/react-async-component-lifecycle-hooks', - ); - } - if ( - ('function' == typeof e.getDerivedStateFromProps && - ((t.componentWillMount = r), (t.componentWillReceiveProps = o)), - 'function' == typeof t.getSnapshotBeforeUpdate) - ) { - if ('function' != typeof t.componentDidUpdate) - throw new Error( - 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype', - ); - t.componentWillUpdate = i; - var l = t.componentDidUpdate; - t.componentDidUpdate = function(e, t, n) { - var r = this.__reactInternalSnapshotFlag - ? this.__reactInternalSnapshot - : n; - l.call(this, e, t, r); - }; - } - return e; - } - n.d(t, 'a', function() { - return a; - }), - (r.__suppressDeprecationWarning = !0), - (o.__suppressDeprecationWarning = !0), - (i.__suppressDeprecationWarning = !0); - }, - function(e, t, n) { - n(51), (e.exports = n(52)); - }, - ]); -}); From 68fc9236ab3e2f76326f1f3b587acf7097b20b10 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 21:21:02 +0800 Subject: [PATCH 038/262] 2.0.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 32d98f31..a2025637 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "1.21.0", + "version": "2.0.0", "description": "pagination ui component for react", "keywords": [ "react", From 3335210321b7f8e9a424eb8c634442472cd27b29 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 21:42:33 +0800 Subject: [PATCH 039/262] fix: rc-pagination.d.ts missing --- package.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index a2025637..60a3f700 100644 --- a/package.json +++ b/package.json @@ -12,12 +12,14 @@ ], "main": "./lib/index", "module": "./es/index", + "types": "rc-pagination.d.ts", "files": [ "assets/*.css", "assets/*.less", "es", "lib", - "dist" + "dist", + "rc-pagination.d.ts" ], "homepage": "https://react-component.github.io/pagination", "repository": { From c121325b64f06f56a4ff6d5c870bad316936ee98 Mon Sep 17 00:00:00 2001 From: afc163 Date: Thu, 27 Feb 2020 21:43:05 +0800 Subject: [PATCH 040/262] 2.0.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 60a3f700..1abb6179 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "2.0.0", + "version": "2.0.1", "description": "pagination ui component for react", "keywords": [ "react", From ff396f5866a427fe885c2a0c95cca1e684923b76 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 24 Mar 2020 10:51:27 +0800 Subject: [PATCH 041/262] Bump prettier from 1.19.1 to 2.0.1 (#257) Bumps [prettier](https://github.com/prettier/prettier) from 1.19.1 to 2.0.1. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/master/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/1.19.1...2.0.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 1abb6179..9c7d774f 100644 --- a/package.json +++ b/package.json @@ -60,7 +60,7 @@ "husky": "^4.2.3", "less": "^3.10.3", "np": "^6.2.0", - "prettier": "^1.18.2", + "prettier": "^2.0.1", "pretty-quick": "^2.0.1", "react": "^16.0.0", "react-dom": "^16.0.0", From dd549f5c2434667129eb3419c77e972bef0766dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=81=8F=E5=8F=B3?= Date: Sun, 29 Mar 2020 14:04:13 +0800 Subject: [PATCH 042/262] :new: size changer will be shown when total >= 100 (#258) --- HISTORY.md | 7 ++++++- README.md | 2 +- examples/sizer.js | 9 ++++++++- src/Options.jsx | 2 +- src/Pagination.jsx | 12 +++++++++--- tests/index.test.js | 35 ++++++++++++++++++++++++++++++++++- 6 files changed, 59 insertions(+), 8 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index d69314b2..f74ec276 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,6 +1,11 @@ +# 2.1.0 + +- When `total` is greater then 100, will show size changer defaultly. +- Update default page size options from `10,20,30,40` to `10,25,50,100`. + # 2.0.0 -- Remove prop-types and react-lifecycles-compat +- Remove `prop-types` and `react-lifecycles-compat` # 1.20.0 diff --git a/README.md b/README.md index 962bcce3..46f5368a 100644 --- a/README.md +++ b/README.md @@ -61,7 +61,7 @@ React.render(, container); | defaultPageSize | default items per page | Number | 10 | | pageSize | items per page | Number | 10 | | onChange | page change callback | Function(current, pageSize) | - | -| showSizeChanger | show pageSize changer | Bool | false | +| showSizeChanger | show pageSize changer | Bool | `false` when total less then 100, `true` when otherwise | | pageSizeOptions | specify the sizeChanger selections | Array | ['10', '20', '30', '40'] | | onShowSizeChange | pageSize change callback | Function(current, size) | - | | hideOnSinglePage | hide on single page | Bool | false | diff --git a/examples/sizer.js b/examples/sizer.js index 080b1a54..092cae54 100644 --- a/examples/sizer.js +++ b/examples/sizer.js @@ -28,7 +28,14 @@ class App extends React.Component { /> + this.state.current < calculatePage(undefined, this.state, this.props); + getShowSizeChanger() { + const { showSizeChanger, total } = this.props; + if (typeof showSizeChanger !== 'undefined') { + return showSizeChanger; + } + return total >= 100; + } + runIfEnter = (event, callback, ...restParams) => { if (event.key === 'Enter' || event.charCode === 13) { callback(...restParams); @@ -337,7 +344,6 @@ class Pagination extends React.Component { showLessItems, showTitle, showTotal, - showSizeChanger, simple, itemRender, showPrevNextJumpers, @@ -669,7 +675,7 @@ class Pagination extends React.Component { rootPrefixCls={prefixCls} selectComponentClass={selectComponentClass} selectPrefixCls={selectPrefixCls} - changeSize={showSizeChanger ? this.changePageSize : null} + changeSize={this.getShowSizeChanger() ? this.changePageSize : null} current={current} pageSize={pageSize} pageSizeOptions={pageSizeOptions} diff --git a/tests/index.test.js b/tests/index.test.js index 1999ec26..3966bd91 100644 --- a/tests/index.test.js +++ b/tests/index.test.js @@ -323,7 +323,7 @@ describe('current value on onShowSizeChange when total is 0', () => { input.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); expect(onShowSizeChange).toHaveBeenLastCalledWith( wrapper.state().current, - 20, + 25, ); }); @@ -336,4 +336,37 @@ describe('current value on onShowSizeChange when total is 0', () => { const totalText = wrapper.find('.rc-pagination-total-text'); expect(totalText.text()).toBe('0 - 0 of 0 items'); }); + + it('size changer show logic', () => { + const wrapper1 = mount( + , + ); + expect(wrapper1.exists('.rc-pagination-options-size-changer')).toBe(false); + const wrapper2 = mount( + , + ); + expect(wrapper2.exists('.rc-pagination-options-size-changer')).toBe(true); + const wrapper3 = mount( + , + ); + expect(wrapper3.exists('.rc-pagination-options-size-changer')).toBe(false); + const wrapper4 = mount( + , + ); + expect(wrapper4.exists('.rc-pagination-options-size-changer')).toBe(true); + }); }); From 1297f3178834a52c07d9e8dc521fd812c1df4543 Mon Sep 17 00:00:00 2001 From: afc163 Date: Sun, 29 Mar 2020 14:04:43 +0800 Subject: [PATCH 043/262] 2.1.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 9c7d774f..3a9e6b95 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "2.0.1", + "version": "2.1.0", "description": "pagination ui component for react", "keywords": [ "react", From 2d3f18fc677fe8ef779ed8f4a229f8ad2dcab4ba Mon Sep 17 00:00:00 2001 From: afc163 Date: Sun, 29 Mar 2020 16:41:46 +0800 Subject: [PATCH 044/262] fix README, close #259 --- README.md | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 46f5368a..04de6f1e 100644 --- a/README.md +++ b/README.md @@ -30,13 +30,9 @@ npm start ## Example -http://localhost:3000/examples/ +http://localhost:9001 -online example: http://react-component.github.io/pagination/examples/ - -## Feature - -- support ie9,ie9+,chrome,firefox,safari +online example: http://react-component.github.io/pagination/ ## Install @@ -45,9 +41,9 @@ online example: http://react-component.github.io/pagination/examples/ ## Usage ```js -var Pagination = require('rc-pagination'); -var React = require('react'); -React.render(, container); +import Pagination from 'rc-pagination'; + +ReactDOM.render(, container); ``` ## API From d92b6f8a92b0821efc51334aae0926241ab86f28 Mon Sep 17 00:00:00 2001 From: afc163 Date: Sun, 29 Mar 2020 16:53:39 +0800 Subject: [PATCH 045/262] fixed length of pagination items in small current close ant-design/ant-design#18201 --- HISTORY.md | 4 ++++ examples/simple.js | 14 +++++++++++++- src/Pagination.jsx | 2 +- 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index f74ec276..adfd3cfd 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,3 +1,7 @@ +# 2.1.1 + +- Fix items count not being consistent. + # 2.1.0 - When `total` is greater then 100, will show size changer defaultly. diff --git a/examples/simple.js b/examples/simple.js index 09759077..b9963ccc 100644 --- a/examples/simple.js +++ b/examples/simple.js @@ -2,6 +2,18 @@ import '../assets/index.less'; import React from 'react'; import Pagination from '..'; -const App = () => ; +const App = () => ( + <> + + + + + + + + + + +); export default App; diff --git a/src/Pagination.jsx b/src/Pagination.jsx index 115ce014..cfebb886 100644 --- a/src/Pagination.jsx +++ b/src/Pagination.jsx @@ -470,7 +470,7 @@ class Pagination extends React.Component { ); } - if (allPages <= 5 + pageBufferSize * 2) { + if (allPages <= 3 + pageBufferSize * 2) { const pagerProps = { locale, rootPrefixCls: prefixCls, From cfc02bb2274826d2f6729d423494eeda24afa064 Mon Sep 17 00:00:00 2001 From: afc163 Date: Sun, 29 Mar 2020 17:04:14 +0800 Subject: [PATCH 046/262] Add totalBoundaryShowSizeChanger(default 50) --- HISTORY.md | 4 +++- README.md | 3 ++- examples/sizer.js | 15 +++++++++++---- src/Options.jsx | 2 +- src/Pagination.jsx | 5 +++-- 5 files changed, 20 insertions(+), 9 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index adfd3cfd..2180a781 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,6 +1,8 @@ # 2.1.1 -- Fix items count not being consistent. +- Add prop `totalBoundaryShowSizeChanger`. +- Fix items count not being consistent. [#18201](https://github.com/ant-design/ant-design/issues/18201) +- Update default page size options from `10,25,30,40` to `10,20,50,100`. # 2.1.0 diff --git a/README.md b/README.md index 04de6f1e..3c200481 100644 --- a/README.md +++ b/README.md @@ -57,7 +57,8 @@ ReactDOM.render(, container); | defaultPageSize | default items per page | Number | 10 | | pageSize | items per page | Number | 10 | | onChange | page change callback | Function(current, pageSize) | - | -| showSizeChanger | show pageSize changer | Bool | `false` when total less then 100, `true` when otherwise | +| showSizeChanger | show pageSize changer | Bool | `false` when total less then `totalBoundaryShowSizeChanger`, `true` when otherwise | +| totalBoundaryShowSizeChanger | when total larger than it, `showSizeChanger` will be true | number | 50 | | pageSizeOptions | specify the sizeChanger selections | Array | ['10', '20', '30', '40'] | | onShowSizeChange | pageSize change callback | Function(current, size) | - | | hideOnSinglePage | hide on single page | Bool | false | diff --git a/examples/sizer.js b/examples/sizer.js index 092cae54..cb2b1e87 100644 --- a/examples/sizer.js +++ b/examples/sizer.js @@ -7,7 +7,7 @@ import 'rc-select/assets/index.less'; class App extends React.Component { state = { - pageSize: 20, + pageSize: 10, }; onShowSizeChange = (current, pageSize) => { @@ -24,14 +24,21 @@ class App extends React.Component { pageSize={this.state.pageSize} onShowSizeChange={this.onShowSizeChange} defaultCurrent={3} - total={500} + total={40} /> +
    ); diff --git a/src/Options.jsx b/src/Options.jsx index f4cebda4..d6394dec 100644 --- a/src/Options.jsx +++ b/src/Options.jsx @@ -4,7 +4,7 @@ import KEYCODE from './KeyCode'; class Options extends React.Component { static defaultProps = { - pageSizeOptions: ['10', '25', '50', '100'], + pageSizeOptions: ['10', '20', '50', '100'], }; state = { diff --git a/src/Pagination.jsx b/src/Pagination.jsx index cfebb886..782b741d 100644 --- a/src/Pagination.jsx +++ b/src/Pagination.jsx @@ -43,6 +43,7 @@ class Pagination extends React.Component { locale: LOCALE, style: {}, itemRender: defaultItemRender, + totalBoundaryShowSizeChanger: 50, }; constructor(props) { @@ -278,11 +279,11 @@ class Pagination extends React.Component { this.state.current < calculatePage(undefined, this.state, this.props); getShowSizeChanger() { - const { showSizeChanger, total } = this.props; + const { showSizeChanger, total, totalBoundaryShowSizeChanger } = this.props; if (typeof showSizeChanger !== 'undefined') { return showSizeChanger; } - return total >= 100; + return total > totalBoundaryShowSizeChanger; } runIfEnter = (event, callback, ...restParams) => { From 937e4c378f6907dde9135b4c182ae93711f8eaf9 Mon Sep 17 00:00:00 2001 From: afc163 Date: Sun, 29 Mar 2020 17:04:35 +0800 Subject: [PATCH 047/262] update HISTORY.md --- HISTORY.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/HISTORY.md b/HISTORY.md index 2180a781..d7818af8 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,4 +1,4 @@ -# 2.1.1 +# 2.2.0 - Add prop `totalBoundaryShowSizeChanger`. - Fix items count not being consistent. [#18201](https://github.com/ant-design/ant-design/issues/18201) From 52c757bebae61b2bf3ffc4c5e57b3580f7b357ec Mon Sep 17 00:00:00 2001 From: afc163 Date: Sun, 29 Mar 2020 17:12:44 +0800 Subject: [PATCH 048/262] :white_check_mark: test case --- tests/index.test.js | 45 +++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 41 insertions(+), 4 deletions(-) diff --git a/tests/index.test.js b/tests/index.test.js index 3966bd91..cfc831ab 100644 --- a/tests/index.test.js +++ b/tests/index.test.js @@ -323,7 +323,7 @@ describe('current value on onShowSizeChange when total is 0', () => { input.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); expect(onShowSizeChange).toHaveBeenLastCalledWith( wrapper.state().current, - 25, + 20, ); }); @@ -341,14 +341,14 @@ describe('current value on onShowSizeChange when total is 0', () => { const wrapper1 = mount( , ); expect(wrapper1.exists('.rc-pagination-options-size-changer')).toBe(false); const wrapper2 = mount( , ); expect(wrapper2.exists('.rc-pagination-options-size-changer')).toBe(true); @@ -356,7 +356,43 @@ describe('current value on onShowSizeChange when total is 0', () => { , + ); + expect(wrapper3.exists('.rc-pagination-options-size-changer')).toBe(false); + const wrapper4 = mount( + , + ); + expect(wrapper4.exists('.rc-pagination-options-size-changer')).toBe(true); + }); + + it('totalBoundaryShowSizeChanger works', () => { + const wrapper1 = mount( + , + ); + expect(wrapper1.exists('.rc-pagination-options-size-changer')).toBe(false); + const wrapper2 = mount( + , + ); + expect(wrapper2.exists('.rc-pagination-options-size-changer')).toBe(true); + const wrapper3 = mount( + , ); expect(wrapper3.exists('.rc-pagination-options-size-changer')).toBe(false); @@ -364,7 +400,8 @@ describe('current value on onShowSizeChange when total is 0', () => { , ); expect(wrapper4.exists('.rc-pagination-options-size-changer')).toBe(true); From 8a8592a00ffc6a64a661488e03f0485090719194 Mon Sep 17 00:00:00 2001 From: afc163 Date: Sun, 29 Mar 2020 17:20:25 +0800 Subject: [PATCH 049/262] 2.2.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 3a9e6b95..0112c27b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "2.1.0", + "version": "2.2.0", "description": "pagination ui component for react", "keywords": [ "react", From 2435542e52cef8d3ceca17b16e10a9c72f282f19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=81=8F=E5=8F=B3?= Date: Sun, 29 Mar 2020 23:03:08 +0800 Subject: [PATCH 050/262] Update HISTORY.md --- HISTORY.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/HISTORY.md b/HISTORY.md index d7818af8..e4c9aa75 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -2,7 +2,7 @@ - Add prop `totalBoundaryShowSizeChanger`. - Fix items count not being consistent. [#18201](https://github.com/ant-design/ant-design/issues/18201) -- Update default page size options from `10,25,30,40` to `10,20,50,100`. +- Update default page size options from `10,25,50,100` to `10,20,50,100`. # 2.1.0 From 0e75525a4bf2e8127cad5f2d51b14f4639893776 Mon Sep 17 00:00:00 2001 From: Tom Xu Date: Sun, 29 Mar 2020 23:09:28 +0800 Subject: [PATCH 051/262] docs: pageSizeOptions default value (#261) * fix: pageSizeOptions default value * Revert "fix: pageSizeOptions default value" This reverts commit 66b8ecfc1ef1af08038af50623ab2ae7cac79c91. * Update README.md --- README.md | 56 +++++++++++++++++++++++++++---------------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index 3c200481..6a312bc5 100644 --- a/README.md +++ b/README.md @@ -48,34 +48,34 @@ ReactDOM.render(, container); ## API -| Parameter | Description | Type | Default | -| ------------------- | ----------------------------------- | -------------------------------------------------- | -------------------------------------------------------------------------------------- | -| disabled | disable pagination | Bool | - | -| defaultCurrent | uncontrolled current page | Number | 1 | -| current | current page | Number | undefined | -| total | items total count | Number | 0 | -| defaultPageSize | default items per page | Number | 10 | -| pageSize | items per page | Number | 10 | -| onChange | page change callback | Function(current, pageSize) | - | -| showSizeChanger | show pageSize changer | Bool | `false` when total less then `totalBoundaryShowSizeChanger`, `true` when otherwise | -| totalBoundaryShowSizeChanger | when total larger than it, `showSizeChanger` will be true | number | 50 | -| pageSizeOptions | specify the sizeChanger selections | Array | ['10', '20', '30', '40'] | -| onShowSizeChange | pageSize change callback | Function(current, size) | - | -| hideOnSinglePage | hide on single page | Bool | false | -| showPrevNextJumpers | show jump-prev, jump-next | Bool | true | -| showQuickJumper | show quick goto jumper | Bool / Object | false / {goButton: true} | -| showTotal | show total records and range | Function(total, [from, to]) | - | -| className | className of pagination | String | - | -| simple | when set, show simple pager | Object | null | -| locale | to set l10n config | Object | [zh_CN](https://github.com/react-component/pagination/blob/master/src/locale/zh_CN.js) | -| style | the style of pagination | Object | {} | -| showLessItems | show less page items | Bool | false | -| showTitle | show page items title | Bool | true | -| itemRender | custom page item renderer | Function(current, type: 'page' | 'prev' | 'next' | 'jump-prev' | 'jump-next', element): React.ReactNode | `(current, type, element) => element` | -| prevIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | -| nextIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | -| jumpPrevIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | -| jumpNextIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | +| Parameter | Description | Type | Default | +| ---------------------------- | --------------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------------------------------------------- | +| disabled | disable pagination | Bool | - | +| defaultCurrent | uncontrolled current page | Number | 1 | +| current | current page | Number | undefined | +| total | items total count | Number | 0 | +| defaultPageSize | default items per page | Number | 10 | +| pageSize | items per page | Number | 10 | +| onChange | page change callback | Function(current, pageSize) | - | +| showSizeChanger | show pageSize changer | Bool | `false` when total less then `totalBoundaryShowSizeChanger`, `true` when otherwise | +| totalBoundaryShowSizeChanger | when total larger than it, `showSizeChanger` will be true | number | 50 | +| pageSizeOptions | specify the sizeChanger selections | Array | ['10', '20', '50', '100'] | +| onShowSizeChange | pageSize change callback | Function(current, size) | - | +| hideOnSinglePage | hide on single page | Bool | false | +| showPrevNextJumpers | show jump-prev, jump-next | Bool | true | +| showQuickJumper | show quick goto jumper | Bool / Object | false / {goButton: true} | +| showTotal | show total records and range | Function(total, [from, to]) | - | +| className | className of pagination | String | - | +| simple | when set, show simple pager | Object | null | +| locale | to set l10n config | Object | [zh_CN](https://github.com/react-component/pagination/blob/master/src/locale/zh_CN.js) | +| style | the style of pagination | Object | {} | +| showLessItems | show less page items | Bool | false | +| showTitle | show page items title | Bool | true | +| itemRender | custom page item renderer | Function(current, type: 'page' | 'prev' | 'next' | 'jump-prev' | 'jump-next', element): React.ReactNode | `(current, type, element) => element` | +| prevIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | +| nextIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | +| jumpPrevIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | +| jumpNextIcon | specifict the default previous icon | ReactNode \| (props: PaginationProps) => ReactNode | | ## License From a42290131046b3c1abd0b7969ef81d1e63aa1992 Mon Sep 17 00:00:00 2001 From: Leonid Brish Date: Tue, 5 May 2020 12:05:23 +0300 Subject: [PATCH 052/262] Add simple field definition to ts (#265) --- rc-pagination.d.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/rc-pagination.d.ts b/rc-pagination.d.ts index 7a1da96c..dcc09940 100644 --- a/rc-pagination.d.ts +++ b/rc-pagination.d.ts @@ -17,6 +17,7 @@ declare module 'rc-pagination' { showPrevNextJumpers: boolean; showQuickJumper: boolean | object; showTitle: boolean; + simple: boolean; locale: object; From ab6891d81fdc18cde6254537895aa231781e0de6 Mon Sep 17 00:00:00 2001 From: afc163 Date: Tue, 5 May 2020 17:52:32 +0800 Subject: [PATCH 053/262] 2.2.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 0112c27b..a4bc6093 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "2.2.0", + "version": "2.2.1", "description": "pagination ui component for react", "keywords": [ "react", From da77861ed0b0cec2b5d25dc2fd108cbe880a15da Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 12 May 2020 10:59:17 +0800 Subject: [PATCH 054/262] Bump eslint from 6.8.0 to 7.0.0 (#266) Bumps [eslint](https://github.com/eslint/eslint) from 6.8.0 to 7.0.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v6.8.0...v7.0.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index a4bc6093..9f8f9613 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "enzyme": "^3.0.0", "enzyme-adapter-react-16": "^1.0.1", "enzyme-to-json": "^3.4.0", - "eslint": "^6.6.0", + "eslint": "^7.0.0", "father": "^2.13.4", "husky": "^4.2.3", "less": "^3.10.3", From a262ee7892c17159421d9524f69eacf2df4beb4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=81=8F=E5=8F=B3?= Date: Fri, 22 May 2020 16:02:44 +0800 Subject: [PATCH 055/262] feat: improve PageSizeOptions with custom pageSize (#270) * feat: improve PageSizeOptions with custom pageSize * Add tests/sizer.test.js --- examples/sizer.js | 11 ++++++----- src/Options.jsx | 20 +++++++++++++++++++- tests/sizer.test.js | 45 +++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 70 insertions(+), 6 deletions(-) create mode 100644 tests/sizer.test.js diff --git a/examples/sizer.js b/examples/sizer.js index cb2b1e87..28407bab 100644 --- a/examples/sizer.js +++ b/examples/sizer.js @@ -7,7 +7,7 @@ import 'rc-select/assets/index.less'; class App extends React.Component { state = { - pageSize: 10, + pageSize: 15, }; onShowSizeChange = (current, pageSize) => { @@ -16,26 +16,27 @@ class App extends React.Component { }; render() { + const { pageSize } = this.state; return (
    option.toString() === pageSize.toString())) { + return pageSizeOptions; + } + return pageSizeOptions.concat([pageSize.toString()]).sort((a, b) => { + // eslint-disable-next-line no-restricted-globals + const numberA = isNaN(Number(a)) ? 0 : Number(a); + // eslint-disable-next-line no-restricted-globals + const numberB = isNaN(Number(b)) ? 0 : Number(b); + return numberA - numberB; + }); + } + + render() { + const { + pageSize, locale, rootPrefixCls, changeSize, @@ -82,6 +98,8 @@ class Options extends React.Component { return null; } + const pageSizeOptions = this.getPageSizeOptions(); + if (changeSize && Select) { const options = pageSizeOptions.map((opt, i) => ( diff --git a/tests/sizer.test.js b/tests/sizer.test.js new file mode 100644 index 00000000..1f2411a6 --- /dev/null +++ b/tests/sizer.test.js @@ -0,0 +1,45 @@ +import React from 'react'; +import { mount } from 'enzyme'; +import Select from 'rc-select'; +import Pagination from '../src'; + +describe('Pagination with sizer', () => { + it('should merge custom pageSize to pageSizeOptions', () => { + const wrapper = mount( + , + ); + wrapper.find(Select).find('input').simulate('mousedown'); + expect(wrapper.find(Select).find('.rc-select-item').length).toBe(5); + }); + + it('should not merge duplicated pageSize to pageSizeOptions', () => { + const wrapper = mount( + , + ); + wrapper.find(Select).find('input').simulate('mousedown'); + expect(wrapper.find(Select).find('.rc-select-item').length).toBe(4); + }); + + it('should merge pageSize to pageSizeOptions with proper order', () => { + const wrapper = mount( + , + ); + wrapper.find(Select).find('input').simulate('mousedown'); + expect(wrapper.find(Select).find('.rc-select-item').at(2).text()).toBe('45 条/页✓'); + }); +}); From eaa85d655458bfe8bca00c1ca3856feaadac6e81 Mon Sep 17 00:00:00 2001 From: afc163 Date: Fri, 22 May 2020 16:03:30 +0800 Subject: [PATCH 056/262] 2.2.2 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 9f8f9613..3d278f63 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "2.2.1", + "version": "2.2.2", "description": "pagination ui component for react", "keywords": [ "react", From 9844928da14d047b00f9149596cd8a53ee0f4d19 Mon Sep 17 00:00:00 2001 From: Amumu Date: Fri, 29 May 2020 11:26:09 +0800 Subject: [PATCH 057/262] ignore .vscode (#271) --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index e09cd3b0..f861fc87 100644 --- a/.gitignore +++ b/.gitignore @@ -29,4 +29,5 @@ yarn.lock package-lock.json coverage/ .doc -dist \ No newline at end of file +dist +.vscode \ No newline at end of file From b7e70f0056293a5065c29cddfdb6812938a7f672 Mon Sep 17 00:00:00 2001 From: afc163 Date: Fri, 29 May 2020 16:36:23 +0800 Subject: [PATCH 058/262] enable runtimeHelpers --- .fatherrc.js | 1 + package.json | 1 + 2 files changed, 2 insertions(+) diff --git a/.fatherrc.js b/.fatherrc.js index 767a2abf..912aa0aa 100644 --- a/.fatherrc.js +++ b/.fatherrc.js @@ -5,4 +5,5 @@ export default { eslint: true, prettier: true, }, + runtimeHelpers: true, }; diff --git a/package.json b/package.json index 3d278f63..19373cc4 100644 --- a/package.json +++ b/package.json @@ -43,6 +43,7 @@ "coverage": "father test --coverage" }, "dependencies": { + "@babel/runtime": "^7.10.1", "classnames": "^2.2.1" }, "devDependencies": { From 1704b817d947b2bed05fb77e53f16b1bd4b9dcfd Mon Sep 17 00:00:00 2001 From: afc163 Date: Fri, 29 May 2020 16:39:50 +0800 Subject: [PATCH 059/262] 2.2.3 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 19373cc4..17d0865d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "2.2.2", + "version": "2.2.3", "description": "pagination ui component for react", "keywords": [ "react", From 340c07d3da4d36979a8a762432535ac5d15e3c98 Mon Sep 17 00:00:00 2001 From: afc163 Date: Fri, 29 May 2020 16:40:56 +0800 Subject: [PATCH 060/262] 2.2.4 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 17d0865d..5e23cb4b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "2.2.3", + "version": "2.2.4", "description": "pagination ui component for react", "keywords": [ "react", From a2f8c62df658da3b2e98838702c5bba761d05c96 Mon Sep 17 00:00:00 2001 From: AbhijeetGaware <56472463+AbhijeetGaware@users.noreply.github.com> Date: Sat, 30 May 2020 23:12:22 +0530 Subject: [PATCH 061/262] Added Irish(ga_IE) locale --- src/locale/ga_IE.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 src/locale/ga_IE.js diff --git a/src/locale/ga_IE.js b/src/locale/ga_IE.js new file mode 100644 index 00000000..06ec39f5 --- /dev/null +++ b/src/locale/ga_IE.js @@ -0,0 +1,15 @@ +export default { + // Options.jsx + items_per_page: '/ leathanach', + jump_to: 'Téigh', + jump_to_confirm: 'dheimhnigh', + page: '', + + // Pagination.jsx + prev_page: 'Leathanach Roimhe Seo', + next_page: 'An chéad leathanach eile', + prev_5: '5 leathanach roimhe seo', + next_5: 'Ar Aghaidh 5 Leathanaigh', + prev_3: '3 leathanach roimhe seo', + next_3: 'Ar Aghaidh 3 Leathanaigh', +}; From 9257d8da5e3171691796f801ba8f0e35a6ac5074 Mon Sep 17 00:00:00 2001 From: afc163 Date: Sun, 31 May 2020 11:41:07 +0800 Subject: [PATCH 062/262] 2.2.5 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 5e23cb4b..62e4d37d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "2.2.4", + "version": "2.2.5", "description": "pagination ui component for react", "keywords": [ "react", From d42619661fd591f0e4da7f26162d43f0bc186876 Mon Sep 17 00:00:00 2001 From: zoomdong <1344492820@qq.com> Date: Fri, 12 Jun 2020 10:25:18 +0800 Subject: [PATCH 063/262] fix: change pageSize not call onChange (#272) * fix: change pageSize not call onChange * feat: adjust onShowSizeChange * adjust perttier * feat: add test case --- src/Pagination.jsx | 43 ++++++++++++++++++++++++------------------- tests/sizer.test.js | 24 +++++++++++++++++++++++- 2 files changed, 47 insertions(+), 20 deletions(-) diff --git a/src/Pagination.jsx b/src/Pagination.jsx index 782b741d..cce4d2e2 100644 --- a/src/Pagination.jsx +++ b/src/Pagination.jsx @@ -133,7 +133,7 @@ class Pagination extends React.Component { * @param {React.ReactNode | React.ComponentType} icon received icon. * @returns {React.ReactNode} */ - getItemIcon = icon => { + getItemIcon = (icon) => { const { prefixCls } = this.props; // eslint-disable-next-line jsx-a11y/anchor-has-content let iconNode = icon || ; @@ -161,11 +161,11 @@ class Pagination extends React.Component { return value; } - savePaginationNode = node => { + savePaginationNode = (node) => { this.paginationNode = node; }; - isValid = page => isInteger(page) && page !== this.state.current; + isValid = (page) => isInteger(page) && page !== this.state.current; shouldDisplayQuickJumper = () => { const { showQuickJumper, pageSize, total } = this.props; @@ -175,13 +175,13 @@ class Pagination extends React.Component { return showQuickJumper; }; - handleKeyDown = e => { + handleKeyDown = (e) => { if (e.keyCode === KEYCODE.ARROW_UP || e.keyCode === KEYCODE.ARROW_DOWN) { e.preventDefault(); } }; - handleKeyUp = e => { + handleKeyUp = (e) => { const value = this.getValidValue(e); const { currentInputValue } = this.state; if (value !== currentInputValue) { @@ -198,7 +198,7 @@ class Pagination extends React.Component { } }; - changePageSize = size => { + changePageSize = (size) => { let { current } = this.state; const newCurrent = calculatePage(size, this.state, this.props); current = current > newCurrent ? newCurrent : current; @@ -222,10 +222,15 @@ class Pagination extends React.Component { }); } } + + if ('onChange' in this.props && this.props.onChange) { + this.props.onChange(current, size); + } + this.props.onShowSizeChange(current, size); }; - handleChange = p => { + handleChange = (p) => { const { disabled } = this.props; let page = p; @@ -278,13 +283,13 @@ class Pagination extends React.Component { hasNext = () => this.state.current < calculatePage(undefined, this.state, this.props); - getShowSizeChanger() { - const { showSizeChanger, total, totalBoundaryShowSizeChanger } = this.props; - if (typeof showSizeChanger !== 'undefined') { - return showSizeChanger; - } - return total > totalBoundaryShowSizeChanger; - } + getShowSizeChanger() { + const { showSizeChanger, total, totalBoundaryShowSizeChanger } = this.props; + if (typeof showSizeChanger !== 'undefined') { + return showSizeChanger; + } + return total > totalBoundaryShowSizeChanger; + } runIfEnter = (event, callback, ...restParams) => { if (event.key === 'Enter' || event.charCode === 13) { @@ -292,23 +297,23 @@ class Pagination extends React.Component { } }; - runIfEnterPrev = e => { + runIfEnterPrev = (e) => { this.runIfEnter(e, this.prev); }; - runIfEnterNext = e => { + runIfEnterNext = (e) => { this.runIfEnter(e, this.next); }; - runIfEnterJumpPrev = e => { + runIfEnterJumpPrev = (e) => { this.runIfEnter(e, this.jumpPrev); }; - runIfEnterJumpNext = e => { + runIfEnterJumpNext = (e) => { this.runIfEnter(e, this.jumpNext); }; - handleGoTO = e => { + handleGoTO = (e) => { if (e.keyCode === KEYCODE.ENTER || e.type === 'click') { this.handleChange(this.state.currentInputValue); } diff --git a/tests/sizer.test.js b/tests/sizer.test.js index 1f2411a6..e8417c8f 100644 --- a/tests/sizer.test.js +++ b/tests/sizer.test.js @@ -40,6 +40,28 @@ describe('Pagination with sizer', () => { />, ); wrapper.find(Select).find('input').simulate('mousedown'); - expect(wrapper.find(Select).find('.rc-select-item').at(2).text()).toBe('45 条/页✓'); + expect(wrapper.find(Select).find('.rc-select-item').at(2).text()).toBe( + '45 条/页✓', + ); + }); + + it('should onChange called when pageSize change', () => { + const onChange = jest.fn(); + const wrapper = mount( + , + ); + wrapper.find(Select).find('input').simulate('mousedown'); + expect(wrapper.find(Select).find('.rc-select-item').at(2).text()).toBe( + '50 条/页', + ); + const pageSize1 = wrapper.find(Select).find('.rc-select-item').at(0); + pageSize1.simulate('click'); + expect(onChange).toBeCalled(); + expect(onChange).toHaveBeenLastCalledWith(1, 10); }); }); From de2909fee150476e559c42305a1239e6219a08e2 Mon Sep 17 00:00:00 2001 From: afc163 Date: Fri, 12 Jun 2020 12:20:43 +0800 Subject: [PATCH 064/262] 2.3.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 62e4d37d..01a89a6d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "2.2.5", + "version": "2.3.0", "description": "pagination ui component for react", "keywords": [ "react", From 3a0ee0dcf06abef7996abfda66c2ee4505c846e6 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 12 Jun 2020 12:21:06 +0800 Subject: [PATCH 065/262] Bump rc-select from 10.5.1 to 11.0.0 (#278) Bumps [rc-select](https://github.com/react-component/select) from 10.5.1 to 11.0.0. - [Release notes](https://github.com/react-component/select/releases) - [Changelog](https://github.com/react-component/select/blob/master/HISTORY.md) - [Commits](https://github.com/react-component/select/compare/v10.5.1...v11.0.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 01a89a6d..21c3913d 100644 --- a/package.json +++ b/package.json @@ -66,7 +66,7 @@ "react": "^16.0.0", "react-dom": "^16.0.0", "react-test-renderer": "^16.0.0", - "rc-select": "^10.0.1" + "rc-select": "^11.0.0" }, "peerDependencies": { "react": "^16.0.0", From 3094ee12450254b8691beedb9f25207577b6ec97 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=81=8F=E5=8F=B3?= Date: Fri, 19 Jun 2020 18:18:20 +0800 Subject: [PATCH 066/262] prev and next button should be a button (#282) close #280 --- src/Options.jsx | 24 +++++++++++++----------- src/Pagination.jsx | 23 ++++++++++++++++++----- tests/index.test.js | 31 +++++++++---------------------- tests/jumper.test.js | 32 +++++++++++++++++++++++++------- 4 files changed, 65 insertions(+), 45 deletions(-) diff --git a/src/Options.jsx b/src/Options.jsx index ffc864d6..7e4046bc 100644 --- a/src/Options.jsx +++ b/src/Options.jsx @@ -17,19 +17,19 @@ class Options extends React.Component { return !goInputText || isNaN(goInputText) ? current : Number(goInputText); } - buildOptionText = value => `${value} ${this.props.locale.items_per_page}`; + buildOptionText = (value) => `${value} ${this.props.locale.items_per_page}`; - changeSize = value => { + changeSize = (value) => { this.props.changeSize(Number(value)); }; - handleChange = e => { + handleChange = (e) => { this.setState({ goInputText: e.target.value, }); }; - handleBlur = e => { + handleBlur = (e) => { const { goButton, quickGo, rootPrefixCls } = this.props; if (goButton) { return; @@ -44,7 +44,7 @@ class Options extends React.Component { quickGo(this.getValidValue()); }; - go = e => { + go = (e) => { const { goInputText } = this.state; if (goInputText === '') { return; @@ -58,11 +58,12 @@ class Options extends React.Component { }; getPageSizeOptions() { - const { - pageSize, - pageSizeOptions, - } = this.props; - if (pageSizeOptions.some(option => option.toString() === pageSize.toString())) { + const { pageSize, pageSizeOptions } = this.props; + if ( + pageSizeOptions.some( + (option) => option.toString() === pageSize.toString(), + ) + ) { return pageSizeOptions; } return pageSizeOptions.concat([pageSize.toString()]).sort((a, b) => { @@ -117,7 +118,7 @@ class Options extends React.Component { dropdownMatchSelectWidth={false} value={(pageSize || pageSizeOptions[0]).toString()} onChange={this.changeSize} - getPopupContainer={triggerNode => triggerNode.parentNode} + getPopupContainer={(triggerNode) => triggerNode.parentNode} > {options} @@ -133,6 +134,7 @@ class Options extends React.Component { onClick={this.go} onKeyUp={this.go} disabled={disabled} + className={`${prefixCls}-quick-jumper-button`} > {locale.jump_to_confirm} diff --git a/src/Pagination.jsx b/src/Pagination.jsx index cce4d2e2..5fb14a57 100644 --- a/src/Pagination.jsx +++ b/src/Pagination.jsx @@ -133,10 +133,15 @@ class Pagination extends React.Component { * @param {React.ReactNode | React.ComponentType} icon received icon. * @returns {React.ReactNode} */ - getItemIcon = (icon) => { + getItemIcon = (icon, label) => { const { prefixCls } = this.props; - // eslint-disable-next-line jsx-a11y/anchor-has-content - let iconNode = icon || ; + let iconNode = icon || ( + }} + showQuickJumper={{ + goButton: ( + + ), + }} showTotal={(total, range) => `${range[0]} - ${range[1]} of ${total} items` } @@ -67,7 +73,7 @@ describe('simple quick jumper', () => { it('should quick jump to expect page', () => { const quickJumper = wrapper.find('.rc-pagination-simple'); const input = quickJumper.find('input'); - const goButton = quickJumper.find('button'); + const goButton = quickJumper.find('.go-button'); input.simulate('change', { target: { value: '2' } }); goButton.simulate('click'); expect(wrapper.state().current).toBe(2); @@ -81,7 +87,13 @@ describe('simple quick jumper', () => { onChange={onChange} defaultCurrent={1} total={25} - showQuickJumper={{ goButton: }} + showQuickJumper={{ + goButton: ( + + ), + }} showTotal={(total, range) => `${range[0]} - ${range[1]} of ${total} items` } @@ -92,7 +104,7 @@ describe('simple quick jumper', () => { it('should quick jump to expect page', () => { const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); const input = quickJumper.find('input'); - const goButton = quickJumper.find('button'); + const goButton = quickJumper.find('.go-button'); input.simulate('change', { target: { value: '2' } }); goButton.simulate('click'); expect(wrapper.state().current).toBe(2); @@ -120,7 +132,9 @@ describe('simple quick jumper', () => { showQuickJumper={{ goButton: true }} />, ); - expect(wrapper.find('button').exists()).toBe(true); + expect( + wrapper.find('.rc-pagination-options-quick-jumper-button').exists(), + ).toBe(true); }); it('goButton defaultly hidden', () => { @@ -132,7 +146,9 @@ describe('simple quick jumper', () => { showQuickJumper />, ); - expect(wrapper.find('button').exists()).toBe(false); + expect( + wrapper.find('.rc-pagination-options-quick-jumper-button').exists(), + ).toBe(false); }); it('goButton could be false', () => { @@ -144,6 +160,8 @@ describe('simple quick jumper', () => { showQuickJumper={{ goButton: false }} />, ); - expect(wrapper.find('button').exists()).toBe(false); + expect( + wrapper.find('.rc-pagination-options-quick-jumper-button').exists(), + ).toBe(false); }); }); From e78f755b4809ad4b2d5d28453a01c9d3f9a8d134 Mon Sep 17 00:00:00 2001 From: afc163 Date: Fri, 19 Jun 2020 18:19:46 +0800 Subject: [PATCH 067/262] 2.4.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 21c3913d..11402550 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "2.3.0", + "version": "2.4.0", "description": "pagination ui component for react", "keywords": [ "react", From 4ec069d317f5ca9f2e23645d8f04ee3a9ae65765 Mon Sep 17 00:00:00 2001 From: afc163 Date: Sat, 20 Jun 2020 00:48:02 +0800 Subject: [PATCH 068/262] fix label error of w3c validator, close #283 --- src/Pagination.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Pagination.jsx b/src/Pagination.jsx index 5fb14a57..ff7f9a25 100644 --- a/src/Pagination.jsx +++ b/src/Pagination.jsx @@ -138,7 +138,7 @@ class Pagination extends React.Component { let iconNode = icon || ( - ) : ( - - {goButton} - - ); - } - goInput = ( -
    - {locale.jump_to} - - {locale.page} - {gotoButton} -
    - ); + className={`${prefixCls}-quick-jumper-button`} + > + {locale.jump_to_confirm} + + ) : ( + + {goButton} + + ); } - return ( -
  • - {changeSelect} - {goInput} -
  • + goInput = ( +
    + {locale.jump_to} + + {locale.page} + {gotoButton} +
    ); } + + return ( +
  • + {changeSelect} + {goInput} +
  • + ); } export default Options; diff --git a/src/Pager.tsx b/src/Pager.tsx index 2755d919..41d2e2b2 100644 --- a/src/Pager.tsx +++ b/src/Pager.tsx @@ -1,10 +1,9 @@ /* eslint react/prop-types: 0 */ import classNames from 'classnames'; import React from 'react'; +import type { PaginationProps } from './interface'; -interface Props { - last?: boolean; - locale?: any; +export interface PagerProps extends Pick { rootPrefixCls: string; page: number; active?: boolean; @@ -13,17 +12,12 @@ interface Props { onClick?: (page: number) => void; onKeyPress?: ( e: React.KeyboardEvent, - onClick: Props['onClick'], - page: Props['page'], + onClick: PagerProps['onClick'], + page: PagerProps['page'], ) => void; - itemRender?: ( - page: number, - type: 'page' | 'prev' | 'next' | 'jump-prev' | 'jump-next', - element: React.ReactNode, - ) => React.ReactNode; } -const Pager: React.FC = (props) => { +const Pager: React.FC = (props) => { const { rootPrefixCls, page, @@ -35,11 +29,16 @@ const Pager: React.FC = (props) => { itemRender, } = props; const prefixCls = `${rootPrefixCls}-item`; - const cls = classNames(prefixCls, `${prefixCls}-${page}`, { - [`${prefixCls}-active`]: active, - [`${prefixCls}-disabled`]: !page, - [props.className]: className, - }); + + const cls = classNames( + prefixCls, + `${prefixCls}-${page}`, + { + [`${prefixCls}-active`]: active, + [`${prefixCls}-disabled`]: !page, + }, + className, + ); const handleClick = () => { onClick(page); @@ -50,19 +49,18 @@ const Pager: React.FC = (props) => { }; const pager = itemRender(page, 'page', {page}); - if (!pager) return null; - return ( + return pager ? (
  • {pager}
  • - ); + ) : null; }; export default Pager; diff --git a/src/Pagination.tsx b/src/Pagination.tsx index 8175b2af..f4ad1a4b 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -1,84 +1,26 @@ import classNames from 'classnames'; +import useMergedState from 'rc-util/lib/hooks/useMergedState'; +import KeyCode from 'rc-util/lib/KeyCode'; import pickAttrs from 'rc-util/lib/pickAttrs'; -import React, { cloneElement, isValidElement } from 'react'; -import KEYCODE from './KeyCode'; -import LOCALE from './locale/zh_CN'; +import warning from 'rc-util/lib/warning'; +import React from 'react'; +import type { PaginationProps } from './interface'; +import zhCN from './locale/zh_CN'; import Options from './Options'; +import type { PagerProps } from './Pager'; import Pager from './Pager'; -export interface PaginationLocale { - // Options.jsx - items_per_page?: string; - jump_to?: string; - jump_to_confirm?: string; - page?: string; - - // Pagination.jsx - prev_page?: string; - next_page?: string; - prev_5?: string; - next_5?: string; - prev_3?: string; - next_3?: string; -} - -export interface PaginationData { - className: string; - selectPrefixCls: string; - prefixCls: string; - pageSizeOptions: string[] | number[]; - - current: number; - defaultCurrent: number; - total: number; - totalBoundaryShowSizeChanger?: number; - pageSize: number; - defaultPageSize: number; - - hideOnSinglePage: boolean; - showSizeChanger: boolean; - showLessItems: boolean; - showPrevNextJumpers: boolean; - showQuickJumper: boolean | object; - showTitle: boolean; - simple: boolean; - disabled: boolean; - - locale: PaginationLocale; - - style: React.CSSProperties; - - selectComponentClass: React.ComponentType; - prevIcon: React.ComponentType | React.ReactNode; - nextIcon: React.ComponentType | React.ReactNode; - jumpPrevIcon: React.ComponentType | React.ReactNode; - jumpNextIcon: React.ComponentType | React.ReactNode; -} - -export interface PaginationProps extends Partial { - onChange?: (page: number, pageSize: number) => void; - onShowSizeChange?: (current: number, size: number) => void; - itemRender?: ( - page: number, - type: 'page' | 'prev' | 'next' | 'jump-prev' | 'jump-next', - element: React.ReactNode, - ) => React.ReactNode; - showTotal?: (total: number, range: [number, number]) => React.ReactNode; -} - -interface PaginationState { - current: number; - currentInputValue: number; - pageSize: number; -} +const defaultItemRender: PaginationProps['itemRender'] = ( + page, + type, + element, +) => element; -function noop() { -} +function noop() {} function isInteger(v: number) { const value = Number(v); return ( - // eslint-disable-next-line no-restricted-globals typeof value === 'number' && !Number.isNaN(value) && isFinite(value) && @@ -86,140 +28,87 @@ function isInteger(v: number) { ); } -const defaultItemRender: PaginationProps['itemRender'] = ( - page, - type, - element, -) => { - return element; -}; - -function calculatePage( - p: number | undefined, - state: PaginationState, - props: PaginationProps, -) { - const pageSize = typeof p === 'undefined' ? state.pageSize : p; - return Math.floor((props.total - 1) / pageSize) + 1; +function calculatePage(p: number | undefined, pageSize: number, total: number) { + const _pageSize = typeof p === 'undefined' ? pageSize : p; + return Math.floor((total - 1) / _pageSize) + 1; } -class Pagination extends React.Component { - static defaultProps = { - defaultCurrent: 1, - total: 0, - defaultPageSize: 10, - onChange: noop, - className: '', - selectPrefixCls: 'rc-select', - prefixCls: 'rc-pagination', - selectComponentClass: null, - hideOnSinglePage: false, - showPrevNextJumpers: true, - showQuickJumper: false, - showLessItems: false, - showTitle: true, - onShowSizeChange: noop, - locale: LOCALE, - style: {}, - itemRender: defaultItemRender, - totalBoundaryShowSizeChanger: 50, - }; - paginationNode = React.createRef(); - - constructor(props: PaginationProps) { - super(props); - - const hasOnChange = props.onChange !== noop; - const hasCurrent = 'current' in props; - if (hasCurrent && !hasOnChange) { - // eslint-disable-next-line no-console - console.warn( - 'Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.', - ); - } - - let current = props.defaultCurrent; - if ('current' in props) { - // eslint-disable-next-line prefer-destructuring - current = props.current; - } - - let pageSize = props.defaultPageSize; - if ('pageSize' in props) { - // eslint-disable-next-line prefer-destructuring - pageSize = props.pageSize; - } - - current = Math.min(current, calculatePage(pageSize, undefined, props)); - - this.state = { - current, - currentInputValue: current, - pageSize, - }; - } - - componentDidUpdate(_: PaginationProps, prevState: PaginationState) { - // When current page change, fix focused style of prev item - // A hacky solution of https://github.com/ant-design/ant-design/issues/8948 - const { prefixCls } = this.props; - if ( - prevState.current !== this.state.current && - this.paginationNode.current - ) { - const lastCurrentNode = - this.paginationNode.current.querySelector( - `.${prefixCls}-item-${prevState.current}`, - ); - if (lastCurrentNode && document.activeElement === lastCurrentNode) { - lastCurrentNode?.blur?.(); - } - } - } - - static getDerivedStateFromProps( - props: PaginationProps, - prevState: PaginationState, - ) { - const newState: Partial = {}; - - if ('current' in props) { - newState.current = props.current; - - if (props.current !== prevState.current) { - newState.currentInputValue = newState.current; - } - } - - if ('pageSize' in props && props.pageSize !== prevState.pageSize) { - let { current } = prevState; - const newCurrent = calculatePage(props.pageSize, prevState, props); - current = current > newCurrent ? newCurrent : current; - - if (!('current' in props)) { - newState.current = current; - newState.currentInputValue = current; - } - newState.pageSize = props.pageSize; - } - - return newState; +function Pagination(props: PaginationProps) { + const { + // cls + prefixCls = 'rc-pagination', + selectPrefixCls = 'rc-select', + className, + selectComponentClass, + + // control + current: currentProp, + defaultCurrent = 1, + total = 0, + pageSize: pageSizeProp, + defaultPageSize = 10, + onChange = noop, + + // config + hideOnSinglePage, + showPrevNextJumpers = true, + showQuickJumper, + showLessItems, + showTitle = true, + onShowSizeChange = noop, + locale = zhCN, + style, + totalBoundaryShowSizeChanger = 50, + disabled, + simple, + showTotal, + showSizeChanger: showSizeChangerProp, + pageSizeOptions, + + // render + itemRender = defaultItemRender, + jumpPrevIcon, + jumpNextIcon, + prevIcon, + nextIcon, + } = props; + + const paginationRef = React.useRef(null); + + const [pageSize, setPageSize] = useMergedState(10, { + value: pageSizeProp, + defaultValue: defaultPageSize, + }); + + const [current, setCurrent] = useMergedState(1, { + value: currentProp, + defaultValue: defaultCurrent, + postState: (c) => + Math.max(1, Math.min(c, calculatePage(undefined, pageSize, total))), + }); + + const [internalInputVal, setInternalInputVal] = React.useState(current); + + const hasOnChange = onChange !== noop; + const hasCurrent = 'current' in props; + + if (process.env.NODE_ENV !== 'production') { + warning( + hasCurrent ? hasOnChange : true, + 'You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.', + ); } - getJumpPrevPage = () => - Math.max(1, this.state.current - (this.props.showLessItems ? 3 : 5)); - - getJumpNextPage = () => - Math.min( - calculatePage(undefined, this.state, this.props), - this.state.current + (this.props.showLessItems ? 3 : 5), - ); + const jumpPrevPage = Math.max(1, current - (showLessItems ? 3 : 5)); + const jumpNextPage = Math.min( + calculatePage(undefined, pageSize, total), + current + (showLessItems ? 3 : 5), + ); - getItemIcon = ( + function getItemIcon( icon: React.ReactNode | React.ComponentType, label: string, - ) => { - const { prefixCls } = this.props; + ) { let iconNode = icon || ( - ); - } else { - gotoButton = ( - - {goButton} - - ); - } - gotoButton = ( -
  • - {gotoButton} -
  • - ); - } + const dataOrAriaAttributeProps = pickAttrs(props, { + aria: true, + data: true, + }); - const prev = this.renderPrev(prevPage); - return ( -
      - {totalText} - { - prev ? ( -
    • - {prev} -
    • - ) : null - } -
    • - - / - {allPages} -
    • -
    • - {this.renderNext(nextPage)} -
    • - -
    + const totalText = showTotal && ( +
  • + {showTotal(total, [ + total === 0 ? 0 : (current - 1) * pageSize + 1, + current * pageSize > total ? total : current * pageSize, + ])} +
  • + ); + + let jumpNext: React.ReactElement = null; + + const allPages = calculatePage(undefined, pageSize, total); + + // ================== Render ================== + // When hideOnSinglePage is true and there is only 1 page, hide the pager + if (hideOnSinglePage && total <= pageSize) { + return null; + } + + const pagerList: React.ReactElement[] = []; + const pagerProps: PagerProps = { + rootPrefixCls: prefixCls, + onClick: handleChange, + onKeyPress: runIfEnter, + showTitle, + itemRender, + page: -1, + }; + + const prevPage = current - 1 > 0 ? current - 1 : 0; + const nextPage = current + 1 < allPages ? current + 1 : allPages; + const goButton = showQuickJumper && (showQuickJumper as any).goButton; + + // ================== Simple ================== + // FIXME: ts type + let gotoButton: any = goButton; + let simplePager: React.ReactNode = null; + + if (simple) { + if (typeof goButton === 'boolean') { + gotoButton = ( + ); + } else { + + {goButton} + ; } - if (allPages <= 3 + pageBufferSize * 2) { - const pagerProps = { - locale, - rootPrefixCls: prefixCls, - onClick: this.handleChange, - onKeyPress: this.runIfEnter, - showTitle, - itemRender, - }; - if (!allPages) { - pagerList.push( - , - ); - } - for (let i = 1; i <= allPages; i += 1) { - const active = current === i; - pagerList.push( - , - ); - } - } else { - const prevItemTitle = showLessItems ? locale.prev_3 : locale.prev_5; - const nextItemTitle = showLessItems ? locale.next_3 : locale.next_5; + gotoButton = ( +
  • + {gotoButton} +
  • + ); - const jumpPrevContent = itemRender( - this.getJumpPrevPage(), - 'jump-prev', - this.getItemIcon(jumpPrevIcon, 'prev page'), - ); - const jumpNextContent = itemRender( - this.getJumpNextPage(), - 'jump-next', - this.getItemIcon(jumpNextIcon, 'next page'), - ); - if (showPrevNextJumpers) { - jumpPrev = ( - jumpPrevContent ?
  • - {jumpPrevContent} -
  • : null - ); - jumpNext = ( - jumpNextContent ?
  • - {jumpNextContent} -
  • : null - ); - } - lastPager = ( - + - ); - firstPager = ( + / + {allPages} + + ); + } + + // ====================== Normal ====================== + const pageBufferSize = showLessItems ? 1 : 2; + if (allPages <= 3 + pageBufferSize * 2) { + if (!allPages) { + pagerList.push( + className={`${prefixCls}-item-disabled`} + />, ); + } - let left = Math.max(1, current - pageBufferSize); - let right = Math.min(current + pageBufferSize, allPages); + for (let i = 1; i <= allPages; i += 1) { + pagerList.push( + , + ); + } + } else { + const prevItemTitle = showLessItems ? locale.prev_3 : locale.prev_5; + const nextItemTitle = showLessItems ? locale.next_3 : locale.next_5; + + const jumpPrevContent = itemRender( + jumpPrevPage, + 'jump-prev', + getItemIcon(jumpPrevIcon, 'prev page'), + ); + const jumpNextContent = itemRender( + jumpNextPage, + 'jump-next', + getItemIcon(jumpNextIcon, 'next page'), + ); - if (current - 1 <= pageBufferSize) { - right = 1 + pageBufferSize * 2; - } + if (showPrevNextJumpers) { + jumpPrev = jumpPrevContent ? ( +
  • + {jumpPrevContent} +
  • + ) : null; + + jumpNext = jumpNextContent ? ( +
  • + {jumpNextContent} +
  • + ) : null; + } - if (allPages - current <= pageBufferSize) { - left = allPages - pageBufferSize * 2; - } + let left = Math.max(1, current - pageBufferSize); + let right = Math.min(current + pageBufferSize, allPages); - for (let i = left; i <= right; i += 1) { - const active = current === i; - pagerList.push( - , - ); - } + if (current - 1 <= pageBufferSize) { + right = 1 + pageBufferSize * 2; + } + if (allPages - current <= pageBufferSize) { + left = allPages - pageBufferSize * 2; + } - if (current - 1 >= pageBufferSize * 2 && current !== 1 + 2) { - pagerList[0] = cloneElement(pagerList[0], { - className: `${prefixCls}-item-after-jump-prev`, - }); - pagerList.unshift(jumpPrev); - } - if ( - allPages - current >= pageBufferSize * 2 && - current !== allPages - 2 - ) { - pagerList[pagerList.length - 1] = cloneElement( - pagerList[pagerList.length - 1], - { - className: `${prefixCls}-item-before-jump-next`, - }, - ); - pagerList.push(jumpNext); - } + for (let i = left; i <= right; i += 1) { + pagerList.push( + , + ); + } - if (left !== 1) { - pagerList.unshift(firstPager); - } - if (right !== allPages) { - pagerList.push(lastPager); - } + if (current - 1 >= pageBufferSize * 2 && current !== 1 + 2) { + pagerList[0] = React.cloneElement(pagerList[0], { + className: classNames( + `${prefixCls}-item-after-jump-prev`, + pagerList[0].props.className, + ), + }); + + pagerList.unshift(jumpPrev); + } + + if (allPages - current >= pageBufferSize * 2 && current !== allPages - 2) { + pagerList[pagerList.length - 1] = React.cloneElement(pagerList.at(-1), { + className: classNames( + `${prefixCls}-item-before-jump-next`, + pagerList.at(-1).props.className, + ), + }); + + pagerList.push(jumpNext); } - const prevDisabled = !this.hasPrev() || !allPages; - const nextDisabled = !this.hasNext() || !allPages; + if (left !== 1) { + pagerList.unshift(); + } + if (right !== allPages) { + pagerList.push(); + } + } - const prev = this.renderPrev(prevPage); - const next = this.renderNext(nextPage); - return ( -
      - {totalText} - { - prev ? ( -
    • - {prev} -
    • - ) : null - } - {pagerList} - { - next ? ( -
    • - {next} -
    • - ) : null - } - -
    + {prev} + + ); + } + + let next = renderNext(nextPage); + if (next) { + let nextDisabled: boolean, nextTabIndex: number | null; + + if (simple) { + nextDisabled = !hasNext; + nextTabIndex = hasPrev ? 0 : null; + } else { + nextDisabled = !hasNext || !allPages; + nextTabIndex = nextDisabled ? null : 0; + } + + next = ( +
  • + {next} +
  • ); } + + const cls = classNames(prefixCls, className, { + [`${prefixCls}-simple`]: simple, + [`${prefixCls}-disabled`]: disabled, + }); + + return ( +
      + {totalText} + {prev} + {simple ? simplePager : pagerList} + {next} + +
    + ); } export default Pagination; diff --git a/src/index.ts b/src/index.ts index eaef04eb..47bf73a1 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1 +1,2 @@ export { default } from './Pagination'; +export type { PaginationProps } from './interface'; diff --git a/src/interface.ts b/src/interface.ts new file mode 100644 index 00000000..56ec86c6 --- /dev/null +++ b/src/interface.ts @@ -0,0 +1,67 @@ +import type React from 'react'; + +export interface PaginationLocale { + // Options + items_per_page?: string; + jump_to?: string; + jump_to_confirm?: string; + page?: string; + + // Pagination + prev_page?: string; + next_page?: string; + prev_5?: string; + next_5?: string; + prev_3?: string; + next_3?: string; + page_size?: string; +} + +export interface PaginationData { + className: string; + selectPrefixCls: string; + prefixCls: string; + pageSizeOptions: string[] | number[]; + + current: number; + defaultCurrent: number; + total: number; + totalBoundaryShowSizeChanger?: number; + pageSize: number; + defaultPageSize: number; + + hideOnSinglePage: boolean; + showSizeChanger: boolean; + showLessItems: boolean; + showPrevNextJumpers: boolean; + showQuickJumper: boolean | object; + showTitle: boolean; + simple: boolean; + disabled: boolean; + + locale: PaginationLocale; + + style: React.CSSProperties; + + selectComponentClass: React.ComponentType; + prevIcon: React.ComponentType | React.ReactNode; + nextIcon: React.ComponentType | React.ReactNode; + jumpPrevIcon: React.ComponentType | React.ReactNode; + jumpNextIcon: React.ComponentType | React.ReactNode; +} + +export interface PaginationProps extends Partial { + onChange?: (page: number, pageSize: number) => void; + onShowSizeChange?: (current: number, size: number) => void; + itemRender?: ( + page: number, + type: 'page' | 'prev' | 'next' | 'jump-prev' | 'jump-next', + element: React.ReactNode, + ) => React.ReactNode; + showTotal?: (total: number, range: [number, number]) => React.ReactNode; +} +export interface PaginationState { + current: number; + currentInputValue: number; + pageSize: number; +} diff --git a/src/locale/am.ts b/src/locale/am.ts index 97835632..fedb6a92 100644 --- a/src/locale/am.ts +++ b/src/locale/am.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ ግፅ', jump_to: 'ሂድ ወደ', jump_to_confirm: 'አረጋግጥ', page: 'ገፅ', - // Pagination.jsx + // Pagination prev_page: 'ያለፈው ገፅ', next_page: 'ቀጣይ ገፅ', prev_5: 'ያለፈው 5 ገፅ', @@ -14,3 +16,5 @@ export default { next_3: 'ቀጣይ 3 ገፅ', page_size: 'የገፅ መጠን', }; + +export default locale; diff --git a/src/locale/ar_EG.ts b/src/locale/ar_EG.ts index 7c99a914..45453008 100644 --- a/src/locale/ar_EG.ts +++ b/src/locale/ar_EG.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ الصفحة', jump_to: 'الذهاب إلى', jump_to_confirm: 'تأكيد', page: 'الصفحة', - // Pagination.jsx + // Pagination prev_page: 'الصفحة السابقة', next_page: 'الصفحة التالية', prev_5: 'خمس صفحات سابقة', @@ -14,3 +16,5 @@ export default { next_3: 'ثلاث صفحات تالية', page_size: 'مقاس الصفحه', }; + +export default locale; diff --git a/src/locale/az_AZ.ts b/src/locale/az_AZ.ts index d0960c55..921d6784 100644 --- a/src/locale/az_AZ.ts +++ b/src/locale/az_AZ.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ səhifə', jump_to: 'Get', jump_to_confirm: 'təsdiqlə', page: '', - // Pagination.jsx + // Pagination prev_page: 'Əvvəlki Səhifə', next_page: 'Növbəti Səhifə', prev_5: 'Əvvəlki 5 Səhifə', @@ -14,3 +16,5 @@ export default { next_3: 'Növbəti 3 Səhifə', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/bg_BG.ts b/src/locale/bg_BG.ts index b19c1396..b35f3db1 100644 --- a/src/locale/bg_BG.ts +++ b/src/locale/bg_BG.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ страница', jump_to: 'Към', jump_to_confirm: 'потвърждавам', page: '', - // Pagination.jsx + // Pagination prev_page: 'Предишна страница', next_page: 'Следваща страница', prev_5: 'Предишни 5 страници', @@ -14,3 +16,5 @@ export default { next_3: 'Следващи 3 страници', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/bn_BD.ts b/src/locale/bn_BD.ts index f9f90948..039d9c3b 100644 --- a/src/locale/bn_BD.ts +++ b/src/locale/bn_BD.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ পৃষ্ঠা', jump_to: 'যাও', jump_to_confirm: 'নিশ্চিত', page: 'পৃষ্ঠা', - // Pagination.jsx + // Pagination prev_page: 'আগের পৃষ্ঠা', next_page: 'পরের পৃষ্ঠা', prev_5: 'পূর্ববর্তী ৫ পৃষ্ঠা', @@ -14,3 +16,5 @@ export default { next_3: 'পরবর্তী ৩ পৃষ্ঠা', page_size: 'পাতার আকার', }; + +export default locale; diff --git a/src/locale/by_BY.ts b/src/locale/by_BY.ts index de64cf6b..5284b579 100644 --- a/src/locale/by_BY.ts +++ b/src/locale/by_BY.ts @@ -1,10 +1,12 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/старонка', jump_to: 'Перайсці', jump_to_confirm: 'Пацвердзіць', page: '', - // Pagination.jsx + // Pagination prev_page: 'Назад', next_page: 'Наперад', prev_5: 'Папярэднія 5', @@ -13,3 +15,5 @@ export default { next_3: 'Наступныя 3', page_size: 'памер старонкі', }; + +export default locale; diff --git a/src/locale/ca_ES.ts b/src/locale/ca_ES.ts index df4f01e4..22a16c58 100644 --- a/src/locale/ca_ES.ts +++ b/src/locale/ca_ES.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ pàgina', jump_to: 'Anar a', jump_to_confirm: 'Confirma', page: '', - // Pagination.jsx + // Pagination prev_page: 'Pàgina prèvia', next_page: 'Pàgina següent', prev_5: '5 pàgines prèvies', @@ -14,3 +16,5 @@ export default { next_3: '3 pàgines següents', page_size: 'mida de la pàgina', }; + +export default locale; diff --git a/src/locale/cs_CZ.ts b/src/locale/cs_CZ.ts index 730e79de..cdba815e 100644 --- a/src/locale/cs_CZ.ts +++ b/src/locale/cs_CZ.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ strana', jump_to: 'Přejít', jump_to_confirm: 'potvrdit', page: '', - // Pagination.jsx + // Pagination prev_page: 'Předchozí strana', next_page: 'Následující strana', prev_5: 'Předchozích 5 stran', @@ -14,3 +16,5 @@ export default { next_3: 'Následující 3 strany', page_size: 'velikost stránky', }; + +export default locale; diff --git a/src/locale/da_DK.ts b/src/locale/da_DK.ts index f65d82e3..24dbbd11 100644 --- a/src/locale/da_DK.ts +++ b/src/locale/da_DK.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ side', jump_to: 'Gå til', jump_to_confirm: 'bekræft', page: 'Side', - // Pagination.jsx + // Pagination prev_page: 'Forrige Side', next_page: 'Næste Side', prev_5: 'Forrige 5 Sider', @@ -14,3 +16,5 @@ export default { next_3: 'Næste 3 Sider', page_size: 'sidestørrelse', }; + +export default locale; diff --git a/src/locale/de_DE.ts b/src/locale/de_DE.ts index e0136afb..aa595cef 100644 --- a/src/locale/de_DE.ts +++ b/src/locale/de_DE.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ Seite', jump_to: 'Gehe zu', jump_to_confirm: 'bestätigen', page: 'Seite', - // Pagination.jsx + // Pagination prev_page: 'Vorherige Seite', next_page: 'Nächste Seite', prev_5: '5 Seiten zurück', @@ -14,3 +16,5 @@ export default { next_3: '3 Seiten vor', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/el_GR.ts b/src/locale/el_GR.ts index e61327c3..41ef95dd 100644 --- a/src/locale/el_GR.ts +++ b/src/locale/el_GR.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ σελίδα', jump_to: 'Μετάβαση', jump_to_confirm: 'επιβεβαιώνω', page: '', - // Pagination.jsx + // Pagination prev_page: 'Προηγούμενη Σελίδα', next_page: 'Επόμενη Σελίδα', prev_5: 'Προηγούμενες 5 Σελίδες', @@ -14,3 +16,5 @@ export default { next_3: 'Επόμενες 3 Σελίδες', page_size: 'Μέγεθος σελίδας', }; + +export default locale; diff --git a/src/locale/en_GB.ts b/src/locale/en_GB.ts index a0c5ff5f..481ff0ef 100644 --- a/src/locale/en_GB.ts +++ b/src/locale/en_GB.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ page', jump_to: 'Go to', jump_to_confirm: 'confirm', page: 'Page', - // Pagination.jsx + // Pagination prev_page: 'Previous Page', next_page: 'Next Page', prev_5: 'Previous 5 Pages', @@ -14,3 +16,5 @@ export default { next_3: 'Next 3 Pages', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/en_US.ts b/src/locale/en_US.ts index a0c5ff5f..481ff0ef 100644 --- a/src/locale/en_US.ts +++ b/src/locale/en_US.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ page', jump_to: 'Go to', jump_to_confirm: 'confirm', page: 'Page', - // Pagination.jsx + // Pagination prev_page: 'Previous Page', next_page: 'Next Page', prev_5: 'Previous 5 Pages', @@ -14,3 +16,5 @@ export default { next_3: 'Next 3 Pages', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/es_ES.ts b/src/locale/es_ES.ts index 2a4a6dce..7139b67c 100644 --- a/src/locale/es_ES.ts +++ b/src/locale/es_ES.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ página', jump_to: 'Ir a', jump_to_confirm: 'confirmar', page: 'Página', - // Pagination.jsx + // Pagination prev_page: 'Página anterior', next_page: 'Página siguiente', prev_5: '5 páginas previas', @@ -14,3 +16,5 @@ export default { next_3: '3 páginas siguientes', page_size: 'tamaño de página', }; + +export default locale; diff --git a/src/locale/et_EE.ts b/src/locale/et_EE.ts index 548b0522..5978de8e 100644 --- a/src/locale/et_EE.ts +++ b/src/locale/et_EE.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ leheküljel', jump_to: 'Hüppa', jump_to_confirm: 'Kinnitage', page: '', - // Pagination.jsx + // Pagination prev_page: 'Eelmine leht', next_page: 'Järgmine leht', prev_5: 'Eelmised 5 lehekülge', @@ -14,3 +16,5 @@ export default { next_3: 'Järgmised 3 lehekülge', page_size: 'lehe suurus', }; + +export default locale; diff --git a/src/locale/eu_ES.ts b/src/locale/eu_ES.ts index 281bcb48..cf283b4f 100644 --- a/src/locale/eu_ES.ts +++ b/src/locale/eu_ES.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ orrialde', jump_to: '-ra joan', jump_to_confirm: 'baieztatu', page: 'Orrialde', - // Pagination.jsx + // Pagination prev_page: 'Aurreko orrialdea', next_page: 'Hurrengo orrialdea', prev_5: 'aurreko 5 orrialde', @@ -14,3 +16,5 @@ export default { next_3: 'hurrengo 3 orrialde', page_size: 'orrien tamaina', }; + +export default locale; diff --git a/src/locale/fa_IR.ts b/src/locale/fa_IR.ts index 64de0aa5..240ae182 100644 --- a/src/locale/fa_IR.ts +++ b/src/locale/fa_IR.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ صفحه', jump_to: 'برو به', jump_to_confirm: 'تایید', page: '', - // Pagination.jsx + // Pagination prev_page: 'صفحه قبلی', next_page: 'صفحه بعدی', prev_5: '۵ صفحه قبلی', @@ -14,3 +16,5 @@ export default { next_3: '۳ صفحه بعدی', page_size: 'اندازه صفحه', }; + +export default locale; diff --git a/src/locale/fi_FI.ts b/src/locale/fi_FI.ts index 19fb1a05..41e8ebde 100644 --- a/src/locale/fi_FI.ts +++ b/src/locale/fi_FI.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ sivu', jump_to: 'Mene', jump_to_confirm: 'Potvrdite', page: 'Sivu', - // Pagination.jsx + // Pagination prev_page: 'Edellinen sivu', next_page: 'Seuraava sivu', prev_5: 'Edelliset 5 sivua', @@ -14,3 +16,5 @@ export default { next_3: 'Seuraavat 3 sivua', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/fr_BE.ts b/src/locale/fr_BE.ts index d604531a..08be8534 100644 --- a/src/locale/fr_BE.ts +++ b/src/locale/fr_BE.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ page', jump_to: 'Aller à', jump_to_confirm: 'confirmer', page: '', - // Pagination.jsx + // Pagination prev_page: 'Page précédente', next_page: 'Page suivante', prev_5: '5 Pages précédentes', @@ -14,3 +16,5 @@ export default { next_3: '3 Pages suivantes', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/fr_CA.ts b/src/locale/fr_CA.ts index 914dbb87..08179c48 100644 --- a/src/locale/fr_CA.ts +++ b/src/locale/fr_CA.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ page', jump_to: 'Aller à', jump_to_confirm: 'confirmer', page: 'Page', - // Pagination.jsx + // Pagination prev_page: 'Page précédente', next_page: 'Page suivante', prev_5: '5 Pages précédentes', @@ -14,3 +16,5 @@ export default { next_3: '3 Pages suivantes', page_size: 'taille de la page', }; + +export default locale; diff --git a/src/locale/fr_FR.ts b/src/locale/fr_FR.ts index 914dbb87..08179c48 100644 --- a/src/locale/fr_FR.ts +++ b/src/locale/fr_FR.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ page', jump_to: 'Aller à', jump_to_confirm: 'confirmer', page: 'Page', - // Pagination.jsx + // Pagination prev_page: 'Page précédente', next_page: 'Page suivante', prev_5: '5 Pages précédentes', @@ -14,3 +16,5 @@ export default { next_3: '3 Pages suivantes', page_size: 'taille de la page', }; + +export default locale; diff --git a/src/locale/ga_IE.ts b/src/locale/ga_IE.ts index 1c19fff2..44df59ff 100644 --- a/src/locale/ga_IE.ts +++ b/src/locale/ga_IE.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ leathanach', jump_to: 'Téigh', jump_to_confirm: 'dheimhnigh', page: '', - // Pagination.jsx + // Pagination prev_page: 'Leathanach Roimhe Seo', next_page: 'An chéad leathanach eile', prev_5: '5 leathanach roimhe seo', @@ -14,3 +16,5 @@ export default { next_3: 'Ar Aghaidh 3 Leathanaigh', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/gl_ES.ts b/src/locale/gl_ES.ts index 91391389..1885bfb3 100644 --- a/src/locale/gl_ES.ts +++ b/src/locale/gl_ES.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ páxina', jump_to: 'Ir a', jump_to_confirm: 'confirmar', page: '', - // Pagination.jsx + // Pagination prev_page: 'Páxina anterior', next_page: 'Páxina seguinte', prev_5: '5 páxinas previas', @@ -14,3 +16,5 @@ export default { next_3: '3 páxinas seguintes', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/he_IL.ts b/src/locale/he_IL.ts index 647abd16..f1825528 100644 --- a/src/locale/he_IL.ts +++ b/src/locale/he_IL.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ עמוד', jump_to: 'עבור אל', jump_to_confirm: 'אישור', page: '', - // Pagination.jsx + // Pagination prev_page: 'העמוד הקודם', next_page: 'העמוד הבא', prev_5: '5 עמודים קודמים', @@ -14,3 +16,5 @@ export default { next_3: '3 עמודים הבאים', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/hi_IN.ts b/src/locale/hi_IN.ts index 08242710..c204a323 100644 --- a/src/locale/hi_IN.ts +++ b/src/locale/hi_IN.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ पृष्ठ', jump_to: 'इस पर चलें', jump_to_confirm: 'पुष्टि करें', page: '', - // Pagination.jsx + // Pagination prev_page: 'पिछला पृष्ठ', next_page: 'अगला पृष्ठ', prev_5: 'पिछले 5 पृष्ठ', @@ -14,3 +16,5 @@ export default { next_3: 'अगले 3 पेज', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/hr_HR.ts b/src/locale/hr_HR.ts index c0af94fc..1d8ddd5c 100644 --- a/src/locale/hr_HR.ts +++ b/src/locale/hr_HR.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ str', jump_to: 'Idi na', jump_to_confirm: 'potvrdi', page: '', - // Pagination.jsx + // Pagination prev_page: 'Prijašnja stranica', next_page: 'Sljedeća stranica', prev_5: 'Prijašnjih 5 stranica', @@ -14,3 +16,5 @@ export default { next_3: 'Sljedeće 3 stranice', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/hu_HU.ts b/src/locale/hu_HU.ts index 58bc4ebc..5355c67c 100644 --- a/src/locale/hu_HU.ts +++ b/src/locale/hu_HU.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ oldal', // '/ page', jump_to: 'Ugrás', // 'Goto', jump_to_confirm: 'megerősít', // 'confirm', page: '', - // Pagination.jsx + // Pagination prev_page: 'Előző oldal', // 'Previous Page', next_page: 'Következő oldal', // 'Next Page', prev_5: 'Előző 5 oldal', // 'Previous 5 Pages', @@ -14,3 +16,5 @@ export default { next_3: 'Következő 3 oldal', // 'Next 3 Pages', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/id_ID.ts b/src/locale/id_ID.ts index 90f0a99e..0a96afab 100644 --- a/src/locale/id_ID.ts +++ b/src/locale/id_ID.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ halaman', jump_to: 'Menuju', jump_to_confirm: 'konfirmasi', page: 'Halaman', - // Pagination.jsx + // Pagination prev_page: 'Halaman Sebelumnya', next_page: 'Halaman Berikutnya', prev_5: '5 Halaman Sebelumnya', @@ -14,3 +16,5 @@ export default { next_3: '3 Halaman Berikutnya', page_size: 'ukuran halaman', }; + +export default locale; diff --git a/src/locale/is_IS.ts b/src/locale/is_IS.ts index 5be73143..ef035104 100644 --- a/src/locale/is_IS.ts +++ b/src/locale/is_IS.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ síðu', jump_to: 'Síða', jump_to_confirm: 'staðfest', page: '', - // Pagination.jsx + // Pagination prev_page: 'Fyrri síða', next_page: 'Næsta síða', prev_5: 'Til baka 5 síður', @@ -14,3 +16,5 @@ export default { next_3: 'Áfram 3 síður', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/it_IT.ts b/src/locale/it_IT.ts index 94acd80f..ae3c8967 100644 --- a/src/locale/it_IT.ts +++ b/src/locale/it_IT.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ pagina', jump_to: 'vai a', jump_to_confirm: 'Conferma', page: 'Pagina', - // Pagination.jsx + // Pagination prev_page: 'Pagina precedente', next_page: 'Pagina successiva', prev_5: 'Precedente 5 pagine', @@ -14,3 +16,5 @@ export default { next_3: 'Prossime 3 pagine', page_size: 'dimensioni della pagina', }; + +export default locale; diff --git a/src/locale/ja_JP.ts b/src/locale/ja_JP.ts index 2be659a2..a954e093 100644 --- a/src/locale/ja_JP.ts +++ b/src/locale/ja_JP.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '件 / ページ', jump_to: '移動', jump_to_confirm: '確認する', page: 'ページ', - // Pagination.jsx + // Pagination prev_page: '前のページ', next_page: '次のページ', prev_5: '前 5ページ', @@ -14,3 +16,5 @@ export default { next_3: '次 3ページ', page_size: 'ページサイズ', }; + +export default locale; diff --git a/src/locale/ka_GE.ts b/src/locale/ka_GE.ts index 3777003f..db930520 100644 --- a/src/locale/ka_GE.ts +++ b/src/locale/ka_GE.ts @@ -1,10 +1,12 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ გვერდი.', jump_to: 'გადასვლა', jump_to_confirm: 'დადასტურება', page: '', - // Pagination.jsx + // Pagination prev_page: 'წინა გვერდი', next_page: 'შემდეგი გვერდი', prev_5: 'წინა 5 გვერდი', @@ -13,3 +15,5 @@ export default { next_3: 'შემდეგი 3 გვერდი', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/kk_KZ.ts b/src/locale/kk_KZ.ts index 3e7913b5..3b4e9300 100644 --- a/src/locale/kk_KZ.ts +++ b/src/locale/kk_KZ.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ бет', jump_to: 'Секіру', jump_to_confirm: 'Растау', page: '', - // Pagination.jsx + // Pagination prev_page: 'Артқа', next_page: 'Алға', prev_5: 'Алдыңғы 5', @@ -14,3 +16,5 @@ export default { next_3: 'Келесі 3', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/km_KH.ts b/src/locale/km_KH.ts index 68ae005f..d7be29f5 100644 --- a/src/locale/km_KH.ts +++ b/src/locale/km_KH.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ ទំព័រ', jump_to: 'លោត​ទៅ', jump_to_confirm: 'បញ្ជាក់', page: 'ទំព័រ', - // Pagination.jsx + // Pagination prev_page: 'ទំព័រ​មុន', next_page: 'ទំព័រ​​បន្ទាប់', prev_5: '៥ ទំព័រថយក្រោយ', @@ -14,3 +16,5 @@ export default { next_3: '៣ ទំព័រទៅមុខ', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/kmr_IQ.ts b/src/locale/kmr_IQ.ts index 5ab84ba0..5995cf26 100644 --- a/src/locale/kmr_IQ.ts +++ b/src/locale/kmr_IQ.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ rûpel', jump_to: 'Biçe', jump_to_confirm: 'piştrast bike', page: '', - // Pagination.jsx + // Pagination prev_page: 'Rûpelê Pêş', next_page: 'Rûpelê Paş', prev_5: '5 Rûpelên Pêş', @@ -14,3 +16,5 @@ export default { next_3: '3 Rûpelên Paş', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/kn_IN.ts b/src/locale/kn_IN.ts index 35ee1284..085c7b76 100644 --- a/src/locale/kn_IN.ts +++ b/src/locale/kn_IN.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ ಪುಟ', jump_to: 'ಜಿಗಿತವನ್ನು', jump_to_confirm: 'ಖಚಿತಪಡಿಸಲು ಜಿಗಿತವನ್ನು', page: '', - // Pagination.jsx + // Pagination prev_page: 'ಹಿಂದಿನ ಪುಟ', next_page: 'ಮುಂದಿನ ಪುಟ', prev_5: 'ಹಿಂದಿನ 5 ಪುಟಗಳು', @@ -14,3 +16,5 @@ export default { next_3: 'ಮುಂದಿನ 3 ಪುಟಗಳು', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/ko_KR.ts b/src/locale/ko_KR.ts index e7600f3f..fa8acf1c 100644 --- a/src/locale/ko_KR.ts +++ b/src/locale/ko_KR.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ 페이지', jump_to: '이동하기', jump_to_confirm: '확인하다', page: '페이지', - // Pagination.jsx + // Pagination prev_page: '이전 페이지', next_page: '다음 페이지', prev_5: '이전 5 페이지', @@ -14,3 +16,5 @@ export default { next_3: '다음 3 페이지', page_size: '페이지 크기', }; + +export default locale; diff --git a/src/locale/lt_LT.ts b/src/locale/lt_LT.ts index 26016d3f..e1066224 100644 --- a/src/locale/lt_LT.ts +++ b/src/locale/lt_LT.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ psl.', jump_to: 'Pereiti į', jump_to_confirm: 'patvirtinti', page: 'psl.', - // Pagination.jsx + // Pagination prev_page: 'Atgal', next_page: 'Pirmyn', prev_5: 'Grįžti 5 psl.', @@ -14,3 +16,5 @@ export default { next_3: 'Peršokti 3 psl.', page_size: 'Puslapio dydis', }; + +export default locale; diff --git a/src/locale/lv_LV.ts b/src/locale/lv_LV.ts index dd883e51..320368b8 100644 --- a/src/locale/lv_LV.ts +++ b/src/locale/lv_LV.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ lappuse', jump_to: 'iet uz', jump_to_confirm: 'apstiprināt', page: '', - // Pagination.jsx + // Pagination prev_page: 'Iepriekšējā lapa', next_page: 'Nākamā lapaspuse', prev_5: 'Iepriekšējās 5 lapas', @@ -14,3 +16,5 @@ export default { next_3: 'Nākamās 3 lapas', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/mk_MK.ts b/src/locale/mk_MK.ts index 40b7cd86..e1c494ec 100644 --- a/src/locale/mk_MK.ts +++ b/src/locale/mk_MK.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ стр', jump_to: 'Оди на', jump_to_confirm: 'потврди', page: '', - // Pagination.jsx + // Pagination prev_page: 'Претходна страница', next_page: 'Наредна страница', prev_5: 'Претходни 5 страници', @@ -14,3 +16,5 @@ export default { next_3: 'Наредни 3 страници', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/ml_IN.ts b/src/locale/ml_IN.ts index 6b80ad52..d761ce46 100644 --- a/src/locale/ml_IN.ts +++ b/src/locale/ml_IN.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ പേജ്', jump_to: 'അടുത്തത്', jump_to_confirm: 'ഉറപ്പാക്കുക', page: '', - // Pagination.jsx + // Pagination prev_page: 'മുൻപുള്ള പേജ്', next_page: 'അടുത്ത പേജ്', prev_5: 'മുൻപുള്ള 5 പേജുകൾ', @@ -14,3 +16,5 @@ export default { next_3: 'അടുത്ത 3 പേജുകൾ', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/mn_MN.ts b/src/locale/mn_MN.ts index f5a58ac8..18199be9 100644 --- a/src/locale/mn_MN.ts +++ b/src/locale/mn_MN.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ хуудас', jump_to: 'Шилжих', jump_to_confirm: 'сонгох', page: '', - // Pagination.jsx + // Pagination prev_page: 'Өмнөх хуудас', next_page: 'Дараагийн хуудас', prev_5: 'Дараагийн 5 хуудас', @@ -14,3 +16,5 @@ export default { next_3: 'Дараагийн 3 хуудас', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/ms_MY.ts b/src/locale/ms_MY.ts index 45ccd3fa..2e3366d1 100644 --- a/src/locale/ms_MY.ts +++ b/src/locale/ms_MY.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ halaman', jump_to: 'Lompat ke', jump_to_confirm: 'Sahkan', page: '', - // Pagination.jsx + // Pagination prev_page: 'Halaman sebelumnya', next_page: 'Halam seterusnya', prev_5: '5 halaman sebelum', @@ -14,3 +16,5 @@ export default { next_3: '3 halaman seterusnya', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/my_MM.ts b/src/locale/my_MM.ts index fc49d785..ad84ab40 100644 --- a/src/locale/my_MM.ts +++ b/src/locale/my_MM.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ စာမျက်နှာ', jump_to: 'သွားရန်', jump_to_confirm: 'သေချာပြီ', page: '', - // Pagination.jsx + // Pagination prev_page: 'ယခင်စာမျက်နှာ', next_page: 'နောက်စာမျက်နှာ', prev_5: 'ယခင် ၅ခုမြောက်', @@ -14,3 +16,5 @@ export default { next_3: 'နောက် ၃ခုမြောက်', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/nb_NO.ts b/src/locale/nb_NO.ts index 8300a424..3b357934 100644 --- a/src/locale/nb_NO.ts +++ b/src/locale/nb_NO.ts @@ -1,10 +1,12 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ side', jump_to: 'Gå til side', page: 'Side', - // Pagination.jsx + // Pagination prev_page: 'Forrige side', next_page: 'Neste side', prev_5: '5 forrige', @@ -13,3 +15,5 @@ export default { next_3: '3 neste', page_size: 'sidestørrelse', }; + +export default locale; diff --git a/src/locale/nl_BE.ts b/src/locale/nl_BE.ts index 55a76ca3..f3264b4e 100644 --- a/src/locale/nl_BE.ts +++ b/src/locale/nl_BE.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ pagina', jump_to: 'Ga naar', jump_to_confirm: 'bevestigen', page: '', - // Pagination.jsx + // Pagination prev_page: 'Vorige pagina', next_page: 'Volgende pagina', prev_5: "Vorige 5 pagina's", @@ -14,3 +16,5 @@ export default { next_3: "Volgende 3 pagina's", page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/nl_NL.ts b/src/locale/nl_NL.ts index c3773915..1a5375c1 100644 --- a/src/locale/nl_NL.ts +++ b/src/locale/nl_NL.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ pagina', jump_to: 'Ga naar', jump_to_confirm: 'bevestigen', page: 'Pagina', - // Pagination.jsx + // Pagination prev_page: 'Vorige pagina', next_page: 'Volgende pagina', prev_5: "Vorige 5 pagina's", @@ -14,3 +16,5 @@ export default { next_3: "Volgende 3 pagina's", page_size: 'pagina grootte', }; + +export default locale; diff --git a/src/locale/pa_IN.ts b/src/locale/pa_IN.ts index 500c43d2..1df09fb0 100644 --- a/src/locale/pa_IN.ts +++ b/src/locale/pa_IN.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ ਪੰਨਾ', jump_to: 'Goto', jump_to_confirm: 'ਪੁਸ਼ਟੀ ਕਰੋ', page: 'ਪੰਨਾ', - // Pagination.jsx + // Pagination prev_page: 'ਪਿਛਲਾ ਪੰਨਾ', next_page: 'ਅਗਲਾ ਪੰਨਾ', prev_5: 'ਪਿਛਲੇ 5 ਪੰਨੇ', @@ -14,3 +16,5 @@ export default { next_3: 'ਅਗਲੇ 3 ਪੰਨੇ', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/pb_IN.ts b/src/locale/pb_IN.ts index 500c43d2..1df09fb0 100644 --- a/src/locale/pb_IN.ts +++ b/src/locale/pb_IN.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ ਪੰਨਾ', jump_to: 'Goto', jump_to_confirm: 'ਪੁਸ਼ਟੀ ਕਰੋ', page: 'ਪੰਨਾ', - // Pagination.jsx + // Pagination prev_page: 'ਪਿਛਲਾ ਪੰਨਾ', next_page: 'ਅਗਲਾ ਪੰਨਾ', prev_5: 'ਪਿਛਲੇ 5 ਪੰਨੇ', @@ -14,3 +16,5 @@ export default { next_3: 'ਅਗਲੇ 3 ਪੰਨੇ', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/pl_PL.ts b/src/locale/pl_PL.ts index 6a8288c9..94f2af73 100644 --- a/src/locale/pl_PL.ts +++ b/src/locale/pl_PL.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: 'na stronę', jump_to: 'Idź do', jump_to_confirm: 'potwierdź', page: '', - // Pagination.jsx + // Pagination prev_page: 'Poprzednia strona', next_page: 'Następna strona', prev_5: 'Poprzednie 5 stron', @@ -14,3 +16,5 @@ export default { next_3: 'Następne 3 strony', page_size: 'rozmiar strony', }; + +export default locale; diff --git a/src/locale/pt_BR.ts b/src/locale/pt_BR.ts index e241ed31..68713507 100644 --- a/src/locale/pt_BR.ts +++ b/src/locale/pt_BR.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ página', jump_to: 'Vá até', jump_to_confirm: 'confirme', page: 'Página', - // Pagination.jsx + // Pagination prev_page: 'Página anterior', next_page: 'Próxima página', prev_5: '5 páginas anteriores', @@ -14,3 +16,5 @@ export default { next_3: '3 próximas páginas', page_size: 'tamanho da página', }; + +export default locale; diff --git a/src/locale/pt_PT.ts b/src/locale/pt_PT.ts index b45a690f..d82c1903 100644 --- a/src/locale/pt_PT.ts +++ b/src/locale/pt_PT.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ página', jump_to: 'Saltar', jump_to_confirm: 'confirmar', page: 'Página', - // Pagination.jsx + // Pagination prev_page: 'Página Anterior', next_page: 'Página Seguinte', prev_5: 'Recuar 5 Páginas', @@ -14,3 +16,5 @@ export default { next_3: 'Avançar 3 Páginas', page_size: 'mărimea paginii', }; + +export default locale; diff --git a/src/locale/ro_RO.ts b/src/locale/ro_RO.ts index 8f7d967b..fe40e368 100644 --- a/src/locale/ro_RO.ts +++ b/src/locale/ro_RO.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ pagină', jump_to: 'Mergi la', jump_to_confirm: 'confirm', page: '', - // Pagination.jsx + // Pagination prev_page: 'Pagina Anterioară', next_page: 'Pagina Următoare', prev_5: '5 Pagini Anterioare', @@ -14,3 +16,5 @@ export default { next_3: '3 Pagini Următoare', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/ru_RU.ts b/src/locale/ru_RU.ts index c9dc5c53..7aa3fd1a 100644 --- a/src/locale/ru_RU.ts +++ b/src/locale/ru_RU.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ стр.', jump_to: 'Перейти', jump_to_confirm: 'подтвердить', page: 'Страница', - // Pagination.jsx + // Pagination prev_page: 'Назад', next_page: 'Вперед', prev_5: 'Предыдущие 5', @@ -14,3 +16,5 @@ export default { next_3: 'Следующие 3', page_size: 'размер страницы', }; + +export default locale; diff --git a/src/locale/si_LK.ts b/src/locale/si_LK.ts index 43178591..cb83031b 100644 --- a/src/locale/si_LK.ts +++ b/src/locale/si_LK.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ පිටුව', jump_to: 'වෙත යන්න', jump_to_confirm: 'තහවුරු', page: 'පිටුව', - // Pagination.jsx + // Pagination prev_page: 'කලින් පිටුව', next_page: 'ඊළඟ පිටුව', prev_5: 'කලින් පිටු 5', @@ -14,3 +16,5 @@ export default { next_3: 'ඊළඟ පිටු 3', page_size: 'පිටුවේ ප්‍රමාණය', }; + +export default locale; diff --git a/src/locale/sk_SK.ts b/src/locale/sk_SK.ts index e8c0ee04..a994cb5f 100644 --- a/src/locale/sk_SK.ts +++ b/src/locale/sk_SK.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ strana', jump_to: 'Choď na', jump_to_confirm: 'potvrdit', page: '', - // Pagination.jsx + // Pagination prev_page: 'Predchádzajúca strana', next_page: 'Nasledujúca strana', prev_5: 'Predchádzajúcich 5 strán', @@ -14,3 +16,5 @@ export default { next_3: 'Nasledujúce 3 strany', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/sl_SI.ts b/src/locale/sl_SI.ts index 47de1c17..e09728d7 100644 --- a/src/locale/sl_SI.ts +++ b/src/locale/sl_SI.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ strani', jump_to: 'Pojdi na', jump_to_confirm: 'potrdi', page: '', - // Pagination.jsx + // Pagination prev_page: 'Prejšnja stran', next_page: 'Naslednja stran', prev_5: 'Prejšnjih 5 strani', @@ -14,3 +16,5 @@ export default { next_3: 'Naslednje 3 strani', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/sr_RS.ts b/src/locale/sr_RS.ts index cce683b1..eee0cc12 100644 --- a/src/locale/sr_RS.ts +++ b/src/locale/sr_RS.ts @@ -1,10 +1,12 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ strani', jump_to: 'Idi na', page: '', - // Pagination.jsx + // Pagination prev_page: 'Prethodna strana', next_page: 'Sledeća strana', prev_5: 'Prethodnih 5 Strana', @@ -13,3 +15,5 @@ export default { next_3: 'Sledećih 3 Strane', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/sv_SE.ts b/src/locale/sv_SE.ts index 8b492e10..e5ec562f 100644 --- a/src/locale/sv_SE.ts +++ b/src/locale/sv_SE.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ sida', jump_to: 'Gå till', jump_to_confirm: 'bekräfta', page: 'Sida', - // Pagination.jsx + // Pagination prev_page: 'Föreg sida', next_page: 'Nästa sida', prev_5: 'Föreg 5 sidor', @@ -14,3 +16,5 @@ export default { next_3: 'Nästa 3 sidor', page_size: 'sidstorlek', }; + +export default locale; diff --git a/src/locale/ta_IN.ts b/src/locale/ta_IN.ts index f2e695a7..03fd8c16 100644 --- a/src/locale/ta_IN.ts +++ b/src/locale/ta_IN.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ பக்கம்', jump_to: 'அடுத்த', jump_to_confirm: 'உறுதிப்படுத்தவும்', page: '', - // Pagination.jsx + // Pagination prev_page: 'முந்தைய பக்கம்', next_page: 'அடுத்த பக்கம்', prev_5: 'முந்தைய 5 பக்கங்கள்', @@ -14,3 +16,5 @@ export default { next_3: 'அடுத்த 3 பக்கங்கள்', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/th_TH.ts b/src/locale/th_TH.ts index 47a6ce21..18a41cd5 100644 --- a/src/locale/th_TH.ts +++ b/src/locale/th_TH.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ หน้า', jump_to: 'ไปยัง', jump_to_confirm: 'ยืนยัน', page: 'หน้า', - // Pagination.jsx + // Pagination prev_page: 'หน้าก่อนหน้า', next_page: 'หน้าถัดไป', prev_5: 'ย้อนกลับ 5 หน้า', @@ -14,3 +16,5 @@ export default { next_3: 'ถัดไป 3 หน้า', page_size: 'ขนาดหน้า', }; + +export default locale; diff --git a/src/locale/tk_TK.ts b/src/locale/tk_TK.ts index 503271cf..685c5ece 100644 --- a/src/locale/tk_TK.ts +++ b/src/locale/tk_TK.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ sahypa', jump_to: 'Git', jump_to_confirm: 'tassykla', page: 'Sahypa', - // Pagination.jsx + // Pagination prev_page: 'Öňki sahypa', next_page: 'Soňky sahypa', prev_5: 'Öňki 5 sahypa', @@ -14,3 +16,5 @@ export default { next_3: 'Soňky 3 sahypa', page_size: 'Sahypa sany', }; + +export default locale; diff --git a/src/locale/tr_TR.ts b/src/locale/tr_TR.ts index 06c035e6..5e3b61b6 100644 --- a/src/locale/tr_TR.ts +++ b/src/locale/tr_TR.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ sayfa', jump_to: 'Git', jump_to_confirm: 'onayla', page: 'Sayfa', - // Pagination.jsx + // Pagination prev_page: 'Önceki Sayfa', next_page: 'Sonraki Sayfa', prev_5: 'Önceki 5 Sayfa', @@ -14,3 +16,5 @@ export default { next_3: 'Sonraki 3 Sayfa', page_size: 'sayfa boyutu', }; + +export default locale; diff --git a/src/locale/ug_CN.ts b/src/locale/ug_CN.ts index 6d6d534f..5ee905ac 100644 --- a/src/locale/ug_CN.ts +++ b/src/locale/ug_CN.ts @@ -1,10 +1,12 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: 'تال/ھەر بەت', jump_to: 'بەتكە سەكرەش', jump_to_confirm: 'مۇقىملاشتۇرۇش', page: 'بەت', - // Pagination.jsx + // Pagination prev_page: 'ئالدىنقى', next_page: 'كېيىنكى', prev_5: 'ئالدىغا 5 بەت', @@ -13,3 +15,5 @@ export default { next_3: 'كەينىگە 3 بەت', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/uk_UA.ts b/src/locale/uk_UA.ts index 1ba87eec..9e2b4dc1 100644 --- a/src/locale/uk_UA.ts +++ b/src/locale/uk_UA.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ сторінці', jump_to: 'Перейти', jump_to_confirm: 'підтвердити', page: '', - // Pagination.jsx + // Pagination prev_page: 'Попередня сторінка', next_page: 'Наступна сторінка', prev_5: 'Попередні 5 сторінок', @@ -14,3 +16,5 @@ export default { next_3: 'Наступні 3 сторінки', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/ur_PK.ts b/src/locale/ur_PK.ts index a9a682e3..6fc2b210 100644 --- a/src/locale/ur_PK.ts +++ b/src/locale/ur_PK.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ صفحہ', jump_to: 'پاس جاؤ', jump_to_confirm: 'تصدیق کریں', page: '', - // Pagination.jsx + // Pagination prev_page: 'پچھلا صفحہ', next_page: 'اگلا صفحہ', prev_5: 'پچھلے 5 صفحات', @@ -14,3 +16,5 @@ export default { next_3: 'اگلے 3 صفحات', page_size: 'Page Size', }; + +export default locale; diff --git a/src/locale/uz_UZ.ts b/src/locale/uz_UZ.ts index efb64933..5aef80d4 100644 --- a/src/locale/uz_UZ.ts +++ b/src/locale/uz_UZ.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ sah.', jump_to: "O'tish", jump_to_confirm: 'tasdiqlash', page: 'Sahifa', - // Pagination.jsx + // Pagination prev_page: 'Orqaga', next_page: 'Oldinga', prev_5: 'Oldingi 5', @@ -14,3 +16,5 @@ export default { next_3: 'Keyingi 3', page_size: 'sahifa hajmi', }; + +export default locale; diff --git a/src/locale/vi_VN.ts b/src/locale/vi_VN.ts index d428369b..99b50aab 100644 --- a/src/locale/vi_VN.ts +++ b/src/locale/vi_VN.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '/ trang', jump_to: 'Đến', jump_to_confirm: 'xác nhận', page: 'Trang', - // Pagination.jsx + // Pagination prev_page: 'Trang Trước', next_page: 'Trang Kế', prev_5: 'Về 5 Trang Trước', @@ -14,3 +16,5 @@ export default { next_3: 'Đến 3 Trang Kế', page_size: 'kích thước trang', }; + +export default locale; diff --git a/src/locale/zh_CN.ts b/src/locale/zh_CN.ts index e5a352ad..51ed359a 100644 --- a/src/locale/zh_CN.ts +++ b/src/locale/zh_CN.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '条/页', jump_to: '跳至', jump_to_confirm: '确定', page: '页', - // Pagination.jsx + // Pagination prev_page: '上一页', next_page: '下一页', prev_5: '向前 5 页', @@ -14,3 +16,5 @@ export default { next_3: '向后 3 页', page_size: '页码', }; + +export default locale; diff --git a/src/locale/zh_TW.ts b/src/locale/zh_TW.ts index 38521119..57da9587 100644 --- a/src/locale/zh_TW.ts +++ b/src/locale/zh_TW.ts @@ -1,11 +1,13 @@ -export default { - // Options.jsx +import type { PaginationLocale } from '../interface'; + +const locale: PaginationLocale = { + // Options items_per_page: '條/頁', jump_to: '跳至', jump_to_confirm: '確定', page: '頁', - // Pagination.jsx + // Pagination prev_page: '上一頁', next_page: '下一頁', prev_5: '向前 5 頁', @@ -14,3 +16,5 @@ export default { next_3: '向後 3 頁', page_size: '頁碼', }; + +export default locale; diff --git a/tests/__snapshots__/demo.test.js.snap b/tests/__snapshots__/demo.test.js.snap new file mode 100644 index 00000000..ea30afad --- /dev/null +++ b/tests/__snapshots__/demo.test.js.snap @@ -0,0 +1,27 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`Example basic 1`] = `""`; + +exports[`Example controlled 1`] = `""`; + +exports[`Example itemRender 1`] = `""`; + +exports[`Example jumper 1`] = `"

    默认

    禁用

    单页默认隐藏

    • 1
    • 10 条/页

    • 1
    • 10 条/页
    "`; + +exports[`Example jumperWithGoButton 1`] = `"

    customize node

    default node

    • /5
    • 跳至
    "`; + +exports[`Example lessPages 1`] = `"
    Is using icon: true
    "`; + +exports[`Example locale 1`] = `""`; + +exports[`Example more 1`] = `""`; + +exports[`Example showTitle 1`] = `""`; + +exports[`Example showTotal 1`] = `"

    • 0 - 0 of 0 items
    • 1
    "`; + +exports[`Example simple 1`] = `"
    • /5

    • Total 50 items
    • /5

    • /5
    • 10 条/页
    "`; + +exports[`Example sizer 1`] = `"
    "`; + +exports[`Example styles 1`] = `""`; diff --git a/tests/__snapshots__/index.test.js.snap b/tests/__snapshots__/index.test.js.snap new file mode 100644 index 00000000..d53ac7bf --- /dev/null +++ b/tests/__snapshots__/index.test.js.snap @@ -0,0 +1,1723 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[` 1`] = ` +[ + "prev disabled", + "item item-1 item-active", + "item item-2", + "item item-3", + "next", +] +`; + +exports[` 2`] = ` +[ + "prev disabled", + "item item-1 item-active", + "item item-2", + "item item-3", + "item item-4", + "item item-5", + "next", +] +`; + +exports[` 3`] = ` +[ + "prev disabled", + "item item-1 item-active", + "item item-2", + "item item-3", + "item item-4", + "item item-5", + "item item-6", + "next", + "options", +] +`; + +exports[` 4`] = ` +[ + "prev disabled", + "item item-1 item-active", + "item item-2", + "item item-3", + "item item-4", + "item item-5", + "item item-6", + "item item-7", + "next", + "options", +] +`; + +exports[` 5`] = ` +[ + "prev disabled", + "item item-1 item-active", + "item item-2", + "item item-3", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-8", + "next", + "options", +] +`; + +exports[` 6`] = ` +[ + "prev disabled", + "item item-1 item-active", + "item item-2", + "item item-3", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-9", + "next", + "options", +] +`; + +exports[` 7`] = ` +[ + "prev disabled", + "item item-1 item-active", + "item item-2", + "item item-3", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-10", + "next", + "options", +] +`; + +exports[` 8`] = ` +[ + "prev disabled", + "item item-1 item-active", + "item item-2", + "item item-3", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-12", + "next", + "options", +] +`; + +exports[` 9`] = ` +[ + "prev disabled", + "item item-1 item-active", + "item item-2", + "item item-3", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 25 pages should select page 2 1`] = ` +[ + "prev", + "item item-1", + "item item-2 item-active", + "item item-3", + "next", +] +`; + +exports[`select in sequence should sequence select 25 pages should select page 3 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3 item-active", + "next disabled", +] +`; + +exports[`select in sequence should sequence select 50 pages should select page 2 1`] = ` +[ + "prev", + "item item-1", + "item item-2 item-active", + "item item-3", + "item item-4", + "item item-5", + "next", +] +`; + +exports[`select in sequence should sequence select 50 pages should select page 3 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3 item-active", + "item item-4", + "item item-5", + "next", +] +`; + +exports[`select in sequence should sequence select 50 pages should select page 4 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3", + "item item-4 item-active", + "item item-5", + "next", +] +`; + +exports[`select in sequence should sequence select 50 pages should select page 5 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3", + "item item-4", + "item item-5 item-active", + "next disabled", +] +`; + +exports[`select in sequence should sequence select 60 pages should select page 2 1`] = ` +[ + "prev", + "item item-1", + "item item-2 item-active", + "item item-3", + "item item-4", + "item item-5", + "item item-6", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 60 pages should select page 3 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3 item-active", + "item item-4", + "item item-5", + "item item-6", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 60 pages should select page 4 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3", + "item item-4 item-active", + "item item-5", + "item item-6", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 60 pages should select page 5 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3", + "item item-4", + "item item-5 item-active", + "item item-6", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 60 pages should select page 6 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3", + "item item-4", + "item item-5", + "item item-6 item-active", + "next disabled", + "options", +] +`; + +exports[`select in sequence should sequence select 70 pages should select page 2 1`] = ` +[ + "prev", + "item item-1", + "item item-2 item-active", + "item item-3", + "item item-4", + "item item-5", + "item item-6", + "item item-7", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 70 pages should select page 3 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3 item-active", + "item item-4", + "item item-5", + "item item-6", + "item item-7", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 70 pages should select page 4 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3", + "item item-4 item-active", + "item item-5", + "item item-6", + "item item-7", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 70 pages should select page 5 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3", + "item item-4", + "item item-5 item-active", + "item item-6", + "item item-7", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 70 pages should select page 6 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3", + "item item-4", + "item item-5", + "item item-6 item-active", + "item item-7", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 70 pages should select page 7 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3", + "item item-4", + "item item-5", + "item item-6", + "item item-7 item-active", + "next disabled", + "options", +] +`; + +exports[`select in sequence should sequence select 80 pages should select page 2 1`] = ` +[ + "prev", + "item item-1", + "item item-2 item-active", + "item item-3", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-8", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 80 pages should select page 3 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3 item-active", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-8", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 80 pages should select page 4 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3", + "item item-4 item-active", + "item item-5", + "item item-6 item-before-jump-next", + "jump-next", + "item item-8", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 80 pages should select page 5 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-3 item-after-jump-prev", + "item item-4", + "item item-5 item-active", + "item item-6", + "item item-7", + "item item-8", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 80 pages should select page 6 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-4 item-after-jump-prev", + "item item-5", + "item item-6 item-active", + "item item-7", + "item item-8", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 80 pages should select page 7 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-4 item-after-jump-prev", + "item item-5", + "item item-6", + "item item-7 item-active", + "item item-8", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 80 pages should select page 8 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-4 item-after-jump-prev", + "item item-5", + "item item-6", + "item item-7", + "item item-8 item-active", + "next disabled", + "options", +] +`; + +exports[`select in sequence should sequence select 90 pages should select page 2 1`] = ` +[ + "prev", + "item item-1", + "item item-2 item-active", + "item item-3", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-9", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 90 pages should select page 3 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3 item-active", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-9", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 90 pages should select page 4 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3", + "item item-4 item-active", + "item item-5", + "item item-6 item-before-jump-next", + "jump-next", + "item item-9", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 90 pages should select page 5 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-3 item-after-jump-prev", + "item item-4", + "item item-5 item-active", + "item item-6", + "item item-7 item-before-jump-next", + "jump-next", + "item item-9", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 90 pages should select page 6 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-4 item-after-jump-prev", + "item item-5", + "item item-6 item-active", + "item item-7", + "item item-8", + "item item-9", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 90 pages should select page 7 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-5 item-after-jump-prev", + "item item-6", + "item item-7 item-active", + "item item-8", + "item item-9", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 90 pages should select page 8 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-5 item-after-jump-prev", + "item item-6", + "item item-7", + "item item-8 item-active", + "item item-9", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 90 pages should select page 9 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-5 item-after-jump-prev", + "item item-6", + "item item-7", + "item item-8", + "item item-9 item-active", + "next disabled", + "options", +] +`; + +exports[`select in sequence should sequence select 100 pages should select page 2 1`] = ` +[ + "prev", + "item item-1", + "item item-2 item-active", + "item item-3", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-10", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 100 pages should select page 3 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3 item-active", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-10", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 100 pages should select page 4 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3", + "item item-4 item-active", + "item item-5", + "item item-6 item-before-jump-next", + "jump-next", + "item item-10", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 100 pages should select page 5 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-3 item-after-jump-prev", + "item item-4", + "item item-5 item-active", + "item item-6", + "item item-7 item-before-jump-next", + "jump-next", + "item item-10", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 100 pages should select page 6 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-4 item-after-jump-prev", + "item item-5", + "item item-6 item-active", + "item item-7", + "item item-8 item-before-jump-next", + "jump-next", + "item item-10", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 100 pages should select page 7 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-5 item-after-jump-prev", + "item item-6", + "item item-7 item-active", + "item item-8", + "item item-9", + "item item-10", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 100 pages should select page 8 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-6 item-after-jump-prev", + "item item-7", + "item item-8 item-active", + "item item-9", + "item item-10", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 100 pages should select page 9 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-6 item-after-jump-prev", + "item item-7", + "item item-8", + "item item-9 item-active", + "item item-10", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 100 pages should select page 10 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-6 item-after-jump-prev", + "item item-7", + "item item-8", + "item item-9", + "item item-10 item-active", + "next disabled", + "options", +] +`; + +exports[`select in sequence should sequence select 120 pages should select page 2 1`] = ` +[ + "prev", + "item item-1", + "item item-2 item-active", + "item item-3", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-12", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 120 pages should select page 3 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3 item-active", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-12", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 120 pages should select page 4 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3", + "item item-4 item-active", + "item item-5", + "item item-6 item-before-jump-next", + "jump-next", + "item item-12", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 120 pages should select page 5 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-3 item-after-jump-prev", + "item item-4", + "item item-5 item-active", + "item item-6", + "item item-7 item-before-jump-next", + "jump-next", + "item item-12", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 120 pages should select page 6 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-4 item-after-jump-prev", + "item item-5", + "item item-6 item-active", + "item item-7", + "item item-8 item-before-jump-next", + "jump-next", + "item item-12", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 120 pages should select page 7 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-5 item-after-jump-prev", + "item item-6", + "item item-7 item-active", + "item item-8", + "item item-9 item-before-jump-next", + "jump-next", + "item item-12", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 120 pages should select page 8 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-6 item-after-jump-prev", + "item item-7", + "item item-8 item-active", + "item item-9", + "item item-10 item-before-jump-next", + "jump-next", + "item item-12", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 120 pages should select page 9 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-7 item-after-jump-prev", + "item item-8", + "item item-9 item-active", + "item item-10", + "item item-11", + "item item-12", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 120 pages should select page 10 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-8 item-after-jump-prev", + "item item-9", + "item item-10 item-active", + "item item-11", + "item item-12", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 120 pages should select page 11 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-8 item-after-jump-prev", + "item item-9", + "item item-10", + "item item-11 item-active", + "item item-12", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 120 pages should select page 12 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-8 item-after-jump-prev", + "item item-9", + "item item-10", + "item item-11", + "item item-12 item-active", + "next disabled", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 2 1`] = ` +[ + "prev", + "item item-1", + "item item-2 item-active", + "item item-3", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 3 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3 item-active", + "item item-4", + "item item-5 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 4 1`] = ` +[ + "prev", + "item item-1", + "item item-2", + "item item-3", + "item item-4 item-active", + "item item-5", + "item item-6 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 5 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-3 item-after-jump-prev", + "item item-4", + "item item-5 item-active", + "item item-6", + "item item-7 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 6 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-4 item-after-jump-prev", + "item item-5", + "item item-6 item-active", + "item item-7", + "item item-8 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 7 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-5 item-after-jump-prev", + "item item-6", + "item item-7 item-active", + "item item-8", + "item item-9 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 8 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-6 item-after-jump-prev", + "item item-7", + "item item-8 item-active", + "item item-9", + "item item-10 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 9 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-7 item-after-jump-prev", + "item item-8", + "item item-9 item-active", + "item item-10", + "item item-11 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 10 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-8 item-after-jump-prev", + "item item-9", + "item item-10 item-active", + "item item-11", + "item item-12 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 11 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-9 item-after-jump-prev", + "item item-10", + "item item-11 item-active", + "item item-12", + "item item-13 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 12 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-10 item-after-jump-prev", + "item item-11", + "item item-12 item-active", + "item item-13", + "item item-14 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 13 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-11 item-after-jump-prev", + "item item-12", + "item item-13 item-active", + "item item-14", + "item item-15 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 14 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-12 item-after-jump-prev", + "item item-13", + "item item-14 item-active", + "item item-15", + "item item-16 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 15 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-13 item-after-jump-prev", + "item item-14", + "item item-15 item-active", + "item item-16", + "item item-17 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 16 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-14 item-after-jump-prev", + "item item-15", + "item item-16 item-active", + "item item-17", + "item item-18 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 17 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-15 item-after-jump-prev", + "item item-16", + "item item-17 item-active", + "item item-18", + "item item-19 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 18 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-16 item-after-jump-prev", + "item item-17", + "item item-18 item-active", + "item item-19", + "item item-20 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 19 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-17 item-after-jump-prev", + "item item-18", + "item item-19 item-active", + "item item-20", + "item item-21 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 20 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-18 item-after-jump-prev", + "item item-19", + "item item-20 item-active", + "item item-21", + "item item-22 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 21 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-19 item-after-jump-prev", + "item item-20", + "item item-21 item-active", + "item item-22", + "item item-23 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 22 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-20 item-after-jump-prev", + "item item-21", + "item item-22 item-active", + "item item-23", + "item item-24 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 23 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-21 item-after-jump-prev", + "item item-22", + "item item-23 item-active", + "item item-24", + "item item-25 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 24 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-22 item-after-jump-prev", + "item item-23", + "item item-24 item-active", + "item item-25", + "item item-26 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 25 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-23 item-after-jump-prev", + "item item-24", + "item item-25 item-active", + "item item-26", + "item item-27 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 26 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-24 item-after-jump-prev", + "item item-25", + "item item-26 item-active", + "item item-27", + "item item-28 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 27 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-25 item-after-jump-prev", + "item item-26", + "item item-27 item-active", + "item item-28", + "item item-29 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 28 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-26 item-after-jump-prev", + "item item-27", + "item item-28 item-active", + "item item-29", + "item item-30 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 29 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-27 item-after-jump-prev", + "item item-28", + "item item-29 item-active", + "item item-30", + "item item-31 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 30 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-28 item-after-jump-prev", + "item item-29", + "item item-30 item-active", + "item item-31", + "item item-32 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 31 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-29 item-after-jump-prev", + "item item-30", + "item item-31 item-active", + "item item-32", + "item item-33 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 32 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-30 item-after-jump-prev", + "item item-31", + "item item-32 item-active", + "item item-33", + "item item-34 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 33 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-31 item-after-jump-prev", + "item item-32", + "item item-33 item-active", + "item item-34", + "item item-35 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 34 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-32 item-after-jump-prev", + "item item-33", + "item item-34 item-active", + "item item-35", + "item item-36 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 35 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-33 item-after-jump-prev", + "item item-34", + "item item-35 item-active", + "item item-36", + "item item-37 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 36 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-34 item-after-jump-prev", + "item item-35", + "item item-36 item-active", + "item item-37", + "item item-38 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 37 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-35 item-after-jump-prev", + "item item-36", + "item item-37 item-active", + "item item-38", + "item item-39 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 38 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-36 item-after-jump-prev", + "item item-37", + "item item-38 item-active", + "item item-39", + "item item-40 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 39 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-37 item-after-jump-prev", + "item item-38", + "item item-39 item-active", + "item item-40", + "item item-41 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 40 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-38 item-after-jump-prev", + "item item-39", + "item item-40 item-active", + "item item-41", + "item item-42 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 41 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-39 item-after-jump-prev", + "item item-40", + "item item-41 item-active", + "item item-42", + "item item-43 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 42 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-40 item-after-jump-prev", + "item item-41", + "item item-42 item-active", + "item item-43", + "item item-44 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 43 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-41 item-after-jump-prev", + "item item-42", + "item item-43 item-active", + "item item-44", + "item item-45 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 44 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-42 item-after-jump-prev", + "item item-43", + "item item-44 item-active", + "item item-45", + "item item-46 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 45 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-43 item-after-jump-prev", + "item item-44", + "item item-45 item-active", + "item item-46", + "item item-47 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 46 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-44 item-after-jump-prev", + "item item-45", + "item item-46 item-active", + "item item-47", + "item item-48 item-before-jump-next", + "jump-next", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 47 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-45 item-after-jump-prev", + "item item-46", + "item item-47 item-active", + "item item-48", + "item item-49", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 48 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-46 item-after-jump-prev", + "item item-47", + "item item-48 item-active", + "item item-49", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 49 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-46 item-after-jump-prev", + "item item-47", + "item item-48", + "item item-49 item-active", + "item item-50", + "next", + "options", +] +`; + +exports[`select in sequence should sequence select 500 pages should select page 50 1`] = ` +[ + "prev", + "item item-1", + "jump-prev", + "item item-46 item-after-jump-prev", + "item item-47", + "item item-48", + "item item-49", + "item item-50 item-active", + "next disabled", + "options", +] +`; diff --git a/tests/__snapshots__/options.test.js.snap b/tests/__snapshots__/options.test.js.snap new file mode 100644 index 00000000..7e59d697 --- /dev/null +++ b/tests/__snapshots__/options.test.js.snap @@ -0,0 +1,3 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`Options should render correctly 1`] = `"
  • 10 条/页
    跳至
  • "`; diff --git a/tests/demo.test.js b/tests/demo.test.js new file mode 100644 index 00000000..1637c4e6 --- /dev/null +++ b/tests/demo.test.js @@ -0,0 +1,20 @@ +import { mount } from 'enzyme'; +import fs from 'fs'; +import path from 'path'; + +const exampleDir = path.resolve(__dirname, '../docs/examples'); +const files = fs + .readdirSync(exampleDir) + .filter((file) => file.endsWith('.tsx') && !file.startsWith('_')); + +describe('Example', () => { + files.forEach((file) => { + const name = path.basename(file, '.tsx'); + it(name, () => { + const Example = require(path.join(exampleDir, file)).default; + + const wrapper = mount(); + expect(wrapper.html()).toMatchSnapshot(); + }); + }); +}); diff --git a/tests/index.test.js b/tests/index.test.js index 73dba26a..fbd8f56e 100644 --- a/tests/index.test.js +++ b/tests/index.test.js @@ -1,6 +1,6 @@ -import React from 'react'; import { mount } from 'enzyme'; import Select from 'rc-select'; +import React from 'react'; import Pagination from '../src'; describe('Default Pagination', () => { @@ -28,11 +28,12 @@ describe('Uncontrolled Pagination', () => { let wrapper; const onChange = jest.fn(); - function shouldHighlightRight() { + function shouldHighlightRight(current) { const pagers = wrapper.find('li:not(.rc-pagination-total-text)'); pagers.forEach((pager, index) => { - // page starts from 1 - if (index === wrapper.state().current) { + // if (index === wrapper.state().current) { // Class Component + const props = wrapper.props(); + if (index === (current ?? props.current ?? props.defaultCurrent)) { expect(pager.hasClass('rc-pagination-item-active')).toBe(true); } else { expect(pager.hasClass('rc-pagination-item-active')).toBe(false); @@ -60,7 +61,10 @@ describe('Uncontrolled Pagination', () => { }); it('default current page is 1', () => { - expect(wrapper.state().current).toBe(1); + // expect(wrapper.state().current).toBe(1); // Class Component + expect(wrapper.find('.rc-pagination-item-active').text()).toBe('1'); + expect(wrapper.find('.rc-pagination-item').first().text()).toBe('1'); + expect(wrapper.find('.rc-pagination-item').first().prop('title')).toBe('1'); }); it('prev-button should be disabled', () => { @@ -69,10 +73,8 @@ describe('Uncontrolled Pagination', () => { expect(prevButton.getDOMNode().getAttribute('aria-disabled')).toBe('true'); }); - it( - 'should hightlight current page and not highlight other page', - shouldHighlightRight, - ); + it('should hightlight current page and not highlight other page', () => + shouldHighlightRight()); it('should calc page right', () => { const pagers = wrapper.find( @@ -95,17 +97,19 @@ describe('Uncontrolled Pagination', () => { const page2 = pagers.at(1); expect(page2.hasClass('rc-pagination-item-2')).toBe(true); page2.simulate('click'); - expect(wrapper.state().current).toBe(2); + // expect(wrapper.state().current).toBe(2); // Class Component + expect(wrapper.find('.rc-pagination-item-active').text()).toBe('2'); expect(onChange).toHaveBeenLastCalledWith(2, 10); - shouldHighlightRight(); + shouldHighlightRight(2); }); it('should response next page', () => { const nextButton = wrapper.find('.rc-pagination-next'); nextButton.simulate('click'); - expect(wrapper.state().current).toBe(2); + // expect(wrapper.state().current).toBe(2); // Class Component + expect(wrapper.find('.rc-pagination-item-active').text()).toBe('2'); expect(onChange).toHaveBeenLastCalledWith(2, 10); - shouldHighlightRight(); + shouldHighlightRight(2); }); it('should quick jump to expect page', () => { @@ -116,7 +120,8 @@ describe('Uncontrolled Pagination', () => { ); input.simulate('change', { target: { value: '2' } }); goButton.simulate('click'); - expect(wrapper.state().current).toBe(2); + // expect(wrapper.state().current).toBe(2); // Class Component + expect(wrapper.find('.rc-pagination-item-active').text()).toBe('2'); expect(onChange).toHaveBeenLastCalledWith(2, 10); }); @@ -127,7 +132,8 @@ describe('Uncontrolled Pagination', () => { input.simulate('focus'); input.simulate('change', { target: { value: '2' } }); input.simulate('blur'); - expect(wrapper.state().current).toBe(1); + // expect(wrapper.state().current).toBe(1); + expect(wrapper.find('.rc-pagination-item-active').text()).toBe('1'); expect(onChange).not.toBeCalled(); }); @@ -140,7 +146,8 @@ describe('Uncontrolled Pagination', () => { const input = quickJumper.find('input'); input.simulate('change', { target: { value: '2' } }); input.simulate('blur'); - expect(component.state().current).toBe(2); + // expect(component.state().current).toBe(2); + expect(component.find('.rc-pagination-item-active').text()).toBe('2'); }); // https://github.com/ant-design/ant-design/issues/15539 @@ -161,6 +168,23 @@ describe('Uncontrolled Pagination', () => { nextButton.simulate('click'); expect(totalText.text()).toBe('21 - 25 of 25 items'); }); + + it('readonly warning should be displayed', () => { + const warnSpy = jest.spyOn(console, 'error').mockImplementation(() => {}); + mount(); + expect(warnSpy).toHaveBeenCalledWith( + 'Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.', + ); + warnSpy.mockRestore(); + }); + + it('should response keyboard event', () => { + const pagers = wrapper.find('.rc-pagination-item'); + const page2 = pagers.at(2); + page2.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); + expect(wrapper.find('.rc-pagination-item-active').text()).toBe('3'); + expect(onChange).toHaveBeenLastCalledWith(3, 10); + }); }); describe('Controlled Pagination', () => { @@ -177,13 +201,22 @@ describe('Controlled Pagination', () => { }); it('current should equal defaultCurrent', () => { - expect(wrapper.state().current).toBe(2); + // expect(wrapper.state().current).toBe(2); // Class Component + expect(wrapper.find('.rc-pagination-item-active').text()).toBe('2'); + expect(wrapper.find('.rc-pagination-item').first().text()).toBe('1'); + expect( + wrapper + .find('.rc-pagination-item') + .at(1) + .hasClass('rc-pagination-item-active'), + ).toBe(true); }); it('should not response mouse click', () => { const nextButton = wrapper.find('.rc-pagination-next'); nextButton.simulate('click'); - expect(wrapper.state().current).toBe(2); + // expect(wrapper.state().current).toBe(2); // Class Component + expect(wrapper.find('.rc-pagination-item-active').text()).toBe('2'); expect(onChange).toHaveBeenLastCalledWith(3, 10); }); }); @@ -298,6 +331,7 @@ describe('Other props', () => { describe('current value on onShowSizeChange when total is 0', () => { let wrapper; const onShowSizeChange = jest.fn(); + const onChange = jest.fn(); beforeEach(() => { wrapper = mount( @@ -305,6 +339,7 @@ describe('current value on onShowSizeChange when total is 0', () => { selectComponentClass={Select} showSizeChanger onShowSizeChange={onShowSizeChange} + onChange={onChange} current={1} total={0} showTotal={(total, range) => @@ -317,6 +352,7 @@ describe('current value on onShowSizeChange when total is 0', () => { afterEach(() => { wrapper.unmount(); onShowSizeChange.mockReset(); + onChange.mockReset(); }); it('should call onShowSizeChange when no change', () => { @@ -328,6 +364,7 @@ describe('current value on onShowSizeChange when total is 0', () => { input.simulate('keyDown', { key: 'Down', keyCode: 40, which: 40 }); input.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); expect(onShowSizeChange).not.toBeCalled(); + expect(onChange).not.toBeCalled(); }); it('current should equal to the current in onShowSizeChange', () => { @@ -340,9 +377,11 @@ describe('current value on onShowSizeChange when total is 0', () => { input.simulate('keyDown', { key: 'Down', keyCode: 40, which: 40 }); input.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); expect(onShowSizeChange).toHaveBeenLastCalledWith( - wrapper.state().current, + // wrapper.state().current, + 1, 20, ); + expect(onChange).toHaveBeenLastCalledWith(1, 20); }); it('when total is 0, pager should show `1` and being disabled', () => { @@ -439,3 +478,123 @@ describe('should emit onChange when total is string', () => { expect(onChange).toBeCalledWith(3, 10); }); }); + +describe('keyboard support', () => { + let wrapper; + const onChange = jest.fn(); + + beforeEach(() => { + wrapper = mount( + , + ); + }); + + afterEach(() => { + wrapper.unmount(); + onChange.mockReset(); + }); + + it('should work for prev page', () => { + const prevButton = wrapper.find('li.rc-pagination-prev'); + expect(prevButton.exists()).toBeTruthy(); + + prevButton.simulate('click'); + prevButton.simulate('click'); + + prevButton.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); + prevButton.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); + + expect(onChange).toHaveBeenLastCalledWith(46, 10); + }); + + it('should work for next page', () => { + const nextButton = wrapper.find('li.rc-pagination-next'); + expect(nextButton.exists()).toBeTruthy(); + + nextButton.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); + nextButton.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); + + nextButton.simulate('click'); + nextButton.simulate('click'); + + expect(onChange).toHaveBeenLastCalledWith(54, 10); + }); + + it('should work for jump prev page', () => { + const jumpPrevButton = wrapper.find('li.rc-pagination-jump-prev'); + expect(jumpPrevButton.exists()).toBeTruthy(); + + jumpPrevButton.simulate('keyDown', { + key: 'Enter', + keyCode: 13, + which: 13, + }); + jumpPrevButton.simulate('click'); + + expect(onChange).toHaveBeenLastCalledWith(40, 10); + }); + + it('should work for jump next page', () => { + const jumpNextButton = wrapper.find('li.rc-pagination-jump-next'); + expect(jumpNextButton.exists()).toBeTruthy(); + + jumpNextButton.simulate('click'); + jumpNextButton.simulate('keyDown', { + key: 'Enter', + keyCode: 13, + which: 13, + }); + + expect(onChange).toHaveBeenLastCalledWith(60, 10); + }); +}); + +describe('select in sequence', () => { + const serializeCls = (items) => + items.map((item) => + String(item.prop('className')).replaceAll('rc-pagination-', ''), + ); + + class Demo extends React.Component { + state = { current: 1 }; + + changeHandle = (current) => this.setState({ current }); + + render() { + return ( + + ); + } + } + + function sequenceSelector(total) { + describe(`should sequence select ${total} pages`, () => { + const wrapper = mount(); + const cls = serializeCls(wrapper.find('li')); + expect(cls).toMatchSnapshot(); + + const pages = Math.floor((total - 1) / 10) + 1; + for (let i = 2; i <= pages; i++) { + it(`should select page ${i}`, () => { + wrapper.setState({ current: i }); + const cls = serializeCls(wrapper.find('li')); + expect(cls).toMatchSnapshot(); + }); + } + }); + } + // coped examples/basic.tsx + sequenceSelector(25); + sequenceSelector(50); + sequenceSelector(60); + sequenceSelector(70); + sequenceSelector(80); + sequenceSelector(90); + sequenceSelector(100); + sequenceSelector(120); + sequenceSelector(500); +}); diff --git a/tests/jumper.test.js b/tests/jumper.test.js index 7dbc1f03..f4370cc4 100644 --- a/tests/jumper.test.js +++ b/tests/jumper.test.js @@ -26,7 +26,8 @@ describe('Pagination with jumper', () => { const input = quickJumper.find('input'); input.simulate('change', { target: { value: '-1' } }); input.simulate('keyUp', { key: 'Enter', keyCode: 13, which: 13 }); - expect(wrapper.state().current).toBe(1); + // expect(wrapper.state().current).toBe(1); // Class component + expect(wrapper.find('.rc-pagination-item-active').text()).toBe('1'); expect(onChange).toHaveBeenLastCalledWith(1, 10); }); @@ -34,7 +35,8 @@ describe('Pagination with jumper', () => { const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); const input = quickJumper.find('input'); input.simulate('blur'); - expect(wrapper.state().current).toBe(10); + // expect(wrapper.state().current).toBe(10); // Class component + expect(wrapper.find('.rc-pagination-item-active').text()).toBe('10'); expect(onChange).not.toBeCalled(); }); @@ -65,6 +67,33 @@ describe('Pagination with jumper', () => { expect(input.instance().value).toBe(''); expect(onChange).not.toBeCalled(); }); + + it('should not jump when input empty string', () => { + const onChange = jest.fn(); + const wrapper = mount( + + go + + ), + }} + />, + ); + const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); + const input = quickJumper.find('input'); + const goButton = quickJumper.find('.go-button'); + input.simulate('change', { target: { value: '3' } }); + goButton.simulate('click'); + expect(wrapper.find('.rc-pagination-item-active').text()).toBe('3'); + input.simulate('change', { target: { value: '' } }); + goButton.simulate('click'); + expect(wrapper.find('.rc-pagination-item-active').text()).toBe('3'); + expect(onChange).toHaveBeenLastCalledWith(3, 10); + }); }); describe('simple quick jumper', () => { @@ -103,7 +132,11 @@ describe('simple quick jumper', () => { const goButton = quickJumper.find('.go-button'); input.simulate('change', { target: { value: '2' } }); goButton.simulate('click'); - expect(wrapper.state().current).toBe(2); + // expect(wrapper.state().current).toBe(2); // Class component + expect( + wrapper.find('.rc-pagination-simple-pager').find('input').getDOMNode() + .value, + ).toBe('2'); expect(onChange).toHaveBeenLastCalledWith(2, 10); }); @@ -134,7 +167,8 @@ describe('simple quick jumper', () => { const goButton = quickJumper.find('.go-button'); input.simulate('change', { target: { value: '2' } }); goButton.simulate('click'); - expect(wrapper.state().current).toBe(2); + // expect(wrapper.state().current).toBe(2); // Class component + expect(wrapper.find('.rc-pagination-item-active').text()).toBe('2'); expect(onChange).toHaveBeenLastCalledWith(2, 10); }); @@ -145,7 +179,8 @@ describe('simple quick jumper', () => { const input = wrapper.find('input'); input.simulate('change', { target: { value: '&' } }); input.simulate('keyUp', { key: 'Enter', keyCode: 13, which: 13 }); - expect(wrapper.state().current).toBe(2); + // expect(wrapper.state().current).toBe(2); // Class component + expect(wrapper.find('.rc-pagination-item-active').text()).toBe('2'); expect(onChange).toHaveBeenLastCalledWith(2, 10); }); }); diff --git a/tests/options.test.js b/tests/options.test.js new file mode 100644 index 00000000..f8d456de --- /dev/null +++ b/tests/options.test.js @@ -0,0 +1,41 @@ +import { mount } from 'enzyme'; +import Select from 'rc-select'; +import zhCN from '../src/locale/zh_CN'; +import Options from '../src/Options'; + +const WrapperOptions = (props) => { + return ( + + ); +}; + +describe('Options', () => { + it('should render correctly', () => { + const wrapper = mount(); + expect(wrapper.html()).toMatchSnapshot(); + }); + + describe('props:buildOptionText', () => { + it('should render correctly', () => { + const mockBuildOptionText = jest + .fn() + .mockImplementation((value) => ( +
    buildOptionText-{value}
    + )); + const wrapper = mount( + , + ); + const options = wrapper.find('.custom-options'); + expect(options).toBeTruthy(); + expect(options.text()).toBe('buildOptionText-10'); + }); + }); +}); diff --git a/tests/simple.test.js b/tests/simple.test.js index 00fce9d8..f0aada33 100644 --- a/tests/simple.test.js +++ b/tests/simple.test.js @@ -1,6 +1,6 @@ -import React, { useState } from 'react'; import { mount } from 'enzyme'; import Select from 'rc-select'; +import React, { useState } from 'react'; import Pagination from '../src'; describe('simple Pagination', () => { @@ -60,7 +60,13 @@ describe('simple Pagination', () => { }); it('default current page is 1', () => { - expect(wrapper.state().current).toBe(1); + // expect(wrapper.state().current).toBe(1); // Class Component + expect(wrapper.find('.rc-pagination-simple-pager').prop('title')).toBe( + '1/3', + ); + expect( + wrapper.find('.rc-pagination-simple').find('input').getDOMNode().value, + ).toBe('1'); }); it('prev-button should be disabled', () => { @@ -78,12 +84,18 @@ describe('simple Pagination', () => { const component = mount( , ); - expect(component.state().current).toBe(3); + // expect(component.state().current).toBe(3); // Class Component + expect(component.find('.rc-pagination-simple-pager').prop('title')).toBe( + '3/3', + ); const greaterCurrent = component.find('.rc-pagination-simple'); const input = greaterCurrent.find('input'); input.simulate('change', { target: { value: '313423434343343452121' } }); expect(input.getDOMNode().value).toBe('3'); - expect(component.state().current).toBe(3); + // expect(component.state().current).toBe(3); // Class Component + expect(component.find('.rc-pagination-simple-pager').prop('title')).toBe( + '3/3', + ); }); it('should merge custom pageSize to pageSizeOptions', () => { @@ -120,4 +132,84 @@ describe('simple Pagination', () => { expect(onChange).toBeCalled(); expect(onChange).toHaveBeenLastCalledWith(1, 10); }); + + it('should support keyboard event', () => { + const input = wrapper.find('.rc-pagination-simple').find('input'); + input.simulate('change', { target: { value: '2' } }); + input.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); + expect(input.getDOMNode().value).toBe('2'); + }); + + it('should support keyboard event when press up or down key', () => { + const input = wrapper.find('.rc-pagination-simple').find('input'); + input.simulate('keyUp', { key: 'ArrowDown', keyCode: 40, which: 40 }); + input.simulate('keyUp', { key: 'ArrowDown', keyCode: 40, which: 40 }); + expect(input.getDOMNode().value).toBe('3'); + + input.simulate('keyUp', { key: 'ArrowUp', keyCode: 38, which: 38 }); + expect(input.getDOMNode().value).toBe('2'); + }); + + it('should work form keyboard enter', () => { + const wrapper = mount(); + const input = wrapper.find('.rc-pagination-simple').find('input'); + + expect(input.exists()).toBeTruthy(); + + input.simulate('change', { target: { value: '8' } }); + input.simulate('keyUp', { key: 'Enter', keyCode: 13, which: 13 }); + + expect( + wrapper.find('.rc-pagination-simple-pager').at(0).prop('title'), + ).toBe('8/10'); + }); + + it(`prevent "up arrow" key reseting cursor position within textbox`, () => { + const mockPreventDefault = jest.fn(); + const wrapper = mount(); + const input = wrapper.find('.rc-pagination-simple').find('input'); + + expect(input.exists()).toBeTruthy(); + + input.simulate('change', { target: { value: '8' } }); + input.simulate('keyDown', { + key: 'ArrowUp', + keyCode: 38, + which: 38, + preventDefault: mockPreventDefault, + }); + + expect(mockPreventDefault).toHaveBeenCalled(); + expect(input.getDOMNode().value).toBe('8'); + }); + + it('should work when input is not number', () => { + const wrapper = mount(); + const input = wrapper.find('.rc-pagination-simple').find('input'); + + expect(input.exists()).toBeTruthy(); + + input.simulate('change', { target: { value: 'a' } }); // NaN case + input.simulate('blur'); + + expect( + wrapper.find('.rc-pagination-simple-pager').at(0).prop('title'), + ).toBe('5/10'); + }); + + it('gotoButton should work', () => { + const wrapper = mount( + , + ); + + const input = wrapper.find('.rc-pagination-options').find('input'); + const gotoButton = wrapper.find('.rc-pagination-options').find('button'); + + input.simulate('change', { target: { value: '2' } }); + gotoButton.simulate('click'); + + expect( + wrapper.find('.rc-pagination-simple-pager').at(0).prop('title'), + ).toBe('2/3'); + }); }); diff --git a/tests/two-pagination.test.js b/tests/two-pagination.test.js index 75650b8d..74f08f78 100644 --- a/tests/two-pagination.test.js +++ b/tests/two-pagination.test.js @@ -1,5 +1,5 @@ -import React from 'react'; import { mount } from 'enzyme'; +import React from 'react'; import Pagination from '../src'; import TwoPagination from './two-pagination'; @@ -17,15 +17,22 @@ describe('Two Pagination', () => { it('should has initial pageSize 20', () => { const p1 = wrapper.find(Pagination).at(0); const p2 = wrapper.find(Pagination).at(1); - expect(p1.state().pageSize).toBe(20); - expect(p2.state().pageSize).toBe(20); + // expect(p1.state().pageSize).toBe(20); // Class component + expect(p1.props().pageSize).toBe(20); // Function component + // expect(p2.state().pageSize).toBe(20); // Class component + expect(p2.props().pageSize).toBe(20); // Function component }); it('should sync pageSize via state', () => { const p1 = wrapper.find(Pagination).at(0); const p2 = wrapper.find(Pagination).at(1); wrapper.find('.hook').simulate('click'); - expect(p1.state().pageSize).toBe(50); - expect(p2.state().pageSize).toBe(50); + // wrapper.update(); + const newP1 = wrapper.find(Pagination).at(0); + const newP2 = wrapper.find(Pagination).at(1); + // expect(p1.state().pageSize).toBe(50); // Class component + expect(newP1.props().pageSize).toBe(50); // Function component + // expect(p2.state().pageSize).toBe(50); // Class component + expect(newP2.props().pageSize).toBe(50); // Function component }); }); From 98d9a81abbfb5475ad7e0f385e21ecc2a79651d7 Mon Sep 17 00:00:00 2001 From: afc163 Date: Tue, 28 Nov 2023 16:02:41 +0800 Subject: [PATCH 201/262] 4.0.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c314d699..63bbc719 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "3.7.0", + "version": "4.0.0", "description": "pagination ui component for react", "keywords": [ "react", From a513003c66697ed1ae816a20c84a9e7bedd39e06 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 28 Nov 2023 17:22:34 +0800 Subject: [PATCH 202/262] chore(deps-dev): bump prettier from 2.8.8 to 3.1.0 (#537) Bumps [prettier](https://github.com/prettier/prettier) from 2.8.8 to 3.1.0. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/2.8.8...3.1.0) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 63bbc719..49bae298 100644 --- a/package.json +++ b/package.json @@ -73,7 +73,7 @@ "less": "^3.10.3", "lint-staged": "^15.0.2", "np": "^7.0.0", - "prettier": "^2.0.1", + "prettier": "^3.1.0", "rc-select": "^14.1.2", "rc-test": "^7.0.15", "react": "^16.0.0", From 617fbf4afc5fca70de2d418fb26528ca1b5264b2 Mon Sep 17 00:00:00 2001 From: lijianan <574980606@qq.com> Date: Wed, 29 Nov 2023 03:21:01 +0800 Subject: [PATCH 203/262] chore: code optimization (#540) * chore: code optimization * type: update type --- docs/examples/lessPages.tsx | 25 +++++++++++-------------- src/Options.tsx | 14 +++++++++----- src/Pager.tsx | 4 ++++ src/Pagination.tsx | 21 +++++++++++++-------- src/interface.ts | 1 + 5 files changed, 38 insertions(+), 27 deletions(-) diff --git a/docs/examples/lessPages.tsx b/docs/examples/lessPages.tsx index 4c727a26..13116c2b 100644 --- a/docs/examples/lessPages.tsx +++ b/docs/examples/lessPages.tsx @@ -20,18 +20,17 @@ const doublePath = [ '1c9.1-11.7 9.1-27.9 0-39.5z', ]; -const getSvgIcon = (path, reverse, type) => { +const getSvgIcon = ( + path: string | string[], + reverse: boolean, + type: string, +) => { const paths = Array.isArray(path) ? path : [path]; - const renderPaths = paths.map((p, i) => { - return ; - }); + const renderPaths = paths.map((p, i) => ( + + )); return ( - + { + onChange = (page: number) => { console.log(page); - this.setState({ - current: page, - }); + this.setState({ current: page }); }; toggleCustomIcon = () => { this.setState({ diff --git a/src/Options.tsx b/src/Options.tsx index 14b8cf8f..99733aaf 100644 --- a/src/Options.tsx +++ b/src/Options.tsx @@ -29,7 +29,7 @@ interface OptionsProps { const defaultPageSizeOptions = ['10', '20', '50', '100']; -function Options(props: OptionsProps) { +const Options: React.FC = (props) => { const { pageSizeOptions = defaultPageSizeOptions, locale, @@ -113,12 +113,12 @@ function Options(props: OptionsProps) { return null; } - let changeSelect = null; - let goInput = null; - let gotoButton = null; + let changeSelect: React.ReactNode = null; + let goInput: React.ReactNode = null; + let gotoButton: React.ReactNode = null; if (changeSize && Select) { - const options = getPageSizeOptions().map((opt, i) => ( + const options = getPageSizeOptions().map((opt, i) => ( {mergeBuildOptionText(opt)} @@ -187,6 +187,10 @@ function Options(props: OptionsProps) { {goInput} ); +}; + +if (process.env.NODE_ENV !== 'production') { + Options.displayName = 'Options'; } export default Options; diff --git a/src/Pager.tsx b/src/Pager.tsx index 41d2e2b2..2d357787 100644 --- a/src/Pager.tsx +++ b/src/Pager.tsx @@ -63,4 +63,8 @@ const Pager: React.FC = (props) => { ) : null; }; +if (process.env.NODE_ENV !== 'production') { + Pager.displayName = 'Pager'; +} + export default Pager; diff --git a/src/Pagination.tsx b/src/Pagination.tsx index f4ad1a4b..80d3eafe 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -33,7 +33,7 @@ function calculatePage(p: number | undefined, pageSize: number, total: number) { return Math.floor((total - 1) / _pageSize) + 1; } -function Pagination(props: PaginationProps) { +const Pagination: React.FC = (props) => { const { // cls prefixCls = 'rc-pagination', @@ -117,7 +117,7 @@ function Pagination(props: PaginationProps) { /> ); if (typeof icon === 'function') { - iconNode = React.createElement(icon, { ...props }); + iconNode = React.createElement(icon, { ...props }); } return iconNode as React.ReactNode; } @@ -275,8 +275,8 @@ function Pagination(props: PaginationProps) { 'prev', getItemIcon(prevIcon, 'prev page'), ); - return React.isValidElement(prevButton) - ? React.cloneElement(prevButton, { disabled: !hasPrev }) + return React.isValidElement(prevButton) + ? React.cloneElement(prevButton, { disabled: !hasPrev }) : prevButton; } @@ -286,8 +286,8 @@ function Pagination(props: PaginationProps) { 'next', getItemIcon(nextIcon, 'next page'), ); - return React.isValidElement(nextButton) - ? React.cloneElement(nextButton, { disabled: !hasNext }) + return React.isValidElement(nextButton) + ? React.cloneElement(nextButton, { disabled: !hasNext }) : nextButton; } @@ -323,7 +323,8 @@ function Pagination(props: PaginationProps) { return null; } - const pagerList: React.ReactElement[] = []; + const pagerList: React.ReactElement[] = []; + const pagerProps: PagerProps = { rootPrefixCls: prefixCls, onClick: handleChange, @@ -468,7 +469,7 @@ function Pagination(props: PaginationProps) { } if (current - 1 >= pageBufferSize * 2 && current !== 1 + 2) { - pagerList[0] = React.cloneElement(pagerList[0], { + pagerList[0] = React.cloneElement(pagerList[0], { className: classNames( `${prefixCls}-item-after-jump-prev`, pagerList[0].props.className, @@ -574,6 +575,10 @@ function Pagination(props: PaginationProps) { /> ); +}; + +if (process.env.NODE_ENV !== 'production') { + Pagination.displayName = 'Pagination'; } export default Pagination; diff --git a/src/interface.ts b/src/interface.ts index 56ec86c6..fad7b317 100644 --- a/src/interface.ts +++ b/src/interface.ts @@ -60,6 +60,7 @@ export interface PaginationProps extends Partial { ) => React.ReactNode; showTotal?: (total: number, range: [number, number]) => React.ReactNode; } + export interface PaginationState { current: number; currentInputValue: number; From d3114367844aae2e6b81622b2755a72f5092a393 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Nov 2023 03:21:35 +0800 Subject: [PATCH 204/262] chore(deps-dev): bump gh-pages from 4.0.0 to 6.1.0 (#534) Bumps [gh-pages](https://github.com/tschaub/gh-pages) from 4.0.0 to 6.1.0. - [Release notes](https://github.com/tschaub/gh-pages/releases) - [Changelog](https://github.com/tschaub/gh-pages/blob/main/changelog.md) - [Commits](https://github.com/tschaub/gh-pages/compare/v4.0.0...v6.1.0) --- updated-dependencies: - dependency-name: gh-pages dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 49bae298..c7a2a71c 100644 --- a/package.json +++ b/package.json @@ -66,7 +66,7 @@ "eslint-plugin-jest": "^27.6.0", "eslint-plugin-unicorn": "^49.0.0", "father": "^4.0.0", - "gh-pages": "^4.0.0", + "gh-pages": "^6.1.0", "glob": "^7.1.6", "husky": "^8.0.3", "identity-obj-proxy": "^3.0.0", From dada10afb031475b75df653003dabb5198a9ff28 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Nov 2023 03:25:55 +0800 Subject: [PATCH 205/262] chore(deps-dev): bump less from 3.13.1 to 4.1.3 (#416) * chore(deps-dev): bump less from 3.13.1 to 4.1.3 Bumps [less](https://github.com/less/less.js) from 3.13.1 to 4.1.3. - [Release notes](https://github.com/less/less.js/releases) - [Changelog](https://github.com/less/less.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/less/less.js/commits) --- updated-dependencies: - dependency-name: less dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] * Update package.json * Update package.json --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: lijianan <574980606@qq.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c7a2a71c..a489fe72 100644 --- a/package.json +++ b/package.json @@ -70,7 +70,7 @@ "glob": "^7.1.6", "husky": "^8.0.3", "identity-obj-proxy": "^3.0.0", - "less": "^3.10.3", + "less": "^4.1.3", "lint-staged": "^15.0.2", "np": "^7.0.0", "prettier": "^3.1.0", From 2fc3308e5beec4dd7388dbca543ec12445bfe4a9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Nov 2023 03:27:06 +0800 Subject: [PATCH 206/262] chore(deps-dev): bump np from 7.7.0 to 9.0.0 (#536) Bumps [np](https://github.com/sindresorhus/np) from 7.7.0 to 9.0.0. - [Release notes](https://github.com/sindresorhus/np/releases) - [Commits](https://github.com/sindresorhus/np/compare/v7.7.0...v9.0.0) --- updated-dependencies: - dependency-name: np dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index a489fe72..63b62714 100644 --- a/package.json +++ b/package.json @@ -72,7 +72,7 @@ "identity-obj-proxy": "^3.0.0", "less": "^4.1.3", "lint-staged": "^15.0.2", - "np": "^7.0.0", + "np": "^9.0.0", "prettier": "^3.1.0", "rc-select": "^14.1.2", "rc-test": "^7.0.15", From 71be4601a55b891f9c0cc632ac085de95a297f11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BA=A2?= Date: Thu, 30 Nov 2023 11:39:12 +0800 Subject: [PATCH 207/262] test: migrate tests to testing-library (#539) * chore: remove ts description * chore: update deps * chore: migrate options.test * chore: migrate demo.test * chore: migrate data-aria.test * chore: migrate itemRender.test * chore: migrate jumper.test * chore: migrate sizer.test * chore: migrate two-pagination.test * chore: migrate simple.test * chore: migrate index.test * chore: update * chore: migrate .js => .tsx * chore: supplement TS description --- jest.config.js | 7 +- package.json | 13 +- rc-pagination.d.ts | 62 - src/interface.ts | 7 +- tests/__snapshots__/demo.test.js.snap | 27 - tests/__snapshots__/demo.test.tsx.snap | 1580 +++++++++++++++++ ...index.test.js.snap => index.test.tsx.snap} | 0 tests/__snapshots__/options.test.js.snap | 3 - tests/__snapshots__/options.test.tsx.snap | 55 + .../{data-aria.test.js => data-aria.test.tsx} | 46 +- tests/{demo.test.js => demo.test.tsx} | 7 +- tests/index.test.js | 600 ------- tests/index.test.tsx | 608 +++++++ ...itemRender.test.js => itemRender.test.tsx} | 61 +- tests/jumper.test.js | 253 --- tests/jumper.test.tsx | 272 +++ tests/{options.test.js => options.test.tsx} | 13 +- tests/setupAfterEnv.ts | 1 + tests/simple.test.js | 215 --- tests/simple.test.tsx | 225 +++ tests/{sizer.test.js => sizer.test.tsx} | 43 +- tests/two-pagination.test.js | 38 - tests/two-pagination.test.tsx | 48 + 23 files changed, 2905 insertions(+), 1279 deletions(-) delete mode 100644 rc-pagination.d.ts delete mode 100644 tests/__snapshots__/demo.test.js.snap create mode 100644 tests/__snapshots__/demo.test.tsx.snap rename tests/__snapshots__/{index.test.js.snap => index.test.tsx.snap} (100%) delete mode 100644 tests/__snapshots__/options.test.js.snap create mode 100644 tests/__snapshots__/options.test.tsx.snap rename tests/{data-aria.test.js => data-aria.test.tsx} (52%) rename tests/{demo.test.js => demo.test.tsx} (70%) delete mode 100644 tests/index.test.js create mode 100644 tests/index.test.tsx rename tests/{itemRender.test.js => itemRender.test.tsx} (54%) delete mode 100644 tests/jumper.test.js create mode 100644 tests/jumper.test.tsx rename tests/{options.test.js => options.test.tsx} (70%) create mode 100644 tests/setupAfterEnv.ts delete mode 100644 tests/simple.test.js create mode 100644 tests/simple.test.tsx rename tests/{sizer.test.js => sizer.test.tsx} (55%) delete mode 100644 tests/two-pagination.test.js create mode 100644 tests/two-pagination.test.tsx diff --git a/jest.config.js b/jest.config.js index 55b2a26f..f1134def 100644 --- a/jest.config.js +++ b/jest.config.js @@ -1,12 +1,9 @@ const pkg = require('./package.json'); module.exports = { - snapshotSerializers: [require.resolve('enzyme-to-json/serializer')], + setupFilesAfterEnv: ['/tests/setupAfterEnv.ts'], moduleNameMapper: { [pkg.name]: '/src/index.ts', '\\.less$': 'identity-obj-proxy', }, - collectCoverageFrom: [ - 'src/**', - '!src/locale/**', - ], + collectCoverageFrom: ['src/**', '!src/locale/**'], }; diff --git a/package.json b/package.json index 63b62714..9a47f93c 100644 --- a/package.json +++ b/package.json @@ -12,13 +12,11 @@ ], "main": "./lib/index", "module": "./es/index", - "types": "rc-pagination.d.ts", "files": [ "assets/*.css", "assets/*.less", "es", - "lib", - "rc-pagination.d.ts" + "lib" ], "homepage": "https://react-component.github.io/pagination", "repository": { @@ -50,6 +48,8 @@ }, "devDependencies": { "@rc-component/father-plugin": "^1.0.0", + "@testing-library/jest-dom": "^5.17.0", + "@testing-library/react": "^14.0.0", "@types/classnames": "^2.2.9", "@types/jest": "^29.2.2", "@types/keyv": "^4.2.0", @@ -59,9 +59,6 @@ "coveralls": "^3.0.6", "cross-env": "^7.0.0", "dumi": "^2.1.2", - "enzyme": "^3.0.0", - "enzyme-adapter-react-16": "^1.15.6", - "enzyme-to-json": "^3.4.0", "eslint": "^8.54.0", "eslint-plugin-jest": "^27.6.0", "eslint-plugin-unicorn": "^49.0.0", @@ -76,8 +73,8 @@ "prettier": "^3.1.0", "rc-select": "^14.1.2", "rc-test": "^7.0.15", - "react": "^16.0.0", - "react-dom": "^16.0.0" + "react": "^18.2.0", + "react-dom": "^18.2.0" }, "peerDependencies": { "react": ">=16.9.0", diff --git a/rc-pagination.d.ts b/rc-pagination.d.ts deleted file mode 100644 index 3db78bc2..00000000 --- a/rc-pagination.d.ts +++ /dev/null @@ -1,62 +0,0 @@ -declare module 'rc-pagination' { - export interface PaginationData { - className: string; - selectPrefixCls: string; - prefixCls: string; - pageSizeOptions: string[] | number[]; - - current: number; - defaultCurrent: number; - total: number; - pageSize: number; - defaultPageSize: number; - - hideOnSinglePage: boolean; - showSizeChanger: boolean; - showLessItems: boolean; - showPrevNextJumpers: boolean; - showQuickJumper: boolean | object; - showTitle: boolean; - simple: boolean; - disabled: boolean; - - locale: PaginationLocale; - - style: React.CSSProperties; - - selectComponentClass: React.ComponentType; - prevIcon: React.ComponentType | React.ReactNode; - nextIcon: React.ComponentType | React.ReactNode; - jumpPrevIcon: React.ComponentType | React.ReactNode; - jumpNextIcon: React.ComponentType | React.ReactNode; - } - - export interface PaginationLocale { - // Options.jsx - items_per_page?: string; - jump_to?: string; - jump_to_confirm?: string; - page?: string; - - // Pagination.jsx - prev_page?: string; - next_page?: string; - prev_5?: string; - next_5?: string; - prev_3?: string; - next_3?: string; - } - - export interface PaginationProps extends Partial { - onChange?: (page: number, pageSize: number) => void; - onShowSizeChange?: (current: number, size: number) => void; - itemRender?: ( - page: number, - type: 'page' | 'prev' | 'next' | 'jump-prev' | 'jump-next', - element: React.ReactNode, - ) => React.ReactNode; - showTotal?: (total: number, range: [number, number]) => React.ReactNode; - } - - export default class Pagination extends React.Component {} -} diff --git a/src/interface.ts b/src/interface.ts index fad7b317..56838c8e 100644 --- a/src/interface.ts +++ b/src/interface.ts @@ -50,7 +50,9 @@ export interface PaginationData { jumpNextIcon: React.ComponentType | React.ReactNode; } -export interface PaginationProps extends Partial { +export interface PaginationProps + extends Partial, + React.AriaAttributes { onChange?: (page: number, pageSize: number) => void; onShowSizeChange?: (current: number, size: number) => void; itemRender?: ( @@ -59,6 +61,9 @@ export interface PaginationProps extends Partial { element: React.ReactNode, ) => React.ReactNode; showTotal?: (total: number, range: [number, number]) => React.ReactNode; + + // WAI-ARIA + role?: React.AriaRole | undefined; } export interface PaginationState { diff --git a/tests/__snapshots__/demo.test.js.snap b/tests/__snapshots__/demo.test.js.snap deleted file mode 100644 index ea30afad..00000000 --- a/tests/__snapshots__/demo.test.js.snap +++ /dev/null @@ -1,27 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Example basic 1`] = `""`; - -exports[`Example controlled 1`] = `""`; - -exports[`Example itemRender 1`] = `""`; - -exports[`Example jumper 1`] = `"

    默认

    禁用

    单页默认隐藏

    • 1
    • 10 条/页

    • 1
    • 10 条/页
    "`; - -exports[`Example jumperWithGoButton 1`] = `"

    customize node

    default node

    • /5
    • 跳至
    "`; - -exports[`Example lessPages 1`] = `"
    Is using icon: true
    "`; - -exports[`Example locale 1`] = `""`; - -exports[`Example more 1`] = `""`; - -exports[`Example showTitle 1`] = `""`; - -exports[`Example showTotal 1`] = `"

    • 0 - 0 of 0 items
    • 1
    "`; - -exports[`Example simple 1`] = `"
    • /5

    • Total 50 items
    • /5

    • /5
    • 10 条/页
    "`; - -exports[`Example sizer 1`] = `"
    "`; - -exports[`Example styles 1`] = `""`; diff --git a/tests/__snapshots__/demo.test.tsx.snap b/tests/__snapshots__/demo.test.tsx.snap new file mode 100644 index 00000000..713824c9 --- /dev/null +++ b/tests/__snapshots__/demo.test.tsx.snap @@ -0,0 +1,1580 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`Example basic 1`] = ` + +`; + +exports[`Example controlled 1`] = ` + +`; + +exports[`Example itemRender 1`] = ` + +`; + +exports[`Example jumper 1`] = ` +

    + 默认 +

    +`; + +exports[`Example jumperWithGoButton 1`] = ` +

    + customize node +

    +`; + +exports[`Example lessPages 1`] = ` +
    + + +
    + + + Is using icon: + true + +
    +
    +`; + +exports[`Example locale 1`] = ` + +`; + +exports[`Example more 1`] = ` + +`; + +exports[`Example showTitle 1`] = ` +
    + + +
    +`; + +exports[`Example showTotal 1`] = ` + +`; + +exports[`Example simple 1`] = ` +
      +
    • +
    • +
    • + + + / + + 5 +
    • +
    • +
    • +
    +`; + +exports[`Example sizer 1`] = ` +
    + + + + +
    +`; + +exports[`Example styles 1`] = ` + +`; diff --git a/tests/__snapshots__/index.test.js.snap b/tests/__snapshots__/index.test.tsx.snap similarity index 100% rename from tests/__snapshots__/index.test.js.snap rename to tests/__snapshots__/index.test.tsx.snap diff --git a/tests/__snapshots__/options.test.js.snap b/tests/__snapshots__/options.test.js.snap deleted file mode 100644 index 7e59d697..00000000 --- a/tests/__snapshots__/options.test.js.snap +++ /dev/null @@ -1,3 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Options should render correctly 1`] = `"
  • 10 条/页
    跳至
  • "`; diff --git a/tests/__snapshots__/options.test.tsx.snap b/tests/__snapshots__/options.test.tsx.snap new file mode 100644 index 00000000..5824f3f0 --- /dev/null +++ b/tests/__snapshots__/options.test.tsx.snap @@ -0,0 +1,55 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`Options should render correctly 1`] = ` +
  • +
    +
    + + + + + 10 条/页 + +
    +
    +
    + 跳至 + + 页 +
    +
  • +`; diff --git a/tests/data-aria.test.js b/tests/data-aria.test.tsx similarity index 52% rename from tests/data-aria.test.js rename to tests/data-aria.test.tsx index c6e4b084..dbf1523c 100644 --- a/tests/data-aria.test.js +++ b/tests/data-aria.test.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mount } from 'enzyme'; +import { render } from '@testing-library/react'; import Pagination from '../src'; describe('data and aria props', () => { @@ -7,7 +7,7 @@ describe('data and aria props', () => { describe('with simple prop', () => { beforeEach(() => { - wrapper = mount( + wrapper = render( { }); it('renders data attributes', () => { - expect(wrapper.getDOMNode().getAttribute('data-test')).toBe('test-id'); - expect(wrapper.getDOMNode().getAttribute('data-id')).toBe('12345'); + expect(wrapper.container.firstChild).toHaveAttribute( + 'data-test', + 'test-id', + ); + expect(wrapper.container.firstChild).toHaveAttribute('data-id', '12345'); }); it('renders aria attributes', () => { - expect(wrapper.getDOMNode().getAttribute('aria-labelledby')).toBe( + expect(wrapper.container.firstChild).toHaveAttribute( + 'aria-labelledby', 'labelledby-id', ); - expect(wrapper.getDOMNode().getAttribute('aria-label')).toBe('label-id'); + expect(wrapper.container.firstChild).toHaveAttribute( + 'aria-label', + 'label-id', + ); }); it('renders role attribute', () => { - expect(wrapper.getDOMNode().getAttribute('role')).toBe('navigation'); + expect(wrapper.container.firstChild).toHaveAttribute( + 'role', + 'navigation', + ); }); }); describe('without simple prop', () => { beforeEach(() => { - wrapper = mount( + wrapper = render( { }); it('renders data attributes', () => { - expect(wrapper.getDOMNode().getAttribute('data-test')).toBe('test-id'); - expect(wrapper.getDOMNode().getAttribute('data-id')).toBe('12345'); + expect(wrapper.container.firstChild).toHaveAttribute( + 'data-test', + 'test-id', + ); + expect(wrapper.container.firstChild).toHaveAttribute('data-id', '12345'); }); it('renders aria attributes', () => { - expect(wrapper.getDOMNode().getAttribute('aria-labelledby')).toBe( + expect(wrapper.container.firstChild).toHaveAttribute( + 'aria-labelledby', 'labelledby-id', ); - expect(wrapper.getDOMNode().getAttribute('aria-label')).toBe('label-id'); + expect(wrapper.container.firstChild).toHaveAttribute( + 'aria-label', + 'label-id', + ); }); it('renders role attribute', () => { - expect(wrapper.getDOMNode().getAttribute('role')).toBe('navigation'); + expect(wrapper.container.firstChild).toHaveAttribute( + 'role', + 'navigation', + ); }); }); }); diff --git a/tests/demo.test.js b/tests/demo.test.tsx similarity index 70% rename from tests/demo.test.js rename to tests/demo.test.tsx index 1637c4e6..bca40e84 100644 --- a/tests/demo.test.js +++ b/tests/demo.test.tsx @@ -1,6 +1,7 @@ -import { mount } from 'enzyme'; +import { render } from '@testing-library/react'; import fs from 'fs'; import path from 'path'; +import * as React from 'react'; const exampleDir = path.resolve(__dirname, '../docs/examples'); const files = fs @@ -13,8 +14,8 @@ describe('Example', () => { it(name, () => { const Example = require(path.join(exampleDir, file)).default; - const wrapper = mount(); - expect(wrapper.html()).toMatchSnapshot(); + const { container } = render(); + expect(container.firstChild).toMatchSnapshot(); }); }); }); diff --git a/tests/index.test.js b/tests/index.test.js deleted file mode 100644 index fbd8f56e..00000000 --- a/tests/index.test.js +++ /dev/null @@ -1,600 +0,0 @@ -import { mount } from 'enzyme'; -import Select from 'rc-select'; -import React from 'react'; -import Pagination from '../src'; - -describe('Default Pagination', () => { - let wrapper; - const onChange = jest.fn(); - - beforeEach(() => { - wrapper = mount(); - }); - - afterEach(() => { - wrapper.unmount(); - onChange.mockReset(); - }); - - it('onChange should be forbidden when total is default', () => { - const pagers = wrapper.find('.rc-pagination-item'); - const page1 = pagers.at(0); - page1.simulate('click'); - expect(onChange).toBeCalledTimes(0); - }); -}); - -describe('Uncontrolled Pagination', () => { - let wrapper; - const onChange = jest.fn(); - - function shouldHighlightRight(current) { - const pagers = wrapper.find('li:not(.rc-pagination-total-text)'); - pagers.forEach((pager, index) => { - // if (index === wrapper.state().current) { // Class Component - const props = wrapper.props(); - if (index === (current ?? props.current ?? props.defaultCurrent)) { - expect(pager.hasClass('rc-pagination-item-active')).toBe(true); - } else { - expect(pager.hasClass('rc-pagination-item-active')).toBe(false); - } - }); - } - - beforeEach(() => { - wrapper = mount( - - `${range[0]} - ${range[1]} of ${total} items` - } - />, - ); - }); - - afterEach(() => { - wrapper.unmount(); - onChange.mockReset(); - }); - - it('default current page is 1', () => { - // expect(wrapper.state().current).toBe(1); // Class Component - expect(wrapper.find('.rc-pagination-item-active').text()).toBe('1'); - expect(wrapper.find('.rc-pagination-item').first().text()).toBe('1'); - expect(wrapper.find('.rc-pagination-item').first().prop('title')).toBe('1'); - }); - - it('prev-button should be disabled', () => { - const prevButton = wrapper.find('.rc-pagination-prev'); - expect(prevButton.hasClass('rc-pagination-disabled')).toBe(true); - expect(prevButton.getDOMNode().getAttribute('aria-disabled')).toBe('true'); - }); - - it('should hightlight current page and not highlight other page', () => - shouldHighlightRight()); - - it('should calc page right', () => { - const pagers = wrapper.find( - 'li:not(.rc-pagination-total-text):not(.rc-pagination-options)', - ); - const knownPageCount = 3; - const buttonLength = 2; - expect(pagers.length).toBe(knownPageCount + buttonLength); - }); - - it('next button should not be disabled', () => { - const nextButton = wrapper.find('.rc-pagination-next'); - expect(nextButton.hasClass('rc-pagination-disabled')).toBe(false); - expect(nextButton.getDOMNode().getAttribute('aria-disabled')).toBe('false'); - }); - - it('should response mouse click right', () => { - const pagers = wrapper.find('.rc-pagination-item'); - expect(pagers.length).toBe(3); - const page2 = pagers.at(1); - expect(page2.hasClass('rc-pagination-item-2')).toBe(true); - page2.simulate('click'); - // expect(wrapper.state().current).toBe(2); // Class Component - expect(wrapper.find('.rc-pagination-item-active').text()).toBe('2'); - expect(onChange).toHaveBeenLastCalledWith(2, 10); - shouldHighlightRight(2); - }); - - it('should response next page', () => { - const nextButton = wrapper.find('.rc-pagination-next'); - nextButton.simulate('click'); - // expect(wrapper.state().current).toBe(2); // Class Component - expect(wrapper.find('.rc-pagination-item-active').text()).toBe('2'); - expect(onChange).toHaveBeenLastCalledWith(2, 10); - shouldHighlightRight(2); - }); - - it('should quick jump to expect page', () => { - const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); - const input = quickJumper.find('input'); - const goButton = quickJumper.find( - '.rc-pagination-options-quick-jumper-button', - ); - input.simulate('change', { target: { value: '2' } }); - goButton.simulate('click'); - // expect(wrapper.state().current).toBe(2); // Class Component - expect(wrapper.find('.rc-pagination-item-active').text()).toBe('2'); - expect(onChange).toHaveBeenLastCalledWith(2, 10); - }); - - // https://github.com/ant-design/ant-design/issues/17763 - it('should not jump when blur input when there is goButton', () => { - const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); - const input = quickJumper.find('input'); - input.simulate('focus'); - input.simulate('change', { target: { value: '2' } }); - input.simulate('blur'); - // expect(wrapper.state().current).toBe(1); - expect(wrapper.find('.rc-pagination-item-active').text()).toBe('1'); - expect(onChange).not.toBeCalled(); - }); - - // https://github.com/ant-design/ant-design/issues/17763 - it('should not jump when blur input when there is not goButton', () => { - const component = mount( - , - ); - const quickJumper = component.find('.rc-pagination-options-quick-jumper'); - const input = quickJumper.find('input'); - input.simulate('change', { target: { value: '2' } }); - input.simulate('blur'); - // expect(component.state().current).toBe(2); - expect(component.find('.rc-pagination-item-active').text()).toBe('2'); - }); - - // https://github.com/ant-design/ant-design/issues/15539 - it('should hide quick jumper when only one page', () => { - const component = mount( - , - ); - const quickJumper = component.find('.rc-pagination-options-quick-jumper'); - expect(quickJumper.length).toBe(0); - }); - - it('should display total items', () => { - const totalText = wrapper.find('.rc-pagination-total-text'); - expect(totalText.text()).toBe('1 - 10 of 25 items'); - const nextButton = wrapper.find('.rc-pagination-next'); - nextButton.simulate('click'); - expect(totalText.text()).toBe('11 - 20 of 25 items'); - nextButton.simulate('click'); - expect(totalText.text()).toBe('21 - 25 of 25 items'); - }); - - it('readonly warning should be displayed', () => { - const warnSpy = jest.spyOn(console, 'error').mockImplementation(() => {}); - mount(); - expect(warnSpy).toHaveBeenCalledWith( - 'Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.', - ); - warnSpy.mockRestore(); - }); - - it('should response keyboard event', () => { - const pagers = wrapper.find('.rc-pagination-item'); - const page2 = pagers.at(2); - page2.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); - expect(wrapper.find('.rc-pagination-item-active').text()).toBe('3'); - expect(onChange).toHaveBeenLastCalledWith(3, 10); - }); -}); - -describe('Controlled Pagination', () => { - let wrapper; - const onChange = jest.fn(); - - beforeEach(() => { - wrapper = mount(); - }); - - afterEach(() => { - wrapper.unmount(); - onChange.mockReset(); - }); - - it('current should equal defaultCurrent', () => { - // expect(wrapper.state().current).toBe(2); // Class Component - expect(wrapper.find('.rc-pagination-item-active').text()).toBe('2'); - expect(wrapper.find('.rc-pagination-item').first().text()).toBe('1'); - expect( - wrapper - .find('.rc-pagination-item') - .at(1) - .hasClass('rc-pagination-item-active'), - ).toBe(true); - }); - - it('should not response mouse click', () => { - const nextButton = wrapper.find('.rc-pagination-next'); - nextButton.simulate('click'); - // expect(wrapper.state().current).toBe(2); // Class Component - expect(wrapper.find('.rc-pagination-item-active').text()).toBe('2'); - expect(onChange).toHaveBeenLastCalledWith(3, 10); - }); -}); - -describe('Other props', () => { - it('should support custom default icon', () => { - const nextIcon = () => nextIcon; - const prevIcon = () => prevIcon; - const jumpNextIcon = () => jumpNextIcon; - const jumpPrevIcon = () => jumpPrevIcon; - const iconsProps = { - prevIcon, - nextIcon, - jumpPrevIcon, - jumpNextIcon, - }; - const wrapper = mount( - , - ); - const prev = wrapper.find('.rc-pagination-prev'); - const next = wrapper.find('.rc-pagination-next'); - const jumpPrev = wrapper.find('.rc-pagination-jump-prev'); - const jumpNext = wrapper.find('.rc-pagination-jump-next'); - expect(prev.text()).toBe('prevIcon'); - expect(next.text()).toBe('nextIcon'); - expect(jumpPrev.text()).toBe('jumpPrevIcon'); - expect(jumpNext.text()).toBe('jumpNextIcon'); - }); - - describe('showPrevNextJumpers props', () => { - it('should hide jump-prev, jump-next if showPrevNextJumpers equals false', () => { - const wrapper = mount( - , - ); - const prev = wrapper.find('.rc-pagination-jump-prev'); - const next = wrapper.find('.rc-pagination-jump-next'); - expect(prev.exists()).toBe(false); - expect(next.exists()).toBe(false); - }); - - it('should show jump-prev, jump-next if showPrevNextJumpers equals true', () => { - const wrapper = mount( - , - ); - const prev = wrapper.find('.rc-pagination-jump-prev'); - const next = wrapper.find('.rc-pagination-jump-next'); - expect(prev.exists()).toBe(true); - expect(next.exists()).toBe(true); - }); - }); - - describe('hideOnSinglePage props', () => { - const itemRender = (current) => {current}; - - it('should hide pager if hideOnSinglePage equals true', () => { - const wrapper = mount( - , - ); - expect(wrapper.find('.rc-pagination').exists()).toBe(false); - }); - - it('should show pager if hideOnSinglePage equals false', () => { - const wrapper = mount( - , - ); - expect(wrapper.find('.rc-pagination').exists()).toBe(true); - }); - - it('should show pager if hideOnSinglePage equals true but more than 1 page', () => { - const wrapper = mount( - , - ); - expect(wrapper.find('.rc-pagination').exists()).toBe(true); - }); - }); - - it('disabled', () => { - const wrapper = mount( - , - ); - expect(wrapper.find('.rc-pagination-disabled').exists()).toBe(true); - expect(wrapper.find('input').exists()).toBe(true); - expect(wrapper.find(Select).props().disabled).toBe(true); - expect(wrapper.find('input').at(0).getDOMNode().disabled).toBe(true); - expect( - wrapper - .find('.rc-pagination-options-quick-jumper-button') - .at(0) - .getDOMNode().disabled, - ).toBe(true); - }); -}); - -// https://github.com/ant-design/ant-design/issues/10524 -describe('current value on onShowSizeChange when total is 0', () => { - let wrapper; - const onShowSizeChange = jest.fn(); - const onChange = jest.fn(); - - beforeEach(() => { - wrapper = mount( - - `${range[0]} - ${range[1]} of ${total} items` - } - />, - ); - }); - - afterEach(() => { - wrapper.unmount(); - onShowSizeChange.mockReset(); - onChange.mockReset(); - }); - - it('should call onShowSizeChange when no change', () => { - const sizeChanger = wrapper - .find('.rc-pagination-options-size-changer') - .at(0); - sizeChanger.simulate('click'); - const input = sizeChanger.find('input'); - input.simulate('keyDown', { key: 'Down', keyCode: 40, which: 40 }); - input.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); - expect(onShowSizeChange).not.toBeCalled(); - expect(onChange).not.toBeCalled(); - }); - - it('current should equal to the current in onShowSizeChange', () => { - const sizeChanger = wrapper - .find('.rc-pagination-options-size-changer') - .at(0); - sizeChanger.simulate('click'); - const input = sizeChanger.find('input'); - input.simulate('keyDown', { key: 'Down', keyCode: 40, which: 40 }); - input.simulate('keyDown', { key: 'Down', keyCode: 40, which: 40 }); - input.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); - expect(onShowSizeChange).toHaveBeenLastCalledWith( - // wrapper.state().current, - 1, - 20, - ); - expect(onChange).toHaveBeenLastCalledWith(1, 20); - }); - - it('when total is 0, pager should show `1` and being disabled', () => { - const itemButton = wrapper.find('.rc-pagination-item'); - expect(itemButton.hasClass('rc-pagination-item-disabled')).toBe(true); - expect(itemButton.text()).toBe('1'); - }); - - it('when total is 0, `from` and `to` should be 0', () => { - const totalText = wrapper.find('.rc-pagination-total-text'); - expect(totalText.text()).toBe('0 - 0 of 0 items'); - }); - - it('size changer show logic', () => { - const wrapper1 = mount( - , - ); - expect(wrapper1.exists('.rc-pagination-options-size-changer')).toBe(false); - const wrapper2 = mount( - , - ); - expect(wrapper2.exists('.rc-pagination-options-size-changer')).toBe(true); - const wrapper3 = mount( - , - ); - expect(wrapper3.exists('.rc-pagination-options-size-changer')).toBe(false); - const wrapper4 = mount( - , - ); - expect(wrapper4.exists('.rc-pagination-options-size-changer')).toBe(true); - }); - - it('totalBoundaryShowSizeChanger works', () => { - const wrapper1 = mount( - , - ); - expect(wrapper1.exists('.rc-pagination-options-size-changer')).toBe(false); - const wrapper2 = mount( - , - ); - expect(wrapper2.exists('.rc-pagination-options-size-changer')).toBe(true); - const wrapper3 = mount( - , - ); - expect(wrapper3.exists('.rc-pagination-options-size-changer')).toBe(false); - const wrapper4 = mount( - , - ); - expect(wrapper4.exists('.rc-pagination-options-size-changer')).toBe(true); - }); -}); - -describe('should emit onChange when total is string', () => { - let wrapper; - const onChange = jest.fn(); - - beforeEach(() => { - wrapper = mount( - , - ); - }); - - afterEach(() => { - wrapper.unmount(); - onChange.mockReset(); - }); - - it('onChange should be called when click page', () => { - const pagers = wrapper.find('.rc-pagination-item-3'); - const page1 = pagers.at(0); - page1.simulate('click'); - expect(onChange).toBeCalledWith(3, 10); - }); -}); - -describe('keyboard support', () => { - let wrapper; - const onChange = jest.fn(); - - beforeEach(() => { - wrapper = mount( - , - ); - }); - - afterEach(() => { - wrapper.unmount(); - onChange.mockReset(); - }); - - it('should work for prev page', () => { - const prevButton = wrapper.find('li.rc-pagination-prev'); - expect(prevButton.exists()).toBeTruthy(); - - prevButton.simulate('click'); - prevButton.simulate('click'); - - prevButton.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); - prevButton.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); - - expect(onChange).toHaveBeenLastCalledWith(46, 10); - }); - - it('should work for next page', () => { - const nextButton = wrapper.find('li.rc-pagination-next'); - expect(nextButton.exists()).toBeTruthy(); - - nextButton.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); - nextButton.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); - - nextButton.simulate('click'); - nextButton.simulate('click'); - - expect(onChange).toHaveBeenLastCalledWith(54, 10); - }); - - it('should work for jump prev page', () => { - const jumpPrevButton = wrapper.find('li.rc-pagination-jump-prev'); - expect(jumpPrevButton.exists()).toBeTruthy(); - - jumpPrevButton.simulate('keyDown', { - key: 'Enter', - keyCode: 13, - which: 13, - }); - jumpPrevButton.simulate('click'); - - expect(onChange).toHaveBeenLastCalledWith(40, 10); - }); - - it('should work for jump next page', () => { - const jumpNextButton = wrapper.find('li.rc-pagination-jump-next'); - expect(jumpNextButton.exists()).toBeTruthy(); - - jumpNextButton.simulate('click'); - jumpNextButton.simulate('keyDown', { - key: 'Enter', - keyCode: 13, - which: 13, - }); - - expect(onChange).toHaveBeenLastCalledWith(60, 10); - }); -}); - -describe('select in sequence', () => { - const serializeCls = (items) => - items.map((item) => - String(item.prop('className')).replaceAll('rc-pagination-', ''), - ); - - class Demo extends React.Component { - state = { current: 1 }; - - changeHandle = (current) => this.setState({ current }); - - render() { - return ( - - ); - } - } - - function sequenceSelector(total) { - describe(`should sequence select ${total} pages`, () => { - const wrapper = mount(); - const cls = serializeCls(wrapper.find('li')); - expect(cls).toMatchSnapshot(); - - const pages = Math.floor((total - 1) / 10) + 1; - for (let i = 2; i <= pages; i++) { - it(`should select page ${i}`, () => { - wrapper.setState({ current: i }); - const cls = serializeCls(wrapper.find('li')); - expect(cls).toMatchSnapshot(); - }); - } - }); - } - // coped examples/basic.tsx - sequenceSelector(25); - sequenceSelector(50); - sequenceSelector(60); - sequenceSelector(70); - sequenceSelector(80); - sequenceSelector(90); - sequenceSelector(100); - sequenceSelector(120); - sequenceSelector(500); -}); diff --git a/tests/index.test.tsx b/tests/index.test.tsx new file mode 100644 index 00000000..16f0480e --- /dev/null +++ b/tests/index.test.tsx @@ -0,0 +1,608 @@ +import { render, fireEvent } from '@testing-library/react'; +import Select from 'rc-select'; +import React from 'react'; +import Pagination from '../src'; +import { resetWarned } from 'rc-util/lib/warning'; + +describe('Default Pagination', () => { + let wrapper; + const onChange = jest.fn(); + const $$ = (selector) => wrapper.container.querySelectorAll(selector); + + beforeEach(() => { + wrapper = render(); + }); + + afterEach(() => { + wrapper.unmount(); + onChange.mockReset(); + }); + + it('onChange should be forbidden when total is default', () => { + const pagers = $$('.rc-pagination-item'); + fireEvent.click(pagers[0]); + expect(onChange).not.toHaveBeenCalled(); + }); +}); + +describe('Uncontrolled Pagination', () => { + let wrapper; + const onChange = jest.fn(); + const $$ = (selector) => wrapper.container.querySelectorAll(selector); + + function shouldHighlightRight(current = 1) { + const pagers = $$('li:not(.rc-pagination-total-text)'); + Array.from(pagers).forEach((pager, index) => { + if (index === current) { + expect(pager).toHaveClass('rc-pagination-item-active'); + } else { + expect(pager).not.toHaveClass('rc-pagination-item-active'); + } + }); + } + + beforeEach(() => { + wrapper = render( + + `${range[0]} - ${range[1]} of ${total} items` + } + />, + ); + }); + + afterEach(() => { + wrapper.unmount(); + onChange.mockReset(); + }); + + it('default current page is 1', () => { + expect( + wrapper.container.querySelector('.rc-pagination-item-active'), + ).toHaveTextContent('1'); + expect($$('.rc-pagination-item')[0]).toHaveTextContent('1'); + expect($$('.rc-pagination-item')[0]).toHaveAttribute('title', '1'); + }); + + it('prev-button should be disabled', () => { + const prevButton = wrapper.container.querySelector('.rc-pagination-prev'); + expect(prevButton).toHaveClass('rc-pagination-disabled'); + expect(prevButton).toHaveAttribute('aria-disabled', 'true'); + }); + + it('should hightlight current page and not highlight other page', () => + shouldHighlightRight()); + + it('should calc page right', () => { + const pagers = $$( + 'li:not(.rc-pagination-total-text):not(.rc-pagination-options)', + ); + const knownPageCount = 3; + const buttonLength = 2; + expect(pagers.length).toBe(knownPageCount + buttonLength); + }); + + it('next button should not be disabled', () => { + const nextButton = wrapper.container.querySelector('.rc-pagination-next'); + expect(nextButton).not.toHaveClass('rc-pagination-disabled'); + expect(nextButton).toHaveAttribute('aria-disabled', 'false'); + }); + + it('should response mouse click right', () => { + const pagers = $$('.rc-pagination-item'); + expect(pagers).toHaveLength(3); + const page2 = pagers[1]; + expect(page2).toHaveClass('rc-pagination-item-2'); + fireEvent.click(page2); + expect( + wrapper.container.querySelector('.rc-pagination-item-active'), + ).toHaveTextContent('2'); + expect(onChange).toHaveBeenLastCalledWith(2, 10); + shouldHighlightRight(2); + }); + + it('should response next page', () => { + const nextButton = wrapper.container.querySelector('.rc-pagination-next'); + fireEvent.click(nextButton); + expect( + wrapper.container.querySelector('.rc-pagination-item-active'), + ).toHaveTextContent('2'); + expect(onChange).toHaveBeenLastCalledWith(2, 10); + shouldHighlightRight(2); + }); + + it('should quick jump to expect page', () => { + const quickJumper = wrapper.container.querySelector( + '.rc-pagination-options-quick-jumper', + ); + const input = quickJumper.querySelector('input'); + const goButton = quickJumper.querySelector( + '.rc-pagination-options-quick-jumper-button', + ); + fireEvent.change(input, { target: { value: '2' } }); + fireEvent.click(goButton); + expect( + wrapper.container.querySelector('.rc-pagination-item-active'), + ).toHaveTextContent('2'); + expect(onChange).toHaveBeenLastCalledWith(2, 10); + }); + + // https://github.com/ant-design/ant-design/issues/17763 + it('should not jump when blur input when there is goButton', () => { + const input = wrapper.container.querySelector( + '.rc-pagination-options-quick-jumper input', + ); + fireEvent.focus(input); + fireEvent.change(input, { target: { value: '2' } }); + fireEvent.blur(input); + expect( + wrapper.container.querySelector('.rc-pagination-item-active'), + ).toHaveTextContent('1'); + + expect(onChange).not.toHaveBeenCalled(); + }); + + // https://github.com/ant-design/ant-design/issues/17763 + it('should not jump when blur input when there is not goButton', () => { + const { container } = render( + , + ); + const input = container.querySelector( + '.rc-pagination-options-quick-jumper input', + ); + fireEvent.change(input, { target: { value: '2' } }); + fireEvent.blur(input); + expect( + container.querySelector('.rc-pagination-item-active'), + ).toHaveTextContent('2'); + }); + + // https://github.com/ant-design/ant-design/issues/15539 + it('should hide quick jumper when only one page', () => { + const { container } = render( + , + ); + const quickJumper = container.querySelectorAll( + '.rc-pagination-options-quick-jumper', + ); + expect(quickJumper).toHaveLength(0); + }); + + it('should display total items', () => { + const totalText = wrapper.container.querySelector( + '.rc-pagination-total-text', + ); + expect(totalText).toHaveTextContent('1 - 10 of 25 items'); + const nextButton = wrapper.container.querySelector('.rc-pagination-next'); + fireEvent.click(nextButton); + expect(totalText).toHaveTextContent('11 - 20 of 25 items'); + fireEvent.click(nextButton); + expect(totalText).toHaveTextContent('21 - 25 of 25 items'); + }); + + it('readonly warning should be displayed', () => { + resetWarned(); + const warnSpy = jest.spyOn(console, 'error').mockImplementation(() => {}); + render(); + expect(warnSpy).toHaveBeenCalledWith( + 'Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.', + ); + warnSpy.mockRestore(); + }); + + it('should response keyboard event', () => { + const pagers = $$('.rc-pagination-item'); + fireEvent.keyDown(pagers[2], { key: 'Enter', keyCode: 13, which: 13 }); + expect( + wrapper.container.querySelector('.rc-pagination-item-active'), + ).toHaveTextContent('3'); + expect(onChange).toHaveBeenLastCalledWith(3, 10); + }); +}); + +describe('Controlled Pagination', () => { + let wrapper; + const onChange = jest.fn(); + + beforeEach(() => { + wrapper = render(); + }); + + afterEach(() => { + wrapper.unmount(); + onChange.mockReset(); + }); + + it('current should equal defaultCurrent', () => { + expect( + wrapper.container.querySelector('.rc-pagination-item-active'), + ).toHaveTextContent('2'); + expect( + wrapper.container.querySelector('.rc-pagination-item'), + ).toHaveTextContent('1'); + expect( + wrapper.container.querySelectorAll('.rc-pagination-item')[1], + ).toHaveClass('rc-pagination-item-active'); + }); + + it('should not response mouse click', () => { + const nextButton = wrapper.container.querySelector('.rc-pagination-next'); + fireEvent.click(nextButton); + expect( + wrapper.container.querySelector('.rc-pagination-item-active'), + ).toHaveTextContent('2'); + expect(onChange).toHaveBeenLastCalledWith(3, 10); + }); +}); + +describe('Other props', () => { + it('should support custom default icon', () => { + const nextIcon = () => nextIcon; + const prevIcon = () => prevIcon; + const jumpNextIcon = () => jumpNextIcon; + const jumpPrevIcon = () => jumpPrevIcon; + const iconsProps = { + prevIcon, + nextIcon, + jumpPrevIcon, + jumpNextIcon, + }; + const { container } = render( + , + ); + const prev = container.querySelector('.rc-pagination-prev'); + const next = container.querySelector('.rc-pagination-next'); + const jumpPrev = container.querySelector('.rc-pagination-jump-prev'); + const jumpNext = container.querySelector('.rc-pagination-jump-next'); + expect(prev).toHaveTextContent('prevIcon'); + expect(next).toHaveTextContent('nextIcon'); + expect(jumpPrev).toHaveTextContent('jumpPrevIcon'); + expect(jumpNext).toHaveTextContent('jumpNextIcon'); + }); + + describe('showPrevNextJumpers props', () => { + it('should hide jump-prev, jump-next if showPrevNextJumpers equals false', () => { + const { container } = render( + , + ); + const prev = container.querySelector('.rc-pagination-jump-prev'); + const next = container.querySelector('.rc-pagination-jump-next'); + expect(prev).toBeNull(); + expect(next).toBeNull(); + }); + + it('should show jump-prev, jump-next if showPrevNextJumpers equals true', () => { + const { container } = render( + , + ); + const prev = container.querySelector('.rc-pagination-jump-prev'); + const next = container.querySelector('.rc-pagination-jump-next'); + expect(prev).toBeTruthy(); + expect(next).toBeTruthy(); + }); + }); + + describe('hideOnSinglePage props', () => { + const itemRender = (current) => {current}; + + it('should hide pager if hideOnSinglePage equals true', () => { + const { container } = render( + , + ); + expect(container.querySelector('.rc-pagination')).toBeFalsy(); + }); + + it('should show pager if hideOnSinglePage equals false', () => { + const { container } = render( + , + ); + expect(container.querySelector('.rc-pagination')).toBeTruthy(); + }); + + it('should show pager if hideOnSinglePage equals true but more than 1 page', () => { + const { container } = render( + , + ); + expect(container.querySelector('.rc-pagination')).toBeTruthy(); + }); + }); + + it('disabled', () => { + const { container, getByRole } = render( + , + ); + expect(container.querySelector('.rc-pagination-disabled')).toBeTruthy(); + expect(container.querySelector('input')).toBeTruthy(); + expect(getByRole('combobox')).toBeDisabled(); + expect(container.querySelector('input')).toBeDisabled(); + expect( + container.querySelector('.rc-pagination-options-quick-jumper-button'), + ).toBeDisabled(); + }); +}); + +// https://github.com/ant-design/ant-design/issues/10524 +describe('current value on onShowSizeChange when total is 0', () => { + let wrapper; + const onShowSizeChange = jest.fn(); + const onChange = jest.fn(); + + beforeEach(() => { + wrapper = render( + + `${range[0]} - ${range[1]} of ${total} items` + } + />, + ); + }); + + afterEach(() => { + wrapper.unmount(); + onShowSizeChange.mockReset(); + onChange.mockReset(); + }); + + it('should not call onShowSizeChange when no change', () => { + const sizeChanger = wrapper.container.querySelector( + '.rc-pagination-options-size-changer', + ); + fireEvent.click(sizeChanger); + const input = sizeChanger.querySelector('input'); + fireEvent.keyDown(input, { key: 'Down', keyCode: 40, which: 40 }); + fireEvent.keyDown(input, { key: 'Enter', keyCode: 13, which: 13 }); + expect(onShowSizeChange).not.toHaveBeenCalled(); + expect(onChange).not.toHaveBeenCalled(); + }); + + it('current should equal to the current in onShowSizeChange', () => { + const sizeChanger = wrapper.container.querySelector( + '.rc-pagination-options-size-changer', + ); + fireEvent.click(sizeChanger); + const input = sizeChanger.querySelector('input'); + fireEvent.keyDown(input, { key: 'Down', keyCode: 40, which: 40 }); + fireEvent.keyDown(input, { key: 'Down', keyCode: 40, which: 40 }); + fireEvent.keyDown(input, { key: 'Enter', keyCode: 13, which: 13 }); + expect(onShowSizeChange).toHaveBeenLastCalledWith(1, 20); + expect(onChange).toHaveBeenLastCalledWith(1, 20); + }); + + it('when total is 0, pager should show `1` and being disabled', () => { + const itemButton = wrapper.container.querySelector('.rc-pagination-item'); + expect(itemButton).toHaveClass('rc-pagination-item-disabled'); + expect(itemButton).toHaveTextContent('1'); + }); + + it('when total is 0, `from` and `to` should be 0', () => { + expect( + wrapper.container.querySelector('.rc-pagination-total-text'), + ).toHaveTextContent('0 - 0 of 0 items'); + }); + + it('size changer show logic', () => { + const wrapper1 = render( + , + ); + expect( + wrapper1.container.querySelector('.rc-pagination-options-size-changer'), + ).toBeFalsy(); + const wrapper2 = render( + , + ); + expect( + wrapper2.container.querySelector('.rc-pagination-options-size-changer'), + ).toBeTruthy(); + const wrapper3 = render( + , + ); + expect( + wrapper3.container.querySelector('.rc-pagination-options-size-changer'), + ).toBeFalsy(); + const wrapper4 = render( + , + ); + expect( + wrapper4.container.querySelector('.rc-pagination-options-size-changer'), + ).toBeTruthy(); + }); + + it('totalBoundaryShowSizeChanger works', () => { + const wrapper1 = render( + , + ); + expect( + wrapper1.container.querySelector('.rc-pagination-options-size-changer'), + ).toBeFalsy(); + const wrapper2 = render( + , + ); + expect( + wrapper2.container.querySelector('.rc-pagination-options-size-changer'), + ).toBeTruthy(); + const wrapper3 = render( + , + ); + expect( + wrapper3.container.querySelector('.rc-pagination-options-size-changer'), + ).toBeFalsy(); + const wrapper4 = render( + , + ); + expect( + wrapper4.container.querySelector('.rc-pagination-options-size-changer'), + ).toBeTruthy(); + }); +}); + +describe('should emit onChange when total is string', () => { + let wrapper; + const onChange = jest.fn(); + + beforeEach(() => { + wrapper = render( + // @ts-ignore + , + ); + }); + + afterEach(() => { + wrapper.unmount(); + onChange.mockReset(); + }); + + it('onChange should be called when click page', () => { + const pagers = wrapper.container.querySelectorAll('.rc-pagination-item-3'); + fireEvent.click(pagers[0]); + expect(onChange).toHaveBeenCalledWith(3, 10); + }); +}); + +describe('keyboard support', () => { + let wrapper; + const onChange = jest.fn(); + const $$ = (selector) => wrapper.container.querySelectorAll(selector); + const $ = (selector) => wrapper.container.querySelector(selector); + + beforeEach(() => { + wrapper = render( + , + ); + }); + + afterEach(() => { + wrapper.unmount(); + onChange.mockReset(); + }); + + it('should work for prev page', () => { + const prevButton = $('li.rc-pagination-prev'); + expect(prevButton).toBeTruthy(); + + fireEvent.click(prevButton); + fireEvent.click(prevButton); + + fireEvent.keyDown(prevButton, { key: 'Enter', keyCode: 13, which: 13 }); + fireEvent.keyDown(prevButton, { key: 'Enter', keyCode: 13, which: 13 }); + + expect(onChange).toHaveBeenLastCalledWith(46, 10); + }); + + it('should work for next page', () => { + const nextButton = $('li.rc-pagination-next'); + expect(nextButton).toBeTruthy(); + + fireEvent.keyDown(nextButton, { key: 'Enter', keyCode: 13, which: 13 }); + fireEvent.keyDown(nextButton, { key: 'Enter', keyCode: 13, which: 13 }); + + fireEvent.click(nextButton); + fireEvent.click(nextButton); + + expect(onChange).toHaveBeenLastCalledWith(54, 10); + }); + + it('should work for jump prev page', () => { + const jumpPrevButton = $('li.rc-pagination-jump-prev'); + expect(jumpPrevButton).toBeTruthy(); + + fireEvent.keyDown(jumpPrevButton, { key: 'Enter', keyCode: 13, which: 13 }); + fireEvent.click(jumpPrevButton); + + expect(onChange).toHaveBeenLastCalledWith(40, 10); + }); + + it('should work for jump next page', () => { + const jumpNextButton = $('li.rc-pagination-jump-next'); + expect(jumpNextButton).toBeTruthy(); + + fireEvent.click(jumpNextButton); + fireEvent.keyDown(jumpNextButton, { key: 'Enter', keyCode: 13, which: 13 }); + + expect(onChange).toHaveBeenLastCalledWith(60, 10); + }); +}); + +describe('select in sequence', () => { + const serializeCls = (items) => + Array.from(items).map((item: HTMLElement) => + item.getAttribute('class').replaceAll('rc-pagination-', ''), + ); + + function sequenceSelector(total) { + describe(`should sequence select ${total} pages`, () => { + const { container } = render(); + const cls = serializeCls(container.querySelectorAll('li')); + expect(cls).toMatchSnapshot(); + + const pages = Math.floor((total - 1) / 10) + 1; + for (let i = 2; i <= pages; i++) { + it(`should select page ${i}`, () => { + const { container } = render( + , + ); + const cls = serializeCls(container.querySelectorAll('li')); + expect(cls).toMatchSnapshot(); + }); + } + }); + } + // coped examples/basic.tsx + sequenceSelector(25); + sequenceSelector(50); + sequenceSelector(60); + sequenceSelector(70); + sequenceSelector(80); + sequenceSelector(90); + sequenceSelector(100); + sequenceSelector(120); + sequenceSelector(500); +}); diff --git a/tests/itemRender.test.js b/tests/itemRender.test.tsx similarity index 54% rename from tests/itemRender.test.js rename to tests/itemRender.test.tsx index 79353a82..3de3b447 100644 --- a/tests/itemRender.test.js +++ b/tests/itemRender.test.tsx @@ -1,14 +1,15 @@ import React from 'react'; -import { mount } from 'enzyme'; +import { render } from '@testing-library/react'; import Pagination from '../src'; describe('itemRender', () => { let wrapper; const currentPage = 12; const itemRender = (current) => {current}; + const $$ = (selector) => wrapper.container.querySelector(selector); beforeEach(() => { - wrapper = mount( + wrapper = render( , ); }); @@ -18,31 +19,31 @@ describe('itemRender', () => { }); it('should support custom itemRender', () => { - const prev = wrapper.find('.rc-pagination-prev'); - const next = wrapper.find('.rc-pagination-next'); - const jumpPrev = wrapper.find('.rc-pagination-jump-prev'); - const jumpNext = wrapper.find('.rc-pagination-jump-next'); - const active = wrapper.find('.rc-pagination-item-active'); + const prev = $$('.rc-pagination-prev'); + const next = $$('.rc-pagination-next'); + const jumpPrev = $$('.rc-pagination-jump-prev'); + const jumpNext = $$('.rc-pagination-jump-next'); + const active = $$('.rc-pagination-item-active'); - expect(prev.getDOMNode().innerHTML).toBe( + expect(prev.innerHTML).toBe( `${currentPage - 1}`, ); - expect(next.getDOMNode().innerHTML).toBe( + expect(next.innerHTML).toBe( `${currentPage + 1}`, ); - expect(jumpPrev.getDOMNode().innerHTML).toBe( + expect(jumpPrev.innerHTML).toBe( `${currentPage - 5}`, ); - expect(jumpNext.getDOMNode().innerHTML).toBe( + expect(jumpNext.innerHTML).toBe( `${currentPage + 5}`, ); - expect(active.getDOMNode().innerHTML).toBe( + expect(active.innerHTML).toBe( `${currentPage}`, ); }); it('should support empty custom itemRender', () => { - const pageEmptyWrapper = mount( + const pageEmptyWrapper = render( { }} />, ); - expect(pageEmptyWrapper.find('.rc-pagination-item').length).toBe(0); + expect( + pageEmptyWrapper.container.querySelectorAll('.rc-pagination-item'), + ).toHaveLength(0); - const turnPageWrapper = mount( + const turnPageWrapper = render( { }} />, ); - expect(turnPageWrapper.find('.rc-pagination-prev').length).toBe(0); - expect(turnPageWrapper.find('.rc-pagination-next').length).toBe(0); + expect( + turnPageWrapper.container.querySelectorAll('.rc-pagination-prev'), + ).toHaveLength(0); + expect( + turnPageWrapper.container.querySelectorAll('.rc-pagination-next'), + ).toHaveLength(0); - const jumpPageWrapper = mount( + const jumpPageWrapper = render( { }} />, ); - expect(jumpPageWrapper.find('.rc-pagination-jump-prev').length).toBe(0); - expect(jumpPageWrapper.find('.rc-pagination-jump-next').length).toBe(0); + expect( + jumpPageWrapper.container.querySelectorAll('.rc-pagination-jump-prev'), + ).toHaveLength(0); + expect( + jumpPageWrapper.container.querySelectorAll('.rc-pagination-jump-next'), + ).toHaveLength(0); }); it('should support pass disabled to prev and next buttons', () => { - const component = mount( + const { container } = render( , ); - const prev = component.find('.rc-pagination-prev'); - const next = component.find('.rc-pagination-next'); - expect(prev.getDOMNode().innerHTML).toBe('0'); - expect(next.getDOMNode().innerHTML).toBe('2'); + const prev = container.querySelector('.rc-pagination-prev'); + const next = container.querySelector('.rc-pagination-next'); + expect(prev.innerHTML).toBe('0'); + expect(next.innerHTML).toBe('2'); }); }); diff --git a/tests/jumper.test.js b/tests/jumper.test.js deleted file mode 100644 index f4370cc4..00000000 --- a/tests/jumper.test.js +++ /dev/null @@ -1,253 +0,0 @@ -import { mount } from 'enzyme'; -import Pagination from '../src'; - -describe('Pagination with jumper', () => { - let wrapper; - const onChange = jest.fn(); - - beforeEach(() => { - wrapper = mount( - , - ); - }); - - afterEach(() => { - wrapper.unmount(); - onChange.mockReset(); - }); - - it('when input less than 1', () => { - const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); - const input = quickJumper.find('input'); - input.simulate('change', { target: { value: '-1' } }); - input.simulate('keyUp', { key: 'Enter', keyCode: 13, which: 13 }); - // expect(wrapper.state().current).toBe(1); // Class component - expect(wrapper.find('.rc-pagination-item-active').text()).toBe('1'); - expect(onChange).toHaveBeenLastCalledWith(1, 10); - }); - - it('should not call onChange when blur input', () => { - const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); - const input = quickJumper.find('input'); - input.simulate('blur'); - // expect(wrapper.state().current).toBe(10); // Class component - expect(wrapper.find('.rc-pagination-item-active').text()).toBe('10'); - expect(onChange).not.toBeCalled(); - }); - - it('should not jumper when click pre/next button', () => { - const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); - const input = quickJumper.find('input'); - input.simulate('change', { target: { value: '13' } }); - const mockEvent = { - relatedTarget: { - className: 'rc-pagination-item-link', - }, - }; - input.simulate('blur', mockEvent); - expect(input.instance().value).toBe(''); - expect(onChange).not.toBeCalled(); - }); - - it('should not jumper when click page', () => { - const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); - const input = quickJumper.find('input'); - input.simulate('change', { target: { value: '13' } }); - const mockEvent = { - relatedTarget: { - className: 'rc-pagination-item', - }, - }; - input.simulate('blur', mockEvent); - expect(input.instance().value).toBe(''); - expect(onChange).not.toBeCalled(); - }); - - it('should not jump when input empty string', () => { - const onChange = jest.fn(); - const wrapper = mount( - - go - - ), - }} - />, - ); - const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); - const input = quickJumper.find('input'); - const goButton = quickJumper.find('.go-button'); - input.simulate('change', { target: { value: '3' } }); - goButton.simulate('click'); - expect(wrapper.find('.rc-pagination-item-active').text()).toBe('3'); - input.simulate('change', { target: { value: '' } }); - goButton.simulate('click'); - expect(wrapper.find('.rc-pagination-item-active').text()).toBe('3'); - expect(onChange).toHaveBeenLastCalledWith(3, 10); - }); -}); - -describe('simple quick jumper', () => { - let wrapper; - const onChange = jest.fn(); - - beforeEach(() => { - wrapper = mount( - - go - - ), - }} - showTotal={(total, range) => - `${range[0]} - ${range[1]} of ${total} items` - } - />, - ); - }); - - afterEach(() => { - wrapper.unmount(); - onChange.mockReset(); - }); - - it('should quick jump to expect page', () => { - const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); - const input = quickJumper.find('input'); - const goButton = quickJumper.find('.go-button'); - input.simulate('change', { target: { value: '2' } }); - goButton.simulate('click'); - // expect(wrapper.state().current).toBe(2); // Class component - expect( - wrapper.find('.rc-pagination-simple-pager').find('input').getDOMNode() - .value, - ).toBe('2'); - expect(onChange).toHaveBeenLastCalledWith(2, 10); - }); - - describe('custom showQuickJumper button Pagination', () => { - beforeEach(() => { - wrapper = mount( - - go - - ), - }} - showTotal={(total, range) => - `${range[0]} - ${range[1]} of ${total} items` - } - />, - ); - }); - - it('should quick jump to expect page', () => { - const quickJumper = wrapper.find('.rc-pagination-options-quick-jumper'); - const input = quickJumper.find('input'); - const goButton = quickJumper.find('.go-button'); - input.simulate('change', { target: { value: '2' } }); - goButton.simulate('click'); - // expect(wrapper.state().current).toBe(2); // Class component - expect(wrapper.find('.rc-pagination-item-active').text()).toBe('2'); - expect(onChange).toHaveBeenLastCalledWith(2, 10); - }); - - // https://github.com/ant-design/ant-design/issues/10080 - it('should not quick jump to previous page when input invalid char', () => { - const nextButton = wrapper.find('.rc-pagination-next'); - nextButton.simulate('click'); - const input = wrapper.find('input'); - input.simulate('change', { target: { value: '&' } }); - input.simulate('keyUp', { key: 'Enter', keyCode: 13, which: 13 }); - // expect(wrapper.state().current).toBe(2); // Class component - expect(wrapper.find('.rc-pagination-item-active').text()).toBe('2'); - expect(onChange).toHaveBeenLastCalledWith(2, 10); - }); - }); - - it('goButton could be true', () => { - wrapper = mount( - , - ); - expect( - wrapper.find('.rc-pagination-options-quick-jumper-button').exists(), - ).toBe(true); - }); - - it('goButton defaultly hidden', () => { - wrapper = mount( - , - ); - expect( - wrapper.find('.rc-pagination-options-quick-jumper-button').exists(), - ).toBe(false); - }); - - it('goButton could be false', () => { - wrapper = mount( - , - ); - expect( - wrapper.find('.rc-pagination-options-quick-jumper-button').exists(), - ).toBe(false); - }); - - it('Quick Jumper should hide when only one page', () => { - wrapper = mount( - , - ); - expect(wrapper.find('.rc-pagination-options-quick-jumper').exists()).toBe( - false, - ); - }); - - // https://github.com/ant-design/ant-design/issues/32991 - it('Quick Jumper should hide when only one page when has pageSize', () => { - wrapper = mount( - , - ); - expect(wrapper.find('.rc-pagination-options-quick-jumper').exists()).toBe( - false, - ); - }); -}); diff --git a/tests/jumper.test.tsx b/tests/jumper.test.tsx new file mode 100644 index 00000000..63906325 --- /dev/null +++ b/tests/jumper.test.tsx @@ -0,0 +1,272 @@ +import { render, fireEvent } from '@testing-library/react'; +import Pagination from '../src'; +import * as React from 'react'; + +describe('Pagination with jumper', () => { + let wrapper; + const onChange = jest.fn(); + const $$ = (selector) => wrapper.container.querySelector(selector); + + beforeEach(() => { + wrapper = render( + , + ); + }); + + afterEach(() => { + wrapper.unmount(); + onChange.mockReset(); + }); + + it('when input less than 1', () => { + const quickJumper = $$('.rc-pagination-options-quick-jumper'); + expect(quickJumper).toBeTruthy(); + const input = quickJumper.querySelector('input'); + fireEvent.change(input, { target: { value: '-1' } }); + fireEvent.keyUp(input, { key: 'Enter', keyCode: 13, which: 13 }); + expect($$('.rc-pagination-item-active')).toHaveTextContent('1'); + expect(onChange).toHaveBeenLastCalledWith(1, 10); + }); + + it('should not call onChange when blur input', () => { + const quickJumper = $$('.rc-pagination-options-quick-jumper'); + const input = quickJumper.querySelector('input'); + fireEvent.blur(input); + expect($$('.rc-pagination-item-active')).toHaveTextContent('10'); + expect(onChange).not.toHaveBeenCalled(); + }); + + it('should not jumper when click pre/next button', () => { + const quickJumper = $$('.rc-pagination-options-quick-jumper'); + const input = quickJumper.querySelector('input'); + fireEvent.change(input, { target: { value: '13' } }); + + const relatedTarget = document.createElement('a'); + relatedTarget.className = 'rc-pagination-item-link'; + fireEvent.blur(input, { relatedTarget }); + + expect(input).toHaveValue(''); + expect(onChange).not.toHaveBeenCalled(); + }); + + it('should not jumper when click page', () => { + const quickJumper = $$('.rc-pagination-options-quick-jumper'); + const input = quickJumper.querySelector('input'); + fireEvent.change(input, { target: { value: '13' } }); + + const relatedTarget = document.createElement('a'); + relatedTarget.className = 'rc-pagination-item'; + fireEvent.blur(input, { relatedTarget }); + + expect(input).toHaveValue(''); + expect(onChange).not.toHaveBeenCalled(); + }); + + it('should not jump when input empty string', () => { + const onChange = jest.fn(); + const { container } = render( + + go + + ), + }} + />, + ); + const quickJumper = container.querySelector( + '.rc-pagination-options-quick-jumper', + ); + const input = quickJumper.querySelector('input'); + const goButton = quickJumper.querySelector('.go-button'); + fireEvent.change(input, { target: { value: '3' } }); + fireEvent.click(goButton); + expect( + container.querySelector('.rc-pagination-item-active'), + ).toHaveTextContent('3'); + fireEvent.change(input, { target: { value: '' } }); + fireEvent.click(goButton); + expect( + container.querySelector('.rc-pagination-item-active'), + ).toHaveTextContent('3'); + expect(onChange).toHaveBeenLastCalledWith(3, 10); + }); +}); + +describe('simple quick jumper', () => { + let wrapper; + const onChange = jest.fn(); + + beforeEach(() => { + wrapper = render( + + go + + ), + }} + showTotal={(total, range) => + `${range[0]} - ${range[1]} of ${total} items` + } + />, + ); + }); + + afterEach(() => { + wrapper.unmount(); + onChange.mockReset(); + }); + + it('should quick jump to expect page', () => { + const quickJumper = wrapper.container.querySelector( + '.rc-pagination-options-quick-jumper', + ); + const input = quickJumper.querySelector('input'); + const goButton = quickJumper.querySelector('.go-button'); + fireEvent.change(input, { target: { value: '2' } }); + fireEvent.click(goButton); + expect( + wrapper.container.querySelector('.rc-pagination-simple-pager input'), + ).toHaveValue('2'); + expect(onChange).toHaveBeenLastCalledWith(2, 10); + }); + + describe('custom showQuickJumper button Pagination', () => { + beforeEach(() => { + wrapper = render( + + go + + ), + }} + showTotal={(total, range) => + `${range[0]} - ${range[1]} of ${total} items` + } + />, + ); + }); + + it('should quick jump to expect page', () => { + const quickJumper = wrapper.container.querySelector( + '.rc-pagination-options-quick-jumper', + ); + const input = quickJumper.querySelector('input'); + const goButton = quickJumper.querySelector('.go-button'); + fireEvent.change(input, { target: { value: '2' } }); + fireEvent.click(goButton); + expect( + wrapper.container.querySelector('.rc-pagination-item-active'), + ).toHaveTextContent('2'); + expect(onChange).toHaveBeenLastCalledWith(2, 10); + }); + + // https://github.com/ant-design/ant-design/issues/10080 + it('should not quick jump to previous page when input invalid char', () => { + const nextButton = wrapper.container.querySelector('.rc-pagination-next'); + fireEvent.click(nextButton); + const input = wrapper.container.querySelector('input'); + fireEvent.change(input, { target: { value: '&' } }); + fireEvent.keyUp(input, { key: 'Enter', keyCode: 13, which: 13 }); + expect( + wrapper.container.querySelector('.rc-pagination-item-active'), + ).toHaveTextContent('2'); + expect(onChange).toHaveBeenLastCalledWith(2, 10); + }); + }); + + it('goButton could be true', () => { + wrapper = render( + , + ); + expect( + wrapper.container.querySelector( + '.rc-pagination-options-quick-jumper-button', + ), + ).toBeTruthy(); + }); + + it('goButton defaultly hidden', () => { + wrapper = render( + , + ); + expect( + wrapper.container.querySelector( + '.rc-pagination-options-quick-jumper-button', + ), + ).toBeFalsy(); + }); + + it('goButton could be false', () => { + wrapper = render( + , + ); + expect( + wrapper.container.querySelector( + '.rc-pagination-options-quick-jumper-button', + ), + ).toBeFalsy(); + }); + + it('Quick Jumper should hide when only one page', () => { + wrapper = render( + , + ); + expect( + wrapper.container.querySelector( + '.rc-pagination-options-quick-jumper-button', + ), + ).toBeFalsy(); + }); + + // https://github.com/ant-design/ant-design/issues/32991 + it('Quick Jumper should hide when only one page when has pageSize', () => { + wrapper = render( + , + ); + expect( + wrapper.container.querySelector( + '.rc-pagination-options-quick-jumper-button', + ), + ).toBeFalsy(); + }); +}); diff --git a/tests/options.test.js b/tests/options.test.tsx similarity index 70% rename from tests/options.test.js rename to tests/options.test.tsx index f8d456de..156230ce 100644 --- a/tests/options.test.js +++ b/tests/options.test.tsx @@ -1,7 +1,8 @@ -import { mount } from 'enzyme'; +import { render } from '@testing-library/react'; import Select from 'rc-select'; import zhCN from '../src/locale/zh_CN'; import Options from '../src/Options'; +import * as React from 'react'; const WrapperOptions = (props) => { return ( @@ -19,8 +20,8 @@ const WrapperOptions = (props) => { describe('Options', () => { it('should render correctly', () => { - const wrapper = mount(); - expect(wrapper.html()).toMatchSnapshot(); + const { container } = render(); + expect(container.firstChild).toMatchSnapshot(); }); describe('props:buildOptionText', () => { @@ -30,12 +31,12 @@ describe('Options', () => { .mockImplementation((value) => (
    buildOptionText-{value}
    )); - const wrapper = mount( + const { container } = render( , ); - const options = wrapper.find('.custom-options'); + const options = container.querySelector('.custom-options'); expect(options).toBeTruthy(); - expect(options.text()).toBe('buildOptionText-10'); + expect(options).toHaveTextContent('buildOptionText-10'); }); }); }); diff --git a/tests/setupAfterEnv.ts b/tests/setupAfterEnv.ts new file mode 100644 index 00000000..7b0828bf --- /dev/null +++ b/tests/setupAfterEnv.ts @@ -0,0 +1 @@ +import '@testing-library/jest-dom'; diff --git a/tests/simple.test.js b/tests/simple.test.js deleted file mode 100644 index f0aada33..00000000 --- a/tests/simple.test.js +++ /dev/null @@ -1,215 +0,0 @@ -import { mount } from 'enzyme'; -import Select from 'rc-select'; -import React, { useState } from 'react'; -import Pagination from '../src'; - -describe('simple Pagination', () => { - let wrapper; - - beforeEach(() => { - wrapper = mount( - - `${range[0]} - ${range[1]} of ${total} items` - } - />, - ); - }); - - afterEach(() => { - wrapper.unmount(); - }); - - it('input change value will emit onChange when input blur', () => { - const onChange = jest.fn(); - const component = mount( - , - ); - const greaterCurrent = component.find('.rc-pagination-simple'); - const input = greaterCurrent.find('input'); - input.simulate('change', { target: { value: '2' } }); - input.simulate('blur'); - expect(onChange).toBeCalled(); - }); - - it('should return to 1 when blur goto input in uncontrol mode', () => { - const component = mount( - , - ); - const input = component.find('.rc-pagination-simple').find('input'); - input.simulate('focus'); - input.simulate('change', { target: { value: '' } }); - input.simulate('blur'); - expect(input.getDOMNode().value).toBe('1'); - }); - - it('should return to 1 when blur goto input in control mode', () => { - const App = () => { - const [current, setCurrent] = useState(1); - return ; - }; - const component = mount(); - const input = component.find('.rc-pagination-simple').find('input'); - input.simulate('focus'); - input.simulate('change', { target: { value: '' } }); - input.simulate('blur'); - expect(input.getDOMNode().value).toBe('1'); - }); - - it('default current page is 1', () => { - // expect(wrapper.state().current).toBe(1); // Class Component - expect(wrapper.find('.rc-pagination-simple-pager').prop('title')).toBe( - '1/3', - ); - expect( - wrapper.find('.rc-pagination-simple').find('input').getDOMNode().value, - ).toBe('1'); - }); - - it('prev-button should be disabled', () => { - const prevButton = wrapper.find('.rc-pagination-prev'); - expect(prevButton.hasClass('rc-pagination-disabled')).toBe(true); - expect(prevButton.getDOMNode().getAttribute('aria-disabled')).toBe('true'); - }); - - it('no quick jump', () => { - const simplePagers = wrapper.find('.rc-pagination-simple-pager'); - expect(simplePagers.length).toBe(1); - }); - - it('simple Pagination when current is greater than page count', () => { - const component = mount( - , - ); - // expect(component.state().current).toBe(3); // Class Component - expect(component.find('.rc-pagination-simple-pager').prop('title')).toBe( - '3/3', - ); - const greaterCurrent = component.find('.rc-pagination-simple'); - const input = greaterCurrent.find('input'); - input.simulate('change', { target: { value: '313423434343343452121' } }); - expect(input.getDOMNode().value).toBe('3'); - // expect(component.state().current).toBe(3); // Class Component - expect(component.find('.rc-pagination-simple-pager').prop('title')).toBe( - '3/3', - ); - }); - - it('should merge custom pageSize to pageSizeOptions', () => { - const wrapper = mount( - , - ); - wrapper.find(Select).find('input').simulate('mousedown'); - expect(wrapper.find(Select).find('.rc-select-item').length).toBe(5); - }); - - it('should onChange called when pageSize change', () => { - const onChange = jest.fn(); - const wrapper = mount( - , - ); - wrapper.find(Select).find('input').simulate('mousedown'); - expect(wrapper.find(Select).find('.rc-select-item').at(2).text()).toBe( - '50 条/页', - ); - const pageSize1 = wrapper.find(Select).find('.rc-select-item').at(0); - pageSize1.simulate('click'); - expect(onChange).toBeCalled(); - expect(onChange).toHaveBeenLastCalledWith(1, 10); - }); - - it('should support keyboard event', () => { - const input = wrapper.find('.rc-pagination-simple').find('input'); - input.simulate('change', { target: { value: '2' } }); - input.simulate('keyDown', { key: 'Enter', keyCode: 13, which: 13 }); - expect(input.getDOMNode().value).toBe('2'); - }); - - it('should support keyboard event when press up or down key', () => { - const input = wrapper.find('.rc-pagination-simple').find('input'); - input.simulate('keyUp', { key: 'ArrowDown', keyCode: 40, which: 40 }); - input.simulate('keyUp', { key: 'ArrowDown', keyCode: 40, which: 40 }); - expect(input.getDOMNode().value).toBe('3'); - - input.simulate('keyUp', { key: 'ArrowUp', keyCode: 38, which: 38 }); - expect(input.getDOMNode().value).toBe('2'); - }); - - it('should work form keyboard enter', () => { - const wrapper = mount(); - const input = wrapper.find('.rc-pagination-simple').find('input'); - - expect(input.exists()).toBeTruthy(); - - input.simulate('change', { target: { value: '8' } }); - input.simulate('keyUp', { key: 'Enter', keyCode: 13, which: 13 }); - - expect( - wrapper.find('.rc-pagination-simple-pager').at(0).prop('title'), - ).toBe('8/10'); - }); - - it(`prevent "up arrow" key reseting cursor position within textbox`, () => { - const mockPreventDefault = jest.fn(); - const wrapper = mount(); - const input = wrapper.find('.rc-pagination-simple').find('input'); - - expect(input.exists()).toBeTruthy(); - - input.simulate('change', { target: { value: '8' } }); - input.simulate('keyDown', { - key: 'ArrowUp', - keyCode: 38, - which: 38, - preventDefault: mockPreventDefault, - }); - - expect(mockPreventDefault).toHaveBeenCalled(); - expect(input.getDOMNode().value).toBe('8'); - }); - - it('should work when input is not number', () => { - const wrapper = mount(); - const input = wrapper.find('.rc-pagination-simple').find('input'); - - expect(input.exists()).toBeTruthy(); - - input.simulate('change', { target: { value: 'a' } }); // NaN case - input.simulate('blur'); - - expect( - wrapper.find('.rc-pagination-simple-pager').at(0).prop('title'), - ).toBe('5/10'); - }); - - it('gotoButton should work', () => { - const wrapper = mount( - , - ); - - const input = wrapper.find('.rc-pagination-options').find('input'); - const gotoButton = wrapper.find('.rc-pagination-options').find('button'); - - input.simulate('change', { target: { value: '2' } }); - gotoButton.simulate('click'); - - expect( - wrapper.find('.rc-pagination-simple-pager').at(0).prop('title'), - ).toBe('2/3'); - }); -}); diff --git a/tests/simple.test.tsx b/tests/simple.test.tsx new file mode 100644 index 00000000..476b294f --- /dev/null +++ b/tests/simple.test.tsx @@ -0,0 +1,225 @@ +import { render, fireEvent, createEvent } from '@testing-library/react'; +import Select from 'rc-select'; +import React, { useState } from 'react'; +import Pagination from '../src'; + +describe('simple Pagination', () => { + let wrapper; + + beforeEach(() => { + wrapper = render( + + `${range[0]} - ${range[1]} of ${total} items` + } + />, + ); + }); + + afterEach(() => { + wrapper.unmount(); + }); + + it('input change value will emit onChange when input blur', () => { + const onChange = jest.fn(); + const { container } = render( + , + ); + const input = container.querySelector('.rc-pagination-simple input'); + fireEvent.change(input, { target: { value: '2' } }); + fireEvent.blur(input); + expect(onChange).toHaveBeenCalled(); + expect(onChange).toHaveBeenLastCalledWith(2, 10); + }); + + it('should return to 1 when blur goto input in uncontrol mode', () => { + const { container } = render( + , + ); + const input = container.querySelector('.rc-pagination-simple input'); + fireEvent.focus(input); + fireEvent.change(input, { target: { value: '' } }); + fireEvent.blur(input); + expect(input).toHaveValue('1'); + }); + + it('should return to 1 when blur goto input in control mode', () => { + const App = () => { + const [current, setCurrent] = useState(1); + return ; + }; + const { container } = render(); + const input = container.querySelector('.rc-pagination-simple input'); + fireEvent.focus(input); + fireEvent.change(input, { target: { value: '' } }); + fireEvent.blur(input); + expect(input).toHaveValue('1'); + }); + + it('default current page is 1', () => { + expect( + wrapper.container.querySelector('.rc-pagination-simple-pager'), + ).toHaveAttribute('title', '1/3'); + expect( + wrapper.container.querySelector('.rc-pagination-simple input'), + ).toHaveValue('1'); + }); + + it('prev-button should be disabled', () => { + const prevButton = wrapper.container.querySelector('.rc-pagination-prev'); + expect(prevButton).toHaveClass('rc-pagination-disabled'); + expect(prevButton).toHaveAttribute('aria-disabled', 'true'); + }); + + it('no quick jump', () => { + const simplePagers = wrapper.container.querySelectorAll( + '.rc-pagination-simple-pager', + ); + expect(simplePagers).toHaveLength(1); + }); + + it('simple Pagination when current is greater than page count', () => { + const { container } = render( + , + ); + + expect( + container.querySelector('.rc-pagination-simple-pager'), + ).toHaveAttribute('title', '3/3'); + const input = container.querySelector('.rc-pagination-simple input'); + fireEvent.change(input, { target: { value: '313423434343343452121' } }); + expect(input).toHaveValue('3'); + expect( + container.querySelector('.rc-pagination-simple-pager'), + ).toHaveAttribute('title', '3/3'); + }); + + it('should merge custom pageSize to pageSizeOptions', () => { + const { container, getByRole } = render( + , + ); + fireEvent.mouseDown(getByRole('combobox')); + expect(container.querySelectorAll('.rc-select-item')).toHaveLength(5); + }); + + it('should onChange called when pageSize change', () => { + const onChange = jest.fn(); + const { container, getByRole } = render( + , + ); + fireEvent.mouseDown(getByRole('combobox')); + expect(container.querySelectorAll('.rc-select-item')[2]).toHaveTextContent( + '50 条/页', + ); + const pageSize1 = container.querySelectorAll('.rc-select-item')[0]; + fireEvent.click(pageSize1); + expect(onChange).toHaveBeenCalled(); + expect(onChange).toHaveBeenLastCalledWith(1, 10); + }); + + it('should support keyboard event', () => { + const input = wrapper.container.querySelector( + '.rc-pagination-simple input', + ); + fireEvent.change(input, { target: { value: '2' } }); + fireEvent.keyDown(input, { key: 'Enter', keyCode: 13, which: 13 }); + expect(input).toHaveValue('2'); + }); + + it('should support keyboard event when press up or down key', () => { + const input = wrapper.container.querySelector( + '.rc-pagination-simple input', + ); + fireEvent.keyUp(input, { key: 'ArrowDown', keyCode: 40, which: 40 }); + fireEvent.keyUp(input, { key: 'ArrowDown', keyCode: 40, which: 40 }); + expect(input).toHaveValue('3'); + + fireEvent.keyUp(input, { key: 'ArrowUp', keyCode: 38, which: 38 }); + expect(input).toHaveValue('2'); + }); + + it('should work form keyboard enter', () => { + const { container } = render( + , + ); + const input = container.querySelector('.rc-pagination-simple input'); + + expect(input).toBeTruthy(); + + fireEvent.change(input, { target: { value: '8' } }); + fireEvent.keyUp(input, { key: 'Enter', keyCode: 13, which: 13 }); + + expect( + container.querySelector('.rc-pagination-simple-pager'), + ).toHaveAttribute('title', '8/10'); + }); + + it(`prevent "up arrow" key reseting cursor position within textbox`, () => { + const { container } = render( + , + ); + const input = container.querySelector('.rc-pagination-simple input'); + expect(input).toBeTruthy(); + + fireEvent.change(input, { target: { value: '8' } }); + + const myEvent = createEvent.keyDown(input, { + key: 'ArrowUp', + keyCode: 38, + which: 38, + }); + + myEvent.preventDefault = jest.fn(); + + fireEvent(input, myEvent); + expect(myEvent.preventDefault).toHaveBeenCalled(); + expect(input).toHaveValue('8'); + }); + + it('should work when input is not number', () => { + const { container } = render( + , + ); + const input = container.querySelector('.rc-pagination-simple input'); + + expect(input).toBeTruthy(); + + fireEvent.change(input, { target: { value: 'a' } }); // NaN case + fireEvent.blur(input); + + expect( + container.querySelector('.rc-pagination-simple-pager'), + ).toHaveAttribute('title', '5/10'); + }); + + it('gotoButton should work', () => { + const { container } = render( + , + ); + + const input = container.querySelector('.rc-pagination-options input'); + const gotoButton = container.querySelector('.rc-pagination-options button'); + + fireEvent.change(input, { target: { value: '2' } }); + fireEvent.click(gotoButton); + + expect( + container.querySelector('.rc-pagination-simple-pager'), + ).toHaveAttribute('title', '2/3'); + }); +}); diff --git a/tests/sizer.test.js b/tests/sizer.test.tsx similarity index 55% rename from tests/sizer.test.js rename to tests/sizer.test.tsx index 65b0ce88..a1cee0f6 100644 --- a/tests/sizer.test.js +++ b/tests/sizer.test.tsx @@ -1,11 +1,11 @@ import React from 'react'; -import { mount } from 'enzyme'; +import { render, fireEvent, act } from '@testing-library/react'; import Select from 'rc-select'; import Pagination from '../src'; describe('Pagination with sizer', () => { it('should merge custom pageSize to pageSizeOptions', () => { - const wrapper = mount( + const { container, getByRole } = render( { selectComponentClass={Select} />, ); - wrapper.find(Select).find('input').simulate('mousedown'); - expect(wrapper.find(Select).find('.rc-select-item').length).toBe(5); + const select = getByRole('combobox'); + expect(select).toBeTruthy(); + fireEvent.mouseDown(select); + expect(container.querySelectorAll('.rc-select-item')).toHaveLength(5); }); it('should not merge duplicated pageSize to pageSizeOptions', () => { - const wrapper = mount( + const { container, getByRole } = render( { selectComponentClass={Select} />, ); - wrapper.find(Select).find('input').simulate('mousedown'); - expect(wrapper.find(Select).find('.rc-select-item').length).toBe(4); + fireEvent.mouseDown(getByRole('combobox')); + expect(container.querySelectorAll('.rc-select-item')).toHaveLength(4); }); it('should merge pageSize to pageSizeOptions with proper order', () => { - const wrapper = mount( + const { container, getByRole } = render( { selectComponentClass={Select} />, ); - wrapper.find(Select).find('input').simulate('mousedown'); - expect(wrapper.find(Select).find('.rc-select-item').at(2).text()).toBe( + fireEvent.mouseDown(getByRole('combobox')); + expect(container.querySelectorAll('.rc-select-item')).toHaveLength(5); + expect(container.querySelectorAll('.rc-select-item')[2]).toHaveTextContent( '45 条/页✓', ); }); it('should onChange called when pageSize change', () => { const onChange = jest.fn(); - const wrapper = mount( + const { container, getByRole } = render( { defaultPageSize={20} />, ); - wrapper.find(Select).find('input').simulate('mousedown'); - expect(wrapper.find(Select).find('.rc-select-item').at(2).text()).toBe( + fireEvent.mouseDown(getByRole('combobox')); + expect(container.querySelectorAll('.rc-select-item')[2]).toHaveTextContent( '50 条/页', ); - const pageSize1 = wrapper.find(Select).find('.rc-select-item').at(0); - pageSize1.simulate('click'); - expect(onChange).toBeCalled(); + const pageSize1 = container.querySelectorAll('.rc-select-item')[0]; + fireEvent.click(pageSize1); + expect(onChange).toHaveBeenCalled(); expect(onChange).toHaveBeenLastCalledWith(1, 10); }); // https://github.com/ant-design/ant-design/issues/26580 it('should contains locale text in selected pageSize when pageSizeOptions are numbers', () => { - const wrapper = mount( + const { container } = render( { pageSizeOptions={[20, 50]} />, ); - expect(wrapper.find(Select).find('.rc-select-selection-item').text()).toBe( - '20 条/页', - ); + expect( + container.querySelector('.rc-select-selection-item'), + ).toHaveTextContent('20 条/页'); }); }); diff --git a/tests/two-pagination.test.js b/tests/two-pagination.test.js deleted file mode 100644 index 74f08f78..00000000 --- a/tests/two-pagination.test.js +++ /dev/null @@ -1,38 +0,0 @@ -import { mount } from 'enzyme'; -import React from 'react'; -import Pagination from '../src'; -import TwoPagination from './two-pagination'; - -describe('Two Pagination', () => { - let wrapper; - - beforeEach(() => { - wrapper = mount(); - }); - - afterEach(() => { - wrapper.unmount(); - }); - - it('should has initial pageSize 20', () => { - const p1 = wrapper.find(Pagination).at(0); - const p2 = wrapper.find(Pagination).at(1); - // expect(p1.state().pageSize).toBe(20); // Class component - expect(p1.props().pageSize).toBe(20); // Function component - // expect(p2.state().pageSize).toBe(20); // Class component - expect(p2.props().pageSize).toBe(20); // Function component - }); - - it('should sync pageSize via state', () => { - const p1 = wrapper.find(Pagination).at(0); - const p2 = wrapper.find(Pagination).at(1); - wrapper.find('.hook').simulate('click'); - // wrapper.update(); - const newP1 = wrapper.find(Pagination).at(0); - const newP2 = wrapper.find(Pagination).at(1); - // expect(p1.state().pageSize).toBe(50); // Class component - expect(newP1.props().pageSize).toBe(50); // Function component - // expect(p2.state().pageSize).toBe(50); // Class component - expect(newP2.props().pageSize).toBe(50); // Function component - }); -}); diff --git a/tests/two-pagination.test.tsx b/tests/two-pagination.test.tsx new file mode 100644 index 00000000..dcae5f12 --- /dev/null +++ b/tests/two-pagination.test.tsx @@ -0,0 +1,48 @@ +import { render, fireEvent } from '@testing-library/react'; +import React from 'react'; +import TwoPagination from './two-pagination'; + +describe('Two Pagination', () => { + let wrapper; + let mockPagination; + + beforeEach(() => { + jest.mock('../src', () => {}); + wrapper = render(); + }); + + afterEach(() => { + wrapper.unmount(); + }); + + it('should has initial pageSize 20', () => { + const findPagination = wrapper.container.querySelectorAll('.rc-pagination'); + expect(findPagination).toHaveLength(2); + const [p1, p2] = findPagination; + + const p1Items = p1.querySelectorAll('.rc-pagination-item'); + expect(p1Items).toHaveLength(6); + expect(p1Items[p1Items.length - 1].textContent).toBe('25'); + + const p2Items = p2.querySelectorAll('.rc-pagination-item'); + expect(p2Items).toHaveLength(6); + expect(p2Items[p2Items.length - 1].textContent).toBe('25'); + }); + + it('should sync pageSize via state', () => { + const findPagination = wrapper.container.querySelectorAll('.rc-pagination'); + const [p1, p2] = findPagination; + + const button = wrapper.container.querySelector('.hook'); + expect(button).toBeTruthy(); + fireEvent.click(button); + + const p1Items = p1.querySelectorAll('.rc-pagination-item'); + expect(p1Items).toHaveLength(6); + expect(p1Items[p1Items.length - 1].textContent).toBe('10'); + + const p2Items = p2.querySelectorAll('.rc-pagination-item'); + expect(p2Items).toHaveLength(6); + expect(p2Items[p2Items.length - 1].textContent).toBe('10'); + }); +}); From ac6dc43293ea19d970f8c0a92861c26c57201265 Mon Sep 17 00:00:00 2001 From: lijianan <574980606@qq.com> Date: Fri, 1 Dec 2023 05:22:30 +0800 Subject: [PATCH 208/262] test: test type optimization (#541) * test: test type optimization * fix: fix test --- tests/data-aria.test.tsx | 3 +- tests/index.test.tsx | 32 +++++++++---------- tests/itemRender.test.tsx | 11 ++++--- tests/jumper.test.tsx | 13 ++++---- tests/options.test.tsx | 24 +++++++------- tests/simple.test.tsx | 5 +-- tests/sizer.test.tsx | 2 +- tests/two-pagination.test.tsx | 4 +-- ...{two-pagination.jsx => two-pagination.tsx} | 6 ++-- 9 files changed, 51 insertions(+), 49 deletions(-) rename tests/{two-pagination.jsx => two-pagination.tsx} (93%) diff --git a/tests/data-aria.test.tsx b/tests/data-aria.test.tsx index dbf1523c..90b2b78a 100644 --- a/tests/data-aria.test.tsx +++ b/tests/data-aria.test.tsx @@ -1,9 +1,10 @@ import React from 'react'; +import type { RenderResult } from '@testing-library/react'; import { render } from '@testing-library/react'; import Pagination from '../src'; describe('data and aria props', () => { - let wrapper; + let wrapper: RenderResult; describe('with simple prop', () => { beforeEach(() => { diff --git a/tests/index.test.tsx b/tests/index.test.tsx index 16f0480e..a08ed026 100644 --- a/tests/index.test.tsx +++ b/tests/index.test.tsx @@ -1,3 +1,4 @@ +import type { RenderResult } from '@testing-library/react'; import { render, fireEvent } from '@testing-library/react'; import Select from 'rc-select'; import React from 'react'; @@ -5,9 +6,9 @@ import Pagination from '../src'; import { resetWarned } from 'rc-util/lib/warning'; describe('Default Pagination', () => { - let wrapper; + let wrapper: RenderResult; const onChange = jest.fn(); - const $$ = (selector) => wrapper.container.querySelectorAll(selector); + const $$ = (selector: string) => wrapper.container.querySelectorAll(selector); beforeEach(() => { wrapper = render(); @@ -26,9 +27,9 @@ describe('Default Pagination', () => { }); describe('Uncontrolled Pagination', () => { - let wrapper; + let wrapper: RenderResult; const onChange = jest.fn(); - const $$ = (selector) => wrapper.container.querySelectorAll(selector); + const $$ = (selector: string) => wrapper.container.querySelectorAll(selector); function shouldHighlightRight(current = 1) { const pagers = $$('li:not(.rc-pagination-total-text)'); @@ -205,7 +206,7 @@ describe('Uncontrolled Pagination', () => { }); describe('Controlled Pagination', () => { - let wrapper; + let wrapper: RenderResult; const onChange = jest.fn(); beforeEach(() => { @@ -344,7 +345,7 @@ describe('Other props', () => { // https://github.com/ant-design/ant-design/issues/10524 describe('current value on onShowSizeChange when total is 0', () => { - let wrapper; + let wrapper: RenderResult; const onShowSizeChange = jest.fn(); const onChange = jest.fn(); @@ -485,7 +486,7 @@ describe('current value on onShowSizeChange when total is 0', () => { }); describe('should emit onChange when total is string', () => { - let wrapper; + let wrapper: RenderResult; const onChange = jest.fn(); beforeEach(() => { @@ -508,10 +509,9 @@ describe('should emit onChange when total is string', () => { }); describe('keyboard support', () => { - let wrapper; + let wrapper: RenderResult; const onChange = jest.fn(); - const $$ = (selector) => wrapper.container.querySelectorAll(selector); - const $ = (selector) => wrapper.container.querySelector(selector); + const $ = (selector: string) => wrapper.container.querySelector(selector); beforeEach(() => { wrapper = render( @@ -572,12 +572,12 @@ describe('keyboard support', () => { }); describe('select in sequence', () => { - const serializeCls = (items) => - Array.from(items).map((item: HTMLElement) => + const serializeCls = (items: NodeListOf) => + Array.from(items).map((item) => item.getAttribute('class').replaceAll('rc-pagination-', ''), ); - function sequenceSelector(total) { + function sequenceSelector(total: number) { describe(`should sequence select ${total} pages`, () => { const { container } = render(); const cls = serializeCls(container.querySelectorAll('li')); @@ -586,11 +586,11 @@ describe('select in sequence', () => { const pages = Math.floor((total - 1) / 10) + 1; for (let i = 2; i <= pages; i++) { it(`should select page ${i}`, () => { - const { container } = render( + const { container: pageContainer } = render( , ); - const cls = serializeCls(container.querySelectorAll('li')); - expect(cls).toMatchSnapshot(); + const clsString = serializeCls(pageContainer.querySelectorAll('li')); + expect(clsString).toMatchSnapshot(); }); } }); diff --git a/tests/itemRender.test.tsx b/tests/itemRender.test.tsx index 3de3b447..50c426f2 100644 --- a/tests/itemRender.test.tsx +++ b/tests/itemRender.test.tsx @@ -1,12 +1,13 @@ import React from 'react'; +import type { RenderResult } from '@testing-library/react'; import { render } from '@testing-library/react'; import Pagination from '../src'; describe('itemRender', () => { - let wrapper; + let wrapper: RenderResult; const currentPage = 12; - const itemRender = (current) => {current}; - const $$ = (selector) => wrapper.container.querySelector(selector); + const itemRender = (current: number) => {current}; + const $$ = (selector: string) => wrapper.container.querySelector(selector); beforeEach(() => { wrapper = render( @@ -47,7 +48,7 @@ describe('itemRender', () => { { + itemRender={(_, type, originalElement) => { if (type === 'page') { return null; } @@ -63,7 +64,7 @@ describe('itemRender', () => { { + itemRender={(_, type, originalElement) => { if (type === 'prev' || type === 'next') { return null; } diff --git a/tests/jumper.test.tsx b/tests/jumper.test.tsx index 63906325..39f0f5fe 100644 --- a/tests/jumper.test.tsx +++ b/tests/jumper.test.tsx @@ -1,11 +1,12 @@ +import type { RenderResult } from '@testing-library/react'; import { render, fireEvent } from '@testing-library/react'; import Pagination from '../src'; import * as React from 'react'; describe('Pagination with jumper', () => { - let wrapper; + let wrapper: RenderResult; const onChange = jest.fn(); - const $$ = (selector) => wrapper.container.querySelector(selector); + const $$ = (selector: string) => wrapper.container.querySelector(selector); beforeEach(() => { wrapper = render( @@ -68,10 +69,10 @@ describe('Pagination with jumper', () => { }); it('should not jump when input empty string', () => { - const onChange = jest.fn(); + const onChangeFn = jest.fn(); const { container } = render( { expect( container.querySelector('.rc-pagination-item-active'), ).toHaveTextContent('3'); - expect(onChange).toHaveBeenLastCalledWith(3, 10); + expect(onChangeFn).toHaveBeenLastCalledWith(3, 10); }); }); describe('simple quick jumper', () => { - let wrapper; + let wrapper: RenderResult; const onChange = jest.fn(); beforeEach(() => { diff --git a/tests/options.test.tsx b/tests/options.test.tsx index 156230ce..715bb959 100644 --- a/tests/options.test.tsx +++ b/tests/options.test.tsx @@ -4,19 +4,17 @@ import zhCN from '../src/locale/zh_CN'; import Options from '../src/Options'; import * as React from 'react'; -const WrapperOptions = (props) => { - return ( - - ); -}; +const WrapperOptions: React.FC = (props) => ( + +); describe('Options', () => { it('should render correctly', () => { diff --git a/tests/simple.test.tsx b/tests/simple.test.tsx index 476b294f..5835e353 100644 --- a/tests/simple.test.tsx +++ b/tests/simple.test.tsx @@ -1,10 +1,11 @@ +import type { RenderResult } from '@testing-library/react'; import { render, fireEvent, createEvent } from '@testing-library/react'; import Select from 'rc-select'; import React, { useState } from 'react'; import Pagination from '../src'; describe('simple Pagination', () => { - let wrapper; + let wrapper: RenderResult; beforeEach(() => { wrapper = render( @@ -48,7 +49,7 @@ describe('simple Pagination', () => { it('should return to 1 when blur goto input in control mode', () => { const App = () => { - const [current, setCurrent] = useState(1); + const [, setCurrent] = useState(1); return ; }; const { container } = render(); diff --git a/tests/sizer.test.tsx b/tests/sizer.test.tsx index a1cee0f6..b6832ccc 100644 --- a/tests/sizer.test.tsx +++ b/tests/sizer.test.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { render, fireEvent, act } from '@testing-library/react'; +import { render, fireEvent } from '@testing-library/react'; import Select from 'rc-select'; import Pagination from '../src'; diff --git a/tests/two-pagination.test.tsx b/tests/two-pagination.test.tsx index dcae5f12..8d59d382 100644 --- a/tests/two-pagination.test.tsx +++ b/tests/two-pagination.test.tsx @@ -1,10 +1,10 @@ +import type { RenderResult } from '@testing-library/react'; import { render, fireEvent } from '@testing-library/react'; import React from 'react'; import TwoPagination from './two-pagination'; describe('Two Pagination', () => { - let wrapper; - let mockPagination; + let wrapper: RenderResult; beforeEach(() => { jest.mock('../src', () => {}); diff --git a/tests/two-pagination.jsx b/tests/two-pagination.tsx similarity index 93% rename from tests/two-pagination.jsx rename to tests/two-pagination.tsx index 19094ad0..4e2e4f11 100644 --- a/tests/two-pagination.jsx +++ b/tests/two-pagination.tsx @@ -9,11 +9,11 @@ class Hello extends React.Component { }; changeSize = () => { - this.setState({ - pageSize: 50, - }); + this.setState({ pageSize: 50 }); }; + onShowSizeChange = () => {}; + render() { return ( <> From 7c8e3b18d0f281206ac96cc6bcc6d4200511e4b2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 1 Dec 2023 05:24:52 +0800 Subject: [PATCH 209/262] chore(deps-dev): bump @testing-library/jest-dom from 5.17.0 to 6.1.5 (#542) Bumps [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) from 5.17.0 to 6.1.5. - [Release notes](https://github.com/testing-library/jest-dom/releases) - [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md) - [Commits](https://github.com/testing-library/jest-dom/compare/v5.17.0...v6.1.5) --- updated-dependencies: - dependency-name: "@testing-library/jest-dom" dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 9a47f93c..b4af623f 100644 --- a/package.json +++ b/package.json @@ -48,7 +48,7 @@ }, "devDependencies": { "@rc-component/father-plugin": "^1.0.0", - "@testing-library/jest-dom": "^5.17.0", + "@testing-library/jest-dom": "^6.1.5", "@testing-library/react": "^14.0.0", "@types/classnames": "^2.2.9", "@types/jest": "^29.2.2", From 3313ab32141dd6a7ccec46f2306087d712140a0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BA=A2?= Date: Fri, 1 Dec 2023 11:31:30 +0800 Subject: [PATCH 210/262] fix: refactor resulting in miss TS type (#543) * chore: update eslint fix compile error * fix: fix export TS description ref: https://github.com/react-component/pagination/pull/539#issuecomment-1831164936 --- .eslintrc.js | 5 +---- src/index.ts | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index 69084263..53bb6cbc 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,9 +1,6 @@ -const base = require('@umijs/fabric/dist/eslint'); - module.exports = { - ...base, + extends: [require.resolve('@umijs/fabric/dist/eslint')], rules: { - ...base.rules, 'no-template-curly-in-string': 0, 'prefer-promise-reject-errors': 0, 'react/no-array-index-key': 0, diff --git a/src/index.ts b/src/index.ts index 47bf73a1..6aa2b927 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,2 +1,2 @@ export { default } from './Pagination'; -export type { PaginationProps } from './interface'; +export type * from './interface'; From 39597512abff8739e9a76b9615d73328193a0681 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 1 Dec 2023 11:47:21 +0800 Subject: [PATCH 211/262] chore(deps-dev): bump glob from 7.2.3 to 10.3.10 (#535) Bumps [glob](https://github.com/isaacs/node-glob) from 7.2.3 to 10.3.10. - [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md) - [Commits](https://github.com/isaacs/node-glob/compare/v7.2.3...v10.3.10) --- updated-dependencies: - dependency-name: glob dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index b4af623f..6c3869a0 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ "eslint-plugin-unicorn": "^49.0.0", "father": "^4.0.0", "gh-pages": "^6.1.0", - "glob": "^7.1.6", + "glob": "^10.3.10", "husky": "^8.0.3", "identity-obj-proxy": "^3.0.0", "less": "^4.1.3", From 8eb646d02aa2af91267f610dce9876ae377aa392 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 1 Dec 2023 11:47:27 +0800 Subject: [PATCH 212/262] chore(deps-dev): bump @umijs/fabric from 2.14.1 to 4.0.1 (#538) Bumps [@umijs/fabric](https://github.com/umijs/fabric) from 2.14.1 to 4.0.1. - [Release notes](https://github.com/umijs/fabric/releases) - [Commits](https://github.com/umijs/fabric/compare/v2.14.1...v4.0.1) --- updated-dependencies: - dependency-name: "@umijs/fabric" dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 6c3869a0..7376ccf2 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "@types/keyv": "^4.2.0", "@types/react": "^18.0.0", "@types/react-dom": "^18.0.0", - "@umijs/fabric": "^2.0.3", + "@umijs/fabric": "^4.0.1", "coveralls": "^3.0.6", "cross-env": "^7.0.0", "dumi": "^2.1.2", From c50a7eaa4afcbc6d90ecd1d55ad35a8999fd6c5d Mon Sep 17 00:00:00 2001 From: "lgtm-com[bot]" <43144390+lgtm-com[bot]@users.noreply.github.com> Date: Fri, 1 Dec 2023 11:48:28 +0800 Subject: [PATCH 213/262] Add CodeQL workflow for GitHub code scanning (#460) Co-authored-by: LGTM Migrator --- .github/workflows/codeql.yml | 41 ++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 .github/workflows/codeql.yml diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml new file mode 100644 index 00000000..f9ed7d8f --- /dev/null +++ b/.github/workflows/codeql.yml @@ -0,0 +1,41 @@ +name: "CodeQL" + +on: + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + schedule: + - cron: "21 9 * * 6" + +jobs: + analyze: + name: Analyze + runs-on: ubuntu-latest + permissions: + actions: read + contents: read + security-events: write + + strategy: + fail-fast: false + matrix: + language: [ javascript ] + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Initialize CodeQL + uses: github/codeql-action/init@v2 + with: + languages: ${{ matrix.language }} + queries: +security-and-quality + + - name: Autobuild + uses: github/codeql-action/autobuild@v2 + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v2 + with: + category: "/language:${{ matrix.language }}" From 62a46630d3988258dcdf1cc468475ae46af1d2f7 Mon Sep 17 00:00:00 2001 From: Jumper Date: Fri, 1 Dec 2023 09:43:11 +0545 Subject: [PATCH 214/262] Internationalization file added for Nepali language (#461) * Internationalization file added for Nepali language * Update ne_NP.js --------- Co-authored-by: Niraj Maharjan Co-authored-by: afc163 --- src/locale/ne_NP.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 src/locale/ne_NP.js diff --git a/src/locale/ne_NP.js b/src/locale/ne_NP.js new file mode 100644 index 00000000..fbf48957 --- /dev/null +++ b/src/locale/ne_NP.js @@ -0,0 +1,16 @@ +export default { + // Options.jsx + items_per_page: '/ पृष्ठ', + jump_to: 'जाऊ त्यहाँ', + jump_to_confirm: 'पुष्टि गर्नुहोस्', + page: 'पृष्ठ', + + // Pagination.jsx + prev_page: 'अघिल्लो पृष्ठ', + next_page: 'अर्को पृष्ठ', + prev_5: 'अघिल्लो 5 पृष्ठहरू', + next_5: 'अर्को 5 पृष्ठहरू', + prev_3: 'अघिल्लो 3 पृष्ठहरू', + next_3: 'अर्को 3 पृष्ठहरू', + page_size: 'पृष्ठ आकार', +}; From 7a7aa1e6a89f7702365c766c6d3a136c1fc2f8e2 Mon Sep 17 00:00:00 2001 From: afc163 Date: Fri, 1 Dec 2023 12:05:53 +0800 Subject: [PATCH 215/262] 4.0.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 7376ccf2..398c43cc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "4.0.0", + "version": "4.0.1", "description": "pagination ui component for react", "keywords": [ "react", From 41eac040f15c31901b79754a5de54741b12b0741 Mon Sep 17 00:00:00 2001 From: Amumu Date: Fri, 8 Dec 2023 20:08:46 +0800 Subject: [PATCH 216/262] fix: remove Array.prototype.at calls (#545) --- src/Pagination.tsx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Pagination.tsx b/src/Pagination.tsx index 80d3eafe..fe3c5180 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -480,10 +480,11 @@ const Pagination: React.FC = (props) => { } if (allPages - current >= pageBufferSize * 2 && current !== allPages - 2) { - pagerList[pagerList.length - 1] = React.cloneElement(pagerList.at(-1), { + const lastOne = pagerList[pagerList.length - 1]; + pagerList[pagerList.length - 1] = React.cloneElement(lastOne, { className: classNames( `${prefixCls}-item-before-jump-next`, - pagerList.at(-1).props.className, + lastOne.props.className, ), }); From d37c0a0c44effce57822aa72bf483cc74e2fec53 Mon Sep 17 00:00:00 2001 From: afc163 Date: Fri, 8 Dec 2023 22:11:07 +0800 Subject: [PATCH 217/262] 4.0.2 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 398c43cc..b396c05c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "4.0.1", + "version": "4.0.2", "description": "pagination ui component for react", "keywords": [ "react", From 98902d1d70cd32a9d11d85d3639a9e10d34a120e Mon Sep 17 00:00:00 2001 From: MadCcc <1075746765@qq.com> Date: Mon, 11 Dec 2023 16:12:00 +0800 Subject: [PATCH 218/262] fix: input value should follow current (#546) --- docs/examples/simple.tsx | 54 ++++++++++++++++---------- src/Pagination.tsx | 6 ++- tests/__snapshots__/demo.test.tsx.snap | 46 ++-------------------- tests/simple.test.tsx | 26 +++++++++++++ tsconfig.json | 2 +- 5 files changed, 68 insertions(+), 66 deletions(-) diff --git a/docs/examples/simple.tsx b/docs/examples/simple.tsx index 31dc15b9..d04b9b53 100644 --- a/docs/examples/simple.tsx +++ b/docs/examples/simple.tsx @@ -1,25 +1,37 @@ -import React from 'react'; +import React, { useState } from 'react'; import Pagination from 'rc-pagination'; import Select from 'rc-select'; import '../../assets/index.less'; -export default () => ( - <> - -
    - `Total ${total} items`} - /> -
    - - -); +export default () => { + const [pageIndex, setPageIndex] = useState(1); + + return ( + <> + + +
    + +
    + `Total ${total} items`} + /> +
    + + + ); +}; diff --git a/src/Pagination.tsx b/src/Pagination.tsx index fe3c5180..31626e2e 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -3,7 +3,7 @@ import useMergedState from 'rc-util/lib/hooks/useMergedState'; import KeyCode from 'rc-util/lib/KeyCode'; import pickAttrs from 'rc-util/lib/pickAttrs'; import warning from 'rc-util/lib/warning'; -import React from 'react'; +import React, { useEffect } from 'react'; import type { PaginationProps } from './interface'; import zhCN from './locale/zh_CN'; import Options from './Options'; @@ -89,6 +89,10 @@ const Pagination: React.FC = (props) => { const [internalInputVal, setInternalInputVal] = React.useState(current); + useEffect(() => { + setInternalInputVal(current); + }, [current]); + const hasOnChange = onChange !== noop; const hasCurrent = 'current' in props; diff --git a/tests/__snapshots__/demo.test.tsx.snap b/tests/__snapshots__/demo.test.tsx.snap index 713824c9..362b44f5 100644 --- a/tests/__snapshots__/demo.test.tsx.snap +++ b/tests/__snapshots__/demo.test.tsx.snap @@ -1105,49 +1105,9 @@ exports[`Example showTotal 1`] = ` `; exports[`Example simple 1`] = ` -
      -
    • -
    • -
    • - - - / - - 5 -
    • -
    • -
    • -
    + `; exports[`Example sizer 1`] = ` diff --git a/tests/simple.test.tsx b/tests/simple.test.tsx index 5835e353..4845a0e5 100644 --- a/tests/simple.test.tsx +++ b/tests/simple.test.tsx @@ -223,4 +223,30 @@ describe('simple Pagination', () => { container.querySelector('.rc-pagination-simple-pager'), ).toHaveAttribute('title', '2/3'); }); + + it('page should displayed correctly when controlled', () => { + const Demo = () => { + const [current, setCurrent] = React.useState(1); + + return ( +
    + + +
    + ); + }; + + const { container } = render(); + const input = container.querySelector('.rc-pagination-simple input'); + const button = container.querySelector('button'); + + expect(input).toHaveProperty('value', '1'); + fireEvent.click(button); + expect(input).toHaveProperty('value', '2'); + }); }); diff --git a/tsconfig.json b/tsconfig.json index bd88b1a3..197e4633 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -13,5 +13,5 @@ "rc-pagination": ["src/index.ts"] } }, - "include": [".dumi/**/*", ".dumirc.ts", "**/*.ts", "**/*.tsx"] + "include": [".dumirc.ts", "**/*.ts", "**/*.tsx"] } From 00778f27c9b89ddd4052a79734958142bc154f2d Mon Sep 17 00:00:00 2001 From: MadCcc <1075746765@qq.com> Date: Mon, 11 Dec 2023 16:22:36 +0800 Subject: [PATCH 219/262] chore: rm useless devDependencies --- package.json | 2 -- 1 file changed, 2 deletions(-) diff --git a/package.json b/package.json index b396c05c..9c11d9c6 100644 --- a/package.json +++ b/package.json @@ -50,9 +50,7 @@ "@rc-component/father-plugin": "^1.0.0", "@testing-library/jest-dom": "^6.1.5", "@testing-library/react": "^14.0.0", - "@types/classnames": "^2.2.9", "@types/jest": "^29.2.2", - "@types/keyv": "^4.2.0", "@types/react": "^18.0.0", "@types/react-dom": "^18.0.0", "@umijs/fabric": "^4.0.1", From a708727a99a7c67c43dd378cf53766fc89de5ef4 Mon Sep 17 00:00:00 2001 From: MadCcc <1075746765@qq.com> Date: Mon, 11 Dec 2023 16:23:11 +0800 Subject: [PATCH 220/262] v4.0.3 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 9c11d9c6..587cb51e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rc-pagination", - "version": "4.0.2", + "version": "4.0.3", "description": "pagination ui component for react", "keywords": [ "react", From 48291092c4b99926d12d7830e7e3020e5721e323 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8C=E8=B4=A7=E7=88=B1=E5=90=83=E7=99=BD=E8=90=9D?= =?UTF-8?q?=E5=8D=9C?= Date: Thu, 14 Dec 2023 11:04:46 +0800 Subject: [PATCH 221/262] docs: fix now build (#550) --- now.json | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/now.json b/now.json index 56b58593..541c7071 100644 --- a/now.json +++ b/now.json @@ -5,8 +5,7 @@ { "src": "package.json", "use": "@now/static-build", - "config": { "distDir": "dist" } + "config": { "distDir": "docs-dist" } } - ], - "routes": [{ "src": "/(.*)", "dest": "/dist/$1" }] + ] } From 455c92a1d78568585cefbfb96ace6d37c53230c0 Mon Sep 17 00:00:00 2001 From: Amumu Date: Thu, 14 Dec 2023 11:13:40 +0800 Subject: [PATCH 222/262] fix: convergent export for type (#549) --- src/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/index.ts b/src/index.ts index 6aa2b927..ac30e303 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,2 +1,2 @@ export { default } from './Pagination'; -export type * from './interface'; +export type { PaginationLocale, PaginationProps } from './interface'; From ba137602bf35cb47c7cd2e2b8c411bd6c5bec806 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BA=A2?= Date: Thu, 28 Dec 2023 14:12:49 +0800 Subject: [PATCH 223/262] fix: quick jump render logic (#553) * test: add unit test case * fix: quick jump render logic ref: https://github.com/ant-design/ant-design/issues/46671 * test: fix demo test error * chore: update demo * chore: update snap * test: add unit test case * fix: simple quick jumper custom goButton bug --- docs/examples/simple.tsx | 12 + src/Pagination.tsx | 39 +- tests/__snapshots__/demo.test.tsx.snap | 4462 +++++++++++++++++----- tests/__snapshots__/simple.test.tsx.snap | 69 + tests/demo.test.tsx | 2 +- tests/simple.test.tsx | 50 + 6 files changed, 3598 insertions(+), 1036 deletions(-) create mode 100644 tests/__snapshots__/simple.test.tsx.snap diff --git a/docs/examples/simple.tsx b/docs/examples/simple.tsx index d04b9b53..3469f6b9 100644 --- a/docs/examples/simple.tsx +++ b/docs/examples/simple.tsx @@ -32,6 +32,18 @@ export default () => { showSizeChanger selectComponentClass={Select} /> +
    + + Antd #46671 + + ); }; diff --git a/src/Pagination.tsx b/src/Pagination.tsx index 31626e2e..b3c6763c 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -348,27 +348,32 @@ const Pagination: React.FC = (props) => { let simplePager: React.ReactNode = null; if (simple) { - if (typeof goButton === 'boolean') { + // ====== Simple quick jump ====== + if (goButton) { + if (typeof goButton === 'boolean') { + gotoButton = ( + + ); + } else { + gotoButton = ( + + {goButton} + + ); + } + gotoButton = ( - +
  • + {gotoButton} +
  • ); - } else { - - {goButton} - ; } - gotoButton = ( -
  • - {gotoButton} -
  • - ); - simplePager = (
  • -
  • -
  • -
  • - - 1 - -
  • -
  • - - 2 - -
  • -
  • - - 3 - -
  • -
  • -
  • - -`; - -exports[`Example controlled 1`] = ` - -`; - -exports[`Example itemRender 1`] = ` - -`; - -exports[`Example jumper 1`] = ` -

    - 默认 -

    -`; - -exports[`Example jumperWithGoButton 1`] = ` -

    - customize node -

    -`; - -exports[`Example lessPages 1`] = `
    • - - - - - +
    • @@ -303,7 +40,7 @@ exports[`Example lessPages 1`] = `
    • @@ -313,79 +50,18 @@ exports[`Example lessPages 1`] = ` 3
    • -
    • - - 4 - -
    • -
    • - - - - - - -
    • -
    • - - 8 - -
    • - - - - - +
    • -
      - - - - - + type="button" + />
    • @@ -447,39 +112,25 @@ exports[`Example lessPages 1`] = `
    • - - - - - - + 4 +
    • - 6 + 5
    • - - - - - +
    • -
    -
    - - - Is using icon: - true - -
    -
    -`; - -exports[`Example locale 1`] = ` - -`; - -exports[`Example more 1`] = ` - -`; - -exports[`Example showTitle 1`] = ` - -`; - -exports[`Example showTotal 1`] = ` - -`; - -exports[`Example simple 1`] = ` - -`; - -exports[`Example sizer 1`] = ` -
    -
    • @@ -1152,7 +389,7 @@ exports[`Example sizer 1`] = `
    • @@ -1163,75 +400,82 @@ exports[`Example sizer 1`] = `
    • + + 4 + +
    • +
    • + + 5 + +
    • +
    • -
      -
      - - - - - 15 条/页 - -
      -
      + 8 + +
    • +
    • +
    • +
    • @@ -1253,7 +497,7 @@ exports[`Example sizer 1`] = `
    • @@ -1274,6 +518,39 @@ exports[`Example sizer 1`] = ` 4
    • +
    • + + 5 + +
    • +
    • +
    • +
    • + + 9 + +
    • +
    • @@ -1325,7 +605,7 @@ exports[`Example sizer 1`] = `
    • @@ -1346,6 +626,39 @@ exports[`Example sizer 1`] = ` 4
    • +
    • + + 5 + +
    • +
    • +
    • +
    • + + 10 + +
    • -
      -
      - - - - - 15 条/页 - -
      -
      -
    • + />
    • @@ -1437,7 +713,7 @@ exports[`Example sizer 1`] = `
    • @@ -1458,6 +734,39 @@ exports[`Example sizer 1`] = ` 4
    • +
    • + + 5 + +
    • +
    • +
    • +
    • + + 12 + +
    • -
    +
  • + + +
  • +`; + +exports[`Example controlled 1`] = ` +
    + +
    +`; + +exports[`Example itemRender 1`] = ` +
    + + + + +
    +`; + +exports[`Example jumper 1`] = ` +
    +

    + 默认 +

    + +

    + 禁用 +

    + +

    + 单页默认隐藏 +

    +
      +
    • +
    • +
    • + + 1 + +
    • +
    • +
    • +
    • +
      +
      + + + + + 10 条/页 + +
      +
      +
    • +
    +
    +
      +
    • +
    • +
    • + + 1 + +
    • +
    • +
    • +
    • +
      +
      + + + + + 10 条/页 + +
      +
      +
    • +
    +
    +`; + +exports[`Example jumperWithGoButton 1`] = ` +
    +

    + customize node +

    + +

    + default node +

    +
      +
    • +
    • +
    • + + + / + + 5 +
    • +
    • +
    • +
    • +
      + 跳至 + + 页 + +
    • + +
    • + +
    + + +
    +`; + +exports[`Example lessPages 1`] = ` +
    +
    + + +
    + + + Is using icon: + true + +
    +
    +
    +`; + +exports[`Example locale 1`] = ` +
    + +
    +`; + +exports[`Example more 1`] = ` +
    + +
    +`; + +exports[`Example showTitle 1`] = ` +
    +
    + + +
    +
    +`; + +exports[`Example showTotal 1`] = ` +
    + +
    + +
    +
      +
    • + 0 - 0 of 0 items +
    • +
    • +
    • +
    • + + 1 + +
    • +
    • +
    • +
    +
    +`; + +exports[`Example simple 1`] = ` +
    + +
      +
    • +
    • +
    • + + + / + + 5 +
    • +
    • +
    • +
    +
    +
      +
    • +
    • +
    • + + + / + + 5 +
    • +
    • +
    • +
    +
    +
      +
    • + Total 50 items +
    • +
    • +
    • +
    • + + + / + + 5 +
    • +
    • +
    • +
    +
    +
      +
    • +
    • +
    • + + + / + + 5 +
    • +
    • +
    • +
    • +
      +
      + + + + + 10 条/页 + +
      +
      +
    • +
    +
    + + Antd #46671 + +
      +
    • +
    • +
    • + + + / + + 5 +
    • +
    • +
    • +
    • +
      +
      + + + + + 10 条/页 + +
      +
      +
      + 跳至 + + 页 +
      +
    • +
    `; -exports[`Example styles 1`] = ` - + + + +
    +