on master help sign in
everything working
7539376Hunter Miller
desk/app/seek.hoon+90−31
@@ -2,6 +2,7 @@
2/+ gossip, default-agent, verb, dbug
2/+ gossip, default-agent, verb, dbug
3/+ *seek
3/+ *seek
4/+ sift
4/+ sift
5+/+ m=metaphone
5/$ grab-listing %noun %directory-listing
6/$ grab-listing %noun %directory-listing
6/$ grab-directory %noun %directory
7/$ grab-directory %noun %directory
7^- agent:gall
8^- agent:gall
@@ -11,7 +12,7 @@
11 +$ state-0
12 +$ state-0
12 $: %0
13 $: %0
13 =lookup:s
14 =lookup:s
14− =trigrams:s
15+ =phonetics:s
15 =trail:s
16 =trail:s
16 =directory:s
17 =directory:s
17 published=directory:s
18 published=directory:s
@@ -101,10 +102,10 @@
101 %declare
102 %declare
102 =+ !<(=declare:s vase)
103 =+ !<(=declare:s vase)
103 di-abet:(publish declare di-core)
104 di-abet:(publish declare di-core)
104− %declarations
105+ :: %declarations
105− =+ !<(declared=(list declare:s) vase)
106+ :: =+ !<(declared=(list declare:s) vase)
106− =. di-core (roll declared publish)
107+ :: =. di-core (roll declared publish)
107− cor
108+ :: cor
108 ==
109 ==
109 ++ publish
110 ++ publish
110 |= [=declare:s core=_di-core]
111 |= [=declare:s core=_di-core]
@@ -120,7 +121,7 @@
120 ==
121 ==
121 ?: (~(has by directory) hash.listing)
122 ?: (~(has by directory) hash.listing)
122 ~& 'Listing already exists.'
123 ~& 'Listing already exists.'
123− cor
124+ di-core
124 =. published (~(put by directory) hash.listing listing)
125 =. published (~(put by directory) hash.listing listing)
125 (di-publish:(di-abed:core hash.listing) listing)
126 (di-publish:(di-abed:core hash.listing) listing)
126 --
127 --
@@ -167,14 +168,24 @@
167 |= =path
168 |= =path
168 ^- (unit (unit cage))
169 ^- (unit (unit cage))
169 ?+ path [~ ~]
170 ?+ path [~ ~]
170− [%x %lookup @ @ @ ~]
171+ [%x %lookup @ @ @ @ ~]
171 =- ``search+!>(-)
172 =- ``search+!>(-)
172 ^- search:s
173 ^- search:s
174+ =/ filter
175+ %+ rash i.t.t.path
176+ (perk [%app %group %content %other %all ~])
177+ =/ term `@t`(slav %t i.t.t.t.path)
173− =/ start (slav %ud i.t.t.t.path)
178+ =/ start (slav %ud i.t.t.t.t.path)
174− =/ limit (slav %ud i.t.t.t.t.path)
179+ =/ limit (slav %ud i.t.t.t.t.t.path)
175 :: expects encoded @t values)
180 :: expects encoded @t values)
176− =/ term `@t`(slav %t i.t.t.path)
181+ =/ all
182+ %+ skim
177− =/ all (get-listings (get-hashes term))
183+ %- get-listings
184+ %- get-hashes
185+ %- sort-entries
186+ (get-entries term)
187+ |= =listing:s
188+ |(=(filter %all) =(filter type.post.listing))
178 =/ listings (swag [start limit] all)
189 =/ listings (swag [start limit] all)
179 :* listings
190 :* listings
180 start
191 start
@@ -183,12 +194,61 @@
183 (lent all)
194 (lent all)
184 ==
195 ==
185 ==
196 ==
186−++ get-hashes
197+++ get-entries
198+ |= =key:s
199+ ^- (list entry:s)
200+ =/ title (norm:sift key) :: full query
201+ =/ parts (sift:sift key) :: split query
202+ =/ title-entries
203+ %- malt
204+ %+ weld
205+ (get-phonetics title)
206+ (~(gut by lookup) title *(list entry:s))
207+ %~ tap by
208+ %-
209+ %~ uni by :: union and prefer title entries (better rank)
210+ %- malt
211+ %- zing
212+ %+ turn
213+ parts
214+ |= word=@t
215+ %+ turn
216+ %+ weld
217+ (get-phonetics word)
218+ (~(gut by lookup) word *(list entry:s))
219+ |= =entry:s
220+ (derank entry 10)
221+ title-entries
222+++ get-phonetics
187 |= =key:s
223 |= =key:s
224+ ^- (list entry:s)
225+ =/ keys
226+ %+ skim
227+ %~ tap in
228+ (~(gut by phonetics) (utter:m key) *(set key:s))
229+ |= [word=key:s]
230+ !=(key word)
231+ %+ roll
232+ keys
233+ |= [word=key:s entries=(list entry:s)]
234+ %+ weld
235+ entries
236+ %+ turn
237+ (~(gut by lookup) word *(list entry:s))
238+ |= =entry:s
239+ (derank entry 10)
240+++ derank
241+ |= [=entry:s offset=@ud]
242+ [hash.entry (add rank.entry offset)] :: phonetically similar should be lower
243+++ sort-entries
244+ |= entries=(list entry:s)
245+ %+ sort entries
246+ |= [a=entry:s b=entry:s]
247+ (lth rank.a rank.b)
248+++ get-hashes
249+ |= entries=(list entry:s)
188 %+ turn
250 %+ turn
189− %+ sort (~(gut by lookup) key *(list entry:s))
251+ entries
190− |= [a=entry:s b=entry:s]
191− (gte rank.a rank.b)
192 |=(=entry:s hash.entry)
252 |=(=entry:s hash.entry)
193++ get-listings
253++ get-listings
194 |= l=(list hash)
254 |= l=(list hash)
@@ -210,16 +270,20 @@
210 =/ entries=lookup:s
270 =/ entries=lookup:s
211 %- malt
271 %- malt
212 %- zing
272 %- zing
213− :~ ~[[title.post.l ~[[hash rank=0]]]]
273+ :~ ~[[(crip (cass (trip title.post.l))) ~[[hash rank=0]]]]
274+ %+ turn
275+ (sift:sift title.post.l)
276+ |= word=@t
277+ [word ~[[hash rank=1]]]
214 %+ turn
278 %+ turn
215 tags.post.l
279 tags.post.l
216 |= tag=@t
280 |= tag=@t
217− [tag ~[[hash rank=1]]]
281+ [(norm:sift tag) ~[[hash rank=2]]]
218 %+ turn
282 %+ turn
219 (sift:sift description.post.l)
283 (sift:sift description.post.l)
220 |= word=@t
284 |= word=@t
221− [word ~[[hash rank=2]]]
285+ [word ~[[hash rank=3]]]
222− ~[[type.post.l ~[[hash rank=3]]]]
286+ ~[[type.post.l ~[[hash rank=4]]]]
223 ==
287 ==
224 =/ keys ~(tap in ~(key by entries))
288 =/ keys ~(tap in ~(key by entries))
225 =. trail (~(put by trail) hash keys)
289 =. trail (~(put by trail) hash keys)
@@ -229,18 +293,13 @@
229 |= [=key:s value=(list entry:s)]
293 |= [=key:s value=(list entry:s)]
230 ?. (~(has by entries) key) value
294 ?. (~(has by entries) key) value
231 (weld value (~(got by entries) key))
295 (weld value (~(got by entries) key))
232− =. trigrams
296+ =. phonetics
233− %+ roll
234− %+ snoc
235− %+ turn keys
236− |= =key:s
237− %- malt
297+ %-
238− %+ turn (iching key)
239− |= =trigram:s
240− [trigram (silt ~[key])]
241− trigrams
242− |= [next=trigrams:s t=trigrams:s]
243− %- (~(uno by t) next)
298+ %- ~(uno by phonetics)
299+ %- malt
300+ %+ turn keys
301+ |= =key:s
302+ [(utter:m key) (silt ~[key])]
244 |= [k=key:s v=(set key:s) w=(set key:s)]
303 |= [k=key:s v=(set key:s) w=(set key:s)]
245 (~(uni in v) w)
304 (~(uni in v) w)
246 di-core
305 di-core
desk/gen/metaphone.hoonnew file+6
@@ -0,0 +1,6 @@
1+/+ *metaphone
2+:- %say
3+|= $: [now=@da eny=@uv =beak]
4+ [[word=@t ~] ~]
5+ ==
6+noun+(utter word)
desk/lib/metaphone.hoonnew file+190
@@ -0,0 +1,190 @@
1+|%
2+++ utter
3+ |= corpus=@t
4+ ^- @t
5+ =/ norm (cuss (trip corpus))
6+ ~(phone core [norm *tape 0])
7+++ core
8+ |_ [text=tape chars=tape index=@ud]
9+ ++ phone
10+ ?: =(current 'A')
11+ ?: =(next 'E') (jump2 'E')
12+ (jump 'A')
13+ ?:
14+ ?& =(next 'N')
15+ ?| =(current 'G')
16+ =(current 'K')
17+ =(current 'P')
18+ ==
19+ ==
20+ (jump2 'N')
21+ ?: =(current 'W')
22+ ?: =(next 'R') (jump2 'R')
23+ ?: =(next 'H') (jump2 current)
24+ ?: (vowel next) (jump2 'W')
25+ recite
26+ ?: =(current 'X') (jump 'S')
27+ ?:
28+ ?| =(current 'E')
29+ =(current 'I')
30+ =(current 'O')
31+ =(current 'U')
32+ ==
33+ (jump current)
34+ recite
35+ ++ recite
36+ ?: (gte index (lent text))
37+ (crip chars)
38+ :: B -> B unless in MB
39+ ?: &(=(current 'B') !=(prev 'M'))
40+ (jump 'B')
41+ :: 'sh' if -CIA- or -CH, but not SCH, except SCHW (SCHW is handled in S)
42+ :: S if -CI-, -CE- or -CY- dropped if -SCI-, SCE-, -SCY- (handed in S)
43+ :: else K
44+ ?: =(current 'C')
45+ ?: (soft next)
46+ :: C[IEY]
47+ ?: &(=(next 'I') =((at 2 &) 'A'))
48+ :: CIA
49+ (jump sh)
50+ ?: !=(prev 'S')
51+ (jump 'S')
52+ advance
53+ ?: =(next 'H')
54+ (jump2 sh)
55+ (jump 'K')
56+ :: J if in -DGE-, -DGI- or -DGY-, else T
57+ ?: =(current 'D')
58+ ?: &(=(next 'G') (soft (at 2 &)))
59+ (jump2 'J')
60+ (jump 'T')
61+ :: F if in -GH and not B--GH, D--GH, -H--GH, -H---GH
62+ :: else dropped if -GNED, -GN,
63+ :: else dropped if -DGE-, -DGI- or -DGY- (handled in D)
64+ :: else J if in -GE-, -GI, -GY and not GG
65+ :: else K
66+ ?: =(current 'G')
67+ ?: =(next 'H')
68+ ?: |(!(no-gh-to-f (at 3 |)) =((at 4 |) 'H'))
69+ (jump2 'F')
70+ advance
71+ ?: =(next 'N')
72+ ?: !&(=((at 2 &) 'E') =((at 3 &) 'D'))
73+ (jump 'K')
74+ advance
75+ ?: &((soft next) !=(prev 'G'))
76+ (jump 'J')
77+ (jump 'K')
78+ :: H if before a vowel and not after C,G,P,S,T
79+ ?: &(=(current 'H') (vowel next) !(dipthong-h prev))
80+ (jump 'H')
81+ :: Dropped if after C, else K
82+ ?: &(=(current 'K') !=(prev 'C'))
83+ (jump 'K')
84+ :: F if before H, else P
85+ ?: =(current 'P')
86+ ?: =(next 'H')
87+ (jump 'F')
88+ (jump 'P')
89+ :: K
90+ ?: =(current 'Q')
91+ (jump 'K')
92+ :: 'sh' in -SH-, -SIO- or -SIA- or -SCHW-, else S
93+ ?: =(current 'S')
94+ ?: &(=(next 'I') |(=((at 2 &) 'O') =((at 2 &) 'A')))
95+ (jump sh)
96+ ?: =(next 'H')
97+ (jump2 sh)
98+ (jump 'S')
99+ :: sh' in -TIA- or -TIO-, else 'th' before H, else T
100+ ?: =(current 'T')
101+ ?: &(=(next 'I') |(=((at 2 &) 'O') =((at 2 &) 'A')))
102+ (jump sh)
103+ ?: =(next 'H')
104+ (jump2 th)
105+ ?: !&(=(next 'C') =((at 2 &) 'H'))
106+ (jump 'T')
107+ advance
108+ :: F
109+ ?: =(current 'V')
110+ (jump 'F')
111+ ?: &(=(current 'W') (vowel next))
112+ (jump 'W')
113+ :: KS
114+ ?: =(current 'X')
115+ (jump 'KS')
116+ :: Y if followed by a vowel
117+ ?: &(=(current 'Y') (vowel next))
118+ (jump 'Y')
119+ :: S
120+ ?: =(current 'Z')
121+ (jump 'S')
122+ ?:
123+ ?| =(current 'F')
124+ =(current 'J')
125+ =(current 'L')
126+ =(current 'M')
127+ =(current 'N')
128+ =(current 'R')
129+ ==
130+ (jump current)
131+ advance
132+ ++ advance
133+ =. index +(index)
134+ recite
135+ ++ jump
136+ |= char=@t
137+ =. chars (snoc chars char)
138+ =. index +(index)
139+ recite
140+ ++ jump2
141+ |= char=@t
142+ =. chars (snoc chars char)
143+ =. index (add index 2)
144+ recite
145+ ++ current (snag index text)
146+ ++ next
147+ ?: (gte index (dec (lent text))) ''
148+ (snag +(index) text)
149+ ++ prev
150+ ?: (lte index 0) ''
151+ (snag (dec index) text)
152+ ++ at
153+ |= [offset=@ud forward=?]
154+ ?: forward
155+ ?: (gth (add index offset) (dec (lent text))) ''
156+ (snag (add index offset) text)
157+ ?: (lth (sub index offset) 0) ''
158+ (snag (sub index offset) text)
159+ --
160+++ soft
161+ |= char=@t
162+ ?| =(char 'E')
163+ =(char 'I')
164+ =(char 'Y')
165+ ==
166+++ vowel
167+ |= char=@t
168+ ?| =(char 'A')
169+ =(char 'E')
170+ =(char 'I')
171+ =(char 'O')
172+ =(char 'U')
173+ ==
174+++ dipthong-h
175+ |= char=@t
176+ ?| =(char 'C')
177+ =(char 'G')
178+ =(char 'P')
179+ =(char 'S')
180+ =(char 'T')
181+ ==
182+++ no-gh-to-f
183+ |= char=@t
184+ ?| =(char 'B')
185+ =(char 'D')
186+ =(char 'H')
187+ ==
188+++ sh 'X'
189+++ th '0'
190+--
desk/lib/sift.hoon+4−4
@@ -12,9 +12,8 @@
12++ split
12++ split
13 |= corpus=@t
13 |= corpus=@t
14 ^- (list @t)
14 ^- (list @t)
15− ~& (norm corpus)
16 %+ rash (norm corpus)
15 %+ rash (norm corpus)
17− (more ace (cook crip (plus allowed)))
16+ (more ace (cook crip (plus ;~(pose aln hep))))
18++ allowed ;~(pose aln hep ace)
17++ allowed ;~(pose aln hep ace)
19++ banned ;~(less allowed prn)
18++ banned ;~(less allowed prn)
20++ expunge
19++ expunge
@@ -22,9 +21,10 @@
22 ^- (list @t)
21 ^- (list @t)
23 %- zing
22 %- zing
24 %+ rash corpus
23 %+ rash corpus
25− %- star
24+ %- plus
26 ;~ pose
25 ;~ pose
26+ ;~(pfix (plus banned) (star allowed))
27− ;~(sfix allowed (plus banned))
27+ ;~(sfix (star allowed) (plus banned))
28 (plus allowed)
28 (plus allowed)
29 ==
29 ==
30++ trimall
30++ trimall
desk/sur/seek.hoon+5−5
@@ -2,7 +2,7 @@
2+$ key @t :: keyword that points to listings
2+$ key @t :: keyword that points to listings
3+$ hash @uv :: @uv version of shax result
3+$ hash @uv :: @uv version of shax result
4+$ rank @ud :: @ud representing priority of listing
4+$ rank @ud :: @ud representing priority of listing
5−+$ trigram @t :: @t consisting of three characters taken from a word
5++$ phonetic @t :: @t consisting of phonetic characters from metaphone
6::
6::
7:: an entry points to a listing hash and provides
7:: an entry points to a listing hash and provides
8:: a semblance of priority for the listing
8:: a semblance of priority for the listing
@@ -52,10 +52,10 @@
52::
52::
53+$ lookup (map key (list entry))
53+$ lookup (map key (list entry))
54::
54::
55−:: trigrams act as a way to account for spelling errors. we keep a map
55+:: phonetics act as a way to account for spelling errors. we keep a map
56−:: of trigram to set of lookup keys. we take the query's trigrams and
56+:: of phonetic to set of lookup keys. we take the query's phonetics and
57−:: count how many times a particular key comes up.
57+:: use that to add other words to the results.
58−+$ trigrams (map trigram (set key))
58++$ phonetics (map phonetic (set key))
59::
59::
60:: trail is a way for us to know all the keys required to update
60:: trail is a way for us to know all the keys required to update
61:: a listing with the new hash of it's contents
61:: a listing with the new hash of it's contents
desk/ted/publish-all.hoonnew file+40
@@ -0,0 +1,40 @@
1+/- spider
2+/- s=seek
3+/+ *strandio
4+=, strand=strand:spider
5+=/ posts
6+ ^- (list declare:s)
7+ :~ :- %friends
8+ ['networked subject' %group 'web+urbitgraph://group/~matwet/networked-subject' 'https://subject.network | networked subject' ~['hosting' 'networking' 'urbit' 'ops'] 'https://urbits3.ams3.digitaloceanspaces.com/sitful-hatred/2022.7.07..17.15.52-ns.png']
9+ :- %friends
10+ ['Hooniverse' %group 'web+urbitgraph://group/~hiddev-dannut/new-hooniverse' 'Community based Hoon learning for all levels. For discussion of Hoon specific to Uqbar, join ~hiddev-dannut/uhoon' ~['hoon' 'dev' 'urbit' 'programming' 'education'] 'https://i.imgur.com/ghThlz7.png']
11+ :- %friends
12+ ['Hollow Mars Theory' %group 'web+urbitgraph://group/~rabsef-bicrym/hollow-mars-theory' 'Definitely NOT a Conspiracy Chat' ~['conspiracies' 'ufos' 'steel beams'] '']
13+ :- %friends
14+ ['celestial systems' %group 'web+urbitgraph://group/~nocsyx-lassul/celestial-systems' 'A place for pilots who are building hosting providers' ~['hosting' 'ops' 'urbit'] '']
15+ :- %friends
16+ ['Structure' %group 'web+urbitgraph://group/~fabled-faster/structure' 'Urbit Structural Design and Engineering Group. Always Thinking About Mechanics.' ~['design' 'ux' 'hci' 'urbit'] 'https://fabled-faster.nyc3.digitaloceanspaces.com/fabled-faster/2022.1.27..17.59.43-image.png']
17+ :- %friends
18+ ['The Marketplace' %group 'web+urbitgraph://group/~tirrel/the-marketplace' 'Welcome to The Marketplace, featuring The Pit, Urbit\'s first open-outcry market!' ~['urbit' 'market' 'sell' 'buy'] 'https://snipboard.io/U0IYyi.jpg']
19+ :- %friends
20+ ['The Forge' %group 'web+urbitgraph://group/~middev/the-forge' 'pale fire computing' ~['dev' 'programming' 'hoon' 'urbit'] 'https://nyc3.digitaloceanspaces.com/archiv/littel-wolfur/2021.5.06..21.01.58-the%20forge.png']
21+ :- %friends
22+ ['UFORIA' %group 'web+urbitgraph://group/~tiplec-lacnyx/ufora' 'UFO Research, Investigations, and Analysis' ~['UFO' 'conspiracies' 'research'] 'https://tiplec-lacnyx.nyc3.digitaloceanspaces.com/tiplec-lacnyx/2021.12.27..06.09.47-change1.jpg']
23+ :- %friends
24+ ['Urbit Community' %group 'web+urbitgraph://group/~bitbet-bolbel/urbit-community' 'World hub, help desk, meet and greet, etc.' ~['general' 'urbit' 'community' 'help'] 'https://fabled-faster.nyc3.digitaloceanspaces.com/fabled-faster/2021.4.02..21.52.41-UC.png']
25+ :- %friends
26+ ['Urbytes' %group 'web+urbitgraph://group/~nartes-fasrum/urbytes' 'We feed and water Mars.' ~['cooking' 'food' 'beverages' 'peanut butter eggs'] '']
27+ ==
28+^- thread:spider
29+|= arg=vase
30+=/ m (strand ,vase)
31+^- form:m
32+;< our=@p bind:m get-our
33+;< ~ bind:m
34+ %- send-raw-cards
35+ ^- (list card:agent:gall)
36+ %+ turn
37+ posts
38+ |= =declare:s
39+ [%pass /poke %agent [our %seek] %poke [%declare !>(declare)]]
40+(pure:m !>(~))
ui/package-lock.json+829−167
@@ -10,6 +10,7 @@
10 "dependencies": {
10 "dependencies": {
11 "@heroicons/react": "^1.0.6",
11 "@heroicons/react": "^1.0.6",
12 "@radix-ui/react-dropdown-menu": "^0.1.6",
12 "@radix-ui/react-dropdown-menu": "^0.1.6",
13+ "@radix-ui/react-select": "^0.1.1",
13 "@radix-ui/react-toggle-group": "^0.1.5",
14 "@radix-ui/react-toggle-group": "^0.1.5",
14 "@urbit/api": "^2.0.0",
15 "@urbit/api": "^2.0.0",
15 "@urbit/http-api": "^2.0.0",
16 "@urbit/http-api": "^2.0.0",
@@ -18,8 +19,10 @@
18 "lodash.debounce": "^4.0.8",
19 "lodash.debounce": "^4.0.8",
19 "react": "^17.0.2",
20 "react": "^17.0.2",
20 "react-dom": "^17.0.2",
21 "react-dom": "^17.0.2",
22+ "react-hook-form": "^7.33.1",
21 "react-query": "^3.39.1",
23 "react-query": "^3.39.1",
22− "react-router-dom": "^6.3.0"
24+ "react-router-dom": "^6.3.0",
25+ "react-select": "^5.4.0"
23 },
26 },
24 "devDependencies": {
27 "devDependencies": {
25 "@types/lodash.debounce": "^4.0.7",
28 "@types/lodash.debounce": "^4.0.7",
@@ -38,7 +41,6 @@
38 "version": "2.2.0",
41 "version": "2.2.0",
39 "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz",
42 "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz",
40 "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==",
43 "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==",
41− "dev": true,
42 "dependencies": {
44 "dependencies": {
43 "@jridgewell/gen-mapping": "^0.1.0",
45 "@jridgewell/gen-mapping": "^0.1.0",
44 "@jridgewell/trace-mapping": "^0.3.9"
46 "@jridgewell/trace-mapping": "^0.3.9"
@@ -51,7 +53,6 @@
51 "version": "7.18.6",
53 "version": "7.18.6",
52 "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz",
54 "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz",
53 "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==",
55 "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==",
54− "dev": true,
55 "dependencies": {
56 "dependencies": {
56 "@babel/highlight": "^7.18.6"
57 "@babel/highlight": "^7.18.6"
57 },
58 },
@@ -63,7 +64,6 @@
63 "version": "7.18.6",
64 "version": "7.18.6",
64 "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.6.tgz",
65 "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.6.tgz",
65 "integrity": "sha512-tzulrgDT0QD6U7BJ4TKVk2SDDg7wlP39P9yAx1RfLy7vP/7rsDRlWVfbWxElslu56+r7QOhB2NSDsabYYruoZQ==",
66 "integrity": "sha512-tzulrgDT0QD6U7BJ4TKVk2SDDg7wlP39P9yAx1RfLy7vP/7rsDRlWVfbWxElslu56+r7QOhB2NSDsabYYruoZQ==",
66− "dev": true,
67 "engines": {
67 "engines": {
68 "node": ">=6.9.0"
68 "node": ">=6.9.0"
69 }
69 }
@@ -72,7 +72,6 @@
72 "version": "7.18.6",
72 "version": "7.18.6",
73 "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.6.tgz",
73 "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.6.tgz",
74 "integrity": "sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==",
74 "integrity": "sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==",
75− "dev": true,
76 "dependencies": {
75 "dependencies": {
77 "@ampproject/remapping": "^2.1.0",
76 "@ampproject/remapping": "^2.1.0",
78 "@babel/code-frame": "^7.18.6",
77 "@babel/code-frame": "^7.18.6",
@@ -102,7 +101,6 @@
102 "version": "7.18.7",
101 "version": "7.18.7",
103 "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.7.tgz",
102 "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.7.tgz",
104 "integrity": "sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==",
103 "integrity": "sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==",
105− "dev": true,
106 "dependencies": {
104 "dependencies": {
107 "@babel/types": "^7.18.7",
105 "@babel/types": "^7.18.7",
108 "@jridgewell/gen-mapping": "^0.3.2",
106 "@jridgewell/gen-mapping": "^0.3.2",
@@ -116,7 +114,6 @@
116 "version": "0.3.2",
114 "version": "0.3.2",
117 "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
115 "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
118 "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==",
116 "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==",
119− "dev": true,
120 "dependencies": {
117 "dependencies": {
121 "@jridgewell/set-array": "^1.0.1",
118 "@jridgewell/set-array": "^1.0.1",
122 "@jridgewell/sourcemap-codec": "^1.4.10",
119 "@jridgewell/sourcemap-codec": "^1.4.10",
@@ -130,7 +127,6 @@
130 "version": "7.18.6",
127 "version": "7.18.6",
131 "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.6.tgz",
128 "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.6.tgz",
132 "integrity": "sha512-vFjbfhNCzqdeAtZflUFrG5YIFqGTqsctrtkZ1D/NB0mDW9TwW3GmmUepYY4G9wCET5rY5ugz4OGTcLd614IzQg==",
129 "integrity": "sha512-vFjbfhNCzqdeAtZflUFrG5YIFqGTqsctrtkZ1D/NB0mDW9TwW3GmmUepYY4G9wCET5rY5ugz4OGTcLd614IzQg==",
133− "dev": true,
134 "dependencies": {
130 "dependencies": {
135 "@babel/compat-data": "^7.18.6",
131 "@babel/compat-data": "^7.18.6",
136 "@babel/helper-validator-option": "^7.18.6",
132 "@babel/helper-validator-option": "^7.18.6",
@@ -148,7 +144,6 @@
148 "version": "7.18.6",
144 "version": "7.18.6",
149 "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.6.tgz",
145 "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.6.tgz",
150 "integrity": "sha512-8n6gSfn2baOY+qlp+VSzsosjCVGFqWKmDF0cCWOybh52Dw3SEyoWR1KrhMJASjLwIEkkAufZ0xvr+SxLHSpy2Q==",
146 "integrity": "sha512-8n6gSfn2baOY+qlp+VSzsosjCVGFqWKmDF0cCWOybh52Dw3SEyoWR1KrhMJASjLwIEkkAufZ0xvr+SxLHSpy2Q==",
151− "dev": true,
152 "engines": {
147 "engines": {
153 "node": ">=6.9.0"
148 "node": ">=6.9.0"
154 }
149 }
@@ -157,7 +152,6 @@
157 "version": "7.18.6",
152 "version": "7.18.6",
158 "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.6.tgz",
153 "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.6.tgz",
159 "integrity": "sha512-0mWMxV1aC97dhjCah5U5Ua7668r5ZmSC2DLfH2EZnf9c3/dHZKiFa5pRLMH5tjSl471tY6496ZWk/kjNONBxhw==",
154 "integrity": "sha512-0mWMxV1aC97dhjCah5U5Ua7668r5ZmSC2DLfH2EZnf9c3/dHZKiFa5pRLMH5tjSl471tY6496ZWk/kjNONBxhw==",
160− "dev": true,
161 "dependencies": {
155 "dependencies": {
162 "@babel/template": "^7.18.6",
156 "@babel/template": "^7.18.6",
163 "@babel/types": "^7.18.6"
157 "@babel/types": "^7.18.6"
@@ -170,7 +164,6 @@
170 "version": "7.18.6",
164 "version": "7.18.6",
171 "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
165 "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
172 "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
166 "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
173− "dev": true,
174 "dependencies": {
167 "dependencies": {
175 "@babel/types": "^7.18.6"
168 "@babel/types": "^7.18.6"
176 },
169 },
@@ -182,7 +175,6 @@
182 "version": "7.18.6",
175 "version": "7.18.6",
183 "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz",
176 "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz",
184 "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==",
177 "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==",
185− "dev": true,
186 "dependencies": {
178 "dependencies": {
187 "@babel/types": "^7.18.6"
179 "@babel/types": "^7.18.6"
188 },
180 },
@@ -194,7 +186,6 @@
194 "version": "7.18.6",
186 "version": "7.18.6",
195 "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.6.tgz",
187 "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.6.tgz",
196 "integrity": "sha512-L//phhB4al5uucwzlimruukHB3jRd5JGClwRMD/ROrVjXfLqovYnvQrK/JK36WYyVwGGO7OD3kMyVTjx+WVPhw==",
188 "integrity": "sha512-L//phhB4al5uucwzlimruukHB3jRd5JGClwRMD/ROrVjXfLqovYnvQrK/JK36WYyVwGGO7OD3kMyVTjx+WVPhw==",
197− "dev": true,
198 "dependencies": {
189 "dependencies": {
199 "@babel/helper-environment-visitor": "^7.18.6",
190 "@babel/helper-environment-visitor": "^7.18.6",
200 "@babel/helper-module-imports": "^7.18.6",
191 "@babel/helper-module-imports": "^7.18.6",
@@ -213,7 +204,6 @@
213 "version": "7.18.6",
204 "version": "7.18.6",
214 "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.6.tgz",
205 "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.6.tgz",
215 "integrity": "sha512-gvZnm1YAAxh13eJdkb9EWHBnF3eAub3XTLCZEehHT2kWxiKVRL64+ae5Y6Ivne0mVHmMYKT+xWgZO+gQhuLUBg==",
206 "integrity": "sha512-gvZnm1YAAxh13eJdkb9EWHBnF3eAub3XTLCZEehHT2kWxiKVRL64+ae5Y6Ivne0mVHmMYKT+xWgZO+gQhuLUBg==",
216− "dev": true,
217 "engines": {
207 "engines": {
218 "node": ">=6.9.0"
208 "node": ">=6.9.0"
219 }
209 }
@@ -222,7 +212,6 @@
222 "version": "7.18.6",
212 "version": "7.18.6",
223 "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz",
213 "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz",
224 "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==",
214 "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==",
225− "dev": true,
226 "dependencies": {
215 "dependencies": {
227 "@babel/types": "^7.18.6"
216 "@babel/types": "^7.18.6"
228 },
217 },
@@ -234,7 +223,6 @@
234 "version": "7.18.6",
223 "version": "7.18.6",
235 "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz",
224 "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz",
236 "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==",
225 "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==",
237− "dev": true,
238 "dependencies": {
226 "dependencies": {
239 "@babel/types": "^7.18.6"
227 "@babel/types": "^7.18.6"
240 },
228 },
@@ -246,7 +234,6 @@
246 "version": "7.18.6",
234 "version": "7.18.6",
247 "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz",
235 "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz",
248 "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==",
236 "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==",
249− "dev": true,
250 "engines": {
237 "engines": {
251 "node": ">=6.9.0"
238 "node": ">=6.9.0"
252 }
239 }
@@ -255,7 +242,6 @@
255 "version": "7.18.6",
242 "version": "7.18.6",
256 "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz",
243 "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz",
257 "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==",
244 "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==",
258− "dev": true,
259 "engines": {
245 "engines": {
260 "node": ">=6.9.0"
246 "node": ">=6.9.0"
261 }
247 }
@@ -264,7 +250,6 @@
264 "version": "7.18.6",
250 "version": "7.18.6",
265 "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.6.tgz",
251 "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.6.tgz",
266 "integrity": "sha512-vzSiiqbQOghPngUYt/zWGvK3LAsPhz55vc9XNN0xAl2gV4ieShI2OQli5duxWHD+72PZPTKAcfcZDE1Cwc5zsQ==",
252 "integrity": "sha512-vzSiiqbQOghPngUYt/zWGvK3LAsPhz55vc9XNN0xAl2gV4ieShI2OQli5duxWHD+72PZPTKAcfcZDE1Cwc5zsQ==",
267− "dev": true,
268 "dependencies": {
253 "dependencies": {
269 "@babel/template": "^7.18.6",
254 "@babel/template": "^7.18.6",
270 "@babel/traverse": "^7.18.6",
255 "@babel/traverse": "^7.18.6",
@@ -278,7 +263,6 @@
278 "version": "7.18.6",
263 "version": "7.18.6",
279 "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
264 "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
280 "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
265 "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
281− "dev": true,
282 "dependencies": {
266 "dependencies": {
283 "@babel/helper-validator-identifier": "^7.18.6",
267 "@babel/helper-validator-identifier": "^7.18.6",
284 "chalk": "^2.0.0",
268 "chalk": "^2.0.0",
@@ -292,7 +276,6 @@
292 "version": "7.18.6",
276 "version": "7.18.6",
293 "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.6.tgz",
277 "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.6.tgz",
294 "integrity": "sha512-uQVSa9jJUe/G/304lXspfWVpKpK4euFLgGiMQFOCpM/bgcAdeoHwi/OQz23O9GK2osz26ZiXRRV9aV+Yl1O8tw==",
278 "integrity": "sha512-uQVSa9jJUe/G/304lXspfWVpKpK4euFLgGiMQFOCpM/bgcAdeoHwi/OQz23O9GK2osz26ZiXRRV9aV+Yl1O8tw==",
295− "dev": true,
296 "bin": {
279 "bin": {
297 "parser": "bin/babel-parser.js"
280 "parser": "bin/babel-parser.js"
298 },
281 },
@@ -300,6 +283,20 @@
300 "node": ">=6.0.0"
283 "node": ">=6.0.0"
301 }
284 }
302 },
285 },
286+ "node_modules/@babel/plugin-syntax-jsx": {
287+ "version": "7.18.6",
288+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz",
289+ "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==",
290+ "dependencies": {
291+ "@babel/helper-plugin-utils": "^7.18.6"
292+ },
293+ "engines": {
294+ "node": ">=6.9.0"
295+ },
296+ "peerDependencies": {
297+ "@babel/core": "^7.0.0-0"
298+ }
299+ },
303 "node_modules/@babel/plugin-transform-react-jsx-self": {
300 "node_modules/@babel/plugin-transform-react-jsx-self": {
304 "version": "7.18.6",
301 "version": "7.18.6",
305 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.18.6.tgz",
302 "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.18.6.tgz",
@@ -345,7 +342,6 @@
345 "version": "7.18.6",
342 "version": "7.18.6",
346 "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz",
343 "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz",
347 "integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==",
344 "integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==",
348− "dev": true,
349 "dependencies": {
345 "dependencies": {
350 "@babel/code-frame": "^7.18.6",
346 "@babel/code-frame": "^7.18.6",
351 "@babel/parser": "^7.18.6",
347 "@babel/parser": "^7.18.6",
@@ -359,7 +355,6 @@
359 "version": "7.18.6",
355 "version": "7.18.6",
360 "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.6.tgz",
356 "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.6.tgz",
361 "integrity": "sha512-zS/OKyqmD7lslOtFqbscH6gMLFYOfG1YPqCKfAW5KrTeolKqvB8UelR49Fpr6y93kYkW2Ik00mT1LOGiAGvizw==",
357 "integrity": "sha512-zS/OKyqmD7lslOtFqbscH6gMLFYOfG1YPqCKfAW5KrTeolKqvB8UelR49Fpr6y93kYkW2Ik00mT1LOGiAGvizw==",
362− "dev": true,
363 "dependencies": {
358 "dependencies": {
364 "@babel/code-frame": "^7.18.6",
359 "@babel/code-frame": "^7.18.6",
365 "@babel/generator": "^7.18.6",
360 "@babel/generator": "^7.18.6",
@@ -380,7 +375,6 @@
380 "version": "7.18.7",
375 "version": "7.18.7",
381 "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.7.tgz",
376 "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.7.tgz",
382 "integrity": "sha512-QG3yxTcTIBoAcQmkCs+wAPYZhu7Dk9rXKacINfNbdJDNERTbLQbHGyVG8q/YGMPeCJRIhSY0+fTc5+xuh6WPSQ==",
377 "integrity": "sha512-QG3yxTcTIBoAcQmkCs+wAPYZhu7Dk9rXKacINfNbdJDNERTbLQbHGyVG8q/YGMPeCJRIhSY0+fTc5+xuh6WPSQ==",
383− "dev": true,
384 "dependencies": {
378 "dependencies": {
385 "@babel/helper-validator-identifier": "^7.18.6",
379 "@babel/helper-validator-identifier": "^7.18.6",
386 "to-fast-properties": "^2.0.0"
380 "to-fast-properties": "^2.0.0"
@@ -389,6 +383,119 @@
389 "node": ">=6.9.0"
383 "node": ">=6.9.0"
390 }
384 }
391 },
385 },
386+ "node_modules/@emotion/babel-plugin": {
387+ "version": "11.9.2",
388+ "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.9.2.tgz",
389+ "integrity": "sha512-Pr/7HGH6H6yKgnVFNEj2MVlreu3ADqftqjqwUvDy/OJzKFgxKeTQ+eeUf20FOTuHVkDON2iNa25rAXVYtWJCjw==",
390+ "dependencies": {
391+ "@babel/helper-module-imports": "^7.12.13",
392+ "@babel/plugin-syntax-jsx": "^7.12.13",
393+ "@babel/runtime": "^7.13.10",
394+ "@emotion/hash": "^0.8.0",
395+ "@emotion/memoize": "^0.7.5",
396+ "@emotion/serialize": "^1.0.2",
397+ "babel-plugin-macros": "^2.6.1",
398+ "convert-source-map": "^1.5.0",
399+ "escape-string-regexp": "^4.0.0",
400+ "find-root": "^1.1.0",
401+ "source-map": "^0.5.7",
402+ "stylis": "4.0.13"
403+ },
404+ "peerDependencies": {
405+ "@babel/core": "^7.0.0"
406+ }
407+ },
408+ "node_modules/@emotion/babel-plugin/node_modules/escape-string-regexp": {
409+ "version": "4.0.0",
410+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
411+ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
412+ "engines": {
413+ "node": ">=10"
414+ },
415+ "funding": {
416+ "url": "https://github.com/sponsors/sindresorhus"
417+ }
418+ },
419+ "node_modules/@emotion/cache": {
420+ "version": "11.9.3",
421+ "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.9.3.tgz",
422+ "integrity": "sha512-0dgkI/JKlCXa+lEXviaMtGBL0ynpx4osh7rjOXE71q9bIF8G+XhJgvi+wDu0B0IdCVx37BffiwXlN9I3UuzFvg==",
423+ "dependencies": {
424+ "@emotion/memoize": "^0.7.4",
425+ "@emotion/sheet": "^1.1.1",
426+ "@emotion/utils": "^1.0.0",
427+ "@emotion/weak-memoize": "^0.2.5",
428+ "stylis": "4.0.13"
429+ }
430+ },
431+ "node_modules/@emotion/hash": {
432+ "version": "0.8.0",
433+ "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz",
434+ "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow=="
435+ },
436+ "node_modules/@emotion/memoize": {
437+ "version": "0.7.5",
438+ "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.5.tgz",
439+ "integrity": "sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ=="
440+ },
441+ "node_modules/@emotion/react": {
442+ "version": "11.9.3",
443+ "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.9.3.tgz",
444+ "integrity": "sha512-g9Q1GcTOlzOEjqwuLF/Zd9LC+4FljjPjDfxSM7KmEakm+hsHXk+bYZ2q+/hTJzr0OUNkujo72pXLQvXj6H+GJQ==",
445+ "dependencies": {
446+ "@babel/runtime": "^7.13.10",
447+ "@emotion/babel-plugin": "^11.7.1",
448+ "@emotion/cache": "^11.9.3",
449+ "@emotion/serialize": "^1.0.4",
450+ "@emotion/utils": "^1.1.0",
451+ "@emotion/weak-memoize": "^0.2.5",
452+ "hoist-non-react-statics": "^3.3.1"
453+ },
454+ "peerDependencies": {
455+ "@babel/core": "^7.0.0",
456+ "react": ">=16.8.0"
457+ },
458+ "peerDependenciesMeta": {
459+ "@babel/core": {
460+ "optional": true
461+ },
462+ "@types/react": {
463+ "optional": true
464+ }
465+ }
466+ },
467+ "node_modules/@emotion/serialize": {
468+ "version": "1.0.4",
469+ "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.0.4.tgz",
470+ "integrity": "sha512-1JHamSpH8PIfFwAMryO2bNka+y8+KA5yga5Ocf2d7ZEiJjb7xlLW7aknBGZqJLajuLOvJ+72vN+IBSwPlXD1Pg==",
471+ "dependencies": {
472+ "@emotion/hash": "^0.8.0",
473+ "@emotion/memoize": "^0.7.4",
474+ "@emotion/unitless": "^0.7.5",
475+ "@emotion/utils": "^1.0.0",
476+ "csstype": "^3.0.2"
477+ }
478+ },
479+ "node_modules/@emotion/sheet": {
480+ "version": "1.1.1",
481+ "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.1.1.tgz",
482+ "integrity": "sha512-J3YPccVRMiTZxYAY0IOq3kd+hUP8idY8Kz6B/Cyo+JuXq52Ek+zbPbSQUrVQp95aJ+lsAW7DPL1P2Z+U1jGkKA=="
483+ },
484+ "node_modules/@emotion/unitless": {
485+ "version": "0.7.5",
486+ "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz",
487+ "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg=="
488+ },
489+ "node_modules/@emotion/utils": {
490+ "version": "1.1.0",
491+ "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.1.0.tgz",
492+ "integrity": "sha512-iRLa/Y4Rs5H/f2nimczYmS5kFJEbpiVvgN3XVfZ022IYhuNA1IRSHEizcof88LtCTXtl9S2Cxt32KgaXEu72JQ=="
493+ },
494+ "node_modules/@emotion/weak-memoize": {
495+ "version": "0.2.5",
496+ "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz",
497+ "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA=="
498+ },
392 "node_modules/@heroicons/react": {
499 "node_modules/@heroicons/react": {
393 "version": "1.0.6",
500 "version": "1.0.6",
394 "resolved": "https://registry.npmjs.org/@heroicons/react/-/react-1.0.6.tgz",
501 "resolved": "https://registry.npmjs.org/@heroicons/react/-/react-1.0.6.tgz",
@@ -401,7 +508,6 @@
401 "version": "0.1.1",
508 "version": "0.1.1",
402 "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz",
509 "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz",
403 "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==",
510 "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==",
404− "dev": true,
405 "dependencies": {
511 "dependencies": {
406 "@jridgewell/set-array": "^1.0.0",
512 "@jridgewell/set-array": "^1.0.0",
407 "@jridgewell/sourcemap-codec": "^1.4.10"
513 "@jridgewell/sourcemap-codec": "^1.4.10"
@@ -414,7 +520,6 @@
414 "version": "3.0.8",
520 "version": "3.0.8",
415 "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.8.tgz",
521 "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.8.tgz",
416 "integrity": "sha512-YK5G9LaddzGbcucK4c8h5tWFmMPBvRZ/uyWmN1/SbBdIvqGUdWGkJ5BAaccgs6XbzVLsqbPJrBSFwKv3kT9i7w==",
522 "integrity": "sha512-YK5G9LaddzGbcucK4c8h5tWFmMPBvRZ/uyWmN1/SbBdIvqGUdWGkJ5BAaccgs6XbzVLsqbPJrBSFwKv3kT9i7w==",
417− "dev": true,
418 "engines": {
523 "engines": {
419 "node": ">=6.0.0"
524 "node": ">=6.0.0"
420 }
525 }
@@ -423,7 +528,6 @@
423 "version": "1.1.2",
528 "version": "1.1.2",
424 "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
529 "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
425 "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
530 "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
426− "dev": true,
427 "engines": {
531 "engines": {
428 "node": ">=6.0.0"
532 "node": ">=6.0.0"
429 }
533 }
@@ -431,14 +535,12 @@
431 "node_modules/@jridgewell/sourcemap-codec": {
535 "node_modules/@jridgewell/sourcemap-codec": {
432 "version": "1.4.14",
536 "version": "1.4.14",
433 "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
537 "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
434− "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==",
538+ "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw=="
435− "dev": true
436 },
539 },
437 "node_modules/@jridgewell/trace-mapping": {
540 "node_modules/@jridgewell/trace-mapping": {
438 "version": "0.3.14",
541 "version": "0.3.14",
439 "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.14.tgz",
542 "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.14.tgz",
440 "integrity": "sha512-bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ==",
543 "integrity": "sha512-bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ==",
441− "dev": true,
442 "dependencies": {
544 "dependencies": {
443 "@jridgewell/resolve-uri": "^3.0.3",
545 "@jridgewell/resolve-uri": "^3.0.3",
444 "@jridgewell/sourcemap-codec": "^1.4.10"
546 "@jridgewell/sourcemap-codec": "^1.4.10"
@@ -484,6 +586,14 @@
484 "node": ">= 8"
586 "node": ">= 8"
485 }
587 }
486 },
588 },
589+ "node_modules/@radix-ui/number": {
590+ "version": "0.1.0",
591+ "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-0.1.0.tgz",
592+ "integrity": "sha512-rpf6QiOWLHAkM4FEMYu9i+5Jr8cKT893+R4mPpcdsy4LD7omr9JfdOqj/h/xPA5+EcVrpMMlU6rrRYpUB5UI8g==",
593+ "dependencies": {
594+ "@babel/runtime": "^7.13.10"
595+ }
596+ },
487 "node_modules/@radix-ui/popper": {
597 "node_modules/@radix-ui/popper": {
488 "version": "0.1.0",
598 "version": "0.1.0",
489 "resolved": "https://registry.npmjs.org/@radix-ui/popper/-/popper-0.1.0.tgz",
599 "resolved": "https://registry.npmjs.org/@radix-ui/popper/-/popper-0.1.0.tgz",
@@ -623,6 +733,21 @@
623 "react": "^16.8 || ^17.0"
733 "react": "^16.8 || ^17.0"
624 }
734 }
625 },
735 },
736+ "node_modules/@radix-ui/react-label": {
737+ "version": "0.1.5",
738+ "resolved": "https://registry.npmjs.org/@radix-ui/react-label/-/react-label-0.1.5.tgz",
739+ "integrity": "sha512-Au9+n4/DhvjR0IHhvZ1LPdx/OW+3CGDie30ZyCkbSHIuLp4/CV4oPPGBwJ1vY99Jog3zyQhsGww9MXj8O9Aj/A==",
740+ "dependencies": {
741+ "@babel/runtime": "^7.13.10",
742+ "@radix-ui/react-compose-refs": "0.1.0",
743+ "@radix-ui/react-context": "0.1.1",
744+ "@radix-ui/react-id": "0.1.5",
745+ "@radix-ui/react-primitive": "0.1.4"
746+ },
747+ "peerDependencies": {
748+ "react": "^16.8 || ^17.0"
749+ }
750+ },
626 "node_modules/@radix-ui/react-menu": {
751 "node_modules/@radix-ui/react-menu": {
627 "version": "0.1.6",
752 "version": "0.1.6",
628 "resolved": "https://registry.npmjs.org/@radix-ui/react-menu/-/react-menu-0.1.6.tgz",
753 "resolved": "https://registry.npmjs.org/@radix-ui/react-menu/-/react-menu-0.1.6.tgz",
@@ -729,6 +854,36 @@
729 "react": "^16.8 || ^17.0"
854 "react": "^16.8 || ^17.0"
730 }
855 }
731 },
856 },
857+ "node_modules/@radix-ui/react-select": {
858+ "version": "0.1.1",
859+ "resolved": "https://registry.npmjs.org/@radix-ui/react-select/-/react-select-0.1.1.tgz",
860+ "integrity": "sha512-xY3jLz2c6ZBHflldGsA79bE/swUfRMpiRPQf+JDihOufsd3z5uW22PFe0MS5bGZiIpK6aAZAvwqEd2Bu7hqp8w==",
861+ "dependencies": {
862+ "@babel/runtime": "^7.13.10",
863+ "@radix-ui/number": "0.1.0",
864+ "@radix-ui/primitive": "0.1.0",
865+ "@radix-ui/react-collection": "0.1.4",
866+ "@radix-ui/react-compose-refs": "0.1.0",
867+ "@radix-ui/react-context": "0.1.1",
868+ "@radix-ui/react-dismissable-layer": "0.1.5",
869+ "@radix-ui/react-focus-scope": "0.1.4",
870+ "@radix-ui/react-id": "0.1.5",
871+ "@radix-ui/react-label": "0.1.5",
872+ "@radix-ui/react-portal": "0.1.4",
873+ "@radix-ui/react-primitive": "0.1.4",
874+ "@radix-ui/react-use-callback-ref": "0.1.0",
875+ "@radix-ui/react-use-controllable-state": "0.1.0",
876+ "@radix-ui/react-use-layout-effect": "0.1.0",
877+ "@radix-ui/react-use-previous": "0.1.1",
878+ "@radix-ui/react-visually-hidden": "0.1.4",
879+ "aria-hidden": "^1.1.1",
880+ "react-remove-scroll": "^2.4.0"
881+ },
882+ "peerDependencies": {
883+ "react": "^16.8 || ^17.0",
884+ "react-dom": "^16.8 || ^17.0"
885+ }
886+ },
732 "node_modules/@radix-ui/react-slot": {
887 "node_modules/@radix-ui/react-slot": {
733 "version": "0.1.2",
888 "version": "0.1.2",
734 "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-0.1.2.tgz",
889 "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-0.1.2.tgz",
@@ -841,6 +996,17 @@
841 "react": "^16.8 || ^17.0"
996 "react": "^16.8 || ^17.0"
842 }
997 }
843 },
998 },
999+ "node_modules/@radix-ui/react-use-previous": {
1000+ "version": "0.1.1",
1001+ "resolved": "https://registry.npmjs.org/@radix-ui/react-use-previous/-/react-use-previous-0.1.1.tgz",
1002+ "integrity": "sha512-O/ZgrDBr11dR8rhO59ED8s5zIXBRFi8MiS+CmFGfi7MJYdLbfqVOmQU90Ghf87aifEgWe6380LA69KBneaShAg==",
1003+ "dependencies": {
1004+ "@babel/runtime": "^7.13.10"
1005+ },
1006+ "peerDependencies": {
1007+ "react": "^16.8 || ^17.0"
1008+ }
1009+ },
844 "node_modules/@radix-ui/react-use-rect": {
1010 "node_modules/@radix-ui/react-use-rect": {
845 "version": "0.1.1",
1011 "version": "0.1.1",
846 "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-0.1.1.tgz",
1012 "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-0.1.1.tgz",
@@ -864,6 +1030,18 @@
864 "react": "^16.8 || ^17.0"
1030 "react": "^16.8 || ^17.0"
865 }
1031 }
866 },
1032 },
1033+ "node_modules/@radix-ui/react-visually-hidden": {
1034+ "version": "0.1.4",
1035+ "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-0.1.4.tgz",
1036+ "integrity": "sha512-K/q6AEEzqeeEq/T0NPChvBqnwlp8Tl4NnQdrI/y8IOY7BRR+Ug0PEsVk6g48HJ7cA1//COugdxXXVVK/m0X1mA==",
1037+ "dependencies": {
1038+ "@babel/runtime": "^7.13.10",
1039+ "@radix-ui/react-primitive": "0.1.4"
1040+ },
1041+ "peerDependencies": {
1042+ "react": "^16.8 || ^17.0"
1043+ }
1044+ },
867 "node_modules/@radix-ui/rect": {
1045 "node_modules/@radix-ui/rect": {
868 "version": "0.1.1",
1046 "version": "0.1.1",
869 "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-0.1.1.tgz",
1047 "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-0.1.1.tgz",
@@ -900,17 +1078,20 @@
900 "@types/lodash": "*"
1078 "@types/lodash": "*"
901 }
1079 }
902 },
1080 },
1081+ "node_modules/@types/parse-json": {
1082+ "version": "4.0.0",
1083+ "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
1084+ "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA=="
1085+ },
903 "node_modules/@types/prop-types": {
1086 "node_modules/@types/prop-types": {
904 "version": "15.7.5",
1087 "version": "15.7.5",
905 "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz",
1088 "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz",
906− "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==",
1089+ "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w=="
907− "devOptional": true
908 },
1090 },
909 "node_modules/@types/react": {
1091 "node_modules/@types/react": {
910 "version": "17.0.47",
1092 "version": "17.0.47",
911 "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.47.tgz",
1093 "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.47.tgz",
912 "integrity": "sha512-mk0BL8zBinf2ozNr3qPnlu1oyVTYq+4V7WA76RgxUAtf0Em/Wbid38KN6n4abEkvO4xMTBWmnP1FtQzgkEiJoA==",
1094 "integrity": "sha512-mk0BL8zBinf2ozNr3qPnlu1oyVTYq+4V7WA76RgxUAtf0Em/Wbid38KN6n4abEkvO4xMTBWmnP1FtQzgkEiJoA==",
913− "devOptional": true,
914 "dependencies": {
1095 "dependencies": {
915 "@types/prop-types": "*",
1096 "@types/prop-types": "*",
916 "@types/scheduler": "*",
1097 "@types/scheduler": "*",
@@ -926,11 +1107,18 @@
926 "@types/react": "^17"
1107 "@types/react": "^17"
927 }
1108 }
928 },
1109 },
1110+ "node_modules/@types/react-transition-group": {
1111+ "version": "4.4.5",
1112+ "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.5.tgz",
1113+ "integrity": "sha512-juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA==",
1114+ "dependencies": {
1115+ "@types/react": "*"
1116+ }
1117+ },
929 "node_modules/@types/scheduler": {
1118 "node_modules/@types/scheduler": {
930 "version": "0.16.2",
1119 "version": "0.16.2",
931 "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz",
1120 "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz",
932− "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==",
1121+ "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew=="
933− "devOptional": true
934 },
1122 },
935 "node_modules/@urbit/api": {
1123 "node_modules/@urbit/api": {
936 "version": "2.1.1",
1124 "version": "2.1.1",
@@ -1018,7 +1206,6 @@
1018 "version": "3.2.1",
1206 "version": "3.2.1",
1019 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
1207 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
1020 "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
1208 "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
1021− "dev": true,
1022 "dependencies": {
1209 "dependencies": {
1023 "color-convert": "^1.9.0"
1210 "color-convert": "^1.9.0"
1024 },
1211 },
@@ -1089,6 +1276,16 @@
1089 "postcss": "^8.1.0"
1276 "postcss": "^8.1.0"
1090 }
1277 }
1091 },
1278 },
1279+ "node_modules/babel-plugin-macros": {
1280+ "version": "2.8.0",
1281+ "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz",
1282+ "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==",
1283+ "dependencies": {
1284+ "@babel/runtime": "^7.7.2",
1285+ "cosmiconfig": "^6.0.0",
1286+ "resolve": "^1.12.0"
1287+ }
1288+ },
1092 "node_modules/balanced-match": {
1289 "node_modules/balanced-match": {
1093 "version": "1.0.2",
1290 "version": "1.0.2",
1094 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
1291 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
@@ -1161,7 +1358,6 @@
1161 "version": "4.21.1",
1358 "version": "4.21.1",
1162 "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.1.tgz",
1359 "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.1.tgz",
1163 "integrity": "sha512-Nq8MFCSrnJXSc88yliwlzQe3qNe3VntIjhsArW9IJOEPSHNx23FalwApUVbzAWABLhYJJ7y8AynWI/XM8OdfjQ==",
1360 "integrity": "sha512-Nq8MFCSrnJXSc88yliwlzQe3qNe3VntIjhsArW9IJOEPSHNx23FalwApUVbzAWABLhYJJ7y8AynWI/XM8OdfjQ==",
1164− "dev": true,
1165 "funding": [
1361 "funding": [
1166 {
1362 {
1167 "type": "opencollective",
1363 "type": "opencollective",
@@ -1185,6 +1381,14 @@
1185 "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
1381 "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
1186 }
1382 }
1187 },
1383 },
1384+ "node_modules/callsites": {
1385+ "version": "3.1.0",
1386+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
1387+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
1388+ "engines": {
1389+ "node": ">=6"
1390+ }
1391+ },
1188 "node_modules/camelcase-css": {
1392 "node_modules/camelcase-css": {
1189 "version": "2.0.1",
1393 "version": "2.0.1",
1190 "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
1394 "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
@@ -1198,7 +1402,6 @@
1198 "version": "1.0.30001361",
1402 "version": "1.0.30001361",
1199 "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001361.tgz",
1403 "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001361.tgz",
1200 "integrity": "sha512-ybhCrjNtkFji1/Wto6SSJKkWk6kZgVQsDq5QI83SafsF6FXv2JB4df9eEdH6g8sdGgqTXrFLjAxqBGgYoU3azQ==",
1404 "integrity": "sha512-ybhCrjNtkFji1/Wto6SSJKkWk6kZgVQsDq5QI83SafsF6FXv2JB4df9eEdH6g8sdGgqTXrFLjAxqBGgYoU3azQ==",
1201− "dev": true,
1202 "funding": [
1405 "funding": [
1203 {
1406 {
1204 "type": "opencollective",
1407 "type": "opencollective",
@@ -1214,7 +1417,6 @@
1214 "version": "2.4.2",
1417 "version": "2.4.2",
1215 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
1418 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
1216 "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
1419 "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
1217− "dev": true,
1218 "dependencies": {
1420 "dependencies": {
1219 "ansi-styles": "^3.2.1",
1421 "ansi-styles": "^3.2.1",
1220 "escape-string-regexp": "^1.0.5",
1422 "escape-string-regexp": "^1.0.5",
@@ -1272,7 +1474,6 @@
1272 "version": "1.9.3",
1474 "version": "1.9.3",
1273 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
1475 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
1274 "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
1476 "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
1275− "dev": true,
1276 "dependencies": {
1477 "dependencies": {
1277 "color-name": "1.1.3"
1478 "color-name": "1.1.3"
1278 }
1479 }
@@ -1280,8 +1481,7 @@
1280 "node_modules/color-name": {
1481 "node_modules/color-name": {
1281 "version": "1.1.3",
1482 "version": "1.1.3",
1282 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
1483 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
1283− "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
1484+ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="
1284− "dev": true
1285 },
1485 },
1286 "node_modules/concat-map": {
1486 "node_modules/concat-map": {
1287 "version": "0.0.1",
1487 "version": "0.0.1",
@@ -1301,7 +1501,6 @@
1301 "version": "1.8.0",
1501 "version": "1.8.0",
1302 "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
1502 "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
1303 "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
1503 "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
1304− "dev": true,
1305 "dependencies": {
1504 "dependencies": {
1306 "safe-buffer": "~5.1.1"
1505 "safe-buffer": "~5.1.1"
1307 }
1506 }
@@ -1316,6 +1515,21 @@
1316 "url": "https://opencollective.com/core-js"
1515 "url": "https://opencollective.com/core-js"
1317 }
1516 }
1318 },
1517 },
1518+ "node_modules/cosmiconfig": {
1519+ "version": "6.0.0",
1520+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz",
1521+ "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==",
1522+ "dependencies": {
1523+ "@types/parse-json": "^4.0.0",
1524+ "import-fresh": "^3.1.0",
1525+ "parse-json": "^5.0.0",
1526+ "path-type": "^4.0.0",
1527+ "yaml": "^1.7.2"
1528+ },
1529+ "engines": {
1530+ "node": ">=8"
1531+ }
1532+ },
1319 "node_modules/cssesc": {
1533 "node_modules/cssesc": {
1320 "version": "3.0.0",
1534 "version": "3.0.0",
1321 "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
1535 "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
@@ -1337,7 +1551,6 @@
1337 "version": "4.3.4",
1551 "version": "4.3.4",
1338 "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
1552 "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
1339 "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
1553 "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
1340− "dev": true,
1341 "dependencies": {
1554 "dependencies": {
1342 "ms": "2.1.2"
1555 "ms": "2.1.2"
1343 },
1556 },
@@ -1395,11 +1608,27 @@
1395 "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
1608 "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
1396 "dev": true
1609 "dev": true
1397 },
1610 },
1611+ "node_modules/dom-helpers": {
1612+ "version": "5.2.1",
1613+ "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz",
1614+ "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==",
1615+ "dependencies": {
1616+ "@babel/runtime": "^7.8.7",
1617+ "csstype": "^3.0.2"
1618+ }
1619+ },
1398 "node_modules/electron-to-chromium": {
1620 "node_modules/electron-to-chromium": {
1399 "version": "1.4.176",
1621 "version": "1.4.176",
1400 "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.176.tgz",
1622 "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.176.tgz",
1401− "integrity": "sha512-92JdgyRlcNDwuy75MjuFSb3clt6DGJ2IXSpg0MCjKd3JV9eSmuUAIyWiGAp/EtT0z2D4rqbYqThQLV90maH3Zw==",
1623+ "integrity": "sha512-92JdgyRlcNDwuy75MjuFSb3clt6DGJ2IXSpg0MCjKd3JV9eSmuUAIyWiGAp/EtT0z2D4rqbYqThQLV90maH3Zw=="
1402− "dev": true
1624+ },
1625+ "node_modules/error-ex": {
1626+ "version": "1.3.2",
1627+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
1628+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
1629+ "dependencies": {
1630+ "is-arrayish": "^0.2.1"
1631+ }
1403 },
1632 },
1404 "node_modules/esbuild": {
1633 "node_modules/esbuild": {
1405 "version": "0.14.48",
1634 "version": "0.14.48",
@@ -1760,7 +1989,6 @@
1760 "version": "3.1.1",
1989 "version": "3.1.1",
1761 "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
1990 "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
1762 "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
1991 "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
1763− "dev": true,
1764 "engines": {
1992 "engines": {
1765 "node": ">=6"
1993 "node": ">=6"
1766 }
1994 }
@@ -1769,7 +1997,6 @@
1769 "version": "1.0.5",
1997 "version": "1.0.5",
1770 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
1998 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
1771 "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
1999 "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
1772− "dev": true,
1773 "engines": {
2000 "engines": {
1774 "node": ">=0.8.0"
2001 "node": ">=0.8.0"
1775 }
2002 }
@@ -1829,6 +2056,11 @@
1829 "node": ">=8"
2056 "node": ">=8"
1830 }
2057 }
1831 },
2058 },
2059+ "node_modules/find-root": {
2060+ "version": "1.1.0",
2061+ "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz",
2062+ "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng=="
2063+ },
1832 "node_modules/fraction.js": {
2064 "node_modules/fraction.js": {
1833 "version": "4.2.0",
2065 "version": "4.2.0",
1834 "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz",
2066 "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz",
@@ -1864,14 +2096,12 @@
1864 "node_modules/function-bind": {
2096 "node_modules/function-bind": {
1865 "version": "1.1.1",
2097 "version": "1.1.1",
1866 "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
2098 "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
1867− "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
2099+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
1868− "dev": true
1869 },
2100 },
1870 "node_modules/gensync": {
2101 "node_modules/gensync": {
1871 "version": "1.0.0-beta.2",
2102 "version": "1.0.0-beta.2",
1872 "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
2103 "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
1873 "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
2104 "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
1874− "dev": true,
1875 "engines": {
2105 "engines": {
1876 "node": ">=6.9.0"
2106 "node": ">=6.9.0"
1877 }
2107 }
@@ -1919,7 +2149,6 @@
1919 "version": "11.12.0",
2149 "version": "11.12.0",
1920 "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
2150 "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
1921 "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
2151 "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
1922− "dev": true,
1923 "engines": {
2152 "engines": {
1924 "node": ">=4"
2153 "node": ">=4"
1925 }
2154 }
@@ -1928,7 +2157,6 @@
1928 "version": "1.0.3",
2157 "version": "1.0.3",
1929 "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
2158 "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
1930 "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
2159 "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
1931− "dev": true,
1932 "dependencies": {
2160 "dependencies": {
1933 "function-bind": "^1.1.1"
2161 "function-bind": "^1.1.1"
1934 },
2162 },
@@ -1940,7 +2168,6 @@
1940 "version": "3.0.0",
2168 "version": "3.0.0",
1941 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
2169 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
1942 "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
2170 "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
1943− "dev": true,
1944 "engines": {
2171 "engines": {
1945 "node": ">=4"
2172 "node": ">=4"
1946 }
2173 }
@@ -1953,6 +2180,14 @@
1953 "@babel/runtime": "^7.7.6"
2180 "@babel/runtime": "^7.7.6"
1954 }
2181 }
1955 },
2182 },
2183+ "node_modules/hoist-non-react-statics": {
2184+ "version": "3.3.2",
2185+ "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
2186+ "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==",
2187+ "dependencies": {
2188+ "react-is": "^16.7.0"
2189+ }
2190+ },
1956 "node_modules/immer": {
2191 "node_modules/immer": {
1957 "version": "9.0.15",
2192 "version": "9.0.15",
1958 "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.15.tgz",
2193 "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.15.tgz",
@@ -1962,6 +2197,21 @@
1962 "url": "https://opencollective.com/immer"
2197 "url": "https://opencollective.com/immer"
1963 }
2198 }
1964 },
2199 },
2200+ "node_modules/import-fresh": {
2201+ "version": "3.3.0",
2202+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
2203+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
2204+ "dependencies": {
2205+ "parent-module": "^1.0.0",
2206+ "resolve-from": "^4.0.0"
2207+ },
2208+ "engines": {
2209+ "node": ">=6"
2210+ },
2211+ "funding": {
2212+ "url": "https://github.com/sponsors/sindresorhus"
2213+ }
2214+ },
1965 "node_modules/inflight": {
2215 "node_modules/inflight": {
1966 "version": "1.0.6",
2216 "version": "1.0.6",
1967 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
2217 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
@@ -1984,6 +2234,11 @@
1984 "loose-envify": "^1.0.0"
2234 "loose-envify": "^1.0.0"
1985 }
2235 }
1986 },
2236 },
2237+ "node_modules/is-arrayish": {
2238+ "version": "0.2.1",
2239+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
2240+ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg=="
2241+ },
1987 "node_modules/is-binary-path": {
2242 "node_modules/is-binary-path": {
1988 "version": "2.1.0",
2243 "version": "2.1.0",
1989 "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
2244 "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
@@ -2000,7 +2255,6 @@
2000 "version": "2.9.0",
2255 "version": "2.9.0",
2001 "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz",
2256 "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz",
2002 "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==",
2257 "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==",
2003− "dev": true,
2004 "dependencies": {
2258 "dependencies": {
2005 "has": "^1.0.3"
2259 "has": "^1.0.3"
2006 },
2260 },
@@ -2052,7 +2306,6 @@
2052 "version": "2.5.2",
2306 "version": "2.5.2",
2053 "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
2307 "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
2054 "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
2308 "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
2055− "dev": true,
2056 "bin": {
2309 "bin": {
2057 "jsesc": "bin/jsesc"
2310 "jsesc": "bin/jsesc"
2058 },
2311 },
@@ -2060,11 +2313,15 @@
2060 "node": ">=4"
2313 "node": ">=4"
2061 }
2314 }
2062 },
2315 },
2316+ "node_modules/json-parse-even-better-errors": {
2317+ "version": "2.3.1",
2318+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
2319+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
2320+ },
2063 "node_modules/json5": {
2321 "node_modules/json5": {
2064 "version": "2.2.1",
2322 "version": "2.2.1",
2065 "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz",
2323 "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz",
2066 "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==",
2324 "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==",
2067− "dev": true,
2068 "bin": {
2325 "bin": {
2069 "json5": "lib/cli.js"
2326 "json5": "lib/cli.js"
2070 },
2327 },
@@ -2081,6 +2338,11 @@
2081 "node": ">=10"
2338 "node": ">=10"
2082 }
2339 }
2083 },
2340 },
2341+ "node_modules/lines-and-columns": {
2342+ "version": "1.2.4",
2343+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
2344+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="
2345+ },
2084 "node_modules/lodash.chunk": {
2346 "node_modules/lodash.chunk": {
2085 "version": "4.2.0",
2347 "version": "4.2.0",
2086 "resolved": "https://registry.npmjs.org/lodash.chunk/-/lodash.chunk-4.2.0.tgz",
2348 "resolved": "https://registry.npmjs.org/lodash.chunk/-/lodash.chunk-4.2.0.tgz",
@@ -2116,6 +2378,11 @@
2116 "remove-accents": "0.4.2"
2378 "remove-accents": "0.4.2"
2117 }
2379 }
2118 },
2380 },
2381+ "node_modules/memoize-one": {
2382+ "version": "5.2.1",
2383+ "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz",
2384+ "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q=="
2385+ },
2119 "node_modules/merge2": {
2386 "node_modules/merge2": {
2120 "version": "1.4.1",
2387 "version": "1.4.1",
2121 "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
2388 "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
@@ -2163,8 +2430,7 @@
2163 "node_modules/ms": {
2430 "node_modules/ms": {
2164 "version": "2.1.2",
2431 "version": "2.1.2",
2165 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
2432 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
2166− "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
2433+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
2167− "dev": true
2168 },
2434 },
2169 "node_modules/nano-time": {
2435 "node_modules/nano-time": {
2170 "version": "1.0.0",
2436 "version": "1.0.0",
@@ -2189,8 +2455,7 @@
2189 "node_modules/node-releases": {
2455 "node_modules/node-releases": {
2190 "version": "2.0.5",
2456 "version": "2.0.5",
2191 "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz",
2457 "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz",
2192− "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==",
2458+ "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q=="
2193− "dev": true
2194 },
2459 },
2195 "node_modules/normalize-path": {
2460 "node_modules/normalize-path": {
2196 "version": "3.0.0",
2461 "version": "3.0.0",
@@ -2240,6 +2505,34 @@
2240 "wrappy": "1"
2505 "wrappy": "1"
2241 }
2506 }
2242 },
2507 },
2508+ "node_modules/parent-module": {
2509+ "version": "1.0.1",
2510+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
2511+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
2512+ "dependencies": {
2513+ "callsites": "^3.0.0"
2514+ },
2515+ "engines": {
2516+ "node": ">=6"
2517+ }
2518+ },
2519+ "node_modules/parse-json": {
2520+ "version": "5.2.0",
2521+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
2522+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
2523+ "dependencies": {
2524+ "@babel/code-frame": "^7.0.0",
2525+ "error-ex": "^1.3.1",
2526+ "json-parse-even-better-errors": "^2.3.0",
2527+ "lines-and-columns": "^1.1.6"
2528+ },
2529+ "engines": {
2530+ "node": ">=8"
2531+ },
2532+ "funding": {
2533+ "url": "https://github.com/sponsors/sindresorhus"
2534+ }
2535+ },
2243 "node_modules/path-is-absolute": {
2536 "node_modules/path-is-absolute": {
2244 "version": "1.0.1",
2537 "version": "1.0.1",
2245 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
2538 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
@@ -2251,14 +2544,20 @@
2251 "node_modules/path-parse": {
2544 "node_modules/path-parse": {
2252 "version": "1.0.7",
2545 "version": "1.0.7",
2253 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
2546 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
2254− "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
2547+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
2255− "dev": true
2548+ },
2549+ "node_modules/path-type": {
2550+ "version": "4.0.0",
2551+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
2552+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
2553+ "engines": {
2554+ "node": ">=8"
2555+ }
2256 },
2556 },
2257 "node_modules/picocolors": {
2557 "node_modules/picocolors": {
2258 "version": "1.0.0",
2558 "version": "1.0.0",
2259 "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
2559 "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
2260− "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
2560+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
2261− "dev": true
2262 },
2561 },
2263 "node_modules/picomatch": {
2562 "node_modules/picomatch": {
2264 "version": "2.3.1",
2563 "version": "2.3.1",
@@ -2408,6 +2707,16 @@
2408 "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
2707 "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
2409 "dev": true
2708 "dev": true
2410 },
2709 },
2710+ "node_modules/prop-types": {
2711+ "version": "15.8.1",
2712+ "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
2713+ "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
2714+ "dependencies": {
2715+ "loose-envify": "^1.4.0",
2716+ "object-assign": "^4.1.1",
2717+ "react-is": "^16.13.1"
2718+ }
2719+ },
2411 "node_modules/queue-microtask": {
2720 "node_modules/queue-microtask": {
2412 "version": "1.2.3",
2721 "version": "1.2.3",
2413 "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
2722 "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
@@ -2465,6 +2774,26 @@
2465 "react": "17.0.2"
2774 "react": "17.0.2"
2466 }
2775 }
2467 },
2776 },
2777+ "node_modules/react-hook-form": {
2778+ "version": "7.33.1",
2779+ "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.33.1.tgz",
2780+ "integrity": "sha512-ydTfTxEJdvgjCZBj5DDXRc58oTEfnFupEwwTAQ9FSKzykEJkX+3CiAkGtAMiZG7IPWHuzgT6AOBfogiKhUvKgg==",
2781+ "engines": {
2782+ "node": ">=12.22.0"
2783+ },
2784+ "funding": {
2785+ "type": "opencollective",
2786+ "url": "https://opencollective.com/react-hook-form"
2787+ },
2788+ "peerDependencies": {
2789+ "react": "^16.8.0 || ^17 || ^18"
2790+ }
2791+ },
2792+ "node_modules/react-is": {
2793+ "version": "16.13.1",
2794+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
2795+ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
2796+ },
2468 "node_modules/react-query": {
2797 "node_modules/react-query": {
2469 "version": "3.39.1",
2798 "version": "3.39.1",
2470 "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.1.tgz",
2799 "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.1.tgz",
@@ -2578,6 +2907,24 @@
2578 "react-dom": ">=16.8"
2907 "react-dom": ">=16.8"
2579 }
2908 }
2580 },
2909 },
2910+ "node_modules/react-select": {
2911+ "version": "5.4.0",
2912+ "resolved": "https://registry.npmjs.org/react-select/-/react-select-5.4.0.tgz",
2913+ "integrity": "sha512-CjE9RFLUvChd5SdlfG4vqxZd55AZJRrLrHzkQyTYeHlpOztqcgnyftYAolJ0SGsBev6zAs6qFrjm6KU3eo2hzg==",
2914+ "dependencies": {
2915+ "@babel/runtime": "^7.12.0",
2916+ "@emotion/cache": "^11.4.0",
2917+ "@emotion/react": "^11.8.1",
2918+ "@types/react-transition-group": "^4.4.0",
2919+ "memoize-one": "^5.0.0",
2920+ "prop-types": "^15.6.0",
2921+ "react-transition-group": "^4.3.0"
2922+ },
2923+ "peerDependencies": {
2924+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
2925+ "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0"
2926+ }
2927+ },
2581 "node_modules/react-style-singleton": {
2928 "node_modules/react-style-singleton": {
2582 "version": "2.2.1",
2929 "version": "2.2.1",
2583 "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.1.tgz",
2930 "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.1.tgz",
@@ -2605,6 +2952,21 @@
2605 "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
2952 "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
2606 "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ=="
2953 "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ=="
2607 },
2954 },
2955+ "node_modules/react-transition-group": {
2956+ "version": "4.4.2",
2957+ "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.2.tgz",
2958+ "integrity": "sha512-/RNYfRAMlZwDSr6z4zNKV6xu53/e2BuaBbGhbyYIXTrmgu/bGHzmqOs7mJSJBHy9Ud+ApHx3QjrkKSp1pxvlFg==",
2959+ "dependencies": {
2960+ "@babel/runtime": "^7.5.5",
2961+ "dom-helpers": "^5.0.1",
2962+ "loose-envify": "^1.4.0",
2963+ "prop-types": "^15.6.2"
2964+ },
2965+ "peerDependencies": {
2966+ "react": ">=16.6.0",
2967+ "react-dom": ">=16.6.0"
2968+ }
2969+ },
2608 "node_modules/read-cache": {
2970 "node_modules/read-cache": {
2609 "version": "1.0.0",
2971 "version": "1.0.0",
2610 "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
2972 "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
@@ -2640,7 +3002,6 @@
2640 "version": "1.22.1",
3002 "version": "1.22.1",
2641 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz",
3003 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz",
2642 "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==",
3004 "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==",
2643− "dev": true,
2644 "dependencies": {
3005 "dependencies": {
2645 "is-core-module": "^2.9.0",
3006 "is-core-module": "^2.9.0",
2646 "path-parse": "^1.0.7",
3007 "path-parse": "^1.0.7",
@@ -2653,6 +3014,14 @@
2653 "url": "https://github.com/sponsors/ljharb"
3014 "url": "https://github.com/sponsors/ljharb"
2654 }
3015 }
2655 },
3016 },
3017+ "node_modules/resolve-from": {
3018+ "version": "4.0.0",
3019+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
3020+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
3021+ "engines": {
3022+ "node": ">=4"
3023+ }
3024+ },
2656 "node_modules/reusify": {
3025 "node_modules/reusify": {
2657 "version": "1.0.4",
3026 "version": "1.0.4",
2658 "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
3027 "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
@@ -2718,8 +3087,7 @@
2718 "node_modules/safe-buffer": {
3087 "node_modules/safe-buffer": {
2719 "version": "5.1.2",
3088 "version": "5.1.2",
2720 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
3089 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
2721− "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
3090+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
2722− "dev": true
2723 },
3091 },
2724 "node_modules/scheduler": {
3092 "node_modules/scheduler": {
2725 "version": "0.20.2",
3093 "version": "0.20.2",
@@ -2734,11 +3102,18 @@
2734 "version": "6.3.0",
3102 "version": "6.3.0",
2735 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
3103 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
2736 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
3104 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
2737− "dev": true,
2738 "bin": {
3105 "bin": {
2739 "semver": "bin/semver.js"
3106 "semver": "bin/semver.js"
2740 }
3107 }
2741 },
3108 },
3109+ "node_modules/source-map": {
3110+ "version": "0.5.7",
3111+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
3112+ "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
3113+ "engines": {
3114+ "node": ">=0.10.0"
3115+ }
3116+ },
2742 "node_modules/source-map-js": {
3117 "node_modules/source-map-js": {
2743 "version": "1.0.2",
3118 "version": "1.0.2",
2744 "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
3119 "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
@@ -2748,11 +3123,15 @@
2748 "node": ">=0.10.0"
3123 "node": ">=0.10.0"
2749 }
3124 }
2750 },
3125 },
3126+ "node_modules/stylis": {
3127+ "version": "4.0.13",
3128+ "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.13.tgz",
3129+ "integrity": "sha512-xGPXiFVl4YED9Jh7Euv2V220mriG9u4B2TA6Ybjc1catrstKD2PpIdU3U0RKpkVBC2EhmL/F0sPCr9vrFTNRag=="
3130+ },
2751 "node_modules/supports-color": {
3131 "node_modules/supports-color": {
2752 "version": "5.5.0",
3132 "version": "5.5.0",
2753 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
3133 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
2754 "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
3134 "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
2755− "dev": true,
2756 "dependencies": {
3135 "dependencies": {
2757 "has-flag": "^3.0.0"
3136 "has-flag": "^3.0.0"
2758 },
3137 },
@@ -2764,7 +3143,6 @@
2764 "version": "1.0.0",
3143 "version": "1.0.0",
2765 "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
3144 "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
2766 "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
3145 "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
2767− "dev": true,
2768 "engines": {
3146 "engines": {
2769 "node": ">= 0.4"
3147 "node": ">= 0.4"
2770 },
3148 },
@@ -2822,7 +3200,6 @@
2822 "version": "2.0.0",
3200 "version": "2.0.0",
2823 "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
3201 "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
2824 "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
3202 "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
2825− "dev": true,
2826 "engines": {
3203 "engines": {
2827 "node": ">=4"
3204 "node": ">=4"
2828 }
3205 }
@@ -2870,7 +3247,6 @@
2870 "version": "1.0.4",
3247 "version": "1.0.4",
2871 "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.4.tgz",
3248 "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.4.tgz",
2872 "integrity": "sha512-jnmO2BEGUjsMOe/Fg9u0oczOe/ppIDZPebzccl1yDWGLFP16Pa1/RM5wEoKYPG2zstNcDuAStejyxsOuKINdGA==",
3249 "integrity": "sha512-jnmO2BEGUjsMOe/Fg9u0oczOe/ppIDZPebzccl1yDWGLFP16Pa1/RM5wEoKYPG2zstNcDuAStejyxsOuKINdGA==",
2873− "dev": true,
2874 "funding": [
3250 "funding": [
2875 {
3251 {
2876 "type": "opencollective",
3252 "type": "opencollective",
@@ -3041,7 +3417,6 @@
3041 "version": "1.10.2",
3417 "version": "1.10.2",
3042 "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
3418 "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
3043 "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
3419 "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
3044− "dev": true,
3045 "engines": {
3420 "engines": {
3046 "node": ">= 6"
3421 "node": ">= 6"
3047 }
3422 }
@@ -3052,7 +3427,6 @@
3052 "version": "2.2.0",
3427 "version": "2.2.0",
3053 "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz",
3428 "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz",
3054 "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==",
3429 "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==",
3055− "dev": true,
3056 "requires": {
3430 "requires": {
3057 "@jridgewell/gen-mapping": "^0.1.0",
3431 "@jridgewell/gen-mapping": "^0.1.0",
3058 "@jridgewell/trace-mapping": "^0.3.9"
3432 "@jridgewell/trace-mapping": "^0.3.9"
@@ -3062,7 +3436,6 @@
3062 "version": "7.18.6",
3436 "version": "7.18.6",
3063 "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz",
3437 "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz",
3064 "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==",
3438 "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==",
3065− "dev": true,
3066 "requires": {
3439 "requires": {
3067 "@babel/highlight": "^7.18.6"
3440 "@babel/highlight": "^7.18.6"
3068 }
3441 }
@@ -3070,14 +3443,12 @@
3070 "@babel/compat-data": {
3443 "@babel/compat-data": {
3071 "version": "7.18.6",
3444 "version": "7.18.6",
3072 "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.6.tgz",
3445 "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.6.tgz",
3073− "integrity": "sha512-tzulrgDT0QD6U7BJ4TKVk2SDDg7wlP39P9yAx1RfLy7vP/7rsDRlWVfbWxElslu56+r7QOhB2NSDsabYYruoZQ==",
3446+ "integrity": "sha512-tzulrgDT0QD6U7BJ4TKVk2SDDg7wlP39P9yAx1RfLy7vP/7rsDRlWVfbWxElslu56+r7QOhB2NSDsabYYruoZQ=="
3074− "dev": true
3075 },
3447 },
3076 "@babel/core": {
3448 "@babel/core": {
3077 "version": "7.18.6",
3449 "version": "7.18.6",
3078 "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.6.tgz",
3450 "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.6.tgz",
3079 "integrity": "sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==",
3451 "integrity": "sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==",
3080− "dev": true,
3081 "requires": {
3452 "requires": {
3082 "@ampproject/remapping": "^2.1.0",
3453 "@ampproject/remapping": "^2.1.0",
3083 "@babel/code-frame": "^7.18.6",
3454 "@babel/code-frame": "^7.18.6",
@@ -3100,7 +3471,6 @@
3100 "version": "7.18.7",
3471 "version": "7.18.7",
3101 "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.7.tgz",
3472 "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.7.tgz",
3102 "integrity": "sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==",
3473 "integrity": "sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==",
3103− "dev": true,
3104 "requires": {
3474 "requires": {
3105 "@babel/types": "^7.18.7",
3475 "@babel/types": "^7.18.7",
3106 "@jridgewell/gen-mapping": "^0.3.2",
3476 "@jridgewell/gen-mapping": "^0.3.2",
@@ -3111,7 +3481,6 @@
3111 "version": "0.3.2",
3481 "version": "0.3.2",
3112 "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
3482 "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
3113 "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==",
3483 "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==",
3114− "dev": true,
3115 "requires": {
3484 "requires": {
3116 "@jridgewell/set-array": "^1.0.1",
3485 "@jridgewell/set-array": "^1.0.1",
3117 "@jridgewell/sourcemap-codec": "^1.4.10",
3486 "@jridgewell/sourcemap-codec": "^1.4.10",
@@ -3124,7 +3493,6 @@
3124 "version": "7.18.6",
3493 "version": "7.18.6",
3125 "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.6.tgz",
3494 "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.6.tgz",
3126 "integrity": "sha512-vFjbfhNCzqdeAtZflUFrG5YIFqGTqsctrtkZ1D/NB0mDW9TwW3GmmUepYY4G9wCET5rY5ugz4OGTcLd614IzQg==",
3495 "integrity": "sha512-vFjbfhNCzqdeAtZflUFrG5YIFqGTqsctrtkZ1D/NB0mDW9TwW3GmmUepYY4G9wCET5rY5ugz4OGTcLd614IzQg==",
3127− "dev": true,
3128 "requires": {
3496 "requires": {
3129 "@babel/compat-data": "^7.18.6",
3497 "@babel/compat-data": "^7.18.6",
3130 "@babel/helper-validator-option": "^7.18.6",
3498 "@babel/helper-validator-option": "^7.18.6",
@@ -3135,14 +3503,12 @@
3135 "@babel/helper-environment-visitor": {
3503 "@babel/helper-environment-visitor": {
3136 "version": "7.18.6",
3504 "version": "7.18.6",
3137 "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.6.tgz",
3505 "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.6.tgz",
3138− "integrity": "sha512-8n6gSfn2baOY+qlp+VSzsosjCVGFqWKmDF0cCWOybh52Dw3SEyoWR1KrhMJASjLwIEkkAufZ0xvr+SxLHSpy2Q==",
3506+ "integrity": "sha512-8n6gSfn2baOY+qlp+VSzsosjCVGFqWKmDF0cCWOybh52Dw3SEyoWR1KrhMJASjLwIEkkAufZ0xvr+SxLHSpy2Q=="
3139− "dev": true
3140 },
3507 },
3141 "@babel/helper-function-name": {
3508 "@babel/helper-function-name": {
3142 "version": "7.18.6",
3509 "version": "7.18.6",
3143 "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.6.tgz",
3510 "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.6.tgz",
3144 "integrity": "sha512-0mWMxV1aC97dhjCah5U5Ua7668r5ZmSC2DLfH2EZnf9c3/dHZKiFa5pRLMH5tjSl471tY6496ZWk/kjNONBxhw==",
3511 "integrity": "sha512-0mWMxV1aC97dhjCah5U5Ua7668r5ZmSC2DLfH2EZnf9c3/dHZKiFa5pRLMH5tjSl471tY6496ZWk/kjNONBxhw==",
3145− "dev": true,
3146 "requires": {
3512 "requires": {
3147 "@babel/template": "^7.18.6",
3513 "@babel/template": "^7.18.6",
3148 "@babel/types": "^7.18.6"
3514 "@babel/types": "^7.18.6"
@@ -3152,7 +3518,6 @@
3152 "version": "7.18.6",
3518 "version": "7.18.6",
3153 "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
3519 "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
3154 "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
3520 "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
3155− "dev": true,
3156 "requires": {
3521 "requires": {
3157 "@babel/types": "^7.18.6"
3522 "@babel/types": "^7.18.6"
3158 }
3523 }
@@ -3161,7 +3526,6 @@
3161 "version": "7.18.6",
3526 "version": "7.18.6",
3162 "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz",
3527 "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz",
3163 "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==",
3528 "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==",
3164− "dev": true,
3165 "requires": {
3529 "requires": {
3166 "@babel/types": "^7.18.6"
3530 "@babel/types": "^7.18.6"
3167 }
3531 }
@@ -3170,7 +3534,6 @@
3170 "version": "7.18.6",
3534 "version": "7.18.6",
3171 "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.6.tgz",
3535 "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.6.tgz",
3172 "integrity": "sha512-L//phhB4al5uucwzlimruukHB3jRd5JGClwRMD/ROrVjXfLqovYnvQrK/JK36WYyVwGGO7OD3kMyVTjx+WVPhw==",
3536 "integrity": "sha512-L//phhB4al5uucwzlimruukHB3jRd5JGClwRMD/ROrVjXfLqovYnvQrK/JK36WYyVwGGO7OD3kMyVTjx+WVPhw==",
3173− "dev": true,
3174 "requires": {
3537 "requires": {
3175 "@babel/helper-environment-visitor": "^7.18.6",
3538 "@babel/helper-environment-visitor": "^7.18.6",
3176 "@babel/helper-module-imports": "^7.18.6",
3539 "@babel/helper-module-imports": "^7.18.6",
@@ -3185,14 +3548,12 @@
3185 "@babel/helper-plugin-utils": {
3548 "@babel/helper-plugin-utils": {
3186 "version": "7.18.6",
3549 "version": "7.18.6",
3187 "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.6.tgz",
3550 "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.6.tgz",
3188− "integrity": "sha512-gvZnm1YAAxh13eJdkb9EWHBnF3eAub3XTLCZEehHT2kWxiKVRL64+ae5Y6Ivne0mVHmMYKT+xWgZO+gQhuLUBg==",
3551+ "integrity": "sha512-gvZnm1YAAxh13eJdkb9EWHBnF3eAub3XTLCZEehHT2kWxiKVRL64+ae5Y6Ivne0mVHmMYKT+xWgZO+gQhuLUBg=="
3189− "dev": true
3190 },
3552 },
3191 "@babel/helper-simple-access": {
3553 "@babel/helper-simple-access": {
3192 "version": "7.18.6",
3554 "version": "7.18.6",
3193 "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz",
3555 "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz",
3194 "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==",
3556 "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==",
3195− "dev": true,
3196 "requires": {
3557 "requires": {
3197 "@babel/types": "^7.18.6"
3558 "@babel/types": "^7.18.6"
3198 }
3559 }
@@ -3201,7 +3562,6 @@
3201 "version": "7.18.6",
3562 "version": "7.18.6",
3202 "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz",
3563 "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz",
3203 "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==",
3564 "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==",
3204− "dev": true,
3205 "requires": {
3565 "requires": {
3206 "@babel/types": "^7.18.6"
3566 "@babel/types": "^7.18.6"
3207 }
3567 }
@@ -3209,20 +3569,17 @@
3209 "@babel/helper-validator-identifier": {
3569 "@babel/helper-validator-identifier": {
3210 "version": "7.18.6",
3570 "version": "7.18.6",
3211 "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz",
3571 "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz",
3212− "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==",
3572+ "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g=="
3213− "dev": true
3214 },
3573 },
3215 "@babel/helper-validator-option": {
3574 "@babel/helper-validator-option": {
3216 "version": "7.18.6",
3575 "version": "7.18.6",
3217 "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz",
3576 "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz",
3218− "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==",
3577+ "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw=="
3219− "dev": true
3220 },
3578 },
3221 "@babel/helpers": {
3579 "@babel/helpers": {
3222 "version": "7.18.6",
3580 "version": "7.18.6",
3223 "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.6.tgz",
3581 "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.6.tgz",
3224 "integrity": "sha512-vzSiiqbQOghPngUYt/zWGvK3LAsPhz55vc9XNN0xAl2gV4ieShI2OQli5duxWHD+72PZPTKAcfcZDE1Cwc5zsQ==",
3582 "integrity": "sha512-vzSiiqbQOghPngUYt/zWGvK3LAsPhz55vc9XNN0xAl2gV4ieShI2OQli5duxWHD+72PZPTKAcfcZDE1Cwc5zsQ==",
3225− "dev": true,
3226 "requires": {
3583 "requires": {
3227 "@babel/template": "^7.18.6",
3584 "@babel/template": "^7.18.6",
3228 "@babel/traverse": "^7.18.6",
3585 "@babel/traverse": "^7.18.6",
@@ -3233,7 +3590,6 @@
3233 "version": "7.18.6",
3590 "version": "7.18.6",
3234 "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
3591 "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
3235 "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
3592 "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
3236− "dev": true,
3237 "requires": {
3593 "requires": {
3238 "@babel/helper-validator-identifier": "^7.18.6",
3594 "@babel/helper-validator-identifier": "^7.18.6",
3239 "chalk": "^2.0.0",
3595 "chalk": "^2.0.0",
@@ -3243,8 +3599,15 @@
3243 "@babel/parser": {
3599 "@babel/parser": {
3244 "version": "7.18.6",
3600 "version": "7.18.6",
3245 "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.6.tgz",
3601 "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.6.tgz",
3246− "integrity": "sha512-uQVSa9jJUe/G/304lXspfWVpKpK4euFLgGiMQFOCpM/bgcAdeoHwi/OQz23O9GK2osz26ZiXRRV9aV+Yl1O8tw==",
3602+ "integrity": "sha512-uQVSa9jJUe/G/304lXspfWVpKpK4euFLgGiMQFOCpM/bgcAdeoHwi/OQz23O9GK2osz26ZiXRRV9aV+Yl1O8tw=="
3247− "dev": true
3603+ },
3604+ "@babel/plugin-syntax-jsx": {
3605+ "version": "7.18.6",
3606+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz",
3607+ "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==",
3608+ "requires": {
3609+ "@babel/helper-plugin-utils": "^7.18.6"
3610+ }
3248 },
3611 },
3249 "@babel/plugin-transform-react-jsx-self": {
3612 "@babel/plugin-transform-react-jsx-self": {
3250 "version": "7.18.6",
3613 "version": "7.18.6",
@@ -3276,7 +3639,6 @@
3276 "version": "7.18.6",
3639 "version": "7.18.6",
3277 "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz",
3640 "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz",
3278 "integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==",
3641 "integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==",
3279− "dev": true,
3280 "requires": {
3642 "requires": {
3281 "@babel/code-frame": "^7.18.6",
3643 "@babel/code-frame": "^7.18.6",
3282 "@babel/parser": "^7.18.6",
3644 "@babel/parser": "^7.18.6",
@@ -3287,7 +3649,6 @@
3287 "version": "7.18.6",
3649 "version": "7.18.6",
3288 "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.6.tgz",
3650 "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.6.tgz",
3289 "integrity": "sha512-zS/OKyqmD7lslOtFqbscH6gMLFYOfG1YPqCKfAW5KrTeolKqvB8UelR49Fpr6y93kYkW2Ik00mT1LOGiAGvizw==",
3651 "integrity": "sha512-zS/OKyqmD7lslOtFqbscH6gMLFYOfG1YPqCKfAW5KrTeolKqvB8UelR49Fpr6y93kYkW2Ik00mT1LOGiAGvizw==",
3290− "dev": true,
3291 "requires": {
3652 "requires": {
3292 "@babel/code-frame": "^7.18.6",
3653 "@babel/code-frame": "^7.18.6",
3293 "@babel/generator": "^7.18.6",
3654 "@babel/generator": "^7.18.6",
@@ -3305,12 +3666,105 @@
3305 "version": "7.18.7",
3666 "version": "7.18.7",
3306 "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.7.tgz",
3667 "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.7.tgz",
3307 "integrity": "sha512-QG3yxTcTIBoAcQmkCs+wAPYZhu7Dk9rXKacINfNbdJDNERTbLQbHGyVG8q/YGMPeCJRIhSY0+fTc5+xuh6WPSQ==",
3668 "integrity": "sha512-QG3yxTcTIBoAcQmkCs+wAPYZhu7Dk9rXKacINfNbdJDNERTbLQbHGyVG8q/YGMPeCJRIhSY0+fTc5+xuh6WPSQ==",
3308− "dev": true,
3309 "requires": {
3669 "requires": {
3310 "@babel/helper-validator-identifier": "^7.18.6",
3670 "@babel/helper-validator-identifier": "^7.18.6",
3311 "to-fast-properties": "^2.0.0"
3671 "to-fast-properties": "^2.0.0"
3312 }
3672 }
3313 },
3673 },
3674+ "@emotion/babel-plugin": {
3675+ "version": "11.9.2",
3676+ "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.9.2.tgz",
3677+ "integrity": "sha512-Pr/7HGH6H6yKgnVFNEj2MVlreu3ADqftqjqwUvDy/OJzKFgxKeTQ+eeUf20FOTuHVkDON2iNa25rAXVYtWJCjw==",
3678+ "requires": {
3679+ "@babel/helper-module-imports": "^7.12.13",
3680+ "@babel/plugin-syntax-jsx": "^7.12.13",
3681+ "@babel/runtime": "^7.13.10",
3682+ "@emotion/hash": "^0.8.0",
3683+ "@emotion/memoize": "^0.7.5",
3684+ "@emotion/serialize": "^1.0.2",
3685+ "babel-plugin-macros": "^2.6.1",
3686+ "convert-source-map": "^1.5.0",
3687+ "escape-string-regexp": "^4.0.0",
3688+ "find-root": "^1.1.0",
3689+ "source-map": "^0.5.7",
3690+ "stylis": "4.0.13"
3691+ },
3692+ "dependencies": {
3693+ "escape-string-regexp": {
3694+ "version": "4.0.0",
3695+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
3696+ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA=="
3697+ }
3698+ }
3699+ },
3700+ "@emotion/cache": {
3701+ "version": "11.9.3",
3702+ "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.9.3.tgz",
3703+ "integrity": "sha512-0dgkI/JKlCXa+lEXviaMtGBL0ynpx4osh7rjOXE71q9bIF8G+XhJgvi+wDu0B0IdCVx37BffiwXlN9I3UuzFvg==",
3704+ "requires": {
3705+ "@emotion/memoize": "^0.7.4",
3706+ "@emotion/sheet": "^1.1.1",
3707+ "@emotion/utils": "^1.0.0",
3708+ "@emotion/weak-memoize": "^0.2.5",
3709+ "stylis": "4.0.13"
3710+ }
3711+ },
3712+ "@emotion/hash": {
3713+ "version": "0.8.0",
3714+ "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz",
3715+ "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow=="
3716+ },
3717+ "@emotion/memoize": {
3718+ "version": "0.7.5",
3719+ "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.5.tgz",
3720+ "integrity": "sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ=="
3721+ },
3722+ "@emotion/react": {
3723+ "version": "11.9.3",
3724+ "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.9.3.tgz",
3725+ "integrity": "sha512-g9Q1GcTOlzOEjqwuLF/Zd9LC+4FljjPjDfxSM7KmEakm+hsHXk+bYZ2q+/hTJzr0OUNkujo72pXLQvXj6H+GJQ==",
3726+ "requires": {
3727+ "@babel/runtime": "^7.13.10",
3728+ "@emotion/babel-plugin": "^11.7.1",
3729+ "@emotion/cache": "^11.9.3",
3730+ "@emotion/serialize": "^1.0.4",
3731+ "@emotion/utils": "^1.1.0",
3732+ "@emotion/weak-memoize": "^0.2.5",
3733+ "hoist-non-react-statics": "^3.3.1"
3734+ }
3735+ },
3736+ "@emotion/serialize": {
3737+ "version": "1.0.4",
3738+ "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.0.4.tgz",
3739+ "integrity": "sha512-1JHamSpH8PIfFwAMryO2bNka+y8+KA5yga5Ocf2d7ZEiJjb7xlLW7aknBGZqJLajuLOvJ+72vN+IBSwPlXD1Pg==",
3740+ "requires": {
3741+ "@emotion/hash": "^0.8.0",
3742+ "@emotion/memoize": "^0.7.4",
3743+ "@emotion/unitless": "^0.7.5",
3744+ "@emotion/utils": "^1.0.0",
3745+ "csstype": "^3.0.2"
3746+ }
3747+ },
3748+ "@emotion/sheet": {
3749+ "version": "1.1.1",
3750+ "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.1.1.tgz",
3751+ "integrity": "sha512-J3YPccVRMiTZxYAY0IOq3kd+hUP8idY8Kz6B/Cyo+JuXq52Ek+zbPbSQUrVQp95aJ+lsAW7DPL1P2Z+U1jGkKA=="
3752+ },
3753+ "@emotion/unitless": {
3754+ "version": "0.7.5",
3755+ "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz",
3756+ "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg=="
3757+ },
3758+ "@emotion/utils": {
3759+ "version": "1.1.0",
3760+ "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.1.0.tgz",
3761+ "integrity": "sha512-iRLa/Y4Rs5H/f2nimczYmS5kFJEbpiVvgN3XVfZ022IYhuNA1IRSHEizcof88LtCTXtl9S2Cxt32KgaXEu72JQ=="
3762+ },
3763+ "@emotion/weak-memoize": {
3764+ "version": "0.2.5",
3765+ "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz",
3766+ "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA=="
3767+ },
3314 "@heroicons/react": {
3768 "@heroicons/react": {
3315 "version": "1.0.6",
3769 "version": "1.0.6",
3316 "resolved": "https://registry.npmjs.org/@heroicons/react/-/react-1.0.6.tgz",
3770 "resolved": "https://registry.npmjs.org/@heroicons/react/-/react-1.0.6.tgz",
@@ -3321,7 +3775,6 @@
3321 "version": "0.1.1",
3775 "version": "0.1.1",
3322 "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz",
3776 "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz",
3323 "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==",
3777 "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==",
3324− "dev": true,
3325 "requires": {
3778 "requires": {
3326 "@jridgewell/set-array": "^1.0.0",
3779 "@jridgewell/set-array": "^1.0.0",
3327 "@jridgewell/sourcemap-codec": "^1.4.10"
3780 "@jridgewell/sourcemap-codec": "^1.4.10"
@@ -3330,26 +3783,22 @@
3330 "@jridgewell/resolve-uri": {
3783 "@jridgewell/resolve-uri": {
3331 "version": "3.0.8",
3784 "version": "3.0.8",
3332 "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.8.tgz",
3785 "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.8.tgz",
3333− "integrity": "sha512-YK5G9LaddzGbcucK4c8h5tWFmMPBvRZ/uyWmN1/SbBdIvqGUdWGkJ5BAaccgs6XbzVLsqbPJrBSFwKv3kT9i7w==",
3786+ "integrity": "sha512-YK5G9LaddzGbcucK4c8h5tWFmMPBvRZ/uyWmN1/SbBdIvqGUdWGkJ5BAaccgs6XbzVLsqbPJrBSFwKv3kT9i7w=="
3334− "dev": true
3335 },
3787 },
3336 "@jridgewell/set-array": {
3788 "@jridgewell/set-array": {
3337 "version": "1.1.2",
3789 "version": "1.1.2",
3338 "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
3790 "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
3339− "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
3791+ "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw=="
3340− "dev": true
3341 },
3792 },
3342 "@jridgewell/sourcemap-codec": {
3793 "@jridgewell/sourcemap-codec": {
3343 "version": "1.4.14",
3794 "version": "1.4.14",
3344 "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
3795 "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
3345− "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==",
3796+ "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw=="
3346− "dev": true
3347 },
3797 },
3348 "@jridgewell/trace-mapping": {
3798 "@jridgewell/trace-mapping": {
3349 "version": "0.3.14",
3799 "version": "0.3.14",
3350 "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.14.tgz",
3800 "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.14.tgz",
3351 "integrity": "sha512-bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ==",
3801 "integrity": "sha512-bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ==",
3352− "dev": true,
3353 "requires": {
3802 "requires": {
3354 "@jridgewell/resolve-uri": "^3.0.3",
3803 "@jridgewell/resolve-uri": "^3.0.3",
3355 "@jridgewell/sourcemap-codec": "^1.4.10"
3804 "@jridgewell/sourcemap-codec": "^1.4.10"
@@ -3386,6 +3835,14 @@
3386 "fastq": "^1.6.0"
3835 "fastq": "^1.6.0"
3387 }
3836 }
3388 },
3837 },
3838+ "@radix-ui/number": {
3839+ "version": "0.1.0",
3840+ "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-0.1.0.tgz",
3841+ "integrity": "sha512-rpf6QiOWLHAkM4FEMYu9i+5Jr8cKT893+R4mPpcdsy4LD7omr9JfdOqj/h/xPA5+EcVrpMMlU6rrRYpUB5UI8g==",
3842+ "requires": {
3843+ "@babel/runtime": "^7.13.10"
3844+ }
3845+ },
3389 "@radix-ui/popper": {
3846 "@radix-ui/popper": {
3390 "version": "0.1.0",
3847 "version": "0.1.0",
3391 "resolved": "https://registry.npmjs.org/@radix-ui/popper/-/popper-0.1.0.tgz",
3848 "resolved": "https://registry.npmjs.org/@radix-ui/popper/-/popper-0.1.0.tgz",
@@ -3497,6 +3954,18 @@
3497 "@radix-ui/react-use-layout-effect": "0.1.0"
3954 "@radix-ui/react-use-layout-effect": "0.1.0"
3498 }
3955 }
3499 },
3956 },
3957+ "@radix-ui/react-label": {
3958+ "version": "0.1.5",
3959+ "resolved": "https://registry.npmjs.org/@radix-ui/react-label/-/react-label-0.1.5.tgz",
3960+ "integrity": "sha512-Au9+n4/DhvjR0IHhvZ1LPdx/OW+3CGDie30ZyCkbSHIuLp4/CV4oPPGBwJ1vY99Jog3zyQhsGww9MXj8O9Aj/A==",
3961+ "requires": {
3962+ "@babel/runtime": "^7.13.10",
3963+ "@radix-ui/react-compose-refs": "0.1.0",
3964+ "@radix-ui/react-context": "0.1.1",
3965+ "@radix-ui/react-id": "0.1.5",
3966+ "@radix-ui/react-primitive": "0.1.4"
3967+ }
3968+ },
3500 "@radix-ui/react-menu": {
3969 "@radix-ui/react-menu": {
3501 "version": "0.1.6",
3970 "version": "0.1.6",
3502 "resolved": "https://registry.npmjs.org/@radix-ui/react-menu/-/react-menu-0.1.6.tgz",
3971 "resolved": "https://registry.npmjs.org/@radix-ui/react-menu/-/react-menu-0.1.6.tgz",
@@ -3583,6 +4052,32 @@
3583 "@radix-ui/react-use-controllable-state": "0.1.0"
4052 "@radix-ui/react-use-controllable-state": "0.1.0"
3584 }
4053 }
3585 },
4054 },
4055+ "@radix-ui/react-select": {
4056+ "version": "0.1.1",
4057+ "resolved": "https://registry.npmjs.org/@radix-ui/react-select/-/react-select-0.1.1.tgz",
4058+ "integrity": "sha512-xY3jLz2c6ZBHflldGsA79bE/swUfRMpiRPQf+JDihOufsd3z5uW22PFe0MS5bGZiIpK6aAZAvwqEd2Bu7hqp8w==",
4059+ "requires": {
4060+ "@babel/runtime": "^7.13.10",
4061+ "@radix-ui/number": "0.1.0",
4062+ "@radix-ui/primitive": "0.1.0",
4063+ "@radix-ui/react-collection": "0.1.4",
4064+ "@radix-ui/react-compose-refs": "0.1.0",
4065+ "@radix-ui/react-context": "0.1.1",
4066+ "@radix-ui/react-dismissable-layer": "0.1.5",
4067+ "@radix-ui/react-focus-scope": "0.1.4",
4068+ "@radix-ui/react-id": "0.1.5",
4069+ "@radix-ui/react-label": "0.1.5",
4070+ "@radix-ui/react-portal": "0.1.4",
4071+ "@radix-ui/react-primitive": "0.1.4",
4072+ "@radix-ui/react-use-callback-ref": "0.1.0",
4073+ "@radix-ui/react-use-controllable-state": "0.1.0",
4074+ "@radix-ui/react-use-layout-effect": "0.1.0",
4075+ "@radix-ui/react-use-previous": "0.1.1",
4076+ "@radix-ui/react-visually-hidden": "0.1.4",
4077+ "aria-hidden": "^1.1.1",
4078+ "react-remove-scroll": "^2.4.0"
4079+ }
4080+ },
3586 "@radix-ui/react-slot": {
4081 "@radix-ui/react-slot": {
3587 "version": "0.1.2",
4082 "version": "0.1.2",
3588 "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-0.1.2.tgz",
4083 "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-0.1.2.tgz",
@@ -3668,6 +4163,14 @@
3668 "@babel/runtime": "^7.13.10"
4163 "@babel/runtime": "^7.13.10"
3669 }
4164 }
3670 },
4165 },
4166+ "@radix-ui/react-use-previous": {
4167+ "version": "0.1.1",
4168+ "resolved": "https://registry.npmjs.org/@radix-ui/react-use-previous/-/react-use-previous-0.1.1.tgz",
4169+ "integrity": "sha512-O/ZgrDBr11dR8rhO59ED8s5zIXBRFi8MiS+CmFGfi7MJYdLbfqVOmQU90Ghf87aifEgWe6380LA69KBneaShAg==",
4170+ "requires": {
4171+ "@babel/runtime": "^7.13.10"
4172+ }
4173+ },
3671 "@radix-ui/react-use-rect": {
4174 "@radix-ui/react-use-rect": {
3672 "version": "0.1.1",
4175 "version": "0.1.1",
3673 "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-0.1.1.tgz",
4176 "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-0.1.1.tgz",
@@ -3685,6 +4188,15 @@
3685 "@babel/runtime": "^7.13.10"
4188 "@babel/runtime": "^7.13.10"
3686 }
4189 }
3687 },
4190 },
4191+ "@radix-ui/react-visually-hidden": {
4192+ "version": "0.1.4",
4193+ "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-0.1.4.tgz",
4194+ "integrity": "sha512-K/q6AEEzqeeEq/T0NPChvBqnwlp8Tl4NnQdrI/y8IOY7BRR+Ug0PEsVk6g48HJ7cA1//COugdxXXVVK/m0X1mA==",
4195+ "requires": {
4196+ "@babel/runtime": "^7.13.10",
4197+ "@radix-ui/react-primitive": "0.1.4"
4198+ }
4199+ },
3688 "@radix-ui/rect": {
4200 "@radix-ui/rect": {
3689 "version": "0.1.1",
4201 "version": "0.1.1",
3690 "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-0.1.1.tgz",
4202 "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-0.1.1.tgz",
@@ -3718,17 +4230,20 @@
3718 "@types/lodash": "*"
4230 "@types/lodash": "*"
3719 }
4231 }
3720 },
4232 },
4233+ "@types/parse-json": {
4234+ "version": "4.0.0",
4235+ "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
4236+ "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA=="
4237+ },
3721 "@types/prop-types": {
4238 "@types/prop-types": {
3722 "version": "15.7.5",
4239 "version": "15.7.5",
3723 "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz",
4240 "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz",
3724− "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==",
4241+ "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w=="
3725− "devOptional": true
3726 },
4242 },
3727 "@types/react": {
4243 "@types/react": {
3728 "version": "17.0.47",
4244 "version": "17.0.47",
3729 "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.47.tgz",
4245 "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.47.tgz",
3730 "integrity": "sha512-mk0BL8zBinf2ozNr3qPnlu1oyVTYq+4V7WA76RgxUAtf0Em/Wbid38KN6n4abEkvO4xMTBWmnP1FtQzgkEiJoA==",
4246 "integrity": "sha512-mk0BL8zBinf2ozNr3qPnlu1oyVTYq+4V7WA76RgxUAtf0Em/Wbid38KN6n4abEkvO4xMTBWmnP1FtQzgkEiJoA==",
3731− "devOptional": true,
3732 "requires": {
4247 "requires": {
3733 "@types/prop-types": "*",
4248 "@types/prop-types": "*",
3734 "@types/scheduler": "*",
4249 "@types/scheduler": "*",
@@ -3744,11 +4259,18 @@
3744 "@types/react": "^17"
4259 "@types/react": "^17"
3745 }
4260 }
3746 },
4261 },
4262+ "@types/react-transition-group": {
4263+ "version": "4.4.5",
4264+ "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.5.tgz",
4265+ "integrity": "sha512-juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA==",
4266+ "requires": {
4267+ "@types/react": "*"
4268+ }
4269+ },
3747 "@types/scheduler": {
4270 "@types/scheduler": {
3748 "version": "0.16.2",
4271 "version": "0.16.2",
3749 "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz",
4272 "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz",
3750− "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==",
4273+ "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew=="
3751− "devOptional": true
3752 },
4274 },
3753 "@urbit/api": {
4275 "@urbit/api": {
3754 "version": "2.1.1",
4276 "version": "2.1.1",
@@ -3823,7 +4345,6 @@
3823 "version": "3.2.1",
4345 "version": "3.2.1",
3824 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
4346 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
3825 "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
4347 "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
3826− "dev": true,
3827 "requires": {
4348 "requires": {
3828 "color-convert": "^1.9.0"
4349 "color-convert": "^1.9.0"
3829 }
4350 }
@@ -3866,6 +4387,16 @@
3866 "postcss-value-parser": "^4.2.0"
4387 "postcss-value-parser": "^4.2.0"
3867 }
4388 }
3868 },
4389 },
4390+ "babel-plugin-macros": {
4391+ "version": "2.8.0",
4392+ "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz",
4393+ "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==",
4394+ "requires": {
4395+ "@babel/runtime": "^7.7.2",
4396+ "cosmiconfig": "^6.0.0",
4397+ "resolve": "^1.12.0"
4398+ }
4399+ },
3869 "balanced-match": {
4400 "balanced-match": {
3870 "version": "1.0.2",
4401 "version": "1.0.2",
3871 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
4402 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
@@ -3929,7 +4460,6 @@
3929 "version": "4.21.1",
4460 "version": "4.21.1",
3930 "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.1.tgz",
4461 "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.1.tgz",
3931 "integrity": "sha512-Nq8MFCSrnJXSc88yliwlzQe3qNe3VntIjhsArW9IJOEPSHNx23FalwApUVbzAWABLhYJJ7y8AynWI/XM8OdfjQ==",
4462 "integrity": "sha512-Nq8MFCSrnJXSc88yliwlzQe3qNe3VntIjhsArW9IJOEPSHNx23FalwApUVbzAWABLhYJJ7y8AynWI/XM8OdfjQ==",
3932− "dev": true,
3933 "requires": {
4463 "requires": {
3934 "caniuse-lite": "^1.0.30001359",
4464 "caniuse-lite": "^1.0.30001359",
3935 "electron-to-chromium": "^1.4.172",
4465 "electron-to-chromium": "^1.4.172",
@@ -3937,6 +4467,11 @@
3937 "update-browserslist-db": "^1.0.4"
4467 "update-browserslist-db": "^1.0.4"
3938 }
4468 }
3939 },
4469 },
4470+ "callsites": {
4471+ "version": "3.1.0",
4472+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
4473+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ=="
4474+ },
3940 "camelcase-css": {
4475 "camelcase-css": {
3941 "version": "2.0.1",
4476 "version": "2.0.1",
3942 "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
4477 "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
@@ -3946,14 +4481,12 @@
3946 "caniuse-lite": {
4481 "caniuse-lite": {
3947 "version": "1.0.30001361",
4482 "version": "1.0.30001361",
3948 "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001361.tgz",
4483 "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001361.tgz",
3949− "integrity": "sha512-ybhCrjNtkFji1/Wto6SSJKkWk6kZgVQsDq5QI83SafsF6FXv2JB4df9eEdH6g8sdGgqTXrFLjAxqBGgYoU3azQ==",
4484+ "integrity": "sha512-ybhCrjNtkFji1/Wto6SSJKkWk6kZgVQsDq5QI83SafsF6FXv2JB4df9eEdH6g8sdGgqTXrFLjAxqBGgYoU3azQ=="
3950− "dev": true
3951 },
4485 },
3952 "chalk": {
4486 "chalk": {
3953 "version": "2.4.2",
4487 "version": "2.4.2",
3954 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
4488 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
3955 "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
4489 "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
3956− "dev": true,
3957 "requires": {
4490 "requires": {
3958 "ansi-styles": "^3.2.1",
4491 "ansi-styles": "^3.2.1",
3959 "escape-string-regexp": "^1.0.5",
4492 "escape-string-regexp": "^1.0.5",
@@ -3996,7 +4529,6 @@
3996 "version": "1.9.3",
4529 "version": "1.9.3",
3997 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
4530 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
3998 "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
4531 "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
3999− "dev": true,
4000 "requires": {
4532 "requires": {
4001 "color-name": "1.1.3"
4533 "color-name": "1.1.3"
4002 }
4534 }
@@ -4004,8 +4536,7 @@
4004 "color-name": {
4536 "color-name": {
4005 "version": "1.1.3",
4537 "version": "1.1.3",
4006 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
4538 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
4007− "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
4539+ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="
4008− "dev": true
4009 },
4540 },
4010 "concat-map": {
4541 "concat-map": {
4011 "version": "0.0.1",
4542 "version": "0.0.1",
@@ -4022,7 +4553,6 @@
4022 "version": "1.8.0",
4553 "version": "1.8.0",
4023 "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
4554 "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
4024 "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
4555 "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
4025− "dev": true,
4026 "requires": {
4556 "requires": {
4027 "safe-buffer": "~5.1.1"
4557 "safe-buffer": "~5.1.1"
4028 }
4558 }
@@ -4032,6 +4562,18 @@
4032 "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.23.3.tgz",
4562 "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.23.3.tgz",
4033 "integrity": "sha512-oAKwkj9xcWNBAvGbT//WiCdOMpb9XQG92/Fe3ABFM/R16BsHgePG00mFOgKf7IsCtfj8tA1kHtf/VwErhriz5Q=="
4563 "integrity": "sha512-oAKwkj9xcWNBAvGbT//WiCdOMpb9XQG92/Fe3ABFM/R16BsHgePG00mFOgKf7IsCtfj8tA1kHtf/VwErhriz5Q=="
4034 },
4564 },
4565+ "cosmiconfig": {
4566+ "version": "6.0.0",
4567+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz",
4568+ "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==",
4569+ "requires": {
4570+ "@types/parse-json": "^4.0.0",
4571+ "import-fresh": "^3.1.0",
4572+ "parse-json": "^5.0.0",
4573+ "path-type": "^4.0.0",
4574+ "yaml": "^1.7.2"
4575+ }
4576+ },
4035 "cssesc": {
4577 "cssesc": {
4036 "version": "3.0.0",
4578 "version": "3.0.0",
4037 "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
4579 "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
@@ -4047,7 +4589,6 @@
4047 "version": "4.3.4",
4589 "version": "4.3.4",
4048 "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
4590 "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
4049 "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
4591 "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
4050− "dev": true,
4051 "requires": {
4592 "requires": {
4052 "ms": "2.1.2"
4593 "ms": "2.1.2"
4053 }
4594 }
@@ -4091,11 +4632,27 @@
4091 "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
4632 "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
4092 "dev": true
4633 "dev": true
4093 },
4634 },
4635+ "dom-helpers": {
4636+ "version": "5.2.1",
4637+ "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz",
4638+ "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==",
4639+ "requires": {
4640+ "@babel/runtime": "^7.8.7",
4641+ "csstype": "^3.0.2"
4642+ }
4643+ },
4094 "electron-to-chromium": {
4644 "electron-to-chromium": {
4095 "version": "1.4.176",
4645 "version": "1.4.176",
4096 "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.176.tgz",
4646 "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.176.tgz",
4097− "integrity": "sha512-92JdgyRlcNDwuy75MjuFSb3clt6DGJ2IXSpg0MCjKd3JV9eSmuUAIyWiGAp/EtT0z2D4rqbYqThQLV90maH3Zw==",
4647+ "integrity": "sha512-92JdgyRlcNDwuy75MjuFSb3clt6DGJ2IXSpg0MCjKd3JV9eSmuUAIyWiGAp/EtT0z2D4rqbYqThQLV90maH3Zw=="
4098− "dev": true
4648+ },
4649+ "error-ex": {
4650+ "version": "1.3.2",
4651+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
4652+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
4653+ "requires": {
4654+ "is-arrayish": "^0.2.1"
4655+ }
4099 },
4656 },
4100 "esbuild": {
4657 "esbuild": {
4101 "version": "0.14.48",
4658 "version": "0.14.48",
@@ -4268,14 +4825,12 @@
4268 "escalade": {
4825 "escalade": {
4269 "version": "3.1.1",
4826 "version": "3.1.1",
4270 "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
4827 "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
4271− "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
4828+ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw=="
4272− "dev": true
4273 },
4829 },
4274 "escape-string-regexp": {
4830 "escape-string-regexp": {
4275 "version": "1.0.5",
4831 "version": "1.0.5",
4276 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
4832 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
4277− "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
4833+ "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg=="
4278− "dev": true
4279 },
4834 },
4280 "estree-walker": {
4835 "estree-walker": {
4281 "version": "2.0.2",
4836 "version": "2.0.2",
@@ -4325,6 +4880,11 @@
4325 "to-regex-range": "^5.0.1"
4880 "to-regex-range": "^5.0.1"
4326 }
4881 }
4327 },
4882 },
4883+ "find-root": {
4884+ "version": "1.1.0",
4885+ "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz",
4886+ "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng=="
4887+ },
4328 "fraction.js": {
4888 "fraction.js": {
4329 "version": "4.2.0",
4889 "version": "4.2.0",
4330 "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz",
4890 "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz",
@@ -4346,14 +4906,12 @@
4346 "function-bind": {
4906 "function-bind": {
4347 "version": "1.1.1",
4907 "version": "1.1.1",
4348 "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
4908 "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
4349− "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
4909+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
4350− "dev": true
4351 },
4910 },
4352 "gensync": {
4911 "gensync": {
4353 "version": "1.0.0-beta.2",
4912 "version": "1.0.0-beta.2",
4354 "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
4913 "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
4355− "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
4914+ "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg=="
4356− "dev": true
4357 },
4915 },
4358 "get-nonce": {
4916 "get-nonce": {
4359 "version": "1.0.1",
4917 "version": "1.0.1",
@@ -4385,14 +4943,12 @@
4385 "globals": {
4943 "globals": {
4386 "version": "11.12.0",
4944 "version": "11.12.0",
4387 "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
4945 "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
4388− "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
4946+ "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA=="
4389− "dev": true
4390 },
4947 },
4391 "has": {
4948 "has": {
4392 "version": "1.0.3",
4949 "version": "1.0.3",
4393 "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
4950 "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
4394 "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
4951 "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
4395− "dev": true,
4396 "requires": {
4952 "requires": {
4397 "function-bind": "^1.1.1"
4953 "function-bind": "^1.1.1"
4398 }
4954 }
@@ -4400,8 +4956,7 @@
4400 "has-flag": {
4956 "has-flag": {
4401 "version": "3.0.0",
4957 "version": "3.0.0",
4402 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
4958 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
4403− "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
4959+ "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw=="
4404− "dev": true
4405 },
4960 },
4406 "history": {
4961 "history": {
4407 "version": "5.3.0",
4962 "version": "5.3.0",
@@ -4411,11 +4966,28 @@
4411 "@babel/runtime": "^7.7.6"
4966 "@babel/runtime": "^7.7.6"
4412 }
4967 }
4413 },
4968 },
4969+ "hoist-non-react-statics": {
4970+ "version": "3.3.2",
4971+ "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
4972+ "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==",
4973+ "requires": {
4974+ "react-is": "^16.7.0"
4975+ }
4976+ },
4414 "immer": {
4977 "immer": {
4415 "version": "9.0.15",
4978 "version": "9.0.15",
4416 "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.15.tgz",
4979 "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.15.tgz",
4417 "integrity": "sha512-2eB/sswms9AEUSkOm4SbV5Y7Vmt/bKRwByd52jfLkW4OLYeaTP3EEiJ9agqU0O/tq6Dk62Zfj+TJSqfm1rLVGQ=="
4980 "integrity": "sha512-2eB/sswms9AEUSkOm4SbV5Y7Vmt/bKRwByd52jfLkW4OLYeaTP3EEiJ9agqU0O/tq6Dk62Zfj+TJSqfm1rLVGQ=="
4418 },
4981 },
4982+ "import-fresh": {
4983+ "version": "3.3.0",
4984+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
4985+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
4986+ "requires": {
4987+ "parent-module": "^1.0.0",
4988+ "resolve-from": "^4.0.0"
4989+ }
4990+ },
4419 "inflight": {
4991 "inflight": {
4420 "version": "1.0.6",
4992 "version": "1.0.6",
4421 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
4993 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
@@ -4438,6 +5010,11 @@
4438 "loose-envify": "^1.0.0"
5010 "loose-envify": "^1.0.0"
4439 }
5011 }
4440 },
5012 },
5013+ "is-arrayish": {
5014+ "version": "0.2.1",
5015+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
5016+ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg=="
5017+ },
4441 "is-binary-path": {
5018 "is-binary-path": {
4442 "version": "2.1.0",
5019 "version": "2.1.0",
4443 "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
5020 "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
@@ -4451,7 +5028,6 @@
4451 "version": "2.9.0",
5028 "version": "2.9.0",
4452 "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz",
5029 "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz",
4453 "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==",
5030 "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==",
4454− "dev": true,
4455 "requires": {
5031 "requires": {
4456 "has": "^1.0.3"
5032 "has": "^1.0.3"
4457 }
5033 }
@@ -4490,14 +5066,17 @@
4490 "jsesc": {
5066 "jsesc": {
4491 "version": "2.5.2",
5067 "version": "2.5.2",
4492 "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
5068 "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
4493− "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
5069+ "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA=="
4494− "dev": true
5070+ },
5071+ "json-parse-even-better-errors": {
5072+ "version": "2.3.1",
5073+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
5074+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
4495 },
5075 },
4496 "json5": {
5076 "json5": {
4497 "version": "2.2.1",
5077 "version": "2.2.1",
4498 "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz",
5078 "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz",
4499− "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==",
5079+ "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA=="
4500− "dev": true
4501 },
5080 },
4502 "lilconfig": {
5081 "lilconfig": {
4503 "version": "2.0.5",
5082 "version": "2.0.5",
@@ -4505,6 +5084,11 @@
4505 "integrity": "sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg==",
5084 "integrity": "sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg==",
4506 "dev": true
5085 "dev": true
4507 },
5086 },
5087+ "lines-and-columns": {
5088+ "version": "1.2.4",
5089+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
5090+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="
5091+ },
4508 "lodash.chunk": {
5092 "lodash.chunk": {
4509 "version": "4.2.0",
5093 "version": "4.2.0",
4510 "resolved": "https://registry.npmjs.org/lodash.chunk/-/lodash.chunk-4.2.0.tgz",
5094 "resolved": "https://registry.npmjs.org/lodash.chunk/-/lodash.chunk-4.2.0.tgz",
@@ -4537,6 +5121,11 @@
4537 "remove-accents": "0.4.2"
5121 "remove-accents": "0.4.2"
4538 }
5122 }
4539 },
5123 },
5124+ "memoize-one": {
5125+ "version": "5.2.1",
5126+ "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz",
5127+ "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q=="
5128+ },
4540 "merge2": {
5129 "merge2": {
4541 "version": "1.4.1",
5130 "version": "1.4.1",
4542 "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
5131 "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
@@ -4575,8 +5164,7 @@
4575 "ms": {
5164 "ms": {
4576 "version": "2.1.2",
5165 "version": "2.1.2",
4577 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
5166 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
4578− "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
5167+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
4579− "dev": true
4580 },
5168 },
4581 "nano-time": {
5169 "nano-time": {
4582 "version": "1.0.0",
5170 "version": "1.0.0",
@@ -4595,8 +5183,7 @@
4595 "node-releases": {
5183 "node-releases": {
4596 "version": "2.0.5",
5184 "version": "2.0.5",
4597 "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz",
5185 "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz",
4598− "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==",
5186+ "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q=="
4599− "dev": true
4600 },
5187 },
4601 "normalize-path": {
5188 "normalize-path": {
4602 "version": "3.0.0",
5189 "version": "3.0.0",
@@ -4634,6 +5221,25 @@
4634 "wrappy": "1"
5221 "wrappy": "1"
4635 }
5222 }
4636 },
5223 },
5224+ "parent-module": {
5225+ "version": "1.0.1",
5226+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
5227+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
5228+ "requires": {
5229+ "callsites": "^3.0.0"
5230+ }
5231+ },
5232+ "parse-json": {
5233+ "version": "5.2.0",
5234+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
5235+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
5236+ "requires": {
5237+ "@babel/code-frame": "^7.0.0",
5238+ "error-ex": "^1.3.1",
5239+ "json-parse-even-better-errors": "^2.3.0",
5240+ "lines-and-columns": "^1.1.6"
5241+ }
5242+ },
4637 "path-is-absolute": {
5243 "path-is-absolute": {
4638 "version": "1.0.1",
5244 "version": "1.0.1",
4639 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
5245 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
@@ -4642,14 +5248,17 @@
4642 "path-parse": {
5248 "path-parse": {
4643 "version": "1.0.7",
5249 "version": "1.0.7",
4644 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
5250 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
4645− "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
5251+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
4646− "dev": true
5252+ },
5253+ "path-type": {
5254+ "version": "4.0.0",
5255+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
5256+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw=="
4647 },
5257 },
4648 "picocolors": {
5258 "picocolors": {
4649 "version": "1.0.0",
5259 "version": "1.0.0",
4650 "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
5260 "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
4651− "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
5261+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
4652− "dev": true
4653 },
5262 },
4654 "picomatch": {
5263 "picomatch": {
4655 "version": "2.3.1",
5264 "version": "2.3.1",
@@ -4729,6 +5338,16 @@
4729 "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
5338 "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
4730 "dev": true
5339 "dev": true
4731 },
5340 },
5341+ "prop-types": {
5342+ "version": "15.8.1",
5343+ "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
5344+ "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
5345+ "requires": {
5346+ "loose-envify": "^1.4.0",
5347+ "object-assign": "^4.1.1",
5348+ "react-is": "^16.13.1"
5349+ }
5350+ },
4732 "queue-microtask": {
5351 "queue-microtask": {
4733 "version": "1.2.3",
5352 "version": "1.2.3",
4734 "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
5353 "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
@@ -4760,6 +5379,17 @@
4760 "scheduler": "^0.20.2"
5379 "scheduler": "^0.20.2"
4761 }
5380 }
4762 },
5381 },
5382+ "react-hook-form": {
5383+ "version": "7.33.1",
5384+ "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.33.1.tgz",
5385+ "integrity": "sha512-ydTfTxEJdvgjCZBj5DDXRc58oTEfnFupEwwTAQ9FSKzykEJkX+3CiAkGtAMiZG7IPWHuzgT6AOBfogiKhUvKgg==",
5386+ "requires": {}
5387+ },
5388+ "react-is": {
5389+ "version": "16.13.1",
5390+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
5391+ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
5392+ },
4763 "react-query": {
5393 "react-query": {
4764 "version": "3.39.1",
5394 "version": "3.39.1",
4765 "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.1.tgz",
5395 "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.1.tgz",
@@ -4828,6 +5458,20 @@
4828 "react-router": "6.3.0"
5458 "react-router": "6.3.0"
4829 }
5459 }
4830 },
5460 },
5461+ "react-select": {
5462+ "version": "5.4.0",
5463+ "resolved": "https://registry.npmjs.org/react-select/-/react-select-5.4.0.tgz",
5464+ "integrity": "sha512-CjE9RFLUvChd5SdlfG4vqxZd55AZJRrLrHzkQyTYeHlpOztqcgnyftYAolJ0SGsBev6zAs6qFrjm6KU3eo2hzg==",
5465+ "requires": {
5466+ "@babel/runtime": "^7.12.0",
5467+ "@emotion/cache": "^11.4.0",
5468+ "@emotion/react": "^11.8.1",
5469+ "@types/react-transition-group": "^4.4.0",
5470+ "memoize-one": "^5.0.0",
5471+ "prop-types": "^15.6.0",
5472+ "react-transition-group": "^4.3.0"
5473+ }
5474+ },
4831 "react-style-singleton": {
5475 "react-style-singleton": {
4832 "version": "2.2.1",
5476 "version": "2.2.1",
4833 "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.1.tgz",
5477 "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.1.tgz",
@@ -4845,6 +5489,17 @@
4845 }
5489 }
4846 }
5490 }
4847 },
5491 },
5492+ "react-transition-group": {
5493+ "version": "4.4.2",
5494+ "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.2.tgz",
5495+ "integrity": "sha512-/RNYfRAMlZwDSr6z4zNKV6xu53/e2BuaBbGhbyYIXTrmgu/bGHzmqOs7mJSJBHy9Ud+ApHx3QjrkKSp1pxvlFg==",
5496+ "requires": {
5497+ "@babel/runtime": "^7.5.5",
5498+ "dom-helpers": "^5.0.1",
5499+ "loose-envify": "^1.4.0",
5500+ "prop-types": "^15.6.2"
5501+ }
5502+ },
4848 "read-cache": {
5503 "read-cache": {
4849 "version": "1.0.0",
5504 "version": "1.0.0",
4850 "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
5505 "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
@@ -4877,13 +5532,17 @@
4877 "version": "1.22.1",
5532 "version": "1.22.1",
4878 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz",
5533 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz",
4879 "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==",
5534 "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==",
4880− "dev": true,
4881 "requires": {
5535 "requires": {
4882 "is-core-module": "^2.9.0",
5536 "is-core-module": "^2.9.0",
4883 "path-parse": "^1.0.7",
5537 "path-parse": "^1.0.7",
4884 "supports-preserve-symlinks-flag": "^1.0.0"
5538 "supports-preserve-symlinks-flag": "^1.0.0"
4885 }
5539 }
4886 },
5540 },
5541+ "resolve-from": {
5542+ "version": "4.0.0",
5543+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
5544+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g=="
5545+ },
4887 "reusify": {
5546 "reusify": {
4888 "version": "1.0.4",
5547 "version": "1.0.4",
4889 "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
5548 "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
@@ -4919,8 +5578,7 @@
4919 "safe-buffer": {
5578 "safe-buffer": {
4920 "version": "5.1.2",
5579 "version": "5.1.2",
4921 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
5580 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
4922− "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
5581+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
4923− "dev": true
4924 },
5582 },
4925 "scheduler": {
5583 "scheduler": {
4926 "version": "0.20.2",
5584 "version": "0.20.2",
@@ -4934,8 +5592,12 @@
4934 "semver": {
5592 "semver": {
4935 "version": "6.3.0",
5593 "version": "6.3.0",
4936 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
5594 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
4937− "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
5595+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
4938− "dev": true
5596+ },
5597+ "source-map": {
5598+ "version": "0.5.7",
5599+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
5600+ "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ=="
4939 },
5601 },
4940 "source-map-js": {
5602 "source-map-js": {
4941 "version": "1.0.2",
5603 "version": "1.0.2",
@@ -4943,11 +5605,15 @@
4943 "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
5605 "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
4944 "dev": true
5606 "dev": true
4945 },
5607 },
5608+ "stylis": {
5609+ "version": "4.0.13",
5610+ "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.13.tgz",
5611+ "integrity": "sha512-xGPXiFVl4YED9Jh7Euv2V220mriG9u4B2TA6Ybjc1catrstKD2PpIdU3U0RKpkVBC2EhmL/F0sPCr9vrFTNRag=="
5612+ },
4946 "supports-color": {
5613 "supports-color": {
4947 "version": "5.5.0",
5614 "version": "5.5.0",
4948 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
5615 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
4949 "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
5616 "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
4950− "dev": true,
4951 "requires": {
5617 "requires": {
4952 "has-flag": "^3.0.0"
5618 "has-flag": "^3.0.0"
4953 }
5619 }
@@ -4955,8 +5621,7 @@
4955 "supports-preserve-symlinks-flag": {
5621 "supports-preserve-symlinks-flag": {
4956 "version": "1.0.0",
5622 "version": "1.0.0",
4957 "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
5623 "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
4958− "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
5624+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w=="
4959− "dev": true
4960 },
5625 },
4961 "tailwindcss": {
5626 "tailwindcss": {
4962 "version": "3.1.4",
5627 "version": "3.1.4",
@@ -4999,8 +5664,7 @@
4999 "to-fast-properties": {
5664 "to-fast-properties": {
5000 "version": "2.0.0",
5665 "version": "2.0.0",
5001 "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
5666 "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
5002− "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
5667+ "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog=="
5003− "dev": true
5004 },
5668 },
5005 "to-regex-range": {
5669 "to-regex-range": {
5006 "version": "5.0.1",
5670 "version": "5.0.1",
@@ -5035,7 +5699,6 @@
5035 "version": "1.0.4",
5699 "version": "1.0.4",
5036 "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.4.tgz",
5700 "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.4.tgz",
5037 "integrity": "sha512-jnmO2BEGUjsMOe/Fg9u0oczOe/ppIDZPebzccl1yDWGLFP16Pa1/RM5wEoKYPG2zstNcDuAStejyxsOuKINdGA==",
5701 "integrity": "sha512-jnmO2BEGUjsMOe/Fg9u0oczOe/ppIDZPebzccl1yDWGLFP16Pa1/RM5wEoKYPG2zstNcDuAStejyxsOuKINdGA==",
5038− "dev": true,
5039 "requires": {
5702 "requires": {
5040 "escalade": "^3.1.1",
5703 "escalade": "^3.1.1",
5041 "picocolors": "^1.0.0"
5704 "picocolors": "^1.0.0"
@@ -5131,8 +5794,7 @@
5131 "yaml": {
5794 "yaml": {
5132 "version": "1.10.2",
5795 "version": "1.10.2",
5133 "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
5796 "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
5134− "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
5797+ "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg=="
5135− "dev": true
5136 }
5798 }
5137 }
5799 }
5138}
5800}
ui/package.json+4−1
@@ -12,6 +12,7 @@
12 "dependencies": {
12 "dependencies": {
13 "@heroicons/react": "^1.0.6",
13 "@heroicons/react": "^1.0.6",
14 "@radix-ui/react-dropdown-menu": "^0.1.6",
14 "@radix-ui/react-dropdown-menu": "^0.1.6",
15+ "@radix-ui/react-select": "^0.1.1",
15 "@radix-ui/react-toggle-group": "^0.1.5",
16 "@radix-ui/react-toggle-group": "^0.1.5",
16 "@urbit/api": "^2.0.0",
17 "@urbit/api": "^2.0.0",
17 "@urbit/http-api": "^2.0.0",
18 "@urbit/http-api": "^2.0.0",
@@ -20,8 +21,10 @@
20 "lodash.debounce": "^4.0.8",
21 "lodash.debounce": "^4.0.8",
21 "react": "^17.0.2",
22 "react": "^17.0.2",
22 "react-dom": "^17.0.2",
23 "react-dom": "^17.0.2",
24+ "react-hook-form": "^7.33.1",
23 "react-query": "^3.39.1",
25 "react-query": "^3.39.1",
24− "react-router-dom": "^6.3.0"
26+ "react-router-dom": "^6.3.0",
27+ "react-select": "^5.4.0"
25 },
28 },
26 "devDependencies": {
29 "devDependencies": {
27 "@types/lodash.debounce": "^4.0.7",
30 "@types/lodash.debounce": "^4.0.7",
ui/src/app.tsx+8−3
@@ -1,6 +1,8 @@
1import React from 'react';
1import React from 'react';
2import { QueryClient, QueryClientProvider } from 'react-query';
2import { QueryClient, QueryClientProvider } from 'react-query';
3import { BrowserRouter, Route, Routes } from 'react-router-dom';
3import { BrowserRouter, Route, Routes } from 'react-router-dom';
4+import { Layout } from './components/Layout';
5+import { Post } from './pages/Post';
4import { Search } from './pages/Search';
6import { Search } from './pages/Search';
5
7
6const queryClient = new QueryClient();
8const queryClient = new QueryClient();
@@ -8,9 +10,12 @@ const queryClient = new QueryClient();
8function Main() {
10function Main() {
9 return (
11 return (
10 <Routes>
12 <Routes>
13+ <Route element={<Layout />}>
11− <Route path="/" element={<Search />} />
14+ <Route path="/" element={<Search />} />
12− <Route path="/:lookup" element={<Search />} />
15+ <Route path="/search/:lookup" element={<Search />} />
13− <Route path="/:lookup/:limit/:page" element={<Search />} />
16+ <Route path="/search/:lookup/:limit/:page" element={<Search />} />
17+ <Route path="/post" element={<Post />} />
18+ </Route>
14 </Routes>
19 </Routes>
15 );
20 );
16}
21}
ui/src/components/Filter.tsxnew file+55
@@ -0,0 +1,55 @@
1+import React from 'react';
2+import * as Select from '@radix-ui/react-select';
3+import { PostFilter, PostType } from '../types/seek';
4+
5+interface FilterItemProps {
6+ title: PostFilter;
7+}
8+
9+const FilterItem = ({ title }: FilterItemProps) => {
10+ return (
11+ <Select.Item value={title} className="text-mauve cursor-default select-none relative py-2 pl-3 pr-9 focus:outline-none focus:ring-1 focus:ring-rosy font-semibold">
12+ <Select.ItemText>%{title}</Select.ItemText>
13+ <Select.ItemIndicator className="text-rosy absolute inset-y-0 right-0 flex items-center pr-4">
14+ <svg className="h-5 w-5" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor">
15+ <path fillRule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clipRule="evenodd" />
16+ </svg>
17+ </Select.ItemIndicator>
18+ </Select.Item>
19+ )
20+}
21+
22+const filters: PostFilter[] = ['all', 'app', 'group', 'content', 'other'];
23+
24+interface FilterProps<T extends string> {
25+ selected: T;
26+ onSelect: (value: T) => void;
27+ showAll?: boolean;
28+ className?: string;
29+}
30+
31+export function Filter<T extends string>({ selected, onSelect, className, showAll = true }: FilterProps<T>) {
32+ const options = showAll ? filters : filters.filter(f => f === 'all');
33+ return (
34+ <div className={className}>
35+ <Select.Root value={selected} onValueChange={onSelect}>
36+ <span className="sr-only">Filter Type</span>
37+ <Select.Trigger className="bg-linen flex justify-between w-32 font-semibold border border-fawn/30 rounded-lg shadow-sm pl-3 pr-2 py-1.5 text-left cursor-default focus:outline-none focus:ring-1 focus:ring-rosy focus:border-rosy sm:text-sm">
38+ <Select.Value>%{selected}</Select.Value>
39+ <Select.Icon asChild>
40+ <svg className="h-5 w-5 text-rosy" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor">
41+ <path fillRule="evenodd" d="M10 3a1 1 0 01.707.293l3 3a1 1 0 01-1.414 1.414L10 5.414 7.707 7.707a1 1 0 01-1.414-1.414l3-3A1 1 0 0110 3zm-3.707 9.293a1 1 0 011.414 0L10 14.586l2.293-2.293a1 1 0 011.414 1.414l-3 3a1 1 0 01-1.414 0l-3-3a1 1 0 010-1.414z" clipRule="evenodd" />
42+ </svg>
43+ </Select.Icon>
44+ </Select.Trigger>
45+ <Select.Content className="z-10 w-full bg-linen shadow-lg max-h-60 rounded-md py-1 text-base ring-1 ring-rosy ring-opacity-5 overflow-auto focus:outline-none sm:text-sm">
46+ <Select.Viewport>
47+ {options.map(f => (
48+ <FilterItem key={f} title={f} />
49+ ))}
50+ </Select.Viewport>
51+ </Select.Content>
52+ </Select.Root>
53+ </div>
54+ )
55+}
ui/src/components/Layout.tsxnew file+17
@@ -0,0 +1,17 @@
1+import cn from 'classnames';
2+import React from 'react';
3+import { Outlet, useParams } from 'react-router-dom';
4+import { Meta } from './Meta';
5+
6+export const Layout = () => {
7+ const params = useParams<{ lookup: string }>();
8+
9+ return (
10+ <main className={cn("flex flex-col items-center min-h-screen", !params.lookup && 'justify-center')}>
11+ <div className="max-w-2xl w-full p-4 sm:py-12 px-8 space-y-6">
12+ <Outlet />
13+ </div>
14+ <Meta className='self-start mx-10 my-6 sm:m-0 sm:fixed left-4 bottom-4 text-sm'/>
15+ </main>
16+ )
17+}
ui/src/components/Logo.tsxnew file+13
@@ -0,0 +1,13 @@
1+import React from 'react';
2+
3+interface LogoProps {
4+ className?: string;
5+}
6+
7+export const Logo = ({ className }: LogoProps) => {
8+ return (
9+ <svg className={className} fill="none" xmlns="http://www.w3.org/2000/svg" viewBox='0 0 179 58'>
10+ <path className='fill-current' d="M10.125 44.5c-1.66667 0-3.33333-.1875-5-.5625-1.66667-.375-3.0625-.875-4.1875-1.5l-.3125-7.125h3.6875l1.3125 4.5c1.5.9583 3.14583 1.4375 4.9375 1.4375 1.3333 0 2.375-.2917 3.125-.875.75-.5833 1.125-1.3542 1.125-2.3125 0-1-.375-1.8542-1.125-2.5625-.75-.7083-2.2708-1.5-4.5625-2.375-3.04167-1.1667-5.16667-2.3958-6.375-3.6875-1.20833-1.2917-1.8125-2.9167-1.8125-4.875 0-1.625.5-3.0625 1.5-4.3125s2.375-2.2292 4.125-2.9375c1.79167-.7083 3.8542-1.0625 6.1875-1.0625 1.2917 0 2.5833.125 3.875.375 1.3333.2083 2.4375.5208 3.3125.9375l.6875 7H17l-1.4375-4.375c-.4167-.25-.9167-.4375-1.5-.5625-.5833-.1667-1.1667-.25-1.75-.25-1.3333 0-2.41667.3125-3.25.9375-.79167.5833-1.1875 1.3542-1.1875 2.3125 0 1.0417.45833 1.9167 1.375 2.625.9583.7083 2.6458 1.5833 5.0625 2.625C17.0625 29.0417 19 30.25 20.125 31.5c1.1667 1.25 1.75 2.7917 1.75 4.625 0 2.5-1.1042 4.5208-3.3125 6.0625C16.3958 43.7292 13.5833 44.5 10.125 44.5ZM24.8125 57.75l-.1875-2.6875 3.875-1c0-.2083.0208-.625.0625-1.25s.0625-1.4375.0625-2.4375c.0417-1 .0833-2.1667.125-3.5s.0625-2.8125.0625-4.4375l.125-13.375c0-1.25-.0417-2.4167-.125-3.5s-.2292-2.1042-.4375-3.0625l-4-.875v-2.5625l10.1875-2.6875 1.5 1.0625-.4375 3.625.1875.0625c1.0417-1.5 2.2917-2.6875 3.75-3.5625S42.5833 16.25 44.25 16.25c2.0833 0 4 .5417 5.75 1.625 1.75 1.0417 3.1458 2.5417 4.1875 4.5 1.0833 1.9583 1.625 4.2917 1.625 7 0 2.75-.625 5.2708-1.875 7.5625-1.25 2.25-3 4.0625-5.25 5.4375s-4.875 2.0625-7.875 2.0625c-.7917 0-1.625-.0833-2.5-.25-.875-.125-1.6875-.3333-2.4375-.625V47.75c0 1.4583.0208 2.7917.0625 4 .0833 1.2083.1458 1.9792.1875 2.3125L41.25 55l-.1875 2.75h-16.25Zm16.125-17.3125c1.4583 0 2.7083-.3333 3.75-1 1.0833-.7083 1.9375-1.75 2.5625-3.125.625-1.4167.9375-3.1667.9375-5.25.0417-2.0833-.2708-3.8125-.9375-5.1875-.625-1.4167-1.4583-2.4792-2.5-3.1875-1.0417-.7083-2.2083-1.0625-3.5-1.0625-1.0417 0-2.0208.25-2.9375.75-.9167.4583-1.7292 1.1458-2.4375 2.0625v14.5c.6667.4583 1.4375.8333 2.3125 1.125.9167.25 1.8333.375 2.75.375ZM59.5625 44l-.1875-2.6875 3.875-1c.0833-.375.1458-1.1042.1875-2.1875.0417-1.0833.0833-2.3958.125-3.9375.0417-1.5833.0625-3.2292.0625-4.9375v-7.8125c0-1.4167-.0208-2.875-.0625-4.375 0-1.5-.0208-2.9375-.0625-4.3125 0-1.4167-.0208-2.6667-.0625-3.75-.0417-1.125-.0833-1.97917-.125-2.5625l-4.625-.625-.125-2.4375L69.375.5l1.5625 1c-.0417 1.29167-.1042 2.5625-.1875 3.8125-.0417 1.20833-.0833 2.54167-.125 4 0 1.4583-.0208 3.125-.0625 5-.0417 1.8333-.0833 4.0208-.125 6.5625l.1875.0625c1.3333-1.5833 2.75-2.75 4.25-3.5 1.5-.7917 3.1042-1.1875 4.8125-1.1875s3.25.4375 4.625 1.3125c1.4167.8333 2.5417 2.0833 3.375 3.75.8333 1.6667 1.25 3.7083 1.25 6.125v6.5c0 1.4167.0208 2.75.0625 4 .0833 1.2083.1667 2 .25 2.375l3.875 1L92.9375 44h-14.625l-.1875-2.6875 3.5625-1c.0833-.3333.1458-.8125.1875-1.4375.0417-.625.0625-1.3542.0625-2.1875C81.9792 35.8542 82 35 82 34.125v-5.75c0-1.625-.2708-2.9375-.8125-3.9375-.5-1.0417-1.1667-1.7917-2-2.25-.8333-.5-1.75-.75-2.75-.75-1.125 0-2.2083.2708-3.25.8125-1 .5-1.875 1.25-2.625 2.25v9.25c0 1.6667.0208 3.1042.0625 4.3125.0833 1.1667.1875 1.9167.3125 2.25l3.8125 1L74.5625 44h-15ZM95.1875 44 95 41.25l4.1875-.9375c.0417-.1667.0833-.5208.125-1.0625s.0833-1.25.125-2.125c.0417-.9167.0625-1.9792.0625-3.1875l.0625-4.75c0-1.2917-.0417-2.4792-.125-3.5625-.0833-1.125-.2292-2.1667-.4375-3.125l-4.1875-.875v-2.5625L105.5 16.375l1.438 1.0625c-.126 1.2917-.23 2.6042-.313 3.9375-.042 1.2917-.063 2.7917-.063 4.5v7.875c0 1.5417.021 2.9375.063 4.1875.083 1.25.187 2.0417.313 2.375l4.187.9375-.187 2.75H95.1875Zm7.9375-33.4375c-1.458 0-2.625-.4375-3.5-1.3125-.875-.91667-1.3125-2-1.3125-3.25 0-1.20833.4375-2.27083 1.3125-3.1875.875-.91667 2.042-1.375 3.5-1.375 1.458 0 2.604.45833 3.437 1.375.834.91667 1.25 1.97917 1.25 3.1875 0 1.25-.416 2.33333-1.25 3.25-.833.875-1.979 1.3125-3.437 1.3125ZM113.312 44l-.187-2.6875 3.875-1c.042-.1667.083-.5.125-1 .042-.5417.083-1.25.125-2.125.042-.9167.062-2 .062-3.25l.063-4.75c0-1.3333-.042-2.5417-.125-3.625-.083-1.0833-.229-2.1042-.438-3.0625l-4-.875v-2.5625L123 16.375l1.5 1.0625-.375 3.5.187.0625c1.334-1.5833 2.75-2.7708 4.25-3.5625 1.542-.7917 3.167-1.1875 4.876-1.1875 1.708 0 3.25.4375 4.624 1.3125 1.417.8333 2.542 2.0833 3.376 3.75.833 1.6667 1.25 3.7083 1.25 6.125v6.5c0 1.4167.02 2.75.062 4 .042 1.2083.125 2 .25 2.375l3.875 1L146.688 44H132l-.188-2.6875 3.626-1c.083-.3333.145-.8125.187-1.4375.042-.625.063-1.3542.063-2.1875.041-.8333.062-1.6875.062-2.5625v-5.75c0-1.625-.271-2.9375-.812-3.9375-.5-1.0417-1.167-1.7917-2-2.25-.834-.5-1.75-.75-2.75-.75-1.167 0-2.25.2708-3.25.8125-1 .5-1.876 1.25-2.626 2.25v9.25c0 1.5833.021 3 .063 4.25.083 1.2083.187 1.9792.313 2.3125l3.874 1L128.375 44h-15.063ZM178.562 44h-13.874l-.188-2.6875 2.938-1-5.626-7.375-1.937-2.4375-7.813-10.0625-2.937-1 .187-2.6875h13.626l.187 2.6875-2.625 1 4.5 5.875 1.938 2.5625 8.874 11.4375 2.938 1L178.562 44Zm-8.937-23.5625-2.625-1 .188-2.6875H177l.188 2.6875-2.938 1-7.312 8.4375-5.126 4.0625-5.312 7.375 2.938 1L159.25 44h-10.188l-.187-2.6875 2.937-1 8.063-9.8125L165 26.3125l4.625-5.875Z" />
11+ </svg>
12+ )
13+}
ui/src/components/Meta.tsxnew file+45
@@ -0,0 +1,45 @@
1+import { PlusIcon } from '@heroicons/react/solid';
2+import { ChargeUpdateInitial, scryCharges } from '@urbit/api';
3+import React, { useEffect, useState } from 'react';
4+import { Link } from 'react-router-dom';
5+import api from '../api';
6+import { Logo } from './Logo';
7+
8+interface MetaProps {
9+ className?: string;
10+}
11+
12+export const Meta = ({ className }: MetaProps) => {
13+ const [version, setVersion] = useState('');
14+
15+ useEffect(() => {
16+ if (!version) {
17+ api.scry<ChargeUpdateInitial>(scryCharges).then(charges => {
18+ const version = charges.initial.seek?.version;
19+
20+ if (version) {
21+ setVersion(version);
22+ }
23+ })
24+ }
25+ }, []);
26+
27+ return (
28+ <footer className={className}>
29+ <div className='flex mb-2 space-x-3 items-end'>
30+ <Logo className="w-24 text-rosy" />
31+ {version && <span className='mb-[3px]'>v{version}</span>}
32+ </div>
33+ <a
34+ className="inline-block font-mono default-ring underline rounded-md hover:text-rosy mb-4"
35+ href="web+urbitgraph://group/~nocsyx-lassul/sphinx"
36+ >
37+ ~nocsyx-lassul/sphinx
38+ </a>
39+ <Link to="/post" className="flex items-center rounded-lg text-base font-semibold text-rosy bg-rosy/30 border-2 border-transparent hover:border-rosy p-2 transition-colors">
40+ <PlusIcon className='h-4 w-4 mr-1' />
41+ Add a Listing
42+ </Link>
43+ </footer>
44+ )
45+}
ui/src/components/SearchInput.tsx+2−2
@@ -15,14 +15,14 @@ export const SearchInput = ({ lookup, className, onChange }: SearchInputProps) =
15 }, [onChange]);
15 }, [onChange]);
16
16
17 return (
17 return (
18− <div className='relative flex items-center'>
18+ <div className={cn('relative flex items-center', className)}>
19 <SearchIcon className='flip absolute left-2 h-5 w-5' />
19 <SearchIcon className='flip absolute left-2 h-5 w-5' />
20 <input
20 <input
21 type='text'
21 type='text'
22 value={lookup}
22 value={lookup}
23 onChange={onInput}
23 onChange={onInput}
24 placeholder="Search"
24 placeholder="Search"
25− className={cn('w-full py-1 pl-9 pr-2 bg-fawn/30 focus:outline-none focus:ring-2 ring-lavender rounded-lg', className)}
25+ className={cn('w-full py-1 pl-9 pr-2 bg-fawn/30 focus:outline-none focus:ring-2 ring-lavender rounded-lg border border-fawn/30')}
26 />
26 />
27 </div>
27 </div>
28 )
28 )
ui/src/components/SearchList.tsx+20−5
@@ -8,18 +8,33 @@ interface SearchListProps {
8}
8}
9
9
10export const SearchList = ({ listings, className }: SearchListProps) => {
10export const SearchList = ({ listings, className }: SearchListProps) => {
11+ if (!listings) {
12+ return null;
13+ }
14+
15+ if (listings.length === 0) {
16+ return (
17+ <div>
18+ <h2 className='text-xl font-semibold'>No Results</h2>
19+ </div>
20+ )
21+ }
22+
11 return (
23 return (
12 <ul className={cn('px-2 space-y-6', className)}>
24 <ul className={cn('px-2 space-y-6', className)}>
13 {listings && listings.map(l => (
25 {listings && listings.map(l => (
14 <li key={l.hash}>
26 <li key={l.hash}>
15− <article className='group relative flex w-full'>
27+ <article className='group flex w-full'>
16 {l.post.image ? (
28 {l.post.image ? (
17− <img src={l.post.image} className="absolute -left-28 w-24 h-24 object-cover" />
29+ <img src={l.post.image} className="w-24 h-24 object-cover rounded-xl" />
18− ) : <div className='absolute -left-28 w-24 h-24' />}
30+ ) : <div className='w-24 h-24 bg-rosy/20 rounded-xl' />}
19− <div className='flex-1'>
31+ <div className='flex-1 ml-4'>
20 <a className='block w-full mb-2 hover:text-rosy transition-colors' href={l.post.link}>
32 <a className='block w-full mb-2 hover:text-rosy transition-colors' href={l.post.link}>
21 <h2 className='block font-semibold text-lg leading-none mb-1'>{l.post.title}</h2>
33 <h2 className='block font-semibold text-lg leading-none mb-1'>{l.post.title}</h2>
34+ <div className='font-mono text-xs space-x-3'>
35+ <strong>%{l.post.type}</strong>
22− <span className='block font-mono text-xs'>{l.post.link.replace('web+urbitgraph://', '')}</span>
36+ <span>{l.post.link.replace('web+urbitgraph://', '')}</span>
37+ </div>
23 </a>
38 </a>
24 <p className='mb-2 text-sm'>{l.post.description}</p>
39 <p className='mb-2 text-sm'>{l.post.description}</p>
25 <div className='flex font-mono text-xs text-zinc-500 space-x-3 opacity-0 group-hover:opacity-100 transition-opacity'>
40 <div className='flex font-mono text-xs text-zinc-500 space-x-3 opacity-0 group-hover:opacity-100 transition-opacity'>
ui/src/components/TagField.tsxnew file+151
@@ -0,0 +1,151 @@
1+import React, { Component, KeyboardEventHandler, useCallback, useState } from 'react';
2+
3+import CreatableSelect from 'react-select/creatable';
4+import { ActionMeta, components, ControlProps, MultiValue, MultiValueGenericProps, MultiValueRemoveProps, OnChangeValue } from 'react-select';
5+import { XIcon } from '@heroicons/react/solid';
6+
7+export interface Option {
8+ readonly label: string;
9+ readonly value: string;
10+}
11+
12+const createOption = (label: string) => ({
13+ label,
14+ value: label,
15+});
16+
17+function Control({ children, ...props }: ControlProps<Option, true>) {
18+ return (
19+ <components.Control
20+ {...props}
21+ className="flex items-center w-full py-1 px-2 bg-fawn/30 focus:outline-none focus:ring-2 ring-lavender rounded-lg border border-fawn/30 cursor-text text-mauve"
22+ >
23+ {children}
24+ </components.Control>
25+ );
26+}
27+
28+function TagContainer({
29+ children,
30+ ...props
31+}: MultiValueGenericProps<Option, true>) {
32+ return (
33+ <components.MultiValueContainer {...props}>
34+ <div className="flex">{children}</div>
35+ </components.MultiValueContainer>
36+ );
37+}
38+
39+function TagLabel({ data }: { data: Option }) {
40+ const { value, label } = data;
41+ return (
42+ <div className="flex h-6 items-center rounded-l bg-lavender text-linen">
43+ <span className="p-1 font-semibold">{label || value}</span>
44+ </div>
45+ );
46+}
47+
48+function TagRemove(props: MultiValueRemoveProps<Option, true>) {
49+ return (
50+ <components.MultiValueRemove {...props}>
51+ <div className="flex h-full items-center rounded-r bg-lavender pr-1">
52+ <XIcon className="h-4 w-4 text-linen" />
53+ </div>
54+ </components.MultiValueRemove>
55+ );
56+}
57+
58+interface TagFieldProps {
59+ tags: MultiValue<Option>;
60+ onTags: (tags: MultiValue<Option>) => void;
61+ className?: string;
62+}
63+
64+export const TagField = ({ tags, onTags, className }: TagFieldProps) => {
65+ const [input, setInput] = useState('');
66+
67+ const handleChange = useCallback((
68+ value: OnChangeValue<Option, true>,
69+ actionMeta: ActionMeta<Option>
70+ ) => {
71+ console.group('Value Changed');
72+ console.log(value);
73+ console.log(`action: ${actionMeta.action}`);
74+ console.groupEnd();
75+ onTags(value);
76+ }, []);
77+
78+ const handleInputChange = useCallback((value) => {
79+ setInput(value);
80+ }, []);
81+
82+ const handleKeyDown: KeyboardEventHandler<HTMLDivElement> = useCallback((event) => {
83+ if (!input) return;
84+
85+ switch (event.key) {
86+ case 'Enter':
87+ case 'Tab':
88+ console.group('Value Added');
89+ console.log(tags);
90+ console.groupEnd();
91+
92+ setInput('');
93+ onTags([...tags, createOption(input)])
94+ event.preventDefault();
95+ }
96+ }, [input, tags]);
97+
98+ return (
99+ <CreatableSelect<Option, true>
100+ className={className}
101+ components={{
102+ ...components,
103+ Control,
104+ MultiValueContainer: TagContainer,
105+ MultiValueLabel: TagLabel,
106+ MultiValueRemove: TagRemove,
107+ DropdownIndicator: null
108+ }}
109+ styles={{
110+ control: (base) => ({}),
111+ input: (base) => ({
112+ ...base,
113+ padding: 0,
114+ margin: 0,
115+ }),
116+ clearIndicator: (base) => ({
117+ ...base,
118+ cursor: 'pointer',
119+ padding: 0
120+ }),
121+ multiValue: (base) => ({
122+ ...base,
123+ backgroundColor: '',
124+ margin: '0 2px',
125+ }),
126+ multiValueRemove: (base) => ({
127+ ...base,
128+ paddingRight: '',
129+ paddingLeft: '',
130+ '&:hover': {
131+ color: 'inherit',
132+ backgroundColor: 'inherit',
133+ },
134+ }),
135+ valueContainer: (base) => ({
136+ ...base,
137+ padding: 0
138+ })
139+ }}
140+ inputValue={input}
141+ isClearable
142+ isMulti
143+ menuIsOpen={false}
144+ onChange={handleChange}
145+ onInputChange={handleInputChange}
146+ onKeyDown={handleKeyDown}
147+ placeholder="Type something and press enter..."
148+ value={tags}
149+ />
150+ );
151+}
ui/src/pages/Post.tsxnew file+106
@@ -0,0 +1,106 @@
1+import debounce from 'lodash.debounce';
2+import React, { useCallback, useEffect, useRef, useState } from 'react';
3+import { useForm } from 'react-hook-form';
4+import { Link, useNavigate } from 'react-router-dom';
5+import { MultiValue } from 'react-select';
6+import api from '../api';
7+import { Filter } from '../components/Filter';
8+import { Option, TagField } from '../components/TagField';
9+import { Declare, Post as PostForm } from '../types/seek';
10+
11+export const Post = () => {
12+ const navigate = useNavigate();
13+ const [tags, setTags] = useState<MultiValue<Option>>([]);
14+ const [image, setImage] = useState<string>('');
15+ const { register, watch, reset, setValue, handleSubmit } = useForm<PostForm>({
16+ defaultValues: {
17+ title: '',
18+ type: 'other',
19+ link: '',
20+ image: '',
21+ description: ''
22+ }
23+ });
24+
25+ const updateImg = useRef(debounce(setImage));
26+ const img = watch('image');
27+ const type = watch('type');
28+
29+ const onSubmit = useCallback((values: Omit<PostForm, 'tags'>) => {
30+ api.poke<Declare>({
31+ app: 'seek',
32+ mark: 'declare',
33+ json: {
34+ reach: 'friends',
35+ post: {
36+ ...values,
37+ tags: tags.map(t => t.value)
38+ }
39+ }
40+ })
41+ reset();
42+ setTags([]);
43+ }, [tags]);
44+
45+ useEffect(() => {
46+ register('type')
47+ }, []);
48+
49+ useEffect(() => {
50+ if (img) {
51+ updateImg.current(img)
52+ }
53+ }, [img]);
54+
55+ return (
56+ <>
57+ <header>
58+ <h1 className='text-2xl font-semibold'>Add a Listing</h1>
59+ </header>
60+ <form onSubmit={handleSubmit(onSubmit)}>
61+ <div className='flex w-full space-x-6'>
62+ <div className='flex-1 space-y-3'>
63+ <div>
64+ <label htmlFor='title' className='text-sm font-semibold'>Title</label>
65+ <div className='flex items-center space-x-2'>
66+ <input {...register('title', { required: true, maxLength: 80 })} className='flex-1 w-full py-1 px-2 bg-fawn/30 focus:outline-none focus:ring-2 ring-lavender rounded-lg border border-fawn/30' placeholder='sphinx'/>
67+ <Filter selected={type} onSelect={(value) => setValue('type', value)} />
68+ </div>
69+ </div>
70+ <div className='flex items-center space-x-6'>
71+ <div className='flex-1 space-y-3'>
72+ <div>
73+ <label htmlFor='image' className='text-sm font-semibold'>Image</label>
74+ <input type="url" {...register('image')} className='flex-1 w-full py-1 px-2 bg-fawn/30 focus:outline-none focus:ring-2 ring-lavender rounded-lg border border-fawn/30' placeholder='https://nyc3.digitaloceanspaces.com/...' />
75+ </div>
76+ <div>
77+ <label htmlFor='link' className='text-sm font-semibold'>Link</label>
78+ <input type="url" {...register('link', { required: true })} className='flex-1 w-full py-1 px-2 bg-fawn/30 focus:outline-none focus:ring-2 ring-lavender rounded-lg border border-fawn/30' placeholder='web+urbitgraph://~nocsyx-lassul/sphinx' />
79+ </div>
80+ </div>
81+ <img className='flex-none object-cover w-28 h-28 mt-4 border-2 border-dashed border-mauve/60 rounded-lg' src={image || undefined} />
82+ </div>
83+ <div>
84+ <label htmlFor='description' className='text-sm font-semibold'>Description</label>
85+ <textarea {...register('description', { required: true, maxLength: 256 })} rows={2} className='align-middle w-full py-1 px-2 bg-fawn/30 focus:outline-none focus:ring-2 ring-lavender rounded-lg border border-fawn/30' placeholder='An app for answering your riddles' />
86+ </div>
87+ <div>
88+ <label className='text-sm font-semibold'>Tags</label>
89+ <TagField tags={tags} onTags={setTags} />
90+ </div>
91+ <div className='pt-3'>
92+ <div className='flex justify-between border-t border-zinc-300 py-3'>
93+ <button type="button" className='flex items-center rounded-lg text-base font-semibold text-rosy bg-rosy/30 border-2 border-transparent hover:border-rosy leading-none py-2 px-3 transition-colors' onClick={() => navigate(-1)}>
94+ Back to Search
95+ </button>
96+ <button type="submit" className='flex items-center rounded-lg text-base font-semibold text-linen bg-rosy border-2 border-transparent hover:border-linen/60 leading-none py-2 px-3 transition-colors'>
97+ Publish
98+ </button>
99+ </div>
100+ </div>
101+ </div>
102+ </div>
103+ </form>
104+ </>
105+ )
106+}
ui/src/pages/Search.tsx+23−21
@@ -4,11 +4,14 @@ import debounce from 'lodash.debounce';
4import { SearchInput } from '../components/SearchInput';
4import { SearchInput } from '../components/SearchInput';
5import { SearchList } from '../components/SearchList';
5import { SearchList } from '../components/SearchList';
6import { useQuery } from 'react-query';
6import { useQuery } from 'react-query';
7−import { Search as SearchType } from '../types/seek';
7+import { PostFilter, PostType, Search as SearchType } from '../types/seek';
8import api from '../api';
8import api from '../api';
9−import { useNavigate, useParams } from 'react-router-dom';
9+import { Link, useNavigate, useParams } from 'react-router-dom';
10import { Paginator } from '../components/Paginator';
10import { Paginator } from '../components/Paginator';
11import { stringToTa } from '@urbit/api';
11import { stringToTa } from '@urbit/api';
12+import { Filter } from '../components/Filter';
13+import { Meta } from '../components/Meta';
14+import { DocumentAddIcon, PlusCircleIcon, PlusIcon } from '@heroicons/react/solid';
12
15
13interface RouteParams extends Record<string, string | undefined> {
16interface RouteParams extends Record<string, string | undefined> {
14 lookup?: string;
17 lookup?: string;
@@ -31,13 +34,14 @@ export const Search = () => {
31 limit,
34 limit,
32 page
35 page
33 } = useParams<RouteParams>();
36 } = useParams<RouteParams>();
37+ const [selected, setSelected] = useState<PostFilter>('all')
34 const [rawSearch, setRawSearch] = useState(lookup || '');
38 const [rawSearch, setRawSearch] = useState(lookup || '');
35 const size = parseInt(limit || '10', 10);
39 const size = parseInt(limit || '10', 10);
36 const pageInt = parseInt(page || '1', 10) - 1;
40 const pageInt = parseInt(page || '1', 10) - 1;
37 const start = pageInt * size;
41 const start = pageInt * size;
38− const { data } = useQuery<unknown, unknown, SearchType>(`lookup-${lookup}-${size}-${start}`, () => api.scry<SearchType>({
42+ const { data } = useQuery<unknown, unknown, SearchType>(`lookup-${selected}-${lookup}-${size}-${start}`, () => api.scry<SearchType>({
39 app: 'seek',
43 app: 'seek',
40− path: `/lookup/${encodeLookup(lookup)}/${start}/${size}`
44+ path: `/lookup/${selected}/${encodeLookup(lookup)}/${start}/${size}`
41 }), {
45 }), {
42 enabled: !!lookup,
46 enabled: !!lookup,
43 keepPreviousData: true
47 keepPreviousData: true
@@ -51,12 +55,11 @@ export const Search = () => {
51
55
52 const update = useRef(debounce((value: string) => {
56 const update = useRef(debounce((value: string) => {
53 if (!value) {
57 if (!value) {
54− navigate('/');
55 return;
58 return;
56 }
59 }
57
60
58− navigate(`/${value}/${size}/${page || '1'}`)
61+ navigate(`/search/${value}/${size}/${page || '1'}`)
59− }, 200))
62+ }, 400))
60
63
61 const onChange = useCallback((value: string) => {
64 const onChange = useCallback((value: string) => {
62 setRawSearch(value);
65 setRawSearch(value);
@@ -72,19 +75,18 @@ export const Search = () => {
72 }, [lookup, size]);
75 }, [lookup, size]);
73
76
74 return (
77 return (
78+ <>
75− <main className={cn("flex flex-col items-center min-h-screen", !data && 'justify-center')}>
79+ <header className='flex items-center space-x-2'>
76− <div className="max-w-xl w-full p-4 sm:py-12 px-8 space-y-6">
77− <header>
78− <SearchInput lookup={rawSearch} onChange={onChange} />
80+ <SearchInput className='flex-1' lookup={rawSearch} onChange={onChange} />
81+ <Filter selected={selected} onSelect={setSelected} />
79− </header>
82+ </header>
80− {data && <div className='flex justify-end border-t border-zinc-300'>
83+ {lookup && data && <div className='flex justify-end border-t border-zinc-300'>
81− <Paginator pages={pages} currentPage={pageInt} linkBuilder={linkBuild} />
84+ <Paginator pages={pages} currentPage={pageInt} linkBuilder={linkBuild} />
82− </div>}
85+ </div>}
83− <SearchList listings={data?.listings || []} />
86+ {lookup && <SearchList listings={data?.listings || []} />}
84− {data && pages > 1 && <div className='flex justify-end border-t border-zinc-300'>
87+ {data && pages > 1 && <div className='flex justify-end border-t border-zinc-300'>
85− <Paginator pages={pages} currentPage={pageInt} linkBuilder={linkBuild} />
88+ <Paginator pages={pages} currentPage={pageInt} linkBuilder={linkBuild} />
86− </div>}
89+ </div>}
87− </div>
90+ </>
88− </main>
89 )
91 )
90}
92}
ui/src/types/seek.ts+10−1
@@ -1,6 +1,15 @@
1+export type PostType = 'app' | 'group' | 'content' | 'other';
2+
3+export type PostFilter = 'all' | PostType;
4+
5+export interface Declare {
6+ reach: 'friends' | 'public' | 'private';
7+ post: Post
8+}
9+
1export interface Post {
10export interface Post {
2 title: string;
11 title: string;
3− type: 'app' | 'group' | 'content' | 'other';
12+ type: PostType;
4 description: string;
13 description: string;
5 image: string;
14 image: string;
6 tags: string[];
15 tags: string[];