├── .gitignore
├── .gitpod.yml
├── .npmignore
├── .prettierrc
├── README.md
├── assets
└── JotaiTaskDevTools.gif
├── dist
├── JotaiDevtools.d.ts
├── index.d.ts
├── index.js
└── index.js.map
├── example
├── .gitignore
├── package.json
├── public
│ └── index.html
├── src
│ ├── App.tsx
│ ├── index.tsx
│ └── react-app-env.d.ts
├── tsconfig.json
└── yarn.lock
├── install-detect
├── .gitignore
├── .npmignore
├── README.md
└── is-git.txt
├── package.json
├── rollup.config.js
├── src
├── JotaiDevtools.tsx
└── index.tsx
├── tsconfig.json
└── yarn.lock
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | lerna-debug.log*
8 |
9 | # Directory for instrumented libs generated by jscoverage/JSCover
10 | lib-cov
11 |
12 | # Coverage directory used by tools like istanbul
13 | coverage
14 | *.lcov
15 |
16 | # nyc test coverage
17 | .nyc_output
18 |
19 | # node-waf configuration
20 | .lock-wscript
21 |
22 | # Compiled binary addons (https://nodejs.org/api/addons.html)
23 | build/Release
24 |
25 | # Dependency directories
26 | node_modules/
27 | jspm_packages/
28 |
29 | # TypeScript v1 declaration files
30 | typings/
31 |
32 | # TypeScript cache
33 | *.tsbuildinfo
34 |
35 | # Optional npm cache directory
36 | .npm
37 |
38 | # Optional eslint cache
39 | .eslintcache
40 |
41 | # Output of 'npm pack'
42 | *.tgz
43 |
44 | # Yarn Integrity file
45 | .yarn-integrity
46 |
47 | # generate output
48 | # dist
49 |
--------------------------------------------------------------------------------
/.gitpod.yml:
--------------------------------------------------------------------------------
1 | tasks:
2 | - init: yarn install && yarn run build
3 | command: yarn run start
4 |
--------------------------------------------------------------------------------
/.npmignore:
--------------------------------------------------------------------------------
1 | dist
2 | .babelrc
3 | .storybook
4 | .gitignore
5 | .prettierrc
6 | rollup.config.js
7 | tsconfig.json
8 |
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "semi": false,
3 | "singleQuote": true
4 | }
5 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Jotai Devtools
2 |
3 | 
4 |
5 | ## About
6 |
7 | [Redux Devtools](https://github.com/reduxjs/redux-devtools) integration for [Jotai](https://github.com/pmndrs/jotai). This library only supports the Redux Devtools browser extensions ([Chrome](https://chrome.google.com/webstore/detail/redux-devtools/lmhkpmbekcpmknklioeibfkpmmfibljd), [Edge](https://microsoftedge.microsoft.com/addons/detail/redux-devtools/nnkgneoiohoecpdiaponcejilbhhikei) and [Firefox](https://addons.mozilla.org/en-US/firefox/addon/reduxdevtools/)). It does not currently support the standalone app or the embedded component.
8 |
9 | ## Installation
10 |
11 | NPM Package is coming soon. In the meantime, use the following to install:
12 |
13 | ```shell
14 | yarn add https://github.com/c0d3t3k/jotai-devtools.git
15 | ```
16 |
17 | ## How to use
18 |
19 | The Jotai Devtools library creates devtools integration instances on an [atom](https://github.com/pmndrs/jotai/blob/master/docs/core.md#atom) by atom basis. To create a devtools instance, two parameters are required:
20 |
21 | ```tsx
22 | {
23 | // The display name for the atom
24 | name: "Count Atom (Hook)",
25 |
26 | // The atom to be mapped to a devtools instance
27 | atom: countAtom,
28 | }
29 | ```
30 |
31 | Also see the [Dev.to Article](https://dev.to/c0d3t3k/jotai-not-exactly-redux-dev-tools-57i6), [Sample Code](https://github.com/c0d3t3k/recoil-todo-list/tree/jotai-devtools) and [CodeSandBox](https://codesandbox.io/s/happy-shockley-35roh)
32 |
33 | The library provides two methods to enable a devtools instance:
34 |
35 | ### Hook Method
36 |
37 | ```tsx
38 | import React from 'react'
39 |
40 | import { useAtom, atom } from 'jotai'
41 | import { useJotaiDevtools, JotaiDevtools } from '@c0d3t3k/jotai-devtools'
42 |
43 | // The atom to be monitored by the devtools.
44 | const countAtom = atom(0)
45 |
46 | const App: React.FC = () => {
47 |
48 | const [count, setCount] = useAtom(countAtom)
49 |
50 | // This hook maps the "Count Atom (Hook)" devtools instance to `countAtom`.
51 | useJotaiDevtools({
52 | name: "Count Atom (Hook)",
53 | atom: countAtom
54 | });
55 |
56 | // Some functions to modify `countAtom`
57 | const increment = () => {
58 | setCount(count + 1);
59 | }
60 |
61 | const decrement = () => {
62 | setCount(count - 1);
63 | }
64 |
65 | // The React component tree.
66 | return (
67 | <>
68 |
69 |
Count is {count}
70 |
71 |
72 |
73 | >
74 | )
75 | }
76 | ```
77 |
78 | ### Component Method
79 |
80 | ```tsx
81 | import React from 'react'
82 |
83 | import { useAtom, atom } from 'jotai'
84 | import { useJotaiDevtools, JotaiDevtools } from '@c0d3t3k/jotai-devtools'
85 |
86 | // The atom to be monitored by the devtools.
87 | const countAtom = atom(0)
88 |
89 | const App: React.FC = () => {
90 |
91 | const [count, setCount] = useAtom(countAtom)
92 |
93 | // Some functions to modify `countAtom`
94 | const increment = () => {
95 | setCount(count + 1);
96 | }
97 |
98 | const decrement = () => {
99 | setCount(count - 1);
100 | }
101 |
102 | // The React component tree.
103 | return (
104 | <>
105 | {/* This component maps the "Count Atom (Component)" devtools instance to `countAtom`. */}
106 |
107 |
108 |
109 |
Count is {count}
110 |
111 |
112 |
113 | >
114 | )
115 | }
116 | ```
117 |
118 | ## Development
119 |
120 | To compile the code once, run
121 |
122 | - `npm run build`.
123 |
124 | To compile the code once and refresh on file change, run
125 |
126 | - `npm run start`.
127 |
128 | To publish the package to npm, make sure you're logged in the correct account by running
129 |
130 | - `npm login`.
131 |
132 | Compile the package by running
133 |
134 | - `npm run build`
135 |
136 | Update the package version accordingly by using
137 |
138 | - [`npm version [patch | minor | major]`](https://docs.npmjs.com/about-semantic-versioning)
139 |
140 | Then publish the package by running
141 |
142 | - `npm publish`
143 |
144 |
145 |
--------------------------------------------------------------------------------
/assets/JotaiTaskDevTools.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/c0d3t3k/jotai-devtools/99d8b4b78c2d4570f3f117a6344c644bbdfe64bf/assets/JotaiTaskDevTools.gif
--------------------------------------------------------------------------------
/dist/JotaiDevtools.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import { WritableAtom } from 'jotai';
3 | interface Config {
4 | instanceID?: number;
5 | name?: string;
6 | serialize?: boolean;
7 | actionCreators?: any;
8 | latency?: number;
9 | predicate?: any;
10 | autoPause?: boolean;
11 | }
12 | interface JotaiDevtoolsProps {
13 | atom: WritableAtom;
14 | name?: string;
15 | config?: Config;
16 | }
17 | export declare const useJotaiDevtools: ({ atom, name, config, ...props }: JotaiDevtoolsProps) => void;
18 | export declare const JotaiDevtools: React.FC;
19 | export {};
20 |
--------------------------------------------------------------------------------
/dist/index.d.ts:
--------------------------------------------------------------------------------
1 | export * from './JotaiDevtools';
2 |
--------------------------------------------------------------------------------
/dist/index.js:
--------------------------------------------------------------------------------
1 |
2 |
3 | function ___$insertStyle(css) {
4 | if (!css) {
5 | return;
6 | }
7 | if (typeof window === 'undefined') {
8 | return;
9 | }
10 |
11 | var style = document.createElement('style');
12 |
13 | style.setAttribute('type', 'text/css');
14 | style.innerHTML = css;
15 | document.head.appendChild(style);
16 | return css;
17 | }
18 |
19 | Object.defineProperty(exports, '__esModule', { value: true });
20 |
21 | function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
22 |
23 | var jotai = require('jotai');
24 | var rxjs = require('rxjs');
25 | var operators = require('rxjs/operators');
26 | var observableHooks = require('observable-hooks');
27 | var moment = _interopDefault(require('moment'));
28 | var react = require('react');
29 | var reactUse = require('react-use');
30 |
31 | /*! *****************************************************************************
32 | Copyright (c) Microsoft Corporation. All rights reserved.
33 | Licensed under the Apache License, Version 2.0 (the "License"); you may not use
34 | this file except in compliance with the License. You may obtain a copy of the
35 | License at http://www.apache.org/licenses/LICENSE-2.0
36 |
37 | THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
38 | KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
39 | WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
40 | MERCHANTABLITY OR NON-INFRINGEMENT.
41 |
42 | See the Apache Version 2.0 License for specific language governing permissions
43 | and limitations under the License.
44 | ***************************************************************************** */
45 |
46 | var __assign = function() {
47 | __assign = Object.assign || function __assign(t) {
48 | for (var s, i = 1, n = arguments.length; i < n; i++) {
49 | s = arguments[i];
50 | for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
51 | }
52 | return t;
53 | };
54 | return __assign.apply(this, arguments);
55 | };
56 |
57 | function __rest(s, e) {
58 | var t = {};
59 | for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
60 | t[p] = s[p];
61 | if (s != null && typeof Object.getOwnPropertySymbols === "function")
62 | for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
63 | if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
64 | t[p[i]] = s[p[i]];
65 | }
66 | return t;
67 | }
68 |
69 | // import * as R from 'ramda';
70 | var wrapConnectionResult = function (result) {
71 | var subject = new rxjs.Subject();
72 | result.subscribe(function (x) { return subject.next(x); }, function (x) { return subject.error(x); }, function () { subject.complete(); });
73 | return subject;
74 | };
75 | var useJotaiDevtools = function (_a) {
76 | var atom = _a.atom, name = _a.name, config = _a.config, props = __rest(_a, ["atom", "name", "config"]);
77 | var options = __assign(__assign({}, config), { name: name });
78 | var _b = jotai.useAtom(atom), atomCurrentValue = _b[0], setAtom = _b[1];
79 | // Use hook to pipe value of atom to observable.
80 | var atom$ = observableHooks.useObservable(function (input$) { return input$.pipe(operators.map(function (_a) {
81 | var x = _a[0];
82 | return x;
83 | })); }, [atomCurrentValue]);
84 | // Flag determines whether the last state update was a 'Time Travel' event
85 | var _c = react.useState(function () { return false; }), wasTriggeredByDevtools = _c[0], setWasTriggeredByDevtools = _c[1];
86 | // Flag determines whether initial state has already been sent to DevTools extension
87 | var _d = react.useState(function () { return false; }), sentInitialState = _d[0], setSentInitialState = _d[1];
88 | var _e = react.useState(), devTools = _e[0], setDevTools = _e[1];
89 | // This observable hook provides a sanitized observable of DevTools extension events
90 | var devTools$ = observableHooks.useObservable(function (input$) { return input$.pipe(operators.filter(function (_a) {
91 | var x = _a[0];
92 | return !!x;
93 | }), operators.switchMap(function (_a) {
94 | var x = _a[0];
95 | return wrapConnectionResult(x);
96 | }), operators.catchError(function (error, observable) {
97 | console.error(error);
98 | return observable;
99 | })); }, [devTools]);
100 | // Function handles State Jumps and Time Traveling
101 | var jumpToState = function (newState) {
102 | setWasTriggeredByDevtools(true);
103 | // var oldState = atomCurrentValue();
104 | setAtom(newState);
105 | // setWasTriggeredByDevtools(false);
106 | };
107 | // Hook for subscribing to DevTools extension events
108 | observableHooks.useSubscription(devTools$, function (message) {
109 | switch (message.type) {
110 | case 'START':
111 | console.log("Atom Devtools Start", options.name, atomCurrentValue);
112 | if (!sentInitialState) {
113 | // devTools.send("\"" + options.name + "\" - Initial State", atom.getState());
114 | devTools === null || devTools === void 0 ? void 0 : devTools.send(name + " - Initial State", atomCurrentValue);
115 | setSentInitialState(true);
116 | }
117 | return;
118 | case 'DISPATCH':
119 | if (!message.state) {
120 | return;
121 | }
122 | switch (message.payload.type) {
123 | case 'JUMP_TO_ACTION':
124 | case 'JUMP_TO_STATE':
125 | jumpToState(JSON.parse(message.state));
126 | return;
127 | }
128 | return;
129 | }
130 | });
131 | // Subscription to Atom state changes
132 | observableHooks.useSubscription(atom$, function (state) {
133 | if (wasTriggeredByDevtools) {
134 | setWasTriggeredByDevtools(false);
135 | return;
136 | }
137 | devTools === null || devTools === void 0 ? void 0 : devTools.send(name + " - " + moment().toISOString(), state);
138 | });
139 | // Initial life cycle event to connect to DevTools Extension
140 | var initDevtools = function () {
141 | var devtools = window.__REDUX_DEVTOOLS_EXTENSION__;
142 | // const options = config;
143 | var name = options.name || window.document.title;
144 | if (!devtools) {
145 | console.error('Jotai Devtools plugin: Cannot find Redux Devtools browser extension. Is it installed?');
146 | return atom;
147 | }
148 | var devTools = devtools.connect(options);
149 | console.log("Get Dev Tools", devTools, rxjs.of(devTools));
150 | setDevTools(devTools);
151 | // setTimeout(() => devTools.send(name + " - Initial State", atomCurrentValue), 50)
152 | return atom;
153 | };
154 | // [React Use Hook]() that fires initialization
155 | reactUse.useLifecycles(function () {
156 | initDevtools();
157 | });
158 | };
159 | var JotaiDevtools = function (props) {
160 | useJotaiDevtools(props);
161 | return null;
162 | };
163 |
164 | exports.JotaiDevtools = JotaiDevtools;
165 | exports.useJotaiDevtools = useJotaiDevtools;
166 | //# sourceMappingURL=index.js.map
167 |
--------------------------------------------------------------------------------
/dist/index.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"index.js","sources":["../src/JotaiDevtools.tsx"],"sourcesContent":["// import * as R from 'ramda';\n\nimport { useAtom, WritableAtom } from 'jotai'\nimport { Observable, Subject, of } from 'rxjs';\nimport { map, switchMap, filter, catchError } from 'rxjs/operators';\nimport { useObservable, useSubscription } from 'observable-hooks'\n\nimport moment from 'moment';\nimport { useState } from 'react';\nimport { useLifecycles } from 'react-use';\n\ninterface Config {\n instanceID?: number,\n name?: string,\n serialize?: boolean,\n actionCreators?: any,\n latency?: number,\n predicate?: any,\n autoPause?: boolean\n}\n\ninterface Message {\n type: string,\n payload?: any,\n state?: any\n}\n\ninterface IConnectionResult {\n subscribe: (dispatch: any) => {};\n unsubscribe: () => {};\n send: (action: string, state: any) => {};\n error: (payload: any) => {};\n}\n\ntype ConnectionResult = IConnectionResult & Observable\n\ninterface Extension {\n connect: (options?: Config) => ConnectionResult;\n}\n\n\n\ninterface JotaiDevtoolsProps {\n atom: WritableAtom,\n name?: string,\n config?: Config\n}\n\nconst wrapConnectionResult = (result: ConnectionResult) => {\n const subject = new Subject()\n\n result.subscribe(\n (x: any) => subject.next(x),\n (x: any) => subject.error(x),\n () => {subject.complete()}\n );\n\n return subject;\n}\n\nexport const useJotaiDevtools = ({ atom, name, config, ...props }: JotaiDevtoolsProps) => {\n\n const options = {\n ...config,\n name\n }\n\n const [atomCurrentValue, setAtom] = useAtom(atom);\n\n // Use hook to pipe value of atom to observable.\n const atom$ = useObservable((input$) => input$.pipe(\n map(([x]) => x)\n ), [atomCurrentValue]);\n \n // Flag determines whether the last state update was a 'Time Travel' event\n const [wasTriggeredByDevtools, setWasTriggeredByDevtools] = useState(() => false);\n\n // Flag determines whether initial state has already been sent to DevTools extension\n const [sentInitialState, setSentInitialState] = useState(() => false);\n\n const [devTools, setDevTools] = useState();\n\n // This observable hook provides a sanitized observable of DevTools extension events\n const devTools$ = useObservable((input$) => input$.pipe(\n filter(([x]) => !!x),\n switchMap(([x]) => wrapConnectionResult(x as ConnectionResult)),\n catchError((error, observable) => {\n console.error(error);\n return observable;\n })\n ), [devTools]);\n\n // Function handles State Jumps and Time Traveling\n const jumpToState = (newState: any) => {\n setWasTriggeredByDevtools(true)\n // var oldState = atomCurrentValue();\n setAtom(newState);\n // setWasTriggeredByDevtools(false);\n };\n\n // Hook for subscribing to DevTools extension events\n useSubscription(devTools$, (message) => {\n switch (message.type) {\n case 'START':\n console.log(\"Atom Devtools Start\", options.name, atomCurrentValue)\n if(!sentInitialState) {\n // devTools.send(\"\\\"\" + options.name + \"\\\" - Initial State\", atom.getState());\n devTools?.send(name + \" - Initial State\", atomCurrentValue);\n setSentInitialState(true);\n }\n return;\n case 'DISPATCH':\n if (!message.state) {\n return;\n }\n switch (message.payload.type) {\n case 'JUMP_TO_ACTION':\n case 'JUMP_TO_STATE':\n jumpToState(JSON.parse(message.state));\n return;\n }\n return;\n }\n });\n\n // Subscription to Atom state changes\n useSubscription(atom$, (state) => {\n if (wasTriggeredByDevtools) {\n setWasTriggeredByDevtools(false);\n return;\n }\n devTools?.send(name + \" - \" + moment().toISOString(), state);\n })\n\n // Initial life cycle event to connect to DevTools Extension\n const initDevtools = () => {\n const devtools = (window as any).__REDUX_DEVTOOLS_EXTENSION__ as Extension;\n // const options = config;\n const name = options.name || window.document.title;\n\n if (!devtools) {\n console.error('Jotai Devtools plugin: Cannot find Redux Devtools browser extension. Is it installed?');\n return atom;\n }\n\n const devTools = devtools.connect(options);\n \n console.log(\"Get Dev Tools\", devTools, of(devTools));\n\n setDevTools(devTools);\n\n // setTimeout(() => devTools.send(name + \" - Initial State\", atomCurrentValue), 50)\n\n return atom;\n }\n\n // [React Use Hook]() that fires initialization\n useLifecycles(() => {\n initDevtools();\n });\n}\n\nexport const JotaiDevtools: React.FC = (props) => {\n useJotaiDevtools(props);\n\n return null;\n}"],"names":["Subject","useAtom","useObservable","map","useState","filter","switchMap","catchError","useSubscription","of","useLifecycles"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAgDA,IAAM,oBAAoB,GAAG,UAAC,MAAwB;IAClD,IAAM,OAAO,GAAG,IAAIA,YAAO,EAAW,CAAA;IAEtC,MAAM,CAAC,SAAS,CACZ,UAAC,CAAM,IAAK,OAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAA,EAC3B,UAAC,CAAM,IAAK,OAAA,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAA,EAC5B,cAAO,OAAO,CAAC,QAAQ,EAAE,CAAA,EAAC,CAC7B,CAAC;IAEF,OAAO,OAAO,CAAC;AACnB,CAAC,CAAA;IAEY,gBAAgB,GAAG,UAAC,EAAoD;IAAlD,IAAA,IAAI,UAAA,EAAE,IAAI,UAAA,EAAE,MAAM,YAAA,EAAK,KAAK,cAA9B,0BAAgC,CAAF;IAE3D,IAAM,OAAO,yBACN,MAAM,KACT,IAAI,MAAA,GACP,CAAA;IAEK,IAAA,KAA8BC,aAAO,CAAC,IAAI,CAAC,EAA1C,gBAAgB,QAAA,EAAE,OAAO,QAAiB,CAAC;;IAGlD,IAAM,KAAK,GAAGC,6BAAa,CAAC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,IAAI,CAC/CC,aAAG,CAAC,UAAC,EAAG;YAAF,CAAC,QAAA;QAAM,OAAA,CAAC;KAAA,CAAC,CAClB,GAAA,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;;IAGjB,IAAA,KAAsDC,cAAQ,CAAC,cAAM,OAAA,KAAK,GAAA,CAAC,EAA1E,sBAAsB,QAAA,EAAE,yBAAyB,QAAyB,CAAC;;IAG5E,IAAA,KAA0CA,cAAQ,CAAC,cAAM,OAAA,KAAK,GAAA,CAAC,EAA9D,gBAAgB,QAAA,EAAE,mBAAmB,QAAyB,CAAC;IAEhE,IAAA,KAA0BA,cAAQ,EAAoB,EAArD,QAAQ,QAAA,EAAE,WAAW,QAAgC,CAAC;;IAG7D,IAAM,SAAS,GAAGF,6BAAa,CAAC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,IAAI,CACnDG,gBAAM,CAAC,UAAC,EAAG;YAAF,CAAC,QAAA;QAAM,OAAA,CAAC,CAAC,CAAC;KAAA,CAAC,EACpBC,mBAAS,CAAC,UAAC,EAAG;YAAF,CAAC,QAAA;QAAM,OAAA,oBAAoB,CAAC,CAAqB,CAAC;KAAA,CAAC,EAC/DC,oBAAU,CAAC,UAAC,KAAK,EAAE,UAAU;QACzB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,UAAU,CAAC;KACrB,CAAC,CACL,GAAA,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;;IAGf,IAAM,WAAW,GAAG,UAAC,QAAa;QAC9B,yBAAyB,CAAC,IAAI,CAAC,CAAA;;QAE/B,OAAO,CAAC,QAAQ,CAAC,CAAC;;KAErB,CAAC;;IAGFC,+BAAe,CAAC,SAAS,EAAE,UAAC,OAAO;QAC/B,QAAQ,OAAO,CAAC,IAAI;YAChB,KAAK,OAAO;gBACR,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;gBAClE,IAAG,CAAC,gBAAgB,EAAE;;oBAElB,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,CAAC,IAAI,GAAG,kBAAkB,EAAE,gBAAgB,EAAE;oBAC5D,mBAAmB,CAAC,IAAI,CAAC,CAAC;iBAC7B;gBACD,OAAO;YACX,KAAK,UAAU;gBACX,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;oBAChB,OAAO;iBACV;gBACD,QAAQ,OAAO,CAAC,OAAO,CAAC,IAAI;oBACxB,KAAK,gBAAgB,CAAC;oBACtB,KAAK,eAAe;wBAChB,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;wBACvC,OAAO;iBACd;gBACD,OAAO;SACd;KACJ,CAAC,CAAC;;IAGHA,+BAAe,CAAC,KAAK,EAAE,UAAC,KAAK;QACzB,IAAI,sBAAsB,EAAE;YACxB,yBAAyB,CAAC,KAAK,CAAC,CAAC;YACjC,OAAO;SACV;QACD,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,CAAC,IAAI,GAAG,KAAK,GAAG,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE;KAChE,CAAC,CAAA;;IAGF,IAAM,YAAY,GAAG;QACjB,IAAM,QAAQ,GAAI,MAAc,CAAC,4BAAyC,CAAC;;QAE3E,IAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAEnD,IAAI,CAAC,QAAQ,EAAE;YACX,OAAO,CAAC,KAAK,CAAC,uFAAuF,CAAC,CAAC;YACvG,OAAO,IAAI,CAAC;SACf;QAED,IAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAE3C,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,QAAQ,EAAEC,OAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;QAErD,WAAW,CAAC,QAAQ,CAAC,CAAC;;QAItB,OAAO,IAAI,CAAC;KACf,CAAA;;IAGDC,sBAAa,CAAC;QACV,YAAY,EAAE,CAAC;KAClB,CAAC,CAAC;AACP,EAAC;IAEY,aAAa,GAAiC,UAAC,KAAK;IAC7D,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAExB,OAAO,IAAI,CAAC;AAChB;;;;;"}
--------------------------------------------------------------------------------
/example/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | lerna-debug.log*
8 |
9 | # Directory for instrumented libs generated by jscoverage/JSCover
10 | lib-cov
11 |
12 | # Coverage directory used by tools like istanbul
13 | coverage
14 | *.lcov
15 |
16 | # nyc test coverage
17 | .nyc_output
18 |
19 | # node-waf configuration
20 | .lock-wscript
21 |
22 | # Compiled binary addons (https://nodejs.org/api/addons.html)
23 | build/Release
24 |
25 | # Dependency directories
26 | node_modules/
27 | jspm_packages/
28 |
29 | # TypeScript v1 declaration files
30 | typings/
31 |
32 | # TypeScript cache
33 | *.tsbuildinfo
34 |
35 | # Optional npm cache directory
36 | .npm
37 |
38 | # Optional eslint cache
39 | .eslintcache
40 |
41 | # Output of 'npm pack'
42 | *.tgz
43 |
44 | # Yarn Integrity file
45 | .yarn-integrity
46 |
47 | # generate output
48 | dist
49 |
--------------------------------------------------------------------------------
/example/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@c0d3t3k/jotai-devtools-example",
3 | "version": "1.0.0",
4 | "description": "An example for jotai-devtools",
5 | "author": "c0d3t3k",
6 | "license": "MIT",
7 | "private": true,
8 | "engines": {
9 | "node": ">=8",
10 | "npm": ">=5"
11 | },
12 | "scripts": {
13 | "start": "react-scripts start",
14 | "build": "react-scripts build",
15 | "test": "react-scripts test",
16 | "eject": "react-scripts eject"
17 | },
18 | "dependencies": {
19 | "jotai": "^0.10.1",
20 | "moment": "^2.29.1",
21 | "observable-hooks": "^3.1.2",
22 | "react-use": "^15.3.4",
23 | "react": "^17.0.1",
24 | "react-dom": "^17.0.1",
25 | "@c0d3t3k/jotai-devtools": "file:../"
26 | },
27 | "devDependencies": {
28 | "@types/moment": "^2.13.0",
29 | "@types/react": "^16.3.13",
30 | "@types/react-dom": "^16.0.5",
31 | "react-scripts": "3.4.1",
32 | "typescript": "^3.8.0"
33 | },
34 | "browserslist": {
35 | "production": [
36 | ">0.2%",
37 | "not dead",
38 | "not op_mini all"
39 | ],
40 | "development": [
41 | "last 1 chrome version",
42 | "last 1 firefox version",
43 | "last 1 safari version"
44 | ]
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/example/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
9 |
10 |
14 |
15 | Jotai Devtools Example
16 |
20 |
21 |
22 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/example/src/App.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 |
3 | import { useAtom, atom } from 'jotai'
4 | import { useJotaiDevtools, JotaiDevtools } from '@c0d3t3k/jotai-devtools'
5 |
6 | // The atom to be monitored by the devtools.
7 | const countAtom = atom(0)
8 |
9 | const App: React.FC = () => {
10 |
11 | const [count, setCount] = useAtom(countAtom)
12 |
13 | // This hook maps the "Count Atom (Hook)" devtools instance to `countAtom`.
14 | useJotaiDevtools({
15 | name: "Count Atom (Hook)",
16 | atom: countAtom
17 | });
18 |
19 | // Some functions to modify `countAtom`
20 | const increment = () => {
21 | setCount(count + 1);
22 | }
23 |
24 | const decrement = () => {
25 | setCount(count - 1);
26 | }
27 |
28 | // The React component tree.
29 | return (
30 | <>
31 | {/* This component maps the "Count Atom (Component)" devtools instance to `countAtom`. */}
32 |
33 |
34 |
35 |
Count is {count}
36 |
37 |
38 |
39 | >
40 | )
41 | }
42 |
43 | export default App
44 |
--------------------------------------------------------------------------------
/example/src/index.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import ReactDOM from 'react-dom'
3 | import App from './App'
4 | import { Provider } from 'jotai'
5 |
6 | ReactDOM.render(
7 | //
8 |
9 |
10 | ,
11 | // ,
12 | document.getElementById('root'),
13 | )
14 |
--------------------------------------------------------------------------------
/example/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/example/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es5",
4 | "lib": [
5 | "dom",
6 | "dom.iterable",
7 | "esnext"
8 | ],
9 | "allowJs": true,
10 | "skipLibCheck": true,
11 | "esModuleInterop": true,
12 | "allowSyntheticDefaultImports": true,
13 | "strict": true,
14 | "forceConsistentCasingInFileNames": true,
15 | "module": "esnext",
16 | "moduleResolution": "node",
17 | "resolveJsonModule": true,
18 | "noEmit": true,
19 | "jsx": "react",
20 | "isolatedModules": true
21 | },
22 | "include": [
23 | "src"
24 | ]
25 | }
26 |
--------------------------------------------------------------------------------
/install-detect/.gitignore:
--------------------------------------------------------------------------------
1 | is-fs.*
2 | is-npm.*
--------------------------------------------------------------------------------
/install-detect/.npmignore:
--------------------------------------------------------------------------------
1 | is-fs.*
2 | is-git.*
--------------------------------------------------------------------------------
/install-detect/README.md:
--------------------------------------------------------------------------------
1 | # Install-Detect
2 |
3 | This folder enables git package install detection as described here:
4 | [https://stackoverflow.com/a/48392815](https://stackoverflow.com/a/48392815)
--------------------------------------------------------------------------------
/install-detect/is-git.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/c0d3t3k/jotai-devtools/99d8b4b78c2d4570f3f117a6344c644bbdfe64bf/install-detect/is-git.txt
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@c0d3t3k/jotai-devtools",
3 | "version": "0.10.2",
4 | "description": "Redux Devtools integrations for jotai.",
5 | "author": "c0d3t3k",
6 | "license": "MIT",
7 | "repository": "c0d3t3k/jotai-devtools",
8 | "main": "dist/index.js",
9 | "private": true,
10 | "engines": {
11 | "node": ">=8",
12 | "npm": ">=5"
13 | },
14 | "scripts": {
15 | "build": "rollup -c",
16 | "start": "rollup -c -w",
17 | "prepare": "rollup -c",
18 | "prepublish": "rollup -c"
19 | },
20 | "dependencies": {
21 | "jotai": "^0.10.1",
22 | "moment": "^2.29.1",
23 | "observable-hooks": "^3.1.2",
24 | "react-use": "^15.3.4",
25 | "rxjs": "^6.6.3"
26 | },
27 | "peerDependencies": {
28 | "react": "=< 16.13.0",
29 | "react-dom": "=< 16.13.0"
30 | },
31 | "devDependencies": {
32 | "@types/moment": "^2.13.0",
33 | "@types/react": "^16.9.0",
34 | "@types/react-dom": "^16.9.0",
35 | "babel-core": "^6.26.3",
36 | "babel-runtime": "^6.26.0",
37 | "react": "^16.12.0",
38 | "react-dom": "^16.12.0",
39 | "rollup": "^1.29.0",
40 | "rollup-plugin-sass": "^1.2.2",
41 | "rollup-plugin-typescript2": "^0.25.3",
42 | "typescript": "^4.0.0"
43 | },
44 | "files": [
45 | "dist"
46 | ],
47 | "keywords": [
48 | "react",
49 | "typescript",
50 | "npm",
51 | "jotai",
52 | "devtools",
53 | "redux-devtools"
54 | ]
55 | }
56 |
--------------------------------------------------------------------------------
/rollup.config.js:
--------------------------------------------------------------------------------
1 | import sass from 'rollup-plugin-sass'
2 | import typescript from 'rollup-plugin-typescript2'
3 |
4 | import pkg from './package.json'
5 |
6 | export default {
7 | input: 'src/index.tsx',
8 | output: [
9 | {
10 | file: pkg.main,
11 | format: 'cjs',
12 | exports: 'named',
13 | sourcemap: true,
14 | strict: false
15 | }
16 | ],
17 | plugins: [sass({ insert: true }), typescript()],
18 | external: ['react', 'react-dom']
19 | }
20 |
--------------------------------------------------------------------------------
/src/JotaiDevtools.tsx:
--------------------------------------------------------------------------------
1 | // import * as R from 'ramda';
2 |
3 | import { useAtom, WritableAtom } from 'jotai'
4 | import { Observable, Subject, of } from 'rxjs';
5 | import { map, switchMap, filter, catchError } from 'rxjs/operators';
6 | import { useObservable, useSubscription } from 'observable-hooks'
7 |
8 | import moment from 'moment';
9 | import { useState } from 'react';
10 | import { useLifecycles } from 'react-use';
11 |
12 | interface Config {
13 | instanceID?: number,
14 | name?: string,
15 | serialize?: boolean,
16 | actionCreators?: any,
17 | latency?: number,
18 | predicate?: any,
19 | autoPause?: boolean
20 | }
21 |
22 | interface Message {
23 | type: string,
24 | payload?: any,
25 | state?: any
26 | }
27 |
28 | interface IConnectionResult {
29 | subscribe: (dispatch: any) => {};
30 | unsubscribe: () => {};
31 | send: (action: string, state: any) => {};
32 | error: (payload: any) => {};
33 | }
34 |
35 | type ConnectionResult = IConnectionResult & Observable
36 |
37 | interface Extension {
38 | connect: (options?: Config) => ConnectionResult;
39 | }
40 |
41 |
42 |
43 | interface JotaiDevtoolsProps {
44 | atom: WritableAtom,
45 | name?: string,
46 | config?: Config
47 | }
48 |
49 | const wrapConnectionResult = (result: ConnectionResult) => {
50 | const subject = new Subject()
51 |
52 | result.subscribe(
53 | (x: any) => subject.next(x),
54 | (x: any) => subject.error(x),
55 | () => {subject.complete()}
56 | );
57 |
58 | return subject;
59 | }
60 |
61 | export const useJotaiDevtools = ({ atom, name, config, ...props }: JotaiDevtoolsProps) => {
62 |
63 | const options = {
64 | ...config,
65 | name
66 | }
67 |
68 | const [atomCurrentValue, setAtom] = useAtom(atom);
69 |
70 | // Use hook to pipe value of atom to observable.
71 | const atom$ = useObservable((input$) => input$.pipe(
72 | map(([x]) => x)
73 | ), [atomCurrentValue]);
74 |
75 | // Flag determines whether the last state update was a 'Time Travel' event
76 | const [wasTriggeredByDevtools, setWasTriggeredByDevtools] = useState(() => false);
77 |
78 | // Flag determines whether initial state has already been sent to DevTools extension
79 | const [sentInitialState, setSentInitialState] = useState(() => false);
80 |
81 | const [devTools, setDevTools] = useState();
82 |
83 | // This observable hook provides a sanitized observable of DevTools extension events
84 | const devTools$ = useObservable((input$) => input$.pipe(
85 | filter(([x]) => !!x),
86 | switchMap(([x]) => wrapConnectionResult(x as ConnectionResult)),
87 | catchError((error, observable) => {
88 | console.error(error);
89 | return observable;
90 | })
91 | ), [devTools]);
92 |
93 | // Function handles State Jumps and Time Traveling
94 | const jumpToState = (newState: any) => {
95 | setWasTriggeredByDevtools(true)
96 | // var oldState = atomCurrentValue();
97 | setAtom(newState);
98 | // setWasTriggeredByDevtools(false);
99 | };
100 |
101 | // Hook for subscribing to DevTools extension events
102 | useSubscription(devTools$, (message) => {
103 | switch (message.type) {
104 | case 'START':
105 | console.log("Atom Devtools Start", options.name, atomCurrentValue)
106 | if(!sentInitialState) {
107 | // devTools.send("\"" + options.name + "\" - Initial State", atom.getState());
108 | devTools?.send(name + " - Initial State", atomCurrentValue);
109 | setSentInitialState(true);
110 | }
111 | return;
112 | case 'DISPATCH':
113 | if (!message.state) {
114 | return;
115 | }
116 | switch (message.payload.type) {
117 | case 'JUMP_TO_ACTION':
118 | case 'JUMP_TO_STATE':
119 | jumpToState(JSON.parse(message.state));
120 | return;
121 | }
122 | return;
123 | }
124 | });
125 |
126 | // Subscription to Atom state changes
127 | useSubscription(atom$, (state) => {
128 | if (wasTriggeredByDevtools) {
129 | setWasTriggeredByDevtools(false);
130 | return;
131 | }
132 | devTools?.send(name + " - " + moment().toISOString(), state);
133 | })
134 |
135 | // Initial life cycle event to connect to DevTools Extension
136 | const initDevtools = () => {
137 | const devtools = (window as any).__REDUX_DEVTOOLS_EXTENSION__ as Extension;
138 | // const options = config;
139 | const name = options.name || window.document.title;
140 |
141 | if (!devtools) {
142 | console.error('Jotai Devtools plugin: Cannot find Redux Devtools browser extension. Is it installed?');
143 | return atom;
144 | }
145 |
146 | const devTools = devtools.connect(options);
147 |
148 | console.log("Get Dev Tools", devTools, of(devTools));
149 |
150 | setDevTools(devTools);
151 |
152 | // setTimeout(() => devTools.send(name + " - Initial State", atomCurrentValue), 50)
153 |
154 | return atom;
155 | }
156 |
157 | // [React Use Hook]() that fires initialization
158 | useLifecycles(() => {
159 | initDevtools();
160 | });
161 | }
162 |
163 | export const JotaiDevtools: React.FC = (props) => {
164 | useJotaiDevtools(props);
165 |
166 | return null;
167 | }
--------------------------------------------------------------------------------
/src/index.tsx:
--------------------------------------------------------------------------------
1 | export * from './JotaiDevtools';
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "outDir": "dist",
4 | "module": "esnext",
5 | "target": "es5",
6 | "lib": ["es6", "dom", "es2016", "es2017"],
7 | "sourceMap": true,
8 | "allowJs": false,
9 | "jsx": "react",
10 | "declaration": true,
11 | "moduleResolution": "node",
12 | "forceConsistentCasingInFileNames": true,
13 | "suppressImplicitAnyIndexErrors": true,
14 | "allowSyntheticDefaultImports": true
15 | },
16 | "include": ["src"],
17 | "exclude": ["node_modules", "dist", "example", "rollup.config.js"]
18 | }
19 |
--------------------------------------------------------------------------------
/yarn.lock:
--------------------------------------------------------------------------------
1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2 | # yarn lockfile v1
3 |
4 |
5 | "@babel/runtime@^7.1.2":
6 | version "7.12.1"
7 | resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.12.1.tgz#b4116a6b6711d010b2dad3b7b6e43bf1b9954740"
8 | integrity sha512-J5AIf3vPj3UwXaAzb5j1xM4WAQDX3EMgemF8rjCP3SoW09LfRKAXQKt6CoVYl230P6iWdRcBbnLDDdnqWxZSCA==
9 | dependencies:
10 | regenerator-runtime "^0.13.4"
11 |
12 | "@types/estree@*":
13 | version "0.0.45"
14 | resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.45.tgz#e9387572998e5ecdac221950dab3e8c3b16af884"
15 | integrity sha512-jnqIUKDUqJbDIUxm0Uj7bnlMnRm1T/eZ9N+AVMqhPgzrba2GhGG5o/jCTwmdPK709nEZsGoMzXEDUjcXHa3W0g==
16 |
17 | "@types/js-cookie@2.2.6":
18 | version "2.2.6"
19 | resolved "https://registry.yarnpkg.com/@types/js-cookie/-/js-cookie-2.2.6.tgz#f1a1cb35aff47bc5cfb05cb0c441ca91e914c26f"
20 | integrity sha512-+oY0FDTO2GYKEV0YPvSshGq9t7YozVkgvXLty7zogQNuCxBhT9/3INX9Q7H1aRZ4SUDRXAKlJuA4EA5nTt7SNw==
21 |
22 | "@types/moment@^2.13.0":
23 | version "2.13.0"
24 | resolved "https://registry.yarnpkg.com/@types/moment/-/moment-2.13.0.tgz#604ebd189bc3bc34a1548689404e61a2a4aac896"
25 | integrity sha1-YE69GJvDvDShVIaJQE5hoqSqyJY=
26 | dependencies:
27 | moment "*"
28 |
29 | "@types/node@*":
30 | version "14.14.6"
31 | resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.6.tgz#146d3da57b3c636cc0d1769396ce1cfa8991147f"
32 | integrity sha512-6QlRuqsQ/Ox/aJEQWBEJG7A9+u7oSYl3mem/K8IzxXG/kAGbV1YPD9Bg9Zw3vyxC/YP+zONKwy8hGkSt1jxFMw==
33 |
34 | "@types/prop-types@*":
35 | version "15.7.3"
36 | resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7"
37 | integrity sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==
38 |
39 | "@types/react-dom@^16.9.0":
40 | version "16.9.9"
41 | resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.9.9.tgz#d2d0a6f720a0206369ccbefff752ba37b9583136"
42 | integrity sha512-jE16FNWO3Logq/Lf+yvEAjKzhpST/Eac8EMd1i4dgZdMczfgqC8EjpxwNgEe3SExHYLliabXDh9DEhhqnlXJhg==
43 | dependencies:
44 | "@types/react" "*"
45 |
46 | "@types/react@*", "@types/react@^16.9.0":
47 | version "16.9.55"
48 | resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.55.tgz#47078587f5bfe028a23b6b46c7b94ac0d436acff"
49 | integrity sha512-6KLe6lkILeRwyyy7yG9rULKJ0sXplUsl98MGoCfpteXf9sPWFWWMknDcsvubcpaTdBuxtsLF6HDUwdApZL/xIg==
50 | dependencies:
51 | "@types/prop-types" "*"
52 | csstype "^3.0.2"
53 |
54 | "@xobotyi/scrollbar-width@1.9.5":
55 | version "1.9.5"
56 | resolved "https://registry.yarnpkg.com/@xobotyi/scrollbar-width/-/scrollbar-width-1.9.5.tgz#80224a6919272f405b87913ca13b92929bdf3c4d"
57 | integrity sha512-N8tkAACJx2ww8vFMneJmaAgmjAG1tnVBZJRLRcx061tmsLRZHSEZSLuGWnwPtunsSLvSqXQ2wfp7Mgqg1I+2dQ==
58 |
59 | acorn@^7.1.0:
60 | version "7.4.1"
61 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
62 | integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
63 |
64 | ansi-regex@^2.0.0:
65 | version "2.1.1"
66 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
67 | integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8=
68 |
69 | ansi-styles@^2.2.1:
70 | version "2.2.1"
71 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
72 | integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=
73 |
74 | anymatch@^2.0.0:
75 | version "2.0.0"
76 | resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb"
77 | integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==
78 | dependencies:
79 | micromatch "^3.1.4"
80 | normalize-path "^2.1.1"
81 |
82 | arr-diff@^4.0.0:
83 | version "4.0.0"
84 | resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520"
85 | integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=
86 |
87 | arr-flatten@^1.1.0:
88 | version "1.1.0"
89 | resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1"
90 | integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==
91 |
92 | arr-union@^3.1.0:
93 | version "3.1.0"
94 | resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4"
95 | integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=
96 |
97 | array-unique@^0.3.2:
98 | version "0.3.2"
99 | resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428"
100 | integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=
101 |
102 | assign-symbols@^1.0.0:
103 | version "1.0.0"
104 | resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367"
105 | integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=
106 |
107 | async-each@^1.0.1:
108 | version "1.0.3"
109 | resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf"
110 | integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==
111 |
112 | atob@^2.1.2:
113 | version "2.1.2"
114 | resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
115 | integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==
116 |
117 | babel-code-frame@^6.26.0:
118 | version "6.26.0"
119 | resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b"
120 | integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=
121 | dependencies:
122 | chalk "^1.1.3"
123 | esutils "^2.0.2"
124 | js-tokens "^3.0.2"
125 |
126 | babel-core@^6.26.0, babel-core@^6.26.3:
127 | version "6.26.3"
128 | resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207"
129 | integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==
130 | dependencies:
131 | babel-code-frame "^6.26.0"
132 | babel-generator "^6.26.0"
133 | babel-helpers "^6.24.1"
134 | babel-messages "^6.23.0"
135 | babel-register "^6.26.0"
136 | babel-runtime "^6.26.0"
137 | babel-template "^6.26.0"
138 | babel-traverse "^6.26.0"
139 | babel-types "^6.26.0"
140 | babylon "^6.18.0"
141 | convert-source-map "^1.5.1"
142 | debug "^2.6.9"
143 | json5 "^0.5.1"
144 | lodash "^4.17.4"
145 | minimatch "^3.0.4"
146 | path-is-absolute "^1.0.1"
147 | private "^0.1.8"
148 | slash "^1.0.0"
149 | source-map "^0.5.7"
150 |
151 | babel-generator@^6.26.0:
152 | version "6.26.1"
153 | resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90"
154 | integrity sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==
155 | dependencies:
156 | babel-messages "^6.23.0"
157 | babel-runtime "^6.26.0"
158 | babel-types "^6.26.0"
159 | detect-indent "^4.0.0"
160 | jsesc "^1.3.0"
161 | lodash "^4.17.4"
162 | source-map "^0.5.7"
163 | trim-right "^1.0.1"
164 |
165 | babel-helpers@^6.24.1:
166 | version "6.24.1"
167 | resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2"
168 | integrity sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=
169 | dependencies:
170 | babel-runtime "^6.22.0"
171 | babel-template "^6.24.1"
172 |
173 | babel-messages@^6.23.0:
174 | version "6.23.0"
175 | resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e"
176 | integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=
177 | dependencies:
178 | babel-runtime "^6.22.0"
179 |
180 | babel-register@^6.26.0:
181 | version "6.26.0"
182 | resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071"
183 | integrity sha1-btAhFz4vy0htestFxgCahW9kcHE=
184 | dependencies:
185 | babel-core "^6.26.0"
186 | babel-runtime "^6.26.0"
187 | core-js "^2.5.0"
188 | home-or-tmp "^2.0.0"
189 | lodash "^4.17.4"
190 | mkdirp "^0.5.1"
191 | source-map-support "^0.4.15"
192 |
193 | babel-runtime@^6.22.0, babel-runtime@^6.23.0, babel-runtime@^6.26.0:
194 | version "6.26.0"
195 | resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe"
196 | integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4=
197 | dependencies:
198 | core-js "^2.4.0"
199 | regenerator-runtime "^0.11.0"
200 |
201 | babel-template@^6.24.1, babel-template@^6.26.0:
202 | version "6.26.0"
203 | resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02"
204 | integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=
205 | dependencies:
206 | babel-runtime "^6.26.0"
207 | babel-traverse "^6.26.0"
208 | babel-types "^6.26.0"
209 | babylon "^6.18.0"
210 | lodash "^4.17.4"
211 |
212 | babel-traverse@^6.26.0:
213 | version "6.26.0"
214 | resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee"
215 | integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=
216 | dependencies:
217 | babel-code-frame "^6.26.0"
218 | babel-messages "^6.23.0"
219 | babel-runtime "^6.26.0"
220 | babel-types "^6.26.0"
221 | babylon "^6.18.0"
222 | debug "^2.6.8"
223 | globals "^9.18.0"
224 | invariant "^2.2.2"
225 | lodash "^4.17.4"
226 |
227 | babel-types@^6.26.0:
228 | version "6.26.0"
229 | resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497"
230 | integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=
231 | dependencies:
232 | babel-runtime "^6.26.0"
233 | esutils "^2.0.2"
234 | lodash "^4.17.4"
235 | to-fast-properties "^1.0.3"
236 |
237 | babylon@^6.18.0:
238 | version "6.18.0"
239 | resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3"
240 | integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==
241 |
242 | balanced-match@^1.0.0:
243 | version "1.0.0"
244 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
245 | integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c=
246 |
247 | base@^0.11.1:
248 | version "0.11.2"
249 | resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f"
250 | integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==
251 | dependencies:
252 | cache-base "^1.0.1"
253 | class-utils "^0.3.5"
254 | component-emitter "^1.2.1"
255 | define-property "^1.0.0"
256 | isobject "^3.0.1"
257 | mixin-deep "^1.2.0"
258 | pascalcase "^0.1.1"
259 |
260 | binary-extensions@^1.0.0:
261 | version "1.13.1"
262 | resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65"
263 | integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==
264 |
265 | bindings@^1.5.0:
266 | version "1.5.0"
267 | resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df"
268 | integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==
269 | dependencies:
270 | file-uri-to-path "1.0.0"
271 |
272 | bowser@^1.7.3:
273 | version "1.9.4"
274 | resolved "https://registry.yarnpkg.com/bowser/-/bowser-1.9.4.tgz#890c58a2813a9d3243704334fa81b96a5c150c9a"
275 | integrity sha512-9IdMmj2KjigRq6oWhmwv1W36pDuA4STQZ8q6YO9um+x07xgYNCD3Oou+WP/3L1HNz7iqythGet3/p4wvc8AAwQ==
276 |
277 | brace-expansion@^1.1.7:
278 | version "1.1.11"
279 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
280 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
281 | dependencies:
282 | balanced-match "^1.0.0"
283 | concat-map "0.0.1"
284 |
285 | braces@^2.3.1, braces@^2.3.2:
286 | version "2.3.2"
287 | resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729"
288 | integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==
289 | dependencies:
290 | arr-flatten "^1.1.0"
291 | array-unique "^0.3.2"
292 | extend-shallow "^2.0.1"
293 | fill-range "^4.0.0"
294 | isobject "^3.0.1"
295 | repeat-element "^1.1.2"
296 | snapdragon "^0.8.1"
297 | snapdragon-node "^2.0.1"
298 | split-string "^3.0.2"
299 | to-regex "^3.0.1"
300 |
301 | cache-base@^1.0.1:
302 | version "1.0.1"
303 | resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2"
304 | integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==
305 | dependencies:
306 | collection-visit "^1.0.0"
307 | component-emitter "^1.2.1"
308 | get-value "^2.0.6"
309 | has-value "^1.0.0"
310 | isobject "^3.0.1"
311 | set-value "^2.0.0"
312 | to-object-path "^0.3.0"
313 | union-value "^1.0.0"
314 | unset-value "^1.0.0"
315 |
316 | chalk@^1.1.3:
317 | version "1.1.3"
318 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
319 | integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=
320 | dependencies:
321 | ansi-styles "^2.2.1"
322 | escape-string-regexp "^1.0.2"
323 | has-ansi "^2.0.0"
324 | strip-ansi "^3.0.0"
325 | supports-color "^2.0.0"
326 |
327 | chokidar@^2.0.0:
328 | version "2.1.8"
329 | resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917"
330 | integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==
331 | dependencies:
332 | anymatch "^2.0.0"
333 | async-each "^1.0.1"
334 | braces "^2.3.2"
335 | glob-parent "^3.1.0"
336 | inherits "^2.0.3"
337 | is-binary-path "^1.0.0"
338 | is-glob "^4.0.0"
339 | normalize-path "^3.0.0"
340 | path-is-absolute "^1.0.0"
341 | readdirp "^2.2.1"
342 | upath "^1.1.1"
343 | optionalDependencies:
344 | fsevents "^1.2.7"
345 |
346 | class-utils@^0.3.5:
347 | version "0.3.6"
348 | resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463"
349 | integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==
350 | dependencies:
351 | arr-union "^3.1.0"
352 | define-property "^0.2.5"
353 | isobject "^3.0.0"
354 | static-extend "^0.1.1"
355 |
356 | collection-visit@^1.0.0:
357 | version "1.0.0"
358 | resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0"
359 | integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=
360 | dependencies:
361 | map-visit "^1.0.0"
362 | object-visit "^1.0.0"
363 |
364 | commondir@^1.0.1:
365 | version "1.0.1"
366 | resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
367 | integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=
368 |
369 | component-emitter@^1.2.1:
370 | version "1.3.0"
371 | resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0"
372 | integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==
373 |
374 | concat-map@0.0.1:
375 | version "0.0.1"
376 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
377 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
378 |
379 | convert-source-map@^1.5.1:
380 | version "1.7.0"
381 | resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442"
382 | integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==
383 | dependencies:
384 | safe-buffer "~5.1.1"
385 |
386 | copy-descriptor@^0.1.0:
387 | version "0.1.1"
388 | resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d"
389 | integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=
390 |
391 | copy-to-clipboard@^3.2.0:
392 | version "3.3.1"
393 | resolved "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz#115aa1a9998ffab6196f93076ad6da3b913662ae"
394 | integrity sha512-i13qo6kIHTTpCm8/Wup+0b1mVWETvu2kIMzKoK8FpkLkFxlt0znUAHcMzox+T8sPlqtZXq3CulEjQHsYiGFJUw==
395 | dependencies:
396 | toggle-selection "^1.0.6"
397 |
398 | core-js@^2.4.0, core-js@^2.5.0:
399 | version "2.6.11"
400 | resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.11.tgz#38831469f9922bded8ee21c9dc46985e0399308c"
401 | integrity sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==
402 |
403 | core-util-is@~1.0.0:
404 | version "1.0.2"
405 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
406 | integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
407 |
408 | css-in-js-utils@^2.0.0:
409 | version "2.0.1"
410 | resolved "https://registry.yarnpkg.com/css-in-js-utils/-/css-in-js-utils-2.0.1.tgz#3b472b398787291b47cfe3e44fecfdd9e914ba99"
411 | integrity sha512-PJF0SpJT+WdbVVt0AOYp9C8GnuruRlL/UFW7932nLWmFLQTaWEzTBQEx7/hn4BuV+WON75iAViSUJLiU3PKbpA==
412 | dependencies:
413 | hyphenate-style-name "^1.0.2"
414 | isobject "^3.0.1"
415 |
416 | css-tree@^1.0.0-alpha.28:
417 | version "1.0.0"
418 | resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0.tgz#21993fa270d742642a90409a2c0cb3ac0298adf6"
419 | integrity sha512-CdVYz/Yuqw0VdKhXPBIgi8DO3NicJVYZNWeX9XcIuSp9ZoFT5IcleVRW07O5rMjdcx1mb+MEJPknTTEW7DdsYw==
420 | dependencies:
421 | mdn-data "2.0.12"
422 | source-map "^0.6.1"
423 |
424 | csstype@^2.5.5:
425 | version "2.6.13"
426 | resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.13.tgz#a6893015b90e84dd6e85d0e3b442a1e84f2dbe0f"
427 | integrity sha512-ul26pfSQTZW8dcOnD2iiJssfXw0gdNVX9IJDH/X3K5DGPfj+fUYe3kB+swUY6BF3oZDxaID3AJt+9/ojSAE05A==
428 |
429 | csstype@^3.0.2:
430 | version "3.0.4"
431 | resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.4.tgz#b156d7be03b84ff425c9a0a4b1e5f4da9c5ca888"
432 | integrity sha512-xc8DUsCLmjvCfoD7LTGE0ou2MIWLx0K9RCZwSHMOdynqRsP4MtUcLeqh1HcQ2dInwDTqn+3CE0/FZh1et+p4jA==
433 |
434 | debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9:
435 | version "2.6.9"
436 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
437 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
438 | dependencies:
439 | ms "2.0.0"
440 |
441 | decode-uri-component@^0.2.0:
442 | version "0.2.0"
443 | resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
444 | integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=
445 |
446 | define-property@^0.2.5:
447 | version "0.2.5"
448 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116"
449 | integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=
450 | dependencies:
451 | is-descriptor "^0.1.0"
452 |
453 | define-property@^1.0.0:
454 | version "1.0.0"
455 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6"
456 | integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY=
457 | dependencies:
458 | is-descriptor "^1.0.0"
459 |
460 | define-property@^2.0.2:
461 | version "2.0.2"
462 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d"
463 | integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==
464 | dependencies:
465 | is-descriptor "^1.0.2"
466 | isobject "^3.0.1"
467 |
468 | detect-indent@^4.0.0:
469 | version "4.0.0"
470 | resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208"
471 | integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg=
472 | dependencies:
473 | repeating "^2.0.0"
474 |
475 | error-stack-parser@^2.0.6:
476 | version "2.0.6"
477 | resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-2.0.6.tgz#5a99a707bd7a4c58a797902d48d82803ede6aad8"
478 | integrity sha512-d51brTeqC+BHlwF0BhPtcYgF5nlzf9ZZ0ZIUQNZpc9ZB9qw5IJ2diTrBY9jlCJkTLITYPjmiX6OWCwH+fuyNgQ==
479 | dependencies:
480 | stackframe "^1.1.1"
481 |
482 | escape-string-regexp@^1.0.2:
483 | version "1.0.5"
484 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
485 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
486 |
487 | estree-walker@^0.6.1:
488 | version "0.6.1"
489 | resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.6.1.tgz#53049143f40c6eb918b23671d1fe3219f3a1b362"
490 | integrity sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==
491 |
492 | esutils@^2.0.2:
493 | version "2.0.3"
494 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
495 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
496 |
497 | expand-brackets@^2.1.4:
498 | version "2.1.4"
499 | resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622"
500 | integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI=
501 | dependencies:
502 | debug "^2.3.3"
503 | define-property "^0.2.5"
504 | extend-shallow "^2.0.1"
505 | posix-character-classes "^0.1.0"
506 | regex-not "^1.0.0"
507 | snapdragon "^0.8.1"
508 | to-regex "^3.0.1"
509 |
510 | extend-shallow@^2.0.1:
511 | version "2.0.1"
512 | resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f"
513 | integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=
514 | dependencies:
515 | is-extendable "^0.1.0"
516 |
517 | extend-shallow@^3.0.0, extend-shallow@^3.0.2:
518 | version "3.0.2"
519 | resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8"
520 | integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=
521 | dependencies:
522 | assign-symbols "^1.0.0"
523 | is-extendable "^1.0.1"
524 |
525 | extglob@^2.0.4:
526 | version "2.0.4"
527 | resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543"
528 | integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==
529 | dependencies:
530 | array-unique "^0.3.2"
531 | define-property "^1.0.0"
532 | expand-brackets "^2.1.4"
533 | extend-shallow "^2.0.1"
534 | fragment-cache "^0.2.1"
535 | regex-not "^1.0.0"
536 | snapdragon "^0.8.1"
537 | to-regex "^3.0.1"
538 |
539 | fast-deep-equal@^3.1.3:
540 | version "3.1.3"
541 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
542 | integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
543 |
544 | fast-shallow-equal@^1.0.0:
545 | version "1.0.0"
546 | resolved "https://registry.yarnpkg.com/fast-shallow-equal/-/fast-shallow-equal-1.0.0.tgz#d4dcaf6472440dcefa6f88b98e3251e27f25628b"
547 | integrity sha512-HPtaa38cPgWvaCFmRNhlc6NG7pv6NUHqjPgVAkWGoB9mQMwYB27/K0CvOM5Czy+qpT3e8XJ6Q4aPAnzpNpzNaw==
548 |
549 | fastest-stable-stringify@^1.0.1:
550 | version "1.0.1"
551 | resolved "https://registry.yarnpkg.com/fastest-stable-stringify/-/fastest-stable-stringify-1.0.1.tgz#9122d406d4c9d98bea644a6b6853d5874b87b028"
552 | integrity sha1-kSLUBtTJ2YvqZEpraFPVh0uHsCg=
553 |
554 | file-uri-to-path@1.0.0:
555 | version "1.0.0"
556 | resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd"
557 | integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==
558 |
559 | fill-range@^4.0.0:
560 | version "4.0.0"
561 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7"
562 | integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=
563 | dependencies:
564 | extend-shallow "^2.0.1"
565 | is-number "^3.0.0"
566 | repeat-string "^1.6.1"
567 | to-regex-range "^2.1.0"
568 |
569 | find-cache-dir@^3.0.0:
570 | version "3.3.1"
571 | resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880"
572 | integrity sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==
573 | dependencies:
574 | commondir "^1.0.1"
575 | make-dir "^3.0.2"
576 | pkg-dir "^4.1.0"
577 |
578 | find-up@^4.0.0:
579 | version "4.1.0"
580 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19"
581 | integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==
582 | dependencies:
583 | locate-path "^5.0.0"
584 | path-exists "^4.0.0"
585 |
586 | for-in@^1.0.2:
587 | version "1.0.2"
588 | resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
589 | integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=
590 |
591 | fragment-cache@^0.2.1:
592 | version "0.2.1"
593 | resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19"
594 | integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=
595 | dependencies:
596 | map-cache "^0.2.2"
597 |
598 | fs-extra@8.1.0:
599 | version "8.1.0"
600 | resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0"
601 | integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==
602 | dependencies:
603 | graceful-fs "^4.2.0"
604 | jsonfile "^4.0.0"
605 | universalify "^0.1.0"
606 |
607 | fs-extra@^0.30.0:
608 | version "0.30.0"
609 | resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0"
610 | integrity sha1-8jP/zAjU2n1DLapEl3aYnbHfk/A=
611 | dependencies:
612 | graceful-fs "^4.1.2"
613 | jsonfile "^2.1.0"
614 | klaw "^1.0.0"
615 | path-is-absolute "^1.0.0"
616 | rimraf "^2.2.8"
617 |
618 | fs.realpath@^1.0.0:
619 | version "1.0.0"
620 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
621 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
622 |
623 | fsevents@^1.2.7:
624 | version "1.2.13"
625 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38"
626 | integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==
627 | dependencies:
628 | bindings "^1.5.0"
629 | nan "^2.12.1"
630 |
631 | function-bind@^1.1.1:
632 | version "1.1.1"
633 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
634 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
635 |
636 | get-value@^2.0.3, get-value@^2.0.6:
637 | version "2.0.6"
638 | resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28"
639 | integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=
640 |
641 | glob-parent@^3.1.0:
642 | version "3.1.0"
643 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae"
644 | integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=
645 | dependencies:
646 | is-glob "^3.1.0"
647 | path-dirname "^1.0.0"
648 |
649 | glob@^7.1.3:
650 | version "7.1.6"
651 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6"
652 | integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==
653 | dependencies:
654 | fs.realpath "^1.0.0"
655 | inflight "^1.0.4"
656 | inherits "2"
657 | minimatch "^3.0.4"
658 | once "^1.3.0"
659 | path-is-absolute "^1.0.0"
660 |
661 | globals@^9.18.0:
662 | version "9.18.0"
663 | resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a"
664 | integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==
665 |
666 | graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0:
667 | version "4.2.4"
668 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb"
669 | integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==
670 |
671 | has-ansi@^2.0.0:
672 | version "2.0.0"
673 | resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
674 | integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=
675 | dependencies:
676 | ansi-regex "^2.0.0"
677 |
678 | has-value@^0.3.1:
679 | version "0.3.1"
680 | resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f"
681 | integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=
682 | dependencies:
683 | get-value "^2.0.3"
684 | has-values "^0.1.4"
685 | isobject "^2.0.0"
686 |
687 | has-value@^1.0.0:
688 | version "1.0.0"
689 | resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177"
690 | integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=
691 | dependencies:
692 | get-value "^2.0.6"
693 | has-values "^1.0.0"
694 | isobject "^3.0.0"
695 |
696 | has-values@^0.1.4:
697 | version "0.1.4"
698 | resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771"
699 | integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E=
700 |
701 | has-values@^1.0.0:
702 | version "1.0.0"
703 | resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f"
704 | integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=
705 | dependencies:
706 | is-number "^3.0.0"
707 | kind-of "^4.0.0"
708 |
709 | has@^1.0.3:
710 | version "1.0.3"
711 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
712 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
713 | dependencies:
714 | function-bind "^1.1.1"
715 |
716 | home-or-tmp@^2.0.0:
717 | version "2.0.0"
718 | resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8"
719 | integrity sha1-42w/LSyufXRqhX440Y1fMqeILbg=
720 | dependencies:
721 | os-homedir "^1.0.0"
722 | os-tmpdir "^1.0.1"
723 |
724 | hyphenate-style-name@^1.0.2:
725 | version "1.0.4"
726 | resolved "https://registry.yarnpkg.com/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz#691879af8e220aea5750e8827db4ef62a54e361d"
727 | integrity sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==
728 |
729 | inflight@^1.0.4:
730 | version "1.0.6"
731 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
732 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
733 | dependencies:
734 | once "^1.3.0"
735 | wrappy "1"
736 |
737 | inherits@2, inherits@^2.0.3, inherits@~2.0.3:
738 | version "2.0.4"
739 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
740 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
741 |
742 | inline-style-prefixer@^4.0.0:
743 | version "4.0.2"
744 | resolved "https://registry.yarnpkg.com/inline-style-prefixer/-/inline-style-prefixer-4.0.2.tgz#d390957d26f281255fe101da863158ac6eb60911"
745 | integrity sha512-N8nVhwfYga9MiV9jWlwfdj1UDIaZlBFu4cJSJkIr7tZX7sHpHhGR5su1qdpW+7KPL8ISTvCIkcaFi/JdBknvPg==
746 | dependencies:
747 | bowser "^1.7.3"
748 | css-in-js-utils "^2.0.0"
749 |
750 | invariant@^2.2.2:
751 | version "2.2.4"
752 | resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6"
753 | integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==
754 | dependencies:
755 | loose-envify "^1.0.0"
756 |
757 | is-accessor-descriptor@^0.1.6:
758 | version "0.1.6"
759 | resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6"
760 | integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=
761 | dependencies:
762 | kind-of "^3.0.2"
763 |
764 | is-accessor-descriptor@^1.0.0:
765 | version "1.0.0"
766 | resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656"
767 | integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==
768 | dependencies:
769 | kind-of "^6.0.0"
770 |
771 | is-binary-path@^1.0.0:
772 | version "1.0.1"
773 | resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898"
774 | integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=
775 | dependencies:
776 | binary-extensions "^1.0.0"
777 |
778 | is-buffer@^1.1.5:
779 | version "1.1.6"
780 | resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
781 | integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
782 |
783 | is-core-module@^2.0.0:
784 | version "2.0.0"
785 | resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.0.0.tgz#58531b70aed1db7c0e8d4eb1a0a2d1ddd64bd12d"
786 | integrity sha512-jq1AH6C8MuteOoBPwkxHafmByhL9j5q4OaPGdbuD+ZtQJVzH+i6E3BJDQcBA09k57i2Hh2yQbEG8yObZ0jdlWw==
787 | dependencies:
788 | has "^1.0.3"
789 |
790 | is-data-descriptor@^0.1.4:
791 | version "0.1.4"
792 | resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56"
793 | integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=
794 | dependencies:
795 | kind-of "^3.0.2"
796 |
797 | is-data-descriptor@^1.0.0:
798 | version "1.0.0"
799 | resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7"
800 | integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==
801 | dependencies:
802 | kind-of "^6.0.0"
803 |
804 | is-descriptor@^0.1.0:
805 | version "0.1.6"
806 | resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca"
807 | integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==
808 | dependencies:
809 | is-accessor-descriptor "^0.1.6"
810 | is-data-descriptor "^0.1.4"
811 | kind-of "^5.0.0"
812 |
813 | is-descriptor@^1.0.0, is-descriptor@^1.0.2:
814 | version "1.0.2"
815 | resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec"
816 | integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==
817 | dependencies:
818 | is-accessor-descriptor "^1.0.0"
819 | is-data-descriptor "^1.0.0"
820 | kind-of "^6.0.2"
821 |
822 | is-extendable@^0.1.0, is-extendable@^0.1.1:
823 | version "0.1.1"
824 | resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
825 | integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=
826 |
827 | is-extendable@^1.0.1:
828 | version "1.0.1"
829 | resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4"
830 | integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==
831 | dependencies:
832 | is-plain-object "^2.0.4"
833 |
834 | is-extglob@^2.1.0, is-extglob@^2.1.1:
835 | version "2.1.1"
836 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
837 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
838 |
839 | is-finite@^1.0.0:
840 | version "1.1.0"
841 | resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.1.0.tgz#904135c77fb42c0641d6aa1bcdbc4daa8da082f3"
842 | integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==
843 |
844 | is-glob@^3.1.0:
845 | version "3.1.0"
846 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a"
847 | integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=
848 | dependencies:
849 | is-extglob "^2.1.0"
850 |
851 | is-glob@^4.0.0:
852 | version "4.0.1"
853 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc"
854 | integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==
855 | dependencies:
856 | is-extglob "^2.1.1"
857 |
858 | is-number@^3.0.0:
859 | version "3.0.0"
860 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195"
861 | integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=
862 | dependencies:
863 | kind-of "^3.0.2"
864 |
865 | is-plain-object@^2.0.3, is-plain-object@^2.0.4:
866 | version "2.0.4"
867 | resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
868 | integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==
869 | dependencies:
870 | isobject "^3.0.1"
871 |
872 | is-windows@^1.0.2:
873 | version "1.0.2"
874 | resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d"
875 | integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==
876 |
877 | isarray@1.0.0, isarray@~1.0.0:
878 | version "1.0.0"
879 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
880 | integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
881 |
882 | isobject@^2.0.0:
883 | version "2.1.0"
884 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89"
885 | integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=
886 | dependencies:
887 | isarray "1.0.0"
888 |
889 | isobject@^3.0.0, isobject@^3.0.1:
890 | version "3.0.1"
891 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
892 | integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8=
893 |
894 | jotai@^0.10.1:
895 | version "0.10.1"
896 | resolved "https://registry.yarnpkg.com/jotai/-/jotai-0.10.1.tgz#d3b0bdb8495bd87909cfdc7e5f9ba0dfb74733f0"
897 | integrity sha512-3z2OQ4RlZk5s1+SI4Z5DPUILbABCvl+s0mxQfD/5YvEKQfbGghJZ6bwQTlHGB8Hq+eAou7zAoyEX4Z9PZ9oRFw==
898 | dependencies:
899 | use-context-selector "1.2.10"
900 |
901 | js-cookie@^2.2.1:
902 | version "2.2.1"
903 | resolved "https://registry.yarnpkg.com/js-cookie/-/js-cookie-2.2.1.tgz#69e106dc5d5806894562902aa5baec3744e9b2b8"
904 | integrity sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==
905 |
906 | "js-tokens@^3.0.0 || ^4.0.0":
907 | version "4.0.0"
908 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
909 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
910 |
911 | js-tokens@^3.0.2:
912 | version "3.0.2"
913 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
914 | integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls=
915 |
916 | jsesc@^1.3.0:
917 | version "1.3.0"
918 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b"
919 | integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s=
920 |
921 | json5@^0.5.1:
922 | version "0.5.1"
923 | resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
924 | integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=
925 |
926 | jsonfile@^2.1.0:
927 | version "2.4.0"
928 | resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8"
929 | integrity sha1-NzaitCi4e72gzIO1P6PWM6NcKug=
930 | optionalDependencies:
931 | graceful-fs "^4.1.6"
932 |
933 | jsonfile@^4.0.0:
934 | version "4.0.0"
935 | resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb"
936 | integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=
937 | optionalDependencies:
938 | graceful-fs "^4.1.6"
939 |
940 | kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0:
941 | version "3.2.2"
942 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
943 | integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=
944 | dependencies:
945 | is-buffer "^1.1.5"
946 |
947 | kind-of@^4.0.0:
948 | version "4.0.0"
949 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57"
950 | integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc=
951 | dependencies:
952 | is-buffer "^1.1.5"
953 |
954 | kind-of@^5.0.0:
955 | version "5.1.0"
956 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d"
957 | integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==
958 |
959 | kind-of@^6.0.0, kind-of@^6.0.2:
960 | version "6.0.3"
961 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
962 | integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
963 |
964 | klaw@^1.0.0:
965 | version "1.3.1"
966 | resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439"
967 | integrity sha1-QIhDO0azsbolnXh4XY6W9zugJDk=
968 | optionalDependencies:
969 | graceful-fs "^4.1.9"
970 |
971 | locate-path@^5.0.0:
972 | version "5.0.0"
973 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0"
974 | integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==
975 | dependencies:
976 | p-locate "^4.1.0"
977 |
978 | lodash@^4.17.4:
979 | version "4.17.20"
980 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52"
981 | integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==
982 |
983 | loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0:
984 | version "1.4.0"
985 | resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
986 | integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
987 | dependencies:
988 | js-tokens "^3.0.0 || ^4.0.0"
989 |
990 | make-dir@^3.0.2:
991 | version "3.1.0"
992 | resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f"
993 | integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==
994 | dependencies:
995 | semver "^6.0.0"
996 |
997 | map-cache@^0.2.2:
998 | version "0.2.2"
999 | resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf"
1000 | integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=
1001 |
1002 | map-visit@^1.0.0:
1003 | version "1.0.0"
1004 | resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f"
1005 | integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=
1006 | dependencies:
1007 | object-visit "^1.0.0"
1008 |
1009 | mdn-data@2.0.12:
1010 | version "2.0.12"
1011 | resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.12.tgz#bbb658d08b38f574bbb88f7b83703defdcc46844"
1012 | integrity sha512-ULbAlgzVb8IqZ0Hsxm6hHSlQl3Jckst2YEQS7fODu9ilNWy2LvcoSY7TRFIktABP2mdppBioc66va90T+NUs8Q==
1013 |
1014 | micromatch@^3.1.10, micromatch@^3.1.4:
1015 | version "3.1.10"
1016 | resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23"
1017 | integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==
1018 | dependencies:
1019 | arr-diff "^4.0.0"
1020 | array-unique "^0.3.2"
1021 | braces "^2.3.1"
1022 | define-property "^2.0.2"
1023 | extend-shallow "^3.0.2"
1024 | extglob "^2.0.4"
1025 | fragment-cache "^0.2.1"
1026 | kind-of "^6.0.2"
1027 | nanomatch "^1.2.9"
1028 | object.pick "^1.3.0"
1029 | regex-not "^1.0.0"
1030 | snapdragon "^0.8.1"
1031 | to-regex "^3.0.2"
1032 |
1033 | minimatch@^3.0.4:
1034 | version "3.0.4"
1035 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
1036 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
1037 | dependencies:
1038 | brace-expansion "^1.1.7"
1039 |
1040 | minimist@^1.2.5:
1041 | version "1.2.5"
1042 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
1043 | integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
1044 |
1045 | mixin-deep@^1.2.0:
1046 | version "1.3.2"
1047 | resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566"
1048 | integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==
1049 | dependencies:
1050 | for-in "^1.0.2"
1051 | is-extendable "^1.0.1"
1052 |
1053 | mkdirp@^0.5.1:
1054 | version "0.5.5"
1055 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def"
1056 | integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==
1057 | dependencies:
1058 | minimist "^1.2.5"
1059 |
1060 | moment@*, moment@^2.29.1:
1061 | version "2.29.1"
1062 | resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3"
1063 | integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==
1064 |
1065 | ms@2.0.0:
1066 | version "2.0.0"
1067 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
1068 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
1069 |
1070 | nan@^2.12.1:
1071 | version "2.14.2"
1072 | resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.2.tgz#f5376400695168f4cc694ac9393d0c9585eeea19"
1073 | integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==
1074 |
1075 | nano-css@^5.2.1:
1076 | version "5.3.0"
1077 | resolved "https://registry.yarnpkg.com/nano-css/-/nano-css-5.3.0.tgz#9d3cd29788d48b6a07f52aa4aec7cf4da427b6b5"
1078 | integrity sha512-uM/9NGK9/E9/sTpbIZ/bQ9xOLOIHZwrrb/CRlbDHBU/GFS7Gshl24v/WJhwsVViWkpOXUmiZ66XO7fSB4Wd92Q==
1079 | dependencies:
1080 | css-tree "^1.0.0-alpha.28"
1081 | csstype "^2.5.5"
1082 | fastest-stable-stringify "^1.0.1"
1083 | inline-style-prefixer "^4.0.0"
1084 | rtl-css-js "^1.9.0"
1085 | sourcemap-codec "^1.4.1"
1086 | stacktrace-js "^2.0.0"
1087 | stylis "3.5.0"
1088 |
1089 | nanomatch@^1.2.9:
1090 | version "1.2.13"
1091 | resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119"
1092 | integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==
1093 | dependencies:
1094 | arr-diff "^4.0.0"
1095 | array-unique "^0.3.2"
1096 | define-property "^2.0.2"
1097 | extend-shallow "^3.0.2"
1098 | fragment-cache "^0.2.1"
1099 | is-windows "^1.0.2"
1100 | kind-of "^6.0.2"
1101 | object.pick "^1.3.0"
1102 | regex-not "^1.0.0"
1103 | snapdragon "^0.8.1"
1104 | to-regex "^3.0.1"
1105 |
1106 | normalize-path@^2.1.1:
1107 | version "2.1.1"
1108 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"
1109 | integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=
1110 | dependencies:
1111 | remove-trailing-separator "^1.0.1"
1112 |
1113 | normalize-path@^3.0.0:
1114 | version "3.0.0"
1115 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
1116 | integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
1117 |
1118 | object-assign@^4.1.1:
1119 | version "4.1.1"
1120 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
1121 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
1122 |
1123 | object-copy@^0.1.0:
1124 | version "0.1.0"
1125 | resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c"
1126 | integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw=
1127 | dependencies:
1128 | copy-descriptor "^0.1.0"
1129 | define-property "^0.2.5"
1130 | kind-of "^3.0.3"
1131 |
1132 | object-visit@^1.0.0:
1133 | version "1.0.1"
1134 | resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb"
1135 | integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=
1136 | dependencies:
1137 | isobject "^3.0.0"
1138 |
1139 | object.pick@^1.3.0:
1140 | version "1.3.0"
1141 | resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747"
1142 | integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=
1143 | dependencies:
1144 | isobject "^3.0.1"
1145 |
1146 | observable-hooks@^3.1.2:
1147 | version "3.1.2"
1148 | resolved "https://registry.yarnpkg.com/observable-hooks/-/observable-hooks-3.1.2.tgz#f76f04320467f706d16c6cfdee343fc4a52aa7fc"
1149 | integrity sha512-RJRDg5WgqmKz88hPsW/u91buUSICpcSxgm8c792HkF01lHNAtuqOzI/rQM11TNjcXQY6iKIbpPW+WqO7Ggiohg==
1150 |
1151 | once@^1.3.0:
1152 | version "1.4.0"
1153 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
1154 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
1155 | dependencies:
1156 | wrappy "1"
1157 |
1158 | os-homedir@^1.0.0:
1159 | version "1.0.2"
1160 | resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
1161 | integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M=
1162 |
1163 | os-tmpdir@^1.0.1:
1164 | version "1.0.2"
1165 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
1166 | integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
1167 |
1168 | p-limit@^2.2.0:
1169 | version "2.3.0"
1170 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"
1171 | integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
1172 | dependencies:
1173 | p-try "^2.0.0"
1174 |
1175 | p-locate@^4.1.0:
1176 | version "4.1.0"
1177 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07"
1178 | integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==
1179 | dependencies:
1180 | p-limit "^2.2.0"
1181 |
1182 | p-try@^2.0.0:
1183 | version "2.2.0"
1184 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"
1185 | integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
1186 |
1187 | pascalcase@^0.1.1:
1188 | version "0.1.1"
1189 | resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14"
1190 | integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=
1191 |
1192 | path-dirname@^1.0.0:
1193 | version "1.0.2"
1194 | resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0"
1195 | integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=
1196 |
1197 | path-exists@^4.0.0:
1198 | version "4.0.0"
1199 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
1200 | integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
1201 |
1202 | path-is-absolute@^1.0.0, path-is-absolute@^1.0.1:
1203 | version "1.0.1"
1204 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
1205 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
1206 |
1207 | path-parse@^1.0.6:
1208 | version "1.0.6"
1209 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c"
1210 | integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==
1211 |
1212 | pify@^3.0.0:
1213 | version "3.0.0"
1214 | resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"
1215 | integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=
1216 |
1217 | pkg-dir@^4.1.0:
1218 | version "4.2.0"
1219 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3"
1220 | integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==
1221 | dependencies:
1222 | find-up "^4.0.0"
1223 |
1224 | posix-character-classes@^0.1.0:
1225 | version "0.1.1"
1226 | resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
1227 | integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=
1228 |
1229 | private@^0.1.8:
1230 | version "0.1.8"
1231 | resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff"
1232 | integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==
1233 |
1234 | process-nextick-args@~2.0.0:
1235 | version "2.0.1"
1236 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
1237 | integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
1238 |
1239 | prop-types@^15.6.2:
1240 | version "15.7.2"
1241 | resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5"
1242 | integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==
1243 | dependencies:
1244 | loose-envify "^1.4.0"
1245 | object-assign "^4.1.1"
1246 | react-is "^16.8.1"
1247 |
1248 | react-dom@^16.12.0:
1249 | version "16.14.0"
1250 | resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.14.0.tgz#7ad838ec29a777fb3c75c3a190f661cf92ab8b89"
1251 | integrity sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw==
1252 | dependencies:
1253 | loose-envify "^1.1.0"
1254 | object-assign "^4.1.1"
1255 | prop-types "^15.6.2"
1256 | scheduler "^0.19.1"
1257 |
1258 | react-is@^16.8.1:
1259 | version "16.13.1"
1260 | resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
1261 | integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
1262 |
1263 | react-universal-interface@^0.6.2:
1264 | version "0.6.2"
1265 | resolved "https://registry.yarnpkg.com/react-universal-interface/-/react-universal-interface-0.6.2.tgz#5e8d438a01729a4dbbcbeeceb0b86be146fe2b3b"
1266 | integrity sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==
1267 |
1268 | react-use@^15.3.4:
1269 | version "15.3.4"
1270 | resolved "https://registry.yarnpkg.com/react-use/-/react-use-15.3.4.tgz#f853d310bd71f75b38900a8caa3db93f6dc6e872"
1271 | integrity sha512-cHq1dELW6122oi1+xX7lwNyE/ugZs5L902BuO8eFJCfn2api1KeuPVG1M/GJouVARoUf54S2dYFMKo5nQXdTag==
1272 | dependencies:
1273 | "@types/js-cookie" "2.2.6"
1274 | "@xobotyi/scrollbar-width" "1.9.5"
1275 | copy-to-clipboard "^3.2.0"
1276 | fast-deep-equal "^3.1.3"
1277 | fast-shallow-equal "^1.0.0"
1278 | js-cookie "^2.2.1"
1279 | nano-css "^5.2.1"
1280 | react-universal-interface "^0.6.2"
1281 | resize-observer-polyfill "^1.5.1"
1282 | screenfull "^5.0.0"
1283 | set-harmonic-interval "^1.0.1"
1284 | throttle-debounce "^2.1.0"
1285 | ts-easing "^0.2.0"
1286 | tslib "^2.0.0"
1287 |
1288 | react@^16.12.0:
1289 | version "16.14.0"
1290 | resolved "https://registry.yarnpkg.com/react/-/react-16.14.0.tgz#94d776ddd0aaa37da3eda8fc5b6b18a4c9a3114d"
1291 | integrity sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==
1292 | dependencies:
1293 | loose-envify "^1.1.0"
1294 | object-assign "^4.1.1"
1295 | prop-types "^15.6.2"
1296 |
1297 | readable-stream@^2.0.2:
1298 | version "2.3.7"
1299 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
1300 | integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
1301 | dependencies:
1302 | core-util-is "~1.0.0"
1303 | inherits "~2.0.3"
1304 | isarray "~1.0.0"
1305 | process-nextick-args "~2.0.0"
1306 | safe-buffer "~5.1.1"
1307 | string_decoder "~1.1.1"
1308 | util-deprecate "~1.0.1"
1309 |
1310 | readdirp@^2.2.1:
1311 | version "2.2.1"
1312 | resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525"
1313 | integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==
1314 | dependencies:
1315 | graceful-fs "^4.1.11"
1316 | micromatch "^3.1.10"
1317 | readable-stream "^2.0.2"
1318 |
1319 | regenerator-runtime@^0.11.0:
1320 | version "0.11.1"
1321 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9"
1322 | integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==
1323 |
1324 | regenerator-runtime@^0.13.4:
1325 | version "0.13.7"
1326 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz#cac2dacc8a1ea675feaabaeb8ae833898ae46f55"
1327 | integrity sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==
1328 |
1329 | regex-not@^1.0.0, regex-not@^1.0.2:
1330 | version "1.0.2"
1331 | resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c"
1332 | integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==
1333 | dependencies:
1334 | extend-shallow "^3.0.2"
1335 | safe-regex "^1.1.0"
1336 |
1337 | remove-trailing-separator@^1.0.1:
1338 | version "1.1.0"
1339 | resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef"
1340 | integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8=
1341 |
1342 | repeat-element@^1.1.2:
1343 | version "1.1.3"
1344 | resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce"
1345 | integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==
1346 |
1347 | repeat-string@^1.6.1:
1348 | version "1.6.1"
1349 | resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
1350 | integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc=
1351 |
1352 | repeating@^2.0.0:
1353 | version "2.0.1"
1354 | resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
1355 | integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=
1356 | dependencies:
1357 | is-finite "^1.0.0"
1358 |
1359 | resize-observer-polyfill@^1.5.1:
1360 | version "1.5.1"
1361 | resolved "https://registry.yarnpkg.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz#0e9020dd3d21024458d4ebd27e23e40269810464"
1362 | integrity sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==
1363 |
1364 | resolve-url@^0.2.1:
1365 | version "0.2.1"
1366 | resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
1367 | integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=
1368 |
1369 | resolve@1.12.0:
1370 | version "1.12.0"
1371 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6"
1372 | integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==
1373 | dependencies:
1374 | path-parse "^1.0.6"
1375 |
1376 | resolve@^1.5.0:
1377 | version "1.18.1"
1378 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.18.1.tgz#018fcb2c5b207d2a6424aee361c5a266da8f4130"
1379 | integrity sha512-lDfCPaMKfOJXjy0dPayzPdF1phampNWr3qFCjAu+rw/qbQmr5jWH5xN2hwh9QKfw9E5v4hwV7A+jrCmL8yjjqA==
1380 | dependencies:
1381 | is-core-module "^2.0.0"
1382 | path-parse "^1.0.6"
1383 |
1384 | ret@~0.1.10:
1385 | version "0.1.15"
1386 | resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
1387 | integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==
1388 |
1389 | rimraf@^2.2.8:
1390 | version "2.7.1"
1391 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
1392 | integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
1393 | dependencies:
1394 | glob "^7.1.3"
1395 |
1396 | rollup-plugin-sass@^1.2.2:
1397 | version "1.2.2"
1398 | resolved "https://registry.yarnpkg.com/rollup-plugin-sass/-/rollup-plugin-sass-1.2.2.tgz#f03cd2b1bee497dc2cc845fae2c5749611fc008f"
1399 | integrity sha512-yvHQPg1JS4d23gwHTwTbokH+FV/0bPBVf5QmlvCOzfAhXe0luY0pUgVaWC2qfnoKetp2Oqh5lK7oW/4CXGWs1Q==
1400 | dependencies:
1401 | babel-runtime "^6.23.0"
1402 | fs-extra "^0.30.0"
1403 | pify "^3.0.0"
1404 | resolve "^1.5.0"
1405 | rollup-pluginutils ">= 1.3.1"
1406 | sass "1.7.2"
1407 |
1408 | rollup-plugin-typescript2@^0.25.3:
1409 | version "0.25.3"
1410 | resolved "https://registry.yarnpkg.com/rollup-plugin-typescript2/-/rollup-plugin-typescript2-0.25.3.tgz#a5fb2f0f85488789334ce540abe6c7011cbdf40f"
1411 | integrity sha512-ADkSaidKBovJmf5VBnZBZe+WzaZwofuvYdzGAKTN/J4hN7QJCFYAq7IrH9caxlru6T5qhX41PNFS1S4HqhsGQg==
1412 | dependencies:
1413 | find-cache-dir "^3.0.0"
1414 | fs-extra "8.1.0"
1415 | resolve "1.12.0"
1416 | rollup-pluginutils "2.8.1"
1417 | tslib "1.10.0"
1418 |
1419 | rollup-pluginutils@2.8.1:
1420 | version "2.8.1"
1421 | resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.8.1.tgz#8fa6dd0697344938ef26c2c09d2488ce9e33ce97"
1422 | integrity sha512-J5oAoysWar6GuZo0s+3bZ6sVZAC0pfqKz68De7ZgDi5z63jOVZn1uJL/+z1jeKHNbGII8kAyHF5q8LnxSX5lQg==
1423 | dependencies:
1424 | estree-walker "^0.6.1"
1425 |
1426 | "rollup-pluginutils@>= 1.3.1":
1427 | version "2.8.2"
1428 | resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz#72f2af0748b592364dbd3389e600e5a9444a351e"
1429 | integrity sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==
1430 | dependencies:
1431 | estree-walker "^0.6.1"
1432 |
1433 | rollup@^1.29.0:
1434 | version "1.32.1"
1435 | resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.32.1.tgz#4480e52d9d9e2ae4b46ba0d9ddeaf3163940f9c4"
1436 | integrity sha512-/2HA0Ec70TvQnXdzynFffkjA6XN+1e2pEv/uKS5Ulca40g2L7KuOE3riasHoNVHOsFD5KKZgDsMk1CP3Tw9s+A==
1437 | dependencies:
1438 | "@types/estree" "*"
1439 | "@types/node" "*"
1440 | acorn "^7.1.0"
1441 |
1442 | rtl-css-js@^1.9.0:
1443 | version "1.14.0"
1444 | resolved "https://registry.yarnpkg.com/rtl-css-js/-/rtl-css-js-1.14.0.tgz#daa4f192a92509e292a0519f4b255e6e3c076b7d"
1445 | integrity sha512-Dl5xDTeN3e7scU1cWX8c9b6/Nqz3u/HgR4gePc1kWXYiQWVQbKCEyK6+Hxve9LbcJ5EieHy1J9nJCN3grTtGwg==
1446 | dependencies:
1447 | "@babel/runtime" "^7.1.2"
1448 |
1449 | rxjs@^6.6.3:
1450 | version "6.6.3"
1451 | resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.3.tgz#8ca84635c4daa900c0d3967a6ee7ac60271ee552"
1452 | integrity sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ==
1453 | dependencies:
1454 | tslib "^1.9.0"
1455 |
1456 | safe-buffer@~5.1.0, safe-buffer@~5.1.1:
1457 | version "5.1.2"
1458 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
1459 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
1460 |
1461 | safe-regex@^1.1.0:
1462 | version "1.1.0"
1463 | resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e"
1464 | integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4=
1465 | dependencies:
1466 | ret "~0.1.10"
1467 |
1468 | sass@1.7.2:
1469 | version "1.7.2"
1470 | resolved "https://registry.yarnpkg.com/sass/-/sass-1.7.2.tgz#a8ff878ad9dcba65e226c1ccb2c2f3c7a1009578"
1471 | integrity sha512-zUm2NXL77WtQDbp4MKgysAxH41Fzs5BnBUogEPi8IKNQ1M5rKoFe46YBXfxr0I+cQX+xbSc//psSdq5eyYhJsg==
1472 | dependencies:
1473 | chokidar "^2.0.0"
1474 |
1475 | scheduler@^0.19.1:
1476 | version "0.19.1"
1477 | resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.19.1.tgz#4f3e2ed2c1a7d65681f4c854fa8c5a1ccb40f196"
1478 | integrity sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==
1479 | dependencies:
1480 | loose-envify "^1.1.0"
1481 | object-assign "^4.1.1"
1482 |
1483 | screenfull@^5.0.0:
1484 | version "5.0.2"
1485 | resolved "https://registry.yarnpkg.com/screenfull/-/screenfull-5.0.2.tgz#b9acdcf1ec676a948674df5cd0ff66b902b0bed7"
1486 | integrity sha512-cCF2b+L/mnEiORLN5xSAz6H3t18i2oHh9BA8+CQlAh5DRw2+NFAGQJOSYbcGw8B2k04g/lVvFcfZ83b3ysH5UQ==
1487 |
1488 | semver@^6.0.0:
1489 | version "6.3.0"
1490 | resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
1491 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
1492 |
1493 | set-harmonic-interval@^1.0.1:
1494 | version "1.0.1"
1495 | resolved "https://registry.yarnpkg.com/set-harmonic-interval/-/set-harmonic-interval-1.0.1.tgz#e1773705539cdfb80ce1c3d99e7f298bb3995249"
1496 | integrity sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g==
1497 |
1498 | set-value@^2.0.0, set-value@^2.0.1:
1499 | version "2.0.1"
1500 | resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b"
1501 | integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==
1502 | dependencies:
1503 | extend-shallow "^2.0.1"
1504 | is-extendable "^0.1.1"
1505 | is-plain-object "^2.0.3"
1506 | split-string "^3.0.1"
1507 |
1508 | slash@^1.0.0:
1509 | version "1.0.0"
1510 | resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
1511 | integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=
1512 |
1513 | snapdragon-node@^2.0.1:
1514 | version "2.1.1"
1515 | resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b"
1516 | integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==
1517 | dependencies:
1518 | define-property "^1.0.0"
1519 | isobject "^3.0.0"
1520 | snapdragon-util "^3.0.1"
1521 |
1522 | snapdragon-util@^3.0.1:
1523 | version "3.0.1"
1524 | resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2"
1525 | integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==
1526 | dependencies:
1527 | kind-of "^3.2.0"
1528 |
1529 | snapdragon@^0.8.1:
1530 | version "0.8.2"
1531 | resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d"
1532 | integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==
1533 | dependencies:
1534 | base "^0.11.1"
1535 | debug "^2.2.0"
1536 | define-property "^0.2.5"
1537 | extend-shallow "^2.0.1"
1538 | map-cache "^0.2.2"
1539 | source-map "^0.5.6"
1540 | source-map-resolve "^0.5.0"
1541 | use "^3.1.0"
1542 |
1543 | source-map-resolve@^0.5.0:
1544 | version "0.5.3"
1545 | resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a"
1546 | integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==
1547 | dependencies:
1548 | atob "^2.1.2"
1549 | decode-uri-component "^0.2.0"
1550 | resolve-url "^0.2.1"
1551 | source-map-url "^0.4.0"
1552 | urix "^0.1.0"
1553 |
1554 | source-map-support@^0.4.15:
1555 | version "0.4.18"
1556 | resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f"
1557 | integrity sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==
1558 | dependencies:
1559 | source-map "^0.5.6"
1560 |
1561 | source-map-url@^0.4.0:
1562 | version "0.4.0"
1563 | resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3"
1564 | integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=
1565 |
1566 | source-map@0.5.6:
1567 | version "0.5.6"
1568 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412"
1569 | integrity sha1-dc449SvwczxafwwRjYEzSiu19BI=
1570 |
1571 | source-map@^0.5.6, source-map@^0.5.7:
1572 | version "0.5.7"
1573 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
1574 | integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=
1575 |
1576 | source-map@^0.6.1:
1577 | version "0.6.1"
1578 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
1579 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
1580 |
1581 | sourcemap-codec@^1.4.1:
1582 | version "1.4.8"
1583 | resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4"
1584 | integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==
1585 |
1586 | split-string@^3.0.1, split-string@^3.0.2:
1587 | version "3.1.0"
1588 | resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2"
1589 | integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==
1590 | dependencies:
1591 | extend-shallow "^3.0.0"
1592 |
1593 | stack-generator@^2.0.5:
1594 | version "2.0.5"
1595 | resolved "https://registry.yarnpkg.com/stack-generator/-/stack-generator-2.0.5.tgz#fb00e5b4ee97de603e0773ea78ce944d81596c36"
1596 | integrity sha512-/t1ebrbHkrLrDuNMdeAcsvynWgoH/i4o8EGGfX7dEYDoTXOYVAkEpFdtshlvabzc6JlJ8Kf9YdFEoz7JkzGN9Q==
1597 | dependencies:
1598 | stackframe "^1.1.1"
1599 |
1600 | stackframe@^1.1.1:
1601 | version "1.2.0"
1602 | resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.2.0.tgz#52429492d63c62eb989804c11552e3d22e779303"
1603 | integrity sha512-GrdeshiRmS1YLMYgzF16olf2jJ/IzxXY9lhKOskuVziubpTYcYqyOwYeJKzQkwy7uN0fYSsbsC4RQaXf9LCrYA==
1604 |
1605 | stacktrace-gps@^3.0.4:
1606 | version "3.0.4"
1607 | resolved "https://registry.yarnpkg.com/stacktrace-gps/-/stacktrace-gps-3.0.4.tgz#7688dc2fc09ffb3a13165ebe0dbcaf41bcf0c69a"
1608 | integrity sha512-qIr8x41yZVSldqdqe6jciXEaSCKw1U8XTXpjDuy0ki/apyTn/r3w9hDAAQOhZdxvsC93H+WwwEu5cq5VemzYeg==
1609 | dependencies:
1610 | source-map "0.5.6"
1611 | stackframe "^1.1.1"
1612 |
1613 | stacktrace-js@^2.0.0:
1614 | version "2.0.2"
1615 | resolved "https://registry.yarnpkg.com/stacktrace-js/-/stacktrace-js-2.0.2.tgz#4ca93ea9f494752d55709a081d400fdaebee897b"
1616 | integrity sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==
1617 | dependencies:
1618 | error-stack-parser "^2.0.6"
1619 | stack-generator "^2.0.5"
1620 | stacktrace-gps "^3.0.4"
1621 |
1622 | static-extend@^0.1.1:
1623 | version "0.1.2"
1624 | resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6"
1625 | integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=
1626 | dependencies:
1627 | define-property "^0.2.5"
1628 | object-copy "^0.1.0"
1629 |
1630 | string_decoder@~1.1.1:
1631 | version "1.1.1"
1632 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
1633 | integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
1634 | dependencies:
1635 | safe-buffer "~5.1.0"
1636 |
1637 | strip-ansi@^3.0.0:
1638 | version "3.0.1"
1639 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
1640 | integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=
1641 | dependencies:
1642 | ansi-regex "^2.0.0"
1643 |
1644 | stylis@3.5.0:
1645 | version "3.5.0"
1646 | resolved "https://registry.yarnpkg.com/stylis/-/stylis-3.5.0.tgz#016fa239663d77f868fef5b67cf201c4b7c701e1"
1647 | integrity sha512-pP7yXN6dwMzAR29Q0mBrabPCe0/mNO1MSr93bhay+hcZondvMMTpeGyd8nbhYJdyperNT2DRxONQuUGcJr5iPw==
1648 |
1649 | supports-color@^2.0.0:
1650 | version "2.0.0"
1651 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
1652 | integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=
1653 |
1654 | throttle-debounce@^2.1.0:
1655 | version "2.3.0"
1656 | resolved "https://registry.yarnpkg.com/throttle-debounce/-/throttle-debounce-2.3.0.tgz#fd31865e66502071e411817e241465b3e9c372e2"
1657 | integrity sha512-H7oLPV0P7+jgvrk+6mwwwBDmxTaxnu9HMXmloNLXwnNO0ZxZ31Orah2n8lU1eMPvsaowP2CX+USCgyovXfdOFQ==
1658 |
1659 | to-fast-properties@^1.0.3:
1660 | version "1.0.3"
1661 | resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47"
1662 | integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=
1663 |
1664 | to-object-path@^0.3.0:
1665 | version "0.3.0"
1666 | resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af"
1667 | integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=
1668 | dependencies:
1669 | kind-of "^3.0.2"
1670 |
1671 | to-regex-range@^2.1.0:
1672 | version "2.1.1"
1673 | resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38"
1674 | integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=
1675 | dependencies:
1676 | is-number "^3.0.0"
1677 | repeat-string "^1.6.1"
1678 |
1679 | to-regex@^3.0.1, to-regex@^3.0.2:
1680 | version "3.0.2"
1681 | resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce"
1682 | integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==
1683 | dependencies:
1684 | define-property "^2.0.2"
1685 | extend-shallow "^3.0.2"
1686 | regex-not "^1.0.2"
1687 | safe-regex "^1.1.0"
1688 |
1689 | toggle-selection@^1.0.6:
1690 | version "1.0.6"
1691 | resolved "https://registry.yarnpkg.com/toggle-selection/-/toggle-selection-1.0.6.tgz#6e45b1263f2017fa0acc7d89d78b15b8bf77da32"
1692 | integrity sha1-bkWxJj8gF/oKzH2J14sVuL932jI=
1693 |
1694 | trim-right@^1.0.1:
1695 | version "1.0.1"
1696 | resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"
1697 | integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=
1698 |
1699 | ts-easing@^0.2.0:
1700 | version "0.2.0"
1701 | resolved "https://registry.yarnpkg.com/ts-easing/-/ts-easing-0.2.0.tgz#c8a8a35025105566588d87dbda05dd7fbfa5a4ec"
1702 | integrity sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ==
1703 |
1704 | tslib@1.10.0:
1705 | version "1.10.0"
1706 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a"
1707 | integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==
1708 |
1709 | tslib@^1.9.0:
1710 | version "1.14.1"
1711 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
1712 | integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
1713 |
1714 | tslib@^2.0.0:
1715 | version "2.0.3"
1716 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.3.tgz#8e0741ac45fc0c226e58a17bfc3e64b9bc6ca61c"
1717 | integrity sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ==
1718 |
1719 | typescript@^4.0.0:
1720 | version "4.0.5"
1721 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.0.5.tgz#ae9dddfd1069f1cb5beb3ef3b2170dd7c1332389"
1722 | integrity sha512-ywmr/VrTVCmNTJ6iV2LwIrfG1P+lv6luD8sUJs+2eI9NLGigaN+nUQc13iHqisq7bra9lnmUSYqbJvegraBOPQ==
1723 |
1724 | union-value@^1.0.0:
1725 | version "1.0.1"
1726 | resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847"
1727 | integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==
1728 | dependencies:
1729 | arr-union "^3.1.0"
1730 | get-value "^2.0.6"
1731 | is-extendable "^0.1.1"
1732 | set-value "^2.0.1"
1733 |
1734 | universalify@^0.1.0:
1735 | version "0.1.2"
1736 | resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"
1737 | integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==
1738 |
1739 | unset-value@^1.0.0:
1740 | version "1.0.0"
1741 | resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559"
1742 | integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=
1743 | dependencies:
1744 | has-value "^0.3.1"
1745 | isobject "^3.0.0"
1746 |
1747 | upath@^1.1.1:
1748 | version "1.2.0"
1749 | resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894"
1750 | integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==
1751 |
1752 | urix@^0.1.0:
1753 | version "0.1.0"
1754 | resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72"
1755 | integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=
1756 |
1757 | use-context-selector@1.2.10:
1758 | version "1.2.10"
1759 | resolved "https://registry.yarnpkg.com/use-context-selector/-/use-context-selector-1.2.10.tgz#47230099cd381119ae1c0f4a44737f336932aec0"
1760 | integrity sha512-gSKcvwl2I683GY5JG/ixsVDeVsIdEdLJz3ccl7y1KaKJqXitX2PjC0Z1F0LEtni1pc7u1J3cy5dHT8+MI69naA==
1761 |
1762 | use@^3.1.0:
1763 | version "3.1.1"
1764 | resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f"
1765 | integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==
1766 |
1767 | util-deprecate@~1.0.1:
1768 | version "1.0.2"
1769 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
1770 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
1771 |
1772 | wrappy@1:
1773 | version "1.0.2"
1774 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
1775 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
1776 |
--------------------------------------------------------------------------------