@worldcoin/idkit 2.2.2 → 2.4.0

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/build/index.cjs CHANGED
@@ -33,6 +33,10 @@ __export(src_exports, {
33
33
  IDKitWidget: () => IDKitWidget_default,
34
34
  VerificationLevel: () => import_idkit_core7.VerificationLevel,
35
35
  VerificationState: () => import_idkit_core7.VerificationState,
36
+ getCurrentLanguage: () => getCurrentLanguage,
37
+ getLocalizationConfig: () => getLocalizationConfig,
38
+ getSupportedLanguages: () => getSupportedLanguages,
39
+ setLocalizationConfig: () => setLocalizationConfig,
36
40
  solidityEncode: () => import_hashing.solidityEncode,
37
41
  useIDKit: () => useIDKit_default,
38
42
  useSession: () => useSession,
@@ -43,21 +47,157 @@ module.exports = __toCommonJS(src_exports);
43
47
  // src/hooks/useIDKit.ts
44
48
  var import_react = require("react");
45
49
 
50
+ // src/lang/translations/en.ts
51
+ var en = {
52
+ "All set!": "All set!",
53
+ "Your World ID is now connected": "Your World ID is now connected",
54
+ "Transmitting verification to host app. Please wait...": "Transmitting verification to host app. Please wait...",
55
+ "Something went wrong": "Something went wrong",
56
+ "Verification Declined": "Verification Declined",
57
+ "Request cancelled": "Request cancelled",
58
+ "Connection to your wallet failed. Please try again.": "Connection to your wallet failed. Please try again.",
59
+ "You've cancelled the request in World App.": "You've cancelled the request in World App.",
60
+ "You have already verified the maximum number of times for this action.": "You have already verified the maximum number of times for this action.",
61
+ "It seems you do not have the verification level required by this app.": "It seems you do not have the verification level required by this app.",
62
+ "Invalid network. If you are the app owner, visit docs.world.org/test for details.": "Invalid network. If you are the app owner, visit docs.world.org/test for details.",
63
+ "Your identity is still being registered. Please wait a few minutes and try again.": "Your identity is still being registered. Please wait a few minutes and try again.",
64
+ "We couldn't complete your request. Please try again.": "We couldn't complete your request. Please try again.",
65
+ "Try Again": "Try Again",
66
+ "Open World App": "Open World App",
67
+ "Hide QR Code": "Hide QR Code",
68
+ "Display QR Code": "Display QR Code",
69
+ "QR Code copied": "QR Code copied",
70
+ "Connect your World ID": "Connect your World ID",
71
+ "Use phone camera to scan the QR code": "Use phone camera to scan the QR code",
72
+ "Connecting...": "Connecting...",
73
+ "Please continue in app": "Please continue in app",
74
+ "You will be redirected to the app, please return to this page once you're done": "You will be redirected to the app, please return to this page once you're done",
75
+ "Action cannot be an empty string.": "Action cannot be an empty string.",
76
+ "Invalid IDKitStage :stage.": "Invalid IDKitStage :stage.",
77
+ "Terms & Privacy": "Terms & Privacy"
78
+ };
79
+
80
+ // src/lang/translations/es.ts
81
+ var es = {
82
+ "All set!": "\xA1Todo listo!",
83
+ "Your World ID is now connected": "Tu World ID ahora est\xE1 conectado",
84
+ "Transmitting verification to host app. Please wait...": "Transmitiendo verificaci\xF3n a la aplicaci\xF3n host. Por favor espera...",
85
+ "Something went wrong": "Algo sali\xF3 mal",
86
+ "Verification Declined": "Verificaci\xF3n rechazada",
87
+ "Request cancelled": "Solicitud cancelada",
88
+ "Connection to your wallet failed. Please try again.": "La conexi\xF3n a tu billetera fall\xF3. Por favor intenta de nuevo.",
89
+ "You've cancelled the request in World App.": "Has cancelado la solicitud en World App.",
90
+ "You have already verified the maximum number of times for this action.": "Ya has verificado el n\xFAmero m\xE1ximo de veces para esta acci\xF3n.",
91
+ "It seems you do not have the verification level required by this app.": "Parece que no tienes el nivel de verificaci\xF3n requerido por esta aplicaci\xF3n.",
92
+ "Invalid network. If you are the app owner, visit docs.world.org/test for details.": "Red inv\xE1lida. Si eres el propietario de la aplicaci\xF3n, visita docs.world.org/test para m\xE1s detalles.",
93
+ "Your identity is still being registered. Please wait a few minutes and try again.": "Tu identidad a\xFAn se est\xE1 registrando. Por favor espera unos minutos e intenta de nuevo.",
94
+ "We couldn't complete your request. Please try again.": "No pudimos completar tu solicitud. Por favor intenta de nuevo.",
95
+ "Try Again": "Intentar de nuevo",
96
+ "Open World App": "Abrir World App",
97
+ "Hide QR Code": "Ocultar c\xF3digo QR",
98
+ "Display QR Code": "Mostrar c\xF3digo QR",
99
+ "QR Code copied": "C\xF3digo QR copiado",
100
+ "Connect your World ID": "Conecta tu World ID",
101
+ "Use phone camera to scan the QR code": "Usa la c\xE1mara del tel\xE9fono para escanear el c\xF3digo QR",
102
+ "Connecting...": "Conectando...",
103
+ "Please continue in app": "Por favor contin\xFAa en la aplicaci\xF3n",
104
+ "You will be redirected to the app, please return to this page once you're done": "Ser\xE1s redirigido a la aplicaci\xF3n, por favor regresa a esta p\xE1gina una vez que hayas terminado",
105
+ "Action cannot be an empty string.": "La acci\xF3n no puede ser una cadena vac\xEDa.",
106
+ "Invalid IDKitStage :stage.": "IDKitStage inv\xE1lido :stage.",
107
+ "Terms & Privacy": "T\xE9rminos y privacidad"
108
+ };
109
+
110
+ // src/lang/translations/th.ts
111
+ var th = {
112
+ "All set!": "\u0E40\u0E23\u0E35\u0E22\u0E1A\u0E23\u0E49\u0E2D\u0E22!",
113
+ "Your World ID is now connected": "World ID \u0E02\u0E2D\u0E07\u0E04\u0E38\u0E13\u0E40\u0E0A\u0E37\u0E48\u0E2D\u0E21\u0E15\u0E48\u0E2D\u0E41\u0E25\u0E49\u0E27",
114
+ "Transmitting verification to host app. Please wait...": "\u0E01\u0E33\u0E25\u0E31\u0E07\u0E2A\u0E48\u0E07\u0E01\u0E32\u0E23\u0E22\u0E37\u0E19\u0E22\u0E31\u0E19\u0E44\u0E1B\u0E22\u0E31\u0E07\u0E41\u0E2D\u0E1B\u0E42\u0E2E\u0E2A\u0E15\u0E4C \u0E01\u0E23\u0E38\u0E13\u0E32\u0E23\u0E2D\u0E2A\u0E31\u0E01\u0E04\u0E23\u0E39\u0E48...",
115
+ "Something went wrong": "\u0E40\u0E01\u0E34\u0E14\u0E02\u0E49\u0E2D\u0E1C\u0E34\u0E14\u0E1E\u0E25\u0E32\u0E14",
116
+ "Verification Declined": "\u0E01\u0E32\u0E23\u0E22\u0E37\u0E19\u0E22\u0E31\u0E19\u0E16\u0E39\u0E01\u0E1B\u0E0F\u0E34\u0E40\u0E2A\u0E18",
117
+ "Request cancelled": "\u0E04\u0E33\u0E02\u0E2D\u0E16\u0E39\u0E01\u0E22\u0E01\u0E40\u0E25\u0E34\u0E01",
118
+ "Connection to your wallet failed. Please try again.": "\u0E01\u0E32\u0E23\u0E40\u0E0A\u0E37\u0E48\u0E2D\u0E21\u0E15\u0E48\u0E2D\u0E01\u0E31\u0E1A\u0E01\u0E23\u0E30\u0E40\u0E1B\u0E4B\u0E32\u0E40\u0E07\u0E34\u0E19\u0E02\u0E2D\u0E07\u0E04\u0E38\u0E13\u0E25\u0E49\u0E21\u0E40\u0E2B\u0E25\u0E27 \u0E01\u0E23\u0E38\u0E13\u0E32\u0E25\u0E2D\u0E07\u0E2D\u0E35\u0E01\u0E04\u0E23\u0E31\u0E49\u0E07",
119
+ "You've cancelled the request in World App.": "\u0E04\u0E38\u0E13\u0E44\u0E14\u0E49\u0E22\u0E01\u0E40\u0E25\u0E34\u0E01\u0E04\u0E33\u0E02\u0E2D\u0E43\u0E19 World App",
120
+ "You have already verified the maximum number of times for this action.": "\u0E04\u0E38\u0E13\u0E44\u0E14\u0E49\u0E22\u0E37\u0E19\u0E22\u0E31\u0E19\u0E04\u0E23\u0E1A\u0E08\u0E33\u0E19\u0E27\u0E19\u0E04\u0E23\u0E31\u0E49\u0E07\u0E2A\u0E39\u0E07\u0E2A\u0E38\u0E14\u0E2A\u0E33\u0E2B\u0E23\u0E31\u0E1A\u0E01\u0E32\u0E23\u0E14\u0E33\u0E40\u0E19\u0E34\u0E19\u0E01\u0E32\u0E23\u0E19\u0E35\u0E49\u0E41\u0E25\u0E49\u0E27",
121
+ "It seems you do not have the verification level required by this app.": "\u0E14\u0E39\u0E40\u0E2B\u0E21\u0E37\u0E2D\u0E19\u0E27\u0E48\u0E32\u0E04\u0E38\u0E13\u0E44\u0E21\u0E48\u0E21\u0E35\u0E23\u0E30\u0E14\u0E31\u0E1A\u0E01\u0E32\u0E23\u0E22\u0E37\u0E19\u0E22\u0E31\u0E19\u0E17\u0E35\u0E48\u0E41\u0E2D\u0E1B\u0E19\u0E35\u0E49\u0E15\u0E49\u0E2D\u0E07\u0E01\u0E32\u0E23",
122
+ "Invalid network. If you are the app owner, visit docs.world.org/test for details.": "\u0E40\u0E04\u0E23\u0E37\u0E2D\u0E02\u0E48\u0E32\u0E22\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07 \u0E2B\u0E32\u0E01\u0E04\u0E38\u0E13\u0E40\u0E1B\u0E47\u0E19\u0E40\u0E08\u0E49\u0E32\u0E02\u0E2D\u0E07\u0E41\u0E2D\u0E1B \u0E42\u0E1B\u0E23\u0E14\u0E44\u0E1B\u0E17\u0E35\u0E48 docs.world.org/test \u0E2A\u0E33\u0E2B\u0E23\u0E31\u0E1A\u0E23\u0E32\u0E22\u0E25\u0E30\u0E40\u0E2D\u0E35\u0E22\u0E14",
123
+ "Your identity is still being registered. Please wait a few minutes and try again.": "\u0E15\u0E31\u0E27\u0E15\u0E19\u0E02\u0E2D\u0E07\u0E04\u0E38\u0E13\u0E22\u0E31\u0E07\u0E2D\u0E22\u0E39\u0E48\u0E23\u0E30\u0E2B\u0E27\u0E48\u0E32\u0E07\u0E01\u0E32\u0E23\u0E25\u0E07\u0E17\u0E30\u0E40\u0E1A\u0E35\u0E22\u0E19 \u0E01\u0E23\u0E38\u0E13\u0E32\u0E23\u0E2D\u0E2A\u0E31\u0E01\u0E04\u0E23\u0E39\u0E48\u0E41\u0E25\u0E49\u0E27\u0E25\u0E2D\u0E07\u0E2D\u0E35\u0E01\u0E04\u0E23\u0E31\u0E49\u0E07",
124
+ "We couldn't complete your request. Please try again.": "\u0E40\u0E23\u0E32\u0E44\u0E21\u0E48\u0E2A\u0E32\u0E21\u0E32\u0E23\u0E16\u0E14\u0E33\u0E40\u0E19\u0E34\u0E19\u0E01\u0E32\u0E23\u0E15\u0E32\u0E21\u0E04\u0E33\u0E02\u0E2D\u0E02\u0E2D\u0E07\u0E04\u0E38\u0E13\u0E44\u0E14\u0E49 \u0E01\u0E23\u0E38\u0E13\u0E32\u0E25\u0E2D\u0E07\u0E2D\u0E35\u0E01\u0E04\u0E23\u0E31\u0E49\u0E07",
125
+ "Try Again": "\u0E25\u0E2D\u0E07\u0E2D\u0E35\u0E01\u0E04\u0E23\u0E31\u0E49\u0E07",
126
+ "Open World App": "\u0E40\u0E1B\u0E34\u0E14 World App",
127
+ "Hide QR Code": "\u0E0B\u0E48\u0E2D\u0E19 QR Code",
128
+ "Display QR Code": "\u0E41\u0E2A\u0E14\u0E07 QR Code",
129
+ "QR Code copied": "\u0E04\u0E31\u0E14\u0E25\u0E2D\u0E01 QR Code \u0E41\u0E25\u0E49\u0E27",
130
+ "Connect your World ID": "\u0E40\u0E0A\u0E37\u0E48\u0E2D\u0E21\u0E15\u0E48\u0E2D World ID \u0E02\u0E2D\u0E07\u0E04\u0E38\u0E13",
131
+ "Use phone camera to scan the QR code": "\u0E43\u0E0A\u0E49\u0E01\u0E25\u0E49\u0E2D\u0E07\u0E42\u0E17\u0E23\u0E28\u0E31\u0E1E\u0E17\u0E4C\u0E40\u0E1E\u0E37\u0E48\u0E2D\u0E2A\u0E41\u0E01\u0E19 QR code",
132
+ "Connecting...": "\u0E01\u0E33\u0E25\u0E31\u0E07\u0E40\u0E0A\u0E37\u0E48\u0E2D\u0E21\u0E15\u0E48\u0E2D...",
133
+ "Please continue in app": "\u0E01\u0E23\u0E38\u0E13\u0E32\u0E14\u0E33\u0E40\u0E19\u0E34\u0E19\u0E01\u0E32\u0E23\u0E15\u0E48\u0E2D\u0E43\u0E19\u0E41\u0E2D\u0E1B",
134
+ "You will be redirected to the app, please return to this page once you're done": "\u0E04\u0E38\u0E13\u0E08\u0E30\u0E16\u0E39\u0E01\u0E19\u0E33\u0E44\u0E1B\u0E22\u0E31\u0E07\u0E41\u0E2D\u0E1B \u0E01\u0E23\u0E38\u0E13\u0E32\u0E01\u0E25\u0E31\u0E1A\u0E21\u0E32\u0E17\u0E35\u0E48\u0E2B\u0E19\u0E49\u0E32\u0E19\u0E35\u0E49\u0E40\u0E21\u0E37\u0E48\u0E2D\u0E40\u0E2A\u0E23\u0E47\u0E08\u0E41\u0E25\u0E49\u0E27",
135
+ "Action cannot be an empty string.": "\u0E01\u0E32\u0E23\u0E14\u0E33\u0E40\u0E19\u0E34\u0E19\u0E01\u0E32\u0E23\u0E44\u0E21\u0E48\u0E2A\u0E32\u0E21\u0E32\u0E23\u0E16\u0E40\u0E1B\u0E47\u0E19\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E27\u0E48\u0E32\u0E07\u0E44\u0E14\u0E49",
136
+ "Invalid IDKitStage :stage.": "IDKitStage \u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07 :stage.",
137
+ "Terms & Privacy": "\u0E02\u0E49\u0E2D\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E41\u0E25\u0E30\u0E04\u0E27\u0E32\u0E21\u0E40\u0E1B\u0E47\u0E19\u0E2A\u0E48\u0E27\u0E19\u0E15\u0E31\u0E27"
138
+ };
139
+
140
+ // src/lang/translations/index.ts
141
+ var translations = {
142
+ en,
143
+ es,
144
+ th
145
+ };
146
+
147
+ // src/lang/localization.ts
148
+ var currentConfig = {};
149
+ var setLocalizationConfig = (config) => {
150
+ currentConfig = config;
151
+ };
152
+ var getLocalizationConfig = () => currentConfig;
153
+ var detectBrowserLanguage = () => {
154
+ for (const lang of navigator.languages) {
155
+ const [language] = lang.split("-");
156
+ const normalizedLang = language.toLowerCase();
157
+ if (normalizedLang in translations) {
158
+ return normalizedLang;
159
+ }
160
+ }
161
+ return void 0;
162
+ };
163
+ var getCurrentLanguage = () => {
164
+ const config = getLocalizationConfig();
165
+ if (config.language && config.language in translations) {
166
+ return config.language;
167
+ }
168
+ const browserLang = detectBrowserLanguage();
169
+ if (browserLang) {
170
+ return browserLang;
171
+ }
172
+ return "en";
173
+ };
174
+ var getTranslations = () => {
175
+ const currentLang = getCurrentLanguage();
176
+ return translations[currentLang];
177
+ };
178
+ var getSupportedLanguages = () => {
179
+ return Object.keys(translations);
180
+ };
181
+
46
182
  // src/lang/index.ts
47
- var translations = {};
48
183
  var getLang = () => {
49
- if (!navigator?.languages) return;
50
- const supportedLang = navigator.languages.find((l) => translations[l] != void 0) ?? "";
51
- return translations[supportedLang];
184
+ return getTranslations();
52
185
  };
53
186
  var replaceParams = (str, params) => {
54
- let replaced = str;
55
- for (const [key, value] of Object.entries(params ?? {})) replaced = str.replace(`:${key}`, value);
56
- return replaced;
187
+ if (!params) return str;
188
+ let result = str;
189
+ for (const [key, value] of Object.entries(params)) {
190
+ result = result.replace(`:${key}`, value);
191
+ }
192
+ return result;
57
193
  };
58
- function __(str, params) {
59
- if (typeof navigator === "undefined") return str;
60
- return replaceParams(getLang()?.[str] ?? str, params);
194
+ function __(str, ...args) {
195
+ const [params] = args;
196
+ if (typeof navigator === "undefined" && typeof window === "undefined") {
197
+ return replaceParams(str, params);
198
+ }
199
+ const translated = getLang()?.[str] ?? str;
200
+ return replaceParams(translated, params);
61
201
  }
62
202
 
63
203
  // src/store/idkit.ts
@@ -204,7 +344,7 @@ var useIDKit = ({ handleVerify, onSuccess } = {}) => {
204
344
  var useIDKit_default = useIDKit;
205
345
 
206
346
  // src/components/IDKitWidget/index.tsx
207
- var import_react9 = require("react");
347
+ var import_react10 = require("react");
208
348
 
209
349
  // src/hooks/useMedia.ts
210
350
  var import_react2 = require("react");
@@ -233,13 +373,78 @@ var useMedia_default = useMedia;
233
373
  var import_react_dom2 = require("react-dom");
234
374
 
235
375
  // src/styles/styles.css
236
- var styles_default = `/* TODO: Use an alternative to avoid the extra request to Google (e.g. hosting ourselves, or local file) */
237
- @import url('https://fonts.googleapis.com/css2?family=Rubik:wght@400;600;700&family=Sora:wght@600&display=swap');
238
- /* ! tailwindcss v3.4.4 | MIT License | https://tailwindcss.com */
376
+ var styles_default = `/* Remote TWK Lausanne font definitions */
377
+ @font-face {
378
+ font-family: 'TWK Lausanne';
379
+ src: url('https://world-id-assets.com/fonts/TWKLausanne-200.woff2') format('woff2');
380
+ font-weight: 200;
381
+ font-style: normal;
382
+ font-display: swap;
383
+ }
384
+
385
+ @font-face {
386
+ font-family: 'TWK Lausanne';
387
+ src: url('https://world-id-assets.com/fonts/TWKLausanne-300.woff2') format('woff2');
388
+ font-weight: 300;
389
+ font-style: normal;
390
+ font-display: swap;
391
+ }
392
+
393
+ @font-face {
394
+ font-family: 'TWK Lausanne';
395
+ src: url('https://world-id-assets.com/fonts/TWKLausanne-350.woff2') format('woff2');
396
+ font-weight: 350;
397
+ font-style: normal;
398
+ font-display: swap;
399
+ }
400
+
401
+ @font-face {
402
+ font-family: 'TWK Lausanne';
403
+ src: url('https://world-id-assets.com/fonts/TWKLausanne-400.woff2') format('woff2');
404
+ font-weight: 400;
405
+ font-style: normal;
406
+ font-display: swap;
407
+ }
408
+
409
+ @font-face {
410
+ font-family: 'TWK Lausanne';
411
+ src: url('https://world-id-assets.com/fonts/TWKLausanne-450.woff2') format('woff2');
412
+ font-weight: 450;
413
+ font-style: normal;
414
+ font-display: swap;
415
+ }
416
+
417
+ @font-face {
418
+ font-family: 'TWK Lausanne';
419
+ src: url('https://world-id-assets.com/fonts/TWKLausanne-500.woff2') format('woff2');
420
+ font-weight: 500;
421
+ font-style: normal;
422
+ font-display: swap;
423
+ }
424
+
425
+ @font-face {
426
+ font-family: 'TWK Lausanne';
427
+ src: url('https://world-id-assets.com/fonts/TWKLausanne-550.woff2') format('woff2');
428
+ font-weight: 550;
429
+ font-style: normal;
430
+ font-display: swap;
431
+ }
432
+
433
+ @font-face {
434
+ font-family: 'TWK Lausanne';
435
+ src: url('https://world-id-assets.com/fonts/TWKLausanne-600.woff2') format('woff2');
436
+ font-weight: 600;
437
+ font-style: normal;
438
+ font-display: swap;
439
+ }
440
+
441
+ /* ! tailwindcss v3.4.4 | MIT License | https://tailwindcss.com */
442
+
239
443
  /*
240
444
  1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
241
445
  2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
242
446
  */
447
+
243
448
  *,
244
449
  ::before,
245
450
  ::after {
@@ -248,10 +453,12 @@ var styles_default = `/* TODO: Use an alternative to avoid the extra request to
248
453
  border-style: solid; /* 2 */
249
454
  border-color: #e5e7eb; /* 2 */
250
455
  }
456
+
251
457
  ::before,
252
458
  ::after {
253
459
  --tw-content: '';
254
460
  }
461
+
255
462
  /*
256
463
  1. Use a consistent sensible line-height in all browsers.
257
464
  2. Prevent adjustments of font size after orientation changes in iOS.
@@ -261,6 +468,7 @@ var styles_default = `/* TODO: Use an alternative to avoid the extra request to
261
468
  6. Use the user's configured \`sans\` font-variation-settings by default.
262
469
  7. Disable tap highlights on iOS
263
470
  */
471
+
264
472
  html,
265
473
  :host {
266
474
  line-height: 1.5; /* 1 */
@@ -268,39 +476,47 @@ html,
268
476
  -moz-tab-size: 4; /* 3 */
269
477
  -o-tab-size: 4;
270
478
  tab-size: 4; /* 3 */
271
- font-family: Rubik, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
479
+ font-family: TWK Lausanne, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
272
480
  font-feature-settings: normal; /* 5 */
273
481
  font-variation-settings: normal; /* 6 */
274
482
  -webkit-tap-highlight-color: transparent; /* 7 */
275
483
  }
484
+
276
485
  /*
277
486
  1. Remove the margin in all browsers.
278
487
  2. Inherit line-height from \`html\` so users can set them as a class directly on the \`html\` element.
279
488
  */
489
+
280
490
  body {
281
491
  margin: 0; /* 1 */
282
492
  line-height: inherit; /* 2 */
283
493
  }
494
+
284
495
  /*
285
496
  1. Add the correct height in Firefox.
286
497
  2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
287
498
  3. Ensure horizontal rules are visible by default.
288
499
  */
500
+
289
501
  hr {
290
502
  height: 0; /* 1 */
291
503
  color: inherit; /* 2 */
292
504
  border-top-width: 1px; /* 3 */
293
505
  }
506
+
294
507
  /*
295
508
  Add the correct text decoration in Chrome, Edge, and Safari.
296
509
  */
510
+
297
511
  abbr:where([title]) {
298
512
  -webkit-text-decoration: underline dotted;
299
513
  text-decoration: underline dotted;
300
514
  }
515
+
301
516
  /*
302
517
  Remove the default font size and weight for headings.
303
518
  */
519
+
304
520
  h1,
305
521
  h2,
306
522
  h3,
@@ -310,26 +526,32 @@ h6 {
310
526
  font-size: inherit;
311
527
  font-weight: inherit;
312
528
  }
529
+
313
530
  /*
314
531
  Reset links to optimize for opt-in styling instead of opt-out.
315
532
  */
533
+
316
534
  a {
317
535
  color: inherit;
318
536
  text-decoration: inherit;
319
537
  }
538
+
320
539
  /*
321
540
  Add the correct font weight in Edge and Safari.
322
541
  */
542
+
323
543
  b,
324
544
  strong {
325
545
  font-weight: bolder;
326
546
  }
547
+
327
548
  /*
328
549
  1. Use the user's configured \`mono\` font-family by default.
329
550
  2. Use the user's configured \`mono\` font-feature-settings by default.
330
551
  3. Use the user's configured \`mono\` font-variation-settings by default.
331
552
  4. Correct the odd \`em\` font sizing in all browsers.
332
553
  */
554
+
333
555
  code,
334
556
  kbd,
335
557
  samp,
@@ -339,15 +561,19 @@ pre {
339
561
  font-variation-settings: normal; /* 3 */
340
562
  font-size: 1em; /* 4 */
341
563
  }
564
+
342
565
  /*
343
566
  Add the correct font size in all browsers.
344
567
  */
568
+
345
569
  small {
346
570
  font-size: 80%;
347
571
  }
572
+
348
573
  /*
349
574
  Prevent \`sub\` and \`sup\` elements from affecting the line height in all browsers.
350
575
  */
576
+
351
577
  sub,
352
578
  sup {
353
579
  font-size: 75%;
@@ -355,27 +581,33 @@ sup {
355
581
  position: relative;
356
582
  vertical-align: baseline;
357
583
  }
584
+
358
585
  sub {
359
586
  bottom: -0.25em;
360
587
  }
588
+
361
589
  sup {
362
590
  top: -0.5em;
363
591
  }
592
+
364
593
  /*
365
594
  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)
366
595
  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)
367
596
  3. Remove gaps between table borders by default.
368
597
  */
598
+
369
599
  table {
370
600
  text-indent: 0; /* 1 */
371
601
  border-color: inherit; /* 2 */
372
602
  border-collapse: collapse; /* 3 */
373
603
  }
604
+
374
605
  /*
375
606
  1. Change the font styles in all browsers.
376
607
  2. Remove the margin in Firefox and Safari.
377
608
  3. Remove default padding in all browsers.
378
609
  */
610
+
379
611
  button,
380
612
  input,
381
613
  optgroup,
@@ -392,17 +624,21 @@ textarea {
392
624
  margin: 0; /* 2 */
393
625
  padding: 0; /* 3 */
394
626
  }
627
+
395
628
  /*
396
629
  Remove the inheritance of text transform in Edge and Firefox.
397
630
  */
631
+
398
632
  button,
399
633
  select {
400
634
  text-transform: none;
401
635
  }
636
+
402
637
  /*
403
638
  1. Correct the inability to style clickable types in iOS and Safari.
404
639
  2. Remove default button styles.
405
640
  */
641
+
406
642
  button,
407
643
  input:where([type='button']),
408
644
  input:where([type='reset']),
@@ -411,62 +647,80 @@ input:where([type='submit']) {
411
647
  background-color: transparent; /* 2 */
412
648
  background-image: none; /* 2 */
413
649
  }
650
+
414
651
  /*
415
652
  Use the modern Firefox focus style for all focusable elements.
416
653
  */
654
+
417
655
  :-moz-focusring {
418
656
  outline: auto;
419
657
  }
658
+
420
659
  /*
421
660
  Remove the additional \`:invalid\` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
422
661
  */
662
+
423
663
  :-moz-ui-invalid {
424
664
  box-shadow: none;
425
665
  }
666
+
426
667
  /*
427
668
  Add the correct vertical alignment in Chrome and Firefox.
428
669
  */
670
+
429
671
  progress {
430
672
  vertical-align: baseline;
431
673
  }
674
+
432
675
  /*
433
676
  Correct the cursor style of increment and decrement buttons in Safari.
434
677
  */
678
+
435
679
  ::-webkit-inner-spin-button,
436
680
  ::-webkit-outer-spin-button {
437
681
  height: auto;
438
682
  }
683
+
439
684
  /*
440
685
  1. Correct the odd appearance in Chrome and Safari.
441
686
  2. Correct the outline style in Safari.
442
687
  */
688
+
443
689
  [type='search'] {
444
690
  -webkit-appearance: textfield; /* 1 */
445
691
  outline-offset: -2px; /* 2 */
446
692
  }
693
+
447
694
  /*
448
695
  Remove the inner padding in Chrome and Safari on macOS.
449
696
  */
697
+
450
698
  ::-webkit-search-decoration {
451
699
  -webkit-appearance: none;
452
700
  }
701
+
453
702
  /*
454
703
  1. Correct the inability to style clickable types in iOS and Safari.
455
704
  2. Change font properties to \`inherit\` in Safari.
456
705
  */
706
+
457
707
  ::-webkit-file-upload-button {
458
708
  -webkit-appearance: button; /* 1 */
459
709
  font: inherit; /* 2 */
460
710
  }
711
+
461
712
  /*
462
713
  Add the correct display in Chrome and Safari.
463
714
  */
715
+
464
716
  summary {
465
717
  display: list-item;
466
718
  }
719
+
467
720
  /*
468
721
  Removes the default spacing and border for appropriate elements.
469
722
  */
723
+
470
724
  blockquote,
471
725
  dl,
472
726
  dd,
@@ -482,13 +736,16 @@ p,
482
736
  pre {
483
737
  margin: 0;
484
738
  }
739
+
485
740
  fieldset {
486
741
  margin: 0;
487
742
  padding: 0;
488
743
  }
744
+
489
745
  legend {
490
746
  padding: 0;
491
747
  }
748
+
492
749
  ol,
493
750
  ul,
494
751
  menu {
@@ -496,49 +753,62 @@ menu {
496
753
  margin: 0;
497
754
  padding: 0;
498
755
  }
756
+
499
757
  /*
500
758
  Reset default styling for dialogs.
501
759
  */
760
+
502
761
  dialog {
503
762
  padding: 0;
504
763
  }
764
+
505
765
  /*
506
766
  Prevent resizing textareas horizontally by default.
507
767
  */
768
+
508
769
  textarea {
509
770
  resize: vertical;
510
771
  }
772
+
511
773
  /*
512
774
  1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
513
775
  2. Set the default placeholder color to the user's configured gray 400 color.
514
776
  */
777
+
515
778
  input::-moz-placeholder, textarea::-moz-placeholder {
516
779
  opacity: 1; /* 1 */
517
780
  color: #9ca3af; /* 2 */
518
781
  }
782
+
519
783
  input::placeholder,
520
784
  textarea::placeholder {
521
785
  opacity: 1; /* 1 */
522
786
  color: #9ca3af; /* 2 */
523
787
  }
788
+
524
789
  /*
525
790
  Set the default cursor for buttons.
526
791
  */
792
+
527
793
  button,
528
794
  [role="button"] {
529
795
  cursor: pointer;
530
796
  }
797
+
531
798
  /*
532
799
  Make sure disabled buttons don't get the pointer cursor.
533
800
  */
801
+
534
802
  :disabled {
535
803
  cursor: default;
536
804
  }
805
+
537
806
  /*
538
807
  1. Make replaced elements \`display: block\` by default. (https://github.com/mozdevs/cssremedy/issues/14)
539
808
  2. Add \`vertical-align: middle\` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
540
809
  This can trigger a poorly considered lint error in some tools but is included by design.
541
810
  */
811
+
542
812
  img,
543
813
  svg,
544
814
  video,
@@ -550,19 +820,24 @@ object {
550
820
  display: block; /* 1 */
551
821
  vertical-align: middle; /* 2 */
552
822
  }
823
+
553
824
  /*
554
825
  Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
555
826
  */
827
+
556
828
  img,
557
829
  video {
558
830
  max-width: 100%;
559
831
  height: auto;
560
832
  }
833
+
561
834
  /* Make elements with the HTML hidden attribute stay hidden by default */
835
+
562
836
  [hidden] {
563
837
  display: none;
564
838
  }
565
- [type='text'],input:where(:not([type])),[type='email'],[type='url'],[type='password'],[type='number'],[type='date'],[type='datetime-local'],[type='month'],[type='search'],[type='tel'],[type='time'],[type='week'],[multiple],textarea,select{
839
+
840
+ [type='text'],input:where(:not([type])),[type='email'],[type='url'],[type='password'],[type='number'],[type='date'],[type='datetime-local'],[type='month'],[type='search'],[type='tel'],[type='time'],[type='week'],[multiple],textarea,select {
566
841
  -webkit-appearance: none;
567
842
  -moz-appearance: none;
568
843
  appearance: none;
@@ -578,7 +853,8 @@ video {
578
853
  line-height: 1.5rem;
579
854
  --tw-shadow: 0 0 #0000;
580
855
  }
581
- [type='text']:focus, input:where(:not([type])):focus, [type='email']:focus, [type='url']:focus, [type='password']:focus, [type='number']:focus, [type='date']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='week']:focus, [multiple]:focus, textarea:focus, select:focus{
856
+
857
+ [type='text']:focus, input:where(:not([type])):focus, [type='email']:focus, [type='url']:focus, [type='password']:focus, [type='number']:focus, [type='date']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='week']:focus, [multiple]:focus, textarea:focus, select:focus {
582
858
  outline: 2px solid transparent;
583
859
  outline-offset: 2px;
584
860
  --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
@@ -590,29 +866,36 @@ video {
590
866
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
591
867
  border-color: #2563eb;
592
868
  }
593
- input::-moz-placeholder, textarea::-moz-placeholder{
869
+
870
+ input::-moz-placeholder, textarea::-moz-placeholder {
594
871
  color: #6b7280;
595
872
  opacity: 1;
596
873
  }
597
- input::placeholder,textarea::placeholder{
874
+
875
+ input::placeholder,textarea::placeholder {
598
876
  color: #6b7280;
599
877
  opacity: 1;
600
878
  }
601
- ::-webkit-datetime-edit-fields-wrapper{
879
+
880
+ ::-webkit-datetime-edit-fields-wrapper {
602
881
  padding: 0;
603
882
  }
604
- ::-webkit-date-and-time-value{
883
+
884
+ ::-webkit-date-and-time-value {
605
885
  min-height: 1.5em;
606
886
  text-align: inherit;
607
887
  }
608
- ::-webkit-datetime-edit{
888
+
889
+ ::-webkit-datetime-edit {
609
890
  display: inline-flex;
610
891
  }
611
- ::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{
892
+
893
+ ::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field {
612
894
  padding-top: 0;
613
895
  padding-bottom: 0;
614
896
  }
615
- select{
897
+
898
+ select {
616
899
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
617
900
  background-position: right 0.5rem center;
618
901
  background-repeat: no-repeat;
@@ -621,7 +904,8 @@ select{
621
904
  -webkit-print-color-adjust: exact;
622
905
  print-color-adjust: exact;
623
906
  }
624
- [multiple],[size]:where(select:not([size="1"])){
907
+
908
+ [multiple],[size]:where(select:not([size="1"])) {
625
909
  background-image: initial;
626
910
  background-position: initial;
627
911
  background-repeat: unset;
@@ -630,7 +914,8 @@ select{
630
914
  -webkit-print-color-adjust: unset;
631
915
  print-color-adjust: unset;
632
916
  }
633
- [type='checkbox'],[type='radio']{
917
+
918
+ [type='checkbox'],[type='radio'] {
634
919
  -webkit-appearance: none;
635
920
  -moz-appearance: none;
636
921
  appearance: none;
@@ -652,13 +937,16 @@ select{
652
937
  border-width: 1px;
653
938
  --tw-shadow: 0 0 #0000;
654
939
  }
655
- [type='checkbox']{
940
+
941
+ [type='checkbox'] {
656
942
  border-radius: 0px;
657
943
  }
658
- [type='radio']{
944
+
945
+ [type='radio'] {
659
946
  border-radius: 100%;
660
947
  }
661
- [type='checkbox']:focus,[type='radio']:focus{
948
+
949
+ [type='checkbox']:focus,[type='radio']:focus {
662
950
  outline: 2px solid transparent;
663
951
  outline-offset: 2px;
664
952
  --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
@@ -669,38 +957,45 @@ select{
669
957
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
670
958
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
671
959
  }
672
- [type='checkbox']:checked,[type='radio']:checked{
960
+
961
+ [type='checkbox']:checked,[type='radio']:checked {
673
962
  border-color: transparent;
674
963
  background-color: currentColor;
675
964
  background-size: 100% 100%;
676
965
  background-position: center;
677
966
  background-repeat: no-repeat;
678
967
  }
679
- [type='checkbox']:checked{
968
+
969
+ [type='checkbox']:checked {
680
970
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e");
681
971
  }
682
- @media (forced-colors: active) {
683
- [type='checkbox']:checked{
972
+
973
+ @media (forced-colors: active) {
974
+ [type='checkbox']:checked {
684
975
  -webkit-appearance: auto;
685
976
  -moz-appearance: auto;
686
977
  appearance: auto;
687
978
  }
688
979
  }
689
- [type='radio']:checked{
980
+
981
+ [type='radio']:checked {
690
982
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
691
983
  }
692
- @media (forced-colors: active) {
693
- [type='radio']:checked{
984
+
985
+ @media (forced-colors: active) {
986
+ [type='radio']:checked {
694
987
  -webkit-appearance: auto;
695
988
  -moz-appearance: auto;
696
989
  appearance: auto;
697
990
  }
698
991
  }
699
- [type='checkbox']:checked:hover,[type='checkbox']:checked:focus,[type='radio']:checked:hover,[type='radio']:checked:focus{
992
+
993
+ [type='checkbox']:checked:hover,[type='checkbox']:checked:focus,[type='radio']:checked:hover,[type='radio']:checked:focus {
700
994
  border-color: transparent;
701
995
  background-color: currentColor;
702
996
  }
703
- [type='checkbox']:indeterminate{
997
+
998
+ [type='checkbox']:indeterminate {
704
999
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");
705
1000
  border-color: transparent;
706
1001
  background-color: currentColor;
@@ -708,18 +1003,21 @@ select{
708
1003
  background-position: center;
709
1004
  background-repeat: no-repeat;
710
1005
  }
711
- @media (forced-colors: active) {
712
- [type='checkbox']:indeterminate{
1006
+
1007
+ @media (forced-colors: active) {
1008
+ [type='checkbox']:indeterminate {
713
1009
  -webkit-appearance: auto;
714
1010
  -moz-appearance: auto;
715
1011
  appearance: auto;
716
1012
  }
717
1013
  }
718
- [type='checkbox']:indeterminate:hover,[type='checkbox']:indeterminate:focus{
1014
+
1015
+ [type='checkbox']:indeterminate:hover,[type='checkbox']:indeterminate:focus {
719
1016
  border-color: transparent;
720
1017
  background-color: currentColor;
721
1018
  }
722
- [type='file']{
1019
+
1020
+ [type='file'] {
723
1021
  background: unset;
724
1022
  border-color: inherit;
725
1023
  border-width: 0;
@@ -728,11 +1026,13 @@ select{
728
1026
  font-size: unset;
729
1027
  line-height: inherit;
730
1028
  }
731
- [type='file']:focus{
1029
+
1030
+ [type='file']:focus {
732
1031
  outline: 1px solid ButtonText;
733
1032
  outline: 1px auto -webkit-focus-ring-color;
734
1033
  }
735
- *, ::before, ::after{
1034
+
1035
+ *, ::before, ::after {
736
1036
  --tw-border-spacing-x: 0;
737
1037
  --tw-border-spacing-y: 0;
738
1038
  --tw-translate-x: 0;
@@ -785,7 +1085,8 @@ select{
785
1085
  --tw-contain-paint: ;
786
1086
  --tw-contain-style: ;
787
1087
  }
788
- ::backdrop{
1088
+
1089
+ ::backdrop {
789
1090
  --tw-border-spacing-x: 0;
790
1091
  --tw-border-spacing-y: 0;
791
1092
  --tw-translate-x: 0;
@@ -838,541 +1139,543 @@ select{
838
1139
  --tw-contain-paint: ;
839
1140
  --tw-contain-style: ;
840
1141
  }
841
- .container{
1142
+ .container {
842
1143
  width: 100%;
843
1144
  }
844
- @media (min-width: 414px){
845
- .container{
1145
+ @media (min-width: 414px) {
1146
+ .container {
846
1147
  max-width: 414px;
847
1148
  }
848
1149
  }
849
- @media (min-width: 640px){
850
- .container{
1150
+ @media (min-width: 640px) {
1151
+ .container {
851
1152
  max-width: 640px;
852
1153
  }
853
1154
  }
854
- @media (min-width: 768px){
855
- .container{
1155
+ @media (min-width: 768px) {
1156
+ .container {
856
1157
  max-width: 768px;
857
1158
  }
858
1159
  }
859
- @media (min-width: 1024px){
860
- .container{
1160
+ @media (min-width: 1024px) {
1161
+ .container {
861
1162
  max-width: 1024px;
862
1163
  }
863
1164
  }
864
- @media (min-width: 1280px){
865
- .container{
1165
+ @media (min-width: 1280px) {
1166
+ .container {
866
1167
  max-width: 1280px;
867
1168
  }
868
1169
  }
869
- @media (min-width: 1536px){
870
- .container{
1170
+ @media (min-width: 1536px) {
1171
+ .container {
871
1172
  max-width: 1536px;
872
1173
  }
873
1174
  }
874
- .visible{
1175
+ .visible {
875
1176
  visibility: visible;
876
1177
  }
877
- .fixed{
1178
+ .fixed {
878
1179
  position: fixed;
879
1180
  }
880
- .absolute{
1181
+ .absolute {
881
1182
  position: absolute;
882
1183
  }
883
- .relative{
1184
+ .relative {
884
1185
  position: relative;
885
1186
  }
886
- .inset-0{
1187
+ .inset-0 {
887
1188
  inset: 0;
888
1189
  }
889
- .z-50{
1190
+ .z-50 {
890
1191
  z-index: 50;
891
1192
  }
892
- .z-\\[9999\\]{
1193
+ .z-\\[9999\\] {
893
1194
  z-index: 9999;
894
1195
  }
895
- .mx-6{
1196
+ .mx-6 {
896
1197
  margin-left: 24px;
897
1198
  margin-right: 24px;
898
1199
  }
899
- .mx-auto{
1200
+ .mx-auto {
900
1201
  margin-left: auto;
901
1202
  margin-right: auto;
902
1203
  }
903
- .-mt-5{
1204
+ .-mt-5 {
904
1205
  margin-top: -20px;
905
1206
  }
906
- .-mt-6{
1207
+ .-mt-6 {
907
1208
  margin-top: -24px;
908
1209
  }
909
- .mb-10{
1210
+ .mb-10 {
910
1211
  margin-bottom: 40px;
911
1212
  }
912
- .mb-12{
913
- margin-bottom: 48px;
914
- }
915
- .mb-3{
1213
+ .mb-3 {
916
1214
  margin-bottom: 12px;
917
1215
  }
918
- .mb-4{
1216
+ .mb-4 {
919
1217
  margin-bottom: 16px;
920
1218
  }
921
- .mb-6{
1219
+ .mb-6 {
922
1220
  margin-bottom: 24px;
923
1221
  }
924
- .mr-1{
925
- margin-right: 4px;
926
- }
927
- .mr-1\\.5{
928
- margin-right: 6px;
929
- }
930
- .mt-2{
1222
+ .mt-2 {
931
1223
  margin-top: 8px;
932
1224
  }
933
- .mt-3{
1225
+ .mt-3 {
934
1226
  margin-top: 12px;
935
1227
  }
936
- .mt-4{
1228
+ .mt-4 {
937
1229
  margin-top: 16px;
938
1230
  }
939
- .inline{
1231
+ .inline {
940
1232
  display: inline;
941
1233
  }
942
- .flex{
1234
+ .flex {
943
1235
  display: flex;
944
1236
  }
945
- .inline-flex{
1237
+ .inline-flex {
946
1238
  display: inline-flex;
947
1239
  }
948
- .hidden{
1240
+ .hidden {
949
1241
  display: none;
950
1242
  }
951
- .size-11{
952
- width: 44px;
953
- height: 44px;
1243
+ .size-14 {
1244
+ width: 56px;
1245
+ height: 56px;
954
1246
  }
955
- .size-24{
1247
+ .size-24 {
956
1248
  width: 96px;
957
1249
  height: 96px;
958
1250
  }
959
- .size-5{
1251
+ .size-4 {
1252
+ width: 16px;
1253
+ height: 16px;
1254
+ }
1255
+ .size-5 {
960
1256
  width: 20px;
961
1257
  height: 20px;
962
1258
  }
963
- .size-6{
1259
+ .size-6 {
964
1260
  width: 24px;
965
1261
  height: 24px;
966
1262
  }
967
- .size-\\[244px\\]{
968
- width: 244px;
969
- height: 244px;
1263
+ .size-8 {
1264
+ width: 32px;
1265
+ height: 32px;
970
1266
  }
971
- .h-10{
972
- height: 40px;
1267
+ .size-\\[200px\\] {
1268
+ width: 200px;
1269
+ height: 200px;
973
1270
  }
974
- .min-h-full{
1271
+ .min-h-full {
975
1272
  min-height: 100%;
976
1273
  }
977
- .min-h-screen{
1274
+ .min-h-screen {
978
1275
  min-height: 100vh;
979
1276
  }
980
- .w-24{
1277
+ .w-24 {
981
1278
  width: 96px;
982
1279
  }
983
- .w-full{
1280
+ .w-full {
984
1281
  width: 100%;
985
1282
  }
986
- .max-w-\\[224px\\]{
1283
+ .max-w-\\[224px\\] {
987
1284
  max-width: 224px;
988
1285
  }
989
- .flex-1{
1286
+ .max-w-\\[260px\\] {
1287
+ max-width: 260px;
1288
+ }
1289
+ .flex-1 {
990
1290
  flex: 1 1 0%;
991
1291
  }
992
- @keyframes pulse{
993
- 50%{
1292
+ @keyframes pulse {
1293
+ 50% {
994
1294
  opacity: .5;
995
1295
  }
996
1296
  }
997
- .animate-pulse{
1297
+ .animate-pulse {
998
1298
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
999
1299
  }
1000
- @keyframes spin{
1001
- to{
1300
+ @keyframes spin {
1301
+ to {
1002
1302
  transform: rotate(360deg);
1003
1303
  }
1004
1304
  }
1005
- .animate-spin{
1305
+ .animate-spin {
1006
1306
  animation: spin 1s linear infinite;
1007
1307
  }
1008
- .cursor-pointer{
1308
+ .cursor-pointer {
1009
1309
  cursor: pointer;
1010
1310
  }
1011
- .flex-col{
1311
+ .flex-col {
1012
1312
  flex-direction: column;
1013
1313
  }
1014
- .items-end{
1314
+ .items-end {
1015
1315
  align-items: flex-end;
1016
1316
  }
1017
- .items-center{
1317
+ .items-center {
1018
1318
  align-items: center;
1019
1319
  }
1020
- .justify-center{
1021
- justify-content: center;
1320
+ .justify-end {
1321
+ justify-content: flex-end;
1022
1322
  }
1023
- .justify-between{
1024
- justify-content: space-between;
1323
+ .justify-center {
1324
+ justify-content: center;
1025
1325
  }
1026
- .space-x-2 > :not([hidden]) ~ :not([hidden]){
1326
+ .space-x-2 > :not([hidden]) ~ :not([hidden]) {
1027
1327
  --tw-space-x-reverse: 0;
1028
1328
  margin-right: calc(8px * var(--tw-space-x-reverse));
1029
1329
  margin-left: calc(8px * calc(1 - var(--tw-space-x-reverse)));
1030
1330
  }
1031
- .space-x-4 > :not([hidden]) ~ :not([hidden]){
1331
+ .space-x-4 > :not([hidden]) ~ :not([hidden]) {
1032
1332
  --tw-space-x-reverse: 0;
1033
1333
  margin-right: calc(16px * var(--tw-space-x-reverse));
1034
1334
  margin-left: calc(16px * calc(1 - var(--tw-space-x-reverse)));
1035
1335
  }
1036
- .space-y-10 > :not([hidden]) ~ :not([hidden]){
1336
+ .space-y-10 > :not([hidden]) ~ :not([hidden]) {
1037
1337
  --tw-space-y-reverse: 0;
1038
1338
  margin-top: calc(40px * calc(1 - var(--tw-space-y-reverse)));
1039
1339
  margin-bottom: calc(40px * var(--tw-space-y-reverse));
1040
1340
  }
1041
- .space-y-4 > :not([hidden]) ~ :not([hidden]){
1341
+ .space-y-4 > :not([hidden]) ~ :not([hidden]) {
1042
1342
  --tw-space-y-reverse: 0;
1043
1343
  margin-top: calc(16px * calc(1 - var(--tw-space-y-reverse)));
1044
1344
  margin-bottom: calc(16px * var(--tw-space-y-reverse));
1045
1345
  }
1046
- .space-y-5 > :not([hidden]) ~ :not([hidden]){
1346
+ .space-y-5 > :not([hidden]) ~ :not([hidden]) {
1047
1347
  --tw-space-y-reverse: 0;
1048
1348
  margin-top: calc(20px * calc(1 - var(--tw-space-y-reverse)));
1049
1349
  margin-bottom: calc(20px * var(--tw-space-y-reverse));
1050
1350
  }
1051
- .space-y-6 > :not([hidden]) ~ :not([hidden]){
1351
+ .space-y-6 > :not([hidden]) ~ :not([hidden]) {
1052
1352
  --tw-space-y-reverse: 0;
1053
1353
  margin-top: calc(24px * calc(1 - var(--tw-space-y-reverse)));
1054
1354
  margin-bottom: calc(24px * var(--tw-space-y-reverse));
1055
1355
  }
1056
- .space-y-8 > :not([hidden]) ~ :not([hidden]){
1356
+ .space-y-8 > :not([hidden]) ~ :not([hidden]) {
1057
1357
  --tw-space-y-reverse: 0;
1058
1358
  margin-top: calc(32px * calc(1 - var(--tw-space-y-reverse)));
1059
1359
  margin-bottom: calc(32px * var(--tw-space-y-reverse));
1060
1360
  }
1061
- .overflow-y-hidden{
1361
+ .overflow-y-hidden {
1062
1362
  overflow-y: hidden;
1063
1363
  }
1064
- .rounded-2xl{
1364
+ .rounded-2xl {
1065
1365
  border-radius: 1rem;
1066
1366
  }
1067
- .rounded-full{
1367
+ .rounded-full {
1068
1368
  border-radius: 9999px;
1069
1369
  }
1070
- .rounded-lg{
1370
+ .rounded-lg {
1071
1371
  border-radius: 0.5rem;
1072
1372
  }
1073
- .border{
1373
+ .border {
1074
1374
  border-width: 1px;
1075
1375
  }
1076
- .border-t{
1376
+ .border-\\[1\\.2px\\] {
1377
+ border-width: 1.2px;
1378
+ }
1379
+ .border-t {
1077
1380
  border-top-width: 1px;
1078
1381
  }
1079
- .border-ebecef{
1382
+ .border-solid {
1383
+ border-style: solid;
1384
+ }
1385
+ .border-\\[\\#EBECEF\\] {
1080
1386
  --tw-border-opacity: 1;
1081
1387
  border-color: rgb(235 236 239 / var(--tw-border-opacity));
1082
1388
  }
1083
- .border-f1f5f8{
1389
+ .border-ebecef {
1390
+ --tw-border-opacity: 1;
1391
+ border-color: rgb(235 236 239 / var(--tw-border-opacity));
1392
+ }
1393
+ .border-f1f5f8 {
1084
1394
  --tw-border-opacity: 1;
1085
1395
  border-color: rgb(241 245 248 / var(--tw-border-opacity));
1086
1396
  }
1087
- .border-f5f5f7{
1397
+ .border-f5f5f7 {
1088
1398
  --tw-border-opacity: 1;
1089
1399
  border-color: rgb(245 245 247 / var(--tw-border-opacity));
1090
1400
  }
1091
- .border-transparent{
1401
+ .border-transparent {
1092
1402
  border-color: transparent;
1093
1403
  }
1094
- .bg-0d151d{
1404
+ .bg-0d151d {
1095
1405
  --tw-bg-opacity: 1;
1096
1406
  background-color: rgb(13 21 29 / var(--tw-bg-opacity));
1097
1407
  }
1098
- .bg-black\\/50{
1408
+ .bg-black\\/50 {
1099
1409
  background-color: rgb(0 0 0 / 0.5);
1100
1410
  }
1101
- .bg-transparent{
1411
+ .bg-transparent {
1102
1412
  background-color: transparent;
1103
1413
  }
1104
- .bg-white{
1414
+ .bg-white {
1105
1415
  --tw-bg-opacity: 1;
1106
1416
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
1107
1417
  }
1108
- .p-2{
1109
- padding: 8px;
1418
+ .p-3 {
1419
+ padding: 12px;
1110
1420
  }
1111
- .p-4{
1421
+ .p-4 {
1112
1422
  padding: 16px;
1113
1423
  }
1114
- .p-7{
1424
+ .p-7 {
1115
1425
  padding: 28px;
1116
1426
  }
1117
- .px-2{
1427
+ .px-2 {
1118
1428
  padding-left: 8px;
1119
1429
  padding-right: 8px;
1120
1430
  }
1121
- .px-8{
1431
+ .px-8 {
1122
1432
  padding-left: 32px;
1123
1433
  padding-right: 32px;
1124
1434
  }
1125
- .py-1{
1435
+ .py-1 {
1126
1436
  padding-top: 4px;
1127
1437
  padding-bottom: 4px;
1128
1438
  }
1129
- .py-3{
1439
+ .py-3 {
1130
1440
  padding-top: 12px;
1131
1441
  padding-bottom: 12px;
1132
1442
  }
1133
- .pt-6{
1443
+ .pt-6 {
1134
1444
  padding-top: 24px;
1135
1445
  }
1136
- .text-center{
1446
+ .text-center {
1137
1447
  text-align: center;
1138
1448
  }
1139
- .font-sans{
1140
- font-family: Rubik, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1141
- }
1142
- .font-sora{
1143
- font-family: Sora, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1449
+ .font-sans {
1450
+ font-family: TWK Lausanne, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1144
1451
  }
1145
- .text-2xl{
1452
+ .text-2xl {
1146
1453
  font-size: 24px;
1147
1454
  line-height: 32px;
1148
1455
  }
1149
- .text-lg{
1456
+ .text-lg {
1150
1457
  font-size: 18px;
1151
1458
  line-height: 28px;
1152
1459
  }
1153
- .text-sm{
1460
+ .text-sm {
1154
1461
  font-size: 14px;
1155
1462
  line-height: 20px;
1156
1463
  }
1157
- .text-xs{
1464
+ .text-xs {
1158
1465
  font-size: 12px;
1159
1466
  line-height: 16px;
1160
1467
  }
1161
- .font-bold{
1162
- font-weight: 700;
1468
+ .font-light {
1469
+ font-weight: 300;
1163
1470
  }
1164
- .font-medium{
1471
+ .font-medium {
1165
1472
  font-weight: 500;
1166
1473
  }
1167
- .font-semibold{
1474
+ .font-semibold {
1168
1475
  font-weight: 600;
1169
1476
  }
1170
- .text-0d151d{
1477
+ .text-0d151d {
1171
1478
  --tw-text-opacity: 1;
1172
1479
  color: rgb(13 21 29 / var(--tw-text-opacity));
1173
1480
  }
1174
- .text-29343f{
1481
+ .text-29343f {
1175
1482
  --tw-text-opacity: 1;
1176
1483
  color: rgb(41 52 63 / var(--tw-text-opacity));
1177
1484
  }
1178
- .text-3c424b{
1485
+ .text-3c424b {
1179
1486
  --tw-text-opacity: 1;
1180
1487
  color: rgb(60 66 75 / var(--tw-text-opacity));
1181
1488
  }
1182
- .text-657080{
1489
+ .text-657080 {
1183
1490
  --tw-text-opacity: 1;
1184
1491
  color: rgb(101 112 128 / var(--tw-text-opacity));
1185
1492
  }
1186
- .text-70868f{
1493
+ .text-70868f {
1187
1494
  --tw-text-opacity: 1;
1188
1495
  color: rgb(112 134 143 / var(--tw-text-opacity));
1189
1496
  }
1190
- .text-9ba3ae{
1497
+ .text-9ba3ae {
1191
1498
  --tw-text-opacity: 1;
1192
1499
  color: rgb(155 163 174 / var(--tw-text-opacity));
1193
1500
  }
1194
- .text-9eafc0{
1501
+ .text-9eafc0 {
1195
1502
  --tw-text-opacity: 1;
1196
1503
  color: rgb(158 175 192 / var(--tw-text-opacity));
1197
1504
  }
1198
- .text-black{
1505
+ .text-black {
1199
1506
  --tw-text-opacity: 1;
1200
1507
  color: rgb(0 0 0 / var(--tw-text-opacity));
1201
1508
  }
1202
- .text-gray-900{
1509
+ .text-gray-900 {
1203
1510
  --tw-text-opacity: 1;
1204
1511
  color: rgb(17 24 39 / var(--tw-text-opacity));
1205
1512
  }
1206
- .text-red-500{
1207
- --tw-text-opacity: 1;
1208
- color: rgb(239 68 68 / var(--tw-text-opacity));
1209
- }
1210
- .text-white{
1513
+ .text-white {
1211
1514
  --tw-text-opacity: 1;
1212
1515
  color: rgb(255 255 255 / var(--tw-text-opacity));
1213
1516
  }
1214
- .opacity-40{
1517
+ .opacity-40 {
1215
1518
  opacity: 0.4;
1216
1519
  }
1217
- .shadow{
1520
+ .shadow {
1218
1521
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
1219
1522
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
1220
1523
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
1221
1524
  }
1222
- .shadow-sm{
1525
+ .shadow-sm {
1223
1526
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
1224
1527
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
1225
1528
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
1226
1529
  }
1227
- .blur-lg{
1530
+ .blur-lg {
1228
1531
  --tw-blur: blur(16px);
1229
1532
  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);
1230
1533
  }
1231
- .filter{
1534
+ .filter {
1232
1535
  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);
1233
1536
  }
1234
- .backdrop-blur-lg{
1537
+ .backdrop-blur-lg {
1235
1538
  --tw-backdrop-blur: blur(16px);
1236
1539
  -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
1237
1540
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
1238
1541
  }
1239
- .transition{
1542
+ .transition {
1240
1543
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
1241
1544
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
1242
1545
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
1243
1546
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1244
1547
  transition-duration: 150ms;
1245
1548
  }
1246
- .duration-300{
1549
+ .duration-300 {
1247
1550
  transition-duration: 300ms;
1248
1551
  }
1249
- .duration-500{
1552
+ .duration-500 {
1250
1553
  transition-duration: 500ms;
1251
1554
  }
1252
- .ease-in-out{
1555
+ .ease-in-out {
1253
1556
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1254
1557
  }
1255
1558
  input[type='number']::-webkit-inner-spin-button,
1256
- input[type='number']::-webkit-outer-spin-button{
1559
+ input[type='number']::-webkit-outer-spin-button {
1257
1560
  -webkit-appearance: none;
1258
1561
  appearance: none;
1259
1562
  }
1260
1563
 
1261
- .hover\\:underline:hover{
1564
+ .hover\\:underline:hover {
1262
1565
  text-decoration-line: underline;
1263
1566
  }
1264
1567
 
1265
- .hover\\:shadow:hover{
1568
+ .hover\\:shadow:hover {
1266
1569
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
1267
1570
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
1268
1571
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
1269
1572
  }
1270
1573
 
1271
- .focus\\:outline-none:focus{
1574
+ .focus\\:outline-none:focus {
1272
1575
  outline: 2px solid transparent;
1273
1576
  outline-offset: 2px;
1274
1577
  }
1275
1578
 
1276
- .focus\\:ring-2:focus{
1579
+ .focus\\:ring-2:focus {
1277
1580
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
1278
1581
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
1279
1582
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
1280
1583
  }
1281
1584
 
1282
- .focus\\:ring-indigo-500:focus{
1585
+ .focus\\:ring-indigo-500:focus {
1283
1586
  --tw-ring-opacity: 1;
1284
1587
  --tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity));
1285
1588
  }
1286
1589
 
1287
- .focus\\:ring-offset-2:focus{
1590
+ .focus\\:ring-offset-2:focus {
1288
1591
  --tw-ring-offset-width: 2px;
1289
1592
  }
1290
1593
 
1291
- .focus-visible\\:ring:focus-visible{
1594
+ .focus-visible\\:ring:focus-visible {
1292
1595
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
1293
1596
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
1294
1597
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
1295
1598
  }
1296
1599
 
1297
- .focus-visible\\:ring-purple-500\\/75:focus-visible{
1600
+ .focus-visible\\:ring-purple-500\\/75:focus-visible {
1298
1601
  --tw-ring-color: rgb(168 85 247 / 0.75);
1299
1602
  }
1300
1603
 
1301
- .disabled\\:cursor-not-allowed:disabled{
1604
+ .disabled\\:cursor-not-allowed:disabled {
1302
1605
  cursor: not-allowed;
1303
1606
  }
1304
1607
 
1305
- .disabled\\:opacity-40:disabled{
1608
+ .disabled\\:opacity-40:disabled {
1306
1609
  opacity: 0.4;
1307
1610
  }
1308
1611
 
1309
- @media (prefers-reduced-motion: reduce){
1310
- @keyframes spin{
1311
- to{
1612
+ @media (prefers-reduced-motion: reduce) {
1613
+ @keyframes spin {
1614
+ to {
1312
1615
  transform: rotate(360deg);
1313
1616
  }
1314
1617
  }
1315
- .motion-reduce\\:animate-\\[spin_1\\.5s_linear_infinite\\]{
1618
+ .motion-reduce\\:animate-\\[spin_1\\.5s_linear_infinite\\] {
1316
1619
  animation: spin 1.5s linear infinite;
1317
1620
  }
1318
1621
  }
1319
1622
 
1320
- .dark\\:border-f1f5f8\\/10:is(.dark *){
1623
+ .dark\\:border-f1f5f8\\/10:is(.dark *) {
1321
1624
  border-color: rgb(241 245 248 / 0.1);
1322
1625
  }
1323
1626
 
1324
- .dark\\:bg-0d151d:is(.dark *){
1627
+ .dark\\:bg-0d151d:is(.dark *) {
1325
1628
  --tw-bg-opacity: 1;
1326
1629
  background-color: rgb(13 21 29 / var(--tw-bg-opacity));
1327
1630
  }
1328
1631
 
1329
- .dark\\:bg-white:is(.dark *){
1632
+ .dark\\:bg-white:is(.dark *) {
1330
1633
  --tw-bg-opacity: 1;
1331
1634
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
1332
1635
  }
1333
1636
 
1334
- .dark\\:text-0d151d:is(.dark *){
1637
+ .dark\\:text-0d151d:is(.dark *) {
1335
1638
  --tw-text-opacity: 1;
1336
1639
  color: rgb(13 21 29 / var(--tw-text-opacity));
1337
1640
  }
1338
1641
 
1339
- .dark\\:text-9eafc0:is(.dark *){
1642
+ .dark\\:text-9eafc0:is(.dark *) {
1340
1643
  --tw-text-opacity: 1;
1341
1644
  color: rgb(158 175 192 / var(--tw-text-opacity));
1342
1645
  }
1343
1646
 
1344
- .dark\\:text-white:is(.dark *){
1647
+ .dark\\:text-white:is(.dark *) {
1345
1648
  --tw-text-opacity: 1;
1346
1649
  color: rgb(255 255 255 / var(--tw-text-opacity));
1347
1650
  }
1348
1651
 
1349
- @media (min-width: 768px){
1350
- .md\\:mt-2{
1652
+ @media (min-width: 768px) {
1653
+ .md\\:mt-2 {
1351
1654
  margin-top: 8px;
1352
1655
  }
1353
- .md\\:hidden{
1656
+ .md\\:hidden {
1354
1657
  display: none;
1355
1658
  }
1356
- .md\\:min-h-\\[35rem\\]{
1659
+ .md\\:min-h-\\[35rem\\] {
1357
1660
  min-height: 35rem;
1358
1661
  }
1359
- .md\\:max-w-md{
1662
+ .md\\:max-w-md {
1360
1663
  max-width: 448px;
1361
1664
  }
1362
- .md\\:items-center{
1665
+ .md\\:items-center {
1363
1666
  align-items: center;
1364
1667
  }
1365
- .md\\:overflow-y-auto{
1668
+ .md\\:overflow-y-auto {
1366
1669
  overflow-y: auto;
1367
1670
  }
1368
- .md\\:rounded-2xl{
1369
- border-radius: 1rem;
1671
+ .md\\:rounded-\\[24px\\] {
1672
+ border-radius: 24px;
1370
1673
  }
1371
- .md\\:rounded-b-2xl{
1674
+ .md\\:rounded-b-2xl {
1372
1675
  border-bottom-right-radius: 1rem;
1373
1676
  border-bottom-left-radius: 1rem;
1374
1677
  }
1375
- .md\\:p-4{
1678
+ .md\\:p-4 {
1376
1679
  padding: 16px;
1377
1680
  }
1378
1681
  }
@@ -1434,51 +1737,51 @@ function clsx() {
1434
1737
  }
1435
1738
  var clsx_default = clsx;
1436
1739
 
1740
+ // src/components/IDKitWidget/States/ErrorState.tsx
1741
+ var import_react4 = require("react");
1742
+
1437
1743
  // src/components/Icons/ErrorIcon.tsx
1438
1744
  var import_jsx_runtime4 = require("react/jsx-runtime");
1439
- var ErrorIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("svg", { ...props, xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 100 100", children: [
1440
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("circle", { cx: "50", cy: "50", r: "49.375", fill: "url(#a)", fillOpacity: ".65", stroke: "url(#b)", strokeWidth: "1.25" }),
1441
- /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("g", { filter: "url(#c)", children: [
1442
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("circle", { cx: "50", cy: "50", r: "35", fill: "#fff" }),
1443
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("circle", { cx: "50", cy: "50", r: "34.432", stroke: "#FFC9AD", strokeWidth: "1.136" })
1444
- ] }),
1745
+ var ErrorIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("svg", { width: "88", height: "88", viewBox: "0 0 88 88", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...props, children: [
1746
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("rect", { width: "88", height: "88", rx: "44", fill: "#9BA3AE" }),
1747
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("rect", { opacity: "0.2", width: "88", height: "88", rx: "44", fill: "url(#paint0_radial_117706_3198)" }),
1748
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("rect", { x: "0.5", y: "0.5", width: "87", height: "87", rx: "43.5", stroke: "url(#paint1_linear_117706_3198)" }),
1445
1749
  /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
1446
1750
  "path",
1447
1751
  {
1448
- stroke: "#FF4732",
1449
- strokeLinecap: "round",
1450
- strokeLinejoin: "round",
1451
- strokeWidth: "3.75",
1452
- d: "m57.5 42.5-15 14.999m15 .001-15-14.999"
1752
+ d: "M33.0146 53.9853L43.4999 43.5M53.9851 33.0147L43.4999 43.5M43.4999 43.5L33.0146 33.0147M43.4999 43.5L53.9851 53.9853",
1753
+ stroke: "white",
1754
+ strokeWidth: "3"
1453
1755
  }
1454
1756
  ),
1455
1757
  /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("defs", { children: [
1456
- /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("linearGradient", { id: "a", x1: "50", x2: "50", y1: "0", y2: "100", gradientUnits: "userSpaceOnUse", children: [
1457
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("stop", { stopColor: "#FFA483" }),
1458
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("stop", { offset: "1", stopColor: "#FFA483", stopOpacity: "0" })
1459
- ] }),
1460
- /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("linearGradient", { id: "b", x1: "50", x2: "50", y1: "0", y2: "100", gradientUnits: "userSpaceOnUse", children: [
1461
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("stop", { stopColor: "#FFA483" }),
1462
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("stop", { offset: ".713", stopColor: "#FFA483", stopOpacity: "0" })
1463
- ] }),
1464
1758
  /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
1465
- "filter",
1759
+ "radialGradient",
1760
+ {
1761
+ id: "paint0_radial_117706_3198",
1762
+ cx: "0",
1763
+ cy: "0",
1764
+ r: "1",
1765
+ gradientUnits: "userSpaceOnUse",
1766
+ gradientTransform: "translate(20 -1.6729e-06) rotate(63.4349) scale(98.387 97.9627)",
1767
+ children: [
1768
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("stop", { stopColor: "white" }),
1769
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
1770
+ ]
1771
+ }
1772
+ ),
1773
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
1774
+ "linearGradient",
1466
1775
  {
1467
- id: "c",
1468
- width: "77.5",
1469
- height: "77.5",
1470
- x: "11.25",
1471
- y: "13.125",
1472
- colorInterpolationFilters: "sRGB",
1473
- filterUnits: "userSpaceOnUse",
1776
+ id: "paint1_linear_117706_3198",
1777
+ x1: "44",
1778
+ y1: "0",
1779
+ x2: "44",
1780
+ y2: "88",
1781
+ gradientUnits: "userSpaceOnUse",
1474
1782
  children: [
1475
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
1476
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("feColorMatrix", { in: "SourceAlpha", result: "hardAlpha", values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" }),
1477
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("feOffset", { dy: "1.875" }),
1478
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("feGaussianBlur", { stdDeviation: "1.875" }),
1479
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("feColorMatrix", { values: "0 0 0 0 1 0 0 0 0 0.788235 0 0 0 0 0.678431 0 0 0 0.45 0" }),
1480
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("feBlend", { in2: "BackgroundImageFix", result: "effect1_dropShadow_39_740" }),
1481
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("feBlend", { in: "SourceGraphic", in2: "effect1_dropShadow_39_740", result: "shape" })
1783
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("stop", { stopColor: "white", stopOpacity: "0.3" }),
1784
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
1482
1785
  ]
1483
1786
  }
1484
1787
  )
@@ -1489,75 +1792,47 @@ var ErrorIcon_default = ErrorIcon;
1489
1792
  // src/components/IDKitWidget/States/ErrorState.tsx
1490
1793
  var import_idkit_core2 = require("@worldcoin/idkit-core");
1491
1794
 
1492
- // src/components/Icons/ReloadIcon.tsx
1493
- var import_jsx_runtime5 = require("react/jsx-runtime");
1494
- var ReloadIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
1495
- "path",
1496
- {
1497
- d: "M12.3809 1.6665L13.3626 4.24214C12.3754 3.66434 11.2263 3.33317 9.99992 3.33317C6.31802 3.33317 3.33325 6.31794 3.33325 9.99984C3.33325 11.2141 3.6579 12.3526 4.22513 13.3332M7.61897 18.3332L6.63719 15.7575C7.62438 16.3353 8.77348 16.6665 9.99992 16.6665C13.6818 16.6665 16.6666 13.6817 16.6666 9.99984C16.6666 8.78555 16.3419 7.64708 15.7747 6.6665",
1498
- stroke: "#3C424B",
1499
- strokeWidth: "1.5",
1500
- strokeLinecap: "round",
1501
- strokeLinejoin: "round"
1502
- }
1503
- ) });
1504
- var ReloadIcon_default = ReloadIcon;
1505
-
1506
1795
  // src/components/Icons/WarningIcon.tsx
1507
- var import_jsx_runtime6 = require("react/jsx-runtime");
1508
- var WarningIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 100 100", ...props, children: [
1509
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
1510
- "circle",
1511
- {
1512
- cx: "50",
1513
- cy: "50",
1514
- r: "49.375",
1515
- fill: "url(#warning-a)",
1516
- fillOpacity: ".65",
1517
- stroke: "url(#warning-b)",
1518
- strokeWidth: "1.25"
1519
- }
1520
- ),
1521
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("g", { filter: "url(#warning-c)", children: [
1522
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("circle", { cx: "50", cy: "50", r: "35", fill: "#fff" }),
1523
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("circle", { cx: "50", cy: "50", r: "34.432", stroke: "#FFE999", strokeWidth: "1.136" })
1524
- ] }),
1525
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
1796
+ var import_jsx_runtime5 = require("react/jsx-runtime");
1797
+ var WarningIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("svg", { width: "88", height: "88", viewBox: "0 0 88 88", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...props, children: [
1798
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("rect", { width: "88", height: "88", rx: "44", fill: "#FFAE00" }),
1799
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("rect", { opacity: "0.2", width: "88", height: "88", rx: "44", fill: "url(#paint0_radial_117706_3182)" }),
1800
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("rect", { x: "0.5", y: "0.5", width: "87", height: "87", rx: "43.5", stroke: "url(#paint1_linear_117706_3182)" }),
1801
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
1526
1802
  "path",
1527
1803
  {
1528
- fill: "#FFB200",
1529
- fillRule: "evenodd",
1530
- d: "M47.46 40.207c1.107-1.943 3.973-1.943 5.08 0l9.59 16.834c1.076 1.888-.324 4.209-2.54 4.209H40.41c-2.216 0-3.616-2.32-2.54-4.21l9.59-16.833Zm3.79 16.043a1.25 1.25 0 1 1-2.5 0 1.25 1.25 0 0 1 2.5 0Zm-.313-10a.937.937 0 1 0-1.875 0v6.25a.938.938 0 0 0 1.875 0v-6.25Z",
1531
- clipRule: "evenodd"
1804
+ d: "M64.1707 59.5415H22.8298L43.4998 22.3354L64.1707 59.5415ZM42.1208 51.3003L42.1218 54.0503H44.8992L44.8982 51.3003H42.1208ZM42.1248 46.7085H44.8748V36.6255H42.1248V46.7085Z",
1805
+ fill: "white"
1532
1806
  }
1533
1807
  ),
1534
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("defs", { children: [
1535
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("linearGradient", { id: "warning-a", x1: "50", x2: "50", y1: "0", y2: "100", gradientUnits: "userSpaceOnUse", children: [
1536
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("stop", { stopColor: "#FFDA66" }),
1537
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("stop", { offset: "1", stopColor: "#FFDA66", stopOpacity: "0" })
1538
- ] }),
1539
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("linearGradient", { id: "warning-b", x1: "50", x2: "50", y1: "0", y2: "100", gradientUnits: "userSpaceOnUse", children: [
1540
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("stop", { stopColor: "#FFDA66" }),
1541
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("stop", { offset: ".713", stopColor: "#FFDA66", stopOpacity: "0" })
1542
- ] }),
1543
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
1544
- "filter",
1808
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("defs", { children: [
1809
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
1810
+ "radialGradient",
1545
1811
  {
1546
- id: "warning-c",
1547
- width: "77.5",
1548
- height: "77.5",
1549
- x: "11.25",
1550
- y: "13.125",
1551
- colorInterpolationFilters: "sRGB",
1552
- filterUnits: "userSpaceOnUse",
1812
+ id: "paint0_radial_117706_3182",
1813
+ cx: "0",
1814
+ cy: "0",
1815
+ r: "1",
1816
+ gradientUnits: "userSpaceOnUse",
1817
+ gradientTransform: "translate(20 -1.6729e-06) rotate(63.4349) scale(98.387 97.9627)",
1553
1818
  children: [
1554
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
1555
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("feColorMatrix", { in: "SourceAlpha", result: "hardAlpha", values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" }),
1556
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("feOffset", { dy: "1.875" }),
1557
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("feGaussianBlur", { stdDeviation: "1.875" }),
1558
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("feColorMatrix", { values: "0 0 0 0 1 0 0 0 0 0.913725 0 0 0 0 0.6 0 0 0 0.45 0" }),
1559
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("feBlend", { in2: "BackgroundImageFix", result: "effect1_dropShadow_39_758" }),
1560
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("feBlend", { in: "SourceGraphic", in2: "effect1_dropShadow_39_758", result: "shape" })
1819
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("stop", { stopColor: "white" }),
1820
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
1821
+ ]
1822
+ }
1823
+ ),
1824
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
1825
+ "linearGradient",
1826
+ {
1827
+ id: "paint1_linear_117706_3182",
1828
+ x1: "44",
1829
+ y1: "0",
1830
+ x2: "44",
1831
+ y2: "88",
1832
+ gradientUnits: "userSpaceOnUse",
1833
+ children: [
1834
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("stop", { stopColor: "white", stopOpacity: "0.3" }),
1835
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
1561
1836
  ]
1562
1837
  }
1563
1838
  )
@@ -1566,53 +1841,60 @@ var WarningIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("svg"
1566
1841
  var WarningIcon_default = WarningIcon;
1567
1842
 
1568
1843
  // src/components/IDKitWidget/States/ErrorState.tsx
1569
- var import_jsx_runtime7 = require("react/jsx-runtime");
1844
+ var import_jsx_runtime6 = require("react/jsx-runtime");
1570
1845
  var getParams = ({ retryFlow, errorState }) => ({ retryFlow, errorState });
1571
- var ERROR_TITLES = {
1572
- [import_idkit_core2.AppErrorCodes.GenericError]: __("Something went wrong"),
1573
- [import_idkit_core2.AppErrorCodes.FailedByHostApp]: __("Verification Declined"),
1574
- [import_idkit_core2.AppErrorCodes.VerificationRejected]: __("Request cancelled")
1846
+ var getErrorTitle = (code) => {
1847
+ switch (code) {
1848
+ case import_idkit_core2.AppErrorCodes.GenericError:
1849
+ return __("Something went wrong");
1850
+ case import_idkit_core2.AppErrorCodes.FailedByHostApp:
1851
+ return __("Verification Declined");
1852
+ case import_idkit_core2.AppErrorCodes.VerificationRejected:
1853
+ return __("Request cancelled");
1854
+ default:
1855
+ return __("Something went wrong");
1856
+ }
1575
1857
  };
1576
- var ERROR_MESSAGES = {
1577
- [import_idkit_core2.AppErrorCodes.ConnectionFailed]: __("Connection to your wallet failed. Please try again."),
1578
- [import_idkit_core2.AppErrorCodes.VerificationRejected]: __("You\u2019ve cancelled the request in World App."),
1579
- [import_idkit_core2.AppErrorCodes.MaxVerificationsReached]: __(
1580
- "You have already verified the maximum number of times for this action."
1581
- ),
1582
- [import_idkit_core2.AppErrorCodes.CredentialUnavailable]: __("It seems you do not have the verification level required by this app."),
1583
- [import_idkit_core2.AppErrorCodes.MalformedRequest]: __(
1584
- "There was a problem with this request. Please try again or contact the app owner."
1585
- ),
1586
- [import_idkit_core2.AppErrorCodes.InvalidNetwork]: __(
1587
- "Invalid network. If you are the app owner, visit docs.world.org/test for details."
1588
- ),
1589
- [import_idkit_core2.AppErrorCodes.InclusionProofFailed]: __("There was an issue fetching your credential. Please try again."),
1590
- [import_idkit_core2.AppErrorCodes.InclusionProofPending]: __(
1591
- "Your identity is still being registered. Please wait a few minutes and try again."
1592
- ),
1593
- [import_idkit_core2.AppErrorCodes.GenericError]: __("Something unexpected went wrong. Please try again."),
1594
- [import_idkit_core2.AppErrorCodes.UnexpectedResponse]: __("Unexpected response from your wallet. Please try again."),
1595
- [import_idkit_core2.AppErrorCodes.FailedByHostApp]: __("Verification failed by the app. Please contact the app owner for details.")
1858
+ var getErrorMessage = (code) => {
1859
+ switch (code) {
1860
+ case import_idkit_core2.AppErrorCodes.ConnectionFailed:
1861
+ return __("Connection to your wallet failed. Please try again.");
1862
+ case import_idkit_core2.AppErrorCodes.VerificationRejected:
1863
+ return __("You've cancelled the request in World App.");
1864
+ case import_idkit_core2.AppErrorCodes.MaxVerificationsReached:
1865
+ return __("You've already verified the maximum number of times for this action.");
1866
+ case import_idkit_core2.AppErrorCodes.CredentialUnavailable:
1867
+ return __("It seems you don't have the verification level required by this app.");
1868
+ case import_idkit_core2.AppErrorCodes.InvalidNetwork:
1869
+ return __("Invalid network. If you are the app owner, visit docs.world.org/test for details.");
1870
+ case import_idkit_core2.AppErrorCodes.InclusionProofPending:
1871
+ return __("Your identity is still being registered. Please wait a few minutes and try again.");
1872
+ case import_idkit_core2.AppErrorCodes.GenericError:
1873
+ default:
1874
+ return __("We couldn't complete your request. Please try again.");
1875
+ }
1596
1876
  };
1597
1877
  var ErrorState = (props) => {
1598
1878
  const { retryFlow, errorState } = idkit_default(getParams);
1599
1879
  const { show_modal } = props;
1600
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "space-y-8", children: [
1601
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: clsx_default("flex items-center justify-center", show_modal ? "-mt-5" : ""), children: errorState?.code == import_idkit_core2.AppErrorCodes.VerificationRejected ? /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(WarningIcon_default, { className: "w-24" }) : /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(ErrorIcon_default, { className: "w-24" }) }),
1602
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { children: [
1603
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("p", { className: "text-center text-2xl font-semibold text-gray-900 dark:text-white", children: (errorState?.code && ERROR_TITLES[errorState.code]) ?? ERROR_TITLES[import_idkit_core2.AppErrorCodes.GenericError] }),
1604
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("p", { className: "mx-auto mt-2 max-w-[224px] text-center text-657080", children: errorState?.message ?? ERROR_MESSAGES[errorState?.code ?? import_idkit_core2.AppErrorCodes.GenericError] })
1880
+ (0, import_react4.useEffect)(() => {
1881
+ if (errorState) {
1882
+ console.error(`Error state: `, errorState);
1883
+ }
1884
+ }, [errorState]);
1885
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "space-y-8", children: [
1886
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: clsx_default("flex items-center justify-center", show_modal ? "-mt-5" : ""), children: errorState?.code == import_idkit_core2.AppErrorCodes.VerificationRejected ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(WarningIcon_default, { className: "w-24" }) : /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(ErrorIcon_default, { className: "w-24" }) }),
1887
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { children: [
1888
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("p", { className: "text-center text-2xl font-semibold text-gray-900 dark:text-white", children: errorState?.code ? getErrorTitle(errorState.code) : getErrorTitle(import_idkit_core2.AppErrorCodes.GenericError) }),
1889
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("p", { className: "mx-auto mt-2 max-w-[224px] text-center text-657080", children: errorState?.code ? getErrorMessage(errorState.code) : getErrorMessage(import_idkit_core2.AppErrorCodes.GenericError) })
1605
1890
  ] }),
1606
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
1891
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: "flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
1607
1892
  "button",
1608
1893
  {
1609
1894
  type: "button",
1610
1895
  onClick: retryFlow,
1611
- className: "inline-flex items-center rounded-lg border border-ebecef bg-transparent px-8 py-3 font-medium text-3c424b shadow-sm transition duration-300 hover:shadow focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-40",
1612
- children: [
1613
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(ReloadIcon_default, { className: "mr-1.5 size-5" }),
1614
- __("Try Again")
1615
- ]
1896
+ className: "inline-flex items-center rounded-full border-[1.2px] border-ebecef bg-transparent px-8 py-3 font-semibold text-gray-900 shadow-sm transition duration-300 hover:shadow focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-40",
1897
+ children: __("Try Again")
1616
1898
  }
1617
1899
  ) })
1618
1900
  ] });
@@ -1623,61 +1905,40 @@ var ErrorState_default = ErrorState;
1623
1905
  var Toast = __toESM(require("@radix-ui/react-toast"), 1);
1624
1906
 
1625
1907
  // src/components/Icons/CheckIcon.tsx
1626
- var import_jsx_runtime8 = require("react/jsx-runtime");
1627
- var CheckIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 100 100", ...props, children: [
1628
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1629
- "circle",
1630
- {
1631
- cx: "50",
1632
- cy: "50",
1633
- r: "49.375",
1634
- fill: "url(#success-a)",
1635
- fillOpacity: ".65",
1636
- stroke: "url(#success-b)",
1637
- strokeWidth: "1.25"
1638
- }
1639
- ),
1640
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("g", { filter: "url(#success-c)", children: [
1641
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("circle", { cx: "50", cy: "50", r: "35", fill: "#fff" }),
1642
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("circle", { cx: "50", cy: "50", r: "34.432", stroke: "#CCEBCC", strokeWidth: "1.136" })
1643
- ] }),
1644
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1645
- "path",
1646
- {
1647
- stroke: "#090",
1648
- strokeLinecap: "round",
1649
- strokeLinejoin: "round",
1650
- strokeWidth: "3.75",
1651
- d: "m41.25 52.5 4.375 4.375 13.125-13.75"
1652
- }
1653
- ),
1654
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("defs", { children: [
1655
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("linearGradient", { id: "success-a", x1: "50", x2: "50", y1: "0", y2: "100", gradientUnits: "userSpaceOnUse", children: [
1656
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("stop", { stopColor: "#99D699" }),
1657
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("stop", { offset: "1", stopColor: "#99D699", stopOpacity: "0" })
1658
- ] }),
1659
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("linearGradient", { id: "success-b", x1: "50", x2: "50", y1: "0", y2: "100", gradientUnits: "userSpaceOnUse", children: [
1660
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("stop", { stopColor: "#99D699" }),
1661
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("stop", { offset: ".713", stopColor: "#99D699", stopOpacity: "0" })
1662
- ] }),
1663
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
1664
- "filter",
1908
+ var import_jsx_runtime7 = require("react/jsx-runtime");
1909
+ var CheckIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("svg", { width: "88", height: "88", viewBox: "0 0 88 88", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...props, children: [
1910
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("rect", { width: "88", height: "88", rx: "44", fill: "#00C230" }),
1911
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("rect", { opacity: "0.2", width: "88", height: "88", rx: "44", fill: "url(#paint0_radial_117706_3174)" }),
1912
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("rect", { x: "0.5", y: "0.5", width: "87", height: "87", rx: "43.5", stroke: "url(#paint1_linear_117706_3174)" }),
1913
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("path", { d: "M29.5 45.5L37.5 53.5L57.5 33.5", stroke: "white", strokeWidth: "3" }),
1914
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("defs", { children: [
1915
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
1916
+ "radialGradient",
1665
1917
  {
1666
- id: "success-c",
1667
- width: "77.5",
1668
- height: "77.5",
1669
- x: "11.25",
1670
- y: "13.125",
1671
- colorInterpolationFilters: "sRGB",
1672
- filterUnits: "userSpaceOnUse",
1918
+ id: "paint0_radial_117706_3174",
1919
+ cx: "0",
1920
+ cy: "0",
1921
+ r: "1",
1922
+ gradientUnits: "userSpaceOnUse",
1923
+ gradientTransform: "translate(20 -1.6729e-06) rotate(63.4349) scale(98.387 97.9627)",
1673
1924
  children: [
1674
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
1675
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("feColorMatrix", { in: "SourceAlpha", result: "hardAlpha", values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" }),
1676
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("feOffset", { dy: "1.875" }),
1677
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("feGaussianBlur", { stdDeviation: "1.875" }),
1678
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("feColorMatrix", { values: "0 0 0 0 0.8 0 0 0 0 0.921569 0 0 0 0 0.8 0 0 0 0.45 0" }),
1679
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("feBlend", { in2: "BackgroundImageFix", result: "effect1_dropShadow_39_712" }),
1680
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("feBlend", { in: "SourceGraphic", in2: "effect1_dropShadow_39_712", result: "shape" })
1925
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("stop", { stopColor: "white" }),
1926
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
1927
+ ]
1928
+ }
1929
+ ),
1930
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
1931
+ "linearGradient",
1932
+ {
1933
+ id: "paint1_linear_117706_3174",
1934
+ x1: "44",
1935
+ y1: "0",
1936
+ x2: "44",
1937
+ y2: "88",
1938
+ gradientUnits: "userSpaceOnUse",
1939
+ children: [
1940
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("stop", { stopColor: "white", stopOpacity: "0.3" }),
1941
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
1681
1942
  ]
1682
1943
  }
1683
1944
  )
@@ -1686,13 +1947,13 @@ var CheckIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("svg",
1686
1947
  var CheckIcon_default = CheckIcon;
1687
1948
 
1688
1949
  // src/components/IDKitWidget/States/SuccessState.tsx
1689
- var import_jsx_runtime9 = require("react/jsx-runtime");
1950
+ var import_jsx_runtime8 = require("react/jsx-runtime");
1690
1951
  var SuccessState = (props) => {
1691
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "space-y-6", children: [
1692
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: clsx_default("flex items-center justify-center", props.show_modal ? "-mt-5" : ""), children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(CheckIcon_default, { className: "w-24 text-white" }) }),
1693
- /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { children: [
1694
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("p", { className: "text-center text-2xl font-semibold text-gray-900 dark:text-white", children: __("Successfully verified") }),
1695
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("p", { className: "mx-auto mt-2 max-w-[224px] text-center text-lg text-657080", children: __("Your World ID verification was successful") })
1952
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "space-y-6", children: [
1953
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: clsx_default("flex items-center justify-center", props.show_modal ? "-mt-5" : ""), children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(CheckIcon_default, { className: "w-24 text-white" }) }),
1954
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { children: [
1955
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("p", { className: "text-center text-2xl font-semibold text-gray-900 dark:text-white", children: __("All set!") }),
1956
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("p", { className: "mx-auto mt-2 max-w-[260px] text-center text-lg text-657080", children: __("Your World ID is now connected") })
1696
1957
  ] })
1697
1958
  ] });
1698
1959
  };
@@ -1702,9 +1963,9 @@ var SuccessState_default = SuccessState;
1702
1963
  var import_copy_to_clipboard = __toESM(require("copy-to-clipboard"), 1);
1703
1964
 
1704
1965
  // src/components/QRCode.tsx
1705
- var import_react4 = require("react");
1966
+ var import_react5 = require("react");
1706
1967
  var import_qrcode = __toESM(require("qrcode/lib/core/qrcode.js"), 1);
1707
- var import_jsx_runtime10 = require("react/jsx-runtime");
1968
+ var import_jsx_runtime9 = require("react/jsx-runtime");
1708
1969
  var generateMatrix = (data) => {
1709
1970
  const arr = import_qrcode.default.create(data, { errorCorrectionLevel: "M" }).modules.data;
1710
1971
  const sqrt = Math.sqrt(arr.length);
@@ -1718,7 +1979,7 @@ var generateMatrix = (data) => {
1718
1979
  );
1719
1980
  };
1720
1981
  var Qrcode = ({ data, size = 300 }) => {
1721
- const dots = (0, import_react4.useMemo)(() => {
1982
+ const dots = (0, import_react5.useMemo)(() => {
1722
1983
  const dots2 = [];
1723
1984
  const matrix = generateMatrix(data);
1724
1985
  const cellSize = size / matrix.length;
@@ -1732,7 +1993,7 @@ var Qrcode = ({ data, size = 300 }) => {
1732
1993
  const y1 = (matrix.length - 7) * cellSize * y;
1733
1994
  for (let i = 0; i < 3; i++) {
1734
1995
  dots2.push(
1735
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
1996
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
1736
1997
  "rect",
1737
1998
  {
1738
1999
  fill: "currentColor",
@@ -1754,11 +2015,11 @@ var Qrcode = ({ data, size = 300 }) => {
1754
2015
  if (!matrix[i][j]) return;
1755
2016
  if (i < 7 && j < 7 || i > matrix.length - 8 && j < 7 || i < 7 && j > matrix.length - 8) return;
1756
2017
  dots2.push(
1757
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
2018
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
1758
2019
  "circle",
1759
2020
  {
1760
2021
  fill: "currentColor",
1761
- r: cellSize / 3,
2022
+ r: cellSize / 2.2,
1762
2023
  cx: i * cellSize + cellSize / 2,
1763
2024
  cy: j * cellSize + cellSize / 2,
1764
2025
  className: "text-black dark:text-white"
@@ -1770,29 +2031,29 @@ var Qrcode = ({ data, size = 300 }) => {
1770
2031
  });
1771
2032
  return dots2;
1772
2033
  }, [size, data]);
1773
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("svg", { height: size, width: size, "data-test-id": "qr-code", children: dots });
2034
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("svg", { height: size, width: size, "data-test-id": "qr-code", children: dots });
1774
2035
  };
1775
- var QRCode_default = (0, import_react4.memo)(Qrcode);
2036
+ var QRCode_default = (0, import_react5.memo)(Qrcode);
1776
2037
 
1777
2038
  // src/components/IDKitWidget/States/WorldID/QRState.tsx
1778
- var import_react5 = require("react");
2039
+ var import_react6 = require("react");
1779
2040
  var import_framer_motion = require("framer-motion");
1780
2041
 
1781
2042
  // src/components/Icons/WorldcoinIcon.tsx
1782
- var import_jsx_runtime11 = require("react/jsx-runtime");
1783
- var WorldcoinIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("svg", { ...props, xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 33 32", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
2043
+ var import_jsx_runtime10 = require("react/jsx-runtime");
2044
+ var WorldcoinIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", width: "32", height: "32", viewBox: "0 0 32 32", fill: "none", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
1784
2045
  "path",
1785
2046
  {
1786
- fill: "currentColor",
1787
- d: "M30.7195 9.77312C29.9097 7.87434 28.7647 6.17103 27.2845 4.6911C25.8044 3.21117 24.1288 2.06632 22.2298 1.25654C20.247 0.418848 18.1525 0 16.0021 0C13.8238 0 11.7293 0.418848 9.7744 1.25654C7.87537 2.06632 6.17184 3.21117 4.69171 4.6911C3.21159 6.17103 2.06659 7.87434 1.25671 9.77312C0.418903 11.7277 0 13.822 0 16C0 18.1501 0.418903 20.2443 1.25671 22.2269C2.06659 24.1257 3.21159 25.829 4.69171 27.3089C6.17184 28.7888 7.87537 29.9337 9.7744 30.7155C11.7572 31.5532 13.8517 31.9721 16.0021 31.9721C18.1525 31.9721 20.247 31.5532 22.2298 30.7155C24.1288 29.9058 25.8323 28.7609 27.3125 27.281C28.7926 25.801 29.9376 24.0977 30.7475 22.1989C31.5853 20.2164 32.0042 18.1222 32.0042 15.9721C32.0042 13.822 31.5574 11.7277 30.7195 9.77312ZM10.696 14.4921C11.3383 11.9232 13.6842 10.0524 16.4489 10.0524H27.5638C28.2899 11.4206 28.7367 12.9284 28.9043 14.4921H10.696ZM28.9043 17.5079C28.7367 19.0716 28.262 20.5794 27.5638 21.9476H16.4489C13.6842 21.9476 11.3662 20.0489 10.696 17.5079H28.9043ZM6.81415 6.81326C9.27172 4.35602 12.5392 3.01571 16.0021 3.01571C19.465 3.01571 22.7325 4.35602 25.19 6.81326C25.2738 6.89703 25.3297 6.95288 25.4134 7.03665H16.4489C14.0472 7.03665 11.8131 7.95811 10.1095 9.66143C8.76903 11.0017 7.9033 12.6771 7.62403 14.4921H3.09988C3.435 11.5881 4.71964 8.9075 6.81415 6.81326ZM16.0021 28.9843C12.5392 28.9843 9.27172 27.644 6.81415 25.1867C4.71964 23.0925 3.435 20.3839 3.09988 17.5079H7.62403C7.93123 19.3229 8.79696 20.9983 10.1095 22.3386C11.8131 24.0419 14.0472 24.9633 16.4489 24.9633H25.4134C25.3297 25.0471 25.2738 25.103 25.19 25.1867C22.7325 27.644 19.465 28.9843 16.0021 28.9843Z"
2047
+ d: "M30.7367 9.77239C29.9301 7.86586 28.7772 6.15721 27.3084 4.68831C25.8397 3.21941 24.1275 2.06636 22.225 1.2596C20.2502 0.422405 18.1574 0 15.9962 0C13.8388 0 11.7422 0.422405 9.76742 1.2596C7.86112 2.06636 6.15268 3.21941 4.68395 4.68831C3.21522 6.15721 2.06231 7.86966 1.25565 9.77239C0.422354 11.7436 0 13.8404 0 15.9981C0 18.1558 0.422354 20.2526 1.25945 22.2276C2.06611 24.1341 3.21903 25.8428 4.68775 27.3117C6.15648 28.7806 7.86873 29.9336 9.77122 30.7404C11.746 31.5738 13.8388 32 16 32C18.1574 32 20.254 31.5776 22.2288 30.7404C24.1351 29.9336 25.8435 28.7806 27.3122 27.3117C28.781 25.8428 29.9339 24.1303 30.7405 22.2276C31.5738 20.2526 32 18.1596 32 15.9981C31.9962 13.8404 31.57 11.7436 30.7367 9.77239ZM10.6844 14.4949C11.3503 11.9377 13.679 10.0464 16.4452 10.0464H27.552C28.2673 11.4278 28.7239 12.9309 28.9027 14.4949H10.6844ZM28.9027 17.5012C28.7239 19.0653 28.2635 20.5684 27.552 21.9498H16.4452C13.6828 21.9498 11.3541 20.0585 10.6844 17.5012H28.9027ZM6.81094 6.81175C9.26516 4.35724 12.526 3.0063 15.9962 3.0063C19.4663 3.0063 22.7272 4.35724 25.1815 6.81175C25.2576 6.88786 25.3298 6.96397 25.4021 7.04008H16.4452C14.0518 7.04008 11.8031 7.97241 10.1099 9.66583C8.77812 10.9977 7.91819 12.6759 7.60999 14.4988H3.09346C3.42449 11.5952 4.71439 8.90855 6.81094 6.81175ZM15.9962 28.9937C12.526 28.9937 9.26516 27.6428 6.81094 25.1883C4.71439 23.0915 3.42449 20.4048 3.09346 17.5051H7.60999C7.91439 19.3279 8.77812 21.0061 10.1099 22.338C11.8031 24.0314 14.0518 24.9637 16.4452 24.9637H25.4059C25.3337 25.0398 25.2576 25.1159 25.1853 25.1921C22.731 27.639 19.4663 28.9937 15.9962 28.9937Z",
2048
+ fill: "currentColor"
1788
2049
  }
1789
2050
  ) });
1790
2051
  var WorldcoinIcon_default = WorldcoinIcon;
1791
2052
 
1792
2053
  // src/components/Icons/QRPlaceholderIcon.tsx
1793
- var import_jsx_runtime12 = require("react/jsx-runtime");
1794
- var QRPlaceholderIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("svg", { ...props, xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 200 200", children: [
1795
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2054
+ var import_jsx_runtime11 = require("react/jsx-runtime");
2055
+ var QRPlaceholderIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("svg", { ...props, xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 200 200", children: [
2056
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1796
2057
  "path",
1797
2058
  {
1798
2059
  fill: "#EBECEF",
@@ -1801,14 +2062,14 @@ var QRPlaceholderIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime12.jsxs
1801
2062
  clipRule: "evenodd"
1802
2063
  }
1803
2064
  ),
1804
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2065
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1805
2066
  "path",
1806
2067
  {
1807
2068
  fill: "#EBECEF",
1808
2069
  d: "M197.026 200c.789 0 1.545-.309 2.103-.86.558-.55.871-1.297.871-2.076v-17.616c0-.778-.313-1.525-.871-2.076a2.996 2.996 0 0 0-2.103-.86h-5.948c-.789 0-1.545.31-2.103.86a2.918 2.918 0 0 0-.871 2.076v8.808h-11.897v-11.744h-11.896v-23.487h11.896v8.808c0 .778.314 1.525.872 2.076.557.55 1.314.86 2.102.86h5.949c.788 0 1.545-.31 2.103-.86a2.922 2.922 0 0 0 .871-2.076v-8.808h8.922c.789 0 1.545-.309 2.103-.86a2.916 2.916 0 0 0 .871-2.076v-5.872c0-.779-.313-1.525-.871-2.076a2.992 2.992 0 0 0-2.103-.86h-29.741c-.789 0-1.545.309-2.103.86a2.916 2.916 0 0 0-.871 2.076v8.808h-23.792v-11.744h8.922c.789 0 1.545-.309 2.103-.86.558-.55.871-1.297.871-2.076v-5.872c0-.778-.313-1.525-.871-2.076a2.996 2.996 0 0 0-2.103-.86h-5.948c-.789 0-1.546.31-2.103.86a2.918 2.918 0 0 0-.871 2.076v8.808H119.7c-.789 0-1.545.309-2.103.86a2.916 2.916 0 0 0-.871 2.076v5.872c0 .779.313 1.525.871 2.076.558.551 1.314.86 2.103.86h20.819v8.808c0 .778.313 1.525.871 2.076.557.55 1.314.86 2.103.86h8.922v8.808c0 .778.313 1.525.871 2.076.558.55 1.314.859 2.103.859h8.922v11.744h-20.818c-.789 0-1.546.31-2.103.86a2.916 2.916 0 0 0-.871 2.076v5.872c0 .779.313 1.526.871 2.076a2.99 2.99 0 0 0 2.103.86h17.844c.789 0 1.545-.309 2.103-.86.558-.55.871-1.297.871-2.076v-8.808h11.896v8.808c0 .779.314 1.526.872 2.076a2.99 2.99 0 0 0 2.102.86h17.845Z"
1809
2070
  }
1810
2071
  ),
1811
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2072
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1812
2073
  "path",
1813
2074
  {
1814
2075
  fill: "#EBECEF",
@@ -1817,14 +2078,14 @@ var QRPlaceholderIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime12.jsxs
1817
2078
  clipRule: "evenodd"
1818
2079
  }
1819
2080
  ),
1820
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2081
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1821
2082
  "path",
1822
2083
  {
1823
2084
  fill: "#EBECEF",
1824
2085
  d: "M6.05 89.68A6.05 6.05 0 0 0 0 95.73v9.252a6.05 6.05 0 0 0 6.05 6.05h9.253a6.05 6.05 0 0 0 6.05-6.05V95.73c0-.678-.112-1.33-.318-1.94.445.105.908.16 1.385.16h27.758a6.05 6.05 0 0 0 6.05-6.05v-9.252a6.05 6.05 0 0 0-6.05-6.05H22.42a6.05 6.05 0 0 0-6.05 6.05V87.9c0 .678.112 1.33.317 1.939a6.065 6.065 0 0 0-1.385-.16H6.05Zm102.135-40.926a6.05 6.05 0 0 1 6.05-6.05h9.253a6.05 6.05 0 0 1 6.049 6.05v9.253a6.05 6.05 0 0 1-6.049 6.05h-9.253a6.05 6.05 0 0 1-6.05-6.05v-9.253ZM67.616 184.698a6.05 6.05 0 0 1 6.05-6.05h9.252c.678 0 1.33.111 1.939.317a6.064 6.064 0 0 1-.16-1.385v-9.253a6.05 6.05 0 0 1 6.05-6.049H100a6.05 6.05 0 0 1 6.05 6.049v9.253a6.05 6.05 0 0 1-6.05 6.05h-9.253c-.678 0-1.33-.112-1.938-.317.104.444.159.908.159 1.385v9.252a6.05 6.05 0 0 1-6.05 6.05h-9.253a6.05 6.05 0 0 1-6.05-6.05v-9.252Zm78.291-120.285a6.05 6.05 0 0 1 6.05-6.05h41.993a6.05 6.05 0 0 1 6.05 6.05v9.252a6.05 6.05 0 0 1-6.05 6.05h-41.993a6.05 6.05 0 0 1-6.05-6.05v-9.252ZM95.018 0a6.05 6.05 0 0 0-6.05 6.05v17.082a6.05 6.05 0 0 0 6.05 6.05h9.252a6.05 6.05 0 0 0 6.05-6.05V6.05A6.05 6.05 0 0 0 104.27 0h-9.252Z"
1825
2086
  }
1826
2087
  ),
1827
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2088
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1828
2089
  "path",
1829
2090
  {
1830
2091
  fill: "url(#a)",
@@ -1833,14 +2094,14 @@ var QRPlaceholderIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime12.jsxs
1833
2094
  clipRule: "evenodd"
1834
2095
  }
1835
2096
  ),
1836
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2097
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1837
2098
  "path",
1838
2099
  {
1839
2100
  fill: "url(#a)",
1840
2101
  d: "M197.026 200c.789 0 1.545-.309 2.103-.86.558-.55.871-1.297.871-2.076v-17.616c0-.778-.313-1.525-.871-2.076a2.996 2.996 0 0 0-2.103-.86h-5.948c-.789 0-1.545.31-2.103.86a2.918 2.918 0 0 0-.871 2.076v8.808h-11.897v-11.744h-11.896v-23.487h11.896v8.808c0 .778.314 1.525.872 2.076.557.55 1.314.86 2.102.86h5.949c.788 0 1.545-.31 2.103-.86a2.922 2.922 0 0 0 .871-2.076v-8.808h8.922c.789 0 1.545-.309 2.103-.86a2.916 2.916 0 0 0 .871-2.076v-5.872c0-.779-.313-1.525-.871-2.076a2.992 2.992 0 0 0-2.103-.86h-29.741c-.789 0-1.545.309-2.103.86a2.916 2.916 0 0 0-.871 2.076v8.808h-23.792v-11.744h8.922c.789 0 1.545-.309 2.103-.86.558-.55.871-1.297.871-2.076v-5.872c0-.778-.313-1.525-.871-2.076a2.996 2.996 0 0 0-2.103-.86h-5.948c-.789 0-1.546.31-2.103.86a2.918 2.918 0 0 0-.871 2.076v8.808H119.7c-.789 0-1.545.309-2.103.86a2.916 2.916 0 0 0-.871 2.076v5.872c0 .779.313 1.525.871 2.076.558.551 1.314.86 2.103.86h20.819v8.808c0 .778.313 1.525.871 2.076.557.55 1.314.86 2.103.86h8.922v8.808c0 .778.313 1.525.871 2.076.558.55 1.314.859 2.103.859h8.922v11.744h-20.818c-.789 0-1.546.31-2.103.86a2.916 2.916 0 0 0-.871 2.076v5.872c0 .779.313 1.526.871 2.076a2.99 2.99 0 0 0 2.103.86h17.844c.789 0 1.545-.309 2.103-.86.558-.55.871-1.297.871-2.076v-8.808h11.896v8.808c0 .779.314 1.526.872 2.076a2.99 2.99 0 0 0 2.102.86h17.845Z"
1841
2102
  }
1842
2103
  ),
1843
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2104
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1844
2105
  "path",
1845
2106
  {
1846
2107
  fill: "url(#a)",
@@ -1849,7 +2110,7 @@ var QRPlaceholderIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime12.jsxs
1849
2110
  clipRule: "evenodd"
1850
2111
  }
1851
2112
  ),
1852
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2113
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1853
2114
  "path",
1854
2115
  {
1855
2116
  fill: "url(#a)",
@@ -1858,62 +2119,62 @@ var QRPlaceholderIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime12.jsxs
1858
2119
  clipRule: "evenodd"
1859
2120
  }
1860
2121
  ),
1861
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2122
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1862
2123
  "path",
1863
2124
  {
1864
2125
  fill: "url(#a)",
1865
2126
  d: "M6.05 89.68A6.05 6.05 0 0 0 0 95.73v9.252a6.05 6.05 0 0 0 6.05 6.05h9.253a6.05 6.05 0 0 0 6.05-6.05V95.73c0-.678-.112-1.33-.318-1.94.445.105.908.16 1.385.16h27.758a6.05 6.05 0 0 0 6.05-6.05v-9.252a6.05 6.05 0 0 0-6.05-6.05H22.42a6.05 6.05 0 0 0-6.05 6.05V87.9c0 .678.112 1.33.317 1.939a6.065 6.065 0 0 0-1.385-.16H6.05Z"
1866
2127
  }
1867
2128
  ),
1868
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2129
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1869
2130
  "path",
1870
2131
  {
1871
2132
  fill: "url(#a)",
1872
2133
  d: "M108.185 48.754a6.05 6.05 0 0 1 6.05-6.05h9.253a6.05 6.05 0 0 1 6.049 6.05v9.253a6.05 6.05 0 0 1-6.049 6.05h-9.253a6.05 6.05 0 0 1-6.05-6.05v-9.253Z"
1873
2134
  }
1874
2135
  ),
1875
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2136
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1876
2137
  "path",
1877
2138
  {
1878
2139
  fill: "url(#a)",
1879
2140
  d: "M67.616 184.698a6.05 6.05 0 0 1 6.05-6.05h9.252c.678 0 1.33.111 1.939.317a6.064 6.064 0 0 1-.16-1.385v-9.253a6.05 6.05 0 0 1 6.05-6.049H100a6.05 6.05 0 0 1 6.05 6.049v9.253a6.05 6.05 0 0 1-6.05 6.05h-9.253c-.678 0-1.33-.112-1.938-.317.104.444.159.908.159 1.385v9.252a6.05 6.05 0 0 1-6.05 6.05h-9.253a6.05 6.05 0 0 1-6.05-6.05v-9.252Z"
1880
2141
  }
1881
2142
  ),
1882
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2143
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1883
2144
  "path",
1884
2145
  {
1885
2146
  fill: "url(#a)",
1886
2147
  d: "M145.907 64.413a6.05 6.05 0 0 1 6.05-6.05h41.993a6.05 6.05 0 0 1 6.05 6.05v9.252a6.05 6.05 0 0 1-6.05 6.05h-41.993a6.05 6.05 0 0 1-6.05-6.05v-9.252Z"
1887
2148
  }
1888
2149
  ),
1889
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2150
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1890
2151
  "path",
1891
2152
  {
1892
2153
  fill: "url(#a)",
1893
2154
  d: "M95.018 0a6.05 6.05 0 0 0-6.05 6.05v17.082a6.05 6.05 0 0 0 6.05 6.05h9.252a6.05 6.05 0 0 0 6.05-6.05V6.05A6.05 6.05 0 0 0 104.27 0h-9.252Z"
1894
2155
  }
1895
2156
  ),
1896
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("linearGradient", { id: "a", x1: "0", x2: "200", y1: "0", y2: "200", gradientUnits: "userSpaceOnUse", children: [
1897
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("stop", { offset: ".37", stopColor: "#fff", stopOpacity: "0" }),
1898
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("stop", { offset: ".5", stopColor: "#fff", stopOpacity: ".85" }),
1899
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("stop", { offset: ".63", stopColor: "#fff", stopOpacity: "0" })
2157
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("linearGradient", { id: "a", x1: "0", x2: "200", y1: "0", y2: "200", gradientUnits: "userSpaceOnUse", children: [
2158
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("stop", { offset: ".37", stopColor: "#fff", stopOpacity: "0" }),
2159
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("stop", { offset: ".5", stopColor: "#fff", stopOpacity: ".85" }),
2160
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("stop", { offset: ".63", stopColor: "#fff", stopOpacity: "0" })
1900
2161
  ] }) })
1901
2162
  ] });
1902
2163
  var QRPlaceholderIcon_default = QRPlaceholderIcon;
1903
2164
 
1904
2165
  // src/components/IDKitWidget/States/WorldID/QRState.tsx
1905
- var import_jsx_runtime13 = require("react/jsx-runtime");
2166
+ var import_jsx_runtime12 = require("react/jsx-runtime");
1906
2167
  var QRState = ({ qrData, showQR, setShowQR }) => {
1907
2168
  const media = useMedia_default();
1908
- const [copiedLink, setCopiedLink] = (0, import_react5.useState)(false);
1909
- const copyLink = (0, import_react5.useCallback)(() => {
2169
+ const [copiedLink, setCopiedLink] = (0, import_react6.useState)(false);
2170
+ const copyLink = (0, import_react6.useCallback)(() => {
1910
2171
  (0, import_copy_to_clipboard.default)(qrData ?? "");
1911
2172
  setCopiedLink(true);
1912
2173
  setTimeout(() => setCopiedLink(false), 2e3);
1913
2174
  }, [qrData]);
1914
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_jsx_runtime13.Fragment, { children: [
1915
- /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { className: clsx_default("md:hidden", { "mb-10 space-y-4": !showQR }), children: [
1916
- /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
2175
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(import_jsx_runtime12.Fragment, { children: [
2176
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: clsx_default("md:hidden", { "mb-10 space-y-4": !showQR }), children: [
2177
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
1917
2178
  import_framer_motion.motion.a,
1918
2179
  {
1919
2180
  href: qrData ?? "",
@@ -1927,8 +2188,8 @@ var QRState = ({ qrData, showQR, setShowQR }) => {
1927
2188
  { hidden: showQR }
1928
2189
  ),
1929
2190
  children: [
1930
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(WorldcoinIcon_default, { className: "size-5" }),
1931
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2191
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(WorldcoinIcon_default, { className: "size-5" }),
2192
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1932
2193
  import_framer_motion.motion.span,
1933
2194
  {
1934
2195
  className: "flex-1 text-center",
@@ -1940,13 +2201,13 @@ var QRState = ({ qrData, showQR, setShowQR }) => {
1940
2201
  ]
1941
2202
  }
1942
2203
  ),
1943
- /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { className: clsx_default("mb-3", { "space-y-4": !showQR, hidden: media === "mobile" }), children: [
1944
- /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { className: clsx_default("flex items-center space-x-4 ", { hidden: showQR }), children: [
1945
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("hr", { className: "flex-1" }),
1946
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("span", { className: "text-xs font-medium text-9ba3ae", children: "or" }),
1947
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("hr", { className: "flex-1" })
2204
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: clsx_default("mb-3", { "space-y-4": !showQR, hidden: media === "mobile" }), children: [
2205
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: clsx_default("flex items-center space-x-4 ", { hidden: showQR }), children: [
2206
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("hr", { className: "flex-1" }),
2207
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "text-xs font-medium text-9ba3ae", children: "or" }),
2208
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("hr", { className: "flex-1" })
1948
2209
  ] }),
1949
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2210
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1950
2211
  import_framer_motion.motion.button,
1951
2212
  {
1952
2213
  className: "w-full rounded-2xl border border-ebecef p-4 text-lg font-medium text-3c424b",
@@ -1956,8 +2217,8 @@ var QRState = ({ qrData, showQR, setShowQR }) => {
1956
2217
  )
1957
2218
  ] })
1958
2219
  ] }),
1959
- (media == "desktop" || showQR) && /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_jsx_runtime13.Fragment, { children: [
1960
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_framer_motion.AnimatePresence, { children: copiedLink && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2220
+ (media == "desktop" || showQR) && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(import_jsx_runtime12.Fragment, { children: [
2221
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_framer_motion.AnimatePresence, { children: copiedLink && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1961
2222
  import_framer_motion.motion.div,
1962
2223
  {
1963
2224
  className: "text-sm text-9eafc0",
@@ -1990,14 +2251,14 @@ var QRState = ({ qrData, showQR, setShowQR }) => {
1990
2251
  }
1991
2252
  }
1992
2253
  },
1993
- children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("span", { className: "rounded-lg border border-f1f5f8 px-2 py-1 text-sm", children: __("QR Code copied") })
2254
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "rounded-lg border border-f1f5f8 px-2 py-1 text-sm", children: __("QR Code copied") })
1994
2255
  },
1995
2256
  "copied"
1996
2257
  ) }),
1997
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "relative inline-flex items-center justify-center rounded-2xl border border-f1f5f8 p-2 dark:border-f1f5f8/10", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "text-29343f dark:text-white", children: qrData ? (
2258
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "relative inline-flex items-center justify-center rounded-2xl border border-f1f5f8 p-3 dark:border-f1f5f8/10", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "text-29343f dark:text-white", children: qrData ? (
1998
2259
  // eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions
1999
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { onClick: copyLink, className: "cursor-pointer", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(QRCode_default, { data: qrData, size: 244 }) })
2000
- ) : /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "flex size-[244px] items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(QRPlaceholderIcon_default, { className: "size-[244px] animate-pulse" }) }) }) })
2260
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { onClick: copyLink, className: "cursor-pointer", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(QRCode_default, { data: qrData, size: 200 }) })
2261
+ ) : /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "flex size-[200px] items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(QRPlaceholderIcon_default, { className: "size-[200px] animate-pulse" }) }) }) })
2001
2262
  ] })
2002
2263
  ] });
2003
2264
  };
@@ -2005,15 +2266,15 @@ var QRState_default = QRState;
2005
2266
 
2006
2267
  // src/components/IDKitWidget/States/WorldIDState.tsx
2007
2268
  var import_shallow2 = require("zustand/shallow");
2008
- var import_react7 = require("react");
2269
+ var import_react8 = require("react");
2009
2270
 
2010
2271
  // src/services/wld-bridge.ts
2011
- var import_react6 = require("react");
2272
+ var import_react7 = require("react");
2012
2273
  var import_idkit_core3 = require("@worldcoin/idkit-core");
2013
2274
  var useWorldBridge = (app_id, action, signal, bridge_url, verification_level, action_description, partner) => {
2014
- const ref_verification_level = (0, import_react6.useRef)(verification_level);
2275
+ const ref_verification_level = (0, import_react7.useRef)(verification_level);
2015
2276
  const { reset, result, connectorURI, createClient, pollForUpdates, verificationState, errorCode } = (0, import_idkit_core3.useWorldBridgeStore)();
2016
- (0, import_react6.useEffect)(() => {
2277
+ (0, import_react7.useEffect)(() => {
2017
2278
  if (!connectorURI) {
2018
2279
  void createClient({
2019
2280
  app_id,
@@ -2036,7 +2297,7 @@ var useWorldBridge = (app_id, action, signal, bridge_url, verification_level, ac
2036
2297
  connectorURI,
2037
2298
  partner
2038
2299
  ]);
2039
- (0, import_react6.useEffect)(() => {
2300
+ (0, import_react7.useEffect)(() => {
2040
2301
  if (!connectorURI || result || errorCode) return;
2041
2302
  const interval = setInterval(() => void pollForUpdates(), 3e3);
2042
2303
  return () => clearInterval(interval);
@@ -2045,8 +2306,8 @@ var useWorldBridge = (app_id, action, signal, bridge_url, verification_level, ac
2045
2306
  };
2046
2307
 
2047
2308
  // src/components/Icons/LoadingIcon.tsx
2048
- var import_jsx_runtime14 = require("react/jsx-runtime");
2049
- var LoadingIcon = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
2309
+ var import_jsx_runtime13 = require("react/jsx-runtime");
2310
+ var LoadingIcon = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
2050
2311
  "svg",
2051
2312
  {
2052
2313
  xmlns: "http://www.w3.org/2000/svg",
@@ -2055,8 +2316,8 @@ var LoadingIcon = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_ru
2055
2316
  className: `animate-spin motion-reduce:animate-[spin_1.5s_linear_infinite] ${className}`,
2056
2317
  ...props,
2057
2318
  children: [
2058
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("circle", { cx: "12", cy: "12", r: "10.75", stroke: "#191C20", strokeOpacity: ".16", strokeWidth: "2.5" }),
2059
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
2319
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("circle", { cx: "12", cy: "12", r: "10.75", stroke: "#191C20", strokeOpacity: ".16", strokeWidth: "2.5" }),
2320
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2060
2321
  "path",
2061
2322
  {
2062
2323
  fill: "#191C20",
@@ -2070,7 +2331,7 @@ var LoadingIcon_default = LoadingIcon;
2070
2331
 
2071
2332
  // src/components/IDKitWidget/States/WorldIDState.tsx
2072
2333
  var import_idkit_core4 = require("@worldcoin/idkit-core");
2073
- var import_jsx_runtime15 = require("react/jsx-runtime");
2334
+ var import_jsx_runtime14 = require("react/jsx-runtime");
2074
2335
  var getOptions = (store) => ({
2075
2336
  signal: store.signal,
2076
2337
  app_id: store.app_id,
@@ -2085,7 +2346,7 @@ var getOptions = (store) => ({
2085
2346
  });
2086
2347
  var WorldIDState = (props) => {
2087
2348
  const media = useMedia_default();
2088
- const [showQR, setShowQR] = (0, import_react7.useState)(false);
2349
+ const [showQR, setShowQR] = (0, import_react8.useState)(false);
2089
2350
  const {
2090
2351
  app_id,
2091
2352
  action,
@@ -2107,8 +2368,8 @@ var WorldIDState = (props) => {
2107
2368
  action_description,
2108
2369
  partner
2109
2370
  );
2110
- (0, import_react7.useEffect)(() => reset, [reset]);
2111
- (0, import_react7.useEffect)(() => {
2371
+ (0, import_react8.useEffect)(() => reset, [reset]);
2372
+ (0, import_react8.useEffect)(() => {
2112
2373
  if (verificationState === import_idkit_core4.VerificationState.Failed) {
2113
2374
  setStage("ERROR" /* ERROR */);
2114
2375
  setErrorState({ code: errorCode ?? import_idkit_core4.AppErrorCodes.GenericError });
@@ -2124,7 +2385,7 @@ var WorldIDState = (props) => {
2124
2385
  }
2125
2386
  }, [result, handleVerify, verificationState, setStage, errorCode, setErrorState, verification_level]);
2126
2387
  const { show_modal } = props;
2127
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
2388
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
2128
2389
  "div",
2129
2390
  {
2130
2391
  className: clsx_default(
@@ -2132,33 +2393,28 @@ var WorldIDState = (props) => {
2132
2393
  show_modal ? showQR ? "-mt-6 space-y-5 " : "-mt-6 space-y-10 " : ""
2133
2394
  ),
2134
2395
  children: [
2135
- /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: clsx_default(!show_modal ? "hidden" : ""), children: [
2136
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "mb-4 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(WorldcoinIcon_default, { className: "h-10 text-0d151d dark:text-white" }) }),
2137
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("p", { className: "font-sora text-2xl font-semibold text-gray-900 dark:text-white", children: __("Verify with World ID") }),
2138
- /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("p", { className: clsx_default("mt-3 text-657080 dark:text-9eafc0 md:mt-2", { hidden: media === "mobile" }), children: [
2139
- "Use your camera to scan the QR code. ",
2140
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("br", {}),
2141
- " ",
2142
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "text-red-500", children: "Keep this window open after scanning." })
2143
- ] })
2396
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: clsx_default(!show_modal ? "hidden" : ""), children: [
2397
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "mb-4 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "flex size-14 items-center justify-center rounded-full border-[1.2px] border-solid border-[#EBECEF]", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(WorldcoinIcon_default, { className: "size-8 text-0d151d dark:text-white" }) }) }),
2398
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("p", { className: "text-2xl font-semibold text-gray-900 dark:text-white", children: __("Connect your World ID") }),
2399
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("p", { className: clsx_default("mt-3 text-657080 dark:text-9eafc0 md:mt-2", { hidden: media === "mobile" }), children: __("Use phone camera to scan the QR code") }),
2400
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("p", { className: clsx_default("mt-3 text-657080 dark:text-9eafc0 md:mt-2", { hidden: media !== "mobile" }), children: __("You will be redirected to the app, please return to this page once you're done") })
2144
2401
  ] }),
2145
- /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "relative w-full", children: [
2146
- verificationState === import_idkit_core4.VerificationState.WaitingForApp && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "absolute inset-0 flex flex-col items-center justify-center space-y-6", children: [
2147
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(LoadingIcon_default, { className: "size-6" }),
2148
- /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { children: [
2149
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("p", { className: "font-bold text-657080", children: "Verifying" }),
2150
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("p", { className: "text-sm text-657080", children: "Please continue in app" }),
2151
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("p", { className: clsx_default(show_modal ? "" : "hidden", "mt-2 text-sm font-bold text-red-500"), children: "Don't close this window" })
2402
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "relative w-full", children: [
2403
+ verificationState === import_idkit_core4.VerificationState.WaitingForApp && /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "absolute inset-0 flex flex-col items-center justify-center space-y-6", children: [
2404
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(LoadingIcon_default, { className: "size-6" }),
2405
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { children: [
2406
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("p", { className: "font-medium text-657080", children: __("Connecting...") }),
2407
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("p", { className: "text-sm font-light text-657080", children: __("Please continue in app") })
2152
2408
  ] })
2153
2409
  ] }),
2154
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
2410
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
2155
2411
  "div",
2156
2412
  {
2157
2413
  className: clsx_default(
2158
2414
  "transition duration-500 ease-in-out",
2159
2415
  verificationState === import_idkit_core4.VerificationState.WaitingForApp && "opacity-40 blur-lg"
2160
2416
  ),
2161
- children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "mx-auto", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(QRState_default, { showQR, setShowQR, qrData: connectorURI }) })
2417
+ children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "mx-auto", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(QRState_default, { showQR, setShowQR, qrData: connectorURI }) })
2162
2418
  }
2163
2419
  )
2164
2420
  ] })
@@ -2170,26 +2426,27 @@ var WorldIDState_default = WorldIDState;
2170
2426
 
2171
2427
  // src/components/IDKitWidget/BaseWidget.tsx
2172
2428
  var Dialog = __toESM(require("@radix-ui/react-dialog"), 1);
2173
- var import_react8 = require("react");
2429
+ var import_react9 = require("react");
2174
2430
  var import_framer_motion2 = require("framer-motion");
2175
2431
 
2176
2432
  // src/components/IDKitWidget/States/HostAppVerificationState.tsx
2177
- var import_jsx_runtime16 = require("react/jsx-runtime");
2433
+ var import_jsx_runtime15 = require("react/jsx-runtime");
2178
2434
  var HostAppVerificationState = () => {
2179
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "space-y-6", children: [
2180
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(LoadingIcon_default, { className: "size-24" }) }),
2181
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "mt-4 text-70868f", children: __("Transmitting verification to host app. Please wait...") })
2435
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "space-y-6", children: [
2436
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(LoadingIcon_default, { className: "size-24" }) }),
2437
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "mt-4 text-70868f", children: __("Transmitting verification to host app. Please wait...") })
2182
2438
  ] });
2183
2439
  };
2184
2440
  var HostAppVerificationState_default = HostAppVerificationState;
2185
2441
 
2186
2442
  // src/components/IDKitWidget/BaseWidget.tsx
2187
- var import_jsx_runtime17 = require("react/jsx-runtime");
2188
- var getParams2 = ({ open, processing, onOpenChange, stage, setStage, setOptions }) => ({
2443
+ var import_jsx_runtime16 = require("react/jsx-runtime");
2444
+ var getParams2 = ({ open, processing, onOpenChange, stage, setStage, setOptions, setErrorState }) => ({
2189
2445
  stage,
2190
2446
  setStage,
2191
2447
  processing,
2192
2448
  setOptions,
2449
+ setErrorState,
2193
2450
  isOpen: open,
2194
2451
  onOpenChange
2195
2452
  });
@@ -2198,35 +2455,41 @@ var IDKitWidget = ({
2198
2455
  show_modal = true,
2199
2456
  container_id,
2200
2457
  disable_default_modal_behavior = false,
2458
+ language,
2201
2459
  ...config
2202
2460
  }) => {
2203
2461
  const media = useMedia_default();
2204
- const { isOpen, onOpenChange, stage, setOptions } = idkit_default(getParams2, import_shallow3.shallow);
2205
- (0, import_react8.useEffect)(() => {
2462
+ const { isOpen, onOpenChange, stage, setStage, setOptions, setErrorState } = idkit_default(getParams2, import_shallow3.shallow);
2463
+ (0, import_react9.useEffect)(() => {
2464
+ if (language) {
2465
+ setLocalizationConfig({ language });
2466
+ }
2467
+ }, [language]);
2468
+ (0, import_react9.useEffect)(() => {
2206
2469
  if (config.action === "") {
2207
2470
  throw new Error(__("Action cannot be an empty string."));
2208
2471
  }
2209
2472
  setOptions(config, "props" /* PROPS */);
2210
2473
  }, [config, setOptions]);
2211
- const StageContent = (0, import_react8.useMemo)(() => {
2474
+ const StageContent = (0, import_react9.useMemo)(() => {
2212
2475
  switch (stage) {
2213
2476
  case "WORLD_ID" /* WORLD_ID */:
2214
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(WorldIDState_default, { show_modal });
2477
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(WorldIDState_default, { show_modal });
2215
2478
  case "SUCCESS" /* SUCCESS */:
2216
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SuccessState_default, {});
2479
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(SuccessState_default, {});
2217
2480
  case "ERROR" /* ERROR */:
2218
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(ErrorState_default, {});
2481
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(ErrorState_default, {});
2219
2482
  case "HOST_APP_VERIFICATION" /* HOST_APP_VERIFICATION */:
2220
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(HostAppVerificationState_default, {});
2483
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(HostAppVerificationState_default, {});
2221
2484
  default:
2222
- throw new Error(__("Invalid IDKitStage :stage.", { stage }));
2485
+ throw new Error(__("Invalid IDKitStage :stage.", { s: String(stage) }));
2223
2486
  }
2224
2487
  }, [stage, show_modal]);
2225
- const widgetContent = /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(ShadowHost, { mode: "open", id: "idkit-widget", children: [
2226
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Styles_default, {}),
2227
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(Toast.Provider, { children: [
2228
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Toast.Viewport, { className: "flex justify-center" }),
2229
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2488
+ const widgetContent = /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(ShadowHost, { mode: "open", id: "idkit-widget", children: [
2489
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Styles_default, {}),
2490
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(Toast.Provider, { children: [
2491
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Toast.Viewport, { className: "flex justify-center" }),
2492
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2230
2493
  "div",
2231
2494
  {
2232
2495
  id: "widget-content-inline",
@@ -2248,12 +2511,12 @@ var IDKitWidget = ({
2248
2511
  e.preventDefault();
2249
2512
  }
2250
2513
  };
2251
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(Dialog.Root, { open: isOpen, onOpenChange, children: [
2514
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(Dialog.Root, { open: isOpen, onOpenChange, children: [
2252
2515
  children?.({ open: () => onOpenChange(true) }),
2253
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Dialog.Portal, { forceMount: true, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_react8.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_framer_motion2.AnimatePresence, { children: isOpen && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(ShadowHost, { mode: "open", id: "idkit-widget", children: [
2254
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Styles_default, {}),
2255
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { id: "modal", className: "fixed z-[9999] font-sans", children: [
2256
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Dialog.Overlay, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2516
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Dialog.Portal, { forceMount: true, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_react9.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_framer_motion2.AnimatePresence, { children: isOpen && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(ShadowHost, { mode: "open", id: "idkit-widget", children: [
2517
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Styles_default, {}),
2518
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { id: "modal", className: "fixed z-[9999] font-sans", children: [
2519
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Dialog.Overlay, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2257
2520
  import_framer_motion2.motion.div,
2258
2521
  {
2259
2522
  initial: { opacity: 0 },
@@ -2262,15 +2525,15 @@ var IDKitWidget = ({
2262
2525
  className: "fixed inset-0 bg-black/50 backdrop-blur-lg"
2263
2526
  }
2264
2527
  ) }),
2265
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "fixed inset-0 z-[9999] overflow-y-hidden md:overflow-y-auto", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "flex min-h-full items-end justify-center text-center md:items-center md:p-4", children: [
2266
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Dialog.Title, {}),
2267
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2528
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "fixed inset-0 z-[9999] overflow-y-hidden md:overflow-y-auto", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex min-h-full items-end justify-center text-center md:items-center md:p-4", children: [
2529
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Dialog.Title, {}),
2530
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2268
2531
  Dialog.Content,
2269
2532
  {
2270
2533
  asChild: true,
2271
2534
  onPointerDownOutside: avoidDefaultDomBehavior,
2272
2535
  onInteractOutside: avoidDefaultDomBehavior,
2273
- children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2536
+ children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2274
2537
  import_framer_motion2.motion.div,
2275
2538
  {
2276
2539
  layout: media == "mobile" ? "position" : true,
@@ -2284,12 +2547,12 @@ var IDKitWidget = ({
2284
2547
  animateMob: { translateY: 0 }
2285
2548
  },
2286
2549
  transition: { layout: { duration: 0.15 } },
2287
- className: "relative z-50 flex min-h-screen w-full flex-col bg-white pt-6 shadow focus:outline-none focus-visible:ring focus-visible:ring-purple-500/75 dark:bg-0d151d md:min-h-[35rem] md:max-w-md md:rounded-2xl",
2288
- children: /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(Toast.Provider, { children: [
2289
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Toast.Viewport, { className: "flex justify-center" }),
2290
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "mx-6 mb-12 flex items-center justify-between", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Dialog.Close, { className: "flex size-11 items-center justify-center rounded-full text-black dark:text-white", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(XMarkIcon_default, { className: "size-5" }) }) }),
2291
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "relative mx-6 mb-6 flex flex-1 flex-col items-center justify-center", children: StageContent }),
2292
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "flex items-center justify-center border-t border-f5f5f7 p-7 md:rounded-b-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2550
+ className: "relative z-50 flex min-h-screen w-full flex-col bg-white pt-6 shadow focus:outline-none focus-visible:ring focus-visible:ring-purple-500/75 dark:bg-0d151d md:min-h-[35rem] md:max-w-md md:rounded-[24px]",
2551
+ children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(Toast.Provider, { children: [
2552
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Toast.Viewport, { className: "flex justify-center" }),
2553
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "mx-6 flex items-center justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Dialog.Close, { className: "flex size-8 items-center justify-center rounded-full border-[1.2px] border-solid border-[#EBECEF] text-black dark:text-white", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(XMarkIcon_default, { className: "size-4" }) }) }),
2554
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "relative mx-6 mb-6 flex flex-1 flex-col items-center justify-center", children: StageContent }),
2555
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "flex items-center justify-center border-t border-f5f5f7 p-7 md:rounded-b-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2293
2556
  "a",
2294
2557
  {
2295
2558
  href: "https://developer.worldcoin.org/privacy-statement",
@@ -2312,7 +2575,7 @@ var IDKitWidget = ({
2312
2575
  var BaseWidget_default = IDKitWidget;
2313
2576
 
2314
2577
  // src/components/IDKitWidget/index.tsx
2315
- var IDKitWidget_default = (0, import_react9.memo)(BaseWidget_default);
2578
+ var IDKitWidget_default = (0, import_react10.memo)(BaseWidget_default);
2316
2579
 
2317
2580
  // src/index.ts
2318
2581
  var import_hashing = require("@worldcoin/idkit-core/hashing");
@@ -2320,7 +2583,7 @@ var import_backend = require("@worldcoin/idkit-core/backend");
2320
2583
  var import_idkit_core7 = require("@worldcoin/idkit-core");
2321
2584
 
2322
2585
  // src/hooks/useSession.ts
2323
- var import_react10 = require("react");
2586
+ var import_react11 = require("react");
2324
2587
  var import_shallow4 = require("zustand/react/shallow");
2325
2588
  var import_idkit_core5 = require("@worldcoin/idkit-core");
2326
2589
  var import_idkit_core6 = require("@worldcoin/idkit-core");
@@ -2337,12 +2600,12 @@ function useSession(config) {
2337
2600
  errorCode: state.errorCode
2338
2601
  }))
2339
2602
  );
2340
- (0, import_react10.useEffect)(() => {
2603
+ (0, import_react11.useEffect)(() => {
2341
2604
  if (verificationState === import_idkit_core5.VerificationState.PreparingClient && !connectorURI) {
2342
2605
  void createClient(config);
2343
2606
  }
2344
2607
  }, [verificationState, connectorURI, createClient, config]);
2345
- (0, import_react10.useEffect)(() => {
2608
+ (0, import_react11.useEffect)(() => {
2346
2609
  if (TERMINAL_STATES.includes(verificationState)) return;
2347
2610
  const interval = setInterval(() => {
2348
2611
  void pollForUpdates();
@@ -2364,6 +2627,10 @@ function useSession(config) {
2364
2627
  IDKitWidget,
2365
2628
  VerificationLevel,
2366
2629
  VerificationState,
2630
+ getCurrentLanguage,
2631
+ getLocalizationConfig,
2632
+ getSupportedLanguages,
2633
+ setLocalizationConfig,
2367
2634
  solidityEncode,
2368
2635
  useIDKit,
2369
2636
  useSession,