@latticexyz/entrykit 2.2.15-entrykit-510cc59769bcf83670255be3102d702c4b673225 → 2.2.15-f9de085862ac62ce15fe3b7743916cfd631592ea
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/deploy-local-prereqs.js +3 -0
- package/dist/tsup/bin/deploy-local-prereqs.js +16 -0
- package/dist/tsup/bin/deploy-local-prereqs.js.map +1 -0
- package/dist/tsup/exports/index.d.ts +2 -0
- package/dist/tsup/{internal.d.ts → exports/internal.d.ts} +4 -35
- package/dist/tsup/exports/internal.js +1398 -0
- package/dist/tsup/exports/internal.js.map +1 -0
- package/package.json +19 -20
- package/dist/tsup/internal.js +0 -1442
- package/dist/tsup/internal.js.map +0 -1
- /package/dist/tsup/{index.d.ts → bin/deploy-local-prereqs.d.ts} +0 -0
- /package/dist/tsup/{index.js → exports/index.js} +0 -0
- /package/dist/tsup/{index.js.map → exports/index.js.map} +0 -0
package/dist/tsup/internal.js
DELETED
|
@@ -1,1442 +0,0 @@
|
|
|
1
|
-
function Ft(e){return{...e,appName:e.appName??document.title,appIcon:e.appIcon??document.querySelector("link[rel~='icon']")?.getAttribute("href")??"/favico.ico"}}import{Root as tr,DialogPortal as rr,DialogContent as or}from"@radix-ui/react-dialog";import{forwardRef as Yt,useEffect as jt,useRef as Me,useState as Ie}from"react";import Xt from"react-dom";var xe=`*, ::before, ::after {
|
|
2
|
-
--tw-border-spacing-x: 0;
|
|
3
|
-
--tw-border-spacing-y: 0;
|
|
4
|
-
--tw-translate-x: 0;
|
|
5
|
-
--tw-translate-y: 0;
|
|
6
|
-
--tw-rotate: 0;
|
|
7
|
-
--tw-skew-x: 0;
|
|
8
|
-
--tw-skew-y: 0;
|
|
9
|
-
--tw-scale-x: 1;
|
|
10
|
-
--tw-scale-y: 1;
|
|
11
|
-
--tw-pan-x: ;
|
|
12
|
-
--tw-pan-y: ;
|
|
13
|
-
--tw-pinch-zoom: ;
|
|
14
|
-
--tw-scroll-snap-strictness: proximity;
|
|
15
|
-
--tw-gradient-from-position: ;
|
|
16
|
-
--tw-gradient-via-position: ;
|
|
17
|
-
--tw-gradient-to-position: ;
|
|
18
|
-
--tw-ordinal: ;
|
|
19
|
-
--tw-slashed-zero: ;
|
|
20
|
-
--tw-numeric-figure: ;
|
|
21
|
-
--tw-numeric-spacing: ;
|
|
22
|
-
--tw-numeric-fraction: ;
|
|
23
|
-
--tw-ring-inset: ;
|
|
24
|
-
--tw-ring-offset-width: 0px;
|
|
25
|
-
--tw-ring-offset-color: #fff;
|
|
26
|
-
--tw-ring-color: rgb(59 130 246 / 0.5);
|
|
27
|
-
--tw-ring-offset-shadow: 0 0 #0000;
|
|
28
|
-
--tw-ring-shadow: 0 0 #0000;
|
|
29
|
-
--tw-shadow: 0 0 #0000;
|
|
30
|
-
--tw-shadow-colored: 0 0 #0000;
|
|
31
|
-
--tw-blur: ;
|
|
32
|
-
--tw-brightness: ;
|
|
33
|
-
--tw-contrast: ;
|
|
34
|
-
--tw-grayscale: ;
|
|
35
|
-
--tw-hue-rotate: ;
|
|
36
|
-
--tw-invert: ;
|
|
37
|
-
--tw-saturate: ;
|
|
38
|
-
--tw-sepia: ;
|
|
39
|
-
--tw-drop-shadow: ;
|
|
40
|
-
--tw-backdrop-blur: ;
|
|
41
|
-
--tw-backdrop-brightness: ;
|
|
42
|
-
--tw-backdrop-contrast: ;
|
|
43
|
-
--tw-backdrop-grayscale: ;
|
|
44
|
-
--tw-backdrop-hue-rotate: ;
|
|
45
|
-
--tw-backdrop-invert: ;
|
|
46
|
-
--tw-backdrop-opacity: ;
|
|
47
|
-
--tw-backdrop-saturate: ;
|
|
48
|
-
--tw-backdrop-sepia: ;
|
|
49
|
-
--tw-contain-size: ;
|
|
50
|
-
--tw-contain-layout: ;
|
|
51
|
-
--tw-contain-paint: ;
|
|
52
|
-
--tw-contain-style: ;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
::backdrop {
|
|
56
|
-
--tw-border-spacing-x: 0;
|
|
57
|
-
--tw-border-spacing-y: 0;
|
|
58
|
-
--tw-translate-x: 0;
|
|
59
|
-
--tw-translate-y: 0;
|
|
60
|
-
--tw-rotate: 0;
|
|
61
|
-
--tw-skew-x: 0;
|
|
62
|
-
--tw-skew-y: 0;
|
|
63
|
-
--tw-scale-x: 1;
|
|
64
|
-
--tw-scale-y: 1;
|
|
65
|
-
--tw-pan-x: ;
|
|
66
|
-
--tw-pan-y: ;
|
|
67
|
-
--tw-pinch-zoom: ;
|
|
68
|
-
--tw-scroll-snap-strictness: proximity;
|
|
69
|
-
--tw-gradient-from-position: ;
|
|
70
|
-
--tw-gradient-via-position: ;
|
|
71
|
-
--tw-gradient-to-position: ;
|
|
72
|
-
--tw-ordinal: ;
|
|
73
|
-
--tw-slashed-zero: ;
|
|
74
|
-
--tw-numeric-figure: ;
|
|
75
|
-
--tw-numeric-spacing: ;
|
|
76
|
-
--tw-numeric-fraction: ;
|
|
77
|
-
--tw-ring-inset: ;
|
|
78
|
-
--tw-ring-offset-width: 0px;
|
|
79
|
-
--tw-ring-offset-color: #fff;
|
|
80
|
-
--tw-ring-color: rgb(59 130 246 / 0.5);
|
|
81
|
-
--tw-ring-offset-shadow: 0 0 #0000;
|
|
82
|
-
--tw-ring-shadow: 0 0 #0000;
|
|
83
|
-
--tw-shadow: 0 0 #0000;
|
|
84
|
-
--tw-shadow-colored: 0 0 #0000;
|
|
85
|
-
--tw-blur: ;
|
|
86
|
-
--tw-brightness: ;
|
|
87
|
-
--tw-contrast: ;
|
|
88
|
-
--tw-grayscale: ;
|
|
89
|
-
--tw-hue-rotate: ;
|
|
90
|
-
--tw-invert: ;
|
|
91
|
-
--tw-saturate: ;
|
|
92
|
-
--tw-sepia: ;
|
|
93
|
-
--tw-drop-shadow: ;
|
|
94
|
-
--tw-backdrop-blur: ;
|
|
95
|
-
--tw-backdrop-brightness: ;
|
|
96
|
-
--tw-backdrop-contrast: ;
|
|
97
|
-
--tw-backdrop-grayscale: ;
|
|
98
|
-
--tw-backdrop-hue-rotate: ;
|
|
99
|
-
--tw-backdrop-invert: ;
|
|
100
|
-
--tw-backdrop-opacity: ;
|
|
101
|
-
--tw-backdrop-saturate: ;
|
|
102
|
-
--tw-backdrop-sepia: ;
|
|
103
|
-
--tw-contain-size: ;
|
|
104
|
-
--tw-contain-layout: ;
|
|
105
|
-
--tw-contain-paint: ;
|
|
106
|
-
--tw-contain-style: ;
|
|
107
|
-
}/*
|
|
108
|
-
! tailwindcss v3.4.13 | MIT License | https://tailwindcss.com
|
|
109
|
-
*//*
|
|
110
|
-
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
|
|
111
|
-
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
|
|
112
|
-
*/
|
|
113
|
-
|
|
114
|
-
*,
|
|
115
|
-
::before,
|
|
116
|
-
::after {
|
|
117
|
-
box-sizing: border-box; /* 1 */
|
|
118
|
-
border-width: 0; /* 2 */
|
|
119
|
-
border-style: solid; /* 2 */
|
|
120
|
-
border-color: #e5e7eb; /* 2 */
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
::before,
|
|
124
|
-
::after {
|
|
125
|
-
--tw-content: '';
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
/*
|
|
129
|
-
1. Use a consistent sensible line-height in all browsers.
|
|
130
|
-
2. Prevent adjustments of font size after orientation changes in iOS.
|
|
131
|
-
3. Use a more readable tab size.
|
|
132
|
-
4. Use the user's configured \`sans\` font-family by default.
|
|
133
|
-
5. Use the user's configured \`sans\` font-feature-settings by default.
|
|
134
|
-
6. Use the user's configured \`sans\` font-variation-settings by default.
|
|
135
|
-
7. Disable tap highlights on iOS
|
|
136
|
-
*/
|
|
137
|
-
|
|
138
|
-
html,
|
|
139
|
-
:host {
|
|
140
|
-
line-height: 1.5; /* 1 */
|
|
141
|
-
-webkit-text-size-adjust: 100%; /* 2 */ /* 3 */
|
|
142
|
-
tab-size: 4; /* 3 */
|
|
143
|
-
font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
|
|
144
|
-
font-feature-settings: normal; /* 5 */
|
|
145
|
-
font-variation-settings: normal; /* 6 */
|
|
146
|
-
-webkit-tap-highlight-color: transparent; /* 7 */
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
/*
|
|
150
|
-
1. Remove the margin in all browsers.
|
|
151
|
-
2. Inherit line-height from \`html\` so users can set them as a class directly on the \`html\` element.
|
|
152
|
-
*/
|
|
153
|
-
|
|
154
|
-
body {
|
|
155
|
-
margin: 0; /* 1 */
|
|
156
|
-
line-height: inherit; /* 2 */
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
/*
|
|
160
|
-
1. Add the correct height in Firefox.
|
|
161
|
-
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
|
|
162
|
-
3. Ensure horizontal rules are visible by default.
|
|
163
|
-
*/
|
|
164
|
-
|
|
165
|
-
hr {
|
|
166
|
-
height: 0; /* 1 */
|
|
167
|
-
color: inherit; /* 2 */
|
|
168
|
-
border-top-width: 1px; /* 3 */
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
/*
|
|
172
|
-
Add the correct text decoration in Chrome, Edge, and Safari.
|
|
173
|
-
*/
|
|
174
|
-
|
|
175
|
-
abbr:where([title]) {
|
|
176
|
-
-webkit-text-decoration: underline dotted;
|
|
177
|
-
text-decoration: underline dotted;
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
/*
|
|
181
|
-
Remove the default font size and weight for headings.
|
|
182
|
-
*/
|
|
183
|
-
|
|
184
|
-
h1,
|
|
185
|
-
h2,
|
|
186
|
-
h3,
|
|
187
|
-
h4,
|
|
188
|
-
h5,
|
|
189
|
-
h6 {
|
|
190
|
-
font-size: inherit;
|
|
191
|
-
font-weight: inherit;
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
/*
|
|
195
|
-
Reset links to optimize for opt-in styling instead of opt-out.
|
|
196
|
-
*/
|
|
197
|
-
|
|
198
|
-
a {
|
|
199
|
-
color: inherit;
|
|
200
|
-
text-decoration: inherit;
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
/*
|
|
204
|
-
Add the correct font weight in Edge and Safari.
|
|
205
|
-
*/
|
|
206
|
-
|
|
207
|
-
b,
|
|
208
|
-
strong {
|
|
209
|
-
font-weight: bolder;
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
/*
|
|
213
|
-
1. Use the user's configured \`mono\` font-family by default.
|
|
214
|
-
2. Use the user's configured \`mono\` font-feature-settings by default.
|
|
215
|
-
3. Use the user's configured \`mono\` font-variation-settings by default.
|
|
216
|
-
4. Correct the odd \`em\` font sizing in all browsers.
|
|
217
|
-
*/
|
|
218
|
-
|
|
219
|
-
code,
|
|
220
|
-
kbd,
|
|
221
|
-
samp,
|
|
222
|
-
pre {
|
|
223
|
-
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
|
|
224
|
-
font-feature-settings: normal; /* 2 */
|
|
225
|
-
font-variation-settings: normal; /* 3 */
|
|
226
|
-
font-size: 1em; /* 4 */
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
/*
|
|
230
|
-
Add the correct font size in all browsers.
|
|
231
|
-
*/
|
|
232
|
-
|
|
233
|
-
small {
|
|
234
|
-
font-size: 80%;
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
/*
|
|
238
|
-
Prevent \`sub\` and \`sup\` elements from affecting the line height in all browsers.
|
|
239
|
-
*/
|
|
240
|
-
|
|
241
|
-
sub,
|
|
242
|
-
sup {
|
|
243
|
-
font-size: 75%;
|
|
244
|
-
line-height: 0;
|
|
245
|
-
position: relative;
|
|
246
|
-
vertical-align: baseline;
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
sub {
|
|
250
|
-
bottom: -0.25em;
|
|
251
|
-
}
|
|
252
|
-
|
|
253
|
-
sup {
|
|
254
|
-
top: -0.5em;
|
|
255
|
-
}
|
|
256
|
-
|
|
257
|
-
/*
|
|
258
|
-
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
|
|
259
|
-
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
|
|
260
|
-
3. Remove gaps between table borders by default.
|
|
261
|
-
*/
|
|
262
|
-
|
|
263
|
-
table {
|
|
264
|
-
text-indent: 0; /* 1 */
|
|
265
|
-
border-color: inherit; /* 2 */
|
|
266
|
-
border-collapse: collapse; /* 3 */
|
|
267
|
-
}
|
|
268
|
-
|
|
269
|
-
/*
|
|
270
|
-
1. Change the font styles in all browsers.
|
|
271
|
-
2. Remove the margin in Firefox and Safari.
|
|
272
|
-
3. Remove default padding in all browsers.
|
|
273
|
-
*/
|
|
274
|
-
|
|
275
|
-
button,
|
|
276
|
-
input,
|
|
277
|
-
optgroup,
|
|
278
|
-
select,
|
|
279
|
-
textarea {
|
|
280
|
-
font-family: inherit; /* 1 */
|
|
281
|
-
font-feature-settings: inherit; /* 1 */
|
|
282
|
-
font-variation-settings: inherit; /* 1 */
|
|
283
|
-
font-size: 100%; /* 1 */
|
|
284
|
-
font-weight: inherit; /* 1 */
|
|
285
|
-
line-height: inherit; /* 1 */
|
|
286
|
-
letter-spacing: inherit; /* 1 */
|
|
287
|
-
color: inherit; /* 1 */
|
|
288
|
-
margin: 0; /* 2 */
|
|
289
|
-
padding: 0; /* 3 */
|
|
290
|
-
}
|
|
291
|
-
|
|
292
|
-
/*
|
|
293
|
-
Remove the inheritance of text transform in Edge and Firefox.
|
|
294
|
-
*/
|
|
295
|
-
|
|
296
|
-
button,
|
|
297
|
-
select {
|
|
298
|
-
text-transform: none;
|
|
299
|
-
}
|
|
300
|
-
|
|
301
|
-
/*
|
|
302
|
-
1. Correct the inability to style clickable types in iOS and Safari.
|
|
303
|
-
2. Remove default button styles.
|
|
304
|
-
*/
|
|
305
|
-
|
|
306
|
-
button,
|
|
307
|
-
input:where([type='button']),
|
|
308
|
-
input:where([type='reset']),
|
|
309
|
-
input:where([type='submit']) {
|
|
310
|
-
-webkit-appearance: button; /* 1 */
|
|
311
|
-
background-color: transparent; /* 2 */
|
|
312
|
-
background-image: none; /* 2 */
|
|
313
|
-
}
|
|
314
|
-
|
|
315
|
-
/*
|
|
316
|
-
Use the modern Firefox focus style for all focusable elements.
|
|
317
|
-
*/
|
|
318
|
-
|
|
319
|
-
:-moz-focusring {
|
|
320
|
-
outline: auto;
|
|
321
|
-
}
|
|
322
|
-
|
|
323
|
-
/*
|
|
324
|
-
Remove the additional \`:invalid\` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
|
|
325
|
-
*/
|
|
326
|
-
|
|
327
|
-
:-moz-ui-invalid {
|
|
328
|
-
box-shadow: none;
|
|
329
|
-
}
|
|
330
|
-
|
|
331
|
-
/*
|
|
332
|
-
Add the correct vertical alignment in Chrome and Firefox.
|
|
333
|
-
*/
|
|
334
|
-
|
|
335
|
-
progress {
|
|
336
|
-
vertical-align: baseline;
|
|
337
|
-
}
|
|
338
|
-
|
|
339
|
-
/*
|
|
340
|
-
Correct the cursor style of increment and decrement buttons in Safari.
|
|
341
|
-
*/
|
|
342
|
-
|
|
343
|
-
::-webkit-inner-spin-button,
|
|
344
|
-
::-webkit-outer-spin-button {
|
|
345
|
-
height: auto;
|
|
346
|
-
}
|
|
347
|
-
|
|
348
|
-
/*
|
|
349
|
-
1. Correct the odd appearance in Chrome and Safari.
|
|
350
|
-
2. Correct the outline style in Safari.
|
|
351
|
-
*/
|
|
352
|
-
|
|
353
|
-
[type='search'] {
|
|
354
|
-
-webkit-appearance: textfield; /* 1 */
|
|
355
|
-
outline-offset: -2px; /* 2 */
|
|
356
|
-
}
|
|
357
|
-
|
|
358
|
-
/*
|
|
359
|
-
Remove the inner padding in Chrome and Safari on macOS.
|
|
360
|
-
*/
|
|
361
|
-
|
|
362
|
-
::-webkit-search-decoration {
|
|
363
|
-
-webkit-appearance: none;
|
|
364
|
-
}
|
|
365
|
-
|
|
366
|
-
/*
|
|
367
|
-
1. Correct the inability to style clickable types in iOS and Safari.
|
|
368
|
-
2. Change font properties to \`inherit\` in Safari.
|
|
369
|
-
*/
|
|
370
|
-
|
|
371
|
-
::-webkit-file-upload-button {
|
|
372
|
-
-webkit-appearance: button; /* 1 */
|
|
373
|
-
font: inherit; /* 2 */
|
|
374
|
-
}
|
|
375
|
-
|
|
376
|
-
/*
|
|
377
|
-
Add the correct display in Chrome and Safari.
|
|
378
|
-
*/
|
|
379
|
-
|
|
380
|
-
summary {
|
|
381
|
-
display: list-item;
|
|
382
|
-
}
|
|
383
|
-
|
|
384
|
-
/*
|
|
385
|
-
Removes the default spacing and border for appropriate elements.
|
|
386
|
-
*/
|
|
387
|
-
|
|
388
|
-
blockquote,
|
|
389
|
-
dl,
|
|
390
|
-
dd,
|
|
391
|
-
h1,
|
|
392
|
-
h2,
|
|
393
|
-
h3,
|
|
394
|
-
h4,
|
|
395
|
-
h5,
|
|
396
|
-
h6,
|
|
397
|
-
hr,
|
|
398
|
-
figure,
|
|
399
|
-
p,
|
|
400
|
-
pre {
|
|
401
|
-
margin: 0;
|
|
402
|
-
}
|
|
403
|
-
|
|
404
|
-
fieldset {
|
|
405
|
-
margin: 0;
|
|
406
|
-
padding: 0;
|
|
407
|
-
}
|
|
408
|
-
|
|
409
|
-
legend {
|
|
410
|
-
padding: 0;
|
|
411
|
-
}
|
|
412
|
-
|
|
413
|
-
ol,
|
|
414
|
-
ul,
|
|
415
|
-
menu {
|
|
416
|
-
list-style: none;
|
|
417
|
-
margin: 0;
|
|
418
|
-
padding: 0;
|
|
419
|
-
}
|
|
420
|
-
|
|
421
|
-
/*
|
|
422
|
-
Reset default styling for dialogs.
|
|
423
|
-
*/
|
|
424
|
-
dialog {
|
|
425
|
-
padding: 0;
|
|
426
|
-
}
|
|
427
|
-
|
|
428
|
-
/*
|
|
429
|
-
Prevent resizing textareas horizontally by default.
|
|
430
|
-
*/
|
|
431
|
-
|
|
432
|
-
textarea {
|
|
433
|
-
resize: vertical;
|
|
434
|
-
}
|
|
435
|
-
|
|
436
|
-
/*
|
|
437
|
-
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
|
|
438
|
-
2. Set the default placeholder color to the user's configured gray 400 color.
|
|
439
|
-
*/
|
|
440
|
-
|
|
441
|
-
input::placeholder,
|
|
442
|
-
textarea::placeholder {
|
|
443
|
-
opacity: 1; /* 1 */
|
|
444
|
-
color: #9ca3af; /* 2 */
|
|
445
|
-
}
|
|
446
|
-
|
|
447
|
-
/*
|
|
448
|
-
Set the default cursor for buttons.
|
|
449
|
-
*/
|
|
450
|
-
|
|
451
|
-
button,
|
|
452
|
-
[role="button"] {
|
|
453
|
-
cursor: pointer;
|
|
454
|
-
}
|
|
455
|
-
|
|
456
|
-
/*
|
|
457
|
-
Make sure disabled buttons don't get the pointer cursor.
|
|
458
|
-
*/
|
|
459
|
-
:disabled {
|
|
460
|
-
cursor: default;
|
|
461
|
-
}
|
|
462
|
-
|
|
463
|
-
/*
|
|
464
|
-
1. Make replaced elements \`display: block\` by default. (https://github.com/mozdevs/cssremedy/issues/14)
|
|
465
|
-
2. Add \`vertical-align: middle\` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
|
|
466
|
-
This can trigger a poorly considered lint error in some tools but is included by design.
|
|
467
|
-
*/
|
|
468
|
-
|
|
469
|
-
img,
|
|
470
|
-
svg,
|
|
471
|
-
video,
|
|
472
|
-
canvas,
|
|
473
|
-
audio,
|
|
474
|
-
iframe,
|
|
475
|
-
embed,
|
|
476
|
-
object {
|
|
477
|
-
display: block; /* 1 */
|
|
478
|
-
vertical-align: middle; /* 2 */
|
|
479
|
-
}
|
|
480
|
-
|
|
481
|
-
/*
|
|
482
|
-
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
|
|
483
|
-
*/
|
|
484
|
-
|
|
485
|
-
img,
|
|
486
|
-
video {
|
|
487
|
-
max-width: 100%;
|
|
488
|
-
height: auto;
|
|
489
|
-
}
|
|
490
|
-
|
|
491
|
-
/* Make elements with the HTML hidden attribute stay hidden by default */
|
|
492
|
-
[hidden] {
|
|
493
|
-
display: none;
|
|
494
|
-
}
|
|
495
|
-
|
|
496
|
-
.container {
|
|
497
|
-
width: 100%;
|
|
498
|
-
}
|
|
499
|
-
|
|
500
|
-
@media (min-width: 640px) {
|
|
501
|
-
|
|
502
|
-
.container {
|
|
503
|
-
max-width: 640px;
|
|
504
|
-
}
|
|
505
|
-
}
|
|
506
|
-
|
|
507
|
-
@media (min-width: 768px) {
|
|
508
|
-
|
|
509
|
-
.container {
|
|
510
|
-
max-width: 768px;
|
|
511
|
-
}
|
|
512
|
-
}
|
|
513
|
-
|
|
514
|
-
@media (min-width: 1024px) {
|
|
515
|
-
|
|
516
|
-
.container {
|
|
517
|
-
max-width: 1024px;
|
|
518
|
-
}
|
|
519
|
-
}
|
|
520
|
-
|
|
521
|
-
@media (min-width: 1280px) {
|
|
522
|
-
|
|
523
|
-
.container {
|
|
524
|
-
max-width: 1280px;
|
|
525
|
-
}
|
|
526
|
-
}
|
|
527
|
-
|
|
528
|
-
@media (min-width: 1536px) {
|
|
529
|
-
|
|
530
|
-
.container {
|
|
531
|
-
max-width: 1536px;
|
|
532
|
-
}
|
|
533
|
-
}
|
|
534
|
-
|
|
535
|
-
.grid-cols-2.divide-y > :not([hidden]) ~ :not([hidden]):nth-child(-n + 2) {
|
|
536
|
-
border-top-width: 0;
|
|
537
|
-
border-bottom-width: 0;
|
|
538
|
-
}
|
|
539
|
-
|
|
540
|
-
.sr-only {
|
|
541
|
-
position: absolute;
|
|
542
|
-
width: 1px;
|
|
543
|
-
height: 1px;
|
|
544
|
-
padding: 0;
|
|
545
|
-
margin: -1px;
|
|
546
|
-
overflow: hidden;
|
|
547
|
-
clip: rect(0, 0, 0, 0);
|
|
548
|
-
white-space: nowrap;
|
|
549
|
-
border-width: 0;
|
|
550
|
-
}
|
|
551
|
-
|
|
552
|
-
.pointer-events-none {
|
|
553
|
-
pointer-events: none;
|
|
554
|
-
}
|
|
555
|
-
|
|
556
|
-
.pointer-events-auto {
|
|
557
|
-
pointer-events: auto;
|
|
558
|
-
}
|
|
559
|
-
|
|
560
|
-
.fixed {
|
|
561
|
-
position: fixed;
|
|
562
|
-
}
|
|
563
|
-
|
|
564
|
-
.absolute {
|
|
565
|
-
position: absolute;
|
|
566
|
-
}
|
|
567
|
-
|
|
568
|
-
.relative {
|
|
569
|
-
position: relative;
|
|
570
|
-
}
|
|
571
|
-
|
|
572
|
-
.inset-0 {
|
|
573
|
-
inset: 0px;
|
|
574
|
-
}
|
|
575
|
-
|
|
576
|
-
.right-0 {
|
|
577
|
-
right: 0px;
|
|
578
|
-
}
|
|
579
|
-
|
|
580
|
-
.top-0 {
|
|
581
|
-
top: 0px;
|
|
582
|
-
}
|
|
583
|
-
|
|
584
|
-
.col-start-1 {
|
|
585
|
-
grid-column-start: 1;
|
|
586
|
-
}
|
|
587
|
-
|
|
588
|
-
.row-start-1 {
|
|
589
|
-
grid-row-start: 1;
|
|
590
|
-
}
|
|
591
|
-
|
|
592
|
-
.m-0 {
|
|
593
|
-
margin: 0px;
|
|
594
|
-
}
|
|
595
|
-
|
|
596
|
-
.m-2 {
|
|
597
|
-
margin: 0.5rem;
|
|
598
|
-
}
|
|
599
|
-
|
|
600
|
-
.-mx-0\\.5 {
|
|
601
|
-
margin-left: -0.125rem;
|
|
602
|
-
margin-right: -0.125rem;
|
|
603
|
-
}
|
|
604
|
-
|
|
605
|
-
.-my-1 {
|
|
606
|
-
margin-top: -0.25rem;
|
|
607
|
-
margin-bottom: -0.25rem;
|
|
608
|
-
}
|
|
609
|
-
|
|
610
|
-
.-my-\\[0\\.125em\\] {
|
|
611
|
-
margin-top: -0.125em;
|
|
612
|
-
margin-bottom: -0.125em;
|
|
613
|
-
}
|
|
614
|
-
|
|
615
|
-
.mx-auto {
|
|
616
|
-
margin-left: auto;
|
|
617
|
-
margin-right: auto;
|
|
618
|
-
}
|
|
619
|
-
|
|
620
|
-
.-ml-3 {
|
|
621
|
-
margin-left: -0.75rem;
|
|
622
|
-
}
|
|
623
|
-
|
|
624
|
-
.block {
|
|
625
|
-
display: block;
|
|
626
|
-
}
|
|
627
|
-
|
|
628
|
-
.flex {
|
|
629
|
-
display: flex;
|
|
630
|
-
}
|
|
631
|
-
|
|
632
|
-
.inline-flex {
|
|
633
|
-
display: inline-flex;
|
|
634
|
-
}
|
|
635
|
-
|
|
636
|
-
.table {
|
|
637
|
-
display: table;
|
|
638
|
-
}
|
|
639
|
-
|
|
640
|
-
.grid {
|
|
641
|
-
display: grid;
|
|
642
|
-
}
|
|
643
|
-
|
|
644
|
-
.inline-grid {
|
|
645
|
-
display: inline-grid;
|
|
646
|
-
}
|
|
647
|
-
|
|
648
|
-
.contents {
|
|
649
|
-
display: contents;
|
|
650
|
-
}
|
|
651
|
-
|
|
652
|
-
.h-16 {
|
|
653
|
-
height: 4rem;
|
|
654
|
-
}
|
|
655
|
-
|
|
656
|
-
.h-4 {
|
|
657
|
-
height: 1rem;
|
|
658
|
-
}
|
|
659
|
-
|
|
660
|
-
.h-6 {
|
|
661
|
-
height: 1.5rem;
|
|
662
|
-
}
|
|
663
|
-
|
|
664
|
-
.h-\\[1\\.25em\\] {
|
|
665
|
-
height: 1.25em;
|
|
666
|
-
}
|
|
667
|
-
|
|
668
|
-
.h-\\[1em\\] {
|
|
669
|
-
height: 1em;
|
|
670
|
-
}
|
|
671
|
-
|
|
672
|
-
.h-full {
|
|
673
|
-
height: 100%;
|
|
674
|
-
}
|
|
675
|
-
|
|
676
|
-
.max-h-32 {
|
|
677
|
-
max-height: 8rem;
|
|
678
|
-
}
|
|
679
|
-
|
|
680
|
-
.min-h-\\[26rem\\] {
|
|
681
|
-
min-height: 26rem;
|
|
682
|
-
}
|
|
683
|
-
|
|
684
|
-
.w-16 {
|
|
685
|
-
width: 4rem;
|
|
686
|
-
}
|
|
687
|
-
|
|
688
|
-
.w-28 {
|
|
689
|
-
width: 7rem;
|
|
690
|
-
}
|
|
691
|
-
|
|
692
|
-
.w-4 {
|
|
693
|
-
width: 1rem;
|
|
694
|
-
}
|
|
695
|
-
|
|
696
|
-
.w-48 {
|
|
697
|
-
width: 12rem;
|
|
698
|
-
}
|
|
699
|
-
|
|
700
|
-
.w-6 {
|
|
701
|
-
width: 1.5rem;
|
|
702
|
-
}
|
|
703
|
-
|
|
704
|
-
.w-60 {
|
|
705
|
-
width: 15rem;
|
|
706
|
-
}
|
|
707
|
-
|
|
708
|
-
.w-\\[0\\.6em\\] {
|
|
709
|
-
width: 0.6em;
|
|
710
|
-
}
|
|
711
|
-
|
|
712
|
-
.w-\\[1\\.25em\\] {
|
|
713
|
-
width: 1.25em;
|
|
714
|
-
}
|
|
715
|
-
|
|
716
|
-
.w-full {
|
|
717
|
-
width: 100%;
|
|
718
|
-
}
|
|
719
|
-
|
|
720
|
-
.max-w-\\[26rem\\] {
|
|
721
|
-
max-width: 26rem;
|
|
722
|
-
}
|
|
723
|
-
|
|
724
|
-
.flex-shrink-0 {
|
|
725
|
-
flex-shrink: 0;
|
|
726
|
-
}
|
|
727
|
-
|
|
728
|
-
.flex-grow {
|
|
729
|
-
flex-grow: 1;
|
|
730
|
-
}
|
|
731
|
-
|
|
732
|
-
.translate-x-2 {
|
|
733
|
-
--tw-translate-x: 0.5rem;
|
|
734
|
-
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
735
|
-
}
|
|
736
|
-
|
|
737
|
-
.scale-100 {
|
|
738
|
-
--tw-scale-x: 1;
|
|
739
|
-
--tw-scale-y: 1;
|
|
740
|
-
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
741
|
-
}
|
|
742
|
-
|
|
743
|
-
.scale-50 {
|
|
744
|
-
--tw-scale-x: .5;
|
|
745
|
-
--tw-scale-y: .5;
|
|
746
|
-
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
747
|
-
}
|
|
748
|
-
|
|
749
|
-
@keyframes spin {
|
|
750
|
-
|
|
751
|
-
to {
|
|
752
|
-
transform: rotate(360deg);
|
|
753
|
-
}
|
|
754
|
-
}
|
|
755
|
-
|
|
756
|
-
.animate-spin {
|
|
757
|
-
animation: spin 1s linear infinite;
|
|
758
|
-
}
|
|
759
|
-
|
|
760
|
-
.cursor-pointer {
|
|
761
|
-
cursor: pointer;
|
|
762
|
-
}
|
|
763
|
-
|
|
764
|
-
.grid-cols-\\[1fr_auto_1fr\\] {
|
|
765
|
-
grid-template-columns: 1fr auto 1fr;
|
|
766
|
-
}
|
|
767
|
-
|
|
768
|
-
.flex-col {
|
|
769
|
-
flex-direction: column;
|
|
770
|
-
}
|
|
771
|
-
|
|
772
|
-
.place-items-center {
|
|
773
|
-
place-items: center;
|
|
774
|
-
}
|
|
775
|
-
|
|
776
|
-
.items-end {
|
|
777
|
-
align-items: flex-end;
|
|
778
|
-
}
|
|
779
|
-
|
|
780
|
-
.items-center {
|
|
781
|
-
align-items: center;
|
|
782
|
-
}
|
|
783
|
-
|
|
784
|
-
.justify-end {
|
|
785
|
-
justify-content: flex-end;
|
|
786
|
-
}
|
|
787
|
-
|
|
788
|
-
.justify-center {
|
|
789
|
-
justify-content: center;
|
|
790
|
-
}
|
|
791
|
-
|
|
792
|
-
.justify-between {
|
|
793
|
-
justify-content: space-between;
|
|
794
|
-
}
|
|
795
|
-
|
|
796
|
-
.gap-1 {
|
|
797
|
-
gap: 0.25rem;
|
|
798
|
-
}
|
|
799
|
-
|
|
800
|
-
.gap-2 {
|
|
801
|
-
gap: 0.5rem;
|
|
802
|
-
}
|
|
803
|
-
|
|
804
|
-
.gap-2\\.5 {
|
|
805
|
-
gap: 0.625rem;
|
|
806
|
-
}
|
|
807
|
-
|
|
808
|
-
.gap-4 {
|
|
809
|
-
gap: 1rem;
|
|
810
|
-
}
|
|
811
|
-
|
|
812
|
-
.gap-6 {
|
|
813
|
-
gap: 1.5rem;
|
|
814
|
-
}
|
|
815
|
-
|
|
816
|
-
.divide-y > :not([hidden]) ~ :not([hidden]) {
|
|
817
|
-
--tw-divide-y-reverse: 0;
|
|
818
|
-
border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
|
|
819
|
-
border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
|
|
820
|
-
}
|
|
821
|
-
|
|
822
|
-
.divide-neutral-700 > :not([hidden]) ~ :not([hidden]) {
|
|
823
|
-
--tw-divide-opacity: 1;
|
|
824
|
-
border-color: rgb(64 64 64 / var(--tw-divide-opacity));
|
|
825
|
-
}
|
|
826
|
-
|
|
827
|
-
.divide-neutral-800 > :not([hidden]) ~ :not([hidden]) {
|
|
828
|
-
--tw-divide-opacity: 1;
|
|
829
|
-
border-color: rgb(38 38 38 / var(--tw-divide-opacity));
|
|
830
|
-
}
|
|
831
|
-
|
|
832
|
-
.self-auto {
|
|
833
|
-
align-self: auto;
|
|
834
|
-
}
|
|
835
|
-
|
|
836
|
-
.self-end {
|
|
837
|
-
align-self: flex-end;
|
|
838
|
-
}
|
|
839
|
-
|
|
840
|
-
.self-center {
|
|
841
|
-
align-self: center;
|
|
842
|
-
}
|
|
843
|
-
|
|
844
|
-
.overflow-y-scroll {
|
|
845
|
-
overflow-y: scroll;
|
|
846
|
-
}
|
|
847
|
-
|
|
848
|
-
.whitespace-break-spaces {
|
|
849
|
-
white-space: break-spaces;
|
|
850
|
-
}
|
|
851
|
-
|
|
852
|
-
.break-all {
|
|
853
|
-
word-break: break-all;
|
|
854
|
-
}
|
|
855
|
-
|
|
856
|
-
.rounded-full {
|
|
857
|
-
border-radius: 9999px;
|
|
858
|
-
}
|
|
859
|
-
|
|
860
|
-
.border {
|
|
861
|
-
border-width: 1px;
|
|
862
|
-
}
|
|
863
|
-
|
|
864
|
-
.border-4 {
|
|
865
|
-
border-width: 4px;
|
|
866
|
-
}
|
|
867
|
-
|
|
868
|
-
.border-l-4 {
|
|
869
|
-
border-left-width: 4px;
|
|
870
|
-
}
|
|
871
|
-
|
|
872
|
-
.border-neutral-300 {
|
|
873
|
-
--tw-border-opacity: 1;
|
|
874
|
-
border-color: rgb(212 212 212 / var(--tw-border-opacity));
|
|
875
|
-
}
|
|
876
|
-
|
|
877
|
-
.border-red-500 {
|
|
878
|
-
--tw-border-opacity: 1;
|
|
879
|
-
border-color: rgb(239 68 68 / var(--tw-border-opacity));
|
|
880
|
-
}
|
|
881
|
-
|
|
882
|
-
.border-transparent {
|
|
883
|
-
border-color: transparent;
|
|
884
|
-
}
|
|
885
|
-
|
|
886
|
-
.bg-black\\/10 {
|
|
887
|
-
background-color: rgb(0 0 0 / 0.1);
|
|
888
|
-
}
|
|
889
|
-
|
|
890
|
-
.bg-neutral-100 {
|
|
891
|
-
--tw-bg-opacity: 1;
|
|
892
|
-
background-color: rgb(245 245 245 / var(--tw-bg-opacity));
|
|
893
|
-
}
|
|
894
|
-
|
|
895
|
-
.bg-neutral-700 {
|
|
896
|
-
--tw-bg-opacity: 1;
|
|
897
|
-
background-color: rgb(64 64 64 / var(--tw-bg-opacity));
|
|
898
|
-
}
|
|
899
|
-
|
|
900
|
-
.bg-neutral-800 {
|
|
901
|
-
--tw-bg-opacity: 1;
|
|
902
|
-
background-color: rgb(38 38 38 / var(--tw-bg-opacity));
|
|
903
|
-
}
|
|
904
|
-
|
|
905
|
-
.bg-neutral-800\\/85 {
|
|
906
|
-
background-color: rgb(38 38 38 / 0.85);
|
|
907
|
-
}
|
|
908
|
-
|
|
909
|
-
.bg-neutral-900 {
|
|
910
|
-
--tw-bg-opacity: 1;
|
|
911
|
-
background-color: rgb(23 23 23 / var(--tw-bg-opacity));
|
|
912
|
-
}
|
|
913
|
-
|
|
914
|
-
.bg-orange-500 {
|
|
915
|
-
--tw-bg-opacity: 1;
|
|
916
|
-
background-color: rgb(249 115 22 / var(--tw-bg-opacity));
|
|
917
|
-
}
|
|
918
|
-
|
|
919
|
-
.bg-orange-600 {
|
|
920
|
-
--tw-bg-opacity: 1;
|
|
921
|
-
background-color: rgb(234 88 12 / var(--tw-bg-opacity));
|
|
922
|
-
}
|
|
923
|
-
|
|
924
|
-
.bg-red-100 {
|
|
925
|
-
--tw-bg-opacity: 1;
|
|
926
|
-
background-color: rgb(254 226 226 / var(--tw-bg-opacity));
|
|
927
|
-
}
|
|
928
|
-
|
|
929
|
-
.bg-white {
|
|
930
|
-
--tw-bg-opacity: 1;
|
|
931
|
-
background-color: rgb(255 255 255 / var(--tw-bg-opacity));
|
|
932
|
-
}
|
|
933
|
-
|
|
934
|
-
.bg-cover {
|
|
935
|
-
background-size: cover;
|
|
936
|
-
}
|
|
937
|
-
|
|
938
|
-
.bg-center {
|
|
939
|
-
background-position: center;
|
|
940
|
-
}
|
|
941
|
-
|
|
942
|
-
.bg-no-repeat {
|
|
943
|
-
background-repeat: no-repeat;
|
|
944
|
-
}
|
|
945
|
-
|
|
946
|
-
.object-cover {
|
|
947
|
-
object-fit: cover;
|
|
948
|
-
}
|
|
949
|
-
|
|
950
|
-
.p-1 {
|
|
951
|
-
padding: 0.25rem;
|
|
952
|
-
}
|
|
953
|
-
|
|
954
|
-
.p-2 {
|
|
955
|
-
padding: 0.5rem;
|
|
956
|
-
}
|
|
957
|
-
|
|
958
|
-
.p-2\\.5 {
|
|
959
|
-
padding: 0.625rem;
|
|
960
|
-
}
|
|
961
|
-
|
|
962
|
-
.p-3 {
|
|
963
|
-
padding: 0.75rem;
|
|
964
|
-
}
|
|
965
|
-
|
|
966
|
-
.p-4 {
|
|
967
|
-
padding: 1rem;
|
|
968
|
-
}
|
|
969
|
-
|
|
970
|
-
.p-5 {
|
|
971
|
-
padding: 1.25rem;
|
|
972
|
-
}
|
|
973
|
-
|
|
974
|
-
.p-6 {
|
|
975
|
-
padding: 1.5rem;
|
|
976
|
-
}
|
|
977
|
-
|
|
978
|
-
.p-\\[\\.75em\\] {
|
|
979
|
-
padding: .75em;
|
|
980
|
-
}
|
|
981
|
-
|
|
982
|
-
.px-3 {
|
|
983
|
-
padding-left: 0.75rem;
|
|
984
|
-
padding-right: 0.75rem;
|
|
985
|
-
}
|
|
986
|
-
|
|
987
|
-
.px-8 {
|
|
988
|
-
padding-left: 2rem;
|
|
989
|
-
padding-right: 2rem;
|
|
990
|
-
}
|
|
991
|
-
|
|
992
|
-
.py-2 {
|
|
993
|
-
padding-top: 0.5rem;
|
|
994
|
-
padding-bottom: 0.5rem;
|
|
995
|
-
}
|
|
996
|
-
|
|
997
|
-
.py-8 {
|
|
998
|
-
padding-top: 2rem;
|
|
999
|
-
padding-bottom: 2rem;
|
|
1000
|
-
}
|
|
1001
|
-
|
|
1002
|
-
.text-left {
|
|
1003
|
-
text-align: left;
|
|
1004
|
-
}
|
|
1005
|
-
|
|
1006
|
-
.text-center {
|
|
1007
|
-
text-align: center;
|
|
1008
|
-
}
|
|
1009
|
-
|
|
1010
|
-
.font-mono {
|
|
1011
|
-
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
|
1012
|
-
}
|
|
1013
|
-
|
|
1014
|
-
.text-2xl {
|
|
1015
|
-
font-size: 1.5rem;
|
|
1016
|
-
line-height: 2rem;
|
|
1017
|
-
}
|
|
1018
|
-
|
|
1019
|
-
.text-\\[\\.75em\\] {
|
|
1020
|
-
font-size: .75em;
|
|
1021
|
-
}
|
|
1022
|
-
|
|
1023
|
-
.text-base {
|
|
1024
|
-
font-size: 1rem;
|
|
1025
|
-
line-height: 1.5rem;
|
|
1026
|
-
}
|
|
1027
|
-
|
|
1028
|
-
.text-lg {
|
|
1029
|
-
font-size: 1.125rem;
|
|
1030
|
-
line-height: 1.75rem;
|
|
1031
|
-
}
|
|
1032
|
-
|
|
1033
|
-
.text-sm {
|
|
1034
|
-
font-size: 0.875rem;
|
|
1035
|
-
line-height: 1.25rem;
|
|
1036
|
-
}
|
|
1037
|
-
|
|
1038
|
-
.text-xs {
|
|
1039
|
-
font-size: 0.75rem;
|
|
1040
|
-
line-height: 1rem;
|
|
1041
|
-
}
|
|
1042
|
-
|
|
1043
|
-
.font-medium {
|
|
1044
|
-
font-weight: 500;
|
|
1045
|
-
}
|
|
1046
|
-
|
|
1047
|
-
.font-semibold {
|
|
1048
|
-
font-weight: 600;
|
|
1049
|
-
}
|
|
1050
|
-
|
|
1051
|
-
.leading-none {
|
|
1052
|
-
line-height: 1;
|
|
1053
|
-
}
|
|
1054
|
-
|
|
1055
|
-
.tracking-\\[-1ch\\] {
|
|
1056
|
-
letter-spacing: -1ch;
|
|
1057
|
-
}
|
|
1058
|
-
|
|
1059
|
-
.text-black {
|
|
1060
|
-
--tw-text-opacity: 1;
|
|
1061
|
-
color: rgb(0 0 0 / var(--tw-text-opacity));
|
|
1062
|
-
}
|
|
1063
|
-
|
|
1064
|
-
.text-neutral-400 {
|
|
1065
|
-
--tw-text-opacity: 1;
|
|
1066
|
-
color: rgb(163 163 163 / var(--tw-text-opacity));
|
|
1067
|
-
}
|
|
1068
|
-
|
|
1069
|
-
.text-neutral-500 {
|
|
1070
|
-
--tw-text-opacity: 1;
|
|
1071
|
-
color: rgb(115 115 115 / var(--tw-text-opacity));
|
|
1072
|
-
}
|
|
1073
|
-
|
|
1074
|
-
.text-neutral-700 {
|
|
1075
|
-
--tw-text-opacity: 1;
|
|
1076
|
-
color: rgb(64 64 64 / var(--tw-text-opacity));
|
|
1077
|
-
}
|
|
1078
|
-
|
|
1079
|
-
.text-orange-500 {
|
|
1080
|
-
--tw-text-opacity: 1;
|
|
1081
|
-
color: rgb(249 115 22 / var(--tw-text-opacity));
|
|
1082
|
-
}
|
|
1083
|
-
|
|
1084
|
-
.text-red-900 {
|
|
1085
|
-
--tw-text-opacity: 1;
|
|
1086
|
-
color: rgb(127 29 29 / var(--tw-text-opacity));
|
|
1087
|
-
}
|
|
1088
|
-
|
|
1089
|
-
.text-transparent {
|
|
1090
|
-
color: transparent;
|
|
1091
|
-
}
|
|
1092
|
-
|
|
1093
|
-
.text-white {
|
|
1094
|
-
--tw-text-opacity: 1;
|
|
1095
|
-
color: rgb(255 255 255 / var(--tw-text-opacity));
|
|
1096
|
-
}
|
|
1097
|
-
|
|
1098
|
-
.opacity-0 {
|
|
1099
|
-
opacity: 0;
|
|
1100
|
-
}
|
|
1101
|
-
|
|
1102
|
-
.opacity-100 {
|
|
1103
|
-
opacity: 1;
|
|
1104
|
-
}
|
|
1105
|
-
|
|
1106
|
-
.opacity-25 {
|
|
1107
|
-
opacity: 0.25;
|
|
1108
|
-
}
|
|
1109
|
-
|
|
1110
|
-
.opacity-30 {
|
|
1111
|
-
opacity: 0.3;
|
|
1112
|
-
}
|
|
1113
|
-
|
|
1114
|
-
.opacity-75 {
|
|
1115
|
-
opacity: 0.75;
|
|
1116
|
-
}
|
|
1117
|
-
|
|
1118
|
-
.outline-none {
|
|
1119
|
-
outline: 2px solid transparent;
|
|
1120
|
-
outline-offset: 2px;
|
|
1121
|
-
}
|
|
1122
|
-
|
|
1123
|
-
.ring-1 {
|
|
1124
|
-
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
|
|
1125
|
-
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
|
|
1126
|
-
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
|
|
1127
|
-
}
|
|
1128
|
-
|
|
1129
|
-
.ring-2 {
|
|
1130
|
-
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
|
|
1131
|
-
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
|
|
1132
|
-
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
|
|
1133
|
-
}
|
|
1134
|
-
|
|
1135
|
-
.ring-neutral-700\\/50 {
|
|
1136
|
-
--tw-ring-color: rgb(64 64 64 / 0.5);
|
|
1137
|
-
}
|
|
1138
|
-
|
|
1139
|
-
.ring-transparent {
|
|
1140
|
-
--tw-ring-color: transparent;
|
|
1141
|
-
}
|
|
1142
|
-
|
|
1143
|
-
.filter {
|
|
1144
|
-
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
1145
|
-
}
|
|
1146
|
-
|
|
1147
|
-
.transition {
|
|
1148
|
-
transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
|
|
1149
|
-
transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
|
|
1150
|
-
transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
|
|
1151
|
-
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
|
1152
|
-
transition-duration: 150ms;
|
|
1153
|
-
}
|
|
1154
|
-
|
|
1155
|
-
.duration-100 {
|
|
1156
|
-
transition-duration: 100ms;
|
|
1157
|
-
}
|
|
1158
|
-
|
|
1159
|
-
.duration-300 {
|
|
1160
|
-
transition-duration: 300ms;
|
|
1161
|
-
}
|
|
1162
|
-
|
|
1163
|
-
@keyframes enter {
|
|
1164
|
-
|
|
1165
|
-
from {
|
|
1166
|
-
opacity: var(--tw-enter-opacity, 1);
|
|
1167
|
-
transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0));
|
|
1168
|
-
}
|
|
1169
|
-
}
|
|
1170
|
-
|
|
1171
|
-
@keyframes exit {
|
|
1172
|
-
|
|
1173
|
-
to {
|
|
1174
|
-
opacity: var(--tw-exit-opacity, 1);
|
|
1175
|
-
transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0));
|
|
1176
|
-
}
|
|
1177
|
-
}
|
|
1178
|
-
|
|
1179
|
-
.animate-in {
|
|
1180
|
-
animation-name: enter;
|
|
1181
|
-
animation-duration: 150ms;
|
|
1182
|
-
--tw-enter-opacity: initial;
|
|
1183
|
-
--tw-enter-scale: initial;
|
|
1184
|
-
--tw-enter-rotate: initial;
|
|
1185
|
-
--tw-enter-translate-x: initial;
|
|
1186
|
-
--tw-enter-translate-y: initial;
|
|
1187
|
-
}
|
|
1188
|
-
|
|
1189
|
-
.fade-in {
|
|
1190
|
-
--tw-enter-opacity: 0;
|
|
1191
|
-
}
|
|
1192
|
-
|
|
1193
|
-
.slide-in-from-bottom-16 {
|
|
1194
|
-
--tw-enter-translate-y: 4rem;
|
|
1195
|
-
}
|
|
1196
|
-
|
|
1197
|
-
.slide-in-from-bottom-8 {
|
|
1198
|
-
--tw-enter-translate-y: 2rem;
|
|
1199
|
-
}
|
|
1200
|
-
|
|
1201
|
-
.animate-duration-300 {
|
|
1202
|
-
animation-duration: 300ms;
|
|
1203
|
-
}
|
|
1204
|
-
|
|
1205
|
-
@property --tw-border-gradient-angle {
|
|
1206
|
-
syntax: '<angle>';
|
|
1207
|
-
inherits: true;
|
|
1208
|
-
initial-value: 0deg;
|
|
1209
|
-
}
|
|
1210
|
-
|
|
1211
|
-
@property --tw-conic-gradient-angle {
|
|
1212
|
-
syntax: '<angle>';
|
|
1213
|
-
inherits: true;
|
|
1214
|
-
initial-value: 0deg;
|
|
1215
|
-
}
|
|
1216
|
-
|
|
1217
|
-
@keyframes border-gradient {
|
|
1218
|
-
|
|
1219
|
-
to {
|
|
1220
|
-
--tw-border-gradient-angle: 360deg;
|
|
1221
|
-
}
|
|
1222
|
-
}
|
|
1223
|
-
|
|
1224
|
-
.placeholder\\:text-neutral-400::placeholder {
|
|
1225
|
-
--tw-text-opacity: 1;
|
|
1226
|
-
color: rgb(163 163 163 / var(--tw-text-opacity));
|
|
1227
|
-
}
|
|
1228
|
-
|
|
1229
|
-
.after\\:select-none::after {
|
|
1230
|
-
content: var(--tw-content);
|
|
1231
|
-
-webkit-user-select: none;
|
|
1232
|
-
user-select: none;
|
|
1233
|
-
}
|
|
1234
|
-
|
|
1235
|
-
.after\\:content-\\[\\'\\2026\\'\\]::after {
|
|
1236
|
-
--tw-content: '\u2026';
|
|
1237
|
-
content: var(--tw-content);
|
|
1238
|
-
}
|
|
1239
|
-
|
|
1240
|
-
.focus-within\\:border-transparent:focus-within {
|
|
1241
|
-
border-color: transparent;
|
|
1242
|
-
}
|
|
1243
|
-
|
|
1244
|
-
.focus-within\\:ring-orange-500:focus-within {
|
|
1245
|
-
--tw-ring-opacity: 1;
|
|
1246
|
-
--tw-ring-color: rgb(249 115 22 / var(--tw-ring-opacity));
|
|
1247
|
-
}
|
|
1248
|
-
|
|
1249
|
-
.hover\\:bg-neutral-200:hover {
|
|
1250
|
-
--tw-bg-opacity: 1;
|
|
1251
|
-
background-color: rgb(229 229 229 / var(--tw-bg-opacity));
|
|
1252
|
-
}
|
|
1253
|
-
|
|
1254
|
-
.hover\\:bg-orange-400:hover {
|
|
1255
|
-
--tw-bg-opacity: 1;
|
|
1256
|
-
background-color: rgb(251 146 60 / var(--tw-bg-opacity));
|
|
1257
|
-
}
|
|
1258
|
-
|
|
1259
|
-
.hover\\:text-neutral-500:hover {
|
|
1260
|
-
--tw-text-opacity: 1;
|
|
1261
|
-
color: rgb(115 115 115 / var(--tw-text-opacity));
|
|
1262
|
-
}
|
|
1263
|
-
|
|
1264
|
-
.hover\\:text-white:hover {
|
|
1265
|
-
--tw-text-opacity: 1;
|
|
1266
|
-
color: rgb(255 255 255 / var(--tw-text-opacity));
|
|
1267
|
-
}
|
|
1268
|
-
|
|
1269
|
-
.hover\\:brightness-125:hover {
|
|
1270
|
-
--tw-brightness: brightness(1.25);
|
|
1271
|
-
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
1272
|
-
}
|
|
1273
|
-
|
|
1274
|
-
.focus\\:border-orange-500:focus {
|
|
1275
|
-
--tw-border-opacity: 1;
|
|
1276
|
-
border-color: rgb(249 115 22 / var(--tw-border-opacity));
|
|
1277
|
-
}
|
|
1278
|
-
|
|
1279
|
-
.focus\\:border-yellow-400:focus {
|
|
1280
|
-
--tw-border-opacity: 1;
|
|
1281
|
-
border-color: rgb(250 204 21 / var(--tw-border-opacity));
|
|
1282
|
-
}
|
|
1283
|
-
|
|
1284
|
-
.active\\:bg-orange-600:active {
|
|
1285
|
-
--tw-bg-opacity: 1;
|
|
1286
|
-
background-color: rgb(234 88 12 / var(--tw-bg-opacity));
|
|
1287
|
-
}
|
|
1288
|
-
|
|
1289
|
-
.active\\:brightness-150:active {
|
|
1290
|
-
--tw-brightness: brightness(1.5);
|
|
1291
|
-
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
1292
|
-
}
|
|
1293
|
-
|
|
1294
|
-
.group:hover .group-hover\\:rotate-90 {
|
|
1295
|
-
--tw-rotate: 90deg;
|
|
1296
|
-
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
1297
|
-
}
|
|
1298
|
-
|
|
1299
|
-
.group:hover .group-hover\\:text-black {
|
|
1300
|
-
--tw-text-opacity: 1;
|
|
1301
|
-
color: rgb(0 0 0 / var(--tw-text-opacity));
|
|
1302
|
-
}
|
|
1303
|
-
|
|
1304
|
-
.aria-busy\\:pointer-events-none[aria-busy="true"] {
|
|
1305
|
-
pointer-events: none;
|
|
1306
|
-
}
|
|
1307
|
-
|
|
1308
|
-
.aria-disabled\\:pointer-events-none[aria-disabled="true"] {
|
|
1309
|
-
pointer-events: none;
|
|
1310
|
-
}
|
|
1311
|
-
|
|
1312
|
-
.aria-disabled\\:opacity-50[aria-disabled="true"] {
|
|
1313
|
-
opacity: 0.5;
|
|
1314
|
-
}
|
|
1315
|
-
|
|
1316
|
-
.group\\/button[aria-busy="true"] .group-aria-busy\\/button\\:translate-x-0 {
|
|
1317
|
-
--tw-translate-x: 0px;
|
|
1318
|
-
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
1319
|
-
}
|
|
1320
|
-
|
|
1321
|
-
.group[aria-busy="true"] .group-aria-busy\\:scale-100 {
|
|
1322
|
-
--tw-scale-x: 1;
|
|
1323
|
-
--tw-scale-y: 1;
|
|
1324
|
-
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
1325
|
-
}
|
|
1326
|
-
|
|
1327
|
-
.group[aria-busy="true"] .group-aria-busy\\:scale-125 {
|
|
1328
|
-
--tw-scale-x: 1.25;
|
|
1329
|
-
--tw-scale-y: 1.25;
|
|
1330
|
-
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
1331
|
-
}
|
|
1332
|
-
|
|
1333
|
-
.group\\/button[aria-busy="true"] .group-aria-busy\\/button\\:opacity-100 {
|
|
1334
|
-
opacity: 1;
|
|
1335
|
-
}
|
|
1336
|
-
|
|
1337
|
-
.group[aria-busy="true"] .group-aria-busy\\:opacity-0 {
|
|
1338
|
-
opacity: 0;
|
|
1339
|
-
}
|
|
1340
|
-
|
|
1341
|
-
.group[aria-busy="true"] .group-aria-busy\\:opacity-100 {
|
|
1342
|
-
opacity: 1;
|
|
1343
|
-
}
|
|
1344
|
-
|
|
1345
|
-
.group\\/button[aria-busy="true"] .group-aria-busy\\/button\\:duration-300 {
|
|
1346
|
-
transition-duration: 300ms;
|
|
1347
|
-
}
|
|
1348
|
-
|
|
1349
|
-
.data-\\[highlighted\\]\\:bg-neutral-200[data-highlighted] {
|
|
1350
|
-
--tw-bg-opacity: 1;
|
|
1351
|
-
background-color: rgb(229 229 229 / var(--tw-bg-opacity));
|
|
1352
|
-
}
|
|
1353
|
-
|
|
1354
|
-
.links\\:font-medium a[href]:not(.links-unset) {
|
|
1355
|
-
font-weight: 500;
|
|
1356
|
-
}
|
|
1357
|
-
|
|
1358
|
-
.links\\:text-white a[href]:not(.links-unset) {
|
|
1359
|
-
--tw-text-opacity: 1;
|
|
1360
|
-
color: rgb(255 255 255 / var(--tw-text-opacity));
|
|
1361
|
-
}
|
|
1362
|
-
|
|
1363
|
-
.links\\:underline a[href]:not(.links-unset) {
|
|
1364
|
-
text-decoration-line: underline;
|
|
1365
|
-
}
|
|
1366
|
-
|
|
1367
|
-
.links\\:decoration-neutral-500 a[href]:not(.links-unset) {
|
|
1368
|
-
text-decoration-color: #737373;
|
|
1369
|
-
}
|
|
1370
|
-
|
|
1371
|
-
.links\\:underline-offset-4 a[href]:not(.links-unset) {
|
|
1372
|
-
text-underline-offset: 4px;
|
|
1373
|
-
}
|
|
1374
|
-
|
|
1375
|
-
.hover\\:links\\:decoration-orange-500 a[href]:not(.links-unset):hover {
|
|
1376
|
-
text-decoration-color: #f97316;
|
|
1377
|
-
}
|
|
1378
|
-
|
|
1379
|
-
@media (min-width: 640px) {
|
|
1380
|
-
|
|
1381
|
-
.sm\\:items-center {
|
|
1382
|
-
align-items: center;
|
|
1383
|
-
}
|
|
1384
|
-
}
|
|
1385
|
-
|
|
1386
|
-
.dark\\:border-neutral-700:where([data-theme="dark"], [data-theme="dark"] *) {
|
|
1387
|
-
--tw-border-opacity: 1;
|
|
1388
|
-
border-color: rgb(64 64 64 / var(--tw-border-opacity));
|
|
1389
|
-
}
|
|
1390
|
-
|
|
1391
|
-
.dark\\:bg-neutral-800:where([data-theme="dark"], [data-theme="dark"] *) {
|
|
1392
|
-
--tw-bg-opacity: 1;
|
|
1393
|
-
background-color: rgb(38 38 38 / var(--tw-bg-opacity));
|
|
1394
|
-
}
|
|
1395
|
-
|
|
1396
|
-
.dark\\:bg-neutral-900:where([data-theme="dark"], [data-theme="dark"] *) {
|
|
1397
|
-
--tw-bg-opacity: 1;
|
|
1398
|
-
background-color: rgb(23 23 23 / var(--tw-bg-opacity));
|
|
1399
|
-
}
|
|
1400
|
-
|
|
1401
|
-
.dark\\:bg-red-900:where([data-theme="dark"], [data-theme="dark"] *) {
|
|
1402
|
-
--tw-bg-opacity: 1;
|
|
1403
|
-
background-color: rgb(127 29 29 / var(--tw-bg-opacity));
|
|
1404
|
-
}
|
|
1405
|
-
|
|
1406
|
-
.dark\\:bg-white\\/10:where([data-theme="dark"], [data-theme="dark"] *) {
|
|
1407
|
-
background-color: rgb(255 255 255 / 0.1);
|
|
1408
|
-
}
|
|
1409
|
-
|
|
1410
|
-
.dark\\:text-neutral-400:where([data-theme="dark"], [data-theme="dark"] *) {
|
|
1411
|
-
--tw-text-opacity: 1;
|
|
1412
|
-
color: rgb(163 163 163 / var(--tw-text-opacity));
|
|
1413
|
-
}
|
|
1414
|
-
|
|
1415
|
-
.dark\\:text-red-50:where([data-theme="dark"], [data-theme="dark"] *) {
|
|
1416
|
-
--tw-text-opacity: 1;
|
|
1417
|
-
color: rgb(254 242 242 / var(--tw-text-opacity));
|
|
1418
|
-
}
|
|
1419
|
-
|
|
1420
|
-
.dark\\:text-white:where([data-theme="dark"], [data-theme="dark"] *) {
|
|
1421
|
-
--tw-text-opacity: 1;
|
|
1422
|
-
color: rgb(255 255 255 / var(--tw-text-opacity));
|
|
1423
|
-
}
|
|
1424
|
-
|
|
1425
|
-
.dark\\:placeholder\\:text-neutral-500:where([data-theme="dark"], [data-theme="dark"] *)::placeholder {
|
|
1426
|
-
--tw-text-opacity: 1;
|
|
1427
|
-
color: rgb(115 115 115 / var(--tw-text-opacity));
|
|
1428
|
-
}
|
|
1429
|
-
|
|
1430
|
-
.dark\\:hover\\:bg-neutral-700:hover:where([data-theme="dark"], [data-theme="dark"] *) {
|
|
1431
|
-
--tw-bg-opacity: 1;
|
|
1432
|
-
background-color: rgb(64 64 64 / var(--tw-bg-opacity));
|
|
1433
|
-
}
|
|
1434
|
-
|
|
1435
|
-
.group:hover .dark\\:group-hover\\:text-white:where([data-theme="dark"], [data-theme="dark"] *) {
|
|
1436
|
-
--tw-text-opacity: 1;
|
|
1437
|
-
color: rgb(255 255 255 / var(--tw-text-opacity));
|
|
1438
|
-
}
|
|
1439
|
-
`;import{useResizeObserver as $t}from"usehooks-ts";import{mergeRefs as Jt}from"react-merge-refs";import{createContext as Bt,useContext as qt}from"react";import{jsx as Wt}from"react/jsx-runtime";var ve=Bt(null);function Ce({frame:e,children:t}){if(qt(ve))throw new Error("`FrameProvider` can only be used once.");return Wt(ve.Provider,{value:{frame:e},children:t})}import{useMediaQuery as _t}from"usehooks-ts";import"@rainbow-me/rainbowkit/styles.css";import{createContext as Qt,useContext as Pe}from"react";import{RainbowKitProvider as Ut,lightTheme as ke,midnightTheme as Se}from"@rainbow-me/rainbowkit";import{useChains as Vt}from"wagmi";import{getChainContractAddress as Gt}from"viem";function F(e){return Gt({chain:e,contract:"quarryPaymaster"})}import{jsx as Ae}from"react/jsx-runtime";var re=Qt(null);function Ne({config:e,children:t}){if(Pe(re))throw new Error("`EntryKitProvider` can only be used once.");let n=Vt().find(({id:s})=>s===e.chainId);if(!n)throw new Error(`Could not find configured chain for chain ID ${e.chainId}.`);let a=F(n);return Ae(Ut,{initialChain:0,appInfo:{appName:e.appName},theme:e.theme==="light"?ke({borderRadius:"none"}):e.theme==="dark"?Se({borderRadius:"none"}):{lightMode:ke({borderRadius:"none"}),darkMode:Se({borderRadius:"none"})},children:Ae(re.Provider,{value:{...e,chain:n,paymasterAddress:a},children:t})})}function m(){let e=Pe(re);if(!e)throw new Error("`useEntryKitConfig` can only be used within a `EntryKitProvider`.");return e}function Ee(){let{theme:e}=m(),t=_t("(prefers-color-scheme: dark)");return e??(t?"dark":"light")}import{jsx as I,jsxs as er}from"react/jsx-runtime";function Zt({onSize:e,...t}){let r=Me(null);return $t({ref:r,onResize:e}),I("div",{ref:r,...t,style:{...t.style,display:"inline-grid"}})}var L=Yt(function({mode:t,children:r},o){let n=Me(null),[a,s]=Ie(!1),l=a?n.current:null,[d,p]=Ie({width:void 0,height:void 0}),i=l?.contentDocument,c=Ee();jt(()=>{i&&i.body.setAttribute("data-theme",c)},[i,c]);let u=t==="modal"?{all:"unset",display:"block",position:"fixed",inset:"0",width:"100%",height:"100%",zIndex:"2147483646"}:d.width&&d.height?{all:"unset",display:"inline-grid",width:`${d.width}px`,height:`${d.height}px`}:{all:"unset",display:"block",position:"fixed",inset:"0",width:"100%",height:"100%",opacity:0,pointerEvents:"none"};return I("iframe",{ref:Jt([o,n]),style:u,onLoad:()=>s(!0),srcDoc:"<!doctype html><title>\u2026</title>",children:i?Xt.createPortal(er(Ce,{frame:l,children:[I("div",{children:t==="modal"?r:I(Zt,{onSize:p,children:r})}),I("style",{dangerouslySetInnerHTML:{__html:xe}})]}),i.body):null})});import{twMerge as Te}from"tailwind-merge";import{jsx as S,jsxs as nr}from"react/jsx-runtime";function He({open:e,onOpenChange:t,children:r}){return S(tr,{open:e,onOpenChange:t,children:S(rr,{children:nr(L,{mode:"modal",children:[S("div",{className:Te("fixed inset-0","bg-neutral-800/85","animate-in animate-duration-300 fade-in")}),S("div",{className:Te("fixed inset-0","grid items-end sm:items-center","animate-in animate-duration-300 fade-in slide-in-from-bottom-16"),children:S("div",{children:S(or,{className:"outline-none w-full max-w-[26rem] mx-auto","aria-describedby":void 0,onOpenAutoFocus:o=>{o.preventDefault()},children:r})})})]})})})}import{useCallback as oe,useMemo as ar}from"react";import{useStore as ir}from"zustand";import{createStore as sr}from"zustand/vanilla";var B=sr(()=>({open:!1}));function w(){let e=ir(B,n=>n.open),t=oe(()=>{B.setState({open:!0})},[]),r=oe(()=>{B.setState({open:!1})},[]),o=oe(n=>{B.setState({open:n})},[]);return ar(()=>({accountModalOpen:e,openAccountModal:t,closeAccountModal:r,toggleAccountModal:o}),[e,t,r,o])}import{twMerge as Nt}from"tailwind-merge";import{useAccount as wn,useConnectorClient as yn}from"wagmi";import{useAccount as $r}from"wagmi";import{twMerge as T}from"tailwind-merge";import{twMerge as cr}from"tailwind-merge";import{jsx as ze,jsxs as lr}from"react/jsx-runtime";function v({className:e,...t}){return lr("svg",{className:cr("-my-[0.125em] h-[1.25em] w-[1.25em] animate-spin",e),xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",...t,children:[ze("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),ze("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]})}import{jsx as M,jsxs as pr}from"react/jsx-runtime";var dr=({variant:e="secondary"}={})=>T("group/button self-center leading-none outline-none border-4 border-transparent","transition hover:brightness-125 active:brightness-150","focus:border-orange-500","aria-disabled:pointer-events-none aria-busy:pointer-events-none","aria-disabled:opacity-50","p-[.75em] font-medium",{primary:T("bg-orange-600 text-white focus:border-yellow-400"),secondary:T("bg-neutral-700 text-white focus:border-orange-500"),tertiary:T("bg-neutral-800 text-white focus:border-orange-500")}[e]),y=({pending:e,variant:t,type:r,className:o,children:n,disabled:a,...s})=>M("button",{type:r||"button",className:T(dr({variant:t,pending:e}),o),"aria-busy":e,"aria-disabled":a,disabled:a||e,...s,children:pr("span",{className:"grid grid-cols-[1fr_auto_1fr] gap-2",children:[M("span",{className:"flex items-center justify-end text-[.75em]",children:M("span",{className:"transition opacity-0 translate-x-2 group-aria-busy/button:opacity-100 group-aria-busy/button:translate-x-0 duration-100 group-aria-busy/button:duration-300",children:M(v,{})})}),M("span",{children:n})]})});import{useConnectModal as Jr}from"@rainbow-me/rainbowkit";import{useMutation as _e}from"@tanstack/react-query";import{useConnectors as Vr}from"wagmi";import{createClient as Fr,custom as Lr,getAddress as Br,numberToHex as Qe,SwitchChainError as qr}from"viem";import{ChainNotConfiguredError as Wr,createConnector as Gr}from"wagmi";import{createStore as mr}from"zustand/vanilla";import{persist as ur}from"zustand/middleware";var g=mr(ur(()=>({publicKeys:{},activeCredential:null}),{name:"mud:passkey:cache"}));function fr(e){e.key===g.persist.getOptions().name&&g.persist.rehydrate()}window.addEventListener("storage",fr);import{smartAccountActions as Qr}from"permissionless/clients";import{toCoinbaseSmartAccount as gr}from"@latticexyz/common/accounts";import{toWebAuthnAccount as hr}from"viem/account-abstraction";async function H(e,t,r){let{publicKeys:o}=g.getState(),n=o[t];if(!n)throw new Error("No public key found for passkey credential.");let s=[hr({credential:{id:t,publicKey:n},rpId:r.rp?.id})];return await gr({client:e,owners:s})}import{bytesToHex as Cr,hashMessage as Fe}from"viem";import{bytesToHex as wr,hexToBytes as Re}from"webauthn-p256";import{concatBytes as yr,utf8ToBytes as br}from"@noble/curves/abstract/utils";async function ne(e){let{authenticatorData:t,challengeIndex:r,clientDataJSON:o,typeIndex:n,userVerificationRequired:a}=e,s=n||o.indexOf('"type"'),l=r||o.indexOf('"challenge"'),d=Re(t);if(d.length<37)throw new Error("Invalid authenticatorData");let p=d[32];if((p&1)!==1)throw new Error("Invalid authenticatorData");if(a&&(p&4)!==4)throw new Error("Invalid authenticatorData");if((p&8)!==8&&(p&16)===16)throw new Error("Invalid authenticatorData");let i='"type":"webauthn.get"';if(i!==o.slice(Number(s),i.length+1))throw new Error("Invalid clientDataJSON");if(!o.slice(Number(l)).match(/^"challenge":"(.*?)"/))throw new Error("Invalid clientDataJSON");let u=new Uint8Array(await crypto.subtle.digest("SHA-256",br(o))),h=new Uint8Array(await crypto.subtle.digest("SHA-256",yr(Re(t),u)));return wr(h)}import{parseSignature as xr,serializePublicKey as Oe}from"webauthn-p256";import{secp256r1 as Ke}from"@noble/curves/p256";function ae(e){let{r:t,s:r}=xr(e.signatureHex),o=new Ke.Signature(t,r).addRecoveryBit(1).recoverPublicKey(e.messageHash.slice(2)),n=new Ke.Signature(t,r).addRecoveryBit(0).recoverPublicKey(e.messageHash.slice(2));return[Oe(o),Oe(n)]}function De([e,t]){return vr([...ae(e),...ae(t)])}function vr(e){let t=new Set;for(let r of e){if(t.has(r))return r;t.add(r)}}import{sign as Le}from"webauthn-p256";async function ie(e){let t=Fe(Cr(crypto.getRandomValues(new Uint8Array(256)))),{raw:{id:r},signature:o,webauthn:n}=await Le({hash:t,rpId:e.rp?.id}),a=await(async()=>{let s=g.getState().publicKeys[r];if(s)return s;let l=await ne(n),d=Fe(o),p=await Le({credentialId:r,hash:d,rpId:e.rp?.id});if(p.raw.id!==r)throw new Error("wrong credential");let i=De([{messageHash:l,signatureHex:o},{messageHash:await ne(p.webauthn),signatureHex:p.signature}]);if(!i)throw new Error("recovery failed");return g.setState(c=>({publicKeys:{...c.publicKeys,[r]:i}})),i})();return console.log("recovered passkey",r,a),g.setState(()=>({activeCredential:r})),{credentialId:r,publicKey:a}}import{createCredential as kr}from"webauthn-p256";async function Be(e){let t=await kr({...e,name:"MUD Account"});return console.log("created passkey",t),g.setState(r=>({activeCredential:t.id,publicKeys:{...r.publicKeys,[t.id]:t.publicKey}})),{credentialId:t.id,publicKey:t.publicKey}}import{resourceToHex as Sr}from"@latticexyz/common";import{parseAbi as Ar}from"viem";import Pr from"@latticexyz/world/mud.config";var q={pollingInterval:250},z=Sr({type:"system",namespace:"",name:"unlimited"}),qe=Pr.namespaces.world.tables,We=Ar(["function registerDelegation(address delegatee, bytes32 delegationControlId, bytes initCallData)"]);import{createBundlerClient as Nr}from"viem/account-abstraction";var Er=new Set([31337,17420,17069,690]);function W({paymasterAddress:e,...t}){let r=t.chain??t.client?.chain;return Nr({...q,paymaster:{getPaymasterData:async()=>({paymaster:e,paymasterData:"0x"})},userOperation:{estimateFeesPerGas:r&&Er.has(r.id)?async()=>({maxFeePerGas:100000n,maxPriorityFeePerGas:0n}):void 0},...t})}import{transactionQueue as Ir}from"@latticexyz/common/actions";import{createClient as Mr,fallback as Tr,http as Ge,webSocket as Hr}from"viem";import{privateKeyToAccount as zr,generatePrivateKey as Rr}from"viem/accounts";import{wiresaw as Or}from"@latticexyz/wiresaw/internal";import{gasEstimator as Kr,userOpExecutor as Dr}from"@latticexyz/paymaster/internal";function G(e){let t=e.rpcUrls.bundler?.http[0],r=t?Kr(Or(Ge(t))):e.id===31337?Dr({executor:Mr({chain:e,transport:Tr([Hr(),Ge()]),account:zr(Rr()),pollingInterval:10}).extend(Ir())}):null;if(!r)throw new Error(`Chain ${e.id} config did not include a bundler RPC URL.`);return r}import{wiresaw as Ur}from"@latticexyz/wiresaw/internal";A.type="passkey";function A({chainId:e,credentialOptions:t={}}){return Gr(r=>{if(!r.transports)throw new Error("Wagmi must be configured with transports to use the passkey connector.");let o=r.chains.find(i=>i.id===e);if(!o)throw new Error(`Could not find configured chain for chain ID ${e}.`);let n=r.transports[o.id];if(!n)throw new Error(`Could not find configured transport for chain ID ${e}.`);let a=Ur(n),s=F(o),l=G(o),d=Fr({...q,chain:o,transport:a}),p=g.getState().activeCredential!=null;return{id:"passkey",type:A.type,name:"Passkey",async createPasskey(){let{credentialId:i}=await Be(t),c=await H(d,i,t);this.onAccountsChanged([c.address]),this.onConnect?.({chainId:Qe(e)})},async reusePasskey(){let{credentialId:i}=await ie(t),c=await H(d,i,t);this.onAccountsChanged([c.address]),this.onConnect?.({chainId:Qe(e)})},hasPasskey(){return Object.keys(g.getState().publicKeys).length>0},async connect(i){if(console.log("connect"),i?.chainId!=null&&i.chainId!==e)throw new Error(`Can't connect to chain ${i.chainId}. Passkey connector is bound to chain ${e}.`);!g.getState().activeCredential&&!i?.isReconnecting&&await ie(t);let c=await this.getAccounts();return p=c.length>0,{accounts:c,chainId:e}},async disconnect(){console.log("disconnect"),p=!1,g.setState({activeCredential:null})},async getAccounts(){console.log("getAccounts");let i=g.getState().activeCredential;if(!i)return[];try{console.log("getting account for credential",i);let c=await H(d,i,t);return console.log("got account",c),[c.address]}catch{console.log("could not get address for credential ID",i)}return[]},async getChainId(){return e},async isAuthorized(){return console.log("isAuthorized"),p?(await this.getAccounts()).length>0:!1},async switchChain(i){if(i.chainId!==e)throw new Error(`Can't connect to chain ${i.chainId}. Passkey connector is bound to chain ${e}.`);let c=r.chains.find(u=>u.id===i.chainId);if(!c)throw new qr(new Wr);return c},onAccountsChanged(i){console.log("onAccountsChanged"),i.length>0?r.emitter.emit("change",{accounts:i.map(c=>Br(c))}):this.onDisconnect()},onChainChanged(i){console.log("onChainChanged"),r.emitter.emit("change",{chainId:Number(i)})},async onConnect(i){console.log("onConnect");let c=await this.getAccounts();r.emitter.emit("connect",{accounts:c,chainId:e})},async onDisconnect(i){console.log("onDisconnect"),r.emitter.emit("disconnect"),p=!1},async getClient(i){console.log("passkeyConnector.getClient",i);let c=g.getState().activeCredential;if(!c)throw new Error("Not connected.");let u=await H(d,c,t);return W({paymasterAddress:s,transport:l,client:d,account:u}).extend(Qr())},async getProvider(i){return Lr({request:d.transport.request})({retryCount:0})}}})}function Ue(){let t=Vr().find(r=>r.type===A.type);if(!t)throw new Error("Could not find passkey connector. Did you configure Wagmi with the EntryKit passkey connector or passkey wallet?");return t}import{twMerge as _r}from"tailwind-merge";import{jsx as se,jsxs as Yr}from"react/jsx-runtime";function C({className:e,...t}){return Yr("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 8 8",fill:"currentColor",shapeRendering:"crispEdges",className:_r("-my-[0.125em] h-[1.25em] w-[1.25em]",e),...t,children:[se("path",{d:"M0 0h1v1H0zm0 1h1v1H0zm0 1h1v1H0zm0 1h1v1H0zm0 1h1v1H0zm0 1h1v1H0zm0 1h1v1H0zm0 1h1v1H0zm1 0h1v1H1zm1 0h1v1H2zm1 0h1v1H3zm1 0h1v1H4zm1 0h1v1H5zm2-1h1v1H7zm0 1h1v1H7zM6 7h1v1H6zm1-2h1v1H7zm0-1h1v1H7zm0-1h1v1H7z"}),se("path",{d:"M2 2h1v1H2zm0 1h1v1H2zm0 1h1v1H2zm0 1h1v1H2zm1-3h1v1H3zm1 0h1v1H4zm1 0h1v1H5zm0 1h1v1H5zm0 1h1v1H5zm0 1h1v1H5zM4 5h1v1H4zM3 5h1v1H3z",opacity:".5"}),se("path",{d:"M7 2h1v1H7zm0-1h1v1H7zM1 0h1v1H1zm1 0h1v1H2zm1 0h1v1H3zm1 0h1v1H4zm1 0h1v1H5zm1 0h1v1H6zm1 0h1v1H7z"})]})}import{useQuery as jr}from"@tanstack/react-query";function Q(e){return jr({enabled:!!e,retry:!1,retryOnMount:!1,refetchOnMount:!1,refetchOnWindowFocus:!1,queryKey:["preloadImage",e],queryFn:()=>new Promise((t,r)=>{if(!e)throw new Error("usePreloadImage: Must provide `url` to preload image.");let o=new Image;o.onload=()=>t(o),o.onerror=()=>r(new Error(`usePreloadImage: Could not load image.
|
|
1440
|
-
|
|
1441
|
-
URL: ${e}`)),o.src=e})})}import{jsx as U,jsxs as Xr}from"react/jsx-runtime";function Ve(){let{appName:e,appIcon:t}=m(),{data:r,isLoading:o}=Q(t);return Xr("div",{className:"flex-grow flex flex-col items-center justify-center gap-2",children:[U("div",{className:"w-16 h-16 m-2",children:o?null:r?U("img",{src:t,className:"w-full h-full object-cover"}):U(C,{className:"w-full h-full text-orange-500 dark:bg-neutral-800"})}),U("div",{className:"text-2xl text-white text-center",children:e})]})}import{twMerge as Zr}from"tailwind-merge";import{jsx as R,jsxs as Ye}from"react/jsx-runtime";function je(){let e=$r(),{accountModalOpen:t}=w(),{openConnectModal:r,connectModalOpen:o}=Jr(),n=Ue(),a=_e({onError:p=>console.error(p),mutationKey:["createPasskey",n.id,t,o,e.status],mutationFn:()=>n.createPasskey()}),s=_e({onError:p=>console.error(p),mutationKey:["reusePasskey",n.id,t,o,e.status],mutationFn:()=>n.reusePasskey()}),l=n.hasPasskey(),d=[R(y,{variant:l?"tertiary":"secondary",className:"self-auto flex justify-center",pending:a.status==="pending"||a.status==="success",onClick:()=>a.mutate(),autoFocus:!l,children:"Create account"},"create"),R(y,{variant:l?"secondary":"tertiary",className:"self-auto flex justify-center",pending:s.status==="pending"||s.status==="success",onClick:()=>s.mutate(),autoFocus:l,children:"Sign in"},"signin")];return l&&d.reverse(),Ye("div",{className:Zr("flex flex-col gap-6 p-6","animate-in animate-duration-300 fade-in slide-in-from-bottom-8"),children:[R("div",{className:"p-4",children:R(Ve,{})}),Ye("div",{className:"self-center flex flex-col gap-2 w-60",children:[d,R("button",{className:"text-sm self-center transition text-neutral-500 hover:text-white p-2",disabled:e.status==="connecting",onClick:r,children:"Already have a wallet?"})]})]})}import{useEffect as un,useMemo as fn,useRef as gn,useState as hn}from"react";import{twMerge as we}from"tailwind-merge";import{parseEther as eo}from"viem";var V=eo("0.01");import{useClient as to}from"wagmi";import{queryOptions as ro,useQuery as oo}from"@tanstack/react-query";import{getAllowance as no}from"@latticexyz/paymaster/internal";function ce({client:e,paymasterAddress:t,userAddress:r}){let o=["getAllowance",e?.chain.id,t,r];return ro(e&&r?{queryKey:o,queryFn:()=>no({client:e,paymasterAddress:t,userAddress:r})}:{queryKey:o,enabled:!1})}function Xe(e){let{chainId:t,paymasterAddress:r}=m(),o=to({chainId:t});return oo(ce({client:o,paymasterAddress:r,userAddress:e}))}import{useClient as Qs}from"wagmi";import{queryOptions as lo,useQuery as Vs}from"@tanstack/react-query";import{defineStore as ao}from"@latticexyz/store";import{parseAbi as io}from"viem";var le=io(["error SpenderSystem_AlreadyRegistered(address spender, address user)","error SpenderSystem_HasOwnBalance(address spender)","function registerSpender(address spender)"]),so=ao({namespaces:{root:{namespace:"",tables:{Allowance:{schema:{user:"address",allowance:"uint256"},key:["user"]},Grantor:{schema:{grantor:"address",allowance:"uint256"},key:["grantor"]},PassHolder:{schema:{user:"address",passId:"bytes32",lastRenewed:"uint256",lastClaimed:"uint256"},key:["user","passId"]},PassConfig:{schema:{passId:"bytes32",claimAmount:"uint256",claimInterval:"uint256",validityPeriod:"uint256",grantor:"address"},key:["passId"]},Spender:{schema:{spender:"address",user:"address"},key:["spender"]},SystemConfig:{schema:{entryPoint:"address"},key:[]}}}}}),$e=so.namespaces.root.tables;import{getRecord as co}from"@latticexyz/store/internal";async function Je({client:e,paymasterAddress:t,userAddress:r,sessionAddress:o}){return(await co(e,{address:t,table:$e.Spender,key:{spender:o},blockTag:"pending"})).user.toLowerCase()===r.toLowerCase()}function Ze({client:e,paymasterAddress:t,userAddress:r,sessionAddress:o}){let n=["getSpender",e?.chain.id,t,r,o];return lo(e&&r&&o?{queryKey:n,queryFn:()=>Je({client:e,paymasterAddress:t,userAddress:r,sessionAddress:o})}:{queryKey:n,enabled:!1})}import{useClient as ec}from"wagmi";import{queryOptions as mo,useQuery as rc}from"@tanstack/react-query";import{getRecord as po}from"@latticexyz/store/internal";async function et({client:e,worldAddress:t,userAddress:r,sessionAddress:o}){return(await po(e,{address:t,table:qe.UserDelegationControl,key:{delegator:r,delegatee:o},blockTag:"pending"})).delegationControlId===z}function tt({client:e,worldAddress:t,userAddress:r,sessionAddress:o}){let n=["getDelegation",e?.chain.id,t,r,o];return mo(e&&r&&o?{queryKey:n,queryFn:()=>et({client:e,worldAddress:t,userAddress:r,sessionAddress:o})}:{queryKey:n,enabled:!1})}import{queryOptions as Co,useQuery as ko,useQueryClient as So}from"@tanstack/react-query";import{useClient as Ao}from"wagmi";import{useClient as bo}from"wagmi";import{queryOptions as xo,useQuery as vo}from"@tanstack/react-query";import{toCoinbaseSmartAccount as yo}from"@latticexyz/common/accounts";import{createStore as uo}from"zustand/vanilla";import{persist as fo}from"zustand/middleware";var O=uo(fo(()=>({signers:{}}),{name:"mud:entrykit",partialize:({signers:e})=>({signers:e})}));function go(e){e.key===O.persist.getOptions().name&&O.persist.rehydrate()}window.addEventListener("storage",go);import{generatePrivateKey as ho,privateKeyToAccount as wo}from"viem/accounts";function rt(e){let t=O.getState().signers[e]??(()=>{let r=ho();return O.setState(o=>({signers:{...o.signers,[e]:r}})),r})();return wo(t)}async function ot({client:e,userAddress:t}){let r=rt(t);return await yo({client:e,owners:[r]})}function de({client:e,userAddress:t}){let r=["getSessionAccount",e?.chain.id,t];return xo(e&&t?{queryKey:r,queryFn:()=>ot({client:e,userAddress:t}),staleTime:1/0}:{queryKey:r,enabled:!1})}function nt(e){let{chainId:t}=m(),r=bo({chainId:t});return vo(de({userAddress:e,client:r}))}function Po({queryClient:e,client:t,userAddress:r,paymasterAddress:o,worldAddress:n}){let a=["getPrerequisites",t?.chain.id,r];return Co(t&&r?{queryKey:a,queryFn:async()=>{let{address:s}=await e.fetchQuery(de({client:t,userAddress:r})),[l,d,p]=await Promise.all([e.fetchQuery(ce({client:t,paymasterAddress:o,userAddress:r})),e.fetchQuery(Ze({client:t,paymasterAddress:o,userAddress:r,sessionAddress:s})),e.fetchQuery(tt({client:t,worldAddress:n,userAddress:r,sessionAddress:s}))]),i=l>=V;return{hasAllowance:i,isSpender:d,hasDelegation:p,complete:i&&d&&p}}}:{queryKey:a,enabled:!1})}function P(e){let t=So(),{chainId:r,paymasterAddress:o,worldAddress:n}=m(),a=Ao({chainId:r});return ko(Po({queryClient:t,client:a,userAddress:e,paymasterAddress:o,worldAddress:n}),t)}import{useDisconnect as Io}from"wagmi";import{useQuery as No}from"@tanstack/react-query";function _(e){let t=e?.toLowerCase();return No({enabled:!!t,queryKey:["ens",t],queryFn:async()=>{let r=await fetch(`https://api.ensideas.com/ens/resolve/${t}`).then(o=>o.json());return{address:r.address??void 0,name:r.name??void 0,displayName:r.displayName??void 0,avatar:r.avatar??void 0}}})}import{jsx as pe,jsxs as Eo}from"react/jsx-runtime";function Y({hex:e}){return e.length<=10?pe("span",{title:e,children:e}):Eo("span",{title:e,children:[pe("span",{className:"after:select-none after:content-['\u2026']",children:e.slice(0,6)}),pe("span",{className:"tracking-[-1ch] text-transparent",children:e.slice(6,-4)}),e.slice(-4)]})}import{jsx as K,jsxs as me}from"react/jsx-runtime";function at({isActive:e,isExpanded:t,userAddress:r}){let{data:o}=_(r),{disconnect:n,isPending:a}=Io(),{closeAccountModal:s}=w();return me("div",{className:"flex flex-col gap-4",children:[me("div",{className:"flex justify-between gap-4",children:[me("div",{children:[K("div",{children:"Account"}),K("div",{className:"font-mono text-white",children:o?.name??K(Y,{hex:r})})]}),K(y,{variant:e?"primary":"tertiary",className:"flex-shrink-0 text-sm p-1 w-28",autoFocus:e,pending:a,onClick:()=>{s(),n()},children:"Sign out"})]}),t?K("p",{className:"text-sm",children:"Each of your onchain actions in this app is associated with your account."}):null]})}import{parseEther as Mo}from"viem";import{useMutation as To,useQueryClient as Ho}from"@tanstack/react-query";import{claimGasPass as zo,setAllowanceSlot as Ro}from"@latticexyz/paymaster/internal";import{useClient as Oo}from"wagmi";function it(){let e=Ho(),{chain:t,paymasterAddress:r}=m(),o=Oo({chainId:t.id}),n=["claimGasPass",t.id];return To({mutationKey:n,onError:a=>console.error(a),mutationFn:async a=>{if(t.id===31337){if(!o)throw new Error("No client?");await Ro({client:o,paymasterAddress:r,userAddress:a,allowance:Mo("1")})}else await zo({chain:t,userAddress:a});await Promise.all([e.invalidateQueries({queryKey:["getAllowance"]}),e.invalidateQueries({queryKey:["getPrerequisites"]})])},retry:0})}import{twMerge as Ko}from"tailwind-merge";import{jsx as j,jsxs as Do}from"react/jsx-runtime";function st({className:e,...t}){return Do("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 263 428",fill:"currentColor",className:Ko("w-[0.6em] h-[1em]",e),...t,children:[j("path",{d:"M132 321V428L263 243L132 321Z"}),j("path",{d:"M0 243L132 321V428",fillOpacity:"0.5"}),j("path",{d:"M132 0V296L263 218"}),j("path",{d:"M0 218L132 296V0L0 218Z",fillOpacity:"0.5"})]})}import{formatEther as Fo}from"viem";function ct(e){let t=Fo(e),r=Math.floor(parseFloat(t)).toString().length;return parseFloat(t).toLocaleString("en-US",{maximumFractionDigits:Math.max(0,6-r)})}import{jsx as Lo,jsxs as Bo}from"react/jsx-runtime";function lt({wei:e}){return Bo("span",{className:"inline-flex items-center gap-1",children:[ct(e)," ",Lo(st,{})]})}import{useEffect as qo}from"react";import{jsx as N,jsxs as ue}from"react/jsx-runtime";function dt({isActive:e,isExpanded:t,userAddress:r}){let o=Xe(r),n=it();return qo(()=>{let a=setTimeout(()=>{e&&n.status==="idle"&&o.isSuccess&&o.data<V&&n.mutate(r)});return()=>clearTimeout(a)},[o.data,o.isSuccess,n,e,r]),ue("div",{className:"flex flex-col gap-4",children:[ue("div",{className:"flex justify-between gap-4",children:[ue("div",{children:[N("div",{children:"Allowance"}),N("div",{className:"font-mono text-white",children:o.data!=null?N(lt,{wei:o.data}):N(v,{className:"text-sm"})})]}),N(y,{variant:e?"primary":"tertiary",className:"flex-shrink-0 text-sm p-1 w-28",autoFocus:e||t,pending:o.status==="pending"||n.status==="pending",onClick:()=>n.mutate(r),children:"Top up"})]}),t?N("p",{className:"text-sm",children:"Your allowance is used to pay for onchain computation."}):null]})}import{encodeFunctionData as mt}from"viem";import{useMutation as Jo,useQueryClient as Zo}from"@tanstack/react-query";import{getAction as ge}from"viem/utils";import{sendUserOperation as en,waitForUserOperationReceipt as tn}from"viem/account-abstraction";import{waitForTransactionReceipt as rn}from"viem/actions";import{useClient as on}from"wagmi";import{resourceToHex as ut}from"@latticexyz/common";import nn from"@latticexyz/world/out/IBaseWorld.sol/IBaseWorld.abi.json";import{writeContract as jo}from"viem/actions";import{getAction as Xo}from"viem/utils";import{toHex as Wo}from"viem";import{signTypedData as Go}from"viem/actions";import{callWithSignatureTypes as Qo}from"@latticexyz/world/internal";import{getRecord as Uo}from"@latticexyz/store/internal";import Vo from"@latticexyz/world-modules/internal/mud.config";import{hexToResource as _o}from"@latticexyz/common";import{getAction as Yo}from"viem/utils";async function pt({userClient:e,worldAddress:t,systemId:r,callData:o,nonce:n,client:a}){let s=n??(a?(await Uo(a,{address:t,table:Vo.tables.CallWithSignatureNonces,key:{signer:e.account.address},blockTag:"pending"})).nonce:0n),{namespace:l,name:d}=_o(r);return await Yo(e,Go,"signTypedData")({account:e.account,domain:{verifyingContract:t,salt:Wo(e.chain.id,{size:32})},types:Qo,primaryType:"Call",message:{signer:e.account.address,systemNamespace:l,systemName:d,callData:o,nonce:s}})}import $o from"@latticexyz/world-modules/out/Unstable_CallWithSignatureSystem.sol/Unstable_CallWithSignatureSystem.abi.json";async function fe({sessionClient:e,...t}){let r=await pt(t);return Xo(e,jo,"writeContract")({address:t.worldAddress,abi:$o,functionName:"callWithSignature",args:[t.userClient.account.address,t.systemId,t.callData,r]})}function ft({userClient:e}){let t=Zo(),{chainId:r,worldAddress:o,paymasterAddress:n}=m(),a=on({chainId:r}),s=["setupSession",a?.chain.id,e.account.address];return Jo({mutationKey:s,onError:l=>console.error(l),mutationFn:async({sessionClient:l,registerSpender:d,registerDelegation:p})=>{if(!a)throw new Error("Client not ready.");let i=l.account.address;if(console.log("setting up session"),e.account.type!=="smart"){let c=[];if(d){console.log("registering spender");let u=await fe({client:a,userClient:e,sessionClient:l,worldAddress:n,systemId:ut({type:"system",namespace:"",name:"SpenderSystem"}),callData:mt({abi:le,functionName:"registerSpender",args:[i]})});console.log("got spender tx",u),c.push(u)}if(p){console.log("registering delegation");let u=await fe({client:a,userClient:e,sessionClient:l,worldAddress:o,systemId:ut({type:"system",namespace:"",name:"Registration"}),callData:mt({abi:nn,functionName:"registerDelegation",args:[i,z,"0x"]})});console.log("got delegation tx",u),c.push(u)}if(!c.length)return;console.log("waiting for",c.length,"receipts");for(let u of c){let h=await ge(a,rn,"waitForTransactionReceipt")({hash:u});console.log("got tx receipt",h),h.status==="reverted"&&console.error("tx reverted?",h)}}else{let c=[];if(d&&(console.log("registering spender"),c.push({to:n,abi:le,functionName:"registerSpender",args:[i]})),p&&(console.log("registering delegation"),c.push({to:o,abi:We,functionName:"registerDelegation",args:[i,z,"0x"]})),!c.length)return;console.log("setting up account with",c,e);let u=await ge(e,en,"sendUserOperation")({calls:c});console.log("got user op hash",u);let h=await ge(e,tn,"waitForUserOperationReceipt")({hash:u});console.log("got user op receipt",h),h.success||console.error("not successful?",h)}await Promise.all([t.invalidateQueries({queryKey:["getSpender"]}),t.invalidateQueries({queryKey:["getDelegation"]}),t.invalidateQueries({queryKey:["getPrerequisites"]})])},retry:0})}import{useEffect as mn}from"react";import{useClient as cn}from"wagmi";import{queryOptions as ln,useQuery as dn}from"@tanstack/react-query";import{smartAccountActions as an}from"permissionless";import{callFrom as sn}from"@latticexyz/world/internal";async function gt({client:e,userAddress:t,sessionAccount:r,worldAddress:o,paymasterAddress:n}){let a=G(e.chain);return W({paymasterAddress:n,transport:a,client:e,account:r}).extend(an()).extend(sn({worldAddress:o,delegatorAddress:t,publicClient:e})).extend(()=>({userAddress:t}))}function pn({sessionAccount:e,client:t,userAddress:r,worldAddress:o,paymasterAddress:n}){let a=["getSessionClient",t?.uid,r,e?.address,o];return ln(t&&r&&e?{queryKey:a,queryFn:()=>gt({sessionAccount:e,client:t,userAddress:r,worldAddress:o,paymasterAddress:n}),staleTime:1/0}:{queryKey:a,enabled:!1})}function X(e){let{chainId:t,worldAddress:r,paymasterAddress:o}=m(),n=cn({chainId:t}),{data:a}=nt(e);return dn(pn({sessionAccount:a,userAddress:e,client:n,worldAddress:r,paymasterAddress:o}))}import{jsx as D,jsxs as he}from"react/jsx-runtime";function ht({isActive:e,isExpanded:t,userClient:r,registerSpender:o,registerDelegation:n}){let{data:a}=X(r.account.address),s=ft({userClient:r}),l=!n&&!n;return mn(()=>{let d=setTimeout(()=>{e&&s.status==="idle"&&a&&!l&&s.mutate({sessionClient:a,registerSpender:o,registerDelegation:n})});return()=>clearTimeout(d)},[l,e,n,o,a,s]),he("div",{className:"flex flex-col gap-4",children:[he("div",{className:"flex justify-between gap-4",children:[he("div",{children:[D("div",{children:"Session"}),D("div",{className:"font-mono text-white",children:l?"Enabled":"Set up"})]}),l?D(y,{variant:"tertiary",className:"flex-shrink-0 text-sm p-1 w-28",autoFocus:e,disabled:!0,children:"Enabled"}):D(y,{variant:e?"primary":"tertiary",className:"flex-shrink-0 text-sm p-1 w-28",autoFocus:e,pending:!a||s.status==="pending",onClick:a?()=>s.mutate({sessionClient:a,registerSpender:o,registerDelegation:n}):void 0,children:"Enable"})]}),t?D("p",{className:"text-sm",children:"You can perform actions in this app without interruptions for approvals."}):null]})}import{jsx as E}from"react/jsx-runtime";function wt({userClient:e,initialUserAddress:t}){let r=e.account.address,{data:o}=P(r),{closeAccountModal:n}=w(),a=r!==t,s=gn(o);un(()=>{o!=null&&(s.current==null&&(s.current=o),o.complete&&(a||!s.current.complete)&&n())},[n,a,o]);let{hasAllowance:l,isSpender:d,hasDelegation:p}=o??{},i=fn(()=>r?[{id:"wallet",isComplete:!0,content:f=>E(at,{...f,userAddress:r})},{id:"allowance",isComplete:!!l,content:f=>E(dt,{...f,userAddress:r})},{id:"session",isComplete:!!d&&!!p,content:f=>E(ht,{...f,userClient:e,registerSpender:!d,registerDelegation:!p})}]:[{id:"wallet",isComplete:!1,content:()=>null}],[l,p,d,r,e]),[c]=hn(null),u=i.find(f=>f.content!=null&&!f.isComplete),h=i.filter(f=>f.isComplete),ee=(c!=null?i.find(f=>f.id===c):null)??u??(h.length<i.length?h.at(-1):null),be=ee?i.indexOf(ee):-1;return E("div",{className:we("min-h-[26rem] px-8 flex flex-col divide-y divide-neutral-800","animate-in animate-duration-300 fade-in slide-in-from-bottom-8"),children:i.map((f,Ot)=>{let te=f===ee,Kt=te||h.length===i.length,Dt=!f.isComplete&&be!==-1&&Ot>be;return E("div",{className:we("py-8 flex flex-col justify-center",te?"flex-grow":null),children:E("div",{className:we("flex flex-col",Dt?"opacity-30 pointer-events-none":null),children:f.content({isActive:te,isExpanded:Kt})})},f.id)})})}import{useRef as bn}from"react";import{jsx as yt}from"react/jsx-runtime";function bt(){let{chainId:e}=m(),t=yn({chainId:e}),{address:r}=wn(),o=bn(r);return t.status!=="success"?yt(je,{}):yt(wt,{userClient:t.data,initialUserAddress:o.current})}import{useState as Sn}from"react";import{ErrorBoundary as An}from"react-error-boundary";import{twMerge as xn}from"tailwind-merge";import{BaseError as vn,UserRejectedRequestError as Cn}from"viem";import{jsx as xt,jsxs as kn}from"react/jsx-runtime";function vt({title:e,error:t}){if(!t||t instanceof vn&&t.walk(n=>n instanceof Cn)!=null)return null;let r=e??"Error",o=typeof t=="string"?t:t instanceof Error?String(t):"Something unexpected happened.";return kn("div",{className:xn("text-sm border-l-4 border-red-500","bg-red-100 text-red-900","dark:bg-red-900 dark:text-red-50"),children:[xt("div",{className:"p-3 font-semibold",children:r}),xt("div",{className:"px-3 whitespace-break-spaces break-all max-h-32 overflow-y-scroll",children:o})]})}import{wait as Pn}from"@latticexyz/common/utils";import{twMerge as Nn}from"tailwind-merge";import{useIsMounted as En}from"usehooks-ts";import{jsx as $,jsxs as Ct}from"react/jsx-runtime";function kt({children:e}){let t=En(),[r,o]=Sn(1);return $(An,{fallbackRender:({error:n,resetErrorBoundary:a})=>Ct("div",{className:Nn("flex-grow flex flex-col justify-center p-5 gap-2"),children:[$(vt,{error:n instanceof Error?n.stack??n.message:n}),r>0?Ct("button",{type:"button",onClick:async s=>{s.currentTarget.ariaBusy="true",await Pn(1e3),a(),t()&&(o(l=>l-1),s.currentTarget.ariaBusy=null)},className:"group aria-busy:pointer-events-none self-end flex items-center gap-1",children:[$(v,{className:"transition opacity-0 group-aria-busy:opacity-100 text-xs text-neutral-500 dark:text-neutral-400"}),$("span",{className:"text-sm text-neutral-500 dark:text-neutral-400 group-hover:text-black dark:group-hover:text-white",children:"Retry?"})]}):null]}),children:e})}import{DialogClose as Tn,DialogTitle as Hn}from"@radix-ui/react-dialog";import{twMerge as In}from"tailwind-merge";import{jsx as Mn}from"react/jsx-runtime";function St({className:e,children:t,...r}){return Mn("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",className:In("-my-[0.125em] h-[1.25em] w-[1.25em]",e),...r,children:t})}import{jsx as At}from"react/jsx-runtime";function Pt(e){return At(St,{strokeWidth:"2",stroke:"currentColor",...e,children:At("path",{d:"M6 18L18 6M6 6L18 18",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}import{jsx as b,jsxs as ye}from"react/jsx-runtime";function Et(){let{accountModalOpen:e,toggleAccountModal:t}=w();return ye(He,{open:e,onOpenChange:t,children:[b(Hn,{className:"sr-only",children:"Connect with EntryKit"}),e?ye("div",{className:Nt("relative py-2 ring-1","bg-neutral-900 text-neutral-400 ring-neutral-700/50 divide-neutral-700","links:font-medium links:underline links:underline-offset-4","links:text-white","links:decoration-neutral-500 hover:links:decoration-orange-500"),children:[b(kt,{children:b(bt,{})}),ye("a",{href:"https://mud.dev",target:"_blank",rel:"noreferrer noopener",className:"group self-center p-3 flex items-center justify-center gap-2 links-unset text-sm font-mono transition text-neutral-400 hover:text-white",children:[b("span",{className:"block w-4 h-4",children:b(C,{className:"w-full h-full text-orange-500 group-hover:rotate-90 transition duration-300"})}),b("span",{children:"Powered by MUD"})]}),b("div",{className:"absolute top-0 right-0",children:b(Tn,{className:Nt("pointer-events-auto leading-none p-2 transition","text-neutral-700 hover:text-neutral-500"),title:"Close",children:b(Pt,{className:"m-0"})})})]}):null]})}import{jsx as Rn,jsxs as On}from"react/jsx-runtime";function zn({config:e,children:t}){return On(Ne,{config:e,children:[t,Rn(Et,{})]})}import{useAccount as Dn}from"wagmi";import{twMerge as k}from"tailwind-merge";import{twMerge as It}from"tailwind-merge";import{Fragment as Kn,jsx as J,jsxs as Mt}from"react/jsx-runtime";function Tt({address:e}){let{data:t}=_(e),r=Q(t?.avatar);return Mt(Kn,{children:[Mt("span",{className:"flex-shrink-0 w-6 h-6 -my-1 -mx-0.5 grid place-items-center",children:[J("img",{src:t?.avatar&&r.isSuccess?t.avatar:void 0,className:It("col-start-1 row-start-1","inline-flex w-full h-full rounded-full bg-black/10 dark:bg-white/10 bg-cover bg-no-repeat bg-center","transtion duration-300",r.isSuccess?"opacity-100":"opacity-0")}),J(C,{className:It("col-start-1 row-start-1 text-orange-500","transition duration-300",t&&(!t.avatar||r.isError)?"opacity-100":"opacity-0")})]}),J("span",{className:"flex-grow",children:t?.name??J(Y,{hex:e})})]})}import{useRef as Fn}from"react";import{jsx as x,jsxs as zt}from"react/jsx-runtime";var Ht=k("w-48 p-3 inline-flex outline-none transition","border border-transparent","text-base leading-none"),Ln=k("bg-neutral-100 border-neutral-300 text-black","dark:bg-neutral-800 dark:border-neutral-700 dark:text-white"),Bn=k("cursor-pointer outline-none hover:bg-neutral-200 data-[highlighted]:bg-neutral-200 dark:hover:bg-neutral-700");function qn(){let{openAccountModal:e,accountModalOpen:t}=w(),{status:r,address:o}=Dn(),n=Fn(o),a=P(o),s=r==="connected"||r==="reconnecting"&&o,l=o!==n.current,d=a.isSuccess?a.data.complete:l?!1:s,p=(()=>{if(a.isSuccess){if(!a.data.hasAllowance)return"Top up";if(!a.data.hasDelegation||!a.data.isSpender)return"Set up"}return"Sign in"})();return x(L,{mode:"child",children:d?x("button",{type:"button",className:k(Ht,Ln,Bn),onClick:e,children:x("span",{className:"flex-grow inline-flex gap-2.5 items-center text-left font-medium",children:o?x(Tt,{address:o}):null})},"connected"):zt("button",{type:"button",className:k(Ht,"group","items-center justify-center gap-2.5","bg-orange-500 text-white font-medium","hover:bg-orange-400","active:bg-orange-600"),"aria-busy":t,onClick:e,children:[zt("span",{className:"pointer-events-none inline-grid place-items-center -ml-3",children:[x("span",{className:k("col-start-1 row-start-1 leading-none","scale-100 opacity-100 transition duration-300","group-aria-busy:scale-125 group-aria-busy:opacity-0"),children:x(C,{})}),x("span",{"aria-hidden":!0,className:k("col-start-1 row-start-1","scale-50 opacity-0 transition duration-300 delay-50","group-aria-busy:scale-100 group-aria-busy:opacity-100"),children:x(v,{})})]}),x("span",{className:"font-medium",children:p})]},"sign in")})}import{useConnectorClient as Wn}from"wagmi";function Gn(){let{chainId:e}=m(),t=Wn({chainId:e});t.error&&console.error("Error retrieving user client",t.error);let r=t.data?.account.address,o=P(r),n=X(r);return t.isSuccess?!o.isSuccess||!o.data.complete?{...o,data:void 0}:n:{...t,data:void 0}}import{connectorsForWallets as Un,getDefaultWallets as Vn}from"@rainbow-me/rainbowkit";import{createConfig as _n}from"wagmi";var Qn=`data:image/svg+xml;base64,${btoa('<svg xmlns="http://www.w3.org/2000/svg" shape-rendering="geometricPrecision" text-rendering="geometricPrecision" image-rendering="optimizeQuality" fill-rule="evenodd" clip-rule="evenodd" width="512" height="512" viewBox="-64 -32 608 512"><path d="M6.206 425.469A6.202 6.202 0 010 419.263c0-1.771.235-3.517.663-5.245 9.95-78.847 57.22-96.006 100.964-107.256 21.008-5.412 62.901-26.489 57.822-53.668-10.596-9.819-21.113-23.39-22.946-43.63l-1.274.026c-2.932-.044-5.778-.716-8.422-2.217-5.848-3.325-9.051-9.697-10.596-16.958-3.238-22.186-4.058-33.515 7.768-38.464l.096-.035c-1.467-27.37 3.159-67.64-24.944-76.141C154.622 7.1 218.597-30.203 266.627 30.805c53.519 2.801 77.389 78.611 44.154 121.046h-1.405c11.826 4.949 10.045 17.674 7.767 38.464-1.544 7.261-4.747 13.633-10.595 16.958-2.645 1.501-5.481 2.173-8.422 2.217l-1.275-.026c-1.833 20.24-12.376 33.811-22.972 43.63-4.459 23.871 27.275 43.011 49.33 50.997a139.442 139.442 0 004.268 5.525c-7.2 9.941-8.771 22.797-4.564 34.038-17.002 8.763-24.255 29.334-16.479 46.86-11.966 7.55-18.258 21.305-16.609 34.955H6.206zm419.058-105.362a86.778 86.778 0 0019.446-1.641c29.36-5.822 53.152-27.467 62.657-55.823 3.596-10.544 5.071-21.663 4.521-33.341-1.179-23.46-12.193-46.633-29.631-62.369-17.107-15.361-38.342-23.574-61.383-23.042-22.841.507-45.359 11.216-60.187 28.593-14.977 17.551-22.003 39.144-20.921 62.133.585 11.661 3.482 23.016 8.737 34.074 7.741 16.303 19.934 29.735 35.391 39.048l-22.457 20.711 13.232 27.86-29.413 13.973 13.991 29.456-26.769 12.717 16.81 35.374 35.601-16.915 40.375-110.808zm15.239-129.364c13.685 4.869 20.824 19.908 15.954 33.593-4.87 13.685-19.908 20.833-33.593 15.963-13.685-4.87-20.834-19.917-15.963-33.602 4.87-13.685 19.917-20.825 33.602-15.954z"/></svg>')}`,Z=e=>()=>({id:"passkey",name:"Passkey",iconUrl:Qn,iconBackground:"#fec",createConnector:t=>r=>({...A(e)(r),...t})});import{mapObject as Yn}from"@latticexyz/common/utils";import{wiresaw as jn}from"@latticexyz/wiresaw/internal";function Xn(e){let{wallets:t}=Vn(),r=[{groupName:"Recommended",wallets:[Z({chainId:e.chainId,credentialOptions:e.credentialOptions})]},...t],o=Un(r,{appName:e.appName,projectId:e.walletConnectProjectId});return _n({connectors:o,chains:e.chains,transports:Yn(e.transports,n=>jn(n)),pollingInterval:e.pollingInterval})}import{connectorsForWallets as Jn}from"@rainbow-me/rainbowkit";import{getDefaultWallets as $n}from"@rainbow-me/rainbowkit";function Rt(e){let{wallets:t}=$n();return[{groupName:"Recommended",wallets:[Z({chainId:e.chainId})]},...t]}function Zp({wallets:e,...t}){return Jn(e??Rt(t),{appName:t.appName,projectId:t.walletConnectProjectId})}export{qn as AccountButton,zn as EntryKitProvider,Xn as createWagmiConfig,Ft as defineConfig,Zp as getConnectors,Rt as getWallets,A as passkeyConnector,Z as passkeyWallet,w as useAccountModal,m as useEntryKitConfig,Gn as useSessionClient};
|
|
1442
|
-
//# sourceMappingURL=internal.js.map
|