├── .babelrc ├── .gitignore ├── .npmignore ├── CHANGELOG.md ├── README.md ├── example └── index.js ├── index.d.ts ├── index.js ├── package-lock.json ├── package.json └── test └── index.js /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["@babel/preset-env"] 3 | } -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .idea 2 | node_modules 3 | dist -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | index.js 2 | example 3 | test 4 | node_modules 5 | .babelrc -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | 2 | # Change log 3 | 4 | ## 2.1.3 5 | 6 | - fix: ensure all delayed actions which match the condition are dispatched (https://github.com/jameslnewell/redux-when/issues/7) 7 | 8 | ## 2.1.1 9 | 10 | - fix: moved change log to change log 11 | 12 | ## 2.1.0 13 | 14 | - added Typescript types 15 | 16 | ## 1.0.1-2 17 | 18 | - fix: updated documentation 19 | 20 | ## 1.0.0 21 | 22 | - break: switched to using the redux middleware pattern instead of the redux enhancer pattern to simplify setup 23 | - break: switched to using an action creator instead of an action 24 | - break: renamed the `when` action creator to `once` and added a new action creator named `when` which dispatches the action *every* time the condition evaluates to true 25 | - break: changed the action name from `@when` to `@redux-when/once` 26 | - break: no longer checking if the `when` condition is met in `store.subscribe()` but when the action is dispatched using a middleware 27 | - break: added the `action` that caused the state to be updated as the second parameter of the condition 28 | - add: ability to `cancel()` delayed actions 29 | 30 | ## 0.1.2 31 | 32 | - fix: [#2](https://github.com/jameslnewell/redux-when/issues/2) 33 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # redux-when 2 | 3 | Redux middleware for delaying dispatch of an action until a condition evaluates to true. 4 | 5 | ##### Why 6 | 7 | Usually, you use promises to chain asynchronous actions: 8 | 9 | ```js 10 | /* 11 | Save the form and navigate somewhere 12 | */ 13 | const handleFormSubmit = () => { 14 | Promise.resolve() 15 | .then(() => store.dispatch(save(data))) 16 | .then(() => store.dispatch(navigate())) 17 | ; 18 | } 19 | ``` 20 | 21 | But sometimes asynchronous actions have already been dispatched and you don't have a promise to chain on. `redux-when` was created to solve this problem: 22 | 23 | ```js 24 | 25 | /* 26 | Save the form 27 | */ 28 | const handleFieldBlur = () => { 29 | store.dispatch(save(data)) 30 | }; 31 | 32 | /* 33 | Wait for any save actions to finish and then navigate somewhere 34 | */ 35 | const handleFormSubmit = () => { 36 | store.dispatch(once(state => state.saved, navigate())); 37 | } 38 | 39 | ``` 40 | 41 | ## Installation 42 | 43 | npm install --save redux-when 44 | 45 | ## Usage 46 | 47 | ```javascript 48 | import {createStore, applyMiddleware} from 'redux'; 49 | import middleware, {once} from 'redux-when'; 50 | 51 | const reducer = (state = {}, action = {}) => { 52 | switch (action.type) { 53 | 54 | case 'SAVE': 55 | return {...state, saved: true}; 56 | 57 | case 'NAVIGATE': 58 | return {...state, navigated: true}; 59 | 60 | default: 61 | return state; 62 | 63 | } 64 | }; 65 | 66 | //create the store 67 | const store = createStore(reducer, {}, applyMiddleware(middleware)); 68 | 69 | //dispatch the `NAVIGATE` action ONCE the state has been saved 70 | store.dispatch(once(state => state.saved, () => ({type: 'NAVIGATE'}))); 71 | 72 | //prints: {} 73 | console.log(store.getState()); 74 | 75 | //dispatch the `SAVE` action which will update the state and trigger 76 | // the delayed `NAVIGATE` action 77 | store.dispatch({type: 'SAVE'}); 78 | 79 | //prints: {saved: true, navigated: true} 80 | console.log(store.getState()); 81 | 82 | ``` 83 | 84 | ## API 85 | 86 | ### middleware 87 | 88 | The Redux middleware. 89 | 90 | ### once(condition, createAction) 91 | 92 | Creates an action that will execute ONCE when the `condition` evaluates to true. 93 | 94 | **Parameters:** 95 | 96 | - `condition : (state : object, action : object) => boolean` — Required. The condition that determines when the action is dispatched. 97 | 98 | - `createAction : (action : object) => *` — Required. A function creating the action that will be dispatched when the `condition` evaluates to `true`. Can return any value dispatchable by your store including thunks, promises etc as long as your store is configured with the necessary middleware. 99 | 100 | **Returns:** 101 | 102 | Returns a dispatchable Redux action that will be handled by the `redux-when` middleware. When dispatched, a `cancel` token will be returned. 103 | 104 | > Note: You MUST dispatch the action created by `once()` otherwise nothing will happen. 105 | ```js 106 | store.dispatch(once(() => true, () => {type: 'XYZ'})); 107 | ``` 108 | 109 | ### when(condition, createAction) 110 | 111 | Creates an action that will execute EVERY time the `condition` evaluates to true. 112 | 113 | **Parameters:** 114 | 115 | - `condition : (state : object, action : object) => boolean` — Required. The condition that determines when the action is dispatched. 116 | 117 | - `createAction : (action : object) => *` — Required. A function creating the action that will be dispatched when the `condition` evaluates to `true`. Can return any value dispatchable by your store including thunks, promises etc as long as your store is configured with the necessary middleware. 118 | 119 | **Returns:** 120 | 121 | Returns a dispatchable Redux action that will be handled by the `redux-when` middleware. When dispatched, a `cancel` token will be returned. 122 | 123 | > Note: You MUST dispatch the action created by `when()` otherwise nothing will happen. 124 | ```js 125 | store.dispatch(when(() => true, () => {type: 'XYZ'})); 126 | ``` 127 | 128 | ### cancel(token) 129 | 130 | Cancels a delayed action created by `once()` or `when()`. 131 | 132 | **Parameters:** 133 | 134 | - `token : *` — Required. A token returned by `once()` or `when()`. 135 | 136 | **Returns:** 137 | 138 | Returns a dispatchable Redux action that will be handled by the `redux-when` middleware. When dispatched, `null` will be returned. 139 | 140 | > Note: You MUST dispatch the action created by `cancel()` otherwise nothing will happen. 141 | 142 | ```js 143 | import React from 'react'; 144 | import {connect} from 'react-redux'; 145 | 146 | class Example extends React.Component { 147 | 148 | componentWillMount() { 149 | this.token = this.props.dispatch(when(() => true, () => {type: 'XYZ')); 150 | } 151 | 152 | componentWillUnmount() { 153 | this.token = this.props.dispatch(cancel(this.token)); 154 | } 155 | 156 | } 157 | 158 | export default connect()(Example); 159 | ``` 160 | 161 | # Change log 162 | 163 | [Change log](https://github.com/jameslnewell/redux-when/blob/master/README.md). -------------------------------------------------------------------------------- /example/index.js: -------------------------------------------------------------------------------- 1 | import {createStore, applyMiddleware} from 'redux'; 2 | import middleware, {once} from '..'; 3 | 4 | const reducer = (state = {}, action = {}) => { 5 | switch (action.type) { 6 | 7 | case 'SAVE': 8 | return {...state, saved: true}; 9 | 10 | case 'NAVIGATE': 11 | return {...state, navigated: true}; 12 | 13 | default: 14 | return state; 15 | 16 | } 17 | }; 18 | 19 | //create the store 20 | const store = createStore(reducer, {}, applyMiddleware(middleware)); 21 | 22 | //dispatch the `NAVIGATE` action ONCE the state has been saved 23 | store.dispatch(once(state => state.saved, () => ({type: 'NAVIGATE'}))); 24 | 25 | //prints: {} 26 | console.log(store.getState()); 27 | 28 | //dispatch the `SAVE` action which will update the state and trigger 29 | // the delayed `NAVIGATE` action 30 | store.dispatch({type: 'SAVE'}); 31 | 32 | //prints: {saved: true, navigated: true} 33 | console.log(store.getState()); 34 | -------------------------------------------------------------------------------- /index.d.ts: -------------------------------------------------------------------------------- 1 | import { Middleware } from "redux"; 2 | 3 | export type Condition = (state: S, action: any) => boolean; 4 | export type CreateAction = (action: any) => any; 5 | 6 | export function once(condition: Condition, createAction: CreateAction): any; 7 | export function when(condition: Condition, createAction: CreateAction): any; 8 | export function cancel(token: number): any; 9 | 10 | declare const reduxWhen: Middleware; 11 | 12 | export default reduxWhen; -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | export const ONCE = '@redux-when/once'; 2 | export const WHEN = '@redux-when/when'; 3 | export const CANCEL = '@redux-when/cancel'; 4 | 5 | export function once(condition, createAction) { 6 | return { 7 | type: ONCE, 8 | payload: { 9 | condition, 10 | createAction 11 | } 12 | }; 13 | } 14 | 15 | export function when(condition, createAction) { 16 | return { 17 | type: WHEN, 18 | payload: { 19 | condition, 20 | createAction 21 | } 22 | }; 23 | } 24 | 25 | export function cancel(token) { 26 | return { 27 | type: CANCEL, 28 | payload: token 29 | }; 30 | } 31 | 32 | export default store => { 33 | const waiting = []; 34 | let lastToken = 0; 35 | 36 | return next => action => { 37 | const {type, payload} = action; 38 | 39 | if (type === ONCE || type === WHEN) { 40 | 41 | //dispatch the action immediately if the condition is met 42 | const state = store.getState(); 43 | if (payload.condition(state, action)) { 44 | next(payload.createAction(action)); 45 | if (type === ONCE) { 46 | return null; 47 | } 48 | } 49 | 50 | const token = ++lastToken; 51 | 52 | //attach the token 53 | action.meta = {token}; 54 | 55 | //delay the action 56 | waiting.push(action); 57 | 58 | return token; 59 | 60 | } else if (type === CANCEL) { 61 | 62 | //if we can find the token, remove it 63 | const index = waiting.findIndex(when => when.meta.token === action.payload); 64 | if (index !== -1) { 65 | waiting.splice(index, 1); 66 | } 67 | 68 | return null; 69 | 70 | } else { 71 | 72 | //finish dispatching the action 73 | const result = next(action); 74 | 75 | //get the updated state 76 | const state = store.getState(); 77 | 78 | // dispatch items in order 79 | let length = waiting.length; 80 | for (let index=0; index= 2.1.2 < 3" 483 | } 484 | }, 485 | "ignore-walk": { 486 | "version": "3.0.3", 487 | "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.3.tgz", 488 | "integrity": "sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==", 489 | "dev": true, 490 | "optional": true, 491 | "requires": { 492 | "minimatch": "^3.0.4" 493 | } 494 | }, 495 | "inflight": { 496 | "version": "1.0.6", 497 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 498 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 499 | "dev": true, 500 | "optional": true, 501 | "requires": { 502 | "once": "^1.3.0", 503 | "wrappy": "1" 504 | } 505 | }, 506 | "inherits": { 507 | "version": "2.0.4", 508 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 509 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 510 | "dev": true, 511 | "optional": true 512 | }, 513 | "ini": { 514 | "version": "1.3.5", 515 | "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", 516 | "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", 517 | "dev": true, 518 | "optional": true 519 | }, 520 | "is-fullwidth-code-point": { 521 | "version": "1.0.0", 522 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", 523 | "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", 524 | "dev": true, 525 | "optional": true, 526 | "requires": { 527 | "number-is-nan": "^1.0.0" 528 | } 529 | }, 530 | "isarray": { 531 | "version": "1.0.0", 532 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 533 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 534 | "dev": true, 535 | "optional": true 536 | }, 537 | "minimatch": { 538 | "version": "3.0.4", 539 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 540 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 541 | "dev": true, 542 | "optional": true, 543 | "requires": { 544 | "brace-expansion": "^1.1.7" 545 | } 546 | }, 547 | "minimist": { 548 | "version": "0.0.8", 549 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 550 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", 551 | "dev": true, 552 | "optional": true 553 | }, 554 | "minipass": { 555 | "version": "2.9.0", 556 | "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", 557 | "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", 558 | "dev": true, 559 | "optional": true, 560 | "requires": { 561 | "safe-buffer": "^5.1.2", 562 | "yallist": "^3.0.0" 563 | } 564 | }, 565 | "minizlib": { 566 | "version": "1.3.3", 567 | "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", 568 | "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", 569 | "dev": true, 570 | "optional": true, 571 | "requires": { 572 | "minipass": "^2.9.0" 573 | } 574 | }, 575 | "mkdirp": { 576 | "version": "0.5.1", 577 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 578 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 579 | "dev": true, 580 | "optional": true, 581 | "requires": { 582 | "minimist": "0.0.8" 583 | } 584 | }, 585 | "ms": { 586 | "version": "2.1.2", 587 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 588 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 589 | "dev": true, 590 | "optional": true 591 | }, 592 | "needle": { 593 | "version": "2.4.0", 594 | "resolved": "https://registry.npmjs.org/needle/-/needle-2.4.0.tgz", 595 | "integrity": "sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg==", 596 | "dev": true, 597 | "optional": true, 598 | "requires": { 599 | "debug": "^3.2.6", 600 | "iconv-lite": "^0.4.4", 601 | "sax": "^1.2.4" 602 | } 603 | }, 604 | "node-pre-gyp": { 605 | "version": "0.14.0", 606 | "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz", 607 | "integrity": "sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA==", 608 | "dev": true, 609 | "optional": true, 610 | "requires": { 611 | "detect-libc": "^1.0.2", 612 | "mkdirp": "^0.5.1", 613 | "needle": "^2.2.1", 614 | "nopt": "^4.0.1", 615 | "npm-packlist": "^1.1.6", 616 | "npmlog": "^4.0.2", 617 | "rc": "^1.2.7", 618 | "rimraf": "^2.6.1", 619 | "semver": "^5.3.0", 620 | "tar": "^4.4.2" 621 | } 622 | }, 623 | "nopt": { 624 | "version": "4.0.1", 625 | "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", 626 | "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", 627 | "dev": true, 628 | "optional": true, 629 | "requires": { 630 | "abbrev": "1", 631 | "osenv": "^0.1.4" 632 | } 633 | }, 634 | "npm-bundled": { 635 | "version": "1.1.1", 636 | "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.1.tgz", 637 | "integrity": "sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA==", 638 | "dev": true, 639 | "optional": true, 640 | "requires": { 641 | "npm-normalize-package-bin": "^1.0.1" 642 | } 643 | }, 644 | "npm-normalize-package-bin": { 645 | "version": "1.0.1", 646 | "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", 647 | "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", 648 | "dev": true, 649 | "optional": true 650 | }, 651 | "npm-packlist": { 652 | "version": "1.4.7", 653 | "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.7.tgz", 654 | "integrity": "sha512-vAj7dIkp5NhieaGZxBJB8fF4R0078rqsmhJcAfXZ6O7JJhjhPK96n5Ry1oZcfLXgfun0GWTZPOxaEyqv8GBykQ==", 655 | "dev": true, 656 | "optional": true, 657 | "requires": { 658 | "ignore-walk": "^3.0.1", 659 | "npm-bundled": "^1.0.1" 660 | } 661 | }, 662 | "npmlog": { 663 | "version": "4.1.2", 664 | "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", 665 | "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", 666 | "dev": true, 667 | "optional": true, 668 | "requires": { 669 | "are-we-there-yet": "~1.1.2", 670 | "console-control-strings": "~1.1.0", 671 | "gauge": "~2.7.3", 672 | "set-blocking": "~2.0.0" 673 | } 674 | }, 675 | "number-is-nan": { 676 | "version": "1.0.1", 677 | "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", 678 | "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", 679 | "dev": true, 680 | "optional": true 681 | }, 682 | "object-assign": { 683 | "version": "4.1.1", 684 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 685 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", 686 | "dev": true, 687 | "optional": true 688 | }, 689 | "once": { 690 | "version": "1.4.0", 691 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 692 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 693 | "dev": true, 694 | "optional": true, 695 | "requires": { 696 | "wrappy": "1" 697 | } 698 | }, 699 | "os-homedir": { 700 | "version": "1.0.2", 701 | "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", 702 | "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", 703 | "dev": true, 704 | "optional": true 705 | }, 706 | "os-tmpdir": { 707 | "version": "1.0.2", 708 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", 709 | "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", 710 | "dev": true, 711 | "optional": true 712 | }, 713 | "osenv": { 714 | "version": "0.1.5", 715 | "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", 716 | "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", 717 | "dev": true, 718 | "optional": true, 719 | "requires": { 720 | "os-homedir": "^1.0.0", 721 | "os-tmpdir": "^1.0.0" 722 | } 723 | }, 724 | "path-is-absolute": { 725 | "version": "1.0.1", 726 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 727 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 728 | "dev": true, 729 | "optional": true 730 | }, 731 | "process-nextick-args": { 732 | "version": "2.0.1", 733 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", 734 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", 735 | "dev": true, 736 | "optional": true 737 | }, 738 | "rc": { 739 | "version": "1.2.8", 740 | "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", 741 | "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", 742 | "dev": true, 743 | "optional": true, 744 | "requires": { 745 | "deep-extend": "^0.6.0", 746 | "ini": "~1.3.0", 747 | "minimist": "^1.2.0", 748 | "strip-json-comments": "~2.0.1" 749 | }, 750 | "dependencies": { 751 | "minimist": { 752 | "version": "1.2.0", 753 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", 754 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", 755 | "dev": true, 756 | "optional": true 757 | } 758 | } 759 | }, 760 | "readable-stream": { 761 | "version": "2.3.6", 762 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", 763 | "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", 764 | "dev": true, 765 | "optional": true, 766 | "requires": { 767 | "core-util-is": "~1.0.0", 768 | "inherits": "~2.0.3", 769 | "isarray": "~1.0.0", 770 | "process-nextick-args": "~2.0.0", 771 | "safe-buffer": "~5.1.1", 772 | "string_decoder": "~1.1.1", 773 | "util-deprecate": "~1.0.1" 774 | } 775 | }, 776 | "rimraf": { 777 | "version": "2.7.1", 778 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", 779 | "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", 780 | "dev": true, 781 | "optional": true, 782 | "requires": { 783 | "glob": "^7.1.3" 784 | } 785 | }, 786 | "safe-buffer": { 787 | "version": "5.1.2", 788 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 789 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", 790 | "dev": true, 791 | "optional": true 792 | }, 793 | "safer-buffer": { 794 | "version": "2.1.2", 795 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 796 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", 797 | "dev": true, 798 | "optional": true 799 | }, 800 | "sax": { 801 | "version": "1.2.4", 802 | "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", 803 | "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", 804 | "dev": true, 805 | "optional": true 806 | }, 807 | "semver": { 808 | "version": "5.7.1", 809 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 810 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", 811 | "dev": true, 812 | "optional": true 813 | }, 814 | "set-blocking": { 815 | "version": "2.0.0", 816 | "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", 817 | "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", 818 | "dev": true, 819 | "optional": true 820 | }, 821 | "signal-exit": { 822 | "version": "3.0.2", 823 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", 824 | "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", 825 | "dev": true, 826 | "optional": true 827 | }, 828 | "string-width": { 829 | "version": "1.0.2", 830 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", 831 | "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", 832 | "dev": true, 833 | "optional": true, 834 | "requires": { 835 | "code-point-at": "^1.0.0", 836 | "is-fullwidth-code-point": "^1.0.0", 837 | "strip-ansi": "^3.0.0" 838 | } 839 | }, 840 | "string_decoder": { 841 | "version": "1.1.1", 842 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", 843 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", 844 | "dev": true, 845 | "optional": true, 846 | "requires": { 847 | "safe-buffer": "~5.1.0" 848 | } 849 | }, 850 | "strip-ansi": { 851 | "version": "3.0.1", 852 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 853 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 854 | "dev": true, 855 | "optional": true, 856 | "requires": { 857 | "ansi-regex": "^2.0.0" 858 | } 859 | }, 860 | "strip-json-comments": { 861 | "version": "2.0.1", 862 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", 863 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", 864 | "dev": true, 865 | "optional": true 866 | }, 867 | "tar": { 868 | "version": "4.4.13", 869 | "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz", 870 | "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==", 871 | "dev": true, 872 | "optional": true, 873 | "requires": { 874 | "chownr": "^1.1.1", 875 | "fs-minipass": "^1.2.5", 876 | "minipass": "^2.8.6", 877 | "minizlib": "^1.2.1", 878 | "mkdirp": "^0.5.0", 879 | "safe-buffer": "^5.1.2", 880 | "yallist": "^3.0.3" 881 | } 882 | }, 883 | "util-deprecate": { 884 | "version": "1.0.2", 885 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 886 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", 887 | "dev": true, 888 | "optional": true 889 | }, 890 | "wide-align": { 891 | "version": "1.1.3", 892 | "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", 893 | "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", 894 | "dev": true, 895 | "optional": true, 896 | "requires": { 897 | "string-width": "^1.0.2 || 2" 898 | } 899 | }, 900 | "wrappy": { 901 | "version": "1.0.2", 902 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 903 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 904 | "dev": true, 905 | "optional": true 906 | }, 907 | "yallist": { 908 | "version": "3.1.1", 909 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", 910 | "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", 911 | "dev": true, 912 | "optional": true 913 | } 914 | } 915 | }, 916 | "glob-parent": { 917 | "version": "3.1.0", 918 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", 919 | "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", 920 | "dev": true, 921 | "optional": true, 922 | "requires": { 923 | "is-glob": "^3.1.0", 924 | "path-dirname": "^1.0.0" 925 | }, 926 | "dependencies": { 927 | "is-glob": { 928 | "version": "3.1.0", 929 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", 930 | "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", 931 | "dev": true, 932 | "optional": true, 933 | "requires": { 934 | "is-extglob": "^2.1.0" 935 | } 936 | } 937 | } 938 | }, 939 | "is-accessor-descriptor": { 940 | "version": "1.0.0", 941 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 942 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 943 | "dev": true, 944 | "optional": true, 945 | "requires": { 946 | "kind-of": "^6.0.0" 947 | } 948 | }, 949 | "is-data-descriptor": { 950 | "version": "1.0.0", 951 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 952 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 953 | "dev": true, 954 | "optional": true, 955 | "requires": { 956 | "kind-of": "^6.0.0" 957 | } 958 | }, 959 | "is-descriptor": { 960 | "version": "1.0.2", 961 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 962 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 963 | "dev": true, 964 | "optional": true, 965 | "requires": { 966 | "is-accessor-descriptor": "^1.0.0", 967 | "is-data-descriptor": "^1.0.0", 968 | "kind-of": "^6.0.2" 969 | } 970 | }, 971 | "is-extglob": { 972 | "version": "2.1.1", 973 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 974 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", 975 | "dev": true, 976 | "optional": true 977 | }, 978 | "is-glob": { 979 | "version": "4.0.1", 980 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", 981 | "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", 982 | "dev": true, 983 | "optional": true, 984 | "requires": { 985 | "is-extglob": "^2.1.1" 986 | } 987 | }, 988 | "is-number": { 989 | "version": "3.0.0", 990 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 991 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 992 | "dev": true, 993 | "optional": true, 994 | "requires": { 995 | "kind-of": "^3.0.2" 996 | }, 997 | "dependencies": { 998 | "kind-of": { 999 | "version": "3.2.2", 1000 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 1001 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 1002 | "dev": true, 1003 | "optional": true, 1004 | "requires": { 1005 | "is-buffer": "^1.1.5" 1006 | } 1007 | } 1008 | } 1009 | }, 1010 | "isobject": { 1011 | "version": "3.0.1", 1012 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 1013 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 1014 | "dev": true, 1015 | "optional": true 1016 | }, 1017 | "kind-of": { 1018 | "version": "6.0.3", 1019 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 1020 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 1021 | "dev": true, 1022 | "optional": true 1023 | }, 1024 | "micromatch": { 1025 | "version": "3.1.10", 1026 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", 1027 | "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", 1028 | "dev": true, 1029 | "optional": true, 1030 | "requires": { 1031 | "arr-diff": "^4.0.0", 1032 | "array-unique": "^0.3.2", 1033 | "braces": "^2.3.1", 1034 | "define-property": "^2.0.2", 1035 | "extend-shallow": "^3.0.2", 1036 | "extglob": "^2.0.4", 1037 | "fragment-cache": "^0.2.1", 1038 | "kind-of": "^6.0.2", 1039 | "nanomatch": "^1.2.9", 1040 | "object.pick": "^1.3.0", 1041 | "regex-not": "^1.0.0", 1042 | "snapdragon": "^0.8.1", 1043 | "to-regex": "^3.0.2" 1044 | } 1045 | }, 1046 | "nan": { 1047 | "version": "2.14.0", 1048 | "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", 1049 | "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", 1050 | "dev": true, 1051 | "optional": true 1052 | }, 1053 | "normalize-path": { 1054 | "version": "3.0.0", 1055 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 1056 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 1057 | "dev": true, 1058 | "optional": true 1059 | }, 1060 | "readdirp": { 1061 | "version": "2.2.1", 1062 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", 1063 | "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", 1064 | "dev": true, 1065 | "optional": true, 1066 | "requires": { 1067 | "graceful-fs": "^4.1.11", 1068 | "micromatch": "^3.1.10", 1069 | "readable-stream": "^2.0.2" 1070 | } 1071 | }, 1072 | "slash": { 1073 | "version": "2.0.0", 1074 | "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", 1075 | "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", 1076 | "dev": true 1077 | } 1078 | } 1079 | }, 1080 | "@babel/code-frame": { 1081 | "version": "7.8.3", 1082 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", 1083 | "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", 1084 | "dev": true, 1085 | "requires": { 1086 | "@babel/highlight": "^7.8.3" 1087 | } 1088 | }, 1089 | "@babel/compat-data": { 1090 | "version": "7.8.5", 1091 | "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.8.5.tgz", 1092 | "integrity": "sha512-jWYUqQX/ObOhG1UiEkbH5SANsE/8oKXiQWjj7p7xgj9Zmnt//aUvyz4dBkK0HNsS8/cbyC5NmmH87VekW+mXFg==", 1093 | "dev": true, 1094 | "requires": { 1095 | "browserslist": "^4.8.5", 1096 | "invariant": "^2.2.4", 1097 | "semver": "^5.5.0" 1098 | }, 1099 | "dependencies": { 1100 | "invariant": { 1101 | "version": "2.2.4", 1102 | "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", 1103 | "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", 1104 | "dev": true, 1105 | "requires": { 1106 | "loose-envify": "^1.0.0" 1107 | } 1108 | } 1109 | } 1110 | }, 1111 | "@babel/core": { 1112 | "version": "7.8.4", 1113 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.4.tgz", 1114 | "integrity": "sha512-0LiLrB2PwrVI+a2/IEskBopDYSd8BCb3rOvH7D5tzoWd696TBEduBvuLVm4Nx6rltrLZqvI3MCalB2K2aVzQjA==", 1115 | "dev": true, 1116 | "requires": { 1117 | "@babel/code-frame": "^7.8.3", 1118 | "@babel/generator": "^7.8.4", 1119 | "@babel/helpers": "^7.8.4", 1120 | "@babel/parser": "^7.8.4", 1121 | "@babel/template": "^7.8.3", 1122 | "@babel/traverse": "^7.8.4", 1123 | "@babel/types": "^7.8.3", 1124 | "convert-source-map": "^1.7.0", 1125 | "debug": "^4.1.0", 1126 | "gensync": "^1.0.0-beta.1", 1127 | "json5": "^2.1.0", 1128 | "lodash": "^4.17.13", 1129 | "resolve": "^1.3.2", 1130 | "semver": "^5.4.1", 1131 | "source-map": "^0.5.0" 1132 | }, 1133 | "dependencies": { 1134 | "convert-source-map": { 1135 | "version": "1.7.0", 1136 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", 1137 | "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", 1138 | "dev": true, 1139 | "requires": { 1140 | "safe-buffer": "~5.1.1" 1141 | } 1142 | }, 1143 | "debug": { 1144 | "version": "4.1.1", 1145 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", 1146 | "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", 1147 | "dev": true, 1148 | "requires": { 1149 | "ms": "^2.1.1" 1150 | } 1151 | }, 1152 | "ms": { 1153 | "version": "2.1.2", 1154 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 1155 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 1156 | "dev": true 1157 | } 1158 | } 1159 | }, 1160 | "@babel/generator": { 1161 | "version": "7.8.4", 1162 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.4.tgz", 1163 | "integrity": "sha512-PwhclGdRpNAf3IxZb0YVuITPZmmrXz9zf6fH8lT4XbrmfQKr6ryBzhv593P5C6poJRciFCL/eHGW2NuGrgEyxA==", 1164 | "dev": true, 1165 | "requires": { 1166 | "@babel/types": "^7.8.3", 1167 | "jsesc": "^2.5.1", 1168 | "lodash": "^4.17.13", 1169 | "source-map": "^0.5.0" 1170 | }, 1171 | "dependencies": { 1172 | "jsesc": { 1173 | "version": "2.5.2", 1174 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", 1175 | "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", 1176 | "dev": true 1177 | } 1178 | } 1179 | }, 1180 | "@babel/helper-annotate-as-pure": { 1181 | "version": "7.8.3", 1182 | "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz", 1183 | "integrity": "sha512-6o+mJrZBxOoEX77Ezv9zwW7WV8DdluouRKNY/IR5u/YTMuKHgugHOzYWlYvYLpLA9nPsQCAAASpCIbjI9Mv+Uw==", 1184 | "dev": true, 1185 | "requires": { 1186 | "@babel/types": "^7.8.3" 1187 | } 1188 | }, 1189 | "@babel/helper-builder-binary-assignment-operator-visitor": { 1190 | "version": "7.8.3", 1191 | "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.8.3.tgz", 1192 | "integrity": "sha512-5eFOm2SyFPK4Rh3XMMRDjN7lBH0orh3ss0g3rTYZnBQ+r6YPj7lgDyCvPphynHvUrobJmeMignBr6Acw9mAPlw==", 1193 | "dev": true, 1194 | "requires": { 1195 | "@babel/helper-explode-assignable-expression": "^7.8.3", 1196 | "@babel/types": "^7.8.3" 1197 | } 1198 | }, 1199 | "@babel/helper-call-delegate": { 1200 | "version": "7.8.3", 1201 | "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.8.3.tgz", 1202 | "integrity": "sha512-6Q05px0Eb+N4/GTyKPPvnkig7Lylw+QzihMpws9iiZQv7ZImf84ZsZpQH7QoWN4n4tm81SnSzPgHw2qtO0Zf3A==", 1203 | "dev": true, 1204 | "requires": { 1205 | "@babel/helper-hoist-variables": "^7.8.3", 1206 | "@babel/traverse": "^7.8.3", 1207 | "@babel/types": "^7.8.3" 1208 | } 1209 | }, 1210 | "@babel/helper-compilation-targets": { 1211 | "version": "7.8.4", 1212 | "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.8.4.tgz", 1213 | "integrity": "sha512-3k3BsKMvPp5bjxgMdrFyq0UaEO48HciVrOVF0+lon8pp95cyJ2ujAh0TrBHNMnJGT2rr0iKOJPFFbSqjDyf/Pg==", 1214 | "dev": true, 1215 | "requires": { 1216 | "@babel/compat-data": "^7.8.4", 1217 | "browserslist": "^4.8.5", 1218 | "invariant": "^2.2.4", 1219 | "levenary": "^1.1.1", 1220 | "semver": "^5.5.0" 1221 | }, 1222 | "dependencies": { 1223 | "invariant": { 1224 | "version": "2.2.4", 1225 | "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", 1226 | "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", 1227 | "dev": true, 1228 | "requires": { 1229 | "loose-envify": "^1.0.0" 1230 | } 1231 | } 1232 | } 1233 | }, 1234 | "@babel/helper-create-regexp-features-plugin": { 1235 | "version": "7.8.3", 1236 | "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.3.tgz", 1237 | "integrity": "sha512-Gcsm1OHCUr9o9TcJln57xhWHtdXbA2pgQ58S0Lxlks0WMGNXuki4+GLfX0p+L2ZkINUGZvfkz8rzoqJQSthI+Q==", 1238 | "dev": true, 1239 | "requires": { 1240 | "@babel/helper-regex": "^7.8.3", 1241 | "regexpu-core": "^4.6.0" 1242 | }, 1243 | "dependencies": { 1244 | "jsesc": { 1245 | "version": "0.5.0", 1246 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", 1247 | "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", 1248 | "dev": true 1249 | }, 1250 | "regenerate": { 1251 | "version": "1.4.0", 1252 | "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", 1253 | "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", 1254 | "dev": true 1255 | }, 1256 | "regexpu-core": { 1257 | "version": "4.6.0", 1258 | "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.6.0.tgz", 1259 | "integrity": "sha512-YlVaefl8P5BnFYOITTNzDvan1ulLOiXJzCNZxduTIosN17b87h3bvG9yHMoHaRuo88H4mQ06Aodj5VtYGGGiTg==", 1260 | "dev": true, 1261 | "requires": { 1262 | "regenerate": "^1.4.0", 1263 | "regenerate-unicode-properties": "^8.1.0", 1264 | "regjsgen": "^0.5.0", 1265 | "regjsparser": "^0.6.0", 1266 | "unicode-match-property-ecmascript": "^1.0.4", 1267 | "unicode-match-property-value-ecmascript": "^1.1.0" 1268 | } 1269 | }, 1270 | "regjsgen": { 1271 | "version": "0.5.1", 1272 | "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", 1273 | "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==", 1274 | "dev": true 1275 | }, 1276 | "regjsparser": { 1277 | "version": "0.6.3", 1278 | "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.3.tgz", 1279 | "integrity": "sha512-8uZvYbnfAtEm9Ab8NTb3hdLwL4g/LQzEYP7Xs27T96abJCCE2d6r3cPZPQEsLKy0vRSGVNG+/zVGtLr86HQduA==", 1280 | "dev": true, 1281 | "requires": { 1282 | "jsesc": "~0.5.0" 1283 | } 1284 | } 1285 | } 1286 | }, 1287 | "@babel/helper-define-map": { 1288 | "version": "7.8.3", 1289 | "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.8.3.tgz", 1290 | "integrity": "sha512-PoeBYtxoZGtct3md6xZOCWPcKuMuk3IHhgxsRRNtnNShebf4C8YonTSblsK4tvDbm+eJAw2HAPOfCr+Q/YRG/g==", 1291 | "dev": true, 1292 | "requires": { 1293 | "@babel/helper-function-name": "^7.8.3", 1294 | "@babel/types": "^7.8.3", 1295 | "lodash": "^4.17.13" 1296 | } 1297 | }, 1298 | "@babel/helper-explode-assignable-expression": { 1299 | "version": "7.8.3", 1300 | "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.8.3.tgz", 1301 | "integrity": "sha512-N+8eW86/Kj147bO9G2uclsg5pwfs/fqqY5rwgIL7eTBklgXjcOJ3btzS5iM6AitJcftnY7pm2lGsrJVYLGjzIw==", 1302 | "dev": true, 1303 | "requires": { 1304 | "@babel/traverse": "^7.8.3", 1305 | "@babel/types": "^7.8.3" 1306 | } 1307 | }, 1308 | "@babel/helper-function-name": { 1309 | "version": "7.8.3", 1310 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", 1311 | "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", 1312 | "dev": true, 1313 | "requires": { 1314 | "@babel/helper-get-function-arity": "^7.8.3", 1315 | "@babel/template": "^7.8.3", 1316 | "@babel/types": "^7.8.3" 1317 | } 1318 | }, 1319 | "@babel/helper-get-function-arity": { 1320 | "version": "7.8.3", 1321 | "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", 1322 | "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", 1323 | "dev": true, 1324 | "requires": { 1325 | "@babel/types": "^7.8.3" 1326 | } 1327 | }, 1328 | "@babel/helper-hoist-variables": { 1329 | "version": "7.8.3", 1330 | "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.8.3.tgz", 1331 | "integrity": "sha512-ky1JLOjcDUtSc+xkt0xhYff7Z6ILTAHKmZLHPxAhOP0Nd77O+3nCsd6uSVYur6nJnCI029CrNbYlc0LoPfAPQg==", 1332 | "dev": true, 1333 | "requires": { 1334 | "@babel/types": "^7.8.3" 1335 | } 1336 | }, 1337 | "@babel/helper-member-expression-to-functions": { 1338 | "version": "7.8.3", 1339 | "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz", 1340 | "integrity": "sha512-fO4Egq88utkQFjbPrSHGmGLFqmrshs11d46WI+WZDESt7Wu7wN2G2Iu+NMMZJFDOVRHAMIkB5SNh30NtwCA7RA==", 1341 | "dev": true, 1342 | "requires": { 1343 | "@babel/types": "^7.8.3" 1344 | } 1345 | }, 1346 | "@babel/helper-module-imports": { 1347 | "version": "7.8.3", 1348 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz", 1349 | "integrity": "sha512-R0Bx3jippsbAEtzkpZ/6FIiuzOURPcMjHp+Z6xPe6DtApDJx+w7UYyOLanZqO8+wKR9G10s/FmHXvxaMd9s6Kg==", 1350 | "dev": true, 1351 | "requires": { 1352 | "@babel/types": "^7.8.3" 1353 | } 1354 | }, 1355 | "@babel/helper-module-transforms": { 1356 | "version": "7.8.3", 1357 | "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.8.3.tgz", 1358 | "integrity": "sha512-C7NG6B7vfBa/pwCOshpMbOYUmrYQDfCpVL/JCRu0ek8B5p8kue1+BCXpg2vOYs7w5ACB9GTOBYQ5U6NwrMg+3Q==", 1359 | "dev": true, 1360 | "requires": { 1361 | "@babel/helper-module-imports": "^7.8.3", 1362 | "@babel/helper-simple-access": "^7.8.3", 1363 | "@babel/helper-split-export-declaration": "^7.8.3", 1364 | "@babel/template": "^7.8.3", 1365 | "@babel/types": "^7.8.3", 1366 | "lodash": "^4.17.13" 1367 | } 1368 | }, 1369 | "@babel/helper-optimise-call-expression": { 1370 | "version": "7.8.3", 1371 | "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz", 1372 | "integrity": "sha512-Kag20n86cbO2AvHca6EJsvqAd82gc6VMGule4HwebwMlwkpXuVqrNRj6CkCV2sKxgi9MyAUnZVnZ6lJ1/vKhHQ==", 1373 | "dev": true, 1374 | "requires": { 1375 | "@babel/types": "^7.8.3" 1376 | } 1377 | }, 1378 | "@babel/helper-plugin-utils": { 1379 | "version": "7.8.3", 1380 | "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", 1381 | "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", 1382 | "dev": true 1383 | }, 1384 | "@babel/helper-regex": { 1385 | "version": "7.8.3", 1386 | "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.8.3.tgz", 1387 | "integrity": "sha512-BWt0QtYv/cg/NecOAZMdcn/waj/5P26DR4mVLXfFtDokSR6fyuG0Pj+e2FqtSME+MqED1khnSMulkmGl8qWiUQ==", 1388 | "dev": true, 1389 | "requires": { 1390 | "lodash": "^4.17.13" 1391 | } 1392 | }, 1393 | "@babel/helper-remap-async-to-generator": { 1394 | "version": "7.8.3", 1395 | "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.8.3.tgz", 1396 | "integrity": "sha512-kgwDmw4fCg7AVgS4DukQR/roGp+jP+XluJE5hsRZwxCYGg+Rv9wSGErDWhlI90FODdYfd4xG4AQRiMDjjN0GzA==", 1397 | "dev": true, 1398 | "requires": { 1399 | "@babel/helper-annotate-as-pure": "^7.8.3", 1400 | "@babel/helper-wrap-function": "^7.8.3", 1401 | "@babel/template": "^7.8.3", 1402 | "@babel/traverse": "^7.8.3", 1403 | "@babel/types": "^7.8.3" 1404 | } 1405 | }, 1406 | "@babel/helper-replace-supers": { 1407 | "version": "7.8.3", 1408 | "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.8.3.tgz", 1409 | "integrity": "sha512-xOUssL6ho41U81etpLoT2RTdvdus4VfHamCuAm4AHxGr+0it5fnwoVdwUJ7GFEqCsQYzJUhcbsN9wB9apcYKFA==", 1410 | "dev": true, 1411 | "requires": { 1412 | "@babel/helper-member-expression-to-functions": "^7.8.3", 1413 | "@babel/helper-optimise-call-expression": "^7.8.3", 1414 | "@babel/traverse": "^7.8.3", 1415 | "@babel/types": "^7.8.3" 1416 | } 1417 | }, 1418 | "@babel/helper-simple-access": { 1419 | "version": "7.8.3", 1420 | "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz", 1421 | "integrity": "sha512-VNGUDjx5cCWg4vvCTR8qQ7YJYZ+HBjxOgXEl7ounz+4Sn7+LMD3CFrCTEU6/qXKbA2nKg21CwhhBzO0RpRbdCw==", 1422 | "dev": true, 1423 | "requires": { 1424 | "@babel/template": "^7.8.3", 1425 | "@babel/types": "^7.8.3" 1426 | } 1427 | }, 1428 | "@babel/helper-split-export-declaration": { 1429 | "version": "7.8.3", 1430 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", 1431 | "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", 1432 | "dev": true, 1433 | "requires": { 1434 | "@babel/types": "^7.8.3" 1435 | } 1436 | }, 1437 | "@babel/helper-wrap-function": { 1438 | "version": "7.8.3", 1439 | "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.8.3.tgz", 1440 | "integrity": "sha512-LACJrbUET9cQDzb6kG7EeD7+7doC3JNvUgTEQOx2qaO1fKlzE/Bf05qs9w1oXQMmXlPO65lC3Tq9S6gZpTErEQ==", 1441 | "dev": true, 1442 | "requires": { 1443 | "@babel/helper-function-name": "^7.8.3", 1444 | "@babel/template": "^7.8.3", 1445 | "@babel/traverse": "^7.8.3", 1446 | "@babel/types": "^7.8.3" 1447 | } 1448 | }, 1449 | "@babel/helpers": { 1450 | "version": "7.8.4", 1451 | "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.8.4.tgz", 1452 | "integrity": "sha512-VPbe7wcQ4chu4TDQjimHv/5tj73qz88o12EPkO2ValS2QiQS/1F2SsjyIGNnAD0vF/nZS6Cf9i+vW6HIlnaR8w==", 1453 | "dev": true, 1454 | "requires": { 1455 | "@babel/template": "^7.8.3", 1456 | "@babel/traverse": "^7.8.4", 1457 | "@babel/types": "^7.8.3" 1458 | } 1459 | }, 1460 | "@babel/highlight": { 1461 | "version": "7.8.3", 1462 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", 1463 | "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", 1464 | "dev": true, 1465 | "requires": { 1466 | "chalk": "^2.0.0", 1467 | "esutils": "^2.0.2", 1468 | "js-tokens": "^4.0.0" 1469 | }, 1470 | "dependencies": { 1471 | "ansi-styles": { 1472 | "version": "3.2.1", 1473 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 1474 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 1475 | "dev": true, 1476 | "requires": { 1477 | "color-convert": "^1.9.0" 1478 | } 1479 | }, 1480 | "chalk": { 1481 | "version": "2.4.2", 1482 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 1483 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 1484 | "dev": true, 1485 | "requires": { 1486 | "ansi-styles": "^3.2.1", 1487 | "escape-string-regexp": "^1.0.5", 1488 | "supports-color": "^5.3.0" 1489 | } 1490 | }, 1491 | "supports-color": { 1492 | "version": "5.5.0", 1493 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 1494 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 1495 | "dev": true, 1496 | "requires": { 1497 | "has-flag": "^3.0.0" 1498 | } 1499 | } 1500 | } 1501 | }, 1502 | "@babel/node": { 1503 | "version": "7.8.4", 1504 | "resolved": "https://registry.npmjs.org/@babel/node/-/node-7.8.4.tgz", 1505 | "integrity": "sha512-MlczXI/VYRnoaWHjicqrzq2z4DhRPaWQIC+C3ISEQs5z+mEccBsn7IAI5Q97ZDTnFYw6ts5IUTzqArilC/g7nw==", 1506 | "dev": true, 1507 | "requires": { 1508 | "@babel/register": "^7.8.3", 1509 | "commander": "^4.0.1", 1510 | "core-js": "^3.2.1", 1511 | "lodash": "^4.17.13", 1512 | "node-environment-flags": "^1.0.5", 1513 | "regenerator-runtime": "^0.13.3", 1514 | "resolve": "^1.13.1", 1515 | "v8flags": "^3.1.1" 1516 | } 1517 | }, 1518 | "@babel/parser": { 1519 | "version": "7.8.4", 1520 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.4.tgz", 1521 | "integrity": "sha512-0fKu/QqildpXmPVaRBoXOlyBb3MC+J0A66x97qEfLOMkn3u6nfY5esWogQwi/K0BjASYy4DbnsEWnpNL6qT5Mw==", 1522 | "dev": true 1523 | }, 1524 | "@babel/plugin-proposal-async-generator-functions": { 1525 | "version": "7.8.3", 1526 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.8.3.tgz", 1527 | "integrity": "sha512-NZ9zLv848JsV3hs8ryEh7Uaz/0KsmPLqv0+PdkDJL1cJy0K4kOCFa8zc1E3mp+RHPQcpdfb/6GovEsW4VDrOMw==", 1528 | "dev": true, 1529 | "requires": { 1530 | "@babel/helper-plugin-utils": "^7.8.3", 1531 | "@babel/helper-remap-async-to-generator": "^7.8.3", 1532 | "@babel/plugin-syntax-async-generators": "^7.8.0" 1533 | } 1534 | }, 1535 | "@babel/plugin-proposal-dynamic-import": { 1536 | "version": "7.8.3", 1537 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.8.3.tgz", 1538 | "integrity": "sha512-NyaBbyLFXFLT9FP+zk0kYlUlA8XtCUbehs67F0nnEg7KICgMc2mNkIeu9TYhKzyXMkrapZFwAhXLdnt4IYHy1w==", 1539 | "dev": true, 1540 | "requires": { 1541 | "@babel/helper-plugin-utils": "^7.8.3", 1542 | "@babel/plugin-syntax-dynamic-import": "^7.8.0" 1543 | } 1544 | }, 1545 | "@babel/plugin-proposal-json-strings": { 1546 | "version": "7.8.3", 1547 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.8.3.tgz", 1548 | "integrity": "sha512-KGhQNZ3TVCQG/MjRbAUwuH+14y9q0tpxs1nWWs3pbSleRdDro9SAMMDyye8HhY1gqZ7/NqIc8SKhya0wRDgP1Q==", 1549 | "dev": true, 1550 | "requires": { 1551 | "@babel/helper-plugin-utils": "^7.8.3", 1552 | "@babel/plugin-syntax-json-strings": "^7.8.0" 1553 | } 1554 | }, 1555 | "@babel/plugin-proposal-nullish-coalescing-operator": { 1556 | "version": "7.8.3", 1557 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.8.3.tgz", 1558 | "integrity": "sha512-TS9MlfzXpXKt6YYomudb/KU7nQI6/xnapG6in1uZxoxDghuSMZsPb6D2fyUwNYSAp4l1iR7QtFOjkqcRYcUsfw==", 1559 | "dev": true, 1560 | "requires": { 1561 | "@babel/helper-plugin-utils": "^7.8.3", 1562 | "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" 1563 | } 1564 | }, 1565 | "@babel/plugin-proposal-object-rest-spread": { 1566 | "version": "7.8.3", 1567 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.8.3.tgz", 1568 | "integrity": "sha512-8qvuPwU/xxUCt78HocNlv0mXXo0wdh9VT1R04WU8HGOfaOob26pF+9P5/lYjN/q7DHOX1bvX60hnhOvuQUJdbA==", 1569 | "dev": true, 1570 | "requires": { 1571 | "@babel/helper-plugin-utils": "^7.8.3", 1572 | "@babel/plugin-syntax-object-rest-spread": "^7.8.0" 1573 | } 1574 | }, 1575 | "@babel/plugin-proposal-optional-catch-binding": { 1576 | "version": "7.8.3", 1577 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.8.3.tgz", 1578 | "integrity": "sha512-0gkX7J7E+AtAw9fcwlVQj8peP61qhdg/89D5swOkjYbkboA2CVckn3kiyum1DE0wskGb7KJJxBdyEBApDLLVdw==", 1579 | "dev": true, 1580 | "requires": { 1581 | "@babel/helper-plugin-utils": "^7.8.3", 1582 | "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" 1583 | } 1584 | }, 1585 | "@babel/plugin-proposal-optional-chaining": { 1586 | "version": "7.8.3", 1587 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.8.3.tgz", 1588 | "integrity": "sha512-QIoIR9abkVn+seDE3OjA08jWcs3eZ9+wJCKSRgo3WdEU2csFYgdScb+8qHB3+WXsGJD55u+5hWCISI7ejXS+kg==", 1589 | "dev": true, 1590 | "requires": { 1591 | "@babel/helper-plugin-utils": "^7.8.3", 1592 | "@babel/plugin-syntax-optional-chaining": "^7.8.0" 1593 | } 1594 | }, 1595 | "@babel/plugin-proposal-unicode-property-regex": { 1596 | "version": "7.8.3", 1597 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.8.3.tgz", 1598 | "integrity": "sha512-1/1/rEZv2XGweRwwSkLpY+s60za9OZ1hJs4YDqFHCw0kYWYwL5IFljVY1MYBL+weT1l9pokDO2uhSTLVxzoHkQ==", 1599 | "dev": true, 1600 | "requires": { 1601 | "@babel/helper-create-regexp-features-plugin": "^7.8.3", 1602 | "@babel/helper-plugin-utils": "^7.8.3" 1603 | } 1604 | }, 1605 | "@babel/plugin-syntax-async-generators": { 1606 | "version": "7.8.4", 1607 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", 1608 | "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", 1609 | "dev": true, 1610 | "requires": { 1611 | "@babel/helper-plugin-utils": "^7.8.0" 1612 | } 1613 | }, 1614 | "@babel/plugin-syntax-dynamic-import": { 1615 | "version": "7.8.3", 1616 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", 1617 | "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", 1618 | "dev": true, 1619 | "requires": { 1620 | "@babel/helper-plugin-utils": "^7.8.0" 1621 | } 1622 | }, 1623 | "@babel/plugin-syntax-json-strings": { 1624 | "version": "7.8.3", 1625 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", 1626 | "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", 1627 | "dev": true, 1628 | "requires": { 1629 | "@babel/helper-plugin-utils": "^7.8.0" 1630 | } 1631 | }, 1632 | "@babel/plugin-syntax-nullish-coalescing-operator": { 1633 | "version": "7.8.3", 1634 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", 1635 | "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", 1636 | "dev": true, 1637 | "requires": { 1638 | "@babel/helper-plugin-utils": "^7.8.0" 1639 | } 1640 | }, 1641 | "@babel/plugin-syntax-object-rest-spread": { 1642 | "version": "7.8.3", 1643 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", 1644 | "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", 1645 | "dev": true, 1646 | "requires": { 1647 | "@babel/helper-plugin-utils": "^7.8.0" 1648 | } 1649 | }, 1650 | "@babel/plugin-syntax-optional-catch-binding": { 1651 | "version": "7.8.3", 1652 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", 1653 | "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", 1654 | "dev": true, 1655 | "requires": { 1656 | "@babel/helper-plugin-utils": "^7.8.0" 1657 | } 1658 | }, 1659 | "@babel/plugin-syntax-optional-chaining": { 1660 | "version": "7.8.3", 1661 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", 1662 | "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", 1663 | "dev": true, 1664 | "requires": { 1665 | "@babel/helper-plugin-utils": "^7.8.0" 1666 | } 1667 | }, 1668 | "@babel/plugin-syntax-top-level-await": { 1669 | "version": "7.8.3", 1670 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.8.3.tgz", 1671 | "integrity": "sha512-kwj1j9lL/6Wd0hROD3b/OZZ7MSrZLqqn9RAZ5+cYYsflQ9HZBIKCUkr3+uL1MEJ1NePiUbf98jjiMQSv0NMR9g==", 1672 | "dev": true, 1673 | "requires": { 1674 | "@babel/helper-plugin-utils": "^7.8.3" 1675 | } 1676 | }, 1677 | "@babel/plugin-transform-arrow-functions": { 1678 | "version": "7.8.3", 1679 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.8.3.tgz", 1680 | "integrity": "sha512-0MRF+KC8EqH4dbuITCWwPSzsyO3HIWWlm30v8BbbpOrS1B++isGxPnnuq/IZvOX5J2D/p7DQalQm+/2PnlKGxg==", 1681 | "dev": true, 1682 | "requires": { 1683 | "@babel/helper-plugin-utils": "^7.8.3" 1684 | } 1685 | }, 1686 | "@babel/plugin-transform-async-to-generator": { 1687 | "version": "7.8.3", 1688 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.8.3.tgz", 1689 | "integrity": "sha512-imt9tFLD9ogt56Dd5CI/6XgpukMwd/fLGSrix2httihVe7LOGVPhyhMh1BU5kDM7iHD08i8uUtmV2sWaBFlHVQ==", 1690 | "dev": true, 1691 | "requires": { 1692 | "@babel/helper-module-imports": "^7.8.3", 1693 | "@babel/helper-plugin-utils": "^7.8.3", 1694 | "@babel/helper-remap-async-to-generator": "^7.8.3" 1695 | } 1696 | }, 1697 | "@babel/plugin-transform-block-scoped-functions": { 1698 | "version": "7.8.3", 1699 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.8.3.tgz", 1700 | "integrity": "sha512-vo4F2OewqjbB1+yaJ7k2EJFHlTP3jR634Z9Cj9itpqNjuLXvhlVxgnjsHsdRgASR8xYDrx6onw4vW5H6We0Jmg==", 1701 | "dev": true, 1702 | "requires": { 1703 | "@babel/helper-plugin-utils": "^7.8.3" 1704 | } 1705 | }, 1706 | "@babel/plugin-transform-block-scoping": { 1707 | "version": "7.8.3", 1708 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.8.3.tgz", 1709 | "integrity": "sha512-pGnYfm7RNRgYRi7bids5bHluENHqJhrV4bCZRwc5GamaWIIs07N4rZECcmJL6ZClwjDz1GbdMZFtPs27hTB06w==", 1710 | "dev": true, 1711 | "requires": { 1712 | "@babel/helper-plugin-utils": "^7.8.3", 1713 | "lodash": "^4.17.13" 1714 | } 1715 | }, 1716 | "@babel/plugin-transform-classes": { 1717 | "version": "7.8.3", 1718 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.8.3.tgz", 1719 | "integrity": "sha512-SjT0cwFJ+7Rbr1vQsvphAHwUHvSUPmMjMU/0P59G8U2HLFqSa082JO7zkbDNWs9kH/IUqpHI6xWNesGf8haF1w==", 1720 | "dev": true, 1721 | "requires": { 1722 | "@babel/helper-annotate-as-pure": "^7.8.3", 1723 | "@babel/helper-define-map": "^7.8.3", 1724 | "@babel/helper-function-name": "^7.8.3", 1725 | "@babel/helper-optimise-call-expression": "^7.8.3", 1726 | "@babel/helper-plugin-utils": "^7.8.3", 1727 | "@babel/helper-replace-supers": "^7.8.3", 1728 | "@babel/helper-split-export-declaration": "^7.8.3", 1729 | "globals": "^11.1.0" 1730 | }, 1731 | "dependencies": { 1732 | "globals": { 1733 | "version": "11.12.0", 1734 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", 1735 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", 1736 | "dev": true 1737 | } 1738 | } 1739 | }, 1740 | "@babel/plugin-transform-computed-properties": { 1741 | "version": "7.8.3", 1742 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.8.3.tgz", 1743 | "integrity": "sha512-O5hiIpSyOGdrQZRQ2ccwtTVkgUDBBiCuK//4RJ6UfePllUTCENOzKxfh6ulckXKc0DixTFLCfb2HVkNA7aDpzA==", 1744 | "dev": true, 1745 | "requires": { 1746 | "@babel/helper-plugin-utils": "^7.8.3" 1747 | } 1748 | }, 1749 | "@babel/plugin-transform-destructuring": { 1750 | "version": "7.8.3", 1751 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.8.3.tgz", 1752 | "integrity": "sha512-H4X646nCkiEcHZUZaRkhE2XVsoz0J/1x3VVujnn96pSoGCtKPA99ZZA+va+gK+92Zycd6OBKCD8tDb/731bhgQ==", 1753 | "dev": true, 1754 | "requires": { 1755 | "@babel/helper-plugin-utils": "^7.8.3" 1756 | } 1757 | }, 1758 | "@babel/plugin-transform-dotall-regex": { 1759 | "version": "7.8.3", 1760 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.8.3.tgz", 1761 | "integrity": "sha512-kLs1j9Nn4MQoBYdRXH6AeaXMbEJFaFu/v1nQkvib6QzTj8MZI5OQzqmD83/2jEM1z0DLilra5aWO5YpyC0ALIw==", 1762 | "dev": true, 1763 | "requires": { 1764 | "@babel/helper-create-regexp-features-plugin": "^7.8.3", 1765 | "@babel/helper-plugin-utils": "^7.8.3" 1766 | } 1767 | }, 1768 | "@babel/plugin-transform-duplicate-keys": { 1769 | "version": "7.8.3", 1770 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.8.3.tgz", 1771 | "integrity": "sha512-s8dHiBUbcbSgipS4SMFuWGqCvyge5V2ZeAWzR6INTVC3Ltjig/Vw1G2Gztv0vU/hRG9X8IvKvYdoksnUfgXOEQ==", 1772 | "dev": true, 1773 | "requires": { 1774 | "@babel/helper-plugin-utils": "^7.8.3" 1775 | } 1776 | }, 1777 | "@babel/plugin-transform-exponentiation-operator": { 1778 | "version": "7.8.3", 1779 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.8.3.tgz", 1780 | "integrity": "sha512-zwIpuIymb3ACcInbksHaNcR12S++0MDLKkiqXHl3AzpgdKlFNhog+z/K0+TGW+b0w5pgTq4H6IwV/WhxbGYSjQ==", 1781 | "dev": true, 1782 | "requires": { 1783 | "@babel/helper-builder-binary-assignment-operator-visitor": "^7.8.3", 1784 | "@babel/helper-plugin-utils": "^7.8.3" 1785 | } 1786 | }, 1787 | "@babel/plugin-transform-for-of": { 1788 | "version": "7.8.4", 1789 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.8.4.tgz", 1790 | "integrity": "sha512-iAXNlOWvcYUYoV8YIxwS7TxGRJcxyl8eQCfT+A5j8sKUzRFvJdcyjp97jL2IghWSRDaL2PU2O2tX8Cu9dTBq5A==", 1791 | "dev": true, 1792 | "requires": { 1793 | "@babel/helper-plugin-utils": "^7.8.3" 1794 | } 1795 | }, 1796 | "@babel/plugin-transform-function-name": { 1797 | "version": "7.8.3", 1798 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.8.3.tgz", 1799 | "integrity": "sha512-rO/OnDS78Eifbjn5Py9v8y0aR+aSYhDhqAwVfsTl0ERuMZyr05L1aFSCJnbv2mmsLkit/4ReeQ9N2BgLnOcPCQ==", 1800 | "dev": true, 1801 | "requires": { 1802 | "@babel/helper-function-name": "^7.8.3", 1803 | "@babel/helper-plugin-utils": "^7.8.3" 1804 | } 1805 | }, 1806 | "@babel/plugin-transform-literals": { 1807 | "version": "7.8.3", 1808 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.8.3.tgz", 1809 | "integrity": "sha512-3Tqf8JJ/qB7TeldGl+TT55+uQei9JfYaregDcEAyBZ7akutriFrt6C/wLYIer6OYhleVQvH/ntEhjE/xMmy10A==", 1810 | "dev": true, 1811 | "requires": { 1812 | "@babel/helper-plugin-utils": "^7.8.3" 1813 | } 1814 | }, 1815 | "@babel/plugin-transform-member-expression-literals": { 1816 | "version": "7.8.3", 1817 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.8.3.tgz", 1818 | "integrity": "sha512-3Wk2EXhnw+rP+IDkK6BdtPKsUE5IeZ6QOGrPYvw52NwBStw9V1ZVzxgK6fSKSxqUvH9eQPR3tm3cOq79HlsKYA==", 1819 | "dev": true, 1820 | "requires": { 1821 | "@babel/helper-plugin-utils": "^7.8.3" 1822 | } 1823 | }, 1824 | "@babel/plugin-transform-modules-amd": { 1825 | "version": "7.8.3", 1826 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.8.3.tgz", 1827 | "integrity": "sha512-MadJiU3rLKclzT5kBH4yxdry96odTUwuqrZM+GllFI/VhxfPz+k9MshJM+MwhfkCdxxclSbSBbUGciBngR+kEQ==", 1828 | "dev": true, 1829 | "requires": { 1830 | "@babel/helper-module-transforms": "^7.8.3", 1831 | "@babel/helper-plugin-utils": "^7.8.3", 1832 | "babel-plugin-dynamic-import-node": "^2.3.0" 1833 | } 1834 | }, 1835 | "@babel/plugin-transform-modules-commonjs": { 1836 | "version": "7.8.3", 1837 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.8.3.tgz", 1838 | "integrity": "sha512-JpdMEfA15HZ/1gNuB9XEDlZM1h/gF/YOH7zaZzQu2xCFRfwc01NXBMHHSTT6hRjlXJJs5x/bfODM3LiCk94Sxg==", 1839 | "dev": true, 1840 | "requires": { 1841 | "@babel/helper-module-transforms": "^7.8.3", 1842 | "@babel/helper-plugin-utils": "^7.8.3", 1843 | "@babel/helper-simple-access": "^7.8.3", 1844 | "babel-plugin-dynamic-import-node": "^2.3.0" 1845 | } 1846 | }, 1847 | "@babel/plugin-transform-modules-systemjs": { 1848 | "version": "7.8.3", 1849 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.8.3.tgz", 1850 | "integrity": "sha512-8cESMCJjmArMYqa9AO5YuMEkE4ds28tMpZcGZB/jl3n0ZzlsxOAi3mC+SKypTfT8gjMupCnd3YiXCkMjj2jfOg==", 1851 | "dev": true, 1852 | "requires": { 1853 | "@babel/helper-hoist-variables": "^7.8.3", 1854 | "@babel/helper-module-transforms": "^7.8.3", 1855 | "@babel/helper-plugin-utils": "^7.8.3", 1856 | "babel-plugin-dynamic-import-node": "^2.3.0" 1857 | } 1858 | }, 1859 | "@babel/plugin-transform-modules-umd": { 1860 | "version": "7.8.3", 1861 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.8.3.tgz", 1862 | "integrity": "sha512-evhTyWhbwbI3/U6dZAnx/ePoV7H6OUG+OjiJFHmhr9FPn0VShjwC2kdxqIuQ/+1P50TMrneGzMeyMTFOjKSnAw==", 1863 | "dev": true, 1864 | "requires": { 1865 | "@babel/helper-module-transforms": "^7.8.3", 1866 | "@babel/helper-plugin-utils": "^7.8.3" 1867 | } 1868 | }, 1869 | "@babel/plugin-transform-named-capturing-groups-regex": { 1870 | "version": "7.8.3", 1871 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.8.3.tgz", 1872 | "integrity": "sha512-f+tF/8UVPU86TrCb06JoPWIdDpTNSGGcAtaD9mLP0aYGA0OS0j7j7DHJR0GTFrUZPUU6loZhbsVZgTh0N+Qdnw==", 1873 | "dev": true, 1874 | "requires": { 1875 | "@babel/helper-create-regexp-features-plugin": "^7.8.3" 1876 | } 1877 | }, 1878 | "@babel/plugin-transform-new-target": { 1879 | "version": "7.8.3", 1880 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.8.3.tgz", 1881 | "integrity": "sha512-QuSGysibQpyxexRyui2vca+Cmbljo8bcRckgzYV4kRIsHpVeyeC3JDO63pY+xFZ6bWOBn7pfKZTqV4o/ix9sFw==", 1882 | "dev": true, 1883 | "requires": { 1884 | "@babel/helper-plugin-utils": "^7.8.3" 1885 | } 1886 | }, 1887 | "@babel/plugin-transform-object-super": { 1888 | "version": "7.8.3", 1889 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.8.3.tgz", 1890 | "integrity": "sha512-57FXk+gItG/GejofIyLIgBKTas4+pEU47IXKDBWFTxdPd7F80H8zybyAY7UoblVfBhBGs2EKM+bJUu2+iUYPDQ==", 1891 | "dev": true, 1892 | "requires": { 1893 | "@babel/helper-plugin-utils": "^7.8.3", 1894 | "@babel/helper-replace-supers": "^7.8.3" 1895 | } 1896 | }, 1897 | "@babel/plugin-transform-parameters": { 1898 | "version": "7.8.4", 1899 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.8.4.tgz", 1900 | "integrity": "sha512-IsS3oTxeTsZlE5KqzTbcC2sV0P9pXdec53SU+Yxv7o/6dvGM5AkTotQKhoSffhNgZ/dftsSiOoxy7evCYJXzVA==", 1901 | "dev": true, 1902 | "requires": { 1903 | "@babel/helper-call-delegate": "^7.8.3", 1904 | "@babel/helper-get-function-arity": "^7.8.3", 1905 | "@babel/helper-plugin-utils": "^7.8.3" 1906 | } 1907 | }, 1908 | "@babel/plugin-transform-property-literals": { 1909 | "version": "7.8.3", 1910 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.8.3.tgz", 1911 | "integrity": "sha512-uGiiXAZMqEoQhRWMK17VospMZh5sXWg+dlh2soffpkAl96KAm+WZuJfa6lcELotSRmooLqg0MWdH6UUq85nmmg==", 1912 | "dev": true, 1913 | "requires": { 1914 | "@babel/helper-plugin-utils": "^7.8.3" 1915 | } 1916 | }, 1917 | "@babel/plugin-transform-regenerator": { 1918 | "version": "7.8.3", 1919 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.8.3.tgz", 1920 | "integrity": "sha512-qt/kcur/FxrQrzFR432FGZznkVAjiyFtCOANjkAKwCbt465L6ZCiUQh2oMYGU3Wo8LRFJxNDFwWn106S5wVUNA==", 1921 | "dev": true, 1922 | "requires": { 1923 | "regenerator-transform": "^0.14.0" 1924 | }, 1925 | "dependencies": { 1926 | "regenerator-transform": { 1927 | "version": "0.14.1", 1928 | "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.1.tgz", 1929 | "integrity": "sha512-flVuee02C3FKRISbxhXl9mGzdbWUVHubl1SMaknjxkFB1/iqpJhArQUvRxOOPEc/9tAiX0BaQ28FJH10E4isSQ==", 1930 | "dev": true, 1931 | "requires": { 1932 | "private": "^0.1.6" 1933 | } 1934 | } 1935 | } 1936 | }, 1937 | "@babel/plugin-transform-reserved-words": { 1938 | "version": "7.8.3", 1939 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.8.3.tgz", 1940 | "integrity": "sha512-mwMxcycN3omKFDjDQUl+8zyMsBfjRFr0Zn/64I41pmjv4NJuqcYlEtezwYtw9TFd9WR1vN5kiM+O0gMZzO6L0A==", 1941 | "dev": true, 1942 | "requires": { 1943 | "@babel/helper-plugin-utils": "^7.8.3" 1944 | } 1945 | }, 1946 | "@babel/plugin-transform-shorthand-properties": { 1947 | "version": "7.8.3", 1948 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.8.3.tgz", 1949 | "integrity": "sha512-I9DI6Odg0JJwxCHzbzW08ggMdCezoWcuQRz3ptdudgwaHxTjxw5HgdFJmZIkIMlRymL6YiZcped4TTCB0JcC8w==", 1950 | "dev": true, 1951 | "requires": { 1952 | "@babel/helper-plugin-utils": "^7.8.3" 1953 | } 1954 | }, 1955 | "@babel/plugin-transform-spread": { 1956 | "version": "7.8.3", 1957 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.8.3.tgz", 1958 | "integrity": "sha512-CkuTU9mbmAoFOI1tklFWYYbzX5qCIZVXPVy0jpXgGwkplCndQAa58s2jr66fTeQnA64bDox0HL4U56CFYoyC7g==", 1959 | "dev": true, 1960 | "requires": { 1961 | "@babel/helper-plugin-utils": "^7.8.3" 1962 | } 1963 | }, 1964 | "@babel/plugin-transform-sticky-regex": { 1965 | "version": "7.8.3", 1966 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.8.3.tgz", 1967 | "integrity": "sha512-9Spq0vGCD5Bb4Z/ZXXSK5wbbLFMG085qd2vhL1JYu1WcQ5bXqZBAYRzU1d+p79GcHs2szYv5pVQCX13QgldaWw==", 1968 | "dev": true, 1969 | "requires": { 1970 | "@babel/helper-plugin-utils": "^7.8.3", 1971 | "@babel/helper-regex": "^7.8.3" 1972 | } 1973 | }, 1974 | "@babel/plugin-transform-template-literals": { 1975 | "version": "7.8.3", 1976 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.8.3.tgz", 1977 | "integrity": "sha512-820QBtykIQOLFT8NZOcTRJ1UNuztIELe4p9DCgvj4NK+PwluSJ49we7s9FB1HIGNIYT7wFUJ0ar2QpCDj0escQ==", 1978 | "dev": true, 1979 | "requires": { 1980 | "@babel/helper-annotate-as-pure": "^7.8.3", 1981 | "@babel/helper-plugin-utils": "^7.8.3" 1982 | } 1983 | }, 1984 | "@babel/plugin-transform-typeof-symbol": { 1985 | "version": "7.8.4", 1986 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.8.4.tgz", 1987 | "integrity": "sha512-2QKyfjGdvuNfHsb7qnBBlKclbD4CfshH2KvDabiijLMGXPHJXGxtDzwIF7bQP+T0ysw8fYTtxPafgfs/c1Lrqg==", 1988 | "dev": true, 1989 | "requires": { 1990 | "@babel/helper-plugin-utils": "^7.8.3" 1991 | } 1992 | }, 1993 | "@babel/plugin-transform-unicode-regex": { 1994 | "version": "7.8.3", 1995 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.8.3.tgz", 1996 | "integrity": "sha512-+ufgJjYdmWfSQ+6NS9VGUR2ns8cjJjYbrbi11mZBTaWm+Fui/ncTLFF28Ei1okavY+xkojGr1eJxNsWYeA5aZw==", 1997 | "dev": true, 1998 | "requires": { 1999 | "@babel/helper-create-regexp-features-plugin": "^7.8.3", 2000 | "@babel/helper-plugin-utils": "^7.8.3" 2001 | } 2002 | }, 2003 | "@babel/preset-env": { 2004 | "version": "7.8.4", 2005 | "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.8.4.tgz", 2006 | "integrity": "sha512-HihCgpr45AnSOHRbS5cWNTINs0TwaR8BS8xIIH+QwiW8cKL0llV91njQMpeMReEPVs+1Ao0x3RLEBLtt1hOq4w==", 2007 | "dev": true, 2008 | "requires": { 2009 | "@babel/compat-data": "^7.8.4", 2010 | "@babel/helper-compilation-targets": "^7.8.4", 2011 | "@babel/helper-module-imports": "^7.8.3", 2012 | "@babel/helper-plugin-utils": "^7.8.3", 2013 | "@babel/plugin-proposal-async-generator-functions": "^7.8.3", 2014 | "@babel/plugin-proposal-dynamic-import": "^7.8.3", 2015 | "@babel/plugin-proposal-json-strings": "^7.8.3", 2016 | "@babel/plugin-proposal-nullish-coalescing-operator": "^7.8.3", 2017 | "@babel/plugin-proposal-object-rest-spread": "^7.8.3", 2018 | "@babel/plugin-proposal-optional-catch-binding": "^7.8.3", 2019 | "@babel/plugin-proposal-optional-chaining": "^7.8.3", 2020 | "@babel/plugin-proposal-unicode-property-regex": "^7.8.3", 2021 | "@babel/plugin-syntax-async-generators": "^7.8.0", 2022 | "@babel/plugin-syntax-dynamic-import": "^7.8.0", 2023 | "@babel/plugin-syntax-json-strings": "^7.8.0", 2024 | "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", 2025 | "@babel/plugin-syntax-object-rest-spread": "^7.8.0", 2026 | "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", 2027 | "@babel/plugin-syntax-optional-chaining": "^7.8.0", 2028 | "@babel/plugin-syntax-top-level-await": "^7.8.3", 2029 | "@babel/plugin-transform-arrow-functions": "^7.8.3", 2030 | "@babel/plugin-transform-async-to-generator": "^7.8.3", 2031 | "@babel/plugin-transform-block-scoped-functions": "^7.8.3", 2032 | "@babel/plugin-transform-block-scoping": "^7.8.3", 2033 | "@babel/plugin-transform-classes": "^7.8.3", 2034 | "@babel/plugin-transform-computed-properties": "^7.8.3", 2035 | "@babel/plugin-transform-destructuring": "^7.8.3", 2036 | "@babel/plugin-transform-dotall-regex": "^7.8.3", 2037 | "@babel/plugin-transform-duplicate-keys": "^7.8.3", 2038 | "@babel/plugin-transform-exponentiation-operator": "^7.8.3", 2039 | "@babel/plugin-transform-for-of": "^7.8.4", 2040 | "@babel/plugin-transform-function-name": "^7.8.3", 2041 | "@babel/plugin-transform-literals": "^7.8.3", 2042 | "@babel/plugin-transform-member-expression-literals": "^7.8.3", 2043 | "@babel/plugin-transform-modules-amd": "^7.8.3", 2044 | "@babel/plugin-transform-modules-commonjs": "^7.8.3", 2045 | "@babel/plugin-transform-modules-systemjs": "^7.8.3", 2046 | "@babel/plugin-transform-modules-umd": "^7.8.3", 2047 | "@babel/plugin-transform-named-capturing-groups-regex": "^7.8.3", 2048 | "@babel/plugin-transform-new-target": "^7.8.3", 2049 | "@babel/plugin-transform-object-super": "^7.8.3", 2050 | "@babel/plugin-transform-parameters": "^7.8.4", 2051 | "@babel/plugin-transform-property-literals": "^7.8.3", 2052 | "@babel/plugin-transform-regenerator": "^7.8.3", 2053 | "@babel/plugin-transform-reserved-words": "^7.8.3", 2054 | "@babel/plugin-transform-shorthand-properties": "^7.8.3", 2055 | "@babel/plugin-transform-spread": "^7.8.3", 2056 | "@babel/plugin-transform-sticky-regex": "^7.8.3", 2057 | "@babel/plugin-transform-template-literals": "^7.8.3", 2058 | "@babel/plugin-transform-typeof-symbol": "^7.8.4", 2059 | "@babel/plugin-transform-unicode-regex": "^7.8.3", 2060 | "@babel/types": "^7.8.3", 2061 | "browserslist": "^4.8.5", 2062 | "core-js-compat": "^3.6.2", 2063 | "invariant": "^2.2.2", 2064 | "levenary": "^1.1.1", 2065 | "semver": "^5.5.0" 2066 | } 2067 | }, 2068 | "@babel/register": { 2069 | "version": "7.8.3", 2070 | "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.8.3.tgz", 2071 | "integrity": "sha512-t7UqebaWwo9nXWClIPLPloa5pN33A2leVs8Hf0e9g9YwUP8/H9NeR7DJU+4CXo23QtjChQv5a3DjEtT83ih1rg==", 2072 | "dev": true, 2073 | "requires": { 2074 | "find-cache-dir": "^2.0.0", 2075 | "lodash": "^4.17.13", 2076 | "make-dir": "^2.1.0", 2077 | "pirates": "^4.0.0", 2078 | "source-map-support": "^0.5.16" 2079 | } 2080 | }, 2081 | "@babel/template": { 2082 | "version": "7.8.3", 2083 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", 2084 | "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", 2085 | "dev": true, 2086 | "requires": { 2087 | "@babel/code-frame": "^7.8.3", 2088 | "@babel/parser": "^7.8.3", 2089 | "@babel/types": "^7.8.3" 2090 | } 2091 | }, 2092 | "@babel/traverse": { 2093 | "version": "7.8.4", 2094 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.4.tgz", 2095 | "integrity": "sha512-NGLJPZwnVEyBPLI+bl9y9aSnxMhsKz42so7ApAv9D+b4vAFPpY013FTS9LdKxcABoIYFU52HcYga1pPlx454mg==", 2096 | "dev": true, 2097 | "requires": { 2098 | "@babel/code-frame": "^7.8.3", 2099 | "@babel/generator": "^7.8.4", 2100 | "@babel/helper-function-name": "^7.8.3", 2101 | "@babel/helper-split-export-declaration": "^7.8.3", 2102 | "@babel/parser": "^7.8.4", 2103 | "@babel/types": "^7.8.3", 2104 | "debug": "^4.1.0", 2105 | "globals": "^11.1.0", 2106 | "lodash": "^4.17.13" 2107 | }, 2108 | "dependencies": { 2109 | "debug": { 2110 | "version": "4.1.1", 2111 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", 2112 | "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", 2113 | "dev": true, 2114 | "requires": { 2115 | "ms": "^2.1.1" 2116 | } 2117 | }, 2118 | "globals": { 2119 | "version": "11.12.0", 2120 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", 2121 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", 2122 | "dev": true 2123 | }, 2124 | "ms": { 2125 | "version": "2.1.2", 2126 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 2127 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 2128 | "dev": true 2129 | } 2130 | } 2131 | }, 2132 | "@babel/types": { 2133 | "version": "7.8.3", 2134 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", 2135 | "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", 2136 | "dev": true, 2137 | "requires": { 2138 | "esutils": "^2.0.2", 2139 | "lodash": "^4.17.13", 2140 | "to-fast-properties": "^2.0.0" 2141 | }, 2142 | "dependencies": { 2143 | "to-fast-properties": { 2144 | "version": "2.0.0", 2145 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", 2146 | "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", 2147 | "dev": true 2148 | } 2149 | } 2150 | }, 2151 | "@sinonjs/commons": { 2152 | "version": "1.7.1", 2153 | "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.7.1.tgz", 2154 | "integrity": "sha512-Debi3Baff1Qu1Unc3mjJ96MgpbwTn43S1+9yJ0llWygPwDNu2aaWBD6yc9y/Z8XDRNhx7U+u2UDg2OGQXkclUQ==", 2155 | "dev": true, 2156 | "requires": { 2157 | "type-detect": "4.0.8" 2158 | } 2159 | }, 2160 | "@sinonjs/fake-timers": { 2161 | "version": "6.0.0", 2162 | "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.0.tgz", 2163 | "integrity": "sha512-atR1J/jRXvQAb47gfzSK8zavXy7BcpnYq21ALon0U99etu99vsir0trzIO3wpeLtW+LLVY6X7EkfVTbjGSH8Ww==", 2164 | "dev": true, 2165 | "requires": { 2166 | "@sinonjs/commons": "^1.7.0" 2167 | } 2168 | }, 2169 | "@sinonjs/formatio": { 2170 | "version": "5.0.1", 2171 | "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-5.0.1.tgz", 2172 | "integrity": "sha512-KaiQ5pBf1MpS09MuA0kp6KBQt2JUOQycqVG1NZXvzeaXe5LGFqAKueIS0bw4w0P9r7KuBSVdUk5QjXsUdu2CxQ==", 2173 | "dev": true, 2174 | "requires": { 2175 | "@sinonjs/commons": "^1", 2176 | "@sinonjs/samsam": "^5.0.2" 2177 | } 2178 | }, 2179 | "@sinonjs/samsam": { 2180 | "version": "5.0.2", 2181 | "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.0.2.tgz", 2182 | "integrity": "sha512-p3yrEVB5F/1wI+835n+X8llOGRgV8+jw5BHQ/cJoLBUXXZ5U8Tr5ApwPc4L4av/vjla48kVPoN0t6dykQm+Rvg==", 2183 | "dev": true, 2184 | "requires": { 2185 | "@sinonjs/commons": "^1.6.0", 2186 | "@sinonjs/formatio": "^5.0.0", 2187 | "lodash.get": "^4.4.2", 2188 | "type-detect": "^4.0.8" 2189 | } 2190 | }, 2191 | "@sinonjs/text-encoding": { 2192 | "version": "0.7.1", 2193 | "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", 2194 | "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", 2195 | "dev": true 2196 | }, 2197 | "ansi-colors": { 2198 | "version": "3.2.3", 2199 | "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", 2200 | "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", 2201 | "dev": true 2202 | }, 2203 | "argparse": { 2204 | "version": "1.0.10", 2205 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", 2206 | "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", 2207 | "dev": true, 2208 | "requires": { 2209 | "sprintf-js": "~1.0.2" 2210 | } 2211 | }, 2212 | "arr-union": { 2213 | "version": "3.1.0", 2214 | "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", 2215 | "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", 2216 | "dev": true, 2217 | "optional": true 2218 | }, 2219 | "assertion-error": { 2220 | "version": "1.1.0", 2221 | "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", 2222 | "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", 2223 | "dev": true 2224 | }, 2225 | "assign-symbols": { 2226 | "version": "1.0.0", 2227 | "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", 2228 | "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", 2229 | "dev": true, 2230 | "optional": true 2231 | }, 2232 | "async-each": { 2233 | "version": "1.0.1", 2234 | "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", 2235 | "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", 2236 | "dev": true, 2237 | "optional": true 2238 | }, 2239 | "atob": { 2240 | "version": "2.1.2", 2241 | "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", 2242 | "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", 2243 | "dev": true, 2244 | "optional": true 2245 | }, 2246 | "babel-plugin-dynamic-import-node": { 2247 | "version": "2.3.0", 2248 | "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz", 2249 | "integrity": "sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ==", 2250 | "dev": true, 2251 | "requires": { 2252 | "object.assign": "^4.1.0" 2253 | } 2254 | }, 2255 | "balanced-match": { 2256 | "version": "1.0.0", 2257 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 2258 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", 2259 | "dev": true 2260 | }, 2261 | "base": { 2262 | "version": "0.11.2", 2263 | "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", 2264 | "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", 2265 | "dev": true, 2266 | "optional": true, 2267 | "requires": { 2268 | "cache-base": "^1.0.1", 2269 | "class-utils": "^0.3.5", 2270 | "component-emitter": "^1.2.1", 2271 | "define-property": "^1.0.0", 2272 | "isobject": "^3.0.1", 2273 | "mixin-deep": "^1.2.0", 2274 | "pascalcase": "^0.1.1" 2275 | }, 2276 | "dependencies": { 2277 | "define-property": { 2278 | "version": "1.0.0", 2279 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 2280 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 2281 | "dev": true, 2282 | "optional": true, 2283 | "requires": { 2284 | "is-descriptor": "^1.0.0" 2285 | } 2286 | }, 2287 | "is-accessor-descriptor": { 2288 | "version": "1.0.0", 2289 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 2290 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 2291 | "dev": true, 2292 | "optional": true, 2293 | "requires": { 2294 | "kind-of": "^6.0.0" 2295 | } 2296 | }, 2297 | "is-data-descriptor": { 2298 | "version": "1.0.0", 2299 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 2300 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 2301 | "dev": true, 2302 | "optional": true, 2303 | "requires": { 2304 | "kind-of": "^6.0.0" 2305 | } 2306 | }, 2307 | "is-descriptor": { 2308 | "version": "1.0.2", 2309 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 2310 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 2311 | "dev": true, 2312 | "optional": true, 2313 | "requires": { 2314 | "is-accessor-descriptor": "^1.0.0", 2315 | "is-data-descriptor": "^1.0.0", 2316 | "kind-of": "^6.0.2" 2317 | } 2318 | }, 2319 | "isobject": { 2320 | "version": "3.0.1", 2321 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 2322 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 2323 | "dev": true, 2324 | "optional": true 2325 | }, 2326 | "kind-of": { 2327 | "version": "6.0.3", 2328 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 2329 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 2330 | "dev": true, 2331 | "optional": true 2332 | } 2333 | } 2334 | }, 2335 | "binary-extensions": { 2336 | "version": "1.8.0", 2337 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.8.0.tgz", 2338 | "integrity": "sha1-SOyNFt9Dd+rl+liEaCSAr02Vx3Q=", 2339 | "dev": true, 2340 | "optional": true 2341 | }, 2342 | "bindings": { 2343 | "version": "1.5.0", 2344 | "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", 2345 | "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", 2346 | "dev": true, 2347 | "optional": true, 2348 | "requires": { 2349 | "file-uri-to-path": "1.0.0" 2350 | } 2351 | }, 2352 | "brace-expansion": { 2353 | "version": "1.1.11", 2354 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 2355 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 2356 | "dev": true, 2357 | "requires": { 2358 | "balanced-match": "^1.0.0", 2359 | "concat-map": "0.0.1" 2360 | } 2361 | }, 2362 | "browser-stdout": { 2363 | "version": "1.3.1", 2364 | "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", 2365 | "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", 2366 | "dev": true 2367 | }, 2368 | "browserslist": { 2369 | "version": "4.8.7", 2370 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.8.7.tgz", 2371 | "integrity": "sha512-gFOnZNYBHrEyUML0xr5NJ6edFaaKbTFX9S9kQHlYfCP0Rit/boRIz4G+Avq6/4haEKJXdGGUnoolx+5MWW2BoA==", 2372 | "dev": true, 2373 | "requires": { 2374 | "caniuse-lite": "^1.0.30001027", 2375 | "electron-to-chromium": "^1.3.349", 2376 | "node-releases": "^1.1.49" 2377 | } 2378 | }, 2379 | "buffer-from": { 2380 | "version": "1.1.1", 2381 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", 2382 | "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", 2383 | "dev": true 2384 | }, 2385 | "buffer-shims": { 2386 | "version": "1.0.0", 2387 | "resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", 2388 | "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=", 2389 | "dev": true, 2390 | "optional": true 2391 | }, 2392 | "cache-base": { 2393 | "version": "1.0.1", 2394 | "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", 2395 | "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", 2396 | "dev": true, 2397 | "optional": true, 2398 | "requires": { 2399 | "collection-visit": "^1.0.0", 2400 | "component-emitter": "^1.2.1", 2401 | "get-value": "^2.0.6", 2402 | "has-value": "^1.0.0", 2403 | "isobject": "^3.0.1", 2404 | "set-value": "^2.0.0", 2405 | "to-object-path": "^0.3.0", 2406 | "union-value": "^1.0.0", 2407 | "unset-value": "^1.0.0" 2408 | }, 2409 | "dependencies": { 2410 | "isobject": { 2411 | "version": "3.0.1", 2412 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 2413 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 2414 | "dev": true, 2415 | "optional": true 2416 | } 2417 | } 2418 | }, 2419 | "camelcase": { 2420 | "version": "5.3.1", 2421 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", 2422 | "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", 2423 | "dev": true 2424 | }, 2425 | "caniuse-lite": { 2426 | "version": "1.0.30001028", 2427 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001028.tgz", 2428 | "integrity": "sha512-Vnrq+XMSHpT7E+LWoIYhs3Sne8h9lx9YJV3acH3THNCwU/9zV93/ta4xVfzTtnqd3rvnuVpVjE3DFqf56tr3aQ==", 2429 | "dev": true 2430 | }, 2431 | "chai": { 2432 | "version": "4.2.0", 2433 | "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", 2434 | "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", 2435 | "dev": true, 2436 | "requires": { 2437 | "assertion-error": "^1.1.0", 2438 | "check-error": "^1.0.2", 2439 | "deep-eql": "^3.0.1", 2440 | "get-func-name": "^2.0.0", 2441 | "pathval": "^1.1.0", 2442 | "type-detect": "^4.0.5" 2443 | } 2444 | }, 2445 | "check-error": { 2446 | "version": "1.0.2", 2447 | "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", 2448 | "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", 2449 | "dev": true 2450 | }, 2451 | "class-utils": { 2452 | "version": "0.3.6", 2453 | "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", 2454 | "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", 2455 | "dev": true, 2456 | "optional": true, 2457 | "requires": { 2458 | "arr-union": "^3.1.0", 2459 | "define-property": "^0.2.5", 2460 | "isobject": "^3.0.0", 2461 | "static-extend": "^0.1.1" 2462 | }, 2463 | "dependencies": { 2464 | "define-property": { 2465 | "version": "0.2.5", 2466 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 2467 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 2468 | "dev": true, 2469 | "optional": true, 2470 | "requires": { 2471 | "is-descriptor": "^0.1.0" 2472 | } 2473 | }, 2474 | "isobject": { 2475 | "version": "3.0.1", 2476 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 2477 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 2478 | "dev": true, 2479 | "optional": true 2480 | } 2481 | } 2482 | }, 2483 | "cliui": { 2484 | "version": "5.0.0", 2485 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", 2486 | "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", 2487 | "dev": true, 2488 | "requires": { 2489 | "string-width": "^3.1.0", 2490 | "strip-ansi": "^5.2.0", 2491 | "wrap-ansi": "^5.1.0" 2492 | }, 2493 | "dependencies": { 2494 | "ansi-regex": { 2495 | "version": "4.1.0", 2496 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", 2497 | "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", 2498 | "dev": true 2499 | }, 2500 | "string-width": { 2501 | "version": "3.1.0", 2502 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", 2503 | "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", 2504 | "dev": true, 2505 | "requires": { 2506 | "emoji-regex": "^7.0.1", 2507 | "is-fullwidth-code-point": "^2.0.0", 2508 | "strip-ansi": "^5.1.0" 2509 | } 2510 | }, 2511 | "strip-ansi": { 2512 | "version": "5.2.0", 2513 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", 2514 | "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", 2515 | "dev": true, 2516 | "requires": { 2517 | "ansi-regex": "^4.1.0" 2518 | } 2519 | } 2520 | } 2521 | }, 2522 | "collection-visit": { 2523 | "version": "1.0.0", 2524 | "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", 2525 | "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", 2526 | "dev": true, 2527 | "optional": true, 2528 | "requires": { 2529 | "map-visit": "^1.0.0", 2530 | "object-visit": "^1.0.0" 2531 | } 2532 | }, 2533 | "color-convert": { 2534 | "version": "1.9.3", 2535 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", 2536 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", 2537 | "dev": true, 2538 | "requires": { 2539 | "color-name": "1.1.3" 2540 | } 2541 | }, 2542 | "color-name": { 2543 | "version": "1.1.3", 2544 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 2545 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", 2546 | "dev": true 2547 | }, 2548 | "commander": { 2549 | "version": "4.1.1", 2550 | "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", 2551 | "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", 2552 | "dev": true 2553 | }, 2554 | "commondir": { 2555 | "version": "1.0.1", 2556 | "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", 2557 | "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", 2558 | "dev": true 2559 | }, 2560 | "component-emitter": { 2561 | "version": "1.3.0", 2562 | "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", 2563 | "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", 2564 | "dev": true, 2565 | "optional": true 2566 | }, 2567 | "concat-map": { 2568 | "version": "0.0.1", 2569 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 2570 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 2571 | "dev": true 2572 | }, 2573 | "convert-source-map": { 2574 | "version": "1.5.0", 2575 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.0.tgz", 2576 | "integrity": "sha1-ms1whRxtXf3ZPZKC5e35SgP/RrU=", 2577 | "dev": true 2578 | }, 2579 | "copy-descriptor": { 2580 | "version": "0.1.1", 2581 | "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", 2582 | "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", 2583 | "dev": true, 2584 | "optional": true 2585 | }, 2586 | "core-js": { 2587 | "version": "3.6.4", 2588 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.4.tgz", 2589 | "integrity": "sha512-4paDGScNgZP2IXXilaffL9X7968RuvwlkK3xWtZRVqgd8SYNiVKRJvkFd1aqqEuPfN7E68ZHEp9hDj6lHj4Hyw==", 2590 | "dev": true 2591 | }, 2592 | "core-js-compat": { 2593 | "version": "3.6.4", 2594 | "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.4.tgz", 2595 | "integrity": "sha512-zAa3IZPvsJ0slViBQ2z+vgyyTuhd3MFn1rBQjZSKVEgB0UMYhUkCj9jJUVPgGTGqWvsBVmfnruXgTcNyTlEiSA==", 2596 | "dev": true, 2597 | "requires": { 2598 | "browserslist": "^4.8.3", 2599 | "semver": "7.0.0" 2600 | }, 2601 | "dependencies": { 2602 | "semver": { 2603 | "version": "7.0.0", 2604 | "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", 2605 | "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", 2606 | "dev": true 2607 | } 2608 | } 2609 | }, 2610 | "core-util-is": { 2611 | "version": "1.0.2", 2612 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 2613 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", 2614 | "dev": true, 2615 | "optional": true 2616 | }, 2617 | "debug": { 2618 | "version": "2.6.9", 2619 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 2620 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 2621 | "dev": true, 2622 | "optional": true, 2623 | "requires": { 2624 | "ms": "2.0.0" 2625 | } 2626 | }, 2627 | "decamelize": { 2628 | "version": "1.2.0", 2629 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", 2630 | "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", 2631 | "dev": true 2632 | }, 2633 | "decode-uri-component": { 2634 | "version": "0.2.0", 2635 | "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", 2636 | "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", 2637 | "dev": true, 2638 | "optional": true 2639 | }, 2640 | "deep-eql": { 2641 | "version": "3.0.1", 2642 | "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", 2643 | "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", 2644 | "dev": true, 2645 | "requires": { 2646 | "type-detect": "^4.0.0" 2647 | } 2648 | }, 2649 | "define-properties": { 2650 | "version": "1.1.3", 2651 | "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", 2652 | "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", 2653 | "dev": true, 2654 | "requires": { 2655 | "object-keys": "^1.0.12" 2656 | } 2657 | }, 2658 | "define-property": { 2659 | "version": "2.0.2", 2660 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", 2661 | "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", 2662 | "dev": true, 2663 | "optional": true, 2664 | "requires": { 2665 | "is-descriptor": "^1.0.2", 2666 | "isobject": "^3.0.1" 2667 | }, 2668 | "dependencies": { 2669 | "is-accessor-descriptor": { 2670 | "version": "1.0.0", 2671 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 2672 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 2673 | "dev": true, 2674 | "optional": true, 2675 | "requires": { 2676 | "kind-of": "^6.0.0" 2677 | } 2678 | }, 2679 | "is-data-descriptor": { 2680 | "version": "1.0.0", 2681 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 2682 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 2683 | "dev": true, 2684 | "optional": true, 2685 | "requires": { 2686 | "kind-of": "^6.0.0" 2687 | } 2688 | }, 2689 | "is-descriptor": { 2690 | "version": "1.0.2", 2691 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 2692 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 2693 | "dev": true, 2694 | "optional": true, 2695 | "requires": { 2696 | "is-accessor-descriptor": "^1.0.0", 2697 | "is-data-descriptor": "^1.0.0", 2698 | "kind-of": "^6.0.2" 2699 | } 2700 | }, 2701 | "isobject": { 2702 | "version": "3.0.1", 2703 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 2704 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 2705 | "dev": true, 2706 | "optional": true 2707 | }, 2708 | "kind-of": { 2709 | "version": "6.0.3", 2710 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 2711 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 2712 | "dev": true, 2713 | "optional": true 2714 | } 2715 | } 2716 | }, 2717 | "diff": { 2718 | "version": "3.5.0", 2719 | "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", 2720 | "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", 2721 | "dev": true 2722 | }, 2723 | "electron-to-chromium": { 2724 | "version": "1.3.359", 2725 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.359.tgz", 2726 | "integrity": "sha512-ewZp4BQftbLclBwmFYoTrlyiLMXQTiYeqh1hn24sWao9bGhUHzQtpytymN8JsenWlQ9SbBWynTPvfghb0Ipn1Q==", 2727 | "dev": true 2728 | }, 2729 | "emoji-regex": { 2730 | "version": "7.0.3", 2731 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", 2732 | "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", 2733 | "dev": true 2734 | }, 2735 | "es-abstract": { 2736 | "version": "1.17.4", 2737 | "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.4.tgz", 2738 | "integrity": "sha512-Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==", 2739 | "dev": true, 2740 | "requires": { 2741 | "es-to-primitive": "^1.2.1", 2742 | "function-bind": "^1.1.1", 2743 | "has": "^1.0.3", 2744 | "has-symbols": "^1.0.1", 2745 | "is-callable": "^1.1.5", 2746 | "is-regex": "^1.0.5", 2747 | "object-inspect": "^1.7.0", 2748 | "object-keys": "^1.1.1", 2749 | "object.assign": "^4.1.0", 2750 | "string.prototype.trimleft": "^2.1.1", 2751 | "string.prototype.trimright": "^2.1.1" 2752 | } 2753 | }, 2754 | "es-to-primitive": { 2755 | "version": "1.2.1", 2756 | "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", 2757 | "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", 2758 | "dev": true, 2759 | "requires": { 2760 | "is-callable": "^1.1.4", 2761 | "is-date-object": "^1.0.1", 2762 | "is-symbol": "^1.0.2" 2763 | } 2764 | }, 2765 | "escape-string-regexp": { 2766 | "version": "1.0.5", 2767 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 2768 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", 2769 | "dev": true 2770 | }, 2771 | "esprima": { 2772 | "version": "4.0.1", 2773 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", 2774 | "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", 2775 | "dev": true 2776 | }, 2777 | "esutils": { 2778 | "version": "2.0.2", 2779 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", 2780 | "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", 2781 | "dev": true 2782 | }, 2783 | "extend-shallow": { 2784 | "version": "3.0.2", 2785 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", 2786 | "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", 2787 | "dev": true, 2788 | "optional": true, 2789 | "requires": { 2790 | "assign-symbols": "^1.0.0", 2791 | "is-extendable": "^1.0.1" 2792 | }, 2793 | "dependencies": { 2794 | "is-extendable": { 2795 | "version": "1.0.1", 2796 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", 2797 | "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", 2798 | "dev": true, 2799 | "optional": true, 2800 | "requires": { 2801 | "is-plain-object": "^2.0.4" 2802 | } 2803 | } 2804 | } 2805 | }, 2806 | "file-uri-to-path": { 2807 | "version": "1.0.0", 2808 | "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", 2809 | "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", 2810 | "dev": true, 2811 | "optional": true 2812 | }, 2813 | "find-cache-dir": { 2814 | "version": "2.1.0", 2815 | "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", 2816 | "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", 2817 | "dev": true, 2818 | "requires": { 2819 | "commondir": "^1.0.1", 2820 | "make-dir": "^2.0.0", 2821 | "pkg-dir": "^3.0.0" 2822 | } 2823 | }, 2824 | "find-up": { 2825 | "version": "3.0.0", 2826 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", 2827 | "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", 2828 | "dev": true, 2829 | "requires": { 2830 | "locate-path": "^3.0.0" 2831 | } 2832 | }, 2833 | "flat": { 2834 | "version": "4.1.0", 2835 | "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz", 2836 | "integrity": "sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==", 2837 | "dev": true, 2838 | "requires": { 2839 | "is-buffer": "~2.0.3" 2840 | }, 2841 | "dependencies": { 2842 | "is-buffer": { 2843 | "version": "2.0.4", 2844 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz", 2845 | "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==", 2846 | "dev": true 2847 | } 2848 | } 2849 | }, 2850 | "for-in": { 2851 | "version": "1.0.2", 2852 | "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", 2853 | "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", 2854 | "dev": true, 2855 | "optional": true 2856 | }, 2857 | "fragment-cache": { 2858 | "version": "0.2.1", 2859 | "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", 2860 | "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", 2861 | "dev": true, 2862 | "optional": true, 2863 | "requires": { 2864 | "map-cache": "^0.2.2" 2865 | } 2866 | }, 2867 | "fs.realpath": { 2868 | "version": "1.0.0", 2869 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 2870 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", 2871 | "dev": true 2872 | }, 2873 | "function-bind": { 2874 | "version": "1.1.1", 2875 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 2876 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", 2877 | "dev": true 2878 | }, 2879 | "gensync": { 2880 | "version": "1.0.0-beta.1", 2881 | "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", 2882 | "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", 2883 | "dev": true 2884 | }, 2885 | "get-caller-file": { 2886 | "version": "2.0.5", 2887 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", 2888 | "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", 2889 | "dev": true 2890 | }, 2891 | "get-func-name": { 2892 | "version": "2.0.0", 2893 | "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", 2894 | "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", 2895 | "dev": true 2896 | }, 2897 | "get-value": { 2898 | "version": "2.0.6", 2899 | "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", 2900 | "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", 2901 | "dev": true, 2902 | "optional": true 2903 | }, 2904 | "glob": { 2905 | "version": "7.1.1", 2906 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", 2907 | "integrity": "sha1-gFIR3wT6rxxjo2ADBs31reULLsg=", 2908 | "dev": true, 2909 | "requires": { 2910 | "fs.realpath": "^1.0.0", 2911 | "inflight": "^1.0.4", 2912 | "inherits": "2", 2913 | "minimatch": "^3.0.2", 2914 | "once": "^1.3.0", 2915 | "path-is-absolute": "^1.0.0" 2916 | } 2917 | }, 2918 | "graceful-fs": { 2919 | "version": "4.1.11", 2920 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", 2921 | "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", 2922 | "dev": true, 2923 | "optional": true 2924 | }, 2925 | "growl": { 2926 | "version": "1.10.5", 2927 | "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", 2928 | "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", 2929 | "dev": true 2930 | }, 2931 | "has": { 2932 | "version": "1.0.3", 2933 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 2934 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 2935 | "dev": true, 2936 | "requires": { 2937 | "function-bind": "^1.1.1" 2938 | } 2939 | }, 2940 | "has-flag": { 2941 | "version": "3.0.0", 2942 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 2943 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", 2944 | "dev": true 2945 | }, 2946 | "has-symbols": { 2947 | "version": "1.0.1", 2948 | "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", 2949 | "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", 2950 | "dev": true 2951 | }, 2952 | "has-value": { 2953 | "version": "1.0.0", 2954 | "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", 2955 | "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", 2956 | "dev": true, 2957 | "optional": true, 2958 | "requires": { 2959 | "get-value": "^2.0.6", 2960 | "has-values": "^1.0.0", 2961 | "isobject": "^3.0.0" 2962 | }, 2963 | "dependencies": { 2964 | "isobject": { 2965 | "version": "3.0.1", 2966 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 2967 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 2968 | "dev": true, 2969 | "optional": true 2970 | } 2971 | } 2972 | }, 2973 | "has-values": { 2974 | "version": "1.0.0", 2975 | "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", 2976 | "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", 2977 | "dev": true, 2978 | "optional": true, 2979 | "requires": { 2980 | "is-number": "^3.0.0", 2981 | "kind-of": "^4.0.0" 2982 | }, 2983 | "dependencies": { 2984 | "is-number": { 2985 | "version": "3.0.0", 2986 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 2987 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 2988 | "dev": true, 2989 | "optional": true, 2990 | "requires": { 2991 | "kind-of": "^3.0.2" 2992 | }, 2993 | "dependencies": { 2994 | "kind-of": { 2995 | "version": "3.2.2", 2996 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 2997 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 2998 | "dev": true, 2999 | "optional": true, 3000 | "requires": { 3001 | "is-buffer": "^1.1.5" 3002 | } 3003 | } 3004 | } 3005 | }, 3006 | "kind-of": { 3007 | "version": "4.0.0", 3008 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", 3009 | "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", 3010 | "dev": true, 3011 | "optional": true, 3012 | "requires": { 3013 | "is-buffer": "^1.1.5" 3014 | } 3015 | } 3016 | } 3017 | }, 3018 | "he": { 3019 | "version": "1.2.0", 3020 | "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", 3021 | "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", 3022 | "dev": true 3023 | }, 3024 | "homedir-polyfill": { 3025 | "version": "1.0.3", 3026 | "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", 3027 | "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", 3028 | "dev": true, 3029 | "requires": { 3030 | "parse-passwd": "^1.0.0" 3031 | } 3032 | }, 3033 | "inflight": { 3034 | "version": "1.0.6", 3035 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 3036 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 3037 | "dev": true, 3038 | "requires": { 3039 | "once": "^1.3.0", 3040 | "wrappy": "1" 3041 | } 3042 | }, 3043 | "inherits": { 3044 | "version": "2.0.4", 3045 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 3046 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 3047 | "dev": true 3048 | }, 3049 | "invariant": { 3050 | "version": "2.2.2", 3051 | "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", 3052 | "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", 3053 | "dev": true, 3054 | "requires": { 3055 | "loose-envify": "^1.0.0" 3056 | } 3057 | }, 3058 | "is-accessor-descriptor": { 3059 | "version": "0.1.6", 3060 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", 3061 | "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", 3062 | "dev": true, 3063 | "optional": true, 3064 | "requires": { 3065 | "kind-of": "^3.0.2" 3066 | } 3067 | }, 3068 | "is-binary-path": { 3069 | "version": "1.0.1", 3070 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", 3071 | "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", 3072 | "dev": true, 3073 | "optional": true, 3074 | "requires": { 3075 | "binary-extensions": "^1.0.0" 3076 | } 3077 | }, 3078 | "is-buffer": { 3079 | "version": "1.1.5", 3080 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.5.tgz", 3081 | "integrity": "sha1-Hzsm72E7IUuIy8ojzGwB2Hlh7sw=", 3082 | "dev": true, 3083 | "optional": true 3084 | }, 3085 | "is-callable": { 3086 | "version": "1.1.5", 3087 | "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", 3088 | "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", 3089 | "dev": true 3090 | }, 3091 | "is-data-descriptor": { 3092 | "version": "0.1.4", 3093 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", 3094 | "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", 3095 | "dev": true, 3096 | "optional": true, 3097 | "requires": { 3098 | "kind-of": "^3.0.2" 3099 | } 3100 | }, 3101 | "is-date-object": { 3102 | "version": "1.0.2", 3103 | "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", 3104 | "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", 3105 | "dev": true 3106 | }, 3107 | "is-descriptor": { 3108 | "version": "0.1.6", 3109 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", 3110 | "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", 3111 | "dev": true, 3112 | "optional": true, 3113 | "requires": { 3114 | "is-accessor-descriptor": "^0.1.6", 3115 | "is-data-descriptor": "^0.1.4", 3116 | "kind-of": "^5.0.0" 3117 | }, 3118 | "dependencies": { 3119 | "kind-of": { 3120 | "version": "5.1.0", 3121 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", 3122 | "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", 3123 | "dev": true, 3124 | "optional": true 3125 | } 3126 | } 3127 | }, 3128 | "is-extendable": { 3129 | "version": "0.1.1", 3130 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", 3131 | "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", 3132 | "dev": true, 3133 | "optional": true 3134 | }, 3135 | "is-fullwidth-code-point": { 3136 | "version": "2.0.0", 3137 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", 3138 | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", 3139 | "dev": true 3140 | }, 3141 | "is-plain-object": { 3142 | "version": "2.0.4", 3143 | "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", 3144 | "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", 3145 | "dev": true, 3146 | "optional": true, 3147 | "requires": { 3148 | "isobject": "^3.0.1" 3149 | }, 3150 | "dependencies": { 3151 | "isobject": { 3152 | "version": "3.0.1", 3153 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 3154 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 3155 | "dev": true, 3156 | "optional": true 3157 | } 3158 | } 3159 | }, 3160 | "is-regex": { 3161 | "version": "1.0.5", 3162 | "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", 3163 | "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", 3164 | "dev": true, 3165 | "requires": { 3166 | "has": "^1.0.3" 3167 | } 3168 | }, 3169 | "is-symbol": { 3170 | "version": "1.0.3", 3171 | "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", 3172 | "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", 3173 | "dev": true, 3174 | "requires": { 3175 | "has-symbols": "^1.0.1" 3176 | } 3177 | }, 3178 | "is-windows": { 3179 | "version": "1.0.2", 3180 | "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", 3181 | "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", 3182 | "dev": true, 3183 | "optional": true 3184 | }, 3185 | "isarray": { 3186 | "version": "1.0.0", 3187 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 3188 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 3189 | "dev": true, 3190 | "optional": true 3191 | }, 3192 | "isexe": { 3193 | "version": "2.0.0", 3194 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 3195 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", 3196 | "dev": true 3197 | }, 3198 | "js-tokens": { 3199 | "version": "4.0.0", 3200 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 3201 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", 3202 | "dev": true 3203 | }, 3204 | "js-yaml": { 3205 | "version": "3.13.1", 3206 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", 3207 | "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", 3208 | "dev": true, 3209 | "requires": { 3210 | "argparse": "^1.0.7", 3211 | "esprima": "^4.0.0" 3212 | } 3213 | }, 3214 | "json5": { 3215 | "version": "2.1.1", 3216 | "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.1.tgz", 3217 | "integrity": "sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ==", 3218 | "dev": true, 3219 | "requires": { 3220 | "minimist": "^1.2.0" 3221 | }, 3222 | "dependencies": { 3223 | "minimist": { 3224 | "version": "1.2.0", 3225 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", 3226 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", 3227 | "dev": true 3228 | } 3229 | } 3230 | }, 3231 | "just-extend": { 3232 | "version": "4.0.2", 3233 | "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.0.2.tgz", 3234 | "integrity": "sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==", 3235 | "dev": true 3236 | }, 3237 | "kind-of": { 3238 | "version": "3.1.0", 3239 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.1.0.tgz", 3240 | "integrity": "sha1-R11pil5J/15T0U4+cyQp3Iv0z0c=", 3241 | "dev": true, 3242 | "optional": true, 3243 | "requires": { 3244 | "is-buffer": "^1.0.2" 3245 | } 3246 | }, 3247 | "leven": { 3248 | "version": "3.1.0", 3249 | "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", 3250 | "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", 3251 | "dev": true 3252 | }, 3253 | "levenary": { 3254 | "version": "1.1.1", 3255 | "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", 3256 | "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", 3257 | "dev": true, 3258 | "requires": { 3259 | "leven": "^3.1.0" 3260 | } 3261 | }, 3262 | "locate-path": { 3263 | "version": "3.0.0", 3264 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", 3265 | "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", 3266 | "dev": true, 3267 | "requires": { 3268 | "p-locate": "^3.0.0", 3269 | "path-exists": "^3.0.0" 3270 | } 3271 | }, 3272 | "lodash": { 3273 | "version": "4.17.15", 3274 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", 3275 | "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", 3276 | "dev": true 3277 | }, 3278 | "lodash.get": { 3279 | "version": "4.4.2", 3280 | "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", 3281 | "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", 3282 | "dev": true 3283 | }, 3284 | "lodash.isplainobject": { 3285 | "version": "4.0.6", 3286 | "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", 3287 | "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", 3288 | "dev": true 3289 | }, 3290 | "log-symbols": { 3291 | "version": "2.2.0", 3292 | "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", 3293 | "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", 3294 | "dev": true, 3295 | "requires": { 3296 | "chalk": "^2.0.1" 3297 | }, 3298 | "dependencies": { 3299 | "ansi-styles": { 3300 | "version": "3.2.1", 3301 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 3302 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 3303 | "dev": true, 3304 | "requires": { 3305 | "color-convert": "^1.9.0" 3306 | } 3307 | }, 3308 | "chalk": { 3309 | "version": "2.4.2", 3310 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 3311 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 3312 | "dev": true, 3313 | "requires": { 3314 | "ansi-styles": "^3.2.1", 3315 | "escape-string-regexp": "^1.0.5", 3316 | "supports-color": "^5.3.0" 3317 | } 3318 | }, 3319 | "supports-color": { 3320 | "version": "5.5.0", 3321 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 3322 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 3323 | "dev": true, 3324 | "requires": { 3325 | "has-flag": "^3.0.0" 3326 | } 3327 | } 3328 | } 3329 | }, 3330 | "loose-envify": { 3331 | "version": "1.4.0", 3332 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", 3333 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", 3334 | "dev": true, 3335 | "requires": { 3336 | "js-tokens": "^3.0.0 || ^4.0.0" 3337 | } 3338 | }, 3339 | "make-dir": { 3340 | "version": "2.1.0", 3341 | "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", 3342 | "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", 3343 | "dev": true, 3344 | "requires": { 3345 | "pify": "^4.0.1", 3346 | "semver": "^5.6.0" 3347 | } 3348 | }, 3349 | "map-cache": { 3350 | "version": "0.2.2", 3351 | "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", 3352 | "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", 3353 | "dev": true, 3354 | "optional": true 3355 | }, 3356 | "map-visit": { 3357 | "version": "1.0.0", 3358 | "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", 3359 | "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", 3360 | "dev": true, 3361 | "optional": true, 3362 | "requires": { 3363 | "object-visit": "^1.0.0" 3364 | } 3365 | }, 3366 | "minimatch": { 3367 | "version": "3.0.4", 3368 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 3369 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 3370 | "dev": true, 3371 | "requires": { 3372 | "brace-expansion": "^1.1.7" 3373 | } 3374 | }, 3375 | "minimist": { 3376 | "version": "0.0.8", 3377 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 3378 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", 3379 | "dev": true 3380 | }, 3381 | "mixin-deep": { 3382 | "version": "1.3.2", 3383 | "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", 3384 | "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", 3385 | "dev": true, 3386 | "optional": true, 3387 | "requires": { 3388 | "for-in": "^1.0.2", 3389 | "is-extendable": "^1.0.1" 3390 | }, 3391 | "dependencies": { 3392 | "is-extendable": { 3393 | "version": "1.0.1", 3394 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", 3395 | "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", 3396 | "dev": true, 3397 | "optional": true, 3398 | "requires": { 3399 | "is-plain-object": "^2.0.4" 3400 | } 3401 | } 3402 | } 3403 | }, 3404 | "mkdirp": { 3405 | "version": "0.5.1", 3406 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 3407 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 3408 | "dev": true, 3409 | "requires": { 3410 | "minimist": "0.0.8" 3411 | } 3412 | }, 3413 | "mocha": { 3414 | "version": "7.0.1", 3415 | "resolved": "https://registry.npmjs.org/mocha/-/mocha-7.0.1.tgz", 3416 | "integrity": "sha512-9eWmWTdHLXh72rGrdZjNbG3aa1/3NRPpul1z0D979QpEnFdCG0Q5tv834N+94QEN2cysfV72YocQ3fn87s70fg==", 3417 | "dev": true, 3418 | "requires": { 3419 | "ansi-colors": "3.2.3", 3420 | "browser-stdout": "1.3.1", 3421 | "chokidar": "3.3.0", 3422 | "debug": "3.2.6", 3423 | "diff": "3.5.0", 3424 | "escape-string-regexp": "1.0.5", 3425 | "find-up": "3.0.0", 3426 | "glob": "7.1.3", 3427 | "growl": "1.10.5", 3428 | "he": "1.2.0", 3429 | "js-yaml": "3.13.1", 3430 | "log-symbols": "2.2.0", 3431 | "minimatch": "3.0.4", 3432 | "mkdirp": "0.5.1", 3433 | "ms": "2.1.1", 3434 | "node-environment-flags": "1.0.6", 3435 | "object.assign": "4.1.0", 3436 | "strip-json-comments": "2.0.1", 3437 | "supports-color": "6.0.0", 3438 | "which": "1.3.1", 3439 | "wide-align": "1.1.3", 3440 | "yargs": "13.3.0", 3441 | "yargs-parser": "13.1.1", 3442 | "yargs-unparser": "1.6.0" 3443 | }, 3444 | "dependencies": { 3445 | "anymatch": { 3446 | "version": "3.1.1", 3447 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", 3448 | "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", 3449 | "dev": true, 3450 | "requires": { 3451 | "normalize-path": "^3.0.0", 3452 | "picomatch": "^2.0.4" 3453 | } 3454 | }, 3455 | "binary-extensions": { 3456 | "version": "2.0.0", 3457 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz", 3458 | "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==", 3459 | "dev": true 3460 | }, 3461 | "braces": { 3462 | "version": "3.0.2", 3463 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 3464 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 3465 | "dev": true, 3466 | "requires": { 3467 | "fill-range": "^7.0.1" 3468 | } 3469 | }, 3470 | "chokidar": { 3471 | "version": "3.3.0", 3472 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz", 3473 | "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==", 3474 | "dev": true, 3475 | "requires": { 3476 | "anymatch": "~3.1.1", 3477 | "braces": "~3.0.2", 3478 | "fsevents": "~2.1.1", 3479 | "glob-parent": "~5.1.0", 3480 | "is-binary-path": "~2.1.0", 3481 | "is-glob": "~4.0.1", 3482 | "normalize-path": "~3.0.0", 3483 | "readdirp": "~3.2.0" 3484 | } 3485 | }, 3486 | "debug": { 3487 | "version": "3.2.6", 3488 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", 3489 | "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", 3490 | "dev": true, 3491 | "requires": { 3492 | "ms": "^2.1.1" 3493 | } 3494 | }, 3495 | "fill-range": { 3496 | "version": "7.0.1", 3497 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 3498 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 3499 | "dev": true, 3500 | "requires": { 3501 | "to-regex-range": "^5.0.1" 3502 | } 3503 | }, 3504 | "fsevents": { 3505 | "version": "2.1.2", 3506 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", 3507 | "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", 3508 | "dev": true, 3509 | "optional": true 3510 | }, 3511 | "glob": { 3512 | "version": "7.1.3", 3513 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", 3514 | "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", 3515 | "dev": true, 3516 | "requires": { 3517 | "fs.realpath": "^1.0.0", 3518 | "inflight": "^1.0.4", 3519 | "inherits": "2", 3520 | "minimatch": "^3.0.4", 3521 | "once": "^1.3.0", 3522 | "path-is-absolute": "^1.0.0" 3523 | } 3524 | }, 3525 | "glob-parent": { 3526 | "version": "5.1.0", 3527 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz", 3528 | "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==", 3529 | "dev": true, 3530 | "requires": { 3531 | "is-glob": "^4.0.1" 3532 | } 3533 | }, 3534 | "is-binary-path": { 3535 | "version": "2.1.0", 3536 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 3537 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", 3538 | "dev": true, 3539 | "requires": { 3540 | "binary-extensions": "^2.0.0" 3541 | } 3542 | }, 3543 | "is-extglob": { 3544 | "version": "2.1.1", 3545 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 3546 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", 3547 | "dev": true 3548 | }, 3549 | "is-glob": { 3550 | "version": "4.0.1", 3551 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", 3552 | "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", 3553 | "dev": true, 3554 | "requires": { 3555 | "is-extglob": "^2.1.1" 3556 | } 3557 | }, 3558 | "is-number": { 3559 | "version": "7.0.0", 3560 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 3561 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 3562 | "dev": true 3563 | }, 3564 | "ms": { 3565 | "version": "2.1.1", 3566 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", 3567 | "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", 3568 | "dev": true 3569 | }, 3570 | "normalize-path": { 3571 | "version": "3.0.0", 3572 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 3573 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 3574 | "dev": true 3575 | }, 3576 | "readdirp": { 3577 | "version": "3.2.0", 3578 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz", 3579 | "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==", 3580 | "dev": true, 3581 | "requires": { 3582 | "picomatch": "^2.0.4" 3583 | } 3584 | }, 3585 | "supports-color": { 3586 | "version": "6.0.0", 3587 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz", 3588 | "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==", 3589 | "dev": true, 3590 | "requires": { 3591 | "has-flag": "^3.0.0" 3592 | } 3593 | }, 3594 | "to-regex-range": { 3595 | "version": "5.0.1", 3596 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 3597 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 3598 | "dev": true, 3599 | "requires": { 3600 | "is-number": "^7.0.0" 3601 | } 3602 | } 3603 | } 3604 | }, 3605 | "ms": { 3606 | "version": "2.0.0", 3607 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 3608 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", 3609 | "dev": true, 3610 | "optional": true 3611 | }, 3612 | "nanomatch": { 3613 | "version": "1.2.13", 3614 | "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", 3615 | "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", 3616 | "dev": true, 3617 | "optional": true, 3618 | "requires": { 3619 | "arr-diff": "^4.0.0", 3620 | "array-unique": "^0.3.2", 3621 | "define-property": "^2.0.2", 3622 | "extend-shallow": "^3.0.2", 3623 | "fragment-cache": "^0.2.1", 3624 | "is-windows": "^1.0.2", 3625 | "kind-of": "^6.0.2", 3626 | "object.pick": "^1.3.0", 3627 | "regex-not": "^1.0.0", 3628 | "snapdragon": "^0.8.1", 3629 | "to-regex": "^3.0.1" 3630 | }, 3631 | "dependencies": { 3632 | "arr-diff": { 3633 | "version": "4.0.0", 3634 | "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", 3635 | "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", 3636 | "dev": true, 3637 | "optional": true 3638 | }, 3639 | "array-unique": { 3640 | "version": "0.3.2", 3641 | "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", 3642 | "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", 3643 | "dev": true, 3644 | "optional": true 3645 | }, 3646 | "kind-of": { 3647 | "version": "6.0.3", 3648 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 3649 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 3650 | "dev": true, 3651 | "optional": true 3652 | } 3653 | } 3654 | }, 3655 | "nise": { 3656 | "version": "4.0.2", 3657 | "resolved": "https://registry.npmjs.org/nise/-/nise-4.0.2.tgz", 3658 | "integrity": "sha512-ALDnm0pTTyeGdbg5FCpWGd58Nmp3qO8d8x+dU2Fw8lApeJTEBSjkBZZM4S8t6GpKh+czxkfM/TKxpRMroZzwOg==", 3659 | "dev": true, 3660 | "requires": { 3661 | "@sinonjs/commons": "^1.7.0", 3662 | "@sinonjs/fake-timers": "^6.0.0", 3663 | "@sinonjs/formatio": "^5.0.1", 3664 | "@sinonjs/text-encoding": "^0.7.1", 3665 | "just-extend": "^4.0.2", 3666 | "path-to-regexp": "^1.7.0" 3667 | } 3668 | }, 3669 | "node-environment-flags": { 3670 | "version": "1.0.6", 3671 | "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz", 3672 | "integrity": "sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw==", 3673 | "dev": true, 3674 | "requires": { 3675 | "object.getownpropertydescriptors": "^2.0.3", 3676 | "semver": "^5.7.0" 3677 | } 3678 | }, 3679 | "node-modules-regexp": { 3680 | "version": "1.0.0", 3681 | "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", 3682 | "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", 3683 | "dev": true 3684 | }, 3685 | "node-releases": { 3686 | "version": "1.1.50", 3687 | "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.50.tgz", 3688 | "integrity": "sha512-lgAmPv9eYZ0bGwUYAKlr8MG6K4CvWliWqnkcT2P8mMAgVrH3lqfBPorFlxiG1pHQnqmavJZ9vbMXUTNyMLbrgQ==", 3689 | "dev": true, 3690 | "requires": { 3691 | "semver": "^6.3.0" 3692 | }, 3693 | "dependencies": { 3694 | "semver": { 3695 | "version": "6.3.0", 3696 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 3697 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 3698 | "dev": true 3699 | } 3700 | } 3701 | }, 3702 | "object-copy": { 3703 | "version": "0.1.0", 3704 | "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", 3705 | "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", 3706 | "dev": true, 3707 | "optional": true, 3708 | "requires": { 3709 | "copy-descriptor": "^0.1.0", 3710 | "define-property": "^0.2.5", 3711 | "kind-of": "^3.0.3" 3712 | }, 3713 | "dependencies": { 3714 | "define-property": { 3715 | "version": "0.2.5", 3716 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 3717 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 3718 | "dev": true, 3719 | "optional": true, 3720 | "requires": { 3721 | "is-descriptor": "^0.1.0" 3722 | } 3723 | } 3724 | } 3725 | }, 3726 | "object-inspect": { 3727 | "version": "1.7.0", 3728 | "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", 3729 | "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", 3730 | "dev": true 3731 | }, 3732 | "object-keys": { 3733 | "version": "1.1.1", 3734 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", 3735 | "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", 3736 | "dev": true 3737 | }, 3738 | "object-visit": { 3739 | "version": "1.0.1", 3740 | "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", 3741 | "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", 3742 | "dev": true, 3743 | "optional": true, 3744 | "requires": { 3745 | "isobject": "^3.0.0" 3746 | }, 3747 | "dependencies": { 3748 | "isobject": { 3749 | "version": "3.0.1", 3750 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 3751 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 3752 | "dev": true, 3753 | "optional": true 3754 | } 3755 | } 3756 | }, 3757 | "object.assign": { 3758 | "version": "4.1.0", 3759 | "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", 3760 | "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", 3761 | "dev": true, 3762 | "requires": { 3763 | "define-properties": "^1.1.2", 3764 | "function-bind": "^1.1.1", 3765 | "has-symbols": "^1.0.0", 3766 | "object-keys": "^1.0.11" 3767 | } 3768 | }, 3769 | "object.getownpropertydescriptors": { 3770 | "version": "2.1.0", 3771 | "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", 3772 | "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", 3773 | "dev": true, 3774 | "requires": { 3775 | "define-properties": "^1.1.3", 3776 | "es-abstract": "^1.17.0-next.1" 3777 | } 3778 | }, 3779 | "object.pick": { 3780 | "version": "1.3.0", 3781 | "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", 3782 | "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", 3783 | "dev": true, 3784 | "optional": true, 3785 | "requires": { 3786 | "isobject": "^3.0.1" 3787 | }, 3788 | "dependencies": { 3789 | "isobject": { 3790 | "version": "3.0.1", 3791 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 3792 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 3793 | "dev": true, 3794 | "optional": true 3795 | } 3796 | } 3797 | }, 3798 | "once": { 3799 | "version": "1.4.0", 3800 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 3801 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 3802 | "dev": true, 3803 | "requires": { 3804 | "wrappy": "1" 3805 | } 3806 | }, 3807 | "p-limit": { 3808 | "version": "2.2.2", 3809 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", 3810 | "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", 3811 | "dev": true, 3812 | "requires": { 3813 | "p-try": "^2.0.0" 3814 | } 3815 | }, 3816 | "p-locate": { 3817 | "version": "3.0.0", 3818 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", 3819 | "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", 3820 | "dev": true, 3821 | "requires": { 3822 | "p-limit": "^2.0.0" 3823 | } 3824 | }, 3825 | "p-try": { 3826 | "version": "2.2.0", 3827 | "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", 3828 | "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", 3829 | "dev": true 3830 | }, 3831 | "parse-passwd": { 3832 | "version": "1.0.0", 3833 | "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", 3834 | "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", 3835 | "dev": true 3836 | }, 3837 | "pascalcase": { 3838 | "version": "0.1.1", 3839 | "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", 3840 | "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", 3841 | "dev": true, 3842 | "optional": true 3843 | }, 3844 | "path-dirname": { 3845 | "version": "1.0.2", 3846 | "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", 3847 | "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", 3848 | "dev": true, 3849 | "optional": true 3850 | }, 3851 | "path-exists": { 3852 | "version": "3.0.0", 3853 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", 3854 | "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", 3855 | "dev": true 3856 | }, 3857 | "path-is-absolute": { 3858 | "version": "1.0.1", 3859 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 3860 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 3861 | "dev": true 3862 | }, 3863 | "path-parse": { 3864 | "version": "1.0.6", 3865 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", 3866 | "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", 3867 | "dev": true 3868 | }, 3869 | "path-to-regexp": { 3870 | "version": "1.8.0", 3871 | "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", 3872 | "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", 3873 | "dev": true, 3874 | "requires": { 3875 | "isarray": "0.0.1" 3876 | }, 3877 | "dependencies": { 3878 | "isarray": { 3879 | "version": "0.0.1", 3880 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 3881 | "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", 3882 | "dev": true 3883 | } 3884 | } 3885 | }, 3886 | "pathval": { 3887 | "version": "1.1.0", 3888 | "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", 3889 | "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", 3890 | "dev": true 3891 | }, 3892 | "picomatch": { 3893 | "version": "2.2.1", 3894 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.1.tgz", 3895 | "integrity": "sha512-ISBaA8xQNmwELC7eOjqFKMESB2VIqt4PPDD0nsS95b/9dZXvVKOlz9keMSnoGGKcOHXfTvDD6WMaRoSc9UuhRA==", 3896 | "dev": true 3897 | }, 3898 | "pify": { 3899 | "version": "4.0.1", 3900 | "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", 3901 | "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", 3902 | "dev": true 3903 | }, 3904 | "pirates": { 3905 | "version": "4.0.1", 3906 | "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", 3907 | "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", 3908 | "dev": true, 3909 | "requires": { 3910 | "node-modules-regexp": "^1.0.0" 3911 | } 3912 | }, 3913 | "pkg-dir": { 3914 | "version": "3.0.0", 3915 | "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", 3916 | "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", 3917 | "dev": true, 3918 | "requires": { 3919 | "find-up": "^3.0.0" 3920 | } 3921 | }, 3922 | "posix-character-classes": { 3923 | "version": "0.1.1", 3924 | "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", 3925 | "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", 3926 | "dev": true, 3927 | "optional": true 3928 | }, 3929 | "private": { 3930 | "version": "0.1.7", 3931 | "resolved": "https://registry.npmjs.org/private/-/private-0.1.7.tgz", 3932 | "integrity": "sha1-aM5eih7woju1cMwoU3tTMqumPvE=", 3933 | "dev": true 3934 | }, 3935 | "process-nextick-args": { 3936 | "version": "1.0.7", 3937 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", 3938 | "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", 3939 | "dev": true, 3940 | "optional": true 3941 | }, 3942 | "readable-stream": { 3943 | "version": "2.2.9", 3944 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.9.tgz", 3945 | "integrity": "sha1-z3jsb0ptHrQ9JkiMrJfwQudLf8g=", 3946 | "dev": true, 3947 | "optional": true, 3948 | "requires": { 3949 | "buffer-shims": "~1.0.0", 3950 | "core-util-is": "~1.0.0", 3951 | "inherits": "~2.0.1", 3952 | "isarray": "~1.0.0", 3953 | "process-nextick-args": "~1.0.6", 3954 | "string_decoder": "~1.0.0", 3955 | "util-deprecate": "~1.0.1" 3956 | } 3957 | }, 3958 | "redux": { 3959 | "version": "4.0.5", 3960 | "resolved": "https://registry.npmjs.org/redux/-/redux-4.0.5.tgz", 3961 | "integrity": "sha512-VSz1uMAH24DM6MF72vcojpYPtrTUu3ByVWfPL1nPfVRb5mZVTve5GnNCUV53QM/BZ66xfWrm0CTWoM+Xlz8V1w==", 3962 | "dev": true, 3963 | "requires": { 3964 | "loose-envify": "^1.4.0", 3965 | "symbol-observable": "^1.2.0" 3966 | } 3967 | }, 3968 | "redux-mock-store": { 3969 | "version": "1.5.4", 3970 | "resolved": "https://registry.npmjs.org/redux-mock-store/-/redux-mock-store-1.5.4.tgz", 3971 | "integrity": "sha512-xmcA0O/tjCLXhh9Fuiq6pMrJCwFRaouA8436zcikdIpYWWCjU76CRk+i2bHx8EeiSiMGnB85/lZdU3wIJVXHTA==", 3972 | "dev": true, 3973 | "requires": { 3974 | "lodash.isplainobject": "^4.0.6" 3975 | } 3976 | }, 3977 | "regenerate-unicode-properties": { 3978 | "version": "8.1.0", 3979 | "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz", 3980 | "integrity": "sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==", 3981 | "dev": true, 3982 | "requires": { 3983 | "regenerate": "^1.4.0" 3984 | }, 3985 | "dependencies": { 3986 | "regenerate": { 3987 | "version": "1.4.0", 3988 | "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", 3989 | "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", 3990 | "dev": true 3991 | } 3992 | } 3993 | }, 3994 | "regenerator-runtime": { 3995 | "version": "0.13.3", 3996 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz", 3997 | "integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw==", 3998 | "dev": true 3999 | }, 4000 | "regex-not": { 4001 | "version": "1.0.2", 4002 | "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", 4003 | "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", 4004 | "dev": true, 4005 | "optional": true, 4006 | "requires": { 4007 | "extend-shallow": "^3.0.2", 4008 | "safe-regex": "^1.1.0" 4009 | } 4010 | }, 4011 | "remove-trailing-separator": { 4012 | "version": "1.0.1", 4013 | "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.0.1.tgz", 4014 | "integrity": "sha1-YV67lq9VlVLUv0BXyENtSGq2PMQ=", 4015 | "dev": true, 4016 | "optional": true 4017 | }, 4018 | "repeat-element": { 4019 | "version": "1.1.2", 4020 | "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", 4021 | "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=", 4022 | "dev": true, 4023 | "optional": true 4024 | }, 4025 | "repeat-string": { 4026 | "version": "1.6.1", 4027 | "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", 4028 | "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", 4029 | "dev": true, 4030 | "optional": true 4031 | }, 4032 | "require-directory": { 4033 | "version": "2.1.1", 4034 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", 4035 | "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", 4036 | "dev": true 4037 | }, 4038 | "require-main-filename": { 4039 | "version": "2.0.0", 4040 | "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", 4041 | "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", 4042 | "dev": true 4043 | }, 4044 | "resolve": { 4045 | "version": "1.15.1", 4046 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", 4047 | "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", 4048 | "dev": true, 4049 | "requires": { 4050 | "path-parse": "^1.0.6" 4051 | } 4052 | }, 4053 | "resolve-url": { 4054 | "version": "0.2.1", 4055 | "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", 4056 | "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", 4057 | "dev": true, 4058 | "optional": true 4059 | }, 4060 | "ret": { 4061 | "version": "0.1.15", 4062 | "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", 4063 | "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", 4064 | "dev": true, 4065 | "optional": true 4066 | }, 4067 | "safe-buffer": { 4068 | "version": "5.1.2", 4069 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 4070 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", 4071 | "dev": true 4072 | }, 4073 | "safe-regex": { 4074 | "version": "1.1.0", 4075 | "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", 4076 | "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", 4077 | "dev": true, 4078 | "optional": true, 4079 | "requires": { 4080 | "ret": "~0.1.10" 4081 | } 4082 | }, 4083 | "semver": { 4084 | "version": "5.7.1", 4085 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 4086 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", 4087 | "dev": true 4088 | }, 4089 | "set-blocking": { 4090 | "version": "2.0.0", 4091 | "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", 4092 | "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", 4093 | "dev": true 4094 | }, 4095 | "set-value": { 4096 | "version": "2.0.1", 4097 | "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", 4098 | "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", 4099 | "dev": true, 4100 | "optional": true, 4101 | "requires": { 4102 | "extend-shallow": "^2.0.1", 4103 | "is-extendable": "^0.1.1", 4104 | "is-plain-object": "^2.0.3", 4105 | "split-string": "^3.0.1" 4106 | }, 4107 | "dependencies": { 4108 | "extend-shallow": { 4109 | "version": "2.0.1", 4110 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 4111 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 4112 | "dev": true, 4113 | "optional": true, 4114 | "requires": { 4115 | "is-extendable": "^0.1.0" 4116 | } 4117 | } 4118 | } 4119 | }, 4120 | "sinon": { 4121 | "version": "9.0.0", 4122 | "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.0.0.tgz", 4123 | "integrity": "sha512-c4bREcvuK5VuEGyMW/Oim9I3Rq49Vzb0aMdxouFaA44QCFpilc5LJOugrX+mkrvikbqCimxuK+4cnHVNnLR41g==", 4124 | "dev": true, 4125 | "requires": { 4126 | "@sinonjs/commons": "^1.7.0", 4127 | "@sinonjs/fake-timers": "^6.0.0", 4128 | "@sinonjs/formatio": "^5.0.0", 4129 | "@sinonjs/samsam": "^5.0.1", 4130 | "diff": "^4.0.2", 4131 | "nise": "^4.0.1", 4132 | "supports-color": "^7.1.0" 4133 | }, 4134 | "dependencies": { 4135 | "diff": { 4136 | "version": "4.0.2", 4137 | "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", 4138 | "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", 4139 | "dev": true 4140 | }, 4141 | "has-flag": { 4142 | "version": "4.0.0", 4143 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", 4144 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", 4145 | "dev": true 4146 | }, 4147 | "supports-color": { 4148 | "version": "7.1.0", 4149 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", 4150 | "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", 4151 | "dev": true, 4152 | "requires": { 4153 | "has-flag": "^4.0.0" 4154 | } 4155 | } 4156 | } 4157 | }, 4158 | "sinon-chai": { 4159 | "version": "3.5.0", 4160 | "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-3.5.0.tgz", 4161 | "integrity": "sha512-IifbusYiQBpUxxFJkR3wTU68xzBN0+bxCScEaKMjBvAQERg6FnTTc1F17rseLb1tjmkJ23730AXpFI0c47FgAg==", 4162 | "dev": true 4163 | }, 4164 | "snapdragon": { 4165 | "version": "0.8.2", 4166 | "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", 4167 | "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", 4168 | "dev": true, 4169 | "optional": true, 4170 | "requires": { 4171 | "base": "^0.11.1", 4172 | "debug": "^2.2.0", 4173 | "define-property": "^0.2.5", 4174 | "extend-shallow": "^2.0.1", 4175 | "map-cache": "^0.2.2", 4176 | "source-map": "^0.5.6", 4177 | "source-map-resolve": "^0.5.0", 4178 | "use": "^3.1.0" 4179 | }, 4180 | "dependencies": { 4181 | "define-property": { 4182 | "version": "0.2.5", 4183 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 4184 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 4185 | "dev": true, 4186 | "optional": true, 4187 | "requires": { 4188 | "is-descriptor": "^0.1.0" 4189 | } 4190 | }, 4191 | "extend-shallow": { 4192 | "version": "2.0.1", 4193 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 4194 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 4195 | "dev": true, 4196 | "optional": true, 4197 | "requires": { 4198 | "is-extendable": "^0.1.0" 4199 | } 4200 | } 4201 | } 4202 | }, 4203 | "snapdragon-node": { 4204 | "version": "2.1.1", 4205 | "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", 4206 | "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", 4207 | "dev": true, 4208 | "optional": true, 4209 | "requires": { 4210 | "define-property": "^1.0.0", 4211 | "isobject": "^3.0.0", 4212 | "snapdragon-util": "^3.0.1" 4213 | }, 4214 | "dependencies": { 4215 | "define-property": { 4216 | "version": "1.0.0", 4217 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 4218 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 4219 | "dev": true, 4220 | "optional": true, 4221 | "requires": { 4222 | "is-descriptor": "^1.0.0" 4223 | } 4224 | }, 4225 | "is-accessor-descriptor": { 4226 | "version": "1.0.0", 4227 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 4228 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 4229 | "dev": true, 4230 | "optional": true, 4231 | "requires": { 4232 | "kind-of": "^6.0.0" 4233 | } 4234 | }, 4235 | "is-data-descriptor": { 4236 | "version": "1.0.0", 4237 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 4238 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 4239 | "dev": true, 4240 | "optional": true, 4241 | "requires": { 4242 | "kind-of": "^6.0.0" 4243 | } 4244 | }, 4245 | "is-descriptor": { 4246 | "version": "1.0.2", 4247 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 4248 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 4249 | "dev": true, 4250 | "optional": true, 4251 | "requires": { 4252 | "is-accessor-descriptor": "^1.0.0", 4253 | "is-data-descriptor": "^1.0.0", 4254 | "kind-of": "^6.0.2" 4255 | } 4256 | }, 4257 | "isobject": { 4258 | "version": "3.0.1", 4259 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 4260 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 4261 | "dev": true, 4262 | "optional": true 4263 | }, 4264 | "kind-of": { 4265 | "version": "6.0.3", 4266 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 4267 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 4268 | "dev": true, 4269 | "optional": true 4270 | } 4271 | } 4272 | }, 4273 | "snapdragon-util": { 4274 | "version": "3.0.1", 4275 | "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", 4276 | "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", 4277 | "dev": true, 4278 | "optional": true, 4279 | "requires": { 4280 | "kind-of": "^3.2.0" 4281 | }, 4282 | "dependencies": { 4283 | "kind-of": { 4284 | "version": "3.2.2", 4285 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 4286 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 4287 | "dev": true, 4288 | "optional": true, 4289 | "requires": { 4290 | "is-buffer": "^1.1.5" 4291 | } 4292 | } 4293 | } 4294 | }, 4295 | "source-map": { 4296 | "version": "0.5.6", 4297 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", 4298 | "integrity": "sha1-dc449SvwczxafwwRjYEzSiu19BI=", 4299 | "dev": true 4300 | }, 4301 | "source-map-resolve": { 4302 | "version": "0.5.3", 4303 | "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", 4304 | "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", 4305 | "dev": true, 4306 | "optional": true, 4307 | "requires": { 4308 | "atob": "^2.1.2", 4309 | "decode-uri-component": "^0.2.0", 4310 | "resolve-url": "^0.2.1", 4311 | "source-map-url": "^0.4.0", 4312 | "urix": "^0.1.0" 4313 | } 4314 | }, 4315 | "source-map-support": { 4316 | "version": "0.5.16", 4317 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz", 4318 | "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==", 4319 | "dev": true, 4320 | "requires": { 4321 | "buffer-from": "^1.0.0", 4322 | "source-map": "^0.6.0" 4323 | }, 4324 | "dependencies": { 4325 | "source-map": { 4326 | "version": "0.6.1", 4327 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 4328 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 4329 | "dev": true 4330 | } 4331 | } 4332 | }, 4333 | "source-map-url": { 4334 | "version": "0.4.0", 4335 | "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", 4336 | "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", 4337 | "dev": true, 4338 | "optional": true 4339 | }, 4340 | "split-string": { 4341 | "version": "3.1.0", 4342 | "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", 4343 | "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", 4344 | "dev": true, 4345 | "optional": true, 4346 | "requires": { 4347 | "extend-shallow": "^3.0.0" 4348 | } 4349 | }, 4350 | "sprintf-js": { 4351 | "version": "1.0.3", 4352 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 4353 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", 4354 | "dev": true 4355 | }, 4356 | "static-extend": { 4357 | "version": "0.1.2", 4358 | "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", 4359 | "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", 4360 | "dev": true, 4361 | "optional": true, 4362 | "requires": { 4363 | "define-property": "^0.2.5", 4364 | "object-copy": "^0.1.0" 4365 | }, 4366 | "dependencies": { 4367 | "define-property": { 4368 | "version": "0.2.5", 4369 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 4370 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 4371 | "dev": true, 4372 | "optional": true, 4373 | "requires": { 4374 | "is-descriptor": "^0.1.0" 4375 | } 4376 | } 4377 | } 4378 | }, 4379 | "string-width": { 4380 | "version": "2.1.1", 4381 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", 4382 | "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", 4383 | "dev": true, 4384 | "requires": { 4385 | "is-fullwidth-code-point": "^2.0.0", 4386 | "strip-ansi": "^4.0.0" 4387 | }, 4388 | "dependencies": { 4389 | "ansi-regex": { 4390 | "version": "3.0.0", 4391 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 4392 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 4393 | "dev": true 4394 | }, 4395 | "strip-ansi": { 4396 | "version": "4.0.0", 4397 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 4398 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 4399 | "dev": true, 4400 | "requires": { 4401 | "ansi-regex": "^3.0.0" 4402 | } 4403 | } 4404 | } 4405 | }, 4406 | "string.prototype.trimleft": { 4407 | "version": "2.1.1", 4408 | "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", 4409 | "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", 4410 | "dev": true, 4411 | "requires": { 4412 | "define-properties": "^1.1.3", 4413 | "function-bind": "^1.1.1" 4414 | } 4415 | }, 4416 | "string.prototype.trimright": { 4417 | "version": "2.1.1", 4418 | "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", 4419 | "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", 4420 | "dev": true, 4421 | "requires": { 4422 | "define-properties": "^1.1.3", 4423 | "function-bind": "^1.1.1" 4424 | } 4425 | }, 4426 | "string_decoder": { 4427 | "version": "1.0.0", 4428 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.0.tgz", 4429 | "integrity": "sha1-8G9BFXtmTYYGn4S9vcmw2KsoFmc=", 4430 | "dev": true, 4431 | "optional": true, 4432 | "requires": { 4433 | "buffer-shims": "~1.0.0" 4434 | } 4435 | }, 4436 | "strip-json-comments": { 4437 | "version": "2.0.1", 4438 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", 4439 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", 4440 | "dev": true 4441 | }, 4442 | "symbol-observable": { 4443 | "version": "1.2.0", 4444 | "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", 4445 | "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", 4446 | "dev": true 4447 | }, 4448 | "to-object-path": { 4449 | "version": "0.3.0", 4450 | "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", 4451 | "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", 4452 | "dev": true, 4453 | "optional": true, 4454 | "requires": { 4455 | "kind-of": "^3.0.2" 4456 | } 4457 | }, 4458 | "to-regex": { 4459 | "version": "3.0.2", 4460 | "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", 4461 | "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", 4462 | "dev": true, 4463 | "optional": true, 4464 | "requires": { 4465 | "define-property": "^2.0.2", 4466 | "extend-shallow": "^3.0.2", 4467 | "regex-not": "^1.0.2", 4468 | "safe-regex": "^1.1.0" 4469 | } 4470 | }, 4471 | "to-regex-range": { 4472 | "version": "2.1.1", 4473 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", 4474 | "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", 4475 | "dev": true, 4476 | "optional": true, 4477 | "requires": { 4478 | "is-number": "^3.0.0", 4479 | "repeat-string": "^1.6.1" 4480 | }, 4481 | "dependencies": { 4482 | "is-number": { 4483 | "version": "3.0.0", 4484 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 4485 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 4486 | "dev": true, 4487 | "optional": true, 4488 | "requires": { 4489 | "kind-of": "^3.0.2" 4490 | } 4491 | } 4492 | } 4493 | }, 4494 | "type-detect": { 4495 | "version": "4.0.8", 4496 | "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", 4497 | "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", 4498 | "dev": true 4499 | }, 4500 | "unicode-canonical-property-names-ecmascript": { 4501 | "version": "1.0.4", 4502 | "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", 4503 | "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", 4504 | "dev": true 4505 | }, 4506 | "unicode-match-property-ecmascript": { 4507 | "version": "1.0.4", 4508 | "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", 4509 | "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", 4510 | "dev": true, 4511 | "requires": { 4512 | "unicode-canonical-property-names-ecmascript": "^1.0.4", 4513 | "unicode-property-aliases-ecmascript": "^1.0.4" 4514 | } 4515 | }, 4516 | "unicode-match-property-value-ecmascript": { 4517 | "version": "1.1.0", 4518 | "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz", 4519 | "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==", 4520 | "dev": true 4521 | }, 4522 | "unicode-property-aliases-ecmascript": { 4523 | "version": "1.0.5", 4524 | "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz", 4525 | "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", 4526 | "dev": true 4527 | }, 4528 | "union-value": { 4529 | "version": "1.0.1", 4530 | "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", 4531 | "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", 4532 | "dev": true, 4533 | "optional": true, 4534 | "requires": { 4535 | "arr-union": "^3.1.0", 4536 | "get-value": "^2.0.6", 4537 | "is-extendable": "^0.1.1", 4538 | "set-value": "^2.0.1" 4539 | } 4540 | }, 4541 | "unset-value": { 4542 | "version": "1.0.0", 4543 | "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", 4544 | "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", 4545 | "dev": true, 4546 | "optional": true, 4547 | "requires": { 4548 | "has-value": "^0.3.1", 4549 | "isobject": "^3.0.0" 4550 | }, 4551 | "dependencies": { 4552 | "has-value": { 4553 | "version": "0.3.1", 4554 | "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", 4555 | "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", 4556 | "dev": true, 4557 | "optional": true, 4558 | "requires": { 4559 | "get-value": "^2.0.3", 4560 | "has-values": "^0.1.4", 4561 | "isobject": "^2.0.0" 4562 | }, 4563 | "dependencies": { 4564 | "isobject": { 4565 | "version": "2.1.0", 4566 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", 4567 | "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", 4568 | "dev": true, 4569 | "optional": true, 4570 | "requires": { 4571 | "isarray": "1.0.0" 4572 | } 4573 | } 4574 | } 4575 | }, 4576 | "has-values": { 4577 | "version": "0.1.4", 4578 | "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", 4579 | "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", 4580 | "dev": true, 4581 | "optional": true 4582 | }, 4583 | "isobject": { 4584 | "version": "3.0.1", 4585 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 4586 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 4587 | "dev": true, 4588 | "optional": true 4589 | } 4590 | } 4591 | }, 4592 | "upath": { 4593 | "version": "1.2.0", 4594 | "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", 4595 | "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", 4596 | "dev": true, 4597 | "optional": true 4598 | }, 4599 | "urix": { 4600 | "version": "0.1.0", 4601 | "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", 4602 | "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", 4603 | "dev": true, 4604 | "optional": true 4605 | }, 4606 | "use": { 4607 | "version": "3.1.1", 4608 | "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", 4609 | "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", 4610 | "dev": true, 4611 | "optional": true 4612 | }, 4613 | "util-deprecate": { 4614 | "version": "1.0.2", 4615 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 4616 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", 4617 | "dev": true, 4618 | "optional": true 4619 | }, 4620 | "v8flags": { 4621 | "version": "3.1.3", 4622 | "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.3.tgz", 4623 | "integrity": "sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w==", 4624 | "dev": true, 4625 | "requires": { 4626 | "homedir-polyfill": "^1.0.1" 4627 | } 4628 | }, 4629 | "which": { 4630 | "version": "1.3.1", 4631 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", 4632 | "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", 4633 | "dev": true, 4634 | "requires": { 4635 | "isexe": "^2.0.0" 4636 | } 4637 | }, 4638 | "which-module": { 4639 | "version": "2.0.0", 4640 | "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", 4641 | "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", 4642 | "dev": true 4643 | }, 4644 | "wide-align": { 4645 | "version": "1.1.3", 4646 | "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", 4647 | "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", 4648 | "dev": true, 4649 | "requires": { 4650 | "string-width": "^1.0.2 || 2" 4651 | } 4652 | }, 4653 | "wrap-ansi": { 4654 | "version": "5.1.0", 4655 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", 4656 | "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", 4657 | "dev": true, 4658 | "requires": { 4659 | "ansi-styles": "^3.2.0", 4660 | "string-width": "^3.0.0", 4661 | "strip-ansi": "^5.0.0" 4662 | }, 4663 | "dependencies": { 4664 | "ansi-regex": { 4665 | "version": "4.1.0", 4666 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", 4667 | "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", 4668 | "dev": true 4669 | }, 4670 | "ansi-styles": { 4671 | "version": "3.2.1", 4672 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 4673 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 4674 | "dev": true, 4675 | "requires": { 4676 | "color-convert": "^1.9.0" 4677 | } 4678 | }, 4679 | "string-width": { 4680 | "version": "3.1.0", 4681 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", 4682 | "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", 4683 | "dev": true, 4684 | "requires": { 4685 | "emoji-regex": "^7.0.1", 4686 | "is-fullwidth-code-point": "^2.0.0", 4687 | "strip-ansi": "^5.1.0" 4688 | } 4689 | }, 4690 | "strip-ansi": { 4691 | "version": "5.2.0", 4692 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", 4693 | "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", 4694 | "dev": true, 4695 | "requires": { 4696 | "ansi-regex": "^4.1.0" 4697 | } 4698 | } 4699 | } 4700 | }, 4701 | "wrappy": { 4702 | "version": "1.0.2", 4703 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 4704 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 4705 | "dev": true 4706 | }, 4707 | "y18n": { 4708 | "version": "4.0.0", 4709 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", 4710 | "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", 4711 | "dev": true 4712 | }, 4713 | "yargs": { 4714 | "version": "13.3.0", 4715 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", 4716 | "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", 4717 | "dev": true, 4718 | "requires": { 4719 | "cliui": "^5.0.0", 4720 | "find-up": "^3.0.0", 4721 | "get-caller-file": "^2.0.1", 4722 | "require-directory": "^2.1.1", 4723 | "require-main-filename": "^2.0.0", 4724 | "set-blocking": "^2.0.0", 4725 | "string-width": "^3.0.0", 4726 | "which-module": "^2.0.0", 4727 | "y18n": "^4.0.0", 4728 | "yargs-parser": "^13.1.1" 4729 | }, 4730 | "dependencies": { 4731 | "ansi-regex": { 4732 | "version": "4.1.0", 4733 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", 4734 | "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", 4735 | "dev": true 4736 | }, 4737 | "string-width": { 4738 | "version": "3.1.0", 4739 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", 4740 | "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", 4741 | "dev": true, 4742 | "requires": { 4743 | "emoji-regex": "^7.0.1", 4744 | "is-fullwidth-code-point": "^2.0.0", 4745 | "strip-ansi": "^5.1.0" 4746 | } 4747 | }, 4748 | "strip-ansi": { 4749 | "version": "5.2.0", 4750 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", 4751 | "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", 4752 | "dev": true, 4753 | "requires": { 4754 | "ansi-regex": "^4.1.0" 4755 | } 4756 | } 4757 | } 4758 | }, 4759 | "yargs-parser": { 4760 | "version": "13.1.1", 4761 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", 4762 | "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", 4763 | "dev": true, 4764 | "requires": { 4765 | "camelcase": "^5.0.0", 4766 | "decamelize": "^1.2.0" 4767 | } 4768 | }, 4769 | "yargs-unparser": { 4770 | "version": "1.6.0", 4771 | "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz", 4772 | "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==", 4773 | "dev": true, 4774 | "requires": { 4775 | "flat": "^4.1.0", 4776 | "lodash": "^4.17.15", 4777 | "yargs": "^13.3.0" 4778 | } 4779 | } 4780 | } 4781 | } 4782 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "redux-when", 3 | "version": "2.1.3", 4 | "description": "Redux middleware for delaying dispatch of an action until a condition evaluates to true.", 5 | "keywords": [ 6 | "redux", 7 | "wait", 8 | "when", 9 | "until", 10 | "for", 11 | "delay", 12 | "once" 13 | ], 14 | "main": "./dist/index.js", 15 | "types": "./index.d.ts", 16 | "repository": "jameslnewell/redux-when", 17 | "devDependencies": { 18 | "@babel/cli": "^7.8.4", 19 | "@babel/core": "^7.8.4", 20 | "@babel/node": "^7.8.4", 21 | "@babel/preset-env": "^7.8.4", 22 | "@babel/register": "^7.8.3", 23 | "chai": "^4.2.0", 24 | "mocha": "^7.0.1", 25 | "redux": "^4.0.5", 26 | "redux-mock-store": "^1.5.4", 27 | "sinon": "^9.0.0", 28 | "sinon-chai": "^3.5.0" 29 | }, 30 | "scripts": { 31 | "build": "babel ./index.js -d ./dist/", 32 | "watch": "npm run build -- --watch", 33 | "test": "mocha --require @babel/register", 34 | "example": "babel-node ./example/index.js", 35 | "prepublish": "npm run build" 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /test/index.js: -------------------------------------------------------------------------------- 1 | import chai, {expect} from 'chai'; 2 | import sinon from 'sinon'; 3 | import sinonChai from 'sinon-chai'; 4 | import configureStore from 'redux-mock-store' 5 | import middleware, {ONCE, once, WHEN, when, CANCEL, cancel} from '..'; 6 | 7 | chai.use(sinonChai); 8 | 9 | const ACTION_FOO = {type: 'FOO'}; 10 | const ACTION_BAR = {type: 'BAR'}; 11 | const ACTION_FOOBAR = {type: 'FOOBAR'}; 12 | 13 | const createStore = configureStore([middleware]); 14 | 15 | describe('redux-when', () => { 16 | 17 | describe('once()', () => { 18 | 19 | it('should create a once() action', () => { 20 | 21 | const condition = () => false; 22 | const createAction = () => {type: 'foobar'}; 23 | const onceAction = once(condition, createAction); 24 | 25 | expect(onceAction).to.be.deep.equal({ 26 | type: ONCE, 27 | payload: { 28 | condition, 29 | createAction 30 | } 31 | }); 32 | }); 33 | 34 | }); 35 | 36 | describe('when()', () => { 37 | 38 | it('should create a when() action', () => { 39 | 40 | const condition = () => false; 41 | const createAction = () => {type: 'foobar'}; 42 | const whenAction = when(condition, createAction); 43 | 44 | expect(whenAction).to.be.deep.equal({ 45 | type: WHEN, 46 | payload: { 47 | condition, 48 | createAction 49 | } 50 | }); 51 | }); 52 | 53 | }); 54 | 55 | describe('middleware()', () => { 56 | 57 | describe('ONCE', () => { 58 | 59 | it('should immediately evaluate and dispatch action ONCE when evaluated as true', () => { 60 | const store = createStore(); 61 | const condition = sinon.stub(); 62 | condition.returns(true); 63 | const actionCreator = sinon.stub().returns(ACTION_FOO); 64 | 65 | store.dispatch(once(condition, actionCreator)); 66 | 67 | expect(actionCreator).to.be.calledOnce; 68 | expect(store.getActions()).to.be.deep.equal([ 69 | ACTION_FOO 70 | ]); 71 | }); 72 | 73 | it('should not dispatch delayed action when the condition evaluates to false', () => { 74 | 75 | const store = createStore(); 76 | const condition = sinon.stub(); 77 | condition.withArgs({}, ACTION_FOO).returns(true); 78 | 79 | store.dispatch(once(condition, () => ACTION_FOOBAR)); 80 | store.dispatch(ACTION_BAR); 81 | store.dispatch(ACTION_BAR); 82 | 83 | expect(store.getActions()).to.be.deep.equal([ 84 | ACTION_BAR, ACTION_BAR 85 | ]); 86 | 87 | }); 88 | 89 | it('should dispatch delayed action ONCE when the condition evaluates to true more than once', () => { 90 | 91 | const store = createStore(); 92 | const condition = sinon.stub(); 93 | condition.withArgs({}, ACTION_BAR).returns(true); 94 | const actionCreator = sinon.stub().returns(ACTION_FOO); 95 | 96 | store.dispatch(once(condition, actionCreator)); 97 | store.dispatch(ACTION_BAR); 98 | store.dispatch(ACTION_BAR); 99 | 100 | expect(actionCreator).to.be.calledOnce; 101 | expect(store.getActions()).to.be.deep.equal([ 102 | ACTION_BAR, ACTION_FOO, 103 | ACTION_BAR 104 | ]); 105 | 106 | }); 107 | 108 | it('should dispatch multiple delayed actions ONCE when the condition evaluates to true', () => { 109 | const store = createStore(); 110 | const condition = sinon.stub(); 111 | condition.returns(false).withArgs({}, ACTION_FOOBAR).returns(true); 112 | const actionCreator1 = sinon.stub().returns(ACTION_FOO); 113 | const actionCreator2 = sinon.stub().returns(ACTION_BAR); 114 | 115 | store.dispatch(once(condition, actionCreator1)); 116 | store.dispatch(once(condition, actionCreator2)); 117 | store.dispatch(ACTION_FOOBAR); 118 | store.dispatch(ACTION_FOOBAR); 119 | 120 | expect(actionCreator1).to.be.calledOnce; 121 | expect(actionCreator2).to.be.calledOnce; 122 | expect(store.getActions()).to.be.deep.equal([ 123 | ACTION_FOOBAR, 124 | ACTION_FOO, 125 | ACTION_BAR, 126 | ACTION_FOOBAR 127 | ]); 128 | }); 129 | 130 | }); 131 | 132 | describe('WHEN', () => { 133 | 134 | it('should not dispatch delayed action when the condition evaluates to false', () => { 135 | 136 | const store = createStore(); 137 | const condition = sinon.stub(); 138 | condition.withArgs({}, ACTION_FOO).returns(true); 139 | 140 | store.dispatch(when(condition, () => ACTION_FOOBAR)); 141 | store.dispatch(ACTION_BAR); 142 | store.dispatch(ACTION_BAR); 143 | 144 | expect(store.getActions()).to.be.deep.equal([ 145 | ACTION_BAR, ACTION_BAR 146 | ]); 147 | 148 | }); 149 | 150 | it('should dispatch a delayed action more than once when the condition evaluates to true more than once', () => { 151 | 152 | const store = createStore(); 153 | const condition = sinon.stub(); 154 | condition.withArgs({}, ACTION_BAR).returns(true); 155 | 156 | store.dispatch(when(condition, () => ACTION_FOO)); 157 | store.dispatch(ACTION_BAR); 158 | store.dispatch(ACTION_BAR); 159 | 160 | expect(condition).to.be.called; 161 | expect(store.getActions()).to.be.deep.equal([ 162 | ACTION_BAR, ACTION_FOO, 163 | ACTION_BAR, ACTION_FOO 164 | ]); 165 | 166 | }); 167 | 168 | it('should dispatch a delayed action with a modified action name when using the createAction(action) parameter', () => { 169 | 170 | const store = createStore(); 171 | const condition = sinon.stub(); 172 | condition.withArgs({}, ACTION_BAR).returns(true); 173 | 174 | store.dispatch(when(condition, action => ({type: `__${action.type}__`}))); 175 | store.dispatch(ACTION_BAR); 176 | 177 | expect(condition).to.be.called; 178 | expect(store.getActions()).to.be.deep.equal([ 179 | ACTION_BAR, {type: '__BAR__'} 180 | ]); 181 | 182 | }); 183 | 184 | }); 185 | 186 | describe('CANCEL', () => { 187 | 188 | it('should not dispatch a delayed action when it has been cancelled', () => { 189 | 190 | const store = createStore(); 191 | const condition = sinon.stub(); 192 | condition.withArgs({}, ACTION_BAR).returns(true); 193 | const actionCreator = sinon.stub().returns(ACTION_FOO); 194 | 195 | const token = store.dispatch(when(condition, actionCreator)); 196 | store.dispatch(cancel(token)); 197 | store.dispatch(ACTION_BAR); 198 | 199 | expect(actionCreator).to.not.be.called; 200 | expect(store.getActions()).to.be.deep.equal([ 201 | ACTION_BAR 202 | ]); 203 | 204 | }); 205 | 206 | }); 207 | 208 | }); 209 | 210 | }); 211 | --------------------------------------------------------------------------------