├── .circleci
└── config.yml
├── .gitignore
├── CHANGELOG.md
├── LICENSE
├── README.md
├── bin
└── pack_and_deploy.sh
├── deps.edn
├── doc
└── intro.md
├── package-lock.json
├── package.json
├── pom.xml
├── public
└── index.html
├── shadow-cljs.edn
├── src
└── re_frame_routing
│ ├── coercion.cljs
│ ├── core.cljs
│ ├── events.cljs
│ └── subscriptions.cljs
└── test
└── re_frame_routing
├── coercion_test.cljs
├── core_test.cljs
└── events_test.cljs
/.circleci/config.yml:
--------------------------------------------------------------------------------
1 | # Clojure CircleCI 2.0 configuration file
2 | version: 2
3 | jobs:
4 | build:
5 | docker:
6 | - image: oconn/cljs-build-image:latest
7 |
8 | working_directory: ~/repo
9 |
10 | environment:
11 | # Customize the JVM maximum heap limit
12 | JVM_OPTS: -Xmx3200m
13 |
14 | steps:
15 | - checkout
16 |
17 | - restore_cache:
18 | keys:
19 | - v1-dependencies-{{ checksum "deps.edn" }}
20 | # fallback to using the latest cache if no exact match is found
21 | - v1-dependencies-
22 |
23 | - save_cache:
24 | paths:
25 | - ~/.m2
26 | key: v1-dependencies-{{ checksum "deps.edn" }}
27 |
28 | - run: clojure -Atest
29 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /target
2 | /classes
3 | /checkouts
4 | pom.xml.asc
5 | *.jar
6 | *.class
7 | /.lein-*
8 | /.nrepl-history
9 | /.nrepl-port
10 | .hgignore
11 | .hg/
12 | .cpcache
13 | cljs-test-runner-out
14 | .lsp
15 |
16 | node_modules/
17 | public/js
18 | .shadow-cljs
19 |
20 |
21 | out/
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Change Log
2 | All notable changes to this project will be documented in this file. This change log follows the conventions of [keepachangelog.com](http://keepachangelog.com/).
3 |
4 | ## [Unreleased]
5 | ### Changed
6 | - Add a new arity to `make-widget-async` to provide a different widget shape.
7 |
8 | ## [0.1.1] - 2017-10-26
9 | ### Changed
10 | - Documentation on how to make the widgets.
11 |
12 | ### Removed
13 | - `make-widget-sync` - we're all async, all the time.
14 |
15 | ### Fixed
16 | - Fixed widget maker to keep working when daylight savings switches over.
17 |
18 | ## 0.1.0 - 2017-10-26
19 | ### Added
20 | - Files from the new template.
21 | - Widget maker public API - `make-widget-sync`.
22 |
23 | [Unreleased]: https://github.com/your-name/re-frame-request/compare/0.1.1...HEAD
24 | [0.1.1]: https://github.com/your-name/re-frame-request/compare/0.1.0...0.1.1
25 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC
2 | LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM
3 | CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
4 |
5 | 1. DEFINITIONS
6 |
7 | "Contribution" means:
8 |
9 | a) in the case of the initial Contributor, the initial code and
10 | documentation distributed under this Agreement, and
11 |
12 | b) in the case of each subsequent Contributor:
13 |
14 | i) changes to the Program, and
15 |
16 | ii) additions to the Program;
17 |
18 | where such changes and/or additions to the Program originate from and are
19 | distributed by that particular Contributor. A Contribution 'originates' from
20 | a Contributor if it was added to the Program by such Contributor itself or
21 | anyone acting on such Contributor's behalf. Contributions do not include
22 | additions to the Program which: (i) are separate modules of software
23 | distributed in conjunction with the Program under their own license
24 | agreement, and (ii) are not derivative works of the Program.
25 |
26 | "Contributor" means any person or entity that distributes the Program.
27 |
28 | "Licensed Patents" mean patent claims licensable by a Contributor which are
29 | necessarily infringed by the use or sale of its Contribution alone or when
30 | combined with the Program.
31 |
32 | "Program" means the Contributions distributed in accordance with this
33 | Agreement.
34 |
35 | "Recipient" means anyone who receives the Program under this Agreement,
36 | including all Contributors.
37 |
38 | 2. GRANT OF RIGHTS
39 |
40 | a) Subject to the terms of this Agreement, each Contributor hereby grants
41 | Recipient a non-exclusive, worldwide, royalty-free copyright license to
42 | reproduce, prepare derivative works of, publicly display, publicly perform,
43 | distribute and sublicense the Contribution of such Contributor, if any, and
44 | such derivative works, in source code and object code form.
45 |
46 | b) Subject to the terms of this Agreement, each Contributor hereby grants
47 | Recipient a non-exclusive, worldwide, royalty-free patent license under
48 | Licensed Patents to make, use, sell, offer to sell, import and otherwise
49 | transfer the Contribution of such Contributor, if any, in source code and
50 | object code form. This patent license shall apply to the combination of the
51 | Contribution and the Program if, at the time the Contribution is added by the
52 | Contributor, such addition of the Contribution causes such combination to be
53 | covered by the Licensed Patents. The patent license shall not apply to any
54 | other combinations which include the Contribution. No hardware per se is
55 | licensed hereunder.
56 |
57 | c) Recipient understands that although each Contributor grants the licenses
58 | to its Contributions set forth herein, no assurances are provided by any
59 | Contributor that the Program does not infringe the patent or other
60 | intellectual property rights of any other entity. Each Contributor disclaims
61 | any liability to Recipient for claims brought by any other entity based on
62 | infringement of intellectual property rights or otherwise. As a condition to
63 | exercising the rights and licenses granted hereunder, each Recipient hereby
64 | assumes sole responsibility to secure any other intellectual property rights
65 | needed, if any. For example, if a third party patent license is required to
66 | allow Recipient to distribute the Program, it is Recipient's responsibility
67 | to acquire that license before distributing the Program.
68 |
69 | d) Each Contributor represents that to its knowledge it has sufficient
70 | copyright rights in its Contribution, if any, to grant the copyright license
71 | set forth in this Agreement.
72 |
73 | 3. REQUIREMENTS
74 |
75 | A Contributor may choose to distribute the Program in object code form under
76 | its own license agreement, provided that:
77 |
78 | a) it complies with the terms and conditions of this Agreement; and
79 |
80 | b) its license agreement:
81 |
82 | i) effectively disclaims on behalf of all Contributors all warranties and
83 | conditions, express and implied, including warranties or conditions of title
84 | and non-infringement, and implied warranties or conditions of merchantability
85 | and fitness for a particular purpose;
86 |
87 | ii) effectively excludes on behalf of all Contributors all liability for
88 | damages, including direct, indirect, special, incidental and consequential
89 | damages, such as lost profits;
90 |
91 | iii) states that any provisions which differ from this Agreement are offered
92 | by that Contributor alone and not by any other party; and
93 |
94 | iv) states that source code for the Program is available from such
95 | Contributor, and informs licensees how to obtain it in a reasonable manner on
96 | or through a medium customarily used for software exchange.
97 |
98 | When the Program is made available in source code form:
99 |
100 | a) it must be made available under this Agreement; and
101 |
102 | b) a copy of this Agreement must be included with each copy of the Program.
103 |
104 | Contributors may not remove or alter any copyright notices contained within
105 | the Program.
106 |
107 | Each Contributor must identify itself as the originator of its Contribution,
108 | if any, in a manner that reasonably allows subsequent Recipients to identify
109 | the originator of the Contribution.
110 |
111 | 4. COMMERCIAL DISTRIBUTION
112 |
113 | Commercial distributors of software may accept certain responsibilities with
114 | respect to end users, business partners and the like. While this license is
115 | intended to facilitate the commercial use of the Program, the Contributor who
116 | includes the Program in a commercial product offering should do so in a
117 | manner which does not create potential liability for other Contributors.
118 | Therefore, if a Contributor includes the Program in a commercial product
119 | offering, such Contributor ("Commercial Contributor") hereby agrees to defend
120 | and indemnify every other Contributor ("Indemnified Contributor") against any
121 | losses, damages and costs (collectively "Losses") arising from claims,
122 | lawsuits and other legal actions brought by a third party against the
123 | Indemnified Contributor to the extent caused by the acts or omissions of such
124 | Commercial Contributor in connection with its distribution of the Program in
125 | a commercial product offering. The obligations in this section do not apply
126 | to any claims or Losses relating to any actual or alleged intellectual
127 | property infringement. In order to qualify, an Indemnified Contributor must:
128 | a) promptly notify the Commercial Contributor in writing of such claim, and
129 | b) allow the Commercial Contributor tocontrol, and cooperate with the
130 | Commercial Contributor in, the defense and any related settlement
131 | negotiations. The Indemnified Contributor may participate in any such claim
132 | at its own expense.
133 |
134 | For example, a Contributor might include the Program in a commercial product
135 | offering, Product X. That Contributor is then a Commercial Contributor. If
136 | that Commercial Contributor then makes performance claims, or offers
137 | warranties related to Product X, those performance claims and warranties are
138 | such Commercial Contributor's responsibility alone. Under this section, the
139 | Commercial Contributor would have to defend claims against the other
140 | Contributors related to those performance claims and warranties, and if a
141 | court requires any other Contributor to pay any damages as a result, the
142 | Commercial Contributor must pay those damages.
143 |
144 | 5. NO WARRANTY
145 |
146 | EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON
147 | AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER
148 | EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR
149 | CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A
150 | PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the
151 | appropriateness of using and distributing the Program and assumes all risks
152 | associated with its exercise of rights under this Agreement , including but
153 | not limited to the risks and costs of program errors, compliance with
154 | applicable laws, damage to or loss of data, programs or equipment, and
155 | unavailability or interruption of operations.
156 |
157 | 6. DISCLAIMER OF LIABILITY
158 |
159 | EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY
160 | CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL,
161 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION
162 | LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
163 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
164 | ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE
165 | EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY
166 | OF SUCH DAMAGES.
167 |
168 | 7. GENERAL
169 |
170 | If any provision of this Agreement is invalid or unenforceable under
171 | applicable law, it shall not affect the validity or enforceability of the
172 | remainder of the terms of this Agreement, and without further action by the
173 | parties hereto, such provision shall be reformed to the minimum extent
174 | necessary to make such provision valid and enforceable.
175 |
176 | If Recipient institutes patent litigation against any entity (including a
177 | cross-claim or counterclaim in a lawsuit) alleging that the Program itself
178 | (excluding combinations of the Program with other software or hardware)
179 | infringes such Recipient's patent(s), then such Recipient's rights granted
180 | under Section 2(b) shall terminate as of the date such litigation is filed.
181 |
182 | All Recipient's rights under this Agreement shall terminate if it fails to
183 | comply with any of the material terms or conditions of this Agreement and
184 | does not cure such failure in a reasonable period of time after becoming
185 | aware of such noncompliance. If all Recipient's rights under this Agreement
186 | terminate, Recipient agrees to cease use and distribution of the Program as
187 | soon as reasonably practicable. However, Recipient's obligations under this
188 | Agreement and any licenses granted by Recipient relating to the Program shall
189 | continue and survive.
190 |
191 | Everyone is permitted to copy and distribute copies of this Agreement, but in
192 | order to avoid inconsistency the Agreement is copyrighted and may only be
193 | modified in the following manner. The Agreement Steward reserves the right to
194 | publish new versions (including revisions) of this Agreement from time to
195 | time. No one other than the Agreement Steward has the right to modify this
196 | Agreement. The Eclipse Foundation is the initial Agreement Steward. The
197 | Eclipse Foundation may assign the responsibility to serve as the Agreement
198 | Steward to a suitable separate entity. Each new version of the Agreement will
199 | be given a distinguishing version number. The Program (including
200 | Contributions) may always be distributed subject to the version of the
201 | Agreement under which it was received. In addition, after a new version of
202 | the Agreement is published, Contributor may elect to distribute the Program
203 | (including its Contributions) under the new version. Except as expressly
204 | stated in Sections 2(a) and 2(b) above, Recipient receives no rights or
205 | licenses to the intellectual property of any Contributor under this
206 | Agreement, whether expressly, by implication, estoppel or otherwise. All
207 | rights in the Program not expressly granted under this Agreement are
208 | reserved.
209 |
210 | This Agreement is governed by the laws of the State of New York and the
211 | intellectual property laws of the United States of America. No party to this
212 | Agreement will bring a legal action under this Agreement more than one year
213 | after the cause of action arose. Each party waives its rights to a jury trial
214 | in any resulting litigation.
215 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # re-frame-routing
2 |
3 | ClojureScript (re-frame) library that manages routing and route state.
4 |
5 | **re-frame-routing** is built on top of [bidi](https://github.com/juxt/bidi) and persists route state to [re-frame's](https://github.com/Day8/re-frame) app state. Registering *re-frame-routing* to an existing re-frame application is ease.
6 |
7 |
8 | ### Step 1: Install
9 |
10 | [](https://clojars.org/oconn/re-frame-routing)
11 |
12 | [](https://circleci.com/gh/oconn/re-frame-routing/tree/master)
13 |
14 | ### Step 2: Import Events
15 |
16 | ```cljs
17 | (ns app.events.core
18 | (:require [re-frame-routing.core :as rfr]
19 |
20 | [app.router.core :as router]))
21 |
22 | (rfr/register-events {:routes router/routes})
23 | ```
24 |
25 | ### Step 3: Import Subscriptions
26 |
27 | ```cljs
28 | (ns app.subscriptions.core
29 | (:require [re-frame-routing.core :as rfr]))
30 |
31 | (rfr/register-subscriptions)
32 | ```
33 |
34 | ## Route Middleware
35 |
36 | *(Note this API is subject to change in future releases)*
37 |
38 | ### Pre Dom Render Loading
39 |
40 | Sometimes it's nice to perform work when a route is loading, maybe even prevent the route's view from displaying until that work is done, or even redirect if a user does not have access to view the route. These are good use cases for route-middleware.
41 |
42 | To add route-middleware to a route, first create the route-middleware function
43 |
44 | ```cljs
45 | (def route-middleware
46 | (rfr/create-route-middleware {:loading-view loading/render}))
47 | ```
48 |
49 | `loading-view` is a reagent component that will display while your route is loading.
50 |
51 | Now let's say you have a sign-in page, but only unauthenticated users should be able to view it. Here is you sign-in route with no middleware
52 |
53 | ```cljs
54 | (defmethod containers :sign-in []
55 | [sign-in/render])
56 | ```
57 |
58 | And now we add some middleware
59 |
60 | ```cljs
61 | (defmethod containers :sign-in []
62 | [(route-middleware
63 | sign-in/render
64 | [redirect-authenticated])])
65 | ```
66 |
67 | Without diving into `redirect-authenticated` quite yet, let's first look at our `route-middleware` function. It takes in a view component and a vector of middleware functions (executed from left to right). The result after all functions have executed is the view. The view will receive path and query params as arguments.
68 |
69 | Next let's look at `redirect-authenticated`
70 |
71 | ```cljs
72 | (defn redirect-authenticated
73 | "Redirects authenticated users to the authenticated home page"
74 | [{:keys [route-query route-params] :as ctx}]
75 | (let [is-authenticated (re-frame/subscribe [:user/is-authenticated?])]
76 |
77 | (when (true? @is-authenticated)
78 | (re-frame/dispatch [:router/nav-to "/authenticated-home"]))
79 |
80 | (if (true? @is-authenticated)
81 | (assoc ctx :is-loading true)
82 | ctx)))
83 | ```
84 |
85 | Middleware functions will be passed a context object and are expected to return a context object. To prevent the execution of the next middleware function in the chain, toggle the `is-loading` property on the middleware context object to `true`.
86 |
87 |
88 | ### Route Coercion
89 |
90 | Given data sent to the servers and to the component originates from information synced in the url (path and query params), it's ideal to have a way to share concerns over configuration (coercion and defaults).
91 | The library supports that concern by allowing you to supply an `routes-enirched` tree where leafs can be supplied a configuration instead of a keyword. e.g
92 |
93 | ```
94 | {:query {:site {:coercion int?}
95 | :role {:coercion int?}
96 | :learner {:coercion #{"least-ready" "most-ready" "highest-mindset" "lowest-mindset"}
97 | :default "least-ready"}
98 | :current-page {:coercion int?
99 | :default 0}}}
100 | ```
101 |
102 | this will then provide a route-parameters map to the component. e.g
103 |
104 | ```
105 | {:route-parameters {:role 1 :learner "least-ready" :site 2 :current-page 0}}
106 | ```
107 |
108 | This functionality is then handled by [spec-tools](https://github.com/metosin/spec-tools). Overall this is a less feature rich version of what's provided by [reitit](https://github.com/metosin/reitit/blob/master/doc/coercion/clojure_spec_coercion.md).
109 |
110 |
111 | ## Development
112 |
113 | Run ` clj -M:shadow-cljs watch app` to and get a watched build. See Shadow cljs docs for more.
114 |
115 | ## License
116 |
117 | Copyright © 2018 Matt O'Connell
118 |
119 | Distributed under the Eclipse Public License.
120 |
--------------------------------------------------------------------------------
/bin/pack_and_deploy.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | if [[ $(git diff --stat) != '' ]]; then
4 | echo "Error: dirty repo"
5 | exit 1
6 | elif [[ $(git rev-parse --show-toplevel) != $(pwd) ]]; then
7 | echo "Error: Not in root directory"
8 | exit 1
9 | elif [ -z "$CLOJARS_USERNAME" ]; then
10 | echo "Error: CLOJARS_USERNAME is empty"
11 | exit 1
12 | elif [ -z "$CLOJARS_PASSWORD" ]; then
13 | echo "Error: CLOJARS_PASSWORD is empty"
14 | exit 1
15 | fi
16 |
17 | # Generate pom file
18 | clojure -Spom
19 |
20 | perl -pi -e "s/HEAD/$(git rev-parse HEAD)/g" pom.xml
21 |
22 | # Generate jar file
23 | rm -f app.jar
24 | clojure -Apack
25 |
26 | # Upload to clojars
27 | clj -Adeploy
28 |
29 | perl -pi -e "s/$(git rev-parse HEAD)/HEAD/g" pom.xml
30 |
31 | # Format pom file
32 | xmllint --format pom.xml > pom.xml-formatted
33 | mv pom.xml-formatted pom.xml
34 |
--------------------------------------------------------------------------------
/deps.edn:
--------------------------------------------------------------------------------
1 | {:paths ["src"]
2 |
3 | :deps {bidi/bidi {:mvn/version "2.1.6"}
4 | com.cemerick/url {:mvn/version "0.1.1"}
5 | kibu/pushy {:mvn/version "0.3.8"}
6 | re-frame/re-frame {:mvn/version "0.10.6"}
7 | metosin/spec-tools {:mvn/version "0.10.5"}}
8 |
9 | :aliases {:test
10 | {:extra-deps {org.clojure/clojurescript {:mvn/version "1.10.520"}
11 | olical/cljs-test-runner {:mvn/version "3.2.0"}}
12 | :extra-paths ["test"]
13 | :main-opts ["-m" "cljs-test-runner.main"]}
14 |
15 | :pack
16 | {:main-opts
17 | ["-m" "mach.pack.alpha.skinny" "--no-libs" "--project-path" "app.jar"]
18 |
19 | :extra-deps
20 | {pack/pack.alpha {:git/url "https://github.com/juxt/pack.alpha.git"
21 | :sha "c70740ffc10805f34836da2160fa1899601fac02"}}}
22 |
23 | :deploy
24 | {:main-opts
25 | ["-m" "deps-deploy.deps-deploy" "deploy" "app.jar"]
26 |
27 | :extra-deps
28 | {deps-deploy {:mvn/version "RELEASE"}}}
29 |
30 | :shadow-cljs
31 | {:extra-deps {thheller/shadow-cljs {:mvn/version "2.15.10"}}
32 | :main-opts ["-m" "shadow.cljs.devtools.cli"]}}}
33 |
--------------------------------------------------------------------------------
/doc/intro.md:
--------------------------------------------------------------------------------
1 | # Introduction to re-frame-request
2 |
3 | TODO: write [great documentation](http://jacobian.org/writing/what-to-write/)
4 |
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "re-frame-routing",
3 | "lockfileVersion": 2,
4 | "requires": true,
5 | "packages": {
6 | "": {
7 | "dependencies": {
8 | "create-react-class": "^15.7.0",
9 | "react": "^17.0.2",
10 | "react-dom": "^17.0.2",
11 | "shadow-cljs": "^2.15.10"
12 | }
13 | },
14 | "node_modules/asn1.js": {
15 | "version": "5.4.1",
16 | "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz",
17 | "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==",
18 | "dependencies": {
19 | "bn.js": "^4.0.0",
20 | "inherits": "^2.0.1",
21 | "minimalistic-assert": "^1.0.0",
22 | "safer-buffer": "^2.1.0"
23 | }
24 | },
25 | "node_modules/asn1.js/node_modules/bn.js": {
26 | "version": "4.12.0",
27 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
28 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
29 | },
30 | "node_modules/assert": {
31 | "version": "1.5.0",
32 | "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz",
33 | "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==",
34 | "dependencies": {
35 | "object-assign": "^4.1.1",
36 | "util": "0.10.3"
37 | }
38 | },
39 | "node_modules/assert/node_modules/inherits": {
40 | "version": "2.0.1",
41 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
42 | "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE="
43 | },
44 | "node_modules/assert/node_modules/util": {
45 | "version": "0.10.3",
46 | "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
47 | "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
48 | "dependencies": {
49 | "inherits": "2.0.1"
50 | }
51 | },
52 | "node_modules/base64-js": {
53 | "version": "1.5.1",
54 | "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
55 | "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
56 | "funding": [
57 | {
58 | "type": "github",
59 | "url": "https://github.com/sponsors/feross"
60 | },
61 | {
62 | "type": "patreon",
63 | "url": "https://www.patreon.com/feross"
64 | },
65 | {
66 | "type": "consulting",
67 | "url": "https://feross.org/support"
68 | }
69 | ]
70 | },
71 | "node_modules/bn.js": {
72 | "version": "5.2.0",
73 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz",
74 | "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw=="
75 | },
76 | "node_modules/brorand": {
77 | "version": "1.1.0",
78 | "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
79 | "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8="
80 | },
81 | "node_modules/browserify-aes": {
82 | "version": "1.2.0",
83 | "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
84 | "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
85 | "dependencies": {
86 | "buffer-xor": "^1.0.3",
87 | "cipher-base": "^1.0.0",
88 | "create-hash": "^1.1.0",
89 | "evp_bytestokey": "^1.0.3",
90 | "inherits": "^2.0.1",
91 | "safe-buffer": "^5.0.1"
92 | }
93 | },
94 | "node_modules/browserify-cipher": {
95 | "version": "1.0.1",
96 | "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz",
97 | "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==",
98 | "dependencies": {
99 | "browserify-aes": "^1.0.4",
100 | "browserify-des": "^1.0.0",
101 | "evp_bytestokey": "^1.0.0"
102 | }
103 | },
104 | "node_modules/browserify-des": {
105 | "version": "1.0.2",
106 | "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz",
107 | "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==",
108 | "dependencies": {
109 | "cipher-base": "^1.0.1",
110 | "des.js": "^1.0.0",
111 | "inherits": "^2.0.1",
112 | "safe-buffer": "^5.1.2"
113 | }
114 | },
115 | "node_modules/browserify-rsa": {
116 | "version": "4.1.0",
117 | "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz",
118 | "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==",
119 | "dependencies": {
120 | "bn.js": "^5.0.0",
121 | "randombytes": "^2.0.1"
122 | }
123 | },
124 | "node_modules/browserify-sign": {
125 | "version": "4.2.1",
126 | "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz",
127 | "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==",
128 | "dependencies": {
129 | "bn.js": "^5.1.1",
130 | "browserify-rsa": "^4.0.1",
131 | "create-hash": "^1.2.0",
132 | "create-hmac": "^1.1.7",
133 | "elliptic": "^6.5.3",
134 | "inherits": "^2.0.4",
135 | "parse-asn1": "^5.1.5",
136 | "readable-stream": "^3.6.0",
137 | "safe-buffer": "^5.2.0"
138 | }
139 | },
140 | "node_modules/browserify-sign/node_modules/readable-stream": {
141 | "version": "3.6.0",
142 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
143 | "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
144 | "dependencies": {
145 | "inherits": "^2.0.3",
146 | "string_decoder": "^1.1.1",
147 | "util-deprecate": "^1.0.1"
148 | },
149 | "engines": {
150 | "node": ">= 6"
151 | }
152 | },
153 | "node_modules/browserify-zlib": {
154 | "version": "0.2.0",
155 | "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz",
156 | "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==",
157 | "dependencies": {
158 | "pako": "~1.0.5"
159 | }
160 | },
161 | "node_modules/buffer": {
162 | "version": "4.9.2",
163 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz",
164 | "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==",
165 | "dependencies": {
166 | "base64-js": "^1.0.2",
167 | "ieee754": "^1.1.4",
168 | "isarray": "^1.0.0"
169 | }
170 | },
171 | "node_modules/buffer-xor": {
172 | "version": "1.0.3",
173 | "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
174 | "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk="
175 | },
176 | "node_modules/builtin-status-codes": {
177 | "version": "3.0.0",
178 | "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
179 | "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug="
180 | },
181 | "node_modules/cipher-base": {
182 | "version": "1.0.4",
183 | "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
184 | "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
185 | "dependencies": {
186 | "inherits": "^2.0.1",
187 | "safe-buffer": "^5.0.1"
188 | }
189 | },
190 | "node_modules/console-browserify": {
191 | "version": "1.2.0",
192 | "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz",
193 | "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA=="
194 | },
195 | "node_modules/constants-browserify": {
196 | "version": "1.0.0",
197 | "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
198 | "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U="
199 | },
200 | "node_modules/core-util-is": {
201 | "version": "1.0.3",
202 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
203 | "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ=="
204 | },
205 | "node_modules/create-ecdh": {
206 | "version": "4.0.4",
207 | "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz",
208 | "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==",
209 | "dependencies": {
210 | "bn.js": "^4.1.0",
211 | "elliptic": "^6.5.3"
212 | }
213 | },
214 | "node_modules/create-ecdh/node_modules/bn.js": {
215 | "version": "4.12.0",
216 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
217 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
218 | },
219 | "node_modules/create-hash": {
220 | "version": "1.2.0",
221 | "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
222 | "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
223 | "dependencies": {
224 | "cipher-base": "^1.0.1",
225 | "inherits": "^2.0.1",
226 | "md5.js": "^1.3.4",
227 | "ripemd160": "^2.0.1",
228 | "sha.js": "^2.4.0"
229 | }
230 | },
231 | "node_modules/create-hmac": {
232 | "version": "1.1.7",
233 | "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
234 | "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
235 | "dependencies": {
236 | "cipher-base": "^1.0.3",
237 | "create-hash": "^1.1.0",
238 | "inherits": "^2.0.1",
239 | "ripemd160": "^2.0.0",
240 | "safe-buffer": "^5.0.1",
241 | "sha.js": "^2.4.8"
242 | }
243 | },
244 | "node_modules/create-react-class": {
245 | "version": "15.7.0",
246 | "resolved": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.7.0.tgz",
247 | "integrity": "sha512-QZv4sFWG9S5RUvkTYWbflxeZX+JG7Cz0Tn33rQBJ+WFQTqTfUTjMjiv9tnfXazjsO5r0KhPs+AqCjyrQX6h2ng==",
248 | "dependencies": {
249 | "loose-envify": "^1.3.1",
250 | "object-assign": "^4.1.1"
251 | }
252 | },
253 | "node_modules/crypto-browserify": {
254 | "version": "3.12.0",
255 | "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
256 | "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==",
257 | "dependencies": {
258 | "browserify-cipher": "^1.0.0",
259 | "browserify-sign": "^4.0.0",
260 | "create-ecdh": "^4.0.0",
261 | "create-hash": "^1.1.0",
262 | "create-hmac": "^1.1.0",
263 | "diffie-hellman": "^5.0.0",
264 | "inherits": "^2.0.1",
265 | "pbkdf2": "^3.0.3",
266 | "public-encrypt": "^4.0.0",
267 | "randombytes": "^2.0.0",
268 | "randomfill": "^1.0.3"
269 | },
270 | "engines": {
271 | "node": "*"
272 | }
273 | },
274 | "node_modules/des.js": {
275 | "version": "1.0.1",
276 | "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz",
277 | "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==",
278 | "dependencies": {
279 | "inherits": "^2.0.1",
280 | "minimalistic-assert": "^1.0.0"
281 | }
282 | },
283 | "node_modules/diffie-hellman": {
284 | "version": "5.0.3",
285 | "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
286 | "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
287 | "dependencies": {
288 | "bn.js": "^4.1.0",
289 | "miller-rabin": "^4.0.0",
290 | "randombytes": "^2.0.0"
291 | }
292 | },
293 | "node_modules/diffie-hellman/node_modules/bn.js": {
294 | "version": "4.12.0",
295 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
296 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
297 | },
298 | "node_modules/domain-browser": {
299 | "version": "1.2.0",
300 | "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz",
301 | "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==",
302 | "engines": {
303 | "node": ">=0.4",
304 | "npm": ">=1.2"
305 | }
306 | },
307 | "node_modules/elliptic": {
308 | "version": "6.5.4",
309 | "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz",
310 | "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==",
311 | "dependencies": {
312 | "bn.js": "^4.11.9",
313 | "brorand": "^1.1.0",
314 | "hash.js": "^1.0.0",
315 | "hmac-drbg": "^1.0.1",
316 | "inherits": "^2.0.4",
317 | "minimalistic-assert": "^1.0.1",
318 | "minimalistic-crypto-utils": "^1.0.1"
319 | }
320 | },
321 | "node_modules/elliptic/node_modules/bn.js": {
322 | "version": "4.12.0",
323 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
324 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
325 | },
326 | "node_modules/events": {
327 | "version": "3.3.0",
328 | "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
329 | "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
330 | "engines": {
331 | "node": ">=0.8.x"
332 | }
333 | },
334 | "node_modules/evp_bytestokey": {
335 | "version": "1.0.3",
336 | "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
337 | "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
338 | "dependencies": {
339 | "md5.js": "^1.3.4",
340 | "safe-buffer": "^5.1.1"
341 | }
342 | },
343 | "node_modules/hash-base": {
344 | "version": "3.1.0",
345 | "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz",
346 | "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==",
347 | "dependencies": {
348 | "inherits": "^2.0.4",
349 | "readable-stream": "^3.6.0",
350 | "safe-buffer": "^5.2.0"
351 | },
352 | "engines": {
353 | "node": ">=4"
354 | }
355 | },
356 | "node_modules/hash-base/node_modules/readable-stream": {
357 | "version": "3.6.0",
358 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
359 | "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
360 | "dependencies": {
361 | "inherits": "^2.0.3",
362 | "string_decoder": "^1.1.1",
363 | "util-deprecate": "^1.0.1"
364 | },
365 | "engines": {
366 | "node": ">= 6"
367 | }
368 | },
369 | "node_modules/hash.js": {
370 | "version": "1.1.7",
371 | "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
372 | "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
373 | "dependencies": {
374 | "inherits": "^2.0.3",
375 | "minimalistic-assert": "^1.0.1"
376 | }
377 | },
378 | "node_modules/hmac-drbg": {
379 | "version": "1.0.1",
380 | "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
381 | "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
382 | "dependencies": {
383 | "hash.js": "^1.0.3",
384 | "minimalistic-assert": "^1.0.0",
385 | "minimalistic-crypto-utils": "^1.0.1"
386 | }
387 | },
388 | "node_modules/https-browserify": {
389 | "version": "1.0.0",
390 | "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
391 | "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM="
392 | },
393 | "node_modules/ieee754": {
394 | "version": "1.2.1",
395 | "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
396 | "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
397 | "funding": [
398 | {
399 | "type": "github",
400 | "url": "https://github.com/sponsors/feross"
401 | },
402 | {
403 | "type": "patreon",
404 | "url": "https://www.patreon.com/feross"
405 | },
406 | {
407 | "type": "consulting",
408 | "url": "https://feross.org/support"
409 | }
410 | ]
411 | },
412 | "node_modules/inherits": {
413 | "version": "2.0.4",
414 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
415 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
416 | },
417 | "node_modules/isarray": {
418 | "version": "1.0.0",
419 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
420 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
421 | },
422 | "node_modules/isexe": {
423 | "version": "2.0.0",
424 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
425 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA="
426 | },
427 | "node_modules/js-tokens": {
428 | "version": "4.0.0",
429 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
430 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
431 | },
432 | "node_modules/loose-envify": {
433 | "version": "1.4.0",
434 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
435 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
436 | "dependencies": {
437 | "js-tokens": "^3.0.0 || ^4.0.0"
438 | },
439 | "bin": {
440 | "loose-envify": "cli.js"
441 | }
442 | },
443 | "node_modules/md5.js": {
444 | "version": "1.3.5",
445 | "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
446 | "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==",
447 | "dependencies": {
448 | "hash-base": "^3.0.0",
449 | "inherits": "^2.0.1",
450 | "safe-buffer": "^5.1.2"
451 | }
452 | },
453 | "node_modules/miller-rabin": {
454 | "version": "4.0.1",
455 | "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz",
456 | "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==",
457 | "dependencies": {
458 | "bn.js": "^4.0.0",
459 | "brorand": "^1.0.1"
460 | },
461 | "bin": {
462 | "miller-rabin": "bin/miller-rabin"
463 | }
464 | },
465 | "node_modules/miller-rabin/node_modules/bn.js": {
466 | "version": "4.12.0",
467 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
468 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
469 | },
470 | "node_modules/minimalistic-assert": {
471 | "version": "1.0.1",
472 | "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
473 | "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A=="
474 | },
475 | "node_modules/minimalistic-crypto-utils": {
476 | "version": "1.0.1",
477 | "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
478 | "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo="
479 | },
480 | "node_modules/node-libs-browser": {
481 | "version": "2.2.1",
482 | "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz",
483 | "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==",
484 | "dependencies": {
485 | "assert": "^1.1.1",
486 | "browserify-zlib": "^0.2.0",
487 | "buffer": "^4.3.0",
488 | "console-browserify": "^1.1.0",
489 | "constants-browserify": "^1.0.0",
490 | "crypto-browserify": "^3.11.0",
491 | "domain-browser": "^1.1.1",
492 | "events": "^3.0.0",
493 | "https-browserify": "^1.0.0",
494 | "os-browserify": "^0.3.0",
495 | "path-browserify": "0.0.1",
496 | "process": "^0.11.10",
497 | "punycode": "^1.2.4",
498 | "querystring-es3": "^0.2.0",
499 | "readable-stream": "^2.3.3",
500 | "stream-browserify": "^2.0.1",
501 | "stream-http": "^2.7.2",
502 | "string_decoder": "^1.0.0",
503 | "timers-browserify": "^2.0.4",
504 | "tty-browserify": "0.0.0",
505 | "url": "^0.11.0",
506 | "util": "^0.11.0",
507 | "vm-browserify": "^1.0.1"
508 | }
509 | },
510 | "node_modules/object-assign": {
511 | "version": "4.1.1",
512 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
513 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
514 | "engines": {
515 | "node": ">=0.10.0"
516 | }
517 | },
518 | "node_modules/os-browserify": {
519 | "version": "0.3.0",
520 | "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
521 | "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc="
522 | },
523 | "node_modules/pako": {
524 | "version": "1.0.11",
525 | "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
526 | "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw=="
527 | },
528 | "node_modules/parse-asn1": {
529 | "version": "5.1.6",
530 | "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz",
531 | "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==",
532 | "dependencies": {
533 | "asn1.js": "^5.2.0",
534 | "browserify-aes": "^1.0.0",
535 | "evp_bytestokey": "^1.0.0",
536 | "pbkdf2": "^3.0.3",
537 | "safe-buffer": "^5.1.1"
538 | }
539 | },
540 | "node_modules/path-browserify": {
541 | "version": "0.0.1",
542 | "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz",
543 | "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ=="
544 | },
545 | "node_modules/pbkdf2": {
546 | "version": "3.1.2",
547 | "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz",
548 | "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==",
549 | "dependencies": {
550 | "create-hash": "^1.1.2",
551 | "create-hmac": "^1.1.4",
552 | "ripemd160": "^2.0.1",
553 | "safe-buffer": "^5.0.1",
554 | "sha.js": "^2.4.8"
555 | },
556 | "engines": {
557 | "node": ">=0.12"
558 | }
559 | },
560 | "node_modules/process": {
561 | "version": "0.11.10",
562 | "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
563 | "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=",
564 | "engines": {
565 | "node": ">= 0.6.0"
566 | }
567 | },
568 | "node_modules/process-nextick-args": {
569 | "version": "2.0.1",
570 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
571 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
572 | },
573 | "node_modules/public-encrypt": {
574 | "version": "4.0.3",
575 | "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz",
576 | "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==",
577 | "dependencies": {
578 | "bn.js": "^4.1.0",
579 | "browserify-rsa": "^4.0.0",
580 | "create-hash": "^1.1.0",
581 | "parse-asn1": "^5.0.0",
582 | "randombytes": "^2.0.1",
583 | "safe-buffer": "^5.1.2"
584 | }
585 | },
586 | "node_modules/public-encrypt/node_modules/bn.js": {
587 | "version": "4.12.0",
588 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
589 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
590 | },
591 | "node_modules/punycode": {
592 | "version": "1.4.1",
593 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
594 | "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4="
595 | },
596 | "node_modules/querystring": {
597 | "version": "0.2.0",
598 | "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz",
599 | "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=",
600 | "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.",
601 | "engines": {
602 | "node": ">=0.4.x"
603 | }
604 | },
605 | "node_modules/querystring-es3": {
606 | "version": "0.2.1",
607 | "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz",
608 | "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=",
609 | "engines": {
610 | "node": ">=0.4.x"
611 | }
612 | },
613 | "node_modules/randombytes": {
614 | "version": "2.1.0",
615 | "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
616 | "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
617 | "dependencies": {
618 | "safe-buffer": "^5.1.0"
619 | }
620 | },
621 | "node_modules/randomfill": {
622 | "version": "1.0.4",
623 | "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz",
624 | "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==",
625 | "dependencies": {
626 | "randombytes": "^2.0.5",
627 | "safe-buffer": "^5.1.0"
628 | }
629 | },
630 | "node_modules/react": {
631 | "version": "17.0.2",
632 | "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz",
633 | "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==",
634 | "dependencies": {
635 | "loose-envify": "^1.1.0",
636 | "object-assign": "^4.1.1"
637 | },
638 | "engines": {
639 | "node": ">=0.10.0"
640 | }
641 | },
642 | "node_modules/react-dom": {
643 | "version": "17.0.2",
644 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz",
645 | "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==",
646 | "dependencies": {
647 | "loose-envify": "^1.1.0",
648 | "object-assign": "^4.1.1",
649 | "scheduler": "^0.20.2"
650 | },
651 | "peerDependencies": {
652 | "react": "17.0.2"
653 | }
654 | },
655 | "node_modules/readable-stream": {
656 | "version": "2.3.7",
657 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
658 | "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
659 | "dependencies": {
660 | "core-util-is": "~1.0.0",
661 | "inherits": "~2.0.3",
662 | "isarray": "~1.0.0",
663 | "process-nextick-args": "~2.0.0",
664 | "safe-buffer": "~5.1.1",
665 | "string_decoder": "~1.1.1",
666 | "util-deprecate": "~1.0.1"
667 | }
668 | },
669 | "node_modules/readable-stream/node_modules/safe-buffer": {
670 | "version": "5.1.2",
671 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
672 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
673 | },
674 | "node_modules/readable-stream/node_modules/string_decoder": {
675 | "version": "1.1.1",
676 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
677 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
678 | "dependencies": {
679 | "safe-buffer": "~5.1.0"
680 | }
681 | },
682 | "node_modules/readline-sync": {
683 | "version": "1.4.10",
684 | "resolved": "https://registry.npmjs.org/readline-sync/-/readline-sync-1.4.10.tgz",
685 | "integrity": "sha512-gNva8/6UAe8QYepIQH/jQ2qn91Qj0B9sYjMBBs3QOB8F2CXcKgLxQaJRP76sWVRQt+QU+8fAkCbCvjjMFu7Ycw==",
686 | "engines": {
687 | "node": ">= 0.8.0"
688 | }
689 | },
690 | "node_modules/ripemd160": {
691 | "version": "2.0.2",
692 | "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
693 | "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
694 | "dependencies": {
695 | "hash-base": "^3.0.0",
696 | "inherits": "^2.0.1"
697 | }
698 | },
699 | "node_modules/safe-buffer": {
700 | "version": "5.2.1",
701 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
702 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
703 | "funding": [
704 | {
705 | "type": "github",
706 | "url": "https://github.com/sponsors/feross"
707 | },
708 | {
709 | "type": "patreon",
710 | "url": "https://www.patreon.com/feross"
711 | },
712 | {
713 | "type": "consulting",
714 | "url": "https://feross.org/support"
715 | }
716 | ]
717 | },
718 | "node_modules/safer-buffer": {
719 | "version": "2.1.2",
720 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
721 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
722 | },
723 | "node_modules/scheduler": {
724 | "version": "0.20.2",
725 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz",
726 | "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==",
727 | "dependencies": {
728 | "loose-envify": "^1.1.0",
729 | "object-assign": "^4.1.1"
730 | }
731 | },
732 | "node_modules/setimmediate": {
733 | "version": "1.0.5",
734 | "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
735 | "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU="
736 | },
737 | "node_modules/sha.js": {
738 | "version": "2.4.11",
739 | "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
740 | "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
741 | "dependencies": {
742 | "inherits": "^2.0.1",
743 | "safe-buffer": "^5.0.1"
744 | },
745 | "bin": {
746 | "sha.js": "bin.js"
747 | }
748 | },
749 | "node_modules/shadow-cljs": {
750 | "version": "2.15.10",
751 | "resolved": "https://registry.npmjs.org/shadow-cljs/-/shadow-cljs-2.15.10.tgz",
752 | "integrity": "sha512-r02f7pvZefiaATt3k7oAb8PNQKaA67iFoowS88Jaf8IClRQL3plBazkDAUWX5yQd9QfT4WhGr6kP0GTzTidQSg==",
753 | "dependencies": {
754 | "node-libs-browser": "^2.2.1",
755 | "readline-sync": "^1.4.7",
756 | "shadow-cljs-jar": "1.3.2",
757 | "source-map-support": "^0.4.15",
758 | "which": "^1.3.1",
759 | "ws": "^7.4.6"
760 | },
761 | "bin": {
762 | "shadow-cljs": "cli/runner.js"
763 | },
764 | "engines": {
765 | "node": ">=6.0.0"
766 | }
767 | },
768 | "node_modules/shadow-cljs-jar": {
769 | "version": "1.3.2",
770 | "resolved": "https://registry.npmjs.org/shadow-cljs-jar/-/shadow-cljs-jar-1.3.2.tgz",
771 | "integrity": "sha512-XmeffAZHv8z7451kzeq9oKh8fh278Ak+UIOGGrapyqrFBB773xN8vMQ3O7J7TYLnb9BUwcqadKkmgaq7q6fhZg=="
772 | },
773 | "node_modules/source-map": {
774 | "version": "0.5.7",
775 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
776 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
777 | "engines": {
778 | "node": ">=0.10.0"
779 | }
780 | },
781 | "node_modules/source-map-support": {
782 | "version": "0.4.18",
783 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz",
784 | "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==",
785 | "dependencies": {
786 | "source-map": "^0.5.6"
787 | }
788 | },
789 | "node_modules/stream-browserify": {
790 | "version": "2.0.2",
791 | "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz",
792 | "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==",
793 | "dependencies": {
794 | "inherits": "~2.0.1",
795 | "readable-stream": "^2.0.2"
796 | }
797 | },
798 | "node_modules/stream-http": {
799 | "version": "2.8.3",
800 | "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz",
801 | "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==",
802 | "dependencies": {
803 | "builtin-status-codes": "^3.0.0",
804 | "inherits": "^2.0.1",
805 | "readable-stream": "^2.3.6",
806 | "to-arraybuffer": "^1.0.0",
807 | "xtend": "^4.0.0"
808 | }
809 | },
810 | "node_modules/string_decoder": {
811 | "version": "1.3.0",
812 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
813 | "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
814 | "dependencies": {
815 | "safe-buffer": "~5.2.0"
816 | }
817 | },
818 | "node_modules/timers-browserify": {
819 | "version": "2.0.12",
820 | "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz",
821 | "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==",
822 | "dependencies": {
823 | "setimmediate": "^1.0.4"
824 | },
825 | "engines": {
826 | "node": ">=0.6.0"
827 | }
828 | },
829 | "node_modules/to-arraybuffer": {
830 | "version": "1.0.1",
831 | "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz",
832 | "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M="
833 | },
834 | "node_modules/tty-browserify": {
835 | "version": "0.0.0",
836 | "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz",
837 | "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY="
838 | },
839 | "node_modules/url": {
840 | "version": "0.11.0",
841 | "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz",
842 | "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=",
843 | "dependencies": {
844 | "punycode": "1.3.2",
845 | "querystring": "0.2.0"
846 | }
847 | },
848 | "node_modules/url/node_modules/punycode": {
849 | "version": "1.3.2",
850 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
851 | "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0="
852 | },
853 | "node_modules/util": {
854 | "version": "0.11.1",
855 | "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz",
856 | "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==",
857 | "dependencies": {
858 | "inherits": "2.0.3"
859 | }
860 | },
861 | "node_modules/util-deprecate": {
862 | "version": "1.0.2",
863 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
864 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
865 | },
866 | "node_modules/util/node_modules/inherits": {
867 | "version": "2.0.3",
868 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
869 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
870 | },
871 | "node_modules/vm-browserify": {
872 | "version": "1.1.2",
873 | "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz",
874 | "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ=="
875 | },
876 | "node_modules/which": {
877 | "version": "1.3.1",
878 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
879 | "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
880 | "dependencies": {
881 | "isexe": "^2.0.0"
882 | },
883 | "bin": {
884 | "which": "bin/which"
885 | }
886 | },
887 | "node_modules/ws": {
888 | "version": "7.5.5",
889 | "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.5.tgz",
890 | "integrity": "sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w==",
891 | "engines": {
892 | "node": ">=8.3.0"
893 | },
894 | "peerDependencies": {
895 | "bufferutil": "^4.0.1",
896 | "utf-8-validate": "^5.0.2"
897 | },
898 | "peerDependenciesMeta": {
899 | "bufferutil": {
900 | "optional": true
901 | },
902 | "utf-8-validate": {
903 | "optional": true
904 | }
905 | }
906 | },
907 | "node_modules/xtend": {
908 | "version": "4.0.2",
909 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
910 | "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
911 | "engines": {
912 | "node": ">=0.4"
913 | }
914 | }
915 | },
916 | "dependencies": {
917 | "asn1.js": {
918 | "version": "5.4.1",
919 | "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz",
920 | "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==",
921 | "requires": {
922 | "bn.js": "^4.0.0",
923 | "inherits": "^2.0.1",
924 | "minimalistic-assert": "^1.0.0",
925 | "safer-buffer": "^2.1.0"
926 | },
927 | "dependencies": {
928 | "bn.js": {
929 | "version": "4.12.0",
930 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
931 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
932 | }
933 | }
934 | },
935 | "assert": {
936 | "version": "1.5.0",
937 | "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz",
938 | "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==",
939 | "requires": {
940 | "object-assign": "^4.1.1",
941 | "util": "0.10.3"
942 | },
943 | "dependencies": {
944 | "inherits": {
945 | "version": "2.0.1",
946 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
947 | "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE="
948 | },
949 | "util": {
950 | "version": "0.10.3",
951 | "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
952 | "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
953 | "requires": {
954 | "inherits": "2.0.1"
955 | }
956 | }
957 | }
958 | },
959 | "base64-js": {
960 | "version": "1.5.1",
961 | "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
962 | "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA=="
963 | },
964 | "bn.js": {
965 | "version": "5.2.0",
966 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz",
967 | "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw=="
968 | },
969 | "brorand": {
970 | "version": "1.1.0",
971 | "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
972 | "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8="
973 | },
974 | "browserify-aes": {
975 | "version": "1.2.0",
976 | "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
977 | "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
978 | "requires": {
979 | "buffer-xor": "^1.0.3",
980 | "cipher-base": "^1.0.0",
981 | "create-hash": "^1.1.0",
982 | "evp_bytestokey": "^1.0.3",
983 | "inherits": "^2.0.1",
984 | "safe-buffer": "^5.0.1"
985 | }
986 | },
987 | "browserify-cipher": {
988 | "version": "1.0.1",
989 | "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz",
990 | "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==",
991 | "requires": {
992 | "browserify-aes": "^1.0.4",
993 | "browserify-des": "^1.0.0",
994 | "evp_bytestokey": "^1.0.0"
995 | }
996 | },
997 | "browserify-des": {
998 | "version": "1.0.2",
999 | "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz",
1000 | "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==",
1001 | "requires": {
1002 | "cipher-base": "^1.0.1",
1003 | "des.js": "^1.0.0",
1004 | "inherits": "^2.0.1",
1005 | "safe-buffer": "^5.1.2"
1006 | }
1007 | },
1008 | "browserify-rsa": {
1009 | "version": "4.1.0",
1010 | "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz",
1011 | "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==",
1012 | "requires": {
1013 | "bn.js": "^5.0.0",
1014 | "randombytes": "^2.0.1"
1015 | }
1016 | },
1017 | "browserify-sign": {
1018 | "version": "4.2.1",
1019 | "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz",
1020 | "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==",
1021 | "requires": {
1022 | "bn.js": "^5.1.1",
1023 | "browserify-rsa": "^4.0.1",
1024 | "create-hash": "^1.2.0",
1025 | "create-hmac": "^1.1.7",
1026 | "elliptic": "^6.5.3",
1027 | "inherits": "^2.0.4",
1028 | "parse-asn1": "^5.1.5",
1029 | "readable-stream": "^3.6.0",
1030 | "safe-buffer": "^5.2.0"
1031 | },
1032 | "dependencies": {
1033 | "readable-stream": {
1034 | "version": "3.6.0",
1035 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
1036 | "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
1037 | "requires": {
1038 | "inherits": "^2.0.3",
1039 | "string_decoder": "^1.1.1",
1040 | "util-deprecate": "^1.0.1"
1041 | }
1042 | }
1043 | }
1044 | },
1045 | "browserify-zlib": {
1046 | "version": "0.2.0",
1047 | "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz",
1048 | "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==",
1049 | "requires": {
1050 | "pako": "~1.0.5"
1051 | }
1052 | },
1053 | "buffer": {
1054 | "version": "4.9.2",
1055 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz",
1056 | "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==",
1057 | "requires": {
1058 | "base64-js": "^1.0.2",
1059 | "ieee754": "^1.1.4",
1060 | "isarray": "^1.0.0"
1061 | }
1062 | },
1063 | "buffer-xor": {
1064 | "version": "1.0.3",
1065 | "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
1066 | "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk="
1067 | },
1068 | "builtin-status-codes": {
1069 | "version": "3.0.0",
1070 | "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
1071 | "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug="
1072 | },
1073 | "cipher-base": {
1074 | "version": "1.0.4",
1075 | "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
1076 | "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
1077 | "requires": {
1078 | "inherits": "^2.0.1",
1079 | "safe-buffer": "^5.0.1"
1080 | }
1081 | },
1082 | "console-browserify": {
1083 | "version": "1.2.0",
1084 | "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz",
1085 | "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA=="
1086 | },
1087 | "constants-browserify": {
1088 | "version": "1.0.0",
1089 | "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
1090 | "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U="
1091 | },
1092 | "core-util-is": {
1093 | "version": "1.0.3",
1094 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
1095 | "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ=="
1096 | },
1097 | "create-ecdh": {
1098 | "version": "4.0.4",
1099 | "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz",
1100 | "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==",
1101 | "requires": {
1102 | "bn.js": "^4.1.0",
1103 | "elliptic": "^6.5.3"
1104 | },
1105 | "dependencies": {
1106 | "bn.js": {
1107 | "version": "4.12.0",
1108 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
1109 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
1110 | }
1111 | }
1112 | },
1113 | "create-hash": {
1114 | "version": "1.2.0",
1115 | "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
1116 | "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
1117 | "requires": {
1118 | "cipher-base": "^1.0.1",
1119 | "inherits": "^2.0.1",
1120 | "md5.js": "^1.3.4",
1121 | "ripemd160": "^2.0.1",
1122 | "sha.js": "^2.4.0"
1123 | }
1124 | },
1125 | "create-hmac": {
1126 | "version": "1.1.7",
1127 | "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
1128 | "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
1129 | "requires": {
1130 | "cipher-base": "^1.0.3",
1131 | "create-hash": "^1.1.0",
1132 | "inherits": "^2.0.1",
1133 | "ripemd160": "^2.0.0",
1134 | "safe-buffer": "^5.0.1",
1135 | "sha.js": "^2.4.8"
1136 | }
1137 | },
1138 | "create-react-class": {
1139 | "version": "15.7.0",
1140 | "resolved": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.7.0.tgz",
1141 | "integrity": "sha512-QZv4sFWG9S5RUvkTYWbflxeZX+JG7Cz0Tn33rQBJ+WFQTqTfUTjMjiv9tnfXazjsO5r0KhPs+AqCjyrQX6h2ng==",
1142 | "requires": {
1143 | "loose-envify": "^1.3.1",
1144 | "object-assign": "^4.1.1"
1145 | }
1146 | },
1147 | "crypto-browserify": {
1148 | "version": "3.12.0",
1149 | "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
1150 | "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==",
1151 | "requires": {
1152 | "browserify-cipher": "^1.0.0",
1153 | "browserify-sign": "^4.0.0",
1154 | "create-ecdh": "^4.0.0",
1155 | "create-hash": "^1.1.0",
1156 | "create-hmac": "^1.1.0",
1157 | "diffie-hellman": "^5.0.0",
1158 | "inherits": "^2.0.1",
1159 | "pbkdf2": "^3.0.3",
1160 | "public-encrypt": "^4.0.0",
1161 | "randombytes": "^2.0.0",
1162 | "randomfill": "^1.0.3"
1163 | }
1164 | },
1165 | "des.js": {
1166 | "version": "1.0.1",
1167 | "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz",
1168 | "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==",
1169 | "requires": {
1170 | "inherits": "^2.0.1",
1171 | "minimalistic-assert": "^1.0.0"
1172 | }
1173 | },
1174 | "diffie-hellman": {
1175 | "version": "5.0.3",
1176 | "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
1177 | "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
1178 | "requires": {
1179 | "bn.js": "^4.1.0",
1180 | "miller-rabin": "^4.0.0",
1181 | "randombytes": "^2.0.0"
1182 | },
1183 | "dependencies": {
1184 | "bn.js": {
1185 | "version": "4.12.0",
1186 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
1187 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
1188 | }
1189 | }
1190 | },
1191 | "domain-browser": {
1192 | "version": "1.2.0",
1193 | "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz",
1194 | "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA=="
1195 | },
1196 | "elliptic": {
1197 | "version": "6.5.4",
1198 | "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz",
1199 | "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==",
1200 | "requires": {
1201 | "bn.js": "^4.11.9",
1202 | "brorand": "^1.1.0",
1203 | "hash.js": "^1.0.0",
1204 | "hmac-drbg": "^1.0.1",
1205 | "inherits": "^2.0.4",
1206 | "minimalistic-assert": "^1.0.1",
1207 | "minimalistic-crypto-utils": "^1.0.1"
1208 | },
1209 | "dependencies": {
1210 | "bn.js": {
1211 | "version": "4.12.0",
1212 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
1213 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
1214 | }
1215 | }
1216 | },
1217 | "events": {
1218 | "version": "3.3.0",
1219 | "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
1220 | "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q=="
1221 | },
1222 | "evp_bytestokey": {
1223 | "version": "1.0.3",
1224 | "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
1225 | "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
1226 | "requires": {
1227 | "md5.js": "^1.3.4",
1228 | "safe-buffer": "^5.1.1"
1229 | }
1230 | },
1231 | "hash-base": {
1232 | "version": "3.1.0",
1233 | "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz",
1234 | "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==",
1235 | "requires": {
1236 | "inherits": "^2.0.4",
1237 | "readable-stream": "^3.6.0",
1238 | "safe-buffer": "^5.2.0"
1239 | },
1240 | "dependencies": {
1241 | "readable-stream": {
1242 | "version": "3.6.0",
1243 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
1244 | "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
1245 | "requires": {
1246 | "inherits": "^2.0.3",
1247 | "string_decoder": "^1.1.1",
1248 | "util-deprecate": "^1.0.1"
1249 | }
1250 | }
1251 | }
1252 | },
1253 | "hash.js": {
1254 | "version": "1.1.7",
1255 | "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
1256 | "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
1257 | "requires": {
1258 | "inherits": "^2.0.3",
1259 | "minimalistic-assert": "^1.0.1"
1260 | }
1261 | },
1262 | "hmac-drbg": {
1263 | "version": "1.0.1",
1264 | "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
1265 | "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
1266 | "requires": {
1267 | "hash.js": "^1.0.3",
1268 | "minimalistic-assert": "^1.0.0",
1269 | "minimalistic-crypto-utils": "^1.0.1"
1270 | }
1271 | },
1272 | "https-browserify": {
1273 | "version": "1.0.0",
1274 | "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
1275 | "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM="
1276 | },
1277 | "ieee754": {
1278 | "version": "1.2.1",
1279 | "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
1280 | "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
1281 | },
1282 | "inherits": {
1283 | "version": "2.0.4",
1284 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
1285 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
1286 | },
1287 | "isarray": {
1288 | "version": "1.0.0",
1289 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
1290 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
1291 | },
1292 | "isexe": {
1293 | "version": "2.0.0",
1294 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
1295 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA="
1296 | },
1297 | "js-tokens": {
1298 | "version": "4.0.0",
1299 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
1300 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
1301 | },
1302 | "loose-envify": {
1303 | "version": "1.4.0",
1304 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
1305 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
1306 | "requires": {
1307 | "js-tokens": "^3.0.0 || ^4.0.0"
1308 | }
1309 | },
1310 | "md5.js": {
1311 | "version": "1.3.5",
1312 | "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
1313 | "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==",
1314 | "requires": {
1315 | "hash-base": "^3.0.0",
1316 | "inherits": "^2.0.1",
1317 | "safe-buffer": "^5.1.2"
1318 | }
1319 | },
1320 | "miller-rabin": {
1321 | "version": "4.0.1",
1322 | "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz",
1323 | "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==",
1324 | "requires": {
1325 | "bn.js": "^4.0.0",
1326 | "brorand": "^1.0.1"
1327 | },
1328 | "dependencies": {
1329 | "bn.js": {
1330 | "version": "4.12.0",
1331 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
1332 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
1333 | }
1334 | }
1335 | },
1336 | "minimalistic-assert": {
1337 | "version": "1.0.1",
1338 | "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
1339 | "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A=="
1340 | },
1341 | "minimalistic-crypto-utils": {
1342 | "version": "1.0.1",
1343 | "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
1344 | "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo="
1345 | },
1346 | "node-libs-browser": {
1347 | "version": "2.2.1",
1348 | "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz",
1349 | "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==",
1350 | "requires": {
1351 | "assert": "^1.1.1",
1352 | "browserify-zlib": "^0.2.0",
1353 | "buffer": "^4.3.0",
1354 | "console-browserify": "^1.1.0",
1355 | "constants-browserify": "^1.0.0",
1356 | "crypto-browserify": "^3.11.0",
1357 | "domain-browser": "^1.1.1",
1358 | "events": "^3.0.0",
1359 | "https-browserify": "^1.0.0",
1360 | "os-browserify": "^0.3.0",
1361 | "path-browserify": "0.0.1",
1362 | "process": "^0.11.10",
1363 | "punycode": "^1.2.4",
1364 | "querystring-es3": "^0.2.0",
1365 | "readable-stream": "^2.3.3",
1366 | "stream-browserify": "^2.0.1",
1367 | "stream-http": "^2.7.2",
1368 | "string_decoder": "^1.0.0",
1369 | "timers-browserify": "^2.0.4",
1370 | "tty-browserify": "0.0.0",
1371 | "url": "^0.11.0",
1372 | "util": "^0.11.0",
1373 | "vm-browserify": "^1.0.1"
1374 | }
1375 | },
1376 | "object-assign": {
1377 | "version": "4.1.1",
1378 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
1379 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
1380 | },
1381 | "os-browserify": {
1382 | "version": "0.3.0",
1383 | "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
1384 | "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc="
1385 | },
1386 | "pako": {
1387 | "version": "1.0.11",
1388 | "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
1389 | "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw=="
1390 | },
1391 | "parse-asn1": {
1392 | "version": "5.1.6",
1393 | "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz",
1394 | "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==",
1395 | "requires": {
1396 | "asn1.js": "^5.2.0",
1397 | "browserify-aes": "^1.0.0",
1398 | "evp_bytestokey": "^1.0.0",
1399 | "pbkdf2": "^3.0.3",
1400 | "safe-buffer": "^5.1.1"
1401 | }
1402 | },
1403 | "path-browserify": {
1404 | "version": "0.0.1",
1405 | "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz",
1406 | "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ=="
1407 | },
1408 | "pbkdf2": {
1409 | "version": "3.1.2",
1410 | "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz",
1411 | "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==",
1412 | "requires": {
1413 | "create-hash": "^1.1.2",
1414 | "create-hmac": "^1.1.4",
1415 | "ripemd160": "^2.0.1",
1416 | "safe-buffer": "^5.0.1",
1417 | "sha.js": "^2.4.8"
1418 | }
1419 | },
1420 | "process": {
1421 | "version": "0.11.10",
1422 | "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
1423 | "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI="
1424 | },
1425 | "process-nextick-args": {
1426 | "version": "2.0.1",
1427 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
1428 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
1429 | },
1430 | "public-encrypt": {
1431 | "version": "4.0.3",
1432 | "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz",
1433 | "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==",
1434 | "requires": {
1435 | "bn.js": "^4.1.0",
1436 | "browserify-rsa": "^4.0.0",
1437 | "create-hash": "^1.1.0",
1438 | "parse-asn1": "^5.0.0",
1439 | "randombytes": "^2.0.1",
1440 | "safe-buffer": "^5.1.2"
1441 | },
1442 | "dependencies": {
1443 | "bn.js": {
1444 | "version": "4.12.0",
1445 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
1446 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
1447 | }
1448 | }
1449 | },
1450 | "punycode": {
1451 | "version": "1.4.1",
1452 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
1453 | "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4="
1454 | },
1455 | "querystring": {
1456 | "version": "0.2.0",
1457 | "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz",
1458 | "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA="
1459 | },
1460 | "querystring-es3": {
1461 | "version": "0.2.1",
1462 | "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz",
1463 | "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM="
1464 | },
1465 | "randombytes": {
1466 | "version": "2.1.0",
1467 | "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
1468 | "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
1469 | "requires": {
1470 | "safe-buffer": "^5.1.0"
1471 | }
1472 | },
1473 | "randomfill": {
1474 | "version": "1.0.4",
1475 | "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz",
1476 | "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==",
1477 | "requires": {
1478 | "randombytes": "^2.0.5",
1479 | "safe-buffer": "^5.1.0"
1480 | }
1481 | },
1482 | "react": {
1483 | "version": "17.0.2",
1484 | "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz",
1485 | "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==",
1486 | "requires": {
1487 | "loose-envify": "^1.1.0",
1488 | "object-assign": "^4.1.1"
1489 | }
1490 | },
1491 | "react-dom": {
1492 | "version": "17.0.2",
1493 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz",
1494 | "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==",
1495 | "requires": {
1496 | "loose-envify": "^1.1.0",
1497 | "object-assign": "^4.1.1",
1498 | "scheduler": "^0.20.2"
1499 | }
1500 | },
1501 | "readable-stream": {
1502 | "version": "2.3.7",
1503 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
1504 | "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
1505 | "requires": {
1506 | "core-util-is": "~1.0.0",
1507 | "inherits": "~2.0.3",
1508 | "isarray": "~1.0.0",
1509 | "process-nextick-args": "~2.0.0",
1510 | "safe-buffer": "~5.1.1",
1511 | "string_decoder": "~1.1.1",
1512 | "util-deprecate": "~1.0.1"
1513 | },
1514 | "dependencies": {
1515 | "safe-buffer": {
1516 | "version": "5.1.2",
1517 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
1518 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
1519 | },
1520 | "string_decoder": {
1521 | "version": "1.1.1",
1522 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
1523 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
1524 | "requires": {
1525 | "safe-buffer": "~5.1.0"
1526 | }
1527 | }
1528 | }
1529 | },
1530 | "readline-sync": {
1531 | "version": "1.4.10",
1532 | "resolved": "https://registry.npmjs.org/readline-sync/-/readline-sync-1.4.10.tgz",
1533 | "integrity": "sha512-gNva8/6UAe8QYepIQH/jQ2qn91Qj0B9sYjMBBs3QOB8F2CXcKgLxQaJRP76sWVRQt+QU+8fAkCbCvjjMFu7Ycw=="
1534 | },
1535 | "ripemd160": {
1536 | "version": "2.0.2",
1537 | "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
1538 | "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
1539 | "requires": {
1540 | "hash-base": "^3.0.0",
1541 | "inherits": "^2.0.1"
1542 | }
1543 | },
1544 | "safe-buffer": {
1545 | "version": "5.2.1",
1546 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
1547 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
1548 | },
1549 | "safer-buffer": {
1550 | "version": "2.1.2",
1551 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
1552 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
1553 | },
1554 | "scheduler": {
1555 | "version": "0.20.2",
1556 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz",
1557 | "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==",
1558 | "requires": {
1559 | "loose-envify": "^1.1.0",
1560 | "object-assign": "^4.1.1"
1561 | }
1562 | },
1563 | "setimmediate": {
1564 | "version": "1.0.5",
1565 | "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
1566 | "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU="
1567 | },
1568 | "sha.js": {
1569 | "version": "2.4.11",
1570 | "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
1571 | "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
1572 | "requires": {
1573 | "inherits": "^2.0.1",
1574 | "safe-buffer": "^5.0.1"
1575 | }
1576 | },
1577 | "shadow-cljs": {
1578 | "version": "2.15.10",
1579 | "resolved": "https://registry.npmjs.org/shadow-cljs/-/shadow-cljs-2.15.10.tgz",
1580 | "integrity": "sha512-r02f7pvZefiaATt3k7oAb8PNQKaA67iFoowS88Jaf8IClRQL3plBazkDAUWX5yQd9QfT4WhGr6kP0GTzTidQSg==",
1581 | "requires": {
1582 | "node-libs-browser": "^2.2.1",
1583 | "readline-sync": "^1.4.7",
1584 | "shadow-cljs-jar": "1.3.2",
1585 | "source-map-support": "^0.4.15",
1586 | "which": "^1.3.1",
1587 | "ws": "^7.4.6"
1588 | }
1589 | },
1590 | "shadow-cljs-jar": {
1591 | "version": "1.3.2",
1592 | "resolved": "https://registry.npmjs.org/shadow-cljs-jar/-/shadow-cljs-jar-1.3.2.tgz",
1593 | "integrity": "sha512-XmeffAZHv8z7451kzeq9oKh8fh278Ak+UIOGGrapyqrFBB773xN8vMQ3O7J7TYLnb9BUwcqadKkmgaq7q6fhZg=="
1594 | },
1595 | "source-map": {
1596 | "version": "0.5.7",
1597 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
1598 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w="
1599 | },
1600 | "source-map-support": {
1601 | "version": "0.4.18",
1602 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz",
1603 | "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==",
1604 | "requires": {
1605 | "source-map": "^0.5.6"
1606 | }
1607 | },
1608 | "stream-browserify": {
1609 | "version": "2.0.2",
1610 | "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz",
1611 | "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==",
1612 | "requires": {
1613 | "inherits": "~2.0.1",
1614 | "readable-stream": "^2.0.2"
1615 | }
1616 | },
1617 | "stream-http": {
1618 | "version": "2.8.3",
1619 | "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz",
1620 | "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==",
1621 | "requires": {
1622 | "builtin-status-codes": "^3.0.0",
1623 | "inherits": "^2.0.1",
1624 | "readable-stream": "^2.3.6",
1625 | "to-arraybuffer": "^1.0.0",
1626 | "xtend": "^4.0.0"
1627 | }
1628 | },
1629 | "string_decoder": {
1630 | "version": "1.3.0",
1631 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
1632 | "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
1633 | "requires": {
1634 | "safe-buffer": "~5.2.0"
1635 | }
1636 | },
1637 | "timers-browserify": {
1638 | "version": "2.0.12",
1639 | "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz",
1640 | "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==",
1641 | "requires": {
1642 | "setimmediate": "^1.0.4"
1643 | }
1644 | },
1645 | "to-arraybuffer": {
1646 | "version": "1.0.1",
1647 | "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz",
1648 | "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M="
1649 | },
1650 | "tty-browserify": {
1651 | "version": "0.0.0",
1652 | "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz",
1653 | "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY="
1654 | },
1655 | "url": {
1656 | "version": "0.11.0",
1657 | "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz",
1658 | "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=",
1659 | "requires": {
1660 | "punycode": "1.3.2",
1661 | "querystring": "0.2.0"
1662 | },
1663 | "dependencies": {
1664 | "punycode": {
1665 | "version": "1.3.2",
1666 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
1667 | "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0="
1668 | }
1669 | }
1670 | },
1671 | "util": {
1672 | "version": "0.11.1",
1673 | "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz",
1674 | "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==",
1675 | "requires": {
1676 | "inherits": "2.0.3"
1677 | },
1678 | "dependencies": {
1679 | "inherits": {
1680 | "version": "2.0.3",
1681 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
1682 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
1683 | }
1684 | }
1685 | },
1686 | "util-deprecate": {
1687 | "version": "1.0.2",
1688 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
1689 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
1690 | },
1691 | "vm-browserify": {
1692 | "version": "1.1.2",
1693 | "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz",
1694 | "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ=="
1695 | },
1696 | "which": {
1697 | "version": "1.3.1",
1698 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
1699 | "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
1700 | "requires": {
1701 | "isexe": "^2.0.0"
1702 | }
1703 | },
1704 | "ws": {
1705 | "version": "7.5.5",
1706 | "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.5.tgz",
1707 | "integrity": "sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w==",
1708 | "requires": {}
1709 | },
1710 | "xtend": {
1711 | "version": "4.0.2",
1712 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
1713 | "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ=="
1714 | }
1715 | }
1716 | }
1717 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "create-react-class": "^15.7.0",
4 | "react": "^17.0.2",
5 | "react-dom": "^17.0.2",
6 | "shadow-cljs": "^2.15.10"
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |