@tinyrack/issuary-server 0.20.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.
Files changed (2365) hide show
  1. package/dist/emails/components/email-layout.d.ts +8 -0
  2. package/dist/emails/components/email-layout.d.ts.map +1 -0
  3. package/dist/emails/components/email-layout.js +6 -0
  4. package/dist/emails/components/email-layout.js.map +1 -0
  5. package/dist/emails/i18n/en.json +26 -0
  6. package/dist/emails/i18n/index.d.ts +3 -0
  7. package/dist/emails/i18n/index.d.ts.map +1 -0
  8. package/dist/emails/i18n/index.js +12 -0
  9. package/dist/emails/i18n/index.js.map +1 -0
  10. package/dist/emails/i18n/ja.json +26 -0
  11. package/dist/emails/i18n/ko.json +26 -0
  12. package/dist/emails/render.d.ts +12 -0
  13. package/dist/emails/render.d.ts.map +1 -0
  14. package/dist/emails/render.js +22 -0
  15. package/dist/emails/render.js.map +1 -0
  16. package/dist/emails/templates/password-reset.d.ts +10 -0
  17. package/dist/emails/templates/password-reset.d.ts.map +1 -0
  18. package/dist/emails/templates/password-reset.js +10 -0
  19. package/dist/emails/templates/password-reset.js.map +1 -0
  20. package/dist/emails/templates/verification.d.ts +10 -0
  21. package/dist/emails/templates/verification.d.ts.map +1 -0
  22. package/dist/emails/templates/verification.js +10 -0
  23. package/dist/emails/templates/verification.js.map +1 -0
  24. package/dist/entities/background-job.entity.d.ts +111 -0
  25. package/dist/entities/background-job.entity.d.ts.map +1 -0
  26. package/dist/entities/background-job.entity.js +53 -0
  27. package/dist/entities/background-job.entity.js.map +1 -0
  28. package/dist/entities/base.entity.d.ts +23 -0
  29. package/dist/entities/base.entity.d.ts.map +1 -0
  30. package/dist/entities/base.entity.js +17 -0
  31. package/dist/entities/base.entity.js.map +1 -0
  32. package/dist/entities/bootstrap-state.entity.d.ts +40 -0
  33. package/dist/entities/bootstrap-state.entity.d.ts.map +1 -0
  34. package/dist/entities/bootstrap-state.entity.js +13 -0
  35. package/dist/entities/bootstrap-state.entity.js.map +1 -0
  36. package/dist/entities/email-verification.entity.d.ts +96 -0
  37. package/dist/entities/email-verification.entity.d.ts.map +1 -0
  38. package/dist/entities/email-verification.entity.js +42 -0
  39. package/dist/entities/email-verification.entity.js.map +1 -0
  40. package/dist/entities/jwt-key.entity.d.ts +256 -0
  41. package/dist/entities/jwt-key.entity.d.ts.map +1 -0
  42. package/dist/entities/jwt-key.entity.js +125 -0
  43. package/dist/entities/jwt-key.entity.js.map +1 -0
  44. package/dist/entities/oauth-client.entity.d.ts +1778 -0
  45. package/dist/entities/oauth-client.entity.d.ts.map +1 -0
  46. package/dist/entities/oauth-client.entity.js +82 -0
  47. package/dist/entities/oauth-client.entity.js.map +1 -0
  48. package/dist/entities/oauth-code.entity.d.ts +1799 -0
  49. package/dist/entities/oauth-code.entity.d.ts.map +1 -0
  50. package/dist/entities/oauth-code.entity.js +79 -0
  51. package/dist/entities/oauth-code.entity.js.map +1 -0
  52. package/dist/entities/oauth-device-code.entity.d.ts +1779 -0
  53. package/dist/entities/oauth-device-code.entity.d.ts.map +1 -0
  54. package/dist/entities/oauth-device-code.entity.js +73 -0
  55. package/dist/entities/oauth-device-code.entity.js.map +1 -0
  56. package/dist/entities/password-reset.entity.d.ts +96 -0
  57. package/dist/entities/password-reset.entity.d.ts.map +1 -0
  58. package/dist/entities/password-reset.entity.js +39 -0
  59. package/dist/entities/password-reset.entity.js.map +1 -0
  60. package/dist/entities/pending-oauth-registration.entity.d.ts +116 -0
  61. package/dist/entities/pending-oauth-registration.entity.d.ts.map +1 -0
  62. package/dist/entities/pending-oauth-registration.entity.js +67 -0
  63. package/dist/entities/pending-oauth-registration.entity.js.map +1 -0
  64. package/dist/entities/revoked-token.entity.d.ts +1796 -0
  65. package/dist/entities/revoked-token.entity.d.ts.map +1 -0
  66. package/dist/entities/revoked-token.entity.js +69 -0
  67. package/dist/entities/revoked-token.entity.js.map +1 -0
  68. package/dist/entities/scheduler-job.entity.d.ts +134 -0
  69. package/dist/entities/scheduler-job.entity.d.ts.map +1 -0
  70. package/dist/entities/scheduler-job.entity.js +56 -0
  71. package/dist/entities/scheduler-job.entity.js.map +1 -0
  72. package/dist/entities/terms-content.entity.d.ts +834 -0
  73. package/dist/entities/terms-content.entity.d.ts.map +1 -0
  74. package/dist/entities/terms-content.entity.js +46 -0
  75. package/dist/entities/terms-content.entity.js.map +1 -0
  76. package/dist/entities/terms.entity.d.ts +827 -0
  77. package/dist/entities/terms.entity.d.ts.map +1 -0
  78. package/dist/entities/terms.entity.js +42 -0
  79. package/dist/entities/terms.entity.js.map +1 -0
  80. package/dist/entities/user-consent.entity.d.ts +1792 -0
  81. package/dist/entities/user-consent.entity.d.ts.map +1 -0
  82. package/dist/entities/user-consent.entity.js +66 -0
  83. package/dist/entities/user-consent.entity.js.map +1 -0
  84. package/dist/entities/user-oauth.entity.d.ts +81 -0
  85. package/dist/entities/user-oauth.entity.d.ts.map +1 -0
  86. package/dist/entities/user-oauth.entity.js +46 -0
  87. package/dist/entities/user-oauth.entity.js.map +1 -0
  88. package/dist/entities/user-passkey.entity.d.ts +151 -0
  89. package/dist/entities/user-passkey.entity.d.ts.map +1 -0
  90. package/dist/entities/user-passkey.entity.js +64 -0
  91. package/dist/entities/user-passkey.entity.js.map +1 -0
  92. package/dist/entities/user-terms-consent.entity.d.ts +834 -0
  93. package/dist/entities/user-terms-consent.entity.d.ts.map +1 -0
  94. package/dist/entities/user-terms-consent.entity.js +62 -0
  95. package/dist/entities/user-terms-consent.entity.js.map +1 -0
  96. package/dist/entities/user-totp-recovery-code.entity.d.ts +545 -0
  97. package/dist/entities/user-totp-recovery-code.entity.d.ts.map +1 -0
  98. package/dist/entities/user-totp-recovery-code.entity.js +34 -0
  99. package/dist/entities/user-totp-recovery-code.entity.js.map +1 -0
  100. package/dist/entities/user-totp.entity.d.ts +545 -0
  101. package/dist/entities/user-totp.entity.d.ts.map +1 -0
  102. package/dist/entities/user-totp.entity.js +38 -0
  103. package/dist/entities/user-totp.entity.js.map +1 -0
  104. package/dist/entities/user.entity.d.ts +551 -0
  105. package/dist/entities/user.entity.d.ts.map +1 -0
  106. package/dist/entities/user.entity.js +70 -0
  107. package/dist/entities/user.entity.js.map +1 -0
  108. package/dist/entrypoints/app.d.ts +1802 -0
  109. package/dist/entrypoints/app.d.ts.map +1 -0
  110. package/dist/entrypoints/app.js +164 -0
  111. package/dist/entrypoints/app.js.map +1 -0
  112. package/dist/entrypoints/config/index.d.ts +2 -0
  113. package/dist/entrypoints/config/index.d.ts.map +1 -0
  114. package/dist/entrypoints/config/index.js +2 -0
  115. package/dist/entrypoints/config/index.js.map +1 -0
  116. package/dist/entrypoints/database/postgres/cli.d.ts +4 -0
  117. package/dist/entrypoints/database/postgres/cli.d.ts.map +1 -0
  118. package/dist/entrypoints/database/postgres/cli.js +20 -0
  119. package/dist/entrypoints/database/postgres/cli.js.map +1 -0
  120. package/dist/entrypoints/database/postgres/compiled-functions.d.ts +865 -0
  121. package/dist/entrypoints/database/postgres/compiled-functions.d.ts.map +1 -0
  122. package/dist/entrypoints/database/postgres/compiled-functions.js +10817 -0
  123. package/dist/entrypoints/database/postgres/compiled-functions.js.map +1 -0
  124. package/dist/entrypoints/database/postgres/postgres.d.ts +14 -0
  125. package/dist/entrypoints/database/postgres/postgres.d.ts.map +1 -0
  126. package/dist/entrypoints/database/postgres/postgres.js +36 -0
  127. package/dist/entrypoints/database/postgres/postgres.js.map +1 -0
  128. package/dist/entrypoints/database/sqlite/cli.d.ts +4 -0
  129. package/dist/entrypoints/database/sqlite/cli.d.ts.map +1 -0
  130. package/dist/entrypoints/database/sqlite/cli.js +14 -0
  131. package/dist/entrypoints/database/sqlite/cli.js.map +1 -0
  132. package/dist/entrypoints/database/sqlite/compiled-functions.d.ts +865 -0
  133. package/dist/entrypoints/database/sqlite/compiled-functions.d.ts.map +1 -0
  134. package/dist/entrypoints/database/sqlite/compiled-functions.js +10817 -0
  135. package/dist/entrypoints/database/sqlite/compiled-functions.js.map +1 -0
  136. package/dist/entrypoints/database/sqlite/sqlite.d.ts +10 -0
  137. package/dist/entrypoints/database/sqlite/sqlite.d.ts.map +1 -0
  138. package/dist/entrypoints/database/sqlite/sqlite.js +36 -0
  139. package/dist/entrypoints/database/sqlite/sqlite.js.map +1 -0
  140. package/dist/entrypoints/frontend/index.d.ts +4 -0
  141. package/dist/entrypoints/frontend/index.d.ts.map +1 -0
  142. package/dist/entrypoints/frontend/index.js +2 -0
  143. package/dist/entrypoints/frontend/index.js.map +1 -0
  144. package/dist/entrypoints/frontend/proxy.d.ts +2 -0
  145. package/dist/entrypoints/frontend/proxy.d.ts.map +1 -0
  146. package/dist/entrypoints/frontend/proxy.js +2 -0
  147. package/dist/entrypoints/frontend/proxy.js.map +1 -0
  148. package/dist/entrypoints/frontend/static.d.ts +2 -0
  149. package/dist/entrypoints/frontend/static.d.ts.map +1 -0
  150. package/dist/entrypoints/frontend/static.js +2 -0
  151. package/dist/entrypoints/frontend/static.js.map +1 -0
  152. package/dist/entrypoints/identity-providers/apple.d.ts +15 -0
  153. package/dist/entrypoints/identity-providers/apple.d.ts.map +1 -0
  154. package/dist/entrypoints/identity-providers/apple.js +24 -0
  155. package/dist/entrypoints/identity-providers/apple.js.map +1 -0
  156. package/dist/entrypoints/identity-providers/generic-oauth.d.ts +27 -0
  157. package/dist/entrypoints/identity-providers/generic-oauth.d.ts.map +1 -0
  158. package/dist/entrypoints/identity-providers/generic-oauth.js +22 -0
  159. package/dist/entrypoints/identity-providers/generic-oauth.js.map +1 -0
  160. package/dist/entrypoints/identity-providers/github.d.ts +13 -0
  161. package/dist/entrypoints/identity-providers/github.d.ts.map +1 -0
  162. package/dist/entrypoints/identity-providers/github.js +24 -0
  163. package/dist/entrypoints/identity-providers/github.js.map +1 -0
  164. package/dist/entrypoints/identity-providers/google.d.ts +13 -0
  165. package/dist/entrypoints/identity-providers/google.d.ts.map +1 -0
  166. package/dist/entrypoints/identity-providers/google.js +24 -0
  167. package/dist/entrypoints/identity-providers/google.js.map +1 -0
  168. package/dist/entrypoints/index.d.ts +3 -0
  169. package/dist/entrypoints/index.d.ts.map +1 -0
  170. package/dist/entrypoints/index.js +3 -0
  171. package/dist/entrypoints/index.js.map +1 -0
  172. package/dist/entrypoints/mail/nodemailer.d.ts +11 -0
  173. package/dist/entrypoints/mail/nodemailer.d.ts.map +1 -0
  174. package/dist/entrypoints/mail/nodemailer.js +30 -0
  175. package/dist/entrypoints/mail/nodemailer.js.map +1 -0
  176. package/dist/entrypoints/scheduler/cron.d.ts +3 -0
  177. package/dist/entrypoints/scheduler/cron.d.ts.map +1 -0
  178. package/dist/entrypoints/scheduler/cron.js +34 -0
  179. package/dist/entrypoints/scheduler/cron.js.map +1 -0
  180. package/dist/entrypoints/scheduler/croner.d.ts +6 -0
  181. package/dist/entrypoints/scheduler/croner.d.ts.map +1 -0
  182. package/dist/entrypoints/scheduler/croner.js +42 -0
  183. package/dist/entrypoints/scheduler/croner.js.map +1 -0
  184. package/dist/entrypoints/scheduler/database.d.ts +38 -0
  185. package/dist/entrypoints/scheduler/database.d.ts.map +1 -0
  186. package/dist/entrypoints/scheduler/database.js +444 -0
  187. package/dist/entrypoints/scheduler/database.js.map +1 -0
  188. package/dist/entrypoints/scheduler/distributed-runner.d.ts +134 -0
  189. package/dist/entrypoints/scheduler/distributed-runner.d.ts.map +1 -0
  190. package/dist/entrypoints/scheduler/distributed-runner.js +327 -0
  191. package/dist/entrypoints/scheduler/distributed-runner.js.map +1 -0
  192. package/dist/entrypoints/services.d.ts +3 -0
  193. package/dist/entrypoints/services.d.ts.map +1 -0
  194. package/dist/entrypoints/services.js +2 -0
  195. package/dist/entrypoints/services.js.map +1 -0
  196. package/dist/lib/app-env.d.ts +17 -0
  197. package/dist/lib/app-env.d.ts.map +1 -0
  198. package/dist/lib/app-env.js +2 -0
  199. package/dist/lib/app-env.js.map +1 -0
  200. package/dist/lib/base64url.d.ts +33 -0
  201. package/dist/lib/base64url.d.ts.map +1 -0
  202. package/dist/lib/base64url.js +93 -0
  203. package/dist/lib/base64url.js.map +1 -0
  204. package/dist/lib/config/account-deletion.d.ts +11 -0
  205. package/dist/lib/config/account-deletion.d.ts.map +1 -0
  206. package/dist/lib/config/account-deletion.js +16 -0
  207. package/dist/lib/config/account-deletion.js.map +1 -0
  208. package/dist/lib/config/admin.d.ts +9 -0
  209. package/dist/lib/config/admin.d.ts.map +1 -0
  210. package/dist/lib/config/admin.js +13 -0
  211. package/dist/lib/config/admin.js.map +1 -0
  212. package/dist/lib/config/auth.d.ts +194 -0
  213. package/dist/lib/config/auth.d.ts.map +1 -0
  214. package/dist/lib/config/auth.js +216 -0
  215. package/dist/lib/config/auth.js.map +1 -0
  216. package/dist/lib/config/branding.d.ts +14 -0
  217. package/dist/lib/config/branding.d.ts.map +1 -0
  218. package/dist/lib/config/branding.js +37 -0
  219. package/dist/lib/config/branding.js.map +1 -0
  220. package/dist/lib/config/cleanup.d.ts +59 -0
  221. package/dist/lib/config/cleanup.d.ts.map +1 -0
  222. package/dist/lib/config/cleanup.js +119 -0
  223. package/dist/lib/config/cleanup.js.map +1 -0
  224. package/dist/lib/config/client.d.ts +74 -0
  225. package/dist/lib/config/client.d.ts.map +1 -0
  226. package/dist/lib/config/client.js +195 -0
  227. package/dist/lib/config/client.js.map +1 -0
  228. package/dist/lib/config/database.d.ts +8 -0
  229. package/dist/lib/config/database.d.ts.map +1 -0
  230. package/dist/lib/config/database.js +8 -0
  231. package/dist/lib/config/database.js.map +1 -0
  232. package/dist/lib/config/email.d.ts +17 -0
  233. package/dist/lib/config/email.d.ts.map +1 -0
  234. package/dist/lib/config/email.js +7 -0
  235. package/dist/lib/config/email.js.map +1 -0
  236. package/dist/lib/config/frontend.d.ts +12 -0
  237. package/dist/lib/config/frontend.d.ts.map +1 -0
  238. package/dist/lib/config/frontend.js +7 -0
  239. package/dist/lib/config/frontend.js.map +1 -0
  240. package/dist/lib/config/i18n.d.ts +31 -0
  241. package/dist/lib/config/i18n.d.ts.map +1 -0
  242. package/dist/lib/config/i18n.js +23 -0
  243. package/dist/lib/config/i18n.js.map +1 -0
  244. package/dist/lib/config/identity-providers.d.ts +70 -0
  245. package/dist/lib/config/identity-providers.d.ts.map +1 -0
  246. package/dist/lib/config/identity-providers.js +88 -0
  247. package/dist/lib/config/identity-providers.js.map +1 -0
  248. package/dist/lib/config/index.d.ts +43 -0
  249. package/dist/lib/config/index.d.ts.map +1 -0
  250. package/dist/lib/config/index.js +22 -0
  251. package/dist/lib/config/index.js.map +1 -0
  252. package/dist/lib/config/logging.d.ts +52 -0
  253. package/dist/lib/config/logging.d.ts.map +1 -0
  254. package/dist/lib/config/logging.js +41 -0
  255. package/dist/lib/config/logging.js.map +1 -0
  256. package/dist/lib/config/openapi.d.ts +15 -0
  257. package/dist/lib/config/openapi.d.ts.map +1 -0
  258. package/dist/lib/config/openapi.js +28 -0
  259. package/dist/lib/config/openapi.js.map +1 -0
  260. package/dist/lib/config/registration.d.ts +15 -0
  261. package/dist/lib/config/registration.d.ts.map +1 -0
  262. package/dist/lib/config/registration.js +24 -0
  263. package/dist/lib/config/registration.js.map +1 -0
  264. package/dist/lib/config/resolved.d.ts +249 -0
  265. package/dist/lib/config/resolved.d.ts.map +1 -0
  266. package/dist/lib/config/resolved.js +47 -0
  267. package/dist/lib/config/resolved.js.map +1 -0
  268. package/dist/lib/config/scheduler.d.ts +52 -0
  269. package/dist/lib/config/scheduler.d.ts.map +1 -0
  270. package/dist/lib/config/scheduler.js +20 -0
  271. package/dist/lib/config/scheduler.js.map +1 -0
  272. package/dist/lib/config/security.d.ts +11 -0
  273. package/dist/lib/config/security.d.ts.map +1 -0
  274. package/dist/lib/config/security.js +65 -0
  275. package/dist/lib/config/security.js.map +1 -0
  276. package/dist/lib/config/server.d.ts +13 -0
  277. package/dist/lib/config/server.d.ts.map +1 -0
  278. package/dist/lib/config/server.js +57 -0
  279. package/dist/lib/config/server.js.map +1 -0
  280. package/dist/lib/config/terms.d.ts +47 -0
  281. package/dist/lib/config/terms.d.ts.map +1 -0
  282. package/dist/lib/config/terms.js +71 -0
  283. package/dist/lib/config/terms.js.map +1 -0
  284. package/dist/lib/config/tokens.d.ts +32 -0
  285. package/dist/lib/config/tokens.d.ts.map +1 -0
  286. package/dist/lib/config/tokens.js +47 -0
  287. package/dist/lib/config/tokens.js.map +1 -0
  288. package/dist/lib/config/url-policy.d.ts +4 -0
  289. package/dist/lib/config/url-policy.d.ts.map +1 -0
  290. package/dist/lib/config/url-policy.js +38 -0
  291. package/dist/lib/config/url-policy.js.map +1 -0
  292. package/dist/lib/config/user.d.ts +22 -0
  293. package/dist/lib/config/user.d.ts.map +1 -0
  294. package/dist/lib/config/user.js +22 -0
  295. package/dist/lib/config/user.js.map +1 -0
  296. package/dist/lib/crypto.d.ts +106 -0
  297. package/dist/lib/crypto.d.ts.map +1 -0
  298. package/dist/lib/crypto.js +263 -0
  299. package/dist/lib/crypto.js.map +1 -0
  300. package/dist/lib/database/entities.d.ts +10 -0
  301. package/dist/lib/database/entities.d.ts.map +1 -0
  302. package/dist/lib/database/entities.js +51 -0
  303. package/dist/lib/database/entities.js.map +1 -0
  304. package/dist/lib/duration.d.ts +44 -0
  305. package/dist/lib/duration.d.ts.map +1 -0
  306. package/dist/lib/duration.js +103 -0
  307. package/dist/lib/duration.js.map +1 -0
  308. package/dist/lib/email-pattern.d.ts +16 -0
  309. package/dist/lib/email-pattern.d.ts.map +1 -0
  310. package/dist/lib/email-pattern.js +41 -0
  311. package/dist/lib/email-pattern.js.map +1 -0
  312. package/dist/lib/escape-html.d.ts +7 -0
  313. package/dist/lib/escape-html.d.ts.map +1 -0
  314. package/dist/lib/escape-html.js +14 -0
  315. package/dist/lib/escape-html.js.map +1 -0
  316. package/dist/lib/frontend/proxy.d.ts +24 -0
  317. package/dist/lib/frontend/proxy.d.ts.map +1 -0
  318. package/dist/lib/frontend/proxy.js +38 -0
  319. package/dist/lib/frontend/proxy.js.map +1 -0
  320. package/dist/lib/frontend/static.d.ts +21 -0
  321. package/dist/lib/frontend/static.d.ts.map +1 -0
  322. package/dist/lib/frontend/static.js +108 -0
  323. package/dist/lib/frontend/static.js.map +1 -0
  324. package/dist/lib/interpolate-html.d.ts +34 -0
  325. package/dist/lib/interpolate-html.d.ts.map +1 -0
  326. package/dist/lib/interpolate-html.js +61 -0
  327. package/dist/lib/interpolate-html.js.map +1 -0
  328. package/dist/lib/ip-utils.d.ts +61 -0
  329. package/dist/lib/ip-utils.d.ts.map +1 -0
  330. package/dist/lib/ip-utils.js +213 -0
  331. package/dist/lib/ip-utils.js.map +1 -0
  332. package/dist/lib/locale.d.ts +57 -0
  333. package/dist/lib/locale.d.ts.map +1 -0
  334. package/dist/lib/locale.js +25 -0
  335. package/dist/lib/locale.js.map +1 -0
  336. package/dist/lib/logger.d.ts +14 -0
  337. package/dist/lib/logger.d.ts.map +1 -0
  338. package/dist/lib/logger.js +41 -0
  339. package/dist/lib/logger.js.map +1 -0
  340. package/dist/lib/openapi.d.ts +35 -0
  341. package/dist/lib/openapi.d.ts.map +1 -0
  342. package/dist/lib/openapi.js +33 -0
  343. package/dist/lib/openapi.js.map +1 -0
  344. package/dist/lib/password-policy.d.ts +39 -0
  345. package/dist/lib/password-policy.d.ts.map +1 -0
  346. package/dist/lib/password-policy.js +51 -0
  347. package/dist/lib/password-policy.js.map +1 -0
  348. package/dist/lib/pkce.d.ts +26 -0
  349. package/dist/lib/pkce.d.ts.map +1 -0
  350. package/dist/lib/pkce.js +59 -0
  351. package/dist/lib/pkce.js.map +1 -0
  352. package/dist/lib/scopes.d.ts +10 -0
  353. package/dist/lib/scopes.d.ts.map +1 -0
  354. package/dist/lib/scopes.js +38 -0
  355. package/dist/lib/scopes.js.map +1 -0
  356. package/dist/lib/swagger-tags.d.ts +16 -0
  357. package/dist/lib/swagger-tags.d.ts.map +1 -0
  358. package/dist/lib/swagger-tags.js +16 -0
  359. package/dist/lib/swagger-tags.js.map +1 -0
  360. package/dist/middleware/auth.d.ts +67 -0
  361. package/dist/middleware/auth.d.ts.map +1 -0
  362. package/dist/middleware/auth.js +149 -0
  363. package/dist/middleware/auth.js.map +1 -0
  364. package/dist/middleware/csrf.d.ts +2 -0
  365. package/dist/middleware/csrf.d.ts.map +1 -0
  366. package/dist/middleware/csrf.js +51 -0
  367. package/dist/middleware/csrf.js.map +1 -0
  368. package/dist/middleware/logger.d.ts +18 -0
  369. package/dist/middleware/logger.d.ts.map +1 -0
  370. package/dist/middleware/logger.js +38 -0
  371. package/dist/middleware/logger.js.map +1 -0
  372. package/dist/middleware/mikro-orm.d.ts +3 -0
  373. package/dist/middleware/mikro-orm.d.ts.map +1 -0
  374. package/dist/middleware/mikro-orm.js +11 -0
  375. package/dist/middleware/mikro-orm.js.map +1 -0
  376. package/dist/middleware/services.d.ts +8 -0
  377. package/dist/middleware/services.d.ts.map +1 -0
  378. package/dist/middleware/services.js +8 -0
  379. package/dist/middleware/services.js.map +1 -0
  380. package/dist/middleware/session.d.ts +107 -0
  381. package/dist/middleware/session.d.ts.map +1 -0
  382. package/dist/middleware/session.js +185 -0
  383. package/dist/middleware/session.js.map +1 -0
  384. package/dist/middleware/trusted-proxy-guard.d.ts +7 -0
  385. package/dist/middleware/trusted-proxy-guard.d.ts.map +1 -0
  386. package/dist/middleware/trusted-proxy-guard.js +34 -0
  387. package/dist/middleware/trusted-proxy-guard.js.map +1 -0
  388. package/dist/migrations/postgres/Migration20260509171036_initial.d.ts +5 -0
  389. package/dist/migrations/postgres/Migration20260509171036_initial.d.ts.map +1 -0
  390. package/dist/migrations/postgres/Migration20260509171036_initial.js +246 -0
  391. package/dist/migrations/postgres/Migration20260509171036_initial.js.map +1 -0
  392. package/dist/migrations/postgres/Migration20260512120000_add_scheduler_jobs.d.ts +5 -0
  393. package/dist/migrations/postgres/Migration20260512120000_add_scheduler_jobs.d.ts.map +1 -0
  394. package/dist/migrations/postgres/Migration20260512120000_add_scheduler_jobs.js +15 -0
  395. package/dist/migrations/postgres/Migration20260512120000_add_scheduler_jobs.js.map +1 -0
  396. package/dist/migrations/postgres/Migration20260619075007.d.ts +6 -0
  397. package/dist/migrations/postgres/Migration20260619075007.d.ts.map +1 -0
  398. package/dist/migrations/postgres/Migration20260619075007.js +86 -0
  399. package/dist/migrations/postgres/Migration20260619075007.js.map +1 -0
  400. package/dist/migrations/postgres/Migration20260619191600_unique_oauth_client_client_id.d.ts +6 -0
  401. package/dist/migrations/postgres/Migration20260619191600_unique_oauth_client_client_id.d.ts.map +1 -0
  402. package/dist/migrations/postgres/Migration20260619191600_unique_oauth_client_client_id.js +12 -0
  403. package/dist/migrations/postgres/Migration20260619191600_unique_oauth_client_client_id.js.map +1 -0
  404. package/dist/migrations/postgres/Migration20260620025358_add_oauth_client_skip_consent.d.ts +6 -0
  405. package/dist/migrations/postgres/Migration20260620025358_add_oauth_client_skip_consent.d.ts.map +1 -0
  406. package/dist/migrations/postgres/Migration20260620025358_add_oauth_client_skip_consent.js +11 -0
  407. package/dist/migrations/postgres/Migration20260620025358_add_oauth_client_skip_consent.js.map +1 -0
  408. package/dist/migrations/postgres/Migration20260624190500_add_oauth_device_denied_at.d.ts +6 -0
  409. package/dist/migrations/postgres/Migration20260624190500_add_oauth_device_denied_at.d.ts.map +1 -0
  410. package/dist/migrations/postgres/Migration20260624190500_add_oauth_device_denied_at.js +11 -0
  411. package/dist/migrations/postgres/Migration20260624190500_add_oauth_device_denied_at.js.map +1 -0
  412. package/dist/migrations/postgres/Migration20260624223000_add_oauth_device_poll_state.d.ts +6 -0
  413. package/dist/migrations/postgres/Migration20260624223000_add_oauth_device_poll_state.d.ts.map +1 -0
  414. package/dist/migrations/postgres/Migration20260624223000_add_oauth_device_poll_state.js +14 -0
  415. package/dist/migrations/postgres/Migration20260624223000_add_oauth_device_poll_state.js.map +1 -0
  416. package/dist/migrations/postgres/Migration20260626103000_allow_revoked_token_without_user.d.ts +6 -0
  417. package/dist/migrations/postgres/Migration20260626103000_allow_revoked_token_without_user.d.ts.map +1 -0
  418. package/dist/migrations/postgres/Migration20260626103000_allow_revoked_token_without_user.js +10 -0
  419. package/dist/migrations/postgres/Migration20260626103000_allow_revoked_token_without_user.js.map +1 -0
  420. package/dist/migrations/postgres/index.d.ts +3 -0
  421. package/dist/migrations/postgres/index.d.ts.map +1 -0
  422. package/dist/migrations/postgres/index.js +19 -0
  423. package/dist/migrations/postgres/index.js.map +1 -0
  424. package/dist/migrations/sqlite/Migration20260509171226_initial.d.ts +5 -0
  425. package/dist/migrations/sqlite/Migration20260509171226_initial.d.ts.map +1 -0
  426. package/dist/migrations/sqlite/Migration20260509171226_initial.js +62 -0
  427. package/dist/migrations/sqlite/Migration20260509171226_initial.js.map +1 -0
  428. package/dist/migrations/sqlite/Migration20260512120000_add_scheduler_jobs.d.ts +5 -0
  429. package/dist/migrations/sqlite/Migration20260512120000_add_scheduler_jobs.d.ts.map +1 -0
  430. package/dist/migrations/sqlite/Migration20260512120000_add_scheduler_jobs.js +13 -0
  431. package/dist/migrations/sqlite/Migration20260512120000_add_scheduler_jobs.js.map +1 -0
  432. package/dist/migrations/sqlite/Migration20260619075330.d.ts +6 -0
  433. package/dist/migrations/sqlite/Migration20260619075330.d.ts.map +1 -0
  434. package/dist/migrations/sqlite/Migration20260619075330.js +57 -0
  435. package/dist/migrations/sqlite/Migration20260619075330.js.map +1 -0
  436. package/dist/migrations/sqlite/Migration20260619191600_unique_oauth_client_client_id.d.ts +6 -0
  437. package/dist/migrations/sqlite/Migration20260619191600_unique_oauth_client_client_id.d.ts.map +1 -0
  438. package/dist/migrations/sqlite/Migration20260619191600_unique_oauth_client_client_id.js +12 -0
  439. package/dist/migrations/sqlite/Migration20260619191600_unique_oauth_client_client_id.js.map +1 -0
  440. package/dist/migrations/sqlite/Migration20260620025358_add_oauth_client_skip_consent.d.ts +6 -0
  441. package/dist/migrations/sqlite/Migration20260620025358_add_oauth_client_skip_consent.d.ts.map +1 -0
  442. package/dist/migrations/sqlite/Migration20260620025358_add_oauth_client_skip_consent.js +10 -0
  443. package/dist/migrations/sqlite/Migration20260620025358_add_oauth_client_skip_consent.js.map +1 -0
  444. package/dist/migrations/sqlite/Migration20260624190500_add_oauth_device_denied_at.d.ts +6 -0
  445. package/dist/migrations/sqlite/Migration20260624190500_add_oauth_device_denied_at.d.ts.map +1 -0
  446. package/dist/migrations/sqlite/Migration20260624190500_add_oauth_device_denied_at.js +10 -0
  447. package/dist/migrations/sqlite/Migration20260624190500_add_oauth_device_denied_at.js.map +1 -0
  448. package/dist/migrations/sqlite/Migration20260624223000_add_oauth_device_poll_state.d.ts +6 -0
  449. package/dist/migrations/sqlite/Migration20260624223000_add_oauth_device_poll_state.d.ts.map +1 -0
  450. package/dist/migrations/sqlite/Migration20260624223000_add_oauth_device_poll_state.js +12 -0
  451. package/dist/migrations/sqlite/Migration20260624223000_add_oauth_device_poll_state.js.map +1 -0
  452. package/dist/migrations/sqlite/Migration20260626103000_allow_revoked_token_without_user.d.ts +6 -0
  453. package/dist/migrations/sqlite/Migration20260626103000_allow_revoked_token_without_user.d.ts.map +1 -0
  454. package/dist/migrations/sqlite/Migration20260626103000_allow_revoked_token_without_user.js +28 -0
  455. package/dist/migrations/sqlite/Migration20260626103000_allow_revoked_token_without_user.js.map +1 -0
  456. package/dist/migrations/sqlite/index.d.ts +3 -0
  457. package/dist/migrations/sqlite/index.d.ts.map +1 -0
  458. package/dist/migrations/sqlite/index.js +19 -0
  459. package/dist/migrations/sqlite/index.js.map +1 -0
  460. package/dist/repositories/background-job.repository.d.ts +5 -0
  461. package/dist/repositories/background-job.repository.d.ts.map +1 -0
  462. package/dist/repositories/background-job.repository.js +4 -0
  463. package/dist/repositories/background-job.repository.js.map +1 -0
  464. package/dist/repositories/email-verification.repository.d.ts +18 -0
  465. package/dist/repositories/email-verification.repository.d.ts.map +1 -0
  466. package/dist/repositories/email-verification.repository.js +47 -0
  467. package/dist/repositories/email-verification.repository.js.map +1 -0
  468. package/dist/repositories/jwt-key.repository.d.ts +49 -0
  469. package/dist/repositories/jwt-key.repository.d.ts.map +1 -0
  470. package/dist/repositories/jwt-key.repository.js +72 -0
  471. package/dist/repositories/jwt-key.repository.js.map +1 -0
  472. package/dist/repositories/oauth-client.repository.d.ts +5 -0
  473. package/dist/repositories/oauth-client.repository.d.ts.map +1 -0
  474. package/dist/repositories/oauth-client.repository.js +4 -0
  475. package/dist/repositories/oauth-client.repository.js.map +1 -0
  476. package/dist/repositories/oauth-code.repository.d.ts +24 -0
  477. package/dist/repositories/oauth-code.repository.d.ts.map +1 -0
  478. package/dist/repositories/oauth-code.repository.js +47 -0
  479. package/dist/repositories/oauth-code.repository.js.map +1 -0
  480. package/dist/repositories/oauth-device-code.repository.d.ts +29 -0
  481. package/dist/repositories/oauth-device-code.repository.d.ts.map +1 -0
  482. package/dist/repositories/oauth-device-code.repository.js +110 -0
  483. package/dist/repositories/oauth-device-code.repository.js.map +1 -0
  484. package/dist/repositories/password-reset.repository.d.ts +19 -0
  485. package/dist/repositories/password-reset.repository.d.ts.map +1 -0
  486. package/dist/repositories/password-reset.repository.js +53 -0
  487. package/dist/repositories/password-reset.repository.js.map +1 -0
  488. package/dist/repositories/pending-oauth-registration.repository.d.ts +38 -0
  489. package/dist/repositories/pending-oauth-registration.repository.d.ts.map +1 -0
  490. package/dist/repositories/pending-oauth-registration.repository.js +50 -0
  491. package/dist/repositories/pending-oauth-registration.repository.js.map +1 -0
  492. package/dist/repositories/revoked-token.repository.d.ts +52 -0
  493. package/dist/repositories/revoked-token.repository.d.ts.map +1 -0
  494. package/dist/repositories/revoked-token.repository.js +86 -0
  495. package/dist/repositories/revoked-token.repository.js.map +1 -0
  496. package/dist/repositories/scheduler-job.repository.d.ts +5 -0
  497. package/dist/repositories/scheduler-job.repository.d.ts.map +1 -0
  498. package/dist/repositories/scheduler-job.repository.js +4 -0
  499. package/dist/repositories/scheduler-job.repository.js.map +1 -0
  500. package/dist/repositories/terms-content.repository.d.ts +5 -0
  501. package/dist/repositories/terms-content.repository.d.ts.map +1 -0
  502. package/dist/repositories/terms-content.repository.js +4 -0
  503. package/dist/repositories/terms-content.repository.js.map +1 -0
  504. package/dist/repositories/terms.repository.d.ts +9 -0
  505. package/dist/repositories/terms.repository.d.ts.map +1 -0
  506. package/dist/repositories/terms.repository.js +12 -0
  507. package/dist/repositories/terms.repository.js.map +1 -0
  508. package/dist/repositories/user-consent.repository.d.ts +22 -0
  509. package/dist/repositories/user-consent.repository.d.ts.map +1 -0
  510. package/dist/repositories/user-consent.repository.js +51 -0
  511. package/dist/repositories/user-consent.repository.js.map +1 -0
  512. package/dist/repositories/user-oauth.repository.d.ts +68 -0
  513. package/dist/repositories/user-oauth.repository.d.ts.map +1 -0
  514. package/dist/repositories/user-oauth.repository.js +94 -0
  515. package/dist/repositories/user-oauth.repository.js.map +1 -0
  516. package/dist/repositories/user-passkey.repository.d.ts +193 -0
  517. package/dist/repositories/user-passkey.repository.d.ts.map +1 -0
  518. package/dist/repositories/user-passkey.repository.js +61 -0
  519. package/dist/repositories/user-passkey.repository.js.map +1 -0
  520. package/dist/repositories/user-terms-consent.repository.d.ts +38 -0
  521. package/dist/repositories/user-terms-consent.repository.d.ts.map +1 -0
  522. package/dist/repositories/user-terms-consent.repository.js +71 -0
  523. package/dist/repositories/user-terms-consent.repository.js.map +1 -0
  524. package/dist/repositories/user-totp-recovery-code.repository.d.ts +388 -0
  525. package/dist/repositories/user-totp-recovery-code.repository.d.ts.map +1 -0
  526. package/dist/repositories/user-totp-recovery-code.repository.js +41 -0
  527. package/dist/repositories/user-totp-recovery-code.repository.js.map +1 -0
  528. package/dist/repositories/user-totp.repository.d.ts +582 -0
  529. package/dist/repositories/user-totp.repository.d.ts.map +1 -0
  530. package/dist/repositories/user-totp.repository.js +56 -0
  531. package/dist/repositories/user-totp.repository.js.map +1 -0
  532. package/dist/repositories/user.repository.d.ts +34 -0
  533. package/dist/repositories/user.repository.d.ts.map +1 -0
  534. package/dist/repositories/user.repository.js +74 -0
  535. package/dist/repositories/user.repository.js.map +1 -0
  536. package/dist/routes/.well-known/index.d.ts +39 -0
  537. package/dist/routes/.well-known/index.d.ts.map +1 -0
  538. package/dist/routes/.well-known/index.js +4 -0
  539. package/dist/routes/.well-known/index.js.map +1 -0
  540. package/dist/routes/.well-known/openid-configuration/get.d.ts +46 -0
  541. package/dist/routes/.well-known/openid-configuration/get.d.ts.map +1 -0
  542. package/dist/routes/.well-known/openid-configuration/get.js +19 -0
  543. package/dist/routes/.well-known/openid-configuration/get.js.map +1 -0
  544. package/dist/routes/api/admin/index.d.ts +185 -0
  545. package/dist/routes/api/admin/index.d.ts.map +1 -0
  546. package/dist/routes/api/admin/index.js +13 -0
  547. package/dist/routes/api/admin/index.js.map +1 -0
  548. package/dist/routes/api/admin/me/get.d.ts +26 -0
  549. package/dist/routes/api/admin/me/get.d.ts.map +1 -0
  550. package/dist/routes/api/admin/me/get.js +29 -0
  551. package/dist/routes/api/admin/me/get.js.map +1 -0
  552. package/dist/routes/api/admin/users/index.d.ts +162 -0
  553. package/dist/routes/api/admin/users/index.d.ts.map +1 -0
  554. package/dist/routes/api/admin/users/index.js +166 -0
  555. package/dist/routes/api/admin/users/index.js.map +1 -0
  556. package/dist/routes/api/auth/2fa/methods/get.d.ts +14 -0
  557. package/dist/routes/api/auth/2fa/methods/get.d.ts.map +1 -0
  558. package/dist/routes/api/auth/2fa/methods/get.js +50 -0
  559. package/dist/routes/api/auth/2fa/methods/get.js.map +1 -0
  560. package/dist/routes/api/auth/accounts/get.d.ts +28 -0
  561. package/dist/routes/api/auth/accounts/get.d.ts.map +1 -0
  562. package/dist/routes/api/auth/accounts/get.js +49 -0
  563. package/dist/routes/api/auth/accounts/get.js.map +1 -0
  564. package/dist/routes/api/auth/accounts/remove.post.d.ts +30 -0
  565. package/dist/routes/api/auth/accounts/remove.post.d.ts.map +1 -0
  566. package/dist/routes/api/auth/accounts/remove.post.js +32 -0
  567. package/dist/routes/api/auth/accounts/remove.post.js.map +1 -0
  568. package/dist/routes/api/auth/accounts/select.post.d.ts +31 -0
  569. package/dist/routes/api/auth/accounts/select.post.d.ts.map +1 -0
  570. package/dist/routes/api/auth/accounts/select.post.js +26 -0
  571. package/dist/routes/api/auth/accounts/select.post.js.map +1 -0
  572. package/dist/routes/api/auth/email/resend/post.d.ts +22 -0
  573. package/dist/routes/api/auth/email/resend/post.d.ts.map +1 -0
  574. package/dist/routes/api/auth/email/resend/post.js +64 -0
  575. package/dist/routes/api/auth/email/resend/post.js.map +1 -0
  576. package/dist/routes/api/auth/email/verify/post.d.ts +30 -0
  577. package/dist/routes/api/auth/email/verify/post.d.ts.map +1 -0
  578. package/dist/routes/api/auth/email/verify/post.js +55 -0
  579. package/dist/routes/api/auth/email/verify/post.js.map +1 -0
  580. package/dist/routes/api/auth/index.d.ts +372 -0
  581. package/dist/routes/api/auth/index.d.ts.map +1 -0
  582. package/dist/routes/api/auth/index.js +33 -0
  583. package/dist/routes/api/auth/index.js.map +1 -0
  584. package/dist/routes/api/auth/login/post.d.ts +31 -0
  585. package/dist/routes/api/auth/login/post.d.ts.map +1 -0
  586. package/dist/routes/api/auth/login/post.js +75 -0
  587. package/dist/routes/api/auth/login/post.js.map +1 -0
  588. package/dist/routes/api/auth/logout/post.d.ts +14 -0
  589. package/dist/routes/api/auth/logout/post.d.ts.map +1 -0
  590. package/dist/routes/api/auth/logout/post.js +21 -0
  591. package/dist/routes/api/auth/logout/post.js.map +1 -0
  592. package/dist/routes/api/auth/passkey/options/post.d.ts +31 -0
  593. package/dist/routes/api/auth/passkey/options/post.d.ts.map +1 -0
  594. package/dist/routes/api/auth/passkey/options/post.js +43 -0
  595. package/dist/routes/api/auth/passkey/options/post.js.map +1 -0
  596. package/dist/routes/api/auth/passkey/verify/post.d.ts +42 -0
  597. package/dist/routes/api/auth/passkey/verify/post.d.ts.map +1 -0
  598. package/dist/routes/api/auth/passkey/verify/post.js +75 -0
  599. package/dist/routes/api/auth/passkey/verify/post.js.map +1 -0
  600. package/dist/routes/api/auth/password/forgot/post.d.ts +22 -0
  601. package/dist/routes/api/auth/password/forgot/post.d.ts.map +1 -0
  602. package/dist/routes/api/auth/password/forgot/post.js +72 -0
  603. package/dist/routes/api/auth/password/forgot/post.js.map +1 -0
  604. package/dist/routes/api/auth/password/reset/post.d.ts +19 -0
  605. package/dist/routes/api/auth/password/reset/post.d.ts.map +1 -0
  606. package/dist/routes/api/auth/password/reset/post.js +62 -0
  607. package/dist/routes/api/auth/password/reset/post.js.map +1 -0
  608. package/dist/routes/api/auth/register/post.d.ts +40 -0
  609. package/dist/routes/api/auth/register/post.d.ts.map +1 -0
  610. package/dist/routes/api/auth/register/post.js +95 -0
  611. package/dist/routes/api/auth/register/post.js.map +1 -0
  612. package/dist/routes/api/auth/totp/recovery/verify/post.d.ts +37 -0
  613. package/dist/routes/api/auth/totp/recovery/verify/post.d.ts.map +1 -0
  614. package/dist/routes/api/auth/totp/recovery/verify/post.js +68 -0
  615. package/dist/routes/api/auth/totp/recovery/verify/post.js.map +1 -0
  616. package/dist/routes/api/auth/totp/verify/post.d.ts +30 -0
  617. package/dist/routes/api/auth/totp/verify/post.d.ts.map +1 -0
  618. package/dist/routes/api/auth/totp/verify/post.js +59 -0
  619. package/dist/routes/api/auth/totp/verify/post.js.map +1 -0
  620. package/dist/routes/api/config/get.d.ts +76 -0
  621. package/dist/routes/api/config/get.d.ts.map +1 -0
  622. package/dist/routes/api/config/get.js +84 -0
  623. package/dist/routes/api/config/get.js.map +1 -0
  624. package/dist/routes/api/config/index.d.ts +76 -0
  625. package/dist/routes/api/config/index.d.ts.map +1 -0
  626. package/dist/routes/api/config/index.js +4 -0
  627. package/dist/routes/api/config/index.js.map +1 -0
  628. package/dist/routes/api/consent/get.d.ts +37 -0
  629. package/dist/routes/api/consent/get.d.ts.map +1 -0
  630. package/dist/routes/api/consent/get.js +73 -0
  631. package/dist/routes/api/consent/get.js.map +1 -0
  632. package/dist/routes/api/consent/index.d.ts +65 -0
  633. package/dist/routes/api/consent/index.d.ts.map +1 -0
  634. package/dist/routes/api/consent/index.js +7 -0
  635. package/dist/routes/api/consent/index.js.map +1 -0
  636. package/dist/routes/api/consent/post.d.ts +44 -0
  637. package/dist/routes/api/consent/post.d.ts.map +1 -0
  638. package/dist/routes/api/consent/post.js +286 -0
  639. package/dist/routes/api/consent/post.js.map +1 -0
  640. package/dist/routes/api/docs/get.d.ts +17 -0
  641. package/dist/routes/api/docs/get.d.ts.map +1 -0
  642. package/dist/routes/api/docs/get.js +19 -0
  643. package/dist/routes/api/docs/get.js.map +1 -0
  644. package/dist/routes/api/docs/index.d.ts +12 -0
  645. package/dist/routes/api/docs/index.d.ts.map +1 -0
  646. package/dist/routes/api/docs/index.js +4 -0
  647. package/dist/routes/api/docs/index.js.map +1 -0
  648. package/dist/routes/api/health/get.d.ts +36 -0
  649. package/dist/routes/api/health/get.d.ts.map +1 -0
  650. package/dist/routes/api/health/get.js +64 -0
  651. package/dist/routes/api/health/get.js.map +1 -0
  652. package/dist/routes/api/health/index.d.ts +66 -0
  653. package/dist/routes/api/health/index.d.ts.map +1 -0
  654. package/dist/routes/api/health/index.js +9 -0
  655. package/dist/routes/api/health/index.js.map +1 -0
  656. package/dist/routes/api/health/live/get.d.ts +20 -0
  657. package/dist/routes/api/health/live/get.d.ts.map +1 -0
  658. package/dist/routes/api/health/live/get.js +28 -0
  659. package/dist/routes/api/health/live/get.js.map +1 -0
  660. package/dist/routes/api/health/ready/get.d.ts +35 -0
  661. package/dist/routes/api/health/ready/get.d.ts.map +1 -0
  662. package/dist/routes/api/health/ready/get.js +60 -0
  663. package/dist/routes/api/health/ready/get.js.map +1 -0
  664. package/dist/routes/api/index.d.ts +1286 -0
  665. package/dist/routes/api/index.d.ts.map +1 -0
  666. package/dist/routes/api/index.js +21 -0
  667. package/dist/routes/api/index.js.map +1 -0
  668. package/dist/routes/api/oauth/_provider/authorize/get.d.ts +21 -0
  669. package/dist/routes/api/oauth/_provider/authorize/get.d.ts.map +1 -0
  670. package/dist/routes/api/oauth/_provider/authorize/get.js +72 -0
  671. package/dist/routes/api/oauth/_provider/authorize/get.js.map +1 -0
  672. package/dist/routes/api/oauth/_provider/callback/get.d.ts +42 -0
  673. package/dist/routes/api/oauth/_provider/callback/get.d.ts.map +1 -0
  674. package/dist/routes/api/oauth/_provider/callback/get.js +146 -0
  675. package/dist/routes/api/oauth/_provider/callback/get.js.map +1 -0
  676. package/dist/routes/api/oauth/_provider/callback/post.d.ts +42 -0
  677. package/dist/routes/api/oauth/_provider/callback/post.d.ts.map +1 -0
  678. package/dist/routes/api/oauth/_provider/callback/post.js +178 -0
  679. package/dist/routes/api/oauth/_provider/callback/post.js.map +1 -0
  680. package/dist/routes/api/oauth/_provider/delete.d.ts +18 -0
  681. package/dist/routes/api/oauth/_provider/delete.d.ts.map +1 -0
  682. package/dist/routes/api/oauth/_provider/delete.js +62 -0
  683. package/dist/routes/api/oauth/_provider/delete.js.map +1 -0
  684. package/dist/routes/api/oauth/authorization-context/get.d.ts +38 -0
  685. package/dist/routes/api/oauth/authorization-context/get.d.ts.map +1 -0
  686. package/dist/routes/api/oauth/authorization-context/get.js +70 -0
  687. package/dist/routes/api/oauth/authorization-context/get.js.map +1 -0
  688. package/dist/routes/api/oauth/index.d.ts +142 -0
  689. package/dist/routes/api/oauth/index.d.ts.map +1 -0
  690. package/dist/routes/api/oauth/index.js +13 -0
  691. package/dist/routes/api/oauth/index.js.map +1 -0
  692. package/dist/routes/api/terms/consent/post.d.ts +29 -0
  693. package/dist/routes/api/terms/consent/post.d.ts.map +1 -0
  694. package/dist/routes/api/terms/consent/post.js +111 -0
  695. package/dist/routes/api/terms/consent/post.js.map +1 -0
  696. package/dist/routes/api/terms/get.d.ts +40 -0
  697. package/dist/routes/api/terms/get.d.ts.map +1 -0
  698. package/dist/routes/api/terms/get.js +53 -0
  699. package/dist/routes/api/terms/get.js.map +1 -0
  700. package/dist/routes/api/terms/index.d.ts +55 -0
  701. package/dist/routes/api/terms/index.d.ts.map +1 -0
  702. package/dist/routes/api/terms/index.js +7 -0
  703. package/dist/routes/api/terms/index.js.map +1 -0
  704. package/dist/routes/api/user/delete.d.ts +21 -0
  705. package/dist/routes/api/user/delete.d.ts.map +1 -0
  706. package/dist/routes/api/user/delete.js +89 -0
  707. package/dist/routes/api/user/delete.js.map +1 -0
  708. package/dist/routes/api/user/index.d.ts +337 -0
  709. package/dist/routes/api/user/index.d.ts.map +1 -0
  710. package/dist/routes/api/user/index.js +35 -0
  711. package/dist/routes/api/user/index.js.map +1 -0
  712. package/dist/routes/api/user/oauth-accounts/get.d.ts +23 -0
  713. package/dist/routes/api/user/oauth-accounts/get.d.ts.map +1 -0
  714. package/dist/routes/api/user/oauth-accounts/get.js +58 -0
  715. package/dist/routes/api/user/oauth-accounts/get.js.map +1 -0
  716. package/dist/routes/api/user/passkeys/_id/delete.d.ts +18 -0
  717. package/dist/routes/api/user/passkeys/_id/delete.d.ts.map +1 -0
  718. package/dist/routes/api/user/passkeys/_id/delete.js +87 -0
  719. package/dist/routes/api/user/passkeys/_id/delete.js.map +1 -0
  720. package/dist/routes/api/user/passkeys/_id/patch.d.ts +22 -0
  721. package/dist/routes/api/user/passkeys/_id/patch.d.ts.map +1 -0
  722. package/dist/routes/api/user/passkeys/_id/patch.js +64 -0
  723. package/dist/routes/api/user/passkeys/_id/patch.js.map +1 -0
  724. package/dist/routes/api/user/passkeys/get.d.ts +21 -0
  725. package/dist/routes/api/user/passkeys/get.d.ts.map +1 -0
  726. package/dist/routes/api/user/passkeys/get.js +52 -0
  727. package/dist/routes/api/user/passkeys/get.js.map +1 -0
  728. package/dist/routes/api/user/passkeys/register/options/post.d.ts +55 -0
  729. package/dist/routes/api/user/passkeys/register/options/post.d.ts.map +1 -0
  730. package/dist/routes/api/user/passkeys/register/options/post.js +74 -0
  731. package/dist/routes/api/user/passkeys/register/options/post.js.map +1 -0
  732. package/dist/routes/api/user/passkeys/register/verify/post.d.ts +51 -0
  733. package/dist/routes/api/user/passkeys/register/verify/post.d.ts.map +1 -0
  734. package/dist/routes/api/user/passkeys/register/verify/post.js +95 -0
  735. package/dist/routes/api/user/passkeys/register/verify/post.js.map +1 -0
  736. package/dist/routes/api/user/password/delete.d.ts +23 -0
  737. package/dist/routes/api/user/password/delete.d.ts.map +1 -0
  738. package/dist/routes/api/user/password/delete.js +78 -0
  739. package/dist/routes/api/user/password/delete.js.map +1 -0
  740. package/dist/routes/api/user/password/post.d.ts +23 -0
  741. package/dist/routes/api/user/password/post.d.ts.map +1 -0
  742. package/dist/routes/api/user/password/post.js +81 -0
  743. package/dist/routes/api/user/password/post.js.map +1 -0
  744. package/dist/routes/api/user/password/put.d.ts +24 -0
  745. package/dist/routes/api/user/password/put.d.ts.map +1 -0
  746. package/dist/routes/api/user/password/put.js +74 -0
  747. package/dist/routes/api/user/password/put.js.map +1 -0
  748. package/dist/routes/api/user/session/get.d.ts +33 -0
  749. package/dist/routes/api/user/session/get.d.ts.map +1 -0
  750. package/dist/routes/api/user/session/get.js +36 -0
  751. package/dist/routes/api/user/session/get.js.map +1 -0
  752. package/dist/routes/api/user/totp/confirm/post.d.ts +33 -0
  753. package/dist/routes/api/user/totp/confirm/post.d.ts.map +1 -0
  754. package/dist/routes/api/user/totp/confirm/post.js +73 -0
  755. package/dist/routes/api/user/totp/confirm/post.js.map +1 -0
  756. package/dist/routes/api/user/totp/delete.d.ts +23 -0
  757. package/dist/routes/api/user/totp/delete.d.ts.map +1 -0
  758. package/dist/routes/api/user/totp/delete.js +74 -0
  759. package/dist/routes/api/user/totp/delete.js.map +1 -0
  760. package/dist/routes/api/user/totp/recovery/regenerate/post.d.ts +18 -0
  761. package/dist/routes/api/user/totp/recovery/regenerate/post.d.ts.map +1 -0
  762. package/dist/routes/api/user/totp/recovery/regenerate/post.js +54 -0
  763. package/dist/routes/api/user/totp/recovery/regenerate/post.js.map +1 -0
  764. package/dist/routes/api/user/totp/setup/post.d.ts +22 -0
  765. package/dist/routes/api/user/totp/setup/post.d.ts.map +1 -0
  766. package/dist/routes/api/user/totp/setup/post.js +82 -0
  767. package/dist/routes/api/user/totp/setup/post.js.map +1 -0
  768. package/dist/routes/api/user/totp/verify/post.d.ts +23 -0
  769. package/dist/routes/api/user/totp/verify/post.d.ts.map +1 -0
  770. package/dist/routes/api/user/totp/verify/post.js +71 -0
  771. package/dist/routes/api/user/totp/verify/post.js.map +1 -0
  772. package/dist/routes/index.d.ts +1591 -0
  773. package/dist/routes/index.d.ts.map +1 -0
  774. package/dist/routes/index.js +9 -0
  775. package/dist/routes/index.js.map +1 -0
  776. package/dist/routes/oauth/.well-known/jwks/get.d.ts +24 -0
  777. package/dist/routes/oauth/.well-known/jwks/get.d.ts.map +1 -0
  778. package/dist/routes/oauth/.well-known/jwks/get.js +41 -0
  779. package/dist/routes/oauth/.well-known/jwks/get.js.map +1 -0
  780. package/dist/routes/oauth/.well-known/openid-configuration/get.d.ts +68 -0
  781. package/dist/routes/oauth/.well-known/openid-configuration/get.d.ts.map +1 -0
  782. package/dist/routes/oauth/.well-known/openid-configuration/get.js +193 -0
  783. package/dist/routes/oauth/.well-known/openid-configuration/get.js.map +1 -0
  784. package/dist/routes/oauth/authorize/get.d.ts +34 -0
  785. package/dist/routes/oauth/authorize/get.d.ts.map +1 -0
  786. package/dist/routes/oauth/authorize/get.js +179 -0
  787. package/dist/routes/oauth/authorize/get.js.map +1 -0
  788. package/dist/routes/oauth/client-auth.d.ts +10 -0
  789. package/dist/routes/oauth/client-auth.d.ts.map +1 -0
  790. package/dist/routes/oauth/client-auth.js +57 -0
  791. package/dist/routes/oauth/client-auth.js.map +1 -0
  792. package/dist/routes/oauth/cors.d.ts +9 -0
  793. package/dist/routes/oauth/cors.d.ts.map +1 -0
  794. package/dist/routes/oauth/cors.js +55 -0
  795. package/dist/routes/oauth/cors.js.map +1 -0
  796. package/dist/routes/oauth/device/get-post.d.ts +29 -0
  797. package/dist/routes/oauth/device/get-post.d.ts.map +1 -0
  798. package/dist/routes/oauth/device/get-post.js +73 -0
  799. package/dist/routes/oauth/device/get-post.js.map +1 -0
  800. package/dist/routes/oauth/device-authorization/post.d.ts +25 -0
  801. package/dist/routes/oauth/device-authorization/post.d.ts.map +1 -0
  802. package/dist/routes/oauth/device-authorization/post.js +89 -0
  803. package/dist/routes/oauth/device-authorization/post.js.map +1 -0
  804. package/dist/routes/oauth/end-session/get.d.ts +34 -0
  805. package/dist/routes/oauth/end-session/get.d.ts.map +1 -0
  806. package/dist/routes/oauth/end-session/get.js +83 -0
  807. package/dist/routes/oauth/end-session/get.js.map +1 -0
  808. package/dist/routes/oauth/index.d.ts +272 -0
  809. package/dist/routes/oauth/index.d.ts.map +1 -0
  810. package/dist/routes/oauth/index.js +25 -0
  811. package/dist/routes/oauth/index.js.map +1 -0
  812. package/dist/routes/oauth/introspect/post.d.ts +29 -0
  813. package/dist/routes/oauth/introspect/post.d.ts.map +1 -0
  814. package/dist/routes/oauth/introspect/post.js +104 -0
  815. package/dist/routes/oauth/introspect/post.js.map +1 -0
  816. package/dist/routes/oauth/revoke/post.d.ts +22 -0
  817. package/dist/routes/oauth/revoke/post.d.ts.map +1 -0
  818. package/dist/routes/oauth/revoke/post.js +104 -0
  819. package/dist/routes/oauth/revoke/post.js.map +1 -0
  820. package/dist/routes/oauth/token/post.d.ts +31 -0
  821. package/dist/routes/oauth/token/post.d.ts.map +1 -0
  822. package/dist/routes/oauth/token/post.js +171 -0
  823. package/dist/routes/oauth/token/post.js.map +1 -0
  824. package/dist/routes/oauth/userinfo/get.d.ts +35 -0
  825. package/dist/routes/oauth/userinfo/get.d.ts.map +1 -0
  826. package/dist/routes/oauth/userinfo/get.js +94 -0
  827. package/dist/routes/oauth/userinfo/get.js.map +1 -0
  828. package/dist/schemas/error.d.ts +2354 -0
  829. package/dist/schemas/error.d.ts.map +1 -0
  830. package/dist/schemas/error.js +174 -0
  831. package/dist/schemas/error.js.map +1 -0
  832. package/dist/schemas/field.d.ts +92 -0
  833. package/dist/schemas/field.d.ts.map +1 -0
  834. package/dist/schemas/field.js +183 -0
  835. package/dist/schemas/field.js.map +1 -0
  836. package/dist/schemas/header.d.ts +7 -0
  837. package/dist/schemas/header.d.ts.map +1 -0
  838. package/dist/schemas/header.js +11 -0
  839. package/dist/schemas/header.js.map +1 -0
  840. package/dist/schemas/oauth.d.ts +26 -0
  841. package/dist/schemas/oauth.d.ts.map +1 -0
  842. package/dist/schemas/oauth.js +51 -0
  843. package/dist/schemas/oauth.js.map +1 -0
  844. package/dist/schemas/provider.d.ts +7 -0
  845. package/dist/schemas/provider.d.ts.map +1 -0
  846. package/dist/schemas/provider.js +31 -0
  847. package/dist/schemas/provider.js.map +1 -0
  848. package/dist/schemas/response.d.ts +678 -0
  849. package/dist/schemas/response.d.ts.map +1 -0
  850. package/dist/schemas/response.js +642 -0
  851. package/dist/schemas/response.js.map +1 -0
  852. package/dist/schemas/terms.d.ts +93 -0
  853. package/dist/schemas/terms.d.ts.map +1 -0
  854. package/dist/schemas/terms.js +109 -0
  855. package/dist/schemas/terms.js.map +1 -0
  856. package/dist/seeders/config.seeder.d.ts +23 -0
  857. package/dist/seeders/config.seeder.d.ts.map +1 -0
  858. package/dist/seeders/config.seeder.js +258 -0
  859. package/dist/seeders/config.seeder.js.map +1 -0
  860. package/dist/services/account-selection.service.d.ts +52 -0
  861. package/dist/services/account-selection.service.d.ts.map +1 -0
  862. package/dist/services/account-selection.service.js +120 -0
  863. package/dist/services/account-selection.service.js.map +1 -0
  864. package/dist/services/cleanup.service.d.ts +166 -0
  865. package/dist/services/cleanup.service.d.ts.map +1 -0
  866. package/dist/services/cleanup.service.js +605 -0
  867. package/dist/services/cleanup.service.js.map +1 -0
  868. package/dist/services/container.d.ts +229 -0
  869. package/dist/services/container.d.ts.map +1 -0
  870. package/dist/services/container.js +82 -0
  871. package/dist/services/container.js.map +1 -0
  872. package/dist/services/email.service.d.ts +69 -0
  873. package/dist/services/email.service.d.ts.map +1 -0
  874. package/dist/services/email.service.js +164 -0
  875. package/dist/services/email.service.js.map +1 -0
  876. package/dist/services/jwt.service.d.ts +331 -0
  877. package/dist/services/jwt.service.d.ts.map +1 -0
  878. package/dist/services/jwt.service.js +571 -0
  879. package/dist/services/jwt.service.js.map +1 -0
  880. package/dist/services/mikro.service.d.ts +49 -0
  881. package/dist/services/mikro.service.d.ts.map +1 -0
  882. package/dist/services/mikro.service.js +77 -0
  883. package/dist/services/mikro.service.js.map +1 -0
  884. package/dist/services/oauth-authorize.service.d.ts +144 -0
  885. package/dist/services/oauth-authorize.service.d.ts.map +1 -0
  886. package/dist/services/oauth-authorize.service.js +808 -0
  887. package/dist/services/oauth-authorize.service.js.map +1 -0
  888. package/dist/services/oauth-client.service.d.ts +44 -0
  889. package/dist/services/oauth-client.service.d.ts.map +1 -0
  890. package/dist/services/oauth-client.service.js +128 -0
  891. package/dist/services/oauth-client.service.js.map +1 -0
  892. package/dist/services/oauth-connect.service.d.ts +180 -0
  893. package/dist/services/oauth-connect.service.d.ts.map +1 -0
  894. package/dist/services/oauth-connect.service.js +730 -0
  895. package/dist/services/oauth-connect.service.js.map +1 -0
  896. package/dist/services/oauth-token.service.d.ts +180 -0
  897. package/dist/services/oauth-token.service.d.ts.map +1 -0
  898. package/dist/services/oauth-token.service.js +565 -0
  899. package/dist/services/oauth-token.service.js.map +1 -0
  900. package/dist/services/passkey.service.d.ts +73 -0
  901. package/dist/services/passkey.service.d.ts.map +1 -0
  902. package/dist/services/passkey.service.js +207 -0
  903. package/dist/services/passkey.service.js.map +1 -0
  904. package/dist/services/password-auth.service.d.ts +24 -0
  905. package/dist/services/password-auth.service.d.ts.map +1 -0
  906. package/dist/services/password-auth.service.js +87 -0
  907. package/dist/services/password-auth.service.js.map +1 -0
  908. package/dist/services/password-reset.service.d.ts +31 -0
  909. package/dist/services/password-reset.service.d.ts.map +1 -0
  910. package/dist/services/password-reset.service.js +54 -0
  911. package/dist/services/password-reset.service.js.map +1 -0
  912. package/dist/services/scheduler.service.d.ts +20 -0
  913. package/dist/services/scheduler.service.d.ts.map +1 -0
  914. package/dist/services/scheduler.service.js +85 -0
  915. package/dist/services/scheduler.service.js.map +1 -0
  916. package/dist/services/security.service.d.ts +17 -0
  917. package/dist/services/security.service.d.ts.map +1 -0
  918. package/dist/services/security.service.js +84 -0
  919. package/dist/services/security.service.js.map +1 -0
  920. package/dist/services/terms.service.d.ts +131 -0
  921. package/dist/services/terms.service.d.ts.map +1 -0
  922. package/dist/services/terms.service.js +210 -0
  923. package/dist/services/terms.service.js.map +1 -0
  924. package/dist/services/totp.service.d.ts +86 -0
  925. package/dist/services/totp.service.d.ts.map +1 -0
  926. package/dist/services/totp.service.js +244 -0
  927. package/dist/services/totp.service.js.map +1 -0
  928. package/dist/services/user-consent.service.d.ts +35 -0
  929. package/dist/services/user-consent.service.d.ts.map +1 -0
  930. package/dist/services/user-consent.service.js +45 -0
  931. package/dist/services/user-consent.service.js.map +1 -0
  932. package/dist/services/user.service.d.ts +87 -0
  933. package/dist/services/user.service.d.ts.map +1 -0
  934. package/dist/services/user.service.js +280 -0
  935. package/dist/services/user.service.js.map +1 -0
  936. package/package.json +249 -0
  937. package/public/assets/2fa-B5vLgDXQ.js +2 -0
  938. package/public/assets/2fa-B5vLgDXQ.js.map +1 -0
  939. package/public/assets/2fa-BqsM_D-X.js +2 -0
  940. package/public/assets/2fa-BqsM_D-X.js.map +1 -0
  941. package/public/assets/2fa-C5vUVgr_.js +2 -0
  942. package/public/assets/2fa-C5vUVgr_.js.map +1 -0
  943. package/public/assets/2fa-CCOTIHDZ.js +2 -0
  944. package/public/assets/2fa-CCOTIHDZ.js.map +1 -0
  945. package/public/assets/DialogHandle-BmtK2pRn.js +2 -0
  946. package/public/assets/DialogHandle-BmtK2pRn.js.map +1 -0
  947. package/public/assets/FieldItemContext-BeNfhOsU.js +2 -0
  948. package/public/assets/FieldItemContext-BeNfhOsU.js.map +1 -0
  949. package/public/assets/admin-BPijkLw-.js +2 -0
  950. package/public/assets/admin-BPijkLw-.js.map +1 -0
  951. package/public/assets/admin-users-DvPbw1Vq.js +2 -0
  952. package/public/assets/admin-users-DvPbw1Vq.js.map +1 -0
  953. package/public/assets/alert-leqyvHOp.js +2 -0
  954. package/public/assets/alert-leqyvHOp.js.map +1 -0
  955. package/public/assets/auth-choice-row-BCGjuedo.js +2 -0
  956. package/public/assets/auth-choice-row-BCGjuedo.js.map +1 -0
  957. package/public/assets/auth-field-DD8kvl--.js +2 -0
  958. package/public/assets/auth-field-DD8kvl--.js.map +1 -0
  959. package/public/assets/auth-footer-Cz5ivsDc.js +2 -0
  960. package/public/assets/auth-footer-Cz5ivsDc.js.map +1 -0
  961. package/public/assets/auth-layout-VtpryDof.js +2 -0
  962. package/public/assets/auth-layout-VtpryDof.js.map +1 -0
  963. package/public/assets/auth-page-header-CIn2E4zI.js +2 -0
  964. package/public/assets/auth-page-header-CIn2E4zI.js.map +1 -0
  965. package/public/assets/authorization-context-banner-SOuBHWIb.js +2 -0
  966. package/public/assets/authorization-context-banner-SOuBHWIb.js.map +1 -0
  967. package/public/assets/avatar-BEQjf2x6.js +2 -0
  968. package/public/assets/avatar-BEQjf2x6.js.map +1 -0
  969. package/public/assets/badge-CsOfUji0.js +2 -0
  970. package/public/assets/badge-CsOfUji0.js.map +1 -0
  971. package/public/assets/checkbox-gdHnSFQ-.js +2 -0
  972. package/public/assets/checkbox-gdHnSFQ-.js.map +1 -0
  973. package/public/assets/chevron-right-CN0jUyV0.js +2 -0
  974. package/public/assets/chevron-right-CN0jUyV0.js.map +1 -0
  975. package/public/assets/circle-check-6QTLhwM_.js +2 -0
  976. package/public/assets/circle-check-6QTLhwM_.js.map +1 -0
  977. package/public/assets/config-DTQCUlfZ.js +2 -0
  978. package/public/assets/config-DTQCUlfZ.js.map +1 -0
  979. package/public/assets/consent-BqqFDdsr.js +2 -0
  980. package/public/assets/consent-BqqFDdsr.js.map +1 -0
  981. package/public/assets/consent-CfRbz2R7.js +2 -0
  982. package/public/assets/consent-CfRbz2R7.js.map +1 -0
  983. package/public/assets/createLucideIcon-BPpAIXR_.js +2 -0
  984. package/public/assets/createLucideIcon-BPpAIXR_.js.map +1 -0
  985. package/public/assets/email-C5vUVgr_.js +2 -0
  986. package/public/assets/email-C5vUVgr_.js.map +1 -0
  987. package/public/assets/email-CKKakxPJ.js +2 -0
  988. package/public/assets/email-CKKakxPJ.js.map +1 -0
  989. package/public/assets/error-BMXxpgfR.js +2 -0
  990. package/public/assets/error-BMXxpgfR.js.map +1 -0
  991. package/public/assets/field-Cn4H1CUj.js +3 -0
  992. package/public/assets/field-Cn4H1CUj.js.map +1 -0
  993. package/public/assets/fingerprint-pattern-DP62Vk8x.js +2 -0
  994. package/public/assets/fingerprint-pattern-DP62Vk8x.js.map +1 -0
  995. package/public/assets/forgot-C5vUVgr_.js +2 -0
  996. package/public/assets/forgot-C5vUVgr_.js.map +1 -0
  997. package/public/assets/forgot-rO9sByfV.js +2 -0
  998. package/public/assets/forgot-rO9sByfV.js.map +1 -0
  999. package/public/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2 +0 -0
  1000. package/public/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff +0 -0
  1001. package/public/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff +0 -0
  1002. package/public/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2 +0 -0
  1003. package/public/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff +0 -0
  1004. package/public/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2 +0 -0
  1005. package/public/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2 +0 -0
  1006. package/public/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff +0 -0
  1007. package/public/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2 +0 -0
  1008. package/public/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff +0 -0
  1009. package/public/assets/ibm-plex-sans-cyrillic-ext-wght-normal-d45eAU9y.woff2 +0 -0
  1010. package/public/assets/ibm-plex-sans-cyrillic-wght-normal-BAAhND-U.woff2 +0 -0
  1011. package/public/assets/ibm-plex-sans-greek-wght-normal-CmyJS8uq.woff2 +0 -0
  1012. package/public/assets/ibm-plex-sans-jp-10-400-normal-BLMYXIZq.woff2 +0 -0
  1013. package/public/assets/ibm-plex-sans-jp-10-400-normal-DJrewyrW.woff +0 -0
  1014. package/public/assets/ibm-plex-sans-jp-10-600-normal-B5S02aip.woff2 +0 -0
  1015. package/public/assets/ibm-plex-sans-jp-10-600-normal-DP69BzJV.woff +0 -0
  1016. package/public/assets/ibm-plex-sans-jp-10-700-normal-9JfFFKCo.woff +0 -0
  1017. package/public/assets/ibm-plex-sans-jp-10-700-normal-Blnt0RhT.woff2 +0 -0
  1018. package/public/assets/ibm-plex-sans-jp-100-400-normal-4_aXP0Hy.woff2 +0 -0
  1019. package/public/assets/ibm-plex-sans-jp-100-400-normal-DsMZ2scz.woff +0 -0
  1020. package/public/assets/ibm-plex-sans-jp-100-600-normal-Bolb9iqL.woff2 +0 -0
  1021. package/public/assets/ibm-plex-sans-jp-100-600-normal-nIl-leH5.woff +0 -0
  1022. package/public/assets/ibm-plex-sans-jp-100-700-normal-Bkd0xED8.woff +0 -0
  1023. package/public/assets/ibm-plex-sans-jp-100-700-normal-CvaNbDMd.woff2 +0 -0
  1024. package/public/assets/ibm-plex-sans-jp-101-400-normal-DoWmZlZj.woff +0 -0
  1025. package/public/assets/ibm-plex-sans-jp-101-400-normal-y2nxydha.woff2 +0 -0
  1026. package/public/assets/ibm-plex-sans-jp-101-600-normal-BKchJvlk.woff2 +0 -0
  1027. package/public/assets/ibm-plex-sans-jp-101-600-normal-BrpHYkNm.woff +0 -0
  1028. package/public/assets/ibm-plex-sans-jp-101-700-normal-CVueR0Vp.woff2 +0 -0
  1029. package/public/assets/ibm-plex-sans-jp-101-700-normal-DJ1MIwHY.woff +0 -0
  1030. package/public/assets/ibm-plex-sans-jp-102-400-normal-BQfFShQ1.woff2 +0 -0
  1031. package/public/assets/ibm-plex-sans-jp-102-400-normal-Ca0txE7W.woff +0 -0
  1032. package/public/assets/ibm-plex-sans-jp-102-600-normal-B1Puw4D2.woff2 +0 -0
  1033. package/public/assets/ibm-plex-sans-jp-102-600-normal-CUZjz5v8.woff +0 -0
  1034. package/public/assets/ibm-plex-sans-jp-102-700-normal-BkK1TRsE.woff2 +0 -0
  1035. package/public/assets/ibm-plex-sans-jp-102-700-normal-ZVcO00Fl.woff +0 -0
  1036. package/public/assets/ibm-plex-sans-jp-103-400-normal-DHwmA74W.woff +0 -0
  1037. package/public/assets/ibm-plex-sans-jp-103-400-normal-DNs9Omj-.woff2 +0 -0
  1038. package/public/assets/ibm-plex-sans-jp-103-600-normal-BW8Frffd.woff +0 -0
  1039. package/public/assets/ibm-plex-sans-jp-103-600-normal-tN_-CKym.woff2 +0 -0
  1040. package/public/assets/ibm-plex-sans-jp-103-700-normal-CXAkQppa.woff2 +0 -0
  1041. package/public/assets/ibm-plex-sans-jp-103-700-normal-DNgJaILb.woff +0 -0
  1042. package/public/assets/ibm-plex-sans-jp-104-400-normal-BmhZQdzl.woff +0 -0
  1043. package/public/assets/ibm-plex-sans-jp-104-400-normal-CuKiid_t.woff2 +0 -0
  1044. package/public/assets/ibm-plex-sans-jp-104-600-normal-2KjU-YTd.woff2 +0 -0
  1045. package/public/assets/ibm-plex-sans-jp-104-600-normal-Duw986jf.woff +0 -0
  1046. package/public/assets/ibm-plex-sans-jp-104-700-normal-CYzW5SnO.woff2 +0 -0
  1047. package/public/assets/ibm-plex-sans-jp-104-700-normal-Vn6i4czv.woff +0 -0
  1048. package/public/assets/ibm-plex-sans-jp-105-400-normal-BBf-_m9N.woff +0 -0
  1049. package/public/assets/ibm-plex-sans-jp-105-400-normal-CHWaGU9J.woff2 +0 -0
  1050. package/public/assets/ibm-plex-sans-jp-105-600-normal-CmUdXGK4.woff +0 -0
  1051. package/public/assets/ibm-plex-sans-jp-105-600-normal-Eel3dN7e.woff2 +0 -0
  1052. package/public/assets/ibm-plex-sans-jp-105-700-normal-Cv9j40LU.woff2 +0 -0
  1053. package/public/assets/ibm-plex-sans-jp-105-700-normal-DWwtLgxy.woff +0 -0
  1054. package/public/assets/ibm-plex-sans-jp-106-400-normal-CGlLvzZs.woff2 +0 -0
  1055. package/public/assets/ibm-plex-sans-jp-106-400-normal-foxE5hHG.woff +0 -0
  1056. package/public/assets/ibm-plex-sans-jp-106-600-normal-B1bzLzbH.woff2 +0 -0
  1057. package/public/assets/ibm-plex-sans-jp-106-600-normal-tHp1RYGF.woff +0 -0
  1058. package/public/assets/ibm-plex-sans-jp-106-700-normal-BtC5W1lQ.woff2 +0 -0
  1059. package/public/assets/ibm-plex-sans-jp-106-700-normal-DuUOTgvs.woff +0 -0
  1060. package/public/assets/ibm-plex-sans-jp-107-400-normal-2yW6cSNP.woff2 +0 -0
  1061. package/public/assets/ibm-plex-sans-jp-107-400-normal-Dh4QR9Sa.woff +0 -0
  1062. package/public/assets/ibm-plex-sans-jp-107-600-normal-3L-o-gNc.woff +0 -0
  1063. package/public/assets/ibm-plex-sans-jp-107-600-normal-JAonwJOj.woff2 +0 -0
  1064. package/public/assets/ibm-plex-sans-jp-107-700-normal-BPH5rI6C.woff +0 -0
  1065. package/public/assets/ibm-plex-sans-jp-107-700-normal-Cr7-iFW7.woff2 +0 -0
  1066. package/public/assets/ibm-plex-sans-jp-108-400-normal-BKXuaz7L.woff2 +0 -0
  1067. package/public/assets/ibm-plex-sans-jp-108-400-normal-CMeK7Yoj.woff +0 -0
  1068. package/public/assets/ibm-plex-sans-jp-108-600-normal-9ormcCnp.woff +0 -0
  1069. package/public/assets/ibm-plex-sans-jp-108-600-normal-CIZc2z7F.woff2 +0 -0
  1070. package/public/assets/ibm-plex-sans-jp-108-700-normal-BQqq_N37.woff +0 -0
  1071. package/public/assets/ibm-plex-sans-jp-108-700-normal-DKrl9gDv.woff2 +0 -0
  1072. package/public/assets/ibm-plex-sans-jp-109-400-normal-BYkYsUMr.woff +0 -0
  1073. package/public/assets/ibm-plex-sans-jp-109-400-normal-DLZ5N3wZ.woff2 +0 -0
  1074. package/public/assets/ibm-plex-sans-jp-109-600-normal-DgvmKVfh.woff +0 -0
  1075. package/public/assets/ibm-plex-sans-jp-109-600-normal-J_8d2uPX.woff2 +0 -0
  1076. package/public/assets/ibm-plex-sans-jp-109-700-normal-BKzoJI_l.woff +0 -0
  1077. package/public/assets/ibm-plex-sans-jp-109-700-normal-CgGmrF-h.woff2 +0 -0
  1078. package/public/assets/ibm-plex-sans-jp-11-400-normal-C0WskPfy.woff2 +0 -0
  1079. package/public/assets/ibm-plex-sans-jp-11-400-normal-D4F8GONb.woff +0 -0
  1080. package/public/assets/ibm-plex-sans-jp-11-600-normal-HVxl9urI.woff2 +0 -0
  1081. package/public/assets/ibm-plex-sans-jp-11-600-normal-U3d7dgox.woff +0 -0
  1082. package/public/assets/ibm-plex-sans-jp-11-700-normal-B_TMqNrG.woff +0 -0
  1083. package/public/assets/ibm-plex-sans-jp-11-700-normal-DUhgBhd7.woff2 +0 -0
  1084. package/public/assets/ibm-plex-sans-jp-110-400-normal-BiGMHdAV.woff2 +0 -0
  1085. package/public/assets/ibm-plex-sans-jp-110-400-normal-CWciHSky.woff +0 -0
  1086. package/public/assets/ibm-plex-sans-jp-110-600-normal-BXI508QN.woff2 +0 -0
  1087. package/public/assets/ibm-plex-sans-jp-110-600-normal-C3nYbUvy.woff +0 -0
  1088. package/public/assets/ibm-plex-sans-jp-110-700-normal-A9EL87rF.woff2 +0 -0
  1089. package/public/assets/ibm-plex-sans-jp-110-700-normal-DjakDWxK.woff +0 -0
  1090. package/public/assets/ibm-plex-sans-jp-111-400-normal-36IKJEvJ.woff +0 -0
  1091. package/public/assets/ibm-plex-sans-jp-111-400-normal-DwkaZ2wL.woff2 +0 -0
  1092. package/public/assets/ibm-plex-sans-jp-111-600-normal-B0FD3VdV.woff +0 -0
  1093. package/public/assets/ibm-plex-sans-jp-111-600-normal-DjZCOVOv.woff2 +0 -0
  1094. package/public/assets/ibm-plex-sans-jp-111-700-normal-B2j03kCB.woff2 +0 -0
  1095. package/public/assets/ibm-plex-sans-jp-111-700-normal-Dv5sal4h.woff +0 -0
  1096. package/public/assets/ibm-plex-sans-jp-112-400-normal-DD55zx92.woff +0 -0
  1097. package/public/assets/ibm-plex-sans-jp-112-400-normal-DpWOC24h.woff2 +0 -0
  1098. package/public/assets/ibm-plex-sans-jp-112-600-normal-BkM4GSUi.woff2 +0 -0
  1099. package/public/assets/ibm-plex-sans-jp-112-600-normal-C2q6NvAJ.woff +0 -0
  1100. package/public/assets/ibm-plex-sans-jp-112-700-normal-Ci_Zf1oH.woff +0 -0
  1101. package/public/assets/ibm-plex-sans-jp-112-700-normal-Fyn9YqrR.woff2 +0 -0
  1102. package/public/assets/ibm-plex-sans-jp-113-400-normal-C-SwPUxy.woff2 +0 -0
  1103. package/public/assets/ibm-plex-sans-jp-113-400-normal-ngLrg9Ph.woff +0 -0
  1104. package/public/assets/ibm-plex-sans-jp-113-600-normal-FVXa1K7W.woff2 +0 -0
  1105. package/public/assets/ibm-plex-sans-jp-113-600-normal-pSsmDa5a.woff +0 -0
  1106. package/public/assets/ibm-plex-sans-jp-113-700-normal-CmNR_-6d.woff2 +0 -0
  1107. package/public/assets/ibm-plex-sans-jp-113-700-normal-kzCap4I7.woff +0 -0
  1108. package/public/assets/ibm-plex-sans-jp-114-400-normal-D64L80iO.woff2 +0 -0
  1109. package/public/assets/ibm-plex-sans-jp-114-400-normal-DkNQ39Bm.woff +0 -0
  1110. package/public/assets/ibm-plex-sans-jp-114-600-normal-CfAYQkvR.woff +0 -0
  1111. package/public/assets/ibm-plex-sans-jp-114-600-normal-DradD0b_.woff2 +0 -0
  1112. package/public/assets/ibm-plex-sans-jp-114-700-normal-CXZm0WJV.woff +0 -0
  1113. package/public/assets/ibm-plex-sans-jp-114-700-normal-DSXuAVj8.woff2 +0 -0
  1114. package/public/assets/ibm-plex-sans-jp-115-400-normal-BA3oFlL7.woff +0 -0
  1115. package/public/assets/ibm-plex-sans-jp-115-400-normal-DGp_yQCO.woff2 +0 -0
  1116. package/public/assets/ibm-plex-sans-jp-115-600-normal-5l6N5_Bf.woff +0 -0
  1117. package/public/assets/ibm-plex-sans-jp-115-600-normal-Bf5qTwLg.woff2 +0 -0
  1118. package/public/assets/ibm-plex-sans-jp-115-700-normal-CCrS9Tpv.woff +0 -0
  1119. package/public/assets/ibm-plex-sans-jp-115-700-normal-DhiQdU1x.woff2 +0 -0
  1120. package/public/assets/ibm-plex-sans-jp-116-400-normal-BidJdmrW.woff +0 -0
  1121. package/public/assets/ibm-plex-sans-jp-116-400-normal-DcXtXIIt.woff2 +0 -0
  1122. package/public/assets/ibm-plex-sans-jp-116-600-normal-Bwb7m1tn.woff2 +0 -0
  1123. package/public/assets/ibm-plex-sans-jp-116-600-normal-DShPLUNp.woff +0 -0
  1124. package/public/assets/ibm-plex-sans-jp-116-700-normal-C1DXoU6t.woff2 +0 -0
  1125. package/public/assets/ibm-plex-sans-jp-116-700-normal-C2BwbuD6.woff +0 -0
  1126. package/public/assets/ibm-plex-sans-jp-117-400-normal-Bq_d-uLr.woff +0 -0
  1127. package/public/assets/ibm-plex-sans-jp-117-400-normal-hyG31T85.woff2 +0 -0
  1128. package/public/assets/ibm-plex-sans-jp-117-600-normal-CEeS0kan.woff +0 -0
  1129. package/public/assets/ibm-plex-sans-jp-117-600-normal-DJWr9iDJ.woff2 +0 -0
  1130. package/public/assets/ibm-plex-sans-jp-117-700-normal-C1ei5J70.woff2 +0 -0
  1131. package/public/assets/ibm-plex-sans-jp-117-700-normal-zPjtn9S1.woff +0 -0
  1132. package/public/assets/ibm-plex-sans-jp-118-400-normal-DFkHFeXA.woff2 +0 -0
  1133. package/public/assets/ibm-plex-sans-jp-118-400-normal-TSsLEGdp.woff +0 -0
  1134. package/public/assets/ibm-plex-sans-jp-118-600-normal-Cvx3jb5D.woff +0 -0
  1135. package/public/assets/ibm-plex-sans-jp-118-600-normal-o_AOMkHJ.woff2 +0 -0
  1136. package/public/assets/ibm-plex-sans-jp-118-700-normal-BRNin0K2.woff2 +0 -0
  1137. package/public/assets/ibm-plex-sans-jp-118-700-normal-DGkqcNAf.woff +0 -0
  1138. package/public/assets/ibm-plex-sans-jp-119-400-normal-BUYaH2_l.woff2 +0 -0
  1139. package/public/assets/ibm-plex-sans-jp-119-400-normal-aBgyJQOx.woff +0 -0
  1140. package/public/assets/ibm-plex-sans-jp-119-600-normal-55p1b1wa.woff +0 -0
  1141. package/public/assets/ibm-plex-sans-jp-119-600-normal-BTu0jZJ-.woff2 +0 -0
  1142. package/public/assets/ibm-plex-sans-jp-119-700-normal-3JOc_eI7.woff +0 -0
  1143. package/public/assets/ibm-plex-sans-jp-119-700-normal-BjmfPyZf.woff2 +0 -0
  1144. package/public/assets/ibm-plex-sans-jp-12-400-normal-BmG4MYox.woff +0 -0
  1145. package/public/assets/ibm-plex-sans-jp-12-400-normal-quRUVnCJ.woff2 +0 -0
  1146. package/public/assets/ibm-plex-sans-jp-12-600-normal-B-m8VoGm.woff2 +0 -0
  1147. package/public/assets/ibm-plex-sans-jp-12-600-normal-CxDfRaaH.woff +0 -0
  1148. package/public/assets/ibm-plex-sans-jp-12-700-normal-C3oRnDW6.woff2 +0 -0
  1149. package/public/assets/ibm-plex-sans-jp-12-700-normal-Dv1Y6qdB.woff +0 -0
  1150. package/public/assets/ibm-plex-sans-jp-13-400-normal-DBDHqw4h.woff2 +0 -0
  1151. package/public/assets/ibm-plex-sans-jp-13-400-normal-QmPj_vZd.woff +0 -0
  1152. package/public/assets/ibm-plex-sans-jp-13-600-normal-CedQxG0H.woff +0 -0
  1153. package/public/assets/ibm-plex-sans-jp-13-600-normal-CgJUuraA.woff2 +0 -0
  1154. package/public/assets/ibm-plex-sans-jp-13-700-normal-DNIRDidW.woff2 +0 -0
  1155. package/public/assets/ibm-plex-sans-jp-13-700-normal-DolJGsV8.woff +0 -0
  1156. package/public/assets/ibm-plex-sans-jp-14-400-normal-CP-jldkl.woff +0 -0
  1157. package/public/assets/ibm-plex-sans-jp-14-400-normal-DPGCrf4O.woff2 +0 -0
  1158. package/public/assets/ibm-plex-sans-jp-14-600-normal-36G4flWw.woff +0 -0
  1159. package/public/assets/ibm-plex-sans-jp-14-600-normal-aLRf_2tU.woff2 +0 -0
  1160. package/public/assets/ibm-plex-sans-jp-14-700-normal-CzLCWhzW.woff2 +0 -0
  1161. package/public/assets/ibm-plex-sans-jp-14-700-normal-IrHxc9AN.woff +0 -0
  1162. package/public/assets/ibm-plex-sans-jp-15-400-normal-D_ILNbWZ.woff2 +0 -0
  1163. package/public/assets/ibm-plex-sans-jp-15-400-normal-DhL4usAp.woff +0 -0
  1164. package/public/assets/ibm-plex-sans-jp-15-600-normal-CCiDkvZ0.woff +0 -0
  1165. package/public/assets/ibm-plex-sans-jp-15-600-normal-Cm8uzUfS.woff2 +0 -0
  1166. package/public/assets/ibm-plex-sans-jp-15-700-normal-CH_tD5KV.woff2 +0 -0
  1167. package/public/assets/ibm-plex-sans-jp-15-700-normal-qiD6EjpF.woff +0 -0
  1168. package/public/assets/ibm-plex-sans-jp-16-400-normal-CPpcNs7A.woff +0 -0
  1169. package/public/assets/ibm-plex-sans-jp-16-400-normal-DJJG1Tuz.woff2 +0 -0
  1170. package/public/assets/ibm-plex-sans-jp-16-600-normal-DN27F9tO.woff +0 -0
  1171. package/public/assets/ibm-plex-sans-jp-16-600-normal-DZNod9fx.woff2 +0 -0
  1172. package/public/assets/ibm-plex-sans-jp-16-700-normal-5x97iT4C.woff2 +0 -0
  1173. package/public/assets/ibm-plex-sans-jp-16-700-normal-Cjf1zCyl.woff +0 -0
  1174. package/public/assets/ibm-plex-sans-jp-17-400-normal-Cz201O_t.woff2 +0 -0
  1175. package/public/assets/ibm-plex-sans-jp-17-400-normal-Xd0EQnSI.woff +0 -0
  1176. package/public/assets/ibm-plex-sans-jp-17-600-normal-Dlo-tSr-.woff +0 -0
  1177. package/public/assets/ibm-plex-sans-jp-17-600-normal-GFEV0OtD.woff2 +0 -0
  1178. package/public/assets/ibm-plex-sans-jp-17-700-normal-CxMAaJ8J.woff +0 -0
  1179. package/public/assets/ibm-plex-sans-jp-17-700-normal-pN8BDQje.woff2 +0 -0
  1180. package/public/assets/ibm-plex-sans-jp-18-400-normal-BiRcNUnW.woff2 +0 -0
  1181. package/public/assets/ibm-plex-sans-jp-18-400-normal-DcRwXlcA.woff +0 -0
  1182. package/public/assets/ibm-plex-sans-jp-18-600-normal-DjoWpWpr.woff2 +0 -0
  1183. package/public/assets/ibm-plex-sans-jp-18-600-normal-ZWO03fli.woff +0 -0
  1184. package/public/assets/ibm-plex-sans-jp-18-700-normal-BRP-puz3.woff2 +0 -0
  1185. package/public/assets/ibm-plex-sans-jp-18-700-normal-C9acO00v.woff +0 -0
  1186. package/public/assets/ibm-plex-sans-jp-19-400-normal-BGI-mgYq.woff2 +0 -0
  1187. package/public/assets/ibm-plex-sans-jp-19-400-normal-CAilAALt.woff +0 -0
  1188. package/public/assets/ibm-plex-sans-jp-19-600-normal-DjYSyktj.woff2 +0 -0
  1189. package/public/assets/ibm-plex-sans-jp-19-600-normal-ce3oirTN.woff +0 -0
  1190. package/public/assets/ibm-plex-sans-jp-19-700-normal-D-Zw0iJQ.woff2 +0 -0
  1191. package/public/assets/ibm-plex-sans-jp-19-700-normal-DDYMc675.woff +0 -0
  1192. package/public/assets/ibm-plex-sans-jp-20-400-normal-2E5UN6VC.woff +0 -0
  1193. package/public/assets/ibm-plex-sans-jp-20-400-normal-BQfFM2B0.woff2 +0 -0
  1194. package/public/assets/ibm-plex-sans-jp-20-600-normal-CYRAtz-I.woff2 +0 -0
  1195. package/public/assets/ibm-plex-sans-jp-20-600-normal-DwptQupD.woff +0 -0
  1196. package/public/assets/ibm-plex-sans-jp-20-700-normal-80GIv_X2.woff +0 -0
  1197. package/public/assets/ibm-plex-sans-jp-20-700-normal-Ca_HRr3E.woff2 +0 -0
  1198. package/public/assets/ibm-plex-sans-jp-21-400-normal-BFnRtDEF.woff +0 -0
  1199. package/public/assets/ibm-plex-sans-jp-21-400-normal-Zr4ScQUF.woff2 +0 -0
  1200. package/public/assets/ibm-plex-sans-jp-21-600-normal-BA-omFPG.woff2 +0 -0
  1201. package/public/assets/ibm-plex-sans-jp-21-600-normal-CVckMbS4.woff +0 -0
  1202. package/public/assets/ibm-plex-sans-jp-21-700-normal-BPImLHVa.woff +0 -0
  1203. package/public/assets/ibm-plex-sans-jp-21-700-normal-CytBm2Nt.woff2 +0 -0
  1204. package/public/assets/ibm-plex-sans-jp-22-400-normal-IznGQDkP.woff2 +0 -0
  1205. package/public/assets/ibm-plex-sans-jp-22-400-normal-qTFopCxn.woff +0 -0
  1206. package/public/assets/ibm-plex-sans-jp-22-600-normal-BWt9cZAr.woff2 +0 -0
  1207. package/public/assets/ibm-plex-sans-jp-22-600-normal-DuqSwCFh.woff +0 -0
  1208. package/public/assets/ibm-plex-sans-jp-22-700-normal--3UpG_YA.woff2 +0 -0
  1209. package/public/assets/ibm-plex-sans-jp-22-700-normal-DnloFB68.woff +0 -0
  1210. package/public/assets/ibm-plex-sans-jp-23-400-normal-Bdkhc9Iw.woff2 +0 -0
  1211. package/public/assets/ibm-plex-sans-jp-23-400-normal-BtixcB0-.woff +0 -0
  1212. package/public/assets/ibm-plex-sans-jp-23-600-normal-Dq8e8WbN.woff +0 -0
  1213. package/public/assets/ibm-plex-sans-jp-23-600-normal-O2srJ8a2.woff2 +0 -0
  1214. package/public/assets/ibm-plex-sans-jp-23-700-normal-C-Wvz07b.woff2 +0 -0
  1215. package/public/assets/ibm-plex-sans-jp-23-700-normal-QWySKNit.woff +0 -0
  1216. package/public/assets/ibm-plex-sans-jp-24-400-normal-B3OOo0lL.woff +0 -0
  1217. package/public/assets/ibm-plex-sans-jp-24-400-normal-McxyvMnV.woff2 +0 -0
  1218. package/public/assets/ibm-plex-sans-jp-24-600-normal-A46asPGd.woff +0 -0
  1219. package/public/assets/ibm-plex-sans-jp-24-600-normal-CTyo1FsZ.woff2 +0 -0
  1220. package/public/assets/ibm-plex-sans-jp-24-700-normal-Ira2Rc5z.woff2 +0 -0
  1221. package/public/assets/ibm-plex-sans-jp-24-700-normal-dhK6LPCU.woff +0 -0
  1222. package/public/assets/ibm-plex-sans-jp-25-400-normal-BFxbWz5n.woff +0 -0
  1223. package/public/assets/ibm-plex-sans-jp-25-400-normal-DFuJhyl7.woff2 +0 -0
  1224. package/public/assets/ibm-plex-sans-jp-25-600-normal-B2RU3Dvp.woff +0 -0
  1225. package/public/assets/ibm-plex-sans-jp-25-600-normal-DJ9_bhYp.woff2 +0 -0
  1226. package/public/assets/ibm-plex-sans-jp-25-700-normal-6YS9BiKL.woff +0 -0
  1227. package/public/assets/ibm-plex-sans-jp-25-700-normal-CpbQwqpL.woff2 +0 -0
  1228. package/public/assets/ibm-plex-sans-jp-26-400-normal-DNzE_dbG.woff2 +0 -0
  1229. package/public/assets/ibm-plex-sans-jp-26-400-normal-D_cpF5EA.woff +0 -0
  1230. package/public/assets/ibm-plex-sans-jp-26-600-normal-ByYIbTSk.woff +0 -0
  1231. package/public/assets/ibm-plex-sans-jp-26-600-normal-Dblu0l-8.woff2 +0 -0
  1232. package/public/assets/ibm-plex-sans-jp-26-700-normal-B-a8fp43.woff2 +0 -0
  1233. package/public/assets/ibm-plex-sans-jp-26-700-normal-oM62RKsO.woff +0 -0
  1234. package/public/assets/ibm-plex-sans-jp-27-400-normal-CG_CPqz1.woff +0 -0
  1235. package/public/assets/ibm-plex-sans-jp-27-400-normal-c2jdwsOE.woff2 +0 -0
  1236. package/public/assets/ibm-plex-sans-jp-27-600-normal-3axrvVxa.woff +0 -0
  1237. package/public/assets/ibm-plex-sans-jp-27-600-normal-CffTHcnn.woff2 +0 -0
  1238. package/public/assets/ibm-plex-sans-jp-27-700-normal-CFbifBY3.woff +0 -0
  1239. package/public/assets/ibm-plex-sans-jp-27-700-normal-MrPgyLwW.woff2 +0 -0
  1240. package/public/assets/ibm-plex-sans-jp-28-400-normal-C5RxoJ3V.woff +0 -0
  1241. package/public/assets/ibm-plex-sans-jp-28-400-normal-DXIBRRx0.woff2 +0 -0
  1242. package/public/assets/ibm-plex-sans-jp-28-600-normal-BHA5xHG-.woff2 +0 -0
  1243. package/public/assets/ibm-plex-sans-jp-28-600-normal-t8w8Pigz.woff +0 -0
  1244. package/public/assets/ibm-plex-sans-jp-28-700-normal-CfJC1veY.woff2 +0 -0
  1245. package/public/assets/ibm-plex-sans-jp-28-700-normal-DuTXC6M7.woff +0 -0
  1246. package/public/assets/ibm-plex-sans-jp-29-400-normal-4EOJmPpr.woff +0 -0
  1247. package/public/assets/ibm-plex-sans-jp-29-400-normal-DPDbHGRJ.woff2 +0 -0
  1248. package/public/assets/ibm-plex-sans-jp-29-600-normal-Ca71NnU-.woff +0 -0
  1249. package/public/assets/ibm-plex-sans-jp-29-600-normal-jeFY9Hf_.woff2 +0 -0
  1250. package/public/assets/ibm-plex-sans-jp-29-700-normal-C11KYH68.woff2 +0 -0
  1251. package/public/assets/ibm-plex-sans-jp-29-700-normal-CzNKW3WB.woff +0 -0
  1252. package/public/assets/ibm-plex-sans-jp-3-400-normal-BpFIRrIG.woff +0 -0
  1253. package/public/assets/ibm-plex-sans-jp-3-400-normal-CSnRHPqi.woff2 +0 -0
  1254. package/public/assets/ibm-plex-sans-jp-3-600-normal-C7pAJQf3.woff +0 -0
  1255. package/public/assets/ibm-plex-sans-jp-3-600-normal-SFbjSSXG.woff2 +0 -0
  1256. package/public/assets/ibm-plex-sans-jp-3-700-normal-57H5kXpk.woff +0 -0
  1257. package/public/assets/ibm-plex-sans-jp-3-700-normal-BrLJmDFd.woff2 +0 -0
  1258. package/public/assets/ibm-plex-sans-jp-30-400-normal-CE7Y9E5I.woff2 +0 -0
  1259. package/public/assets/ibm-plex-sans-jp-30-400-normal-CkxUuY_J.woff +0 -0
  1260. package/public/assets/ibm-plex-sans-jp-30-600-normal-B2Z1u9V0.woff +0 -0
  1261. package/public/assets/ibm-plex-sans-jp-30-600-normal-BNiX9WYe.woff2 +0 -0
  1262. package/public/assets/ibm-plex-sans-jp-30-700-normal-BEFP-jPj.woff2 +0 -0
  1263. package/public/assets/ibm-plex-sans-jp-30-700-normal-BarKnue-.woff +0 -0
  1264. package/public/assets/ibm-plex-sans-jp-31-400-normal-CaOERqUu.woff2 +0 -0
  1265. package/public/assets/ibm-plex-sans-jp-31-400-normal-DQ8k7O-z.woff +0 -0
  1266. package/public/assets/ibm-plex-sans-jp-31-600-normal-ChsH3Xz1.woff +0 -0
  1267. package/public/assets/ibm-plex-sans-jp-31-600-normal-DfrgvMVe.woff2 +0 -0
  1268. package/public/assets/ibm-plex-sans-jp-31-700-normal-9QmoGV7n.woff2 +0 -0
  1269. package/public/assets/ibm-plex-sans-jp-31-700-normal-uPx24aJ3.woff +0 -0
  1270. package/public/assets/ibm-plex-sans-jp-32-400-normal-DCgv6PbD.woff +0 -0
  1271. package/public/assets/ibm-plex-sans-jp-32-400-normal-oBOpBx6K.woff2 +0 -0
  1272. package/public/assets/ibm-plex-sans-jp-32-600-normal-BVvFPwh-.woff +0 -0
  1273. package/public/assets/ibm-plex-sans-jp-32-600-normal-C6iWVt4P.woff2 +0 -0
  1274. package/public/assets/ibm-plex-sans-jp-32-700-normal-BrzljjIv.woff +0 -0
  1275. package/public/assets/ibm-plex-sans-jp-32-700-normal-Ck00YIbi.woff2 +0 -0
  1276. package/public/assets/ibm-plex-sans-jp-33-400-normal-7syfOPuJ.woff +0 -0
  1277. package/public/assets/ibm-plex-sans-jp-33-400-normal-CRgD0sTN.woff2 +0 -0
  1278. package/public/assets/ibm-plex-sans-jp-33-600-normal-6C8BpThh.woff +0 -0
  1279. package/public/assets/ibm-plex-sans-jp-33-600-normal-Di883cZY.woff2 +0 -0
  1280. package/public/assets/ibm-plex-sans-jp-33-700-normal-BocR-vpi.woff +0 -0
  1281. package/public/assets/ibm-plex-sans-jp-33-700-normal-CQH8I4uz.woff2 +0 -0
  1282. package/public/assets/ibm-plex-sans-jp-34-400-normal-CW90qVjA.woff +0 -0
  1283. package/public/assets/ibm-plex-sans-jp-34-400-normal-DteAo9_1.woff2 +0 -0
  1284. package/public/assets/ibm-plex-sans-jp-34-600-normal-BBai0ku9.woff +0 -0
  1285. package/public/assets/ibm-plex-sans-jp-34-600-normal-BUBreiOx.woff2 +0 -0
  1286. package/public/assets/ibm-plex-sans-jp-34-700-normal-BQMQzFvO.woff2 +0 -0
  1287. package/public/assets/ibm-plex-sans-jp-34-700-normal-BYKYx0HK.woff +0 -0
  1288. package/public/assets/ibm-plex-sans-jp-35-400-normal-_GHhCQ5l.woff2 +0 -0
  1289. package/public/assets/ibm-plex-sans-jp-35-400-normal-oyHCgG2o.woff +0 -0
  1290. package/public/assets/ibm-plex-sans-jp-35-600-normal-B3Re-brg.woff +0 -0
  1291. package/public/assets/ibm-plex-sans-jp-35-600-normal-DSSj8dPk.woff2 +0 -0
  1292. package/public/assets/ibm-plex-sans-jp-35-700-normal-BoDC0KzR.woff2 +0 -0
  1293. package/public/assets/ibm-plex-sans-jp-35-700-normal-CvQah7db.woff +0 -0
  1294. package/public/assets/ibm-plex-sans-jp-36-400-normal-BizbVEtQ.woff2 +0 -0
  1295. package/public/assets/ibm-plex-sans-jp-36-400-normal-D7gQSpeq.woff +0 -0
  1296. package/public/assets/ibm-plex-sans-jp-36-600-normal-BiBUOoTN.woff +0 -0
  1297. package/public/assets/ibm-plex-sans-jp-36-600-normal-CVgRkKvZ.woff2 +0 -0
  1298. package/public/assets/ibm-plex-sans-jp-36-700-normal-Cx600hZn.woff +0 -0
  1299. package/public/assets/ibm-plex-sans-jp-36-700-normal-Dxydenfw.woff2 +0 -0
  1300. package/public/assets/ibm-plex-sans-jp-37-400-normal-B-iV2FCz.woff +0 -0
  1301. package/public/assets/ibm-plex-sans-jp-37-400-normal-CrxhJitf.woff2 +0 -0
  1302. package/public/assets/ibm-plex-sans-jp-37-600-normal-56davMJK.woff +0 -0
  1303. package/public/assets/ibm-plex-sans-jp-37-600-normal-BMpyr2ZA.woff2 +0 -0
  1304. package/public/assets/ibm-plex-sans-jp-37-700-normal-Cr4qQ6-_.woff2 +0 -0
  1305. package/public/assets/ibm-plex-sans-jp-37-700-normal-D6fQD8s2.woff +0 -0
  1306. package/public/assets/ibm-plex-sans-jp-38-400-normal-D1Vp2bgS.woff2 +0 -0
  1307. package/public/assets/ibm-plex-sans-jp-38-400-normal-DH9qOlQO.woff +0 -0
  1308. package/public/assets/ibm-plex-sans-jp-38-600-normal-BtzFMeyM.woff +0 -0
  1309. package/public/assets/ibm-plex-sans-jp-38-600-normal-DgBl-sfZ.woff2 +0 -0
  1310. package/public/assets/ibm-plex-sans-jp-38-700-normal-BnkgwyNC.woff2 +0 -0
  1311. package/public/assets/ibm-plex-sans-jp-38-700-normal-DrLlCQdP.woff +0 -0
  1312. package/public/assets/ibm-plex-sans-jp-39-400-normal-D5wsbWuV.woff2 +0 -0
  1313. package/public/assets/ibm-plex-sans-jp-39-400-normal-Dk7rkHeG.woff +0 -0
  1314. package/public/assets/ibm-plex-sans-jp-39-600-normal-CGMVkPUQ.woff +0 -0
  1315. package/public/assets/ibm-plex-sans-jp-39-600-normal-D_kp1-X0.woff2 +0 -0
  1316. package/public/assets/ibm-plex-sans-jp-39-700-normal-ADsZ937l.woff2 +0 -0
  1317. package/public/assets/ibm-plex-sans-jp-39-700-normal-tkFC4Fme.woff +0 -0
  1318. package/public/assets/ibm-plex-sans-jp-4-400-normal-mGIBpTDA.woff +0 -0
  1319. package/public/assets/ibm-plex-sans-jp-4-600-normal-ItZEXAoj.woff +0 -0
  1320. package/public/assets/ibm-plex-sans-jp-4-700-normal-B2Sn8ODt.woff +0 -0
  1321. package/public/assets/ibm-plex-sans-jp-40-400-normal-DRF-ZkFr.woff2 +0 -0
  1322. package/public/assets/ibm-plex-sans-jp-40-400-normal-Dye9yGvg.woff +0 -0
  1323. package/public/assets/ibm-plex-sans-jp-40-600-normal-DD0bpqGF.woff2 +0 -0
  1324. package/public/assets/ibm-plex-sans-jp-40-600-normal-DSxToWDI.woff +0 -0
  1325. package/public/assets/ibm-plex-sans-jp-40-700-normal-D9qdrR16.woff +0 -0
  1326. package/public/assets/ibm-plex-sans-jp-40-700-normal-DJ9uBiDw.woff2 +0 -0
  1327. package/public/assets/ibm-plex-sans-jp-41-400-normal-BqAaxgfH.woff2 +0 -0
  1328. package/public/assets/ibm-plex-sans-jp-41-400-normal-CsmxKILz.woff +0 -0
  1329. package/public/assets/ibm-plex-sans-jp-41-600-normal-BQOZ4bZi.woff2 +0 -0
  1330. package/public/assets/ibm-plex-sans-jp-41-600-normal-Jx8Bp44x.woff +0 -0
  1331. package/public/assets/ibm-plex-sans-jp-41-700-normal-BGJMzr3_.woff2 +0 -0
  1332. package/public/assets/ibm-plex-sans-jp-41-700-normal-UuW3VIUX.woff +0 -0
  1333. package/public/assets/ibm-plex-sans-jp-42-400-normal-Bwv1VfH1.woff +0 -0
  1334. package/public/assets/ibm-plex-sans-jp-42-400-normal-Dl6WfOX3.woff2 +0 -0
  1335. package/public/assets/ibm-plex-sans-jp-42-600-normal-Bpb5tt9_.woff +0 -0
  1336. package/public/assets/ibm-plex-sans-jp-42-600-normal-DIFsJkow.woff2 +0 -0
  1337. package/public/assets/ibm-plex-sans-jp-42-700-normal-BSSeJztI.woff +0 -0
  1338. package/public/assets/ibm-plex-sans-jp-42-700-normal-DSVZ1AdV.woff2 +0 -0
  1339. package/public/assets/ibm-plex-sans-jp-43-400-normal-BWVo0zWK.woff2 +0 -0
  1340. package/public/assets/ibm-plex-sans-jp-43-400-normal-d-ngL4VK.woff +0 -0
  1341. package/public/assets/ibm-plex-sans-jp-43-600-normal-BQhDNXpW.woff2 +0 -0
  1342. package/public/assets/ibm-plex-sans-jp-43-600-normal-BcvVxmDS.woff +0 -0
  1343. package/public/assets/ibm-plex-sans-jp-43-700-normal-BzUW0Dn4.woff +0 -0
  1344. package/public/assets/ibm-plex-sans-jp-43-700-normal-DKxEyxqG.woff2 +0 -0
  1345. package/public/assets/ibm-plex-sans-jp-44-400-normal-C6WuUhoa.woff2 +0 -0
  1346. package/public/assets/ibm-plex-sans-jp-44-400-normal-Dpw9oVkY.woff +0 -0
  1347. package/public/assets/ibm-plex-sans-jp-44-600-normal-BAOsDDVH.woff2 +0 -0
  1348. package/public/assets/ibm-plex-sans-jp-44-600-normal-Bt-5iAy-.woff +0 -0
  1349. package/public/assets/ibm-plex-sans-jp-44-700-normal-CKy2WdQj.woff2 +0 -0
  1350. package/public/assets/ibm-plex-sans-jp-44-700-normal-DWwfiF2R.woff +0 -0
  1351. package/public/assets/ibm-plex-sans-jp-45-400-normal-B9Y_v3iL.woff2 +0 -0
  1352. package/public/assets/ibm-plex-sans-jp-45-400-normal-Cw08yPg4.woff +0 -0
  1353. package/public/assets/ibm-plex-sans-jp-45-600-normal-C3VBxVTw.woff2 +0 -0
  1354. package/public/assets/ibm-plex-sans-jp-45-600-normal-CPG32_M5.woff +0 -0
  1355. package/public/assets/ibm-plex-sans-jp-45-700-normal-B2EBYgsw.woff2 +0 -0
  1356. package/public/assets/ibm-plex-sans-jp-45-700-normal-CBBnYnrG.woff +0 -0
  1357. package/public/assets/ibm-plex-sans-jp-46-400-normal-Bo2fKdUV.woff2 +0 -0
  1358. package/public/assets/ibm-plex-sans-jp-46-400-normal-Dya4Xg3C.woff +0 -0
  1359. package/public/assets/ibm-plex-sans-jp-46-600-normal-BZxPnU9z.woff +0 -0
  1360. package/public/assets/ibm-plex-sans-jp-46-600-normal-BwyRFFoW.woff2 +0 -0
  1361. package/public/assets/ibm-plex-sans-jp-46-700-normal-BWHZA6Va.woff +0 -0
  1362. package/public/assets/ibm-plex-sans-jp-46-700-normal-DGQdaffJ.woff2 +0 -0
  1363. package/public/assets/ibm-plex-sans-jp-47-400-normal-BaRCXue3.woff2 +0 -0
  1364. package/public/assets/ibm-plex-sans-jp-47-400-normal-DWeXBY63.woff +0 -0
  1365. package/public/assets/ibm-plex-sans-jp-47-600-normal-BJMJyZ3V.woff2 +0 -0
  1366. package/public/assets/ibm-plex-sans-jp-47-600-normal-CyutRTf1.woff +0 -0
  1367. package/public/assets/ibm-plex-sans-jp-47-700-normal-N6twIXlf.woff +0 -0
  1368. package/public/assets/ibm-plex-sans-jp-47-700-normal-_dAzPdKJ.woff2 +0 -0
  1369. package/public/assets/ibm-plex-sans-jp-48-400-normal-JS-IrZBF.woff +0 -0
  1370. package/public/assets/ibm-plex-sans-jp-48-400-normal-ezIou-vd.woff2 +0 -0
  1371. package/public/assets/ibm-plex-sans-jp-48-600-normal-BKUm06v8.woff +0 -0
  1372. package/public/assets/ibm-plex-sans-jp-48-600-normal-SLeRHHzg.woff2 +0 -0
  1373. package/public/assets/ibm-plex-sans-jp-48-700-normal-B5gMlKVs.woff2 +0 -0
  1374. package/public/assets/ibm-plex-sans-jp-48-700-normal-DQ5H61GM.woff +0 -0
  1375. package/public/assets/ibm-plex-sans-jp-49-400-normal-BGMyUOoF.woff2 +0 -0
  1376. package/public/assets/ibm-plex-sans-jp-49-400-normal-CpOmgEj1.woff +0 -0
  1377. package/public/assets/ibm-plex-sans-jp-49-600-normal-DASryXO5.woff2 +0 -0
  1378. package/public/assets/ibm-plex-sans-jp-49-600-normal-DyDLcZM_.woff +0 -0
  1379. package/public/assets/ibm-plex-sans-jp-49-700-normal-C2pGRKdb.woff2 +0 -0
  1380. package/public/assets/ibm-plex-sans-jp-49-700-normal-dsyop0xt.woff +0 -0
  1381. package/public/assets/ibm-plex-sans-jp-5-400-normal-CUIc6NHY.woff2 +0 -0
  1382. package/public/assets/ibm-plex-sans-jp-5-400-normal-D2dVMMqj.woff +0 -0
  1383. package/public/assets/ibm-plex-sans-jp-5-600-normal-7tGyeWfE.woff2 +0 -0
  1384. package/public/assets/ibm-plex-sans-jp-5-600-normal-LSwIbfT4.woff +0 -0
  1385. package/public/assets/ibm-plex-sans-jp-5-700-normal-4pOvaKVD.woff2 +0 -0
  1386. package/public/assets/ibm-plex-sans-jp-5-700-normal-BdZNxX81.woff +0 -0
  1387. package/public/assets/ibm-plex-sans-jp-50-400-normal-DDJncqjC.woff +0 -0
  1388. package/public/assets/ibm-plex-sans-jp-50-400-normal-DU9yuSzL.woff2 +0 -0
  1389. package/public/assets/ibm-plex-sans-jp-50-600-normal-KlXN5ii8.woff +0 -0
  1390. package/public/assets/ibm-plex-sans-jp-50-600-normal-bZ0wMfTu.woff2 +0 -0
  1391. package/public/assets/ibm-plex-sans-jp-50-700-normal-C3Bon6kP.woff +0 -0
  1392. package/public/assets/ibm-plex-sans-jp-50-700-normal-CKBR3dTc.woff2 +0 -0
  1393. package/public/assets/ibm-plex-sans-jp-52-400-normal-B6ntzhez.woff +0 -0
  1394. package/public/assets/ibm-plex-sans-jp-52-400-normal-DxvfHPiZ.woff2 +0 -0
  1395. package/public/assets/ibm-plex-sans-jp-52-600-normal-CxAqcrGJ.woff +0 -0
  1396. package/public/assets/ibm-plex-sans-jp-52-600-normal-ofakrDYw.woff2 +0 -0
  1397. package/public/assets/ibm-plex-sans-jp-52-700-normal-Bfs6gmfs.woff +0 -0
  1398. package/public/assets/ibm-plex-sans-jp-52-700-normal-D9sJhzsn.woff2 +0 -0
  1399. package/public/assets/ibm-plex-sans-jp-53-400-normal-BNzLW3gK.woff2 +0 -0
  1400. package/public/assets/ibm-plex-sans-jp-53-400-normal-arm4ZLbG.woff +0 -0
  1401. package/public/assets/ibm-plex-sans-jp-53-600-normal-BYo95wdR.woff2 +0 -0
  1402. package/public/assets/ibm-plex-sans-jp-53-600-normal-CTWAZiwT.woff +0 -0
  1403. package/public/assets/ibm-plex-sans-jp-53-700-normal-7icOh9fn.woff2 +0 -0
  1404. package/public/assets/ibm-plex-sans-jp-53-700-normal-CXC3RG0Y.woff +0 -0
  1405. package/public/assets/ibm-plex-sans-jp-55-400-normal-CXMVQbir.woff +0 -0
  1406. package/public/assets/ibm-plex-sans-jp-55-400-normal-CgSa9olG.woff2 +0 -0
  1407. package/public/assets/ibm-plex-sans-jp-55-600-normal-5IjjJd2s.woff2 +0 -0
  1408. package/public/assets/ibm-plex-sans-jp-55-600-normal-Dp8k-UQr.woff +0 -0
  1409. package/public/assets/ibm-plex-sans-jp-55-700-normal-eDLHHM6r.woff +0 -0
  1410. package/public/assets/ibm-plex-sans-jp-55-700-normal-ecLDx596.woff2 +0 -0
  1411. package/public/assets/ibm-plex-sans-jp-56-400-normal-BImwtP9C.woff2 +0 -0
  1412. package/public/assets/ibm-plex-sans-jp-56-400-normal-BikO35BJ.woff +0 -0
  1413. package/public/assets/ibm-plex-sans-jp-56-600-normal-DsSHHMYs.woff2 +0 -0
  1414. package/public/assets/ibm-plex-sans-jp-56-600-normal-fFxOmumy.woff +0 -0
  1415. package/public/assets/ibm-plex-sans-jp-56-700-normal-Dg77fDuG.woff2 +0 -0
  1416. package/public/assets/ibm-plex-sans-jp-56-700-normal-DiUSRVIQ.woff +0 -0
  1417. package/public/assets/ibm-plex-sans-jp-58-400-normal-Iyqdz6U_.woff +0 -0
  1418. package/public/assets/ibm-plex-sans-jp-58-400-normal-jeWDsIkS.woff2 +0 -0
  1419. package/public/assets/ibm-plex-sans-jp-58-600-normal-Bma8ReWy.woff2 +0 -0
  1420. package/public/assets/ibm-plex-sans-jp-58-600-normal-D3LkCFqf.woff +0 -0
  1421. package/public/assets/ibm-plex-sans-jp-58-700-normal-BgsgXhin.woff +0 -0
  1422. package/public/assets/ibm-plex-sans-jp-58-700-normal-DQNvf_Pi.woff2 +0 -0
  1423. package/public/assets/ibm-plex-sans-jp-59-400-normal-CkeNzekL.woff +0 -0
  1424. package/public/assets/ibm-plex-sans-jp-59-400-normal-D7J9HacT.woff2 +0 -0
  1425. package/public/assets/ibm-plex-sans-jp-59-600-normal-B0Hs_yqp.woff +0 -0
  1426. package/public/assets/ibm-plex-sans-jp-59-600-normal-y8o2u47q.woff2 +0 -0
  1427. package/public/assets/ibm-plex-sans-jp-59-700-normal-BEPxXZmH.woff2 +0 -0
  1428. package/public/assets/ibm-plex-sans-jp-59-700-normal-CqOqqrqQ.woff +0 -0
  1429. package/public/assets/ibm-plex-sans-jp-6-400-normal-CK1rBi2w.woff2 +0 -0
  1430. package/public/assets/ibm-plex-sans-jp-6-400-normal-DQz22aVW.woff +0 -0
  1431. package/public/assets/ibm-plex-sans-jp-6-600-normal-Bgp388lR.woff2 +0 -0
  1432. package/public/assets/ibm-plex-sans-jp-6-600-normal-DZtAE4NN.woff +0 -0
  1433. package/public/assets/ibm-plex-sans-jp-6-700-normal-BFaRWvXD.woff +0 -0
  1434. package/public/assets/ibm-plex-sans-jp-6-700-normal-UVZzLgo1.woff2 +0 -0
  1435. package/public/assets/ibm-plex-sans-jp-60-400-normal-Bc0pWfYQ.woff2 +0 -0
  1436. package/public/assets/ibm-plex-sans-jp-60-400-normal-DU4X4cgu.woff +0 -0
  1437. package/public/assets/ibm-plex-sans-jp-60-600-normal-D22FGjEf.woff +0 -0
  1438. package/public/assets/ibm-plex-sans-jp-60-600-normal-DGaJXlcP.woff2 +0 -0
  1439. package/public/assets/ibm-plex-sans-jp-60-700-normal-B4sph3s0.woff2 +0 -0
  1440. package/public/assets/ibm-plex-sans-jp-60-700-normal-DBfqpTpp.woff +0 -0
  1441. package/public/assets/ibm-plex-sans-jp-61-400-normal-BTqxO8KS.woff2 +0 -0
  1442. package/public/assets/ibm-plex-sans-jp-61-400-normal-BZ_Lvmfb.woff +0 -0
  1443. package/public/assets/ibm-plex-sans-jp-61-600-normal-BkIPCguy.woff +0 -0
  1444. package/public/assets/ibm-plex-sans-jp-61-600-normal-D_Q2U_HY.woff2 +0 -0
  1445. package/public/assets/ibm-plex-sans-jp-61-700-normal-BkfJ-_O-.woff +0 -0
  1446. package/public/assets/ibm-plex-sans-jp-61-700-normal-CwN3DFq1.woff2 +0 -0
  1447. package/public/assets/ibm-plex-sans-jp-62-400-normal-CRZQtL4e.woff +0 -0
  1448. package/public/assets/ibm-plex-sans-jp-62-400-normal-DSLFRuBi.woff2 +0 -0
  1449. package/public/assets/ibm-plex-sans-jp-62-600-normal-CAFV2WS-.woff2 +0 -0
  1450. package/public/assets/ibm-plex-sans-jp-62-600-normal-DRBwH2wC.woff +0 -0
  1451. package/public/assets/ibm-plex-sans-jp-62-700-normal-D9oj9FbO.woff +0 -0
  1452. package/public/assets/ibm-plex-sans-jp-62-700-normal-gTii6YIK.woff2 +0 -0
  1453. package/public/assets/ibm-plex-sans-jp-63-400-normal-BCOcqFvH.woff +0 -0
  1454. package/public/assets/ibm-plex-sans-jp-63-400-normal-NWeXooWt.woff2 +0 -0
  1455. package/public/assets/ibm-plex-sans-jp-63-600-normal-Dwsde-Vo.woff2 +0 -0
  1456. package/public/assets/ibm-plex-sans-jp-63-600-normal-rFqEK_Cq.woff +0 -0
  1457. package/public/assets/ibm-plex-sans-jp-63-700-normal-B4li38vl.woff +0 -0
  1458. package/public/assets/ibm-plex-sans-jp-63-700-normal-DYsI6Aeh.woff2 +0 -0
  1459. package/public/assets/ibm-plex-sans-jp-64-400-normal-DjS9hHaA.woff +0 -0
  1460. package/public/assets/ibm-plex-sans-jp-64-400-normal-DplHNRWf.woff2 +0 -0
  1461. package/public/assets/ibm-plex-sans-jp-64-600-normal-8FGNeBVO.woff +0 -0
  1462. package/public/assets/ibm-plex-sans-jp-64-600-normal-BE-tQzc4.woff2 +0 -0
  1463. package/public/assets/ibm-plex-sans-jp-64-700-normal-X_3qL3eD.woff +0 -0
  1464. package/public/assets/ibm-plex-sans-jp-64-700-normal-_sOvmSPU.woff2 +0 -0
  1465. package/public/assets/ibm-plex-sans-jp-65-400-normal-BIWHDE_t.woff2 +0 -0
  1466. package/public/assets/ibm-plex-sans-jp-65-400-normal-DNiOFlC5.woff +0 -0
  1467. package/public/assets/ibm-plex-sans-jp-65-600-normal-8ErTTni6.woff2 +0 -0
  1468. package/public/assets/ibm-plex-sans-jp-65-600-normal-Ckksq6Um.woff +0 -0
  1469. package/public/assets/ibm-plex-sans-jp-65-700-normal-9c1B3ugf.woff +0 -0
  1470. package/public/assets/ibm-plex-sans-jp-65-700-normal-C2SAUond.woff2 +0 -0
  1471. package/public/assets/ibm-plex-sans-jp-66-400-normal-BfKrnenI.woff +0 -0
  1472. package/public/assets/ibm-plex-sans-jp-66-400-normal-CNxVmlv6.woff2 +0 -0
  1473. package/public/assets/ibm-plex-sans-jp-66-600-normal-hyHZDzzP.woff2 +0 -0
  1474. package/public/assets/ibm-plex-sans-jp-66-600-normal-nq1zdTbH.woff +0 -0
  1475. package/public/assets/ibm-plex-sans-jp-66-700-normal-Ctdcjw58.woff +0 -0
  1476. package/public/assets/ibm-plex-sans-jp-66-700-normal-D_FuIz1A.woff2 +0 -0
  1477. package/public/assets/ibm-plex-sans-jp-67-400-normal-D3j6dBx3.woff +0 -0
  1478. package/public/assets/ibm-plex-sans-jp-67-400-normal-lzlrdx0G.woff2 +0 -0
  1479. package/public/assets/ibm-plex-sans-jp-67-600-normal-6KKBCWxa.woff2 +0 -0
  1480. package/public/assets/ibm-plex-sans-jp-67-600-normal-DgWoOUUg.woff +0 -0
  1481. package/public/assets/ibm-plex-sans-jp-67-700-normal-B3QY7F5h.woff2 +0 -0
  1482. package/public/assets/ibm-plex-sans-jp-67-700-normal-Bk31nBaz.woff +0 -0
  1483. package/public/assets/ibm-plex-sans-jp-68-400-normal-BpRgjvkz.woff +0 -0
  1484. package/public/assets/ibm-plex-sans-jp-68-400-normal-CfTKk1Ti.woff2 +0 -0
  1485. package/public/assets/ibm-plex-sans-jp-68-600-normal-BlYm4TE_.woff2 +0 -0
  1486. package/public/assets/ibm-plex-sans-jp-68-600-normal-DiY9dfka.woff +0 -0
  1487. package/public/assets/ibm-plex-sans-jp-68-700-normal-C6ZrhK66.woff +0 -0
  1488. package/public/assets/ibm-plex-sans-jp-68-700-normal-Cb_onqwe.woff2 +0 -0
  1489. package/public/assets/ibm-plex-sans-jp-69-400-normal-ClpMq853.woff2 +0 -0
  1490. package/public/assets/ibm-plex-sans-jp-69-400-normal-DIRwnaAC.woff +0 -0
  1491. package/public/assets/ibm-plex-sans-jp-69-600-normal-Bsq_ALiN.woff2 +0 -0
  1492. package/public/assets/ibm-plex-sans-jp-69-600-normal-D5M2jRxh.woff +0 -0
  1493. package/public/assets/ibm-plex-sans-jp-69-700-normal-D25giLXx.woff +0 -0
  1494. package/public/assets/ibm-plex-sans-jp-69-700-normal-DJ24ly1p.woff2 +0 -0
  1495. package/public/assets/ibm-plex-sans-jp-7-400-normal-BlNTLUxk.woff +0 -0
  1496. package/public/assets/ibm-plex-sans-jp-7-400-normal-Ce6XQT-X.woff2 +0 -0
  1497. package/public/assets/ibm-plex-sans-jp-7-600-normal-BIimYJ8p.woff2 +0 -0
  1498. package/public/assets/ibm-plex-sans-jp-7-600-normal-u7RE7Vcl.woff +0 -0
  1499. package/public/assets/ibm-plex-sans-jp-7-700-normal-BxRQ3DPg.woff +0 -0
  1500. package/public/assets/ibm-plex-sans-jp-7-700-normal-DK5zmmDo.woff2 +0 -0
  1501. package/public/assets/ibm-plex-sans-jp-70-400-normal-BQZWkZap.woff2 +0 -0
  1502. package/public/assets/ibm-plex-sans-jp-70-400-normal-BvYVJLC-.woff +0 -0
  1503. package/public/assets/ibm-plex-sans-jp-70-600-normal-COjhVT5P.woff +0 -0
  1504. package/public/assets/ibm-plex-sans-jp-70-600-normal-D_nkzVDi.woff2 +0 -0
  1505. package/public/assets/ibm-plex-sans-jp-70-700-normal-BJsNk892.woff +0 -0
  1506. package/public/assets/ibm-plex-sans-jp-70-700-normal-D0rsZ7c1.woff2 +0 -0
  1507. package/public/assets/ibm-plex-sans-jp-71-400-normal-BF8CoFgI.woff +0 -0
  1508. package/public/assets/ibm-plex-sans-jp-71-400-normal-HbsCI6VV.woff2 +0 -0
  1509. package/public/assets/ibm-plex-sans-jp-71-600-normal-CfPjA3xh.woff +0 -0
  1510. package/public/assets/ibm-plex-sans-jp-71-600-normal-ChBeHVSC.woff2 +0 -0
  1511. package/public/assets/ibm-plex-sans-jp-71-700-normal-B88Gnili.woff +0 -0
  1512. package/public/assets/ibm-plex-sans-jp-71-700-normal-D9HVw03N.woff2 +0 -0
  1513. package/public/assets/ibm-plex-sans-jp-72-400-normal-BKinYB31.woff +0 -0
  1514. package/public/assets/ibm-plex-sans-jp-72-400-normal-D3NTG_Qr.woff2 +0 -0
  1515. package/public/assets/ibm-plex-sans-jp-72-600-normal-BpU6wBwH.woff +0 -0
  1516. package/public/assets/ibm-plex-sans-jp-72-600-normal-rfJ4c39Q.woff2 +0 -0
  1517. package/public/assets/ibm-plex-sans-jp-72-700-normal-DClz9Dhe.woff +0 -0
  1518. package/public/assets/ibm-plex-sans-jp-72-700-normal-DnfTuI4o.woff2 +0 -0
  1519. package/public/assets/ibm-plex-sans-jp-73-400-normal-B9cHSeQ5.woff2 +0 -0
  1520. package/public/assets/ibm-plex-sans-jp-73-400-normal-HVPdCDZ0.woff +0 -0
  1521. package/public/assets/ibm-plex-sans-jp-73-600-normal-BL0EAwDJ.woff +0 -0
  1522. package/public/assets/ibm-plex-sans-jp-73-600-normal-CoMSI1sj.woff2 +0 -0
  1523. package/public/assets/ibm-plex-sans-jp-73-700-normal-5BseSrpV.woff +0 -0
  1524. package/public/assets/ibm-plex-sans-jp-73-700-normal-DW-mflD2.woff2 +0 -0
  1525. package/public/assets/ibm-plex-sans-jp-74-400-normal-BM6YwLsn.woff2 +0 -0
  1526. package/public/assets/ibm-plex-sans-jp-74-400-normal-BTWjvuog.woff +0 -0
  1527. package/public/assets/ibm-plex-sans-jp-74-600-normal-CxFvTzoC.woff2 +0 -0
  1528. package/public/assets/ibm-plex-sans-jp-74-600-normal-D51sy90d.woff +0 -0
  1529. package/public/assets/ibm-plex-sans-jp-74-700-normal-Bp0aGueO.woff2 +0 -0
  1530. package/public/assets/ibm-plex-sans-jp-74-700-normal-CQdRArtb.woff +0 -0
  1531. package/public/assets/ibm-plex-sans-jp-75-400-normal-DX0jfUHx.woff +0 -0
  1532. package/public/assets/ibm-plex-sans-jp-75-400-normal-DrNdqo4y.woff2 +0 -0
  1533. package/public/assets/ibm-plex-sans-jp-75-600-normal-DvAVPJPm.woff +0 -0
  1534. package/public/assets/ibm-plex-sans-jp-75-600-normal-DzUkgy6d.woff2 +0 -0
  1535. package/public/assets/ibm-plex-sans-jp-75-700-normal-BUGpoCPv.woff2 +0 -0
  1536. package/public/assets/ibm-plex-sans-jp-75-700-normal-CbVTJJOJ.woff +0 -0
  1537. package/public/assets/ibm-plex-sans-jp-76-400-normal-BtXAriso.woff2 +0 -0
  1538. package/public/assets/ibm-plex-sans-jp-76-400-normal-DvZrEIB3.woff +0 -0
  1539. package/public/assets/ibm-plex-sans-jp-76-600-normal-Bkns-GmL.woff +0 -0
  1540. package/public/assets/ibm-plex-sans-jp-76-600-normal-XH04BMqX.woff2 +0 -0
  1541. package/public/assets/ibm-plex-sans-jp-76-700-normal-BfaxMcpg.woff2 +0 -0
  1542. package/public/assets/ibm-plex-sans-jp-76-700-normal-DC5DjlVx.woff +0 -0
  1543. package/public/assets/ibm-plex-sans-jp-77-400-normal-C8x5jxqc.woff2 +0 -0
  1544. package/public/assets/ibm-plex-sans-jp-77-400-normal-DIwXWqjG.woff +0 -0
  1545. package/public/assets/ibm-plex-sans-jp-77-600-normal-Dst0n_2I.woff2 +0 -0
  1546. package/public/assets/ibm-plex-sans-jp-77-600-normal-TveJi30r.woff +0 -0
  1547. package/public/assets/ibm-plex-sans-jp-77-700-normal-BXcw4A5K.woff2 +0 -0
  1548. package/public/assets/ibm-plex-sans-jp-77-700-normal-C5mt5pwb.woff +0 -0
  1549. package/public/assets/ibm-plex-sans-jp-78-400-normal-DUw4O9kJ.woff2 +0 -0
  1550. package/public/assets/ibm-plex-sans-jp-78-400-normal-DdAHar7U.woff +0 -0
  1551. package/public/assets/ibm-plex-sans-jp-78-600-normal-CdDbCMo5.woff2 +0 -0
  1552. package/public/assets/ibm-plex-sans-jp-78-600-normal-WSGX5G5j.woff +0 -0
  1553. package/public/assets/ibm-plex-sans-jp-78-700-normal-BX4TFa2_.woff2 +0 -0
  1554. package/public/assets/ibm-plex-sans-jp-78-700-normal-DQFNc6DE.woff +0 -0
  1555. package/public/assets/ibm-plex-sans-jp-79-400-normal-CHV4cTl6.woff2 +0 -0
  1556. package/public/assets/ibm-plex-sans-jp-79-400-normal-DKXEv0-8.woff +0 -0
  1557. package/public/assets/ibm-plex-sans-jp-79-600-normal-BwemUgt7.woff2 +0 -0
  1558. package/public/assets/ibm-plex-sans-jp-79-600-normal-jqoE6MSf.woff +0 -0
  1559. package/public/assets/ibm-plex-sans-jp-79-700-normal-C7dv3Yp1.woff +0 -0
  1560. package/public/assets/ibm-plex-sans-jp-79-700-normal-Dc8--5xr.woff2 +0 -0
  1561. package/public/assets/ibm-plex-sans-jp-8-400-normal-SmEnIkYa.woff +0 -0
  1562. package/public/assets/ibm-plex-sans-jp-8-400-normal-tFiGs3IA.woff2 +0 -0
  1563. package/public/assets/ibm-plex-sans-jp-8-600-normal-BXRUM-0I.woff2 +0 -0
  1564. package/public/assets/ibm-plex-sans-jp-8-600-normal-G3AQr80e.woff +0 -0
  1565. package/public/assets/ibm-plex-sans-jp-8-700-normal-BJ-eyJFM.woff2 +0 -0
  1566. package/public/assets/ibm-plex-sans-jp-8-700-normal-D8XNQCXr.woff +0 -0
  1567. package/public/assets/ibm-plex-sans-jp-80-400-normal-B1EBYabM.woff +0 -0
  1568. package/public/assets/ibm-plex-sans-jp-80-400-normal-boMeGYwE.woff2 +0 -0
  1569. package/public/assets/ibm-plex-sans-jp-80-600-normal-5_89urOt.woff +0 -0
  1570. package/public/assets/ibm-plex-sans-jp-80-600-normal-Cn0IXtFE.woff2 +0 -0
  1571. package/public/assets/ibm-plex-sans-jp-80-700-normal-BOd0bDGO.woff +0 -0
  1572. package/public/assets/ibm-plex-sans-jp-80-700-normal-C26YuVxL.woff2 +0 -0
  1573. package/public/assets/ibm-plex-sans-jp-81-400-normal-BRtTCfUk.woff +0 -0
  1574. package/public/assets/ibm-plex-sans-jp-81-400-normal-D32P0Vtu.woff2 +0 -0
  1575. package/public/assets/ibm-plex-sans-jp-81-600-normal-BrNo5bPi.woff2 +0 -0
  1576. package/public/assets/ibm-plex-sans-jp-81-600-normal-ic2OowiW.woff +0 -0
  1577. package/public/assets/ibm-plex-sans-jp-81-700-normal-CVYiHbL6.woff +0 -0
  1578. package/public/assets/ibm-plex-sans-jp-81-700-normal-u-vEkTpG.woff2 +0 -0
  1579. package/public/assets/ibm-plex-sans-jp-82-400-normal-BQWp4BEz.woff +0 -0
  1580. package/public/assets/ibm-plex-sans-jp-82-400-normal-DDpDjsGx.woff2 +0 -0
  1581. package/public/assets/ibm-plex-sans-jp-82-600-normal-DajH-4xp.woff2 +0 -0
  1582. package/public/assets/ibm-plex-sans-jp-82-600-normal-icuQ__PU.woff +0 -0
  1583. package/public/assets/ibm-plex-sans-jp-82-700-normal-ClV-zSDt.woff +0 -0
  1584. package/public/assets/ibm-plex-sans-jp-82-700-normal-CnyrRvpH.woff2 +0 -0
  1585. package/public/assets/ibm-plex-sans-jp-83-400-normal-Bw_rXMEi.woff2 +0 -0
  1586. package/public/assets/ibm-plex-sans-jp-83-400-normal-yc2U6i4H.woff +0 -0
  1587. package/public/assets/ibm-plex-sans-jp-83-600-normal-C2uell5V.woff +0 -0
  1588. package/public/assets/ibm-plex-sans-jp-83-600-normal-DsLbRz3E.woff2 +0 -0
  1589. package/public/assets/ibm-plex-sans-jp-83-700-normal-2GacE3N5.woff +0 -0
  1590. package/public/assets/ibm-plex-sans-jp-83-700-normal-EpYP79Ha.woff2 +0 -0
  1591. package/public/assets/ibm-plex-sans-jp-84-400-normal-C14BeeRx.woff2 +0 -0
  1592. package/public/assets/ibm-plex-sans-jp-84-400-normal-C_JCm1wG.woff +0 -0
  1593. package/public/assets/ibm-plex-sans-jp-84-600-normal-CCq3cWfr.woff2 +0 -0
  1594. package/public/assets/ibm-plex-sans-jp-84-600-normal-CNKfBGzf.woff +0 -0
  1595. package/public/assets/ibm-plex-sans-jp-84-700-normal-DvPwdAi9.woff +0 -0
  1596. package/public/assets/ibm-plex-sans-jp-84-700-normal-bReT13VI.woff2 +0 -0
  1597. package/public/assets/ibm-plex-sans-jp-85-400-normal-CxNRCaXC.woff +0 -0
  1598. package/public/assets/ibm-plex-sans-jp-85-400-normal-DIfXns4-.woff2 +0 -0
  1599. package/public/assets/ibm-plex-sans-jp-85-600-normal-8jj6aRvF.woff2 +0 -0
  1600. package/public/assets/ibm-plex-sans-jp-85-600-normal-DlyOX1Qf.woff +0 -0
  1601. package/public/assets/ibm-plex-sans-jp-85-700-normal-D8sN10Nm.woff +0 -0
  1602. package/public/assets/ibm-plex-sans-jp-85-700-normal-og8bjehs.woff2 +0 -0
  1603. package/public/assets/ibm-plex-sans-jp-86-400-normal-Bb5ShdOk.woff +0 -0
  1604. package/public/assets/ibm-plex-sans-jp-86-400-normal-Dwyie3Iv.woff2 +0 -0
  1605. package/public/assets/ibm-plex-sans-jp-86-600-normal-CdiZE1rm.woff2 +0 -0
  1606. package/public/assets/ibm-plex-sans-jp-86-600-normal-sZuKvaH0.woff +0 -0
  1607. package/public/assets/ibm-plex-sans-jp-86-700-normal-BTXGcZ1f.woff2 +0 -0
  1608. package/public/assets/ibm-plex-sans-jp-86-700-normal-BfB1Adps.woff +0 -0
  1609. package/public/assets/ibm-plex-sans-jp-87-400-normal-9iA5aW6B.woff2 +0 -0
  1610. package/public/assets/ibm-plex-sans-jp-87-400-normal-BlQLoLxo.woff +0 -0
  1611. package/public/assets/ibm-plex-sans-jp-87-600-normal-CuP_sqvk.woff +0 -0
  1612. package/public/assets/ibm-plex-sans-jp-87-600-normal-DJDdt009.woff2 +0 -0
  1613. package/public/assets/ibm-plex-sans-jp-87-700-normal-T5FoFJ7Z.woff +0 -0
  1614. package/public/assets/ibm-plex-sans-jp-87-700-normal-ZAIr8xfv.woff2 +0 -0
  1615. package/public/assets/ibm-plex-sans-jp-88-400-normal-47Y8c3gi.woff +0 -0
  1616. package/public/assets/ibm-plex-sans-jp-88-400-normal-Ce6Hc4-O.woff2 +0 -0
  1617. package/public/assets/ibm-plex-sans-jp-88-600-normal-C0xzysV4.woff +0 -0
  1618. package/public/assets/ibm-plex-sans-jp-88-600-normal-R7ba6CXY.woff2 +0 -0
  1619. package/public/assets/ibm-plex-sans-jp-88-700-normal-BhgGw4mN.woff +0 -0
  1620. package/public/assets/ibm-plex-sans-jp-88-700-normal-DqgQgYzO.woff2 +0 -0
  1621. package/public/assets/ibm-plex-sans-jp-89-400-normal-BQ1quosg.woff +0 -0
  1622. package/public/assets/ibm-plex-sans-jp-89-400-normal-DWWwgYkQ.woff2 +0 -0
  1623. package/public/assets/ibm-plex-sans-jp-89-600-normal-C2tA-5LU.woff +0 -0
  1624. package/public/assets/ibm-plex-sans-jp-89-600-normal-DhA0Dlsd.woff2 +0 -0
  1625. package/public/assets/ibm-plex-sans-jp-89-700-normal-BhPAGixe.woff2 +0 -0
  1626. package/public/assets/ibm-plex-sans-jp-89-700-normal-Q4Ct26U-.woff +0 -0
  1627. package/public/assets/ibm-plex-sans-jp-9-400-normal--2P0gMaE.woff2 +0 -0
  1628. package/public/assets/ibm-plex-sans-jp-9-400-normal-DOuCM5BV.woff +0 -0
  1629. package/public/assets/ibm-plex-sans-jp-9-600-normal-BWVUGdkT.woff2 +0 -0
  1630. package/public/assets/ibm-plex-sans-jp-9-600-normal-DKQ7A1j0.woff +0 -0
  1631. package/public/assets/ibm-plex-sans-jp-9-700-normal-CeF5ynVi.woff +0 -0
  1632. package/public/assets/ibm-plex-sans-jp-9-700-normal-U3Fi3Xkr.woff2 +0 -0
  1633. package/public/assets/ibm-plex-sans-jp-90-400-normal-CfqeE6EG.woff +0 -0
  1634. package/public/assets/ibm-plex-sans-jp-90-400-normal-D_k1n-D_.woff2 +0 -0
  1635. package/public/assets/ibm-plex-sans-jp-90-600-normal-Bwsph-Eg.woff +0 -0
  1636. package/public/assets/ibm-plex-sans-jp-90-600-normal-DhhMI-5X.woff2 +0 -0
  1637. package/public/assets/ibm-plex-sans-jp-90-700-normal-B0dGlL2-.woff +0 -0
  1638. package/public/assets/ibm-plex-sans-jp-90-700-normal-C8Hbz-dX.woff2 +0 -0
  1639. package/public/assets/ibm-plex-sans-jp-91-400-normal-Ciy4dQcd.woff +0 -0
  1640. package/public/assets/ibm-plex-sans-jp-91-400-normal-Dqn0gBBY.woff2 +0 -0
  1641. package/public/assets/ibm-plex-sans-jp-91-600-normal-CMZZHiYs.woff2 +0 -0
  1642. package/public/assets/ibm-plex-sans-jp-91-600-normal-D3h_qbuq.woff +0 -0
  1643. package/public/assets/ibm-plex-sans-jp-91-700-normal-B1DETJv2.woff2 +0 -0
  1644. package/public/assets/ibm-plex-sans-jp-91-700-normal-M5nVKp2A.woff +0 -0
  1645. package/public/assets/ibm-plex-sans-jp-92-400-normal-BfkGgwSg.woff2 +0 -0
  1646. package/public/assets/ibm-plex-sans-jp-92-400-normal-DoNv6QKI.woff +0 -0
  1647. package/public/assets/ibm-plex-sans-jp-92-600-normal-9-dsEf5V.woff2 +0 -0
  1648. package/public/assets/ibm-plex-sans-jp-92-600-normal-cJ6s0u50.woff +0 -0
  1649. package/public/assets/ibm-plex-sans-jp-92-700-normal-ByHPz9kn.woff +0 -0
  1650. package/public/assets/ibm-plex-sans-jp-92-700-normal-D6FBL1WO.woff2 +0 -0
  1651. package/public/assets/ibm-plex-sans-jp-93-400-normal-B6WlHkvJ.woff +0 -0
  1652. package/public/assets/ibm-plex-sans-jp-93-400-normal-CXc_m19k.woff2 +0 -0
  1653. package/public/assets/ibm-plex-sans-jp-93-600-normal-BSK1xVrb.woff2 +0 -0
  1654. package/public/assets/ibm-plex-sans-jp-93-600-normal-OQ8utWzT.woff +0 -0
  1655. package/public/assets/ibm-plex-sans-jp-93-700-normal-B6i_9_xV.woff2 +0 -0
  1656. package/public/assets/ibm-plex-sans-jp-93-700-normal-C0PiAt94.woff +0 -0
  1657. package/public/assets/ibm-plex-sans-jp-94-400-normal-B4bajS3c.woff2 +0 -0
  1658. package/public/assets/ibm-plex-sans-jp-94-400-normal-FBGzvyjM.woff +0 -0
  1659. package/public/assets/ibm-plex-sans-jp-94-600-normal-Cl_ZMZu8.woff2 +0 -0
  1660. package/public/assets/ibm-plex-sans-jp-94-600-normal-pqZtpQem.woff +0 -0
  1661. package/public/assets/ibm-plex-sans-jp-94-700-normal-BhojjqGx.woff2 +0 -0
  1662. package/public/assets/ibm-plex-sans-jp-94-700-normal-DWNWPMXr.woff +0 -0
  1663. package/public/assets/ibm-plex-sans-jp-95-400-normal-BaY9CSq2.woff +0 -0
  1664. package/public/assets/ibm-plex-sans-jp-95-400-normal-DPH1GVj3.woff2 +0 -0
  1665. package/public/assets/ibm-plex-sans-jp-95-600-normal-BcydLyYe.woff +0 -0
  1666. package/public/assets/ibm-plex-sans-jp-95-600-normal-DqzXikSS.woff2 +0 -0
  1667. package/public/assets/ibm-plex-sans-jp-95-700-normal-0cKlfajM.woff +0 -0
  1668. package/public/assets/ibm-plex-sans-jp-95-700-normal-BNFDc8MW.woff2 +0 -0
  1669. package/public/assets/ibm-plex-sans-jp-96-400-normal-CXuQ_R0S.woff +0 -0
  1670. package/public/assets/ibm-plex-sans-jp-96-400-normal-OCME7gOK.woff2 +0 -0
  1671. package/public/assets/ibm-plex-sans-jp-96-600-normal-BgkVLddD.woff +0 -0
  1672. package/public/assets/ibm-plex-sans-jp-96-600-normal-GzZNxGhs.woff2 +0 -0
  1673. package/public/assets/ibm-plex-sans-jp-96-700-normal-Qh65nqz2.woff +0 -0
  1674. package/public/assets/ibm-plex-sans-jp-96-700-normal-a40eS-gV.woff2 +0 -0
  1675. package/public/assets/ibm-plex-sans-jp-97-400-normal-4k_rP24C.woff2 +0 -0
  1676. package/public/assets/ibm-plex-sans-jp-97-400-normal-CP6Nx25U.woff +0 -0
  1677. package/public/assets/ibm-plex-sans-jp-97-600-normal-CIqUzk_a.woff2 +0 -0
  1678. package/public/assets/ibm-plex-sans-jp-97-600-normal-DCSYk_Yh.woff +0 -0
  1679. package/public/assets/ibm-plex-sans-jp-97-700-normal-DnbCIk-O.woff +0 -0
  1680. package/public/assets/ibm-plex-sans-jp-97-700-normal-zgPUJYJw.woff2 +0 -0
  1681. package/public/assets/ibm-plex-sans-jp-98-400-normal-B515X6p6.woff2 +0 -0
  1682. package/public/assets/ibm-plex-sans-jp-98-400-normal-Cf7sm02w.woff +0 -0
  1683. package/public/assets/ibm-plex-sans-jp-98-600-normal-DugMp3FI.woff +0 -0
  1684. package/public/assets/ibm-plex-sans-jp-98-600-normal-pBxafNws.woff2 +0 -0
  1685. package/public/assets/ibm-plex-sans-jp-98-700-normal-7KdM18gu.woff +0 -0
  1686. package/public/assets/ibm-plex-sans-jp-98-700-normal-CMi4ZY-h.woff2 +0 -0
  1687. package/public/assets/ibm-plex-sans-jp-99-400-normal-BcrT9Fgn.woff +0 -0
  1688. package/public/assets/ibm-plex-sans-jp-99-400-normal-DmQyl23y.woff2 +0 -0
  1689. package/public/assets/ibm-plex-sans-jp-99-600-normal-CeMMRcA6.woff +0 -0
  1690. package/public/assets/ibm-plex-sans-jp-99-600-normal-DnK7T1fc.woff2 +0 -0
  1691. package/public/assets/ibm-plex-sans-jp-99-700-normal-CINNKEoN.woff +0 -0
  1692. package/public/assets/ibm-plex-sans-jp-99-700-normal-sDTGjBrk.woff2 +0 -0
  1693. package/public/assets/ibm-plex-sans-jp-cyrillic-400-normal-B9g1Ctqd.woff2 +0 -0
  1694. package/public/assets/ibm-plex-sans-jp-cyrillic-400-normal-DJG00D-p.woff +0 -0
  1695. package/public/assets/ibm-plex-sans-jp-cyrillic-600-normal-B4enfOPB.woff +0 -0
  1696. package/public/assets/ibm-plex-sans-jp-cyrillic-600-normal-DCQl7zAm.woff2 +0 -0
  1697. package/public/assets/ibm-plex-sans-jp-cyrillic-700-normal-CqLTajqw.woff2 +0 -0
  1698. package/public/assets/ibm-plex-sans-jp-cyrillic-700-normal-hKVirjqK.woff +0 -0
  1699. package/public/assets/ibm-plex-sans-jp-latin-400-normal-CDdMl-oX.woff2 +0 -0
  1700. package/public/assets/ibm-plex-sans-jp-latin-400-normal-D5LEXcjN.woff +0 -0
  1701. package/public/assets/ibm-plex-sans-jp-latin-600-normal-DmCaZeJ-.woff2 +0 -0
  1702. package/public/assets/ibm-plex-sans-jp-latin-600-normal-Ds_Fb90o.woff +0 -0
  1703. package/public/assets/ibm-plex-sans-jp-latin-700-normal-8D2N3nxA.woff +0 -0
  1704. package/public/assets/ibm-plex-sans-jp-latin-700-normal-BTYOjzj6.woff2 +0 -0
  1705. package/public/assets/ibm-plex-sans-kr-0-400-normal-COdVePwF.woff2 +0 -0
  1706. package/public/assets/ibm-plex-sans-kr-0-400-normal-DEF_oZFa.woff +0 -0
  1707. package/public/assets/ibm-plex-sans-kr-0-600-normal-DLXpb0hq.woff +0 -0
  1708. package/public/assets/ibm-plex-sans-kr-0-600-normal-DuzcAQdo.woff2 +0 -0
  1709. package/public/assets/ibm-plex-sans-kr-0-700-normal-BKXIEbM-.woff +0 -0
  1710. package/public/assets/ibm-plex-sans-kr-0-700-normal-C-cy4WQL.woff2 +0 -0
  1711. package/public/assets/ibm-plex-sans-kr-10-400-normal-BOnpTeYv.woff2 +0 -0
  1712. package/public/assets/ibm-plex-sans-kr-10-400-normal-CRn7_mZz.woff +0 -0
  1713. package/public/assets/ibm-plex-sans-kr-10-600-normal-BAjKvcG-.woff2 +0 -0
  1714. package/public/assets/ibm-plex-sans-kr-10-600-normal-DIq7Gv9V.woff +0 -0
  1715. package/public/assets/ibm-plex-sans-kr-10-700-normal-CO8B564V.woff +0 -0
  1716. package/public/assets/ibm-plex-sans-kr-10-700-normal-CYiGY1Yb.woff2 +0 -0
  1717. package/public/assets/ibm-plex-sans-kr-100-400-normal-3DeNbFry.woff2 +0 -0
  1718. package/public/assets/ibm-plex-sans-kr-100-400-normal-BQdwTqgb.woff +0 -0
  1719. package/public/assets/ibm-plex-sans-kr-100-600-normal-CcI0wmDd.woff2 +0 -0
  1720. package/public/assets/ibm-plex-sans-kr-100-600-normal-ZYmKSXu1.woff +0 -0
  1721. package/public/assets/ibm-plex-sans-kr-100-700-normal-BzrrxQTg.woff2 +0 -0
  1722. package/public/assets/ibm-plex-sans-kr-100-700-normal-CMsSAe0_.woff +0 -0
  1723. package/public/assets/ibm-plex-sans-kr-101-400-normal-CwhtzdGH.woff2 +0 -0
  1724. package/public/assets/ibm-plex-sans-kr-101-400-normal-DQN8MKOE.woff +0 -0
  1725. package/public/assets/ibm-plex-sans-kr-101-600-normal-Cf7HWvBM.woff2 +0 -0
  1726. package/public/assets/ibm-plex-sans-kr-101-600-normal-DOUVV8ig.woff +0 -0
  1727. package/public/assets/ibm-plex-sans-kr-101-700-normal-CByVAW_A.woff2 +0 -0
  1728. package/public/assets/ibm-plex-sans-kr-101-700-normal-VIPXB5Il.woff +0 -0
  1729. package/public/assets/ibm-plex-sans-kr-102-400-normal-BC0mCFX2.woff2 +0 -0
  1730. package/public/assets/ibm-plex-sans-kr-102-400-normal-DHfan8x-.woff +0 -0
  1731. package/public/assets/ibm-plex-sans-kr-102-600-normal-BIIL4Btv.woff +0 -0
  1732. package/public/assets/ibm-plex-sans-kr-102-600-normal-CN8RaHGd.woff2 +0 -0
  1733. package/public/assets/ibm-plex-sans-kr-102-700-normal-BMMLfFhV.woff2 +0 -0
  1734. package/public/assets/ibm-plex-sans-kr-102-700-normal-DmfLM_GL.woff +0 -0
  1735. package/public/assets/ibm-plex-sans-kr-103-400-normal-BQNnzD7b.woff +0 -0
  1736. package/public/assets/ibm-plex-sans-kr-103-400-normal-CYHfi_5o.woff2 +0 -0
  1737. package/public/assets/ibm-plex-sans-kr-103-600-normal-8oNp3a_g.woff2 +0 -0
  1738. package/public/assets/ibm-plex-sans-kr-103-600-normal-BKXxr4Vf.woff +0 -0
  1739. package/public/assets/ibm-plex-sans-kr-103-700-normal-BcdoKDVA.woff +0 -0
  1740. package/public/assets/ibm-plex-sans-kr-103-700-normal-Dxy_7wWe.woff2 +0 -0
  1741. package/public/assets/ibm-plex-sans-kr-104-400-normal-BrHR60F5.woff2 +0 -0
  1742. package/public/assets/ibm-plex-sans-kr-104-400-normal-kn3L8mkz.woff +0 -0
  1743. package/public/assets/ibm-plex-sans-kr-104-600-normal-DHHBh9NH.woff2 +0 -0
  1744. package/public/assets/ibm-plex-sans-kr-104-600-normal-DbfrFOKo.woff +0 -0
  1745. package/public/assets/ibm-plex-sans-kr-104-700-normal-BBQprcoA.woff +0 -0
  1746. package/public/assets/ibm-plex-sans-kr-104-700-normal-DIYBHFGo.woff2 +0 -0
  1747. package/public/assets/ibm-plex-sans-kr-105-400-normal-BY6JiZG_.woff2 +0 -0
  1748. package/public/assets/ibm-plex-sans-kr-105-400-normal-D20hKn8x.woff +0 -0
  1749. package/public/assets/ibm-plex-sans-kr-105-600-normal-Bdo6QjXy.woff2 +0 -0
  1750. package/public/assets/ibm-plex-sans-kr-105-600-normal-DU6215sy.woff +0 -0
  1751. package/public/assets/ibm-plex-sans-kr-105-700-normal-CNeD7cKc.woff +0 -0
  1752. package/public/assets/ibm-plex-sans-kr-105-700-normal-D4WgQZhf.woff2 +0 -0
  1753. package/public/assets/ibm-plex-sans-kr-106-400-normal-CKM4EqLH.woff2 +0 -0
  1754. package/public/assets/ibm-plex-sans-kr-106-400-normal-DRimGseV.woff +0 -0
  1755. package/public/assets/ibm-plex-sans-kr-106-600-normal-CIkK4pwL.woff +0 -0
  1756. package/public/assets/ibm-plex-sans-kr-106-600-normal-o84Tuavw.woff2 +0 -0
  1757. package/public/assets/ibm-plex-sans-kr-106-700-normal-DKK03KYp.woff2 +0 -0
  1758. package/public/assets/ibm-plex-sans-kr-106-700-normal-Sq9FhKgR.woff +0 -0
  1759. package/public/assets/ibm-plex-sans-kr-107-400-normal-9_m442uC.woff +0 -0
  1760. package/public/assets/ibm-plex-sans-kr-107-400-normal-DFBsPAhk.woff2 +0 -0
  1761. package/public/assets/ibm-plex-sans-kr-107-600-normal-Bj6Oga3u.woff2 +0 -0
  1762. package/public/assets/ibm-plex-sans-kr-107-600-normal-IB6GFZTf.woff +0 -0
  1763. package/public/assets/ibm-plex-sans-kr-107-700-normal-BPp3kOId.woff2 +0 -0
  1764. package/public/assets/ibm-plex-sans-kr-107-700-normal-CXE0S75n.woff +0 -0
  1765. package/public/assets/ibm-plex-sans-kr-108-400-normal-D7nsD7Wm.woff +0 -0
  1766. package/public/assets/ibm-plex-sans-kr-108-400-normal-DbmD_Owd.woff2 +0 -0
  1767. package/public/assets/ibm-plex-sans-kr-108-600-normal-C5FnASlc.woff +0 -0
  1768. package/public/assets/ibm-plex-sans-kr-108-600-normal-Cz9v4gjx.woff2 +0 -0
  1769. package/public/assets/ibm-plex-sans-kr-108-700-normal-BeBTa0LV.woff2 +0 -0
  1770. package/public/assets/ibm-plex-sans-kr-108-700-normal-DblVcY4a.woff +0 -0
  1771. package/public/assets/ibm-plex-sans-kr-109-400-normal-Ch-uxywT.woff +0 -0
  1772. package/public/assets/ibm-plex-sans-kr-109-400-normal-ChZ2CLi-.woff2 +0 -0
  1773. package/public/assets/ibm-plex-sans-kr-109-600-normal-BkGpNJKI.woff2 +0 -0
  1774. package/public/assets/ibm-plex-sans-kr-109-600-normal-CG9-PeCF.woff +0 -0
  1775. package/public/assets/ibm-plex-sans-kr-109-700-normal-CZW29fAQ.woff +0 -0
  1776. package/public/assets/ibm-plex-sans-kr-109-700-normal-CkMuXuOj.woff2 +0 -0
  1777. package/public/assets/ibm-plex-sans-kr-11-400-normal-CN_UQa3U.woff +0 -0
  1778. package/public/assets/ibm-plex-sans-kr-11-400-normal-DY57wkwV.woff2 +0 -0
  1779. package/public/assets/ibm-plex-sans-kr-11-600-normal-BUarw7E5.woff +0 -0
  1780. package/public/assets/ibm-plex-sans-kr-11-600-normal-Ds-mjTNk.woff2 +0 -0
  1781. package/public/assets/ibm-plex-sans-kr-11-700-normal-BntN_kys.woff2 +0 -0
  1782. package/public/assets/ibm-plex-sans-kr-11-700-normal-DoPFrHSK.woff +0 -0
  1783. package/public/assets/ibm-plex-sans-kr-110-400-normal-D259vsJ_.woff +0 -0
  1784. package/public/assets/ibm-plex-sans-kr-110-400-normal-DvUF8GMi.woff2 +0 -0
  1785. package/public/assets/ibm-plex-sans-kr-110-600-normal-CisRgCMg.woff2 +0 -0
  1786. package/public/assets/ibm-plex-sans-kr-110-600-normal-ReaqIn5m.woff +0 -0
  1787. package/public/assets/ibm-plex-sans-kr-110-700-normal-BIiZFSUQ.woff2 +0 -0
  1788. package/public/assets/ibm-plex-sans-kr-110-700-normal-BylngM58.woff +0 -0
  1789. package/public/assets/ibm-plex-sans-kr-111-400-normal-BqppHOeA.woff +0 -0
  1790. package/public/assets/ibm-plex-sans-kr-111-400-normal-DaCXFUcH.woff2 +0 -0
  1791. package/public/assets/ibm-plex-sans-kr-111-600-normal-2DkYfPPb.woff +0 -0
  1792. package/public/assets/ibm-plex-sans-kr-111-600-normal-DN6cN55_.woff2 +0 -0
  1793. package/public/assets/ibm-plex-sans-kr-111-700-normal-DjiLTpOV.woff +0 -0
  1794. package/public/assets/ibm-plex-sans-kr-111-700-normal-zUtSBhiX.woff2 +0 -0
  1795. package/public/assets/ibm-plex-sans-kr-112-400-normal-B8TcbMdb.woff +0 -0
  1796. package/public/assets/ibm-plex-sans-kr-112-400-normal-BJLUyYDo.woff2 +0 -0
  1797. package/public/assets/ibm-plex-sans-kr-112-600-normal-lS3UdozO.woff +0 -0
  1798. package/public/assets/ibm-plex-sans-kr-112-600-normal-nFX-cMXi.woff2 +0 -0
  1799. package/public/assets/ibm-plex-sans-kr-112-700-normal-DYzxzB3U.woff +0 -0
  1800. package/public/assets/ibm-plex-sans-kr-112-700-normal-NT-G-2lC.woff2 +0 -0
  1801. package/public/assets/ibm-plex-sans-kr-113-400-normal-CEDRAc_f.woff2 +0 -0
  1802. package/public/assets/ibm-plex-sans-kr-113-400-normal-DlThbTsi.woff +0 -0
  1803. package/public/assets/ibm-plex-sans-kr-113-600-normal-C_RUWM8I.woff +0 -0
  1804. package/public/assets/ibm-plex-sans-kr-113-600-normal-Dhfyy0ky.woff2 +0 -0
  1805. package/public/assets/ibm-plex-sans-kr-113-700-normal-CdI89zbS.woff2 +0 -0
  1806. package/public/assets/ibm-plex-sans-kr-113-700-normal-DRor3NKv.woff +0 -0
  1807. package/public/assets/ibm-plex-sans-kr-114-400-normal-5bMSGSar.woff +0 -0
  1808. package/public/assets/ibm-plex-sans-kr-114-400-normal-Bpqw4_PX.woff2 +0 -0
  1809. package/public/assets/ibm-plex-sans-kr-114-600-normal-BKj6RBZ7.woff +0 -0
  1810. package/public/assets/ibm-plex-sans-kr-114-600-normal-CjRp-Iz4.woff2 +0 -0
  1811. package/public/assets/ibm-plex-sans-kr-114-700-normal-BXC27J9C.woff +0 -0
  1812. package/public/assets/ibm-plex-sans-kr-114-700-normal-JtZooioR.woff2 +0 -0
  1813. package/public/assets/ibm-plex-sans-kr-115-400-normal-6-qa9Uj4.woff2 +0 -0
  1814. package/public/assets/ibm-plex-sans-kr-115-400-normal-CM7tVCiU.woff +0 -0
  1815. package/public/assets/ibm-plex-sans-kr-115-600-normal-CokKDsRY.woff2 +0 -0
  1816. package/public/assets/ibm-plex-sans-kr-115-600-normal-c6nUiZEv.woff +0 -0
  1817. package/public/assets/ibm-plex-sans-kr-115-700-normal-BCRYVYbj.woff +0 -0
  1818. package/public/assets/ibm-plex-sans-kr-115-700-normal-C4o110v7.woff2 +0 -0
  1819. package/public/assets/ibm-plex-sans-kr-116-400-normal-BCjvaIwI.woff +0 -0
  1820. package/public/assets/ibm-plex-sans-kr-116-400-normal-CPQAppG5.woff2 +0 -0
  1821. package/public/assets/ibm-plex-sans-kr-116-600-normal-2NuQXMn5.woff +0 -0
  1822. package/public/assets/ibm-plex-sans-kr-116-600-normal-pwYieqoq.woff2 +0 -0
  1823. package/public/assets/ibm-plex-sans-kr-116-700-normal-DTiOP-RD.woff +0 -0
  1824. package/public/assets/ibm-plex-sans-kr-116-700-normal-J2K8ygE7.woff2 +0 -0
  1825. package/public/assets/ibm-plex-sans-kr-117-400-normal-Bqi1rgUh.woff2 +0 -0
  1826. package/public/assets/ibm-plex-sans-kr-117-400-normal-CAkrqKEd.woff +0 -0
  1827. package/public/assets/ibm-plex-sans-kr-117-600-normal-BUVowAmE.woff +0 -0
  1828. package/public/assets/ibm-plex-sans-kr-117-600-normal-CVV1AoIy.woff2 +0 -0
  1829. package/public/assets/ibm-plex-sans-kr-117-700-normal-B_WqVFu8.woff2 +0 -0
  1830. package/public/assets/ibm-plex-sans-kr-117-700-normal-C-GRhBDF.woff +0 -0
  1831. package/public/assets/ibm-plex-sans-kr-118-400-normal-BvkVX0xm.woff +0 -0
  1832. package/public/assets/ibm-plex-sans-kr-118-400-normal-CPvF_U24.woff2 +0 -0
  1833. package/public/assets/ibm-plex-sans-kr-118-600-normal-BKNr8HaE.woff +0 -0
  1834. package/public/assets/ibm-plex-sans-kr-118-600-normal-SYUuQfwq.woff2 +0 -0
  1835. package/public/assets/ibm-plex-sans-kr-118-700-normal-6t-D5P6M.woff +0 -0
  1836. package/public/assets/ibm-plex-sans-kr-118-700-normal-Cwb_HiV8.woff2 +0 -0
  1837. package/public/assets/ibm-plex-sans-kr-119-400-normal-BVAYXEqw.woff +0 -0
  1838. package/public/assets/ibm-plex-sans-kr-119-400-normal-CF0EWuft.woff2 +0 -0
  1839. package/public/assets/ibm-plex-sans-kr-119-600-normal-CSej5QVJ.woff +0 -0
  1840. package/public/assets/ibm-plex-sans-kr-119-600-normal-CWNURXbv.woff2 +0 -0
  1841. package/public/assets/ibm-plex-sans-kr-119-700-normal-DqmD0X2I.woff +0 -0
  1842. package/public/assets/ibm-plex-sans-kr-119-700-normal-DvZpuW9q.woff2 +0 -0
  1843. package/public/assets/ibm-plex-sans-kr-12-400-normal-AF35YmmH.woff2 +0 -0
  1844. package/public/assets/ibm-plex-sans-kr-12-400-normal-J5xWG5gS.woff +0 -0
  1845. package/public/assets/ibm-plex-sans-kr-12-600-normal-Ba8rnT7_.woff2 +0 -0
  1846. package/public/assets/ibm-plex-sans-kr-12-600-normal-Cdi7mG90.woff +0 -0
  1847. package/public/assets/ibm-plex-sans-kr-12-700-normal-4ZbirUQU.woff2 +0 -0
  1848. package/public/assets/ibm-plex-sans-kr-12-700-normal-Coj3Y2Vv.woff +0 -0
  1849. package/public/assets/ibm-plex-sans-kr-13-400-normal-CpXdOOTc.woff2 +0 -0
  1850. package/public/assets/ibm-plex-sans-kr-13-400-normal-eM8eMXyQ.woff +0 -0
  1851. package/public/assets/ibm-plex-sans-kr-13-600-normal-DXBEl0OU.woff +0 -0
  1852. package/public/assets/ibm-plex-sans-kr-13-600-normal-ON8tPSnT.woff2 +0 -0
  1853. package/public/assets/ibm-plex-sans-kr-13-700-normal-Bbz7lyAG.woff2 +0 -0
  1854. package/public/assets/ibm-plex-sans-kr-13-700-normal-DfbGPVVb.woff +0 -0
  1855. package/public/assets/ibm-plex-sans-kr-14-400-normal-C-oyfrUa.woff2 +0 -0
  1856. package/public/assets/ibm-plex-sans-kr-14-400-normal-DPe2AXol.woff +0 -0
  1857. package/public/assets/ibm-plex-sans-kr-14-600-normal-BEKBLOkr.woff2 +0 -0
  1858. package/public/assets/ibm-plex-sans-kr-14-600-normal-BZRywIXe.woff +0 -0
  1859. package/public/assets/ibm-plex-sans-kr-14-700-normal-DChZSEXi.woff2 +0 -0
  1860. package/public/assets/ibm-plex-sans-kr-14-700-normal-JLAmA7_6.woff +0 -0
  1861. package/public/assets/ibm-plex-sans-kr-15-400-normal-CBiEIaz5.woff2 +0 -0
  1862. package/public/assets/ibm-plex-sans-kr-15-400-normal-D-mZ9inR.woff +0 -0
  1863. package/public/assets/ibm-plex-sans-kr-15-600-normal-CAapLUyl.woff2 +0 -0
  1864. package/public/assets/ibm-plex-sans-kr-15-600-normal-Dl-orC8M.woff +0 -0
  1865. package/public/assets/ibm-plex-sans-kr-15-700-normal-JEDfv4vZ.woff2 +0 -0
  1866. package/public/assets/ibm-plex-sans-kr-15-700-normal-xL2psWlD.woff +0 -0
  1867. package/public/assets/ibm-plex-sans-kr-16-400-normal-CKSk9toV.woff2 +0 -0
  1868. package/public/assets/ibm-plex-sans-kr-16-400-normal-DNGmaJIL.woff +0 -0
  1869. package/public/assets/ibm-plex-sans-kr-16-600-normal-DDZagcz1.woff +0 -0
  1870. package/public/assets/ibm-plex-sans-kr-16-600-normal-DloGa7SL.woff2 +0 -0
  1871. package/public/assets/ibm-plex-sans-kr-16-700-normal-Bv7EAOP1.woff +0 -0
  1872. package/public/assets/ibm-plex-sans-kr-16-700-normal-CCA2fInu.woff2 +0 -0
  1873. package/public/assets/ibm-plex-sans-kr-17-400-normal-BDhrvRnL.woff2 +0 -0
  1874. package/public/assets/ibm-plex-sans-kr-17-400-normal-BOjgDpon.woff +0 -0
  1875. package/public/assets/ibm-plex-sans-kr-17-600-normal-BeTmwP_K.woff2 +0 -0
  1876. package/public/assets/ibm-plex-sans-kr-17-600-normal-uD_8VqjX.woff +0 -0
  1877. package/public/assets/ibm-plex-sans-kr-17-700-normal-C-NBohiT.woff2 +0 -0
  1878. package/public/assets/ibm-plex-sans-kr-17-700-normal-sVUIRMKd.woff +0 -0
  1879. package/public/assets/ibm-plex-sans-kr-18-400-normal-BTtbRNyU.woff +0 -0
  1880. package/public/assets/ibm-plex-sans-kr-18-400-normal-Bs1zlN0G.woff2 +0 -0
  1881. package/public/assets/ibm-plex-sans-kr-18-600-normal-3CkcYQgr.woff2 +0 -0
  1882. package/public/assets/ibm-plex-sans-kr-18-600-normal-C0tjZHt0.woff +0 -0
  1883. package/public/assets/ibm-plex-sans-kr-18-700-normal-DjrHhANL.woff +0 -0
  1884. package/public/assets/ibm-plex-sans-kr-18-700-normal-UPAurMge.woff2 +0 -0
  1885. package/public/assets/ibm-plex-sans-kr-19-400-normal-CCVU2G9b.woff2 +0 -0
  1886. package/public/assets/ibm-plex-sans-kr-19-400-normal-dcW_ilWW.woff +0 -0
  1887. package/public/assets/ibm-plex-sans-kr-19-600-normal-DcS6irVl.woff2 +0 -0
  1888. package/public/assets/ibm-plex-sans-kr-19-600-normal-w0hsbhoe.woff +0 -0
  1889. package/public/assets/ibm-plex-sans-kr-19-700-normal-CazBSycC.woff2 +0 -0
  1890. package/public/assets/ibm-plex-sans-kr-19-700-normal-CvRuq6Vw.woff +0 -0
  1891. package/public/assets/ibm-plex-sans-kr-2-400-normal-CnxhIj-f.woff2 +0 -0
  1892. package/public/assets/ibm-plex-sans-kr-2-400-normal-ZCEqhetZ.woff +0 -0
  1893. package/public/assets/ibm-plex-sans-kr-2-600-normal-BBWiOGe2.woff +0 -0
  1894. package/public/assets/ibm-plex-sans-kr-2-600-normal-i3phtpOA.woff2 +0 -0
  1895. package/public/assets/ibm-plex-sans-kr-2-700-normal-DO0ByKpJ.woff2 +0 -0
  1896. package/public/assets/ibm-plex-sans-kr-2-700-normal-Dei1Gj2q.woff +0 -0
  1897. package/public/assets/ibm-plex-sans-kr-20-400-normal-2BRpmgCV.woff2 +0 -0
  1898. package/public/assets/ibm-plex-sans-kr-20-400-normal-B2cWSh78.woff +0 -0
  1899. package/public/assets/ibm-plex-sans-kr-20-600-normal-CKeHRgKb.woff +0 -0
  1900. package/public/assets/ibm-plex-sans-kr-20-600-normal-CXFU6tjk.woff2 +0 -0
  1901. package/public/assets/ibm-plex-sans-kr-20-700-normal-CTtpPuSd.woff2 +0 -0
  1902. package/public/assets/ibm-plex-sans-kr-20-700-normal-N5V03xjS.woff +0 -0
  1903. package/public/assets/ibm-plex-sans-kr-21-400-normal-Cv3FeIij.woff2 +0 -0
  1904. package/public/assets/ibm-plex-sans-kr-21-400-normal-Dml5TFym.woff +0 -0
  1905. package/public/assets/ibm-plex-sans-kr-21-600-normal-CJHvMuEH.woff2 +0 -0
  1906. package/public/assets/ibm-plex-sans-kr-21-600-normal-ChXV0eBj.woff +0 -0
  1907. package/public/assets/ibm-plex-sans-kr-21-700-normal-BR1fDv7I.woff +0 -0
  1908. package/public/assets/ibm-plex-sans-kr-21-700-normal-kWux5vbT.woff2 +0 -0
  1909. package/public/assets/ibm-plex-sans-kr-22-400-normal-3CnvMMD7.woff2 +0 -0
  1910. package/public/assets/ibm-plex-sans-kr-22-400-normal-TNl1bUeL.woff +0 -0
  1911. package/public/assets/ibm-plex-sans-kr-22-600-normal-B4PQFGba.woff2 +0 -0
  1912. package/public/assets/ibm-plex-sans-kr-22-600-normal-bBSJai_o.woff +0 -0
  1913. package/public/assets/ibm-plex-sans-kr-22-700-normal-BAbSphgc.woff2 +0 -0
  1914. package/public/assets/ibm-plex-sans-kr-22-700-normal-HHyMEHBJ.woff +0 -0
  1915. package/public/assets/ibm-plex-sans-kr-23-400-normal-CUhld-kf.woff2 +0 -0
  1916. package/public/assets/ibm-plex-sans-kr-23-400-normal-DTBYTMn7.woff +0 -0
  1917. package/public/assets/ibm-plex-sans-kr-23-600-normal-CR-CWSvQ.woff2 +0 -0
  1918. package/public/assets/ibm-plex-sans-kr-23-600-normal-Cq5mpPr_.woff +0 -0
  1919. package/public/assets/ibm-plex-sans-kr-23-700-normal-D-oyN10X.woff +0 -0
  1920. package/public/assets/ibm-plex-sans-kr-23-700-normal-DQNF9HpE.woff2 +0 -0
  1921. package/public/assets/ibm-plex-sans-kr-24-400-normal-BCEQWDh5.woff2 +0 -0
  1922. package/public/assets/ibm-plex-sans-kr-24-400-normal-DDVUYQLq.woff +0 -0
  1923. package/public/assets/ibm-plex-sans-kr-24-600-normal-DL0LF1av.woff +0 -0
  1924. package/public/assets/ibm-plex-sans-kr-24-600-normal-DyaIQrhK.woff2 +0 -0
  1925. package/public/assets/ibm-plex-sans-kr-24-700-normal-B0AxqRZO.woff2 +0 -0
  1926. package/public/assets/ibm-plex-sans-kr-24-700-normal-Inz-d5-8.woff +0 -0
  1927. package/public/assets/ibm-plex-sans-kr-25-400-normal-C5hUXC4y.woff2 +0 -0
  1928. package/public/assets/ibm-plex-sans-kr-25-400-normal-CSCHltyB.woff +0 -0
  1929. package/public/assets/ibm-plex-sans-kr-25-600-normal-ClJ2q6nT.woff +0 -0
  1930. package/public/assets/ibm-plex-sans-kr-25-600-normal-CpgWTSx7.woff2 +0 -0
  1931. package/public/assets/ibm-plex-sans-kr-25-700-normal-BSArHqh9.woff2 +0 -0
  1932. package/public/assets/ibm-plex-sans-kr-25-700-normal-BVRIUm2S.woff +0 -0
  1933. package/public/assets/ibm-plex-sans-kr-26-400-normal-BDNWBg-b.woff +0 -0
  1934. package/public/assets/ibm-plex-sans-kr-26-400-normal-BnV7FV79.woff2 +0 -0
  1935. package/public/assets/ibm-plex-sans-kr-26-600-normal-BQpAkNz5.woff2 +0 -0
  1936. package/public/assets/ibm-plex-sans-kr-26-600-normal-bxA4bluv.woff +0 -0
  1937. package/public/assets/ibm-plex-sans-kr-26-700-normal-95lB4fwA.woff +0 -0
  1938. package/public/assets/ibm-plex-sans-kr-26-700-normal-VgtqRBM7.woff2 +0 -0
  1939. package/public/assets/ibm-plex-sans-kr-27-400-normal-B5ZhKYLO.woff2 +0 -0
  1940. package/public/assets/ibm-plex-sans-kr-27-400-normal-Dy5-YEOY.woff +0 -0
  1941. package/public/assets/ibm-plex-sans-kr-27-600-normal-C07c5If1.woff +0 -0
  1942. package/public/assets/ibm-plex-sans-kr-27-600-normal-C6bVD75P.woff2 +0 -0
  1943. package/public/assets/ibm-plex-sans-kr-27-700-normal-_7qWVHie.woff2 +0 -0
  1944. package/public/assets/ibm-plex-sans-kr-27-700-normal-h3oxUHXv.woff +0 -0
  1945. package/public/assets/ibm-plex-sans-kr-28-400-normal-Bwghrgjh.woff2 +0 -0
  1946. package/public/assets/ibm-plex-sans-kr-28-400-normal-DNnelfuN.woff +0 -0
  1947. package/public/assets/ibm-plex-sans-kr-28-600-normal-BBQsSgWd.woff2 +0 -0
  1948. package/public/assets/ibm-plex-sans-kr-28-600-normal-BeDPvyp8.woff +0 -0
  1949. package/public/assets/ibm-plex-sans-kr-28-700-normal-Cjg_wNSB.woff +0 -0
  1950. package/public/assets/ibm-plex-sans-kr-28-700-normal-DY_bvrHQ.woff2 +0 -0
  1951. package/public/assets/ibm-plex-sans-kr-29-400-normal-Dj7VksMf.woff +0 -0
  1952. package/public/assets/ibm-plex-sans-kr-29-400-normal-gP3qcvie.woff2 +0 -0
  1953. package/public/assets/ibm-plex-sans-kr-29-600-normal-B0Nsm10J.woff +0 -0
  1954. package/public/assets/ibm-plex-sans-kr-29-600-normal-Dn9kzegM.woff2 +0 -0
  1955. package/public/assets/ibm-plex-sans-kr-29-700-normal-BaagHPlF.woff2 +0 -0
  1956. package/public/assets/ibm-plex-sans-kr-29-700-normal-sM5sErEE.woff +0 -0
  1957. package/public/assets/ibm-plex-sans-kr-3-400-normal-01r-uCGK.woff +0 -0
  1958. package/public/assets/ibm-plex-sans-kr-3-400-normal-MpgNCYqt.woff2 +0 -0
  1959. package/public/assets/ibm-plex-sans-kr-3-600-normal-CuyoBBEp.woff2 +0 -0
  1960. package/public/assets/ibm-plex-sans-kr-3-600-normal-OOnXi3dj.woff +0 -0
  1961. package/public/assets/ibm-plex-sans-kr-3-700-normal-GjYjPFRF.woff +0 -0
  1962. package/public/assets/ibm-plex-sans-kr-3-700-normal-Vr7CPe4d.woff2 +0 -0
  1963. package/public/assets/ibm-plex-sans-kr-30-400-normal-4H84KBjL.woff +0 -0
  1964. package/public/assets/ibm-plex-sans-kr-30-400-normal-D9W6fT0U.woff2 +0 -0
  1965. package/public/assets/ibm-plex-sans-kr-30-600-normal-CHYuKtvD.woff +0 -0
  1966. package/public/assets/ibm-plex-sans-kr-30-600-normal-DAX8ENIb.woff2 +0 -0
  1967. package/public/assets/ibm-plex-sans-kr-30-700-normal-DvDs5GHe.woff2 +0 -0
  1968. package/public/assets/ibm-plex-sans-kr-30-700-normal-kGpxnFlG.woff +0 -0
  1969. package/public/assets/ibm-plex-sans-kr-31-400-normal-BnpH2dyr.woff +0 -0
  1970. package/public/assets/ibm-plex-sans-kr-31-400-normal-DhPplA2S.woff2 +0 -0
  1971. package/public/assets/ibm-plex-sans-kr-31-600-normal-BDIwmQD2.woff +0 -0
  1972. package/public/assets/ibm-plex-sans-kr-31-600-normal-DWFfqfVJ.woff2 +0 -0
  1973. package/public/assets/ibm-plex-sans-kr-31-700-normal-BEM3LLr5.woff +0 -0
  1974. package/public/assets/ibm-plex-sans-kr-31-700-normal-BH_9UzMR.woff2 +0 -0
  1975. package/public/assets/ibm-plex-sans-kr-32-400-normal-BkNndOiq.woff2 +0 -0
  1976. package/public/assets/ibm-plex-sans-kr-32-400-normal-GRBsq_TQ.woff +0 -0
  1977. package/public/assets/ibm-plex-sans-kr-32-600-normal-Dc31ixSD.woff2 +0 -0
  1978. package/public/assets/ibm-plex-sans-kr-32-600-normal-qBGKeeZh.woff +0 -0
  1979. package/public/assets/ibm-plex-sans-kr-32-700-normal-CKh4-8lS.woff +0 -0
  1980. package/public/assets/ibm-plex-sans-kr-32-700-normal-SEF2IUu4.woff2 +0 -0
  1981. package/public/assets/ibm-plex-sans-kr-33-400-normal-BEJcB5Pj.woff +0 -0
  1982. package/public/assets/ibm-plex-sans-kr-33-400-normal-DOnua0XC.woff2 +0 -0
  1983. package/public/assets/ibm-plex-sans-kr-33-600-normal-Dk43PWfK.woff +0 -0
  1984. package/public/assets/ibm-plex-sans-kr-33-600-normal-_9rnVtrt.woff2 +0 -0
  1985. package/public/assets/ibm-plex-sans-kr-33-700-normal-BkaB_Reu.woff +0 -0
  1986. package/public/assets/ibm-plex-sans-kr-33-700-normal-DbnutdYp.woff2 +0 -0
  1987. package/public/assets/ibm-plex-sans-kr-34-400-normal-BFI-kcuc.woff +0 -0
  1988. package/public/assets/ibm-plex-sans-kr-34-400-normal-b_F-aCuz.woff2 +0 -0
  1989. package/public/assets/ibm-plex-sans-kr-34-600-normal-BwgNjnnm.woff2 +0 -0
  1990. package/public/assets/ibm-plex-sans-kr-34-600-normal-Dkhx4lxu.woff +0 -0
  1991. package/public/assets/ibm-plex-sans-kr-34-700-normal-UpohLQJI.woff2 +0 -0
  1992. package/public/assets/ibm-plex-sans-kr-34-700-normal-Yul5WPNb.woff +0 -0
  1993. package/public/assets/ibm-plex-sans-kr-35-400-normal-CHpiv9C7.woff2 +0 -0
  1994. package/public/assets/ibm-plex-sans-kr-35-400-normal-D8XpW-jV.woff +0 -0
  1995. package/public/assets/ibm-plex-sans-kr-35-600-normal-CD4ArYzM.woff2 +0 -0
  1996. package/public/assets/ibm-plex-sans-kr-35-600-normal-M066d6gr.woff +0 -0
  1997. package/public/assets/ibm-plex-sans-kr-35-700-normal-DV4atPPn.woff2 +0 -0
  1998. package/public/assets/ibm-plex-sans-kr-35-700-normal-hjVn7kub.woff +0 -0
  1999. package/public/assets/ibm-plex-sans-kr-36-400-normal-BT6SwwtR.woff2 +0 -0
  2000. package/public/assets/ibm-plex-sans-kr-36-400-normal-Cd-eoA5H.woff +0 -0
  2001. package/public/assets/ibm-plex-sans-kr-36-600-normal-DsGroCqE.woff +0 -0
  2002. package/public/assets/ibm-plex-sans-kr-36-600-normal-kFFPHZH9.woff2 +0 -0
  2003. package/public/assets/ibm-plex-sans-kr-36-700-normal-CO6mIiJi.woff +0 -0
  2004. package/public/assets/ibm-plex-sans-kr-36-700-normal-DfKrXTUN.woff2 +0 -0
  2005. package/public/assets/ibm-plex-sans-kr-37-400-normal-BiWBJPQ7.woff2 +0 -0
  2006. package/public/assets/ibm-plex-sans-kr-37-400-normal-Bj7jp-Iz.woff +0 -0
  2007. package/public/assets/ibm-plex-sans-kr-37-600-normal-CnPg-4RZ.woff2 +0 -0
  2008. package/public/assets/ibm-plex-sans-kr-37-600-normal-Cvgtdz7H.woff +0 -0
  2009. package/public/assets/ibm-plex-sans-kr-37-700-normal-BtF0jwlF.woff +0 -0
  2010. package/public/assets/ibm-plex-sans-kr-37-700-normal-C4IDZ9L-.woff2 +0 -0
  2011. package/public/assets/ibm-plex-sans-kr-38-400-normal-B4UIE9Zj.woff +0 -0
  2012. package/public/assets/ibm-plex-sans-kr-38-400-normal-CLr3K58D.woff2 +0 -0
  2013. package/public/assets/ibm-plex-sans-kr-38-600-normal-Dln3mVPi.woff +0 -0
  2014. package/public/assets/ibm-plex-sans-kr-38-600-normal-Uy8tuoQH.woff2 +0 -0
  2015. package/public/assets/ibm-plex-sans-kr-38-700-normal-DClAUGO7.woff +0 -0
  2016. package/public/assets/ibm-plex-sans-kr-38-700-normal-DHBmduQt.woff2 +0 -0
  2017. package/public/assets/ibm-plex-sans-kr-39-400-normal-BzR2eDWi.woff2 +0 -0
  2018. package/public/assets/ibm-plex-sans-kr-39-400-normal-WTG9_11D.woff +0 -0
  2019. package/public/assets/ibm-plex-sans-kr-39-600-normal-DHmemGdc.woff +0 -0
  2020. package/public/assets/ibm-plex-sans-kr-39-600-normal-DxNgVy70.woff2 +0 -0
  2021. package/public/assets/ibm-plex-sans-kr-39-700-normal-B7V6NyLX.woff +0 -0
  2022. package/public/assets/ibm-plex-sans-kr-39-700-normal-CijZ21_m.woff2 +0 -0
  2023. package/public/assets/ibm-plex-sans-kr-4-400-normal-1GfpLFeR.woff +0 -0
  2024. package/public/assets/ibm-plex-sans-kr-4-400-normal-BSOJFi3M.woff2 +0 -0
  2025. package/public/assets/ibm-plex-sans-kr-4-600-normal-BGAcZoa5.woff +0 -0
  2026. package/public/assets/ibm-plex-sans-kr-4-600-normal-DP-OzMv8.woff2 +0 -0
  2027. package/public/assets/ibm-plex-sans-kr-4-700-normal-BTl2LovL.woff +0 -0
  2028. package/public/assets/ibm-plex-sans-kr-4-700-normal-PLU2uOG6.woff2 +0 -0
  2029. package/public/assets/ibm-plex-sans-kr-40-400-normal-BJCaISym.woff +0 -0
  2030. package/public/assets/ibm-plex-sans-kr-40-400-normal-DxlOKNb6.woff2 +0 -0
  2031. package/public/assets/ibm-plex-sans-kr-40-600-normal-D79iYZbh.woff +0 -0
  2032. package/public/assets/ibm-plex-sans-kr-40-600-normal-DyMFY3yG.woff2 +0 -0
  2033. package/public/assets/ibm-plex-sans-kr-40-700-normal-BOSqPgLZ.woff2 +0 -0
  2034. package/public/assets/ibm-plex-sans-kr-40-700-normal-Bs7eQneK.woff +0 -0
  2035. package/public/assets/ibm-plex-sans-kr-41-400-normal-Ce6_8B6O.woff +0 -0
  2036. package/public/assets/ibm-plex-sans-kr-41-400-normal-THO3jy3s.woff2 +0 -0
  2037. package/public/assets/ibm-plex-sans-kr-41-600-normal-Ck2K5Ulf.woff2 +0 -0
  2038. package/public/assets/ibm-plex-sans-kr-41-600-normal-Df3Wep6L.woff +0 -0
  2039. package/public/assets/ibm-plex-sans-kr-41-700-normal-B-9pR0B0.woff2 +0 -0
  2040. package/public/assets/ibm-plex-sans-kr-41-700-normal-vrmrQol7.woff +0 -0
  2041. package/public/assets/ibm-plex-sans-kr-42-400-normal-Cgyyi6Mk.woff2 +0 -0
  2042. package/public/assets/ibm-plex-sans-kr-42-400-normal-mWRC9cE4.woff +0 -0
  2043. package/public/assets/ibm-plex-sans-kr-42-600-normal-BIw3yp_o.woff +0 -0
  2044. package/public/assets/ibm-plex-sans-kr-42-600-normal-CgHlrSUg.woff2 +0 -0
  2045. package/public/assets/ibm-plex-sans-kr-42-700-normal-CE4g_Vnr.woff2 +0 -0
  2046. package/public/assets/ibm-plex-sans-kr-42-700-normal-OHitFFYG.woff +0 -0
  2047. package/public/assets/ibm-plex-sans-kr-43-400-normal-DofKP3XM.woff2 +0 -0
  2048. package/public/assets/ibm-plex-sans-kr-43-400-normal-rklqUmDh.woff +0 -0
  2049. package/public/assets/ibm-plex-sans-kr-43-600-normal-BPJjrS1c.woff2 +0 -0
  2050. package/public/assets/ibm-plex-sans-kr-43-600-normal-Dl6BB-Lj.woff +0 -0
  2051. package/public/assets/ibm-plex-sans-kr-43-700-normal-B4zrRhmq.woff2 +0 -0
  2052. package/public/assets/ibm-plex-sans-kr-43-700-normal-Vq2Xt21W.woff +0 -0
  2053. package/public/assets/ibm-plex-sans-kr-44-400-normal-BPQ_BGOm.woff +0 -0
  2054. package/public/assets/ibm-plex-sans-kr-44-400-normal-BvoXxhh-.woff2 +0 -0
  2055. package/public/assets/ibm-plex-sans-kr-44-600-normal-B1scqjS5.woff2 +0 -0
  2056. package/public/assets/ibm-plex-sans-kr-44-600-normal-B1vhjtxY.woff +0 -0
  2057. package/public/assets/ibm-plex-sans-kr-44-700-normal-CdiYya7N.woff +0 -0
  2058. package/public/assets/ibm-plex-sans-kr-44-700-normal-CizxTCTp.woff2 +0 -0
  2059. package/public/assets/ibm-plex-sans-kr-45-400-normal-BN1x-JCl.woff +0 -0
  2060. package/public/assets/ibm-plex-sans-kr-45-400-normal-DMKz6H_F.woff2 +0 -0
  2061. package/public/assets/ibm-plex-sans-kr-45-600-normal-D74kcLg1.woff +0 -0
  2062. package/public/assets/ibm-plex-sans-kr-45-600-normal-DNXvxDIf.woff2 +0 -0
  2063. package/public/assets/ibm-plex-sans-kr-45-700-normal-BdAAndOM.woff2 +0 -0
  2064. package/public/assets/ibm-plex-sans-kr-45-700-normal-DeYHlTSC.woff +0 -0
  2065. package/public/assets/ibm-plex-sans-kr-46-400-normal-K8yMYku4.woff +0 -0
  2066. package/public/assets/ibm-plex-sans-kr-46-400-normal-Z0YZvJMA.woff2 +0 -0
  2067. package/public/assets/ibm-plex-sans-kr-46-600-normal-CfEBl86K.woff2 +0 -0
  2068. package/public/assets/ibm-plex-sans-kr-46-600-normal-Yu7W5Ur_.woff +0 -0
  2069. package/public/assets/ibm-plex-sans-kr-46-700-normal-C2i6qX8o.woff2 +0 -0
  2070. package/public/assets/ibm-plex-sans-kr-46-700-normal-Ck28wpb6.woff +0 -0
  2071. package/public/assets/ibm-plex-sans-kr-47-400-normal-BHD-6hCF.woff +0 -0
  2072. package/public/assets/ibm-plex-sans-kr-47-400-normal-DapCxPvn.woff2 +0 -0
  2073. package/public/assets/ibm-plex-sans-kr-47-600-normal-CxMB4f1K.woff +0 -0
  2074. package/public/assets/ibm-plex-sans-kr-47-600-normal-tmv6xC_z.woff2 +0 -0
  2075. package/public/assets/ibm-plex-sans-kr-47-700-normal-ByTiuiZy.woff +0 -0
  2076. package/public/assets/ibm-plex-sans-kr-47-700-normal-C_LnNwcx.woff2 +0 -0
  2077. package/public/assets/ibm-plex-sans-kr-48-400-normal-5VJWa5C8.woff +0 -0
  2078. package/public/assets/ibm-plex-sans-kr-48-400-normal-CBCdCJJN.woff2 +0 -0
  2079. package/public/assets/ibm-plex-sans-kr-48-600-normal-DAbbVYEi.woff +0 -0
  2080. package/public/assets/ibm-plex-sans-kr-48-600-normal-QEQJ2vNg.woff2 +0 -0
  2081. package/public/assets/ibm-plex-sans-kr-48-700-normal-D9NnIF6F.woff2 +0 -0
  2082. package/public/assets/ibm-plex-sans-kr-48-700-normal-gCAr-9Ui.woff +0 -0
  2083. package/public/assets/ibm-plex-sans-kr-49-400-normal-BENNdZwd.woff2 +0 -0
  2084. package/public/assets/ibm-plex-sans-kr-49-400-normal-DrUErJVA.woff +0 -0
  2085. package/public/assets/ibm-plex-sans-kr-49-600-normal-B9kwAyIi.woff2 +0 -0
  2086. package/public/assets/ibm-plex-sans-kr-49-600-normal-DHvPm2NF.woff +0 -0
  2087. package/public/assets/ibm-plex-sans-kr-49-700-normal-C7LprN_f.woff2 +0 -0
  2088. package/public/assets/ibm-plex-sans-kr-49-700-normal-C80RxHso.woff +0 -0
  2089. package/public/assets/ibm-plex-sans-kr-5-400-normal-B1Nb7Dqt.woff +0 -0
  2090. package/public/assets/ibm-plex-sans-kr-5-400-normal-BBWPbJ8R.woff2 +0 -0
  2091. package/public/assets/ibm-plex-sans-kr-5-600-normal-BV1Q-ya9.woff2 +0 -0
  2092. package/public/assets/ibm-plex-sans-kr-5-600-normal-vSSmYEgt.woff +0 -0
  2093. package/public/assets/ibm-plex-sans-kr-5-700-normal-88k3u19j.woff2 +0 -0
  2094. package/public/assets/ibm-plex-sans-kr-5-700-normal-Bm4AIB4W.woff +0 -0
  2095. package/public/assets/ibm-plex-sans-kr-50-400-normal-DSyr09Pi.woff +0 -0
  2096. package/public/assets/ibm-plex-sans-kr-50-400-normal-wVEmJJbn.woff2 +0 -0
  2097. package/public/assets/ibm-plex-sans-kr-50-600-normal-CNwgbPME.woff2 +0 -0
  2098. package/public/assets/ibm-plex-sans-kr-50-600-normal-DwlyYo3O.woff +0 -0
  2099. package/public/assets/ibm-plex-sans-kr-50-700-normal-BpuC-Ja2.woff2 +0 -0
  2100. package/public/assets/ibm-plex-sans-kr-50-700-normal-DJ4qrNjm.woff +0 -0
  2101. package/public/assets/ibm-plex-sans-kr-51-400-normal-CI8zKOiq.woff2 +0 -0
  2102. package/public/assets/ibm-plex-sans-kr-51-400-normal-Nb_ATV55.woff +0 -0
  2103. package/public/assets/ibm-plex-sans-kr-51-600-normal-D1q9iZG9.woff2 +0 -0
  2104. package/public/assets/ibm-plex-sans-kr-51-600-normal-DCKOx3do.woff +0 -0
  2105. package/public/assets/ibm-plex-sans-kr-51-700-normal-CDxcnlps.woff2 +0 -0
  2106. package/public/assets/ibm-plex-sans-kr-51-700-normal-CrbVhrAy.woff +0 -0
  2107. package/public/assets/ibm-plex-sans-kr-52-400-normal-DgbfUacv.woff +0 -0
  2108. package/public/assets/ibm-plex-sans-kr-52-400-normal-Dqrwgacb.woff2 +0 -0
  2109. package/public/assets/ibm-plex-sans-kr-52-600-normal-DpEHO2lx.woff +0 -0
  2110. package/public/assets/ibm-plex-sans-kr-52-600-normal-HtoGXJPD.woff2 +0 -0
  2111. package/public/assets/ibm-plex-sans-kr-52-700-normal-6UeGb2y_.woff +0 -0
  2112. package/public/assets/ibm-plex-sans-kr-52-700-normal-Cj2MbqkN.woff2 +0 -0
  2113. package/public/assets/ibm-plex-sans-kr-53-400-normal-BPlmQmyN.woff +0 -0
  2114. package/public/assets/ibm-plex-sans-kr-53-400-normal-uFBOSatZ.woff2 +0 -0
  2115. package/public/assets/ibm-plex-sans-kr-53-600-normal-3e73VLox.woff2 +0 -0
  2116. package/public/assets/ibm-plex-sans-kr-53-600-normal-CHFWjDbo.woff +0 -0
  2117. package/public/assets/ibm-plex-sans-kr-53-700-normal-BtF7lJZ6.woff2 +0 -0
  2118. package/public/assets/ibm-plex-sans-kr-53-700-normal-D1_BFs6r.woff +0 -0
  2119. package/public/assets/ibm-plex-sans-kr-54-400-normal-B_JBM8HP.woff2 +0 -0
  2120. package/public/assets/ibm-plex-sans-kr-54-400-normal-DShvO3nx.woff +0 -0
  2121. package/public/assets/ibm-plex-sans-kr-54-600-normal-CIir-_6C.woff2 +0 -0
  2122. package/public/assets/ibm-plex-sans-kr-54-600-normal-HSAnxCQg.woff +0 -0
  2123. package/public/assets/ibm-plex-sans-kr-54-700-normal-DOcpS_k9.woff2 +0 -0
  2124. package/public/assets/ibm-plex-sans-kr-54-700-normal-DR_NIHG9.woff +0 -0
  2125. package/public/assets/ibm-plex-sans-kr-55-400-normal-BIBVbLNo.woff2 +0 -0
  2126. package/public/assets/ibm-plex-sans-kr-55-400-normal-DACpgdpL.woff +0 -0
  2127. package/public/assets/ibm-plex-sans-kr-55-600-normal-ByArDHHI.woff2 +0 -0
  2128. package/public/assets/ibm-plex-sans-kr-55-600-normal-CNKcN-Ig.woff +0 -0
  2129. package/public/assets/ibm-plex-sans-kr-55-700-normal-9BGvVFJG.woff +0 -0
  2130. package/public/assets/ibm-plex-sans-kr-55-700-normal-DCUUt7cX.woff2 +0 -0
  2131. package/public/assets/ibm-plex-sans-kr-56-400-normal-D6a133Nk.woff +0 -0
  2132. package/public/assets/ibm-plex-sans-kr-56-400-normal-E_0UP4jm.woff2 +0 -0
  2133. package/public/assets/ibm-plex-sans-kr-56-600-normal-DScuu4Uu.woff2 +0 -0
  2134. package/public/assets/ibm-plex-sans-kr-56-600-normal-hzikha37.woff +0 -0
  2135. package/public/assets/ibm-plex-sans-kr-56-700-normal-BCQXFjgs.woff +0 -0
  2136. package/public/assets/ibm-plex-sans-kr-56-700-normal-CfjdYZM4.woff2 +0 -0
  2137. package/public/assets/ibm-plex-sans-kr-57-400-normal-CBQftTJt.woff +0 -0
  2138. package/public/assets/ibm-plex-sans-kr-57-400-normal-F8LL-J5_.woff2 +0 -0
  2139. package/public/assets/ibm-plex-sans-kr-57-600-normal-BR6Du0PQ.woff +0 -0
  2140. package/public/assets/ibm-plex-sans-kr-57-600-normal-CQ1redVd.woff2 +0 -0
  2141. package/public/assets/ibm-plex-sans-kr-57-700-normal-DQEJ1-LS.woff2 +0 -0
  2142. package/public/assets/ibm-plex-sans-kr-57-700-normal-FH-ttKed.woff +0 -0
  2143. package/public/assets/ibm-plex-sans-kr-58-400-normal-DqIzdKrV.woff +0 -0
  2144. package/public/assets/ibm-plex-sans-kr-58-400-normal-i71EDyfV.woff2 +0 -0
  2145. package/public/assets/ibm-plex-sans-kr-58-600-normal-Bpgq8MX2.woff +0 -0
  2146. package/public/assets/ibm-plex-sans-kr-58-600-normal-Bqgrv0lo.woff2 +0 -0
  2147. package/public/assets/ibm-plex-sans-kr-58-700-normal-Bj2HnGEw.woff +0 -0
  2148. package/public/assets/ibm-plex-sans-kr-58-700-normal-DYsLBu1T.woff2 +0 -0
  2149. package/public/assets/ibm-plex-sans-kr-59-400-normal-B-8F2Uet.woff +0 -0
  2150. package/public/assets/ibm-plex-sans-kr-59-400-normal-BHAiqXEM.woff2 +0 -0
  2151. package/public/assets/ibm-plex-sans-kr-59-600-normal-B-CGe3sL.woff2 +0 -0
  2152. package/public/assets/ibm-plex-sans-kr-59-600-normal-BuQf4YmM.woff +0 -0
  2153. package/public/assets/ibm-plex-sans-kr-59-700-normal-BZ9z_FHx.woff +0 -0
  2154. package/public/assets/ibm-plex-sans-kr-59-700-normal-CWSgjf9c.woff2 +0 -0
  2155. package/public/assets/ibm-plex-sans-kr-6-400-normal-AY_mybA2.woff +0 -0
  2156. package/public/assets/ibm-plex-sans-kr-6-400-normal-CTPxjOYB.woff2 +0 -0
  2157. package/public/assets/ibm-plex-sans-kr-6-600-normal-CdfPYwdk.woff2 +0 -0
  2158. package/public/assets/ibm-plex-sans-kr-6-600-normal-oGadQOpD.woff +0 -0
  2159. package/public/assets/ibm-plex-sans-kr-6-700-normal-DLe2ZT_Q.woff2 +0 -0
  2160. package/public/assets/ibm-plex-sans-kr-6-700-normal-bXRUCZKE.woff +0 -0
  2161. package/public/assets/ibm-plex-sans-kr-60-400-normal-CEDE9rS0.woff +0 -0
  2162. package/public/assets/ibm-plex-sans-kr-60-400-normal-z5dDoQx9.woff2 +0 -0
  2163. package/public/assets/ibm-plex-sans-kr-60-600-normal-Bl94dFYa.woff2 +0 -0
  2164. package/public/assets/ibm-plex-sans-kr-60-600-normal-OLqttnKu.woff +0 -0
  2165. package/public/assets/ibm-plex-sans-kr-60-700-normal-CYME5EXY.woff2 +0 -0
  2166. package/public/assets/ibm-plex-sans-kr-60-700-normal-I1XysYDt.woff +0 -0
  2167. package/public/assets/ibm-plex-sans-kr-61-400-normal-Ci1tC2DE.woff +0 -0
  2168. package/public/assets/ibm-plex-sans-kr-61-400-normal-DnyFjM_B.woff2 +0 -0
  2169. package/public/assets/ibm-plex-sans-kr-61-600-normal-BZxjTCO5.woff +0 -0
  2170. package/public/assets/ibm-plex-sans-kr-61-600-normal-ChG7s6jj.woff2 +0 -0
  2171. package/public/assets/ibm-plex-sans-kr-61-700-normal-Bi5bgOa-.woff +0 -0
  2172. package/public/assets/ibm-plex-sans-kr-61-700-normal-CCHPFSSV.woff2 +0 -0
  2173. package/public/assets/ibm-plex-sans-kr-62-400-normal-BIF8JT4K.woff2 +0 -0
  2174. package/public/assets/ibm-plex-sans-kr-62-400-normal-BMQQOADr.woff +0 -0
  2175. package/public/assets/ibm-plex-sans-kr-62-600-normal-BwPZY4No.woff +0 -0
  2176. package/public/assets/ibm-plex-sans-kr-62-600-normal-CCy9m1Yi.woff2 +0 -0
  2177. package/public/assets/ibm-plex-sans-kr-62-700-normal-CUKZrRn4.woff +0 -0
  2178. package/public/assets/ibm-plex-sans-kr-62-700-normal-PUE26tsV.woff2 +0 -0
  2179. package/public/assets/ibm-plex-sans-kr-63-400-normal-Bi-DePsy.woff +0 -0
  2180. package/public/assets/ibm-plex-sans-kr-63-400-normal-DbEg4X6i.woff2 +0 -0
  2181. package/public/assets/ibm-plex-sans-kr-63-600-normal-B_hznMYb.woff2 +0 -0
  2182. package/public/assets/ibm-plex-sans-kr-63-600-normal-DXp5U46T.woff +0 -0
  2183. package/public/assets/ibm-plex-sans-kr-63-700-normal-CdRKaRR8.woff +0 -0
  2184. package/public/assets/ibm-plex-sans-kr-63-700-normal-d_p4qgBI.woff2 +0 -0
  2185. package/public/assets/ibm-plex-sans-kr-64-400-normal-BoOvEFVR.woff2 +0 -0
  2186. package/public/assets/ibm-plex-sans-kr-64-400-normal-DhttFBeF.woff +0 -0
  2187. package/public/assets/ibm-plex-sans-kr-64-600-normal-DdDi5wpQ.woff2 +0 -0
  2188. package/public/assets/ibm-plex-sans-kr-64-600-normal-DnHS-nmP.woff +0 -0
  2189. package/public/assets/ibm-plex-sans-kr-64-700-normal-DvcYr3Tg.woff2 +0 -0
  2190. package/public/assets/ibm-plex-sans-kr-64-700-normal-Z-oKOpcu.woff +0 -0
  2191. package/public/assets/ibm-plex-sans-kr-65-600-normal-CuB_ApqX.woff2 +0 -0
  2192. package/public/assets/ibm-plex-sans-kr-65-700-normal-OQGIHpUr.woff2 +0 -0
  2193. package/public/assets/ibm-plex-sans-kr-7-400-normal-CDkAi-IU.woff2 +0 -0
  2194. package/public/assets/ibm-plex-sans-kr-7-400-normal-VZ_YUdPy.woff +0 -0
  2195. package/public/assets/ibm-plex-sans-kr-7-600-normal-CeGVp1rD.woff +0 -0
  2196. package/public/assets/ibm-plex-sans-kr-7-600-normal-Dh7JSXz4.woff2 +0 -0
  2197. package/public/assets/ibm-plex-sans-kr-7-700-normal-C-GGubNS.woff +0 -0
  2198. package/public/assets/ibm-plex-sans-kr-7-700-normal-DkDnzNv2.woff2 +0 -0
  2199. package/public/assets/ibm-plex-sans-kr-8-400-normal-BmMhoS32.woff2 +0 -0
  2200. package/public/assets/ibm-plex-sans-kr-8-400-normal-Ci0W5IWz.woff +0 -0
  2201. package/public/assets/ibm-plex-sans-kr-8-600-normal-B0rxBWNc.woff2 +0 -0
  2202. package/public/assets/ibm-plex-sans-kr-8-600-normal-BJjl00Le.woff +0 -0
  2203. package/public/assets/ibm-plex-sans-kr-8-700-normal-5jYiHHRz.woff2 +0 -0
  2204. package/public/assets/ibm-plex-sans-kr-8-700-normal-BEKQdV0c.woff +0 -0
  2205. package/public/assets/ibm-plex-sans-kr-9-400-normal-CeBwsqAD.woff +0 -0
  2206. package/public/assets/ibm-plex-sans-kr-9-400-normal-DJinq116.woff2 +0 -0
  2207. package/public/assets/ibm-plex-sans-kr-9-600-normal-DWoOSbq5.woff +0 -0
  2208. package/public/assets/ibm-plex-sans-kr-9-600-normal-DraA-1Zl.woff2 +0 -0
  2209. package/public/assets/ibm-plex-sans-kr-9-700-normal-BkZ1vv2G.woff +0 -0
  2210. package/public/assets/ibm-plex-sans-kr-9-700-normal-CymJjnAS.woff2 +0 -0
  2211. package/public/assets/ibm-plex-sans-kr-93-400-normal-5J6UR9CM.woff2 +0 -0
  2212. package/public/assets/ibm-plex-sans-kr-93-400-normal-Cdi-IBra.woff +0 -0
  2213. package/public/assets/ibm-plex-sans-kr-93-600-normal-4KzAAJzD.woff +0 -0
  2214. package/public/assets/ibm-plex-sans-kr-93-600-normal-C3ObUrek.woff2 +0 -0
  2215. package/public/assets/ibm-plex-sans-kr-93-700-normal-BEo_xrjH.woff +0 -0
  2216. package/public/assets/ibm-plex-sans-kr-93-700-normal-DYlKYBEL.woff2 +0 -0
  2217. package/public/assets/ibm-plex-sans-kr-94-400-normal-CLS33fqM.woff +0 -0
  2218. package/public/assets/ibm-plex-sans-kr-94-400-normal-CsJn1kPf.woff2 +0 -0
  2219. package/public/assets/ibm-plex-sans-kr-94-600-normal-BqkCATJS.woff2 +0 -0
  2220. package/public/assets/ibm-plex-sans-kr-94-600-normal-DGs8D_d9.woff +0 -0
  2221. package/public/assets/ibm-plex-sans-kr-94-700-normal-BcAowvjY.woff2 +0 -0
  2222. package/public/assets/ibm-plex-sans-kr-94-700-normal-Rande0GP.woff +0 -0
  2223. package/public/assets/ibm-plex-sans-kr-96-400-normal-DqxPcneT.woff2 +0 -0
  2224. package/public/assets/ibm-plex-sans-kr-96-400-normal-m9r3xH18.woff +0 -0
  2225. package/public/assets/ibm-plex-sans-kr-96-600-normal-E6j9XpvP.woff +0 -0
  2226. package/public/assets/ibm-plex-sans-kr-96-600-normal-qnNrW3Df.woff2 +0 -0
  2227. package/public/assets/ibm-plex-sans-kr-96-700-normal-D_kcIWRN.woff +0 -0
  2228. package/public/assets/ibm-plex-sans-kr-96-700-normal-DafuQoH3.woff2 +0 -0
  2229. package/public/assets/ibm-plex-sans-kr-97-400-normal-DOlHHts_.woff2 +0 -0
  2230. package/public/assets/ibm-plex-sans-kr-97-400-normal-TWLDWHgL.woff +0 -0
  2231. package/public/assets/ibm-plex-sans-kr-97-600-normal-CHxkMEAU.woff2 +0 -0
  2232. package/public/assets/ibm-plex-sans-kr-97-600-normal-CXVo40nf.woff +0 -0
  2233. package/public/assets/ibm-plex-sans-kr-97-700-normal-BdFpzIjS.woff2 +0 -0
  2234. package/public/assets/ibm-plex-sans-kr-97-700-normal-C5vPlSUB.woff +0 -0
  2235. package/public/assets/ibm-plex-sans-kr-98-400-normal-CyxDRXqs.woff2 +0 -0
  2236. package/public/assets/ibm-plex-sans-kr-98-400-normal-D-_zohjb.woff +0 -0
  2237. package/public/assets/ibm-plex-sans-kr-98-600-normal-CizO16Ew.woff +0 -0
  2238. package/public/assets/ibm-plex-sans-kr-98-600-normal-D-SBD5Hk.woff2 +0 -0
  2239. package/public/assets/ibm-plex-sans-kr-98-700-normal-BArUuixv.woff2 +0 -0
  2240. package/public/assets/ibm-plex-sans-kr-98-700-normal-O_rp84MR.woff +0 -0
  2241. package/public/assets/ibm-plex-sans-kr-99-400-normal-COuj214s.woff2 +0 -0
  2242. package/public/assets/ibm-plex-sans-kr-99-600-normal-j_ccRvHi.woff2 +0 -0
  2243. package/public/assets/ibm-plex-sans-kr-99-700-normal-BGCe6SPX.woff2 +0 -0
  2244. package/public/assets/ibm-plex-sans-kr-latin-400-normal-7kwLL-e3.woff +0 -0
  2245. package/public/assets/ibm-plex-sans-kr-latin-400-normal-Bc7vhvxM.woff2 +0 -0
  2246. package/public/assets/ibm-plex-sans-kr-latin-600-normal-n-2PV5Ut.woff2 +0 -0
  2247. package/public/assets/ibm-plex-sans-kr-latin-600-normal-yks4z4wu.woff +0 -0
  2248. package/public/assets/ibm-plex-sans-kr-latin-700-normal-Bj41MRxQ.woff +0 -0
  2249. package/public/assets/ibm-plex-sans-kr-latin-700-normal-CIbXnLaA.woff2 +0 -0
  2250. package/public/assets/ibm-plex-sans-latin-ext-wght-normal-CIII54If.woff2 +0 -0
  2251. package/public/assets/ibm-plex-sans-latin-wght-normal-IvpUvPa2.woff2 +0 -0
  2252. package/public/assets/ibm-plex-sans-vietnamese-wght-normal-Dg1JeJN0.woff2 +0 -0
  2253. package/public/assets/index-CS23Ozt6.js +11 -0
  2254. package/public/assets/index-CS23Ozt6.js.map +1 -0
  2255. package/public/assets/index-DZyHRhbQ.css +2 -0
  2256. package/public/assets/initial-avatar-CtuDUz_W.js +2 -0
  2257. package/public/assets/initial-avatar-CtuDUz_W.js.map +1 -0
  2258. package/public/assets/input-CzQki7k6.js +2 -0
  2259. package/public/assets/input-CzQki7k6.js.map +1 -0
  2260. package/public/assets/key-round-CdvHb8vT.js +2 -0
  2261. package/public/assets/key-round-CdvHb8vT.js.map +1 -0
  2262. package/public/assets/labeled-separator-CV7nb0XW.js +2 -0
  2263. package/public/assets/labeled-separator-CV7nb0XW.js.map +1 -0
  2264. package/public/assets/link-C-WdTj3F.js +2 -0
  2265. package/public/assets/link-C-WdTj3F.js.map +1 -0
  2266. package/public/assets/lock-7NRyvXBS.js +2 -0
  2267. package/public/assets/lock-7NRyvXBS.js.map +1 -0
  2268. package/public/assets/login-C5vUVgr_.js +2 -0
  2269. package/public/assets/login-C5vUVgr_.js.map +1 -0
  2270. package/public/assets/login-nukebli4.js +2 -0
  2271. package/public/assets/login-nukebli4.js.map +1 -0
  2272. package/public/assets/logout-B5T52P8u.js +2 -0
  2273. package/public/assets/logout-B5T52P8u.js.map +1 -0
  2274. package/public/assets/mail-D0B_1Dzd.js +2 -0
  2275. package/public/assets/mail-D0B_1Dzd.js.map +1 -0
  2276. package/public/assets/modal-BDQFucjz.js +2 -0
  2277. package/public/assets/modal-BDQFucjz.js.map +1 -0
  2278. package/public/assets/mutationOptions-DyYFUbyn.js +2 -0
  2279. package/public/assets/mutationOptions-DyYFUbyn.js.map +1 -0
  2280. package/public/assets/passkey-BE9JvJOP.js +2 -0
  2281. package/public/assets/passkey-BE9JvJOP.js.map +1 -0
  2282. package/public/assets/passkey-C5vUVgr_.js +2 -0
  2283. package/public/assets/passkey-C5vUVgr_.js.map +1 -0
  2284. package/public/assets/passkey-CynCz1Dt.js +2 -0
  2285. package/public/assets/passkey-CynCz1Dt.js.map +1 -0
  2286. package/public/assets/passkey-J1qnYp9A.js +2 -0
  2287. package/public/assets/passkey-J1qnYp9A.js.map +1 -0
  2288. package/public/assets/passkey-error-ZqqPQUta.js +2 -0
  2289. package/public/assets/passkey-error-ZqqPQUta.js.map +1 -0
  2290. package/public/assets/password-C5vUVgr_.js +2 -0
  2291. package/public/assets/password-C5vUVgr_.js.map +1 -0
  2292. package/public/assets/password-RkUttbhD.js +2 -0
  2293. package/public/assets/password-RkUttbhD.js.map +1 -0
  2294. package/public/assets/password-reset-sU5KkBKi.js +2 -0
  2295. package/public/assets/password-reset-sU5KkBKi.js.map +1 -0
  2296. package/public/assets/password-strength-BeSOu_Ga.js +2 -0
  2297. package/public/assets/password-strength-BeSOu_Ga.js.map +1 -0
  2298. package/public/assets/pin-input-Cc-VkrQ3.js +2 -0
  2299. package/public/assets/pin-input-Cc-VkrQ3.js.map +1 -0
  2300. package/public/assets/plus-DSBBSrgj.js +2 -0
  2301. package/public/assets/plus-DSBBSrgj.js.map +1 -0
  2302. package/public/assets/profile-B5NaJfeS.js +2 -0
  2303. package/public/assets/profile-B5NaJfeS.js.map +1 -0
  2304. package/public/assets/profile-BcjsVYOx.js +2 -0
  2305. package/public/assets/profile-BcjsVYOx.js.map +1 -0
  2306. package/public/assets/promise-OpBtq8tG.js +2 -0
  2307. package/public/assets/promise-OpBtq8tG.js.map +1 -0
  2308. package/public/assets/provider-logos-u1YURWQr.js +2 -0
  2309. package/public/assets/provider-logos-u1YURWQr.js.map +1 -0
  2310. package/public/assets/recovery-PnUATiUi.js +2 -0
  2311. package/public/assets/recovery-PnUATiUi.js.map +1 -0
  2312. package/public/assets/register-C5vUVgr_.js +2 -0
  2313. package/public/assets/register-C5vUVgr_.js.map +1 -0
  2314. package/public/assets/register-DQXhru0_.js +2 -0
  2315. package/public/assets/register-DQXhru0_.js.map +1 -0
  2316. package/public/assets/reset-C5vUVgr_.js +2 -0
  2317. package/public/assets/reset-C5vUVgr_.js.map +1 -0
  2318. package/public/assets/reset-CQgIa3yf.js +2 -0
  2319. package/public/assets/reset-CQgIa3yf.js.map +1 -0
  2320. package/public/assets/routes-CAIeH5mq.js +2 -0
  2321. package/public/assets/routes-CAIeH5mq.js.map +1 -0
  2322. package/public/assets/select-C5vUVgr_.js +2 -0
  2323. package/public/assets/select-C5vUVgr_.js.map +1 -0
  2324. package/public/assets/select-DqZynXSt.js +2 -0
  2325. package/public/assets/select-DqZynXSt.js.map +1 -0
  2326. package/public/assets/separator-B0Bvh1he.js +2 -0
  2327. package/public/assets/separator-B0Bvh1he.js.map +1 -0
  2328. package/public/assets/shell-header-bar-CjG5qvPg.js +2 -0
  2329. package/public/assets/shell-header-bar-CjG5qvPg.js.map +1 -0
  2330. package/public/assets/shield-check-D_p8H0ni.js +2 -0
  2331. package/public/assets/shield-check-D_p8H0ni.js.map +1 -0
  2332. package/public/assets/standard-schema-e8gtSzGE.js +2 -0
  2333. package/public/assets/standard-schema-e8gtSzGE.js.map +1 -0
  2334. package/public/assets/terms-B5NaJfeS.js +2 -0
  2335. package/public/assets/terms-B5NaJfeS.js.map +1 -0
  2336. package/public/assets/terms-BHDAgn-H.js +2 -0
  2337. package/public/assets/terms-BHDAgn-H.js.map +1 -0
  2338. package/public/assets/terms-checkbox-list-6jteUTIZ.js +2 -0
  2339. package/public/assets/terms-checkbox-list-6jteUTIZ.js.map +1 -0
  2340. package/public/assets/totp-BNZ904Zm.js +2 -0
  2341. package/public/assets/totp-BNZ904Zm.js.map +1 -0
  2342. package/public/assets/totp-CJtfVNEq.js +2 -0
  2343. package/public/assets/totp-CJtfVNEq.js.map +1 -0
  2344. package/public/assets/totp-ECvOUcFx.js +2 -0
  2345. package/public/assets/totp-ECvOUcFx.js.map +1 -0
  2346. package/public/assets/trash-2-DZdKBLvC.js +2 -0
  2347. package/public/assets/trash-2-DZdKBLvC.js.map +1 -0
  2348. package/public/assets/triangle-alert-CqNn0kPs.js +2 -0
  2349. package/public/assets/triangle-alert-CqNn0kPs.js.map +1 -0
  2350. package/public/assets/use-totp-setup-BbS3XcZA.js +3 -0
  2351. package/public/assets/use-totp-setup-BbS3XcZA.js.map +1 -0
  2352. package/public/assets/useAriaLabelledBy-ByuMi3Ry.js +2 -0
  2353. package/public/assets/useAriaLabelledBy-ByuMi3Ry.js.map +1 -0
  2354. package/public/assets/useMutation-BWZ0G4Td.js +2 -0
  2355. package/public/assets/useMutation-BWZ0G4Td.js.map +1 -0
  2356. package/public/assets/useQuery-Ckxjmvtl.js +2 -0
  2357. package/public/assets/useQuery-Ckxjmvtl.js.map +1 -0
  2358. package/public/assets/users-CmFxrCQT.js +2 -0
  2359. package/public/assets/users-CmFxrCQT.js.map +1 -0
  2360. package/public/assets/valueToPercent-LgbY_prH.js +2 -0
  2361. package/public/assets/valueToPercent-LgbY_prH.js.map +1 -0
  2362. package/public/assets/zod-C87S6Tec.js +66 -0
  2363. package/public/assets/zod-C87S6Tec.js.map +1 -0
  2364. package/public/index.html +31 -0
  2365. package/public/vite.svg +1 -0
@@ -0,0 +1,2 @@
1
+ import{i as e,n as t,q as n,s as r}from"./createLucideIcon-BPpAIXR_.js";import{t as i}from"./useMutation-BWZ0G4Td.js";import{N as a,tt as o}from"./shell-header-bar-CjG5qvPg.js";import{t as s}from"./shield-check-D_p8H0ni.js";import{B as c,_ as l,v as u,y as d}from"./index-CS23Ozt6.js";import{t as f}from"./auth-page-header-CIn2E4zI.js";import{t as p}from"./initial-avatar-CtuDUz_W.js";import{t as m}from"./auth-layout-VtpryDof.js";var h=n();function g(){let{t:n}=e(),g=l.useSearch(),_=o(d({client_id:g.client_id,scope:g.scope})),v=i({...u,onSuccess:e=>{window.location.href=e.redirect_url}}),y=()=>{v.mutate({client_id:g.client_id,redirect_uri:g.redirect_uri,response_type:g.response_type,scope:g.scope,state:g.state,nonce:g.nonce,code_challenge:g.code_challenge,code_challenge_method:g.code_challenge_method,prompt:g.prompt,max_age:g.max_age,reauthenticated:g.reauthenticated,display:g.display,response_mode:g.response_mode,login_hint:g.login_hint,ui_locales:g.ui_locales,id_token_hint:g.id_token_hint,acr_values:g.acr_values,account_selected:g.account_selected,account_selection_state:g.account_selection_state,decision:`allow`})},b=()=>{v.mutate({client_id:g.client_id,redirect_uri:g.redirect_uri,response_type:g.response_type,scope:g.scope,state:g.state,nonce:g.nonce,code_challenge:g.code_challenge,code_challenge_method:g.code_challenge_method,prompt:g.prompt,max_age:g.max_age,reauthenticated:g.reauthenticated,display:g.display,response_mode:g.response_mode,login_hint:g.login_hint,ui_locales:g.ui_locales,id_token_hint:g.id_token_hint,acr_values:g.acr_values,account_selected:g.account_selected,account_selection_state:g.account_selection_state,decision:`deny`})},{client:x,scopes:S,user:C}=_.data;return(0,h.jsxs)(m,{width:`wide`,children:[(0,h.jsx)(f,{subtitle:n(`consent.subtitle`,{app:x.name}),title:n(`consent.title`)}),(0,h.jsx)(c.Root,{padding:`lg`,variant:`outlined`,children:(0,h.jsxs)(c.Content,{className:`flex items-center gap-tinyrack-md`,children:[(0,h.jsx)(p,{email:C.email,size:`sm`}),(0,h.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,h.jsx)(t,{color:`muted`,variant:`caption`,children:n(`consent.loggedInAs`)}),(0,h.jsx)(t,{"data-testid":`consent-user-email`,truncate:!0,variant:`body`,weight:`medium`,children:C.email})]})]})}),(0,h.jsxs)(`div`,{className:`flex flex-col gap-tinyrack-sm`,children:[(0,h.jsx)(t,{as:`h3`,variant:`label`,children:n(`consent.permissions.title`)}),(0,h.jsx)(`ul`,{className:`flex flex-col gap-tinyrack-xs`,"data-testid":`consent-scope-list`,children:S.map(e=>(0,h.jsxs)(`li`,{className:`flex items-center gap-tinyrack-sm rounded-tinyrack-md bg-tinyrack-surface-muted px-tinyrack-md py-tinyrack-sm`,children:[(0,h.jsx)(s,{"aria-hidden":!0,className:`size-tinyrack-lg shrink-0 text-tinyrack-info`}),(0,h.jsx)(t,{variant:`body`,children:n(`consent.scope.${e.name}`,{defaultValue:e.description})})]},e.name))})]}),(0,h.jsxs)(`div`,{className:`sticky bottom-0 flex gap-tinyrack-sm border-tinyrack-border border-t-tinyrack-default bg-tinyrack-surface/80 py-tinyrack-md backdrop-blur-sm`,children:[(0,h.jsxs)(r,{appearance:`outline`,className:`flex-1`,"data-testid":`consent-deny`,intent:`neutral`,loading:v.isPending,loadingLabel:n(`consent.deny`),onClick:b,type:`button`,uiSize:`lg`,children:[(0,h.jsx)(a,{"aria-hidden":!0,className:`size-tinyrack-lg`}),n(`consent.deny`)]}),(0,h.jsxs)(r,{className:`flex-1`,"data-testid":`consent-allow`,intent:`primary`,loading:v.isPending,loadingLabel:n(`consent.allow`),onClick:y,type:`button`,uiSize:`lg`,children:[(0,h.jsx)(s,{"aria-hidden":!0,className:`size-tinyrack-lg`}),n(`consent.allow`)]})]})]})}export{g as component};
2
+ //# sourceMappingURL=consent-BqqFDdsr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consent-BqqFDdsr.js","names":["useMutation","useSuspenseQuery","TRButton","TRCard","TRText","ShieldCheckIcon","XIcon","useTranslation","AuthPageHeader","InitialAvatar","AuthLayout","consentDecisionMutationOptions","getConsentInfoQueryOptions","Route","Consent","t","search","useSearch","consentInfoQuery","client_id","scope","consentMutation","onSuccess","data","window","location","href","redirect_url","handleAllow","mutate","redirect_uri","response_type","state","nonce","code_challenge","code_challenge_method","prompt","max_age","reauthenticated","display","response_mode","login_hint","ui_locales","id_token_hint","acr_values","account_selected","account_selection_state","decision","handleDeny","client","scopes","user","app","name","email","map","description","defaultValue","isPending","component"],"sources":["../../../frontend/src/routes/consent/index.tsx?tsr-split=component"],"sourcesContent":["import { useMutation, useSuspenseQuery } from '@tanstack/react-query';\nimport {\n createFileRoute,\n type ErrorComponentProps,\n} from '@tanstack/react-router';\nimport { TRButton } from '@tinyrack/ui/components/button';\nimport { TRCard } from '@tinyrack/ui/components/card';\nimport { TRText } from '@tinyrack/ui/components/text';\nimport { ShieldCheckIcon, XIcon } from 'lucide-react';\nimport { useTranslation } from 'react-i18next';\nimport { z } from 'zod';\nimport { AuthPageHeader } from '#frontend/components/auth/auth-page-header.tsx';\nimport { InitialAvatar } from '#frontend/components/ui/initial-avatar.tsx';\nimport { RouteErrorFallback } from '#frontend/components/ui/route-error-fallback.tsx';\nimport { AuthLayout } from '#frontend/features/layout/auth-layout.tsx';\nimport {\n buildAuthorizeUrl,\n OAuthSearchSchema,\n} from '#frontend/libs/oauth-search.ts';\nimport {\n consentDecisionMutationOptions,\n getConsentInfoQueryOptions,\n} from '#frontend/queries/consent.ts';\n\nconst ConsentSearchSchema = OAuthSearchSchema.extend({\n client_id: z.string(),\n redirect_uri: z.string(),\n response_type: z.string(),\n});\n\nexport const Route = createFileRoute('/consent/')({\n component: Consent,\n errorComponent: ConsentError,\n validateSearch: ConsentSearchSchema,\n loaderDeps: ({ search }) => ({\n client_id: search.client_id,\n scope: search.scope,\n }),\n loader: async ({ context, deps }) => {\n await context.queryClient.ensureQueryData(\n getConsentInfoQueryOptions({\n client_id: deps.client_id,\n scope: deps.scope,\n }),\n );\n },\n});\n\nfunction ConsentError(props: ErrorComponentProps) {\n return (\n <RouteErrorFallback\n {...props}\n onUnauthorized={() => {\n // Re-enter the OAuth flow from the beginning so the\n // user can log in and be redirected back through\n // /oauth/authorize -> /consent/.\n const params = new URLSearchParams(window.location.search);\n const search = Object.fromEntries(params.entries());\n window.location.href = buildAuthorizeUrl(search);\n }}\n />\n );\n}\n\nfunction Consent() {\n const { t } = useTranslation();\n const search = Route.useSearch();\n\n const consentInfoQuery = useSuspenseQuery(\n getConsentInfoQueryOptions({\n client_id: search.client_id,\n scope: search.scope,\n }),\n );\n\n const consentMutation = useMutation({\n ...consentDecisionMutationOptions,\n onSuccess: (data) => {\n window.location.href = data.redirect_url;\n },\n });\n\n const handleAllow = () => {\n consentMutation.mutate({\n client_id: search.client_id,\n redirect_uri: search.redirect_uri,\n response_type: search.response_type,\n scope: search.scope,\n state: search.state,\n nonce: search.nonce,\n code_challenge: search.code_challenge,\n code_challenge_method: search.code_challenge_method,\n prompt: search.prompt,\n max_age: search.max_age,\n reauthenticated: search.reauthenticated,\n display: search.display,\n response_mode: search.response_mode,\n login_hint: search.login_hint,\n ui_locales: search.ui_locales,\n id_token_hint: search.id_token_hint,\n acr_values: search.acr_values,\n account_selected: search.account_selected,\n account_selection_state: search.account_selection_state,\n decision: 'allow',\n });\n };\n\n const handleDeny = () => {\n consentMutation.mutate({\n client_id: search.client_id,\n redirect_uri: search.redirect_uri,\n response_type: search.response_type,\n scope: search.scope,\n state: search.state,\n nonce: search.nonce,\n code_challenge: search.code_challenge,\n code_challenge_method: search.code_challenge_method,\n prompt: search.prompt,\n max_age: search.max_age,\n reauthenticated: search.reauthenticated,\n display: search.display,\n response_mode: search.response_mode,\n login_hint: search.login_hint,\n ui_locales: search.ui_locales,\n id_token_hint: search.id_token_hint,\n acr_values: search.acr_values,\n account_selected: search.account_selected,\n account_selection_state: search.account_selection_state,\n decision: 'deny',\n });\n };\n\n const { client, scopes, user } = consentInfoQuery.data;\n\n return (\n <AuthLayout width=\"wide\">\n <AuthPageHeader\n subtitle={t('consent.subtitle', { app: client.name })}\n title={t('consent.title')}\n />\n\n {/*\n Who is about to hand out access. The decision is meaningless without\n it, so it sits above the scopes rather than in fine print.\n */}\n <TRCard.Root padding=\"lg\" variant=\"outlined\">\n <TRCard.Content className=\"flex items-center gap-tinyrack-md\">\n <InitialAvatar email={user.email} size=\"sm\" />\n <span className=\"flex min-w-0 flex-col\">\n <TRText color=\"muted\" variant=\"caption\">\n {t('consent.loggedInAs')}\n </TRText>\n <TRText\n data-testid=\"consent-user-email\"\n truncate\n variant=\"body\"\n weight=\"medium\"\n >\n {user.email}\n </TRText>\n </span>\n </TRCard.Content>\n </TRCard.Root>\n\n {/* Requested permissions */}\n <div className=\"flex flex-col gap-tinyrack-sm\">\n <TRText as=\"h3\" variant=\"label\">\n {t('consent.permissions.title')}\n </TRText>\n <ul\n className=\"flex flex-col gap-tinyrack-xs\"\n data-testid=\"consent-scope-list\"\n >\n {scopes.map((scope: { name: string; description: string }) => (\n <li\n className=\"flex items-center gap-tinyrack-sm rounded-tinyrack-md bg-tinyrack-surface-muted px-tinyrack-md py-tinyrack-sm\"\n key={scope.name}\n >\n <ShieldCheckIcon\n aria-hidden\n className=\"size-tinyrack-lg shrink-0 text-tinyrack-info\"\n />\n <TRText variant=\"body\">\n {t(`consent.scope.${scope.name}`, {\n defaultValue: scope.description,\n })}\n </TRText>\n </li>\n ))}\n </ul>\n </div>\n\n {/*\n Sticky so the decision stays reachable when a client asks for a long\n list of scopes and the page scrolls.\n */}\n <div className=\"sticky bottom-0 flex gap-tinyrack-sm border-tinyrack-border border-t-tinyrack-default bg-tinyrack-surface/80 py-tinyrack-md backdrop-blur-sm\">\n <TRButton\n appearance=\"outline\"\n className=\"flex-1\"\n data-testid=\"consent-deny\"\n intent=\"neutral\"\n loading={consentMutation.isPending}\n loadingLabel={t('consent.deny')}\n onClick={handleDeny}\n type=\"button\"\n uiSize=\"lg\"\n >\n <XIcon aria-hidden className=\"size-tinyrack-lg\" />\n {t('consent.deny')}\n </TRButton>\n <TRButton\n className=\"flex-1\"\n data-testid=\"consent-allow\"\n intent=\"primary\"\n loading={consentMutation.isPending}\n loadingLabel={t('consent.allow')}\n onClick={handleAllow}\n type=\"button\"\n uiSize=\"lg\"\n >\n <ShieldCheckIcon aria-hidden className=\"size-tinyrack-lg\" />\n {t('consent.allow')}\n </TRButton>\n </div>\n </AuthLayout>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{q as e}from"./createLucideIcon-BPpAIXR_.js";import{I as t,M as n}from"./index-CS23Ozt6.js";var r=e();function i(e){return(0,r.jsx)(t,{...e,onUnauthorized:()=>{let e=new URLSearchParams(window.location.search),t=Object.fromEntries(e.entries());window.location.href=n(t)}})}export{i as errorComponent};
2
+ //# sourceMappingURL=consent-CfRbz2R7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consent-CfRbz2R7.js","names":["RouteErrorFallback","buildAuthorizeUrl","ConsentError","props","ErrorComponentProps","params","URLSearchParams","window","location","search","Object","fromEntries","entries","href","errorComponent"],"sources":["../../../frontend/src/routes/consent/index.tsx?tsr-split=errorComponent"],"sourcesContent":["import { useMutation, useSuspenseQuery } from '@tanstack/react-query';\nimport {\n createFileRoute,\n type ErrorComponentProps,\n} from '@tanstack/react-router';\nimport { TRButton } from '@tinyrack/ui/components/button';\nimport { TRCard } from '@tinyrack/ui/components/card';\nimport { TRText } from '@tinyrack/ui/components/text';\nimport { ShieldCheckIcon, XIcon } from 'lucide-react';\nimport { useTranslation } from 'react-i18next';\nimport { z } from 'zod';\nimport { AuthPageHeader } from '#frontend/components/auth/auth-page-header.tsx';\nimport { InitialAvatar } from '#frontend/components/ui/initial-avatar.tsx';\nimport { RouteErrorFallback } from '#frontend/components/ui/route-error-fallback.tsx';\nimport { AuthLayout } from '#frontend/features/layout/auth-layout.tsx';\nimport {\n buildAuthorizeUrl,\n OAuthSearchSchema,\n} from '#frontend/libs/oauth-search.ts';\nimport {\n consentDecisionMutationOptions,\n getConsentInfoQueryOptions,\n} from '#frontend/queries/consent.ts';\n\nconst ConsentSearchSchema = OAuthSearchSchema.extend({\n client_id: z.string(),\n redirect_uri: z.string(),\n response_type: z.string(),\n});\n\nexport const Route = createFileRoute('/consent/')({\n component: Consent,\n errorComponent: ConsentError,\n validateSearch: ConsentSearchSchema,\n loaderDeps: ({ search }) => ({\n client_id: search.client_id,\n scope: search.scope,\n }),\n loader: async ({ context, deps }) => {\n await context.queryClient.ensureQueryData(\n getConsentInfoQueryOptions({\n client_id: deps.client_id,\n scope: deps.scope,\n }),\n );\n },\n});\n\nfunction ConsentError(props: ErrorComponentProps) {\n return (\n <RouteErrorFallback\n {...props}\n onUnauthorized={() => {\n // Re-enter the OAuth flow from the beginning so the\n // user can log in and be redirected back through\n // /oauth/authorize -> /consent/.\n const params = new URLSearchParams(window.location.search);\n const search = Object.fromEntries(params.entries());\n window.location.href = buildAuthorizeUrl(search);\n }}\n />\n );\n}\n\nfunction Consent() {\n const { t } = useTranslation();\n const search = Route.useSearch();\n\n const consentInfoQuery = useSuspenseQuery(\n getConsentInfoQueryOptions({\n client_id: search.client_id,\n scope: search.scope,\n }),\n );\n\n const consentMutation = useMutation({\n ...consentDecisionMutationOptions,\n onSuccess: (data) => {\n window.location.href = data.redirect_url;\n },\n });\n\n const handleAllow = () => {\n consentMutation.mutate({\n client_id: search.client_id,\n redirect_uri: search.redirect_uri,\n response_type: search.response_type,\n scope: search.scope,\n state: search.state,\n nonce: search.nonce,\n code_challenge: search.code_challenge,\n code_challenge_method: search.code_challenge_method,\n prompt: search.prompt,\n max_age: search.max_age,\n reauthenticated: search.reauthenticated,\n display: search.display,\n response_mode: search.response_mode,\n login_hint: search.login_hint,\n ui_locales: search.ui_locales,\n id_token_hint: search.id_token_hint,\n acr_values: search.acr_values,\n account_selected: search.account_selected,\n account_selection_state: search.account_selection_state,\n decision: 'allow',\n });\n };\n\n const handleDeny = () => {\n consentMutation.mutate({\n client_id: search.client_id,\n redirect_uri: search.redirect_uri,\n response_type: search.response_type,\n scope: search.scope,\n state: search.state,\n nonce: search.nonce,\n code_challenge: search.code_challenge,\n code_challenge_method: search.code_challenge_method,\n prompt: search.prompt,\n max_age: search.max_age,\n reauthenticated: search.reauthenticated,\n display: search.display,\n response_mode: search.response_mode,\n login_hint: search.login_hint,\n ui_locales: search.ui_locales,\n id_token_hint: search.id_token_hint,\n acr_values: search.acr_values,\n account_selected: search.account_selected,\n account_selection_state: search.account_selection_state,\n decision: 'deny',\n });\n };\n\n const { client, scopes, user } = consentInfoQuery.data;\n\n return (\n <AuthLayout width=\"wide\">\n <AuthPageHeader\n subtitle={t('consent.subtitle', { app: client.name })}\n title={t('consent.title')}\n />\n\n {/*\n Who is about to hand out access. The decision is meaningless without\n it, so it sits above the scopes rather than in fine print.\n */}\n <TRCard.Root padding=\"lg\" variant=\"outlined\">\n <TRCard.Content className=\"flex items-center gap-tinyrack-md\">\n <InitialAvatar email={user.email} size=\"sm\" />\n <span className=\"flex min-w-0 flex-col\">\n <TRText color=\"muted\" variant=\"caption\">\n {t('consent.loggedInAs')}\n </TRText>\n <TRText\n data-testid=\"consent-user-email\"\n truncate\n variant=\"body\"\n weight=\"medium\"\n >\n {user.email}\n </TRText>\n </span>\n </TRCard.Content>\n </TRCard.Root>\n\n {/* Requested permissions */}\n <div className=\"flex flex-col gap-tinyrack-sm\">\n <TRText as=\"h3\" variant=\"label\">\n {t('consent.permissions.title')}\n </TRText>\n <ul\n className=\"flex flex-col gap-tinyrack-xs\"\n data-testid=\"consent-scope-list\"\n >\n {scopes.map((scope: { name: string; description: string }) => (\n <li\n className=\"flex items-center gap-tinyrack-sm rounded-tinyrack-md bg-tinyrack-surface-muted px-tinyrack-md py-tinyrack-sm\"\n key={scope.name}\n >\n <ShieldCheckIcon\n aria-hidden\n className=\"size-tinyrack-lg shrink-0 text-tinyrack-info\"\n />\n <TRText variant=\"body\">\n {t(`consent.scope.${scope.name}`, {\n defaultValue: scope.description,\n })}\n </TRText>\n </li>\n ))}\n </ul>\n </div>\n\n {/*\n Sticky so the decision stays reachable when a client asks for a long\n list of scopes and the page scrolls.\n */}\n <div className=\"sticky bottom-0 flex gap-tinyrack-sm border-tinyrack-border border-t-tinyrack-default bg-tinyrack-surface/80 py-tinyrack-md backdrop-blur-sm\">\n <TRButton\n appearance=\"outline\"\n className=\"flex-1\"\n data-testid=\"consent-deny\"\n intent=\"neutral\"\n loading={consentMutation.isPending}\n loadingLabel={t('consent.deny')}\n onClick={handleDeny}\n type=\"button\"\n uiSize=\"lg\"\n >\n <XIcon aria-hidden className=\"size-tinyrack-lg\" />\n {t('consent.deny')}\n </TRButton>\n <TRButton\n className=\"flex-1\"\n data-testid=\"consent-allow\"\n intent=\"primary\"\n loading={consentMutation.isPending}\n loadingLabel={t('consent.allow')}\n onClick={handleAllow}\n type=\"button\"\n uiSize=\"lg\"\n >\n <ShieldCheckIcon aria-hidden className=\"size-tinyrack-lg\" />\n {t('consent.allow')}\n </TRButton>\n </div>\n </AuthLayout>\n );\n}\n"],"mappings":"4GAgDA,SAASE,EAAaC,EAA4B,CAChD,OACE,EAAA,EAAA,IAAA,CAAC,EAAD,CACE,GAAIA,EACJ,mBAAsB,CAIpB,IAAME,EAAS,IAAIC,gBAAgBC,OAAOC,SAASC,MAAM,EACnDA,EAASC,OAAOC,YAAYN,EAAOO,QAAQ,CAAC,EAClDL,OAAOC,SAASK,KAAOZ,EAAkBQ,CAAM,CACjD,CAAE,CAAA,CAGR"}
@@ -0,0 +1,2 @@
1
+ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),s=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},c=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},l=(n,r,a)=>(a=n==null?{}:e(i(n)),c(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n)),u=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function D(e,t){return E(e.type,t,e.props)}function O(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function k(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var A=/\/+/g;function j(e,t){return typeof e==`object`&&e&&e.key!=null?k(``+e.key):t.toString(36)}function ee(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function M(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,M(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+j(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(A,`$&/`)+`/`),M(o,r,i,``,function(e){return e})):o!=null&&(O(o)&&(o=D(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(A,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u<e.length;u++)a=e[u],s=l+j(a,u),c+=M(a,r,i,s,o);else if(u=m(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+j(a,u++),c+=M(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return M(ee(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function N(e,t,n){if(e==null)return e;var r=[],i=0;return M(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function te(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var P=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},ne={map:N,forEach:function(e,t,n){N(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return N(e,function(){t++}),t},toArray:function(e){return N(e,function(e){return e})||[]},only:function(e){if(!O(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=ne,e.Component=v,e.Fragment=r,e.Profiler=a,e.PureComponent=b,e.StrictMode=i,e.Suspense=l,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=w,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return w.H.useMemoCache(e)}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=g({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!T.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return E(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)T.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return E(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=O,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:te}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=w.T,n={};w.T=n;try{var r=e(),i=w.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(C,P)}catch(e){P(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),w.T=t}},e.unstable_useCacheRefresh=function(){return w.H.useCacheRefresh()},e.use=function(e){return w.H.use(e)},e.useActionState=function(e,t,n){return w.H.useActionState(e,t,n)},e.useCallback=function(e,t){return w.H.useCallback(e,t)},e.useContext=function(e){return w.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return w.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return w.H.useEffect(e,t)},e.useEffectEvent=function(e){return w.H.useEffectEvent(e)},e.useId=function(){return w.H.useId()},e.useImperativeHandle=function(e,t,n){return w.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return w.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return w.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return w.H.useMemo(e,t)},e.useOptimistic=function(e,t){return w.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return w.H.useReducer(e,t,n)},e.useRef=function(e){return w.H.useRef(e)},e.useState=function(e){return w.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return w.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return w.H.useTransition()},e.version=`19.2.7`})),d=o(((e,t)=>{t.exports=u()})),f=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),p=o(((e,t)=>{t.exports=f()})),m=o((e=>{var t=d();function n(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var r=typeof Object.is==`function`?Object.is:n,i=t.useState,a=t.useEffect,o=t.useLayoutEffect,s=t.useDebugValue;function c(e,t){var n=t(),r=i({inst:{value:n,getSnapshot:t}}),c=r[0].inst,u=r[1];return o(function(){c.value=n,c.getSnapshot=t,l(c)&&u({inst:c})},[e,n,t]),a(function(){return l(c)&&u({inst:c}),e(function(){l(c)&&u({inst:c})})},[e]),s(n),n}function l(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!r(e,n)}catch{return!0}}function u(e,t){return t()}var f=typeof window>`u`||window.document===void 0||window.document.createElement===void 0?u:c;e.useSyncExternalStore=t.useSyncExternalStore===void 0?f:t.useSyncExternalStore})),h=o(((e,t)=>{t.exports=m()})),g=l(d(),1);function _(...e){return e.filter(Boolean).join(` `)}function v(e,t){return typeof t==`function`?n=>_(e,t(n)):_(e,t)}var y=p();function b({className:e,decorative:t=!1,label:n=`Loading`,uiSize:r=`md`,variant:i=`current`,...a}){let o=n.trim()===``?`Loading`:n,s={...a,className:_(`tr-spinner`,e),"data-ui-size":r,"data-variant":i};return t?(0,y.jsx)(`span`,{...s,"aria-hidden":`true`}):(0,y.jsx)(`span`,{...s,"aria-label":o,role:`status`})}function x(){return typeof window<`u`}function S(e){return T(e)?(e.nodeName||``).toLowerCase():`#document`}function C(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function w(e){return((T(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function T(e){return x()?e instanceof Node||e instanceof C(e).Node:!1}function E(e){return x()?e instanceof Element||e instanceof C(e).Element:!1}function D(e){return x()?e instanceof HTMLElement||e instanceof C(e).HTMLElement:!1}function O(e){return!x()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof C(e).ShadowRoot}function k(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=F(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function A(e){return/^(table|td|th)$/.test(S(e))}function j(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var ee=/transform|translate|scale|rotate|perspective|filter/,M=/paint|layout|strict|content/,N=e=>!!e&&e!==`none`,te;function P(e){let t=E(e)?F(e):e;return N(t.transform)||N(t.translate)||N(t.scale)||N(t.rotate)||N(t.perspective)||!re()&&(N(t.backdropFilter)||N(t.filter))||ee.test(t.willChange||``)||M.test(t.contain||``)}function ne(e){let t=I(e);for(;D(t)&&!ie(t);){if(P(t))return t;if(j(t))return null;t=I(t)}return null}function re(){return te??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),te}function ie(e){return/^(html|body|#document)$/.test(S(e))}function F(e){return C(e).getComputedStyle(e)}function ae(e){return E(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function I(e){if(S(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||O(e)&&e.host||w(e);return O(t)?t.host:t}function oe(e){let t=I(e);return ie(t)?(e.ownerDocument||e).body:D(t)&&k(t)?t:oe(t)}function L(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=oe(e),i=r===e.ownerDocument?.body,a=C(r);if(i){let e=se(a);return t.concat(a,a.visualViewport||[],k(r)?r:[],e&&n?L(e):[])}else return t.concat(r,L(r,[],n))}function se(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}var R={...g},ce={};function z(e,t){let n=g.useRef(ce);return n.current===ce&&(n.current=e(t)),n}var B=R.useInsertionEffect,le=B&&B!==R.useLayoutEffect?B:e=>e();function ue(e){let t=z(de).current;return t.next=e,le(t.effect),t.trampoline}function de(){let e={next:void 0,callback:fe,trampoline:(...t)=>e.callback?.(...t),effect:()=>{e.callback=e.next}};return e}function fe(){}var pe=typeof document<`u`?g.useLayoutEffect:()=>{};function V(e,t){if(e&&!t)return e;if(!e&&t)return t;if(e||t)return{...e,...t}}var H={};function U(e,t,n,r,i){if(!n&&!r&&!i&&!e)return W(t);let a=W(e);return t&&(a=G(a,t)),n&&(a=G(a,n)),r&&(a=G(a,r)),i&&(a=G(a,i)),a}function me(e){if(e.length===0)return H;if(e.length===1)return W(e[0]);let t=W(e[0]);for(let n=1;n<e.length;n+=1)t=G(t,e[n]);return t}function W(e){return K(e)?{...ve(e,H)}:he(e)}function G(e,t){return K(t)?ve(t,e):ge(e,t)}function he(e){let t={...e};for(let e in t){let n=t[e];_e(e,n)&&(t[e]=be(n))}return t}function ge(e,t){if(!t)return e;for(let n in t){let r=t[n];switch(n){case`style`:e[n]=V(e.style,r);break;case`className`:e[n]=xe(e.className,r);break;default:_e(n,r)?e[n]=ye(e[n],r):e[n]=r}}return e}function _e(e,t){let n=e.charCodeAt(0),r=e.charCodeAt(1),i=e.charCodeAt(2);return n===111&&r===110&&i>=65&&i<=90&&(typeof t==`function`||t===void 0)}function K(e){return typeof e==`function`}function ve(e,t){return K(e)?e(t):e??H}function ye(e,t){return t?e?(...n)=>{let r=n[0];if(Se(r)){let i=r;q(i);let a=t(...n);return i.baseUIHandlerPrevented||e?.(...n),a}let i=t(...n);return e?.(...n),i}:be(t):e}function be(e){return e&&((...t)=>{let n=t[0];return Se(n)&&q(n),e(...t)})}function q(e){return e.preventBaseUIHandler=()=>{e.baseUIHandlerPrevented=!0},e}function xe(e,t){return t?e?t+` `+e:t:e}function Se(e){return typeof e==`object`&&!!e&&`nativeEvent`in e}function Ce(e,t){return function(n,...r){let i=new URL(e);return i.searchParams.set(`code`,n.toString()),r.forEach(e=>i.searchParams.append(`args[]`,e)),`${t} error #${n}; visit ${i} for the full message.`}}var J=Ce(`https://base-ui.com/production-error`,`Base UI`),we=g.createContext(void 0);function Te(e=!1){let t=g.useContext(we);if(t===void 0&&!e)throw Error(J(16));return t}function Ee(e){let{focusableWhenDisabled:t,disabled:n,composite:r=!1,tabIndex:i=0,isNativeButton:a}=e,o=r&&t!==!1,s=r&&t===!1;return{props:g.useMemo(()=>{let e={onKeyDown(e){n&&t&&e.key!==`Tab`&&e.preventDefault()}};return r||(e.tabIndex=i,!a&&n&&(e.tabIndex=t?i:-1)),(a&&(t||o)||!a&&n)&&(e[`aria-disabled`]=n),a&&(!t||s)&&(e.disabled=n),e},[r,n,t,o,s,a,i])}}function De(e){return e?.ownerDocument||document}function Y(e,t,{detail:n=0}={}){e.dispatchEvent(new(C(e)).PointerEvent(`click`,{bubbles:!0,cancelable:!0,composed:!0,detail:n,shiftKey:t.shiftKey,ctrlKey:t.ctrlKey,altKey:t.altKey,metaKey:t.metaKey}))}function Oe(e={}){let{disabled:t=!1,focusableWhenDisabled:n,tabIndex:r=0,native:i=!0,composite:a}=e,o=g.useRef(null),s=Te(!0),c=a??s!==void 0,{props:l}=Ee({focusableWhenDisabled:n,disabled:t,composite:c,tabIndex:r,isNativeButton:i}),u=g.useCallback(()=>{let e=o.current;X(e)&&c&&t&&l.disabled===void 0&&e.disabled&&(e.disabled=!1)},[t,l.disabled,c]);return pe(u,[u]),{getButtonProps:g.useCallback((e={})=>{let{onClick:n,onMouseDown:r,onKeyUp:a,onKeyDown:o,onPointerDown:s,...u}=e;return U({onClick(e){if(t){e.preventDefault();return}n?.(e)},onMouseDown(e){t||r?.(e)},onKeyDown(e){if(t||(q(e),o?.(e),e.baseUIHandlerPrevented))return;let n=e.target===e.currentTarget,r=e.currentTarget,a=X(r),s=!i&&ke(r),l=n&&(i?a:!s),u=e.key===`Enter`,d=e.key===` `,f=r.getAttribute(`role`),p=f?.startsWith(`menuitem`)||f===`option`||f===`gridcell`;if(n&&c&&d){if(e.defaultPrevented&&p)return;e.preventDefault(),(!i||a)&&(e.preventBaseUIHandler(),Y(r,e));return}if(!l||i||!d&&!u){n&&s&&d&&e.preventDefault();return}e.defaultPrevented||(e.preventDefault(),u&&(e.preventBaseUIHandler(),Y(r,e)))},onKeyUp(e){if(!t){if(q(e),a?.(e),e.target===e.currentTarget&&i&&c&&X(e.currentTarget)&&e.key===` `){e.preventDefault();return}e.baseUIHandlerPrevented||e.target===e.currentTarget&&!i&&!c&&!e.defaultPrevented&&e.key===` `&&(e.preventBaseUIHandler(),Y(e.currentTarget,e))}},onPointerDown(e){if(t){e.preventDefault();return}s?.(e)}},i?{type:`button`}:{role:`button`},l,u)},[t,l,c,i]),buttonRef:ue(e=>{o.current=e,u()})}}function X(e){return D(e)&&e.tagName===`BUTTON`}function ke(e){return D(e)&&e.tagName===`A`&&!!e.href}function Z(e,t,n,r){let i=z(je).current;return Me(i,e,t,n,r)&&Pe(i,[e,t,n,r]),i.callback}function Ae(e){let t=z(je).current;return Ne(t,e)&&Pe(t,e),t.callback}function je(){return{callback:null,cleanup:null,refs:[]}}function Me(e,t,n,r,i){return e.refs[0]!==t||e.refs[1]!==n||e.refs[2]!==r||e.refs[3]!==i}function Ne(e,t){return e.refs.length!==t.length||e.refs.some((e,n)=>e!==t[n])}function Pe(e,t){if(e.refs=t,t.every(e=>e==null)){e.callback=null;return}e.callback=n=>{if(e.cleanup&&=(e.cleanup(),null),n!=null){let r=Array(t.length).fill(null);for(let e=0;e<t.length;e+=1){let i=t[e];if(i!=null)switch(typeof i){case`function`:{let t=i(n);typeof t==`function`&&(r[e]=t);break}case`object`:i.current=n;break;default:}}e.cleanup=()=>{for(let e=0;e<t.length;e+=1){let n=t[e];if(n!=null)switch(typeof n){case`function`:{let t=r[e];typeof t==`function`?t():n(null);break}case`object`:n.current=null;break;default:}}}}}}var Fe=19;function Ie(e){return Fe>=e}function Le(e){if(!g.isValidElement(e))return null;let t=e,n=t.props;return(Ie(19)?n?.ref:t.ref)??null}function Re(){}var ze=Object.freeze([]),Q=Object.freeze({});function Be(e,t){let n={};for(let r in e){let i=e[r];if(t?.hasOwnProperty(r)){let e=t[r](i);e!=null&&Object.assign(n,e);continue}i===!0?n[`data-${r.toLowerCase()}`]=``:i&&(n[`data-${r.toLowerCase()}`]=i.toString())}return n}function Ve(e,t){return typeof e==`function`?e(t):e}function He(e,t){return typeof e==`function`?e(t):e}function Ue(e,t,n={}){let r=t.render,i=We(t,n);return n.enabled===!1?null:qe(e,r,i,n.state??Q)}function We(e,t={}){let{className:n,style:r,render:i}=e,{state:a=Q,ref:o,props:s,stateAttributesMapping:c,enabled:l=!0}=t,u=l?Ve(n,a):void 0,d=l?He(r,a):void 0,f=l?Be(a,c):Q,p=l&&s?Ge(s):void 0,m=l?V(f,p)??{}:Q;return typeof document<`u`&&(l?Array.isArray(o)?m.ref=Ae([m.ref,Le(i),...o]):m.ref=Z(m.ref,Le(i),o):Z(null,null)),l?(u!==void 0&&(m.className=xe(m.className,u)),d!==void 0&&(m.style=V(m.style,d)),m):Q}function Ge(e){return Array.isArray(e)?me(e):U(void 0,e)}var Ke=Symbol.for(`react.lazy`);function qe(e,t,n,r){if(t){if(typeof t==`function`)return t(n,r);let e=U(n,t.props);e.ref=n.ref;let i=t;return i?.$$typeof===Ke&&(i=g.Children.toArray(t)[0]),g.cloneElement(i,e)}if(e&&typeof e==`string`)return Je(e,n);throw Error(J(8))}function Je(e,t){return e===`button`?(0,g.createElement)(`button`,{type:`button`,...t,key:t.key}):e===`img`?(0,g.createElement)(`img`,{alt:``,...t,key:t.key}):g.createElement(e,t)}var Ye=g.forwardRef(function(e,t){let{render:n,className:r,disabled:i=!1,focusableWhenDisabled:a=!1,nativeButton:o=!0,style:s,...c}=e,{getButtonProps:l,buttonRef:u}=Oe({disabled:i,focusableWhenDisabled:a,native:o});return Ue(`button`,e,{state:{disabled:i},ref:[t,u],props:[c,l]})}),Xe={danger:`danger`,primary:`primary`,secondary:`neutral`};function Ze({"aria-busy":e,"aria-label":t,"aria-labelledby":n,appearance:r=`solid`,children:i,className:a,disabled:o,intent:s,loading:c=!1,loadingLabel:l,nativeButton:u=!0,uiSize:d=`md`,type:f=`button`,variant:p=`secondary`,...m}){let h=s??Xe[p];return(0,y.jsxs)(Ye,{...m,"aria-busy":c?!0:e,"aria-label":c?l??t:t,"aria-labelledby":c&&l!==void 0?void 0:n,className:v(`tr-btn`,a),"data-appearance":r,"data-intent":h,"data-ui-size":d,"data-variant":p,disabled:o||c,nativeButton:u,type:u?f:void 0,children:[c?(0,y.jsx)(b,{decorative:!0,uiSize:`md`}):null,i]})}function Qe(e){return Ue(e.defaultTagName??`div`,e,e)}var $e=h(),et=(e,t,n,r)=>{let i=[n,{code:t,...r||{}}];if(e?.services?.logger?.forward)return e.services.logger.forward(i,`warn`,`react-i18next::`,!0);$(i[0])&&(i[0]=`react-i18next:: ${i[0]}`),e?.services?.logger?.warn?e.services.logger.warn(...i):console?.warn&&console.warn(...i)},tt={},nt=(e,t,n,r)=>{$(n)&&tt[n]||($(n)&&(tt[n]=new Date),et(e,t,n,r))},rt=(e,t)=>()=>{if(e.isInitialized)t();else{let n=()=>{setTimeout(()=>{e.off(`initialized`,n)},0),t()};e.on(`initialized`,n)}},it=(e,t,n)=>{e.loadNamespaces(t,rt(e,n))},at=(e,t,n,r)=>{if($(n)&&(n=[n]),e.options.preload&&e.options.preload.indexOf(t)>-1)return it(e,n,r);n.forEach(t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)}),e.loadLanguages(t,rt(e,r))},ot=(e,t,n={})=>!t.languages||!t.languages.length?(nt(t,`NO_LANGUAGES`,`i18n.languages were undefined or empty`,{languages:t.languages}),!0):t.hasLoadedNamespace(e,{lng:n.lng,precheck:(t,r)=>{if(n.bindI18n&&n.bindI18n.indexOf(`languageChanging`)>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!r(t.isLanguageChangingTo,e))return!1}}),$=e=>typeof e==`string`,st=e=>typeof e==`object`&&!!e,ct=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,lt={"&amp;":`&`,"&#38;":`&`,"&lt;":`<`,"&#60;":`<`,"&gt;":`>`,"&#62;":`>`,"&apos;":`'`,"&#39;":`'`,"&quot;":`"`,"&#34;":`"`,"&nbsp;":` `,"&#160;":` `,"&copy;":`©`,"&#169;":`©`,"&reg;":`®`,"&#174;":`®`,"&hellip;":`…`,"&#8230;":`…`,"&#x2F;":`/`,"&#47;":`/`},ut=e=>lt[e],dt={bindI18n:`languageChanged`,bindI18nStore:``,transEmptyNodeValue:``,transSupportBasicHtmlNodes:!0,transWrapTextNodes:``,transKeepBasicHtmlNodesFor:[`br`,`strong`,`i`,`p`],useSuspense:!0,unescape:e=>e.replace(ct,ut),transDefaultProps:void 0},ft=(e={})=>{dt={...dt,...e}},pt=()=>dt,mt,ht=e=>{mt=e},gt=()=>mt,_t={type:`3rdParty`,init(e){ft(e.options.react),ht(e)}},vt=(0,g.createContext)(),yt=class{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach(e=>{this.usedNamespaces[e]||(this.usedNamespaces[e]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}},bt={t:(e,t)=>{if($(t))return t;if(st(t)&&$(t.defaultValue))return t.defaultValue;if(typeof e==`function`)return``;if(Array.isArray(e)){let t=e[e.length-1];return typeof t==`function`?``:t}return e},ready:!1},xt=()=>()=>{},St=(e,t={})=>{let{i18n:n}=t,{i18n:r,defaultNS:i}=(0,g.useContext)(vt)||{},a=n||r||gt();a&&!a.reportNamespaces&&(a.reportNamespaces=new yt),a||nt(a,`NO_I18NEXT_INSTANCE`,`useTranslation: You will need to pass in an i18next instance by using initReactI18next`);let o=(0,g.useMemo)(()=>({...pt(),...a?.options?.react,...t}),[a,t]),{useSuspense:s,keyPrefix:c}=o,l=e||i||a?.options?.defaultNS,u=$(l)?[l]:l||[`translation`],d=(0,g.useMemo)(()=>u,u);a?.reportNamespaces?.addUsedNamespaces?.(d);let f=(0,g.useRef)(0),p=(0,g.useCallback)(e=>{if(!a)return xt;let{bindI18n:t,bindI18nStore:n}=o,r=()=>{f.current+=1,e()};return t&&a.on(t,r),n&&a.store.on(n,r),()=>{t&&t.split(` `).forEach(e=>a.off(e,r)),n&&n.split(` `).forEach(e=>a.store.off(e,r))}},[a,o]),m=(0,g.useRef)(),h=(0,g.useCallback)(()=>{if(!a)return bt;let e=!!(a.isInitialized||a.initializedStoreOnce)&&d.every(e=>ot(e,a,o)),n=t.lng||a.language,r=f.current,i=m.current;if(i&&i.ready===e&&i.lng===n&&i.keyPrefix===c&&i.revision===r)return i;let s={t:a.getFixedT(n,o.nsMode===`fallback`?d:d[0],c,{scopeNs:d}),ready:e,lng:n,keyPrefix:c,revision:r};return m.current=s,s},[a,d,c,o,t.lng]),[_,v]=(0,g.useState)(0),{t:y,ready:b}=(0,$e.useSyncExternalStore)(p,h,h);(0,g.useEffect)(()=>{if(a&&!b&&!s){let e=()=>v(e=>e+1);t.lng?at(a,t.lng,d,e):it(a,d,e)}},[a,t.lng,d,b,s,_]);let x=a||{},S=(0,g.useRef)(null),C=(0,g.useRef)(),w=e=>{let t=Object.getOwnPropertyDescriptors(e);t.__original&&delete t.__original;let n=Object.create(Object.getPrototypeOf(e),t);if(!Object.prototype.hasOwnProperty.call(n,`__original`))try{Object.defineProperty(n,"__original",{value:e,writable:!1,enumerable:!1,configurable:!1})}catch{}return n},T=(0,g.useMemo)(()=>{let e=x,t=e?.language,n=e;e&&(S.current&&S.current.__original===e&&C.current===t?n=S.current:(n=w(e),S.current=n,C.current=t));let r=!b&&!s?(...e)=>(nt(a,`USE_T_BEFORE_READY`,`useTranslation: t was called before ready. When using useSuspense: false, make sure to check the ready flag before using t.`),y(...e)):y,i=[r,n,b];return i.t=r,i.i18n=n,i.ready=b,i},[y,x,b,x.resolvedLanguage,x.language,x.languages]);if(a&&s&&!b)throw new Promise(e=>{let n=()=>e();t.lng?at(a,t.lng,d,n):it(a,d,n)});return T},Ct=class e extends Error{code;status;constructor(e,t,n){super(n),this.name=`IssuaryError`,this.code=e,this.status=t}static async fromResponse(t){let n=`UNKNOWN_ERROR`,r=t.statusText||`An unknown error occurred`;try{let e=await t.json();e.code&&(n=e.code),e.message&&(r=e.message)}catch{}return new e(n,t.status,r)}};function wt(e){let{as:t,variant:n=`body`,color:r,align:i,truncate:a,weight:o,className:s,...c}=e;return(0,g.createElement)(t??`span`,{...c,className:_(`tr-text`,s),"data-variant":n,"data-color":r,"data-align":i,"data-truncate":a?`true`:void 0,"data-weight":o})}var Tt=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),Et=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),Dt=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),Ot=e=>{let t=Dt(e);return t.charAt(0).toUpperCase()+t.slice(1)},kt={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},At=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},jt=(0,g.createContext)({}),Mt=()=>(0,g.useContext)(jt),Nt=(0,g.forwardRef)(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:i=``,children:a,iconNode:o,...s},c)=>{let{size:l=24,strokeWidth:u=2,absoluteStrokeWidth:d=!1,color:f=`currentColor`,className:p=``}=Mt()??{},m=r??d?Number(n??u)*24/Number(t??l):n??u;return(0,g.createElement)(`svg`,{ref:c,...kt,width:t??l??kt.width,height:t??l??kt.height,stroke:e??f,strokeWidth:m,className:Tt(`lucide`,p,i),...!a&&!At(s)&&{"aria-hidden":`true`},...s},[...o.map(([e,t])=>(0,g.createElement)(e,t)),...Array.isArray(a)?a:[a]])}),Pt=(e,t)=>{let n=(0,g.forwardRef)(({className:n,...r},i)=>(0,g.createElement)(Nt,{ref:i,iconNode:t,className:Tt(`lucide-${Et(Ot(e))}`,`lucide-${e}`,n),...r}));return n.displayName=Ot(e),n};export{L as A,A as B,R as C,se as D,w as E,D as F,v as G,re as H,ie as I,d as J,h as K,T as L,C as M,P as N,S as O,E as P,k as R,z as S,ne as T,b as U,j as V,_ as W,s as X,o as Y,l as Z,De as _,_t as a,pe as b,Ue as c,Q as d,Re as f,Y as g,Oe as h,St as i,I as j,ae as k,He as l,Z as m,wt as n,Qe as o,Ie as p,p as q,Ct as r,Ze as s,Pt as t,ze as u,J as v,F as w,ue as x,U as y,O as z};
2
+ //# sourceMappingURL=createLucideIcon-BPpAIXR_.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createLucideIcon-BPpAIXR_.js","names":["mergeClassNames","mergeClassNames","React","_formatErrorMessage","ownerWindow","_formatErrorMessage","mergeClassNames"],"sources":["../../../../node_modules/.pnpm/react@19.2.7/node_modules/react/cjs/react.production.js","../../../../node_modules/.pnpm/react@19.2.7/node_modules/react/index.js","../../../../node_modules/.pnpm/react@19.2.7/node_modules/react/cjs/react-jsx-runtime.production.js","../../../../node_modules/.pnpm/react@19.2.7/node_modules/react/jsx-runtime.js","../../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.7/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js","../../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.7/node_modules/use-sync-external-store/shim/index.js","../../../../node_modules/.pnpm/@tinyrack+ui@0.25.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7_shiki@4.3.1_tailwindcss@4.3.2/node_modules/@tinyrack/ui/dist/internal/component-class-name.js","../../../../node_modules/.pnpm/@tinyrack+ui@0.25.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7_shiki@4.3.1_tailwindcss@4.3.2/node_modules/@tinyrack/ui/dist/components/spinner/spinner.js","../../../../node_modules/.pnpm/@floating-ui+utils@0.2.12/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs","../../../../node_modules/.pnpm/@base-ui+utils@0.3.2_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/utils/safeReact.mjs","../../../../node_modules/.pnpm/@base-ui+utils@0.3.2_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/utils/useRefWithInit.mjs","../../../../node_modules/.pnpm/@base-ui+utils@0.3.2_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/utils/useStableCallback.mjs","../../../../node_modules/.pnpm/@base-ui+utils@0.3.2_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/utils/useIsoLayoutEffect.mjs","../../../../node_modules/.pnpm/@base-ui+utils@0.3.2_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/utils/mergeObjects.mjs","../../../../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/react/merge-props/mergeProps.mjs","../../../../node_modules/.pnpm/@base-ui+utils@0.3.2_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/utils/formatErrorMessage.mjs","../../../../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/react/internals/composite/root/CompositeRootContext.mjs","../../../../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/react/utils/useFocusableWhenDisabled.mjs","../../../../node_modules/.pnpm/@base-ui+utils@0.3.2_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/utils/owner.mjs","../../../../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/react/utils/dispatchClickWithModifiers.mjs","../../../../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/react/internals/use-button/useButton.mjs","../../../../node_modules/.pnpm/@base-ui+utils@0.3.2_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/utils/useMergedRefs.mjs","../../../../node_modules/.pnpm/@base-ui+utils@0.3.2_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/utils/reactVersion.mjs","../../../../node_modules/.pnpm/@base-ui+utils@0.3.2_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/utils/getReactElementRef.mjs","../../../../node_modules/.pnpm/@base-ui+utils@0.3.2_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/utils/empty.mjs","../../../../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/react/internals/getStateAttributesProps.mjs","../../../../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/react/utils/resolveClassName.mjs","../../../../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/react/utils/resolveStyle.mjs","../../../../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/react/internals/useRenderElement.mjs","../../../../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/react/button/Button.mjs","../../../../node_modules/.pnpm/@tinyrack+ui@0.25.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7_shiki@4.3.1_tailwindcss@4.3.2/node_modules/@tinyrack/ui/dist/components/button/button.js","../../../../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/@base-ui/react/use-render/useRender.mjs","../../../../node_modules/.pnpm/react-i18next@17.0.8_i18next@26.3.4_typescript@5.9.3__react-dom@19.2.7_react@19.2.7__react@19.2.7_typescript@5.9.3/node_modules/react-i18next/dist/es/utils.js","../../../../node_modules/.pnpm/react-i18next@17.0.8_i18next@26.3.4_typescript@5.9.3__react-dom@19.2.7_react@19.2.7__react@19.2.7_typescript@5.9.3/node_modules/react-i18next/dist/es/unescape.js","../../../../node_modules/.pnpm/react-i18next@17.0.8_i18next@26.3.4_typescript@5.9.3__react-dom@19.2.7_react@19.2.7__react@19.2.7_typescript@5.9.3/node_modules/react-i18next/dist/es/defaults.js","../../../../node_modules/.pnpm/react-i18next@17.0.8_i18next@26.3.4_typescript@5.9.3__react-dom@19.2.7_react@19.2.7__react@19.2.7_typescript@5.9.3/node_modules/react-i18next/dist/es/i18nInstance.js","../../../../node_modules/.pnpm/react-i18next@17.0.8_i18next@26.3.4_typescript@5.9.3__react-dom@19.2.7_react@19.2.7__react@19.2.7_typescript@5.9.3/node_modules/react-i18next/dist/es/initReactI18next.js","../../../../node_modules/.pnpm/react-i18next@17.0.8_i18next@26.3.4_typescript@5.9.3__react-dom@19.2.7_react@19.2.7__react@19.2.7_typescript@5.9.3/node_modules/react-i18next/dist/es/context.js","../../../../node_modules/.pnpm/react-i18next@17.0.8_i18next@26.3.4_typescript@5.9.3__react-dom@19.2.7_react@19.2.7__react@19.2.7_typescript@5.9.3/node_modules/react-i18next/dist/es/useTranslation.js","../../../frontend/src/libs/error.ts","../../../../node_modules/.pnpm/@tinyrack+ui@0.25.0_@types+react@19.2.17_react-dom@19.2.7_react@19.2.7__react@19.2.7_shiki@4.3.1_tailwindcss@4.3.2/node_modules/@tinyrack/ui/dist/components/text/text.js","../../../../node_modules/.pnpm/lucide-react@1.25.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/mergeClasses.mjs","../../../../node_modules/.pnpm/lucide-react@1.25.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/toKebabCase.mjs","../../../../node_modules/.pnpm/lucide-react@1.25.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/toCamelCase.mjs","../../../../node_modules/.pnpm/lucide-react@1.25.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/toPascalCase.mjs","../../../../node_modules/.pnpm/lucide-react@1.25.0_react@19.2.7/node_modules/lucide-react/dist/esm/defaultAttributes.mjs","../../../../node_modules/.pnpm/lucide-react@1.25.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/hasA11yProp.mjs","../../../../node_modules/.pnpm/lucide-react@1.25.0_react@19.2.7/node_modules/lucide-react/dist/esm/context.mjs","../../../../node_modules/.pnpm/lucide-react@1.25.0_react@19.2.7/node_modules/lucide-react/dist/esm/Icon.mjs","../../../../node_modules/.pnpm/lucide-react@1.25.0_react@19.2.7/node_modules/lucide-react/dist/esm/createLucideIcon.mjs"],"sourcesContent":["/**\n * @license React\n * react.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nfunction getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable) return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n}\nvar ReactNoopUpdateQueue = {\n isMounted: function () {\n return !1;\n },\n enqueueForceUpdate: function () {},\n enqueueReplaceState: function () {},\n enqueueSetState: function () {}\n },\n assign = Object.assign,\n emptyObject = {};\nfunction Component(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nComponent.prototype.isReactComponent = {};\nComponent.prototype.setState = function (partialState, callback) {\n if (\n \"object\" !== typeof partialState &&\n \"function\" !== typeof partialState &&\n null != partialState\n )\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, partialState, callback, \"setState\");\n};\nComponent.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, \"forceUpdate\");\n};\nfunction ComponentDummy() {}\nComponentDummy.prototype = Component.prototype;\nfunction PureComponent(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nvar pureComponentPrototype = (PureComponent.prototype = new ComponentDummy());\npureComponentPrototype.constructor = PureComponent;\nassign(pureComponentPrototype, Component.prototype);\npureComponentPrototype.isPureReactComponent = !0;\nvar isArrayImpl = Array.isArray;\nfunction noop() {}\nvar ReactSharedInternals = { H: null, A: null, T: null, S: null },\n hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction ReactElement(type, key, props) {\n var refProp = props.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== refProp ? refProp : null,\n props: props\n };\n}\nfunction cloneAndReplaceKey(oldElement, newKey) {\n return ReactElement(oldElement.type, newKey, oldElement.props);\n}\nfunction isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n}\nfunction escape(key) {\n var escaperLookup = { \"=\": \"=0\", \":\": \"=2\" };\n return (\n \"$\" +\n key.replace(/[=:]/g, function (match) {\n return escaperLookup[match];\n })\n );\n}\nvar userProvidedKeyEscapeRegex = /\\/+/g;\nfunction getElementKey(element, index) {\n return \"object\" === typeof element && null !== element && null != element.key\n ? escape(\"\" + element.key)\n : index.toString(36);\n}\nfunction resolveThenable(thenable) {\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n default:\n switch (\n (\"string\" === typeof thenable.status\n ? thenable.then(noop, noop)\n : ((thenable.status = \"pending\"),\n thenable.then(\n function (fulfilledValue) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"fulfilled\"),\n (thenable.value = fulfilledValue));\n },\n function (error) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"rejected\"), (thenable.reason = error));\n }\n )),\n thenable.status)\n ) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n }\n throw thenable;\n}\nfunction mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n if (\"undefined\" === type || \"boolean\" === type) children = null;\n var invokeCallback = !1;\n if (null === children) invokeCallback = !0;\n else\n switch (type) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n invokeCallback = !0;\n break;\n case \"object\":\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = !0;\n break;\n case REACT_LAZY_TYPE:\n return (\n (invokeCallback = children._init),\n mapIntoArray(\n invokeCallback(children._payload),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n )\n );\n }\n }\n if (invokeCallback)\n return (\n (callback = callback(children)),\n (invokeCallback =\n \"\" === nameSoFar ? \".\" + getElementKey(children, 0) : nameSoFar),\n isArrayImpl(callback)\n ? ((escapedPrefix = \"\"),\n null != invokeCallback &&\n (escapedPrefix =\n invokeCallback.replace(userProvidedKeyEscapeRegex, \"$&/\") + \"/\"),\n mapIntoArray(callback, array, escapedPrefix, \"\", function (c) {\n return c;\n }))\n : null != callback &&\n (isValidElement(callback) &&\n (callback = cloneAndReplaceKey(\n callback,\n escapedPrefix +\n (null == callback.key ||\n (children && children.key === callback.key)\n ? \"\"\n : (\"\" + callback.key).replace(\n userProvidedKeyEscapeRegex,\n \"$&/\"\n ) + \"/\") +\n invokeCallback\n )),\n array.push(callback)),\n 1\n );\n invokeCallback = 0;\n var nextNamePrefix = \"\" === nameSoFar ? \".\" : nameSoFar + \":\";\n if (isArrayImpl(children))\n for (var i = 0; i < children.length; i++)\n (nameSoFar = children[i]),\n (type = nextNamePrefix + getElementKey(nameSoFar, i)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (((i = getIteratorFn(children)), \"function\" === typeof i))\n for (\n children = i.call(children), i = 0;\n !(nameSoFar = children.next()).done;\n\n )\n (nameSoFar = nameSoFar.value),\n (type = nextNamePrefix + getElementKey(nameSoFar, i++)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (\"object\" === type) {\n if (\"function\" === typeof children.then)\n return mapIntoArray(\n resolveThenable(children),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n );\n array = String(children);\n throw Error(\n \"Objects are not valid as a React child (found: \" +\n (\"[object Object]\" === array\n ? \"object with keys {\" + Object.keys(children).join(\", \") + \"}\"\n : array) +\n \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return invokeCallback;\n}\nfunction mapChildren(children, func, context) {\n if (null == children) return children;\n var result = [],\n count = 0;\n mapIntoArray(children, result, \"\", \"\", function (child) {\n return func.call(context, child, count++);\n });\n return result;\n}\nfunction lazyInitializer(payload) {\n if (-1 === payload._status) {\n var ctor = payload._result;\n ctor = ctor();\n ctor.then(\n function (moduleObject) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 1), (payload._result = moduleObject);\n },\n function (error) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 2), (payload._result = error);\n }\n );\n -1 === payload._status && ((payload._status = 0), (payload._result = ctor));\n }\n if (1 === payload._status) return payload._result.default;\n throw payload._result;\n}\nvar reportGlobalError =\n \"function\" === typeof reportError\n ? reportError\n : function (error) {\n if (\n \"object\" === typeof window &&\n \"function\" === typeof window.ErrorEvent\n ) {\n var event = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message:\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.message\n ? String(error.message)\n : String(error),\n error: error\n });\n if (!window.dispatchEvent(event)) return;\n } else if (\n \"object\" === typeof process &&\n \"function\" === typeof process.emit\n ) {\n process.emit(\"uncaughtException\", error);\n return;\n }\n console.error(error);\n },\n Children = {\n map: mapChildren,\n forEach: function (children, forEachFunc, forEachContext) {\n mapChildren(\n children,\n function () {\n forEachFunc.apply(this, arguments);\n },\n forEachContext\n );\n },\n count: function (children) {\n var n = 0;\n mapChildren(children, function () {\n n++;\n });\n return n;\n },\n toArray: function (children) {\n return (\n mapChildren(children, function (child) {\n return child;\n }) || []\n );\n },\n only: function (children) {\n if (!isValidElement(children))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return children;\n }\n };\nexports.Activity = REACT_ACTIVITY_TYPE;\nexports.Children = Children;\nexports.Component = Component;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.PureComponent = PureComponent;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n ReactSharedInternals;\nexports.__COMPILER_RUNTIME = {\n __proto__: null,\n c: function (size) {\n return ReactSharedInternals.H.useMemoCache(size);\n }\n};\nexports.cache = function (fn) {\n return function () {\n return fn.apply(null, arguments);\n };\n};\nexports.cacheSignal = function () {\n return null;\n};\nexports.cloneElement = function (element, config, children) {\n if (null === element || void 0 === element)\n throw Error(\n \"The argument must be a React element, but you passed \" + element + \".\"\n );\n var props = assign({}, element.props),\n key = element.key;\n if (null != config)\n for (propName in (void 0 !== config.key && (key = \"\" + config.key), config))\n !hasOwnProperty.call(config, propName) ||\n \"key\" === propName ||\n \"__self\" === propName ||\n \"__source\" === propName ||\n (\"ref\" === propName && void 0 === config.ref) ||\n (props[propName] = config[propName]);\n var propName = arguments.length - 2;\n if (1 === propName) props.children = children;\n else if (1 < propName) {\n for (var childArray = Array(propName), i = 0; i < propName; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n return ReactElement(element.type, key, props);\n};\nexports.createContext = function (defaultValue) {\n defaultValue = {\n $$typeof: REACT_CONTEXT_TYPE,\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n };\n defaultValue.Provider = defaultValue;\n defaultValue.Consumer = {\n $$typeof: REACT_CONSUMER_TYPE,\n _context: defaultValue\n };\n return defaultValue;\n};\nexports.createElement = function (type, config, children) {\n var propName,\n props = {},\n key = null;\n if (null != config)\n for (propName in (void 0 !== config.key && (key = \"\" + config.key), config))\n hasOwnProperty.call(config, propName) &&\n \"key\" !== propName &&\n \"__self\" !== propName &&\n \"__source\" !== propName &&\n (props[propName] = config[propName]);\n var childrenLength = arguments.length - 2;\n if (1 === childrenLength) props.children = children;\n else if (1 < childrenLength) {\n for (var childArray = Array(childrenLength), i = 0; i < childrenLength; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n if (type && type.defaultProps)\n for (propName in ((childrenLength = type.defaultProps), childrenLength))\n void 0 === props[propName] &&\n (props[propName] = childrenLength[propName]);\n return ReactElement(type, key, props);\n};\nexports.createRef = function () {\n return { current: null };\n};\nexports.forwardRef = function (render) {\n return { $$typeof: REACT_FORWARD_REF_TYPE, render: render };\n};\nexports.isValidElement = isValidElement;\nexports.lazy = function (ctor) {\n return {\n $$typeof: REACT_LAZY_TYPE,\n _payload: { _status: -1, _result: ctor },\n _init: lazyInitializer\n };\n};\nexports.memo = function (type, compare) {\n return {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: void 0 === compare ? null : compare\n };\n};\nexports.startTransition = function (scope) {\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n try {\n var returnValue = scope(),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n \"object\" === typeof returnValue &&\n null !== returnValue &&\n \"function\" === typeof returnValue.then &&\n returnValue.then(noop, reportGlobalError);\n } catch (error) {\n reportGlobalError(error);\n } finally {\n null !== prevTransition &&\n null !== currentTransition.types &&\n (prevTransition.types = currentTransition.types),\n (ReactSharedInternals.T = prevTransition);\n }\n};\nexports.unstable_useCacheRefresh = function () {\n return ReactSharedInternals.H.useCacheRefresh();\n};\nexports.use = function (usable) {\n return ReactSharedInternals.H.use(usable);\n};\nexports.useActionState = function (action, initialState, permalink) {\n return ReactSharedInternals.H.useActionState(action, initialState, permalink);\n};\nexports.useCallback = function (callback, deps) {\n return ReactSharedInternals.H.useCallback(callback, deps);\n};\nexports.useContext = function (Context) {\n return ReactSharedInternals.H.useContext(Context);\n};\nexports.useDebugValue = function () {};\nexports.useDeferredValue = function (value, initialValue) {\n return ReactSharedInternals.H.useDeferredValue(value, initialValue);\n};\nexports.useEffect = function (create, deps) {\n return ReactSharedInternals.H.useEffect(create, deps);\n};\nexports.useEffectEvent = function (callback) {\n return ReactSharedInternals.H.useEffectEvent(callback);\n};\nexports.useId = function () {\n return ReactSharedInternals.H.useId();\n};\nexports.useImperativeHandle = function (ref, create, deps) {\n return ReactSharedInternals.H.useImperativeHandle(ref, create, deps);\n};\nexports.useInsertionEffect = function (create, deps) {\n return ReactSharedInternals.H.useInsertionEffect(create, deps);\n};\nexports.useLayoutEffect = function (create, deps) {\n return ReactSharedInternals.H.useLayoutEffect(create, deps);\n};\nexports.useMemo = function (create, deps) {\n return ReactSharedInternals.H.useMemo(create, deps);\n};\nexports.useOptimistic = function (passthrough, reducer) {\n return ReactSharedInternals.H.useOptimistic(passthrough, reducer);\n};\nexports.useReducer = function (reducer, initialArg, init) {\n return ReactSharedInternals.H.useReducer(reducer, initialArg, init);\n};\nexports.useRef = function (initialValue) {\n return ReactSharedInternals.H.useRef(initialValue);\n};\nexports.useState = function (initialState) {\n return ReactSharedInternals.H.useState(initialState);\n};\nexports.useSyncExternalStore = function (\n subscribe,\n getSnapshot,\n getServerSnapshot\n) {\n return ReactSharedInternals.H.useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n );\n};\nexports.useTransition = function () {\n return ReactSharedInternals.H.useTransition();\n};\nexports.version = \"19.2.7\";\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","/**\n * @license React\n * react-jsx-runtime.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\nfunction jsxProd(type, config, maybeKey) {\n var key = null;\n void 0 !== maybeKey && (key = \"\" + maybeKey);\n void 0 !== config.key && (key = \"\" + config.key);\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n config = maybeKey.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== config ? config : null,\n props: maybeKey\n };\n}\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsxProd;\nexports.jsxs = jsxProd;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","/**\n * @license React\n * use-sync-external-store-shim.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\");\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useState = React.useState,\n useEffect = React.useEffect,\n useLayoutEffect = React.useLayoutEffect,\n useDebugValue = React.useDebugValue;\nfunction useSyncExternalStore$2(subscribe, getSnapshot) {\n var value = getSnapshot(),\n _useState = useState({ inst: { value: value, getSnapshot: getSnapshot } }),\n inst = _useState[0].inst,\n forceUpdate = _useState[1];\n useLayoutEffect(\n function () {\n inst.value = value;\n inst.getSnapshot = getSnapshot;\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n },\n [subscribe, value, getSnapshot]\n );\n useEffect(\n function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n return subscribe(function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n });\n },\n [subscribe]\n );\n useDebugValue(value);\n return value;\n}\nfunction checkIfSnapshotChanged(inst) {\n var latestGetSnapshot = inst.getSnapshot;\n inst = inst.value;\n try {\n var nextValue = latestGetSnapshot();\n return !objectIs(inst, nextValue);\n } catch (error) {\n return !0;\n }\n}\nfunction useSyncExternalStore$1(subscribe, getSnapshot) {\n return getSnapshot();\n}\nvar shim =\n \"undefined\" === typeof window ||\n \"undefined\" === typeof window.document ||\n \"undefined\" === typeof window.document.createElement\n ? useSyncExternalStore$1\n : useSyncExternalStore$2;\nexports.useSyncExternalStore =\n void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim.production.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim.development.js');\n}\n","//#region src/internal/component-class-name.ts\nfunction mergeClassNames(...classNames) {\n\treturn classNames.filter(Boolean).join(\" \");\n}\nfunction mergeComponentClassName(baseClassName, className) {\n\tif (typeof className === \"function\") return (state) => mergeClassNames(baseClassName, className(state));\n\treturn mergeClassNames(baseClassName, className);\n}\n//#endregion\nexport { mergeClassNames, mergeComponentClassName };\n\n//# sourceMappingURL=component-class-name.js.map","import { mergeClassNames } from \"../../internal/component-class-name.js\";\nimport { jsx } from \"react/jsx-runtime\";\n//#region src/components/spinner/spinner.tsx\nfunction TRSpinner({ className, decorative = false, label = \"Loading\", uiSize = \"md\", variant = \"current\", ...props }) {\n\tconst accessibleLabel = label.trim() === \"\" ? \"Loading\" : label;\n\tconst spinnerProps = {\n\t\t...props,\n\t\tclassName: mergeClassNames(\"tr-spinner\", className),\n\t\t\"data-ui-size\": uiSize,\n\t\t\"data-variant\": variant\n\t};\n\tif (decorative) return /* @__PURE__ */ jsx(\"span\", {\n\t\t...spinnerProps,\n\t\t\"aria-hidden\": \"true\"\n\t});\n\treturn /* @__PURE__ */ jsx(\"span\", {\n\t\t...spinnerProps,\n\t\t\"aria-label\": accessibleLabel,\n\t\trole: \"status\"\n\t});\n}\n//#endregion\nexport { TRSpinner };\n\n//# sourceMappingURL=spinner.js.map","function hasWindow() {\n return typeof window !== 'undefined';\n}\nfunction getNodeName(node) {\n if (isNode(node)) {\n return (node.nodeName || '').toLowerCase();\n }\n // Mocked nodes in testing environments may not be instances of Node. By\n // returning `#document` an infinite loop won't occur.\n // https://github.com/floating-ui/floating-ui/issues/2317\n return '#document';\n}\nfunction getWindow(node) {\n var _node$ownerDocument;\n return (node == null || (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;\n}\nfunction getDocumentElement(node) {\n var _ref;\n return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;\n}\nfunction isNode(value) {\n if (!hasWindow()) {\n return false;\n }\n return value instanceof Node || value instanceof getWindow(value).Node;\n}\nfunction isElement(value) {\n if (!hasWindow()) {\n return false;\n }\n return value instanceof Element || value instanceof getWindow(value).Element;\n}\nfunction isHTMLElement(value) {\n if (!hasWindow()) {\n return false;\n }\n return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;\n}\nfunction isShadowRoot(value) {\n if (!hasWindow() || typeof ShadowRoot === 'undefined') {\n return false;\n }\n return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;\n}\nfunction isOverflowElement(element) {\n const {\n overflow,\n overflowX,\n overflowY,\n display\n } = getComputedStyle(element);\n return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && display !== 'inline' && display !== 'contents';\n}\nfunction isTableElement(element) {\n return /^(table|td|th)$/.test(getNodeName(element));\n}\nfunction isTopLayer(element) {\n try {\n if (element.matches(':popover-open')) {\n return true;\n }\n } catch (_e) {\n // no-op\n }\n try {\n return element.matches(':modal');\n } catch (_e) {\n return false;\n }\n}\nconst willChangeRe = /transform|translate|scale|rotate|perspective|filter/;\nconst containRe = /paint|layout|strict|content/;\nconst isNotNone = value => !!value && value !== 'none';\nlet isWebKitValue;\nfunction isContainingBlock(elementOrCss) {\n const css = isElement(elementOrCss) ? getComputedStyle(elementOrCss) : elementOrCss;\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n // https://drafts.csswg.org/css-transforms-2/#individual-transforms\n return isNotNone(css.transform) || isNotNone(css.translate) || isNotNone(css.scale) || isNotNone(css.rotate) || isNotNone(css.perspective) || !isWebKit() && (isNotNone(css.backdropFilter) || isNotNone(css.filter)) || willChangeRe.test(css.willChange || '') || containRe.test(css.contain || '');\n}\nfunction getContainingBlock(element) {\n let currentNode = getParentNode(element);\n while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {\n if (isContainingBlock(currentNode)) {\n return currentNode;\n } else if (isTopLayer(currentNode)) {\n return null;\n }\n currentNode = getParentNode(currentNode);\n }\n return null;\n}\nfunction isWebKit() {\n if (isWebKitValue == null) {\n isWebKitValue = typeof CSS !== 'undefined' && CSS.supports && CSS.supports('-webkit-backdrop-filter', 'none');\n }\n return isWebKitValue;\n}\nfunction isLastTraversableNode(node) {\n return /^(html|body|#document)$/.test(getNodeName(node));\n}\nfunction getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}\nfunction getNodeScroll(element) {\n if (isElement(element)) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n }\n return {\n scrollLeft: element.scrollX,\n scrollTop: element.scrollY\n };\n}\nfunction getParentNode(node) {\n if (getNodeName(node) === 'html') {\n return node;\n }\n const result =\n // Step into the shadow DOM of the parent of a slotted node.\n node.assignedSlot ||\n // DOM Element detected.\n node.parentNode ||\n // ShadowRoot detected.\n isShadowRoot(node) && node.host ||\n // Fallback.\n getDocumentElement(node);\n return isShadowRoot(result) ? result.host : result;\n}\nfunction getNearestOverflowAncestor(node) {\n const parentNode = getParentNode(node);\n if (isLastTraversableNode(parentNode)) {\n return (node.ownerDocument || node).body;\n }\n if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {\n return parentNode;\n }\n return getNearestOverflowAncestor(parentNode);\n}\nfunction getOverflowAncestors(node, list, traverseIframes) {\n var _node$ownerDocument2;\n if (list === void 0) {\n list = [];\n }\n if (traverseIframes === void 0) {\n traverseIframes = true;\n }\n const scrollableAncestor = getNearestOverflowAncestor(node);\n const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);\n const win = getWindow(scrollableAncestor);\n if (isBody) {\n const frameElement = getFrameElement(win);\n return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], frameElement && traverseIframes ? getOverflowAncestors(frameElement) : []);\n } else {\n return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));\n }\n}\nfunction getFrameElement(win) {\n return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;\n}\n\nexport { getComputedStyle, getContainingBlock, getDocumentElement, getFrameElement, getNearestOverflowAncestor, getNodeName, getNodeScroll, getOverflowAncestors, getParentNode, getWindow, isContainingBlock, isElement, isHTMLElement, isLastTraversableNode, isNode, isOverflowElement, isShadowRoot, isTableElement, isTopLayer, isWebKit };\n","import * as React from 'react';\n\n/**\n * A clone of the React namespace for reading APIs that may be missing in older\n * supported React versions. Bundlers can rewrite direct `React.someNewApi`\n * reads into named imports, which breaks React 17. Reading from this cloned\n * object keeps those lookups optional.\n *\n * @see https://github.com/mui/material-ui/issues/41190#issuecomment-2040873379\n */\nexport const SafeReact = {\n ...React\n};","'use client';\n\nimport * as React from 'react';\nconst UNINITIALIZED = {};\n\n/**\n * A React.useRef() that is initialized with a function. Note that it accepts an optional\n * initialization argument, so the initialization function doesn't need to be an inline closure.\n *\n * @usage\n * const ref = useRefWithInit(sortColumns, columns)\n */\n\nexport function useRefWithInit(init, initArg) {\n const ref = React.useRef(UNINITIALIZED);\n if (ref.current === UNINITIALIZED) {\n ref.current = init(initArg);\n }\n return ref;\n}","'use client';\n\nimport { SafeReact } from \"./safeReact.mjs\";\nimport { useRefWithInit } from \"./useRefWithInit.mjs\";\nconst useInsertionEffect = SafeReact.useInsertionEffect;\nconst useSafeInsertionEffect =\n// React 17 doesn't have useInsertionEffect.\nuseInsertionEffect &&\n// Preact replaces useInsertionEffect with useLayoutEffect and fires too late.\nuseInsertionEffect !== SafeReact.useLayoutEffect ? useInsertionEffect : fn => fn();\n/**\n * Stabilizes the function passed so it's always the same between renders.\n *\n * The function becomes non-reactive to any values it captures.\n * It can safely be passed as a dependency of `React.useMemo` and `React.useEffect` without re-triggering them if its captured values change.\n *\n * The function must only be called inside effects and event handlers, never during render (which throws an error).\n *\n * This hook is a more permissive version of React 19.2's `React.useEffectEvent` in that it can be passed through contexts and called in event handler props, not just effects.\n */\nexport function useStableCallback(callback) {\n const stable = useRefWithInit(createStableCallback).current;\n stable.next = callback;\n useSafeInsertionEffect(stable.effect);\n return stable.trampoline;\n}\nfunction createStableCallback() {\n const stable = {\n next: undefined,\n callback: assertNotCalled,\n trampoline: (...args) => stable.callback?.(...args),\n effect: () => {\n stable.callback = stable.next;\n }\n };\n return stable;\n}\nfunction assertNotCalled() {\n if (process.env.NODE_ENV !== 'production') {\n // TODO: fix mui/no-guarded-throw\n // eslint-disable-next-line mui/no-guarded-throw\n throw /* minify-error-disabled */new Error('Base UI: Cannot call an event handler while rendering.');\n }\n}","'use client';\n\nimport * as React from 'react';\nconst noop = () => {};\nexport const useIsoLayoutEffect = typeof document !== 'undefined' ? React.useLayoutEffect : noop;","export function mergeObjects(a, b) {\n if (a && !b) {\n return a;\n }\n if (!a && b) {\n return b;\n }\n if (a || b) {\n return {\n ...a,\n ...b\n };\n }\n return undefined;\n}","import { mergeObjects } from '@base-ui/utils/mergeObjects';\nconst EMPTY_PROPS = {};\n\n/* eslint-disable id-denylist */\n/**\n * Merges multiple sets of React props. It follows the Object.assign pattern where the rightmost object's fields overwrite\n * the conflicting ones from others. This doesn't apply to event handlers, `className` and `style` props.\n *\n * Event handlers are merged and called in right-to-left order (rightmost handler executes first, leftmost last).\n * For React synthetic events, the rightmost handler can prevent prior (left-positioned) handlers from executing\n * by calling `event.preventBaseUIHandler()`. For non-synthetic events (custom events with primitive/object values),\n * all handlers always execute without prevention capability.\n *\n * The `className` prop is merged by concatenating classes in right-to-left order (rightmost class appears first in the string).\n * The `style` prop is merged with rightmost styles overwriting the prior ones.\n *\n * Props can either be provided as objects or as functions that take the previous props as an argument.\n * The function will receive the merged props up to that point (going from left to right):\n * so in the case of `(obj1, obj2, fn, obj3)`, `fn` will receive the merged props of `obj1` and `obj2`.\n * The function is responsible for chaining event handlers if needed (that is, we don't run the merge logic).\n *\n * Event handlers returned by the functions are not automatically prevented when `preventBaseUIHandler` is called.\n * They must check `event.baseUIHandlerPrevented` themselves and bail out if it's true.\n *\n * @important **`ref` is not merged.**\n * @param a Props object to merge.\n * @param b Props object to merge. The function will overwrite conflicting props from `a`.\n * @param c Props object to merge. The function will overwrite conflicting props from previous parameters.\n * @param d Props object to merge. The function will overwrite conflicting props from previous parameters.\n * @param e Props object to merge. The function will overwrite conflicting props from previous parameters.\n * @returns The merged props.\n * @public\n */\n\nexport function mergeProps(a, b, c, d, e) {\n if (!c && !d && !e && !a) {\n return createInitialMergedProps(b);\n }\n\n // We need to mutably own `merged`.\n let merged = createInitialMergedProps(a);\n if (b) {\n merged = mergeInto(merged, b);\n }\n if (c) {\n merged = mergeInto(merged, c);\n }\n if (d) {\n merged = mergeInto(merged, d);\n }\n if (e) {\n merged = mergeInto(merged, e);\n }\n return merged;\n}\n/* eslint-enable id-denylist */\n\n/**\n * Merges an arbitrary number of React props using the same logic as {@link mergeProps}.\n * This function accepts an array of props instead of individual arguments.\n *\n * This has slightly lower performance than {@link mergeProps} due to accepting an array\n * instead of a fixed number of arguments. Prefer {@link mergeProps} when merging 5 or\n * fewer prop sets for better performance.\n *\n * @param props Array of props to merge.\n * @returns The merged props.\n * @see mergeProps\n * @public\n */\nexport function mergePropsN(props) {\n if (props.length === 0) {\n return EMPTY_PROPS;\n }\n if (props.length === 1) {\n return createInitialMergedProps(props[0]);\n }\n\n // We need to mutably own `merged`.\n let merged = createInitialMergedProps(props[0]);\n for (let i = 1; i < props.length; i += 1) {\n merged = mergeInto(merged, props[i]);\n }\n return merged;\n}\nfunction createInitialMergedProps(inputProps) {\n if (isPropsGetter(inputProps)) {\n // Getter-returned handlers intentionally keep their existing semantics.\n return {\n ...resolvePropsGetter(inputProps, EMPTY_PROPS)\n };\n }\n return copyInitialProps(inputProps);\n}\nfunction mergeInto(merged, inputProps) {\n if (isPropsGetter(inputProps)) {\n return resolvePropsGetter(inputProps, merged);\n }\n return mutablyMergeInto(merged, inputProps);\n}\nfunction copyInitialProps(inputProps) {\n const copiedProps = {\n ...inputProps\n };\n\n // `copiedProps` is our fresh own-object copy, so iterating with `for...in` is safe here.\n // eslint-disable-next-line guard-for-in\n for (const propName in copiedProps) {\n const propValue = copiedProps[propName];\n if (isEventHandler(propName, propValue)) {\n copiedProps[propName] = wrapEventHandler(propValue);\n }\n }\n return copiedProps;\n}\n\n/**\n * Merges two sets of props. In case of conflicts, the external props take precedence.\n */\nfunction mutablyMergeInto(mergedProps, externalProps) {\n if (!externalProps) {\n return mergedProps;\n }\n\n // eslint-disable-next-line guard-for-in\n for (const propName in externalProps) {\n const externalPropValue = externalProps[propName];\n switch (propName) {\n case 'style':\n {\n mergedProps[propName] = mergeObjects(mergedProps.style, externalPropValue);\n break;\n }\n case 'className':\n {\n mergedProps[propName] = mergeClassNames(mergedProps.className, externalPropValue);\n break;\n }\n default:\n {\n if (isEventHandler(propName, externalPropValue)) {\n mergedProps[propName] = mergeEventHandlers(mergedProps[propName], externalPropValue);\n } else {\n mergedProps[propName] = externalPropValue;\n }\n }\n }\n }\n return mergedProps;\n}\nfunction isEventHandler(key, value) {\n // This approach is more efficient than using a regex.\n const code0 = key.charCodeAt(0);\n const code1 = key.charCodeAt(1);\n const code2 = key.charCodeAt(2);\n return code0 === 111 /* o */ && code1 === 110 /* n */ && code2 >= 65 /* A */ && code2 <= 90 /* Z */ && (typeof value === 'function' || typeof value === 'undefined');\n}\nfunction isPropsGetter(inputProps) {\n return typeof inputProps === 'function';\n}\nfunction resolvePropsGetter(inputProps, previousProps) {\n if (isPropsGetter(inputProps)) {\n return inputProps(previousProps);\n }\n return inputProps ?? EMPTY_PROPS;\n}\nfunction mergeEventHandlers(ourHandler, theirHandler) {\n if (!theirHandler) {\n return ourHandler;\n }\n if (!ourHandler) {\n return wrapEventHandler(theirHandler);\n }\n return (...args) => {\n const event = args[0];\n if (isSyntheticEvent(event)) {\n const baseUIEvent = event;\n makeEventPreventable(baseUIEvent);\n const result = theirHandler(...args);\n if (!baseUIEvent.baseUIHandlerPrevented) {\n ourHandler?.(...args);\n }\n return result;\n }\n const result = theirHandler(...args);\n ourHandler?.(...args);\n return result;\n };\n}\nfunction wrapEventHandler(handler) {\n if (!handler) {\n return handler;\n }\n return (...args) => {\n const event = args[0];\n if (isSyntheticEvent(event)) {\n makeEventPreventable(event);\n }\n return handler(...args);\n };\n}\nexport function makeEventPreventable(event) {\n event.preventBaseUIHandler = () => {\n event.baseUIHandlerPrevented = true;\n };\n return event;\n}\nexport function mergeClassNames(ourClassName, theirClassName) {\n if (theirClassName) {\n if (ourClassName) {\n // eslint-disable-next-line prefer-template\n return theirClassName + ' ' + ourClassName;\n }\n return theirClassName;\n }\n return ourClassName;\n}\nfunction isSyntheticEvent(event) {\n return event != null && typeof event === 'object' && 'nativeEvent' in event;\n}","/**\n * Creates a formatErrorMessage function with a custom URL and prefix.\n * @param baseUrl - The base URL for the error page (e.g., 'https://base-ui.com/production-error')\n * @param prefix - The prefix for the error message (e.g., 'Base UI')\n * @returns A function that formats error messages with the given URL and prefix\n */\nexport function createFormatErrorMessage(baseUrl, prefix) {\n return function formatErrorMessage(code, ...args) {\n const url = new URL(baseUrl);\n url.searchParams.set('code', code.toString());\n args.forEach(arg => url.searchParams.append('args[]', arg));\n return `${prefix} error #${code}; visit ${url} for the full message.`;\n };\n}\n\n/**\n * WARNING: Don't import this directly. It's imported by the code generated by\n * `@mui/internal-babel-plugin-minify-errors`. Make sure to always use string literals in `Error`\n * constructors to ensure the plugin works as expected. Supported patterns include:\n * throw new Error('My message');\n * throw new Error(`My message: ${foo}`);\n * throw new Error(`My message: ${foo}` + 'another string');\n * ...\n */\nconst formatErrorMessage = createFormatErrorMessage('https://base-ui.com/production-error', 'Base UI');\nexport default formatErrorMessage;","'use client';\n\nimport _formatErrorMessage from \"@base-ui/utils/formatErrorMessage\";\nimport * as React from 'react';\nexport const CompositeRootContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== \"production\") CompositeRootContext.displayName = \"CompositeRootContext\";\nexport function useCompositeRootContext(optional = false) {\n const context = React.useContext(CompositeRootContext);\n if (context === undefined && !optional) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Base UI: CompositeRootContext is missing. Composite parts must be placed within <Composite.Root>.' : _formatErrorMessage(16));\n }\n return context;\n}","'use client';\n\nimport * as React from 'react';\nexport function useFocusableWhenDisabled(parameters) {\n const {\n focusableWhenDisabled,\n disabled,\n composite = false,\n tabIndex: tabIndexProp = 0,\n isNativeButton\n } = parameters;\n const isFocusableComposite = composite && focusableWhenDisabled !== false;\n const isNonFocusableComposite = composite && focusableWhenDisabled === false;\n\n // we can't explicitly assign `undefined` to any of these props because it\n // would otherwise prevent subsequently merged props from setting them\n const props = React.useMemo(() => {\n const additionalProps = {\n // allow Tabbing away from focusableWhenDisabled elements\n onKeyDown(event) {\n if (disabled && focusableWhenDisabled && event.key !== 'Tab') {\n event.preventDefault();\n }\n }\n };\n if (!composite) {\n additionalProps.tabIndex = tabIndexProp;\n if (!isNativeButton && disabled) {\n additionalProps.tabIndex = focusableWhenDisabled ? tabIndexProp : -1;\n }\n }\n if (isNativeButton && (focusableWhenDisabled || isFocusableComposite) || !isNativeButton && disabled) {\n additionalProps['aria-disabled'] = disabled;\n }\n if (isNativeButton && (!focusableWhenDisabled || isNonFocusableComposite)) {\n additionalProps.disabled = disabled;\n }\n return additionalProps;\n }, [composite, disabled, focusableWhenDisabled, isFocusableComposite, isNonFocusableComposite, isNativeButton, tabIndexProp]);\n return {\n props\n };\n}","export { getWindow as ownerWindow } from '@floating-ui/utils/dom';\nexport function ownerDocument(node) {\n return node?.ownerDocument || document;\n}","import { ownerWindow } from '@base-ui/utils/owner';\n/**\n * Dispatches a constructed click on the target so it carries the source event's\n * modifier state, which `click()` always reports as unpressed. Like `click()`,\n * the untrusted click still runs native activation behavior (form submission,\n * link navigation).\n * `detail` defaults to 0 (the native convention for keyboard-generated clicks);\n * pass `detail: 1` when the click represents a mouse gesture so consumers keying\n * off `detail === 0` don't classify it as a keyboard activation.\n */\nexport function dispatchClickWithModifiers(target, sourceEvent, {\n detail = 0\n} = {}) {\n target.dispatchEvent(new (ownerWindow(target).PointerEvent)('click', {\n bubbles: true,\n cancelable: true,\n composed: true,\n detail,\n shiftKey: sourceEvent.shiftKey,\n ctrlKey: sourceEvent.ctrlKey,\n altKey: sourceEvent.altKey,\n metaKey: sourceEvent.metaKey\n }));\n}","'use client';\n\nimport * as React from 'react';\nimport { isHTMLElement } from '@floating-ui/utils/dom';\nimport { useStableCallback } from '@base-ui/utils/useStableCallback';\nimport { error } from '@base-ui/utils/error';\nimport { SafeReact } from '@base-ui/utils/safeReact';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { makeEventPreventable, mergeProps } from \"../../merge-props/index.mjs\";\nimport { useCompositeRootContext } from \"../composite/root/CompositeRootContext.mjs\";\nimport { useFocusableWhenDisabled } from \"../../utils/useFocusableWhenDisabled.mjs\";\nimport { dispatchClickWithModifiers } from \"../../utils/dispatchClickWithModifiers.mjs\";\nexport function useButton(parameters = {}) {\n const {\n disabled = false,\n focusableWhenDisabled,\n tabIndex = 0,\n native: isNativeButton = true,\n composite: compositeProp\n } = parameters;\n const elementRef = React.useRef(null);\n const compositeRootContext = useCompositeRootContext(true);\n const isCompositeItem = compositeProp ?? compositeRootContext !== undefined;\n const {\n props: focusableWhenDisabledProps\n } = useFocusableWhenDisabled({\n focusableWhenDisabled,\n disabled,\n composite: isCompositeItem,\n tabIndex,\n isNativeButton\n });\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useEffect(() => {\n if (!elementRef.current) {\n return;\n }\n const isButtonTag = isButtonElement(elementRef.current);\n if (isNativeButton) {\n if (!isButtonTag) {\n const ownerStackMessage = SafeReact.captureOwnerStack?.() || '';\n const message = 'A component that acts as a button expected a native <button> because the ' + '`nativeButton` prop is true. Rendering a non-<button> removes native button ' + 'semantics, which can impact forms and accessibility. Use a real <button> in the ' + '`render` prop, or set `nativeButton` to `false`.';\n error(`${message}${ownerStackMessage}`);\n }\n } else if (isButtonTag) {\n const ownerStackMessage = SafeReact.captureOwnerStack?.() || '';\n const message = 'A component that acts as a button expected a non-<button> because the `nativeButton` ' + 'prop is false. Rendering a <button> keeps native behavior while Base UI applies ' + 'non-native attributes and handlers, which can add unintended extra attributes (such ' + 'as `role` or `aria-disabled`). Use a non-<button> in the `render` prop, or set ' + '`nativeButton` to `true`.';\n error(`${message}${ownerStackMessage}`);\n }\n }, [isNativeButton]);\n }\n\n // handles a disabled composite button rendering another button, e.g.\n // <Toolbar.Button disabled render={<Menu.Trigger />} />\n // the `disabled` prop needs to pass through 2 `useButton`s then finally\n // delete the `disabled` attribute from DOM\n const updateDisabled = React.useCallback(() => {\n const element = elementRef.current;\n if (!isButtonElement(element)) {\n return;\n }\n if (isCompositeItem && disabled && focusableWhenDisabledProps.disabled === undefined && element.disabled) {\n element.disabled = false;\n }\n }, [disabled, focusableWhenDisabledProps.disabled, isCompositeItem]);\n useIsoLayoutEffect(updateDisabled, [updateDisabled]);\n const getButtonProps = React.useCallback((externalProps = {}) => {\n const {\n onClick: externalOnClick,\n onMouseDown: externalOnMouseDown,\n onKeyUp: externalOnKeyUp,\n onKeyDown: externalOnKeyDown,\n onPointerDown: externalOnPointerDown,\n ...otherExternalProps\n } = externalProps;\n return mergeProps({\n onClick(event) {\n if (disabled) {\n event.preventDefault();\n return;\n }\n externalOnClick?.(event);\n },\n onMouseDown(event) {\n if (!disabled) {\n externalOnMouseDown?.(event);\n }\n },\n onKeyDown(event) {\n if (disabled) {\n return;\n }\n makeEventPreventable(event);\n externalOnKeyDown?.(event);\n if (event.baseUIHandlerPrevented) {\n return;\n }\n const isCurrentTarget = event.target === event.currentTarget;\n const currentTarget = event.currentTarget;\n const isButton = isButtonElement(currentTarget);\n const isLink = !isNativeButton && isValidLinkElement(currentTarget);\n const shouldClick = isCurrentTarget && (isNativeButton ? isButton : !isLink);\n const isEnterKey = event.key === 'Enter';\n const isSpaceKey = event.key === ' ';\n const role = currentTarget.getAttribute('role');\n const isTextNavigationRole = role?.startsWith('menuitem') || role === 'option' || role === 'gridcell';\n if (isCurrentTarget && isCompositeItem && isSpaceKey) {\n if (event.defaultPrevented && isTextNavigationRole) {\n return;\n }\n event.preventDefault();\n\n // Only a native-mode item that isn't a real <button> is excluded.\n if (!isNativeButton || isButton) {\n event.preventBaseUIHandler();\n dispatchClickWithModifiers(currentTarget, event);\n }\n return;\n }\n\n // Keyboard accessibility for native and non-native elements.\n if (!shouldClick || isNativeButton || !isSpaceKey && !isEnterKey) {\n // Space activates links on keyup (`role=\"button\"` semantics, matching the\n // composite path); prevent the page scroll Space would otherwise trigger.\n // Enter is left to the browser's native link activation.\n if (isCurrentTarget && isLink && isSpaceKey) {\n event.preventDefault();\n }\n return;\n }\n\n // Match native buttons: preventing the keydown's default cancels activation.\n if (event.defaultPrevented) {\n return;\n }\n event.preventDefault();\n if (isEnterKey) {\n event.preventBaseUIHandler();\n dispatchClickWithModifiers(currentTarget, event);\n }\n },\n onKeyUp(event) {\n if (disabled) {\n return;\n }\n\n // calling preventDefault in keyUp on a <button> will not dispatch a click event if Space is pressed\n // https://codesandbox.io/p/sandbox/button-keyup-preventdefault-dn7f0\n makeEventPreventable(event);\n externalOnKeyUp?.(event);\n if (event.target === event.currentTarget && isNativeButton && isCompositeItem && isButtonElement(event.currentTarget) && event.key === ' ') {\n event.preventDefault();\n return;\n }\n if (event.baseUIHandlerPrevented) {\n return;\n }\n\n // Keyboard accessibility for non interactive elements.\n // Match native buttons: preventing the keyup's default cancels Space activation.\n // Limitation: unlike a native <button>, a prevented *keydown* cannot cancel the\n // activation — no state is kept between keydown and keyup, so we can't tell\n // whether the keydown was prevented or even happened on this element.\n if (event.target === event.currentTarget && !isNativeButton && !isCompositeItem && !event.defaultPrevented && event.key === ' ') {\n event.preventBaseUIHandler();\n dispatchClickWithModifiers(event.currentTarget, event);\n }\n },\n onPointerDown(event) {\n if (disabled) {\n event.preventDefault();\n return;\n }\n externalOnPointerDown?.(event);\n }\n }, isNativeButton ? {\n type: 'button'\n } : {\n role: 'button'\n }, focusableWhenDisabledProps, otherExternalProps);\n }, [disabled, focusableWhenDisabledProps, isCompositeItem, isNativeButton]);\n const buttonRef = useStableCallback(element => {\n elementRef.current = element;\n updateDisabled();\n });\n return {\n getButtonProps,\n buttonRef\n };\n}\nfunction isButtonElement(elem) {\n return isHTMLElement(elem) && elem.tagName === 'BUTTON';\n}\nfunction isValidLinkElement(elem) {\n return isHTMLElement(elem) && elem.tagName === 'A' && Boolean(elem.href);\n}","import { useRefWithInit } from \"./useRefWithInit.mjs\";\n\n/**\n * Merges refs into a single memoized callback ref or `null`.\n * This makes sure multiple refs are updated together and have the same value.\n *\n * This function accepts up to four refs. If you need to merge more, or have an unspecified number of refs to merge,\n * use `useMergedRefsN` instead.\n */\n\nexport function useMergedRefs(a, b, c, d) {\n const forkRef = useRefWithInit(createForkRef).current;\n if (didChange(forkRef, a, b, c, d)) {\n update(forkRef, [a, b, c, d]);\n }\n return forkRef.callback;\n}\n\n/**\n * Merges an array of refs into a single memoized callback ref or `null`.\n *\n * If you need to merge a fixed number (up to four) of refs, use `useMergedRefs` instead for better performance.\n */\nexport function useMergedRefsN(refs) {\n const forkRef = useRefWithInit(createForkRef).current;\n if (didChangeN(forkRef, refs)) {\n update(forkRef, refs);\n }\n return forkRef.callback;\n}\nfunction createForkRef() {\n return {\n callback: null,\n cleanup: null,\n refs: []\n };\n}\nfunction didChange(forkRef, a, b, c, d) {\n // prettier-ignore\n return forkRef.refs[0] !== a || forkRef.refs[1] !== b || forkRef.refs[2] !== c || forkRef.refs[3] !== d;\n}\nfunction didChangeN(forkRef, newRefs) {\n return forkRef.refs.length !== newRefs.length || forkRef.refs.some((ref, index) => ref !== newRefs[index]);\n}\nfunction update(forkRef, refs) {\n forkRef.refs = refs;\n if (refs.every(ref => ref == null)) {\n forkRef.callback = null;\n return;\n }\n forkRef.callback = instance => {\n if (forkRef.cleanup) {\n forkRef.cleanup();\n forkRef.cleanup = null;\n }\n if (instance != null) {\n const cleanupCallbacks = Array(refs.length).fill(null);\n for (let i = 0; i < refs.length; i += 1) {\n const ref = refs[i];\n if (ref == null) {\n continue;\n }\n switch (typeof ref) {\n case 'function':\n {\n const refCleanup = ref(instance);\n if (typeof refCleanup === 'function') {\n cleanupCallbacks[i] = refCleanup;\n }\n break;\n }\n case 'object':\n {\n ref.current = instance;\n break;\n }\n default:\n }\n }\n forkRef.cleanup = () => {\n for (let i = 0; i < refs.length; i += 1) {\n const ref = refs[i];\n if (ref == null) {\n continue;\n }\n switch (typeof ref) {\n case 'function':\n {\n const cleanupCallback = cleanupCallbacks[i];\n if (typeof cleanupCallback === 'function') {\n cleanupCallback();\n } else {\n // Legacy ref with no attach-time cleanup: detach by calling it with `null`.\n // It returns nothing; React 19 cleanups are handled in the branch above.\n void ref(null);\n }\n break;\n }\n case 'object':\n {\n ref.current = null;\n break;\n }\n default:\n }\n }\n };\n }\n };\n}","import * as React from 'react';\nconst majorVersion = parseInt(React.version, 10);\nexport function isReactVersionAtLeast(reactVersionToCheck) {\n return majorVersion >= reactVersionToCheck;\n}","import * as React from 'react';\nimport { isReactVersionAtLeast } from \"./reactVersion.mjs\";\n\n/**\n * Extracts the `ref` from a React element, handling different React versions.\n */\nexport function getReactElementRef(element) {\n if (! /*#__PURE__*/React.isValidElement(element)) {\n return null;\n }\n const reactElement = element;\n const propsWithRef = reactElement.props;\n return (isReactVersionAtLeast(19) ? propsWithRef?.ref : reactElement.ref) ?? null;\n}","export function NOOP() {}\nexport const EMPTY_ARRAY = Object.freeze([]);\nexport const EMPTY_OBJECT = Object.freeze({});","export function getStateAttributesProps(state, customMapping) {\n const props = {};\n\n /* eslint-disable-next-line guard-for-in */\n for (const key in state) {\n const value = state[key];\n if (customMapping?.hasOwnProperty(key)) {\n const customProps = customMapping[key](value);\n if (customProps != null) {\n Object.assign(props, customProps);\n }\n continue;\n }\n if (value === true) {\n props[`data-${key.toLowerCase()}`] = '';\n } else if (value) {\n props[`data-${key.toLowerCase()}`] = value.toString();\n }\n }\n return props;\n}","/**\n * If the provided className is a string, it will be returned as is.\n * Otherwise, the function will call the className function with the state as the first argument.\n *\n * @param className\n * @param state\n */\nexport function resolveClassName(className, state) {\n return typeof className === 'function' ? className(state) : className;\n}","/**\n * If the provided style is an object, it will be returned as is.\n * Otherwise, the function will call the style function with the state as the first argument.\n *\n * @param style\n * @param state\n */\nexport function resolveStyle(style, state) {\n return typeof style === 'function' ? style(state) : style;\n}","import _formatErrorMessage from \"@base-ui/utils/formatErrorMessage\";\nimport * as React from 'react';\nimport { useMergedRefs, useMergedRefsN } from '@base-ui/utils/useMergedRefs';\nimport { getReactElementRef } from '@base-ui/utils/getReactElementRef';\nimport { mergeObjects } from '@base-ui/utils/mergeObjects';\nimport { warn } from '@base-ui/utils/warn';\nimport { EMPTY_OBJECT } from '@base-ui/utils/empty';\nimport { getStateAttributesProps } from \"./getStateAttributesProps.mjs\";\nimport { resolveClassName } from \"../utils/resolveClassName.mjs\";\nimport { resolveStyle } from \"../utils/resolveStyle.mjs\";\nimport { mergeProps, mergePropsN, mergeClassNames } from \"../merge-props/index.mjs\";\nimport { createElement as _createElement } from \"react\";\n/**\n * Renders a Base UI element.\n *\n * @param element The default HTML element to render. Can be overridden by the `render` prop.\n * @param componentProps An object containing the `render` and `className` props to be used for element customization. Other props are ignored.\n * @param params Additional parameters for rendering the element.\n */\nexport function useRenderElement(element, componentProps, params = {}) {\n const renderProp = componentProps.render;\n const outProps = useRenderElementProps(componentProps, params);\n if (params.enabled === false) {\n return null;\n }\n const state = params.state ?? EMPTY_OBJECT;\n return evaluateRenderProp(element, renderProp, outProps, state);\n}\n\n/**\n * Computes render element final props.\n */\nfunction useRenderElementProps(componentProps, params = {}) {\n const {\n className: classNameProp,\n style: styleProp,\n render: renderProp\n } = componentProps;\n const {\n state = EMPTY_OBJECT,\n ref,\n props,\n stateAttributesMapping,\n enabled = true\n } = params;\n const className = enabled ? resolveClassName(classNameProp, state) : undefined;\n const style = enabled ? resolveStyle(styleProp, state) : undefined;\n const stateProps = enabled ? getStateAttributesProps(state, stateAttributesMapping) : EMPTY_OBJECT;\n const resolvedProps = enabled && props ? resolveRenderFunctionProps(props) : undefined;\n\n // Ensure outProps is always a new mutable object when enabled, never EMPTY_OBJECT.\n // This prevents potential TypeError when setting ref, className, or style properties,\n // since EMPTY_OBJECT is frozen and mutations would fail in strict mode.\n const outProps = enabled ? mergeObjects(stateProps, resolvedProps) ?? {} : EMPTY_OBJECT;\n\n // SAFETY: The `useMergedRefs` functions use a single hook to store the same value,\n // switching between them at runtime is safe. If this assertion fails, React will\n // throw at runtime anyway.\n // This also skips the `useMergedRefs` call on the server, which is fine because\n // refs are not used on the server side.\n /* eslint-disable react-hooks/rules-of-hooks */\n if (typeof document !== 'undefined') {\n if (!enabled) {\n // Called only to keep the hook order stable when disabled; the merged ref is unused.\n void useMergedRefs(null, null);\n } else if (Array.isArray(ref)) {\n outProps.ref = useMergedRefsN([outProps.ref, getReactElementRef(renderProp), ...ref]);\n } else {\n outProps.ref = useMergedRefs(outProps.ref, getReactElementRef(renderProp), ref);\n }\n }\n if (!enabled) {\n return EMPTY_OBJECT;\n }\n if (className !== undefined) {\n outProps.className = mergeClassNames(outProps.className, className);\n }\n if (style !== undefined) {\n outProps.style = mergeObjects(outProps.style, style);\n }\n return outProps;\n}\nfunction resolveRenderFunctionProps(props) {\n if (Array.isArray(props)) {\n return mergePropsN(props);\n }\n return mergeProps(undefined, props);\n}\n\n// The symbol React uses internally for lazy components\n// https://github.com/react/react/blob/a0566250b210499b4c5677f5ac2eedbd71d51a1b/packages/shared/ReactSymbols.js#L31\n//\n// TODO delete once https://github.com/react/react/issues/32392 is fixed\nconst REACT_LAZY_TYPE = Symbol.for('react.lazy');\nconst COMPONENT_IDENTIFIER_PATTERN = /^[A-Z][A-Za-z0-9$]*$/;\nconst LOWERCASE_CHARACTER_PATTERN = /[a-z]/;\nfunction evaluateRenderProp(element, render, props, state) {\n if (render) {\n if (typeof render === 'function') {\n if (process.env.NODE_ENV !== 'production') {\n warnIfRenderPropLooksLikeComponent(render);\n }\n return render(props, state);\n }\n const mergedProps = mergeProps(props, render.props);\n mergedProps.ref = props.ref;\n let newElement = render;\n // Workaround for https://github.com/react/react/issues/32392\n // This works because the toArray() logic unwrap lazy element type in\n // https://github.com/react/react/blob/a0566250b210499b4c5677f5ac2eedbd71d51a1b/packages/react/src/ReactChildren.js#L186\n if (newElement?.$$typeof === REACT_LAZY_TYPE) {\n const children = React.Children.toArray(render);\n newElement = children[0];\n }\n\n // There is a high number of indirections, the error message thrown by React.cloneElement() is\n // hard to use for developers, this logic provides a better context.\n //\n // Our general guideline is to never change the control flow depending on the environment.\n // However, React.cloneElement() throws if React.isValidElement() is false,\n // so we can throw before with custom message.\n if (process.env.NODE_ENV !== 'production') {\n if (! /*#__PURE__*/React.isValidElement(newElement)) {\n // TODO: fix mui/no-guarded-throw\n // eslint-disable-next-line mui/no-guarded-throw\n throw new Error(['Base UI: The `render` prop was provided an invalid React element as `React.isValidElement(render)` is `false`.', 'A valid React element must be provided to the `render` prop because it is cloned with props to replace the default element.', 'https://base-ui.com/r/invalid-render-prop'].join('\\n'));\n }\n }\n return /*#__PURE__*/React.cloneElement(newElement, mergedProps);\n }\n if (element) {\n if (typeof element === 'string') {\n return renderTag(element, props);\n }\n }\n // Unreachable, but the typings on `useRenderElement` need to be reworked\n // to annotate it correctly.\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Base UI: Render element or function are not defined.' : _formatErrorMessage(8));\n}\nfunction warnIfRenderPropLooksLikeComponent(renderFn) {\n const functionName = renderFn.name;\n if (functionName.length === 0) {\n return;\n }\n if (!COMPONENT_IDENTIFIER_PATTERN.test(functionName)) {\n return;\n }\n if (!LOWERCASE_CHARACTER_PATTERN.test(functionName)) {\n return;\n }\n warn(`The \\`render\\` prop received a function named \\`${functionName}\\` that starts with an uppercase letter.`, 'This usually means a React component was passed directly as `render={Component}`.', 'Base UI calls `render` as a plain function, which can break the Rules of Hooks during reconciliation.', 'If this is an intentional render callback, rename it to start with a lowercase letter.', 'Use `render={<Component />}` or `render={(props) => <Component {...props} />}` instead.', 'https://base-ui.com/r/invalid-render-prop');\n}\nfunction renderTag(Tag, props) {\n if (Tag === 'button') {\n return /*#__PURE__*/_createElement(\"button\", {\n type: \"button\",\n ...props,\n key: props.key\n });\n }\n if (Tag === 'img') {\n return /*#__PURE__*/_createElement(\"img\", {\n alt: \"\",\n ...props,\n key: props.key\n });\n }\n return /*#__PURE__*/React.createElement(Tag, props);\n}","'use client';\n\nimport * as React from 'react';\nimport { useButton } from \"../internals/use-button/useButton.mjs\";\nimport { useRenderElement } from \"../internals/useRenderElement.mjs\";\n/**\n * A button component that can be used to trigger actions.\n * Renders a `<button>` element.\n *\n * Documentation: [Base UI Button](https://base-ui.com/react/components/button)\n */\nexport const Button = /*#__PURE__*/React.forwardRef(function Button(componentProps, forwardedRef) {\n const {\n render,\n className,\n disabled = false,\n focusableWhenDisabled = false,\n nativeButton = true,\n style,\n ...elementProps\n } = componentProps;\n const {\n getButtonProps,\n buttonRef\n } = useButton({\n disabled,\n focusableWhenDisabled,\n native: nativeButton\n });\n const state = {\n disabled\n };\n return useRenderElement('button', componentProps, {\n state,\n ref: [forwardedRef, buttonRef],\n props: [elementProps, getButtonProps]\n });\n});\nif (process.env.NODE_ENV !== \"production\") Button.displayName = \"Button\";","\"use client\";\nimport { mergeComponentClassName } from \"../../internal/component-class-name.js\";\nimport { TRSpinner } from \"../spinner/spinner.js\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nimport { Button } from \"@base-ui/react/button\";\n//#region src/components/button/button.tsx\nconst legacyVariantIntents = {\n\tdanger: \"danger\",\n\tprimary: \"primary\",\n\tsecondary: \"neutral\"\n};\nfunction TRButton({ \"aria-busy\": ariaBusy, \"aria-label\": ariaLabel, \"aria-labelledby\": ariaLabelledBy, appearance = \"solid\", children, className, disabled, intent, loading = false, loadingLabel, nativeButton = true, uiSize = \"md\", type = \"button\", variant = \"secondary\", ...props }) {\n\tconst resolvedIntent = intent ?? legacyVariantIntents[variant];\n\treturn /* @__PURE__ */ jsxs(Button, {\n\t\t...props,\n\t\t\"aria-busy\": loading ? true : ariaBusy,\n\t\t\"aria-label\": loading ? loadingLabel ?? ariaLabel : ariaLabel,\n\t\t\"aria-labelledby\": loading && loadingLabel !== void 0 ? void 0 : ariaLabelledBy,\n\t\tclassName: mergeComponentClassName(\"tr-btn\", className),\n\t\t\"data-appearance\": appearance,\n\t\t\"data-intent\": resolvedIntent,\n\t\t\"data-ui-size\": uiSize,\n\t\t\"data-variant\": variant,\n\t\tdisabled: disabled || loading,\n\t\tnativeButton,\n\t\ttype: nativeButton ? type : void 0,\n\t\tchildren: [loading ? /* @__PURE__ */ jsx(TRSpinner, {\n\t\t\tdecorative: true,\n\t\t\tuiSize: \"md\"\n\t\t}) : null, children]\n\t});\n}\n//#endregion\nexport { TRButton };\n\n//# sourceMappingURL=button.js.map","import { useRenderElement } from \"../internals/useRenderElement.mjs\";\n/**\n * Renders a Base UI element.\n *\n * @public\n */\nexport function useRender(params) {\n return useRenderElement(params.defaultTagName ?? 'div', params, params);\n}","export const warn = (i18n, code, msg, rest) => {\n const args = [msg, {\n code,\n ...(rest || {})\n }];\n if (i18n?.services?.logger?.forward) {\n return i18n.services.logger.forward(args, 'warn', 'react-i18next::', true);\n }\n if (isString(args[0])) args[0] = `react-i18next:: ${args[0]}`;\n if (i18n?.services?.logger?.warn) {\n i18n.services.logger.warn(...args);\n } else if (console?.warn) {\n console.warn(...args);\n }\n};\nconst alreadyWarned = {};\nexport const warnOnce = (i18n, code, msg, rest) => {\n if (isString(msg) && alreadyWarned[msg]) return;\n if (isString(msg)) alreadyWarned[msg] = new Date();\n warn(i18n, code, msg, rest);\n};\nconst loadedClb = (i18n, cb) => () => {\n if (i18n.isInitialized) {\n cb();\n } else {\n const initialized = () => {\n setTimeout(() => {\n i18n.off('initialized', initialized);\n }, 0);\n cb();\n };\n i18n.on('initialized', initialized);\n }\n};\nexport const loadNamespaces = (i18n, ns, cb) => {\n i18n.loadNamespaces(ns, loadedClb(i18n, cb));\n};\nexport const loadLanguages = (i18n, lng, ns, cb) => {\n if (isString(ns)) ns = [ns];\n if (i18n.options.preload && i18n.options.preload.indexOf(lng) > -1) return loadNamespaces(i18n, ns, cb);\n ns.forEach(n => {\n if (i18n.options.ns.indexOf(n) < 0) i18n.options.ns.push(n);\n });\n i18n.loadLanguages(lng, loadedClb(i18n, cb));\n};\nexport const hasLoadedNamespace = (ns, i18n, options = {}) => {\n if (!i18n.languages || !i18n.languages.length) {\n warnOnce(i18n, 'NO_LANGUAGES', 'i18n.languages were undefined or empty', {\n languages: i18n.languages\n });\n return true;\n }\n return i18n.hasLoadedNamespace(ns, {\n lng: options.lng,\n precheck: (i18nInstance, loadNotPending) => {\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18nInstance.services.backendConnector.backend && i18nInstance.isLanguageChangingTo && !loadNotPending(i18nInstance.isLanguageChangingTo, ns)) return false;\n }\n });\n};\nexport const getDisplayName = Component => Component.displayName || Component.name || (isString(Component) && Component.length > 0 ? Component : 'Unknown');\nexport const isString = obj => typeof obj === 'string';\nexport const isObject = obj => typeof obj === 'object' && obj !== null;","const matchHtmlEntity = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g;\nconst htmlEntities = {\n '&amp;': '&',\n '&#38;': '&',\n '&lt;': '<',\n '&#60;': '<',\n '&gt;': '>',\n '&#62;': '>',\n '&apos;': \"'\",\n '&#39;': \"'\",\n '&quot;': '\"',\n '&#34;': '\"',\n '&nbsp;': ' ',\n '&#160;': ' ',\n '&copy;': '©',\n '&#169;': '©',\n '&reg;': '®',\n '&#174;': '®',\n '&hellip;': '…',\n '&#8230;': '…',\n '&#x2F;': '/',\n '&#47;': '/'\n};\nconst unescapeHtmlEntity = m => htmlEntities[m];\nexport const unescape = text => text.replace(matchHtmlEntity, unescapeHtmlEntity);","import { unescape } from './unescape.js';\nlet defaultOptions = {\n bindI18n: 'languageChanged',\n bindI18nStore: '',\n transEmptyNodeValue: '',\n transSupportBasicHtmlNodes: true,\n transWrapTextNodes: '',\n transKeepBasicHtmlNodesFor: ['br', 'strong', 'i', 'p'],\n useSuspense: true,\n unescape,\n transDefaultProps: undefined\n};\nexport const setDefaults = (options = {}) => {\n defaultOptions = {\n ...defaultOptions,\n ...options\n };\n};\nexport const getDefaults = () => defaultOptions;","let i18nInstance;\nexport const setI18n = instance => {\n i18nInstance = instance;\n};\nexport const getI18n = () => i18nInstance;","import { setDefaults } from './defaults.js';\nimport { setI18n } from './i18nInstance.js';\nexport const initReactI18next = {\n type: '3rdParty',\n init(instance) {\n setDefaults(instance.options.react);\n setI18n(instance);\n }\n};","import { createContext } from 'react';\nimport { getDefaults, setDefaults } from './defaults.js';\nimport { getI18n, setI18n } from './i18nInstance.js';\nimport { initReactI18next } from './initReactI18next.js';\nexport { getDefaults, setDefaults, getI18n, setI18n, initReactI18next };\nexport const I18nContext = createContext();\nexport class ReportNamespaces {\n constructor() {\n this.usedNamespaces = {};\n }\n addUsedNamespaces(namespaces) {\n namespaces.forEach(ns => {\n if (!this.usedNamespaces[ns]) this.usedNamespaces[ns] = true;\n });\n }\n getUsedNamespaces() {\n return Object.keys(this.usedNamespaces);\n }\n}\nexport const composeInitialProps = ForComponent => async ctx => {\n const componentsInitialProps = (await ForComponent.getInitialProps?.(ctx)) ?? {};\n const i18nInitialProps = getInitialProps();\n return {\n ...componentsInitialProps,\n ...i18nInitialProps\n };\n};\nexport const getInitialProps = () => {\n const i18n = getI18n();\n if (!i18n) {\n console.warn('react-i18next:: getInitialProps: You will need to pass in an i18next instance by using initReactI18next');\n return {};\n }\n const namespaces = i18n.reportNamespaces?.getUsedNamespaces() ?? [];\n const ret = {};\n const initialI18nStore = {};\n i18n.languages.forEach(l => {\n initialI18nStore[l] = {};\n namespaces.forEach(ns => {\n initialI18nStore[l][ns] = i18n.getResourceBundle(l, ns) || {};\n });\n });\n ret.initialI18nStore = initialI18nStore;\n ret.initialLanguage = i18n.language;\n return ret;\n};","import { useContext, useCallback, useMemo, useEffect, useRef, useState } from 'react';\nimport { useSyncExternalStore } from 'use-sync-external-store/shim';\nimport { getI18n, getDefaults, ReportNamespaces, I18nContext } from './context.js';\nimport { warnOnce, loadNamespaces, loadLanguages, hasLoadedNamespace, isString, isObject } from './utils.js';\nconst notReadyT = (k, optsOrDefaultValue) => {\n if (isString(optsOrDefaultValue)) return optsOrDefaultValue;\n if (isObject(optsOrDefaultValue) && isString(optsOrDefaultValue.defaultValue)) return optsOrDefaultValue.defaultValue;\n if (typeof k === 'function') return '';\n if (Array.isArray(k)) {\n const last = k[k.length - 1];\n return typeof last === 'function' ? '' : last;\n }\n return k;\n};\nconst notReadySnapshot = {\n t: notReadyT,\n ready: false\n};\nconst dummySubscribe = () => () => {};\nexport const useTranslation = (ns, props = {}) => {\n const {\n i18n: i18nFromProps\n } = props;\n const {\n i18n: i18nFromContext,\n defaultNS: defaultNSFromContext\n } = useContext(I18nContext) || {};\n const i18n = i18nFromProps || i18nFromContext || getI18n();\n if (i18n && !i18n.reportNamespaces) i18n.reportNamespaces = new ReportNamespaces();\n if (!i18n) {\n warnOnce(i18n, 'NO_I18NEXT_INSTANCE', 'useTranslation: You will need to pass in an i18next instance by using initReactI18next');\n }\n const i18nOptions = useMemo(() => ({\n ...getDefaults(),\n ...i18n?.options?.react,\n ...props\n }), [i18n, props]);\n const {\n useSuspense,\n keyPrefix\n } = i18nOptions;\n const nsOrContext = ns || defaultNSFromContext || i18n?.options?.defaultNS;\n const unstableNamespaces = isString(nsOrContext) ? [nsOrContext] : nsOrContext || ['translation'];\n const namespaces = useMemo(() => unstableNamespaces, unstableNamespaces);\n i18n?.reportNamespaces?.addUsedNamespaces?.(namespaces);\n const revisionRef = useRef(0);\n const subscribe = useCallback(callback => {\n if (!i18n) return dummySubscribe;\n const {\n bindI18n,\n bindI18nStore\n } = i18nOptions;\n const wrappedCallback = () => {\n revisionRef.current += 1;\n callback();\n };\n if (bindI18n) i18n.on(bindI18n, wrappedCallback);\n if (bindI18nStore) i18n.store.on(bindI18nStore, wrappedCallback);\n return () => {\n if (bindI18n) bindI18n.split(' ').forEach(e => i18n.off(e, wrappedCallback));\n if (bindI18nStore) bindI18nStore.split(' ').forEach(e => i18n.store.off(e, wrappedCallback));\n };\n }, [i18n, i18nOptions]);\n const snapshotRef = useRef();\n const getSnapshot = useCallback(() => {\n if (!i18n) {\n return notReadySnapshot;\n }\n const calculatedReady = !!(i18n.isInitialized || i18n.initializedStoreOnce) && namespaces.every(n => hasLoadedNamespace(n, i18n, i18nOptions));\n const currentLng = props.lng || i18n.language;\n const currentRevision = revisionRef.current;\n const lastSnapshot = snapshotRef.current;\n if (lastSnapshot && lastSnapshot.ready === calculatedReady && lastSnapshot.lng === currentLng && lastSnapshot.keyPrefix === keyPrefix && lastSnapshot.revision === currentRevision) {\n return lastSnapshot;\n }\n const calculatedT = i18n.getFixedT(currentLng, i18nOptions.nsMode === 'fallback' ? namespaces : namespaces[0], keyPrefix, {\n scopeNs: namespaces\n });\n const newSnapshot = {\n t: calculatedT,\n ready: calculatedReady,\n lng: currentLng,\n keyPrefix,\n revision: currentRevision\n };\n snapshotRef.current = newSnapshot;\n return newSnapshot;\n }, [i18n, namespaces, keyPrefix, i18nOptions, props.lng]);\n const [loadCount, setLoadCount] = useState(0);\n const {\n t,\n ready\n } = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);\n useEffect(() => {\n if (i18n && !ready && !useSuspense) {\n const onLoaded = () => setLoadCount(c => c + 1);\n if (props.lng) {\n loadLanguages(i18n, props.lng, namespaces, onLoaded);\n } else {\n loadNamespaces(i18n, namespaces, onLoaded);\n }\n }\n }, [i18n, props.lng, namespaces, ready, useSuspense, loadCount]);\n const finalI18n = i18n || {};\n const wrapperRef = useRef(null);\n const wrapperLangRef = useRef();\n const createI18nWrapper = original => {\n const descriptors = Object.getOwnPropertyDescriptors(original);\n if (descriptors.__original) delete descriptors.__original;\n const wrapper = Object.create(Object.getPrototypeOf(original), descriptors);\n if (!Object.prototype.hasOwnProperty.call(wrapper, '__original')) {\n try {\n Object.defineProperty(wrapper, '__original', {\n value: original,\n writable: false,\n enumerable: false,\n configurable: false\n });\n } catch (_) {}\n }\n return wrapper;\n };\n const ret = useMemo(() => {\n const original = finalI18n;\n const lang = original?.language;\n let i18nWrapper = original;\n if (original) {\n if (wrapperRef.current && wrapperRef.current.__original === original) {\n if (wrapperLangRef.current !== lang) {\n i18nWrapper = createI18nWrapper(original);\n wrapperRef.current = i18nWrapper;\n wrapperLangRef.current = lang;\n } else {\n i18nWrapper = wrapperRef.current;\n }\n } else {\n i18nWrapper = createI18nWrapper(original);\n wrapperRef.current = i18nWrapper;\n wrapperLangRef.current = lang;\n }\n }\n const effectiveT = !ready && !useSuspense ? (...args) => {\n warnOnce(i18n, 'USE_T_BEFORE_READY', 'useTranslation: t was called before ready. When using useSuspense: false, make sure to check the ready flag before using t.');\n return t(...args);\n } : t;\n const arr = [effectiveT, i18nWrapper, ready];\n arr.t = effectiveT;\n arr.i18n = i18nWrapper;\n arr.ready = ready;\n return arr;\n }, [t, finalI18n, ready, finalI18n.resolvedLanguage, finalI18n.language, finalI18n.languages]);\n if (i18n && useSuspense && !ready) {\n throw new Promise(resolve => {\n const onLoaded = () => resolve();\n if (props.lng) {\n loadLanguages(i18n, props.lng, namespaces, onLoaded);\n } else {\n loadNamespaces(i18n, namespaces, onLoaded);\n }\n });\n }\n return ret;\n};","/**\n * API 에러 클래스\n *\n * HTTP 요청 실패 시 발생하는 표준화된 에러입니다.\n * 에러 코드, HTTP 상태 코드, 메시지를 포함합니다.\n *\n * @example\n * ```typescript\n * try {\n * await etch('/api/endpoint');\n * } catch (error) {\n * if (error instanceof IssuaryError) {\n * if (error.code === 'INVALID_CREDENTIALS') {\n * // 인증 오류 처리\n * }\n * console.log(error.status); // HTTP 상태 코드\n * console.log(error.message); // 에러 메시지\n * }\n * }\n * ```\n */\nexport class IssuaryError extends Error {\n /** 에러 코드 (서버에서 정의한 코드) */\n readonly code: string;\n /** HTTP 상태 코드 */\n readonly status: number;\n\n constructor(code: string, status: number, message: string) {\n super(message);\n this.name = 'IssuaryError';\n this.code = code;\n this.status = status;\n }\n\n /**\n * Response 객체로부터 IssuaryError 생성\n *\n * @param res - fetch Response 객체\n * @returns IssuaryError 인스턴스\n */\n static async fromResponse(res: Response): Promise<IssuaryError> {\n let code = 'UNKNOWN_ERROR';\n let message = res.statusText || 'An unknown error occurred';\n\n try {\n const data = await res.json();\n if (data.code) {\n code = data.code;\n }\n if (data.message) {\n message = data.message;\n }\n } catch {\n // JSON 파싱 실패 시 기본값 사용\n }\n\n return new IssuaryError(code, res.status, message);\n }\n}\n","import { mergeClassNames } from \"../../internal/component-class-name.js\";\nimport { createElement } from \"react\";\n//#region src/components/text/text.tsx\nfunction TRText(props) {\n\tconst { as, variant = \"body\", color, align, truncate, weight, className, ...rest } = props;\n\treturn createElement(as ?? \"span\", {\n\t\t...rest,\n\t\tclassName: mergeClassNames(\"tr-text\", className),\n\t\t\"data-variant\": variant,\n\t\t\"data-color\": color,\n\t\t\"data-align\": align,\n\t\t\"data-truncate\": truncate ? \"true\" : void 0,\n\t\t\"data-weight\": weight\n\t});\n}\n//#endregion\nexport { TRText };\n\n//# sourceMappingURL=text.js.map","/**\n * @license lucide-react v1.25.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst mergeClasses = (...classes) => classes.filter((className, index, array) => {\n return Boolean(className) && className.trim() !== \"\" && array.indexOf(className) === index;\n}).join(\" \").trim();\n\nexport { mergeClasses };\n//# sourceMappingURL=mergeClasses.mjs.map\n","/**\n * @license lucide-react v1.25.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, \"$1-$2\").toLowerCase();\n\nexport { toKebabCase };\n//# sourceMappingURL=toKebabCase.mjs.map\n","/**\n * @license lucide-react v1.25.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst toCamelCase = (string) => string.replace(\n /^([A-Z])|[\\s-_]+(\\w)/g,\n (match, p1, p2) => p2 ? p2.toUpperCase() : p1.toLowerCase()\n);\n\nexport { toCamelCase };\n//# sourceMappingURL=toCamelCase.mjs.map\n","/**\n * @license lucide-react v1.25.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { toCamelCase } from './toCamelCase.mjs';\n\nconst toPascalCase = (string) => {\n const camelCase = toCamelCase(string);\n return camelCase.charAt(0).toUpperCase() + camelCase.slice(1);\n};\n\nexport { toPascalCase };\n//# sourceMappingURL=toPascalCase.mjs.map\n","/**\n * @license lucide-react v1.25.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nvar defaultAttributes = {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n};\n\nexport { defaultAttributes as default };\n//# sourceMappingURL=defaultAttributes.mjs.map\n","/**\n * @license lucide-react v1.25.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst hasA11yProp = (props) => {\n for (const prop in props) {\n if (prop.startsWith(\"aria-\") || prop === \"role\" || prop === \"title\") {\n return true;\n }\n }\n return false;\n};\n\nexport { hasA11yProp };\n//# sourceMappingURL=hasA11yProp.mjs.map\n","\"use strict\";\n\"use client\";\n/**\n * @license lucide-react v1.25.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { createContext, useContext, useMemo, createElement } from 'react';\n\nconst LucideContext = createContext({});\nfunction LucideProvider({\n children,\n size,\n color,\n strokeWidth,\n absoluteStrokeWidth,\n className\n}) {\n const value = useMemo(\n () => ({\n size,\n color,\n strokeWidth,\n absoluteStrokeWidth,\n className\n }),\n [size, color, strokeWidth, absoluteStrokeWidth, className]\n );\n return createElement(LucideContext.Provider, { value }, children);\n}\nconst useLucideContext = () => useContext(LucideContext);\n\nexport { LucideProvider, useLucideContext };\n//# sourceMappingURL=context.mjs.map\n","\"use strict\";\n\"use client\";\n/**\n * @license lucide-react v1.25.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport defaultAttributes from './defaultAttributes.mjs';\nimport { hasA11yProp } from './shared/src/utils/hasA11yProp.mjs';\nimport { mergeClasses } from './shared/src/utils/mergeClasses.mjs';\nimport { useLucideContext } from './context.mjs';\n\nconst Icon = forwardRef(\n ({ color, size, strokeWidth, absoluteStrokeWidth, className = \"\", children, iconNode, ...rest }, ref) => {\n const {\n size: contextSize = 24,\n strokeWidth: contextStrokeWidth = 2,\n absoluteStrokeWidth: contextAbsoluteStrokeWidth = false,\n color: contextColor = \"currentColor\",\n className: contextClass = \"\"\n } = useLucideContext() ?? {};\n const calculatedStrokeWidth = absoluteStrokeWidth ?? contextAbsoluteStrokeWidth ? Number(strokeWidth ?? contextStrokeWidth) * 24 / Number(size ?? contextSize) : strokeWidth ?? contextStrokeWidth;\n return createElement(\n \"svg\",\n {\n ref,\n ...defaultAttributes,\n width: size ?? contextSize ?? defaultAttributes.width,\n height: size ?? contextSize ?? defaultAttributes.height,\n stroke: color ?? contextColor,\n strokeWidth: calculatedStrokeWidth,\n className: mergeClasses(\"lucide\", contextClass, className),\n ...!children && !hasA11yProp(rest) && { \"aria-hidden\": \"true\" },\n ...rest\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...Array.isArray(children) ? children : [children]\n ]\n );\n }\n);\n\nexport { Icon as default };\n//# sourceMappingURL=Icon.mjs.map\n","/**\n * @license lucide-react v1.25.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport { mergeClasses } from './shared/src/utils/mergeClasses.mjs';\nimport { toKebabCase } from './shared/src/utils/toKebabCase.mjs';\nimport { toPascalCase } from './shared/src/utils/toPascalCase.mjs';\nimport Icon from './Icon.mjs';\n\nconst createLucideIcon = (iconName, iconNode) => {\n const Component = forwardRef(\n ({ className, ...props }, ref) => createElement(Icon, {\n ref,\n iconNode,\n className: mergeClasses(\n `lucide-${toKebabCase(toPascalCase(iconName))}`,\n `lucide-${iconName}`,\n className\n ),\n ...props\n })\n );\n Component.displayName = toPascalCase(iconName);\n return Component;\n};\n\nexport { createLucideIcon as default };\n//# sourceMappingURL=createLucideIcon.mjs.map\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,40,41,42,43,44,45,46,47,48,49],"mappings":"kqBAWA,IAAI,EAAqB,OAAO,IAAI,4BAA4B,EAC9D,EAAoB,OAAO,IAAI,cAAc,EAC7C,EAAsB,OAAO,IAAI,gBAAgB,EACjD,EAAyB,OAAO,IAAI,mBAAmB,EACvD,EAAsB,OAAO,IAAI,gBAAgB,EACjD,EAAsB,OAAO,IAAI,gBAAgB,EACjD,EAAqB,OAAO,IAAI,eAAe,EAC/C,EAAyB,OAAO,IAAI,mBAAmB,EACvD,EAAsB,OAAO,IAAI,gBAAgB,EACjD,EAAkB,OAAO,IAAI,YAAY,EACzC,EAAkB,OAAO,IAAI,YAAY,EACzC,EAAsB,OAAO,IAAI,gBAAgB,EACjD,EAAwB,OAAO,SACjC,SAAS,EAAc,EAAe,CAKpC,OAJ2C,OAAO,GAApB,WAAjB,EAA2D,MACxE,EACG,GAAyB,EAAc,IACxC,EAAc,cACM,OAAO,GAAtB,WAAsC,EAAgB,KAC/D,CACA,IAAI,EAAuB,CACvB,UAAW,UAAY,CACrB,MAAO,CAAC,CACV,EACA,mBAAoB,UAAY,CAAC,EACjC,oBAAqB,UAAY,CAAC,EAClC,gBAAiB,UAAY,CAAC,CAChC,EACA,EAAS,OAAO,OAChB,EAAc,CAAC,EACjB,SAAS,EAAU,EAAO,EAAS,EAAS,CAC1C,KAAK,MAAQ,EACb,KAAK,QAAU,EACf,KAAK,KAAO,EACZ,KAAK,QAAU,GAAW,CAC5B,CACA,EAAU,UAAU,iBAAmB,CAAC,EACxC,EAAU,UAAU,SAAW,SAAU,EAAc,EAAU,CAC/D,GACe,OAAO,GAApB,UACe,OAAO,GAAtB,YACQ,GAAR,KAEA,MAAM,MACJ,wGACF,EACF,KAAK,QAAQ,gBAAgB,KAAM,EAAc,EAAU,UAAU,CACvE,EACA,EAAU,UAAU,YAAc,SAAU,EAAU,CACpD,KAAK,QAAQ,mBAAmB,KAAM,EAAU,aAAa,CAC/D,EACA,SAAS,GAAiB,CAAC,CAC3B,EAAe,UAAY,EAAU,UACrC,SAAS,EAAc,EAAO,EAAS,EAAS,CAC9C,KAAK,MAAQ,EACb,KAAK,QAAU,EACf,KAAK,KAAO,EACZ,KAAK,QAAU,GAAW,CAC5B,CACA,IAAI,EAA0B,EAAc,UAAY,IAAI,EAC5D,EAAuB,YAAc,EACrC,EAAO,EAAwB,EAAU,SAAS,EAClD,EAAuB,qBAAuB,CAAC,EAC/C,IAAI,EAAc,MAAM,QACxB,SAAS,GAAO,CAAC,CACjB,IAAI,EAAuB,CAAE,EAAG,KAAM,EAAG,KAAM,EAAG,KAAM,EAAG,IAAK,EAC9D,EAAiB,OAAO,UAAU,eACpC,SAAS,EAAa,EAAM,EAAK,EAAO,CACtC,IAAI,EAAU,EAAM,IACpB,MAAO,CACL,SAAU,EACJ,OACD,MACL,IAAgB,IAAX,IAAK,GAA0B,KAAV,EACnB,OACT,CACF,CACA,SAAS,EAAmB,EAAY,EAAQ,CAC9C,OAAO,EAAa,EAAW,KAAM,EAAQ,EAAW,KAAK,CAC/D,CACA,SAAS,EAAe,EAAQ,CAC9B,OACe,OAAO,GAApB,YACS,GACT,EAAO,WAAa,CAExB,CACA,SAAS,EAAO,EAAK,CACnB,IAAI,EAAgB,CAAE,IAAK,KAAM,IAAK,IAAK,EAC3C,MACE,IACA,EAAI,QAAQ,QAAS,SAAU,EAAO,CACpC,OAAO,EAAc,EACvB,CAAC,CAEL,CACA,IAAI,EAA6B,OACjC,SAAS,EAAc,EAAS,EAAO,CACrC,OAAoB,OAAO,GAApB,UAAwC,GAAmB,EAAQ,KAAhB,KACtD,EAAO,GAAK,EAAQ,GAAG,EACvB,EAAM,SAAS,EAAE,CACvB,CACA,SAAS,GAAgB,EAAU,CACjC,OAAQ,EAAS,OAAjB,CACE,IAAK,YACH,OAAO,EAAS,MAClB,IAAK,WACH,MAAM,EAAS,OACjB,QACE,OACgB,OAAO,EAAS,QAA7B,SACG,EAAS,KAAK,EAAM,CAAI,GACtB,EAAS,OAAS,UACpB,EAAS,KACP,SAAU,EAAgB,CACV,EAAS,SAAvB,YACI,EAAS,OAAS,YACnB,EAAS,MAAQ,EACtB,EACA,SAAU,EAAO,CACD,EAAS,SAAvB,YACI,EAAS,OAAS,WAAc,EAAS,OAAS,EACxD,CACF,GACJ,EAAS,OAfX,CAiBE,IAAK,YACH,OAAO,EAAS,MAClB,IAAK,WACH,MAAM,EAAS,MACnB,CACJ,CACA,MAAM,CACR,CACA,SAAS,EAAa,EAAU,EAAO,EAAe,EAAW,EAAU,CACzE,IAAI,EAAO,OAAO,GACE,IAAhB,aAAsC,IAAd,aAAoB,EAAW,MAC3D,IAAI,EAAiB,CAAC,EACtB,GAAa,IAAT,KAAmB,EAAiB,CAAC,OAEvC,OAAQ,EAAR,CACE,IAAK,SACL,IAAK,SACL,IAAK,SACH,EAAiB,CAAC,EAClB,MACF,IAAK,SACH,OAAQ,EAAS,SAAjB,CACE,KAAK,EACL,KAAK,EACH,EAAiB,CAAC,EAClB,MACF,KAAK,EACH,MACG,GAAiB,EAAS,MAC3B,EACE,EAAe,EAAS,QAAQ,EAChC,EACA,EACA,EACA,CACF,CAEN,CACJ,CACF,GAAI,EACF,MACG,GAAW,EAAS,CAAQ,EAC5B,EACQ,IAAP,GAAmB,IAAM,EAAc,EAAU,CAAC,EAAI,EACxD,EAAY,CAAQ,GACd,EAAgB,GACV,GAAR,OACG,EACC,EAAe,QAAQ,EAA4B,KAAK,EAAI,KAChE,EAAa,EAAU,EAAO,EAAe,GAAI,SAAU,EAAG,CAC5D,OAAO,CACT,CAAC,GACO,GAAR,OACC,EAAe,CAAQ,IACrB,EAAW,EACV,EACA,GACW,EAAS,KAAjB,MACA,GAAY,EAAS,MAAQ,EAAS,IACnC,IACC,GAAK,EAAS,IAAA,CAAK,QAClB,EACA,KACF,EAAI,KACR,CACJ,GACF,EAAM,KAAK,CAAQ,GACvB,EAEJ,EAAiB,EACjB,IAAI,EAAwB,IAAP,GAAmB,IAAM,EAAY,IAC1D,GAAI,EAAY,CAAQ,EACtB,IAAK,IAAI,EAAI,EAAG,EAAI,EAAS,OAAQ,IACnC,EAAa,EAAS,GACnB,EAAO,EAAiB,EAAc,EAAW,CAAC,EAClD,GAAkB,EACjB,EACA,EACA,EACA,EACA,CACF,OACD,GAAM,EAAI,EAAc,CAAQ,EAAmB,OAAO,GAAtB,WACvC,IACE,EAAW,EAAE,KAAK,CAAQ,EAAG,EAAI,EACjC,EAAE,EAAY,EAAS,KAAK,EAAA,CAAG,MAG/B,EAAa,EAAU,MACpB,EAAO,EAAiB,EAAc,EAAW,GAAG,EACpD,GAAkB,EACjB,EACA,EACA,EACA,EACA,CACF,OACD,GAAiB,IAAb,SAAmB,CAC1B,GAAmB,OAAO,EAAS,MAA/B,WACF,OAAO,EACL,GAAgB,CAAQ,EACxB,EACA,EACA,EACA,CACF,EAEF,KADA,GAAQ,OAAO,CAAQ,EACjB,MACJ,mDACyB,IAAtB,kBACG,qBAAuB,OAAO,KAAK,CAAQ,CAAC,CAAC,KAAK,IAAI,EAAI,IAC1D,GACJ,2EACJ,CACF,CACA,OAAO,CACT,CACA,SAAS,EAAY,EAAU,EAAM,EAAS,CAC5C,GAAY,GAAR,KAAkB,OAAO,EAC7B,IAAI,EAAS,CAAC,EACZ,EAAQ,EAIV,OAHA,EAAa,EAAU,EAAQ,GAAI,GAAI,SAAU,EAAO,CACtD,OAAO,EAAK,KAAK,EAAS,EAAO,GAAO,CAC1C,CAAC,EACM,CACT,CACA,SAAS,GAAgB,EAAS,CAChC,GAAW,EAAQ,UAAf,GAAwB,CAC1B,IAAI,EAAO,EAAQ,QACnB,EAAO,EAAK,EACZ,EAAK,KACH,SAAU,EAAc,EACZ,EAAQ,UAAd,GAAgC,EAAQ,UAAf,MAC3B,EAAS,QAAU,EAAK,EAAQ,QAAU,EAC9C,EACA,SAAU,EAAO,EACL,EAAQ,UAAd,GAAgC,EAAQ,UAAf,MAC3B,EAAS,QAAU,EAAK,EAAQ,QAAU,EAC9C,CACF,EACO,EAAQ,UAAf,KAA4B,EAAQ,QAAU,EAAK,EAAQ,QAAU,EACvE,CACA,GAAU,EAAQ,UAAd,EAAuB,OAAO,EAAQ,QAAQ,QAClD,MAAM,EAAQ,OAChB,CACA,IAAI,EACe,OAAO,aAAtB,WACI,YACA,SAAU,EAAO,CACf,GACe,OAAO,QAApB,UACe,OAAO,OAAO,YAA7B,WACA,CACA,IAAI,EAAQ,IAAI,OAAO,WAAW,QAAS,CACzC,QAAS,CAAC,EACV,WAAY,CAAC,EACb,QACe,OAAO,GAApB,UACS,GACI,OAAO,EAAM,SAA1B,SACI,OAAO,EAAM,OAAO,EACpB,OAAO,CAAK,EACX,OACT,CAAC,EACD,GAAI,CAAC,OAAO,cAAc,CAAK,EAAG,MACpC,MAAO,GACQ,OAAO,SAApB,UACe,OAAO,QAAQ,MAA9B,WACA,CACA,QAAQ,KAAK,oBAAqB,CAAK,EACvC,MACF,CACA,QAAQ,MAAM,CAAK,CACrB,EACN,GAAW,CACT,IAAK,EACL,QAAS,SAAU,EAAU,EAAa,EAAgB,CACxD,EACE,EACA,UAAY,CACV,EAAY,MAAM,KAAM,SAAS,CACnC,EACA,CACF,CACF,EACA,MAAO,SAAU,EAAU,CACzB,IAAI,EAAI,EAIR,OAHA,EAAY,EAAU,UAAY,CAChC,GACF,CAAC,EACM,CACT,EACA,QAAS,SAAU,EAAU,CAC3B,OACE,EAAY,EAAU,SAAU,EAAO,CACrC,OAAO,CACT,CAAC,GAAK,CAAC,CAEX,EACA,KAAM,SAAU,EAAU,CACxB,GAAI,CAAC,EAAe,CAAQ,EAC1B,MAAM,MACJ,uEACF,EACF,OAAO,CACT,CACF,EACF,EAAQ,SAAW,EACnB,EAAQ,SAAW,GACnB,EAAQ,UAAY,EACpB,EAAQ,SAAW,EACnB,EAAQ,SAAW,EACnB,EAAQ,cAAgB,EACxB,EAAQ,WAAa,EACrB,EAAQ,SAAW,EACnB,EAAQ,gEACN,EACF,EAAQ,mBAAqB,CAC3B,UAAW,KACX,EAAG,SAAU,EAAM,CACjB,OAAO,EAAqB,EAAE,aAAa,CAAI,CACjD,CACF,EACA,EAAQ,MAAQ,SAAU,EAAI,CAC5B,OAAO,UAAY,CACjB,OAAO,EAAG,MAAM,KAAM,SAAS,CACjC,CACF,EACA,EAAQ,YAAc,UAAY,CAChC,OAAO,IACT,EACA,EAAQ,aAAe,SAAU,EAAS,EAAQ,EAAU,CAC1D,GAAa,GAAT,KACF,MAAM,MACJ,wDAA0D,EAAU,GACtE,EACF,IAAI,EAAQ,EAAO,CAAC,EAAG,EAAQ,KAAK,EAClC,EAAM,EAAQ,IAChB,GAAY,GAAR,KACF,IAAK,KAAwB,EAAO,MAAlB,IAAK,KAAqB,EAAM,GAAK,EAAO,KAAM,EAClE,CAAC,EAAe,KAAK,EAAQ,CAAQ,GACzB,IAAV,OACa,IAAb,UACe,IAAf,YACW,IAAV,OAAiC,EAAO,MAAlB,IAAK,KAC3B,EAAM,GAAY,EAAO,IAChC,IAAI,EAAW,UAAU,OAAS,EAClC,GAAU,IAAN,EAAgB,EAAM,SAAW,OAChC,GAAI,EAAI,EAAU,CACrB,IAAK,IAAI,EAAa,MAAM,CAAQ,EAAG,EAAI,EAAG,EAAI,EAAU,IAC1D,EAAW,GAAK,UAAU,EAAI,GAChC,EAAM,SAAW,CACnB,CACA,OAAO,EAAa,EAAQ,KAAM,EAAK,CAAK,CAC9C,EACA,EAAQ,cAAgB,SAAU,EAAc,CAc9C,MAbA,GAAe,CACb,SAAU,EACV,cAAe,EACf,eAAgB,EAChB,aAAc,EACd,SAAU,KACV,SAAU,IACZ,EACA,EAAa,SAAW,EACxB,EAAa,SAAW,CACtB,SAAU,EACV,SAAU,CACZ,EACO,CACT,EACA,EAAQ,cAAgB,SAAU,EAAM,EAAQ,EAAU,CACxD,IAAI,EACF,EAAQ,CAAC,EACT,EAAM,KACR,GAAY,GAAR,KACF,IAAK,KAAwB,EAAO,MAAlB,IAAK,KAAqB,EAAM,GAAK,EAAO,KAAM,EAClE,EAAe,KAAK,EAAQ,CAAQ,GACxB,IAAV,OACa,IAAb,UACe,IAAf,aACC,EAAM,GAAY,EAAO,IAChC,IAAI,EAAiB,UAAU,OAAS,EACxC,GAAU,IAAN,EAAsB,EAAM,SAAW,OACtC,GAAI,EAAI,EAAgB,CAC3B,IAAK,IAAI,EAAa,MAAM,CAAc,EAAG,EAAI,EAAG,EAAI,EAAgB,IACtE,EAAW,GAAK,UAAU,EAAI,GAChC,EAAM,SAAW,CACnB,CACA,GAAI,GAAQ,EAAK,aACf,IAAK,IAAc,GAAiB,EAAK,aAAe,EAC3C,EAAM,KAAjB,IAAK,KACF,EAAM,GAAY,EAAe,IACxC,OAAO,EAAa,EAAM,EAAK,CAAK,CACtC,EACA,EAAQ,UAAY,UAAY,CAC9B,MAAO,CAAE,QAAS,IAAK,CACzB,EACA,EAAQ,WAAa,SAAU,EAAQ,CACrC,MAAO,CAAE,SAAU,EAAgC,QAAO,CAC5D,EACA,EAAQ,eAAiB,EACzB,EAAQ,KAAO,SAAU,EAAM,CAC7B,MAAO,CACL,SAAU,EACV,SAAU,CAAE,QAAS,GAAI,QAAS,CAAK,EACvC,MAAO,EACT,CACF,EACA,EAAQ,KAAO,SAAU,EAAM,EAAS,CACtC,MAAO,CACL,SAAU,EACJ,OACN,QAAoB,IAAX,IAAK,GAAgB,KAAO,CACvC,CACF,EACA,EAAQ,gBAAkB,SAAU,EAAO,CACzC,IAAI,EAAiB,EAAqB,EACxC,EAAoB,CAAC,EACvB,EAAqB,EAAI,EACzB,GAAI,CACF,IAAI,EAAc,EAAM,EACtB,EAA0B,EAAqB,EACxC,IAAT,MACE,EAAwB,EAAmB,CAAW,EAC3C,OAAO,GAApB,UACW,GACM,OAAO,EAAY,MAAlC,YACA,EAAY,KAAK,EAAM,CAAiB,CAC5C,OAAS,EAAO,CACd,EAAkB,CAAK,CACzB,QAAU,CACC,IAAT,MACW,EAAkB,QAA3B,OACC,EAAe,MAAQ,EAAkB,OACzC,EAAqB,EAAI,CAC9B,CACF,EACA,EAAQ,yBAA2B,UAAY,CAC7C,OAAO,EAAqB,EAAE,gBAAgB,CAChD,EACA,EAAQ,IAAM,SAAU,EAAQ,CAC9B,OAAO,EAAqB,EAAE,IAAI,CAAM,CAC1C,EACA,EAAQ,eAAiB,SAAU,EAAQ,EAAc,EAAW,CAClE,OAAO,EAAqB,EAAE,eAAe,EAAQ,EAAc,CAAS,CAC9E,EACA,EAAQ,YAAc,SAAU,EAAU,EAAM,CAC9C,OAAO,EAAqB,EAAE,YAAY,EAAU,CAAI,CAC1D,EACA,EAAQ,WAAa,SAAU,EAAS,CACtC,OAAO,EAAqB,EAAE,WAAW,CAAO,CAClD,EACA,EAAQ,cAAgB,UAAY,CAAC,EACrC,EAAQ,iBAAmB,SAAU,EAAO,EAAc,CACxD,OAAO,EAAqB,EAAE,iBAAiB,EAAO,CAAY,CACpE,EACA,EAAQ,UAAY,SAAU,EAAQ,EAAM,CAC1C,OAAO,EAAqB,EAAE,UAAU,EAAQ,CAAI,CACtD,EACA,EAAQ,eAAiB,SAAU,EAAU,CAC3C,OAAO,EAAqB,EAAE,eAAe,CAAQ,CACvD,EACA,EAAQ,MAAQ,UAAY,CAC1B,OAAO,EAAqB,EAAE,MAAM,CACtC,EACA,EAAQ,oBAAsB,SAAU,EAAK,EAAQ,EAAM,CACzD,OAAO,EAAqB,EAAE,oBAAoB,EAAK,EAAQ,CAAI,CACrE,EACA,EAAQ,mBAAqB,SAAU,EAAQ,EAAM,CACnD,OAAO,EAAqB,EAAE,mBAAmB,EAAQ,CAAI,CAC/D,EACA,EAAQ,gBAAkB,SAAU,EAAQ,EAAM,CAChD,OAAO,EAAqB,EAAE,gBAAgB,EAAQ,CAAI,CAC5D,EACA,EAAQ,QAAU,SAAU,EAAQ,EAAM,CACxC,OAAO,EAAqB,EAAE,QAAQ,EAAQ,CAAI,CACpD,EACA,EAAQ,cAAgB,SAAU,EAAa,EAAS,CACtD,OAAO,EAAqB,EAAE,cAAc,EAAa,CAAO,CAClE,EACA,EAAQ,WAAa,SAAU,EAAS,EAAY,EAAM,CACxD,OAAO,EAAqB,EAAE,WAAW,EAAS,EAAY,CAAI,CACpE,EACA,EAAQ,OAAS,SAAU,EAAc,CACvC,OAAO,EAAqB,EAAE,OAAO,CAAY,CACnD,EACA,EAAQ,SAAW,SAAU,EAAc,CACzC,OAAO,EAAqB,EAAE,SAAS,CAAY,CACrD,EACA,EAAQ,qBAAuB,SAC7B,EACA,EACA,EACA,CACA,OAAO,EAAqB,EAAE,qBAC5B,EACA,EACA,CACF,CACF,EACA,EAAQ,cAAgB,UAAY,CAClC,OAAO,EAAqB,EAAE,cAAc,CAC9C,EACA,EAAQ,QAAU,yBC1hBhB,EAAO,QAAA,EAAA,cCQT,IAAI,EAAqB,OAAO,IAAI,4BAA4B,EAC9D,EAAsB,OAAO,IAAI,gBAAgB,EACnD,SAAS,EAAQ,EAAM,EAAQ,EAAU,CACvC,IAAI,EAAM,KAGV,GAFW,IAAX,IAAK,KAAmB,EAAM,GAAK,GACxB,EAAO,MAAlB,IAAK,KAAqB,EAAM,GAAK,EAAO,KACxC,QAAS,EAEX,IAAK,IAAI,IADT,GAAW,CAAC,EACS,EACT,IAAV,QAAuB,EAAS,GAAY,EAAO,QAChD,GAAW,EAElB,MADA,GAAS,EAAS,IACX,CACL,SAAU,EACJ,OACD,MACL,IAAgB,IAAX,IAAK,GAAwB,KAAT,EACzB,MAAO,CACT,CACF,CACA,EAAQ,SAAW,EACnB,EAAQ,IAAM,EACd,EAAQ,KAAO,kBC9Bb,EAAO,QAAA,EAAA,cCQT,IAAI,EAAA,EAAA,EACJ,SAAS,EAAG,EAAG,EAAG,CAChB,OAAQ,IAAM,IAAY,IAAN,GAAW,EAAI,GAAM,EAAI,IAAQ,IAAM,GAAK,IAAM,CACxE,CACA,IAAI,EAA0B,OAAO,OAAO,IAA7B,WAAkC,OAAO,GAAK,EAC3D,EAAW,EAAM,SACjB,EAAY,EAAM,UAClB,EAAkB,EAAM,gBACxB,EAAgB,EAAM,cACxB,SAAS,EAAuB,EAAW,EAAa,CACtD,IAAI,EAAQ,EAAY,EACtB,EAAY,EAAS,CAAE,KAAM,CAAS,QAAoB,aAAY,CAAE,CAAC,EACzE,EAAO,EAAU,EAAE,CAAC,KACpB,EAAc,EAAU,GAmB1B,OAlBA,EACE,UAAY,CACV,EAAK,MAAQ,EACb,EAAK,YAAc,EACnB,EAAuB,CAAI,GAAK,EAAY,CAAQ,MAAK,CAAC,CAC5D,EACA,CAAC,EAAW,EAAO,CAAW,CAChC,EACA,EACE,UAAY,CAEV,OADA,EAAuB,CAAI,GAAK,EAAY,CAAQ,MAAK,CAAC,EACnD,EAAU,UAAY,CAC3B,EAAuB,CAAI,GAAK,EAAY,CAAQ,MAAK,CAAC,CAC5D,CAAC,CACH,EACA,CAAC,CAAS,CACZ,EACA,EAAc,CAAK,EACZ,CACT,CACA,SAAS,EAAuB,EAAM,CACpC,IAAI,EAAoB,EAAK,YAC7B,EAAO,EAAK,MACZ,GAAI,CACF,IAAI,EAAY,EAAkB,EAClC,MAAO,CAAC,EAAS,EAAM,CAAS,CAClC,MAAgB,CACd,MAAO,CAAC,CACV,CACF,CACA,SAAS,EAAuB,EAAW,EAAa,CACtD,OAAO,EAAY,CACrB,CACA,IAAI,EACc,OAAO,OAAvB,KACuB,OAAO,WAA9B,QACuB,OAAO,SAAS,gBAAvC,OACI,EACA,EACN,EAAQ,qBACK,EAAM,uBAAjB,IAAK,GAAgE,EAA7B,EAAM,qCC9D9C,EAAO,QAAA,EAAA,gBCFT,SAAA,EAAA,GAAA,EAAA,mCAEA,CACA,SAAA,EAAA,EAAA,EAAA,gDAGA,WCJA,SAAS,EAAU,CAAE,YAAW,aAAa,GAAO,QAAQ,UAAW,SAAS,KAAM,UAAU,UAAW,GAAG,GAAS,CACtH,IAAM,EAAkB,EAAM,KAAK,IAAM,GAAK,UAAY,EACpD,EAAe,CACpB,GAAG,EACH,UAAWC,EAAgB,aAAc,CAAS,EAClD,eAAgB,EAChB,eAAgB,CACjB,EAKA,OAJI,GAAmC,EAAA,EAAA,IAAA,CAAI,OAAQ,CAClD,GAAG,EACH,cAAe,MAChB,CAAC,GACsB,EAAA,EAAA,IAAA,CAAI,OAAQ,CAClC,GAAG,EACH,aAAc,EACd,KAAM,QACP,CAAC,CACF,CCpBA,SAAS,GAAY,CACnB,OAAO,OAAO,OAAW,GAC3B,CACA,SAAS,EAAY,EAAM,CAOzB,OANI,EAAO,CAAI,GACL,EAAK,UAAY,GAAA,CAAI,YAAY,EAKpC,WACT,CACA,SAAS,EAAU,EAAM,CACvB,IAAI,EACJ,OAAQ,GAAQ,OAAS,EAAsB,EAAK,gBAAkB,KAAO,IAAK,GAAI,EAAoB,cAAgB,MAC5H,CACA,SAAS,EAAmB,EAAM,CAEhC,QAAgB,EAAO,CAAI,EAAI,EAAK,cAAgB,EAAK,WAAa,OAAO,SAAA,EAAkC,eACjH,CACA,SAAS,EAAO,EAAO,CAIrB,OAHK,EAAU,EAGR,aAAiB,MAAQ,aAAiB,EAAU,CAAK,CAAC,CAAC,KAFzD,EAGX,CACA,SAAS,EAAU,EAAO,CAIxB,OAHK,EAAU,EAGR,aAAiB,SAAW,aAAiB,EAAU,CAAK,CAAC,CAAC,QAF5D,EAGX,CACA,SAAS,EAAc,EAAO,CAI5B,OAHK,EAAU,EAGR,aAAiB,aAAe,aAAiB,EAAU,CAAK,CAAC,CAAC,YAFhE,EAGX,CACA,SAAS,EAAa,EAAO,CAI3B,MAHI,CAAC,EAAU,GAAK,OAAO,WAAe,IACjC,GAEF,aAAiB,YAAc,aAAiB,EAAU,CAAK,CAAC,CAAC,UAC1E,CACA,SAAS,EAAkB,EAAS,CAClC,GAAM,CACJ,WACA,YACA,YACA,WACE,EAAiB,CAAO,EAC5B,MAAO,kCAAkC,KAAK,EAAW,EAAY,CAAS,GAAK,IAAY,UAAY,IAAY,UACzH,CACA,SAAS,EAAe,EAAS,CAC/B,MAAO,kBAAkB,KAAK,EAAY,CAAO,CAAC,CACpD,CACA,SAAS,EAAW,EAAS,CAC3B,GAAI,CACF,GAAI,EAAQ,QAAQ,eAAe,EACjC,MAAO,EAEX,MAAa,CAEb,CACA,GAAI,CACF,OAAO,EAAQ,QAAQ,QAAQ,CACjC,MAAa,CACX,MAAO,EACT,CACF,CACA,IAAM,GAAe,sDACf,EAAY,8BACZ,EAAY,GAAS,CAAC,CAAC,GAAS,IAAU,OAC5C,GACJ,SAAS,EAAkB,EAAc,CACvC,IAAM,EAAM,EAAU,CAAY,EAAI,EAAiB,CAAY,EAAI,EAIvE,OAAO,EAAU,EAAI,SAAS,GAAK,EAAU,EAAI,SAAS,GAAK,EAAU,EAAI,KAAK,GAAK,EAAU,EAAI,MAAM,GAAK,EAAU,EAAI,WAAW,GAAK,CAAC,GAAS,IAAM,EAAU,EAAI,cAAc,GAAK,EAAU,EAAI,MAAM,IAAM,GAAa,KAAK,EAAI,YAAc,EAAE,GAAK,EAAU,KAAK,EAAI,SAAW,EAAE,CACtS,CACA,SAAS,GAAmB,EAAS,CACnC,IAAI,EAAc,EAAc,CAAO,EACvC,KAAO,EAAc,CAAW,GAAK,CAAC,GAAsB,CAAW,GAAG,CACxE,GAAI,EAAkB,CAAW,EAC/B,OAAO,EACF,GAAI,EAAW,CAAW,EAC/B,OAAO,KAET,EAAc,EAAc,CAAW,CACzC,CACA,OAAO,IACT,CACA,SAAS,IAAW,CAIlB,MAHA,CACE,KAAgB,OAAO,IAAQ,KAAe,IAAI,UAAY,IAAI,SAAS,0BAA2B,MAAM,EAEvG,EACT,CACA,SAAS,GAAsB,EAAM,CACnC,MAAO,0BAA0B,KAAK,EAAY,CAAI,CAAC,CACzD,CACA,SAAS,EAAiB,EAAS,CACjC,OAAO,EAAU,CAAO,CAAC,CAAC,iBAAiB,CAAO,CACpD,CACA,SAAS,GAAc,EAAS,CAO9B,OANI,EAAU,CAAO,EACZ,CACL,WAAY,EAAQ,WACpB,UAAW,EAAQ,SACrB,EAEK,CACL,WAAY,EAAQ,QACpB,UAAW,EAAQ,OACrB,CACF,CACA,SAAS,EAAc,EAAM,CAC3B,GAAI,EAAY,CAAI,IAAM,OACxB,OAAO,EAET,IAAM,EAEN,EAAK,cAEL,EAAK,YAEL,EAAa,CAAI,GAAK,EAAK,MAE3B,EAAmB,CAAI,EACvB,OAAO,EAAa,CAAM,EAAI,EAAO,KAAO,CAC9C,CACA,SAAS,GAA2B,EAAM,CACxC,IAAM,EAAa,EAAc,CAAI,EAOrC,OANI,GAAsB,CAAU,GAC1B,EAAK,eAAiB,EAAA,CAAM,KAElC,EAAc,CAAU,GAAK,EAAkB,CAAU,EACpD,EAEF,GAA2B,CAAU,CAC9C,CACA,SAAS,EAAqB,EAAM,EAAM,EAAiB,CAErD,IAAS,IAAK,KAChB,EAAO,CAAC,GAEN,IAAoB,IAAK,KAC3B,EAAkB,IAEpB,IAAM,EAAqB,GAA2B,CAAI,EACpD,EAAS,IAAgD,EAAK,eAAuD,KACrH,EAAM,EAAU,CAAkB,EACxC,GAAI,EAAQ,CACV,IAAM,EAAe,GAAgB,CAAG,EACxC,OAAO,EAAK,OAAO,EAAK,EAAI,gBAAkB,CAAC,EAAG,EAAkB,CAAkB,EAAI,EAAqB,CAAC,EAAG,GAAgB,EAAkB,EAAqB,CAAY,EAAI,CAAC,CAAC,CAC9L,MACE,OAAO,EAAK,OAAO,EAAoB,EAAqB,EAAoB,CAAC,EAAG,CAAe,CAAC,CAExG,CACA,SAAS,GAAgB,EAAK,CAC5B,OAAO,EAAI,QAAU,OAAO,eAAe,EAAI,MAAM,EAAI,EAAI,aAAe,IAC9E,CCxJA,IAAa,EAAY,CACvB,GAAGC,CACL,ECTM,GAAgB,CAAC,EAUvB,SAAgB,EAAe,EAAM,EAAS,CAC5C,IAAM,EAAA,EAAY,OAAO,EAAa,EAItC,OAHI,EAAI,UAAY,KAClB,EAAI,QAAU,EAAK,CAAO,GAErB,CACT,CCfA,IAAM,EAAqB,EAAU,mBAC/B,GAEN,GAEA,IAAuB,EAAU,gBAAkB,EAAqB,GAAM,EAAG,EAWjF,SAAgB,GAAkB,EAAU,CAC1C,IAAM,EAAS,EAAe,EAAoB,CAAC,CAAC,QAGpD,MAFA,GAAO,KAAO,EACd,GAAuB,EAAO,MAAM,EAC7B,EAAO,UAChB,CACA,SAAS,IAAuB,CAC9B,IAAM,EAAS,CACb,KAAM,IAAA,GACN,SAAU,GACV,YAAa,GAAG,IAAS,EAAO,WAAW,GAAG,CAAI,EAClD,WAAc,CACZ,EAAO,SAAW,EAAO,IAC3B,CACF,EACA,OAAO,CACT,CACA,SAAS,IAAkB,CAM3B,CCvCA,IAAa,GAAqB,OAAO,SAAa,IAAA,EAAoB,oBADvD,CAAC,ECHpB,SAAgB,EAAa,EAAG,EAAG,CACjC,GAAI,GAAK,CAAC,EACR,OAAO,EAET,GAAI,CAAC,GAAK,EACR,OAAO,EAET,GAAI,GAAK,EACP,MAAO,CACL,GAAG,EACH,GAAG,CACL,CAGJ,CCbA,IAAM,EAAc,CAAC,EAiCrB,SAAgB,EAAW,EAAG,EAAG,EAAG,EAAG,EAAG,CACxC,GAAI,CAAC,GAAK,CAAC,GAAK,CAAC,GAAK,CAAC,EACrB,OAAO,EAAyB,CAAC,EAInC,IAAI,EAAS,EAAyB,CAAC,EAavC,OAZI,IACF,EAAS,EAAU,EAAQ,CAAC,GAE1B,IACF,EAAS,EAAU,EAAQ,CAAC,GAE1B,IACF,EAAS,EAAU,EAAQ,CAAC,GAE1B,IACF,EAAS,EAAU,EAAQ,CAAC,GAEvB,CACT,CAgBA,SAAgB,GAAY,EAAO,CACjC,GAAI,EAAM,SAAW,EACnB,OAAO,EAET,GAAI,EAAM,SAAW,EACnB,OAAO,EAAyB,EAAM,EAAE,EAI1C,IAAI,EAAS,EAAyB,EAAM,EAAE,EAC9C,IAAK,IAAI,EAAI,EAAG,EAAI,EAAM,OAAQ,GAAK,EACrC,EAAS,EAAU,EAAQ,EAAM,EAAE,EAErC,OAAO,CACT,CACA,SAAS,EAAyB,EAAY,CAO5C,OANI,EAAc,CAAU,EAEnB,CACL,GAAG,GAAmB,EAAY,CAAW,CAC/C,EAEK,GAAiB,CAAU,CACpC,CACA,SAAS,EAAU,EAAQ,EAAY,CAIrC,OAHI,EAAc,CAAU,EACnB,GAAmB,EAAY,CAAM,EAEvC,GAAiB,EAAQ,CAAU,CAC5C,CACA,SAAS,GAAiB,EAAY,CACpC,IAAM,EAAc,CAClB,GAAG,CACL,EAIA,IAAK,IAAM,KAAY,EAAa,CAClC,IAAM,EAAY,EAAY,GAC1B,GAAe,EAAU,CAAS,IACpC,EAAY,GAAY,GAAiB,CAAS,EAEtD,CACA,OAAO,CACT,CAKA,SAAS,GAAiB,EAAa,EAAe,CACpD,GAAI,CAAC,EACH,OAAO,EAIT,IAAK,IAAM,KAAY,EAAe,CACpC,IAAM,EAAoB,EAAc,GACxC,OAAQ,EAAR,CACE,IAAK,QAED,EAAY,GAAY,EAAa,EAAY,MAAO,CAAiB,EACzE,MAEJ,IAAK,YAED,EAAY,GAAY,GAAgB,EAAY,UAAW,CAAiB,EAChF,MAEJ,QAEQ,GAAe,EAAU,CAAiB,EAC5C,EAAY,GAAY,GAAmB,EAAY,GAAW,CAAiB,EAEnF,EAAY,GAAY,CAGhC,CACF,CACA,OAAO,CACT,CACA,SAAS,GAAe,EAAK,EAAO,CAElC,IAAM,EAAQ,EAAI,WAAW,CAAC,EACxB,EAAQ,EAAI,WAAW,CAAC,EACxB,EAAQ,EAAI,WAAW,CAAC,EAC9B,OAAO,IAAU,KAAe,IAAU,KAAe,GAAS,IAAc,GAAS,KAAe,OAAO,GAAU,YAAqB,IAAU,OAC1J,CACA,SAAS,EAAc,EAAY,CACjC,OAAO,OAAO,GAAe,UAC/B,CACA,SAAS,GAAmB,EAAY,EAAe,CAIrD,OAHI,EAAc,CAAU,EACnB,EAAW,CAAa,EAE1B,GAAc,CACvB,CACA,SAAS,GAAmB,EAAY,EAAc,CAOpD,OANK,EAGA,GAGG,GAAG,IAAS,CAClB,IAAM,EAAQ,EAAK,GACnB,GAAI,GAAiB,CAAK,EAAG,CAC3B,IAAM,EAAc,EACpB,EAAqB,CAAW,EAChC,IAAM,EAAS,EAAa,GAAG,CAAI,EAInC,OAHK,EAAY,wBACf,IAAa,GAAG,CAAI,EAEf,CACT,CACA,IAAM,EAAS,EAAa,GAAG,CAAI,EAEnC,OADA,IAAa,GAAG,CAAI,EACb,CACT,EAhBS,GAAiB,CAAY,EAH7B,CAoBX,CACA,SAAS,GAAiB,EAAS,CAIjC,OAHK,KAGG,GAAG,IAAS,CAClB,IAAM,EAAQ,EAAK,GAInB,OAHI,GAAiB,CAAK,GACxB,EAAqB,CAAK,EAErB,EAAQ,GAAG,CAAI,CACxB,EACF,CACA,SAAgB,EAAqB,EAAO,CAI1C,MAHA,GAAM,yBAA6B,CACjC,EAAM,uBAAyB,EACjC,EACO,CACT,CACA,SAAgB,GAAgB,EAAc,EAAgB,CAQ5D,OAPI,EACE,EAEK,EAAiB,IAAM,EAEzB,EAEF,CACT,CACA,SAAS,GAAiB,EAAO,CAC/B,OAAwB,OAAO,GAAU,YAAlC,GAA8C,gBAAiB,CACxE,CCrNA,SAAgB,GAAyB,EAAS,EAAQ,CACxD,OAAO,SAA4B,EAAM,GAAG,EAAM,CAChD,IAAM,EAAM,IAAI,IAAI,CAAO,EAG3B,OAFA,EAAI,aAAa,IAAI,OAAQ,EAAK,SAAS,CAAC,EAC5C,EAAK,QAAQ,GAAO,EAAI,aAAa,OAAO,SAAU,CAAG,CAAC,EACnD,GAAG,EAAO,UAAU,EAAK,UAAU,EAAI,uBAChD,CACF,CAWA,IAAM,EAAqB,GAAyB,uCAAwC,SAAS,ECpBxF,GAAoC,EAAM,cAAc,IAAA,EAAS,EAE9E,SAAgB,GAAwB,EAAW,GAAO,CACxD,IAAM,EAAA,EAAgB,WAAW,EAAoB,EACrD,GAAI,IAAY,IAAA,IAAa,CAAC,EAC5B,MAAU,MAAoJC,EAAoB,EAAE,CAAC,EAEvL,OAAO,CACT,CCTA,SAAgB,GAAyB,EAAY,CACnD,GAAM,CACJ,wBACA,WACA,YAAY,GACZ,SAAU,EAAe,EACzB,kBACE,EACE,EAAuB,GAAa,IAA0B,GAC9D,EAA0B,GAAa,IAA0B,GA2BvE,MAAO,CACL,MAAA,EAxBkB,YAAc,CAChC,IAAM,EAAkB,CAEtB,UAAU,EAAO,CACX,GAAY,GAAyB,EAAM,MAAQ,OACrD,EAAM,eAAe,CAEzB,CACF,EAaA,OAZK,IACH,EAAgB,SAAW,EACvB,CAAC,GAAkB,IACrB,EAAgB,SAAW,EAAwB,EAAe,MAGlE,IAAmB,GAAyB,IAAyB,CAAC,GAAkB,KAC1F,EAAgB,iBAAmB,GAEjC,IAAmB,CAAC,GAAyB,KAC/C,EAAgB,SAAW,GAEtB,CACT,EAAG,CAAC,EAAW,EAAU,EAAuB,EAAsB,EAAyB,EAAgB,CAAY,CAErH,CACN,CACF,CCzCA,SAAgB,GAAc,EAAM,CAClC,OAAO,GAAM,eAAiB,QAChC,CCOA,SAAgB,EAA2B,EAAQ,EAAa,CAC9D,SAAS,GACP,CAAC,EAAG,CACN,EAAO,cAAc,IAAKC,EAAY,CAAM,EAAA,CAAE,aAAc,QAAS,CACnE,QAAS,GACT,WAAY,GACZ,SAAU,GACV,SACA,SAAU,EAAY,SACtB,QAAS,EAAY,QACrB,OAAQ,EAAY,OACpB,QAAS,EAAY,OACvB,CAAC,CAAC,CACJ,CCXA,SAAgB,GAAU,EAAa,CAAC,EAAG,CACzC,GAAM,CACJ,WAAW,GACX,wBACA,WAAW,EACX,OAAQ,EAAiB,GACzB,UAAW,GACT,EACE,EAAA,EAAmB,OAAO,IAAI,EAC9B,EAAuB,GAAwB,EAAI,EACnD,EAAkB,GAAiB,IAAyB,IAAA,GAC5D,CACJ,MAAO,GACL,GAAyB,CAC3B,wBACA,WACA,UAAW,EACX,WACA,gBACF,CAAC,EA0BK,EAAA,EAAuB,gBAAkB,CAC7C,IAAM,EAAU,EAAW,QACtB,EAAgB,CAAO,GAGxB,GAAmB,GAAY,EAA2B,WAAa,IAAA,IAAa,EAAQ,WAC9F,EAAQ,SAAW,GAEvB,EAAG,CAAC,EAAU,EAA2B,SAAU,CAAe,CAAC,EAyHnE,OAxHA,GAAmB,EAAgB,CAAC,CAAc,CAAC,EAwH5C,CACL,eAAA,EAxH2B,aAAa,EAAgB,CAAC,IAAM,CAC/D,GAAM,CACJ,QAAS,EACT,YAAa,EACb,QAAS,EACT,UAAW,EACX,cAAe,EACf,GAAG,GACD,EACJ,OAAO,EAAW,CAChB,QAAQ,EAAO,CACb,GAAI,EAAU,CACZ,EAAM,eAAe,EACrB,MACF,CACA,IAAkB,CAAK,CACzB,EACA,YAAY,EAAO,CACZ,GACH,IAAsB,CAAK,CAE/B,EACA,UAAU,EAAO,CAMf,GALI,IAGJ,EAAqB,CAAK,EAC1B,IAAoB,CAAK,EACrB,EAAM,wBACR,OAEF,IAAM,EAAkB,EAAM,SAAW,EAAM,cACzC,EAAgB,EAAM,cACtB,EAAW,EAAgB,CAAa,EACxC,EAAS,CAAC,GAAkB,GAAmB,CAAa,EAC5D,EAAc,IAAoB,EAAiB,EAAW,CAAC,GAC/D,EAAa,EAAM,MAAQ,QAC3B,EAAa,EAAM,MAAQ,IAC3B,EAAO,EAAc,aAAa,MAAM,EACxC,EAAuB,GAAM,WAAW,UAAU,GAAK,IAAS,UAAY,IAAS,WAC3F,GAAI,GAAmB,GAAmB,EAAY,CACpD,GAAI,EAAM,kBAAoB,EAC5B,OAEF,EAAM,eAAe,GAGjB,CAAC,GAAkB,KACrB,EAAM,qBAAqB,EAC3B,EAA2B,EAAe,CAAK,GAEjD,MACF,CAGA,GAAI,CAAC,GAAe,GAAkB,CAAC,GAAc,CAAC,EAAY,CAI5D,GAAmB,GAAU,GAC/B,EAAM,eAAe,EAEvB,MACF,CAGI,EAAM,mBAGV,EAAM,eAAe,EACjB,IACF,EAAM,qBAAqB,EAC3B,EAA2B,EAAe,CAAK,GAEnD,EACA,QAAQ,EAAO,CACT,MAQJ,IAFA,EAAqB,CAAK,EAC1B,IAAkB,CAAK,EACnB,EAAM,SAAW,EAAM,eAAiB,GAAkB,GAAmB,EAAgB,EAAM,aAAa,GAAK,EAAM,MAAQ,IAAK,CAC1I,EAAM,eAAe,EACrB,MACF,CACI,EAAM,wBASN,EAAM,SAAW,EAAM,eAAiB,CAAC,GAAkB,CAAC,GAAmB,CAAC,EAAM,kBAAoB,EAAM,MAAQ,MAC1H,EAAM,qBAAqB,EAC3B,EAA2B,EAAM,cAAe,CAAK,EAZvD,CAcF,EACA,cAAc,EAAO,CACnB,GAAI,EAAU,CACZ,EAAM,eAAe,EACrB,MACF,CACA,IAAwB,CAAK,CAC/B,CACF,EAAG,EAAiB,CAClB,KAAM,QACR,EAAI,CACF,KAAM,QACR,EAAG,EAA4B,CAAkB,CACnD,EAAG,CAAC,EAAU,EAA4B,EAAiB,CAAc,CAM1D,EACb,UANgB,GAAkB,GAAW,CAC7C,EAAW,QAAU,EACrB,EAAe,CACjB,CAGU,CACV,CACF,CACA,SAAS,EAAgB,EAAM,CAC7B,OAAO,EAAc,CAAI,GAAK,EAAK,UAAY,QACjD,CACA,SAAS,GAAmB,EAAM,CAChC,OAAO,EAAc,CAAI,GAAK,EAAK,UAAY,KAAO,EAAQ,EAAK,IACrE,CC1LA,SAAgB,EAAc,EAAG,EAAG,EAAG,EAAG,CACxC,IAAM,EAAU,EAAe,EAAa,CAAC,CAAC,QAI9C,OAHI,GAAU,EAAS,EAAG,EAAG,EAAG,CAAC,GAC/B,GAAO,EAAS,CAAC,EAAG,EAAG,EAAG,CAAC,CAAC,EAEvB,EAAQ,QACjB,CAOA,SAAgB,GAAe,EAAM,CACnC,IAAM,EAAU,EAAe,EAAa,CAAC,CAAC,QAI9C,OAHI,GAAW,EAAS,CAAI,GAC1B,GAAO,EAAS,CAAI,EAEf,EAAQ,QACjB,CACA,SAAS,IAAgB,CACvB,MAAO,CACL,SAAU,KACV,QAAS,KACT,KAAM,CAAC,CACT,CACF,CACA,SAAS,GAAU,EAAS,EAAG,EAAG,EAAG,EAAG,CAEtC,OAAO,EAAQ,KAAK,KAAO,GAAK,EAAQ,KAAK,KAAO,GAAK,EAAQ,KAAK,KAAO,GAAK,EAAQ,KAAK,KAAO,CACxG,CACA,SAAS,GAAW,EAAS,EAAS,CACpC,OAAO,EAAQ,KAAK,SAAW,EAAQ,QAAU,EAAQ,KAAK,MAAM,EAAK,IAAU,IAAQ,EAAQ,EAAM,CAC3G,CACA,SAAS,GAAO,EAAS,EAAM,CAE7B,GADA,EAAQ,KAAO,EACX,EAAK,MAAM,GAAO,GAAO,IAAI,EAAG,CAClC,EAAQ,SAAW,KACnB,MACF,CACA,EAAQ,SAAW,GAAY,CAK7B,GAJA,AAEE,EAAQ,WADR,EAAQ,QAAQ,EACE,MAEhB,GAAY,KAAM,CACpB,IAAM,EAAmB,MAAM,EAAK,MAAM,CAAC,CAAC,KAAK,IAAI,EACrD,IAAK,IAAI,EAAI,EAAG,EAAI,EAAK,OAAQ,GAAK,EAAG,CACvC,IAAM,EAAM,EAAK,GACb,MAAO,KAGX,OAAQ,OAAO,EAAf,CACE,IAAK,WACH,CACE,IAAM,EAAa,EAAI,CAAQ,EAC3B,OAAO,GAAe,aACxB,EAAiB,GAAK,GAExB,KACF,CACF,IAAK,SAED,EAAI,QAAU,EACd,MAEJ,QACF,CACF,CACA,EAAQ,YAAgB,CACtB,IAAK,IAAI,EAAI,EAAG,EAAI,EAAK,OAAQ,GAAK,EAAG,CACvC,IAAM,EAAM,EAAK,GACb,MAAO,KAGX,OAAQ,OAAO,EAAf,CACE,IAAK,WACH,CACE,IAAM,EAAkB,EAAiB,GACrC,OAAO,GAAoB,WAC7B,EAAgB,EAIhB,EAAS,IAAI,EAEf,KACF,CACF,IAAK,SAED,EAAI,QAAU,KACd,MAEJ,QACF,CACF,CACF,CACF,CACF,CACF,CC5GA,IAAM,GAAe,GACrB,SAAgB,GAAsB,EAAqB,CACzD,OAAO,IAAgB,CACzB,CCEA,SAAgB,GAAmB,EAAS,CAC1C,GAAI,CAAe,EAAM,eAAe,CAAO,EAC7C,OAAO,KAET,IAAM,EAAe,EACf,EAAe,EAAa,MAClC,OAAQ,GAAsB,EAAE,EAAI,GAAc,IAAM,EAAa,MAAQ,IAC/E,CCbA,SAAgB,IAAO,CAAC,CACxB,IAAa,GAAc,OAAO,OAAO,CAAC,CAAC,EAC9B,EAAe,OAAO,OAAO,CAAC,CAAC,ECF5C,SAAgB,GAAwB,EAAO,EAAe,CAC5D,IAAM,EAAQ,CAAC,EAGf,IAAK,IAAM,KAAO,EAAO,CACvB,IAAM,EAAQ,EAAM,GACpB,GAAI,GAAe,eAAe,CAAG,EAAG,CACtC,IAAM,EAAc,EAAc,EAAI,CAAC,CAAK,EACxC,GAAe,MACjB,OAAO,OAAO,EAAO,CAAW,EAElC,QACF,CACI,IAAU,GACZ,EAAM,QAAQ,EAAI,YAAY,KAAO,GAC5B,IACT,EAAM,QAAQ,EAAI,YAAY,KAAO,EAAM,SAAS,EAExD,CACA,OAAO,CACT,CCbA,SAAgB,GAAiB,EAAW,EAAO,CACjD,OAAO,OAAO,GAAc,WAAa,EAAU,CAAK,EAAI,CAC9D,CCFA,SAAgB,GAAa,EAAO,EAAO,CACzC,OAAO,OAAO,GAAU,WAAa,EAAM,CAAK,EAAI,CACtD,CCUA,SAAgB,GAAiB,EAAS,EAAgB,EAAS,CAAC,EAAG,CACrE,IAAM,EAAa,EAAe,OAC5B,EAAW,GAAsB,EAAgB,CAAM,EAK7D,OAJI,EAAO,UAAY,GACd,KAGF,GAAmB,EAAS,EAAY,EADjC,EAAO,OAAS,CACgC,CAChE,CAKA,SAAS,GAAsB,EAAgB,EAAS,CAAC,EAAG,CAC1D,GAAM,CACJ,UAAW,EACX,MAAO,EACP,OAAQ,GACN,EACE,CACJ,QAAQ,EACR,MACA,QACA,yBACA,UAAU,IACR,EACE,EAAY,EAAU,GAAiB,EAAe,CAAK,EAAI,IAAA,GAC/D,EAAQ,EAAU,GAAa,EAAW,CAAK,EAAI,IAAA,GACnD,EAAa,EAAU,GAAwB,EAAO,CAAsB,EAAI,EAChF,EAAgB,GAAW,EAAQ,GAA2B,CAAK,EAAI,IAAA,GAKvE,EAAW,EAAU,EAAa,EAAY,CAAa,GAAK,CAAC,EAAI,EA2B3E,OAnBI,OAAO,SAAa,MACjB,EAGM,MAAM,QAAQ,CAAG,EAC1B,EAAS,IAAM,GAAe,CAAC,EAAS,IAAK,GAAmB,CAAU,EAAG,GAAG,CAAG,CAAC,EAEpF,EAAS,IAAM,EAAc,EAAS,IAAK,GAAmB,CAAU,EAAG,CAAG,EAJ9E,EAAmB,KAAM,IAAI,GAO5B,GAGD,IAAc,IAAA,KAChB,EAAS,UAAY,GAAgB,EAAS,UAAW,CAAS,GAEhE,IAAU,IAAA,KACZ,EAAS,MAAQ,EAAa,EAAS,MAAO,CAAK,GAE9C,GARE,CASX,CACA,SAAS,GAA2B,EAAO,CAIzC,OAHI,MAAM,QAAQ,CAAK,EACd,GAAY,CAAK,EAEnB,EAAW,IAAA,GAAW,CAAK,CACpC,CAMA,IAAM,GAAkB,OAAO,IAAI,YAAY,EAG/C,SAAS,GAAmB,EAAS,EAAQ,EAAO,EAAO,CACzD,GAAI,EAAQ,CACV,GAAI,OAAO,GAAW,WAIpB,OAAO,EAAO,EAAO,CAAK,EAE5B,IAAM,EAAc,EAAW,EAAO,EAAO,KAAK,EAClD,EAAY,IAAM,EAAM,IACxB,IAAI,EAAa,EAsBjB,OAlBI,GAAY,WAAa,KAE3B,EAAA,EADuB,SAAS,QAAQ,CACpB,CAAC,CAAC,IAgBJ,EAAM,aAAa,EAAY,CAAW,CAChE,CACA,GAAI,GACE,OAAO,GAAY,SACrB,OAAO,GAAU,EAAS,CAAK,EAKnC,MAAU,MAAuGC,EAAoB,CAAC,CAAC,CACzI,CAcA,SAAS,GAAU,EAAK,EAAO,CAe7B,OAdI,IAAQ,UACU,EAAA,EAAA,cAAA,CAAe,SAAU,CAC3C,KAAM,SACN,GAAG,EACH,IAAK,EAAM,GACb,CAAC,EAEC,IAAQ,OACU,EAAA,EAAA,cAAA,CAAe,MAAO,CACxC,IAAK,GACL,GAAG,EACH,IAAK,EAAM,GACb,CAAC,EAEiB,EAAM,cAAc,EAAK,CAAK,CACpD,CC7JA,IAAa,GAAsB,EAAM,WAAW,SAAgB,EAAgB,EAAc,CAChG,GAAM,CACJ,SACA,YACA,WAAW,GACX,wBAAwB,GACxB,eAAe,GACf,QACA,GAAG,GACD,EACE,CACJ,iBACA,aACE,GAAU,CACZ,WACA,wBACA,OAAQ,CACV,CAAC,EAID,OAAO,GAAiB,SAAU,EAAgB,CAChD,MAAA,CAHA,UAGI,EACJ,IAAK,CAAC,EAAc,CAAS,EAC7B,MAAO,CAAC,EAAc,CAAc,CACtC,CAAC,CACH,CAAC,EC/BK,GAAuB,CAC5B,OAAQ,SACR,QAAS,UACT,UAAW,SACZ,EACA,SAAS,GAAS,CAAE,YAAa,EAAU,aAAc,EAAW,kBAAmB,EAAgB,aAAa,QAAS,WAAU,YAAW,WAAU,SAAQ,UAAU,GAAO,eAAc,eAAe,GAAM,SAAS,KAAM,OAAO,SAAU,UAAU,YAAa,GAAG,GAAS,CAC1R,IAAM,EAAiB,GAAU,GAAqB,GACtD,OAAuB,EAAA,EAAA,KAAA,CAAK,GAAQ,CACnC,GAAG,EACH,YAAa,EAAU,GAAO,EAC9B,aAAc,EAAU,GAAgB,EAAY,EACpD,kBAAmB,GAAW,IAAiB,IAAK,GAAI,IAAK,GAAI,EACjE,UAAW,EAAwB,SAAU,CAAS,EACtD,kBAAmB,EACnB,cAAe,EACf,eAAgB,EAChB,eAAgB,EAChB,SAAU,GAAY,EACtB,eACA,KAAM,EAAe,EAAO,IAAK,GACjC,SAAU,CAAC,GAA0B,EAAA,EAAA,IAAA,CAAI,EAAW,CACnD,WAAY,GACZ,OAAQ,IACT,CAAC,EAAI,KAAM,CAAQ,CACpB,CAAC,CACF,CCzBA,SAAgB,GAAU,EAAQ,CAChC,OAAO,GAAiB,EAAO,gBAAkB,MAAO,EAAQ,CAAM,CACxE,YCRA,IAAA,EAAA,EAAA,EAAA,IAAA,+PAcA,EACA,GAAA,CAAA,EACA,IAAA,EAAA,EAAA,EAAA,IAAA,kDAIA,EACA,IAAA,EAAA,QAAA,8GAYA,EACA,IAAA,EAAA,EAAA,IAAA,4BAEA,EACA,IAAA,EAAA,EAAA,EAAA,IAAA,gLAOA,EACA,IAAA,EAAA,EAAA,EAAA,CAAA,oVAeA,EAAA,GAAA,OAAA,GAAA,SACA,GAAA,GAAA,OAAA,GAAA,YAAA,EC7DM,GAAkB,oGAClB,GAAe,CACnB,QAAS,IACT,QAAS,IACT,OAAQ,IACR,QAAS,IACT,OAAQ,IACR,QAAS,IACT,SAAU,IACV,QAAS,IACT,SAAU,IACV,QAAS,IACT,SAAU,IACV,SAAU,IACV,SAAU,IACV,SAAU,IACV,QAAS,IACT,SAAU,IACV,WAAY,IACZ,UAAW,IACX,SAAU,IACV,QAAS,GACX,EACM,GAAqB,GAAK,GAAa,GCtBzC,GAAiB,CACnB,SAAU,kBACV,cAAe,GACf,oBAAqB,GACrB,2BAA4B,GAC5B,mBAAoB,GACpB,2BAA4B,CAAC,KAAM,SAAU,IAAK,GAAG,EACrD,YAAa,GACb,SDesB,GAAQ,EAAK,QAAQ,GAAiB,EAAkB,ECd9E,kBAAmB,IAAA,EACrB,EACa,IAAe,EAAU,CAAC,IAAM,CAC3C,GAAiB,CACf,GAAG,GACH,GAAG,CACL,CACF,EACa,OAAoB,GClB7B,GACS,GAAU,GAAY,CACjC,GAAe,CACjB,EACa,OAAgB,GCFhB,GAAmB,CAC9B,KAAM,WACN,KAAK,EAAU,CACb,GAAY,EAAS,QAAQ,KAAK,EAClC,GAAQ,CAAQ,CAClB,CACF,ECHa,IAAA,EAAA,EAAA,cAAA,CAA4B,EAC5B,GAAb,KAA8B,CAC5B,aAAc,CACZ,KAAK,eAAiB,CAAC,CACzB,CACA,kBAAkB,EAAY,CAC5B,EAAW,QAAQ,GAAM,CAClB,KAAK,eAAe,KAAK,KAAK,eAAe,GAAM,GAC1D,CAAC,CACH,CACA,mBAAoB,CAClB,OAAO,OAAO,KAAK,KAAK,cAAc,CACxC,CACF,ECJM,GAAmB,CACvB,GAXiB,EAAG,IAAuB,CAC3C,GAAI,EAAS,CAAkB,EAAG,OAAO,EACzC,GAAI,GAAS,CAAkB,GAAK,EAAS,EAAmB,YAAY,EAAG,OAAO,EAAmB,aACzG,GAAI,OAAO,GAAM,WAAY,MAAO,GACpC,GAAI,MAAM,QAAQ,CAAC,EAAG,CACpB,IAAM,EAAO,EAAE,EAAE,OAAS,GAC1B,OAAO,OAAO,GAAS,WAAa,GAAK,CAC3C,CACA,OAAO,CACT,EAGE,MAAO,EACT,EACM,WAA6B,CAAC,EACvB,IAAkB,EAAI,EAAQ,CAAC,IAAM,CAChD,GAAM,CACJ,KAAM,GACJ,EACE,CACJ,KAAM,EACN,UAAW,IAAA,EAAA,EAAA,WAAA,CACE,EAAW,GAAK,CAAC,EAC1B,EAAO,GAAiB,GAAmB,GAAQ,EACrD,GAAQ,CAAC,EAAK,mBAAkB,EAAK,iBAAmB,IAAI,IAC3D,GACH,GAAS,EAAM,sBAAuB,wFAAwF,EAEhI,IAAM,GAAA,EAAA,EAAA,QAAA,MAA6B,CACjC,GAAG,GAAY,EACf,GAAG,GAAM,SAAS,MAClB,GAAG,CACL,GAAI,CAAC,EAAM,CAAK,CAAC,EACX,CACJ,cACA,aACE,EACE,EAAc,GAAM,GAAwB,GAAM,SAAS,UAC3D,EAAqB,EAAS,CAAW,EAAI,CAAC,CAAW,EAAI,GAAe,CAAC,aAAa,EAC1F,GAAA,EAAA,EAAA,QAAA,KAA2B,EAAoB,CAAkB,EACvE,GAAM,kBAAkB,oBAAoB,CAAU,EACtD,IAAM,GAAA,EAAA,EAAA,OAAA,CAAqB,CAAC,EACtB,GAAA,EAAA,EAAA,YAAA,CAAwB,GAAY,CACxC,GAAI,CAAC,EAAM,OAAO,GAClB,GAAM,CACJ,WACA,iBACE,EACE,MAAwB,CAC5B,EAAY,SAAW,EACvB,EAAS,CACX,EAGA,OAFI,GAAU,EAAK,GAAG,EAAU,CAAe,EAC3C,GAAe,EAAK,MAAM,GAAG,EAAe,CAAe,MAClD,CACP,GAAU,EAAS,MAAM,GAAG,CAAC,CAAC,QAAQ,GAAK,EAAK,IAAI,EAAG,CAAe,CAAC,EACvE,GAAe,EAAc,MAAM,GAAG,CAAC,CAAC,QAAQ,GAAK,EAAK,MAAM,IAAI,EAAG,CAAe,CAAC,CAC7F,CACF,EAAG,CAAC,EAAM,CAAW,CAAC,EAChB,GAAA,EAAA,EAAA,OAAA,CAAqB,EACrB,GAAA,EAAA,EAAA,YAAA,KAAgC,CACpC,GAAI,CAAC,EACH,OAAO,GAET,IAAM,EAAkB,CAAC,EAAE,EAAK,eAAiB,EAAK,uBAAyB,EAAW,MAAM,GAAK,GAAmB,EAAG,EAAM,CAAW,CAAC,EACvI,EAAa,EAAM,KAAO,EAAK,SAC/B,EAAkB,EAAY,QAC9B,EAAe,EAAY,QACjC,GAAI,GAAgB,EAAa,QAAU,GAAmB,EAAa,MAAQ,GAAc,EAAa,YAAc,GAAa,EAAa,WAAa,EACjK,OAAO,EAKT,IAAM,EAAc,CAClB,EAJkB,EAAK,UAAU,EAAY,EAAY,SAAW,WAAa,EAAa,EAAW,GAAI,EAAW,CACxH,QAAS,CACX,CAEe,EACb,MAAO,EACP,IAAK,EACL,YACA,SAAU,CACZ,EAEA,MADA,GAAY,QAAU,EACf,CACT,EAAG,CAAC,EAAM,EAAY,EAAW,EAAa,EAAM,GAAG,CAAC,EAClD,CAAC,EAAW,IAAA,EAAA,EAAA,SAAA,CAAyB,CAAC,EACtC,CACJ,IACA,UAAA,EAAA,GAAA,qBAAA,CACuB,EAAW,EAAa,CAAW,GAC5D,EAAA,EAAA,UAAA,KAAgB,CACd,GAAI,GAAQ,CAAC,GAAS,CAAC,EAAa,CAClC,IAAM,MAAiB,EAAa,GAAK,EAAI,CAAC,EAC1C,EAAM,IACR,GAAc,EAAM,EAAM,IAAK,EAAY,CAAQ,EAEnD,GAAe,EAAM,EAAY,CAAQ,CAE7C,CACF,EAAG,CAAC,EAAM,EAAM,IAAK,EAAY,EAAO,EAAa,CAAS,CAAC,EAC/D,IAAM,EAAY,GAAQ,CAAC,EACrB,GAAA,EAAA,EAAA,OAAA,CAAoB,IAAI,EACxB,GAAA,EAAA,EAAA,OAAA,CAAwB,EACxB,EAAoB,GAAY,CACpC,IAAM,EAAc,OAAO,0BAA0B,CAAQ,EACzD,EAAY,YAAY,OAAO,EAAY,WAC/C,IAAM,EAAU,OAAO,OAAO,OAAO,eAAe,CAAQ,EAAG,CAAW,EAC1E,GAAI,CAAC,OAAO,UAAU,eAAe,KAAK,EAAS,YAAY,EAC7D,GAAI,CACF,OAAO,eAAe,EAAS,aAAc,CAC3C,MAAO,EACP,SAAU,GACV,WAAY,GACZ,aAAc,EAChB,CAAC,CACH,MAAY,CAAC,CAEf,OAAO,CACT,EACM,GAAA,EAAA,EAAA,QAAA,KAAoB,CACxB,IAAM,EAAW,EACX,EAAO,GAAU,SACnB,EAAc,EACd,IACE,EAAW,SAAW,EAAW,QAAQ,aAAe,GACtD,EAAe,UAAY,EAK7B,EAAc,EAAW,SAJzB,EAAc,EAAkB,CAAQ,EACxC,EAAW,QAAU,EACrB,EAAe,QAAU,IAU/B,IAAM,EAAa,CAAC,GAAS,CAAC,GAAe,GAAG,KAC9C,GAAS,EAAM,qBAAsB,6HAA6H,EAC3J,EAAE,GAAG,CAAI,GACd,EACE,EAAM,CAAC,EAAY,EAAa,CAAK,EAI3C,MAHA,GAAI,EAAI,EACR,EAAI,KAAO,EACX,EAAI,MAAQ,EACL,CACT,EAAG,CAAC,EAAG,EAAW,EAAO,EAAU,iBAAkB,EAAU,SAAU,EAAU,SAAS,CAAC,EAC7F,GAAI,GAAQ,GAAe,CAAC,EAC1B,MAAM,IAAI,QAAQ,GAAW,CAC3B,IAAM,MAAiB,EAAQ,EAC3B,EAAM,IACR,GAAc,EAAM,EAAM,IAAK,EAAY,CAAQ,EAEnD,GAAe,EAAM,EAAY,CAAQ,CAE7C,CAAC,EAEH,OAAO,CACT,EC7Ia,GAAb,MAAa,UAAqB,KAAM,CAEtC,KAEA,OAEA,YAAY,EAAc,EAAgB,EAAiB,CACzD,MAAM,CAAO,EACb,KAAK,KAAO,eACZ,KAAK,KAAO,EACZ,KAAK,OAAS,CAChB,CAQA,aAAa,aAAa,EAAsC,CAC9D,IAAI,EAAO,gBACP,EAAU,EAAI,YAAc,4BAEhC,GAAI,CACF,IAAM,EAAO,MAAM,EAAI,KAAK,EACxB,EAAK,OACP,EAAO,EAAK,MAEV,EAAK,UACP,EAAU,EAAK,QAEnB,MAAQ,CAER,CAEA,OAAO,IAAI,EAAa,EAAM,EAAI,OAAQ,CAAO,CACnD,CACF,ECvDA,SAAS,GAAO,EAAO,CACtB,GAAM,CAAE,KAAI,UAAU,OAAQ,QAAO,QAAO,WAAU,SAAQ,YAAW,GAAG,GAAS,EACrF,OAAA,EAAA,EAAA,cAAA,CAAqB,GAAM,OAAQ,CAClC,GAAG,EACH,UAAWC,EAAgB,UAAW,CAAS,EAC/C,eAAgB,EAChB,aAAc,EACd,aAAc,EACd,gBAAiB,EAAW,OAAS,IAAK,GAC1C,cAAe,CAChB,CAAC,CACF,CCPA,IAAM,IAAgB,GAAG,IAAY,EAAQ,QAAQ,EAAW,EAAO,IAC9D,EAAQ,GAAc,EAAU,KAAK,IAAM,IAAM,EAAM,QAAQ,CAAS,IAAM,CACtF,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,ECFZ,GAAe,GAAW,EAAO,QAAQ,qBAAsB,OAAO,CAAC,CAAC,YAAY,ECApF,GAAe,GAAW,EAAO,QACrC,yBACC,EAAO,EAAI,IAAO,EAAK,EAAG,YAAY,EAAI,EAAG,YAAY,CAC5D,ECDM,GAAgB,GAAW,CAC/B,IAAM,EAAY,GAAY,CAAM,EACpC,OAAO,EAAU,OAAO,CAAC,CAAC,CAAC,YAAY,EAAI,EAAU,MAAM,CAAC,CAC9D,ECLI,GAAoB,CACtB,MAAO,6BACP,MAAO,GACP,OAAQ,GACR,QAAS,YACT,KAAM,OACN,OAAQ,eACR,YAAa,EACb,cAAe,QACf,eAAgB,OAClB,ECVM,GAAe,GAAU,CAC7B,IAAK,IAAM,KAAQ,EACjB,GAAI,EAAK,WAAW,OAAO,GAAK,IAAS,QAAU,IAAS,QAC1D,MAAO,GAGX,MAAO,EACT,ECHM,IAAA,EAAA,EAAA,cAAA,CAA8B,CAAC,CAAC,EAqBhC,QAAA,EAAA,EAAA,WAAA,CAAoC,EAAa,ECjBjD,IAAA,EAAA,EAAA,WAAA,EACH,CAAE,QAAO,OAAM,cAAa,sBAAqB,YAAY,GAAI,WAAU,WAAU,GAAG,GAAQ,IAAQ,CACvG,GAAM,CACJ,KAAM,EAAc,GACpB,YAAa,EAAqB,EAClC,oBAAqB,EAA6B,GAClD,MAAO,EAAe,eACtB,UAAW,EAAe,IACxB,GAAiB,GAAK,CAAC,EACrB,EAAwB,GAAuB,EAA6B,OAAO,GAAe,CAAkB,EAAI,GAAK,OAAO,GAAQ,CAAW,EAAI,GAAe,EAChL,OAAA,EAAA,EAAA,cAAA,CACE,MACA,CACE,MACA,GAAG,GACH,MAAO,GAAQ,GAAe,GAAkB,MAChD,OAAQ,GAAQ,GAAe,GAAkB,OACjD,OAAQ,GAAS,EACjB,YAAa,EACb,UAAW,GAAa,SAAU,EAAc,CAAS,EACzD,GAAG,CAAC,GAAY,CAAC,GAAY,CAAI,GAAK,CAAE,cAAe,MAAO,EAC9D,GAAG,CACL,EACA,CACE,GAAG,EAAS,KAAK,CAAC,EAAK,MAAA,EAAA,EAAA,cAAA,CAAyB,EAAK,CAAK,CAAC,EAC3D,GAAG,MAAM,QAAQ,CAAQ,EAAI,EAAW,CAAC,CAAQ,CACnD,CACF,CACF,CACF,EC/BM,IAAoB,EAAU,IAAa,CAC/C,IAAM,GAAA,EAAA,EAAA,WAAA,EACH,CAAE,YAAW,GAAG,GAAS,KAAA,EAAA,EAAA,cAAA,CAAsB,GAAM,CACpD,MACA,WACA,UAAW,GACT,UAAU,GAAY,GAAa,CAAQ,CAAC,IAC5C,UAAU,IACV,CACF,EACA,GAAG,CACL,CAAC,CACH,EAEA,MADA,GAAU,YAAc,GAAa,CAAQ,EACtC,CACT"}
@@ -0,0 +1,2 @@
1
+ import{I as e}from"./index-CS23Ozt6.js";var t=e;export{t as errorComponent};
2
+ //# sourceMappingURL=email-C5vUVgr_.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-C5vUVgr_.js","names":["RouteErrorFallback","VerifyEmailFormValues","token","SplitErrorComponent","errorComponent"],"sources":["../../../frontend/src/routes/verify/email/index.tsx?tsr-split=errorComponent"],"sourcesContent":["import { standardSchemaResolver } from '@hookform/resolvers/standard-schema';\nimport {\n useMutation,\n useQueryClient,\n useSuspenseQuery,\n} from '@tanstack/react-query';\nimport { createFileRoute, redirect, useNavigate } from '@tanstack/react-router';\nimport { TRButton } from '@tinyrack/ui/components/button';\nimport { TRSpinner } from '@tinyrack/ui/components/spinner';\nimport { TRText } from '@tinyrack/ui/components/text';\nimport { TRToast } from '@tinyrack/ui/components/toast';\nimport { CircleCheckIcon, KeyRoundIcon, MailIcon } from 'lucide-react';\nimport { useMemo, useState } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { useTranslation } from 'react-i18next';\nimport { z } from 'zod';\nimport { AuthField } from '#frontend/components/auth/auth-field.tsx';\nimport { AuthOutcome } from '#frontend/components/auth/auth-outcome.tsx';\nimport { AuthPageHeader } from '#frontend/components/auth/auth-page-header.tsx';\nimport { Alert } from '#frontend/components/ui/alert.tsx';\nimport { LabeledSeparator } from '#frontend/components/ui/labeled-separator.tsx';\nimport { RouteErrorFallback } from '#frontend/components/ui/route-error-fallback.tsx';\nimport { AuthLayout } from '#frontend/features/layout/auth-layout.tsx';\n\nimport {\n buildAuthenticatedAuthorizeUrl,\n extractOAuthParams,\n isOAuthFlow,\n OAuthSearchSchema,\n type SecondFactorMethod,\n} from '#frontend/libs/oauth-search.ts';\nimport { tick } from '#frontend/libs/promise.ts';\nimport { appConfigQueryOptions } from '#frontend/queries/config.ts';\nimport { getSessionQueryOptions } from '#frontend/queries/session.ts';\nimport {\n resendVerificationMutationOptions,\n verifyEmailMutationOptions,\n} from '#frontend/queries/verify-email.ts';\n\nconst SearchSchema = z.object({\n ...OAuthSearchSchema.shape,\n token: z.string().default(''),\n email: z.string().default(''),\n});\n\nexport const Route = createFileRoute('/verify/email/')({\n component: VerifyEmail,\n errorComponent: RouteErrorFallback,\n validateSearch: SearchSchema,\n beforeLoad: async ({ context }) => {\n const config = await context.queryClient.ensureQueryData(\n appConfigQueryOptions,\n );\n const isPasswordAuthEnabled = config.auth.password.enabled;\n if (!isPasswordAuthEnabled) {\n throw redirect({ to: '/login' });\n }\n },\n loader: async ({ context }) => {\n await context.queryClient.ensureQueryData(appConfigQueryOptions);\n },\n});\n\ntype VerifyEmailFormValues = {\n token: string;\n};\n\nfunction VerifyEmail() {\n const { t } = useTranslation();\n const navigate = useNavigate();\n const queryClient = useQueryClient();\n const search = Route.useSearch();\n const { token: queryToken, email } = search;\n const [verified, setVerified] = useState(false);\n const [resendCooldown, setResendCooldown] = useState(false);\n const toast = TRToast.useToastManager();\n const { data: appConfig } = useSuspenseQuery(appConfigQueryOptions);\n\n const verifyEmailSchema = useMemo(\n () =>\n z.object({\n token: z.string().min(1, t('validation.token.required')),\n }),\n [t],\n );\n\n const verifyEmailMutation = useMutation({\n ...verifyEmailMutationOptions,\n onSuccess: async (data) => {\n const user = data.user;\n\n queryClient.setQueryData(getSessionQueryOptions.queryKey, {\n user: user,\n });\n await tick();\n\n if (user.second_factor_required) {\n const available_2fa_methods: SecondFactorMethod[] = [];\n if (appConfig.auth.password.totp.enabled) {\n available_2fa_methods.push('totp');\n }\n if (appConfig.auth.passkey.enabled) {\n available_2fa_methods.push('passkey');\n }\n\n if (available_2fa_methods.length === 1) {\n const method = available_2fa_methods[0];\n if (method === 'totp') {\n return navigate({\n to: '/setup/totp',\n search: extractOAuthParams(search),\n });\n } else {\n return navigate({\n to: '/setup/passkey',\n search: extractOAuthParams(search),\n });\n }\n } else {\n return navigate({\n to: '/setup/2fa',\n search: extractOAuthParams(search),\n });\n }\n }\n\n if (isOAuthFlow(search)) {\n window.location.href = buildAuthenticatedAuthorizeUrl(search);\n } else {\n setVerified(true);\n }\n },\n onSettled: () => {\n queryClient.invalidateQueries({\n queryKey: getSessionQueryOptions.queryKey,\n });\n },\n });\n\n const resendVerificationMutation = useMutation({\n ...resendVerificationMutationOptions,\n onSuccess: () => {\n toast.add({ title: t('verifyEmail.resendSuccess'), type: 'success' });\n // Separate from the message: a short cooldown so the button cannot be\n // used to spam the address with mail.\n setResendCooldown(true);\n setTimeout(() => setResendCooldown(false), 5000);\n },\n });\n\n const {\n register,\n setError,\n handleSubmit,\n formState: { errors },\n } = useForm<VerifyEmailFormValues>({\n defaultValues: {\n token: queryToken || '',\n },\n resolver: standardSchemaResolver(verifyEmailSchema),\n });\n\n const onSubmit = async (values: VerifyEmailFormValues) => {\n try {\n await verifyEmailMutation.mutateAsync(values);\n } catch (_error) {\n setError('token', {\n type: 'manual',\n message: t('verifyEmail.error.invalidToken'),\n });\n }\n };\n\n const handleResend = async () => {\n if (!email) {\n return;\n }\n try {\n await resendVerificationMutation.mutateAsync({ email });\n } catch (_error) {}\n };\n\n if (verified) {\n return (\n <AuthLayout>\n {/*\n The testid stays on a wrapper: e2e treats \"the success alert\" as the\n whole terminal state, which is now the outcome block rather than a\n banner stacked above a header.\n */}\n <div data-testid=\"alert-success\">\n <AuthOutcome\n description={\n <>\n {t('verifyEmail.success.subtitle')}\n <br />\n {t('verifyEmail.success.description')}\n </>\n }\n icon={CircleCheckIcon}\n title={t('verifyEmail.success.title')}\n tone=\"success\"\n >\n <TRButton\n className=\"w-full\"\n data-testid=\"email-verify-go-profile\"\n intent=\"primary\"\n onClick={() => navigate({ to: '/profile' })}\n type=\"button\"\n uiSize=\"lg\"\n >\n {t('verifyEmail.success.goToProfile')}\n </TRButton>\n </AuthOutcome>\n </div>\n </AuthLayout>\n );\n }\n\n return (\n <AuthLayout>\n <AuthPageHeader\n subtitle={t('verifyEmail.subtitle')}\n title={t('verifyEmail.title')}\n />\n\n {email && (\n <Alert icon={MailIcon} type=\"info\">\n <span className=\"flex flex-col gap-tinyrack-3xs text-left\">\n <TRText variant=\"body\" weight=\"strong\">\n {t('register.success.subtitle')}\n </TRText>\n <TRText color=\"muted\" variant=\"caption\">\n {t('register.success.description', { email })}\n </TRText>\n </span>\n </Alert>\n )}\n\n <form\n className=\"flex flex-col gap-tinyrack-lg\"\n onSubmit={handleSubmit(onSubmit)}\n >\n <AuthField\n error={errors.token}\n icon={KeyRoundIcon}\n label={t('verifyEmail.token.label')}\n placeholder={t('verifyEmail.token.placeholder')}\n {...register('token')}\n type=\"text\"\n />\n\n <TRButton\n className=\"w-full\"\n intent=\"primary\"\n loading={verifyEmailMutation.isPending}\n loadingLabel={t('verifyEmail.submitting')}\n type=\"submit\"\n uiSize=\"lg\"\n >\n {t('verifyEmail.submit')}\n </TRButton>\n </form>\n\n {email && (\n <div className=\"flex flex-col gap-tinyrack-md\">\n <LabeledSeparator />\n\n <TRButton\n appearance=\"ghost\"\n className=\"w-full\"\n data-testid=\"email-verify-resend\"\n disabled={resendVerificationMutation.isPending || resendCooldown}\n intent=\"neutral\"\n onClick={handleResend}\n type=\"button\"\n >\n {resendVerificationMutation.isPending ? (\n <>\n <TRSpinner uiSize=\"sm\" />\n {t('verifyEmail.resending')}\n </>\n ) : (\n t('verifyEmail.resend')\n )}\n </TRButton>\n </div>\n )}\n </AuthLayout>\n );\n}\n"],"mappings":"wCAiEE,IAAAG,EA5COH"}
@@ -0,0 +1,2 @@
1
+ import{J as e,U as t,Z as n,i as r,n as i,q as a,s as o}from"./createLucideIcon-BPpAIXR_.js";import{Sr as s,f as c,i as l,r as u,t as d}from"./config-DTQCUlfZ.js";import{t as f}from"./mutationOptions-DyYFUbyn.js";import{t as p}from"./useMutation-BWZ0G4Td.js";import{tt as m}from"./shell-header-bar-CjG5qvPg.js";import{t as h}from"./circle-check-6QTLhwM_.js";import{t as g}from"./auth-field-DD8kvl--.js";import{t as _}from"./key-round-CdvHb8vT.js";import{t as v}from"./mail-D0B_1Dzd.js";import{c as y,o as b}from"./zod-C87S6Tec.js";import{F as x,L as S,N as C,S as w,V as T,j as E,p as D}from"./index-CS23Ozt6.js";import{t as O}from"./auth-page-header-CIn2E4zI.js";import{t as k}from"./alert-leqyvHOp.js";import{t as A}from"./auth-layout-VtpryDof.js";import{t as j}from"./promise-OpBtq8tG.js";import{r as M,t as N}from"./standard-schema-e8gtSzGE.js";import{t as P}from"./labeled-separator-CV7nb0XW.js";var F=n(e()),I=f({mutationFn:async e=>l(await u.api.auth.email.verify.$post({json:e}))}),L=f({mutationFn:async e=>l(await u.api.auth.email.resend.$post({json:e,header:{}}))}),R=a();function z(){let{t:e}=r(),n=T(),a=s(),l=D.useSearch(),{token:u,email:f}=l,[z,B]=(0,F.useState)(!1),[V,H]=(0,F.useState)(!1),U=c.useToastManager(),{data:W}=m(d),G=(0,F.useMemo)(()=>b({token:y().min(1,e(`validation.token.required`))}),[e]),K=p({...I,onSuccess:async e=>{let t=e.user;if(a.setQueryData(w.queryKey,{user:t}),await j(),t.second_factor_required){let e=[];return W.auth.password.totp.enabled&&e.push(`totp`),W.auth.passkey.enabled&&e.push(`passkey`),e.length===1?e[0]===`totp`?n({to:`/setup/totp`,search:C(l)}):n({to:`/setup/passkey`,search:C(l)}):n({to:`/setup/2fa`,search:C(l)})}x(l)?window.location.href=E(l):B(!0)},onSettled:()=>{a.invalidateQueries({queryKey:w.queryKey})}}),q=p({...L,onSuccess:()=>{U.add({title:e(`verifyEmail.resendSuccess`),type:`success`}),H(!0),setTimeout(()=>H(!1),5e3)}}),{register:J,setError:Y,handleSubmit:X,formState:{errors:Z}}=M({defaultValues:{token:u||``},resolver:N(G)}),Q=async t=>{try{await K.mutateAsync(t)}catch{Y(`token`,{type:`manual`,message:e(`verifyEmail.error.invalidToken`)})}},$=async()=>{if(f)try{await q.mutateAsync({email:f})}catch{}};return z?(0,R.jsx)(A,{children:(0,R.jsx)(`div`,{"data-testid":`alert-success`,children:(0,R.jsx)(S,{description:(0,R.jsxs)(R.Fragment,{children:[e(`verifyEmail.success.subtitle`),(0,R.jsx)(`br`,{}),e(`verifyEmail.success.description`)]}),icon:h,title:e(`verifyEmail.success.title`),tone:`success`,children:(0,R.jsx)(o,{className:`w-full`,"data-testid":`email-verify-go-profile`,intent:`primary`,onClick:()=>n({to:`/profile`}),type:`button`,uiSize:`lg`,children:e(`verifyEmail.success.goToProfile`)})})})}):(0,R.jsxs)(A,{children:[(0,R.jsx)(O,{subtitle:e(`verifyEmail.subtitle`),title:e(`verifyEmail.title`)}),f&&(0,R.jsx)(k,{icon:v,type:`info`,children:(0,R.jsxs)(`span`,{className:`flex flex-col gap-tinyrack-3xs text-left`,children:[(0,R.jsx)(i,{variant:`body`,weight:`strong`,children:e(`register.success.subtitle`)}),(0,R.jsx)(i,{color:`muted`,variant:`caption`,children:e(`register.success.description`,{email:f})})]})}),(0,R.jsxs)(`form`,{className:`flex flex-col gap-tinyrack-lg`,onSubmit:X(Q),children:[(0,R.jsx)(g,{error:Z.token,icon:_,label:e(`verifyEmail.token.label`),placeholder:e(`verifyEmail.token.placeholder`),...J(`token`),type:`text`}),(0,R.jsx)(o,{className:`w-full`,intent:`primary`,loading:K.isPending,loadingLabel:e(`verifyEmail.submitting`),type:`submit`,uiSize:`lg`,children:e(`verifyEmail.submit`)})]}),f&&(0,R.jsxs)(`div`,{className:`flex flex-col gap-tinyrack-md`,children:[(0,R.jsx)(P,{}),(0,R.jsx)(o,{appearance:`ghost`,className:`w-full`,"data-testid":`email-verify-resend`,disabled:q.isPending||V,intent:`neutral`,onClick:$,type:`button`,children:q.isPending?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(t,{uiSize:`sm`}),e(`verifyEmail.resending`)]}):e(`verifyEmail.resend`)})]})]})}export{z as component};
2
+ //# sourceMappingURL=email-CKKakxPJ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-CKKakxPJ.js","names":["standardSchemaResolver","useMutation","useQueryClient","useSuspenseQuery","useNavigate","TRButton","TRSpinner","TRText","TRToast","CircleCheckIcon","KeyRoundIcon","MailIcon","useMemo","useState","useForm","useTranslation","z","AuthField","AuthOutcome","AuthPageHeader","Alert","LabeledSeparator","AuthLayout","buildAuthenticatedAuthorizeUrl","extractOAuthParams","isOAuthFlow","tick","appConfigQueryOptions","getSessionQueryOptions","resendVerificationMutationOptions","verifyEmailMutationOptions","Route","VerifyEmailFormValues","token","VerifyEmail","t","navigate","queryClient","search","useSearch","queryToken","email","verified","setVerified","resendCooldown","setResendCooldown","toast","useToastManager","data","appConfig","verifyEmailSchema","object","string","min","verifyEmailMutation","onSuccess","user","setQueryData","queryKey","second_factor_required","available_2fa_methods","SecondFactorMethod","auth","password","totp","enabled","push","passkey","length","method","to","window","location","href","onSettled","invalidateQueries","resendVerificationMutation","add","title","type","setTimeout","register","setError","handleSubmit","formState","errors","defaultValues","resolver","onSubmit","values","mutateAsync","_error","message","handleResend","isPending","component"],"sources":["../../../frontend/src/queries/verify-email.ts","../../../frontend/src/routes/verify/email/index.tsx?tsr-split=component"],"sourcesContent":["import { mutationOptions } from '@tanstack/react-query';\nimport type { InferRequestType, InferResponseType } from 'hono/client';\nimport { client, jsonOk } from '#frontend/libs/api.ts';\n\nexport type VerifyEmailParams = InferRequestType<\n (typeof client.api.auth.email.verify)['$post']\n>['json'];\n\nexport type VerifyEmailResponse = InferResponseType<\n (typeof client.api.auth.email.verify)['$post'],\n 200\n>;\n\nexport const verifyEmailMutationOptions = mutationOptions({\n mutationFn: async (values: VerifyEmailParams) => {\n const res = await client.api.auth.email.verify.$post({\n json: values,\n });\n return jsonOk(res);\n },\n});\n\nexport type ResendVerificationParams = InferRequestType<\n (typeof client.api.auth.email.resend)['$post']\n>['json'];\n\nexport type ResendVerificationResponse = InferResponseType<\n (typeof client.api.auth.email.resend)['$post'],\n 200\n>;\n\nexport const resendVerificationMutationOptions = mutationOptions({\n mutationFn: async (values: ResendVerificationParams) => {\n const res = await client.api.auth.email.resend.$post({\n json: values,\n header: {},\n });\n return jsonOk(res);\n },\n});\n","import { standardSchemaResolver } from '@hookform/resolvers/standard-schema';\nimport {\n useMutation,\n useQueryClient,\n useSuspenseQuery,\n} from '@tanstack/react-query';\nimport { createFileRoute, redirect, useNavigate } from '@tanstack/react-router';\nimport { TRButton } from '@tinyrack/ui/components/button';\nimport { TRSpinner } from '@tinyrack/ui/components/spinner';\nimport { TRText } from '@tinyrack/ui/components/text';\nimport { TRToast } from '@tinyrack/ui/components/toast';\nimport { CircleCheckIcon, KeyRoundIcon, MailIcon } from 'lucide-react';\nimport { useMemo, useState } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { useTranslation } from 'react-i18next';\nimport { z } from 'zod';\nimport { AuthField } from '#frontend/components/auth/auth-field.tsx';\nimport { AuthOutcome } from '#frontend/components/auth/auth-outcome.tsx';\nimport { AuthPageHeader } from '#frontend/components/auth/auth-page-header.tsx';\nimport { Alert } from '#frontend/components/ui/alert.tsx';\nimport { LabeledSeparator } from '#frontend/components/ui/labeled-separator.tsx';\nimport { RouteErrorFallback } from '#frontend/components/ui/route-error-fallback.tsx';\nimport { AuthLayout } from '#frontend/features/layout/auth-layout.tsx';\n\nimport {\n buildAuthenticatedAuthorizeUrl,\n extractOAuthParams,\n isOAuthFlow,\n OAuthSearchSchema,\n type SecondFactorMethod,\n} from '#frontend/libs/oauth-search.ts';\nimport { tick } from '#frontend/libs/promise.ts';\nimport { appConfigQueryOptions } from '#frontend/queries/config.ts';\nimport { getSessionQueryOptions } from '#frontend/queries/session.ts';\nimport {\n resendVerificationMutationOptions,\n verifyEmailMutationOptions,\n} from '#frontend/queries/verify-email.ts';\n\nconst SearchSchema = z.object({\n ...OAuthSearchSchema.shape,\n token: z.string().default(''),\n email: z.string().default(''),\n});\n\nexport const Route = createFileRoute('/verify/email/')({\n component: VerifyEmail,\n errorComponent: RouteErrorFallback,\n validateSearch: SearchSchema,\n beforeLoad: async ({ context }) => {\n const config = await context.queryClient.ensureQueryData(\n appConfigQueryOptions,\n );\n const isPasswordAuthEnabled = config.auth.password.enabled;\n if (!isPasswordAuthEnabled) {\n throw redirect({ to: '/login' });\n }\n },\n loader: async ({ context }) => {\n await context.queryClient.ensureQueryData(appConfigQueryOptions);\n },\n});\n\ntype VerifyEmailFormValues = {\n token: string;\n};\n\nfunction VerifyEmail() {\n const { t } = useTranslation();\n const navigate = useNavigate();\n const queryClient = useQueryClient();\n const search = Route.useSearch();\n const { token: queryToken, email } = search;\n const [verified, setVerified] = useState(false);\n const [resendCooldown, setResendCooldown] = useState(false);\n const toast = TRToast.useToastManager();\n const { data: appConfig } = useSuspenseQuery(appConfigQueryOptions);\n\n const verifyEmailSchema = useMemo(\n () =>\n z.object({\n token: z.string().min(1, t('validation.token.required')),\n }),\n [t],\n );\n\n const verifyEmailMutation = useMutation({\n ...verifyEmailMutationOptions,\n onSuccess: async (data) => {\n const user = data.user;\n\n queryClient.setQueryData(getSessionQueryOptions.queryKey, {\n user: user,\n });\n await tick();\n\n if (user.second_factor_required) {\n const available_2fa_methods: SecondFactorMethod[] = [];\n if (appConfig.auth.password.totp.enabled) {\n available_2fa_methods.push('totp');\n }\n if (appConfig.auth.passkey.enabled) {\n available_2fa_methods.push('passkey');\n }\n\n if (available_2fa_methods.length === 1) {\n const method = available_2fa_methods[0];\n if (method === 'totp') {\n return navigate({\n to: '/setup/totp',\n search: extractOAuthParams(search),\n });\n } else {\n return navigate({\n to: '/setup/passkey',\n search: extractOAuthParams(search),\n });\n }\n } else {\n return navigate({\n to: '/setup/2fa',\n search: extractOAuthParams(search),\n });\n }\n }\n\n if (isOAuthFlow(search)) {\n window.location.href = buildAuthenticatedAuthorizeUrl(search);\n } else {\n setVerified(true);\n }\n },\n onSettled: () => {\n queryClient.invalidateQueries({\n queryKey: getSessionQueryOptions.queryKey,\n });\n },\n });\n\n const resendVerificationMutation = useMutation({\n ...resendVerificationMutationOptions,\n onSuccess: () => {\n toast.add({ title: t('verifyEmail.resendSuccess'), type: 'success' });\n // Separate from the message: a short cooldown so the button cannot be\n // used to spam the address with mail.\n setResendCooldown(true);\n setTimeout(() => setResendCooldown(false), 5000);\n },\n });\n\n const {\n register,\n setError,\n handleSubmit,\n formState: { errors },\n } = useForm<VerifyEmailFormValues>({\n defaultValues: {\n token: queryToken || '',\n },\n resolver: standardSchemaResolver(verifyEmailSchema),\n });\n\n const onSubmit = async (values: VerifyEmailFormValues) => {\n try {\n await verifyEmailMutation.mutateAsync(values);\n } catch (_error) {\n setError('token', {\n type: 'manual',\n message: t('verifyEmail.error.invalidToken'),\n });\n }\n };\n\n const handleResend = async () => {\n if (!email) {\n return;\n }\n try {\n await resendVerificationMutation.mutateAsync({ email });\n } catch (_error) {}\n };\n\n if (verified) {\n return (\n <AuthLayout>\n {/*\n The testid stays on a wrapper: e2e treats \"the success alert\" as the\n whole terminal state, which is now the outcome block rather than a\n banner stacked above a header.\n */}\n <div data-testid=\"alert-success\">\n <AuthOutcome\n description={\n <>\n {t('verifyEmail.success.subtitle')}\n <br />\n {t('verifyEmail.success.description')}\n </>\n }\n icon={CircleCheckIcon}\n title={t('verifyEmail.success.title')}\n tone=\"success\"\n >\n <TRButton\n className=\"w-full\"\n data-testid=\"email-verify-go-profile\"\n intent=\"primary\"\n onClick={() => navigate({ to: '/profile' })}\n type=\"button\"\n uiSize=\"lg\"\n >\n {t('verifyEmail.success.goToProfile')}\n </TRButton>\n </AuthOutcome>\n </div>\n </AuthLayout>\n );\n }\n\n return (\n <AuthLayout>\n <AuthPageHeader\n subtitle={t('verifyEmail.subtitle')}\n title={t('verifyEmail.title')}\n />\n\n {email && (\n <Alert icon={MailIcon} type=\"info\">\n <span className=\"flex flex-col gap-tinyrack-3xs text-left\">\n <TRText variant=\"body\" weight=\"strong\">\n {t('register.success.subtitle')}\n </TRText>\n <TRText color=\"muted\" variant=\"caption\">\n {t('register.success.description', { email })}\n </TRText>\n </span>\n </Alert>\n )}\n\n <form\n className=\"flex flex-col gap-tinyrack-lg\"\n onSubmit={handleSubmit(onSubmit)}\n >\n <AuthField\n error={errors.token}\n icon={KeyRoundIcon}\n label={t('verifyEmail.token.label')}\n placeholder={t('verifyEmail.token.placeholder')}\n {...register('token')}\n type=\"text\"\n />\n\n <TRButton\n className=\"w-full\"\n intent=\"primary\"\n loading={verifyEmailMutation.isPending}\n loadingLabel={t('verifyEmail.submitting')}\n type=\"submit\"\n uiSize=\"lg\"\n >\n {t('verifyEmail.submit')}\n </TRButton>\n </form>\n\n {email && (\n <div className=\"flex flex-col gap-tinyrack-md\">\n <LabeledSeparator />\n\n <TRButton\n appearance=\"ghost\"\n className=\"w-full\"\n data-testid=\"email-verify-resend\"\n disabled={resendVerificationMutation.isPending || resendCooldown}\n intent=\"neutral\"\n onClick={handleResend}\n type=\"button\"\n >\n {resendVerificationMutation.isPending ? (\n <>\n <TRSpinner uiSize=\"sm\" />\n {t('verifyEmail.resending')}\n </>\n ) : (\n t('verifyEmail.resend')\n )}\n </TRButton>\n </div>\n )}\n </AuthLayout>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{i as e,n as t,q as n,s as r}from"./createLucideIcon-BPpAIXR_.js";import{Sn as i,wn as a}from"./config-DTQCUlfZ.js";import{L as o,R as s,z as c}from"./index-CS23Ozt6.js";import{t as l}from"./auth-layout-VtpryDof.js";import{n as u,t as d}from"./auth-footer-Cz5ivsDc.js";var f=n();function p(){let{t:n}=e(),p=a({from:`/error/`}),m=p.code||`UNKNOWN_ERROR`;return(0,f.jsxs)(l,{children:[(0,f.jsxs)(o,{description:p.message||n(`error.defaultMessage`),icon:s,title:n(`error.subtitle`),tone:`danger`,children:[(0,f.jsxs)(t,{color:`muted`,variant:`caption`,children:[n(`error.codeLabel`),` `,(0,f.jsx)(`span`,{className:`font-tinyrack-mono`,"data-testid":`error-code`,children:m})]}),(0,f.jsx)(c,{className:`w-full`,intent:`primary`,render:(0,f.jsx)(i,{to:`/login`}),uiSize:`lg`,children:n(`error.goToLogin`)}),(0,f.jsx)(r,{appearance:`ghost`,className:`w-full`,intent:`neutral`,onClick:()=>window.history.back(),type:`button`,children:n(`error.goBack`)})]}),(0,f.jsx)(d,{children:(0,f.jsx)(u,{link:(0,f.jsx)(`a`,{href:`mailto:support@example.com`,children:n(`error.footer.contactSupport`)}),text:n(`error.footer.needHelp`)})})]})}export{p as component};
2
+ //# sourceMappingURL=error-BMXxpgfR.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-BMXxpgfR.js","names":["Link","useSearch","TRButton","TRLinkButton","TRText","CircleAlertIcon","useTranslation","AuthFooter","AuthFooterLink","AuthOutcome","AuthLayout","ErrorPage","t","search","from","errorCode","code","errorMessage","message","window","history","back","component"],"sources":["../../../frontend/src/routes/error/index.tsx?tsr-split=component"],"sourcesContent":["import { createFileRoute, Link, useSearch } from '@tanstack/react-router';\nimport { TRButton } from '@tinyrack/ui/components/button';\nimport { TRLinkButton } from '@tinyrack/ui/components/link-button';\nimport { TRText } from '@tinyrack/ui/components/text';\nimport { CircleAlertIcon } from 'lucide-react';\nimport { useTranslation } from 'react-i18next';\nimport { z } from 'zod';\nimport {\n AuthFooter,\n AuthFooterLink,\n} from '#frontend/components/auth/auth-footer.tsx';\nimport { AuthOutcome } from '#frontend/components/auth/auth-outcome.tsx';\nimport { AuthLayout } from '#frontend/features/layout/auth-layout.tsx';\n\nconst errorSearchSchema = z.object({\n code: z.string().optional(),\n message: z.string().optional(),\n});\n\nexport const Route = createFileRoute('/error/')({\n component: ErrorPage,\n validateSearch: errorSearchSchema,\n});\n\nfunction ErrorPage() {\n const { t } = useTranslation();\n const search = useSearch({ from: '/error/' });\n\n const errorCode = search.code || 'UNKNOWN_ERROR';\n const errorMessage = search.message || t('error.defaultMessage');\n\n return (\n <AuthLayout>\n {/*\n Nothing to do here but report what happened, so this is the shared\n terminal-state composition rather than an alert stacked on a header.\n */}\n <AuthOutcome\n description={errorMessage}\n icon={CircleAlertIcon}\n title={t('error.subtitle')}\n tone=\"danger\"\n >\n {/*\n Mono on the code itself, not the label: a font utility on `TRText`\n loses to the component's own per-variant `font-family` rule, and only\n the identifier needs fixed-width anyway.\n */}\n <TRText color=\"muted\" variant=\"caption\">\n {t('error.codeLabel')}{' '}\n <span className=\"font-tinyrack-mono\" data-testid=\"error-code\">\n {errorCode}\n </span>\n </TRText>\n\n <TRLinkButton\n className=\"w-full\"\n intent=\"primary\"\n render={<Link to=\"/login\" />}\n uiSize=\"lg\"\n >\n {t('error.goToLogin')}\n </TRLinkButton>\n <TRButton\n appearance=\"ghost\"\n className=\"w-full\"\n intent=\"neutral\"\n onClick={() => window.history.back()}\n type=\"button\"\n >\n {t('error.goBack')}\n </TRButton>\n </AuthOutcome>\n\n <AuthFooter>\n <AuthFooterLink\n link={\n <a href=\"mailto:support@example.com\">\n {t('error.footer.contactSupport')}\n </a>\n }\n text={t('error.footer.needHelp')}\n />\n </AuthFooter>\n </AuthLayout>\n );\n}\n"],"mappings":"6RAwBA,SAASW,GAAY,CACnB,GAAM,CAAEC,KAAMN,EAAe,EACvBO,EAASZ,EAAU,CAAEa,KAAM,SAAU,CAAC,EAEtCC,EAAYF,EAAOG,MAAQ,gBAGjC,OACE,EAAA,EAAA,KAAA,CAAC,EAAD,CAAA,SAAA,EAKE,EAAA,EAAA,KAAA,CAAC,EAAD,CACE,YATeH,EAAOK,SAAWN,EAAE,sBAAsB,EAUzD,KAAMP,EACN,MAAOO,EAAE,gBAAgB,EACzB,KAAK,kBAJP,EAWE,EAAA,EAAA,KAAA,CAAC,EAAD,CAAQ,MAAM,QAAQ,QAAQ,mBAA9B,CACGA,EAAE,iBAAiB,EAAG,KACvB,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAU,qBAAqB,cAAY,sBAC9CG,CACG,CAAA,CACA,KAER,EAAA,EAAA,IAAA,CAAC,EAAD,CACE,UAAU,SACV,OAAO,UACP,QAAQ,EAAA,EAAA,IAAA,CAAC,EAAD,CAAM,GAAG,QAAQ,CAAA,EACzB,OAAO,cAENH,EAAE,iBAAiB,CACR,CAAA,GACd,EAAA,EAAA,IAAA,CAAC,EAAD,CACE,WAAW,QACX,UAAU,SACV,OAAO,UACP,YAAeO,OAAOC,QAAQC,KAAK,EACnC,KAAK,kBAEJT,EAAE,cAAc,CACT,CAAA,CACC,KAEb,EAAA,EAAA,IAAA,CAAC,EAAD,CAAA,UACE,EAAA,EAAA,IAAA,CAAC,EAAD,CACE,MACE,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,KAAK,sCACLA,EAAE,6BAA6B,CAC/B,CAAA,EAEL,KAAMA,EAAE,uBAAuB,CAAE,CAAA,CAEzB,CAAA,CACF,CAAA,CAAA,CAEhB"}