@toon-protocol/connector 1.7.1

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 (458) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +421 -0
  3. package/dist/btp/btp-claim-types.d.ts +30 -0
  4. package/dist/btp/btp-claim-types.d.ts.map +1 -0
  5. package/dist/btp/btp-claim-types.js +103 -0
  6. package/dist/btp/btp-claim-types.js.map +1 -0
  7. package/dist/btp/btp-client-manager.d.ts +27 -0
  8. package/dist/btp/btp-client-manager.d.ts.map +1 -0
  9. package/dist/btp/btp-client-manager.js +138 -0
  10. package/dist/btp/btp-client-manager.js.map +1 -0
  11. package/dist/btp/btp-client.d.ts +55 -0
  12. package/dist/btp/btp-client.d.ts.map +1 -0
  13. package/dist/btp/btp-client.js +474 -0
  14. package/dist/btp/btp-client.js.map +1 -0
  15. package/dist/btp/btp-message-parser.d.ts +4 -0
  16. package/dist/btp/btp-message-parser.d.ts.map +1 -0
  17. package/dist/btp/btp-message-parser.js +211 -0
  18. package/dist/btp/btp-message-parser.js.map +1 -0
  19. package/dist/btp/btp-server.d.ts +30 -0
  20. package/dist/btp/btp-server.d.ts.map +1 -0
  21. package/dist/btp/btp-server.js +458 -0
  22. package/dist/btp/btp-server.js.map +1 -0
  23. package/dist/btp/btp-types.d.ts +43 -0
  24. package/dist/btp/btp-types.d.ts.map +1 -0
  25. package/dist/btp/btp-types.js +44 -0
  26. package/dist/btp/btp-types.js.map +1 -0
  27. package/dist/cli/index.d.ts +3 -0
  28. package/dist/cli/index.d.ts.map +1 -0
  29. package/dist/cli/index.js +175 -0
  30. package/dist/cli/index.js.map +1 -0
  31. package/dist/cli/onboarding-wizard.d.ts +7 -0
  32. package/dist/cli/onboarding-wizard.d.ts.map +1 -0
  33. package/dist/cli/onboarding-wizard.js +257 -0
  34. package/dist/cli/onboarding-wizard.js.map +1 -0
  35. package/dist/cli/types.d.ts +38 -0
  36. package/dist/cli/types.d.ts.map +1 -0
  37. package/dist/cli/types.js +3 -0
  38. package/dist/cli/types.js.map +1 -0
  39. package/dist/config/aptos-env-validator.d.ts +8 -0
  40. package/dist/config/aptos-env-validator.d.ts.map +1 -0
  41. package/dist/config/aptos-env-validator.js +25 -0
  42. package/dist/config/aptos-env-validator.js.map +1 -0
  43. package/dist/config/config-loader.d.ts +20 -0
  44. package/dist/config/config-loader.d.ts.map +1 -0
  45. package/dist/config/config-loader.js +269 -0
  46. package/dist/config/config-loader.js.map +1 -0
  47. package/dist/config/environment-validator.d.ts +4 -0
  48. package/dist/config/environment-validator.d.ts.map +1 -0
  49. package/dist/config/environment-validator.js +239 -0
  50. package/dist/config/environment-validator.js.map +1 -0
  51. package/dist/config/index.d.ts +2 -0
  52. package/dist/config/index.d.ts.map +1 -0
  53. package/dist/config/index.js +7 -0
  54. package/dist/config/index.js.map +1 -0
  55. package/dist/config/key-manager-config.d.ts +7 -0
  56. package/dist/config/key-manager-config.d.ts.map +1 -0
  57. package/dist/config/key-manager-config.js +209 -0
  58. package/dist/config/key-manager-config.js.map +1 -0
  59. package/dist/config/topology-validator.d.ts +14 -0
  60. package/dist/config/topology-validator.d.ts.map +1 -0
  61. package/dist/config/topology-validator.js +142 -0
  62. package/dist/config/topology-validator.js.map +1 -0
  63. package/dist/config/types.d.ts +210 -0
  64. package/dist/config/types.d.ts.map +1 -0
  65. package/dist/config/types.js +10 -0
  66. package/dist/config/types.js.map +1 -0
  67. package/dist/core/connector-node.d.ts +79 -0
  68. package/dist/core/connector-node.d.ts.map +1 -0
  69. package/dist/core/connector-node.js +1036 -0
  70. package/dist/core/connector-node.js.map +1 -0
  71. package/dist/core/local-delivery-client.d.ts +16 -0
  72. package/dist/core/local-delivery-client.d.ts.map +1 -0
  73. package/dist/core/local-delivery-client.js +176 -0
  74. package/dist/core/local-delivery-client.js.map +1 -0
  75. package/dist/core/packet-handler.d.ts +45 -0
  76. package/dist/core/packet-handler.d.ts.map +1 -0
  77. package/dist/core/packet-handler.js +606 -0
  78. package/dist/core/packet-handler.js.map +1 -0
  79. package/dist/core/payment-handler.d.ts +27 -0
  80. package/dist/core/payment-handler.d.ts.map +1 -0
  81. package/dist/core/payment-handler.js +115 -0
  82. package/dist/core/payment-handler.js.map +1 -0
  83. package/dist/discovery/index.d.ts +3 -0
  84. package/dist/discovery/index.d.ts.map +1 -0
  85. package/dist/discovery/index.js +6 -0
  86. package/dist/discovery/index.js.map +1 -0
  87. package/dist/discovery/peer-discovery-service.d.ts +29 -0
  88. package/dist/discovery/peer-discovery-service.d.ts.map +1 -0
  89. package/dist/discovery/peer-discovery-service.js +230 -0
  90. package/dist/discovery/peer-discovery-service.js.map +1 -0
  91. package/dist/discovery/types.d.ts +38 -0
  92. package/dist/discovery/types.d.ts.map +1 -0
  93. package/dist/discovery/types.js +3 -0
  94. package/dist/discovery/types.js.map +1 -0
  95. package/dist/encoding/oer-parser.d.ts +39 -0
  96. package/dist/encoding/oer-parser.d.ts.map +1 -0
  97. package/dist/encoding/oer-parser.js +154 -0
  98. package/dist/encoding/oer-parser.js.map +1 -0
  99. package/dist/explorer-ui/assets/EventDetailPanel-CnSaMk3V.js +6 -0
  100. package/dist/explorer-ui/assets/FilterBar-BEmAzBku.js +26 -0
  101. package/dist/explorer-ui/assets/chevron-right-BUT9VhYe.js +11 -0
  102. package/dist/explorer-ui/assets/index-BZ2INVgy.js +360 -0
  103. package/dist/explorer-ui/assets/index-Cemh6svI.css +1 -0
  104. package/dist/explorer-ui/index.html +14 -0
  105. package/dist/explorer-ui/vite.svg +1 -0
  106. package/dist/facilitator/index.d.ts +2 -0
  107. package/dist/facilitator/index.d.ts.map +1 -0
  108. package/dist/facilitator/index.js +7 -0
  109. package/dist/facilitator/index.js.map +1 -0
  110. package/dist/facilitator/spsp-client.d.ts +18 -0
  111. package/dist/facilitator/spsp-client.d.ts.map +1 -0
  112. package/dist/facilitator/spsp-client.js +95 -0
  113. package/dist/facilitator/spsp-client.js.map +1 -0
  114. package/dist/http/admin-api.d.ts +123 -0
  115. package/dist/http/admin-api.d.ts.map +1 -0
  116. package/dist/http/admin-api.js +1057 -0
  117. package/dist/http/admin-api.js.map +1 -0
  118. package/dist/http/admin-server.d.ts +41 -0
  119. package/dist/http/admin-server.d.ts.map +1 -0
  120. package/dist/http/admin-server.js +156 -0
  121. package/dist/http/admin-server.js.map +1 -0
  122. package/dist/http/health-server.d.ts +22 -0
  123. package/dist/http/health-server.d.ts.map +1 -0
  124. package/dist/http/health-server.js +192 -0
  125. package/dist/http/health-server.js.map +1 -0
  126. package/dist/http/ilp-send-handler.d.ts +19 -0
  127. package/dist/http/ilp-send-handler.d.ts.map +1 -0
  128. package/dist/http/ilp-send-handler.js +162 -0
  129. package/dist/http/ilp-send-handler.js.map +1 -0
  130. package/dist/http/types.d.ts +39 -0
  131. package/dist/http/types.d.ts.map +1 -0
  132. package/dist/http/types.js +3 -0
  133. package/dist/http/types.js.map +1 -0
  134. package/dist/index.d.ts +2 -0
  135. package/dist/index.d.ts.map +1 -0
  136. package/dist/index.js +5 -0
  137. package/dist/index.js.map +1 -0
  138. package/dist/lib.d.ts +22 -0
  139. package/dist/lib.d.ts.map +1 -0
  140. package/dist/lib.js +41 -0
  141. package/dist/lib.js.map +1 -0
  142. package/dist/main.d.ts +4 -0
  143. package/dist/main.d.ts.map +1 -0
  144. package/dist/main.js +79 -0
  145. package/dist/main.js.map +1 -0
  146. package/dist/routing/packet-processor.d.ts +36 -0
  147. package/dist/routing/packet-processor.d.ts.map +1 -0
  148. package/dist/routing/packet-processor.js +112 -0
  149. package/dist/routing/packet-processor.js.map +1 -0
  150. package/dist/routing/packet-worker.d.ts +10 -0
  151. package/dist/routing/packet-worker.d.ts.map +1 -0
  152. package/dist/routing/packet-worker.js +34 -0
  153. package/dist/routing/packet-worker.js.map +1 -0
  154. package/dist/routing/routing-table.d.ts +15 -0
  155. package/dist/routing/routing-table.d.ts.map +1 -0
  156. package/dist/routing/routing-table.js +63 -0
  157. package/dist/routing/routing-table.js.map +1 -0
  158. package/dist/routing/worker-pool.d.ts +43 -0
  159. package/dist/routing/worker-pool.d.ts.map +1 -0
  160. package/dist/routing/worker-pool.js +228 -0
  161. package/dist/routing/worker-pool.js.map +1 -0
  162. package/dist/security/alert-notifier.d.ts +34 -0
  163. package/dist/security/alert-notifier.d.ts.map +1 -0
  164. package/dist/security/alert-notifier.js +136 -0
  165. package/dist/security/alert-notifier.js.map +1 -0
  166. package/dist/security/audit-logger.d.ts +34 -0
  167. package/dist/security/audit-logger.d.ts.map +1 -0
  168. package/dist/security/audit-logger.js +132 -0
  169. package/dist/security/audit-logger.js.map +1 -0
  170. package/dist/security/backends/aws-kms-backend.d.ts +18 -0
  171. package/dist/security/backends/aws-kms-backend.d.ts.map +1 -0
  172. package/dist/security/backends/aws-kms-backend.js +130 -0
  173. package/dist/security/backends/aws-kms-backend.js.map +1 -0
  174. package/dist/security/backends/azure-kv-backend.d.ts +17 -0
  175. package/dist/security/backends/azure-kv-backend.d.ts.map +1 -0
  176. package/dist/security/backends/azure-kv-backend.js +121 -0
  177. package/dist/security/backends/azure-kv-backend.js.map +1 -0
  178. package/dist/security/backends/environment-backend.d.ts +15 -0
  179. package/dist/security/backends/environment-backend.d.ts.map +1 -0
  180. package/dist/security/backends/environment-backend.js +56 -0
  181. package/dist/security/backends/environment-backend.js.map +1 -0
  182. package/dist/security/backends/gcp-kms-backend.d.ts +17 -0
  183. package/dist/security/backends/gcp-kms-backend.d.ts.map +1 -0
  184. package/dist/security/backends/gcp-kms-backend.js +110 -0
  185. package/dist/security/backends/gcp-kms-backend.js.map +1 -0
  186. package/dist/security/backends/hsm-backend.d.ts +18 -0
  187. package/dist/security/backends/hsm-backend.d.ts.map +1 -0
  188. package/dist/security/backends/hsm-backend.js +187 -0
  189. package/dist/security/backends/hsm-backend.js.map +1 -0
  190. package/dist/security/fraud-detector.d.ts +79 -0
  191. package/dist/security/fraud-detector.d.ts.map +1 -0
  192. package/dist/security/fraud-detector.js +147 -0
  193. package/dist/security/fraud-detector.js.map +1 -0
  194. package/dist/security/key-manager-signer.d.ts +15 -0
  195. package/dist/security/key-manager-signer.d.ts.map +1 -0
  196. package/dist/security/key-manager-signer.js +91 -0
  197. package/dist/security/key-manager-signer.js.map +1 -0
  198. package/dist/security/key-manager.d.ts +69 -0
  199. package/dist/security/key-manager.d.ts.map +1 -0
  200. package/dist/security/key-manager.js +79 -0
  201. package/dist/security/key-manager.js.map +1 -0
  202. package/dist/security/key-rotation-manager.d.ts +27 -0
  203. package/dist/security/key-rotation-manager.d.ts.map +1 -0
  204. package/dist/security/key-rotation-manager.js +142 -0
  205. package/dist/security/key-rotation-manager.js.map +1 -0
  206. package/dist/security/rate-limit-config.d.ts +7 -0
  207. package/dist/security/rate-limit-config.d.ts.map +1 -0
  208. package/dist/security/rate-limit-config.js +57 -0
  209. package/dist/security/rate-limit-config.js.map +1 -0
  210. package/dist/security/rate-limiter.d.ts +46 -0
  211. package/dist/security/rate-limiter.d.ts.map +1 -0
  212. package/dist/security/rate-limiter.js +170 -0
  213. package/dist/security/rate-limiter.js.map +1 -0
  214. package/dist/security/reputation-tracker.d.ts +30 -0
  215. package/dist/security/reputation-tracker.d.ts.map +1 -0
  216. package/dist/security/reputation-tracker.js +111 -0
  217. package/dist/security/reputation-tracker.js.map +1 -0
  218. package/dist/security/rules/balance-manipulation-rule.d.ts +23 -0
  219. package/dist/security/rules/balance-manipulation-rule.d.ts.map +1 -0
  220. package/dist/security/rules/balance-manipulation-rule.js +70 -0
  221. package/dist/security/rules/balance-manipulation-rule.js.map +1 -0
  222. package/dist/security/rules/double-spend-detection-rule.d.ts +23 -0
  223. package/dist/security/rules/double-spend-detection-rule.d.ts.map +1 -0
  224. package/dist/security/rules/double-spend-detection-rule.js +61 -0
  225. package/dist/security/rules/double-spend-detection-rule.js.map +1 -0
  226. package/dist/security/rules/rapid-channel-closure-rule.d.ts +16 -0
  227. package/dist/security/rules/rapid-channel-closure-rule.d.ts.map +1 -0
  228. package/dist/security/rules/rapid-channel-closure-rule.js +57 -0
  229. package/dist/security/rules/rapid-channel-closure-rule.js.map +1 -0
  230. package/dist/security/rules/sudden-traffic-spike-rule.d.ts +18 -0
  231. package/dist/security/rules/sudden-traffic-spike-rule.d.ts.map +1 -0
  232. package/dist/security/rules/sudden-traffic-spike-rule.js +92 -0
  233. package/dist/security/rules/sudden-traffic-spike-rule.js.map +1 -0
  234. package/dist/security/rules/unusual-settlement-amount-rule.d.ts +12 -0
  235. package/dist/security/rules/unusual-settlement-amount-rule.d.ts.map +1 -0
  236. package/dist/security/rules/unusual-settlement-amount-rule.js +33 -0
  237. package/dist/security/rules/unusual-settlement-amount-rule.js.map +1 -0
  238. package/dist/security/token-bucket.d.ts +16 -0
  239. package/dist/security/token-bucket.d.ts.map +1 -0
  240. package/dist/security/token-bucket.js +49 -0
  241. package/dist/security/token-bucket.js.map +1 -0
  242. package/dist/security/violation-counter.d.ts +11 -0
  243. package/dist/security/violation-counter.d.ts.map +1 -0
  244. package/dist/security/violation-counter.js +61 -0
  245. package/dist/security/violation-counter.js.map +1 -0
  246. package/dist/settlement/account-id-generator.d.ts +4 -0
  247. package/dist/settlement/account-id-generator.d.ts.map +1 -0
  248. package/dist/settlement/account-id-generator.js +38 -0
  249. package/dist/settlement/account-id-generator.js.map +1 -0
  250. package/dist/settlement/account-manager.d.ts +47 -0
  251. package/dist/settlement/account-manager.d.ts.map +1 -0
  252. package/dist/settlement/account-manager.js +447 -0
  253. package/dist/settlement/account-manager.js.map +1 -0
  254. package/dist/settlement/account-metadata.d.ts +11 -0
  255. package/dist/settlement/account-metadata.d.ts.map +1 -0
  256. package/dist/settlement/account-metadata.js +40 -0
  257. package/dist/settlement/account-metadata.js.map +1 -0
  258. package/dist/settlement/aptos-channel-sdk.d.ts +66 -0
  259. package/dist/settlement/aptos-channel-sdk.d.ts.map +1 -0
  260. package/dist/settlement/aptos-channel-sdk.js +274 -0
  261. package/dist/settlement/aptos-channel-sdk.js.map +1 -0
  262. package/dist/settlement/aptos-claim-signer.d.ts +57 -0
  263. package/dist/settlement/aptos-claim-signer.d.ts.map +1 -0
  264. package/dist/settlement/aptos-claim-signer.js +200 -0
  265. package/dist/settlement/aptos-claim-signer.js.map +1 -0
  266. package/dist/settlement/aptos-client.d.ts +99 -0
  267. package/dist/settlement/aptos-client.d.ts.map +1 -0
  268. package/dist/settlement/aptos-client.js +474 -0
  269. package/dist/settlement/aptos-client.js.map +1 -0
  270. package/dist/settlement/channel-manager.d.ts +66 -0
  271. package/dist/settlement/channel-manager.d.ts.map +1 -0
  272. package/dist/settlement/channel-manager.js +214 -0
  273. package/dist/settlement/channel-manager.js.map +1 -0
  274. package/dist/settlement/claim-receiver-db-schema.d.ts +4 -0
  275. package/dist/settlement/claim-receiver-db-schema.d.ts.map +1 -0
  276. package/dist/settlement/claim-receiver-db-schema.js +25 -0
  277. package/dist/settlement/claim-receiver-db-schema.js.map +1 -0
  278. package/dist/settlement/claim-receiver.d.ts +31 -0
  279. package/dist/settlement/claim-receiver.d.ts.map +1 -0
  280. package/dist/settlement/claim-receiver.js +228 -0
  281. package/dist/settlement/claim-receiver.js.map +1 -0
  282. package/dist/settlement/claim-redemption-service.d.ts +39 -0
  283. package/dist/settlement/claim-redemption-service.d.ts.map +1 -0
  284. package/dist/settlement/claim-redemption-service.js +189 -0
  285. package/dist/settlement/claim-redemption-service.js.map +1 -0
  286. package/dist/settlement/claim-sender-db-schema.d.ts +3 -0
  287. package/dist/settlement/claim-sender-db-schema.d.ts.map +1 -0
  288. package/dist/settlement/claim-sender-db-schema.js +18 -0
  289. package/dist/settlement/claim-sender-db-schema.js.map +1 -0
  290. package/dist/settlement/claim-sender.d.ts +22 -0
  291. package/dist/settlement/claim-sender.d.ts.map +1 -0
  292. package/dist/settlement/claim-sender.js +108 -0
  293. package/dist/settlement/claim-sender.js.map +1 -0
  294. package/dist/settlement/eip712-helper.d.ts +13 -0
  295. package/dist/settlement/eip712-helper.d.ts.map +1 -0
  296. package/dist/settlement/eip712-helper.js +24 -0
  297. package/dist/settlement/eip712-helper.js.map +1 -0
  298. package/dist/settlement/in-memory-ledger-client.d.ts +40 -0
  299. package/dist/settlement/in-memory-ledger-client.d.ts.map +1 -0
  300. package/dist/settlement/in-memory-ledger-client.js +177 -0
  301. package/dist/settlement/in-memory-ledger-client.js.map +1 -0
  302. package/dist/settlement/ledger-client.d.ts +22 -0
  303. package/dist/settlement/ledger-client.d.ts.map +1 -0
  304. package/dist/settlement/ledger-client.js +3 -0
  305. package/dist/settlement/ledger-client.js.map +1 -0
  306. package/dist/settlement/metrics-collector.d.ts +29 -0
  307. package/dist/settlement/metrics-collector.d.ts.map +1 -0
  308. package/dist/settlement/metrics-collector.js +81 -0
  309. package/dist/settlement/metrics-collector.js.map +1 -0
  310. package/dist/settlement/payment-channel-sdk.d.ts +59 -0
  311. package/dist/settlement/payment-channel-sdk.d.ts.map +1 -0
  312. package/dist/settlement/payment-channel-sdk.js +677 -0
  313. package/dist/settlement/payment-channel-sdk.js.map +1 -0
  314. package/dist/settlement/per-packet-claim-service.d.ts +33 -0
  315. package/dist/settlement/per-packet-claim-service.d.ts.map +1 -0
  316. package/dist/settlement/per-packet-claim-service.js +177 -0
  317. package/dist/settlement/per-packet-claim-service.js.map +1 -0
  318. package/dist/settlement/settlement-api.d.ts +37 -0
  319. package/dist/settlement/settlement-api.d.ts.map +1 -0
  320. package/dist/settlement/settlement-api.js +172 -0
  321. package/dist/settlement/settlement-api.js.map +1 -0
  322. package/dist/settlement/settlement-coordinator.d.ts +47 -0
  323. package/dist/settlement/settlement-coordinator.d.ts.map +1 -0
  324. package/dist/settlement/settlement-coordinator.js +166 -0
  325. package/dist/settlement/settlement-coordinator.js.map +1 -0
  326. package/dist/settlement/settlement-executor.d.ts +44 -0
  327. package/dist/settlement/settlement-executor.d.ts.map +1 -0
  328. package/dist/settlement/settlement-executor.js +247 -0
  329. package/dist/settlement/settlement-executor.js.map +1 -0
  330. package/dist/settlement/settlement-monitor.d.ts +29 -0
  331. package/dist/settlement/settlement-monitor.d.ts.map +1 -0
  332. package/dist/settlement/settlement-monitor.js +172 -0
  333. package/dist/settlement/settlement-monitor.js.map +1 -0
  334. package/dist/settlement/tigerbeetle-batch-writer.d.ts +58 -0
  335. package/dist/settlement/tigerbeetle-batch-writer.d.ts.map +1 -0
  336. package/dist/settlement/tigerbeetle-batch-writer.js +162 -0
  337. package/dist/settlement/tigerbeetle-batch-writer.js.map +1 -0
  338. package/dist/settlement/tigerbeetle-client.d.ts +40 -0
  339. package/dist/settlement/tigerbeetle-client.d.ts.map +1 -0
  340. package/dist/settlement/tigerbeetle-client.js +279 -0
  341. package/dist/settlement/tigerbeetle-client.js.map +1 -0
  342. package/dist/settlement/tigerbeetle-errors.d.ts +23 -0
  343. package/dist/settlement/tigerbeetle-errors.d.ts.map +1 -0
  344. package/dist/settlement/tigerbeetle-errors.js +58 -0
  345. package/dist/settlement/tigerbeetle-errors.js.map +1 -0
  346. package/dist/settlement/types.d.ts +64 -0
  347. package/dist/settlement/types.d.ts.map +1 -0
  348. package/dist/settlement/types.js +42 -0
  349. package/dist/settlement/types.js.map +1 -0
  350. package/dist/settlement/unified-settlement-executor.d.ts +34 -0
  351. package/dist/settlement/unified-settlement-executor.d.ts.map +1 -0
  352. package/dist/settlement/unified-settlement-executor.js +145 -0
  353. package/dist/settlement/unified-settlement-executor.js.map +1 -0
  354. package/dist/settlement/xrp-channel-lifecycle.d.ts +41 -0
  355. package/dist/settlement/xrp-channel-lifecycle.d.ts.map +1 -0
  356. package/dist/settlement/xrp-channel-lifecycle.js +142 -0
  357. package/dist/settlement/xrp-channel-lifecycle.js.map +1 -0
  358. package/dist/settlement/xrp-channel-manager.d.ts +59 -0
  359. package/dist/settlement/xrp-channel-manager.d.ts.map +1 -0
  360. package/dist/settlement/xrp-channel-manager.js +160 -0
  361. package/dist/settlement/xrp-channel-manager.js.map +1 -0
  362. package/dist/settlement/xrp-channel-sdk.d.ts +30 -0
  363. package/dist/settlement/xrp-channel-sdk.d.ts.map +1 -0
  364. package/dist/settlement/xrp-channel-sdk.js +164 -0
  365. package/dist/settlement/xrp-channel-sdk.js.map +1 -0
  366. package/dist/settlement/xrp-claim-signer.d.ts +22 -0
  367. package/dist/settlement/xrp-claim-signer.d.ts.map +1 -0
  368. package/dist/settlement/xrp-claim-signer.js +122 -0
  369. package/dist/settlement/xrp-claim-signer.js.map +1 -0
  370. package/dist/settlement/xrpl-client.d.ts +104 -0
  371. package/dist/settlement/xrpl-client.d.ts.map +1 -0
  372. package/dist/settlement/xrpl-client.js +304 -0
  373. package/dist/settlement/xrpl-client.js.map +1 -0
  374. package/dist/test/testnet-config.d.ts +58 -0
  375. package/dist/test/testnet-config.d.ts.map +1 -0
  376. package/dist/test/testnet-config.js +89 -0
  377. package/dist/test/testnet-config.js.map +1 -0
  378. package/dist/test-utils/index.d.ts +3 -0
  379. package/dist/test-utils/index.d.ts.map +1 -0
  380. package/dist/test-utils/index.js +15 -0
  381. package/dist/test-utils/index.js.map +1 -0
  382. package/dist/test-utils/isolated-test-env.d.ts +31 -0
  383. package/dist/test-utils/isolated-test-env.d.ts.map +1 -0
  384. package/dist/test-utils/isolated-test-env.js +127 -0
  385. package/dist/test-utils/isolated-test-env.js.map +1 -0
  386. package/dist/test-utils/mock-factories-patch.d.ts +2 -0
  387. package/dist/test-utils/mock-factories-patch.d.ts.map +1 -0
  388. package/dist/test-utils/mock-factories-patch.js +3 -0
  389. package/dist/test-utils/mock-factories-patch.js.map +1 -0
  390. package/dist/test-utils/mock-factories.d.ts +22 -0
  391. package/dist/test-utils/mock-factories.d.ts.map +1 -0
  392. package/dist/test-utils/mock-factories.js +56 -0
  393. package/dist/test-utils/mock-factories.js.map +1 -0
  394. package/dist/utils/connection-pool.d.ts +42 -0
  395. package/dist/utils/connection-pool.d.ts.map +1 -0
  396. package/dist/utils/connection-pool.js +209 -0
  397. package/dist/utils/connection-pool.js.map +1 -0
  398. package/dist/utils/evm-rpc-connection-pool.d.ts +8 -0
  399. package/dist/utils/evm-rpc-connection-pool.d.ts.map +1 -0
  400. package/dist/utils/evm-rpc-connection-pool.js +40 -0
  401. package/dist/utils/evm-rpc-connection-pool.js.map +1 -0
  402. package/dist/utils/logger.d.ts +6 -0
  403. package/dist/utils/logger.d.ts.map +1 -0
  404. package/dist/utils/logger.js +58 -0
  405. package/dist/utils/logger.js.map +1 -0
  406. package/dist/utils/optional-require.d.ts +2 -0
  407. package/dist/utils/optional-require.d.ts.map +1 -0
  408. package/dist/utils/optional-require.js +54 -0
  409. package/dist/utils/optional-require.js.map +1 -0
  410. package/dist/utils/xrp-wss-connection-pool.d.ts +8 -0
  411. package/dist/utils/xrp-wss-connection-pool.d.ts.map +1 -0
  412. package/dist/utils/xrp-wss-connection-pool.js +42 -0
  413. package/dist/utils/xrp-wss-connection-pool.js.map +1 -0
  414. package/dist/wallet/audit-logger.d.ts +22 -0
  415. package/dist/wallet/audit-logger.d.ts.map +1 -0
  416. package/dist/wallet/audit-logger.js +120 -0
  417. package/dist/wallet/audit-logger.js.map +1 -0
  418. package/dist/wallet/fraud-detector-interface.d.ts +14 -0
  419. package/dist/wallet/fraud-detector-interface.d.ts.map +1 -0
  420. package/dist/wallet/fraud-detector-interface.js +3 -0
  421. package/dist/wallet/fraud-detector-interface.js.map +1 -0
  422. package/dist/wallet/key-manager.d.ts +6 -0
  423. package/dist/wallet/key-manager.d.ts.map +1 -0
  424. package/dist/wallet/key-manager.js +3 -0
  425. package/dist/wallet/key-manager.js.map +1 -0
  426. package/dist/wallet/placeholder-fraud-detector.d.ts +10 -0
  427. package/dist/wallet/placeholder-fraud-detector.d.ts.map +1 -0
  428. package/dist/wallet/placeholder-fraud-detector.js +10 -0
  429. package/dist/wallet/placeholder-fraud-detector.js.map +1 -0
  430. package/dist/wallet/rate-limiter.d.ts +26 -0
  431. package/dist/wallet/rate-limiter.d.ts.map +1 -0
  432. package/dist/wallet/rate-limiter.js +114 -0
  433. package/dist/wallet/rate-limiter.js.map +1 -0
  434. package/dist/wallet/suspicious-activity-detector.d.ts +25 -0
  435. package/dist/wallet/suspicious-activity-detector.d.ts.map +1 -0
  436. package/dist/wallet/suspicious-activity-detector.js +97 -0
  437. package/dist/wallet/suspicious-activity-detector.js.map +1 -0
  438. package/dist/wallet/treasury-wallet.d.ts +20 -0
  439. package/dist/wallet/treasury-wallet.d.ts.map +1 -0
  440. package/dist/wallet/treasury-wallet.js +151 -0
  441. package/dist/wallet/treasury-wallet.js.map +1 -0
  442. package/dist/wallet/wallet-authentication.d.ts +31 -0
  443. package/dist/wallet/wallet-authentication.d.ts.map +1 -0
  444. package/dist/wallet/wallet-authentication.js +102 -0
  445. package/dist/wallet/wallet-authentication.js.map +1 -0
  446. package/dist/wallet/wallet-db-schema.d.ts +11 -0
  447. package/dist/wallet/wallet-db-schema.d.ts.map +1 -0
  448. package/dist/wallet/wallet-db-schema.js +79 -0
  449. package/dist/wallet/wallet-db-schema.js.map +1 -0
  450. package/dist/wallet/wallet-security.d.ts +58 -0
  451. package/dist/wallet/wallet-security.d.ts.map +1 -0
  452. package/dist/wallet/wallet-security.js +148 -0
  453. package/dist/wallet/wallet-security.js.map +1 -0
  454. package/dist/wallet/wallet-seed-manager.d.ts +65 -0
  455. package/dist/wallet/wallet-seed-manager.d.ts.map +1 -0
  456. package/dist/wallet/wallet-seed-manager.js +418 -0
  457. package/dist/wallet/wallet-seed-manager.js.map +1 -0
  458. package/package.json +134 -0
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OERParser = void 0;
4
+ class OERParser {
5
+ constructor(_logger) {
6
+ }
7
+ readVarUInt(buffer, offset) {
8
+ if (offset >= buffer.length) {
9
+ throw new Error('Buffer underflow: cannot read var uint');
10
+ }
11
+ const firstByte = buffer[offset];
12
+ if (firstByte === undefined) {
13
+ throw new Error('Buffer underflow: cannot read first byte');
14
+ }
15
+ if ((firstByte & 0x80) === 0) {
16
+ return { value: BigInt(firstByte), bytesRead: 1 };
17
+ }
18
+ const lengthOfLength = firstByte & 0x7f;
19
+ if (lengthOfLength > 8) {
20
+ throw new Error(`Invalid var uint length: ${lengthOfLength}`);
21
+ }
22
+ if (offset + 1 + lengthOfLength > buffer.length) {
23
+ throw new Error('Buffer underflow: incomplete var uint');
24
+ }
25
+ const valueBytes = buffer.slice(offset + 1, offset + 1 + lengthOfLength);
26
+ let value = BigInt(0);
27
+ for (let i = 0; i < lengthOfLength; i++) {
28
+ const byte = valueBytes[i];
29
+ if (byte === undefined) {
30
+ throw new Error('Buffer underflow: incomplete value bytes');
31
+ }
32
+ value = (value << BigInt(8)) | BigInt(byte);
33
+ }
34
+ return { value, bytesRead: 1 + lengthOfLength };
35
+ }
36
+ readVarOctetString(buffer, offset) {
37
+ const { value: length, bytesRead: lengthBytes } = this.readVarUInt(buffer, offset);
38
+ const lengthNum = Number(length);
39
+ if (lengthNum > Number.MAX_SAFE_INTEGER) {
40
+ throw new Error(`Octet string too large: ${length}`);
41
+ }
42
+ if (offset + lengthBytes + lengthNum > buffer.length) {
43
+ throw new Error('Buffer underflow: incomplete octet string');
44
+ }
45
+ const value = buffer.slice(offset + lengthBytes, offset + lengthBytes + lengthNum);
46
+ return { value, bytesRead: lengthBytes + lengthNum };
47
+ }
48
+ readOctetString(buffer, offset, length) {
49
+ if (offset + length > buffer.length) {
50
+ throw new Error('Buffer underflow: incomplete fixed octet string');
51
+ }
52
+ const value = buffer.slice(offset, offset + length);
53
+ return { value, bytesRead: length };
54
+ }
55
+ readUInt8(buffer, offset) {
56
+ if (offset >= buffer.length) {
57
+ throw new Error('Buffer underflow: cannot read uint8');
58
+ }
59
+ const value = buffer[offset];
60
+ if (value === undefined) {
61
+ throw new Error('Buffer underflow: cannot read uint8 value');
62
+ }
63
+ return { value, bytesRead: 1 };
64
+ }
65
+ readUInt16(buffer, offset) {
66
+ if (offset + 2 > buffer.length) {
67
+ throw new Error('Buffer underflow: cannot read uint16');
68
+ }
69
+ const value = buffer.readUInt16BE(offset);
70
+ return { value, bytesRead: 2 };
71
+ }
72
+ readUInt32(buffer, offset) {
73
+ if (offset + 4 > buffer.length) {
74
+ throw new Error('Buffer underflow: cannot read uint32');
75
+ }
76
+ const value = buffer.readUInt32BE(offset);
77
+ return { value, bytesRead: 4 };
78
+ }
79
+ readUInt64(buffer, offset) {
80
+ if (offset + 8 > buffer.length) {
81
+ throw new Error('Buffer underflow: cannot read uint64');
82
+ }
83
+ const value = buffer.readBigUInt64BE(offset);
84
+ return { value, bytesRead: 8 };
85
+ }
86
+ writeVarUInt(value) {
87
+ const bigIntValue = typeof value === 'number' ? BigInt(value) : value;
88
+ if (bigIntValue < 0) {
89
+ throw new Error('Cannot encode negative value as var uint');
90
+ }
91
+ if (bigIntValue < 128) {
92
+ return Buffer.from([Number(bigIntValue)]);
93
+ }
94
+ const bytes = [];
95
+ let remaining = bigIntValue;
96
+ while (remaining > 0) {
97
+ bytes.unshift(Number(remaining & BigInt(0xff)));
98
+ remaining = remaining >> BigInt(8);
99
+ }
100
+ const lengthOfLength = bytes.length;
101
+ if (lengthOfLength > 127) {
102
+ throw new Error('Value too large for var uint encoding');
103
+ }
104
+ const result = Buffer.allocUnsafe(1 + lengthOfLength);
105
+ result[0] = 0x80 | lengthOfLength;
106
+ for (let i = 0; i < lengthOfLength; i++) {
107
+ const byte = bytes[i];
108
+ if (byte === undefined) {
109
+ throw new Error('Internal error: invalid bytes array');
110
+ }
111
+ result[1 + i] = byte;
112
+ }
113
+ return result;
114
+ }
115
+ writeVarOctetString(data) {
116
+ const lengthPrefix = this.writeVarUInt(data.length);
117
+ return Buffer.concat([lengthPrefix, data]);
118
+ }
119
+ writeUInt8(value) {
120
+ if (value < 0 || value > 255) {
121
+ throw new Error('Value out of range for uint8');
122
+ }
123
+ const buffer = Buffer.allocUnsafe(1);
124
+ buffer.writeUInt8(value, 0);
125
+ return buffer;
126
+ }
127
+ writeUInt16(value) {
128
+ if (value < 0 || value > 65535) {
129
+ throw new Error('Value out of range for uint16');
130
+ }
131
+ const buffer = Buffer.allocUnsafe(2);
132
+ buffer.writeUInt16BE(value, 0);
133
+ return buffer;
134
+ }
135
+ writeUInt32(value) {
136
+ if (value < 0 || value > 4294967295) {
137
+ throw new Error('Value out of range for uint32');
138
+ }
139
+ const buffer = Buffer.allocUnsafe(4);
140
+ buffer.writeUInt32BE(value, 0);
141
+ return buffer;
142
+ }
143
+ writeUInt64(value) {
144
+ const bigIntValue = typeof value === 'number' ? BigInt(value) : value;
145
+ if (bigIntValue < 0 || bigIntValue > BigInt('0xFFFFFFFFFFFFFFFF')) {
146
+ throw new Error('Value out of range for uint64');
147
+ }
148
+ const buffer = Buffer.allocUnsafe(8);
149
+ buffer.writeBigUInt64BE(bigIntValue, 0);
150
+ return buffer;
151
+ }
152
+ }
153
+ exports.OERParser = OERParser;
154
+ //# sourceMappingURL=oer-parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oer-parser.js","sourceRoot":"","sources":["../../src/encoding/oer-parser.ts"],"names":[],"mappings":";;;AAOA,MAAa,SAAS;IACpB,YAAY,OAAe;IAE3B,CAAC;IAMD,WAAW,CAAC,MAAc,EAAE,MAAc;QACxC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QAGD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;QACpD,CAAC;QAGD,MAAM,cAAc,GAAG,SAAS,GAAG,IAAI,CAAC;QACxC,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,4BAA4B,cAAc,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,MAAM,GAAG,CAAC,GAAG,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC3D,CAAC;QAGD,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC;QACzE,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAEtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC9D,CAAC;YACD,KAAK,GAAG,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,GAAG,cAAc,EAAE,CAAC;IAClD,CAAC;IAMD,kBAAkB,CAAC,MAAc,EAAE,MAAc;QAC/C,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEnF,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,SAAS,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,2BAA2B,MAAM,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QAGD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,WAAW,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAAC,CAAC;QAEnF,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,GAAG,SAAS,EAAE,CAAC;IACvD,CAAC;IAKD,eAAe,CACb,MAAc,EACd,MAAc,EACd,MAAc;QAEd,IAAI,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;QAGD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;QAEpD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IACtC,CAAC;IAKD,SAAS,CAAC,MAAc,EAAE,MAAc;QACtC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IACjC,CAAC;IAKD,UAAU,CAAC,MAAc,EAAE,MAAc;QACvC,IAAI,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC1C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IACjC,CAAC;IAKD,UAAU,CAAC,MAAc,EAAE,MAAc;QACvC,IAAI,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC1C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IACjC,CAAC;IAKD,UAAU,CAAC,MAAc,EAAE,MAAc;QACvC,IAAI,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC7C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IACjC,CAAC;IAKD,YAAY,CAAC,KAAsB;QACjC,MAAM,WAAW,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAEtE,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QAGD,IAAI,WAAW,GAAG,GAAG,EAAE,CAAC;YACtB,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC;QAGD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,SAAS,GAAG,WAAW,CAAC;QAE5B,OAAO,SAAS,GAAG,CAAC,EAAE,CAAC;YACrB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChD,SAAS,GAAG,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC;QACpC,IAAI,cAAc,GAAG,GAAG,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC3D,CAAC;QAGD,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC;QACtD,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,cAAc,CAAC;QAElC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACzD,CAAC;YACD,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;QACvB,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAKD,mBAAmB,CAAC,IAAY;QAC9B,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;IAC7C,CAAC;IAKD,UAAU,CAAC,KAAa;QACtB,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,GAAG,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAClD,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC5B,OAAO,MAAM,CAAC;IAChB,CAAC;IAKD,WAAW,CAAC,KAAa;QACvB,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,KAAK,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC/B,OAAO,MAAM,CAAC;IAChB,CAAC;IAKD,WAAW,CAAC,KAAa;QACvB,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,UAAU,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC/B,OAAO,MAAM,CAAC;IAChB,CAAC;IAKD,WAAW,CAAC,KAAsB;QAChC,MAAM,WAAW,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACtE,IAAI,WAAW,GAAG,CAAC,IAAI,WAAW,GAAG,MAAM,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAClE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QACxC,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAjPD,8BAiPC"}
@@ -0,0 +1,6 @@
1
+ import{c as B,j as e,H as U,J as H,K as J,X as C,o as f,T as K,L as Y,M as G,O as W,r as u,w as b,N as S,Q as R,U as Q,E as v,Y as _,_ as k,$ as M,a0 as X,a1 as q,a2 as Z,a3 as ee,a4 as te,a5 as se,a6 as ne,a7 as ae,a8 as re,a9 as oe,aa as y,ab as E}from"./index-BZ2INVgy.js";import{a as ie,C as le}from"./chevron-right-BUT9VhYe.js";/**
2
+ * @license lucide-react v0.563.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const ce=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],de=B("loader-circle",ce);function ue({...t}){return e.jsx(U,{"data-slot":"sheet",...t})}function xe({...t}){return e.jsx(G,{"data-slot":"sheet-portal",...t})}function me({className:t,...s}){return e.jsx(W,{"data-slot":"sheet-overlay",className:f("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...s})}function fe({className:t,children:s,side:n="right",showCloseButton:a=!0,...o}){return e.jsxs(xe,{children:[e.jsx(me,{}),e.jsxs(H,{"data-slot":"sheet-content",className:f("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500",n==="right"&&"data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-md",n==="left"&&"data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-md",n==="top"&&"data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 h-auto border-b",n==="bottom"&&"data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 h-auto border-t",t),...o,children:[s,a&&e.jsxs(J,{className:"ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none",children:[e.jsx(C,{className:"size-4"}),e.jsx("span",{className:"sr-only",children:"Close"})]})]})]})}function pe({className:t,...s}){return e.jsx("div",{"data-slot":"sheet-header",className:f("flex flex-col gap-1.5 p-4",t),...s})}function he({className:t,...s}){return e.jsx(K,{"data-slot":"sheet-title",className:f("text-foreground font-semibold",t),...s})}function ge({className:t,...s}){return e.jsx(Y,{"data-slot":"sheet-description",className:f("text-muted-foreground text-sm",t),...s})}function O(t){return t===null?"null":Array.isArray(t)?"array":typeof t}const N={string:"text-green-400",number:"text-orange-400",boolean:"text-blue-400",null:"text-gray-500",key:"text-purple-400"};function je({value:t}){const s=O(t);return s==="string"?e.jsxs("span",{className:N.string,children:['"',String(t),'"']}):s==="number"?e.jsx("span",{className:N.number,children:String(t)}):s==="boolean"?e.jsx("span",{className:N.boolean,children:String(t)}):s==="null"?e.jsx("span",{className:N.null,children:"null"}):e.jsx("span",{children:String(t)})}function D({value:t,keyName:s,depth:n,maxDepth:a,isLast:o}){const[i,l]=u.useState(n>=2),r=O(t),c=r==="object"||r==="array";if(n>a&&c)return e.jsxs("div",{className:"flex items-start",children:[s!==void 0&&e.jsxs(e.Fragment,{children:[e.jsxs("span",{className:N.key,children:['"',s,'"']}),e.jsx("span",{className:"text-gray-400",children:": "})]}),e.jsx("span",{className:"text-gray-500 italic",children:r==="array"?"[...]":"{...}"}),!o&&e.jsx("span",{className:"text-gray-400",children:","})]});if(!c)return e.jsxs("div",{className:"flex items-start",children:[s!==void 0&&e.jsxs(e.Fragment,{children:[e.jsxs("span",{className:N.key,children:['"',s,'"']}),e.jsx("span",{className:"text-gray-400",children:": "})]}),e.jsx(je,{value:t}),!o&&e.jsx("span",{className:"text-gray-400",children:","})]});const d=r==="array"?t.map((m,j)=>[String(j),m]):Object.entries(t),g=d.length===0,x=r==="array"?["[","]"]:["{","}"];return g?e.jsxs("div",{className:"flex items-start",children:[s!==void 0&&e.jsxs(e.Fragment,{children:[e.jsxs("span",{className:N.key,children:['"',s,'"']}),e.jsx("span",{className:"text-gray-400",children:": "})]}),e.jsx("span",{className:"text-gray-400",children:x.join("")}),!o&&e.jsx("span",{className:"text-gray-400",children:","})]}):e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-start cursor-pointer hover:bg-muted/50 -ml-5 pl-5",onClick:()=>l(!i),children:[e.jsx("span",{className:"w-4 h-4 flex items-center justify-center shrink-0 mr-1",children:i?e.jsx(ie,{className:"w-3 h-3 text-gray-500"}):e.jsx(le,{className:"w-3 h-3 text-gray-500"})}),s!==void 0&&e.jsxs(e.Fragment,{children:[e.jsxs("span",{className:N.key,children:['"',s,'"']}),e.jsx("span",{className:"text-gray-400",children:": "})]}),e.jsx("span",{className:"text-gray-400",children:x[0]}),i&&e.jsxs(e.Fragment,{children:[e.jsxs("span",{className:"text-gray-500 italic mx-1",children:[d.length," ",d.length===1?"item":"items"]}),e.jsx("span",{className:"text-gray-400",children:x[1]}),!o&&e.jsx("span",{className:"text-gray-400",children:","})]})]}),!i&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"ml-4 border-l border-gray-700 pl-2",children:d.map(([m,j],p)=>e.jsx(D,{value:j,keyName:r==="object"?m:void 0,depth:n+1,maxDepth:a,isLast:p===d.length-1},m))}),e.jsxs("div",{className:"flex items-start",children:[e.jsx("span",{className:"w-4"}),e.jsx("span",{className:"text-gray-400",children:x[1]}),!o&&e.jsx("span",{className:"text-gray-400",children:","})]})]})]})}function Ne({data:t,collapsed:s=!1,maxDepth:n=5}){const[a]=u.useState(s);return e.jsx("div",{className:f("font-mono text-xs leading-relaxed overflow-x-auto","bg-muted/30 rounded-md p-4"),children:e.jsx(D,{value:t,depth:a?n+1:0,maxDepth:n,isLast:!0})})}function be(t){const s=Math.abs(t),n=t<0,a=n?"Expired ":"",o=n?" ago":"";if(s<1e3)return n?"Just expired":"Expiring now";const i=Math.floor(s/1e3)%60,l=Math.floor(s/(1e3*60))%60,r=Math.floor(s/(1e3*60*60))%24,c=Math.floor(s/(1e3*60*60*24));if(c>0)return c===1?a+"1 day"+o:a+`${c} days`+o;const d=[];return r>0&&d.push(`${r}h`),(l>0||r>0)&&d.push(`${l}m`),d.push(`${i}s`),a+d.join(" ")+o}function ye(t){const[s,n]=u.useState(Date.now()),a=u.useMemo(()=>{if(!t)return null;if(t instanceof Date)return t.getTime();if(typeof t=="number")return t;if(typeof t=="string"){const d=new Date(t).getTime();return isNaN(d)?null:d}return null},[t]),o=a!==null?a-s:0,i=o<0,l=Math.abs(o),r=a!==null&&l<1440*60*1e3;return u.useEffect(()=>{if(!r)return;const d=setInterval(()=>{n(Date.now())},1e3);return()=>clearInterval(d)},[r]),{countdown:u.useMemo(()=>a===null?"N/A":be(o),[a,o]),isExpired:i,diffMs:o}}function Ee({label:t,value:s,unit:n="units",className:a}){let o;try{o=BigInt(String(s)).toLocaleString()}catch{o=String(s)}return e.jsxs("div",{className:f("flex flex-col gap-1",a),children:[e.jsx("span",{className:"text-xs text-muted-foreground uppercase tracking-wide",children:t}),e.jsxs("span",{className:"text-sm font-mono",children:[o," ",e.jsx("span",{className:"text-muted-foreground",children:n})]})]})}function we(t){const s=t.match(/peer-(\d+)/i);if(s){const o=9100+parseInt(s[1],10);return`http://${window.location.hostname}:${o}`}const n=t.match(/agent-(\d+)/i);if(n){const o=9100+parseInt(n[1],10);return`http://${window.location.hostname}:${o}`}return null}function I({label:t,value:s,className:n,onCopy:a}){const[o,i]=u.useState(!1),l=we(s),r=async()=>{try{await navigator.clipboard.writeText(s),i(!0),a==null||a(s),setTimeout(()=>i(!1),1500)}catch{}},c=()=>{l&&window.open(l,"_blank","noopener,noreferrer")};return e.jsxs("div",{className:f("flex flex-col gap-1",n),children:[e.jsx("span",{className:"text-xs text-muted-foreground uppercase tracking-wide",children:t}),e.jsxs("div",{className:"flex items-center gap-2",children:[l?e.jsx("button",{onClick:c,className:"font-mono text-sm text-blue-500 hover:text-blue-700 hover:underline focus:outline-none",title:`Open ${s} Explorer (${l})`,children:s}):e.jsx("span",{className:"font-mono text-sm break-all",children:s}),e.jsx("button",{onClick:r,className:"shrink-0 p-1 rounded hover:bg-muted transition-colors",title:"Copy to clipboard",children:o?e.jsx(b,{className:"w-3 h-3 text-green-400"}):e.jsx(S,{className:"w-3 h-3 text-muted-foreground"})})]})]})}function w({label:t,value:s,className:n,onCopy:a,explorerUrl:o}){const[i,l]=u.useState(!1),r=async()=>{try{await navigator.clipboard.writeText(s),l(!0),a==null||a(s),setTimeout(()=>l(!1),1500)}catch{}};return e.jsxs("div",{className:f("flex flex-col gap-1",n),children:[e.jsx("span",{className:"text-xs text-muted-foreground uppercase tracking-wide",children:t}),e.jsxs("div",{className:"flex items-center gap-2",children:[o?e.jsx("a",{href:o,target:"_blank",rel:"noopener noreferrer",className:"font-mono text-sm text-blue-500 hover:text-blue-700 hover:underline focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-1 rounded",onClick:c=>{c.preventDefault(),window.open(o,"_blank","noopener,noreferrer")},children:s}):e.jsx("span",{className:"font-mono text-sm break-all",children:s}),e.jsx("button",{onClick:r,className:"shrink-0 p-1 rounded hover:bg-muted transition-colors",title:"Copy to clipboard",children:i?e.jsx(b,{className:"w-3 h-3 text-green-400"}):e.jsx(S,{className:"w-3 h-3 text-muted-foreground"})}),o&&e.jsx("button",{onClick:()=>window.open(o,"_blank","noopener,noreferrer"),className:"shrink-0 p-1 rounded hover:bg-muted transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-1",title:"View on blockchain explorer","aria-label":"View on blockchain explorer",children:e.jsx(R,{className:"w-3 h-3 text-muted-foreground hover:text-blue-500"})})]})]})}function ve({value:t,label:s="Copy",className:n,onCopy:a}){const[o,i]=u.useState(!1),l=async()=>{try{await navigator.clipboard.writeText(t),i(!0),a==null||a(t),setTimeout(()=>i(!1),1500)}catch{}};return e.jsx("button",{onClick:l,className:f("inline-flex items-center gap-1 px-2 py-1 rounded text-xs","hover:bg-muted transition-colors",o&&"text-green-400",n),title:`Copy ${s}`,children:o?e.jsxs(e.Fragment,{children:[e.jsx(b,{className:"w-3 h-3"}),"Copied!"]}):e.jsxs(e.Fragment,{children:[e.jsx(S,{className:"w-3 h-3"}),s]})})}const Ce={12:"Prepare",13:"Fulfill",14:"Reject"},A={F:"Final (permanent failure)",T:"Temporary (can retry)",R:"Relative (protocol violation)"},ke={F00:"Bad Request",F01:"Invalid Packet",F02:"Unreachable",F03:"Invalid Amount",F04:"Insufficient Destination Amount",F05:"Wrong Condition",F06:"Unexpected Payment",F07:"Cannot Receive",F08:"Amount Too Large",F09:"Invalid Peer Response",F99:"Application Error",T00:"Internal Error",T01:"Peer Unreachable",T02:"Peer Busy",T03:"Connector Busy",T04:"Insufficient Liquidity",T05:"Rate Limited",T99:"Application Error",R00:"Transfer Timed Out",R01:"Insufficient Source Amount",R02:"Insufficient Timeout",R99:"Application Error"};function Te(t){if(t==null)return"N/A";const s=String(t);try{return BigInt(s).toLocaleString()+" units"}catch{return s+" units"}}function T(t,s=32){return t?t.length<=s?t:t.slice(0,s/2)+"..."+t.slice(-s/2):"N/A"}function Ie(t){if(!t)return"N/A";try{return new Date(t).toLocaleString()}catch{return String(t)}}function Se({expiresAt:t}){const{countdown:s,isExpired:n}=ye(t);return e.jsxs("div",{className:"flex flex-col gap-1",children:[e.jsx("span",{className:"text-xs text-muted-foreground uppercase tracking-wide",children:"Expires At"}),e.jsxs("div",{className:"flex flex-col gap-1",children:[e.jsx("span",{className:"text-sm",children:Ie(t)}),e.jsx("span",{className:f("text-xs font-mono",n?"text-red-400":"text-green-400"),children:s})]})]})}function h({label:t,value:s,className:n,mono:a=!1}){return e.jsxs("div",{className:f("flex flex-col gap-1",n),children:[e.jsx("span",{className:"text-xs text-muted-foreground uppercase tracking-wide",children:t}),e.jsx("span",{className:f("text-sm",a&&"font-mono break-all"),children:s})]})}function Re(t){const s=t,n=s.type;if(n==="AGENT_CHANNEL_PAYMENT_SENT"){const r=(s.packetType||"prepare").toUpperCase();return{packetType:r,packetTypeCode:r==="PREPARE"?12:r==="FULFILL"?13:r==="REJECT"?14:12,amount:s.amount,from:s.from,to:s.to,destination:s.destination,executionCondition:s.executionCondition,expiresAt:s.expiresAt,fulfillment:s.fulfillment,errorCode:s.errorCode,errorMessage:s.errorMessage,packetId:s.channelId}}if(!["PACKET_RECEIVED","PACKET_FORWARDED","PACKET_SENT"].includes(n))return null;const a=s.data||s,o=a.packetType||"PREPARE";return{packetType:o,packetTypeCode:o==="PREPARE"?12:o==="FULFILL"?13:o==="REJECT"?14:0,amount:a.amount,from:a.from,to:a.to,destination:a.destination,executionCondition:a.executionCondition||a.packetId,expiresAt:a.expiresAt,fulfillment:a.fulfillment,errorCode:a.errorCode,triggeredBy:a.triggeredBy,errorMessage:a.message||a.errorMessage,dataSize:a.dataSize,source:a.source,packetId:a.packetId}}function Ae({event:t}){const s=Re(t);if(!s)return e.jsx("div",{className:"p-4 text-sm text-muted-foreground",children:"This event does not contain ILP packet data."});const{packetType:n,packetTypeCode:a}=s;return e.jsxs("div",{className:"flex flex-col gap-4 p-4",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:f("px-2 py-1 rounded text-xs font-medium",n==="PREPARE"&&"bg-blue-500/20 text-blue-400",n==="FULFILL"&&"bg-green-500/20 text-green-400",n==="REJECT"&&"bg-red-500/20 text-red-400"),children:Ce[a]||n}),e.jsxs("span",{className:"text-xs text-muted-foreground",children:["Type ",a]})]}),e.jsxs("div",{className:"grid grid-cols-1 gap-4",children:[e.jsx("h4",{className:"text-xs font-medium text-muted-foreground uppercase",children:"Routing"}),s.from&&e.jsx(I,{label:"From (Sender)",value:s.from}),s.to&&e.jsx(I,{label:"To (Next Hop)",value:s.to}),s.destination&&e.jsx(h,{label:"Destination (Final)",value:s.destination,mono:!0})]}),e.jsxs("div",{className:"grid grid-cols-1 gap-4 border-t border-border pt-4",children:[e.jsx("h4",{className:"text-xs font-medium text-muted-foreground uppercase",children:"Payment Details"}),s.amount&&e.jsx(h,{label:"Amount",value:Te(s.amount)}),s.packetId&&e.jsx(h,{label:"Channel ID",value:T(s.packetId,64),mono:!0}),s.source&&e.jsx(h,{label:"Source (Legacy)",value:s.source})]}),n==="PREPARE"&&e.jsxs("div",{className:"grid grid-cols-1 gap-4 border-t border-border pt-4",children:[e.jsx("h4",{className:"text-xs font-medium text-muted-foreground uppercase",children:"Prepare Fields"}),s.executionCondition&&e.jsx(h,{label:"Execution Condition",value:e.jsx("span",{className:"font-mono text-xs break-all",children:T(s.executionCondition,64)})}),s.expiresAt&&e.jsx(Se,{expiresAt:s.expiresAt}),s.dataSize!==void 0&&e.jsx(h,{label:"Data Size",value:`${s.dataSize} bytes`})]}),n==="FULFILL"&&e.jsxs("div",{className:"grid grid-cols-1 gap-4 border-t border-border pt-4",children:[e.jsx("h4",{className:"text-xs font-medium text-muted-foreground uppercase",children:"Fulfill Fields"}),s.fulfillment&&e.jsx(h,{label:"Fulfillment",value:e.jsx("span",{className:"font-mono text-xs break-all",children:T(s.fulfillment,64)})}),s.dataSize!==void 0&&e.jsx(h,{label:"Data Size",value:`${s.dataSize} bytes`})]}),n==="REJECT"&&e.jsxs("div",{className:"grid grid-cols-1 gap-4 border-t border-border pt-4",children:[e.jsx("h4",{className:"text-xs font-medium text-muted-foreground uppercase",children:"Reject Fields"}),s.errorCode&&e.jsx(h,{label:"Error Code",value:e.jsxs("span",{className:"flex flex-col gap-1",children:[e.jsx("span",{className:"font-mono text-red-400",children:s.errorCode}),e.jsxs("span",{className:"text-xs text-muted-foreground",children:[ke[s.errorCode]||"Unknown error",s.errorCode&&A[s.errorCode[0]]&&e.jsxs("span",{className:"ml-2",children:["(",A[s.errorCode[0]],")"]})]})]})}),s.triggeredBy&&e.jsx(h,{label:"Triggered By",value:s.triggeredBy,mono:!0}),s.errorMessage&&e.jsx(h,{label:"Message",value:s.errorMessage}),s.dataSize!==void 0&&e.jsx(h,{label:"Data Size",value:`${s.dataSize} bytes`})]})]})}function Pe(t){const s=t.type;return["PACKET_RECEIVED","PACKET_FORWARDED","PACKET_SENT","AGENT_CHANNEL_PAYMENT_SENT"].includes(s)}function Fe(t){if(!t||typeof t!="object")return!1;const s=t;return"nostrEvent"in s||"toonData"in s}function Le({data:t}){return e.jsxs("div",{className:"p-4",children:[e.jsx("div",{className:"text-sm text-muted-foreground mb-4",children:"TOON Viewer - Coming Soon"}),e.jsx("div",{className:"text-xs font-mono bg-muted p-3 rounded",children:e.jsx("pre",{children:JSON.stringify(t,null,2)})})]})}const _e="";function $(t){if(!t)return null;if("packet_id"in t){const n=t;if(n.packet_id)return n.packet_id}const s=t;if(s.packetId)return s.packetId;if(s.data&&typeof s.data=="object"){const n=s.data;if(n.packetId)return n.packetId}return null}async function Me(t){const s=new URL(`${_e}/api/events`,window.location.origin);s.searchParams.set("packetId",t),s.searchParams.set("limit","10");const n=await fetch(s.toString());if(!n.ok)throw new Error(`Failed to fetch related events: ${n.statusText}`);return(await n.json()).events||[]}function Oe(t){const[s,n]=u.useState([]),[a,o]=u.useState(!1),[i,l]=u.useState(null),r=$(t),c=u.useCallback(async()=>{if(!r){n([]),o(!1),l(null);return}o(!0),l(null);try{const d=await Me(r),g=t&&"id"in t&&typeof t.id=="number"?t.id:null,x=g?d.filter(m=>m.id!==g):d;n(x)}catch(d){l(d instanceof Error?d.message:"Failed to fetch related events"),n([])}finally{o(!1)}},[r,t]);return u.useEffect(()=>{c()},[c]),{relatedEvents:s,loading:a,error:i,refresh:c}}function De(t){return $(t)!==null}function $e(t){const[s,n]=u.useState(()=>typeof window>"u"?!1:window.matchMedia(t).matches);return u.useEffect(()=>{const a=window.matchMedia(t),o=i=>n(i.matches);return n(a.matches),a.addEventListener("change",o),()=>a.removeEventListener("change",o)},[t]),s}var Ve=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],ze=Ve.reduce((t,s)=>{const n=Q(`Primitive.${s}`),a=u.forwardRef((o,i)=>{const{asChild:l,...r}=o,c=l?n:s;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),e.jsx(c,{...r,ref:i})});return a.displayName=`Primitive.${s}`,{...t,[s]:a}},{}),Be="Separator",P="horizontal",Ue=["horizontal","vertical"],V=u.forwardRef((t,s)=>{const{decorative:n,orientation:a=P,...o}=t,i=He(a)?a:P,r=n?{role:"none"}:{"aria-orientation":i==="vertical"?i:void 0,role:"separator"};return e.jsx(ze.div,{"data-orientation":i,...r,...o,ref:s})});V.displayName=Be;function He(t){return Ue.includes(t)}var Je=V;function Ke({className:t,orientation:s="horizontal",decorative:n=!0,...a}){return e.jsx(Je,{"data-slot":"separator",decorative:n,orientation:s,className:f("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",t),...a})}function Ye(t,s){switch(t){case"xrp":return{url:`https://xrpscan.com/tx/${s}`,label:"View on XRPScan"};case"evm":return{url:`https://basescan.org/tx/${s}`,label:"View on BaseScan"};case"aptos":return{url:`https://explorer.aptoslabs.com/txn/${s}`,label:"View on Aptos Explorer"}}}function Ge(t){return t.type==="CLAIM_SENT"?t.success?{icon:e.jsx(b,{className:"h-4 w-4"}),color:"text-green-500",label:"Sent"}:{icon:e.jsx(C,{className:"h-4 w-4"}),color:"text-red-500",label:"Send Failed"}:t.type==="CLAIM_RECEIVED"?t.verified?{icon:e.jsx(b,{className:"h-4 w-4"}),color:"text-green-500",label:"Verified"}:{icon:e.jsx(C,{className:"h-4 w-4"}),color:"text-red-500",label:"Verification Failed"}:t.type==="CLAIM_REDEEMED"?t.success?{icon:e.jsx(b,{className:"h-4 w-4"}),color:"text-green-500",label:"Redeemed"}:{icon:e.jsx(C,{className:"h-4 w-4"}),color:"text-red-500",label:"Redemption Failed"}:{icon:e.jsx("span",{children:"○"}),color:"text-gray-500",label:"Unknown"}}function We(t,s){return s?t.type==="CLAIM_SENT"&&t.success||t.type==="CLAIM_RECEIVED"&&t.verified?"border-green-500":t.type==="CLAIM_SENT"&&!t.success||t.type==="CLAIM_RECEIVED"&&!t.verified?"border-red-500":"border-gray-300":"border-gray-300"}const Qe=({event:t,nextEvent:s,isLast:n})=>{const[a,o]=u.useState(!1),i=Ge(t),l=We(t,s),r=typeof t.timestamp=="number"?t.timestamp:new Date(t.timestamp).getTime(),c=t.type==="CLAIM_REDEEMED"&&t.txHash?Ye(t.blockchain,t.txHash):null;return e.jsxs("div",{className:"flex gap-4",children:[e.jsxs("div",{className:"flex flex-col items-center",children:[e.jsx("div",{className:`flex h-8 w-8 items-center justify-center rounded-full border-2 ${i.color==="text-green-500"?"border-green-500 bg-green-50":i.color==="text-red-500"?"border-red-500 bg-red-50":"border-gray-300 bg-gray-50"}`,children:e.jsx("span",{className:i.color,children:i.icon})}),!n&&e.jsx("div",{className:`w-0.5 flex-1 border-l-2 ${l} min-h-[40px]`})]}),e.jsxs("div",{className:"flex-1 pb-6",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[e.jsx("h4",{className:"text-sm font-medium",children:t.type.replace(/_/g," ")}),e.jsx(v,{variant:"outline",className:`text-xs border ${_(t.blockchain)}`,children:t.blockchain.toUpperCase()}),e.jsx("span",{className:`text-sm ${i.color}`,children:i.label})]}),e.jsx("p",{className:"text-xs text-muted-foreground mb-2",children:k(r)}),e.jsxs("div",{className:"text-xs space-y-1",children:[t.amount&&e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-muted-foreground",children:"Amount:"}),e.jsx("span",{className:"font-mono",children:M(t.amount,t.blockchain)})]}),t.peerId&&e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-muted-foreground",children:"Peer:"}),e.jsx("span",{className:"font-mono",children:t.peerId})]}),t.channelId&&e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-muted-foreground",children:"Channel:"}),e.jsxs("span",{className:"font-mono",children:[t.channelId.slice(0,16),"..."]})]}),t.error&&e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-red-500",children:"Error:"}),e.jsx("span",{className:"text-red-500 font-mono",children:t.error})]})]}),c&&e.jsxs("a",{href:c.url,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 text-xs text-blue-500 hover:text-blue-600 hover:underline mt-2",children:[e.jsx(R,{className:"h-3 w-3"}),c.label]}),Object.keys(t.details).length>0&&e.jsx("button",{onClick:()=>o(!a),className:"text-xs text-blue-500 hover:text-blue-600 mt-2",children:a?"Hide details":"Show details"}),a&&e.jsx("div",{className:"mt-2 p-2 bg-muted rounded text-xs font-mono",children:e.jsx("pre",{className:"whitespace-pre-wrap",children:JSON.stringify(t.details,null,2)})})]})]})};function Xe({messageId:t,events:s}){return s.length===0?e.jsxs("div",{className:"p-4 text-center text-sm text-muted-foreground",children:["No claim events found for message ID: ",t]}):e.jsxs("div",{className:"w-full",children:[e.jsxs("div",{className:"mb-4",children:[e.jsx("h3",{className:"text-sm font-medium mb-1",children:"Claim Lifecycle"}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:["Message ID:"," ",e.jsxs("span",{className:"font-mono",title:t,children:[t.slice(0,16),"..."]})]})]}),e.jsx(Ke,{className:"my-4"}),e.jsx("div",{className:"space-y-0",children:s.map((n,a)=>e.jsx(Qe,{event:n,nextEvent:s[a+1],isLast:a===s.length-1},`${n.type}-${n.timestamp}`))})]})}function qe(t){const[s,n]=u.useState([]);return u.useEffect(()=>{if(!t){n([]);return}n([])},[t]),s}function Ze(t){if(t.payload&&typeof t.payload=="object"){const s=t.payload;if(typeof s.messageId=="string")return s.messageId}return typeof t.messageId=="string"?t.messageId:null}function et(t){return t==="CLAIM_SENT"||t==="CLAIM_RECEIVED"||t==="CLAIM_REDEEMED"}const F="explorer-detail-panel-tab";function tt(t){if(!t)return null;if("payload"in t&&t.payload){const n=t;return{type:n.event_type,timestamp:n.timestamp,nodeId:n.node_id,peerId:n.peer_id,packetId:n.packet_id,amount:n.amount,destination:n.destination,payload:n.payload,id:n.id,direction:n.direction}}const s=t;return{type:s.type,timestamp:typeof s.timestamp=="string"?new Date(s.timestamp).getTime():s.timestamp,nodeId:s.nodeId,peerId:s.peerId,packetId:s.packetId,amount:s.amount,destination:s.destination,payload:s,id:void 0,direction:s.direction}}function st({event:t,onEventSelect:s}){const{relatedEvents:n,loading:a,error:o,refresh:i}=Oe(t);return a?e.jsx("div",{className:"flex items-center justify-center p-8",children:e.jsx(de,{className:"w-6 h-6 animate-spin text-muted-foreground"})}):o?e.jsxs("div",{className:"p-4 text-sm text-red-400",children:[e.jsxs("p",{children:["Failed to load related events: ",o]}),e.jsx("button",{onClick:i,className:"mt-2 text-xs underline hover:no-underline transition-colors focus:outline-none focus:ring-2 focus:ring-primary focus:ring-offset-2 focus:ring-offset-background rounded",children:"Try again"})]}):n.length===0?e.jsx("div",{className:"p-4 text-sm text-muted-foreground",children:"No related events found for this packet."}):e.jsxs("div",{className:"flex flex-col gap-2 p-4",children:[e.jsxs("p",{className:"text-xs text-muted-foreground mb-2",children:["Found ",n.length," related event",n.length!==1?"s":""]}),n.map(l=>e.jsxs("button",{onClick:()=>s==null?void 0:s(l),className:"flex items-center justify-between p-3 rounded-md border border-border hover:bg-muted/50 transition-colors text-left focus:outline-none focus:ring-2 focus:ring-primary focus:ring-offset-2 focus:ring-offset-background",children:[e.jsxs("div",{className:"flex flex-col gap-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(v,{variant:"outline",className:"text-xs",children:l.event_type}),l.direction&&e.jsx("span",{className:"text-xs text-muted-foreground",children:l.direction})]}),e.jsx("span",{className:"text-xs text-muted-foreground",children:k(l.timestamp)})]}),e.jsx(R,{className:"w-4 h-4 text-muted-foreground"})]},l.id))]})}function L({displayData:t,selectedTab:s,handleTabChange:n,showPacketTab:a,showToonTab:o,showRelatedTab:i,showClaimTimelineTab:l,claimMessageId:r,claimEvents:c,event:d,onEventSelect:g}){if(!t)return null;const x=l,m=x?se(t.payload):null,j=x?ne(t.payload):null,p=x?ae(t.payload):null;return e.jsxs("div",{className:"flex flex-col gap-4 flex-1 overflow-hidden",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-3 px-4 shrink-0",children:[t.nodeId&&e.jsx("div",{className:"col-span-2",children:e.jsx(w,{label:"Node",value:t.nodeId})}),t.peerId&&e.jsx(I,{label:"Peer",value:t.peerId}),x&&m&&e.jsxs("div",{className:"flex flex-col gap-1",children:[e.jsx("span",{className:"text-xs text-muted-foreground",children:"Blockchain"}),e.jsx(v,{variant:"outline",className:`text-xs border w-fit ${_(m)}`,children:m.toUpperCase()})]}),x&&r&&e.jsx("div",{className:"col-span-2",children:e.jsx(w,{label:"Message ID",value:r})}),x&&p&&e.jsx("div",{className:"col-span-2",children:e.jsx(w,{label:"Channel ID",value:p})}),x&&j&&m&&e.jsx("div",{className:"col-span-2",children:e.jsxs("div",{className:"flex flex-col gap-1",children:[e.jsx("span",{className:"text-xs text-muted-foreground",children:"Amount"}),e.jsx("span",{className:"text-sm font-mono",children:M(j,m)})]})}),t.packetId&&e.jsx(w,{label:"Packet ID",value:t.packetId}),!x&&t.amount&&e.jsx(Ee,{label:"Amount",value:t.amount}),t.destination&&e.jsx("div",{className:"col-span-2",children:e.jsx(w,{label:"Destination",value:t.destination})})]}),e.jsxs(re,{value:s,onValueChange:n,className:"flex-1 flex flex-col overflow-hidden",children:[e.jsxs(oe,{className:"mx-4 shrink-0",children:[e.jsx(y,{value:"raw",children:"Raw"}),a&&e.jsx(y,{value:"packet",children:"ILP Packet"}),o&&e.jsx(y,{value:"toon",children:"TOON"}),l&&e.jsx(y,{value:"timeline",children:"Timeline"}),i&&e.jsx(y,{value:"related",children:"Related"})]}),e.jsxs("div",{className:"flex-1 overflow-y-auto",children:[e.jsxs(E,{value:"raw",className:"mt-0 p-4",children:[e.jsx("div",{className:"flex justify-end mb-2",children:e.jsx(ve,{value:JSON.stringify(t.payload,null,2),label:"Copy JSON"})}),e.jsx(Ne,{data:t.payload})]}),a&&e.jsx(E,{value:"packet",className:"mt-0",children:e.jsx(Ae,{event:t.payload})}),o&&e.jsx(E,{value:"toon",className:"mt-0",children:e.jsx(Le,{data:t.payload})}),l&&e.jsx(E,{value:"timeline",className:"mt-0 p-4",children:r?e.jsx(Xe,{messageId:r,events:c}):e.jsx("div",{className:"p-4 text-center text-sm text-muted-foreground",children:"No message ID found for this claim event"})}),i&&e.jsx(E,{value:"related",className:"mt-0",children:e.jsx(st,{event:d,onEventSelect:g})})]})]})]})}function rt({event:t,onClose:s,onEventSelect:n}){const a=$e("(min-width: 768px)"),[o,i]=u.useState(()=>{try{return localStorage.getItem(F)||"raw"}catch{return"raw"}});u.useEffect(()=>{const p=z=>{z.key==="Escape"&&t&&s()};return document.addEventListener("keydown",p),()=>document.removeEventListener("keydown",p)},[t,s]);const l=p=>{i(p);try{localStorage.setItem(F,p)}catch{}},r=tt(t),c=t&&Pe(r==null?void 0:r.payload),d=t&&Fe(r==null?void 0:r.payload),g=t&&De(t),x=t&&r&&et(r.type),m=x?Ze(t):null,j=qe(m);return u.useEffect(()=>{t&&(o==="packet"&&!c&&i("raw"),o==="toon"&&!d&&i("raw"),o==="related"&&!g&&i("raw"),o==="timeline"&&!x&&i("raw"))},[t,o,c,d,g,x]),a?e.jsx(ue,{open:!!t,onOpenChange:p=>!p&&s(),children:e.jsxs(fe,{side:"right",className:"w-full sm:max-w-lg overflow-hidden flex flex-col",children:[e.jsxs(pe,{className:"shrink-0",children:[e.jsxs(he,{className:"flex items-center gap-2",children:[e.jsx(v,{variant:"outline",children:(r==null?void 0:r.type)||"Event Details"}),(r==null?void 0:r.direction)&&e.jsxs("span",{className:"text-xs text-muted-foreground",children:["(",r.direction,")"]})]}),e.jsx(ge,{children:(r==null?void 0:r.timestamp)&&e.jsxs("span",{className:"text-xs",children:[new Date(r.timestamp).toLocaleString(),e.jsxs("span",{className:"ml-2 text-muted-foreground",children:["(",k(r.timestamp),")"]})]})})]}),t&&e.jsx(L,{displayData:r,selectedTab:o,handleTabChange:l,showPacketTab:!!c,showToonTab:!!d,showRelatedTab:!!g,showClaimTimelineTab:!!x,claimMessageId:m,claimEvents:j,event:t,onEventSelect:n})]})}):e.jsx(X,{open:!!t,onOpenChange:p=>!p&&s(),children:e.jsxs(q,{className:"max-w-[100vw] h-[100vh] max-h-[100vh] overflow-hidden flex flex-col p-4",children:[e.jsxs(Z,{className:"shrink-0",children:[e.jsxs(ee,{className:"flex items-center gap-2",children:[e.jsx(v,{variant:"outline",children:(r==null?void 0:r.type)||"Event Details"}),(r==null?void 0:r.direction)&&e.jsxs("span",{className:"text-xs text-muted-foreground",children:["(",r.direction,")"]})]}),e.jsx(te,{children:(r==null?void 0:r.timestamp)&&e.jsxs("span",{className:"text-xs",children:[new Date(r.timestamp).toLocaleString(),e.jsxs("span",{className:"ml-2 text-muted-foreground",children:["(",k(r.timestamp),")"]})]})})]}),t&&e.jsx(L,{displayData:r,selectedTab:o,handleTabChange:l,showPacketTab:!!c,showToonTab:!!d,showRelatedTab:!!g,showClaimTimelineTab:!!x,claimMessageId:m,claimEvents:j,event:t,onEventSelect:n})]})})}export{rt as EventDetailPanel};
@@ -0,0 +1,26 @@
1
+ import{c as nt,r as f,j as u,a as yn,u as Ot,R as vn,b as ut,d as fe,P as re,e as U,A as Yt,f as wn,g as xn,h as ft,i as bn,k as Mn,l as Cn,m as Sn,F as Nn,D as Dn,C as En,n as kn,o as _,p as uo,q as Oe,s as On,t as fo,V as ho,v as mo,w as Tt,x as C,y as en,B as Ce,Z as po,I as qe,W as go,S as Ke,z as yo,X as ct,E as _t,G as Tn}from"./index-BZ2INVgy.js";import{C as Ft,a as vo}from"./chevron-right-BUT9VhYe.js";/**
2
+ * @license lucide-react v0.563.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const wo=[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]],xo=nt("calendar",wo);/**
7
+ * @license lucide-react v0.563.0 - ISC
8
+ *
9
+ * This source code is licensed under the ISC license.
10
+ * See the LICENSE file in the root directory of this source tree.
11
+ */const bo=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],Mo=nt("chevron-left",bo);/**
12
+ * @license lucide-react v0.563.0 - ISC
13
+ *
14
+ * This source code is licensed under the ISC license.
15
+ * See the LICENSE file in the root directory of this source tree.
16
+ */const Co=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],So=nt("chevron-up",Co);/**
17
+ * @license lucide-react v0.563.0 - ISC
18
+ *
19
+ * This source code is licensed under the ISC license.
20
+ * See the LICENSE file in the root directory of this source tree.
21
+ */const No=[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]],Do=nt("chevrons-up-down",No);/**
22
+ * @license lucide-react v0.563.0 - ISC
23
+ *
24
+ * This source code is licensed under the ISC license.
25
+ * See the LICENSE file in the root directory of this source tree.
26
+ */const Eo=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],_n=nt("search",Eo),Pn=6048e5,ko=864e5,tn=Symbol.for("constructDateFrom");function K(e,t){return typeof e=="function"?e(t):e&&typeof e=="object"&&tn in e?e[tn](t):e instanceof Date?new e.constructor(t):new Date(t)}function B(e,t){return K(t||e,e)}function Wn(e,t,n){const r=B(e,n==null?void 0:n.in);return isNaN(t)?K(e,NaN):(t&&r.setDate(r.getDate()+t),r)}function In(e,t,n){const r=B(e,n==null?void 0:n.in);if(isNaN(t))return K(e,NaN);if(!t)return r;const o=r.getDate(),a=K(e,r.getTime());a.setMonth(r.getMonth()+t+1,0);const s=a.getDate();return o>=s?a:(r.setFullYear(a.getFullYear(),a.getMonth(),o),r)}let Oo={};function rt(){return Oo}function Le(e,t){var i,c,l,d;const n=rt(),r=(t==null?void 0:t.weekStartsOn)??((c=(i=t==null?void 0:t.locale)==null?void 0:i.options)==null?void 0:c.weekStartsOn)??n.weekStartsOn??((d=(l=n.locale)==null?void 0:l.options)==null?void 0:d.weekStartsOn)??0,o=B(e,t==null?void 0:t.in),a=o.getDay(),s=(a<r?7:0)+a-r;return o.setDate(o.getDate()-s),o.setHours(0,0,0,0),o}function et(e,t){return Le(e,{...t,weekStartsOn:1})}function An(e,t){const n=B(e,t==null?void 0:t.in),r=n.getFullYear(),o=K(n,0);o.setFullYear(r+1,0,4),o.setHours(0,0,0,0);const a=et(o),s=K(n,0);s.setFullYear(r,0,4),s.setHours(0,0,0,0);const i=et(s);return n.getTime()>=a.getTime()?r+1:n.getTime()>=i.getTime()?r:r-1}function nn(e){const t=B(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function $e(e,...t){const n=K.bind(null,t.find(r=>typeof r=="object"));return t.map(n)}function tt(e,t){const n=B(e,t==null?void 0:t.in);return n.setHours(0,0,0,0),n}function Bt(e,t,n){const[r,o]=$e(n==null?void 0:n.in,e,t),a=tt(r),s=tt(o),i=+a-nn(a),c=+s-nn(s);return Math.round((i-c)/ko)}function To(e,t){const n=An(e,t),r=K(e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),et(r)}function _o(e,t,n){return Wn(e,t*7,n)}function Po(e,t,n){return In(e,t*12,n)}function Wo(e,t){let n,r=t==null?void 0:t.in;return e.forEach(o=>{!r&&typeof o=="object"&&(r=K.bind(null,o));const a=B(o,r);(!n||n<a||isNaN(+a))&&(n=a)}),K(r,n||NaN)}function Io(e,t){let n,r=t==null?void 0:t.in;return e.forEach(o=>{!r&&typeof o=="object"&&(r=K.bind(null,o));const a=B(o,r);(!n||n>a||isNaN(+a))&&(n=a)}),K(r,n||NaN)}function Ao(e,t,n){const[r,o]=$e(n==null?void 0:n.in,e,t);return+tt(r)==+tt(o)}function jn(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function jo(e){return!(!jn(e)&&typeof e!="number"||isNaN(+B(e)))}function Rn(e,t,n){const[r,o]=$e(n==null?void 0:n.in,e,t),a=r.getFullYear()-o.getFullYear(),s=r.getMonth()-o.getMonth();return a*12+s}function Ro(e,t){const n=B(e,t==null?void 0:t.in),r=n.getMonth();return n.setFullYear(n.getFullYear(),r+1,0),n.setHours(23,59,59,999),n}function Yn(e,t){const[n,r]=$e(e,t.start,t.end);return{start:n,end:r}}function Yo(e,t){const{start:n,end:r}=Yn(t==null?void 0:t.in,e);let o=+n>+r;const a=o?+n:+r,s=o?r:n;s.setHours(0,0,0,0),s.setDate(1);let i=1;const c=[];for(;+s<=a;)c.push(K(n,s)),s.setMonth(s.getMonth()+i);return o?c.reverse():c}function Fo(e,t){const n=B(e,t==null?void 0:t.in);return n.setDate(1),n.setHours(0,0,0,0),n}function Bo(e,t){const n=B(e,t==null?void 0:t.in),r=n.getFullYear();return n.setFullYear(r+1,0,0),n.setHours(23,59,59,999),n}function Fn(e,t){const n=B(e,t==null?void 0:t.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}function Ho(e,t){const{start:n,end:r}=Yn(t==null?void 0:t.in,e);let o=+n>+r;const a=o?+n:+r,s=o?r:n;s.setHours(0,0,0,0),s.setMonth(0,1);let i=1;const c=[];for(;+s<=a;)c.push(K(n,s)),s.setFullYear(s.getFullYear()+i);return o?c.reverse():c}function Bn(e,t){var i,c,l,d;const n=rt(),r=(t==null?void 0:t.weekStartsOn)??((c=(i=t==null?void 0:t.locale)==null?void 0:i.options)==null?void 0:c.weekStartsOn)??n.weekStartsOn??((d=(l=n.locale)==null?void 0:l.options)==null?void 0:d.weekStartsOn)??0,o=B(e,t==null?void 0:t.in),a=o.getDay(),s=(a<r?-7:0)+6-(a-r);return o.setDate(o.getDate()+s),o.setHours(23,59,59,999),o}function Lo(e,t){return Bn(e,{...t,weekStartsOn:1})}const Vo={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},$o=(e,t,n)=>{let r;const o=Vo[e];return typeof o=="string"?r=o:t===1?r=o.one:r=o.other.replace("{{count}}",t.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function Ct(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const Go={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},zo={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Uo={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},qo={date:Ct({formats:Go,defaultWidth:"full"}),time:Ct({formats:zo,defaultWidth:"full"}),dateTime:Ct({formats:Uo,defaultWidth:"full"})},Ko={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Xo=(e,t,n,r)=>Ko[e];function Xe(e){return(t,n)=>{const r=n!=null&&n.context?String(n.context):"standalone";let o;if(r==="formatting"&&e.formattingValues){const s=e.defaultFormattingWidth||e.defaultWidth,i=n!=null&&n.width?String(n.width):s;o=e.formattingValues[i]||e.formattingValues[s]}else{const s=e.defaultWidth,i=n!=null&&n.width?String(n.width):e.defaultWidth;o=e.values[i]||e.values[s]}const a=e.argumentCallback?e.argumentCallback(t):t;return o[a]}}const Qo={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Zo={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Jo={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},ea={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},ta={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},na={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},ra=(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},oa={ordinalNumber:ra,era:Xe({values:Qo,defaultWidth:"wide"}),quarter:Xe({values:Zo,defaultWidth:"wide",argumentCallback:e=>e-1}),month:Xe({values:Jo,defaultWidth:"wide"}),day:Xe({values:ea,defaultWidth:"wide"}),dayPeriod:Xe({values:ta,defaultWidth:"wide",formattingValues:na,defaultFormattingWidth:"wide"})};function Qe(e){return(t,n={})=>{const r=n.width,o=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],a=t.match(o);if(!a)return null;const s=a[0],i=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(i)?sa(i,h=>h.test(s)):aa(i,h=>h.test(s));let l;l=e.valueCallback?e.valueCallback(c):c,l=n.valueCallback?n.valueCallback(l):l;const d=t.slice(s.length);return{value:l,rest:d}}}function aa(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function sa(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function ia(e){return(t,n={})=>{const r=t.match(e.matchPattern);if(!r)return null;const o=r[0],a=t.match(e.parsePattern);if(!a)return null;let s=e.valueCallback?e.valueCallback(a[0]):a[0];s=n.valueCallback?n.valueCallback(s):s;const i=t.slice(o.length);return{value:s,rest:i}}}const ca=/^(\d+)(th|st|nd|rd)?/i,la=/\d+/i,da={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},ua={any:[/^b/i,/^(a|c)/i]},fa={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},ha={any:[/1/i,/2/i,/3/i,/4/i]},ma={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},pa={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},ga={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},ya={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},va={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},wa={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},xa={ordinalNumber:ia({matchPattern:ca,parsePattern:la,valueCallback:e=>parseInt(e,10)}),era:Qe({matchPatterns:da,defaultMatchWidth:"wide",parsePatterns:ua,defaultParseWidth:"any"}),quarter:Qe({matchPatterns:fa,defaultMatchWidth:"wide",parsePatterns:ha,defaultParseWidth:"any",valueCallback:e=>e+1}),month:Qe({matchPatterns:ma,defaultMatchWidth:"wide",parsePatterns:pa,defaultParseWidth:"any"}),day:Qe({matchPatterns:ga,defaultMatchWidth:"wide",parsePatterns:ya,defaultParseWidth:"any"}),dayPeriod:Qe({matchPatterns:va,defaultMatchWidth:"any",parsePatterns:wa,defaultParseWidth:"any"})},He={code:"en-US",formatDistance:$o,formatLong:qo,formatRelative:Xo,localize:oa,match:xa,options:{weekStartsOn:0,firstWeekContainsDate:1}};function ba(e,t){const n=B(e,t==null?void 0:t.in);return Bt(n,Fn(n))+1}function Ht(e,t){const n=B(e,t==null?void 0:t.in),r=+et(n)-+To(n);return Math.round(r/Pn)+1}function Hn(e,t){var d,h,m,w;const n=B(e,t==null?void 0:t.in),r=n.getFullYear(),o=rt(),a=(t==null?void 0:t.firstWeekContainsDate)??((h=(d=t==null?void 0:t.locale)==null?void 0:d.options)==null?void 0:h.firstWeekContainsDate)??o.firstWeekContainsDate??((w=(m=o.locale)==null?void 0:m.options)==null?void 0:w.firstWeekContainsDate)??1,s=K((t==null?void 0:t.in)||e,0);s.setFullYear(r+1,0,a),s.setHours(0,0,0,0);const i=Le(s,t),c=K((t==null?void 0:t.in)||e,0);c.setFullYear(r,0,a),c.setHours(0,0,0,0);const l=Le(c,t);return+n>=+i?r+1:+n>=+l?r:r-1}function Ma(e,t){var i,c,l,d;const n=rt(),r=(t==null?void 0:t.firstWeekContainsDate)??((c=(i=t==null?void 0:t.locale)==null?void 0:i.options)==null?void 0:c.firstWeekContainsDate)??n.firstWeekContainsDate??((d=(l=n.locale)==null?void 0:l.options)==null?void 0:d.firstWeekContainsDate)??1,o=Hn(e,t),a=K((t==null?void 0:t.in)||e,0);return a.setFullYear(o,0,r),a.setHours(0,0,0,0),Le(a,t)}function Lt(e,t){const n=B(e,t==null?void 0:t.in),r=+Le(n,t)-+Ma(n,t);return Math.round(r/Pn)+1}function R(e,t){const n=e<0?"-":"",r=Math.abs(e).toString().padStart(t,"0");return n+r}const ke={y(e,t){const n=e.getFullYear(),r=n>0?n:1-n;return R(t==="yy"?r%100:r,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):R(n+1,2)},d(e,t){return R(e.getDate(),t.length)},a(e,t){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];case"aaaa":default:return n==="am"?"a.m.":"p.m."}},h(e,t){return R(e.getHours()%12||12,t.length)},H(e,t){return R(e.getHours(),t.length)},m(e,t){return R(e.getMinutes(),t.length)},s(e,t){return R(e.getSeconds(),t.length)},S(e,t){const n=t.length,r=e.getMilliseconds(),o=Math.trunc(r*Math.pow(10,n-3));return R(o,t.length)}},Fe={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},rn={G:function(e,t,n){const r=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});case"GGGG":default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if(t==="yo"){const r=e.getFullYear(),o=r>0?r:1-r;return n.ordinalNumber(o,{unit:"year"})}return ke.y(e,t)},Y:function(e,t,n,r){const o=Hn(e,r),a=o>0?o:1-o;if(t==="YY"){const s=a%100;return R(s,2)}return t==="Yo"?n.ordinalNumber(a,{unit:"year"}):R(a,t.length)},R:function(e,t){const n=An(e);return R(n,t.length)},u:function(e,t){const n=e.getFullYear();return R(n,t.length)},Q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return R(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return R(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){const r=e.getMonth();switch(t){case"M":case"MM":return ke.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){const r=e.getMonth();switch(t){case"L":return String(r+1);case"LL":return R(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){const o=Lt(e,r);return t==="wo"?n.ordinalNumber(o,{unit:"week"}):R(o,t.length)},I:function(e,t,n){const r=Ht(e);return t==="Io"?n.ordinalNumber(r,{unit:"week"}):R(r,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):ke.d(e,t)},D:function(e,t,n){const r=ba(e);return t==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):R(r,t.length)},E:function(e,t,n){const r=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});case"EEEE":default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){const o=e.getDay(),a=(o-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(a);case"ee":return R(a,2);case"eo":return n.ordinalNumber(a,{unit:"day"});case"eee":return n.day(o,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(o,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(o,{width:"short",context:"formatting"});case"eeee":default:return n.day(o,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){const o=e.getDay(),a=(o-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(a);case"cc":return R(a,t.length);case"co":return n.ordinalNumber(a,{unit:"day"});case"ccc":return n.day(o,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(o,{width:"narrow",context:"standalone"});case"cccccc":return n.day(o,{width:"short",context:"standalone"});case"cccc":default:return n.day(o,{width:"wide",context:"standalone"})}},i:function(e,t,n){const r=e.getDay(),o=r===0?7:r;switch(t){case"i":return String(o);case"ii":return R(o,t.length);case"io":return n.ordinalNumber(o,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});case"iiii":default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){const o=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(o,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(o,{width:"wide",context:"formatting"})}},b:function(e,t,n){const r=e.getHours();let o;switch(r===12?o=Fe.noon:r===0?o=Fe.midnight:o=r/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(o,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(o,{width:"wide",context:"formatting"})}},B:function(e,t,n){const r=e.getHours();let o;switch(r>=17?o=Fe.evening:r>=12?o=Fe.afternoon:r>=4?o=Fe.morning:o=Fe.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(o,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(o,{width:"wide",context:"formatting"})}},h:function(e,t,n){if(t==="ho"){let r=e.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return ke.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):ke.H(e,t)},K:function(e,t,n){const r=e.getHours()%12;return t==="Ko"?n.ordinalNumber(r,{unit:"hour"}):R(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t==="ko"?n.ordinalNumber(r,{unit:"hour"}):R(r,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):ke.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):ke.s(e,t)},S:function(e,t){return ke.S(e,t)},X:function(e,t,n){const r=e.getTimezoneOffset();if(r===0)return"Z";switch(t){case"X":return an(r);case"XXXX":case"XX":return Ie(r);case"XXXXX":case"XXX":default:return Ie(r,":")}},x:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"x":return an(r);case"xxxx":case"xx":return Ie(r);case"xxxxx":case"xxx":default:return Ie(r,":")}},O:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+on(r,":");case"OOOO":default:return"GMT"+Ie(r,":")}},z:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+on(r,":");case"zzzz":default:return"GMT"+Ie(r,":")}},t:function(e,t,n){const r=Math.trunc(+e/1e3);return R(r,t.length)},T:function(e,t,n){return R(+e,t.length)}};function on(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),o=Math.trunc(r/60),a=r%60;return a===0?n+String(o):n+String(o)+t+R(a,2)}function an(e,t){return e%60===0?(e>0?"-":"+")+R(Math.abs(e)/60,2):Ie(e,t)}function Ie(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),o=R(Math.trunc(r/60),2),a=R(r%60,2);return n+o+t+a}const sn=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}},Ln=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}},Ca=(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],r=n[1],o=n[2];if(!o)return sn(e,t);let a;switch(r){case"P":a=t.dateTime({width:"short"});break;case"PP":a=t.dateTime({width:"medium"});break;case"PPP":a=t.dateTime({width:"long"});break;case"PPPP":default:a=t.dateTime({width:"full"});break}return a.replace("{{date}}",sn(r,t)).replace("{{time}}",Ln(o,t))},Sa={p:Ln,P:Ca},Na=/^D+$/,Da=/^Y+$/,Ea=["D","DD","YY","YYYY"];function ka(e){return Na.test(e)}function Oa(e){return Da.test(e)}function Ta(e,t,n){const r=_a(e,t,n);if(console.warn(r),Ea.includes(e))throw new RangeError(r)}function _a(e,t,n){const r=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const Pa=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Wa=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Ia=/^'([^]*?)'?$/,Aa=/''/g,ja=/[a-zA-Z]/;function Se(e,t,n){var d,h,m,w,M,v,x,b;const r=rt(),o=(n==null?void 0:n.locale)??r.locale??He,a=(n==null?void 0:n.firstWeekContainsDate)??((h=(d=n==null?void 0:n.locale)==null?void 0:d.options)==null?void 0:h.firstWeekContainsDate)??r.firstWeekContainsDate??((w=(m=r.locale)==null?void 0:m.options)==null?void 0:w.firstWeekContainsDate)??1,s=(n==null?void 0:n.weekStartsOn)??((v=(M=n==null?void 0:n.locale)==null?void 0:M.options)==null?void 0:v.weekStartsOn)??r.weekStartsOn??((b=(x=r.locale)==null?void 0:x.options)==null?void 0:b.weekStartsOn)??0,i=B(e,n==null?void 0:n.in);if(!jo(i))throw new RangeError("Invalid time value");let c=t.match(Wa).map(y=>{const g=y[0];if(g==="p"||g==="P"){const k=Sa[g];return k(y,o.formatLong)}return y}).join("").match(Pa).map(y=>{if(y==="''")return{isToken:!1,value:"'"};const g=y[0];if(g==="'")return{isToken:!1,value:Ra(y)};if(rn[g])return{isToken:!0,value:y};if(g.match(ja))throw new RangeError("Format string contains an unescaped latin alphabet character `"+g+"`");return{isToken:!1,value:y}});o.localize.preprocessor&&(c=o.localize.preprocessor(i,c));const l={firstWeekContainsDate:a,weekStartsOn:s,locale:o};return c.map(y=>{if(!y.isToken)return y.value;const g=y.value;(!(n!=null&&n.useAdditionalWeekYearTokens)&&Oa(g)||!(n!=null&&n.useAdditionalDayOfYearTokens)&&ka(g))&&Ta(g,t,String(e));const k=rn[g[0]];return k(i,g,o.localize,l)}).join("")}function Ra(e){const t=e.match(Ia);return t?t[1].replace(Aa,"'"):e}function Ya(e,t){const n=B(e,t==null?void 0:t.in),r=n.getFullYear(),o=n.getMonth(),a=K(n,0);return a.setFullYear(r,o+1,0),a.setHours(0,0,0,0),a.getDate()}function Fa(e,t){return B(e,t==null?void 0:t.in).getMonth()}function Ba(e,t){return B(e,t==null?void 0:t.in).getFullYear()}function Ha(e,t){return+B(e)>+B(t)}function La(e,t){return+B(e)<+B(t)}function Va(e,t,n){const[r,o]=$e(n==null?void 0:n.in,e,t);return r.getFullYear()===o.getFullYear()&&r.getMonth()===o.getMonth()}function $a(e,t,n){const[r,o]=$e(n==null?void 0:n.in,e,t);return r.getFullYear()===o.getFullYear()}function Ga(e,t,n){const r=B(e,n==null?void 0:n.in),o=r.getFullYear(),a=r.getDate(),s=K(e,0);s.setFullYear(o,t,15),s.setHours(0,0,0,0);const i=Ya(s);return r.setMonth(t,Math.min(a,i)),r}function za(e,t,n){const r=B(e,n==null?void 0:n.in);return isNaN(+r)?K(e,NaN):(r.setFullYear(t),r)}function Ua(e){const t=qa(e),n=f.forwardRef((r,o)=>{const{children:a,...s}=r,i=f.Children.toArray(a),c=i.find(Xa);if(c){const l=c.props.children,d=i.map(h=>h===c?f.Children.count(l)>1?f.Children.only(null):f.isValidElement(l)?l.props.children:null:h);return u.jsx(t,{...s,ref:o,children:f.isValidElement(l)?f.cloneElement(l,void 0,d):null})}return u.jsx(t,{...s,ref:o,children:a})});return n.displayName=`${e}.Slot`,n}function qa(e){const t=f.forwardRef((n,r)=>{const{children:o,...a}=n;if(f.isValidElement(o)){const s=Za(o),i=Qa(a,o.props);return o.type!==f.Fragment&&(i.ref=r?yn(r,s):s),f.cloneElement(o,i)}return f.Children.count(o)>1?f.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var Ka=Symbol("radix.slottable");function Xa(e){return f.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===Ka}function Qa(e,t){const n={...t};for(const r in t){const o=e[r],a=t[r];/^on[A-Z]/.test(r)?o&&a?n[r]=(...i)=>{const c=a(...i);return o(...i),c}:o&&(n[r]=o):r==="style"?n[r]={...o,...a}:r==="className"&&(n[r]=[o,a].filter(Boolean).join(" "))}return{...e,...n}}function Za(e){var r,o;let t=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(o=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:o.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var ht="Popover",[Vn]=Cn(ht,[ft]),ot=ft(),[Ja,Te]=Vn(ht),$n=e=>{const{__scopePopover:t,children:n,open:r,defaultOpen:o,onOpenChange:a,modal:s=!1}=e,i=ot(t),c=f.useRef(null),[l,d]=f.useState(!1),[h,m]=Ot({prop:r,defaultProp:o??!1,onChange:a,caller:ht});return u.jsx(vn,{...i,children:u.jsx(Ja,{scope:t,contentId:ut(),triggerRef:c,open:h,onOpenChange:m,onOpenToggle:f.useCallback(()=>m(w=>!w),[m]),hasCustomAnchor:l,onCustomAnchorAdd:f.useCallback(()=>d(!0),[]),onCustomAnchorRemove:f.useCallback(()=>d(!1),[]),modal:s,children:n})})};$n.displayName=ht;var Gn="PopoverAnchor",es=f.forwardRef((e,t)=>{const{__scopePopover:n,...r}=e,o=Te(Gn,n),a=ot(n),{onCustomAnchorAdd:s,onCustomAnchorRemove:i}=o;return f.useEffect(()=>(s(),()=>i()),[s,i]),u.jsx(Yt,{...a,...r,ref:t})});es.displayName=Gn;var zn="PopoverTrigger",Un=f.forwardRef((e,t)=>{const{__scopePopover:n,...r}=e,o=Te(zn,n),a=ot(n),s=fe(t,o.triggerRef),i=u.jsx(re.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":Zn(o.open),...r,ref:s,onClick:U(e.onClick,o.onOpenToggle)});return o.hasCustomAnchor?i:u.jsx(Yt,{asChild:!0,...a,children:i})});Un.displayName=zn;var Vt="PopoverPortal",[ts,ns]=Vn(Vt,{forceMount:void 0}),qn=e=>{const{__scopePopover:t,forceMount:n,children:r,container:o}=e,a=Te(Vt,t);return u.jsx(ts,{scope:t,forceMount:n,children:u.jsx(wn,{present:n||a.open,children:u.jsx(xn,{asChild:!0,container:o,children:r})})})};qn.displayName=Vt;var Ve="PopoverContent",Kn=f.forwardRef((e,t)=>{const n=ns(Ve,e.__scopePopover),{forceMount:r=n.forceMount,...o}=e,a=Te(Ve,e.__scopePopover);return u.jsx(wn,{present:r||a.open,children:a.modal?u.jsx(os,{...o,ref:t}):u.jsx(as,{...o,ref:t})})});Kn.displayName=Ve;var rs=Ua("PopoverContent.RemoveScroll"),os=f.forwardRef((e,t)=>{const n=Te(Ve,e.__scopePopover),r=f.useRef(null),o=fe(t,r),a=f.useRef(!1);return f.useEffect(()=>{const s=r.current;if(s)return bn(s)},[]),u.jsx(Mn,{as:rs,allowPinchZoom:!0,children:u.jsx(Xn,{...e,ref:o,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:U(e.onCloseAutoFocus,s=>{var i;s.preventDefault(),a.current||(i=n.triggerRef.current)==null||i.focus()}),onPointerDownOutside:U(e.onPointerDownOutside,s=>{const i=s.detail.originalEvent,c=i.button===0&&i.ctrlKey===!0,l=i.button===2||c;a.current=l},{checkForDefaultPrevented:!1}),onFocusOutside:U(e.onFocusOutside,s=>s.preventDefault(),{checkForDefaultPrevented:!1})})})}),as=f.forwardRef((e,t)=>{const n=Te(Ve,e.__scopePopover),r=f.useRef(!1),o=f.useRef(!1);return u.jsx(Xn,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:a=>{var s,i;(s=e.onCloseAutoFocus)==null||s.call(e,a),a.defaultPrevented||(r.current||(i=n.triggerRef.current)==null||i.focus(),a.preventDefault()),r.current=!1,o.current=!1},onInteractOutside:a=>{var c,l;(c=e.onInteractOutside)==null||c.call(e,a),a.defaultPrevented||(r.current=!0,a.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const s=a.target;((l=n.triggerRef.current)==null?void 0:l.contains(s))&&a.preventDefault(),a.detail.originalEvent.type==="focusin"&&o.current&&a.preventDefault()}})}),Xn=f.forwardRef((e,t)=>{const{__scopePopover:n,trapFocus:r,onOpenAutoFocus:o,onCloseAutoFocus:a,disableOutsidePointerEvents:s,onEscapeKeyDown:i,onPointerDownOutside:c,onFocusOutside:l,onInteractOutside:d,...h}=e,m=Te(Ve,n),w=ot(n);return Sn(),u.jsx(Nn,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:o,onUnmountAutoFocus:a,children:u.jsx(Dn,{asChild:!0,disableOutsidePointerEvents:s,onInteractOutside:d,onEscapeKeyDown:i,onPointerDownOutside:c,onFocusOutside:l,onDismiss:()=>m.onOpenChange(!1),children:u.jsx(En,{"data-state":Zn(m.open),role:"dialog",id:m.contentId,...w,...h,ref:t,style:{...h.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),Qn="PopoverClose",ss=f.forwardRef((e,t)=>{const{__scopePopover:n,...r}=e,o=Te(Qn,n);return u.jsx(re.button,{type:"button",...r,ref:t,onClick:U(e.onClick,()=>o.onOpenChange(!1))})});ss.displayName=Qn;var is="PopoverArrow",cs=f.forwardRef((e,t)=>{const{__scopePopover:n,...r}=e,o=ot(n);return u.jsx(kn,{...o,...r,ref:t})});cs.displayName=is;function Zn(e){return e?"open":"closed"}var ls=$n,ds=Un,us=qn,fs=Kn;function hs({...e}){return u.jsx(ls,{"data-slot":"popover",...e})}function ms({...e}){return u.jsx(ds,{"data-slot":"popover-trigger",...e})}function ps({className:e,align:t="center",side:n="bottom",sideOffset:r=4,...o}){return u.jsx(us,{children:u.jsx(fs,{"data-slot":"popover-content",align:t,side:n,sideOffset:r,className:_("bg-popover text-popover-foreground z-50 w-72 rounded-md border p-4 shadow-md outline-hidden",e),...o})})}function cn(e,[t,n]){return Math.min(n,Math.max(t,e))}function gs(e){const t=ys(e),n=f.forwardRef((r,o)=>{const{children:a,...s}=r,i=f.Children.toArray(a),c=i.find(ws);if(c){const l=c.props.children,d=i.map(h=>h===c?f.Children.count(l)>1?f.Children.only(null):f.isValidElement(l)?l.props.children:null:h);return u.jsx(t,{...s,ref:o,children:f.isValidElement(l)?f.cloneElement(l,void 0,d):null})}return u.jsx(t,{...s,ref:o,children:a})});return n.displayName=`${e}.Slot`,n}function ys(e){const t=f.forwardRef((n,r)=>{const{children:o,...a}=n;if(f.isValidElement(o)){const s=bs(o),i=xs(a,o.props);return o.type!==f.Fragment&&(i.ref=r?yn(r,s):s),f.cloneElement(o,i)}return f.Children.count(o)>1?f.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var vs=Symbol("radix.slottable");function ws(e){return f.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===vs}function xs(e,t){const n={...t};for(const r in t){const o=e[r],a=t[r];/^on[A-Z]/.test(r)?o&&a?n[r]=(...i)=>{const c=a(...i);return o(...i),c}:o&&(n[r]=o):r==="style"?n[r]={...o,...a}:r==="className"&&(n[r]=[o,a].filter(Boolean).join(" "))}return{...e,...n}}function bs(e){var r,o;let t=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(o=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:o.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function Ms(e){const t=f.useRef({value:e,previous:e});return f.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var Cs=[" ","Enter","ArrowUp","ArrowDown"],Ss=[" ","Enter"],je="Select",[mt,pt,Ns]=fo(je),[Ge]=Cn(je,[Ns,ft]),gt=ft(),[Ds,_e]=Ge(je),[Es,ks]=Ge(je),Jn=e=>{const{__scopeSelect:t,children:n,open:r,defaultOpen:o,onOpenChange:a,value:s,defaultValue:i,onValueChange:c,dir:l,name:d,autoComplete:h,disabled:m,required:w,form:M}=e,v=gt(t),[x,b]=f.useState(null),[y,g]=f.useState(null),[k,S]=f.useState(!1),p=uo(l),[D,P]=Ot({prop:r,defaultProp:o??!1,onChange:a,caller:je}),[Y,A]=Ot({prop:s,defaultProp:i,onChange:c,caller:je}),G=f.useRef(null),Q=x?M||!!x.closest("form"):!0,[Z,z]=f.useState(new Set),J=Array.from(Z).map(X=>X.props.value).join(";");return u.jsx(vn,{...v,children:u.jsxs(Ds,{required:w,scope:t,trigger:x,onTriggerChange:b,valueNode:y,onValueNodeChange:g,valueNodeHasChildren:k,onValueNodeHasChildrenChange:S,contentId:ut(),value:Y,onValueChange:A,open:D,onOpenChange:P,dir:p,triggerPointerDownPosRef:G,disabled:m,children:[u.jsx(mt.Provider,{scope:t,children:u.jsx(Es,{scope:e.__scopeSelect,onNativeOptionAdd:f.useCallback(X=>{z(oe=>new Set(oe).add(X))},[]),onNativeOptionRemove:f.useCallback(X=>{z(oe=>{const se=new Set(oe);return se.delete(X),se})},[]),children:n})}),Q?u.jsxs(br,{"aria-hidden":!0,required:w,tabIndex:-1,name:d,autoComplete:h,value:Y,onChange:X=>A(X.target.value),disabled:m,form:M,children:[Y===void 0?u.jsx("option",{value:""}):null,Array.from(Z)]},J):null]})})};Jn.displayName=je;var er="SelectTrigger",tr=f.forwardRef((e,t)=>{const{__scopeSelect:n,disabled:r=!1,...o}=e,a=gt(n),s=_e(er,n),i=s.disabled||r,c=fe(t,s.onTriggerChange),l=pt(n),d=f.useRef("touch"),[h,m,w]=Cr(v=>{const x=l().filter(g=>!g.disabled),b=x.find(g=>g.value===s.value),y=Sr(x,v,b);y!==void 0&&s.onValueChange(y.value)}),M=v=>{i||(s.onOpenChange(!0),w()),v&&(s.triggerPointerDownPosRef.current={x:Math.round(v.pageX),y:Math.round(v.pageY)})};return u.jsx(Yt,{asChild:!0,...a,children:u.jsx(re.button,{type:"button",role:"combobox","aria-controls":s.contentId,"aria-expanded":s.open,"aria-required":s.required,"aria-autocomplete":"none",dir:s.dir,"data-state":s.open?"open":"closed",disabled:i,"data-disabled":i?"":void 0,"data-placeholder":Mr(s.value)?"":void 0,...o,ref:c,onClick:U(o.onClick,v=>{v.currentTarget.focus(),d.current!=="mouse"&&M(v)}),onPointerDown:U(o.onPointerDown,v=>{d.current=v.pointerType;const x=v.target;x.hasPointerCapture(v.pointerId)&&x.releasePointerCapture(v.pointerId),v.button===0&&v.ctrlKey===!1&&v.pointerType==="mouse"&&(M(v),v.preventDefault())}),onKeyDown:U(o.onKeyDown,v=>{const x=h.current!=="";!(v.ctrlKey||v.altKey||v.metaKey)&&v.key.length===1&&m(v.key),!(x&&v.key===" ")&&Cs.includes(v.key)&&(M(),v.preventDefault())})})})});tr.displayName=er;var nr="SelectValue",rr=f.forwardRef((e,t)=>{const{__scopeSelect:n,className:r,style:o,children:a,placeholder:s="",...i}=e,c=_e(nr,n),{onValueNodeHasChildrenChange:l}=c,d=a!==void 0,h=fe(t,c.onValueNodeChange);return Oe(()=>{l(d)},[l,d]),u.jsx(re.span,{...i,ref:h,style:{pointerEvents:"none"},children:Mr(c.value)?u.jsx(u.Fragment,{children:s}):a})});rr.displayName=nr;var Os="SelectIcon",or=f.forwardRef((e,t)=>{const{__scopeSelect:n,children:r,...o}=e;return u.jsx(re.span,{"aria-hidden":!0,...o,ref:t,children:r||"▼"})});or.displayName=Os;var Ts="SelectPortal",ar=e=>u.jsx(xn,{asChild:!0,...e});ar.displayName=Ts;var Re="SelectContent",sr=f.forwardRef((e,t)=>{const n=_e(Re,e.__scopeSelect),[r,o]=f.useState();if(Oe(()=>{o(new DocumentFragment)},[]),!n.open){const a=r;return a?On.createPortal(u.jsx(ir,{scope:e.__scopeSelect,children:u.jsx(mt.Slot,{scope:e.__scopeSelect,children:u.jsx("div",{children:e.children})})}),a):null}return u.jsx(cr,{...e,ref:t})});sr.displayName=Re;var me=10,[ir,Pe]=Ge(Re),_s="SelectContentImpl",Ps=gs("SelectContent.RemoveScroll"),cr=f.forwardRef((e,t)=>{const{__scopeSelect:n,position:r="item-aligned",onCloseAutoFocus:o,onEscapeKeyDown:a,onPointerDownOutside:s,side:i,sideOffset:c,align:l,alignOffset:d,arrowPadding:h,collisionBoundary:m,collisionPadding:w,sticky:M,hideWhenDetached:v,avoidCollisions:x,...b}=e,y=_e(Re,n),[g,k]=f.useState(null),[S,p]=f.useState(null),D=fe(t,O=>k(O)),[P,Y]=f.useState(null),[A,G]=f.useState(null),Q=pt(n),[Z,z]=f.useState(!1),J=f.useRef(!1);f.useEffect(()=>{if(g)return bn(g)},[g]),Sn();const X=f.useCallback(O=>{const[V,...ee]=Q().map(L=>L.ref.current),[F]=ee.slice(-1),H=document.activeElement;for(const L of O)if(L===H||(L==null||L.scrollIntoView({block:"nearest"}),L===V&&S&&(S.scrollTop=0),L===F&&S&&(S.scrollTop=S.scrollHeight),L==null||L.focus(),document.activeElement!==H))return},[Q,S]),oe=f.useCallback(()=>X([P,g]),[X,P,g]);f.useEffect(()=>{Z&&oe()},[Z,oe]);const{onOpenChange:se,triggerPointerDownPosRef:q}=y;f.useEffect(()=>{if(g){let O={x:0,y:0};const V=F=>{var H,L;O={x:Math.abs(Math.round(F.pageX)-(((H=q.current)==null?void 0:H.x)??0)),y:Math.abs(Math.round(F.pageY)-(((L=q.current)==null?void 0:L.y)??0))}},ee=F=>{O.x<=10&&O.y<=10?F.preventDefault():g.contains(F.target)||se(!1),document.removeEventListener("pointermove",V),q.current=null};return q.current!==null&&(document.addEventListener("pointermove",V),document.addEventListener("pointerup",ee,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",V),document.removeEventListener("pointerup",ee,{capture:!0})}}},[g,se,q]),f.useEffect(()=>{const O=()=>se(!1);return window.addEventListener("blur",O),window.addEventListener("resize",O),()=>{window.removeEventListener("blur",O),window.removeEventListener("resize",O)}},[se]);const[ne,ae]=Cr(O=>{const V=Q().filter(H=>!H.disabled),ee=V.find(H=>H.ref.current===document.activeElement),F=Sr(V,O,ee);F&&setTimeout(()=>F.ref.current.focus())}),We=f.useCallback((O,V,ee)=>{const F=!J.current&&!ee;(y.value!==void 0&&y.value===V||F)&&(Y(O),F&&(J.current=!0))},[y.value]),we=f.useCallback(()=>g==null?void 0:g.focus(),[g]),de=f.useCallback((O,V,ee)=>{const F=!J.current&&!ee;(y.value!==void 0&&y.value===V||F)&&G(O)},[y.value]),xe=r==="popper"?Pt:lr,Ee=xe===Pt?{side:i,sideOffset:c,align:l,alignOffset:d,arrowPadding:h,collisionBoundary:m,collisionPadding:w,sticky:M,hideWhenDetached:v,avoidCollisions:x}:{};return u.jsx(ir,{scope:n,content:g,viewport:S,onViewportChange:p,itemRefCallback:We,selectedItem:P,onItemLeave:we,itemTextRefCallback:de,focusSelectedItem:oe,selectedItemText:A,position:r,isPositioned:Z,searchRef:ne,children:u.jsx(Mn,{as:Ps,allowPinchZoom:!0,children:u.jsx(Nn,{asChild:!0,trapped:y.open,onMountAutoFocus:O=>{O.preventDefault()},onUnmountAutoFocus:U(o,O=>{var V;(V=y.trigger)==null||V.focus({preventScroll:!0}),O.preventDefault()}),children:u.jsx(Dn,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:a,onPointerDownOutside:s,onFocusOutside:O=>O.preventDefault(),onDismiss:()=>y.onOpenChange(!1),children:u.jsx(xe,{role:"listbox",id:y.contentId,"data-state":y.open?"open":"closed",dir:y.dir,onContextMenu:O=>O.preventDefault(),...b,...Ee,onPlaced:()=>z(!0),ref:D,style:{display:"flex",flexDirection:"column",outline:"none",...b.style},onKeyDown:U(b.onKeyDown,O=>{const V=O.ctrlKey||O.altKey||O.metaKey;if(O.key==="Tab"&&O.preventDefault(),!V&&O.key.length===1&&ae(O.key),["ArrowUp","ArrowDown","Home","End"].includes(O.key)){let F=Q().filter(H=>!H.disabled).map(H=>H.ref.current);if(["ArrowUp","End"].includes(O.key)&&(F=F.slice().reverse()),["ArrowUp","ArrowDown"].includes(O.key)){const H=O.target,L=F.indexOf(H);F=F.slice(L+1)}setTimeout(()=>X(F)),O.preventDefault()}})})})})})})});cr.displayName=_s;var Ws="SelectItemAlignedPosition",lr=f.forwardRef((e,t)=>{const{__scopeSelect:n,onPlaced:r,...o}=e,a=_e(Re,n),s=Pe(Re,n),[i,c]=f.useState(null),[l,d]=f.useState(null),h=fe(t,D=>d(D)),m=pt(n),w=f.useRef(!1),M=f.useRef(!0),{viewport:v,selectedItem:x,selectedItemText:b,focusSelectedItem:y}=s,g=f.useCallback(()=>{if(a.trigger&&a.valueNode&&i&&l&&v&&x&&b){const D=a.trigger.getBoundingClientRect(),P=l.getBoundingClientRect(),Y=a.valueNode.getBoundingClientRect(),A=b.getBoundingClientRect();if(a.dir!=="rtl"){const H=A.left-P.left,L=Y.left-H,be=D.left-L,Me=D.width+be,Ye=Math.max(Me,P.width),ze=window.innerWidth-me,Ue=cn(L,[me,Math.max(me,ze-Ye)]);i.style.minWidth=Me+"px",i.style.left=Ue+"px"}else{const H=P.right-A.right,L=window.innerWidth-Y.right-H,be=window.innerWidth-D.right-L,Me=D.width+be,Ye=Math.max(Me,P.width),ze=window.innerWidth-me,Ue=cn(L,[me,Math.max(me,ze-Ye)]);i.style.minWidth=Me+"px",i.style.right=Ue+"px"}const G=m(),Q=window.innerHeight-me*2,Z=v.scrollHeight,z=window.getComputedStyle(l),J=parseInt(z.borderTopWidth,10),X=parseInt(z.paddingTop,10),oe=parseInt(z.borderBottomWidth,10),se=parseInt(z.paddingBottom,10),q=J+X+Z+se+oe,ne=Math.min(x.offsetHeight*5,q),ae=window.getComputedStyle(v),We=parseInt(ae.paddingTop,10),we=parseInt(ae.paddingBottom,10),de=D.top+D.height/2-me,xe=Q-de,Ee=x.offsetHeight/2,O=x.offsetTop+Ee,V=J+X+O,ee=q-V;if(V<=de){const H=G.length>0&&x===G[G.length-1].ref.current;i.style.bottom="0px";const L=l.clientHeight-v.offsetTop-v.offsetHeight,be=Math.max(xe,Ee+(H?we:0)+L+oe),Me=V+be;i.style.height=Me+"px"}else{const H=G.length>0&&x===G[0].ref.current;i.style.top="0px";const be=Math.max(de,J+v.offsetTop+(H?We:0)+Ee)+ee;i.style.height=be+"px",v.scrollTop=V-de+v.offsetTop}i.style.margin=`${me}px 0`,i.style.minHeight=ne+"px",i.style.maxHeight=Q+"px",r==null||r(),requestAnimationFrame(()=>w.current=!0)}},[m,a.trigger,a.valueNode,i,l,v,x,b,a.dir,r]);Oe(()=>g(),[g]);const[k,S]=f.useState();Oe(()=>{l&&S(window.getComputedStyle(l).zIndex)},[l]);const p=f.useCallback(D=>{D&&M.current===!0&&(g(),y==null||y(),M.current=!1)},[g,y]);return u.jsx(As,{scope:n,contentWrapper:i,shouldExpandOnScrollRef:w,onScrollButtonChange:p,children:u.jsx("div",{ref:c,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:k},children:u.jsx(re.div,{...o,ref:h,style:{boxSizing:"border-box",maxHeight:"100%",...o.style}})})})});lr.displayName=Ws;var Is="SelectPopperPosition",Pt=f.forwardRef((e,t)=>{const{__scopeSelect:n,align:r="start",collisionPadding:o=me,...a}=e,s=gt(n);return u.jsx(En,{...s,...a,ref:t,align:r,collisionPadding:o,style:{boxSizing:"border-box",...a.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});Pt.displayName=Is;var[As,$t]=Ge(Re,{}),Wt="SelectViewport",dr=f.forwardRef((e,t)=>{const{__scopeSelect:n,nonce:r,...o}=e,a=Pe(Wt,n),s=$t(Wt,n),i=fe(t,a.onViewportChange),c=f.useRef(0);return u.jsxs(u.Fragment,{children:[u.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:r}),u.jsx(mt.Slot,{scope:n,children:u.jsx(re.div,{"data-radix-select-viewport":"",role:"presentation",...o,ref:i,style:{position:"relative",flex:1,overflow:"hidden auto",...o.style},onScroll:U(o.onScroll,l=>{const d=l.currentTarget,{contentWrapper:h,shouldExpandOnScrollRef:m}=s;if(m!=null&&m.current&&h){const w=Math.abs(c.current-d.scrollTop);if(w>0){const M=window.innerHeight-me*2,v=parseFloat(h.style.minHeight),x=parseFloat(h.style.height),b=Math.max(v,x);if(b<M){const y=b+w,g=Math.min(M,y),k=y-g;h.style.height=g+"px",h.style.bottom==="0px"&&(d.scrollTop=k>0?k:0,h.style.justifyContent="flex-end")}}}c.current=d.scrollTop})})})]})});dr.displayName=Wt;var ur="SelectGroup",[js,Rs]=Ge(ur),Ys=f.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e,o=ut();return u.jsx(js,{scope:n,id:o,children:u.jsx(re.div,{role:"group","aria-labelledby":o,...r,ref:t})})});Ys.displayName=ur;var fr="SelectLabel",Fs=f.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e,o=Rs(fr,n);return u.jsx(re.div,{id:o.id,...r,ref:t})});Fs.displayName=fr;var dt="SelectItem",[Bs,hr]=Ge(dt),mr=f.forwardRef((e,t)=>{const{__scopeSelect:n,value:r,disabled:o=!1,textValue:a,...s}=e,i=_e(dt,n),c=Pe(dt,n),l=i.value===r,[d,h]=f.useState(a??""),[m,w]=f.useState(!1),M=fe(t,y=>{var g;return(g=c.itemRefCallback)==null?void 0:g.call(c,y,r,o)}),v=ut(),x=f.useRef("touch"),b=()=>{o||(i.onValueChange(r),i.onOpenChange(!1))};if(r==="")throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return u.jsx(Bs,{scope:n,value:r,disabled:o,textId:v,isSelected:l,onItemTextChange:f.useCallback(y=>{h(g=>g||((y==null?void 0:y.textContent)??"").trim())},[]),children:u.jsx(mt.ItemSlot,{scope:n,value:r,disabled:o,textValue:d,children:u.jsx(re.div,{role:"option","aria-labelledby":v,"data-highlighted":m?"":void 0,"aria-selected":l&&m,"data-state":l?"checked":"unchecked","aria-disabled":o||void 0,"data-disabled":o?"":void 0,tabIndex:o?void 0:-1,...s,ref:M,onFocus:U(s.onFocus,()=>w(!0)),onBlur:U(s.onBlur,()=>w(!1)),onClick:U(s.onClick,()=>{x.current!=="mouse"&&b()}),onPointerUp:U(s.onPointerUp,()=>{x.current==="mouse"&&b()}),onPointerDown:U(s.onPointerDown,y=>{x.current=y.pointerType}),onPointerMove:U(s.onPointerMove,y=>{var g;x.current=y.pointerType,o?(g=c.onItemLeave)==null||g.call(c):x.current==="mouse"&&y.currentTarget.focus({preventScroll:!0})}),onPointerLeave:U(s.onPointerLeave,y=>{var g;y.currentTarget===document.activeElement&&((g=c.onItemLeave)==null||g.call(c))}),onKeyDown:U(s.onKeyDown,y=>{var k;((k=c.searchRef)==null?void 0:k.current)!==""&&y.key===" "||(Ss.includes(y.key)&&b(),y.key===" "&&y.preventDefault())})})})})});mr.displayName=dt;var Ze="SelectItemText",pr=f.forwardRef((e,t)=>{const{__scopeSelect:n,className:r,style:o,...a}=e,s=_e(Ze,n),i=Pe(Ze,n),c=hr(Ze,n),l=ks(Ze,n),[d,h]=f.useState(null),m=fe(t,b=>h(b),c.onItemTextChange,b=>{var y;return(y=i.itemTextRefCallback)==null?void 0:y.call(i,b,c.value,c.disabled)}),w=d==null?void 0:d.textContent,M=f.useMemo(()=>u.jsx("option",{value:c.value,disabled:c.disabled,children:w},c.value),[c.disabled,c.value,w]),{onNativeOptionAdd:v,onNativeOptionRemove:x}=l;return Oe(()=>(v(M),()=>x(M)),[v,x,M]),u.jsxs(u.Fragment,{children:[u.jsx(re.span,{id:c.textId,...a,ref:m}),c.isSelected&&s.valueNode&&!s.valueNodeHasChildren?On.createPortal(a.children,s.valueNode):null]})});pr.displayName=Ze;var gr="SelectItemIndicator",yr=f.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e;return hr(gr,n).isSelected?u.jsx(re.span,{"aria-hidden":!0,...r,ref:t}):null});yr.displayName=gr;var It="SelectScrollUpButton",vr=f.forwardRef((e,t)=>{const n=Pe(It,e.__scopeSelect),r=$t(It,e.__scopeSelect),[o,a]=f.useState(!1),s=fe(t,r.onScrollButtonChange);return Oe(()=>{if(n.viewport&&n.isPositioned){let i=function(){const l=c.scrollTop>0;a(l)};const c=n.viewport;return i(),c.addEventListener("scroll",i),()=>c.removeEventListener("scroll",i)}},[n.viewport,n.isPositioned]),o?u.jsx(xr,{...e,ref:s,onAutoScroll:()=>{const{viewport:i,selectedItem:c}=n;i&&c&&(i.scrollTop=i.scrollTop-c.offsetHeight)}}):null});vr.displayName=It;var At="SelectScrollDownButton",wr=f.forwardRef((e,t)=>{const n=Pe(At,e.__scopeSelect),r=$t(At,e.__scopeSelect),[o,a]=f.useState(!1),s=fe(t,r.onScrollButtonChange);return Oe(()=>{if(n.viewport&&n.isPositioned){let i=function(){const l=c.scrollHeight-c.clientHeight,d=Math.ceil(c.scrollTop)<l;a(d)};const c=n.viewport;return i(),c.addEventListener("scroll",i),()=>c.removeEventListener("scroll",i)}},[n.viewport,n.isPositioned]),o?u.jsx(xr,{...e,ref:s,onAutoScroll:()=>{const{viewport:i,selectedItem:c}=n;i&&c&&(i.scrollTop=i.scrollTop+c.offsetHeight)}}):null});wr.displayName=At;var xr=f.forwardRef((e,t)=>{const{__scopeSelect:n,onAutoScroll:r,...o}=e,a=Pe("SelectScrollButton",n),s=f.useRef(null),i=pt(n),c=f.useCallback(()=>{s.current!==null&&(window.clearInterval(s.current),s.current=null)},[]);return f.useEffect(()=>()=>c(),[c]),Oe(()=>{var d;const l=i().find(h=>h.ref.current===document.activeElement);(d=l==null?void 0:l.ref.current)==null||d.scrollIntoView({block:"nearest"})},[i]),u.jsx(re.div,{"aria-hidden":!0,...o,ref:t,style:{flexShrink:0,...o.style},onPointerDown:U(o.onPointerDown,()=>{s.current===null&&(s.current=window.setInterval(r,50))}),onPointerMove:U(o.onPointerMove,()=>{var l;(l=a.onItemLeave)==null||l.call(a),s.current===null&&(s.current=window.setInterval(r,50))}),onPointerLeave:U(o.onPointerLeave,()=>{c()})})}),Hs="SelectSeparator",Ls=f.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e;return u.jsx(re.div,{"aria-hidden":!0,...r,ref:t})});Ls.displayName=Hs;var jt="SelectArrow",Vs=f.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e,o=gt(n),a=_e(jt,n),s=Pe(jt,n);return a.open&&s.position==="popper"?u.jsx(kn,{...o,...r,ref:t}):null});Vs.displayName=jt;var $s="SelectBubbleInput",br=f.forwardRef(({__scopeSelect:e,value:t,...n},r)=>{const o=f.useRef(null),a=fe(r,o),s=Ms(t);return f.useEffect(()=>{const i=o.current;if(!i)return;const c=window.HTMLSelectElement.prototype,d=Object.getOwnPropertyDescriptor(c,"value").set;if(s!==t&&d){const h=new Event("change",{bubbles:!0});d.call(i,t),i.dispatchEvent(h)}},[s,t]),u.jsx(re.select,{...n,style:{...ho,...n.style},ref:a,defaultValue:t})});br.displayName=$s;function Mr(e){return e===""||e===void 0}function Cr(e){const t=mo(e),n=f.useRef(""),r=f.useRef(0),o=f.useCallback(s=>{const i=n.current+s;t(i),(function c(l){n.current=l,window.clearTimeout(r.current),l!==""&&(r.current=window.setTimeout(()=>c(""),1e3))})(i)},[t]),a=f.useCallback(()=>{n.current="",window.clearTimeout(r.current)},[]);return f.useEffect(()=>()=>window.clearTimeout(r.current),[]),[n,o,a]}function Sr(e,t,n){const o=t.length>1&&Array.from(t).every(l=>l===t[0])?t[0]:t,a=n?e.indexOf(n):-1;let s=Gs(e,Math.max(a,0));o.length===1&&(s=s.filter(l=>l!==n));const c=s.find(l=>l.textValue.toLowerCase().startsWith(o.toLowerCase()));return c!==n?c:void 0}function Gs(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var zs=Jn,Us=tr,qs=rr,Ks=or,Xs=ar,Qs=sr,Zs=dr,Js=mr,ei=pr,ti=yr,ni=vr,ri=wr;function oi({...e}){return u.jsx(zs,{"data-slot":"select",...e})}function ai({...e}){return u.jsx(qs,{"data-slot":"select-value",...e})}function si({className:e,size:t="default",children:n,...r}){return u.jsxs(Us,{"data-slot":"select-trigger","data-size":t,className:_("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",e),...r,children:[n,u.jsx(Ks,{asChild:!0,children:u.jsx(Ft,{className:"size-4 opacity-50"})})]})}function ii({className:e,children:t,position:n="popper",...r}){return u.jsx(Xs,{children:u.jsxs(Qs,{"data-slot":"select-content",className:_("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border shadow-md",n==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:n,...r,children:[u.jsx(ci,{}),u.jsx(Zs,{className:_("p-1",n==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:t}),u.jsx(li,{})]})})}function it({className:e,children:t,...n}){return u.jsxs(Js,{"data-slot":"select-item",className:_("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",e),...n,children:[u.jsx("span",{"data-slot":"select-item-indicator",className:"absolute right-2 flex size-3.5 items-center justify-center",children:u.jsx(ti,{children:u.jsx(Tt,{className:"size-4"})})}),u.jsx(ei,{children:t})]})}function ci({className:e,...t}){return u.jsx(ni,{"data-slot":"select-scroll-up-button",className:_("flex cursor-default items-center justify-center py-1",e),...t,children:u.jsx(So,{className:"size-4"})})}function li({className:e,...t}){return u.jsx(ri,{"data-slot":"select-scroll-down-button",className:_("flex cursor-default items-center justify-center py-1",e),...t,children:u.jsx(Ft,{className:"size-4"})})}function di(e,t,n="long"){return new Intl.DateTimeFormat("en-US",{hour:"numeric",timeZone:e,timeZoneName:n}).format(t).split(/\s/g).slice(2).join(" ")}const St={},Je={};function Ae(e,t){try{const r=(St[e]||(St[e]=new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"longOffset"}).format))(t).split("GMT")[1];return r in Je?Je[r]:ln(r,r.split(":"))}catch{if(e in Je)return Je[e];const n=e==null?void 0:e.match(ui);return n?ln(e,n.slice(1)):NaN}}const ui=/([+-]\d\d):?(\d\d)?/;function ln(e,t){const n=+(t[0]||0),r=+(t[1]||0),o=+(t[2]||0)/60;return Je[e]=n*60+r>0?n*60+r+o:n*60-r-o}class ye extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(Ae(this.timeZone,this))?this.setTime(NaN):t.length?typeof t[0]=="number"&&(t.length===1||t.length===2&&typeof t[1]!="number")?this.setTime(t[0]):typeof t[0]=="string"?this.setTime(+new Date(t[0])):t[0]instanceof Date?this.setTime(+t[0]):(this.setTime(+new Date(...t)),Nr(this),Rt(this)):this.setTime(Date.now())}static tz(t,...n){return n.length?new ye(...n,t):new ye(Date.now(),t)}withTimeZone(t){return new ye(+this,t)}getTimezoneOffset(){const t=-Ae(this.timeZone,this);return t>0?Math.floor(t):Math.ceil(t)}setTime(t){return Date.prototype.setTime.apply(this,arguments),Rt(this),+this}[Symbol.for("constructDateFrom")](t){return new ye(+new Date(t),this.timeZone)}}const dn=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!dn.test(e))return;const t=e.replace(dn,"$1UTC");ye.prototype[t]&&(e.startsWith("get")?ye.prototype[e]=function(){return this.internal[t]()}:(ye.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),fi(this),+this},ye.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),Rt(this),+this}))});function Rt(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-Ae(e.timeZone,e)*60))}function fi(e){Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),Nr(e)}function Nr(e){const t=Ae(e.timeZone,e),n=t>0?Math.floor(t):Math.ceil(t),r=new Date(+e);r.setUTCHours(r.getUTCHours()-1);const o=-new Date(+e).getTimezoneOffset(),a=-new Date(+r).getTimezoneOffset(),s=o-a,i=Date.prototype.getHours.apply(e)!==e.internal.getUTCHours();s&&i&&e.internal.setUTCMinutes(e.internal.getUTCMinutes()+s);const c=o-n;c&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+c);const l=new Date(+e);l.setUTCSeconds(0);const d=o>0?l.getSeconds():(l.getSeconds()-60)%60,h=Math.round(-(Ae(e.timeZone,e)*60))%60;(h||d)&&(e.internal.setUTCSeconds(e.internal.getUTCSeconds()+h),Date.prototype.setUTCSeconds.call(e,Date.prototype.getUTCSeconds.call(e)+h+d));const m=Ae(e.timeZone,e),w=m>0?Math.floor(m):Math.ceil(m),v=-new Date(+e).getTimezoneOffset()-w,x=w!==n,b=v-c;if(x&&b){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+b);const y=Ae(e.timeZone,e),g=y>0?Math.floor(y):Math.ceil(y),k=w-g;k&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+k),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+k))}}class te extends ye{static tz(t,...n){return n.length?new te(...n,t):new te(Date.now(),t)}toISOString(){const[t,n,r]=this.tzComponents(),o=`${t}${n}:${r}`;return this.internal.toISOString().slice(0,-1)+o}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[t,n,r,o]=this.internal.toUTCString().split(" ");return`${t==null?void 0:t.slice(0,-1)} ${r} ${n} ${o}`}toTimeString(){const t=this.internal.toUTCString().split(" ")[4],[n,r,o]=this.tzComponents();return`${t} GMT${n}${r}${o} (${di(this.timeZone,this)})`}toLocaleString(t,n){return Date.prototype.toLocaleString.call(this,t,{...n,timeZone:(n==null?void 0:n.timeZone)||this.timeZone})}toLocaleDateString(t,n){return Date.prototype.toLocaleDateString.call(this,t,{...n,timeZone:(n==null?void 0:n.timeZone)||this.timeZone})}toLocaleTimeString(t,n){return Date.prototype.toLocaleTimeString.call(this,t,{...n,timeZone:(n==null?void 0:n.timeZone)||this.timeZone})}tzComponents(){const t=this.getTimezoneOffset(),n=t>0?"-":"+",r=String(Math.floor(Math.abs(t)/60)).padStart(2,"0"),o=String(Math.abs(t)%60).padStart(2,"0");return[n,r,o]}withTimeZone(t){return new te(+this,t)}[Symbol.for("constructDateFrom")](t){return new te(+new Date(t),this.timeZone)}}const un=5,hi=4;function mi(e,t){const n=t.startOfMonth(e),r=n.getDay()>0?n.getDay():7,o=t.addDays(e,-r+1),a=t.addDays(o,un*7-1);return t.getMonth(e)===t.getMonth(a)?un:hi}function Dr(e,t){const n=t.startOfMonth(e),r=n.getDay();return r===1?n:r===0?t.addDays(n,-6):t.addDays(n,-1*(r-1))}function pi(e,t){const n=Dr(e,t),r=mi(e,t);return t.addDays(n,r*7-1)}const Er={...He,labels:{labelDayButton:(e,t,n,r)=>{let o;r&&typeof r.format=="function"?o=r.format.bind(r):o=(s,i)=>Se(s,i,{locale:He,...n});let a=o(e,"PPPP");return t.today&&(a=`Today, ${a}`),t.selected&&(a=`${a}, selected`),a},labelMonthDropdown:"Choose the Month",labelNext:"Go to the Next Month",labelPrevious:"Go to the Previous Month",labelWeekNumber:e=>`Week ${e}`,labelYearDropdown:"Choose the Year",labelGrid:(e,t,n)=>{let r;return n&&typeof n.format=="function"?r=n.format.bind(n):r=(o,a)=>Se(o,a,{locale:He,...t}),r(e,"LLLL yyyy")},labelGridcell:(e,t,n,r)=>{let o;r&&typeof r.format=="function"?o=r.format.bind(r):o=(s,i)=>Se(s,i,{locale:He,...n});let a=o(e,"PPPP");return t!=null&&t.today&&(a=`Today, ${a}`),a},labelNav:"Navigation bar",labelWeekNumberHeader:"Week Number",labelWeekday:(e,t,n)=>{let r;return n&&typeof n.format=="function"?r=n.format.bind(n):r=(o,a)=>Se(o,a,{locale:He,...t}),r(e,"cccc")}}};class le{constructor(t,n){this.Date=Date,this.today=()=>{var r;return(r=this.overrides)!=null&&r.today?this.overrides.today():this.options.timeZone?te.tz(this.options.timeZone):new this.Date},this.newDate=(r,o,a)=>{var s;return(s=this.overrides)!=null&&s.newDate?this.overrides.newDate(r,o,a):this.options.timeZone?new te(r,o,a,this.options.timeZone):new Date(r,o,a)},this.addDays=(r,o)=>{var a;return(a=this.overrides)!=null&&a.addDays?this.overrides.addDays(r,o):Wn(r,o)},this.addMonths=(r,o)=>{var a;return(a=this.overrides)!=null&&a.addMonths?this.overrides.addMonths(r,o):In(r,o)},this.addWeeks=(r,o)=>{var a;return(a=this.overrides)!=null&&a.addWeeks?this.overrides.addWeeks(r,o):_o(r,o)},this.addYears=(r,o)=>{var a;return(a=this.overrides)!=null&&a.addYears?this.overrides.addYears(r,o):Po(r,o)},this.differenceInCalendarDays=(r,o)=>{var a;return(a=this.overrides)!=null&&a.differenceInCalendarDays?this.overrides.differenceInCalendarDays(r,o):Bt(r,o)},this.differenceInCalendarMonths=(r,o)=>{var a;return(a=this.overrides)!=null&&a.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(r,o):Rn(r,o)},this.eachMonthOfInterval=r=>{var o;return(o=this.overrides)!=null&&o.eachMonthOfInterval?this.overrides.eachMonthOfInterval(r):Yo(r)},this.eachYearOfInterval=r=>{var i;const o=(i=this.overrides)!=null&&i.eachYearOfInterval?this.overrides.eachYearOfInterval(r):Ho(r),a=new Set(o.map(c=>this.getYear(c)));if(a.size===o.length)return o;const s=[];return a.forEach(c=>{s.push(new Date(c,0,1))}),s},this.endOfBroadcastWeek=r=>{var o;return(o=this.overrides)!=null&&o.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(r):pi(r,this)},this.endOfISOWeek=r=>{var o;return(o=this.overrides)!=null&&o.endOfISOWeek?this.overrides.endOfISOWeek(r):Lo(r)},this.endOfMonth=r=>{var o;return(o=this.overrides)!=null&&o.endOfMonth?this.overrides.endOfMonth(r):Ro(r)},this.endOfWeek=(r,o)=>{var a;return(a=this.overrides)!=null&&a.endOfWeek?this.overrides.endOfWeek(r,o):Bn(r,this.options)},this.endOfYear=r=>{var o;return(o=this.overrides)!=null&&o.endOfYear?this.overrides.endOfYear(r):Bo(r)},this.format=(r,o,a)=>{var i;const s=(i=this.overrides)!=null&&i.format?this.overrides.format(r,o,this.options):Se(r,o,this.options);return this.options.numerals&&this.options.numerals!=="latn"?this.replaceDigits(s):s},this.getISOWeek=r=>{var o;return(o=this.overrides)!=null&&o.getISOWeek?this.overrides.getISOWeek(r):Ht(r)},this.getMonth=(r,o)=>{var a;return(a=this.overrides)!=null&&a.getMonth?this.overrides.getMonth(r,this.options):Fa(r,this.options)},this.getYear=(r,o)=>{var a;return(a=this.overrides)!=null&&a.getYear?this.overrides.getYear(r,this.options):Ba(r,this.options)},this.getWeek=(r,o)=>{var a;return(a=this.overrides)!=null&&a.getWeek?this.overrides.getWeek(r,this.options):Lt(r,this.options)},this.isAfter=(r,o)=>{var a;return(a=this.overrides)!=null&&a.isAfter?this.overrides.isAfter(r,o):Ha(r,o)},this.isBefore=(r,o)=>{var a;return(a=this.overrides)!=null&&a.isBefore?this.overrides.isBefore(r,o):La(r,o)},this.isDate=r=>{var o;return(o=this.overrides)!=null&&o.isDate?this.overrides.isDate(r):jn(r)},this.isSameDay=(r,o)=>{var a;return(a=this.overrides)!=null&&a.isSameDay?this.overrides.isSameDay(r,o):Ao(r,o)},this.isSameMonth=(r,o)=>{var a;return(a=this.overrides)!=null&&a.isSameMonth?this.overrides.isSameMonth(r,o):Va(r,o)},this.isSameYear=(r,o)=>{var a;return(a=this.overrides)!=null&&a.isSameYear?this.overrides.isSameYear(r,o):$a(r,o)},this.max=r=>{var o;return(o=this.overrides)!=null&&o.max?this.overrides.max(r):Wo(r)},this.min=r=>{var o;return(o=this.overrides)!=null&&o.min?this.overrides.min(r):Io(r)},this.setMonth=(r,o)=>{var a;return(a=this.overrides)!=null&&a.setMonth?this.overrides.setMonth(r,o):Ga(r,o)},this.setYear=(r,o)=>{var a;return(a=this.overrides)!=null&&a.setYear?this.overrides.setYear(r,o):za(r,o)},this.startOfBroadcastWeek=(r,o)=>{var a;return(a=this.overrides)!=null&&a.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(r,this):Dr(r,this)},this.startOfDay=r=>{var o;return(o=this.overrides)!=null&&o.startOfDay?this.overrides.startOfDay(r):tt(r)},this.startOfISOWeek=r=>{var o;return(o=this.overrides)!=null&&o.startOfISOWeek?this.overrides.startOfISOWeek(r):et(r)},this.startOfMonth=r=>{var o;return(o=this.overrides)!=null&&o.startOfMonth?this.overrides.startOfMonth(r):Fo(r)},this.startOfWeek=(r,o)=>{var a;return(a=this.overrides)!=null&&a.startOfWeek?this.overrides.startOfWeek(r,this.options):Le(r,this.options)},this.startOfYear=r=>{var o;return(o=this.overrides)!=null&&o.startOfYear?this.overrides.startOfYear(r):Fn(r)},this.options={locale:Er,...t},this.overrides=n}getDigitMap(){const{numerals:t="latn"}=this.options,n=new Intl.NumberFormat("en-US",{numberingSystem:t}),r={};for(let o=0;o<10;o++)r[o.toString()]=n.format(o);return r}replaceDigits(t){const n=this.getDigitMap();return t.replace(/\d/g,r=>n[r]||r)}formatNumber(t){return this.replaceDigits(t.toString())}getMonthYearOrder(){var n;const t=(n=this.options.locale)==null?void 0:n.code;return t&&le.yearFirstLocales.has(t)?"year-first":"month-first"}formatMonthYear(t){const{locale:n,timeZone:r,numerals:o}=this.options,a=n==null?void 0:n.code;if(a&&le.yearFirstLocales.has(a))try{return new Intl.DateTimeFormat(a,{month:"long",year:"numeric",timeZone:r,numberingSystem:o}).format(t)}catch{}const s=this.getMonthYearOrder()==="year-first"?"y LLLL":"LLLL y";return this.format(t,s)}}le.yearFirstLocales=new Set(["eu","hu","ja","ja-Hira","ja-JP","ko","ko-KR","lt","lt-LT","lv","lv-LV","mn","mn-MN","zh","zh-CN","zh-HK","zh-TW"]);const ve=new le;class kr{constructor(t,n,r=ve){this.date=t,this.displayMonth=n,this.outside=!!(n&&!r.isSameMonth(t,n)),this.dateLib=r,this.isoDate=r.format(t,"yyyy-MM-dd"),this.displayMonthId=r.format(n,"yyyy-MM"),this.dateMonthId=r.format(t,"yyyy-MM")}isEqualTo(t){return this.dateLib.isSameDay(t.date,this.date)&&this.dateLib.isSameMonth(t.displayMonth,this.displayMonth)}}class gi{constructor(t,n){this.date=t,this.weeks=n}}class yi{constructor(t,n){this.days=n,this.weekNumber=t}}function vi(e){return C.createElement("button",{...e})}function wi(e){return C.createElement("span",{...e})}function xi(e){const{size:t=24,orientation:n="left",className:r}=e;return C.createElement("svg",{className:r,width:t,height:t,viewBox:"0 0 24 24"},n==="up"&&C.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),n==="down"&&C.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),n==="left"&&C.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),n==="right"&&C.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function bi(e){const{day:t,modifiers:n,...r}=e;return C.createElement("td",{...r})}function Mi(e){const{day:t,modifiers:n,...r}=e,o=C.useRef(null);return C.useEffect(()=>{var a;n.focused&&((a=o.current)==null||a.focus())},[n.focused]),C.createElement("button",{ref:o,...r})}var N;(function(e){e.Root="root",e.Chevron="chevron",e.Day="day",e.DayButton="day_button",e.CaptionLabel="caption_label",e.Dropdowns="dropdowns",e.Dropdown="dropdown",e.DropdownRoot="dropdown_root",e.Footer="footer",e.MonthGrid="month_grid",e.MonthCaption="month_caption",e.MonthsDropdown="months_dropdown",e.Month="month",e.Months="months",e.Nav="nav",e.NextMonthButton="button_next",e.PreviousMonthButton="button_previous",e.Week="week",e.Weeks="weeks",e.Weekday="weekday",e.Weekdays="weekdays",e.WeekNumber="week_number",e.WeekNumberHeader="week_number_header",e.YearsDropdown="years_dropdown"})(N||(N={}));var $;(function(e){e.disabled="disabled",e.hidden="hidden",e.outside="outside",e.focused="focused",e.today="today"})($||($={}));var pe;(function(e){e.range_end="range_end",e.range_middle="range_middle",e.range_start="range_start",e.selected="selected"})(pe||(pe={}));var ce;(function(e){e.weeks_before_enter="weeks_before_enter",e.weeks_before_exit="weeks_before_exit",e.weeks_after_enter="weeks_after_enter",e.weeks_after_exit="weeks_after_exit",e.caption_after_enter="caption_after_enter",e.caption_after_exit="caption_after_exit",e.caption_before_enter="caption_before_enter",e.caption_before_exit="caption_before_exit"})(ce||(ce={}));function Ci(e){const{options:t,className:n,components:r,classNames:o,...a}=e,s=[o[N.Dropdown],n].join(" "),i=t==null?void 0:t.find(({value:c})=>c===a.value);return C.createElement("span",{"data-disabled":a.disabled,className:o[N.DropdownRoot]},C.createElement(r.Select,{className:s,...a},t==null?void 0:t.map(({value:c,label:l,disabled:d})=>C.createElement(r.Option,{key:c,value:c,disabled:d},l))),C.createElement("span",{className:o[N.CaptionLabel],"aria-hidden":!0},i==null?void 0:i.label,C.createElement(r.Chevron,{orientation:"down",size:18,className:o[N.Chevron]})))}function Si(e){return C.createElement("div",{...e})}function Ni(e){return C.createElement("div",{...e})}function Di(e){const{calendarMonth:t,displayIndex:n,...r}=e;return C.createElement("div",{...r},e.children)}function Ei(e){const{calendarMonth:t,displayIndex:n,...r}=e;return C.createElement("div",{...r})}function ki(e){return C.createElement("table",{...e})}function Oi(e){return C.createElement("div",{...e})}const Or=f.createContext(void 0);function at(){const e=f.useContext(Or);if(e===void 0)throw new Error("useDayPicker() must be used within a custom component.");return e}function Ti(e){const{components:t}=at();return C.createElement(t.Dropdown,{...e})}function _i(e){const{onPreviousClick:t,onNextClick:n,previousMonth:r,nextMonth:o,...a}=e,{components:s,classNames:i,labels:{labelPrevious:c,labelNext:l}}=at(),d=f.useCallback(m=>{o&&(n==null||n(m))},[o,n]),h=f.useCallback(m=>{r&&(t==null||t(m))},[r,t]);return C.createElement("nav",{...a},C.createElement(s.PreviousMonthButton,{type:"button",className:i[N.PreviousMonthButton],tabIndex:r?void 0:-1,"aria-disabled":r?void 0:!0,"aria-label":c(r),onClick:h},C.createElement(s.Chevron,{disabled:r?void 0:!0,className:i[N.Chevron],orientation:"left"})),C.createElement(s.NextMonthButton,{type:"button",className:i[N.NextMonthButton],tabIndex:o?void 0:-1,"aria-disabled":o?void 0:!0,"aria-label":l(o),onClick:d},C.createElement(s.Chevron,{disabled:o?void 0:!0,orientation:"right",className:i[N.Chevron]})))}function Pi(e){const{components:t}=at();return C.createElement(t.Button,{...e})}function Wi(e){return C.createElement("option",{...e})}function Ii(e){const{components:t}=at();return C.createElement(t.Button,{...e})}function Ai(e){const{rootRef:t,...n}=e;return C.createElement("div",{...n,ref:t})}function ji(e){return C.createElement("select",{...e})}function Ri(e){const{week:t,...n}=e;return C.createElement("tr",{...n})}function Yi(e){return C.createElement("th",{...e})}function Fi(e){return C.createElement("thead",{"aria-hidden":!0},C.createElement("tr",{...e}))}function Bi(e){const{week:t,...n}=e;return C.createElement("th",{...n})}function Hi(e){return C.createElement("th",{...e})}function Li(e){return C.createElement("tbody",{...e})}function Vi(e){const{components:t}=at();return C.createElement(t.Dropdown,{...e})}const $i=Object.freeze(Object.defineProperty({__proto__:null,Button:vi,CaptionLabel:wi,Chevron:xi,Day:bi,DayButton:Mi,Dropdown:Ci,DropdownNav:Si,Footer:Ni,Month:Di,MonthCaption:Ei,MonthGrid:ki,Months:Oi,MonthsDropdown:Ti,Nav:_i,NextMonthButton:Pi,Option:Wi,PreviousMonthButton:Ii,Root:Ai,Select:ji,Week:Ri,WeekNumber:Bi,WeekNumberHeader:Hi,Weekday:Yi,Weekdays:Fi,Weeks:Li,YearsDropdown:Vi},Symbol.toStringTag,{value:"Module"}));function Ne(e,t,n=!1,r=ve){let{from:o,to:a}=e;const{differenceInCalendarDays:s,isSameDay:i}=r;return o&&a?(s(a,o)<0&&([o,a]=[a,o]),s(t,o)>=(n?1:0)&&s(a,t)>=(n?1:0)):!n&&a?i(a,t):!n&&o?i(o,t):!1}function Gt(e){return!!(e&&typeof e=="object"&&"before"in e&&"after"in e)}function yt(e){return!!(e&&typeof e=="object"&&"from"in e)}function zt(e){return!!(e&&typeof e=="object"&&"after"in e)}function Ut(e){return!!(e&&typeof e=="object"&&"before"in e)}function Tr(e){return!!(e&&typeof e=="object"&&"dayOfWeek"in e)}function _r(e,t){return Array.isArray(e)&&e.every(t.isDate)}function De(e,t,n=ve){const r=Array.isArray(t)?t:[t],{isSameDay:o,differenceInCalendarDays:a,isAfter:s}=n;return r.some(i=>{if(typeof i=="boolean")return i;if(n.isDate(i))return o(e,i);if(_r(i,n))return i.some(c=>o(e,c));if(yt(i))return Ne(i,e,!1,n);if(Tr(i))return Array.isArray(i.dayOfWeek)?i.dayOfWeek.includes(e.getDay()):i.dayOfWeek===e.getDay();if(Gt(i)){const c=a(i.before,e),l=a(i.after,e),d=c>0,h=l<0;return s(i.before,i.after)?h&&d:d||h}return zt(i)?a(e,i.after)>0:Ut(i)?a(i.before,e)>0:typeof i=="function"?i(e):!1})}function Gi(e,t,n,r,o){const{disabled:a,hidden:s,modifiers:i,showOutsideDays:c,broadcastCalendar:l,today:d=o.today()}=t,{isSameDay:h,isSameMonth:m,startOfMonth:w,isBefore:M,endOfMonth:v,isAfter:x}=o,b=n&&w(n),y=r&&v(r),g={[$.focused]:[],[$.outside]:[],[$.disabled]:[],[$.hidden]:[],[$.today]:[]},k={};for(const S of e){const{date:p,displayMonth:D}=S,P=!!(D&&!m(p,D)),Y=!!(b&&M(p,b)),A=!!(y&&x(p,y)),G=!!(a&&De(p,a,o)),Q=!!(s&&De(p,s,o))||Y||A||!l&&!c&&P||l&&c===!1&&P,Z=h(p,d);P&&g.outside.push(S),G&&g.disabled.push(S),Q&&g.hidden.push(S),Z&&g.today.push(S),i&&Object.keys(i).forEach(z=>{const J=i==null?void 0:i[z];J&&De(p,J,o)&&(k[z]?k[z].push(S):k[z]=[S])})}return S=>{const p={[$.focused]:!1,[$.disabled]:!1,[$.hidden]:!1,[$.outside]:!1,[$.today]:!1},D={};for(const P in g){const Y=g[P];p[P]=Y.some(A=>A===S)}for(const P in k)D[P]=k[P].some(Y=>Y===S);return{...p,...D}}}function zi(e,t,n={}){return Object.entries(e).filter(([,o])=>o===!0).reduce((o,[a])=>(n[a]?o.push(n[a]):t[$[a]]?o.push(t[$[a]]):t[pe[a]]&&o.push(t[pe[a]]),o),[t[N.Day]])}function Ui(e){return{...$i,...e}}function qi(e){const t={"data-mode":e.mode??void 0,"data-required":"required"in e?e.required:void 0,"data-multiple-months":e.numberOfMonths&&e.numberOfMonths>1||void 0,"data-week-numbers":e.showWeekNumber||void 0,"data-broadcast-calendar":e.broadcastCalendar||void 0,"data-nav-layout":e.navLayout||void 0};return Object.entries(e).forEach(([n,r])=>{n.startsWith("data-")&&(t[n]=r)}),t}function qt(){const e={};for(const t in N)e[N[t]]=`rdp-${N[t]}`;for(const t in $)e[$[t]]=`rdp-${$[t]}`;for(const t in pe)e[pe[t]]=`rdp-${pe[t]}`;for(const t in ce)e[ce[t]]=`rdp-${ce[t]}`;return e}function Pr(e,t,n){return(n??new le(t)).formatMonthYear(e)}const Ki=Pr;function Xi(e,t,n){return(n??new le(t)).format(e,"d")}function Qi(e,t=ve){return t.format(e,"LLLL")}function Zi(e,t,n){return(n??new le(t)).format(e,"cccccc")}function Ji(e,t=ve){return e<10?t.formatNumber(`0${e.toLocaleString()}`):t.formatNumber(`${e.toLocaleString()}`)}function ec(){return""}function Wr(e,t=ve){return t.format(e,"yyyy")}const tc=Wr,nc=Object.freeze(Object.defineProperty({__proto__:null,formatCaption:Pr,formatDay:Xi,formatMonthCaption:Ki,formatMonthDropdown:Qi,formatWeekNumber:Ji,formatWeekNumberHeader:ec,formatWeekdayName:Zi,formatYearCaption:tc,formatYearDropdown:Wr},Symbol.toStringTag,{value:"Module"}));function rc(e){return e!=null&&e.formatMonthCaption&&!e.formatCaption&&(e.formatCaption=e.formatMonthCaption),e!=null&&e.formatYearCaption&&!e.formatYearDropdown&&(e.formatYearDropdown=e.formatYearCaption),{...nc,...e}}function Kt(e,t,n,r){let o=(r??new le(n)).format(e,"PPPP");return t.today&&(o=`Today, ${o}`),t.selected&&(o=`${o}, selected`),o}const oc=Kt;function Xt(e,t,n){return(n??new le(t)).formatMonthYear(e)}const ac=Xt;function Ir(e,t,n,r){let o=(r??new le(n)).format(e,"PPPP");return t!=null&&t.today&&(o=`Today, ${o}`),o}function Ar(e){return"Choose the Month"}function jr(){return""}const sc="Go to the Next Month";function Rr(e,t){return sc}function Yr(e){return"Go to the Previous Month"}function Fr(e,t,n){return(n??new le(t)).format(e,"cccc")}function Br(e,t){return`Week ${e}`}function Hr(e){return"Week Number"}function Lr(e){return"Choose the Year"}const ic=Object.freeze(Object.defineProperty({__proto__:null,labelCaption:ac,labelDay:oc,labelDayButton:Kt,labelGrid:Xt,labelGridcell:Ir,labelMonthDropdown:Ar,labelNav:jr,labelNext:Rr,labelPrevious:Yr,labelWeekNumber:Br,labelWeekNumberHeader:Hr,labelWeekday:Fr,labelYearDropdown:Lr},Symbol.toStringTag,{value:"Module"})),he=(e,t,n)=>t||(n?typeof n=="function"?n:(...r)=>n:e);function cc(e,t){var r;const n=((r=t.locale)==null?void 0:r.labels)??{};return{...ic,...e??{},labelDayButton:he(Kt,e==null?void 0:e.labelDayButton,n.labelDayButton),labelMonthDropdown:he(Ar,e==null?void 0:e.labelMonthDropdown,n.labelMonthDropdown),labelNext:he(Rr,e==null?void 0:e.labelNext,n.labelNext),labelPrevious:he(Yr,e==null?void 0:e.labelPrevious,n.labelPrevious),labelWeekNumber:he(Br,e==null?void 0:e.labelWeekNumber,n.labelWeekNumber),labelYearDropdown:he(Lr,e==null?void 0:e.labelYearDropdown,n.labelYearDropdown),labelGrid:he(Xt,e==null?void 0:e.labelGrid,n.labelGrid),labelGridcell:he(Ir,e==null?void 0:e.labelGridcell,n.labelGridcell),labelNav:he(jr,e==null?void 0:e.labelNav,n.labelNav),labelWeekNumberHeader:he(Hr,e==null?void 0:e.labelWeekNumberHeader,n.labelWeekNumberHeader),labelWeekday:he(Fr,e==null?void 0:e.labelWeekday,n.labelWeekday)}}function lc(e,t,n,r,o){const{startOfMonth:a,startOfYear:s,endOfYear:i,eachMonthOfInterval:c,getMonth:l}=o;return c({start:s(e),end:i(e)}).map(m=>{const w=r.formatMonthDropdown(m,o),M=l(m),v=t&&m<a(t)||n&&m>a(n)||!1;return{value:M,label:w,disabled:v}})}function dc(e,t={},n={}){let r={...t==null?void 0:t[N.Day]};return Object.entries(e).filter(([,o])=>o===!0).forEach(([o])=>{r={...r,...n==null?void 0:n[o]}}),r}function uc(e,t,n,r){const o=r??e.today(),a=n?e.startOfBroadcastWeek(o,e):t?e.startOfISOWeek(o):e.startOfWeek(o),s=[];for(let i=0;i<7;i++){const c=e.addDays(a,i);s.push(c)}return s}function fc(e,t,n,r,o=!1){if(!e||!t)return;const{startOfYear:a,endOfYear:s,eachYearOfInterval:i,getYear:c}=r,l=a(e),d=s(t),h=i({start:l,end:d});return o&&h.reverse(),h.map(m=>{const w=n.formatYearDropdown(m,r);return{value:c(m),label:w,disabled:!1}})}function hc(e,t={}){var i;const{weekStartsOn:n,locale:r}=t,o=n??((i=r==null?void 0:r.options)==null?void 0:i.weekStartsOn)??0,a=c=>{const l=typeof c=="number"||typeof c=="string"?new Date(c):c;return new te(l.getFullYear(),l.getMonth(),l.getDate(),12,0,0,e)},s=c=>{const l=a(c);return new Date(l.getFullYear(),l.getMonth(),l.getDate(),0,0,0,0)};return{today:()=>a(te.tz(e)),newDate:(c,l,d)=>new te(c,l,d,12,0,0,e),startOfDay:c=>a(c),startOfWeek:(c,l)=>{const d=a(c),h=(l==null?void 0:l.weekStartsOn)??o,m=(d.getDay()-h+7)%7;return d.setDate(d.getDate()-m),d},startOfISOWeek:c=>{const l=a(c),d=(l.getDay()-1+7)%7;return l.setDate(l.getDate()-d),l},startOfMonth:c=>{const l=a(c);return l.setDate(1),l},startOfYear:c=>{const l=a(c);return l.setMonth(0,1),l},endOfWeek:(c,l)=>{const d=a(c),w=((((l==null?void 0:l.weekStartsOn)??o)+6)%7-d.getDay()+7)%7;return d.setDate(d.getDate()+w),d},endOfISOWeek:c=>{const l=a(c),d=(7-l.getDay())%7;return l.setDate(l.getDate()+d),l},endOfMonth:c=>{const l=a(c);return l.setMonth(l.getMonth()+1,0),l},endOfYear:c=>{const l=a(c);return l.setMonth(11,31),l},eachMonthOfInterval:c=>{const l=a(c.start),d=a(c.end),h=[],m=new te(l.getFullYear(),l.getMonth(),1,12,0,0,e),w=d.getFullYear()*12+d.getMonth();for(;m.getFullYear()*12+m.getMonth()<=w;)h.push(new te(m,e)),m.setMonth(m.getMonth()+1,1);return h},addDays:(c,l)=>{const d=a(c);return d.setDate(d.getDate()+l),d},addWeeks:(c,l)=>{const d=a(c);return d.setDate(d.getDate()+l*7),d},addMonths:(c,l)=>{const d=a(c);return d.setMonth(d.getMonth()+l),d},addYears:(c,l)=>{const d=a(c);return d.setFullYear(d.getFullYear()+l),d},eachYearOfInterval:c=>{const l=a(c.start),d=a(c.end),h=[],m=new te(l.getFullYear(),0,1,12,0,0,e);for(;m.getFullYear()<=d.getFullYear();)h.push(new te(m,e)),m.setFullYear(m.getFullYear()+1,0,1);return h},getWeek:(c,l)=>{var h;const d=s(c);return Lt(d,{weekStartsOn:(l==null?void 0:l.weekStartsOn)??o,firstWeekContainsDate:(l==null?void 0:l.firstWeekContainsDate)??((h=r==null?void 0:r.options)==null?void 0:h.firstWeekContainsDate)??1})},getISOWeek:c=>{const l=s(c);return Ht(l)},differenceInCalendarDays:(c,l)=>{const d=s(c),h=s(l);return Bt(d,h)},differenceInCalendarMonths:(c,l)=>{const d=s(c),h=s(l);return Rn(d,h)}}}const st=e=>e instanceof HTMLElement?e:null,Nt=e=>[...e.querySelectorAll("[data-animated-month]")??[]],mc=e=>st(e.querySelector("[data-animated-month]")),Dt=e=>st(e.querySelector("[data-animated-caption]")),Et=e=>st(e.querySelector("[data-animated-weeks]")),pc=e=>st(e.querySelector("[data-animated-nav]")),gc=e=>st(e.querySelector("[data-animated-weekdays]"));function yc(e,t,{classNames:n,months:r,focused:o,dateLib:a}){const s=f.useRef(null),i=f.useRef(r),c=f.useRef(!1);f.useLayoutEffect(()=>{const l=i.current;if(i.current=r,!t||!e.current||!(e.current instanceof HTMLElement)||r.length===0||l.length===0||r.length!==l.length)return;const d=a.isSameMonth(r[0].date,l[0].date),h=a.isAfter(r[0].date,l[0].date),m=h?n[ce.caption_after_enter]:n[ce.caption_before_enter],w=h?n[ce.weeks_after_enter]:n[ce.weeks_before_enter],M=s.current,v=e.current.cloneNode(!0);if(v instanceof HTMLElement?(Nt(v).forEach(g=>{if(!(g instanceof HTMLElement))return;const k=mc(g);k&&g.contains(k)&&g.removeChild(k);const S=Dt(g);S&&S.classList.remove(m);const p=Et(g);p&&p.classList.remove(w)}),s.current=v):s.current=null,c.current||d||o)return;const x=M instanceof HTMLElement?Nt(M):[],b=Nt(e.current);if(b!=null&&b.every(y=>y instanceof HTMLElement)&&x&&x.every(y=>y instanceof HTMLElement)){c.current=!0,e.current.style.isolation="isolate";const y=pc(e.current);y&&(y.style.zIndex="1"),b.forEach((g,k)=>{const S=x[k];if(!S)return;g.style.position="relative",g.style.overflow="hidden";const p=Dt(g);p&&p.classList.add(m);const D=Et(g);D&&D.classList.add(w);const P=()=>{c.current=!1,e.current&&(e.current.style.isolation=""),y&&(y.style.zIndex=""),p&&p.classList.remove(m),D&&D.classList.remove(w),g.style.position="",g.style.overflow="",g.contains(S)&&g.removeChild(S)};S.style.pointerEvents="none",S.style.position="absolute",S.style.overflow="hidden",S.setAttribute("aria-hidden","true");const Y=gc(S);Y&&(Y.style.opacity="0");const A=Dt(S);A&&(A.classList.add(h?n[ce.caption_before_exit]:n[ce.caption_after_exit]),A.addEventListener("animationend",P));const G=Et(S);G&&G.classList.add(h?n[ce.weeks_before_exit]:n[ce.weeks_after_exit]),g.insertBefore(S,g.firstChild)})}})}function vc(e,t,n,r){const o=e[0],a=e[e.length-1],{ISOWeek:s,fixedWeeks:i,broadcastCalendar:c}=n??{},{addDays:l,differenceInCalendarDays:d,differenceInCalendarMonths:h,endOfBroadcastWeek:m,endOfISOWeek:w,endOfMonth:M,endOfWeek:v,isAfter:x,startOfBroadcastWeek:b,startOfISOWeek:y,startOfWeek:g}=r,k=c?b(o,r):s?y(o):g(o),S=c?m(a):s?w(M(a)):v(M(a)),p=t&&(c?m(t):s?w(t):v(t)),D=p&&x(S,p)?p:S,P=d(D,k),Y=h(a,o)+1,A=[];for(let Z=0;Z<=P;Z++){const z=l(k,Z);A.push(z)}const Q=(c?35:42)*Y;if(i&&A.length<Q){const Z=Q-A.length;for(let z=0;z<Z;z++){const J=l(A[A.length-1],1);A.push(J)}}return A}function wc(e){const t=[];return e.reduce((n,r)=>{const o=r.weeks.reduce((a,s)=>a.concat(s.days.slice()),t.slice());return n.concat(o.slice())},t.slice())}function xc(e,t,n,r){const{numberOfMonths:o=1}=n,a=[];for(let s=0;s<o;s++){const i=r.addMonths(e,s);if(t&&i>t)break;a.push(i)}return a}function fn(e,t,n,r){const{month:o,defaultMonth:a,today:s=r.today(),numberOfMonths:i=1}=e;let c=o||a||s;const{differenceInCalendarMonths:l,addMonths:d,startOfMonth:h}=r;if(n&&l(n,c)<i-1){const m=-1*(i-1);c=d(n,m)}return t&&l(c,t)<0&&(c=t),h(c)}function bc(e,t,n,r){const{addDays:o,endOfBroadcastWeek:a,endOfISOWeek:s,endOfMonth:i,endOfWeek:c,getISOWeek:l,getWeek:d,startOfBroadcastWeek:h,startOfISOWeek:m,startOfWeek:w}=r,M=e.reduce((v,x)=>{const b=n.broadcastCalendar?h(x,r):n.ISOWeek?m(x):w(x),y=n.broadcastCalendar?a(x):n.ISOWeek?s(i(x)):c(i(x)),g=t.filter(D=>D>=b&&D<=y),k=n.broadcastCalendar?35:42;if(n.fixedWeeks&&g.length<k){const D=t.filter(P=>{const Y=k-g.length;return P>y&&P<=o(y,Y)});g.push(...D)}const S=g.reduce((D,P)=>{const Y=n.ISOWeek?l(P):d(P),A=D.find(Q=>Q.weekNumber===Y),G=new kr(P,x,r);return A?A.days.push(G):D.push(new yi(Y,[G])),D},[]),p=new gi(x,S);return v.push(p),v},[]);return n.reverseMonths?M.reverse():M}function Mc(e,t){let{startMonth:n,endMonth:r}=e;const{startOfYear:o,startOfDay:a,startOfMonth:s,endOfMonth:i,addYears:c,endOfYear:l,newDate:d,today:h}=t,{fromYear:m,toYear:w,fromMonth:M,toMonth:v}=e;!n&&M&&(n=M),!n&&m&&(n=t.newDate(m,0,1)),!r&&v&&(r=v),!r&&w&&(r=d(w,11,31));const x=e.captionLayout==="dropdown"||e.captionLayout==="dropdown-years";return n?n=s(n):m?n=d(m,0,1):!n&&x&&(n=o(c(e.today??h(),-100))),r?r=i(r):w?r=d(w,11,31):!r&&x&&(r=l(e.today??h())),[n&&a(n),r&&a(r)]}function Cc(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:o,numberOfMonths:a=1}=n,{startOfMonth:s,addMonths:i,differenceInCalendarMonths:c}=r,l=o?a:1,d=s(e);if(!t)return i(d,l);if(!(c(t,e)<a))return i(d,l)}function Sc(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:o,numberOfMonths:a}=n,{startOfMonth:s,addMonths:i,differenceInCalendarMonths:c}=r,l=o?a??1:1,d=s(e);if(!t)return i(d,-l);if(!(c(d,t)<=0))return i(d,-l)}function Nc(e){const t=[];return e.reduce((n,r)=>n.concat(r.weeks.slice()),t.slice())}function vt(e,t){const[n,r]=f.useState(e);return[t===void 0?n:t,r]}function Dc(e,t){var k;const[n,r]=Mc(e,t),{startOfMonth:o,endOfMonth:a}=t,s=fn(e,n,r,t),[i,c]=vt(s,e.month?s:void 0);f.useEffect(()=>{const S=fn(e,n,r,t);c(S)},[e.timeZone]);const{months:l,weeks:d,days:h,previousMonth:m,nextMonth:w}=f.useMemo(()=>{const S=xc(i,r,{numberOfMonths:e.numberOfMonths},t),p=vc(S,e.endMonth?a(e.endMonth):void 0,{ISOWeek:e.ISOWeek,fixedWeeks:e.fixedWeeks,broadcastCalendar:e.broadcastCalendar},t),D=bc(S,p,{broadcastCalendar:e.broadcastCalendar,fixedWeeks:e.fixedWeeks,ISOWeek:e.ISOWeek,reverseMonths:e.reverseMonths},t),P=Nc(D),Y=wc(D),A=Sc(i,n,e,t),G=Cc(i,r,e,t);return{months:D,weeks:P,days:Y,previousMonth:A,nextMonth:G}},[t,i.getTime(),r==null?void 0:r.getTime(),n==null?void 0:n.getTime(),e.disableNavigation,e.broadcastCalendar,(k=e.endMonth)==null?void 0:k.getTime(),e.fixedWeeks,e.ISOWeek,e.numberOfMonths,e.pagedNavigation,e.reverseMonths]),{disableNavigation:M,onMonthChange:v}=e,x=S=>d.some(p=>p.days.some(D=>D.isEqualTo(S))),b=S=>{if(M)return;let p=o(S);n&&p<o(n)&&(p=o(n)),r&&p>o(r)&&(p=o(r)),c(p),v==null||v(p)};return{months:l,weeks:d,days:h,navStart:n,navEnd:r,previousMonth:m,nextMonth:w,goToMonth:b,goToDay:S=>{x(S)||b(S.date)}}}var ge;(function(e){e[e.Today=0]="Today",e[e.Selected=1]="Selected",e[e.LastFocused=2]="LastFocused",e[e.FocusedModifier=3]="FocusedModifier"})(ge||(ge={}));function hn(e){return!e[$.disabled]&&!e[$.hidden]&&!e[$.outside]}function Ec(e,t,n,r){let o,a=-1;for(const s of e){const i=t(s);hn(i)&&(i[$.focused]&&a<ge.FocusedModifier?(o=s,a=ge.FocusedModifier):r!=null&&r.isEqualTo(s)&&a<ge.LastFocused?(o=s,a=ge.LastFocused):n(s.date)&&a<ge.Selected?(o=s,a=ge.Selected):i[$.today]&&a<ge.Today&&(o=s,a=ge.Today))}return o||(o=e.find(s=>hn(t(s)))),o}function kc(e,t,n,r,o,a,s){const{ISOWeek:i,broadcastCalendar:c}=a,{addDays:l,addMonths:d,addWeeks:h,addYears:m,endOfBroadcastWeek:w,endOfISOWeek:M,endOfWeek:v,max:x,min:b,startOfBroadcastWeek:y,startOfISOWeek:g,startOfWeek:k}=s;let p={day:l,week:h,month:d,year:m,startOfWeek:D=>c?y(D,s):i?g(D):k(D),endOfWeek:D=>c?w(D):i?M(D):v(D)}[e](n,t==="after"?1:-1);return t==="before"&&r?p=x([r,p]):t==="after"&&o&&(p=b([o,p])),p}function Vr(e,t,n,r,o,a,s,i=0){if(i>365)return;const c=kc(e,t,n.date,r,o,a,s),l=!!(a.disabled&&De(c,a.disabled,s)),d=!!(a.hidden&&De(c,a.hidden,s)),h=c,m=new kr(c,h,s);return!l&&!d?m:Vr(e,t,m,r,o,a,s,i+1)}function Oc(e,t,n,r,o){const{autoFocus:a}=e,[s,i]=f.useState(),c=Ec(t.days,n,r||(()=>!1),s),[l,d]=f.useState(a?c:void 0);return{isFocusTarget:v=>!!(c!=null&&c.isEqualTo(v)),setFocused:d,focused:l,blur:()=>{i(l),d(void 0)},moveFocus:(v,x)=>{if(!l)return;const b=Vr(v,x,l,t.navStart,t.navEnd,e,o);b&&(e.disableNavigation&&!t.days.some(g=>g.isEqualTo(b))||(t.goToDay(b),d(b)))}}}function Tc(e,t){const{selected:n,required:r,onSelect:o}=e,[a,s]=vt(n,o?n:void 0),i=o?n:a,{isSameDay:c}=t,l=w=>(i==null?void 0:i.some(M=>c(M,w)))??!1,{min:d,max:h}=e;return{selected:i,select:(w,M,v)=>{let x=[...i??[]];if(l(w)){if((i==null?void 0:i.length)===d||r&&(i==null?void 0:i.length)===1)return;x=i==null?void 0:i.filter(b=>!c(b,w))}else(i==null?void 0:i.length)===h?x=[w]:x=[...x,w];return o||s(x),o==null||o(x,w,M,v),x},isSelected:l}}function _c(e,t,n=0,r=0,o=!1,a=ve){const{from:s,to:i}=t||{},{isSameDay:c,isAfter:l,isBefore:d}=a;let h;if(!s&&!i)h={from:e,to:n>0?void 0:e};else if(s&&!i)c(s,e)?n===0?h={from:s,to:e}:o?h={from:s,to:void 0}:h=void 0:d(e,s)?h={from:e,to:s}:h={from:s,to:e};else if(s&&i)if(c(s,e)&&c(i,e))o?h={from:s,to:i}:h=void 0;else if(c(s,e))h={from:s,to:n>0?void 0:e};else if(c(i,e))h={from:e,to:n>0?void 0:e};else if(d(e,s))h={from:e,to:i};else if(l(e,s))h={from:s,to:e};else if(l(e,i))h={from:s,to:e};else throw new Error("Invalid range");if(h!=null&&h.from&&(h!=null&&h.to)){const m=a.differenceInCalendarDays(h.to,h.from);r>0&&m>r?h={from:e,to:void 0}:n>1&&m<n&&(h={from:e,to:void 0})}return h}function Pc(e,t,n=ve){const r=Array.isArray(t)?t:[t];let o=e.from;const a=n.differenceInCalendarDays(e.to,e.from),s=Math.min(a,6);for(let i=0;i<=s;i++){if(r.includes(o.getDay()))return!0;o=n.addDays(o,1)}return!1}function mn(e,t,n=ve){return Ne(e,t.from,!1,n)||Ne(e,t.to,!1,n)||Ne(t,e.from,!1,n)||Ne(t,e.to,!1,n)}function Wc(e,t,n=ve){const r=Array.isArray(t)?t:[t];if(r.filter(i=>typeof i!="function").some(i=>typeof i=="boolean"?i:n.isDate(i)?Ne(e,i,!1,n):_r(i,n)?i.some(c=>Ne(e,c,!1,n)):yt(i)?i.from&&i.to?mn(e,{from:i.from,to:i.to},n):!1:Tr(i)?Pc(e,i.dayOfWeek,n):Gt(i)?n.isAfter(i.before,i.after)?mn(e,{from:n.addDays(i.after,1),to:n.addDays(i.before,-1)},n):De(e.from,i,n)||De(e.to,i,n):zt(i)||Ut(i)?De(e.from,i,n)||De(e.to,i,n):!1))return!0;const s=r.filter(i=>typeof i=="function");if(s.length){let i=e.from;const c=n.differenceInCalendarDays(e.to,e.from);for(let l=0;l<=c;l++){if(s.some(d=>d(i)))return!0;i=n.addDays(i,1)}}return!1}function Ic(e,t){const{disabled:n,excludeDisabled:r,selected:o,required:a,onSelect:s}=e,[i,c]=vt(o,s?o:void 0),l=s?o:i;return{selected:l,select:(m,w,M)=>{const{min:v,max:x}=e,b=m?_c(m,l,v,x,a,t):void 0;return r&&n&&(b!=null&&b.from)&&b.to&&Wc({from:b.from,to:b.to},n,t)&&(b.from=m,b.to=void 0),s||c(b),s==null||s(b,m,w,M),b},isSelected:m=>l&&Ne(l,m,!1,t)}}function Ac(e,t){const{selected:n,required:r,onSelect:o}=e,[a,s]=vt(n,o?n:void 0),i=o?n:a,{isSameDay:c}=t;return{selected:i,select:(h,m,w)=>{let M=h;return!r&&i&&i&&c(h,i)&&(M=void 0),o||s(M),o==null||o(M,h,m,w),M},isSelected:h=>i?c(i,h):!1}}function jc(e,t){const n=Ac(e,t),r=Tc(e,t),o=Ic(e,t);switch(e.mode){case"single":return n;case"multiple":return r;case"range":return o;default:return}}function ue(e,t){return e instanceof te&&e.timeZone===t?e:new te(e,t)}function Be(e,t,n){return ue(e,t)}function pn(e,t,n){return typeof e=="boolean"||typeof e=="function"?e:e instanceof Date?Be(e,t):Array.isArray(e)?e.map(r=>r instanceof Date?Be(r,t):r):yt(e)?{...e,from:e.from?ue(e.from,t):e.from,to:e.to?ue(e.to,t):e.to}:Gt(e)?{before:Be(e.before,t),after:Be(e.after,t)}:zt(e)?{after:Be(e.after,t)}:Ut(e)?{before:Be(e.before,t)}:e}function kt(e,t,n){return e&&(Array.isArray(e)?e.map(r=>pn(r,t)):pn(e,t))}function Rc(e){var Jt;let t=e;const n=t.timeZone;if(n&&(t={...e,timeZone:n},t.today&&(t.today=ue(t.today,n)),t.month&&(t.month=ue(t.month,n)),t.defaultMonth&&(t.defaultMonth=ue(t.defaultMonth,n)),t.startMonth&&(t.startMonth=ue(t.startMonth,n)),t.endMonth&&(t.endMonth=ue(t.endMonth,n)),t.mode==="single"&&t.selected?t.selected=ue(t.selected,n):t.mode==="multiple"&&t.selected?t.selected=(Jt=t.selected)==null?void 0:Jt.map(T=>ue(T,n)):t.mode==="range"&&t.selected&&(t.selected={from:t.selected.from?ue(t.selected.from,n):t.selected.from,to:t.selected.to?ue(t.selected.to,n):t.selected.to}),t.disabled!==void 0&&(t.disabled=kt(t.disabled,n)),t.hidden!==void 0&&(t.hidden=kt(t.hidden,n)),t.modifiers)){const T={};Object.keys(t.modifiers).forEach(j=>{var E;T[j]=kt((E=t.modifiers)==null?void 0:E[j],n)}),t.modifiers=T}const{components:r,formatters:o,labels:a,dateLib:s,locale:i,classNames:c}=f.useMemo(()=>{const T={...Er,...t.locale},j=t.broadcastCalendar?1:t.weekStartsOn,E=t.noonSafe&&t.timeZone?hc(t.timeZone,{weekStartsOn:j,locale:T}):void 0,I=t.dateLib&&E?{...E,...t.dateLib}:t.dateLib??E,ie=new le({locale:T,weekStartsOn:j,firstWeekContainsDate:t.firstWeekContainsDate,useAdditionalWeekYearTokens:t.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:t.useAdditionalDayOfYearTokens,timeZone:t.timeZone,numerals:t.numerals},I);return{dateLib:ie,components:Ui(t.components),formatters:rc(t.formatters),labels:cc(t.labels,ie.options),locale:T,classNames:{...qt(),...t.classNames}}},[t.locale,t.broadcastCalendar,t.weekStartsOn,t.firstWeekContainsDate,t.useAdditionalWeekYearTokens,t.useAdditionalDayOfYearTokens,t.timeZone,t.numerals,t.dateLib,t.noonSafe,t.components,t.formatters,t.labels,t.classNames]);t.today||(t={...t,today:s.today()});const{captionLayout:l,mode:d,navLayout:h,numberOfMonths:m=1,onDayBlur:w,onDayClick:M,onDayFocus:v,onDayKeyDown:x,onDayMouseEnter:b,onDayMouseLeave:y,onNextClick:g,onPrevClick:k,showWeekNumber:S,styles:p}=t,{formatCaption:D,formatDay:P,formatMonthDropdown:Y,formatWeekNumber:A,formatWeekNumberHeader:G,formatWeekdayName:Q,formatYearDropdown:Z}=o,z=Dc(t,s),{days:J,months:X,navStart:oe,navEnd:se,previousMonth:q,nextMonth:ne,goToMonth:ae}=z,We=Gi(J,t,oe,se,s),{isSelected:we,select:de,selected:xe}=jc(t,s)??{},{blur:Ee,focused:O,isFocusTarget:V,moveFocus:ee,setFocused:F}=Oc(t,z,We,we??(()=>!1),s),{labelDayButton:H,labelGridcell:L,labelGrid:be,labelMonthDropdown:Me,labelNav:Ye,labelPrevious:ze,labelNext:Ue,labelWeekday:$r,labelWeekNumber:Gr,labelWeekNumberHeader:zr,labelYearDropdown:Ur}=a,qr=f.useMemo(()=>uc(s,t.ISOWeek,t.broadcastCalendar,t.today),[s,t.ISOWeek,t.broadcastCalendar,t.today]),Qt=d!==void 0||M!==void 0,wt=f.useCallback(()=>{q&&(ae(q),k==null||k(q))},[q,ae,k]),xt=f.useCallback(()=>{ne&&(ae(ne),g==null||g(ne))},[ae,ne,g]),Kr=f.useCallback((T,j)=>E=>{E.preventDefault(),E.stopPropagation(),F(T),!j.disabled&&(de==null||de(T.date,j,E),M==null||M(T.date,j,E))},[de,M,F]),Xr=f.useCallback((T,j)=>E=>{F(T),v==null||v(T.date,j,E)},[v,F]),Qr=f.useCallback((T,j)=>E=>{Ee(),w==null||w(T.date,j,E)},[Ee,w]),Zr=f.useCallback((T,j)=>E=>{const I={ArrowLeft:[E.shiftKey?"month":"day",t.dir==="rtl"?"after":"before"],ArrowRight:[E.shiftKey?"month":"day",t.dir==="rtl"?"before":"after"],ArrowDown:[E.shiftKey?"year":"week","after"],ArrowUp:[E.shiftKey?"year":"week","before"],PageUp:[E.shiftKey?"year":"month","before"],PageDown:[E.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(I[E.key]){E.preventDefault(),E.stopPropagation();const[ie,W]=I[E.key];ee(ie,W)}x==null||x(T.date,j,E)},[ee,x,t.dir]),Jr=f.useCallback((T,j)=>E=>{b==null||b(T.date,j,E)},[b]),eo=f.useCallback((T,j)=>E=>{y==null||y(T.date,j,E)},[y]),to=f.useCallback(T=>j=>{const E=Number(j.target.value),I=s.setMonth(s.startOfMonth(T),E);ae(I)},[s,ae]),no=f.useCallback(T=>j=>{const E=Number(j.target.value),I=s.setYear(s.startOfMonth(T),E);ae(I)},[s,ae]),{className:ro,style:oo}=f.useMemo(()=>({className:[c[N.Root],t.className].filter(Boolean).join(" "),style:{...p==null?void 0:p[N.Root],...t.style}}),[c,t.className,t.style,p]),ao=qi(t),Zt=f.useRef(null);yc(Zt,!!t.animate,{classNames:c,months:X,focused:O,dateLib:s});const so={dayPickerProps:t,selected:xe,select:de,isSelected:we,months:X,nextMonth:ne,previousMonth:q,goToMonth:ae,getModifiers:We,components:r,classNames:c,styles:p,labels:a,formatters:o};return C.createElement(Or.Provider,{value:so},C.createElement(r.Root,{rootRef:t.animate?Zt:void 0,className:ro,style:oo,dir:t.dir,id:t.id,lang:t.lang,nonce:t.nonce,title:t.title,role:t.role,"aria-label":t["aria-label"],"aria-labelledby":t["aria-labelledby"],...ao},C.createElement(r.Months,{className:c[N.Months],style:p==null?void 0:p[N.Months]},!t.hideNavigation&&!h&&C.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:c[N.Nav],style:p==null?void 0:p[N.Nav],"aria-label":Ye(),onPreviousClick:wt,onNextClick:xt,previousMonth:q,nextMonth:ne}),X.map((T,j)=>C.createElement(r.Month,{"data-animated-month":t.animate?"true":void 0,className:c[N.Month],style:p==null?void 0:p[N.Month],key:j,displayIndex:j,calendarMonth:T},h==="around"&&!t.hideNavigation&&j===0&&C.createElement(r.PreviousMonthButton,{type:"button",className:c[N.PreviousMonthButton],tabIndex:q?void 0:-1,"aria-disabled":q?void 0:!0,"aria-label":ze(q),onClick:wt,"data-animated-button":t.animate?"true":void 0},C.createElement(r.Chevron,{disabled:q?void 0:!0,className:c[N.Chevron],orientation:t.dir==="rtl"?"right":"left"})),C.createElement(r.MonthCaption,{"data-animated-caption":t.animate?"true":void 0,className:c[N.MonthCaption],style:p==null?void 0:p[N.MonthCaption],calendarMonth:T,displayIndex:j},l!=null&&l.startsWith("dropdown")?C.createElement(r.DropdownNav,{className:c[N.Dropdowns],style:p==null?void 0:p[N.Dropdowns]},(()=>{const E=l==="dropdown"||l==="dropdown-months"?C.createElement(r.MonthsDropdown,{key:"month",className:c[N.MonthsDropdown],"aria-label":Me(),classNames:c,components:r,disabled:!!t.disableNavigation,onChange:to(T.date),options:lc(T.date,oe,se,o,s),style:p==null?void 0:p[N.Dropdown],value:s.getMonth(T.date)}):C.createElement("span",{key:"month"},Y(T.date,s)),I=l==="dropdown"||l==="dropdown-years"?C.createElement(r.YearsDropdown,{key:"year",className:c[N.YearsDropdown],"aria-label":Ur(s.options),classNames:c,components:r,disabled:!!t.disableNavigation,onChange:no(T.date),options:fc(oe,se,o,s,!!t.reverseYears),style:p==null?void 0:p[N.Dropdown],value:s.getYear(T.date)}):C.createElement("span",{key:"year"},Z(T.date,s));return s.getMonthYearOrder()==="year-first"?[I,E]:[E,I]})(),C.createElement("span",{role:"status","aria-live":"polite",style:{border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"absolute",width:"1px",whiteSpace:"nowrap",wordWrap:"normal"}},D(T.date,s.options,s))):C.createElement(r.CaptionLabel,{className:c[N.CaptionLabel],role:"status","aria-live":"polite"},D(T.date,s.options,s))),h==="around"&&!t.hideNavigation&&j===m-1&&C.createElement(r.NextMonthButton,{type:"button",className:c[N.NextMonthButton],tabIndex:ne?void 0:-1,"aria-disabled":ne?void 0:!0,"aria-label":Ue(ne),onClick:xt,"data-animated-button":t.animate?"true":void 0},C.createElement(r.Chevron,{disabled:ne?void 0:!0,className:c[N.Chevron],orientation:t.dir==="rtl"?"left":"right"})),j===m-1&&h==="after"&&!t.hideNavigation&&C.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:c[N.Nav],style:p==null?void 0:p[N.Nav],"aria-label":Ye(),onPreviousClick:wt,onNextClick:xt,previousMonth:q,nextMonth:ne}),C.createElement(r.MonthGrid,{role:"grid","aria-multiselectable":d==="multiple"||d==="range","aria-label":be(T.date,s.options,s)||void 0,className:c[N.MonthGrid],style:p==null?void 0:p[N.MonthGrid]},!t.hideWeekdays&&C.createElement(r.Weekdays,{"data-animated-weekdays":t.animate?"true":void 0,className:c[N.Weekdays],style:p==null?void 0:p[N.Weekdays]},S&&C.createElement(r.WeekNumberHeader,{"aria-label":zr(s.options),className:c[N.WeekNumberHeader],style:p==null?void 0:p[N.WeekNumberHeader],scope:"col"},G()),qr.map(E=>C.createElement(r.Weekday,{"aria-label":$r(E,s.options,s),className:c[N.Weekday],key:String(E),style:p==null?void 0:p[N.Weekday],scope:"col"},Q(E,s.options,s)))),C.createElement(r.Weeks,{"data-animated-weeks":t.animate?"true":void 0,className:c[N.Weeks],style:p==null?void 0:p[N.Weeks]},T.weeks.map(E=>C.createElement(r.Week,{className:c[N.Week],key:E.weekNumber,style:p==null?void 0:p[N.Week],week:E},S&&C.createElement(r.WeekNumber,{week:E,style:p==null?void 0:p[N.WeekNumber],"aria-label":Gr(E.weekNumber,{locale:i}),className:c[N.WeekNumber],scope:"row",role:"rowheader"},A(E.weekNumber,s)),E.days.map(I=>{const{date:ie}=I,W=We(I);if(W[$.focused]=!W.hidden&&!!(O!=null&&O.isEqualTo(I)),W[pe.selected]=(we==null?void 0:we(ie))||W.selected,yt(xe)){const{from:bt,to:Mt}=xe;W[pe.range_start]=!!(bt&&Mt&&s.isSameDay(ie,bt)),W[pe.range_end]=!!(bt&&Mt&&s.isSameDay(ie,Mt)),W[pe.range_middle]=Ne(xe,ie,!0,s)}const io=dc(W,p,t.modifiersStyles),co=zi(W,c,t.modifiersClassNames),lo=!Qt&&!W.hidden?L(ie,W,s.options,s):void 0;return C.createElement(r.Day,{key:`${I.isoDate}_${I.displayMonthId}`,day:I,modifiers:W,className:co.join(" "),style:io,role:"gridcell","aria-selected":W.selected||void 0,"aria-label":lo,"data-day":I.isoDate,"data-month":I.outside?I.dateMonthId:void 0,"data-selected":W.selected||void 0,"data-disabled":W.disabled||void 0,"data-hidden":W.hidden||void 0,"data-outside":I.outside||void 0,"data-focused":W.focused||void 0,"data-today":W.today||void 0},!W.hidden&&Qt?C.createElement(r.DayButton,{className:c[N.DayButton],style:p==null?void 0:p[N.DayButton],type:"button",day:I,modifiers:W,disabled:!W.focused&&W.disabled||void 0,"aria-disabled":W.focused&&W.disabled||void 0,tabIndex:V(I)?0:-1,"aria-label":H(ie,W,s.options,s),onClick:Kr(I,W),onBlur:Qr(I,W),onFocus:Xr(I,W),onKeyDown:Zr(I,W),onMouseEnter:Jr(I,W),onMouseLeave:eo(I,W)},P(ie,s.options,s)):!W.hidden&&P(I.date,s.options,s))})))))))),t.footer&&C.createElement(r.Footer,{className:c[N.Footer],style:p==null?void 0:p[N.Footer],role:"status","aria-live":"polite"},t.footer)))}function Yc({className:e,classNames:t,showOutsideDays:n=!0,captionLayout:r="label",buttonVariant:o="ghost",formatters:a,components:s,...i}){const c=qt();return u.jsx(Rc,{showOutsideDays:n,className:_("bg-background group/calendar p-3 [--cell-size:2rem]",e),captionLayout:r,formatters:{formatMonthDropdown:l=>l.toLocaleString("default",{month:"short"}),...a},classNames:{root:_("w-fit",c.root),months:_("flex gap-4 flex-col md:flex-row relative",c.months),month:_("flex flex-col w-full gap-4",c.month),nav:_("flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between",c.nav),button_previous:_(en({variant:o}),"size-8 aria-disabled:opacity-50 p-0 select-none",c.button_previous),button_next:_(en({variant:o}),"size-8 aria-disabled:opacity-50 p-0 select-none",c.button_next),month_caption:_("flex items-center justify-center h-8 w-full px-8",c.month_caption),dropdowns:_("w-full flex items-center text-sm font-medium justify-center h-8 gap-1.5",c.dropdowns),dropdown_root:_("relative has-focus:border-ring border border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] rounded-md",c.dropdown_root),dropdown:_("absolute bg-popover inset-0 opacity-0",c.dropdown),caption_label:_("select-none font-medium",r==="label"?"text-sm":"rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-muted-foreground [&>svg]:size-3.5",c.caption_label),table:"w-full border-collapse",weekdays:_("flex",c.weekdays),weekday:_("text-muted-foreground rounded-md flex-1 font-normal text-[0.8rem] select-none",c.weekday),week:_("flex w-full mt-2",c.week),week_number_header:_("select-none w-8",c.week_number_header),week_number:_("text-[0.8rem] select-none text-muted-foreground",c.week_number),day:_("relative w-full h-full p-0 text-center [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none",i.showWeekNumber?"[&:nth-child(2)[data-selected=true]_button]:rounded-l-md":"[&:first-child[data-selected=true]_button]:rounded-l-md",c.day),range_start:_("rounded-l-md bg-accent",c.range_start),range_middle:_("rounded-none",c.range_middle),range_end:_("rounded-r-md bg-accent",c.range_end),today:_("bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none",c.today),outside:_("text-muted-foreground aria-selected:text-muted-foreground",c.outside),disabled:_("text-muted-foreground opacity-50",c.disabled),hidden:_("invisible",c.hidden),...t},components:{Root:({className:l,rootRef:d,...h})=>u.jsx("div",{"data-slot":"calendar",ref:d,className:_(l),...h}),Chevron:({className:l,orientation:d,...h})=>d==="left"?u.jsx(Mo,{className:_("size-4",l),...h}):d==="right"?u.jsx(vo,{className:_("size-4",l),...h}):u.jsx(Ft,{className:_("size-4",l),...h}),DayButton:Fc,WeekNumber:({children:l,...d})=>u.jsx("td",{...d,children:u.jsx("div",{className:"flex size-8 items-center justify-center text-center",children:l})}),...s},...i})}function Fc({className:e,day:t,modifiers:n,...r}){const o=qt(),a=f.useRef(null);return f.useEffect(()=>{var s;n.focused&&((s=a.current)==null||s.focus())},[n.focused]),u.jsx(Ce,{ref:a,variant:"ghost",size:"icon","data-day":t.date.toLocaleDateString(),"data-selected-single":n.selected&&!n.range_start&&!n.range_end&&!n.range_middle,"data-range-start":n.range_start,"data-range-end":n.range_end,"data-range-middle":n.range_middle,className:_("data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-accent-foreground flex aspect-square size-auto w-full min-w-8 flex-col gap-1 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md [&>span]:text-xs [&>span]:opacity-70",o.day,e),...r})}const lt=["NODE_STATUS","PACKET_RECEIVED","PACKET_FORWARDED","PACKET_FULFILLED","PACKET_REJECTED","ACCOUNT_BALANCE","SETTLEMENT_TRIGGERED","SETTLEMENT_COMPLETED","AGENT_BALANCE_CHANGED","AGENT_WALLET_FUNDED","AGENT_WALLET_STATE_CHANGED","FUNDING_RATE_LIMIT_EXCEEDED","FUNDING_TRANSACTION_CONFIRMED","FUNDING_TRANSACTION_FAILED","PAYMENT_CHANNEL_OPENED","PAYMENT_CHANNEL_BALANCE_UPDATE","PAYMENT_CHANNEL_SETTLED","XRP_CHANNEL_OPENED","XRP_CHANNEL_CLAIMED","XRP_CHANNEL_CLOSED","AGENT_CHANNEL_OPENED","AGENT_CHANNEL_PAYMENT_SENT","AGENT_CHANNEL_CLOSED","CLAIM_SENT","CLAIM_RECEIVED","CLAIM_REDEEMED","WALLET_BALANCE_MISMATCH","SUSPICIOUS_ACTIVITY_DETECTED","RATE_LIMIT_EXCEEDED"],gn={Node:["NODE_STATUS"],"ILP Packets":["PACKET_RECEIVED","PACKET_FORWARDED","PACKET_FULFILLED","PACKET_REJECTED","AGENT_CHANNEL_PAYMENT_SENT"],Account:["ACCOUNT_BALANCE","SETTLEMENT_TRIGGERED","SETTLEMENT_COMPLETED"],"Agent Wallet":["AGENT_BALANCE_CHANGED","AGENT_WALLET_FUNDED","AGENT_WALLET_STATE_CHANGED","FUNDING_RATE_LIMIT_EXCEEDED","FUNDING_TRANSACTION_CONFIRMED","FUNDING_TRANSACTION_FAILED"],"EVM Channels":["PAYMENT_CHANNEL_OPENED","PAYMENT_CHANNEL_BALANCE_UPDATE","PAYMENT_CHANNEL_SETTLED"],"XRP Channels":["XRP_CHANNEL_OPENED","XRP_CHANNEL_CLAIMED","XRP_CHANNEL_CLOSED"],"Agent Channels":["AGENT_CHANNEL_OPENED","AGENT_CHANNEL_CLOSED"],"Claim Exchange":["CLAIM_SENT","CLAIM_RECEIVED","CLAIM_REDEEMED"],Security:["WALLET_BALANCE_MISMATCH","SUSPICIOUS_ACTIVITY_DETECTED","RATE_LIMIT_EXCEEDED"]};function Bc(e){const t=Date.now();switch(e){case"1m":return{since:t-60*1e3,preset:e};case"5m":return{since:t-300*1e3,preset:e};case"1h":return{since:t-3600*1e3,preset:e};case"24h":return{since:t-1440*60*1e3,preset:e};default:return{preset:e}}}function Hc(e){return e.preset&&e.preset!=="custom"?{"1m":"Last 1 minute","5m":"Last 5 minutes","1h":"Last 1 hour","24h":"Last 24 hours"}[e.preset]||"All time":e.since&&e.until?`${Se(e.since,"MMM d, HH:mm")} - ${Se(e.until,"MMM d, HH:mm")}`:e.since?`Since ${Se(e.since,"MMM d, HH:mm")}`:e.until?`Until ${Se(e.until,"MMM d, HH:mm")}`:"All time"}function Lc({selectedTypes:e,onSelectionChange:t}){const[n,r]=f.useState(!1),o=m=>{e.includes(m)?t(e.filter(w=>w!==m)):t([...e,m])},a=()=>{t([...lt])},s=()=>{t([])},i=e.length===0||e.length===lt.length?"All event types":`${e.length} types selected`,[c,l]=f.useState(""),d=f.useRef(null);f.useEffect(()=>{if(!n)return;const m=w=>{d.current&&!d.current.contains(w.target)&&r(!1)};return document.addEventListener("mousedown",m),()=>document.removeEventListener("mousedown",m)},[n]);const h=f.useMemo(()=>{if(!c)return gn;const m=c.toLowerCase(),w={};for(const[M,v]of Object.entries(gn)){const x=v.filter(b=>b.toLowerCase().includes(m));x.length>0&&(w[M]=x)}return w},[c]);return u.jsxs("div",{className:"relative",ref:d,children:[u.jsxs(Ce,{variant:"outline",role:"combobox","aria-expanded":n,onClick:()=>r(!n),className:"w-[180px] justify-between",children:[u.jsx("span",{className:"truncate",children:i}),u.jsx(Do,{className:"ml-2 h-4 w-4 shrink-0 opacity-50"})]}),n&&u.jsxs("div",{className:"absolute top-full left-0 mt-1 z-50 w-[300px] rounded-md border bg-popover text-popover-foreground shadow-md",children:[u.jsxs("div",{className:"flex items-center border-b px-3 py-2",children:[u.jsx(_n,{className:"mr-2 h-4 w-4 shrink-0 opacity-50"}),u.jsx("input",{type:"text",placeholder:"Search event types...",value:c,onChange:m=>l(m.target.value),className:"flex h-8 w-full bg-transparent text-sm outline-none placeholder:text-muted-foreground"})]}),u.jsxs("div",{className:"max-h-[300px] overflow-y-auto p-1",children:[u.jsxs("div",{className:"flex cursor-pointer items-center rounded-sm px-2 py-1.5 text-sm hover:bg-accent",onClick:a,children:[u.jsx(Tt,{className:_("mr-2 h-4 w-4",e.length===lt.length?"opacity-100":"opacity-0")}),"Select All"]}),u.jsxs("div",{className:"flex cursor-pointer items-center rounded-sm px-2 py-1.5 text-sm hover:bg-accent",onClick:s,children:[u.jsx(ct,{className:"mr-2 h-4 w-4 opacity-50"}),"Clear All"]}),u.jsx("div",{className:"-mx-1 my-1 h-px bg-border"}),Object.entries(h).map(([m,w])=>u.jsxs("div",{children:[u.jsx("div",{className:"px-2 py-1.5 text-xs font-medium text-muted-foreground",children:m}),w.map(M=>u.jsxs("div",{className:"flex cursor-pointer items-center rounded-sm px-2 py-1.5 text-sm hover:bg-accent",onClick:()=>o(M),children:[u.jsx(Tt,{className:_("mr-2 h-4 w-4",e.includes(M)?"opacity-100":"opacity-0")}),u.jsx(_t,{variant:"secondary",className:`${Tn[M]||"bg-gray-500"} text-white text-xs`,children:M.replace(/_/g," ")})]},M))]},m)),Object.keys(h).length===0&&u.jsx("div",{className:"py-6 text-center text-sm text-muted-foreground",children:"No event type found."})]})]})]})}function Vc({timeRange:e,onTimeRangeChange:t}){const[n,r]=f.useState(!1),[o,a]=f.useState(e.since&&e.until?{from:new Date(e.since),to:new Date(e.until)}:void 0),s=l=>{l==="custom"?r(!0):t(Bc(l))},i=l=>{a(l),l!=null&&l.from&&(l!=null&&l.to)?t({since:l.from.getTime(),until:l.to.getTime(),preset:"custom"}):l!=null&&l.from&&t({since:l.from.getTime(),preset:"custom"})},c=["1m","5m","1h","24h"];return u.jsxs("div",{className:"flex items-center gap-1",children:[c.map(l=>u.jsx(Ce,{variant:e.preset===l?"secondary":"ghost",size:"sm",onClick:()=>s(l),className:"px-2",children:l},l)),u.jsxs(hs,{open:n,onOpenChange:r,children:[u.jsx(ms,{asChild:!0,children:u.jsxs(Ce,{variant:e.preset==="custom"?"secondary":"ghost",size:"sm",className:"px-2",children:[u.jsx(xo,{className:"h-4 w-4 mr-1"}),"Custom"]})}),u.jsxs(ps,{className:"w-auto p-0",align:"start",children:[u.jsx(Yc,{mode:"range",selected:o,onSelect:i,numberOfMonths:2}),u.jsx("div",{className:"p-3 border-t",children:u.jsx(Ce,{size:"sm",className:"w-full",onClick:()=>r(!1),children:"Apply"})})]})]}),u.jsx("span",{className:"text-sm text-muted-foreground ml-2",children:Hc(e)})]})}function zc({filters:e,onFilterChange:t,onReset:n,activeFilterCount:r}){const[o,a]=f.useState(e.searchText),s=f.useRef(null),i=d=>{a(d),s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{t({searchText:d})},300)},c=()=>{a(""),t({searchText:""})};f.useEffect(()=>()=>{s.current&&clearTimeout(s.current)},[]),f.useEffect(()=>{a(e.searchText)},[e.searchText]);const l=e.eventTypes.length>0||e.timeRange.preset!==void 0||e.direction!=="all"||e.searchText!=="";return u.jsxs("div",{className:"flex flex-col gap-3 px-4 md:px-6 py-3 border-b border-border bg-card",children:[u.jsxs("div",{className:"flex items-center gap-4 flex-wrap",children:[u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"Type:"}),u.jsx(Lc,{selectedTypes:e.eventTypes,onSelectionChange:d=>t({eventTypes:d})}),u.jsxs(Ce,{variant:e.eventTypes.length===qe.length&&qe.every(d=>e.eventTypes.includes(d))?"secondary":"outline",size:"sm",onClick:()=>{const d=e.eventTypes.length===qe.length&&qe.every(h=>e.eventTypes.includes(h));t({eventTypes:d?[]:[...qe]})},className:"gap-1.5",children:[u.jsx(po,{className:"h-4 w-4"}),"ILP Packets"]}),u.jsxs(Ce,{variant:e.eventTypes.length===Ke.length&&Ke.every(d=>e.eventTypes.includes(d))?"secondary":"outline",size:"sm",onClick:()=>{const d=e.eventTypes.length===Ke.length&&Ke.every(h=>e.eventTypes.includes(h));t({eventTypes:d?[]:[...Ke]})},className:"gap-1.5",children:[u.jsx(go,{className:"h-4 w-4"}),"Settlement"]})]}),u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"Direction:"}),u.jsxs(oi,{value:e.direction,onValueChange:d=>t({direction:d}),children:[u.jsx(si,{className:"w-[130px]",children:u.jsx(ai,{placeholder:"Direction"})}),u.jsxs(ii,{children:[u.jsx(it,{value:"all",children:"All"}),u.jsx(it,{value:"sent",children:"Sent"}),u.jsx(it,{value:"received",children:"Received"}),u.jsx(it,{value:"internal",children:"Internal"})]})]})]}),u.jsxs("div",{className:"flex items-center gap-2 flex-1 min-w-[200px] w-full md:w-auto",children:[u.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"Search:"}),u.jsxs("div",{className:"relative flex-1 max-w-full md:max-w-[300px]",children:[u.jsx(_n,{className:"absolute left-2.5 top-2.5 h-4 w-4 text-muted-foreground"}),u.jsx(yo,{id:"explorer-search-input",placeholder:"Search destination, peer, packet...",value:o,onChange:d=>i(d.target.value),className:"pl-8 pr-8"}),o&&u.jsx(Ce,{variant:"ghost",size:"icon",className:"absolute right-1 top-1 h-7 w-7",onClick:c,children:u.jsx(ct,{className:"h-4 w-4"})})]})]}),l&&u.jsxs("div",{className:"flex items-center gap-2",children:[r!==void 0&&r>0&&u.jsxs(_t,{variant:"secondary",className:"text-xs",children:[r," active"]}),u.jsxs(Ce,{variant:"outline",size:"sm",onClick:n,children:[u.jsx(ct,{className:"h-4 w-4 mr-1"}),"Clear all filters"]})]})]}),u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"Time:"}),u.jsx(Vc,{timeRange:e.timeRange,onTimeRangeChange:d=>t({timeRange:d})})]}),e.eventTypes.length>0&&e.eventTypes.length<lt.length&&u.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[u.jsx("span",{className:"text-sm text-muted-foreground",children:"Showing:"}),e.eventTypes.slice(0,5).map(d=>u.jsxs(_t,{variant:"secondary",className:`${Tn[d]||"bg-gray-500"} text-white text-xs cursor-pointer`,onClick:()=>t({eventTypes:e.eventTypes.filter(h=>h!==d)}),children:[d.replace(/_/g," "),u.jsx(ct,{className:"h-3 w-3 ml-1"})]},d)),e.eventTypes.length>5&&u.jsxs("span",{className:"text-xs text-muted-foreground",children:["+",e.eventTypes.length-5," more"]})]})]})}export{zc as FilterBar};
@@ -0,0 +1,11 @@
1
+ import{c as o}from"./index-BZ2INVgy.js";/**
2
+ * @license lucide-react v0.563.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const n=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],t=o("chevron-down",n);/**
7
+ * @license lucide-react v0.563.0 - ISC
8
+ *
9
+ * This source code is licensed under the ISC license.
10
+ * See the LICENSE file in the root directory of this source tree.
11
+ */const c=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],h=o("chevron-right",c);export{t as C,h as a};