@cartanova/qgrid-cli 2.10.9 → 2.11.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 (318) hide show
  1. package/bundle/dist/_virtual/_rolldown/runtime.js +1 -10
  2. package/bundle/dist/application/monit/log-buffer.js +12 -6
  3. package/bundle/dist/application/monit/monit.frame.js +11 -3
  4. package/bundle/dist/application/monit/monit.types.js +1 -1
  5. package/bundle/dist/application/qgrid/conv-routing.js +9 -6
  6. package/bundle/dist/application/qgrid/expired-token-reminder.js +2 -2
  7. package/bundle/dist/application/qgrid/oauth.js +31 -4
  8. package/bundle/dist/application/qgrid/qgrid-image-generation.js +1 -1
  9. package/bundle/dist/application/qgrid/qgrid-response-format.js +22 -20
  10. package/bundle/dist/application/qgrid/qgrid-run-lifecycle.js +43 -34
  11. package/bundle/dist/application/qgrid/qgrid.dispatcher.js +128 -93
  12. package/bundle/dist/application/qgrid/qgrid.frame.js +930 -49
  13. package/bundle/dist/application/qgrid/qgrid.types.js +212 -5
  14. package/bundle/dist/application/qgrid/schema-prompt.js +75 -48
  15. package/bundle/dist/application/qgrid/slack-user-map.js +1 -1
  16. package/bundle/dist/application/qgrid/token-death.js +1 -1
  17. package/bundle/dist/application/qgrid/token-subscriber.js +83 -30
  18. package/bundle/dist/application/qgrid/token-trigger-setup.js +1 -1
  19. package/bundle/dist/application/qgrid/token-window-keepalive.js +8 -6
  20. package/bundle/dist/application/qgrid/tool-emulation-schema.js +13 -13
  21. package/bundle/dist/application/qgrid/tool-emulation.js +19 -15
  22. package/bundle/dist/application/request-log/json-schema-type-text.js +29 -12
  23. package/bundle/dist/application/request-log/request-log.model.js +83 -69
  24. package/bundle/dist/application/request-log/request-log.types.js +8 -2
  25. package/bundle/dist/application/request-log/zod-code-format.js +1 -1
  26. package/bundle/dist/application/request-log-step/request-log-step.model.js +1 -1
  27. package/bundle/dist/application/request-log-step/request-log-step.types.js +1 -1
  28. package/bundle/dist/application/setting/setting.constant.js +1 -1
  29. package/bundle/dist/application/setting/setting.model.js +2 -2
  30. package/bundle/dist/application/setting/setting.store.js +2 -2
  31. package/bundle/dist/application/setting/setting.types.js +1 -1
  32. package/bundle/dist/application/sonamu.generated.js +40 -16
  33. package/bundle/dist/application/sonamu.generated.sso.js +2 -1
  34. package/bundle/dist/application/token/token.model.js +26 -9
  35. package/bundle/dist/application/token/token.types.js +20 -3
  36. package/bundle/dist/i18n/en.js +15 -1
  37. package/bundle/dist/i18n/ko.js +15 -1
  38. package/bundle/dist/i18n/sd.generated.js +2 -1
  39. package/bundle/dist/migrations/20260807133553_manual__backfill_request_log_cost.js +8 -6
  40. package/bundle/dist/migrations/20261018215031_alter_request_logs_add1_alter1.js +15 -0
  41. package/bundle/dist/server-bootstrap.js +4 -2
  42. package/bundle/dist/server-error-handler.js +1 -1
  43. package/bundle/dist/sonamu.config.js +37 -8
  44. package/bundle/dist/startup-migrations.js +17 -7
  45. package/bundle/dist/testing/global.js +1 -1
  46. package/bundle/dist/testing/schema-bench.js +0 -0
  47. package/bundle/dist/testing/test-database-name.js +1 -1
  48. package/bundle/dist/utils/providers/anthropic/anthropic-constants.js +1 -1
  49. package/bundle/dist/utils/providers/anthropic/anthropic-dispatcher.js +11 -5
  50. package/bundle/dist/utils/providers/anthropic/anthropic-quota.js +4 -4
  51. package/bundle/dist/utils/providers/anthropic/anthropic-thinking.js +1 -1
  52. package/bundle/dist/utils/providers/anthropic/claude-session.js +20 -19
  53. package/bundle/dist/utils/providers/anthropic/fence-strip.js +1 -1
  54. package/bundle/dist/utils/providers/anthropic/stream-json-adapter.js +49 -23
  55. package/bundle/dist/utils/providers/common/credentials.js +5 -1
  56. package/bundle/dist/utils/providers/common/effort.js +3 -3
  57. package/bundle/dist/utils/providers/common/model-cost.js +69 -14
  58. package/bundle/dist/utils/providers/common/provider-types.js +29 -1
  59. package/bundle/dist/utils/providers/common/schema-validation.js +78 -40
  60. package/bundle/dist/utils/providers/common/smooth-weighted-round-robin.js +1 -1
  61. package/bundle/dist/utils/providers/common/strictifier.js +62 -43
  62. package/bundle/dist/utils/providers/common/thinking.js +3 -2
  63. package/bundle/dist/utils/providers/common/ttft.js +1 -1
  64. package/bundle/dist/utils/providers/grok/grok-backend-protocol.js +427 -0
  65. package/bundle/dist/utils/providers/grok/grok-constants.js +55 -0
  66. package/bundle/dist/utils/providers/grok/grok-direct-client.js +196 -0
  67. package/bundle/dist/utils/providers/grok/grok-dispatcher.js +1313 -0
  68. package/bundle/dist/utils/providers/grok/grok-headers.js +118 -0
  69. package/bundle/dist/utils/providers/grok/grok-media-client.js +420 -0
  70. package/bundle/dist/utils/providers/grok/grok-models.js +114 -0
  71. package/bundle/dist/utils/providers/grok/grok-oauth.js +455 -0
  72. package/bundle/dist/utils/providers/grok/grok-quota.js +119 -0
  73. package/bundle/dist/utils/providers/grok/grok-refresh.js +192 -0
  74. package/bundle/dist/utils/providers/grok/grok-types.js +186 -0
  75. package/bundle/dist/utils/providers/grok/grok-voice-client.js +199 -0
  76. package/bundle/dist/utils/providers/grok/index.js +11 -0
  77. package/bundle/dist/utils/providers/openai/openai-backend-protocol.js +111 -83
  78. package/bundle/dist/utils/providers/openai/openai-callback-relay.js +3 -2
  79. package/bundle/dist/utils/providers/openai/openai-constants.js +1 -1
  80. package/bundle/dist/utils/providers/openai/openai-direct-client.js +23 -7
  81. package/bundle/dist/utils/providers/openai/openai-dispatcher.js +143 -106
  82. package/bundle/dist/utils/providers/openai/openai-image-generation.js +48 -33
  83. package/bundle/dist/utils/providers/openai/openai-oauth.js +28 -13
  84. package/bundle/dist/utils/providers/openai/openai-quota.js +38 -27
  85. package/bundle/dist/utils/providers/openai/openai-refresh.js +17 -9
  86. package/bundle/dist/utils/providers/openai/openai-sse.js +1 -1
  87. package/bundle/dist/utils/providers/openai/openai-transport-config.js +1 -1
  88. package/bundle/dist/utils/quiet-hours.js +1 -1
  89. package/bundle/dist/utils/slack-notify.js +14 -8
  90. package/bundle/dist/utils/subset-loaders.js +4 -5
  91. package/bundle/src/application/monit/log-buffer.ts +23 -9
  92. package/bundle/src/application/monit/monit.frame.ts +22 -5
  93. package/bundle/src/application/monit/monit.types.ts +6 -0
  94. package/bundle/src/application/qgrid/conv-routing.test.ts +76 -4
  95. package/bundle/src/application/qgrid/conv-routing.ts +35 -9
  96. package/bundle/src/application/qgrid/expired-token-reminder.ts +9 -1
  97. package/bundle/src/application/qgrid/oauth.ts +51 -15
  98. package/bundle/src/application/qgrid/qgrid-image-generation.ts +9 -0
  99. package/bundle/src/application/qgrid/qgrid-response-format.ts +50 -25
  100. package/bundle/src/application/qgrid/qgrid-run-lifecycle.test.ts +33 -0
  101. package/bundle/src/application/qgrid/qgrid-run-lifecycle.ts +87 -40
  102. package/bundle/src/application/qgrid/qgrid.dispatcher.test.ts +97 -0
  103. package/bundle/src/application/qgrid/qgrid.dispatcher.ts +274 -126
  104. package/bundle/src/application/qgrid/qgrid.frame.test.ts +1013 -3
  105. package/bundle/src/application/qgrid/qgrid.frame.ts +1415 -60
  106. package/bundle/src/application/qgrid/qgrid.types.ts +335 -0
  107. package/bundle/src/application/qgrid/schema-prompt.ts +105 -41
  108. package/bundle/src/application/qgrid/slack-user-map.ts +5 -0
  109. package/bundle/src/application/qgrid/token-death.ts +4 -0
  110. package/bundle/src/application/qgrid/token-subscriber.test.ts +21 -19
  111. package/bundle/src/application/qgrid/token-subscriber.ts +186 -53
  112. package/bundle/src/application/qgrid/token-trigger-setup.ts +2 -0
  113. package/bundle/src/application/qgrid/token-window-keepalive.ts +49 -6
  114. package/bundle/src/application/qgrid/tool-emulation-schema.ts +33 -29
  115. package/bundle/src/application/qgrid/tool-emulation.ts +52 -27
  116. package/bundle/src/application/request-log/json-schema-type-text.test.ts +5 -5
  117. package/bundle/src/application/request-log/json-schema-type-text.ts +81 -26
  118. package/bundle/src/application/request-log/request-log.entity.json +8 -0
  119. package/bundle/src/application/request-log/request-log.model.test.ts +111 -4
  120. package/bundle/src/application/request-log/request-log.model.ts +279 -145
  121. package/bundle/src/application/request-log/request-log.types.ts +17 -0
  122. package/bundle/src/application/request-log/zod-code-format.ts +11 -0
  123. package/bundle/src/application/request-log-step/request-log-step.model.ts +1 -0
  124. package/bundle/src/application/request-log-step/request-log-step.types.ts +2 -0
  125. package/bundle/src/application/setting/setting.constant.ts +9 -0
  126. package/bundle/src/application/setting/setting.model.ts +12 -2
  127. package/bundle/src/application/setting/setting.store.ts +5 -1
  128. package/bundle/src/application/setting/setting.types.ts +8 -0
  129. package/bundle/src/application/sonamu.generated.http +135 -0
  130. package/bundle/src/application/sonamu.generated.sso.ts +3 -0
  131. package/bundle/src/application/sonamu.generated.ts +29 -0
  132. package/bundle/src/application/token/token.identity.test.ts +20 -0
  133. package/bundle/src/application/token/token.model.ts +66 -7
  134. package/bundle/src/application/token/token.types.ts +24 -1
  135. package/bundle/src/i18n/en.ts +19 -0
  136. package/bundle/src/i18n/ko.ts +21 -0
  137. package/bundle/src/i18n/sd.generated.ts +24 -2
  138. package/bundle/src/migrations/20260807133553_manual__backfill_request_log_cost.ts +16 -8
  139. package/bundle/src/migrations/20261018215031_alter_request_logs_add1_alter1.ts +15 -0
  140. package/bundle/src/server-bootstrap.ts +4 -2
  141. package/bundle/src/server-error-handler.ts +1 -0
  142. package/bundle/src/sonamu.config.ts +69 -7
  143. package/bundle/src/startup-migrations.ts +27 -9
  144. package/bundle/src/testing/global.ts +20 -0
  145. package/bundle/src/testing/schema-bench.ts +105 -30
  146. package/bundle/src/testing/test-database-name.ts +2 -0
  147. package/bundle/src/utils/providers/anthropic/anthropic-constants.ts +8 -0
  148. package/bundle/src/utils/providers/anthropic/anthropic-dispatcher.ts +41 -6
  149. package/bundle/src/utils/providers/anthropic/anthropic-quota.ts +7 -3
  150. package/bundle/src/utils/providers/anthropic/anthropic-thinking.ts +6 -0
  151. package/bundle/src/utils/providers/anthropic/claude-session.ts +58 -24
  152. package/bundle/src/utils/providers/anthropic/fence-strip.ts +11 -0
  153. package/bundle/src/utils/providers/anthropic/stream-json-adapter.ts +110 -45
  154. package/bundle/src/utils/providers/common/credentials.ts +8 -0
  155. package/bundle/src/utils/providers/common/effort.ts +9 -2
  156. package/bundle/src/utils/providers/common/model-cost.test.ts +48 -1
  157. package/bundle/src/utils/providers/common/model-cost.ts +259 -158
  158. package/bundle/src/utils/providers/common/provider-dispatcher.ts +98 -2
  159. package/bundle/src/utils/providers/common/provider-types.ts +46 -3
  160. package/bundle/src/utils/providers/common/schema-validation.test.ts +5 -1
  161. package/bundle/src/utils/providers/common/schema-validation.ts +124 -56
  162. package/bundle/src/utils/providers/common/smooth-weighted-round-robin.ts +4 -0
  163. package/bundle/src/utils/providers/common/strictifier.ts +185 -59
  164. package/bundle/src/utils/providers/common/thinking.ts +2 -2
  165. package/bundle/src/utils/providers/common/ttft.ts +4 -2
  166. package/bundle/src/utils/providers/grok/__fixtures__/golden-responses-1.0.60.json +164 -0
  167. package/bundle/src/utils/providers/grok/grok-backend-protocol.test.ts +325 -0
  168. package/bundle/src/utils/providers/grok/grok-backend-protocol.ts +721 -0
  169. package/bundle/src/utils/providers/grok/grok-constants.ts +105 -0
  170. package/bundle/src/utils/providers/grok/grok-direct-client.test.ts +179 -0
  171. package/bundle/src/utils/providers/grok/grok-direct-client.ts +313 -0
  172. package/bundle/src/utils/providers/grok/grok-dispatcher.test.ts +1395 -0
  173. package/bundle/src/utils/providers/grok/grok-dispatcher.ts +2105 -0
  174. package/bundle/src/utils/providers/grok/grok-headers.test.ts +149 -0
  175. package/bundle/src/utils/providers/grok/grok-headers.ts +199 -0
  176. package/bundle/src/utils/providers/grok/grok-media-client.test.ts +446 -0
  177. package/bundle/src/utils/providers/grok/grok-media-client.ts +703 -0
  178. package/bundle/src/utils/providers/grok/grok-models.test.ts +96 -0
  179. package/bundle/src/utils/providers/grok/grok-models.ts +161 -0
  180. package/bundle/src/utils/providers/grok/grok-oauth.test.ts +406 -0
  181. package/bundle/src/utils/providers/grok/grok-oauth.ts +771 -0
  182. package/bundle/src/utils/providers/grok/grok-quota.test.ts +142 -0
  183. package/bundle/src/utils/providers/grok/grok-quota.ts +198 -0
  184. package/bundle/src/utils/providers/grok/grok-refresh.test.ts +239 -0
  185. package/bundle/src/utils/providers/grok/grok-refresh.ts +325 -0
  186. package/bundle/src/utils/providers/grok/grok-types.test.ts +252 -0
  187. package/bundle/src/utils/providers/grok/grok-types.ts +374 -0
  188. package/bundle/src/utils/providers/grok/grok-voice-client.test.ts +321 -0
  189. package/bundle/src/utils/providers/grok/grok-voice-client.ts +284 -0
  190. package/bundle/src/utils/providers/grok/index.ts +20 -0
  191. package/bundle/src/utils/providers/openai/openai-backend-protocol.ts +221 -137
  192. package/bundle/src/utils/providers/openai/openai-callback-relay.ts +12 -1
  193. package/bundle/src/utils/providers/openai/openai-constants.ts +2 -0
  194. package/bundle/src/utils/providers/openai/openai-direct-client.ts +111 -21
  195. package/bundle/src/utils/providers/openai/openai-dispatcher.ts +322 -169
  196. package/bundle/src/utils/providers/openai/openai-image-generation.ts +116 -36
  197. package/bundle/src/utils/providers/openai/openai-oauth.ts +48 -20
  198. package/bundle/src/utils/providers/openai/openai-quota.ts +77 -46
  199. package/bundle/src/utils/providers/openai/openai-refresh.ts +42 -18
  200. package/bundle/src/utils/providers/openai/openai-sse.ts +27 -3
  201. package/bundle/src/utils/providers/openai/openai-transport-config.ts +2 -0
  202. package/bundle/src/utils/quiet-hours.ts +12 -1
  203. package/bundle/src/utils/slack-notify.ts +44 -13
  204. package/bundle/src/utils/subset-loaders.ts +7 -7
  205. package/bundle/web-dist/client/assets/clsx-5XM_pHvN.js +1 -0
  206. package/bundle/web-dist/client/assets/index-BA7uQ-6c.js +31 -0
  207. package/bundle/web-dist/client/assets/index-Be2qCZmI.css +1 -0
  208. package/bundle/web-dist/client/assets/logs-C47OJGEI.js +1 -0
  209. package/bundle/web-dist/client/assets/monit-BS9no0dU.js +4 -0
  210. package/bundle/web-dist/client/assets/plus-sdACTfH0.js +1 -0
  211. package/bundle/web-dist/client/assets/refresh-cw-CY8o_1cT.js +1 -0
  212. package/bundle/web-dist/client/assets/request-model-BRtFuZvj.js +1 -0
  213. package/bundle/web-dist/client/assets/routes-kqgkUxE8.js +5 -0
  214. package/bundle/web-dist/client/assets/{services.generated-BsieU37H.js → services.generated-CefiDXEv.js} +5 -5
  215. package/bundle/web-dist/client/assets/settings-DNDvFGSw.js +1 -0
  216. package/bundle/web-dist/client/assets/show-u8Np69q3.js +2 -0
  217. package/bundle/web-dist/client/assets/tokens-QvP410NW.js +1 -0
  218. package/bundle/web-dist/client/assets/total-cost-MnfKU8IN.js +1 -0
  219. package/bundle/web-dist/client/assets/use-oauth-login-flow-Bzdh28Ws.js +1 -0
  220. package/bundle/web-dist/client/assets/use-update-token-mutation-CfJKaxmR.js +1 -0
  221. package/bundle/web-dist/client/assets/vendor-react-CUFFrVN9.js +244 -0
  222. package/bundle/web-dist/client/assets/vendor-tanstack-Bf_jag9G.js +1 -0
  223. package/bundle/web-dist/client/index.html +6 -6
  224. package/bundle/web-dist/server/assets/clsx-D_N5PN_2.js +16 -0
  225. package/bundle/web-dist/server/assets/{lazyRouteComponent-Dtd0NR4r.js → lazyRouteComponent-D8iTIHyn.js} +129 -2
  226. package/bundle/web-dist/server/assets/logs-B3OTd9hy.js +825 -0
  227. package/bundle/web-dist/server/assets/{monit-DvzribSE.js → monit-B2hqorPe.js} +385 -126
  228. package/bundle/web-dist/server/assets/plus-DwG7h9kq.js +28 -0
  229. package/bundle/web-dist/server/assets/{react-dom-B4a6-uuR.js → react-dom-BIYQzBqG.js} +2 -129
  230. package/bundle/web-dist/server/assets/refresh-cw-mMBkwOq0.js +44 -0
  231. package/bundle/web-dist/server/assets/{request-model-CbqfnQOJ.js → request-model-I6OdODSH.js} +15 -6
  232. package/bundle/web-dist/server/assets/{routes-BAPWTizT.js → routes-B95YlUv2.js} +760 -213
  233. package/bundle/web-dist/server/assets/{services.generated-CEbGjsI0.js → services.generated-DQATJ6qf.js} +12821 -12194
  234. package/bundle/web-dist/server/assets/settings-C3gbGk0m.js +830 -0
  235. package/bundle/web-dist/server/assets/{show-CxVZTAdv.js → show-Bxaj3rhH.js} +1355 -419
  236. package/bundle/web-dist/server/assets/tokens-CZjH3cB7.js +1038 -0
  237. package/bundle/web-dist/server/assets/total-cost-fTE9Xy82.js +18 -0
  238. package/bundle/web-dist/server/assets/use-oauth-login-flow-CKDHgc3U.js +2379 -0
  239. package/bundle/web-dist/server/assets/{use-update-token-mutation-CfYmk_4_.js → use-update-token-mutation-BEbgOzaa.js} +1 -1
  240. package/bundle/web-dist/server/entry-server.generated.js +4303 -22810
  241. package/dist/cli.js +9 -9
  242. package/package.json +4 -11
  243. package/postinstall.mjs +12 -0
  244. package/skills/qgrid/SKILL.md +1 -0
  245. package/skills/qgrid/references/cli-env-and-server-boot.md +4 -1
  246. package/skills/qgrid/references/decision-rationale.md +24 -1
  247. package/skills/qgrid/references/grok-runtime.md +89 -0
  248. package/skills/qgrid/references/provider-runtime-differences.md +30 -29
  249. package/skills/qgrid/references/repo-map.md +10 -0
  250. package/skills/qgrid/references/request-log-run-lifecycle.md +1 -1
  251. package/skills/qgrid/references/sonamu-api-web-flow.md +1 -1
  252. package/skills/qgrid/references/token-auth-quota-lifecycle.md +56 -3
  253. package/bundle/dist/node_modules/.pnpm/@jridgewell_sourcemap-codec@1.5.5/node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.js +0 -406
  254. package/bundle/dist/node_modules/.pnpm/@vitest_expect@4.1.10/node_modules/@vitest/expect/dist/index.js +0 -1507
  255. package/bundle/dist/node_modules/.pnpm/@vitest_pretty-format@4.1.10/node_modules/@vitest/pretty-format/dist/index.js +0 -887
  256. package/bundle/dist/node_modules/.pnpm/@vitest_runner@4.1.10/node_modules/@vitest/runner/dist/chunk-artifact.js +0 -2756
  257. package/bundle/dist/node_modules/.pnpm/@vitest_runner@4.1.10/node_modules/@vitest/runner/dist/index.js +0 -8
  258. package/bundle/dist/node_modules/.pnpm/@vitest_runner@4.1.10/node_modules/@vitest/runner/dist/utils.js +0 -8
  259. package/bundle/dist/node_modules/.pnpm/@vitest_snapshot@4.1.10/node_modules/@vitest/snapshot/dist/index.js +0 -922
  260. package/bundle/dist/node_modules/.pnpm/@vitest_spy@4.1.10/node_modules/@vitest/spy/dist/index.js +0 -386
  261. package/bundle/dist/node_modules/.pnpm/@vitest_utils@4.1.10/node_modules/@vitest/utils/dist/chunk-pathe.M-eThtNZ.js +0 -121
  262. package/bundle/dist/node_modules/.pnpm/@vitest_utils@4.1.10/node_modules/@vitest/utils/dist/constants.js +0 -51
  263. package/bundle/dist/node_modules/.pnpm/@vitest_utils@4.1.10/node_modules/@vitest/utils/dist/diff.js +0 -1317
  264. package/bundle/dist/node_modules/.pnpm/@vitest_utils@4.1.10/node_modules/@vitest/utils/dist/display.js +0 -561
  265. package/bundle/dist/node_modules/.pnpm/@vitest_utils@4.1.10/node_modules/@vitest/utils/dist/error.js +0 -40
  266. package/bundle/dist/node_modules/.pnpm/@vitest_utils@4.1.10/node_modules/@vitest/utils/dist/helpers.js +0 -272
  267. package/bundle/dist/node_modules/.pnpm/@vitest_utils@4.1.10/node_modules/@vitest/utils/dist/offset.js +0 -27
  268. package/bundle/dist/node_modules/.pnpm/@vitest_utils@4.1.10/node_modules/@vitest/utils/dist/serialize.js +0 -77
  269. package/bundle/dist/node_modules/.pnpm/@vitest_utils@4.1.10/node_modules/@vitest/utils/dist/source-map.js +0 -381
  270. package/bundle/dist/node_modules/.pnpm/@vitest_utils@4.1.10/node_modules/@vitest/utils/dist/timers.js +0 -51
  271. package/bundle/dist/node_modules/.pnpm/chai@6.2.2/node_modules/chai/index.js +0 -2986
  272. package/bundle/dist/node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/branding.js +0 -10
  273. package/bundle/dist/node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/index.js +0 -109
  274. package/bundle/dist/node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/messages.js +0 -10
  275. package/bundle/dist/node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/overloads.js +0 -10
  276. package/bundle/dist/node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/utils.js +0 -10
  277. package/bundle/dist/node_modules/.pnpm/magic-string@0.30.21/node_modules/magic-string/dist/magic-string.es.js +0 -1126
  278. package/bundle/dist/node_modules/.pnpm/pathe@2.0.3/node_modules/pathe/dist/index.js +0 -21
  279. package/bundle/dist/node_modules/.pnpm/pathe@2.0.3/node_modules/pathe/dist/shared/pathe.M-eThtNZ.js +0 -432
  280. package/bundle/dist/node_modules/.pnpm/tinybench@2.9.0/node_modules/tinybench/dist/index.js +0 -517
  281. package/bundle/dist/node_modules/.pnpm/tinyrainbow@3.1.0/node_modules/tinyrainbow/dist/index.js +0 -101
  282. package/bundle/dist/node_modules/.pnpm/vite@8.0.3_@emnapi_core@1.11.2_@emnapi_runtime@1.11.2_@types_node@25.0.7_esbuild@0.27.4_5b35fc1fb85d2af4d105e0d74f940f50/node_modules/vite/dist/node/module-runner.js +0 -1265
  283. package/bundle/dist/node_modules/.pnpm/vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618/node_modules/vitest/dist/chunks/_commonjsHelpers.D26ty3Ew.js +0 -9
  284. package/bundle/dist/node_modules/.pnpm/vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618/node_modules/vitest/dist/chunks/benchmark.CX_oY03V.js +0 -41
  285. package/bundle/dist/node_modules/.pnpm/vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618/node_modules/vitest/dist/chunks/evaluatedModules.Dg1zASAC.js +0 -19
  286. package/bundle/dist/node_modules/.pnpm/vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618/node_modules/vitest/dist/chunks/index.Chj8NDwU.js +0 -202
  287. package/bundle/dist/node_modules/.pnpm/vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618/node_modules/vitest/dist/chunks/index.DdgEv5B1.js +0 -46
  288. package/bundle/dist/node_modules/.pnpm/vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618/node_modules/vitest/dist/chunks/rpc.MzXet3jl.js +0 -119
  289. package/bundle/dist/node_modules/.pnpm/vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618/node_modules/vitest/dist/chunks/test.DNmyFkvJ.js +0 -3044
  290. package/bundle/dist/node_modules/.pnpm/vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618/node_modules/vitest/dist/chunks/utils.BX5Fg8C4.js +0 -59
  291. package/bundle/dist/node_modules/.pnpm/vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618/node_modules/vitest/dist/index.js +0 -28
  292. package/bundle/dist/testing/setup-mocks.js +0 -16
  293. package/bundle/src/testing/setup-mocks.ts +0 -44
  294. package/bundle/web-dist/client/assets/index-Bw2s88Ot.css +0 -1
  295. package/bundle/web-dist/client/assets/index-CrXKu_J8.js +0 -106
  296. package/bundle/web-dist/client/assets/logs-B2SmWJXA.js +0 -1
  297. package/bundle/web-dist/client/assets/monit-D-JwXXoA.js +0 -1
  298. package/bundle/web-dist/client/assets/plus-B62CuqT8.js +0 -1
  299. package/bundle/web-dist/client/assets/refresh-cw-NNcU0Cmq.js +0 -1
  300. package/bundle/web-dist/client/assets/request-model-CojtinqK.js +0 -1
  301. package/bundle/web-dist/client/assets/routes-C5r4gTvY.js +0 -5
  302. package/bundle/web-dist/client/assets/settings-D3tDSAck.js +0 -1
  303. package/bundle/web-dist/client/assets/show-Cah_kUKC.js +0 -2
  304. package/bundle/web-dist/client/assets/tokens-DU2Iyxxd.js +0 -1
  305. package/bundle/web-dist/client/assets/use-oauth-login-flow-D0UaR9_e.js +0 -1
  306. package/bundle/web-dist/client/assets/use-update-token-mutation-DAq0F8p-.js +0 -1
  307. package/bundle/web-dist/client/assets/vendor-react-DH4kUfK2.js +0 -9
  308. package/bundle/web-dist/client/assets/vendor-tanstack-DJRQAbrY.js +0 -1
  309. package/bundle/web-dist/server/assets/logs-l91avYif.js +0 -509
  310. package/bundle/web-dist/server/assets/plus-KZrECewT.js +0 -19
  311. package/bundle/web-dist/server/assets/refresh-cw-BND93JrF.js +0 -23
  312. package/bundle/web-dist/server/assets/settings-BZR5HSAL.js +0 -461
  313. package/bundle/web-dist/server/assets/tokens-D1hb4eKk.js +0 -448
  314. package/bundle/web-dist/server/assets/use-oauth-login-flow-Cvdy0zF8.js +0 -178
  315. package/dist/cli.d.ts +0 -10
  316. /package/bundle/web-dist/client/assets/{cost-DH2jZbrw.js → cost-DB3HbU7T.js} +0 -0
  317. /package/bundle/web-dist/client/assets/{preload-helper-ca-nBW7U.js → preload-helper-DWTEM3RW.js} +0 -0
  318. /package/bundle/web-dist/server/assets/{cost-eEHeTRT5.js → cost-BC9yzyA9.js} +0 -0
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-Dw2cE7zH.js";import{v as t}from"./vendor-tanstack-Bf_jag9G.js";import{a as n,t as r}from"./vendor-react-CUFFrVN9.js";import{a as i,o as a}from"./services.generated-CefiDXEv.js";import{s as o}from"./index-BA7uQ-6c.js";import{t as s}from"./use-update-token-mutation-CfJKaxmR.js";import{t as c}from"./plus-sdACTfH0.js";var l=e(n()),u=r(),d=`~icons/lucide/eye.jsx`,f=e=>(0,u.jsxDEV)(`svg`,{viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`,...e,children:(0,u.jsxDEV)(`g`,{fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,children:[(0,u.jsxDEV)(`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 19.876 0a1 1 0 0 1 0 .696a10.75 10.75 0 0 1-19.876 0`},void 0,!1,{fileName:d,lineNumber:2,columnNumber:191},void 0),(0,u.jsxDEV)(`circle`,{cx:12,cy:12,r:3},void 0,!1,{fileName:d,lineNumber:2,columnNumber:305},void 0)]},void 0,!0,{fileName:d,lineNumber:2,columnNumber:93},void 0)},void 0,!1,{fileName:d,lineNumber:2,columnNumber:28},void 0),p=`~icons/lucide/eye-off.jsx`,m=e=>(0,u.jsxDEV)(`svg`,{viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`,...e,children:(0,u.jsxDEV)(`g`,{fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,children:[(0,u.jsxDEV)(`path`,{d:`M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575a1 1 0 0 1 0 .696a10.8 10.8 0 0 1-1.444 2.49m-6.41-.679a3 3 0 0 1-4.242-4.242`},void 0,!1,{fileName:p,lineNumber:2,columnNumber:194},void 0),(0,u.jsxDEV)(`path`,{d:`M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 4.446-5.143M2 2l20 20`},void 0,!1,{fileName:p,lineNumber:2,columnNumber:330},void 0)]},void 0,!0,{fileName:p,lineNumber:2,columnNumber:96},void 0)},void 0,!1,{fileName:p,lineNumber:2,columnNumber:31},void 0),h=`~icons/lucide/minus.jsx`,g=e=>(0,u.jsxDEV)(`svg`,{viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`,...e,children:(0,u.jsxDEV)(`path`,{fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M5 12h14`},void 0,!1,{fileName:h,lineNumber:2,columnNumber:95},void 0)},void 0,!1,{fileName:h,lineNumber:2,columnNumber:30},void 0),_=`/home/runner/work/qgrid/qgrid/packages/web/src/components/qgrid/SettingsPanel.tsx`,v=new Map([[`qgrid`,`Qgrid`],[`slack`,`Slack 알림`],[`slackConnection`,`Slack 연결`]]);function y(e){return e?e.length<=12?`•`.repeat(e.length):`${e.slice(0,8)}${`•`.repeat(12)}${e.slice(-4)}`:``}function b({value:e,min:t,max:n,step:r,disabled:i,onChange:a}){let o=Number(e),s=Number.isFinite(o),l=t??-1/0,d=n??1/0,f=e=>{let n=Math.min(Math.max((s?o:t??0)+e,l),d);a(String(Number(n.toFixed(2))))};return(0,u.jsxDEV)(`div`,{className:`inline-flex items-center rounded-lg border border-sand-200/80 bg-white overflow-hidden`,children:[(0,u.jsxDEV)(`button`,{type:`button`,"aria-label":`감소`,onClick:()=>f(-r),disabled:i||s&&o<=l,className:`size-7 grid place-items-center text-sand-500 hover:bg-sand-100 disabled:opacity-30 disabled:hover:bg-transparent transition-colors duration-150`,children:(0,u.jsxDEV)(g,{className:`size-3`},void 0,!1,{fileName:_,lineNumber:64,columnNumber:9},this)},void 0,!1,{fileName:_,lineNumber:57,columnNumber:7},this),(0,u.jsxDEV)(`input`,{value:e,onChange:e=>a(e.target.value),disabled:i,inputMode:`decimal`,className:`w-12 text-center text-[12px] tabular-nums text-sand-800 bg-transparent border-x border-sand-200/80 py-1 focus:outline-none focus:bg-sand-50`},void 0,!1,{fileName:_,lineNumber:66,columnNumber:7},this),(0,u.jsxDEV)(`button`,{type:`button`,"aria-label":`증가`,onClick:()=>f(r),disabled:i||s&&o>=d,className:`size-7 grid place-items-center text-sand-500 hover:bg-sand-100 disabled:opacity-30 disabled:hover:bg-transparent transition-colors duration-150`,children:(0,u.jsxDEV)(c,{className:`size-3`},void 0,!1,{fileName:_,lineNumber:80,columnNumber:9},this)},void 0,!1,{fileName:_,lineNumber:73,columnNumber:7},this)]},void 0,!0,{fileName:_,lineNumber:56,columnNumber:5},this)}function x({value:e,presets:t,disabled:n,onChange:r}){let i=Number(e);return(0,u.jsxDEV)(`div`,{className:`segmented-control inline-flex`,children:t.map(e=>(0,u.jsxDEV)(`button`,{type:`button`,disabled:n,"data-active":i===e,onClick:()=>r(String(e)),className:`rounded-[6px] px-2.5 py-1 text-[11px] font-medium tabular-nums text-sand-500 transition-colors hover:text-sand-800 disabled:opacity-50 data-[active=true]:text-sand-900`,children:e>=60?`${e/60}시간`:`${e}분`},e,!1,{fileName:_,lineNumber:103,columnNumber:9},this))},void 0,!1,{fileName:_,lineNumber:101,columnNumber:5},this)}function S({source:e}){return(0,u.jsxDEV)(`span`,{className:`text-[10px] px-1.5 py-0.5 rounded ${e===`db`?`bg-sienna-50 text-sienna-600`:`bg-sand-100 text-sand-500`}`,children:e===`db`?`저장값`:e===`env`?`환경변수`:`기본값`},void 0,!1,{fileName:_,lineNumber:123,columnNumber:5},this)}function C({on:e,disabled:t,onChange:n}){return(0,u.jsxDEV)(`button`,{type:`button`,role:`switch`,"aria-checked":e,disabled:t,onClick:()=>n(!e),className:`relative inline-flex h-5 w-9 shrink-0 items-center rounded-full transition-colors duration-200 disabled:opacity-50 ${e?`bg-sage-400`:`bg-sand-300`}`,children:(0,u.jsxDEV)(`span`,{className:`inline-block h-3.5 w-3.5 rounded-full bg-white transition-transform duration-200 ${e?`translate-x-4.5`:`translate-x-0.5`}`},void 0,!1,{fileName:_,lineNumber:153,columnNumber:7},this)},void 0,!1,{fileName:_,lineNumber:143,columnNumber:5},this)}function w({item:e,disabled:n=!1}){let[r,a]=(0,l.useState)(null),[s,c]=(0,l.useState)(!1),[d,p]=(0,l.useState)(null),h=t(),g=i.useUpdateSettingMutation(),v=i.useResetSettingMutation(),w=n||g.isPending||v.isPending,T=r??e.value,E=r!==null&&r!==e.value,D=()=>h.invalidateQueries({queryKey:i.getSettingListQueryOptions().queryKey}),O=async t=>{p(null);try{await g.mutateAsync({key:e.key,value:t}),await D(),a(null)}catch(e){p(e instanceof Error?e.message:String(e))}},k=async()=>{p(null);try{await v.mutateAsync({key:e.key}),await D(),a(null)}catch(e){p(e instanceof Error?e.message:String(e))}},A=e.kind===`secret`;return(0,u.jsxDEV)(`div`,{className:`px-4 py-3 sm:px-5`,children:[(0,u.jsxDEV)(`div`,{className:`flex items-start gap-4`,children:[(0,u.jsxDEV)(`div`,{className:`min-w-0 flex-1`,children:[(0,u.jsxDEV)(`div`,{className:`flex items-center gap-2`,children:[(0,u.jsxDEV)(`span`,{className:`text-[13px] text-sand-800`,children:e.label},void 0,!1,{fileName:_,lineNumber:210,columnNumber:13},this),(0,u.jsxDEV)(S,{source:e.source},void 0,!1,{fileName:_,lineNumber:211,columnNumber:13},this),e.applies===`restart`&&(0,u.jsxDEV)(`span`,{className:`text-[10px] text-caution-500`,title:`저장해도 다음 재시작부터 반영됩니다`,children:`재시작 필요`},void 0,!1,{fileName:_,lineNumber:213,columnNumber:15},this)]},void 0,!0,{fileName:_,lineNumber:209,columnNumber:11},this),e.help&&(0,u.jsxDEV)(`p`,{className:`mt-0.5 text-[11px] text-sand-500`,children:e.help},void 0,!1,{fileName:_,lineNumber:221,columnNumber:25},this)]},void 0,!0,{fileName:_,lineNumber:208,columnNumber:9},this),(0,u.jsxDEV)(`div`,{className:`flex items-center gap-1.5 shrink-0`,children:[e.kind===`boolean`&&(0,u.jsxDEV)(C,{on:T===`true`,disabled:w,onChange:e=>void O(String(e))},void 0,!1,{fileName:_,lineNumber:227,columnNumber:13},this),e.kind===`preset`&&(0,u.jsxDEV)(x,{value:T,presets:e.presets,disabled:w,onChange:e=>void O(e)},void 0,!1,{fileName:_,lineNumber:235,columnNumber:13},this),(e.kind===`integer`||e.kind===`number`)&&(0,u.jsxDEV)(b,{value:T,min:e.min,max:e.max,step:e.kind===`integer`?1:.5,disabled:w,onChange:a},void 0,!1,{fileName:_,lineNumber:244,columnNumber:13},this),(e.kind===`string`||A)&&(0,u.jsxDEV)(`div`,{className:`relative`,children:[(0,u.jsxDEV)(`input`,{value:A&&!s?y(T):T,onChange:e=>a(e.target.value),onFocus:()=>A&&c(!0),disabled:w,className:`w-48 sm:w-64 rounded-lg border border-sand-200/80 bg-white py-1.5 pl-2.5 text-[12px] text-sand-800 focus:outline-none focus:border-sienna-300 ${A?`pr-8 font-mono`:`pr-2.5`}`},void 0,!1,{fileName:_,lineNumber:256,columnNumber:15},this),A&&(0,u.jsxDEV)(`button`,{type:`button`,"aria-label":s?`값 숨기기`:`값 보기`,onClick:()=>c(e=>!e),className:`absolute right-1.5 top-1/2 -translate-y-1/2 size-6 grid place-items-center text-sand-400 hover:text-sand-600 transition-colors duration-150`,children:s?(0,u.jsxDEV)(m,{className:`size-3.5`},void 0,!1,{fileName:_,lineNumber:273,columnNumber:21},this):(0,u.jsxDEV)(f,{className:`size-3.5`},void 0,!1,{fileName:_,lineNumber:275,columnNumber:21},this)},void 0,!1,{fileName:_,lineNumber:266,columnNumber:17},this)]},void 0,!0,{fileName:_,lineNumber:255,columnNumber:13},this),E&&(0,u.jsxDEV)(`button`,{type:`button`,onClick:()=>void O(T),disabled:w,className:`px-2.5 py-1.5 text-[11px] font-medium rounded-lg bg-sienna-400 text-white hover:bg-sienna-500 disabled:opacity-50 transition-colors duration-150`,children:g.isPending?`저장 중`:`저장`},void 0,!1,{fileName:_,lineNumber:283,columnNumber:13},this),!E&&e.source===`db`&&(0,u.jsxDEV)(`button`,{type:`button`,title:`저장값을 지웁니다 — 환경변수 또는 기본값으로 돌아갑니다`,onClick:()=>void k(),disabled:w,className:`size-7 grid place-items-center rounded-lg text-sand-400 hover:text-sand-600 hover:bg-sand-100 disabled:opacity-50 transition-colors duration-150`,children:(0,u.jsxDEV)(o,{className:`size-3.5`},void 0,!1,{fileName:_,lineNumber:302,columnNumber:15},this)},void 0,!1,{fileName:_,lineNumber:295,columnNumber:13},this)]},void 0,!0,{fileName:_,lineNumber:224,columnNumber:9},this)]},void 0,!0,{fileName:_,lineNumber:207,columnNumber:7},this),d&&(0,u.jsxDEV)(`p`,{className:`mt-1.5 text-[11px] text-red-500`,children:d},void 0,!1,{fileName:_,lineNumber:308,columnNumber:17},this)]},void 0,!0,{fileName:_,lineNumber:206,columnNumber:5},this)}function T({runnerEnabled:e}){let n=t(),[r,i]=(0,l.useState)(null),o=a.useTokens(`A`,{orderBy:`ord-asc`,num:100}),c=s(),d=(o.data?.rows??[]).filter(e=>e.provider===`anthropic`),f=async(e,t)=>{i(null);try{await c.mutateAsync({id:e,keepaliveEnabled:t}),await n.invalidateQueries({queryKey:[`Token`,`getTokens`]})}catch(e){i(e instanceof Error?e.message:String(e))}};return(0,u.jsxDEV)(`div`,{className:`border-t border-sand-100/80 bg-sand-50/40 px-4 py-3 sm:px-5`,children:[(0,u.jsxDEV)(`div`,{className:`mb-2 flex items-center justify-between gap-3`,children:[(0,u.jsxDEV)(`div`,{children:[(0,u.jsxDEV)(`p`,{className:`text-[11px] font-medium text-sand-600`,children:`토큰별 keepalive`},void 0,!1,{fileName:_,lineNumber:338,columnNumber:11},this),(0,u.jsxDEV)(`p`,{className:`mt-0.5 text-[10px] text-sand-400`,children:e?`켜진 활성 Anthropic 토큰만 5시간 윈도우를 유지합니다`:`이 인스턴스는 keepalive runner로 지정되지 않았습니다`},void 0,!1,{fileName:_,lineNumber:339,columnNumber:11},this)]},void 0,!0,{fileName:_,lineNumber:337,columnNumber:9},this),(0,u.jsxDEV)(`span`,{className:`shrink-0 rounded px-1.5 py-0.5 text-[10px] ${e?`bg-sage-50 text-sage-600`:`bg-sand-100 text-sand-500`}`,children:e?`runner`:`실행 안 함`},void 0,!1,{fileName:_,lineNumber:345,columnNumber:9},this)]},void 0,!0,{fileName:_,lineNumber:336,columnNumber:7},this),o.isLoading?(0,u.jsxDEV)(`p`,{className:`py-2 text-[11px] text-sand-400`,children:`토큰을 불러오는 중…`},void 0,!1,{fileName:_,lineNumber:355,columnNumber:9},this):d.length===0?(0,u.jsxDEV)(`p`,{className:`py-2 text-[11px] text-sand-400`,children:`등록된 Anthropic 토큰이 없습니다`},void 0,!1,{fileName:_,lineNumber:357,columnNumber:9},this):(0,u.jsxDEV)(`div`,{className:`overflow-hidden rounded-lg border border-sand-200/70 bg-white`,children:d.map(t=>(0,u.jsxDEV)(`div`,{className:`flex items-center justify-between gap-4 border-b border-sand-100/80 px-3 py-2 last:border-b-0`,children:[(0,u.jsxDEV)(`div`,{className:`min-w-0`,children:[(0,u.jsxDEV)(`span`,{className:`block truncate text-[12px] text-sand-700`,children:t.name},void 0,!1,{fileName:_,lineNumber:366,columnNumber:17},this),!t.active&&(0,u.jsxDEV)(`span`,{className:`text-[10px] text-sand-400`,children:`토큰 비활성`},void 0,!1,{fileName:_,lineNumber:367,columnNumber:35},this)]},void 0,!0,{fileName:_,lineNumber:365,columnNumber:15},this),(0,u.jsxDEV)(C,{on:t.keepalive_enabled,disabled:!e||c.isPending,onChange:e=>void f(t.id,e)},void 0,!1,{fileName:_,lineNumber:369,columnNumber:15},this)]},t.id,!0,{fileName:_,lineNumber:361,columnNumber:13},this))},void 0,!1,{fileName:_,lineNumber:359,columnNumber:9},this),r&&(0,u.jsxDEV)(`p`,{className:`mt-2 text-[11px] text-red-500`,children:r},void 0,!1,{fileName:_,lineNumber:378,columnNumber:17},this)]},void 0,!0,{fileName:_,lineNumber:335,columnNumber:5},this)}function E(){let[e,t]=(0,l.useState)(null),n=i.useTriggerExpiryReminderMutation(),r=async()=>{t(null);try{let{sent:e}=await n.mutateAsync();t(e===0?`재로그인이 필요한 토큰이 없습니다`:`${e}건 발송`)}catch(e){t(e instanceof Error?e.message:String(e))}};return(0,u.jsxDEV)(`div`,{className:`flex items-center gap-2`,children:[e&&(0,u.jsxDEV)(`span`,{className:`text-[11px] text-sand-500`,children:e},void 0,!1,{fileName:_,lineNumber:402,columnNumber:18},this),(0,u.jsxDEV)(`button`,{type:`button`,onClick:()=>void r(),disabled:n.isPending,className:`px-2 py-1 text-[11px] rounded-lg border border-sand-200/80 text-sand-600 hover:bg-sand-100 disabled:opacity-50 transition-colors duration-150`,children:n.isPending?`보내는 중`:`지금 보내기`},void 0,!1,{fileName:_,lineNumber:403,columnNumber:7},this)]},void 0,!0,{fileName:_,lineNumber:401,columnNumber:5},this)}function D(){let e=i.useSettingList(),{data:t,isLoading:n}=e;if(n)return(0,u.jsxDEV)(`div`,{className:`space-y-4`,children:[0,1].map(e=>(0,u.jsxDEV)(`div`,{className:`panel overflow-hidden`,children:[(0,u.jsxDEV)(`div`,{className:`panel-header px-4 py-2.5 sm:px-5`,children:(0,u.jsxDEV)(`div`,{className:`h-3 w-24 rounded bg-sand-200 animate-pulse`},void 0,!1,{fileName:_,lineNumber:425,columnNumber:15},this)},void 0,!1,{fileName:_,lineNumber:424,columnNumber:13},this),(0,u.jsxDEV)(`div`,{className:`divide-y divide-sand-100/80`,children:[0,1,2].map(e=>(0,u.jsxDEV)(`div`,{className:`px-4 py-3 sm:px-5 flex items-center justify-between gap-4`,children:[(0,u.jsxDEV)(`div`,{className:`h-3 w-40 rounded bg-sand-100 animate-pulse`},void 0,!1,{fileName:_,lineNumber:430,columnNumber:19},this),(0,u.jsxDEV)(`div`,{className:`h-7 w-24 rounded-lg bg-sand-100 animate-pulse`},void 0,!1,{fileName:_,lineNumber:431,columnNumber:19},this)]},e,!0,{fileName:_,lineNumber:429,columnNumber:17},this))},void 0,!1,{fileName:_,lineNumber:427,columnNumber:13},this)]},e,!0,{fileName:_,lineNumber:423,columnNumber:11},this))},void 0,!1,{fileName:_,lineNumber:421,columnNumber:7},this);if(e.isError&&!t)return(0,u.jsxDEV)(`div`,{className:`panel px-5 py-6 text-center`,children:[(0,u.jsxDEV)(`p`,{className:`text-[13px] font-medium text-sand-800`,children:`설정을 불러오지 못했습니다`},void 0,!1,{fileName:_,lineNumber:444,columnNumber:9},this),(0,u.jsxDEV)(`p`,{className:`mt-1 text-[11px] text-red-500`,children:e.error.message},void 0,!1,{fileName:_,lineNumber:445,columnNumber:9},this),(0,u.jsxDEV)(`button`,{type:`button`,onClick:()=>void e.refetch(),disabled:e.isFetching,className:`mt-3 px-3 py-1.5 text-[12px] rounded-lg border border-sand-200 text-sand-600 hover:bg-sand-100 disabled:opacity-50`,children:e.isFetching?`다시 불러오는 중`:`다시 시도`},void 0,!1,{fileName:_,lineNumber:446,columnNumber:9},this)]},void 0,!0,{fileName:_,lineNumber:443,columnNumber:7},this);let r=t?.settings??[],a=t?.runtime??[],o=[...new Set(r.map(e=>e.group))];return(0,u.jsxDEV)(`div`,{className:`space-y-4`,children:[(0,u.jsxDEV)(`div`,{className:`panel overflow-hidden`,children:[(0,u.jsxDEV)(`div`,{className:`panel-header flex items-center justify-between px-4 py-2.5 sm:px-5`,children:[(0,u.jsxDEV)(`span`,{className:`text-[13px] font-medium text-sand-700`,children:`환경`},void 0,!1,{fileName:_,lineNumber:466,columnNumber:11},this),(0,u.jsxDEV)(`span`,{className:`text-[11px] text-sand-400`,children:`기동 시점 값`},void 0,!1,{fileName:_,lineNumber:467,columnNumber:11},this)]},void 0,!0,{fileName:_,lineNumber:465,columnNumber:9},this),(0,u.jsxDEV)(`dl`,{className:`px-4 py-3 sm:px-5 grid grid-cols-1 sm:grid-cols-2 gap-x-8 gap-y-1.5`,children:a.map(e=>(0,u.jsxDEV)(`div`,{className:`flex items-baseline justify-between gap-3 min-w-0`,children:[(0,u.jsxDEV)(`dt`,{className:`text-[11px] text-sand-500 shrink-0`,children:e.label},void 0,!1,{fileName:_,lineNumber:472,columnNumber:15},this),(0,u.jsxDEV)(`dd`,{className:`text-[12px] font-mono text-sand-700 truncate`,children:e.value},void 0,!1,{fileName:_,lineNumber:473,columnNumber:15},this)]},e.label,!0,{fileName:_,lineNumber:471,columnNumber:13},this))},void 0,!1,{fileName:_,lineNumber:469,columnNumber:9},this)]},void 0,!0,{fileName:_,lineNumber:464,columnNumber:7},this),o.map(e=>{let n=r.filter(t=>t.group===e);return(0,u.jsxDEV)(`div`,{className:`panel overflow-hidden`,children:[(0,u.jsxDEV)(`div`,{className:`panel-header flex items-center justify-between px-4 py-2.5 sm:px-5`,children:[(0,u.jsxDEV)(`span`,{className:`text-[13px] font-medium text-sand-700`,children:v.get(e)??e},void 0,!1,{fileName:_,lineNumber:485,columnNumber:15},this),e===`slack`&&(0,u.jsxDEV)(E,{},void 0,!1,{fileName:_,lineNumber:488,columnNumber:37},this)]},void 0,!0,{fileName:_,lineNumber:484,columnNumber:13},this),(0,u.jsxDEV)(`div`,{className:`divide-y divide-sand-100/80`,children:n.map(e=>(0,u.jsxDEV)(`div`,{children:[(0,u.jsxDEV)(w,{item:e,disabled:e.key===`qgrid.tokenWindowKeepaliveEnabled`&&!t?.keepaliveRunnerEnabled},void 0,!1,{fileName:_,lineNumber:493,columnNumber:19},this),e.key===`qgrid.tokenWindowKeepaliveEnabled`&&(0,u.jsxDEV)(T,{runnerEnabled:t?.keepaliveRunnerEnabled??!1},void 0,!1,{fileName:_,lineNumber:501,columnNumber:21},this)]},e.key,!0,{fileName:_,lineNumber:492,columnNumber:17},this))},void 0,!1,{fileName:_,lineNumber:490,columnNumber:13},this)]},e,!0,{fileName:_,lineNumber:483,columnNumber:11},this)})]},void 0,!0,{fileName:_,lineNumber:463,columnNumber:5},this)}var O=`/home/runner/work/qgrid/qgrid/packages/web/src/routes/settings.tsx?tsr-split=component`;function k(){return(0,u.jsxDEV)(`div`,{className:`max-w-4xl mx-auto`,children:(0,u.jsxDEV)(D,{},void 0,!1,{fileName:O,lineNumber:4,columnNumber:7},this)},void 0,!1,{fileName:O,lineNumber:3,columnNumber:10},this)}export{k as component};
@@ -0,0 +1,2 @@
1
+ import{r as e}from"./rolldown-runtime-Dw2cE7zH.js";import{g as t,l as n}from"./vendor-tanstack-Bf_jag9G.js";import{a as r,i,t as a}from"./vendor-react-CUFFrVN9.js";import{C as o,D as s,E as c,T as l,g as u,i as d,r as f,u as p,w as m,x as h}from"./services.generated-CefiDXEv.js";import{c as g,l as _,o as v,t as y}from"./index-BA7uQ-6c.js";import{n as b,t as x}from"./cost-DB3HbU7T.js";import{n as S,t as C}from"./request-model-BRtFuZvj.js";function w(){return w=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},w.apply(null,arguments)}function T(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}var E=e(r()),D=i(),ee={},te=(0,E.createContext)(ee),ne=(e,t)=>w({},e,t),re=()=>(0,E.useContext)(te),ie=(0,E.createContext)(()=>{});ie.displayName=`JVR.DispatchShowTools`;function ae(){return(0,E.useReducer)(ne,ee)}function oe(){return(0,E.useContext)(ie)}var se=e=>{var{initial:t,dispatch:n,children:r}=e;return(0,D.jsx)(te.Provider,{value:t,children:(0,D.jsx)(ie.Provider,{value:n,children:r})})};se.displayName=`JVR.ShowTools`;var ce={},le=(0,E.createContext)(ce),ue=(e,t)=>w({},e,t),O=()=>(0,E.useContext)(le),de=(0,E.createContext)(()=>{});de.displayName=`JVR.DispatchExpands`;function fe(){return(0,E.useReducer)(ue,ce)}function pe(){return(0,E.useContext)(de)}var me=e=>{var{initial:t,dispatch:n,children:r}=e;return(0,D.jsx)(le.Provider,{value:t,children:(0,D.jsx)(de.Provider,{value:n,children:r})})};me.displayName=`JVR.Expands`;var he={Str:{as:`span`,"data-type":`string`,style:{color:`var(--w-rjv-type-string-color, #cb4b16)`},className:`w-rjv-type`,children:`string`},Url:{as:`a`,style:{color:`var(--w-rjv-type-url-color, #0969da)`},"data-type":`url`,className:`w-rjv-type`,children:`url`},Undefined:{style:{color:`var(--w-rjv-type-undefined-color, #586e75)`},as:`span`,"data-type":`undefined`,className:`w-rjv-type`,children:`undefined`},Null:{style:{color:`var(--w-rjv-type-null-color, #d33682)`},as:`span`,"data-type":`null`,className:`w-rjv-type`,children:`null`},Map:{style:{color:`var(--w-rjv-type-map-color, #268bd2)`,marginRight:3},as:`span`,"data-type":`map`,className:`w-rjv-type`,children:`Map`},Nan:{style:{color:`var(--w-rjv-type-nan-color, #859900)`},as:`span`,"data-type":`nan`,className:`w-rjv-type`,children:`NaN`},Bigint:{style:{color:`var(--w-rjv-type-bigint-color, #268bd2)`},as:`span`,"data-type":`bigint`,className:`w-rjv-type`,children:`bigint`},Int:{style:{color:`var(--w-rjv-type-int-color, #268bd2)`},as:`span`,"data-type":`int`,className:`w-rjv-type`,children:`int`},Set:{style:{color:`var(--w-rjv-type-set-color, #268bd2)`,marginRight:3},as:`span`,"data-type":`set`,className:`w-rjv-type`,children:`Set`},Float:{style:{color:`var(--w-rjv-type-float-color, #859900)`},as:`span`,"data-type":`float`,className:`w-rjv-type`,children:`float`},True:{style:{color:`var(--w-rjv-type-boolean-color, #2aa198)`},as:`span`,"data-type":`bool`,className:`w-rjv-type`,children:`bool`},False:{style:{color:`var(--w-rjv-type-boolean-color, #2aa198)`},as:`span`,"data-type":`bool`,className:`w-rjv-type`,children:`bool`},Date:{style:{color:`var(--w-rjv-type-date-color, #268bd2)`},as:`span`,"data-type":`date`,className:`w-rjv-type`,children:`date`}},ge=(0,E.createContext)(he),_e=(e,t)=>w({},e,t),k=()=>(0,E.useContext)(ge),ve=(0,E.createContext)(()=>{});ve.displayName=`JVR.DispatchTypes`;function ye(){return(0,E.useReducer)(_e,he)}function be(){return(0,E.useContext)(ve)}function xe(e){var{initial:t,dispatch:n,children:r}=e;return(0,D.jsx)(ge.Provider,{value:t,children:(0,D.jsx)(ve.Provider,{value:n,children:r})})}xe.displayName=`JVR.Types`;var Se=[`style`];function Ce(e){var{style:t}=e,n=T(e,Se);return(0,D.jsx)(`svg`,w({viewBox:`0 0 24 24`,fill:`var(--w-rjv-arrow-color, currentColor)`,style:w({cursor:`pointer`,height:`1em`,width:`1em`,userSelect:`none`,display:`inline-flex`},t)},n,{children:(0,D.jsx)(`path`,{d:`M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z`})}))}Ce.displayName=`JVR.TriangleArrow`;var we={Arrow:{as:`span`,className:`w-rjv-arrow`,style:{transform:`rotate(0deg)`,transition:`all 0.3s`},children:(0,D.jsx)(Ce,{})},Colon:{as:`span`,style:{color:`var(--w-rjv-colon-color, var(--w-rjv-color))`,marginLeft:0,marginRight:2},className:`w-rjv-colon`,children:`:`},Quote:{as:`span`,style:{color:`var(--w-rjv-quotes-color, #236a7c)`},className:`w-rjv-quotes`,children:`"`},ValueQuote:{as:`span`,style:{color:`var(--w-rjv-quotes-string-color, #cb4b16)`},className:`w-rjv-quotes`,children:`"`},BracketsLeft:{as:`span`,style:{color:`var(--w-rjv-brackets-color, #236a7c)`},className:`w-rjv-brackets-start`,children:`[`},BracketsRight:{as:`span`,style:{color:`var(--w-rjv-brackets-color, #236a7c)`},className:`w-rjv-brackets-end`,children:`]`},BraceLeft:{as:`span`,style:{color:`var(--w-rjv-curlybraces-color, #236a7c)`},className:`w-rjv-curlybraces-start`,children:`{`},BraceRight:{as:`span`,style:{color:`var(--w-rjv-curlybraces-color, #236a7c)`},className:`w-rjv-curlybraces-end`,children:`}`}},Te=(0,E.createContext)(we),Ee=(e,t)=>w({},e,t),A=()=>(0,E.useContext)(Te),De=(0,E.createContext)(()=>{});De.displayName=`JVR.DispatchSymbols`;function Oe(){return(0,E.useReducer)(Ee,we)}function ke(){return(0,E.useContext)(De)}var Ae=e=>{var{initial:t,dispatch:n,children:r}=e;return(0,D.jsx)(Te.Provider,{value:t,children:(0,D.jsx)(De.Provider,{value:n,children:r})})};Ae.displayName=`JVR.Symbols`;var je={Copied:{className:`w-rjv-copied`,style:{height:`1em`,width:`1em`,cursor:`pointer`,verticalAlign:`middle`,marginLeft:5}},CountInfo:{as:`span`,className:`w-rjv-object-size`,style:{color:`var(--w-rjv-info-color, #0000004d)`,paddingLeft:8,fontStyle:`italic`}},CountInfoExtra:{as:`span`,className:`w-rjv-object-extra`,style:{paddingLeft:8}},Ellipsis:{as:`span`,style:{cursor:`pointer`,color:`var(--w-rjv-ellipsis-color, #cb4b16)`,userSelect:`none`},className:`w-rjv-ellipsis`,children:`...`},Row:{as:`div`,className:`w-rjv-line`},KeyName:{as:`span`,className:`w-rjv-object-key`}},Me=(0,E.createContext)(je),Ne=(e,t)=>w({},e,t),j=()=>(0,E.useContext)(Me),M=(0,E.createContext)(()=>{});M.displayName=`JVR.DispatchSection`;function Pe(){return(0,E.useReducer)(Ne,je)}function Fe(){return(0,E.useContext)(M)}var Ie=e=>{var{initial:t,dispatch:n,children:r}=e;return(0,D.jsx)(Me.Provider,{value:t,children:(0,D.jsx)(M.Provider,{value:n,children:r})})};Ie.displayName=`JVR.Section`;var Le={objectSortKeys:!1,indentWidth:15},Re=(0,E.createContext)(Le);Re.displayName=`JVR.Context`;var ze=(0,E.createContext)(()=>{});ze.displayName=`JVR.DispatchContext`;function Be(e,t){return w({},e,t)}var N=()=>(0,E.useContext)(Re),Ve=e=>{var{children:t,initialState:n,initialTypes:r}=e,[i,a]=(0,E.useReducer)(Be,Object.assign({},Le,n)),[o,s]=ae(),[c,l]=fe(),[u,d]=ye(),[f,p]=Oe(),[m,h]=Pe();return(0,E.useEffect)(()=>a(w({},n)),[n]),(0,D.jsx)(Re.Provider,{value:i,children:(0,D.jsx)(ze.Provider,{value:a,children:(0,D.jsx)(se,{initial:o,dispatch:s,children:(0,D.jsx)(me,{initial:c,dispatch:l,children:(0,D.jsx)(xe,{initial:w({},u,r),dispatch:d,children:(0,D.jsx)(Ae,{initial:f,dispatch:p,children:(0,D.jsx)(Ie,{initial:m,dispatch:h,children:t})})})})})})})};Ve.displayName=`JVR.Provider`;function He(e){if(e==null)throw TypeError(`Cannot destructure `+e)}var Ue=[`isNumber`,`value`,`parentValue`,`keyName`,`keys`],We=[`as`,`render`],Ge=[`as`,`render`],Ke=[`as`,`render`],qe=[`as`,`style`,`render`],Je=[`as`,`render`],Ye=[`as`,`render`],Xe=[`as`,`render`],Ze=[`as`,`render`],Qe=e=>{var{Quote:t={}}=A(),{isNumber:n,value:r,parentValue:i,keyName:a,keys:o}=e,s=T(e,Ue);if(n)return null;var{as:c,render:l}=t,u=T(t,We),d=c||`span`,f=w({},s,u);return typeof f.children==`string`&&(f.children=f.children.trim()||void 0),l&&typeof l==`function`&&l(f,{value:r,parentValue:i,keyName:a,keys:o||(a?[a]:[])})||(0,D.jsx)(d,w({},f))};Qe.displayName=`JVR.Quote`;var P=e=>{var{ValueQuote:t={}}=A(),n=w({},(He(e),e)),{as:r,render:i}=t,a=T(t,Ge),o=r||`span`,s=w({},n,a);return i&&typeof i==`function`&&i(s,{})||(0,D.jsx)(o,w({},s))};P.displayName=`JVR.ValueQuote`;var $e=e=>{var{value:t,parentValue:n,keyName:r,keys:i}=e,{Colon:a={}}=A(),{as:o,render:s}=a,c=T(a,Ke),l=o||`span`;return s&&typeof s==`function`&&s(c,{value:t,parentValue:n,keyName:r,keys:i||(r?[r]:[])})||(0,D.jsx)(l,w({},c))};$e.displayName=`JVR.Colon`;var et=e=>{var{Arrow:t={}}=A(),n=O(),{expandKey:r,style:i,value:a,parentValue:o,keyName:s,keys:c}=e,l=!!n[r],{as:u,style:d,render:f}=t,p=T(t,qe),m=u||`span`,h=f&&typeof f==`function`,g=w({},p,{"data-expanded":l,style:w({},d,i)});return h&&f(g,{value:a,parentValue:o,keyName:s,keys:c||(s?[s]:[])})||(0,D.jsx)(m,w({},p,{style:w({},d,i)}))};et.displayName=`JVR.Arrow`;var tt=e=>{var{isBrackets:t,value:n,parentValue:r,keyName:i,keys:a}=e,{BracketsLeft:o={},BraceLeft:s={}}=A(),c={value:n,parentValue:r,keyName:i,keys:a||(i?[i]:[])};if(t){var{as:l,render:u}=o,d=T(o,Je),f=l||`span`;return u&&typeof u==`function`&&u(d,c)||(0,D.jsx)(f,w({},d))}var{as:p,render:m}=s,h=T(s,Ye),g=p||`span`;return m&&typeof m==`function`&&m(h,c)||(0,D.jsx)(g,w({},h))};tt.displayName=`JVR.BracketsOpen`;var nt=e=>{var{isBrackets:t,isVisiable:n,value:r,parentValue:i,keyName:a,keys:o}=e,s={value:r,parentValue:i,keyName:a,keys:o||(a?[a]:[])};if(!n)return null;var{BracketsRight:c={},BraceRight:l={}}=A();if(t){var{as:u,render:d}=c,f=T(c,Xe),p=u||`span`;return d&&typeof d==`function`&&d(f,s)||(0,D.jsx)(p,w({},f))}var{as:m,render:h}=l,g=T(l,Ze),_=m||`span`;return h&&typeof h==`function`&&h(g,s)||(0,D.jsx)(_,w({},g))};nt.displayName=`JVR.BracketsClose`;var rt=e=>{var{keyName:t,value:n,expandKey:r,parentValue:i,level:a,keys:o=[]}=e,s=O(),{collapsed:c,shouldExpandNodeInitially:l}=N(),u=typeof c==`boolean`?c:typeof c==`number`?a>c:!1,d=s[r]??(l?!1:u),f=l&&l(!d,{value:n,keys:o,level:a,keyName:t,parentValue:i});if(l&&c===!1){if(s[r]===void 0&&!f)return null}else if(s[r]===void 0&&f)return null;var p=Object.keys(n).length;if(d||p===0)return null;var m={paddingLeft:4},h={keyName:t,value:n,keys:o,parentValue:i},g=Array.isArray(n),_=n instanceof Set;return(0,D.jsx)(`div`,{style:m,children:(0,D.jsx)(nt,w({isBrackets:g||_},h,{isVisiable:!0}))})};rt.displayName=`JVR.NestedClose`;var it=[`as`,`render`],at=[`as`,`render`],ot=[`as`,`render`],st=[`as`,`render`],ct=[`as`,`render`],lt=[`as`,`render`],ut=[`as`,`render`],dt=[`as`,`render`],ft=[`as`,`render`],pt=[`as`,`render`],mt=[`as`,`render`],ht=[`as`,`render`],gt=[`as`,`render`],_t=e=>{if(e===void 0)return`0n`;if(typeof e==`string`)try{e=BigInt(e)}catch{return`0n`}return e?e.toString()+`n`:`0n`},vt=e=>{var{value:t,keyName:n}=e,{Set:r={},displayDataTypes:i}=k();if(!(t instanceof Set)||!i)return null;var{as:a,render:o}=r,s=T(r,it);return o&&typeof o==`function`&&o(s,{type:`type`,value:t,keyName:n})||(0,D.jsx)(a||`span`,w({},s))};vt.displayName=`JVR.SetComp`;var yt=e=>{var{value:t,keyName:n}=e,{Map:r={},displayDataTypes:i}=k();if(!(t instanceof Map)||!i)return null;var{as:a,render:o}=r,s=T(r,at);return o&&typeof o==`function`&&o(s,{type:`type`,value:t,keyName:n})||(0,D.jsx)(a||`span`,w({},s))};yt.displayName=`JVR.MapComp`;var F={opacity:.75,paddingRight:4},bt=e=>{var{children:t=``,keyName:n,keys:r}=e,{Str:i={},displayDataTypes:a}=k(),{shortenTextAfterLength:o=30,stringEllipsis:s=`...`}=N(),{as:c,render:l}=i,u=T(i,ot),d=t,[f,p]=(0,E.useState)(o&&d.length>o);(0,E.useEffect)(()=>p(o&&d.length>o),[o]);var m=c||`span`,h=w({},F,i.style||{});o>0&&(u.style=w({},u.style,{cursor:d.length<=o?`initial`:`pointer`}),d.length>o&&(u.onClick=()=>{p(!f)}));var g=f?``+d.slice(0,o)+s:d,_=l&&typeof l==`function`,v=_&&l(w({},u,{style:h}),{type:`type`,value:t,keyName:n,keys:r}),y=f?`w-rjv-value w-rjv-value-short`:`w-rjv-value`,b=_&&l(w({},u,{children:g,className:y}),{type:`value`,value:t,keyName:n,keys:r});return(0,D.jsxs)(E.Fragment,{children:[a&&(v||(0,D.jsx)(m,w({},u,{style:h}))),b||(0,D.jsxs)(E.Fragment,{children:[(0,D.jsx)(P,{}),(0,D.jsx)(m,w({},u,{className:y,children:g})),(0,D.jsx)(P,{})]})]})};bt.displayName=`JVR.TypeString`;var xt=e=>{var{children:t,keyName:n,keys:r}=e,{True:i={},displayDataTypes:a}=k(),{as:o,render:s}=i,c=T(i,st),l=o||`span`,u=w({},F,i.style||{}),d=s&&typeof s==`function`,f=d&&s(w({},c,{style:u}),{type:`type`,value:t,keyName:n,keys:r}),p=d&&s(w({},c,{children:t,className:`w-rjv-value`}),{type:`value`,value:t,keyName:n,keys:r});return(0,D.jsxs)(E.Fragment,{children:[a&&(f||(0,D.jsx)(l,w({},c,{style:u}))),p||(0,D.jsx)(l,w({},c,{className:`w-rjv-value`,children:t?.toString()}))]})};xt.displayName=`JVR.TypeTrue`;var St=e=>{var{children:t,keyName:n,keys:r}=e,{False:i={},displayDataTypes:a}=k(),{as:o,render:s}=i,c=T(i,ct),l=o||`span`,u=w({},F,i.style||{}),d=s&&typeof s==`function`,f=d&&s(w({},c,{style:u}),{type:`type`,value:t,keyName:n,keys:r}),p=d&&s(w({},c,{children:t,className:`w-rjv-value`}),{type:`value`,value:t,keyName:n,keys:r});return(0,D.jsxs)(E.Fragment,{children:[a&&(f||(0,D.jsx)(l,w({},c,{style:u}))),p||(0,D.jsx)(l,w({},c,{className:`w-rjv-value`,children:t?.toString()}))]})};St.displayName=`JVR.TypeFalse`;var Ct=e=>{var{children:t,keyName:n,keys:r}=e,{Float:i={},displayDataTypes:a}=k(),{as:o,render:s}=i,c=T(i,lt),l=o||`span`,u=w({},F,i.style||{}),d=s&&typeof s==`function`,f=d&&s(w({},c,{style:u}),{type:`type`,value:t,keyName:n,keys:r}),p=d&&s(w({},c,{children:t,className:`w-rjv-value`}),{type:`value`,value:t,keyName:n,keys:r});return(0,D.jsxs)(E.Fragment,{children:[a&&(f||(0,D.jsx)(l,w({},c,{style:u}))),p||(0,D.jsx)(l,w({},c,{className:`w-rjv-value`,children:t?.toString()}))]})};Ct.displayName=`JVR.TypeFloat`;var wt=e=>{var{children:t,keyName:n,keys:r}=e,{Int:i={},displayDataTypes:a}=k(),{as:o,render:s}=i,c=T(i,ut),l=o||`span`,u=w({},F,i.style||{}),d=s&&typeof s==`function`,f=d&&s(w({},c,{style:u}),{type:`type`,value:t,keyName:n,keys:r}),p=d&&s(w({},c,{children:t,className:`w-rjv-value`}),{type:`value`,value:t,keyName:n,keys:r});return(0,D.jsxs)(E.Fragment,{children:[a&&(f||(0,D.jsx)(l,w({},c,{style:u}))),p||(0,D.jsx)(l,w({},c,{className:`w-rjv-value`,children:t?.toString()}))]})};wt.displayName=`JVR.TypeInt`;var Tt=e=>{var{children:t,keyName:n,keys:r}=e,{Bigint:i={},displayDataTypes:a}=k(),{as:o,render:s}=i,c=T(i,dt),l=o||`span`,u=w({},F,i.style||{}),d=s&&typeof s==`function`,f=d&&s(w({},c,{style:u}),{type:`type`,value:t,keyName:n,keys:r}),p=d&&s(w({},c,{children:t,className:`w-rjv-value`}),{type:`value`,value:t,keyName:n,keys:r});return(0,D.jsxs)(E.Fragment,{children:[a&&(f||(0,D.jsx)(l,w({},c,{style:u}))),p||(0,D.jsx)(l,w({},c,{className:`w-rjv-value`,children:_t(t?.toString())}))]})};Tt.displayName=`JVR.TypeFloat`;var Et=e=>{var{children:t,keyName:n,keys:r}=e,{Url:i={},displayDataTypes:a}=k(),{as:o,render:s}=i,c=T(i,ft),l=o||`span`,u=w({},F,i.style),d=s&&typeof s==`function`,f=d&&s(w({},c,{style:u}),{type:`type`,value:t,keyName:n,keys:r}),p=d&&s(w({},c,{children:t?.href,className:`w-rjv-value`}),{type:`value`,value:t,keyName:n,keys:r});return(0,D.jsxs)(E.Fragment,{children:[a&&(f||(0,D.jsx)(l,w({},c,{style:u}))),p||(0,D.jsxs)(`a`,w({href:t?.href,target:`_blank`},c,{className:`w-rjv-value`,children:[(0,D.jsx)(P,{}),t?.href,(0,D.jsx)(P,{})]}))]})};Et.displayName=`JVR.TypeUrl`;var Dt=e=>{var{children:t,keyName:n,keys:r}=e,{Date:i={},displayDataTypes:a}=k(),{as:o,render:s}=i,c=T(i,pt),l=o||`span`,u=w({},F,i.style||{}),d=s&&typeof s==`function`,f=d&&s(w({},c,{style:u}),{type:`type`,value:t,keyName:n,keys:r}),p=t instanceof Date?t.toLocaleString():t,m=d&&s(w({},c,{children:p,className:`w-rjv-value`}),{type:`value`,value:t,keyName:n,keys:r});return(0,D.jsxs)(E.Fragment,{children:[a&&(f||(0,D.jsx)(l,w({},c,{style:u}))),m||(0,D.jsx)(l,w({},c,{className:`w-rjv-value`,children:p}))]})};Dt.displayName=`JVR.TypeDate`;var Ot=e=>{var{children:t,keyName:n,keys:r}=e,{Undefined:i={},displayDataTypes:a}=k(),{as:o,render:s}=i,c=T(i,mt),l=o||`span`,u=w({},F,i.style||{}),d=s&&typeof s==`function`,f=d&&s(w({},c,{style:u}),{type:`type`,value:t,keyName:n,keys:r}),p=d&&s(w({},c,{children:t,className:`w-rjv-value`}),{type:`value`,value:t,keyName:n,keys:r});return(0,D.jsxs)(E.Fragment,{children:[a&&(f||(0,D.jsx)(l,w({},c,{style:u}))),p]})};Ot.displayName=`JVR.TypeUndefined`;var kt=e=>{var{children:t,keyName:n,keys:r}=e,{Null:i={},displayDataTypes:a}=k(),{as:o,render:s}=i,c=T(i,ht),l=o||`span`,u=w({},F,i.style||{}),d=s&&typeof s==`function`,f=d&&s(w({},c,{style:u}),{type:`type`,value:t,keyName:n,keys:r}),p=d&&s(w({},c,{children:t,className:`w-rjv-value`}),{type:`value`,value:t,keyName:n,keys:r});return(0,D.jsxs)(E.Fragment,{children:[a&&(f||(0,D.jsx)(l,w({},c,{style:u}))),p]})};kt.displayName=`JVR.TypeNull`;var At=e=>{var{children:t,keyName:n,keys:r}=e,{Nan:i={},displayDataTypes:a}=k(),{as:o,render:s}=i,c=T(i,gt),l=o||`span`,u=w({},F,i.style||{}),d=s&&typeof s==`function`,f=d&&s(w({},c,{style:u}),{type:`type`,value:t,keyName:n,keys:r}),p=d&&s(w({},c,{children:t?.toString(),className:`w-rjv-value`}),{type:`value`,value:t,keyName:n,keys:r});return(0,D.jsxs)(E.Fragment,{children:[a&&(f||(0,D.jsx)(l,w({},c,{style:u}))),p]})};At.displayName=`JVR.TypeNan`;var jt=e=>Number(e)===e&&e%1!=0||isNaN(e),Mt=e=>{var{value:t,keyName:n,keys:r}=e,i={keyName:n,keys:r};return t instanceof URL?(0,D.jsx)(Et,w({},i,{children:t})):typeof t==`string`?(0,D.jsx)(bt,w({},i,{children:t})):t===!0?(0,D.jsx)(xt,w({},i,{children:t})):t===!1?(0,D.jsx)(St,w({},i,{children:t})):t===null?(0,D.jsx)(kt,w({},i,{children:t})):t===void 0?(0,D.jsx)(Ot,w({},i,{children:t})):t instanceof Date?(0,D.jsx)(Dt,w({},i,{children:t})):typeof t==`number`&&isNaN(t)?(0,D.jsx)(At,w({},i,{children:t})):typeof t==`number`&&jt(t)?(0,D.jsx)(Ct,w({},i,{children:t})):typeof t==`bigint`?(0,D.jsx)(Tt,w({},i,{children:t})):typeof t==`number`?(0,D.jsx)(wt,w({},i,{children:t})):null};Mt.displayName=`JVR.Value`;function I(e,t,n){var r=ke(),i=w({},e,t,{className:[e.className,t.className].filter(Boolean).join(` `),style:w({},e.style,t.style),children:t.children||e.children});(0,E.useEffect)(()=>r({[n]:i}),[t])}function L(e,t,n){var r=be(),i=w({},e,t,{className:[e.className,t.className].filter(Boolean).join(` `),style:w({},e.style,t.style),children:t.children||e.children});(0,E.useEffect)(()=>r({[n]:i}),[t])}function R(e,t,n){var r=Fe(),i=w({},e,t,{className:[e.className,t.className].filter(Boolean).join(` `),style:w({},e.style,t.style),children:t.children||e.children});(0,E.useEffect)(()=>r({[n]:i}),[t])}var Nt=[`as`,`render`],Pt=e=>{var{KeyName:t={}}=j();return R(t,e,`KeyName`),null};Pt.displayName=`JVR.KeyName`;var Ft=e=>{var{children:t,value:n,parentValue:r,keyName:i,keys:a}=e,o={color:typeof t==`number`?`var(--w-rjv-key-number, #268bd2)`:`var(--w-rjv-key-string, #002b36)`},{KeyName:s={}}=j(),{as:c,render:l}=s,u=T(s,Nt);u.style=w({},u.style,o);var d=c||`span`;return l&&typeof l==`function`&&l(w({},u,{children:t}),{value:n,parentValue:r,keyName:i,keys:a||(i?[i]:[])})||(0,D.jsx)(d,w({},u,{children:t}))};Ft.displayName=`JVR.KeyNameComp`;var It=[`children`,`value`,`parentValue`,`keyName`,`keys`],Lt=[`as`,`render`,`children`],Rt=e=>{var{Row:t={}}=j();return R(t,e,`Row`),null};Rt.displayName=`JVR.Row`;var zt=e=>{var{children:t,value:n,parentValue:r,keyName:i,keys:a}=e,o=T(e,It),{Row:s={}}=j(),{as:c,render:l}=s,u=T(s,Lt),d=c||`div`;return l&&typeof l==`function`&&l(w({},o,u,{children:t}),{value:n,keyName:i,parentValue:r,keys:a})||(0,D.jsx)(d,w({},o,u,{children:t}))};zt.displayName=`JVR.RowComp`;function Bt(e){var t=(0,E.useRef)();return(0,E.useEffect)(()=>{t.current=e}),t.current}function Vt(e){var{value:t,highlightUpdates:n,highlightContainer:r}=e,i=Bt(t),a=(0,E.useMemo)(()=>{if(!n||i===void 0)return!1;if(typeof t!=typeof i)return!0;if(typeof t==`number`)return isNaN(t)&&isNaN(i)?!1:t!==i;if(Array.isArray(t)!==Array.isArray(i))return!0;if(typeof t==`object`||typeof t==`function`)return!1;if(t!==i)return!0},[n,t]);(0,E.useEffect)(()=>{r&&r.current&&a&&`animate`in r.current&&r.current.animate([{backgroundColor:`var(--w-rjv-update-color, #ebcb8b)`},{backgroundColor:``}],{duration:1e3,easing:`ease-in`})},[a,t,r])}var Ht=[`keyName`,`value`,`parentValue`,`expandKey`,`keys`,`beforeCopy`],Ut=[`as`,`render`],z=e=>{var{keyName:t,value:n,parentValue:r,expandKey:i,keys:a,beforeCopy:o}=e,s=T(e,Ht),{onCopied:c,enableClipboard:l,beforeCopy:u}=N(),d=re()[i],[f,p]=(0,E.useState)(!1),{Copied:m={}}=j(),h=m?.beforeCopy;if(l===!1||!d)return null;var g={style:{display:`inline-flex`},fill:f?`var(--w-rjv-copied-success-color, #28a745)`:`var(--w-rjv-copied-color, currentColor)`,onClick:e=>{e.stopPropagation();var s=``;s=typeof n==`number`&&n===1/0?`Infinity`:typeof n==`number`&&isNaN(n)?`NaN`:typeof n==`bigint`?_t(n):n instanceof Date?n.toLocaleString():JSON.stringify(n,(e,t)=>typeof t==`bigint`?_t(t):t,2);var l=o||h||u;l&&typeof l==`function`&&(s=l(s,t,n,r,i,a)),c&&c(s,n),p(!0),(navigator.clipboard||{writeText(e){return new Promise((t,n)=>{var r=document.createElement(`textarea`);r.style.position=`absolute`,r.style.opacity=`0`,r.style.left=`-99999999px`,r.value=e,document.body.appendChild(r),r.select(),document.execCommand(`copy`)?t():n(),r.remove()})}}).writeText(s).then(()=>{var e=setTimeout(()=>{p(!1),clearTimeout(e)},3e3)}).catch(e=>{})}},{render:_}=m,v=T(m,Ut),y=w({},v,s,g,{style:w({},v.style,s.style,g.style)});return _&&typeof _==`function`&&_(w({},y,{"data-copied":f}),{value:n,keyName:t,keys:a,parentValue:r})||(f?(0,D.jsx)(`svg`,w({viewBox:`0 0 32 36`},y,{children:(0,D.jsx)(`path`,{d:`M27.5,33 L2.5,33 L2.5,12.5 L27.5,12.5 L27.5,15.2249049 C29.1403264,13.8627542 29.9736597,13.1778155 30,13.1700887 C30,11.9705278 30,10.0804982 30,7.5 C30,6.1 28.9,5 27.5,5 L20,5 C20,2.2 17.8,0 15,0 C12.2,0 10,2.2 10,5 L2.5,5 C1.1,5 0,6.1 0,7.5 L0,33 C0,34.4 1.1,36 2.5,36 L27.5,36 C28.9,36 30,34.4 30,33 L30,26.1114493 L27.5,28.4926435 L27.5,33 Z M7.5,7.5 L10,7.5 C10,7.5 12.5,6.4 12.5,5 C12.5,3.6 13.6,2.5 15,2.5 C16.4,2.5 17.5,3.6 17.5,5 C17.5,6.4 18.8,7.5 20,7.5 L22.5,7.5 C22.5,7.5 25,8.6 25,10 L5,10 C5,8.5 6.1,7.5 7.5,7.5 Z M5,27.5 L10,27.5 L10,25 L5,25 L5,27.5 Z M28.5589286,16 L32,19.6 L21.0160714,30.5382252 L13.5303571,24.2571429 L17.1303571,20.6571429 L21.0160714,24.5428571 L28.5589286,16 Z M17.5,15 L5,15 L5,17.5 L17.5,17.5 L17.5,15 Z M10,20 L5,20 L5,22.5 L10,22.5 L10,20 Z`})})):(0,D.jsx)(`svg`,w({viewBox:`0 0 32 36`},y,{children:(0,D.jsx)(`path`,{d:`M27.5,33 L2.5,33 L2.5,12.5 L27.5,12.5 L27.5,20 L30,20 L30,7.5 C30,6.1 28.9,5 27.5,5 L20,5 C20,2.2 17.8,0 15,0 C12.2,0 10,2.2 10,5 L2.5,5 C1.1,5 0,6.1 0,7.5 L0,33 C0,34.4 1.1,36 2.5,36 L27.5,36 C28.9,36 30,34.4 30,33 L30,29 L27.5,29 L27.5,33 Z M7.5,7.5 L10,7.5 C10,7.5 12.5,6.4 12.5,5 C12.5,3.6 13.6,2.5 15,2.5 C16.4,2.5 17.5,3.6 17.5,5 C17.5,6.4 18.8,7.5 20,7.5 L22.5,7.5 C22.5,7.5 25,8.6 25,10 L5,10 C5,8.5 6.1,7.5 7.5,7.5 Z M5,27.5 L10,27.5 L10,25 L5,25 L5,27.5 Z M22.5,21.5 L22.5,16.5 L12.5,24 L22.5,31.5 L22.5,26.5 L32,26.5 L32,21.5 L22.5,21.5 Z M17.5,15 L5,15 L5,17.5 L17.5,17.5 L17.5,15 Z M10,20 L5,20 L5,22.5 L10,22.5 L10,20 Z`})})))};z.displayName=`JVR.Copied`;function Wt(){var e=(0,E.useRef)(null);return e.current===null&&(e.current=`custom-id-`+Math.random().toString(36).substr(2,9)),e.current}var Gt=e=>{var{keyName:t,value:n,expandKey:r=``,level:i,keys:a=[],parentValue:o}=e,s=O(),{objectSortKeys:c,indentWidth:l,collapsed:u,shouldExpandNodeInitially:d}=N(),f=typeof u==`boolean`?u:typeof u==`number`?i>u:!1,p=s[r]??(d?!1:f),m=d&&d(!p,{value:n,keys:a,level:i,keyName:t,parentValue:o});if(d&&u===!1){if(s[r]===void 0&&!m)return null}else if(s[r]===void 0&&m)return null;if(p)return null;var h=Array.isArray(n)?Object.entries(n).map(e=>[Number(e[0]),e[1]]):Object.entries(n);return c&&(h=c===!0?h.sort((e,t)=>{var[n]=e,[r]=t;return typeof n==`string`&&typeof r==`string`?n.localeCompare(r):0}):h.sort((e,t)=>{var[n,r]=e,[i,a]=t;return typeof n==`string`&&typeof i==`string`?c(n,i,r,a):0})),(0,D.jsx)(`div`,{className:`w-rjv-wrap`,style:{borderLeft:`var(--w-rjv-border-left-width, 1px) var(--w-rjv-line-style, solid) var(--w-rjv-line-color, #ebebeb)`,paddingLeft:l,marginLeft:6},children:h.map((e,t)=>{var[r,o]=e;return(0,D.jsx)(Kt,{parentValue:n,keyName:r,keys:[...a,r],value:o,level:i},t)})})};Gt.displayName=`JVR.KeyValues`;var B=e=>{var{keyName:t,parentValue:n,keys:r,value:i}=e,{highlightUpdates:a}=N(),o=typeof t==`number`,s=(0,E.useRef)(null);Vt({value:i,highlightUpdates:a,highlightContainer:s});var c={keyName:t,value:i,keys:r,parentValue:n};return(0,D.jsxs)(E.Fragment,{children:[(0,D.jsxs)(`span`,{ref:s,children:[(0,D.jsx)(Qe,w({isNumber:o,"data-placement":`left`},c)),(0,D.jsx)(Ft,w({},c,{children:t})),(0,D.jsx)(Qe,w({isNumber:o,"data-placement":`right`},c))]}),(0,D.jsx)($e,w({},c))]})};B.displayName=`JVR.KayName`;var Kt=e=>{var{keyName:t,value:n,parentValue:r,level:i=0,keys:a=[]}=e,o=oe(),s=Wt(),c=Array.isArray(n),l=n instanceof Set,u=n instanceof Map,d=n instanceof Date,f=n instanceof URL;return n&&typeof n==`object`&&!c&&!l&&!u&&!d&&!f||c||l||u?(0,D.jsx)(V,{keyName:t,value:l?Array.from(n):u?Object.fromEntries(n):n,parentValue:r,initialValue:n,keys:a,level:i+1}):(0,D.jsxs)(zt,w({className:`w-rjv-line`,value:n,keyName:t,keys:a,parentValue:r},{onMouseEnter:()=>o({[s]:!0}),onMouseLeave:()=>o({[s]:!1})},{children:[(0,D.jsx)(B,{keyName:t,value:n,keys:a,parentValue:r}),(0,D.jsx)(Mt,{keyName:t,value:n,keys:a}),(0,D.jsx)(z,{keyName:t,value:n,keys:a,parentValue:r,expandKey:s})]}))};Kt.displayName=`JVR.KeyValuesItem`;var qt=[`value`,`keyName`],Jt=[`as`,`render`],Yt=e=>{var{CountInfoExtra:t={}}=j();return R(t,e,`CountInfoExtra`),null};Yt.displayName=`JVR.CountInfoExtra`;var Xt=e=>{var{value:t={},keyName:n}=e,r=T(e,qt),{CountInfoExtra:i={}}=j(),{as:a,render:o}=i,s=T(i,Jt);if(!o&&!s.children)return null;var c=a||`span`,l=o&&typeof o==`function`,u=w({},s,r);return l&&o(u,{value:t,keyName:n})||(0,D.jsx)(c,w({},u))};Xt.displayName=`JVR.CountInfoExtraComps`;var Zt=[`value`,`keyName`],Qt=[`as`,`render`],$t=e=>{var{CountInfo:t={}}=j();return R(t,e,`CountInfo`),null};$t.displayName=`JVR.CountInfo`;var en=e=>{var{value:t={},keyName:n}=e,r=T(e,Zt),{displayObjectSize:i}=N(),{CountInfo:a={}}=j();if(!i)return null;var{as:o,render:s}=a,c=T(a,Qt),l=o||`span`;c.style=w({},c.style,e.style);var u=Object.keys(t).length;c.children||=u+` item`+(u===1?``:`s`);var d=w({},c,r);return s&&typeof s==`function`&&s(w({},d,{"data-length":u}),{value:t,keyName:n})||(0,D.jsx)(l,w({},d))};en.displayName=`JVR.CountInfoComp`;var tn=[`as`,`render`],nn=e=>{var{Ellipsis:t={}}=j();return R(t,e,`Ellipsis`),null};nn.displayName=`JVR.Ellipsis`;var rn=e=>{var{isExpanded:t,value:n,keyName:r}=e,{Ellipsis:i={}}=j(),{as:a,render:o}=i,s=T(i,tn),c=a||`span`;return o&&typeof o==`function`&&o(w({},s,{"data-expanded":t}),{value:n,keyName:r})||(!t||typeof n==`object`&&Object.keys(n).length==0?null:(0,D.jsx)(c,w({},s)))};rn.displayName=`JVR.EllipsisComp`;var an=e=>{var{keyName:t,expandKey:n,keys:r=[],initialValue:i,value:a,parentValue:o,level:s}=e,c=O(),l=pe(),{onExpand:u,collapsed:d,shouldExpandNodeInitially:f}=N(),p=typeof d==`boolean`?d:typeof d==`number`?s>d:!1,m=c[n]??(f?!1:p),h=f&&f(!m,{value:a,keys:r,level:s,keyName:t,parentValue:o});c[n]===void 0&&f&&(m=!h);var g=()=>{var e={expand:!m,value:a,keyid:n,keyName:t};u&&u(e),l({[n]:e.expand})},_={display:`inline-flex`,alignItems:`center`},v={transform:`rotate(`+(m?`-90`:`0`)+`deg)`,transition:`all 0.3s`},y=Object.keys(a).length,b=typeof a==`object`,x=Array.isArray(a),S=a instanceof Set,C=y!==0&&(x||S||b),T={style:_};C&&(T.onClick=g);var E={keyName:t,value:a,keys:r,parentValue:o};return(0,D.jsxs)(`span`,w({},T,{children:[C&&(0,D.jsx)(et,w({style:v,expandKey:n},E)),(t||typeof t==`number`)&&(0,D.jsx)(B,w({},E)),(0,D.jsx)(vt,{value:i,keyName:t}),(0,D.jsx)(yt,{value:i,keyName:t}),(0,D.jsx)(tt,w({isBrackets:x||S},E)),(0,D.jsx)(rn,{keyName:t,value:a,isExpanded:m}),(0,D.jsx)(nt,w({isVisiable:m||!C,isBrackets:x||S},E)),(0,D.jsx)(en,{value:a,keyName:t}),(0,D.jsx)(Xt,{value:a,keyName:t}),(0,D.jsx)(z,{keyName:t,value:a,expandKey:n,parentValue:o,keys:r})]}))};an.displayName=`JVR.NestedOpen`;var on=[`className`,`children`,`parentValue`,`keyid`,`level`,`value`,`initialValue`,`keys`,`keyName`],V=(0,E.forwardRef)((e,t)=>{var{className:n=``,parentValue:r,level:i=1,value:a,initialValue:o,keys:s,keyName:c}=e,l=T(e,on),u=oe(),d=Wt();return(0,D.jsxs)(`div`,w({className:[n,`w-rjv-inner`].filter(Boolean).join(` `),ref:t},l,{onMouseEnter:()=>u({[d]:!0}),onMouseLeave:()=>u({[d]:!1})},{children:[(0,D.jsx)(an,{expandKey:d,value:a,level:i,keys:s,parentValue:r,keyName:c,initialValue:o}),(0,D.jsx)(Gt,{expandKey:d,value:a,level:i,keys:s,parentValue:r,keyName:c}),(0,D.jsx)(rt,{expandKey:d,value:a,level:i,keys:s,parentValue:r,keyName:c})]}))});V.displayName=`JVR.Container`;var sn=e=>{var{BraceLeft:t={}}=A();return I(t,e,`BraceLeft`),null};sn.displayName=`JVR.BraceLeft`;var cn=e=>{var{BraceRight:t={}}=A();return I(t,e,`BraceRight`),null};cn.displayName=`JVR.BraceRight`;var ln=e=>{var{BracketsLeft:t={}}=A();return I(t,e,`BracketsLeft`),null};ln.displayName=`JVR.BracketsLeft`;var un=e=>{var{BracketsRight:t={}}=A();return I(t,e,`BracketsRight`),null};un.displayName=`JVR.BracketsRight`;var dn=e=>{var{Arrow:t={}}=A();return I(t,e,`Arrow`),null};dn.displayName=`JVR.Arrow`;var fn=e=>{var{Colon:t={}}=A();return I(t,e,`Colon`),null};fn.displayName=`JVR.Colon`;var pn=e=>{var{Quote:t={}}=A();return I(t,e,`Quote`),null};pn.displayName=`JVR.Quote`;var mn=e=>{var{ValueQuote:t={}}=A();return I(t,e,`ValueQuote`),null};mn.displayName=`JVR.ValueQuote`;var hn=e=>{var{Bigint:t={}}=k();return L(t,e,`Bigint`),null};hn.displayName=`JVR.Bigint`;var gn=e=>{var{Date:t={}}=k();return L(t,e,`Date`),null};gn.displayName=`JVR.Date`;var _n=e=>{var{False:t={}}=k();return L(t,e,`False`),null};_n.displayName=`JVR.False`;var vn=e=>{var{Float:t={}}=k();return L(t,e,`Float`),null};vn.displayName=`JVR.Float`;var yn=e=>{var{Int:t={}}=k();return L(t,e,`Int`),null};yn.displayName=`JVR.Int`;var bn=e=>{var{Map:t={}}=k();return L(t,e,`Map`),null};bn.displayName=`JVR.Map`;var xn=e=>{var{Nan:t={}}=k();return L(t,e,`Nan`),null};xn.displayName=`JVR.Nan`;var Sn=e=>{var{Null:t={}}=k();return L(t,e,`Null`),null};Sn.displayName=`JVR.Null`;var Cn=e=>{var{Set:t={}}=k();return L(t,e,`Set`),null};Cn.displayName=`JVR.Set`;var wn=e=>{var{Str:t={}}=k();return L(t,e,`Str`),null};wn.displayName=`JVR.StringText`;var Tn=e=>{var{True:t={}}=k();return L(t,e,`True`),null};Tn.displayName=`JVR.True`;var En=e=>{var{Undefined:t={}}=k();return L(t,e,`Undefined`),null};En.displayName=`JVR.Undefined`;var Dn=e=>{var{Url:t={}}=k();return L(t,e,`Url`),null};Dn.displayName=`JVR.Url`;var On=e=>{var{Copied:t={}}=j();return R(t,e,`Copied`),null};On.displayName=`JVR.Copied`;var kn=[`className`,`style`,`value`,`children`,`collapsed`,`shouldExpandNodeInitially`,`indentWidth`,`displayObjectSize`,`shortenTextAfterLength`,`stringEllipsis`,`highlightUpdates`,`enableClipboard`,`displayDataTypes`,`objectSortKeys`,`onExpand`,`onCopied`,`beforeCopy`],H=(0,E.forwardRef)((e,t)=>{var{className:n=``,style:r,value:i,children:a,collapsed:o=!1,shouldExpandNodeInitially:s,indentWidth:c=15,displayObjectSize:l=!0,shortenTextAfterLength:u=30,stringEllipsis:d,highlightUpdates:f=!0,enableClipboard:p=!0,displayDataTypes:m=!0,objectSortKeys:h=!1,onExpand:g,onCopied:_,beforeCopy:v}=e,y=T(e,kn),b=w({lineHeight:1.4,fontFamily:`var(--w-rjv-font-family, Menlo, monospace)`,color:`var(--w-rjv-color, #002b36)`,backgroundColor:`var(--w-rjv-background-color, #00000000)`,fontSize:13},r),x=[`w-json-view-container`,`w-rjv`,n].filter(Boolean).join(` `);return(0,D.jsxs)(Ve,{initialState:{value:i,objectSortKeys:h,indentWidth:c,shouldExpandNodeInitially:o===!1?s:void 0,displayObjectSize:l,collapsed:o,enableClipboard:p,shortenTextAfterLength:u,stringEllipsis:d,highlightUpdates:f,onCopied:_,onExpand:g,beforeCopy:v},initialTypes:{displayDataTypes:m},children:[(0,D.jsx)(V,w({value:i},y,{ref:t,className:x,style:b})),a]})});H.Bigint=hn,H.Date=gn,H.False=_n,H.Float=vn,H.Int=yn,H.Map=bn,H.Nan=xn,H.Null=Sn,H.Set=Cn,H.String=wn,H.True=Tn,H.Undefined=En,H.Url=Dn,H.ValueQuote=mn,H.Arrow=dn,H.Colon=fn,H.Quote=pn,H.Ellipsis=nn,H.BraceLeft=sn,H.BraceRight=cn,H.BracketsLeft=ln,H.BracketsRight=un,H.Copied=On,H.CountInfo=$t,H.CountInfoExtra=Yt,H.KeyName=Pt,H.Row=Rt,H.displayName=`JVR.JsonView`;var An={"--w-rjv-font-family":`monospace`,"--w-rjv-color":`#002b36`,"--w-rjv-key-string":`#002b36`,"--w-rjv-background-color":`#ffffff`,"--w-rjv-line-color":`#ebebeb`,"--w-rjv-arrow-color":`var(--w-rjv-color)`,"--w-rjv-edit-color":`var(--w-rjv-color)`,"--w-rjv-info-color":`#0000004d`,"--w-rjv-update-color":`#ebcb8b`,"--w-rjv-copied-color":`#002b36`,"--w-rjv-copied-success-color":`#28a745`,"--w-rjv-curlybraces-color":`#236a7c`,"--w-rjv-colon-color":`#002b36`,"--w-rjv-brackets-color":`#236a7c`,"--w-rjv-quotes-color":`var(--w-rjv-key-string)`,"--w-rjv-quotes-string-color":`var(--w-rjv-type-string-color)`,"--w-rjv-type-string-color":`#cb4b16`,"--w-rjv-type-int-color":`#268bd2`,"--w-rjv-type-float-color":`#859900`,"--w-rjv-type-bigint-color":`#268bd2`,"--w-rjv-type-boolean-color":`#2aa198`,"--w-rjv-type-date-color":`#586e75`,"--w-rjv-type-url-color":`#0969da`,"--w-rjv-type-null-color":`#d33682`,"--w-rjv-type-nan-color":`#859900`,"--w-rjv-type-undefined-color":`#586e75`},U=a(),jn=`~icons/lucide/arrow-left.jsx`,Mn=e=>(0,U.jsxDEV)(`svg`,{viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`,...e,children:(0,U.jsxDEV)(`path`,{fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`m12 19l-7-7l7-7m7 7H5`},void 0,!1,{fileName:jn,lineNumber:2,columnNumber:99},void 0)},void 0,!1,{fileName:jn,lineNumber:2,columnNumber:34},void 0),Nn=`~icons/lucide/check.jsx`,Pn=e=>(0,U.jsxDEV)(`svg`,{viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`,...e,children:(0,U.jsxDEV)(`path`,{fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M20 6L9 17l-5-5`},void 0,!1,{fileName:Nn,lineNumber:2,columnNumber:95},void 0)},void 0,!1,{fileName:Nn,lineNumber:2,columnNumber:30},void 0),Fn=`~icons/lucide/chevron-down.jsx`,W=e=>(0,U.jsxDEV)(`svg`,{viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`,...e,children:(0,U.jsxDEV)(`path`,{fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`m6 9l6 6l6-6`},void 0,!1,{fileName:Fn,lineNumber:2,columnNumber:101},void 0)},void 0,!1,{fileName:Fn,lineNumber:2,columnNumber:36},void 0),G=`~icons/lucide/copy.jsx`,In=e=>(0,U.jsxDEV)(`svg`,{viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`,...e,children:(0,U.jsxDEV)(`g`,{fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,children:[(0,U.jsxDEV)(`rect`,{width:14,height:14,x:8,y:8,rx:2,ry:2},void 0,!1,{fileName:G,lineNumber:2,columnNumber:192},void 0),(0,U.jsxDEV)(`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`},void 0,!1,{fileName:G,lineNumber:2,columnNumber:249},void 0)]},void 0,!0,{fileName:G,lineNumber:2,columnNumber:94},void 0)},void 0,!1,{fileName:G,lineNumber:2,columnNumber:29},void 0),K=`/home/runner/work/qgrid/qgrid/packages/web/src/routes/requests/show.tsx?tsr-split=component`;function Ln(){let{id:e}=y.useSearch();return(0,U.jsxDEV)(Ar,{id:e},void 0,!1,{fileName:K,lineNumber:28,columnNumber:10},this)}function q(e){return e.toLocaleString()}var Rn=new Set,J=h();function zn(e){try{return{ok:!0,value:J.parse(JSON.parse(e))}}catch{return{ok:!1}}}function Bn(e){if(!e)return{};try{return J.parse(JSON.parse(e))}catch{return e}}function Y({text:e,dark:t}){let[n,r]=(0,E.useState)(!1);return(0,E.useEffect)(()=>{if(!n)return;let e=setTimeout(()=>r(!1),1500);return()=>clearTimeout(e)},[n]),(0,U.jsxDEV)(`button`,{type:`button`,className:`absolute top-2 right-2 p-1 rounded transition-colors ${t?`text-sand-500 hover:text-sand-300`:`text-sand-400 hover:text-sand-600`}`,onClick:()=>{navigator.clipboard.writeText(e),r(!0)},children:n?(0,U.jsxDEV)(Pn,{className:`size-3.5 text-sage-500`},void 0,!1,{fileName:K,lineNumber:82,columnNumber:17},this):(0,U.jsxDEV)(In,{className:`size-3.5`},void 0,!1,{fileName:K,lineNumber:82,columnNumber:68},this)},void 0,!1,{fileName:K,lineNumber:81,columnNumber:10},this)}var Vn=/<img\s+[^>]*src=["'](data:image\/[^"']+;base64,[^"']+)["'][^>]*(?:alt=["']([^"']*)["'][^>]*)?\/?>/gi;function Hn(e){let t=[],n=0;for(let r of e.matchAll(Vn)){let i=r.index??0;i>n&&t.push({type:`text`,text:e.slice(n,i)}),t.push({type:`image`,src:r[1],alt:r[2]??`generated image`}),n=i+r[0].length}return n<e.length&&t.push({type:`text`,text:e.slice(n)}),t.filter(e=>e.type===`image`||e.text.trim().length>0)}function Un({text:e,markdown:t}){let[n,r]=(0,E.useState)(null),i=Hn(e);return i.some(e=>e.type===`image`)?(0,U.jsxDEV)(`div`,{className:`space-y-3`,children:[i.map((e,n)=>e.type===`text`?t?(0,U.jsxDEV)(`div`,{className:`prose prose-sm prose-qgrid max-w-none`,children:(0,U.jsxDEV)(_,{remarkPlugins:[g],children:e.text},void 0,!1,{fileName:K,lineNumber:135,columnNumber:15},this)},`text-${n}`,!1,{fileName:K,lineNumber:134,columnNumber:78},this):(0,U.jsxDEV)(`pre`,{className:`text-sm text-sand-800 whitespace-pre-wrap wrap-break-word font-mono leading-relaxed`,children:e.text},`text-${n}`,!1,{fileName:K,lineNumber:136,columnNumber:22},this):(0,U.jsxDEV)(`button`,{type:`button`,className:`block max-w-full rounded-md border border-sand-200 overflow-hidden bg-white hover:border-sienna-300 transition-colors`,onClick:()=>r(e.src),title:`Open image`,children:(0,U.jsxDEV)(`img`,{src:e.src,alt:e.alt,className:`max-h-[520px] max-w-full object-contain`,loading:`lazy`},void 0,!1,{fileName:K,lineNumber:139,columnNumber:13},this)},`image-${n}`,!1,{fileName:K,lineNumber:138,columnNumber:22},this)),n&&(0,U.jsxDEV)(`div`,{className:`fixed inset-0 z-50 bg-black/70 p-4 flex items-center justify-center`,onClick:()=>r(null),children:[(0,U.jsxDEV)(`button`,{type:`button`,className:`absolute top-4 right-4 p-2 rounded-full bg-white/90 text-sand-700 hover:bg-white`,onClick:()=>r(null),title:`Close image`,children:(0,U.jsxDEV)(v,{className:`size-5`},void 0,!1,{fileName:K,lineNumber:143,columnNumber:13},this)},void 0,!1,{fileName:K,lineNumber:142,columnNumber:11},this),(0,U.jsxDEV)(`img`,{src:n,alt:`generated preview`,className:`max-h-full max-w-full object-contain rounded-md bg-white`,onClick:e=>e.stopPropagation()},void 0,!1,{fileName:K,lineNumber:145,columnNumber:11},this)]},void 0,!0,{fileName:K,lineNumber:141,columnNumber:21},this)]},void 0,!0,{fileName:K,lineNumber:133,columnNumber:10},this):t?(0,U.jsxDEV)(`div`,{className:`prose prose-sm prose-qgrid max-w-none`,children:(0,U.jsxDEV)(_,{remarkPlugins:[g],children:e},void 0,!1,{fileName:K,lineNumber:128,columnNumber:9},this)},void 0,!1,{fileName:K,lineNumber:127,columnNumber:23},this):(0,U.jsxDEV)(`pre`,{className:`text-sm text-sand-800 whitespace-pre-wrap wrap-break-word font-mono leading-relaxed`,children:e},void 0,!1,{fileName:K,lineNumber:129,columnNumber:16},this)}function X({text:e,markdown:t}){let n=zn(e),[r,i]=(0,E.useState)(`pretty`),a=n.ok&&n.value instanceof Object?n.value:null;return!n.ok||a===null?t?(0,U.jsxDEV)(Un,{text:e,markdown:!0},void 0,!1,{fileName:K,lineNumber:163,columnNumber:14},this):(0,U.jsxDEV)(Un,{text:n.ok?JSON.stringify(n.value,null,2):e},void 0,!1,{fileName:K,lineNumber:165,columnNumber:12},this):(0,U.jsxDEV)(`div`,{children:[(0,U.jsxDEV)(`div`,{className:`flex gap-1 mb-2`,children:[(0,U.jsxDEV)(`button`,{type:`button`,className:`px-2 py-0.5 text-[10px] rounded-md transition-colors ${r===`plain`?`bg-sand-200 text-sand-700`:`text-sand-400 hover:text-sand-600`}`,onClick:()=>i(`plain`),children:`Plain`},void 0,!1,{fileName:K,lineNumber:169,columnNumber:9},this),(0,U.jsxDEV)(`button`,{type:`button`,className:`px-2 py-0.5 text-[10px] rounded-md transition-colors ${r===`pretty`?`bg-sand-200 text-sand-700`:`text-sand-400 hover:text-sand-600`}`,onClick:()=>i(`pretty`),children:`Pretty`},void 0,!1,{fileName:K,lineNumber:172,columnNumber:9},this)]},void 0,!0,{fileName:K,lineNumber:168,columnNumber:7},this),r===`pretty`?(0,U.jsxDEV)(H,{value:a,style:An,displayDataTypes:!1,enableClipboard:!0,collapsed:!1},void 0,!1,{fileName:K,lineNumber:176,columnNumber:28},this):(0,U.jsxDEV)(`pre`,{className:`text-sm text-sand-800 whitespace-pre-wrap wrap-break-word font-mono leading-relaxed`,children:JSON.stringify(n.value,null,2)},void 0,!1,{fileName:K,lineNumber:176,columnNumber:143},this)]},void 0,!0,{fileName:K,lineNumber:167,columnNumber:10},this)}function Z({title:e,defaultOpen:t=!0,headerMetadata:n,onOpenChange:r,children:i}){let[a,o]=(0,E.useState)(t);return(0,U.jsxDEV)(`details`,{open:a,className:`group panel overflow-hidden`,onToggle:e=>{let t=e.currentTarget.open;o(t),r?.(t)},children:[(0,U.jsxDEV)(`summary`,{className:`panel-header flex min-w-0 items-center gap-1.5 whitespace-nowrap cursor-pointer select-none list-none px-4 py-2.5`,children:[(0,U.jsxDEV)(W,{className:`size-3.5 shrink-0 text-sand-400 transition-transform group-open:rotate-0 -rotate-90`},void 0,!1,{fileName:K,lineNumber:201,columnNumber:9},this),(0,U.jsxDEV)(`span`,{className:`shrink-0 text-[11px] uppercase tracking-wider text-sand-500 font-medium`,children:e},void 0,!1,{fileName:K,lineNumber:202,columnNumber:9},this),n&&(0,U.jsxDEV)(`span`,{className:`flex min-w-0 flex-1 items-center gap-1.5 overflow-hidden whitespace-nowrap text-[11px] normal-case text-sand-400`,children:n},void 0,!1,{fileName:K,lineNumber:205,columnNumber:28},this)]},void 0,!0,{fileName:K,lineNumber:200,columnNumber:7},this),(0,U.jsxDEV)(`div`,{className:`p-4`,children:i},void 0,!1,{fileName:K,lineNumber:209,columnNumber:7},this)]},void 0,!0,{fileName:K,lineNumber:195,columnNumber:10},this)}function Q({label:e,value:t}){return(0,U.jsxDEV)(`div`,{className:`min-w-0`,children:[(0,U.jsxDEV)(`dt`,{className:`text-[10px] uppercase tracking-wider text-sand-400 font-medium truncate`,children:e},void 0,!1,{fileName:K,lineNumber:220,columnNumber:7},this),(0,U.jsxDEV)(`dd`,{className:`text-[15px] font-semibold text-sand-800 tabular-nums mt-0.5 truncate`,children:t},void 0,!1,{fileName:K,lineNumber:223,columnNumber:7},this)]},void 0,!0,{fileName:K,lineNumber:219,columnNumber:10},this)}var Wn=new Map([[`running`,`bg-blue-100 text-blue-600`],[`succeeded`,`bg-sage-100 text-sage-600`],[`error`,`bg-red-100 text-red-600`],[`aborted`,`bg-caution-400/15 text-caution-500`]]);function Gn({message:e}){return(0,U.jsxDEV)(`div`,{className:`panel overflow-hidden border border-red-200 bg-red-50/60`,children:[(0,U.jsxDEV)(`div`,{className:`px-4 py-2.5 border-b border-red-100 flex items-center gap-1.5`,children:(0,U.jsxDEV)(`span`,{className:`text-[11px] uppercase tracking-wider text-red-600 font-medium`,children:`Error`},void 0,!1,{fileName:K,lineNumber:236,columnNumber:9},this)},void 0,!1,{fileName:K,lineNumber:235,columnNumber:7},this),(0,U.jsxDEV)(`div`,{className:`p-4`,children:(0,U.jsxDEV)(`pre`,{className:`text-[12px] text-red-700 whitespace-pre-wrap break-words font-mono leading-relaxed max-h-80 overflow-auto`,children:e},void 0,!1,{fileName:K,lineNumber:239,columnNumber:9},this)},void 0,!1,{fileName:K,lineNumber:238,columnNumber:7},this)]},void 0,!0,{fileName:K,lineNumber:234,columnNumber:10},this)}function Kn({data:e}){let t=e.status===`running`,n=C({status:e.status,requestedModel:e.requested_model_name,servedModel:e.model_name,imageCostMethod:e.image_cost_method}),r=!t&&e.requested_model_name!==null&&e.model_name===null;return(0,U.jsxDEV)(`div`,{className:`panel overflow-hidden px-4 py-3 flex flex-wrap items-center gap-x-2 gap-y-1.5 sm:px-5`,children:[(0,U.jsxDEV)(`span`,{className:`text-[15px] font-semibold text-sand-900 break-all`,children:n.label===`—`?`Unknown model`:n.label},void 0,!1,{fileName:K,lineNumber:261,columnNumber:7},this),r&&(0,U.jsxDEV)(`span`,{className:`text-[10px] text-sand-400`,children:`요청`},void 0,!1,{fileName:K,lineNumber:264,columnNumber:28},this),e.service_tier===`fast`&&(0,U.jsxDEV)(`span`,{title:`Fast 모드`,className:`inline-flex shrink-0`,children:(0,U.jsxDEV)(S,{"aria-label":`Fast 모드`,className:`size-3.5 text-[#1877F2] [&_path]:fill-current`},void 0,!1,{fileName:K,lineNumber:266,columnNumber:11},this)},void 0,!1,{fileName:K,lineNumber:265,columnNumber:40},this),!t&&(e.fallback_count??0)>0&&(0,U.jsxDEV)(`span`,{className:`text-[10px] px-1.5 py-0.5 rounded-full bg-caution-400/15 text-caution-500 font-medium uppercase`,children:[`fallback ×`,e.fallback_count]},void 0,!0,{fileName:K,lineNumber:268,columnNumber:56},this),!t&&e.status!==`succeeded`&&(0,U.jsxDEV)(`span`,{className:`text-[10px] px-1.5 py-0.5 rounded-full font-medium uppercase ${Wn.get(e.status)??`bg-sand-100 text-sand-500`}`,children:e.status},void 0,!1,{fileName:K,lineNumber:271,columnNumber:53},this),e.response_json_ok===!1&&(0,U.jsxDEV)(`span`,{title:`structured 요청의 응답이 JSON 파싱에 실패했습니다`,className:`text-[10px] px-1.5 py-0.5 rounded-full bg-caution-400/15 text-caution-500 font-medium uppercase`,children:`broken json`},void 0,!1,{fileName:K,lineNumber:274,columnNumber:43},this),e.effort&&(0,U.jsxDEV)(`span`,{className:`text-[11px] px-1.5 py-0.5 rounded-md bg-sand-100 text-sand-500 font-mono`,children:[`effort=`,e.effort]},void 0,!0,{fileName:K,lineNumber:277,columnNumber:23},this),e.project_name&&(0,U.jsxDEV)(`span`,{className:`text-[12px] text-sand-400`,children:[`· project=`,e.project_name]},void 0,!0,{fileName:K,lineNumber:280,columnNumber:29},this),(0,U.jsxDEV)(`span`,{className:`ml-auto text-[11px] text-sand-400`,children:e.token_name},void 0,!1,{fileName:K,lineNumber:281,columnNumber:7},this)]},void 0,!0,{fileName:K,lineNumber:260,columnNumber:5},this)}function qn({data:e,toolCallCount:t}){let n=er(e);return(0,U.jsxDEV)(`div`,{className:`panel overflow-hidden px-5 py-3 space-y-3`,children:[(0,U.jsxDEV)(`div`,{className:`grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-5 gap-x-6 gap-y-3`,children:[(0,U.jsxDEV)(Q,{label:`Duration`,value:`${(e.duration_ms/1e3).toFixed(1)}s`},void 0,!1,{fileName:K,lineNumber:295,columnNumber:9},this),(0,U.jsxDEV)(Q,{label:`TTFT`,value:Qn(e.ttft_ms)},void 0,!1,{fileName:K,lineNumber:296,columnNumber:9},this),(0,U.jsxDEV)(Q,{label:`Tokens/sec`,value:tr(e.output_tokens,e.duration_ms,e.ttft_ms,n)},void 0,!1,{fileName:K,lineNumber:297,columnNumber:9},this),(0,U.jsxDEV)(Q,{label:`Driver`,value:e.cost_usd===null?`—`:b(e.cost_usd)},void 0,!1,{fileName:K,lineNumber:298,columnNumber:9},this),(0,U.jsxDEV)(Q,{label:`Image`,value:e.image_cost_usd===null?`—`:b(e.image_cost_usd)},void 0,!1,{fileName:K,lineNumber:299,columnNumber:9},this),(0,U.jsxDEV)(Q,{label:`Tool Calls`,value:`${t}회`},void 0,!1,{fileName:K,lineNumber:300,columnNumber:9},this)]},void 0,!0,{fileName:K,lineNumber:294,columnNumber:7},this),(0,U.jsxDEV)(`div`,{className:`border-t border-sand-100/60 pt-3 grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-5 gap-x-6 gap-y-3`,children:[(0,U.jsxDEV)(Q,{label:`Input`,value:q(e.input_tokens)},void 0,!1,{fileName:K,lineNumber:303,columnNumber:9},this),(0,U.jsxDEV)(Q,{label:`Output`,value:q(e.output_tokens)},void 0,!1,{fileName:K,lineNumber:304,columnNumber:9},this),(0,U.jsxDEV)(Q,{label:`Cache Read`,value:q(e.cache_read_tokens)},void 0,!1,{fileName:K,lineNumber:305,columnNumber:9},this),(0,U.jsxDEV)(Q,{label:`Cache Write`,value:q(e.cache_creation_tokens)},void 0,!1,{fileName:K,lineNumber:306,columnNumber:9},this),(0,U.jsxDEV)(Q,{label:`Cache Write (5m)`,value:e.cache_creation_5m_tokens===null?`—`:q(e.cache_creation_5m_tokens)},void 0,!1,{fileName:K,lineNumber:307,columnNumber:9},this),(0,U.jsxDEV)(Q,{label:`Cache Write (1h)`,value:e.cache_creation_1h_tokens===null?`—`:q(e.cache_creation_1h_tokens)},void 0,!1,{fileName:K,lineNumber:308,columnNumber:9},this),(0,U.jsxDEV)(Q,{label:`Cache Hit`,value:x(e)},void 0,!1,{fileName:K,lineNumber:309,columnNumber:9},this)]},void 0,!0,{fileName:K,lineNumber:302,columnNumber:7},this)]},void 0,!0,{fileName:K,lineNumber:293,columnNumber:10},this)}var Jn=l({mediaType:c().optional(),data:c().optional(),url:c().optional(),byteSize:m().optional()}),Yn=o({inputImages:u(J)}),Xn=o({mediaType:J.optional(),byteSize:J.optional(),url:J.optional(),data:J.optional()});function Zn(e){return e==null?`—`:e>=1e3?`${(e/1e3).toFixed(1)}s`:`${e}ms`}function Qn(e){return e==null||e<=0?`—`:Zn(e)}function $n(e){let t=e.model_name?.trim().toLowerCase();if(t){let e=t.includes(`/`)?t.split(`/`).pop():t;if(e.startsWith(`claude-`))return`anthropic`;if(/^(gpt-|codex-|o\d)/.test(e))return`openai`;if(e.startsWith(`grok-`))return`grok`}let n=e.token_name?.trim().toLowerCase();return n?.startsWith(`anthropic/`)?`anthropic`:n?.startsWith(`openai/`)?`openai`:n?.startsWith(`grok/`)?`grok`:null}function er(e){let t=$n(e);return t!==null&&Rn.has(t)}function tr(e,t,n,r){if(!r||e==null||t==null||n==null||n<=0)return`—`;let i=t-n;return e<=0||i<=0?`—`:`${Math.round(e/(i/1e3)).toLocaleString()} tok/s`}function $({label:e,value:t}){return(0,U.jsxDEV)(`div`,{className:`min-w-0 self-end`,children:[e&&(0,U.jsxDEV)(`div`,{className:`text-[10px] uppercase tracking-wider text-sand-400 font-medium truncate`,children:e},void 0,!1,{fileName:K,lineNumber:419,columnNumber:17},this),(0,U.jsxDEV)(`div`,{className:`mt-0.5 text-[13px] font-semibold text-sand-800 tabular-nums truncate`,children:t},void 0,!1,{fileName:K,lineNumber:422,columnNumber:7},this)]},void 0,!0,{fileName:K,lineNumber:418,columnNumber:5},this)}function nr(e){let t=Yn.safeParse(e);return t.success?t.data.inputImages.flatMap(e=>{let t=Jn.safeParse(e);return t.success&&(t.data.url||t.data.data)?[t.data]:[]}):[]}function rr(e){let t=Xn.safeParse(e);if(!t.success)return e;let n=t.data,r={};n.mediaType!==void 0&&(r.mediaType=n.mediaType),n.byteSize!==void 0&&(r.byteSize=n.byteSize);let i=c().safeParse(n.url),a=i.success&&i.data.toLowerCase().startsWith(`data:`)?`[data-url ${i.data.length} chars]`:n.url;if(a&&(r.url=a),n.data){let e=c().safeParse(n.data);r.data=e.success?`[base64 ${e.data.length} chars]`:`[base64 data]`}return r}function ir(e){let t=Yn.safeParse(e);return!t.success||!(e instanceof Object)||Array.isArray(e)?e:{...e,inputImages:t.data.inputImages.map(rr)}}function ar({images:e}){let t=e.map((e,t)=>{let n=e.url&&!e.url.startsWith(`[`)?e.url:void 0,r=e.data?`data:${e.mediaType??`image/png`};base64,${e.data}`:``,i=n??r;return i?{image:e,index:t,src:i}:null}).filter(e=>e!==null);return t.length===0?null:(0,U.jsxDEV)(`div`,{children:[(0,U.jsxDEV)(`span`,{className:`text-[10px] uppercase tracking-wider text-sand-400 font-medium px-2`,children:`Input Images`},void 0,!1,{fileName:K,lineNumber:483,columnNumber:7},this),(0,U.jsxDEV)(`div`,{className:`mt-1 grid grid-cols-1 sm:grid-cols-2 gap-2`,children:t.map(({image:e,index:t,src:n})=>(0,U.jsxDEV)(`div`,{className:`rounded-md border border-sand-200 bg-white overflow-hidden`,children:[(0,U.jsxDEV)(`img`,{src:n,alt:`reference ${t+1}`,className:`max-h-64 w-full object-contain bg-white`,loading:`lazy`},void 0,!1,{fileName:K,lineNumber:493,columnNumber:15},this),(0,U.jsxDEV)(`div`,{className:`px-2 py-1 text-[10px] text-sand-500 font-mono border-t border-sand-100`,children:[e.mediaType??`image`,` ·`,` `,e.byteSize===void 0?`url`:`${e.byteSize.toLocaleString()} bytes`]},void 0,!0,{fileName:K,lineNumber:494,columnNumber:15},this)]},`${e.mediaType??`image`}-${t}`,!0,{fileName:K,lineNumber:492,columnNumber:16},this))},void 0,!1,{fileName:K,lineNumber:486,columnNumber:7},this)]},void 0,!0,{fileName:K,lineNumber:482,columnNumber:10},this)}function or({images:e,stepId:t}){let{data:n}=d.useRequestLogStep(`I`,t??0,{enabled:e===null&&t!==null}),r=n?Bn(n.tool_args):null;return(0,U.jsxDEV)(ar,{images:e??nr(r)},void 0,!1,{fileName:K,lineNumber:518,columnNumber:10},this)}function sr({entry:e}){let t=!!e.error,[n,r]=(0,E.useState)(!1),{data:i}=d.useRequestLogStep(`A`,e.id,{enabled:n}),a=ir(i?Bn(i.tool_args):null),o=i?Bn(i.tool_result):null,s=c().safeParse(o),l=s.success?s.data:JSON.stringify(o),u=i?.error??e.error;return(0,U.jsxDEV)(`details`,{className:`group/tool`,onToggle:e=>r(e.currentTarget.open),children:[(0,U.jsxDEV)(`summary`,{className:`flex items-center gap-2 px-3 py-2 cursor-pointer select-none list-none hover:bg-sand-50 transition-colors rounded-md`,children:[(0,U.jsxDEV)(W,{className:`size-3 text-sand-400 transition-transform group-open/tool:rotate-0 -rotate-90 shrink-0`},void 0,!1,{fileName:K,lineNumber:540,columnNumber:9},this),(0,U.jsxDEV)(`span`,{className:`text-[10px] px-1.5 py-0.5 rounded bg-sand-100 text-sand-500 font-mono shrink-0`,children:[`call `,e.callIndex+1]},void 0,!0,{fileName:K,lineNumber:541,columnNumber:9},this),(0,U.jsxDEV)(`span`,{className:`text-[13px] font-medium text-sand-800 font-mono truncate`,children:e.toolName},void 0,!1,{fileName:K,lineNumber:544,columnNumber:9},this),t&&(0,U.jsxDEV)(`span`,{className:`text-[10px] px-1.5 py-0.5 rounded-full bg-red-100 text-red-600 font-medium uppercase shrink-0`,children:`error`},void 0,!1,{fileName:K,lineNumber:547,columnNumber:22},this),(0,U.jsxDEV)(`span`,{className:`ml-auto text-[11px] text-sand-400 tabular-nums shrink-0`,children:Zn(e.durationMs)},void 0,!1,{fileName:K,lineNumber:550,columnNumber:9},this)]},void 0,!0,{fileName:K,lineNumber:539,columnNumber:7},this),n&&(0,U.jsxDEV)(`div`,{className:`mt-1 mx-1 mb-3 space-y-2`,children:[(0,U.jsxDEV)(`div`,{children:[(0,U.jsxDEV)(`span`,{className:`text-[10px] uppercase tracking-wider text-sand-400 font-medium px-2`,children:`Request`},void 0,!1,{fileName:K,lineNumber:556,columnNumber:13},this),(0,U.jsxDEV)(`div`,{className:`mt-1 rounded-md bg-sand-50 p-3 overflow-auto`,children:(0,U.jsxDEV)(X,{text:i?JSON.stringify(a):`Loading...`},void 0,!1,{fileName:K,lineNumber:560,columnNumber:15},this)},void 0,!1,{fileName:K,lineNumber:559,columnNumber:13},this)]},void 0,!0,{fileName:K,lineNumber:555,columnNumber:11},this),u&&(0,U.jsxDEV)(`div`,{children:[(0,U.jsxDEV)(`span`,{className:`text-[10px] uppercase tracking-wider text-red-500 font-medium px-2`,children:`Error`},void 0,!1,{fileName:K,lineNumber:564,columnNumber:15},this),(0,U.jsxDEV)(`div`,{className:`mt-1 rounded-md bg-red-50 border border-red-100 p-3 overflow-auto`,children:(0,U.jsxDEV)(X,{text:u},void 0,!1,{fileName:K,lineNumber:568,columnNumber:17},this)},void 0,!1,{fileName:K,lineNumber:567,columnNumber:15},this)]},void 0,!0,{fileName:K,lineNumber:563,columnNumber:21},this),(0,U.jsxDEV)(`div`,{children:[(0,U.jsxDEV)(`span`,{className:`text-[10px] uppercase tracking-wider text-sand-400 font-medium px-2`,children:`Response`},void 0,!1,{fileName:K,lineNumber:572,columnNumber:13},this),(0,U.jsxDEV)(`div`,{className:`mt-1 rounded-md bg-sand-50 p-3 overflow-auto`,children:(0,U.jsxDEV)(X,{text:i?l:`Loading...`,markdown:!0},void 0,!1,{fileName:K,lineNumber:576,columnNumber:15},this)},void 0,!1,{fileName:K,lineNumber:575,columnNumber:13},this)]},void 0,!0,{fileName:K,lineNumber:571,columnNumber:11},this)]},void 0,!0,{fileName:K,lineNumber:554,columnNumber:18},this)]},void 0,!0,{fileName:K,lineNumber:538,columnNumber:10},this)}function cr({stepId:e}){let[t,n]=(0,E.useState)(!1),{data:r}=d.useRequestLogStep(`A`,e,{enabled:t}),i=r?.reasoning_text??null;return(0,U.jsxDEV)(`details`,{className:`group/reason mt-3`,onToggle:e=>n(e.currentTarget.open),children:[(0,U.jsxDEV)(`summary`,{className:`flex items-center gap-2 cursor-pointer select-none list-none`,children:[(0,U.jsxDEV)(W,{className:`size-3 text-sand-400 transition-transform group-open/reason:rotate-0 -rotate-90 shrink-0`},void 0,!1,{fileName:K,lineNumber:596,columnNumber:9},this),(0,U.jsxDEV)(`span`,{className:`text-[10px] uppercase tracking-wider text-sand-500 font-medium`,children:`Reasoning`},void 0,!1,{fileName:K,lineNumber:597,columnNumber:9},this)]},void 0,!0,{fileName:K,lineNumber:595,columnNumber:7},this),t&&(0,U.jsxDEV)(`div`,{className:`mt-2 rounded-md bg-white/70 border border-sand-100 p-3 overflow-auto`,children:i?(0,U.jsxDEV)(X,{text:i,markdown:!0},void 0,!1,{fileName:K,lineNumber:602,columnNumber:28},this):r?(0,U.jsxDEV)(`p`,{className:`text-sm text-sand-400`,children:`No reasoning text captured.`},void 0,!1,{fileName:K,lineNumber:602,columnNumber:145},this):(0,U.jsxDEV)(`p`,{className:`text-sm text-sand-400`,children:`Loading...`},void 0,!1,{fileName:K,lineNumber:602,columnNumber:91},this)},void 0,!1,{fileName:K,lineNumber:601,columnNumber:18},this)]},void 0,!0,{fileName:K,lineNumber:594,columnNumber:10},this)}function lr({entry:e,tokensPerSecEnabled:t}){let n=e.generate,r=n!==null&&n.reasoningTokens!==null&&n.reasoningTokens!==void 0&&n.reasoningTokens>0,i=e.toolCalls.filter(e=>e.error).length;return(0,U.jsxDEV)(`details`,{open:!0,className:`group/step border-l border-sand-200 pl-3`,children:[(0,U.jsxDEV)(`summary`,{className:`flex items-center gap-2 py-2 cursor-pointer select-none list-none`,children:[(0,U.jsxDEV)(W,{className:`size-3.5 text-sand-400 transition-transform group-open/step:rotate-0 -rotate-90 shrink-0`},void 0,!1,{fileName:K,lineNumber:618,columnNumber:9},this),(0,U.jsxDEV)(`span`,{className:`text-[10px] px-1.5 py-0.5 rounded bg-sienna-100 text-sienna-700 font-mono shrink-0`,children:[`step `,e.stepIndex+1]},void 0,!0,{fileName:K,lineNumber:619,columnNumber:9},this),(0,U.jsxDEV)(`span`,{className:`text-[13px] font-semibold text-sand-900`,children:`LLM call`},void 0,!1,{fileName:K,lineNumber:622,columnNumber:9},this),n?.finishReason&&(0,U.jsxDEV)(`span`,{className:`text-[10px] px-1.5 py-0.5 rounded bg-sand-100 text-sand-500 font-mono shrink-0`,children:n.finishReason},void 0,!1,{fileName:K,lineNumber:623,columnNumber:36},this),n&&(n.fallbackCount??0)>0&&(0,U.jsxDEV)(`span`,{className:`text-[10px] px-1.5 py-0.5 rounded-full bg-caution-400/15 text-caution-500 font-medium uppercase shrink-0`,children:[n.requestedModelName,` → `,n.modelName]},void 0,!0,{fileName:K,lineNumber:626,columnNumber:59},this),r&&(0,U.jsxDEV)(`span`,{className:`text-[10px] px-1.5 py-0.5 rounded bg-blue-100 text-blue-600 font-medium shrink-0`,children:`reasoning`},void 0,!1,{fileName:K,lineNumber:629,columnNumber:26},this),i>0&&(0,U.jsxDEV)(`span`,{className:`text-[10px] px-1.5 py-0.5 rounded-full bg-red-100 text-red-600 font-medium uppercase shrink-0`,children:[i,` error`]},void 0,!0,{fileName:K,lineNumber:632,columnNumber:28},this),(0,U.jsxDEV)(`span`,{className:`ml-auto text-[11px] text-sand-400 tabular-nums shrink-0`,children:[e.toolCalls.length,` tools`]},void 0,!0,{fileName:K,lineNumber:635,columnNumber:9},this)]},void 0,!0,{fileName:K,lineNumber:617,columnNumber:7},this),(0,U.jsxDEV)(`div`,{className:`ml-4 mb-4 space-y-3`,children:[n&&(0,U.jsxDEV)(`div`,{className:`rounded-md border border-sand-100 bg-sand-50/70 p-3`,children:[(0,U.jsxDEV)(`div`,{className:`grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 xl:grid-cols-8 gap-x-4 gap-y-3`,children:[(0,U.jsxDEV)($,{label:`Duration`,value:Zn(n.durationMs)},void 0,!1,{fileName:K,lineNumber:643,columnNumber:15},this),(0,U.jsxDEV)($,{label:`TTFT`,value:Qn(n.ttftMs)},void 0,!1,{fileName:K,lineNumber:644,columnNumber:15},this),(0,U.jsxDEV)($,{label:`Tokens/sec`,value:tr(n.outputTokens,n.durationMs,n.ttftMs,t)},void 0,!1,{fileName:K,lineNumber:645,columnNumber:15},this),(0,U.jsxDEV)($,{label:`Input`,value:q(n.inputTokens??0)},void 0,!1,{fileName:K,lineNumber:646,columnNumber:15},this),(0,U.jsxDEV)($,{label:`Output`,value:q(n.outputTokens??0)},void 0,!1,{fileName:K,lineNumber:647,columnNumber:15},this),(0,U.jsxDEV)($,{label:`Cache Read`,value:q(n.cacheReadTokens??0)},void 0,!1,{fileName:K,lineNumber:648,columnNumber:15},this),(0,U.jsxDEV)($,{label:`Cache Write`,value:q(n.cacheCreationTokens??0)},void 0,!1,{fileName:K,lineNumber:649,columnNumber:15},this),(0,U.jsxDEV)($,{label:`Cache 5m / 1h`,value:`${n.cacheCreation5mTokens===null?`—`:q(n.cacheCreation5mTokens)} / ${n.cacheCreation1hTokens===null?`—`:q(n.cacheCreation1hTokens)}`},void 0,!1,{fileName:K,lineNumber:650,columnNumber:15},this),(0,U.jsxDEV)($,{value:n.costUsd===null?`—`:b(n.costUsd)},void 0,!1,{fileName:K,lineNumber:651,columnNumber:15},this),(0,U.jsxDEV)($,{label:`Reasoning`,value:n.reasoningTokens!==null&&n.reasoningTokens!==void 0?q(n.reasoningTokens):`—`},void 0,!1,{fileName:K,lineNumber:652,columnNumber:15},this)]},void 0,!0,{fileName:K,lineNumber:642,columnNumber:13},this),r&&(0,U.jsxDEV)(cr,{stepId:n.id},void 0,!1,{fileName:K,lineNumber:655,columnNumber:30},this)]},void 0,!0,{fileName:K,lineNumber:641,columnNumber:22},this),e.toolCalls.length>0&&(0,U.jsxDEV)(`div`,{className:`space-y-0.5`,children:e.toolCalls.map(e=>(0,U.jsxDEV)(sr,{entry:e},`${e.stepIndex}-${e.callIndex}-${e.toolCallId}`,!1,{fileName:K,lineNumber:659,columnNumber:46},this))},void 0,!1,{fileName:K,lineNumber:658,columnNumber:40},this)]},void 0,!0,{fileName:K,lineNumber:640,columnNumber:7},this)]},void 0,!0,{fileName:K,lineNumber:616,columnNumber:10},this)}function ur({steps:e,tokensPerSecEnabled:t}){let n=e.reduce((e,t)=>e+t.toolCalls.length,0);return(0,U.jsxDEV)(Z,{title:`Steps (${e.length} steps · ${n} tool calls)`,defaultOpen:!0,children:(0,U.jsxDEV)(`div`,{className:`space-y-1`,children:e.map(e=>(0,U.jsxDEV)(lr,{entry:e,tokensPerSecEnabled:t},e.stepIndex,!1,{fileName:K,lineNumber:674,columnNumber:28},this))},void 0,!1,{fileName:K,lineNumber:673,columnNumber:7},this)},void 0,!1,{fileName:K,lineNumber:672,columnNumber:10},this)}function dr(e){let t=new Map;function n(e){let n=t.get(e);if(n)return n;let r={stepIndex:e,generate:null,toolCalls:[]};return t.set(e,r),r}for(let t of e){let e=n(t.step_index);if(t.type===`generate`){e.generate={id:t.id,stepIndex:t.step_index,modelName:t.model_name,requestedModelName:t.requested_model_name,fallbackCount:t.fallback_count,inputTokens:t.input_tokens,outputTokens:t.output_tokens,cacheReadTokens:t.cache_read_tokens,cacheCreationTokens:t.cache_creation_tokens,cacheCreation5mTokens:t.cache_creation_5m_tokens,cacheCreation1hTokens:t.cache_creation_1h_tokens,costUsd:t.cost_usd,durationMs:t.duration_ms,ttftMs:t.ttft_ms,finishReason:t.finish_reason,reasoningTokens:t.reasoning_tokens};continue}t.type===`tool_call`&&e.toolCalls.push({id:t.id,stepIndex:t.step_index,callIndex:t.tool_call_index??e.toolCalls.length,toolCallId:t.tool_call_id??``,toolName:t.tool_name??``,durationMs:t.tool_duration_ms??0,error:t.error})}return[...t.values()].map(e=>({...e,toolCalls:e.toolCalls.toSorted((e,t)=>e.callIndex-t.callIndex)})).toSorted((e,t)=>e.stepIndex-t.stepIndex)}function fr(e){return e.type===`function_call`||e.type===`function_call_output`?`bg-caution-400/10`:e.role===`assistant`?`bg-sage-50`:`bg-sand-50`}function pr(e){return e.type===`function_call`?`fn: ${e.name??`unknown`}`:e.type===`function_call_output`?`fn result`:e.role??e.type}var mr=o({text:c()}),hr=s([c(),u(s([mr,J])),J]);function gr(e){let t=c().safeParse(e);if(t.success)return t.data;let n=u(s([mr,J])).safeParse(e);return n.success?n.data.map(e=>{let t=mr.safeParse(e);return t.success?t.data.text:JSON.stringify(e)}).join(`
2
+ `):JSON.stringify(e)}function _r({className:e,children:t}){return(0,U.jsxDEV)(`pre`,{className:`text-[12px] text-sand-700 whitespace-pre-wrap wrap-break-word font-mono leading-relaxed max-h-40 overflow-auto ${e??``}`,children:t},void 0,!1,{fileName:K,lineNumber:774,columnNumber:10},this)}function vr({history:e}){return(0,U.jsxDEV)(Z,{title:`History`,defaultOpen:!1,children:(0,U.jsxDEV)(`div`,{className:`space-y-1.5`,children:e.map((e,t)=>{let n=hr.safeParse(e.content);return(0,U.jsxDEV)(`div`,{className:`rounded-md px-3 py-2 ${fr(e)}`,children:[(0,U.jsxDEV)(`div`,{className:`text-[10px] uppercase tracking-wider text-sand-500 font-medium mb-1`,children:pr(e)},void 0,!1,{fileName:K,lineNumber:788,columnNumber:15},this),e.content!==null&&e.content!==void 0&&(0,U.jsxDEV)(_r,{children:n.success?gr(n.data):JSON.stringify(e.content)},void 0,!1,{fileName:K,lineNumber:791,columnNumber:71},this),e.arguments&&(0,U.jsxDEV)(_r,{children:e.arguments},void 0,!1,{fileName:K,lineNumber:794,columnNumber:34},this),e.output&&(0,U.jsxDEV)(_r,{children:e.output},void 0,!1,{fileName:K,lineNumber:795,columnNumber:31},this)]},`hist-${t}`,!0,{fileName:K,lineNumber:787,columnNumber:16},this)})},void 0,!1,{fileName:K,lineNumber:784,columnNumber:7},this)},void 0,!1,{fileName:K,lineNumber:783,columnNumber:10},this)}var yr=60,br=30,xr=18;function Sr(e,t=yr){let n=[];for(let r of e){if([...n,r.name].join(`, `).length>t)break;n.push(r.name)}return{names:n,omittedCount:e.length-n.length}}function Cr({tools:e}){let t=Sr(e),n=Sr(e,br),r=Sr(e,xr);return(0,U.jsxDEV)(U.Fragment,{children:[(0,U.jsxDEV)(`span`,{className:`shrink-0`,children:`·`},void 0,!1,{fileName:K,lineNumber:829,columnNumber:7},this),t.names.length>0&&(0,U.jsxDEV)(`span`,{className:`hidden shrink-0 xl:inline`,children:t.names.join(`, `)},void 0,!1,{fileName:K,lineNumber:830,columnNumber:33},this),t.omittedCount>0&&(0,U.jsxDEV)(`span`,{className:`hidden shrink-0 xl:inline`,children:[`+`,t.omittedCount]},void 0,!0,{fileName:K,lineNumber:831,columnNumber:33},this),n.names.length>0&&(0,U.jsxDEV)(`span`,{className:`hidden shrink-0 sm:inline xl:hidden`,children:n.names.join(`, `)},void 0,!1,{fileName:K,lineNumber:832,columnNumber:36},this),n.omittedCount>0&&(0,U.jsxDEV)(`span`,{className:`hidden shrink-0 sm:inline xl:hidden`,children:[`+`,n.omittedCount]},void 0,!0,{fileName:K,lineNumber:833,columnNumber:36},this),r.names.length>0&&(0,U.jsxDEV)(`span`,{className:`shrink-0 sm:hidden`,children:r.names.join(`, `)},void 0,!1,{fileName:K,lineNumber:834,columnNumber:35},this),r.omittedCount>0&&(0,U.jsxDEV)(`span`,{className:`shrink-0 sm:hidden`,children:[`+`,r.omittedCount]},void 0,!0,{fileName:K,lineNumber:835,columnNumber:35},this)]},void 0,!0)}function wr({code:e,fullCode:t}){let n=(0,E.useMemo)(()=>Or(e),[e]);return(0,U.jsxDEV)(`pre`,{"data-zod-parameter-schema":!0,className:`max-h-64 overflow-auto rounded-md bg-sand-900 px-3 py-2.5 font-mono text-[11px] leading-relaxed whitespace-pre text-sand-200 ${t?`cursor-help outline-none focus-visible:ring-2 focus-visible:ring-sienna-300`:``}`,tabIndex:t?0:void 0,title:t,children:t?(0,U.jsxDEV)(U.Fragment,{children:[(0,U.jsxDEV)(`span`,{"aria-hidden":`true`,children:n},void 0,!1,{fileName:K,lineNumber:848,columnNumber:11},this),(0,U.jsxDEV)(`span`,{className:`sr-only`,children:t},void 0,!1,{fileName:K,lineNumber:849,columnNumber:11},this)]},void 0,!0):n},void 0,!1,{fileName:K,lineNumber:846,columnNumber:10},this)}function Tr({tool:e}){return(0,U.jsxDEV)(`div`,{className:`min-w-0 rounded-md border border-sand-100 bg-sand-50/70 p-3`,children:[(0,U.jsxDEV)(`div`,{className:`break-all font-mono text-[13px] font-semibold text-sand-900`,children:e.name},void 0,!1,{fileName:K,lineNumber:859,columnNumber:7},this),e.description&&(0,U.jsxDEV)(`p`,{className:`mt-2 text-[12px] leading-relaxed text-sand-700`,children:e.description},void 0,!1,{fileName:K,lineNumber:860,columnNumber:28},this),(0,U.jsxDEV)(`div`,{className:`mt-3`,children:[(0,U.jsxDEV)(`div`,{className:`mb-1.5 text-[10px] font-medium uppercase tracking-wider text-sand-400`,children:[`Parameters (`,e.parameterCount,`)`]},void 0,!0,{fileName:K,lineNumber:862,columnNumber:9},this),(0,U.jsxDEV)(wr,{code:e.inputZod,fullCode:e.fullInputZod},void 0,!1,{fileName:K,lineNumber:865,columnNumber:9},this)]},void 0,!0,{fileName:K,lineNumber:861,columnNumber:7},this)]},void 0,!0,{fileName:K,lineNumber:858,columnNumber:10},this)}function Er({id:e,tools:n}){let[r,i]=(0,E.useState)(!1),a=t({...f.toolsViewQueryOptions(e),enabled:r,staleTime:e=>e.state.data&&e.state.data.length>0?1/0:0,refetchOnWindowFocus:!1,refetchOnReconnect:!1}),o=a.data!==void 0&&a.data.length>0;return(0,U.jsxDEV)(Z,{title:`Tools (${n.length})`,defaultOpen:!1,headerMetadata:(0,U.jsxDEV)(Cr,{tools:n},void 0,!1,{fileName:K,lineNumber:885,columnNumber:89},this),onOpenChange:i,children:a.isFetching&&!o?(0,U.jsxDEV)(`p`,{className:`text-[12px] text-sand-400`,children:`Loading tool contracts…`},void 0,!1,{fileName:K,lineNumber:886,columnNumber:39},this):a.isError||!o?(0,U.jsxDEV)(`p`,{className:`text-[12px] text-sand-400`,children:`Tool contracts could not be loaded.`},void 0,!1,{fileName:K,lineNumber:886,columnNumber:138},this):(0,U.jsxDEV)(`div`,{className:`space-y-2`,children:a.data.map((e,t)=>(0,U.jsxDEV)(Tr,{tool:e},`${e.name}-${t}`,!1,{fileName:K,lineNumber:887,columnNumber:44},this))},void 0,!1,{fileName:K,lineNumber:886,columnNumber:221},this)},void 0,!1,{fileName:K,lineNumber:885,columnNumber:10},this)}var Dr=/("(?:[^"\\]|\\.)*")|(\b\d+(?:\.\d+)?\b)|(\btype\b|\bz\b(?=\.))|(\b(?:string|number|boolean|null|unknown|Record)\b)|([{}[\]()<>|?:,.=])|([A-Za-z_$][\w$]*)|(\s+|.)/g;function Or(e){let t=[],n=!1;for(let r of e.matchAll(Dr)){let[e,i,a,o,s,c,l]=r,u=`${r.index}-${e}`;i||a?t.push((0,U.jsxDEV)(`span`,{className:`text-sage-400`,children:e},u,!1,{fileName:K,lineNumber:902,columnNumber:18},this)):o?(n=e===`type`,t.push((0,U.jsxDEV)(`span`,{className:`text-sienna-400`,children:e},u,!1,{fileName:K,lineNumber:908,columnNumber:18},this))):s?t.push((0,U.jsxDEV)(`span`,{className:`text-blue-300`,children:e},u,!1,{fileName:K,lineNumber:912,columnNumber:18},this)):c?t.push((0,U.jsxDEV)(`span`,{className:`text-sand-500`,children:e},u,!1,{fileName:K,lineNumber:916,columnNumber:18},this)):l&&n?(n=!1,t.push((0,U.jsxDEV)(`span`,{className:`font-semibold text-sand-50`,children:e},u,!1,{fileName:K,lineNumber:922,columnNumber:18},this))):t.push(e)}return t}function kr({id:e}){let{data:t}=f.useResponseTypeTs(e),[n,r]=(0,E.useState)(`zod`),{zod:i=null,typescript:a=null}=t??{},o=n===`zod`?i??a:a??i,s=(0,E.useMemo)(()=>o===null?null:Or(o),[o]);return!t||o===null||s===null?null:(0,U.jsxDEV)(`div`,{className:`panel overflow-hidden`,children:[(0,U.jsxDEV)(`div`,{className:`panel-header flex items-center px-4 py-2`,children:[(0,U.jsxDEV)(`span`,{className:`text-[11px] uppercase tracking-wider text-sand-500 font-medium`,children:`Response Type`},void 0,!1,{fileName:K,lineNumber:954,columnNumber:9},this),(0,U.jsxDEV)(`div`,{className:`ml-auto flex gap-1`,children:[{value:`zod`,label:`zod`,available:i!==null},{value:`ts`,label:`ts`,available:a!==null}].map(e=>(0,U.jsxDEV)(`button`,{type:`button`,disabled:!e.available,className:`px-3 py-1 text-[12px] font-mono rounded-md transition-colors ${n===e.value?`bg-sand-200 text-sand-700`:`text-sand-400 hover:text-sand-600 disabled:text-sand-300 disabled:cursor-not-allowed`}`,onClick:()=>r(e.value),children:e.label},e.value,!1,{fileName:K,lineNumber:966,columnNumber:36},this))},void 0,!1,{fileName:K,lineNumber:957,columnNumber:9},this)]},void 0,!0,{fileName:K,lineNumber:953,columnNumber:7},this),(0,U.jsxDEV)(`div`,{className:`relative`,children:[(0,U.jsxDEV)(Y,{text:o,dark:!0},void 0,!1,{fileName:K,lineNumber:972,columnNumber:9},this),(0,U.jsxDEV)(`pre`,{className:`bg-sand-900 px-4 py-3 text-[12px] text-sand-200 whitespace-pre-wrap wrap-break-word font-mono leading-relaxed max-h-64 overflow-auto`,children:s},void 0,!1,{fileName:K,lineNumber:974,columnNumber:9},this)]},void 0,!0,{fileName:K,lineNumber:971,columnNumber:7},this)]},void 0,!0,{fileName:K,lineNumber:952,columnNumber:10},this)}function Ar({id:e}){let{data:t,isLoading:r,error:i,isError:a}=f.useRequestLog(`A`,e),{data:o,isLoading:s,isError:c}=d.useRequestLogSteps(`T`,{request_log_id:e,num:0,page:1,orderBy:`id-asc`}),l=dr(o?.rows??[]);if(r||s)return(0,U.jsxDEV)(`div`,{className:`max-w-6xl mx-auto space-y-4`,children:[(0,U.jsxDEV)(`div`,{className:`h-4 w-32 bg-sand-200 rounded animate-pulse`},void 0,!1,{fileName:K,lineNumber:1005,columnNumber:9},this),(0,U.jsxDEV)(`div`,{className:`h-40 panel animate-pulse`},void 0,!1,{fileName:K,lineNumber:1006,columnNumber:9},this),(0,U.jsxDEV)(`div`,{className:`h-32 panel animate-pulse`},void 0,!1,{fileName:K,lineNumber:1007,columnNumber:9},this)]},void 0,!0,{fileName:K,lineNumber:1004,columnNumber:12},this);if(a||c||!t)return(0,U.jsxDEV)(`div`,{className:`max-w-6xl mx-auto`,children:[(0,U.jsxDEV)(n,{to:`/logs`,className:`flex items-center gap-1 text-[13px] text-sand-500 hover:text-sienna-500 mb-4`,children:[(0,U.jsxDEV)(Mn,{className:`size-3.5`},void 0,!1,{fileName:K,lineNumber:1013,columnNumber:11},this),`Back to Logs`]},void 0,!0,{fileName:K,lineNumber:1012,columnNumber:9},this),(0,U.jsxDEV)(`p`,{role:`alert`,className:`text-danger-500 text-sm`,children:a?p(i)&&i.code===404?`Request not found.`:`Failed to load request.`:c?`Failed to load request steps.`:`Request not found.`},void 0,!1,{fileName:K,lineNumber:1016,columnNumber:9},this)]},void 0,!0,{fileName:K,lineNumber:1011,columnNumber:12},this);let u=l.flatMap(e=>e.toolCalls),m=u.find(e=>e.toolName===`image_generation`)?.id??null,h=l.length>0,g=er(t),_=t.history??null,v=_!==null&&_.length>0,y=t.tools??null,b=y!==null&&y.length>0,x=t.is_structured?(0,U.jsxDEV)(kr,{id:e},void 0,!1,{fileName:K,lineNumber:1031,columnNumber:50},this):null,S=(0,U.jsxDEV)(`div`,{className:`space-y-4`,children:[(0,U.jsxDEV)(Z,{title:`System`,children:(0,U.jsxDEV)(`div`,{className:`relative`,children:[(0,U.jsxDEV)(Y,{text:t.system_prompt??`null`},void 0,!1,{fileName:K,lineNumber:1035,columnNumber:11},this),(0,U.jsxDEV)(X,{text:t.system_prompt??`null`,markdown:!0},void 0,!1,{fileName:K,lineNumber:1036,columnNumber:11},this)]},void 0,!0,{fileName:K,lineNumber:1034,columnNumber:9},this)},void 0,!1,{fileName:K,lineNumber:1033,columnNumber:7},this),(0,U.jsxDEV)(Z,{title:`User`,children:(0,U.jsxDEV)(`div`,{className:`space-y-3`,children:[(0,U.jsxDEV)(`div`,{className:`relative`,children:[(0,U.jsxDEV)(Y,{text:t.user_prompt??`null`},void 0,!1,{fileName:K,lineNumber:1042,columnNumber:13},this),(0,U.jsxDEV)(X,{text:t.user_prompt??`null`,markdown:!0},void 0,!1,{fileName:K,lineNumber:1043,columnNumber:13},this)]},void 0,!0,{fileName:K,lineNumber:1041,columnNumber:11},this),(0,U.jsxDEV)(or,{images:t.input_images,stepId:m},void 0,!1,{fileName:K,lineNumber:1045,columnNumber:11},this)]},void 0,!0,{fileName:K,lineNumber:1040,columnNumber:9},this)},void 0,!1,{fileName:K,lineNumber:1039,columnNumber:7},this)]},void 0,!0,{fileName:K,lineNumber:1032,columnNumber:26},this);return(0,U.jsxDEV)(`div`,{className:`mx-auto space-y-4 ${h?`max-w-[120rem]`:`max-w-6xl`}`,children:[(0,U.jsxDEV)(n,{to:`/logs`,className:`inline-flex items-center gap-1 text-[13px] text-sand-500 hover:text-sienna-500 transition-colors`,children:[(0,U.jsxDEV)(Mn,{className:`size-3.5`},void 0,!1,{fileName:K,lineNumber:1051,columnNumber:9},this),`Back to Logs`]},void 0,!0,{fileName:K,lineNumber:1050,columnNumber:7},this),(0,U.jsxDEV)(Kn,{data:t},void 0,!1,{fileName:K,lineNumber:1055,columnNumber:7},this),t.error_message&&(0,U.jsxDEV)(Gn,{message:t.error_message},void 0,!1,{fileName:K,lineNumber:1057,columnNumber:30},this),v&&(0,U.jsxDEV)(vr,{history:_},void 0,!1,{fileName:K,lineNumber:1059,columnNumber:22},this),h?(0,U.jsxDEV)(`div`,{className:`flex flex-col lg:flex-row gap-4 items-stretch lg:items-start`,children:[(0,U.jsxDEV)(`div`,{className:`order-1 lg:order-2 flex-1 min-w-0 space-y-4`,children:[x,b&&(0,U.jsxDEV)(Er,{id:e,tools:y},void 0,!1,{fileName:K,lineNumber:1067,columnNumber:26},this),(0,U.jsxDEV)(ur,{steps:l,tokensPerSecEnabled:g},void 0,!1,{fileName:K,lineNumber:1068,columnNumber:13},this)]},void 0,!0,{fileName:K,lineNumber:1065,columnNumber:11},this),(0,U.jsxDEV)(`div`,{className:`order-2 lg:order-1 flex-1 min-w-0`,children:S},void 0,!1,{fileName:K,lineNumber:1070,columnNumber:11},this)]},void 0,!0,{fileName:K,lineNumber:1064,columnNumber:5},this):(0,U.jsxDEV)(U.Fragment,{children:[x,b&&(0,U.jsxDEV)(Er,{id:e,tools:y},void 0,!1,{fileName:K,lineNumber:1073,columnNumber:24},this),S]},void 0,!0),(0,U.jsxDEV)(Z,{title:`Response`,children:(0,U.jsxDEV)(`div`,{className:`relative`,children:[(0,U.jsxDEV)(Y,{text:t.response},void 0,!1,{fileName:K,lineNumber:1079,columnNumber:11},this),(0,U.jsxDEV)(X,{text:t.response,markdown:!0},void 0,!1,{fileName:K,lineNumber:1080,columnNumber:11},this)]},void 0,!0,{fileName:K,lineNumber:1078,columnNumber:9},this)},void 0,!1,{fileName:K,lineNumber:1077,columnNumber:7},this),(0,U.jsxDEV)(qn,{data:t,toolCallCount:u.length},void 0,!1,{fileName:K,lineNumber:1084,columnNumber:7},this),(0,U.jsxDEV)(`div`,{className:`pb-8`},void 0,!1,{fileName:K,lineNumber:1086,columnNumber:7},this)]},void 0,!0,{fileName:K,lineNumber:1049,columnNumber:10},this)}export{Ln as component};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-Dw2cE7zH.js";import{v as t}from"./vendor-tanstack-Bf_jag9G.js";import{a as n,t as r}from"./vendor-react-CUFFrVN9.js";import{n as i,o as a}from"./services.generated-CefiDXEv.js";import{i as o,n as s,r as c}from"./use-oauth-login-flow-Bzdh28Ws.js";import{u as l}from"./index-BA7uQ-6c.js";import{t as u}from"./use-update-token-mutation-CfJKaxmR.js";import{t as d}from"./plus-sdACTfH0.js";var f=e(n(),1),p=r(),m=`/home/runner/work/qgrid/qgrid/packages/web/src/components/qgrid/DeviceCodeEntry.tsx`;function h(e){let t=Math.max(Math.ceil(e/1e3),0),n=Math.floor(t/60),r=t%60;return`${n}:${String(r).padStart(2,`0`)}`}function g({expiresAt:e}){let[t,n]=(0,f.useState)(()=>Date.now());return(0,f.useEffect)(()=>{let e=window.setInterval(()=>n(Date.now()),1e3);return()=>clearInterval(e)},[]),(0,p.jsxDEV)(`span`,{className:`tabular-nums`,children:h(e-t)},void 0,!1,{fileName:m,lineNumber:22,columnNumber:10},this)}function _({flow:e,onRestart:t}){return(0,p.jsxDEV)(`div`,{className:`space-y-2`,children:[e.status===`starting`&&(0,p.jsxDEV)(`p`,{className:`flex items-center gap-1.5 text-[12px] text-sand-600`,children:[(0,p.jsxDEV)(`span`,{className:`w-3.5 h-3.5 border-2 border-sand-400 border-t-transparent rounded-full animate-spin`},void 0,!1,{fileName:m,lineNumber:40,columnNumber:11},this),`Requesting device code...`]},void 0,!0,{fileName:m,lineNumber:39,columnNumber:9},this),e.status===`waiting`&&(0,p.jsxDEV)(p.Fragment,{children:[(0,p.jsxDEV)(`p`,{className:`text-[12px] text-sand-600 leading-relaxed`,children:`아래 링크를 열어 xAI 계정으로 로그인한 뒤 이 코드를 입력하세요. 승인되면 토큰이 자동으로 추가됩니다.`},void 0,!1,{fileName:m,lineNumber:47,columnNumber:11},this),(0,p.jsxDEV)(`div`,{className:`rounded-md border border-sand-200 bg-sand-50 px-3 py-3 text-center`,children:[(0,p.jsxDEV)(`p`,{className:`text-[10px] uppercase tracking-wider text-sand-500 font-medium`,children:`Device code`},void 0,!1,{fileName:m,lineNumber:52,columnNumber:13},this),(0,p.jsxDEV)(`p`,{className:`mt-1 font-mono text-lg tracking-widest text-sand-900 select-all`,children:e.userCode},void 0,!1,{fileName:m,lineNumber:55,columnNumber:13},this)]},void 0,!0,{fileName:m,lineNumber:51,columnNumber:11},this),(0,p.jsxDEV)(`a`,{href:e.verificationUriComplete??e.verificationUri,target:`_blank`,rel:`noopener noreferrer`,className:`block w-full py-2.5 text-sm font-medium rounded-md bg-sand-900 text-white text-center hover:bg-sand-800 transition-colors duration-150`,children:`Open xAI to approve`},void 0,!1,{fileName:m,lineNumber:59,columnNumber:11},this),(0,p.jsxDEV)(`p`,{className:`flex items-center justify-between text-[11px] text-sand-500`,children:[(0,p.jsxDEV)(`span`,{className:`flex items-center gap-1.5`,children:[(0,p.jsxDEV)(`span`,{className:`w-2.5 h-2.5 border-2 border-sand-400 border-t-transparent rounded-full animate-spin`},void 0,!1,{fileName:m,lineNumber:69,columnNumber:15},this),e.slowDown?`Waiting for approval (polling slowed down)...`:`Waiting for approval...`]},void 0,!0,{fileName:m,lineNumber:68,columnNumber:13},this),(0,p.jsxDEV)(`span`,{children:[`expires in `,(0,p.jsxDEV)(g,{expiresAt:e.expiresAt},void 0,!1,{fileName:m,lineNumber:75,columnNumber:26},this)]},void 0,!0,{fileName:m,lineNumber:74,columnNumber:13},this)]},void 0,!0,{fileName:m,lineNumber:67,columnNumber:11},this)]},void 0,!0),e.status===`added`&&(0,p.jsxDEV)(`p`,{className:`text-[12px] text-sage-600`,children:[`Token "`,e.name,`" added.`]},void 0,!0,{fileName:m,lineNumber:82,columnNumber:9},this),e.status===`expired`&&(0,p.jsxDEV)(`p`,{className:`text-[11px] text-red-500`,children:`Device code가 만료되었습니다 — 로그인을 다시 시작하세요.`},void 0,!1,{fileName:m,lineNumber:86,columnNumber:9},this),e.status===`error`&&(0,p.jsxDEV)(`p`,{className:`text-[11px] text-red-500`,children:e.message},void 0,!1,{fileName:m,lineNumber:91,columnNumber:35},this),(0,p.jsxDEV)(`button`,{type:`button`,className:`w-full py-1.5 text-[12px] text-sand-500 hover:text-sand-700 transition-colors duration-150`,onClick:t,children:`처음부터 다시 시작`},void 0,!1,{fileName:m,lineNumber:93,columnNumber:7},this)]},void 0,!0,{fileName:m,lineNumber:37,columnNumber:5},this)}var v=`/home/runner/work/qgrid/qgrid/packages/web/src/components/qgrid/AddTokenModal.tsx`;function y({light:e}){return(0,p.jsxDEV)(`span`,{className:`flex items-center gap-1.5`,children:[(0,p.jsxDEV)(`span`,{className:`w-3.5 h-3.5 border-2 border-t-transparent rounded-full animate-spin ${e?`border-white`:`border-sand-400`}`},void 0,!1,{fileName:v,lineNumber:13,columnNumber:7},this),`Waiting for login...`]},void 0,!0,{fileName:v,lineNumber:12,columnNumber:5},this)}function b(){return(0,p.jsxDEV)(`div`,{className:`flex items-center gap-3`,children:[(0,p.jsxDEV)(`div`,{className:`flex-1 h-px bg-sand-200`},void 0,!1,{fileName:v,lineNumber:24,columnNumber:7},this),(0,p.jsxDEV)(`span`,{className:`text-[10px] text-sand-400 uppercase`,children:`or`},void 0,!1,{fileName:v,lineNumber:25,columnNumber:7},this),(0,p.jsxDEV)(`div`,{className:`flex-1 h-px bg-sand-200`},void 0,!1,{fileName:v,lineNumber:26,columnNumber:7},this)]},void 0,!0,{fileName:v,lineNumber:23,columnNumber:5},this)}function x({disabled:e,loadingProvider:t,onStart:n,onStartGrokDevice:r}){let i=`w-full py-2.5 text-sm font-medium rounded-md border border-sand-300 text-sand-700 hover:bg-sand-100 disabled:opacity-50 transition-colors duration-150 flex items-center justify-center gap-2`;return(0,p.jsxDEV)(`div`,{className:`space-y-2`,children:[(0,p.jsxDEV)(`button`,{type:`button`,className:`w-full py-2.5 text-sm font-medium rounded-md bg-sand-900 text-white hover:bg-sand-800 disabled:opacity-50 transition-colors duration-150 flex items-center justify-center gap-2`,disabled:e,onClick:()=>n(`openai`),children:t===`openai`?(0,p.jsxDEV)(y,{light:!0},void 0,!1,{fileName:v,lineNumber:55,columnNumber:11},this):(0,p.jsxDEV)(p.Fragment,{children:[(0,p.jsxDEV)(l,{className:`size-4`},void 0,!1,{fileName:v,lineNumber:58,columnNumber:13},this),`Login with OpenAI`]},void 0,!0)},void 0,!1,{fileName:v,lineNumber:48,columnNumber:7},this),(0,p.jsxDEV)(b,{},void 0,!1,{fileName:v,lineNumber:64,columnNumber:7},this),(0,p.jsxDEV)(`button`,{type:`button`,className:i,disabled:e,onClick:()=>n(`anthropic`),children:t===`anthropic`?(0,p.jsxDEV)(y,{light:!1},void 0,!1,{fileName:v,lineNumber:73,columnNumber:11},this):(0,p.jsxDEV)(p.Fragment,{children:[(0,p.jsxDEV)(l,{className:`size-4`},void 0,!1,{fileName:v,lineNumber:76,columnNumber:13},this),`Login with Claude`]},void 0,!0)},void 0,!1,{fileName:v,lineNumber:66,columnNumber:7},this),(0,p.jsxDEV)(b,{},void 0,!1,{fileName:v,lineNumber:82,columnNumber:7},this),(0,p.jsxDEV)(`button`,{type:`button`,className:i,disabled:e,onClick:r,children:t===`grok`?(0,p.jsxDEV)(y,{light:!1},void 0,!1,{fileName:v,lineNumber:86,columnNumber:11},this):(0,p.jsxDEV)(p.Fragment,{children:[(0,p.jsxDEV)(l,{className:`size-4`},void 0,!1,{fileName:v,lineNumber:89,columnNumber:13},this),`Login with xAI`]},void 0,!0)},void 0,!1,{fileName:v,lineNumber:84,columnNumber:7},this)]},void 0,!0,{fileName:v,lineNumber:47,columnNumber:5},this)}function S(){let[e,t]=(0,f.useState)(!1),[n,r]=(0,f.useState)(``),i=s(),a=()=>{t(!1),r(``),i.reset()},l=async e=>{await i.submitCode(e)&&a()};return(0,p.jsxDEV)(p.Fragment,{children:[(0,p.jsxDEV)(`button`,{type:`button`,className:`px-3.5 py-1.5 text-[12px] font-medium rounded-lg bg-sienna-500 text-white hover:bg-sienna-600 disabled:opacity-50 transition-all duration-150 active:scale-[0.97] flex items-center gap-1.5 shadow-sm`,onClick:()=>t(!0),children:[(0,p.jsxDEV)(d,{className:`size-3.5`},void 0,!1,{fileName:v,lineNumber:120,columnNumber:9},this),`Add Token`]},void 0,!0,{fileName:v,lineNumber:115,columnNumber:7},this),e&&(0,p.jsxDEV)(`div`,{className:`fixed inset-0 z-50 flex items-start justify-center pt-[15vh]`,children:[(0,p.jsxDEV)(`div`,{className:`absolute inset-0 bg-sand-900/8 backdrop-blur-sm`,onClick:a,onKeyDown:()=>{}},void 0,!1,{fileName:v,lineNumber:126,columnNumber:11},this),(0,p.jsxDEV)(`div`,{className:`relative panel shadow-xl w-full max-w-md mx-4`,children:[(0,p.jsxDEV)(`div`,{className:`px-5 py-4 border-b border-sand-100/50`,children:(0,p.jsxDEV)(`h2`,{className:`text-base font-medium text-sand-900`,children:`Add Token`},void 0,!1,{fileName:v,lineNumber:134,columnNumber:15},this)},void 0,!1,{fileName:v,lineNumber:133,columnNumber:13},this),(0,p.jsxDEV)(`div`,{className:`px-5 py-4 space-y-4`,children:[(0,p.jsxDEV)(`div`,{children:[(0,p.jsxDEV)(`label`,{htmlFor:`token-name`,className:`text-[10px] uppercase tracking-wider text-sand-500 font-medium`,children:`Name *`},void 0,!1,{fileName:v,lineNumber:140,columnNumber:17},this),(0,p.jsxDEV)(o,{value:n,onChange:e=>r(e.target.value),placeholder:`e.g. your-token-name`,className:`mt-1 w-full border border-sand-200 rounded-md px-3 py-2 text-sm text-sand-900 bg-white placeholder:text-sand-300 focus:outline-none focus:border-sienna-300`},void 0,!1,{fileName:v,lineNumber:146,columnNumber:17},this)]},void 0,!0,{fileName:v,lineNumber:139,columnNumber:15},this),i.codeEntryProvider?(0,p.jsxDEV)(c,{provider:i.codeEntryProvider,isPending:i.completeMutation.isPending,isError:i.completeMutation.isError,onSubmit:e=>void l(e),onRestart:i.reset},void 0,!1,{fileName:v,lineNumber:156,columnNumber:17},this):i.deviceFlow?(0,p.jsxDEV)(_,{flow:i.deviceFlow,onRestart:i.reset},void 0,!1,{fileName:v,lineNumber:164,columnNumber:17},this):(0,p.jsxDEV)(x,{disabled:!n.trim()||i.loadingProvider!==null,loadingProvider:i.loadingProvider,onStart:e=>void i.start(e,n),onStartGrokDevice:()=>void i.startDevice(n,a)},void 0,!1,{fileName:v,lineNumber:166,columnNumber:17},this)]},void 0,!0,{fileName:v,lineNumber:137,columnNumber:13},this),(0,p.jsxDEV)(`div`,{className:`px-5 py-3 border-t border-sand-100/50 flex items-center justify-end gap-2`,children:(0,p.jsxDEV)(`button`,{type:`button`,className:`px-3 py-1 text-xs font-medium rounded-md border border-sand-200 text-sand-600 hover:bg-sand-100 transition-colors duration-150`,onClick:a,children:`Cancel`},void 0,!1,{fileName:v,lineNumber:176,columnNumber:15},this)},void 0,!1,{fileName:v,lineNumber:175,columnNumber:13},this)]},void 0,!0,{fileName:v,lineNumber:132,columnNumber:11},this)]},void 0,!0,{fileName:v,lineNumber:125,columnNumber:9},this)]},void 0,!0)}var C=`~icons/lucide/pencil.jsx`,w=e=>(0,p.jsxDEV)(`svg`,{viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`,...e,children:(0,p.jsxDEV)(`path`,{fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497zM15 5l4 4`},void 0,!1,{fileName:C,lineNumber:2,columnNumber:96},void 0)},void 0,!1,{fileName:C,lineNumber:2,columnNumber:31},void 0),T=`~icons/lucide/trash-2.jsx`,E=e=>(0,p.jsxDEV)(`svg`,{viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`,...e,children:(0,p.jsxDEV)(`path`,{fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M10 11v6m4-6v6m5-11v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6M3 6h18M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`},void 0,!1,{fileName:T,lineNumber:2,columnNumber:96},void 0)},void 0,!1,{fileName:T,lineNumber:2,columnNumber:31},void 0);function D(e){let t=e.accessToken;return t?t.length<=12?t:`${t.slice(0,8)}...${t.slice(-4)}`:`—`}var O=`/home/runner/work/qgrid/qgrid/packages/web/src/components/qgrid/TokenTable.tsx`;function k(e){let t=e.credentials;if(`accessTokenExpiresAt`in t)return t.accessTokenExpiresAt;if(`authMode`in t){let e=Date.parse(t.expiresAt);return Number.isNaN(e)?null:e}return t.expiresAt}function A(e){if(!e)return{text:``,color:``};let t=e-Date.now();if(t<=0)return{text:`expired`,color:`text-red-500`};let n=Math.floor(t/36e5),r=Math.floor(t%36e5/6e4),i=n>0?`${n}h ${r}m`:`${r}m`;return t<36e5?{text:i,color:`text-amber-500`}:{text:i,color:`text-sand-400`}}function j({data:e,isLoading:n}){let[r,a]=(0,f.useState)(null),[s,c]=(0,f.useState)(null),[l,d]=(0,f.useState)(``),m=t(),h=i.useRemoveTokenMutation(),g=u(),_=i.useToggleTokenMutation(),v=()=>Promise.all([m.invalidateQueries({queryKey:[`Token`]}),m.invalidateQueries({queryKey:[`Qgrid`]})]),y=async e=>{await _.mutateAsync({id:e.id}),await v()},b=async()=>{r&&(await h.mutateAsync({id:r.id}),await v(),a(null))},x=e=>{c(e),d(e.name??``)},S=async()=>{s&&(await g.mutateAsync({id:s.id,name:l.trim()}),await v(),c(null))};if(n)return(0,p.jsxDEV)(`div`,{className:`space-y-2`,children:Array.from({length:3}).map((e,t)=>(0,p.jsxDEV)(`div`,{className:`h-12 bg-sand-100 rounded-md animate-pulse`},`skeleton-${t}`,!1,{fileName:O,lineNumber:101,columnNumber:11},this))},void 0,!1,{fileName:O,lineNumber:99,columnNumber:7},this);let C=e??[];return C.length===0?(0,p.jsxDEV)(`div`,{className:`text-sand-400 text-center py-16 text-sm`,children:[`No tokens registered. Click `,(0,p.jsxDEV)(`strong`,{className:`text-sand-600`,children:`Add Token`},void 0,!1,{fileName:O,lineNumber:112,columnNumber:37},this),` to get started.`]},void 0,!0,{fileName:O,lineNumber:111,columnNumber:7},this):(0,p.jsxDEV)(p.Fragment,{children:[(0,p.jsxDEV)(`div`,{className:`panel overflow-hidden`,children:(0,p.jsxDEV)(`div`,{className:`overflow-x-auto`,children:(0,p.jsxDEV)(`table`,{className:`w-full min-w-[640px] text-[13px]`,children:[(0,p.jsxDEV)(`thead`,{children:(0,p.jsxDEV)(`tr`,{className:`panel-header`,children:[(0,p.jsxDEV)(`th`,{className:`text-left px-5 py-2.5 text-[10px] uppercase tracking-wider text-sand-400 font-medium`,children:`Provider`},void 0,!1,{fileName:O,lineNumber:127,columnNumber:17},this),(0,p.jsxDEV)(`th`,{className:`text-left px-5 py-2.5 text-[10px] uppercase tracking-wider text-sand-400 font-medium`,children:`Name`},void 0,!1,{fileName:O,lineNumber:130,columnNumber:17},this),(0,p.jsxDEV)(`th`,{className:`text-left px-5 py-2.5 text-[10px] uppercase tracking-wider text-sand-400 font-medium`,children:`Token`},void 0,!1,{fileName:O,lineNumber:133,columnNumber:17},this),(0,p.jsxDEV)(`th`,{className:`text-left px-5 py-2.5 text-[10px] uppercase tracking-wider text-sand-400 font-medium`,children:`Status`},void 0,!1,{fileName:O,lineNumber:136,columnNumber:17},this),(0,p.jsxDEV)(`th`,{className:`text-left px-5 py-2.5 text-[10px] uppercase tracking-wider text-sand-400 font-medium`,children:`Expires`},void 0,!1,{fileName:O,lineNumber:139,columnNumber:17},this),(0,p.jsxDEV)(`th`,{className:`w-20 px-3 py-2.5`},void 0,!1,{fileName:O,lineNumber:142,columnNumber:17},this)]},void 0,!0,{fileName:O,lineNumber:126,columnNumber:15},this)},void 0,!1,{fileName:O,lineNumber:125,columnNumber:13},this),(0,p.jsxDEV)(`tbody`,{className:`divide-y divide-sand-100/80`,children:C.map(e=>{let t=A(k(e));return(0,p.jsxDEV)(`tr`,{className:`transition-colors duration-150 hover:bg-sand-100/60 ${e.active?``:`opacity-50`}`,children:[(0,p.jsxDEV)(`td`,{className:`px-5 py-3`,children:(0,p.jsxDEV)(`span`,{className:`text-xs font-medium text-sand-500 uppercase`,children:e.provider},void 0,!1,{fileName:O,lineNumber:155,columnNumber:23},this)},void 0,!1,{fileName:O,lineNumber:154,columnNumber:21},this),(0,p.jsxDEV)(`td`,{className:`px-5 py-3`,children:e.name?(0,p.jsxDEV)(`span`,{className:`text-sm text-sand-700`,children:e.name},void 0,!1,{fileName:O,lineNumber:161,columnNumber:25},this):(0,p.jsxDEV)(`span`,{className:`text-[11px] text-sand-400`,children:`—`},void 0,!1,{fileName:O,lineNumber:163,columnNumber:25},this)},void 0,!1,{fileName:O,lineNumber:159,columnNumber:21},this),(0,p.jsxDEV)(`td`,{className:`px-5 py-3`,children:(0,p.jsxDEV)(`code`,{className:`text-[13px] font-mono text-sand-800`,children:D(e.credentials)},void 0,!1,{fileName:O,lineNumber:167,columnNumber:23},this)},void 0,!1,{fileName:O,lineNumber:166,columnNumber:21},this),(0,p.jsxDEV)(`td`,{className:`px-5 py-3`,children:(0,p.jsxDEV)(`button`,{type:`button`,className:`relative inline-flex h-5 w-9 items-center rounded-full transition-colors duration-200 ${e.active?`bg-sage-400`:`bg-sand-300`}`,onClick:()=>y(e),disabled:_.isPending||!e.active&&e.reauth_required,title:!e.active&&e.reauth_required?`재로그인이 필요한 토큰입니다`:void 0,children:(0,p.jsxDEV)(`span`,{className:`inline-block h-3.5 w-3.5 rounded-full bg-white transition-transform duration-200 ${e.active?`translate-x-4.5`:`translate-x-0.5`}`},void 0,!1,{fileName:O,lineNumber:185,columnNumber:25},this)},void 0,!1,{fileName:O,lineNumber:172,columnNumber:23},this)},void 0,!1,{fileName:O,lineNumber:171,columnNumber:21},this),(0,p.jsxDEV)(`td`,{className:`px-5 py-3`,children:t.text&&(0,p.jsxDEV)(`span`,{className:`text-xs ${t.color}`,children:t.text},void 0,!1,{fileName:O,lineNumber:192,columnNumber:25},this)},void 0,!1,{fileName:O,lineNumber:190,columnNumber:21},this),(0,p.jsxDEV)(`td`,{className:`px-3 py-3`,children:(0,p.jsxDEV)(`div`,{className:`flex items-center gap-1`,children:[(0,p.jsxDEV)(`button`,{type:`button`,className:`p-1 rounded text-sand-400 hover:text-sienna-500 transition-colors duration-150`,onClick:()=>x(e),children:(0,p.jsxDEV)(w,{className:`size-4`},void 0,!1,{fileName:O,lineNumber:202,columnNumber:27},this)},void 0,!1,{fileName:O,lineNumber:197,columnNumber:25},this),(0,p.jsxDEV)(`button`,{type:`button`,className:`p-1 rounded text-sand-400 hover:text-red-500 transition-colors duration-150`,onClick:()=>a(e),children:(0,p.jsxDEV)(E,{className:`size-4`},void 0,!1,{fileName:O,lineNumber:209,columnNumber:27},this)},void 0,!1,{fileName:O,lineNumber:204,columnNumber:25},this)]},void 0,!0,{fileName:O,lineNumber:196,columnNumber:23},this)},void 0,!1,{fileName:O,lineNumber:195,columnNumber:21},this)]},e.id,!0,{fileName:O,lineNumber:150,columnNumber:19},this)})},void 0,!1,{fileName:O,lineNumber:145,columnNumber:13},this)]},void 0,!0,{fileName:O,lineNumber:124,columnNumber:11},this)},void 0,!1,{fileName:O,lineNumber:123,columnNumber:9},this)},void 0,!1,{fileName:O,lineNumber:120,columnNumber:7},this),s&&(0,p.jsxDEV)(`div`,{className:`fixed inset-0 z-50 flex items-start justify-center pt-[15vh]`,children:[(0,p.jsxDEV)(`div`,{className:`absolute inset-0 bg-sand-900/8 backdrop-blur-sm`,onClick:()=>c(null),onKeyDown:()=>{}},void 0,!1,{fileName:O,lineNumber:224,columnNumber:11},this),(0,p.jsxDEV)(`div`,{className:`relative panel shadow-xl w-full max-w-sm mx-4`,children:[(0,p.jsxDEV)(`div`,{className:`px-5 py-4 border-b border-sand-100/60`,children:(0,p.jsxDEV)(`h3`,{className:`text-base font-medium text-sand-900`,children:`Edit Token`},void 0,!1,{fileName:O,lineNumber:231,columnNumber:15},this)},void 0,!1,{fileName:O,lineNumber:230,columnNumber:13},this),(0,p.jsxDEV)(`div`,{className:`px-5 py-4 space-y-3`,children:(0,p.jsxDEV)(`div`,{children:[(0,p.jsxDEV)(`label`,{htmlFor:`token-name`,className:`text-[10px] uppercase tracking-wider text-sand-500 font-medium`,children:`Name`},void 0,!1,{fileName:O,lineNumber:235,columnNumber:17},this),(0,p.jsxDEV)(o,{value:l,onChange:e=>d(e.target.value),placeholder:`e.g. prod, dev, team-a`,className:`mt-1 w-full border border-sand-200 rounded-md px-3 py-2 text-sm text-sand-900 bg-white placeholder:text-sand-300 focus:outline-none focus:border-sienna-300`},void 0,!1,{fileName:O,lineNumber:241,columnNumber:17},this)]},void 0,!0,{fileName:O,lineNumber:234,columnNumber:15},this)},void 0,!1,{fileName:O,lineNumber:233,columnNumber:13},this),(0,p.jsxDEV)(`div`,{className:`px-5 py-3 border-t border-sand-100/60 flex items-center justify-end gap-2`,children:[(0,p.jsxDEV)(`button`,{type:`button`,className:`px-3 py-1 text-xs font-medium rounded-md border border-sand-200 text-sand-600 hover:bg-sand-100 transition-colors duration-150`,onClick:()=>c(null),children:`Cancel`},void 0,!1,{fileName:O,lineNumber:250,columnNumber:15},this),(0,p.jsxDEV)(`button`,{type:`button`,className:`px-3 py-1 text-xs font-medium rounded-md bg-sienna-400 text-white hover:bg-sienna-500 disabled:opacity-50 transition-colors duration-150`,disabled:g.isPending,onClick:S,children:g.isPending?`Saving...`:`Save`},void 0,!1,{fileName:O,lineNumber:257,columnNumber:15},this)]},void 0,!0,{fileName:O,lineNumber:249,columnNumber:13},this)]},void 0,!0,{fileName:O,lineNumber:229,columnNumber:11},this)]},void 0,!0,{fileName:O,lineNumber:223,columnNumber:9},this),r&&(0,p.jsxDEV)(`div`,{className:`fixed inset-0 z-50 flex items-start justify-center pt-[15vh]`,children:[(0,p.jsxDEV)(`div`,{className:`absolute inset-0 bg-sand-900/8 backdrop-blur-sm`,onClick:()=>a(null),onKeyDown:()=>{}},void 0,!1,{fileName:O,lineNumber:273,columnNumber:11},this),(0,p.jsxDEV)(`div`,{className:`relative panel shadow-xl w-full max-w-sm mx-4`,children:[(0,p.jsxDEV)(`div`,{className:`px-5 py-4`,children:[(0,p.jsxDEV)(`h3`,{className:`text-base font-medium text-sand-900`,children:`Remove Token`},void 0,!1,{fileName:O,lineNumber:280,columnNumber:15},this),(0,p.jsxDEV)(`p`,{className:`text-sm text-sand-700 mt-2`,children:[`Are you sure you want to remove`,` `,(0,p.jsxDEV)(`code`,{className:`text-[13px] font-mono text-sand-800`,children:D(r.credentials)},void 0,!1,{fileName:O,lineNumber:283,columnNumber:17},this),r.name&&(0,p.jsxDEV)(`span`,{className:`text-sand-500`,children:[` (`,r.name,`)`]},void 0,!0,{fileName:O,lineNumber:286,columnNumber:39},this),`?`]},void 0,!0,{fileName:O,lineNumber:281,columnNumber:15},this)]},void 0,!0,{fileName:O,lineNumber:279,columnNumber:13},this),(0,p.jsxDEV)(`div`,{className:`px-5 py-3 border-t border-sand-100/60 flex items-center justify-end gap-2`,children:[(0,p.jsxDEV)(`button`,{type:`button`,className:`px-3 py-1 text-xs font-medium rounded-md border border-sand-200 text-sand-600 hover:bg-sand-100 transition-colors duration-150`,onClick:()=>a(null),children:`Cancel`},void 0,!1,{fileName:O,lineNumber:291,columnNumber:15},this),(0,p.jsxDEV)(`button`,{type:`button`,className:`px-3 py-1 text-xs font-medium rounded-md bg-red-500 text-white hover:bg-red-600 disabled:opacity-50 transition-colors duration-150`,disabled:h.isPending,onClick:b,children:h.isPending?`Removing...`:`Remove`},void 0,!1,{fileName:O,lineNumber:298,columnNumber:15},this)]},void 0,!0,{fileName:O,lineNumber:290,columnNumber:13},this)]},void 0,!0,{fileName:O,lineNumber:278,columnNumber:11},this)]},void 0,!0,{fileName:O,lineNumber:272,columnNumber:9},this)]},void 0,!0)}var M=`/home/runner/work/qgrid/qgrid/packages/web/src/routes/tokens.tsx?tsr-split=component`;function N(){let{data:e,isLoading:t}=a.useTokens(`A`);return(0,p.jsxDEV)(`div`,{className:`max-w-6xl mx-auto space-y-4`,children:[(0,p.jsxDEV)(`div`,{className:`flex items-center justify-end`,children:(0,p.jsxDEV)(S,{},void 0,!1,{fileName:M,lineNumber:11,columnNumber:9},this)},void 0,!1,{fileName:M,lineNumber:10,columnNumber:7},this),(0,p.jsxDEV)(j,{data:e?.rows,isLoading:t},void 0,!1,{fileName:M,lineNumber:13,columnNumber:7},this)]},void 0,!0,{fileName:M,lineNumber:9,columnNumber:10},this)}export{N as component};
@@ -0,0 +1 @@
1
+ function e(e){return e.unknownImageCostCount+(e.unknownCostCount??0)}function t(t){let n=e(t);return n>0?`+${n} unpriced`:null}function n(t){if(e(t)===0)return null;let n=t.unknownCostCount??0;return`Total excludes requests with unknown cost: ${t.unknownImageCostCount} image, ${n} voice/video.`}export{n,t};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-Dw2cE7zH.js";import{v as t}from"./vendor-tanstack-Bf_jag9G.js";import{a as n,i as r,t as i}from"./vendor-react-CUFFrVN9.js";import{n as a,o}from"./services.generated-CefiDXEv.js";import{t as s}from"./clsx-5XM_pHvN.js";var c=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},l=(e,t)=>({classGroupId:e,validator:t}),u=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),d=`-`,f=[],p=`arbitrary..`,m=e=>{let t=_(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return g(e);let n=e.split(d);return h(n,n[0]===``&&n.length>1?1:0,t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?c(i,t):t:i||f}return n[e]||f}}},h=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=h(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(d):e.slice(t).join(d),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},g=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?p+r:void 0})(),_=e=>{let{theme:t,classGroups:n}=e;return v(n,t)},v=(e,t)=>{let n=u();for(let r in e){let i=e[r];y(i,n,r,t)}return n},y=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];b(i,t,n,r)}},b=(e,t,n,r)=>{if(typeof e==`string`){x(e,t,n);return}if(typeof e==`function`){ee(e,t,n,r);return}te(e,t,n,r)},x=(e,t,n)=>{let r=e===``?t:S(t,e);r.classGroupId=n},ee=(e,t,n,r)=>{if(C(e)){y(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(l(n,e))},te=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];y(o,S(t,a),n,r)}},S=(e,t)=>{let n=e,r=t.split(d),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=u(),n.nextPart.set(t,i)),n=i}return n},C=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,ne=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},re=`!`,w=`:`,ie=[],T=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),E=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===w){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(re)?(c=s.slice(0,-1),l=!0):s.startsWith(re)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return T(t,l,c,u)};if(t){let e=t+w,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):T(ie,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},D=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},O=e=>({cache:ne(e.cacheSize),parseClassName:E(e),sortModifiers:D(e),...m(e)}),ae=/\s+/,oe=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a}=t,o=[],s=e.trim().split(ae),c=``;for(let e=s.length-1;e>=0;--e){let t=s[e],{isExternal:l,modifiers:u,hasImportantModifier:d,baseClassName:f,maybePostfixModifierPosition:p}=n(t);if(l){c=t+(c.length>0?` `+c:c);continue}let m=!!p,h=r(m?f.substring(0,p):f);if(!h){if(!m){c=t+(c.length>0?` `+c:c);continue}if(h=r(f),!h){c=t+(c.length>0?` `+c:c);continue}m=!1}let g=u.length===0?``:u.length===1?u[0]:a(u).join(`:`),_=d?g+re:g,v=_+h;if(o.indexOf(v)>-1)continue;o.push(v);let y=i(h,m);for(let e=0;e<y.length;++e){let t=y[e];o.push(_+t)}c=t+(c.length>0?` `+c:c)}return c},k=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=se(n))&&(i&&(i+=` `),i+=r);return i},se=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=se(e[r]))&&(n&&(n+=` `),n+=t);return n},ce=(e,...t)=>{let n,r,i,a,o=o=>(n=O(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=oe(e,n);return i(e,a),a};return a=o,(...e)=>a(k(...e))},le=[],A=e=>{let t=t=>t[e]||le;return t.isThemeGetter=!0,t},j=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,M=/^\((?:(\w[\w-]*):)?(.+)\)$/i,N=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,P=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,ue=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,F=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,de=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,I=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,L=e=>N.test(e),R=e=>!!e&&!Number.isNaN(Number(e)),z=e=>!!e&&Number.isInteger(Number(e)),fe=e=>e.endsWith(`%`)&&R(e.slice(0,-1)),B=e=>P.test(e),pe=()=>!0,V=e=>ue.test(e)&&!F.test(e),H=()=>!1,U=e=>de.test(e),me=e=>I.test(e),he=e=>!W(e)&&!K(e),ge=e=>J(e,je,H),W=e=>j.test(e),G=e=>J(e,Me,V),_e=e=>J(e,Ne,R),ve=e=>J(e,Fe,pe),ye=e=>J(e,Pe,H),be=e=>J(e,ke,H),xe=e=>J(e,Ae,me),Se=e=>J(e,Ie,U),K=e=>M.test(e),q=e=>Y(e,Me),Ce=e=>Y(e,Pe),we=e=>Y(e,ke),Te=e=>Y(e,je),Ee=e=>Y(e,Ae),De=e=>Y(e,Ie,!0),Oe=e=>Y(e,Fe,!0),J=(e,t,n)=>{let r=j.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Y=(e,t,n=!1)=>{let r=M.exec(e);return r?r[1]?t(r[1]):n:!1},ke=e=>e===`position`||e===`percentage`,Ae=e=>e===`image`||e===`url`,je=e=>e===`length`||e===`size`||e===`bg-size`,Me=e=>e===`length`,Ne=e=>e===`number`,Pe=e=>e===`family-name`,Fe=e=>e===`number`||e===`weight`,Ie=e=>e===`shadow`,Le=ce(()=>{let e=A(`color`),t=A(`font`),n=A(`text`),r=A(`font-weight`),i=A(`tracking`),a=A(`leading`),o=A(`breakpoint`),s=A(`container`),c=A(`spacing`),l=A(`radius`),u=A(`shadow`),d=A(`inset-shadow`),f=A(`text-shadow`),p=A(`drop-shadow`),m=A(`blur`),h=A(`perspective`),g=A(`aspect`),_=A(`ease`),v=A(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),K,W],ee=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],te=()=>[`auto`,`contain`,`none`],S=()=>[K,W,c],C=()=>[L,`full`,`auto`,...S()],ne=()=>[z,`none`,`subgrid`,K,W],re=()=>[`auto`,{span:[`full`,z,K,W]},z,K,W],w=()=>[z,`auto`,K,W],ie=()=>[`auto`,`min`,`max`,`fr`,K,W],T=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],E=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],D=()=>[`auto`,...S()],O=()=>[L,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...S()],ae=()=>[L,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...S()],oe=()=>[L,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...S()],k=()=>[e,K,W],se=()=>[...b(),we,be,{position:[K,W]}],ce=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],le=()=>[`auto`,`cover`,`contain`,Te,ge,{size:[K,W]}],j=()=>[fe,q,G],M=()=>[``,`none`,`full`,l,K,W],N=()=>[``,R,q,G],P=()=>[`solid`,`dashed`,`dotted`,`double`],ue=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],F=()=>[R,fe,we,be],de=()=>[``,`none`,m,K,W],I=()=>[`none`,R,K,W],V=()=>[`none`,R,K,W],H=()=>[R,K,W],U=()=>[L,`full`,...S()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[B],breakpoint:[B],color:[pe],container:[B],"drop-shadow":[B],ease:[`in`,`out`,`in-out`],font:[he],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[B],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[B],shadow:[B],spacing:[`px`,R],text:[B],"text-shadow":[B],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,L,W,K,g]}],container:[`container`],columns:[{columns:[R,W,K,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:ee()}],"overflow-x":[{"overflow-x":ee()}],"overflow-y":[{"overflow-y":ee()}],overscroll:[{overscroll:te()}],"overscroll-x":[{"overscroll-x":te()}],"overscroll-y":[{"overscroll-y":te()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:C()}],"inset-x":[{"inset-x":C()}],"inset-y":[{"inset-y":C()}],start:[{"inset-s":C(),start:C()}],end:[{"inset-e":C(),end:C()}],"inset-bs":[{"inset-bs":C()}],"inset-be":[{"inset-be":C()}],top:[{top:C()}],right:[{right:C()}],bottom:[{bottom:C()}],left:[{left:C()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[z,`auto`,K,W]}],basis:[{basis:[L,`full`,`auto`,s,...S()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[R,L,`auto`,`initial`,`none`,W]}],grow:[{grow:[``,R,K,W]}],shrink:[{shrink:[``,R,K,W]}],order:[{order:[z,`first`,`last`,`none`,K,W]}],"grid-cols":[{"grid-cols":ne()}],"col-start-end":[{col:re()}],"col-start":[{"col-start":w()}],"col-end":[{"col-end":w()}],"grid-rows":[{"grid-rows":ne()}],"row-start-end":[{row:re()}],"row-start":[{"row-start":w()}],"row-end":[{"row-end":w()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":ie()}],"auto-rows":[{"auto-rows":ie()}],gap:[{gap:S()}],"gap-x":[{"gap-x":S()}],"gap-y":[{"gap-y":S()}],"justify-content":[{justify:[...T(),`normal`]}],"justify-items":[{"justify-items":[...E(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...E()]}],"align-content":[{content:[`normal`,...T()]}],"align-items":[{items:[...E(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...E(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":T()}],"place-items":[{"place-items":[...E(),`baseline`]}],"place-self":[{"place-self":[`auto`,...E()]}],p:[{p:S()}],px:[{px:S()}],py:[{py:S()}],ps:[{ps:S()}],pe:[{pe:S()}],pbs:[{pbs:S()}],pbe:[{pbe:S()}],pt:[{pt:S()}],pr:[{pr:S()}],pb:[{pb:S()}],pl:[{pl:S()}],m:[{m:D()}],mx:[{mx:D()}],my:[{my:D()}],ms:[{ms:D()}],me:[{me:D()}],mbs:[{mbs:D()}],mbe:[{mbe:D()}],mt:[{mt:D()}],mr:[{mr:D()}],mb:[{mb:D()}],ml:[{ml:D()}],"space-x":[{"space-x":S()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":S()}],"space-y-reverse":[`space-y-reverse`],size:[{size:O()}],"inline-size":[{inline:[`auto`,...ae()]}],"min-inline-size":[{"min-inline":[`auto`,...ae()]}],"max-inline-size":[{"max-inline":[`none`,...ae()]}],"block-size":[{block:[`auto`,...oe()]}],"min-block-size":[{"min-block":[`auto`,...oe()]}],"max-block-size":[{"max-block":[`none`,...oe()]}],w:[{w:[s,`screen`,...O()]}],"min-w":[{"min-w":[s,`screen`,`none`,...O()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...O()]}],h:[{h:[`screen`,`lh`,...O()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...O()]}],"max-h":[{"max-h":[`screen`,`lh`,...O()]}],"font-size":[{text:[`base`,n,q,G]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,Oe,ve]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,fe,W]}],"font-family":[{font:[Ce,ye,t]}],"font-features":[{"font-features":[W]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,K,W]}],"line-clamp":[{"line-clamp":[R,`none`,K,_e]}],leading:[{leading:[a,...S()]}],"list-image":[{"list-image":[`none`,K,W]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,K,W]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:k()}],"text-color":[{text:k()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...P(),`wavy`]}],"text-decoration-thickness":[{decoration:[R,`from-font`,`auto`,K,G]}],"text-decoration-color":[{decoration:k()}],"underline-offset":[{"underline-offset":[R,`auto`,K,W]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:S()}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,K,W]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,K,W]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:se()}],"bg-repeat":[{bg:ce()}],"bg-size":[{bg:le()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},z,K,W],radial:[``,K,W],conic:[z,K,W]},Ee,xe]}],"bg-color":[{bg:k()}],"gradient-from-pos":[{from:j()}],"gradient-via-pos":[{via:j()}],"gradient-to-pos":[{to:j()}],"gradient-from":[{from:k()}],"gradient-via":[{via:k()}],"gradient-to":[{to:k()}],rounded:[{rounded:M()}],"rounded-s":[{"rounded-s":M()}],"rounded-e":[{"rounded-e":M()}],"rounded-t":[{"rounded-t":M()}],"rounded-r":[{"rounded-r":M()}],"rounded-b":[{"rounded-b":M()}],"rounded-l":[{"rounded-l":M()}],"rounded-ss":[{"rounded-ss":M()}],"rounded-se":[{"rounded-se":M()}],"rounded-ee":[{"rounded-ee":M()}],"rounded-es":[{"rounded-es":M()}],"rounded-tl":[{"rounded-tl":M()}],"rounded-tr":[{"rounded-tr":M()}],"rounded-br":[{"rounded-br":M()}],"rounded-bl":[{"rounded-bl":M()}],"border-w":[{border:N()}],"border-w-x":[{"border-x":N()}],"border-w-y":[{"border-y":N()}],"border-w-s":[{"border-s":N()}],"border-w-e":[{"border-e":N()}],"border-w-bs":[{"border-bs":N()}],"border-w-be":[{"border-be":N()}],"border-w-t":[{"border-t":N()}],"border-w-r":[{"border-r":N()}],"border-w-b":[{"border-b":N()}],"border-w-l":[{"border-l":N()}],"divide-x":[{"divide-x":N()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":N()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...P(),`hidden`,`none`]}],"divide-style":[{divide:[...P(),`hidden`,`none`]}],"border-color":[{border:k()}],"border-color-x":[{"border-x":k()}],"border-color-y":[{"border-y":k()}],"border-color-s":[{"border-s":k()}],"border-color-e":[{"border-e":k()}],"border-color-bs":[{"border-bs":k()}],"border-color-be":[{"border-be":k()}],"border-color-t":[{"border-t":k()}],"border-color-r":[{"border-r":k()}],"border-color-b":[{"border-b":k()}],"border-color-l":[{"border-l":k()}],"divide-color":[{divide:k()}],"outline-style":[{outline:[...P(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[R,K,W]}],"outline-w":[{outline:[``,R,q,G]}],"outline-color":[{outline:k()}],shadow:[{shadow:[``,`none`,u,De,Se]}],"shadow-color":[{shadow:k()}],"inset-shadow":[{"inset-shadow":[`none`,d,De,Se]}],"inset-shadow-color":[{"inset-shadow":k()}],"ring-w":[{ring:N()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:k()}],"ring-offset-w":[{"ring-offset":[R,G]}],"ring-offset-color":[{"ring-offset":k()}],"inset-ring-w":[{"inset-ring":N()}],"inset-ring-color":[{"inset-ring":k()}],"text-shadow":[{"text-shadow":[`none`,f,De,Se]}],"text-shadow-color":[{"text-shadow":k()}],opacity:[{opacity:[R,K,W]}],"mix-blend":[{"mix-blend":[...ue(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":ue()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[R]}],"mask-image-linear-from-pos":[{"mask-linear-from":F()}],"mask-image-linear-to-pos":[{"mask-linear-to":F()}],"mask-image-linear-from-color":[{"mask-linear-from":k()}],"mask-image-linear-to-color":[{"mask-linear-to":k()}],"mask-image-t-from-pos":[{"mask-t-from":F()}],"mask-image-t-to-pos":[{"mask-t-to":F()}],"mask-image-t-from-color":[{"mask-t-from":k()}],"mask-image-t-to-color":[{"mask-t-to":k()}],"mask-image-r-from-pos":[{"mask-r-from":F()}],"mask-image-r-to-pos":[{"mask-r-to":F()}],"mask-image-r-from-color":[{"mask-r-from":k()}],"mask-image-r-to-color":[{"mask-r-to":k()}],"mask-image-b-from-pos":[{"mask-b-from":F()}],"mask-image-b-to-pos":[{"mask-b-to":F()}],"mask-image-b-from-color":[{"mask-b-from":k()}],"mask-image-b-to-color":[{"mask-b-to":k()}],"mask-image-l-from-pos":[{"mask-l-from":F()}],"mask-image-l-to-pos":[{"mask-l-to":F()}],"mask-image-l-from-color":[{"mask-l-from":k()}],"mask-image-l-to-color":[{"mask-l-to":k()}],"mask-image-x-from-pos":[{"mask-x-from":F()}],"mask-image-x-to-pos":[{"mask-x-to":F()}],"mask-image-x-from-color":[{"mask-x-from":k()}],"mask-image-x-to-color":[{"mask-x-to":k()}],"mask-image-y-from-pos":[{"mask-y-from":F()}],"mask-image-y-to-pos":[{"mask-y-to":F()}],"mask-image-y-from-color":[{"mask-y-from":k()}],"mask-image-y-to-color":[{"mask-y-to":k()}],"mask-image-radial":[{"mask-radial":[K,W]}],"mask-image-radial-from-pos":[{"mask-radial-from":F()}],"mask-image-radial-to-pos":[{"mask-radial-to":F()}],"mask-image-radial-from-color":[{"mask-radial-from":k()}],"mask-image-radial-to-color":[{"mask-radial-to":k()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[R]}],"mask-image-conic-from-pos":[{"mask-conic-from":F()}],"mask-image-conic-to-pos":[{"mask-conic-to":F()}],"mask-image-conic-from-color":[{"mask-conic-from":k()}],"mask-image-conic-to-color":[{"mask-conic-to":k()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:se()}],"mask-repeat":[{mask:ce()}],"mask-size":[{mask:le()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,K,W]}],filter:[{filter:[``,`none`,K,W]}],blur:[{blur:de()}],brightness:[{brightness:[R,K,W]}],contrast:[{contrast:[R,K,W]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,De,Se]}],"drop-shadow-color":[{"drop-shadow":k()}],grayscale:[{grayscale:[``,R,K,W]}],"hue-rotate":[{"hue-rotate":[R,K,W]}],invert:[{invert:[``,R,K,W]}],saturate:[{saturate:[R,K,W]}],sepia:[{sepia:[``,R,K,W]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,K,W]}],"backdrop-blur":[{"backdrop-blur":de()}],"backdrop-brightness":[{"backdrop-brightness":[R,K,W]}],"backdrop-contrast":[{"backdrop-contrast":[R,K,W]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,R,K,W]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[R,K,W]}],"backdrop-invert":[{"backdrop-invert":[``,R,K,W]}],"backdrop-opacity":[{"backdrop-opacity":[R,K,W]}],"backdrop-saturate":[{"backdrop-saturate":[R,K,W]}],"backdrop-sepia":[{"backdrop-sepia":[``,R,K,W]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":S()}],"border-spacing-x":[{"border-spacing-x":S()}],"border-spacing-y":[{"border-spacing-y":S()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,K,W]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[R,`initial`,K,W]}],ease:[{ease:[`linear`,`initial`,_,K,W]}],delay:[{delay:[R,K,W]}],animate:[{animate:[`none`,v,K,W]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,K,W]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:I()}],"rotate-x":[{"rotate-x":I()}],"rotate-y":[{"rotate-y":I()}],"rotate-z":[{"rotate-z":I()}],scale:[{scale:V()}],"scale-x":[{"scale-x":V()}],"scale-y":[{"scale-y":V()}],"scale-z":[{"scale-z":V()}],"scale-3d":[`scale-3d`],skew:[{skew:H()}],"skew-x":[{"skew-x":H()}],"skew-y":[{"skew-y":H()}],transform:[{transform:[K,W,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:U()}],"translate-x":[{"translate-x":U()}],"translate-y":[{"translate-y":U()}],"translate-z":[{"translate-z":U()}],"translate-none":[`translate-none`],accent:[{accent:k()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:k()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,K,W]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scroll-m":[{"scroll-m":S()}],"scroll-mx":[{"scroll-mx":S()}],"scroll-my":[{"scroll-my":S()}],"scroll-ms":[{"scroll-ms":S()}],"scroll-me":[{"scroll-me":S()}],"scroll-mbs":[{"scroll-mbs":S()}],"scroll-mbe":[{"scroll-mbe":S()}],"scroll-mt":[{"scroll-mt":S()}],"scroll-mr":[{"scroll-mr":S()}],"scroll-mb":[{"scroll-mb":S()}],"scroll-ml":[{"scroll-ml":S()}],"scroll-p":[{"scroll-p":S()}],"scroll-px":[{"scroll-px":S()}],"scroll-py":[{"scroll-py":S()}],"scroll-ps":[{"scroll-ps":S()}],"scroll-pe":[{"scroll-pe":S()}],"scroll-pbs":[{"scroll-pbs":S()}],"scroll-pbe":[{"scroll-pbe":S()}],"scroll-pt":[{"scroll-pt":S()}],"scroll-pr":[{"scroll-pr":S()}],"scroll-pb":[{"scroll-pb":S()}],"scroll-pl":[{"scroll-pl":S()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,K,W]}],fill:[{fill:[`none`,...k()]}],"stroke-w":[{stroke:[R,q,G,_e]}],stroke:[{stroke:[`none`,...k()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}}),X=e(n(),1);function Re(...e){return Le(s(e))}var Z=r(),ze=e=>(0,Z.jsx)(`svg`,{viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`,...e,children:(0,Z.jsx)(`path`,{fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M18 6L6 18M6 6l12 12`})});globalThis.AggregateError,Array.isArray;function Be(e){return typeof e==`function`}Number.isInteger;var Ve=X.forwardRef(({className:e,type:t,onValueChange:n,onChange:r,clearable:i=!1,...a},o)=>{let s=X.useRef(null),c=X.useCallback(e=>{s.current=e,Be(o)?o(e):o&&(o.current=e)},[o]),l=a.value!==void 0,[u,d]=X.useState(()=>String(a.defaultValue??``).length>0),f=l?String(a.value??``).length>0:u,p=e=>{l||d(e.target.value.length>0),n?.(e.target.value),r?.(e)},m=()=>{let e=s.current;e&&((Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,`value`)?.set)?.call(e,``),e.dispatchEvent(new Event(`input`,{bubbles:!0})),e.focus()),l||d(!1)},h=i&&f&&!a.disabled&&!a.readOnly,g=(0,Z.jsx)(`input`,{type:t,"data-slot":`input`,className:Re(`file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border px-3 py-1 text-base bg-input-background transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm`,`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,i&&`pr-8`,e),ref:c,...a,onChange:p});return i?(0,Z.jsxs)(`div`,{className:`relative w-full`,children:[g,h&&(0,Z.jsx)(`button`,{type:`button`,tabIndex:-1,"aria-label":`Clear`,onMouseDown:e=>e.preventDefault(),onClick:m,className:`absolute right-2 top-1/2 -translate-y-1/2 flex items-center justify-center text-muted-foreground opacity-60 hover:opacity-100 transition-opacity cursor-pointer`,children:(0,Z.jsx)(ze,{className:`h-4 w-4`})})]}):g});Ve.displayName=`Input`;var Q=i(),$=`/home/runner/work/qgrid/qgrid/packages/web/src/components/qgrid/OAuthCodeEntry.tsx`,He={openai:`새 탭에서 OpenAI 로그인을 완료한 뒤 연결 실패 화면이 나타나면, 주소창의 전체 URL을 아래에 붙여넣으세요.`,anthropic:`새 탭에서 Claude 로그인을 완료하면 코드가 표시됩니다. 코드 전체를 아래에 붙여넣으세요.`,grok:`새 탭에서 xAI(auth.x.ai) 로그인을 완료하면 127.0.0.1 주소로 이동하며 페이지가 열리지 않습니다. 주소창의 전체 URL(또는 그 안의 code 값)을 아래에 붙여넣으세요.`},Ue={openai:`http://localhost:1455/auth/callback?code=...&state=...`,anthropic:`code#state`,grok:`http://127.0.0.1:.../callback?code=...&state=...`};function We({provider:e,isPending:t,isError:n,onSubmit:r,onRestart:i}){let[a,o]=(0,X.useState)(``);return(0,Q.jsxDEV)(`div`,{className:`space-y-2`,children:[(0,Q.jsxDEV)(`p`,{className:`text-[12px] text-sand-600 leading-relaxed`,children:He[e]},void 0,!1,{fileName:$,lineNumber:41,columnNumber:7},this),(0,Q.jsxDEV)(Ve,{value:a,onChange:e=>o(e.target.value),placeholder:Ue[e],className:`w-full border border-sand-200 rounded-md px-3 py-2 text-sm font-mono text-sand-900 bg-white placeholder:text-sand-300 focus:outline-none focus:border-sienna-300`},void 0,!1,{fileName:$,lineNumber:42,columnNumber:7},this),n&&(0,Q.jsxDEV)(`p`,{className:`text-[11px] text-red-500`,children:`인증 결과 확인에 실패했습니다 — 전체 값을 다시 붙여넣거나 로그인을 다시 시작하세요.`},void 0,!1,{fileName:$,lineNumber:49,columnNumber:9},this),(0,Q.jsxDEV)(`button`,{type:`button`,className:`w-full py-2.5 text-sm font-medium rounded-md bg-sand-900 text-white hover:bg-sand-800 disabled:opacity-50 transition-colors duration-150 flex items-center justify-center gap-2`,disabled:!a.trim()||t,onClick:()=>r(a),children:t?(0,Q.jsxDEV)(`span`,{className:`flex items-center gap-1.5`,children:[(0,Q.jsxDEV)(`span`,{className:`w-3.5 h-3.5 border-2 border-white border-t-transparent rounded-full animate-spin`},void 0,!1,{fileName:$,lineNumber:61,columnNumber:13},this),`Verifying...`]},void 0,!0,{fileName:$,lineNumber:60,columnNumber:11},this):`Complete login`},void 0,!1,{fileName:$,lineNumber:53,columnNumber:7},this),(0,Q.jsxDEV)(`button`,{type:`button`,className:`w-full py-1.5 text-[12px] text-sand-500 hover:text-sand-700 transition-colors duration-150`,onClick:()=>{o(``),i()},children:`처음부터 다시 시작`},void 0,!1,{fileName:$,lineNumber:68,columnNumber:7},this)]},void 0,!0,{fileName:$,lineNumber:40,columnNumber:5},this)}var Ge=[`anthropic`,`openai`,`grok`];function Ke(e){return Ge.some(t=>t===e)}var qe=3e3,Je=3e5,Ye=5,Xe=3,Ze=`Grok login failed`;function Qe(e){if(e)try{return new URL(e).protocol===`https:`?e:void 0}catch{return}}async function $e(e,t){let{rows:n}=await o.getTokens(`A`,{num:0,queryMode:`list`});return new Set(n.filter(n=>n.provider===e&&n.name===t).map(e=>e.id))}function et(){let[e,n]=(0,X.useState)(null),[r,i]=(0,X.useState)(null),[o,s]=(0,X.useState)(null),c=t(),l=a.useOauthStartMutation(),u=a.useOauthStartOpenAIMutation(),d=a.useOauthStartGrokMutation(),f=a.useOauthCompleteMutation(),p=(0,X.useRef)({}),m=(0,X.useRef)(0),h=()=>{m.current+=1,p.current.interval!==void 0&&clearInterval(p.current.interval),p.current.timeout!==void 0&&clearTimeout(p.current.timeout),p.current={}};(0,X.useEffect)(()=>h,[]);let g=()=>Promise.all([c.invalidateQueries({queryKey:[`Token`]}),c.invalidateQueries({queryKey:[`Qgrid`]})]);return{loadingProvider:e,codeEntryProvider:r,deviceFlow:o,start:async(e,t)=>{let r=t.trim();if(!r)return;h();let a=m.current;s(null);let o=window.open(`about:blank`,`_blank`);n(e);try{if(e===`grok`){let{authUrl:t}=await d.mutateAsync({name:r});if(a!==m.current){o?.close();return}let s=Qe(t);if(!s)throw Error(`Grok login URL is not https`);o?o.location.href=s:window.open(s,`_blank`),i(e),n(null);return}if(e===`openai`){let t=await $e(e,r);if(a!==m.current){o?.close();return}let{authUrl:s,mode:c}=await u.mutateAsync({name:r});if(a!==m.current){o?.close();return}if(o?o.location.href=s:window.open(s,`_blank`),c===`code`){i(e),n(null);return}p.current.interval=window.setInterval(()=>{$e(e,r).then(e=>{a===m.current&&[...e].some(e=>!t.has(e))&&(h(),n(null),g())}).catch(()=>{})},qe),p.current.timeout=window.setTimeout(()=>{a===m.current&&(h(),n(null))},Je);return}let{authUrl:t,mode:s}=await l.mutateAsync({name:r});if(a!==m.current){o?.close();return}s===`code`?(o?o.location.href=t:window.open(t,`_blank`),i(e),n(null)):(o?.close(),window.location.href=t)}catch(e){if(o?.close(),a!==m.current)return;console.error(`OAuth start failed:`,e),n(null)}},startDevice:async(e,t)=>{let r=e.trim();if(!r)return;h();let o=m.current;i(null),n(null),s({status:`starting`});let c;try{c=await a.oauthStartGrokDevice(r)}catch(e){if(o!==m.current)return;console.error(`Grok device login start failed:`,e),s({status:`error`,message:e instanceof Error&&e.message?e.message:Ze});return}if(o!==m.current)return;let{deviceCode:l}=c,u=Qe(c.verificationUri);if(!u){s({status:`error`,message:`Grok verification URL is not https`});return}let d=Qe(c.verificationUriComplete),f=Date.now()+c.expiresIn*1e3,_=Math.max(c.interval,1),v=0,y={status:`waiting`,userCode:c.userCode,verificationUri:u,expiresAt:f,slowDown:!1};d&&(y.verificationUriComplete=d),s(y);let b=()=>{let e=Math.min(_*1e3,Math.max(f-Date.now(),0));p.current.timeout=window.setTimeout(()=>void x(),e)},x=async()=>{if(o!==m.current)return;if(Date.now()>=f){s({status:`expired`});return}let e;try{e=await a.oauthPollGrokDevice(l)}catch(e){if(o!==m.current)return;if(v+=1,v>=Xe){console.error(`Grok device login poll failed:`,e),s({status:`error`,message:e instanceof Error&&e.message?e.message:Ze});return}b();return}if(o===m.current){if(v=0,e.status===`added`){s({status:`added`,name:e.name??r}),await g(),o===m.current&&t?.();return}e.status===`slow_down`?(_=e.intervalSec??_+Ye,s(e=>e?.status===`waiting`?{...e,slowDown:!0}:e)):e.intervalSec!==void 0&&(_=e.intervalSec),_=Math.max(_,1),b()}};b()},submitCode:async e=>{let t=e.trim();if(!t)return!1;try{await f.mutateAsync({pastedCode:t})}catch(e){return console.error(`OAuth complete failed:`,e),!1}return await g(),!0},reset:()=>{h(),n(null),i(null),s(null),f.reset()},completeMutation:f}}export{Ve as i,et as n,We as r,Ke as t};
@@ -0,0 +1 @@
1
+ import{p as e}from"./vendor-tanstack-Bf_jag9G.js";import{n as t}from"./services.generated-CefiDXEv.js";function n(){return e({mutationFn:({id:e,name:n,quotaThreshold:r,weight:i,keepaliveEnabled:a})=>t.updateToken(e,n,r,i,a)})}export{n as t};