git.s-ol.nu electric-sudoku / fc3eec1
initial commit s-ol 7 months ago
13 changed file(s) with 1036 addition(s) and 0 deletion(s). Raw diff Collapse all Expand all
0 node_modules
1 resources/public/js
2 .cpcache
3 .shadow-cljs
4 .nrepl-port
5 .clj-kondo/.cache
6 yarn-error.log
7 report.html
8 *.iml
9 .lsp
10 .clj-kondo
0 # electric-sudoku
1
2 ```
3 $ clj -A:dev -X user/main
4
5 Starting Electric compiler and server...
6 shadow-cljs - server version: 2.20.1 running at http://localhost:9630
7 shadow-cljs - nREPL server started on port 9001
8 [:app] Configuring build.
9 [:app] Compiling ...
10 [:app] Build completed. (224 files, 0 compiled, 0 warnings, 1.93s)
11
12 👉 App server available at http://0.0.0.0:8080
13 ```
0 {:paths ["src"]
1 :deps {ch.qos.logback/logback-classic {:mvn/version "1.2.11"}
2 com.hyperfiddle/electric {:mvn/version "v2-alpha-60-g4cb70086"}
3 com.hyperfiddle/rcf {:mvn/version "20220926-202227"}
4 info.sunng/ring-jetty9-adapter {:mvn/version "0.14.3"
5 :exclusions [org.slf4j/slf4j-api
6 info.sunng/ring-jetty9-adapter-http3]}
7 missionary/missionary {:mvn/version "b.27-SNAPSHOT"}
8 org.clojure/clojure {:mvn/version "1.11.1"}
9 org.clojure/clojurescript {:mvn/version "1.11.60"}
10 org.clojure/tools.logging {:mvn/version "1.2.4"}
11 de.sfuhrm/sudoku {:mvn/version "5.0.1"}}
12 :aliases {:dev
13 {:extra-deps
14 {binaryage/devtools {:mvn/version "1.0.6"}
15 thheller/shadow-cljs {:mvn/version "2.20.1"}}
16 :jvm-opts
17 ["-Xss2m" ; https://github.com/hyperfiddle/photon/issues/11
18 "-Dclojure.tools.logging.factory=clojure.tools.logging.impl/slf4j-factory"
19 "-Dlogback.configurationFile=src/logback.xml"
20 "-XX:-OmitStackTraceInFastThrow" ;; RCF
21 "-XX:+UnlockDiagnosticVMOptions"
22 "-XX:+DebugNonSafepoints"]
23 :exec-fn user/main
24 :exec-args {}}}}
0 {
1 "name": "photon-starter-app",
2 "version": "0.1.0",
3 "private": true,
4 "devDependencies": {
5 "shadow-cljs": "~2.18.0"
6 },
7 "dependencies": {}
8 }
0 html {
1 background: #ccc;
2 }
3
4 body {
5 font-family: sans-serif;
6 font-weight: 400;
7
8 width: min-content;
9 margin: auto;
10 padding: 1rem 2rem;
11
12 background: #fff;
13 }
14
15 .sudoku {
16 display: grid;
17 grid-template-columns: repeat(3, 3.2rem) 0.15rem repeat(3, 3.2rem) 0.15rem repeat(3, 3.2rem);
18 grid-template-rows: repeat(3, 3.2rem) 0.15rem repeat(3, 3.2rem) 0.15rem repeat(3, 3.2rem);
19 width: fit-content;
20
21 gap: 0.1em;
22 place-items: center;
23
24 padding: 0.5em;
25 margin: 1em 0;
26 background: #999;
27 }
28
29 .cell {
30 width: 3rem;
31 height: 3rem;
32 background: #fff;
33 color: #048;
34 }
35
36
37 .cell:not(.cell-fixed):focus,
38 .cell:not(.cell-fixed).focused {
39 border: 0.25rem solid lightblue;
40 margin: 0;
41 }
42
43 .cell.cell-fixed,
44 .cell.cell-single {
45 font-size: 2.5rem;
46 line-height: 3rem;
47 text-align: center;
48 }
49
50 .cell.cell-fixed {
51 color: #000;
52 font-weight: bold;
53 }
54
55 .keyboard {
56 display: grid;
57 width: fit-content;
58 margin: auto;
59 grid-template-columns: repeat(6, 4rem);
60 }
61
62 .keyboard button {
63 font-size: 2.0rem;
64 grid-column: span 2;
65 margin: 0.2rem 0.1rem;
66
67 border: 2px solid #999;
68 background: #eee;
69 }
70
71 .keyboard button.clear,
72 .keyboard button.notes {
73 font-size: 1.5rem;
74 grid-column: span 3;
75 }
76
77 button.notes.notes-active {
78 background: darkgray;
79 }
0 <!DOCTYPE html>
1 <html lang="en">
2 <head>
3 <meta charset="UTF-8">
4 <meta name="viewport" content="width=device-width, initial-scale=1">
5 <link rel="icon" type="image/x-icon" href="favicon.ico">
6 <title>electric sudoku</title>
7 </head>
8 <body>
9 <noscript>You need to enable JavaScript to run this app.</noscript>
10 <script type="text/javascript" src="/js/main.js"></script>
11 </body>
12 </html>
0 {:deps {:aliases [:dev]}
1 :nrepl {:port 9001}
2 :builds {:dev {:target :browser
3 :devtools {:watch-dir "resources/public" ; live reload CSS
4 :hud #{:errors :progress}
5 :ignore-warnings true} ; warnings don't prevent hot-reload
6 :output-dir "resources/public/js"
7 :asset-path "/js"
8 :modules {:main {:entries [user]
9 :init-fn user/start!}}
10 :build-hooks [(shadow.cljs.build-report/hook {:output-to "target/build_report.html"})
11 (user/rcf-shadow-hook)]}}}
0 (ns app.sudoku
1 #?(:cljs (:require-macros app.sudoku)
2 :clj (:import [de.sfuhrm.sudoku Creator]))
3
4 (:require [hyperfiddle.electric :as e]
5 [hyperfiddle.electric-dom2 :as dom]
6 [hyperfiddle.electric-ui4 :as ui]
7 [clojure.string :as string]))
8
9
10 ;;; logic
11
12 (defn map2dv [f]
13 (mapv #(mapv (partial f %) (range 9)) (range 9)))
14
15 (defn random-cell [x y]
16 (cond
17 (< (rand) 0.2) (int (rand 10))
18 (< (rand) 0.3) #{1}
19 (< (rand) 0.5) #{1 2 3}
20 :else #{}))
21
22 #?(:clj (defn make-sudoku [clear-count]
23 ; VERY_EASY: more than 50 given numbers, remove less than 31 numbers
24 ; EASY: 36-49 given numbers, remove 32-45 numbers
25 ; MEDIUM: 32-35 given numbers, remove 46-49 numbers
26 ; HARD: 28-31 given numbers, remove 50-53 numbers
27 ; EXPERT: 22-27 given numbers, remove 54-59 numbers
28 (let [matrix (Creator/createFull)
29 riddle (Creator/createRiddle matrix clear-count)]
30 (map2dv (fn [x y]
31 (if (.getWritable riddle y x) #{}
32 (str (.get riddle y x))))))))
33
34 (defn toggle-in-set [v n]
35 (cond
36 (not (set? v)) #{n}
37 (contains? v n) (disj v n)
38 :else (conj v n)))
39
40 (defn set-notes [v]
41 (if (number? v) #{v} v))
42 ; (and (not notes) (set? v) (= 1 (count v))) (first v)
43
44 ;;; app state
45
46 ; dynamic def for sharing state between server/client
47 (e/def state)
48
49 ; server-side atom for actual storage
50 (def !state #?(:clj (atom (make-sudoku 64))))
51
52 ;;; view stuff
53
54 (defn i->num [v]
55 (inc (+ v (quot v 3))))
56
57 (e/defn Cell [pos f !f]
58 (let [val (get-in state pos)
59 typ (cond
60 (string? val) :fixed
61 (number? val) :single
62 (empty? val) :empty
63 :else :multi)]
64 (dom/div (dom/props {:tabIndex (case typ :fixed -1 0)
65 :class ["cell" (str "cell-" (name typ)) (when (= f pos) "focused")]
66 :style {:grid-column (i->num (first pos))
67 :grid-row (i->num (last pos))}})
68 (dom/text (case typ
69 :fixed val
70 :single val
71 (string/join " " (sort val))))
72 (when-not (= typ :fixed)
73 (dom/on "focus"
74 (e/fn [e] (reset! !f pos)))
75 (dom/on "click"
76 (e/fn [e] (.stopPropagation e)))
77 (dom/on "keydown"
78 (e/fn [e]
79 (cond
80 (contains? #{"Backspace" "Clear" "Delete"} (.-key e))
81 (e/server (swap! !state update-in pos (constantly #{})))
82
83 (string/starts-with? (.-code e) "Digit")
84 (let [n (-> e .-code last int)]
85 (when (<= 1 n 9)
86 (.preventDefault e)
87 (if (.-shiftKey e)
88 (e/server (swap! !state update-in pos toggle-in-set n))
89 (e/server (swap! !state update-in pos (constantly n)))))))))))))
90
91 (e/defn Keyboard [pos]
92 (let [v (get-in state pos)
93 !notes (atom (and (set? v) (< 0 (count v))))
94 notes (e/watch !notes)]
95 (dom/div
96 (dom/props {:class "keyboard"})
97 (dom/on "click"
98 (e/fn [e] (.stopPropagation e)))
99
100 (e/for [n (range 1 10)]
101 (ui/button (e/fn []
102 (if notes
103 (e/server (swap! !state update-in pos toggle-in-set n))
104 (e/server (swap! !state update-in pos (constantly n)))))
105 (dom/text n)))
106 (ui/button (e/fn [] (e/server (swap! !state update-in pos (constantly #{}))))
107 (dom/props {:class "clear"})
108 (dom/text "clear"))
109
110 (ui/button
111 (e/fn []
112 (when-not notes (e/server (swap! !state update-in pos set-notes)))
113 (swap! !notes not))
114 (dom/props {:class ["notes" (when notes "notes-active")]})
115 (dom/text "notes")))))
116
117 (e/defn App []
118 (e/client
119 (binding [state (e/server (e/watch !state))]
120 (dom/link (dom/props {:rel :stylesheet :href "/app.css"}))
121 (dom/h1 (dom/text "minimal sudoku game"))
122 (dom/p (dom/text "it's multiplayer, try two tabs!"))
123 (dom/p (dom/text "click a cell and use the keypad or use the number keys and shift to enter numbers and notes."))
124
125 (let [!difficulty (atom 31)
126 difficulty (e/watch !difficulty)]
127 (dom/div
128 (dom/label (dom/props {:for "difficulty"}) (dom/text "difficulty"))
129 (ui/range difficulty (e/fn [v]
130 (println v)
131 (reset! !difficulty v))
132 ; (partial reset! !difficulty))
133 (dom/props {:id "difficulty"
134 :min 1
135 :max 59}))
136 (ui/button (e/fn [] (e/server
137 (println (type difficulty))
138 (reset! !state (make-sudoku difficulty))))
139 (dom/text "regenerate"))))
140
141 (let [!focus (atom nil)
142 focus (e/watch !focus)]
143 (dom/on "click"
144 (e/fn [e] (reset! !focus nil)))
145
146 (dom/div
147 (dom/props {:class "sudoku"})
148 (e/for [y (range 9) x (range 9)]
149 (Cell. [x y] focus !focus)))
150
151 (when focus
152 (dom/hr)
153 (Keyboard. focus))))))
0 <!-- Options: http://logback.qos.ch/manual/layouts.html -->
1 <configuration scan="true" scanPeriod="5 seconds">
2 <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
3 <encoder>
4 <pattern>%highlight(%-5level) %logger: %msg%n</pattern>
5 </encoder>
6 </appender>
7
8 <root level="WARN">
9 <appender-ref ref="STDOUT" />
10 </root>
11
12 <logger name="hyperfiddle" level="DEBUG" additivity="false"><appender-ref ref="STDOUT" /></logger>
13 <logger name="hyperfiddle.electric-impl.runtime" level="WARN" additivity="false"><appender-ref ref="STDOUT" /></logger>
14 <logger name="hyperfiddle.electric-jetty-adapter" level="WARN" additivity="false"><appender-ref ref="STDOUT" /></logger>
15 </configuration>
0 (ns user) ; Must be ".clj" file, Clojure doesn't auto-load user.cljc
1
2 ; lazy load dev stuff - for faster REPL startup and cleaner dev classpath
3 (def start-electric-server! (delay @(requiring-resolve 'hyperfiddle.electric-jetty-server/start-server!)))
4 (def shadow-start! (delay @(requiring-resolve 'shadow.cljs.devtools.server/start!)))
5 (def shadow-watch (delay @(requiring-resolve 'shadow.cljs.devtools.api/watch)))
6
7 (def electric-server-config
8 {:host "0.0.0.0", :port 8080, :resources-path "resources/public"})
9
10 (defn main [& args]
11 (println "Starting Electric compiler and server...")
12 (@shadow-start!) ; serves index.html as well
13 (@shadow-watch :dev) ; depends on shadow server
14 (def server (@start-electric-server! electric-server-config))
15 (comment (.stop server)))
16
17 ; Userland Electric code is lazy loaded by the shadow build due to usage of
18 ; :require-macros in all Electric source files.
19 ; WARNING: make sure your REPL and shadow-cljs are sharing the same JVM!
20
21 (comment
22 (main) ; Electric Clojure(JVM) REPL entrypoint
23 (hyperfiddle.rcf/enable!) ; turn on RCF after all transitive deps have loaded
24 (shadow.cljs.devtools.api/repl :dev) ; shadow server hosts the cljs repl
25 ; connect a second REPL instance to it
26 ; (DO NOT REUSE JVM REPL it will fail weirdly)
27 (type 1))
0 (ns user ^:dev/always ; recompile (macroexpand) electric-main when any cljs src changes
1 (:require
2 app.sudoku
3 hyperfiddle.electric
4 hyperfiddle.electric-dom2))
5
6 (def electric-main
7 (hyperfiddle.electric/boot ; Electric macroexpansion - Clojure to signals compiler
8 (binding [hyperfiddle.electric-dom2/node js/document.body]
9 (app.sudoku/App.))))
10
11 (defonce reactor nil)
12
13 (defn ^:dev/after-load ^:export start! []
14 (assert (nil? reactor) "reactor already running")
15 (set! reactor (electric-main
16 #(js/console.log "Reactor success:" %)
17 #(js/console.error "Reactor failure:" %))))
18
19 (defn ^:dev/before-load stop! []
20 (when reactor (reactor)) ; teardown
21 (set! reactor nil))
0 # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
1 # yarn lockfile v1
2
3
4 asn1.js@^5.2.0:
5 version "5.4.1"
6 resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07"
7 integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==
8 dependencies:
9 bn.js "^4.0.0"
10 inherits "^2.0.1"
11 minimalistic-assert "^1.0.0"
12 safer-buffer "^2.1.0"
13
14 assert@^1.1.1:
15 version "1.5.0"
16 resolved "https://registry.yarnpkg.com/assert/-/assert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb"
17 integrity sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==
18 dependencies:
19 object-assign "^4.1.1"
20 util "0.10.3"
21
22 base64-js@^1.0.2:
23 version "1.5.1"
24 resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
25 integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
26
27 bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9:
28 version "4.12.0"
29 resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88"
30 integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==
31
32 bn.js@^5.0.0, bn.js@^5.1.1:
33 version "5.2.0"
34 resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002"
35 integrity sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==
36
37 brorand@^1.0.1, brorand@^1.1.0:
38 version "1.1.0"
39 resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"
40 integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=
41
42 browserify-aes@^1.0.0, browserify-aes@^1.0.4:
43 version "1.2.0"
44 resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48"
45 integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==
46 dependencies:
47 buffer-xor "^1.0.3"
48 cipher-base "^1.0.0"
49 create-hash "^1.1.0"
50 evp_bytestokey "^1.0.3"
51 inherits "^2.0.1"
52 safe-buffer "^5.0.1"
53
54 browserify-cipher@^1.0.0:
55 version "1.0.1"
56 resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0"
57 integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==
58 dependencies:
59 browserify-aes "^1.0.4"
60 browserify-des "^1.0.0"
61 evp_bytestokey "^1.0.0"
62
63 browserify-des@^1.0.0:
64 version "1.0.2"
65 resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c"
66 integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==
67 dependencies:
68 cipher-base "^1.0.1"
69 des.js "^1.0.0"
70 inherits "^2.0.1"
71 safe-buffer "^5.1.2"
72
73 browserify-rsa@^4.0.0, browserify-rsa@^4.0.1:
74 version "4.1.0"
75 resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d"
76 integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==
77 dependencies:
78 bn.js "^5.0.0"
79 randombytes "^2.0.1"
80
81 browserify-sign@^4.0.0:
82 version "4.2.1"
83 resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.1.tgz#eaf4add46dd54be3bb3b36c0cf15abbeba7956c3"
84 integrity sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==
85 dependencies:
86 bn.js "^5.1.1"
87 browserify-rsa "^4.0.1"
88 create-hash "^1.2.0"
89 create-hmac "^1.1.7"
90 elliptic "^6.5.3"
91 inherits "^2.0.4"
92 parse-asn1 "^5.1.5"
93 readable-stream "^3.6.0"
94 safe-buffer "^5.2.0"
95
96 browserify-zlib@^0.2.0:
97 version "0.2.0"
98 resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f"
99 integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==
100 dependencies:
101 pako "~1.0.5"
102
103 buffer-xor@^1.0.3:
104 version "1.0.3"
105 resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9"
106 integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=
107
108 buffer@^4.3.0:
109 version "4.9.2"
110 resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8"
111 integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==
112 dependencies:
113 base64-js "^1.0.2"
114 ieee754 "^1.1.4"
115 isarray "^1.0.0"
116
117 builtin-status-codes@^3.0.0:
118 version "3.0.0"
119 resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8"
120 integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=
121
122 cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:
123 version "1.0.4"
124 resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de"
125 integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==
126 dependencies:
127 inherits "^2.0.1"
128 safe-buffer "^5.0.1"
129
130 console-browserify@^1.1.0:
131 version "1.2.0"
132 resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336"
133 integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==
134
135 constants-browserify@^1.0.0:
136 version "1.0.0"
137 resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75"
138 integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=
139
140 core-util-is@~1.0.0:
141 version "1.0.3"
142 resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
143 integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
144
145 create-ecdh@^4.0.0:
146 version "4.0.4"
147 resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e"
148 integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==
149 dependencies:
150 bn.js "^4.1.0"
151 elliptic "^6.5.3"
152
153 create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0:
154 version "1.2.0"
155 resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196"
156 integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==
157 dependencies:
158 cipher-base "^1.0.1"
159 inherits "^2.0.1"
160 md5.js "^1.3.4"
161 ripemd160 "^2.0.1"
162 sha.js "^2.4.0"
163
164 create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7:
165 version "1.1.7"
166 resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff"
167 integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==
168 dependencies:
169 cipher-base "^1.0.3"
170 create-hash "^1.1.0"
171 inherits "^2.0.1"
172 ripemd160 "^2.0.0"
173 safe-buffer "^5.0.1"
174 sha.js "^2.4.8"
175
176 crypto-browserify@^3.11.0:
177 version "3.12.0"
178 resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec"
179 integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==
180 dependencies:
181 browserify-cipher "^1.0.0"
182 browserify-sign "^4.0.0"
183 create-ecdh "^4.0.0"
184 create-hash "^1.1.0"
185 create-hmac "^1.1.0"
186 diffie-hellman "^5.0.0"
187 inherits "^2.0.1"
188 pbkdf2 "^3.0.3"
189 public-encrypt "^4.0.0"
190 randombytes "^2.0.0"
191 randomfill "^1.0.3"
192
193 des.js@^1.0.0:
194 version "1.0.1"
195 resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843"
196 integrity sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==
197 dependencies:
198 inherits "^2.0.1"
199 minimalistic-assert "^1.0.0"
200
201 diffie-hellman@^5.0.0:
202 version "5.0.3"
203 resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875"
204 integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==
205 dependencies:
206 bn.js "^4.1.0"
207 miller-rabin "^4.0.0"
208 randombytes "^2.0.0"
209
210 domain-browser@^1.1.1:
211 version "1.2.0"
212 resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda"
213 integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==
214
215 elliptic@^6.5.3:
216 version "6.5.4"
217 resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb"
218 integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==
219 dependencies:
220 bn.js "^4.11.9"
221 brorand "^1.1.0"
222 hash.js "^1.0.0"
223 hmac-drbg "^1.0.1"
224 inherits "^2.0.4"
225 minimalistic-assert "^1.0.1"
226 minimalistic-crypto-utils "^1.0.1"
227
228 events@^3.0.0:
229 version "3.3.0"
230 resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400"
231 integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==
232
233 evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:
234 version "1.0.3"
235 resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02"
236 integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==
237 dependencies:
238 md5.js "^1.3.4"
239 safe-buffer "^5.1.1"
240
241 hash-base@^3.0.0:
242 version "3.1.0"
243 resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33"
244 integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==
245 dependencies:
246 inherits "^2.0.4"
247 readable-stream "^3.6.0"
248 safe-buffer "^5.2.0"
249
250 hash.js@^1.0.0, hash.js@^1.0.3:
251 version "1.1.7"
252 resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42"
253 integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==
254 dependencies:
255 inherits "^2.0.3"
256 minimalistic-assert "^1.0.1"
257
258 hmac-drbg@^1.0.1:
259 version "1.0.1"
260 resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1"
261 integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=
262 dependencies:
263 hash.js "^1.0.3"
264 minimalistic-assert "^1.0.0"
265 minimalistic-crypto-utils "^1.0.1"
266
267 https-browserify@^1.0.0:
268 version "1.0.0"
269 resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
270 integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=
271
272 ieee754@^1.1.4:
273 version "1.2.1"
274 resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
275 integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
276
277 inherits@2.0.1:
278 version "2.0.1"
279 resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
280 integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=
281
282 inherits@2.0.3:
283 version "2.0.3"
284 resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
285 integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
286
287 inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3:
288 version "2.0.4"
289 resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
290 integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
291
292 isarray@^1.0.0, isarray@~1.0.0:
293 version "1.0.0"
294 resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
295 integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
296
297 isexe@^2.0.0:
298 version "2.0.0"
299 resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
300 integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
301
302 md5.js@^1.3.4:
303 version "1.3.5"
304 resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f"
305 integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==
306 dependencies:
307 hash-base "^3.0.0"
308 inherits "^2.0.1"
309 safe-buffer "^5.1.2"
310
311 miller-rabin@^4.0.0:
312 version "4.0.1"
313 resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d"
314 integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==
315 dependencies:
316 bn.js "^4.0.0"
317 brorand "^1.0.1"
318
319 minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1:
320 version "1.0.1"
321 resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"
322 integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==
323
324 minimalistic-crypto-utils@^1.0.1:
325 version "1.0.1"
326 resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"
327 integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=
328
329 node-libs-browser@^2.2.1:
330 version "2.2.1"
331 resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425"
332 integrity sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==
333 dependencies:
334 assert "^1.1.1"
335 browserify-zlib "^0.2.0"
336 buffer "^4.3.0"
337 console-browserify "^1.1.0"
338 constants-browserify "^1.0.0"
339 crypto-browserify "^3.11.0"
340 domain-browser "^1.1.1"
341 events "^3.0.0"
342 https-browserify "^1.0.0"
343 os-browserify "^0.3.0"
344 path-browserify "0.0.1"
345 process "^0.11.10"
346 punycode "^1.2.4"
347 querystring-es3 "^0.2.0"
348 readable-stream "^2.3.3"
349 stream-browserify "^2.0.1"
350 stream-http "^2.7.2"
351 string_decoder "^1.0.0"
352 timers-browserify "^2.0.4"
353 tty-browserify "0.0.0"
354 url "^0.11.0"
355 util "^0.11.0"
356 vm-browserify "^1.0.1"
357
358 object-assign@^4.1.1:
359 version "4.1.1"
360 resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
361 integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
362
363 os-browserify@^0.3.0:
364 version "0.3.0"
365 resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27"
366 integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=
367
368 pako@~1.0.5:
369 version "1.0.11"
370 resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf"
371 integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==
372
373 parse-asn1@^5.0.0, parse-asn1@^5.1.5:
374 version "5.1.6"
375 resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4"
376 integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==
377 dependencies:
378 asn1.js "^5.2.0"
379 browserify-aes "^1.0.0"
380 evp_bytestokey "^1.0.0"
381 pbkdf2 "^3.0.3"
382 safe-buffer "^5.1.1"
383
384 path-browserify@0.0.1:
385 version "0.0.1"
386 resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a"
387 integrity sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==
388
389 pbkdf2@^3.0.3:
390 version "3.1.2"
391 resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075"
392 integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==
393 dependencies:
394 create-hash "^1.1.2"
395 create-hmac "^1.1.4"
396 ripemd160 "^2.0.1"
397 safe-buffer "^5.0.1"
398 sha.js "^2.4.8"
399
400 process-nextick-args@~2.0.0:
401 version "2.0.1"
402 resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
403 integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
404
405 process@^0.11.10:
406 version "0.11.10"
407 resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
408 integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI=
409
410 public-encrypt@^4.0.0:
411 version "4.0.3"
412 resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0"
413 integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==
414 dependencies:
415 bn.js "^4.1.0"
416 browserify-rsa "^4.0.0"
417 create-hash "^1.1.0"
418 parse-asn1 "^5.0.0"
419 randombytes "^2.0.1"
420 safe-buffer "^5.1.2"
421
422 punycode@1.3.2:
423 version "1.3.2"
424 resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d"
425 integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=
426
427 punycode@^1.2.4:
428 version "1.4.1"
429 resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
430 integrity sha1-wNWmOycYgArY4esPpSachN1BhF4=
431
432 querystring-es3@^0.2.0:
433 version "0.2.1"
434 resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73"
435 integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=
436
437 querystring@0.2.0:
438 version "0.2.0"
439 resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620"
440 integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=
441
442 randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5:
443 version "2.1.0"
444 resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a"
445 integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==
446 dependencies:
447 safe-buffer "^5.1.0"
448
449 randomfill@^1.0.3:
450 version "1.0.4"
451 resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458"
452 integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==
453 dependencies:
454 randombytes "^2.0.5"
455 safe-buffer "^5.1.0"
456
457 readable-stream@^2.0.2, readable-stream@^2.3.3, readable-stream@^2.3.6:
458 version "2.3.7"
459 resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
460 integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
461 dependencies:
462 core-util-is "~1.0.0"
463 inherits "~2.0.3"
464 isarray "~1.0.0"
465 process-nextick-args "~2.0.0"
466 safe-buffer "~5.1.1"
467 string_decoder "~1.1.1"
468 util-deprecate "~1.0.1"
469
470 readable-stream@^3.6.0:
471 version "3.6.0"
472 resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"
473 integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==
474 dependencies:
475 inherits "^2.0.3"
476 string_decoder "^1.1.1"
477 util-deprecate "^1.0.1"
478
479 readline-sync@^1.4.7:
480 version "1.4.10"
481 resolved "https://registry.yarnpkg.com/readline-sync/-/readline-sync-1.4.10.tgz#41df7fbb4b6312d673011594145705bf56d8873b"
482 integrity sha512-gNva8/6UAe8QYepIQH/jQ2qn91Qj0B9sYjMBBs3QOB8F2CXcKgLxQaJRP76sWVRQt+QU+8fAkCbCvjjMFu7Ycw==
483
484 reconnecting-websocket@4.4.0:
485 version "4.4.0"
486 resolved "https://registry.yarnpkg.com/reconnecting-websocket/-/reconnecting-websocket-4.4.0.tgz#3b0e5b96ef119e78a03135865b8bb0af1b948783"
487 integrity sha512-D2E33ceRPga0NvTDhJmphEgJ7FUYF0v4lr1ki0csq06OdlxKfugGzN0dSkxM/NfqCxYELK4KcaTOUOjTV6Dcng==
488
489 ripemd160@^2.0.0, ripemd160@^2.0.1:
490 version "2.0.2"
491 resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c"
492 integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==
493 dependencies:
494 hash-base "^3.0.0"
495 inherits "^2.0.1"
496
497 safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0:
498 version "5.2.1"
499 resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
500 integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
501
502 safe-buffer@~5.1.0, safe-buffer@~5.1.1:
503 version "5.1.2"
504 resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
505 integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
506
507 safer-buffer@^2.1.0:
508 version "2.1.2"
509 resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
510 integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
511
512 setimmediate@^1.0.4:
513 version "1.0.5"
514 resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
515 integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=
516
517 sha.js@^2.4.0, sha.js@^2.4.8:
518 version "2.4.11"
519 resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7"
520 integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==
521 dependencies:
522 inherits "^2.0.1"
523 safe-buffer "^5.0.1"
524
525 shadow-cljs-jar@1.3.2:
526 version "1.3.2"
527 resolved "https://registry.yarnpkg.com/shadow-cljs-jar/-/shadow-cljs-jar-1.3.2.tgz#97273afe1747b6a2311917c1c88d9e243c81957b"
528 integrity sha512-XmeffAZHv8z7451kzeq9oKh8fh278Ak+UIOGGrapyqrFBB773xN8vMQ3O7J7TYLnb9BUwcqadKkmgaq7q6fhZg==
529
530 shadow-cljs@~2.18.0:
531 version "2.18.0"
532 resolved "https://registry.yarnpkg.com/shadow-cljs/-/shadow-cljs-2.18.0.tgz#f0dfeb7b52829b1e8058ded19b346cb6f9e454c3"
533 integrity sha512-yjANuBbKskNZMA8/+GznPC9xnfpAhFnx8ifuSYwzFfJeDwmQLhNOFoqw5I2lzL6I8FMJZFEnLC1oiVWdh88OuQ==
534 dependencies:
535 node-libs-browser "^2.2.1"
536 readline-sync "^1.4.7"
537 shadow-cljs-jar "1.3.2"
538 source-map-support "^0.4.15"
539 which "^1.3.1"
540 ws "^7.4.6"
541
542 source-map-support@^0.4.15:
543 version "0.4.18"
544 resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f"
545 integrity sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==
546 dependencies:
547 source-map "^0.5.6"
548
549 source-map@^0.5.6:
550 version "0.5.7"
551 resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
552 integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=
553
554 stream-browserify@^2.0.1:
555 version "2.0.2"
556 resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b"
557 integrity sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==
558 dependencies:
559 inherits "~2.0.1"
560 readable-stream "^2.0.2"
561
562 stream-http@^2.7.2:
563 version "2.8.3"
564 resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc"
565 integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==
566 dependencies:
567 builtin-status-codes "^3.0.0"
568 inherits "^2.0.1"
569 readable-stream "^2.3.6"
570 to-arraybuffer "^1.0.0"
571 xtend "^4.0.0"
572
573 string_decoder@^1.0.0, string_decoder@^1.1.1:
574 version "1.3.0"
575 resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
576 integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
577 dependencies:
578 safe-buffer "~5.2.0"
579
580 string_decoder@~1.1.1:
581 version "1.1.1"
582 resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
583 integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
584 dependencies:
585 safe-buffer "~5.1.0"
586
587 timers-browserify@^2.0.4:
588 version "2.0.12"
589 resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.12.tgz#44a45c11fbf407f34f97bccd1577c652361b00ee"
590 integrity sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==
591 dependencies:
592 setimmediate "^1.0.4"
593
594 to-arraybuffer@^1.0.0:
595 version "1.0.1"
596 resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
597 integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=
598
599 tty-browserify@0.0.0:
600 version "0.0.0"
601 resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
602 integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=
603
604 url@^0.11.0:
605 version "0.11.0"
606 resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1"
607 integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=
608 dependencies:
609 punycode "1.3.2"
610 querystring "0.2.0"
611
612 util-deprecate@^1.0.1, util-deprecate@~1.0.1:
613 version "1.0.2"
614 resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
615 integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
616
617 util@0.10.3:
618 version "0.10.3"
619 resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9"
620 integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk=
621 dependencies:
622 inherits "2.0.1"
623
624 util@^0.11.0:
625 version "0.11.1"
626 resolved "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61"
627 integrity sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==
628 dependencies:
629 inherits "2.0.3"
630
631 vm-browserify@^1.0.1:
632 version "1.1.2"
633 resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0"
634 integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==
635
636 which@^1.3.1:
637 version "1.3.1"
638 resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
639 integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
640 dependencies:
641 isexe "^2.0.0"
642
643 ws@^7.4.6:
644 version "7.5.7"
645 resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67"
646 integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A==
647
648 xtend@^4.0.0:
649 version "4.0.2"
650 resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
651 integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==