@lunora/studio 1.0.0-alpha.9 → 1.0.0-alpha.91

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 (314) hide show
  1. package/LICENSE.md +6 -0
  2. package/dist/index.d.ts +822 -781
  3. package/dist/index.js +1 -41
  4. package/dist/mount.d.ts +10 -10
  5. package/dist/mount.js +1 -26
  6. package/dist/packem_chunks/AdvisorHealthPanel.js +1 -0
  7. package/dist/packem_chunks/ApiTab.js +1 -0
  8. package/dist/packem_chunks/AuditPanel.js +1 -0
  9. package/dist/packem_chunks/DeploymentHealthPanel.js +1 -0
  10. package/dist/packem_chunks/ExportImportPanel.js +3 -0
  11. package/dist/packem_chunks/FileBrowser.js +4 -0
  12. package/dist/packem_chunks/FunctionRunner.js +1 -0
  13. package/dist/packem_chunks/FunctionStatsPanel.js +1 -0
  14. package/dist/packem_chunks/HealthPanel.js +1 -0
  15. package/dist/packem_chunks/InsightsPanel.js +1 -0
  16. package/dist/packem_chunks/LogsPanel.js +1 -0
  17. package/dist/packem_chunks/MailPanel.js +2 -0
  18. package/dist/packem_chunks/MetricsPanel.js +1 -0
  19. package/dist/packem_chunks/NotificationsPanel.js +1 -0
  20. package/dist/packem_chunks/PitrPanel.js +1 -0
  21. package/dist/packem_chunks/SchemaViewer.js +1 -0
  22. package/dist/packem_chunks/SecurityAdvisorPanel.js +1 -0
  23. package/dist/packem_chunks/SettingsPanel.js +1 -0
  24. package/dist/packem_chunks/SqlEditorPanel.js +6 -0
  25. package/dist/packem_chunks/TableEditor.js +1 -0
  26. package/dist/packem_chunks/agents-panel.js +1 -0
  27. package/dist/packem_chunks/analytics-panel.js +1 -0
  28. package/dist/packem_chunks/auth-audit-panel.js +1 -0
  29. package/dist/packem_chunks/auth-config-panel.js +1 -0
  30. package/dist/packem_chunks/auth-sessions-panel.js +1 -0
  31. package/dist/packem_chunks/containers-panel.js +1 -0
  32. package/dist/packem_chunks/dashboards-panel.js +1 -0
  33. package/dist/packem_chunks/fanout-panel.js +1 -0
  34. package/dist/packem_chunks/flags-panel.js +1 -0
  35. package/dist/packem_chunks/issues-panel.js +1 -0
  36. package/dist/packem_chunks/kv-browser.js +1 -0
  37. package/dist/packem_chunks/log-drains-panel.js +4 -0
  38. package/dist/packem_chunks/migrations-route.js +1 -0
  39. package/dist/packem_chunks/organizations-panel.js +1 -0
  40. package/dist/packem_chunks/payments-panel.js +1 -0
  41. package/dist/packem_chunks/permissions-panel.js +1 -0
  42. package/dist/packem_chunks/queues-panel.js +1 -0
  43. package/dist/packem_chunks/rls-panel.js +1 -0
  44. package/dist/packem_chunks/schedule-panel.js +1 -0
  45. package/dist/packem_chunks/sparkline.js +1 -0
  46. package/dist/packem_chunks/storage-rules-panel.js +1 -0
  47. package/dist/packem_chunks/subscriptions-panel.js +1 -0
  48. package/dist/packem_chunks/sync-client-panel.js +1 -0
  49. package/dist/packem_chunks/traces-panel.js +1 -0
  50. package/dist/packem_chunks/users-panel.js +1 -0
  51. package/dist/packem_chunks/vector-browser.js +1 -0
  52. package/dist/packem_chunks/workflows-panel.js +1 -0
  53. package/dist/packem_shared/ADMIN_FUNCTIONS-4aE59aDq.js +1 -0
  54. package/dist/packem_shared/ApiDocsPanel-Cu_QmzO0.js +2 -0
  55. package/dist/packem_shared/ApiReferencePanel-DuIU1P8B.js +1 -0
  56. package/dist/packem_shared/CommandPalette-mPR8-vIm.js +1 -0
  57. package/dist/packem_shared/ConfirmButton-CTL3f3kr.js +1 -0
  58. package/dist/packem_shared/ConnectionBadge-DOk0CQWo.js +1 -0
  59. package/dist/packem_shared/DEFAULT_AUTO_REFRESH_MS-BCC8_4BQ.js +1 -0
  60. package/dist/packem_shared/DEFAULT_INSIGHT_THRESHOLDS-B-hcFVoi.js +1 -0
  61. package/dist/packem_shared/DEFAULT_LOCALE-BZ4NojpD.js +1 -0
  62. package/dist/packem_shared/DataBrowser-BPRDaOHx.js +1 -0
  63. package/dist/packem_shared/DataFilters-B26ZeqBZ.js +1 -0
  64. package/dist/packem_shared/ErrorBoundary-DvzYskH7.js +1 -0
  65. package/dist/packem_shared/GlobalDataBrowser-CeA8bDjX.js +1 -0
  66. package/dist/packem_shared/HomePanel-DLP1nQdC.js +1 -0
  67. package/dist/packem_shared/MigrationsPanel-dm_M75mR.js +1 -0
  68. package/dist/packem_shared/OpenRpcReferencePanel-DXeffPFr.js +1 -0
  69. package/dist/packem_shared/STUDIO_ROOT_CLASS-C6MccdVk.js +1 -0
  70. package/dist/packem_shared/ScheduledJobs-DDJG9Je7.js +1 -0
  71. package/dist/packem_shared/ShardInput-BVn2iCU0.js +1 -0
  72. package/dist/packem_shared/Studio-BYg65qWq.js +1 -0
  73. package/dist/packem_shared/StudioApp-D0UOg0a_.js +1 -0
  74. package/dist/packem_shared/StudioI18nProvider-CZ5h4nrV.js +1 -0
  75. package/dist/packem_shared/advisor-view-Coipc04R.js +1 -0
  76. package/dist/packem_shared/aggregateMetrics-BNfajLa2.js +1 -0
  77. package/dist/packem_shared/alert-CVcOFuDR.js +1 -0
  78. package/dist/packem_shared/app.d-DW7yZsfu.d.ts +252 -0
  79. package/dist/packem_shared/badge-BbuuAio7.js +1 -0
  80. package/dist/packem_shared/bar-chart-DraN_srt.js +9 -0
  81. package/dist/packem_shared/browser-storage-xjTyMKY0.js +1 -0
  82. package/dist/packem_shared/button-BkCrNcAs.js +1 -0
  83. package/dist/packem_shared/card-CIDGUN6K.js +1 -0
  84. package/dist/packem_shared/cf-links-Dmg86v1D.js +1 -0
  85. package/dist/packem_shared/checkbox-StT4Gob6.js +1 -0
  86. package/dist/packem_shared/data-grid-Ci4-tZkk.js +1 -0
  87. package/dist/packem_shared/data-view-params-ClrV7XgF.js +1 -0
  88. package/dist/packem_shared/dropdown-menu-C3RQ_HlW.js +2 -0
  89. package/dist/packem_shared/empty-state-Cg7t_8qu.js +1 -0
  90. package/dist/packem_shared/error-alert--Ie7ofJ0.js +1 -0
  91. package/dist/packem_shared/grid-features-Db_BNYRo.js +6 -0
  92. package/dist/packem_shared/home-panel-BtxdqXDe.js +3 -0
  93. package/dist/packem_shared/input-JHu63lTv.js +1 -0
  94. package/dist/packem_shared/internal-zkEvTqy8.js +2 -0
  95. package/dist/packem_shared/label-6uP1obNF.js +1 -0
  96. package/dist/packem_shared/live-status-CmuRLFKf.js +1 -0
  97. package/dist/packem_shared/log-fields-CoL3hsIQ.js +1 -0
  98. package/dist/packem_shared/modal-shell-CUwwWC2o.js +1 -0
  99. package/dist/packem_shared/operation-console-provider-BMJNtiyB.js +1 -0
  100. package/dist/packem_shared/recording-client-DtUxwVNY.js +1 -0
  101. package/dist/packem_shared/reference-view-DncEStdm.js +12 -0
  102. package/dist/packem_shared/result-chart-Gywg9DOk.js +1 -0
  103. package/dist/packem_shared/schema-diagram-DTRaCp6Y.js +2 -0
  104. package/dist/packem_shared/scroll-area-DTEq6Jec.js +2 -0
  105. package/dist/packem_shared/select-Bul-DeII.js +2 -0
  106. package/dist/packem_shared/shard-history-DMEW5VBE.js +1 -0
  107. package/dist/packem_shared/skeleton-C1wQ9M5t.js +1 -0
  108. package/dist/packem_shared/sparkline-CgjeUU2I.js +1 -0
  109. package/dist/packem_shared/stat-card-fm_TF1mo.js +1 -0
  110. package/dist/packem_shared/storage-tier-DznqOf-q.js +1 -0
  111. package/dist/packem_shared/studio-Drf4en3j.js +2 -0
  112. package/dist/packem_shared/table-DdJBrClo.js +2 -0
  113. package/dist/packem_shared/table-list-sidebar-fz0m_4I4.js +1 -0
  114. package/dist/packem_shared/textarea-Bu2-jKAs.js +1 -0
  115. package/dist/packem_shared/trace-handoff-Dw7mwjxu.js +1 -0
  116. package/dist/packem_shared/use-admin-query-CnnyWJXM.js +1 -0
  117. package/dist/packem_shared/use-async-submit-BFIMhRqh.js +1 -0
  118. package/dist/packem_shared/use-auth-config-0EnNCdLu.js +1 -0
  119. package/dist/packem_shared/use-shard-key-B2JtNa5m.js +1 -0
  120. package/dist/packem_shared/use-sql-assistant-Dtw55kKM.js +1 -0
  121. package/dist/packem_shared/useDebounced-CU-uftxO.js +1 -0
  122. package/dist/packem_shared/utils-bhneXptQ.js +1 -0
  123. package/dist/packem_shared/virtual-rect-1o1veP7R.js +1 -0
  124. package/dist/packem_shared/wire-codec-BUrWLklj.js +1 -0
  125. package/dist/standalone/chunk-2NX5QU44.js +1 -0
  126. package/dist/standalone/chunk-2OUPA2WJ.js +1 -0
  127. package/dist/standalone/chunk-2PJNAWB3.js +1 -0
  128. package/dist/standalone/chunk-2QSHLBCO.js +1 -0
  129. package/dist/standalone/chunk-2QWHVQ6P.js +1 -0
  130. package/dist/standalone/chunk-3C3CG7ZK.js +1 -0
  131. package/dist/standalone/chunk-3CWGJYBB.js +1 -0
  132. package/dist/standalone/chunk-3FIN5PH4.js +6 -0
  133. package/dist/standalone/chunk-3XIESWL4.js +1 -0
  134. package/dist/standalone/chunk-3XQMTTW2.js +1 -0
  135. package/dist/standalone/chunk-4D7XIQ5Q.js +1 -0
  136. package/dist/standalone/chunk-4LCY5XUR.js +1 -0
  137. package/dist/standalone/chunk-4PLB4ZNI.js +1 -0
  138. package/dist/standalone/chunk-4UOFSGUS.js +1 -0
  139. package/dist/standalone/chunk-4VEAVSAZ.js +1 -0
  140. package/dist/standalone/chunk-54MMVNPT.js +1 -0
  141. package/dist/standalone/chunk-5Y3QLNWX.js +1 -0
  142. package/dist/standalone/chunk-6QKJ6JPJ.js +1 -0
  143. package/dist/standalone/chunk-6ST5ECQA.js +1 -0
  144. package/dist/standalone/chunk-6WWX4FJB.js +1 -0
  145. package/dist/standalone/chunk-6XKVQES4.js +1 -0
  146. package/dist/standalone/chunk-7H7LZRLP.js +1 -0
  147. package/dist/standalone/chunk-7QIFDWQV.js +1 -0
  148. package/dist/standalone/chunk-7QMX3D4D.js +3 -0
  149. package/dist/standalone/chunk-7T7UOTYK.js +1 -0
  150. package/dist/standalone/chunk-7YXDJXNL.js +1 -0
  151. package/dist/standalone/chunk-A7647FJE.js +1 -0
  152. package/dist/standalone/chunk-AQT6EPZT.js +1 -0
  153. package/dist/standalone/chunk-AREBQI6D.js +1 -0
  154. package/dist/standalone/chunk-AVAC26HJ.js +1 -0
  155. package/dist/standalone/chunk-BCGEI67L.js +2 -0
  156. package/dist/standalone/chunk-BENJFRZL.js +1 -0
  157. package/dist/standalone/chunk-BGBLQ563.js +1 -0
  158. package/dist/standalone/chunk-BYIS2KWZ.js +1 -0
  159. package/dist/standalone/chunk-C6GLTSPO.js +4 -0
  160. package/dist/standalone/chunk-CFPZYHPY.js +2 -0
  161. package/dist/standalone/chunk-CMP33R3N.js +1 -0
  162. package/dist/standalone/chunk-CRHCAN4W.js +13 -0
  163. package/dist/standalone/chunk-CUAGAM2B.js +1 -0
  164. package/dist/standalone/chunk-DBWOWJYT.js +11 -0
  165. package/dist/standalone/chunk-EQZTSISX.js +1 -0
  166. package/dist/standalone/chunk-ESEEVSPC.js +1 -0
  167. package/dist/standalone/chunk-ESVP44Y3.js +1 -0
  168. package/dist/standalone/chunk-F3TP5L34.js +1 -0
  169. package/dist/standalone/chunk-FBNRATNR.js +1 -0
  170. package/dist/standalone/chunk-FURI47Z2.js +1 -0
  171. package/dist/standalone/chunk-FW75RYZU.js +1 -0
  172. package/dist/standalone/chunk-FXCBF4XT.js +1 -0
  173. package/dist/standalone/chunk-GMR677FL.js +1 -0
  174. package/dist/standalone/chunk-GRL5MG3Z.js +1 -0
  175. package/dist/standalone/chunk-HKG5I64M.js +1 -0
  176. package/dist/standalone/chunk-HPFLBYRI.js +1 -0
  177. package/dist/standalone/chunk-HWOD25QD.js +1 -0
  178. package/dist/standalone/chunk-I6A5C46N.js +1 -0
  179. package/dist/standalone/chunk-IBVBIKUI.js +1 -0
  180. package/dist/standalone/chunk-IC4L6G56.js +1 -0
  181. package/dist/standalone/chunk-IGCNMZSB.js +1 -0
  182. package/dist/standalone/chunk-ILNELDFC.js +1 -0
  183. package/dist/standalone/chunk-IUUSMC2R.js +8 -0
  184. package/dist/standalone/chunk-IUYFXK4X.js +19 -0
  185. package/dist/standalone/chunk-IVFHIQOT.js +1 -0
  186. package/dist/standalone/chunk-IZ3ISXSM.js +1 -0
  187. package/dist/standalone/chunk-J3FR2XBV.js +1 -0
  188. package/dist/standalone/chunk-JN2Y24PY.js +1 -0
  189. package/dist/standalone/chunk-JWXKUXYA.js +1 -0
  190. package/dist/standalone/chunk-KUFAOKU3.js +1 -0
  191. package/dist/standalone/chunk-KUVMORDQ.js +1 -0
  192. package/dist/standalone/chunk-LDYOCGEG.js +1 -0
  193. package/dist/standalone/chunk-LEDWUPXM.js +1 -0
  194. package/dist/standalone/chunk-LUU4SDHW.js +1 -0
  195. package/dist/standalone/chunk-LYQY7L72.js +4 -0
  196. package/dist/standalone/chunk-LZH7RDRV.js +1 -0
  197. package/dist/standalone/chunk-MIQTKZAR.js +1 -0
  198. package/dist/standalone/chunk-ML5IJMH6.js +1 -0
  199. package/dist/standalone/chunk-MV4A2PAK.js +1 -0
  200. package/dist/standalone/chunk-N233NOIN.js +1 -0
  201. package/dist/standalone/chunk-NH3VWHCL.js +1 -0
  202. package/dist/standalone/chunk-NNRFDPSD.js +1 -0
  203. package/dist/standalone/chunk-O2QUUHGF.js +1 -0
  204. package/dist/standalone/chunk-Q2Q7FR3R.js +1 -0
  205. package/dist/standalone/chunk-Q4AI6JRP.js +1 -0
  206. package/dist/standalone/chunk-QBWRC5YX.js +1 -0
  207. package/dist/standalone/chunk-QGA2HITH.js +1 -0
  208. package/dist/standalone/chunk-QLQADHFE.js +1 -0
  209. package/dist/standalone/chunk-QWGT25SE.js +1 -0
  210. package/dist/standalone/chunk-QWJ4HKPY.js +1 -0
  211. package/dist/standalone/chunk-QZGTDXV5.js +1 -0
  212. package/dist/standalone/chunk-RHPP74O4.js +1 -0
  213. package/dist/standalone/chunk-RKGCSNAW.js +1 -0
  214. package/dist/standalone/chunk-RMN2JN4S.js +1 -0
  215. package/dist/standalone/chunk-RNOSWEMO.js +4 -0
  216. package/dist/standalone/chunk-S3DWUXGY.js +62 -0
  217. package/dist/standalone/chunk-SD4BERSA.js +1 -0
  218. package/dist/standalone/chunk-SFDOII3B.js +1 -0
  219. package/dist/standalone/chunk-SMIESS7P.js +1 -0
  220. package/dist/standalone/chunk-T6VMSOBB.js +1 -0
  221. package/dist/standalone/chunk-THIXMMZD.js +1 -0
  222. package/dist/standalone/chunk-ULYM26IH.js +1 -0
  223. package/dist/standalone/chunk-UU2QJMGJ.js +1 -0
  224. package/dist/standalone/chunk-UZERI5YC.js +1 -0
  225. package/dist/standalone/chunk-V53KNYRN.js +1 -0
  226. package/dist/standalone/chunk-VDW32UET.js +1 -0
  227. package/dist/standalone/chunk-WOEGO5M6.js +1 -0
  228. package/dist/standalone/chunk-XBDKZZ67.js +1 -0
  229. package/dist/standalone/chunk-XDEDCAYN.js +1 -0
  230. package/dist/standalone/chunk-XF2B7P5A.js +1 -0
  231. package/dist/standalone/chunk-XGMZESWC.js +1 -0
  232. package/dist/standalone/chunk-XKKP2VFZ.js +1 -0
  233. package/dist/standalone/chunk-XNGYYOLS.js +14 -0
  234. package/dist/standalone/chunk-XQCVZAGU.js +1 -0
  235. package/dist/standalone/chunk-XTEWLG3J.js +3 -0
  236. package/dist/standalone/chunk-XXQUMVWH.js +1 -0
  237. package/dist/standalone/chunk-XXXMUP6L.js +1 -0
  238. package/dist/standalone/chunk-ZJGP6EKR.js +1 -0
  239. package/dist/standalone/chunk-ZKTWHB7Q.js +1 -0
  240. package/dist/standalone/chunk-ZNMZQXWN.js +1 -0
  241. package/dist/standalone/chunk-ZWSTXAG3.js +6 -0
  242. package/dist/standalone/studio.js +9 -356
  243. package/dist/styles.css +2 -2
  244. package/package.json +16 -14
  245. package/dist/packem_shared/ADMIN_FUNCTIONS-DjXgvJb6.js +0 -46
  246. package/dist/packem_shared/ApiDocsPanel-yVSGHK3H.js +0 -842
  247. package/dist/packem_shared/ApiReferencePanel-1vubqG5s.js +0 -229
  248. package/dist/packem_shared/ApiTab-rwttyQ1-.js +0 -251
  249. package/dist/packem_shared/AuditPanel-BqXZAsu_.js +0 -212
  250. package/dist/packem_shared/CommandPalette-BtgkBzZI.js +0 -373
  251. package/dist/packem_shared/ConfirmButton-C2eVi2Qv.js +0 -59
  252. package/dist/packem_shared/ConnectionBadge-B2DDM2Tn.js +0 -111
  253. package/dist/packem_shared/DEFAULT_AUTO_REFRESH_MS-Vxwaxx51.js +0 -50
  254. package/dist/packem_shared/DEFAULT_INSIGHT_THRESHOLDS-DjF0h-gA.js +0 -89
  255. package/dist/packem_shared/DEFAULT_LOCALE-CiX4W7Kr.js +0 -27
  256. package/dist/packem_shared/DataBrowser-BtT2NYcR.js +0 -4542
  257. package/dist/packem_shared/DataFilters-FNquMaiu.js +0 -249
  258. package/dist/packem_shared/ErrorBoundary-BzAApI7J.js +0 -66
  259. package/dist/packem_shared/ExportImportPanel-Dq6rj0tI.js +0 -193
  260. package/dist/packem_shared/FileBrowser-0pCpdKPE.js +0 -2932
  261. package/dist/packem_shared/FunctionRunner-7NH3KcTg.js +0 -343
  262. package/dist/packem_shared/FunctionStatsPanel-Cn_EBpDy.js +0 -432
  263. package/dist/packem_shared/GlobalDataBrowser-BTEmGrph.js +0 -318
  264. package/dist/packem_shared/HealthPanel-CQ4LzVET.js +0 -640
  265. package/dist/packem_shared/HomePanel-CP0lN1eF.js +0 -1273
  266. package/dist/packem_shared/InsightsPanel-B1BaHaPL.js +0 -431
  267. package/dist/packem_shared/LogsPanel-C3W0mabf.js +0 -839
  268. package/dist/packem_shared/MailPanel-DozizrvV.js +0 -447
  269. package/dist/packem_shared/MetricsPanel-CujtUfpl.js +0 -1625
  270. package/dist/packem_shared/MigrationsPanel-RX5qIFSr.js +0 -246
  271. package/dist/packem_shared/OpenRpcReferencePanel-vbcYbv3V.js +0 -191
  272. package/dist/packem_shared/PitrPanel-LJGNP_IX.js +0 -252
  273. package/dist/packem_shared/STUDIO_ROOT_CLASS-D12gX2dV.js +0 -3
  274. package/dist/packem_shared/ScheduledJobs-CabfKbyM.js +0 -159
  275. package/dist/packem_shared/SchemaViewer-Bam6ylvw.js +0 -2512
  276. package/dist/packem_shared/SecurityAdvisorPanel-Bn2yq05G.js +0 -79
  277. package/dist/packem_shared/SettingsPanel-CBXQpYQA.js +0 -176
  278. package/dist/packem_shared/ShardInput-gx_DZXXn.js +0 -107
  279. package/dist/packem_shared/SqlEditorPanel-D5wMIxcg.js +0 -13
  280. package/dist/packem_shared/Studio-CccqZ-J1.js +0 -33
  281. package/dist/packem_shared/StudioApp-CQbULfaH.js +0 -657
  282. package/dist/packem_shared/StudioI18nProvider-B-tDCZIi.js +0 -48
  283. package/dist/packem_shared/TableEditor-Df_5NPaF.js +0 -371
  284. package/dist/packem_shared/advisor-view-CGcfMiPq.js +0 -159
  285. package/dist/packem_shared/aggregateMetrics-D4nUHEKU.js +0 -108
  286. package/dist/packem_shared/app.d-Nbhpihxv.d.ts +0 -300
  287. package/dist/packem_shared/badge-B2PKA1-5.js +0 -49
  288. package/dist/packem_shared/bar-chart-CzJAgqkp.js +0 -3245
  289. package/dist/packem_shared/button-BhsN2uZH.js +0 -49
  290. package/dist/packem_shared/card-DURq3ElK.js +0 -175
  291. package/dist/packem_shared/cf-links-2cktDedA.js +0 -8
  292. package/dist/packem_shared/checkbox-UNkzAxl-.js +0 -63
  293. package/dist/packem_shared/data-grid-B5CaV3wS.js +0 -183
  294. package/dist/packem_shared/dropdown-menu-WY4B_eJO.js +0 -280
  295. package/dist/packem_shared/empty-state-DY_oe0k6.js +0 -98
  296. package/dist/packem_shared/grid-features-CzUfqgsM.js +0 -840
  297. package/dist/packem_shared/input-XH4r1Pt1.js +0 -53
  298. package/dist/packem_shared/internal-rXJEAhXS.js +0 -68
  299. package/dist/packem_shared/label-D8ykjn5J.js +0 -46
  300. package/dist/packem_shared/live-status-FZ0psC1z.js +0 -44
  301. package/dist/packem_shared/reference-view-B4E49Lip.js +0 -2180
  302. package/dist/packem_shared/shard-history-DyebH1R5.js +0 -38
  303. package/dist/packem_shared/sparkline-10dG-_f0.js +0 -93
  304. package/dist/packem_shared/sql-editor-panel-Smfl_FDF.js +0 -2562
  305. package/dist/packem_shared/storage-tier-CL98eOvn.js +0 -85
  306. package/dist/packem_shared/studio-D93XGB-i.js +0 -10413
  307. package/dist/packem_shared/table-_RzNvy3R.js +0 -246
  308. package/dist/packem_shared/table-list-sidebar-Bg7uzbvC.js +0 -832
  309. package/dist/packem_shared/textarea-D3gaCU_-.js +0 -46
  310. package/dist/packem_shared/use-live-admin-Dq6g3daN.js +0 -73
  311. package/dist/packem_shared/use-live-shard-seed-Cuk3dnH0.js +0 -76
  312. package/dist/packem_shared/useDebounced-Dxncpg6z.js +0 -32
  313. package/dist/packem_shared/utils-B05Dmz_H.js +0 -8
  314. package/dist/packem_shared/virtual-rect-CVMUskSm.js +0 -10
@@ -0,0 +1,19 @@
1
+ import{a,c as ee,e as fe,f as Pe}from"./chunk-3XIESWL4.js";var he=ee((de,W)=>{(function(e,r){typeof define=="function"&&define.amd?define([],r):typeof W=="object"&&W.exports?W.exports=r():e.moo=r()})(de,function(){"use strict";var e=Object.prototype.hasOwnProperty,r=Object.prototype.toString,t=typeof new RegExp().sticky=="boolean";function s(n){return n&&r.call(n)==="[object RegExp]"}a(s,"isRegExp");function i(n){return n&&typeof n=="object"&&!s(n)&&!Array.isArray(n)}a(i,"isObject");function l(n){return n.replace(/[-\/\\^$*+?.()|[\]{}]/g,function(o){return o==="-"?"\\x2d":"\\"+o})}a(l,"reEscape");function c(n){var o=new RegExp("|"+n);return o.exec("").length-1}a(c,"reGroups");function h(n){return"("+n+")"}a(h,"reCapture");function v(n){if(!n.length)return"(?!)";var o=n.map(function(u){return"(?:"+u+")"}).join("|");return"(?:"+o+")"}a(v,"reUnion");function S(n){if(typeof n=="string")return"(?:"+l(n)+")";if(s(n)){if(n.ignoreCase)throw new Error("RegExp /i flag not allowed");if(n.global)throw new Error("RegExp /g flag is implied");if(n.sticky)throw new Error("RegExp /y flag is implied");if(n.multiline)throw new Error("RegExp /m flag is implied");return n.source}else throw new Error("Not a pattern: "+n)}a(S,"regexpOrLiteral");function k(n,o){return n.length>o?n:Array(o-n.length+1).join(" ")+n}a(k,"pad");function $(n,o){for(var u=n.length,f=0;;){var g=n.lastIndexOf(`
2
+ `,u-1);if(g===-1||(f++,u=g,f===o)||u===0)break}var d=f<o?0:u+1;return n.substring(d).split(`
3
+ `)}a($,"lastNLines");function K(n){for(var o=Object.getOwnPropertyNames(n),u=[],f=0;f<o.length;f++){var g=o[f],d=n[g],y=[].concat(d);if(g==="include"){for(var w=0;w<y.length;w++)u.push({include:y[w]});continue}var m=[];y.forEach(function(p){i(p)?(m.length&&u.push(M(g,m)),u.push(M(g,p)),m=[]):m.push(p)}),m.length&&u.push(M(g,m))}return u}a(K,"objectToRules");function O(n){for(var o=[],u=0;u<n.length;u++){var f=n[u];if(f.include){for(var g=[].concat(f.include),d=0;d<g.length;d++)o.push({include:g[d]});continue}if(!f.type)throw new Error("Rule has no type: "+JSON.stringify(f));o.push(M(f.type,f))}return o}a(O,"arrayToRules");function M(n,o){if(i(o)||(o={match:o}),o.include)throw new Error("Matching rules cannot also include states");var u={defaultType:n,lineBreaks:!!o.error||!!o.fallback,pop:!1,next:null,push:null,error:!1,fallback:!1,value:null,type:null,shouldThrow:!1};for(var f in o)e.call(o,f)&&(u[f]=o[f]);if(typeof u.type=="string"&&n!==u.type)throw new Error("Type transform cannot be a string (type '"+u.type+"' for token '"+n+"')");var g=u.match;return u.match=Array.isArray(g)?g:g?[g]:[],u.match.sort(function(d,y){return s(d)&&s(y)?0:s(y)?-1:s(d)?1:y.length-d.length}),u}a(M,"ruleOptions");function D(n){return Array.isArray(n)?O(n):K(n)}a(D,"toRules");var N=M("error",{lineBreaks:!0,shouldThrow:!0});function F(n,o){for(var u=null,f=Object.create(null),g=!0,d=null,y=[],w=[],m=0;m<n.length;m++)n[m].fallback&&(g=!1);for(var m=0;m<n.length;m++){var p=n[m];if(p.include)throw new Error("Inheritance is not allowed in stateless lexers");if(p.error||p.fallback){if(u)throw!p.fallback==!u.fallback?new Error("Multiple "+(p.fallback?"fallback":"error")+" rules not allowed (for token '"+p.defaultType+"')"):new Error("fallback and error are mutually exclusive (for token '"+p.defaultType+"')");u=p}var b=p.match.slice();if(g)for(;b.length&&typeof b[0]=="string"&&b[0].length===1;){var q=b.shift();f[q.charCodeAt(0)]=p}if(p.pop||p.push||p.next){if(!o)throw new Error("State-switching options are not allowed in stateless lexers (for token '"+p.defaultType+"')");if(p.fallback)throw new Error("State-switching options are not allowed on fallback tokens (for token '"+p.defaultType+"')")}if(b.length!==0){g=!1,y.push(p);for(var C=0;C<b.length;C++){var P=b[C];if(s(P)){if(d===null)d=P.unicode;else if(d!==P.unicode&&p.fallback===!1)throw new Error("If one rule is /u then all must be")}}var I=v(b.map(S)),T=new RegExp(I);if(T.test(""))throw new Error("RegExp matches empty string: "+T);var L=c(I);if(L>0)throw new Error("RegExp has capture groups: "+T+`
4
+ Use (?: \u2026 ) instead`);if(!p.lineBreaks&&T.test(`
5
+ `))throw new Error("Rule should declare lineBreaks: "+T);w.push(h(I))}}var R=u&&u.fallback,U=t&&!R?"ym":"gm",H=t||R?"":"|";d===!0&&(U+="u");var Ce=new RegExp(v(w)+H,U);return{regexp:Ce,groups:y,fast:f,error:u||N}}a(F,"compileRules");function Q(n){var o=F(D(n));return new _({start:o},"start")}a(Q,"compile");function ue(n,o,u){var f=n&&(n.push||n.next);if(f&&!u[f])throw new Error("Missing state '"+f+"' (in token '"+n.defaultType+"' of state '"+o+"')");if(n&&n.pop&&+n.pop!=1)throw new Error("pop must be 1 (in token '"+n.defaultType+"' of state '"+o+"')")}a(ue,"checkStateGroup");function Me(n,o){var u=n.$all?D(n.$all):[];delete n.$all;var f=Object.getOwnPropertyNames(n);o||(o=f[0]);for(var g=Object.create(null),d=0;d<f.length;d++){var y=f[d];g[y]=D(n[y]).concat(u)}for(var d=0;d<f.length;d++)for(var y=f[d],w=g[y],m=Object.create(null),p=0;p<w.length;p++){var b=w[p];if(b.include){var q=[p,1];if(b.include!==y&&!m[b.include]){m[b.include]=!0;var C=g[b.include];if(!C)throw new Error("Cannot include nonexistent state '"+b.include+"' (in state '"+y+"')");for(var P=0;P<C.length;P++){var I=C[P];w.indexOf(I)===-1&&q.push(I)}}w.splice.apply(w,q),p--}}for(var T=Object.create(null),d=0;d<f.length;d++){var y=f[d];T[y]=F(g[y],!0)}for(var d=0;d<f.length;d++){for(var L=f[d],R=T[L],U=R.groups,p=0;p<U.length;p++)ue(U[p],L,T);for(var H=Object.getOwnPropertyNames(R.fast),p=0;p<H.length;p++)ue(R.fast[H[p]],L,T)}return new _(T,o)}a(Me,"compileStates");function Be(n){for(var o=typeof Map<"u",u=o?new Map:Object.create(null),f=Object.getOwnPropertyNames(n),g=0;g<f.length;g++){var d=f[g],y=n[d],w=Array.isArray(y)?y:[y];w.forEach(function(m){if(typeof m!="string")throw new Error("keyword must be string (in keyword '"+d+"')");o?u.set(m,d):u[m]=d})}return function(m){return o?u.get(m):u[m]}}a(Be,"keywordTransform");var _=a(function(n,o){this.startState=o,this.states=n,this.buffer="",this.stack=[],this.reset()},"Lexer");_.prototype.reset=function(n,o){return this.buffer=n||"",this.index=0,this.line=o?o.line:1,this.col=o?o.col:1,this.queuedToken=o?o.queuedToken:null,this.queuedText=o?o.queuedText:"",this.queuedThrow=o?o.queuedThrow:null,this.setState(o?o.state:this.startState),this.stack=o&&o.stack?o.stack.slice():[],this},_.prototype.save=function(){return{line:this.line,col:this.col,state:this.state,stack:this.stack.slice(),queuedToken:this.queuedToken,queuedText:this.queuedText,queuedThrow:this.queuedThrow}},_.prototype.setState=function(n){if(!(!n||this.state===n)){this.state=n;var o=this.states[n];this.groups=o.groups,this.error=o.error,this.re=o.regexp,this.fast=o.fast}},_.prototype.popState=function(){this.setState(this.stack.pop())},_.prototype.pushState=function(n){this.stack.push(this.state),this.setState(n)};var De=t?function(n,o){return n.exec(o)}:function(n,o){var u=n.exec(o);return u[0].length===0?null:u};_.prototype._getGroup=function(n){for(var o=this.groups.length,u=0;u<o;u++)if(n[u+1]!==void 0)return this.groups[u];throw new Error("Cannot find token type for matched text")};function qe(){return this.value}if(a(qe,"tokenToString"),_.prototype.next=function(){var n=this.index;if(this.queuedGroup){var o=this._token(this.queuedGroup,this.queuedText,n);return this.queuedGroup=null,this.queuedText="",o}var u=this.buffer;if(n!==u.length){var y=this.fast[u.charCodeAt(n)];if(y)return this._token(y,u.charAt(n),n);var f=this.re;f.lastIndex=n;var g=De(f,u),d=this.error;if(g==null)return this._token(d,u.slice(n,u.length),n);var y=this._getGroup(g),w=g[0];return d.fallback&&g.index!==n?(this.queuedGroup=y,this.queuedText=w,this._token(d,u.slice(n,g.index),n)):this._token(y,w,n)}},_.prototype._token=function(n,o,u){var f=0;if(n.lineBreaks){var g=/\n/g,d=1;if(o===`
6
+ `)f=1;else for(;g.exec(o);)f++,d=g.lastIndex}var y={type:typeof n.type=="function"&&n.type(o)||n.defaultType,value:typeof n.value=="function"?n.value(o):o,text:o,toString:qe,offset:u,lineBreaks:f,line:this.line,col:this.col},w=o.length;if(this.index+=w,this.line+=f,f!==0?this.col=w-d+1:this.col+=w,n.shouldThrow){var m=new Error(this.formatError(y,"invalid syntax"));throw m}return n.pop?this.popState():n.push?this.pushState(n.push):n.next&&this.setState(n.next),y},typeof Symbol<"u"&&Symbol.iterator){var X=a(function(n){this.lexer=n},"LexerIterator");X.prototype.next=function(){var n=this.lexer.next();return{value:n,done:!n}},X.prototype[Symbol.iterator]=function(){return this},_.prototype[Symbol.iterator]=function(){return new X(this)}}return _.prototype.formatError=function(n,o){if(n==null)var u=this.buffer.slice(this.index),n={text:u,offset:this.index,lineBreaks:u.indexOf(`
7
+ `)===-1?0:1,line:this.line,col:this.col};var f=2,g=Math.max(n.line-f,1),d=n.line+f,y=String(d).length,w=$(this.buffer,this.line-n.line+f+1).slice(0,5),m=[];m.push(o+" at line "+n.line+" col "+n.col+":"),m.push("");for(var p=0;p<w.length;p++){var b=w[p],q=g+p;m.push(k(String(q),y)+" "+b),q===n.line&&m.push(k("",y+n.col+1)+"^")}return m.join(`
8
+ `)},_.prototype.clone=function(){return new _(this.states,this.state)},_.prototype.has=function(n){return!0},{compile:Q,states:Me,error:Object.freeze({error:!0}),fallback:Object.freeze({fallback:!0}),keywords:Be}})});var pe=ee(A=>{"use strict";var Ne=A&&A.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(A,"__esModule",{value:!0});A.lexer=A.states=void 0;var Fe=Ne(he());A.states={body:{doubleapos:{match:"''",value:a(()=>"'","value")},quoted:{lineBreaks:!0,match:/'[{}#](?:[^']|'')*'(?!')/u,value:a(e=>e.slice(1,-1).replace(/''/g,"'"),"value")},argument:{lineBreaks:!0,match:/\{\s*[^\p{Pat_Syn}\p{Pat_WS}]+\s*/u,push:"arg",value:a(e=>e.substring(1).trim(),"value")},octothorpe:"#",end:{match:"}",pop:1},content:{lineBreaks:!0,match:/[^][^{}#']*/u}},arg:{select:{lineBreaks:!0,match:/,\s*(?:plural|select|selectordinal)\s*,\s*/u,next:"select",value:a(e=>e.split(",")[1].trim(),"value")},"func-args":{lineBreaks:!0,match:/,\s*[^\p{Pat_Syn}\p{Pat_WS}]+\s*,/u,next:"body",value:a(e=>e.split(",")[1].trim(),"value")},"func-simple":{lineBreaks:!0,match:/,\s*[^\p{Pat_Syn}\p{Pat_WS}]+\s*/u,value:a(e=>e.substring(1).trim(),"value")},end:{match:"}",pop:1}},select:{offset:{lineBreaks:!0,match:/\s*offset\s*:\s*\d+\s*/u,value:a(e=>e.split(":")[1].trim(),"value")},case:{lineBreaks:!0,match:/\s*(?:=\d+|[^\p{Pat_Syn}\p{Pat_WS}]+)\s*\{/u,push:"body",value:a(e=>e.substring(0,e.indexOf("{")).trim(),"value")},end:{match:/\s*\}/u,pop:1}}};A.lexer=Fe.default.states(A.states)});var me=ee(z=>{"use strict";Object.defineProperty(z,"__esModule",{value:!0});z.ParseError=void 0;z.parse=Le;var ye=pe(),j=a(e=>({offset:e.offset,line:e.line,col:e.col,text:e.text,lineBreaks:e.lineBreaks}),"getContext"),te=a(e=>e==="plural"||e==="select"||e==="selectordinal","isSelectType");function Ie(e,r){let t="",s="";for(let l of r){let c=l.ctx.text;switch(s+=c,l.type){case"content":t+=l.value;break;case"argument":case"function":case"octothorpe":t+=c;break;default:throw new x(e,`Unsupported part in strict mode function arg style: ${c}`)}}return[{type:"content",value:t.trim(),ctx:Object.assign({},r[0].ctx,{text:s})}]}a(Ie,"strictArgStyleParam");var Re=["number","date","time","spellout","ordinal","duration"],ge=["zero","one","two","few","many","other"],x=class extends Error{static{a(this,"ParseError")}constructor(r,t){super(ye.lexer.formatError(r,t))}};z.ParseError=x;var re=class{static{a(this,"Parser")}constructor(r,t){var s,i,l,c;this.lexer=ye.lexer.reset(r),this.cardinalKeys=(s=t?.cardinal)!==null&&s!==void 0?s:ge,this.ordinalKeys=(i=t?.ordinal)!==null&&i!==void 0?i:ge,this.strict=(l=t?.strict)!==null&&l!==void 0?l:!1,this.strictPluralKeys=(c=t?.strictPluralKeys)!==null&&c!==void 0?c:!0}parse(){return this.parseBody(!1,!0)}checkSelectKey(r,t,s){if(s[0]==="="){if(t==="select")throw new x(r,`The case ${s} is not valid with select`)}else if(t!=="select"){let i=t==="plural"?this.cardinalKeys:this.ordinalKeys;if(this.strictPluralKeys&&i.length>0&&!i.includes(s)){let l=`The ${t} case ${s} is not valid in this locale`;throw new x(r,l)}}}parseSelect({value:r},t,s,i){let l={type:i,arg:r,cases:[],ctx:s};i==="plural"||i==="selectordinal"?t=!0:this.strict&&(t=!1);for(let c of this.lexer)switch(c.type){case"offset":if(i==="select")throw new x(c,"Unexpected plural offset for select");if(l.cases.length>0)throw new x(c,"Plural offset must be set before cases");l.pluralOffset=Number(c.value),s.text+=c.text,s.lineBreaks+=c.lineBreaks;break;case"case":{this.checkSelectKey(c,i,c.value),l.cases.push({key:c.value,tokens:this.parseBody(t),ctx:j(c)});break}case"end":return l;default:throw new x(c,`Unexpected lexer token: ${c.type}`)}throw new x(null,"Unexpected message end")}parseArgToken(r,t){let s=j(r),i=this.lexer.next();if(!i)throw new x(null,"Unexpected message end");if(s.text+=i.text,s.lineBreaks+=i.lineBreaks,this.strict&&(i.type==="func-simple"||i.type==="func-args")&&!Re.includes(i.value)){let l=`Invalid strict mode function arg type: ${i.value}`;throw new x(r,l)}switch(i.type){case"end":return{type:"argument",arg:r.value,ctx:s};case"func-simple":{let l=this.lexer.next();if(!l)throw new x(null,"Unexpected message end");if(l.type!=="end")throw new x(l,`Unexpected lexer token: ${l.type}`);if(s.text+=l.text,te(i.value.toLowerCase()))throw new x(i,`Invalid type identifier: ${i.value}`);return{type:"function",arg:r.value,key:i.value,ctx:s}}case"func-args":{if(te(i.value.toLowerCase())){let c=`Invalid type identifier: ${i.value}`;throw new x(i,c)}let l=this.parseBody(this.strict?!1:t);return this.strict&&l.length>0&&(l=Ie(r,l)),{type:"function",arg:r.value,key:i.value,param:l,ctx:s}}case"select":if(te(i.value))return this.parseSelect(r,t,s,i.value);throw new x(i,`Unexpected select type ${i.value}`);default:throw new x(i,`Unexpected lexer token: ${i.type}`)}}parseBody(r,t){let s=[],i=null;for(let l of this.lexer)if(l.type==="argument")i&&(i=null),s.push(this.parseArgToken(l,r));else if(l.type==="octothorpe"&&r)i&&(i=null),s.push({type:"octothorpe",ctx:j(l)});else{if(l.type==="end"&&!t)return s;{let c=l.value;if(!r&&l.type==="quoted"&&c[0]==="#"){if(c.includes("{")){let h=`Unsupported escape pattern: ${c}`;throw new x(l,h)}c=l.text}i?(i.value+=c,i.ctx.text+=l.text,i.ctx.lineBreaks+=l.lineBreaks):(i={type:"content",value:c,ctx:j(l)},s.push(i))}}if(t)return s;throw new x(null,"Unexpected message end")}};function Le(e,r={}){return new re(e,r).parse()}a(Le,"parse")});var xe=fe(me(),1);var E=class extends Error{static{a(this,"DateFormatError")}constructor(r,t,s){super(r),this.token=t,this.type=s||"error"}},ve=a(e=>e<4?"short":e===4?"long":"narrow","alpha"),G=a(e=>e%2===0?"2-digit":"numeric","numeric");function Ue(e,r){switch(e.char){case"y":return{year:G(e.width)};case"r":return{calendar:"gregory",year:"numeric"};default:return r(`${e.desc} is not supported; falling back to year:numeric`,E.WARNING),{year:"numeric"}}}a(Ue,"yearOptions");function ze(e,r){switch(e.width){case 1:return"numeric";case 2:return"2-digit";case 3:return"short";case 4:return"long";case 5:return"narrow";default:r(`${e.desc} is not supported with width ${e.width}`);return}}a(ze,"monthStyle");function Ge(e,r){let{char:t,desc:s,width:i}=e;if(t==="d")return G(i);r(`${s} is not supported`)}a(Ge,"dayStyle");function Ke(e,r){let{char:t,desc:s,width:i}=e;if((t==="c"||t==="e")&&i<3){let l=`Numeric value is not supported for ${s}; falling back to weekday:short`;r(l,E.WARNING)}return ve(i)}a(Ke,"weekdayStyle");function He(e){let r=G(e.width),t;switch(e.char){case"h":t="h12";break;case"H":t="h23";break;case"k":t="h24";break;case"K":t="h11";break}return t?{hour:r,hourCycle:t}:{hour:r}}a(He,"hourOptions");function We(e,r){let{char:t,desc:s,width:i}=e;switch(t){case"v":case"z":return i===4?"long":"short";case"V":if(i===4)return"long";r(`${s} is not supported with width ${i}`);return;case"X":r(`${s} is not supported`);return}return"short"}a(We,"timeZoneNameStyle");function je(e,r){switch(e.field){case"era":return{era:ve(e.width)};case"year":return Ue(e,r);case"month":return{month:ze(e,r)};case"day":return{day:Ge(e,r)};case"weekday":return{weekday:Ke(e,r)};case"period":return;case"hour":return He(e);case"min":return{minute:G(e.width)};case"sec":return{second:G(e.width)};case"tz":return{timeZoneName:We(e,r)};case"quarter":case"week":case"sec-frac":case"ms":r(`${e.desc} is not supported`)}}a(je,"compileOptions");function ne(e,r,t=s=>{throw s}){let s={timeZone:r},i=[];for(let l of e){let{error:c,field:h,str:v}=l;if(c){let k=new E(c.message,l);k.stack=c.stack,t(k)}if(v){let k=`Ignoring string part: ${v}`;t(new E(k,l,E.WARNING))}h&&(i.indexOf(h)===-1?i.push(h):t(new E(`Duplicate ${h} token`,l)));let S=je(l,(k,$)=>t(new E(k,l,$)));S&&Object.assign(s,S)}return s}a(ne,"getDateFormatOptions");var Ze={G:{field:"era",desc:"Era"},y:{field:"year",desc:"Year"},Y:{field:"year",desc:'Year of "Week of Year"'},u:{field:"year",desc:"Extended year"},U:{field:"year",desc:"Cyclic year name"},r:{field:"year",desc:"Related Gregorian year"},Q:{field:"quarter",desc:"Quarter"},q:{field:"quarter",desc:"Stand-alone quarter"},M:{field:"month",desc:"Month in year"},L:{field:"month",desc:"Stand-alone month in year"},w:{field:"week",desc:"Week of year"},W:{field:"week",desc:"Week of month"},d:{field:"day",desc:"Day in month"},D:{field:"day",desc:"Day of year"},F:{field:"day",desc:"Day of week in month"},g:{field:"day",desc:"Modified julian day"},E:{field:"weekday",desc:"Day of week"},e:{field:"weekday",desc:"Local day of week"},c:{field:"weekday",desc:"Stand-alone local day of week"},a:{field:"period",desc:"AM/PM marker"},b:{field:"period",desc:"AM/PM/noon/midnight marker"},B:{field:"period",desc:"Flexible day period"},h:{field:"hour",desc:"Hour in AM/PM (1~12)"},H:{field:"hour",desc:"Hour in day (0~23)"},k:{field:"hour",desc:"Hour in day (1~24)"},K:{field:"hour",desc:"Hour in AM/PM (0~11)"},j:{field:"hour",desc:"Hour in preferred cycle"},J:{field:"hour",desc:"Hour in preferred cycle without marker"},C:{field:"hour",desc:"Hour in preferred cycle with flexible marker"},m:{field:"min",desc:"Minute in hour"},s:{field:"sec",desc:"Second in minute"},S:{field:"sec-frac",desc:"Fractional second"},A:{field:"ms",desc:"Milliseconds in day"},z:{field:"tz",desc:"Time Zone: specific non-location"},Z:{field:"tz",desc:"Time Zone"},O:{field:"tz",desc:"Time Zone: localized"},v:{field:"tz",desc:"Time Zone: generic non-location"},V:{field:"tz",desc:"Time Zone: ID"},X:{field:"tz",desc:"Time Zone: ISO8601 with Z"},x:{field:"tz",desc:"Time Zone: ISO8601"}},we=a(e=>e>="A"&&e<="Z"||e>="a"&&e<="z","isLetter");function Je(e,r){let t=e[r],s=1;for(;e[++r]===t;)++s;let i=Ze[t];if(!i){let l=`The letter ${t} is not a valid field identifier`;return{char:t,error:new Error(l),width:s}}return{char:t,field:i.field,desc:i.desc,width:s}}a(Je,"readFieldToken");function Ve(e,r){let t=e[++r],s=2;if(t==="'")return{char:"'",str:t,width:s};for(;;){let i=e[++r];if(++s,i===void 0){let l=`Unterminated quoted literal in pattern: ${t||e}`;return{char:"'",error:new Error(l),str:t,width:s}}else if(i==="'"){if(e[++r]!=="'")return{char:"'",str:t,width:s};++s}t+=i}}a(Ve,"readQuotedToken");function Ye(e,r){let t=e[r];if(!t)return null;if(we(t))return Je(e,r);if(t==="'")return Ve(e,r);let s=t,i=1;for(;;){let l=e[++r];if(!l||we(l)||l==="'")return{char:t,str:s,width:i};s+=l,i+=1}}a(Ye,"readToken");function Z(e){let r=[],t=0;for(;;){let s=Ye(e,t);if(!s)return r;r.push(s),t+=s.width}}a(Z,"parseDateTokens");function be(e,r){return e.filter(t=>t.type!=="content").length?e.map(t=>{if(t.type==="content")return r(t.value);if(t.type==="octothorpe")return"#";if(t.type==="argument")return[t.arg];if(t.type==="function"){let l=t?.param?.[0];if(t.key==="date"&&l){let c=Qe(l.value.trim(),h=>{throw new Error(`Unable to compile date expression: ${h.message}`)});return[t.arg,t.key,c]}return l?[t.arg,t.key,l.value.trim()]:[t.arg,t.key]}let s=t.pluralOffset,i={};return t.cases.forEach(({key:l,tokens:c})=>{let h=l[0]==="="?l.slice(1):l;i[h]=be(c,r)}),[t.arg,t.type,{offset:s,...i}]}):e.map(t=>r(t.value))}a(be,"processTokens");function Qe(e,r){if(/^::/.test(e)){let t=Z(e.substring(2));return ne(t,void 0,r)}return e}a(Qe,"compileDateExpression");function Xe(e,r=t=>t){return be((0,xe.parse)(e),r)}a(Xe,"compileMessageOrThrow");function _e(e,r=t=>t){try{return Xe(e,r)}catch(t){return console.error(`${t.message}
9
+
10
+ Message: ${e}`),[e]}}a(_e,"compileMessage");var B=a(e=>typeof e=="string","isString"),et=a(e=>typeof e=="function","isFunction"),ke=new Map,Te="en";function oe(e){return[...Array.isArray(e)?e:[e],Te]}a(oe,"normalizeLocales");function le(e,r,t){let s=oe(e);t||(t="default");let i;if(typeof t=="string")switch(i={day:"numeric",month:"short",year:"numeric"},t){case"full":i.weekday="long";case"long":i.month="long";break;case"short":i.month="numeric";break}else i=t;return J(()=>V("date",s,t),()=>new Intl.DateTimeFormat(s,i)).format(B(r)?new Date(r):r)}a(le,"date");function tt(e,r,t){let s;if(t||(t="default"),typeof t=="string")switch(s={second:"numeric",minute:"numeric",hour:"numeric"},t){case"full":case"long":s.timeZoneName="short";break;case"short":delete s.second}else s=t;return le(e,r,s)}a(tt,"time");function se(e,r,t){let s=oe(e);return J(()=>V("number",s,t),()=>new Intl.NumberFormat(s,t)).format(r)}a(se,"number");function Se(e,r,t,{offset:s=0,...i}){let l=oe(e),c=r?J(()=>V("plural-ordinal",l),()=>new Intl.PluralRules(l,{type:"ordinal"})):J(()=>V("plural-cardinal",l),()=>new Intl.PluralRules(l,{type:"cardinal"}));return i[t]??i[c.select(t-s)]??i.other}a(Se,"plural");function J(e,r){let t=e(),s=ke.get(t);return s||(s=r(),ke.set(t,s)),s}a(J,"getMemoized");function V(e,r,t){let s=r.join("-");return`${e}-${s}-${JSON.stringify(t)}`}a(V,"cacheKey");var Ee=/\\u[a-fA-F0-9]{4}|\\x[a-fA-F0-9]{2}/,Oe=a(e=>e.replace(/\\u([a-fA-F0-9]{4})|\\x([a-fA-F0-9]{2})/g,(r,t,s)=>{if(t){let i=parseInt(t,16);return String.fromCharCode(i)}else{let i=parseInt(s,16);return String.fromCharCode(i)}}),"decodeEscapeSequences"),Ae="%__lingui_octothorpe__%",rt=a((e,r,t={})=>{let s=r||e,i=a(c=>typeof c=="object"?c:t[c],"style"),l=a((c,h)=>{let v=Object.keys(t).length?i("number"):void 0,S=se(s,c,v);return h.replace(new RegExp(Ae,"g"),S)},"replaceOctothorpe");return{plural:a((c,h)=>{let{offset:v=0}=h,S=Se(s,!1,c,h);return l(c-v,S)},"plural"),selectordinal:a((c,h)=>{let{offset:v=0}=h,S=Se(s,!0,c,h);return l(c-v,S)},"selectordinal"),select:nt,number:a((c,h)=>se(s,c,i(h)||{style:h}),"number"),date:a((c,h)=>le(s,c,i(h)||h),"date"),time:a((c,h)=>tt(s,c,i(h)||h),"time")}},"getDefaultFormats"),nt=a((e,r)=>r[e]??r.other,"selectFormatter");function st(e,r,t){return(s={},i)=>{let l=rt(r,t,i),c=a((v,S=!1)=>Array.isArray(v)?v.reduce((k,$)=>{if($==="#"&&S)return k+Ae;if(B($))return k+$;let[K,O,M]=$,D={};O==="plural"||O==="selectordinal"||O==="select"?Object.entries(M).forEach(([F,Q])=>{D[F]=c(Q,O==="plural"||O==="selectordinal")}):D=M;let N;if(O){let F=l[O];N=F(s[K],D)}else N=s[K];return N==null?k:k+N},""):v,"formatMessage"),h=c(e);return B(h)&&Ee.test(h)?Oe(h):B(h)?h:h?String(h):""}}a(st,"interpolate");var ie=class{static{a(this,"EventEmitter")}_events={};on(r,t){return this._events[r]??=new Set,this._events[r].add(t),()=>this.removeListener(r,t)}removeListener(r,t){let s=this._events[r];s?.delete(t),s?.size===0&&delete this._events[r]}emit(r,...t){let s=this._events[r];if(s)for(let i of[...s])i.apply(this,t)}},ae=class extends ie{static{a(this,"I18n")}_locale="";_locales;_messages={};_missing;_messageCompiler;constructor(r){super(),r.missing!=null&&(this._missing=r.missing),r.messages!=null&&this.load(r.messages),(typeof r.locale=="string"||r.locales)&&this.activate(r.locale??Te,r.locales)}get locale(){return this._locale}get locales(){return this._locales}get messages(){return this._messages[this._locale]??{}}setMessagesCompiler(r){return this._messageCompiler=r,this}_load(r,t){let s=this._messages[r];s?Object.assign(s,t):this._messages[r]=t}load(r,t){typeof r=="string"&&typeof t=="object"?this._load(r,t):Object.entries(r).forEach(([s,i])=>this._load(s,i)),this.emit("change")}loadAndActivate({locale:r,locales:t,messages:s}){this._locale=r,this._locales=t||void 0,this._messages[this._locale]=s,this.emit("change")}activate(r,t){this._locale=r,this._locales=t,this.emit("change")}_(r,t,s){if(!this.locale)throw new Error("Lingui: Attempted to call a translation function without setting a locale.\nMake sure to call `i18n.activate(locale)` before using Lingui functions.\nThis issue may also occur due to a race condition in your initialization logic.");let i=s?.message;r||(r=""),B(r)||(t=r.values||t,i=r.message,r=r.id);let l=this.messages[r],c=l===void 0,h=this._missing;if(h&&c)return et(h)?h(this._locale,r):h;c&&this.emit("missing",{id:r,locale:this._locale});let v=l||i||r;return B(v)&&(this._messageCompiler?v=this._messageCompiler(v):console.warn(`Uncompiled message detected! Message:
11
+
12
+ > ${v}
13
+
14
+ That means you use raw catalog or your catalog doesn't have a translation for the message and fallback was used.
15
+ ICU features such as interpolation and plurals will not work properly for that message.
16
+
17
+ Please compile your catalog first.
18
+ `)),B(v)&&Ee.test(v)?Oe(v):B(v)?v:st(v,this._locale,this._locales)(t,s?.formats)}t=this._.bind(this);date(r,t){return le(this._locales||this._locale,r,t)}number(r,t){return se(this._locales||this._locale,r,t)}};function ce(e={}){return new ae(e)}a(ce,"setupI18n");var Nt=ce();var Y=fe(Pe(),1);var it={},$e="en",at={en:it},ot=a((e=$e,r=at)=>{let t=ce();t.setMessagesCompiler(_e);for(let[s,i]of Object.entries(r))t.load(s,i);return t.activate(r[e]===void 0?$e:e),t},"f"),lt=ot(),ct=(0,Y.createContext)(lt),Ut=a(()=>{let e=(0,Y.use)(ct);return(r,t)=>e._(r,t)},"L");var Kt=a((e,r,t,s,i)=>{switch(r){case"action":return e.action(t,s,i);case"mutation":return e.mutation(t,s,i);default:return e.query(t,s,i)}},"c"),Ht=a(e=>({__lunoraRef:e}),"l"),Wt=a(e=>{let r=e.trim();return r===""?{}:{shardKey:r}},"u"),jt=a(e=>e instanceof Error?e.message:String(e),"f"),Zt=a(e=>{if(e===null||typeof e!="object"||!("code"in e))return;let{code:r}=e;return typeof r=="string"?r:void 0},"g"),Jt=a(e=>{if(e===null||typeof e!="object"||!("hint"in e))return;let{hint:r}=e;return typeof r=="string"?r:Array.isArray(r)?r.filter(t=>typeof t=="string").join(`
19
+ `):void 0},"y"),Vt=a(e=>{if(e===null||typeof e!="object"||!("docsUrl"in e))return;let r=e.docsUrl;if(typeof r=="string")try{let{protocol:t}=new URL(r);return t==="http:"||t==="https:"?r:void 0}catch{return}},"d"),ut=a(e=>{if(e==null)return"\u2014";if(e<1024)return`${e.toString()} B`;let r=["KB","MB","GB","TB"],t=e/1024,s=0;for(;t>=1024&&s<r.length-1;)t/=1024,s+=1;return`${t.toFixed(1)} ${r[s]??"TB"}`},"a"),ft=a(e=>{if(e==null)return"";switch(typeof e){case"bigint":case"boolean":case"number":return e.toString();case"string":return e;case"symbol":return e.toString();default:return e instanceof ArrayBuffer||ArrayBuffer.isView(e)?`<bytes: ${ut(e.byteLength)}>`:JSON.stringify(e)}},"s"),Yt=a((e,r)=>typeof r=="bigint"||r instanceof ArrayBuffer||ArrayBuffer.isView(r)?ft(r):r,"p"),dt=a((e,r)=>{e.catch(t=>{})},"n"),Qt=a(e=>{if(e!==void 0&&e!=="")return e;let r=globalThis.location;return r?.origin!==void 0&&r.origin!==""?r.origin:"http://localhost:5173"},"h"),Xt=a(e=>{let r="navigator"in globalThis?globalThis.navigator.clipboard:void 0;return r===void 0?!1:(dt(r.writeText(e)),!0)},"b"),er=a((e,r="")=>{if(e==null||e==="")return r;let t=new Date(e);return Number.isNaN(t.getTime())?String(e):t.toLocaleString()},"m");export{ot as a,lt as b,ct as c,Ut as d,Kt as e,Ht as f,Wt as g,jt as h,Zt as i,Jt as j,Vt as k,ut as l,ft as m,Yt as n,dt as o,Qt as p,Xt as q,er as r};
@@ -0,0 +1 @@
1
+ import{a as o,c as r}from"./chunk-2OUPA2WJ.js";import{a as i,e as d,f as l}from"./chunk-3XIESWL4.js";var s={clipPath:"inset(50%)",overflow:"hidden",whiteSpace:"nowrap",border:0,padding:0,width:1,height:1,margin:-1},p={...s,position:"fixed",top:0,left:0},u={...s,position:"absolute"};var a=d(l(),1);function b(e,c){let t=a.useRef(e),n=r(c);o(()=>{t.current!==e&&n(t.current)},[e,n]),o(()=>{t.current=e},[e])}i(b,"useValueChanged");export{p as a,u as b,b as c};
@@ -0,0 +1 @@
1
+ import{a as We,b as De,c as Fe,d as Oe,e as be}from"./chunk-UU2QJMGJ.js";import"./chunk-2PJNAWB3.js";import"./chunk-SD4BERSA.js";import"./chunk-IC4L6G56.js";import{a as qe}from"./chunk-Q2Q7FR3R.js";import{a as Ve}from"./chunk-IGCNMZSB.js";import"./chunk-2QSHLBCO.js";import"./chunk-BGBLQ563.js";import"./chunk-IVFHIQOT.js";import"./chunk-QBWRC5YX.js";import{a as ze}from"./chunk-3CWGJYBB.js";import{a as _e}from"./chunk-RMN2JN4S.js";import"./chunk-GRL5MG3Z.js";import"./chunk-7T7UOTYK.js";import{R as ke}from"./chunk-CFPZYHPY.js";import"./chunk-T6VMSOBB.js";import"./chunk-7QIFDWQV.js";import{c as ie}from"./chunk-FXCBF4XT.js";import"./chunk-2OUPA2WJ.js";import{b as me}from"./chunk-THIXMMZD.js";import"./chunk-6ST5ECQA.js";import"./chunk-QLQADHFE.js";import{a as D}from"./chunk-VDW32UET.js";import{c as Te}from"./chunk-4D7XIQ5Q.js";import{f as Ne}from"./chunk-DBWOWJYT.js";import"./chunk-XBDKZZ67.js";import{a as Ce}from"./chunk-XQCVZAGU.js";import{a as Le,b as je,c as Re,d as pe,e as W,f as L}from"./chunk-MIQTKZAR.js";import{a as Me,e as Ae}from"./chunk-UZERI5YC.js";import{d as ue,f as le,g as we,h as Ke,o as re,r as Ee}from"./chunk-IUYFXK4X.js";import{a as Ie,b as $e}from"./chunk-XNGYYOLS.js";import{a as d,e as ye,f as Be,g as Ge,h as He}from"./chunk-3XIESWL4.js";var ge=ye(Ge(),1);var ne=ye(Be(),1);var t=ye(He(),1);var Se="none",Pe=["all","open","resolved","ignored"],Je=["critical","high","medium","low"],Qe=le(D.resolveIssue),Xe=le(D.ignoreIssue),Ue=le(D.assignIssue),Ye=le(D.setIssueSeverity),Ze=le(D.explainIssue),es=d(n=>Array.isArray(n?.issues)?n.issues:[],"Ye"),ss=d(n=>n==="resolved"?"success":n==="ignored"?"secondary":"warning","Ze"),ts=d(n=>n==="critical"?"destructive":n==="high"?"warning":n==="medium"?"info":"secondary","Pe"),as=d(n=>{let e=(0,ge.c)(44),{expanded:u,issue:s,shardKey:$}=n,i=Ne(),r=ue(),[a,o]=(0,ne.useState)(void 0),{busy:_,error:C,run:j}=qe(),K;e[0]!==i||e[1]!==s||e[2]!==j||e[3]!==$?(K=d(()=>{o(void 0),j(async()=>{let g={culprit:s.culprit,sampleMessage:s.sampleMessage,title:s.title},I=await i.query(Ze,g,we($));o(I)})},"K"),e[0]=i,e[1]=s,e[2]=j,e[3]=$,e[4]=K):K=e[4];let z=K;if(!u)return null;let k;if(e[5]!==s.sampleMessage){let g=$e(s.sampleMessage);k=g===void 0?void 0:Ie(g.body),e[5]=s.sampleMessage,e[6]=k}else k=e[6];let E=k,T=`issues-detail-${s.hash}`,h;e[7]!==s.sampleMessage?(h=(0,t.jsx)("p",{className:"whitespace-pre-wrap font-mono text-xs text-muted-foreground",children:s.sampleMessage}),e[7]=s.sampleMessage,e[8]=h):h=e[8];let x;e[9]!==r?(x=r("Suggested fix"),e[9]=r,e[10]=x):x=e[10];let M;e[11]!==x?(M=(0,t.jsx)("div",{className:"text-xs font-medium text-muted-foreground",children:x}),e[11]=x,e[12]=M):M=e[12];let v;e[13]!==E||e[14]!==s.hash||e[15]!==r?(v=E===void 0?(0,t.jsx)("p",{className:"mt-1 text-sm text-muted-foreground","data-testid":`issues-hint-empty-${s.hash}`,children:r("No known fix for this error yet.")}):(0,t.jsx)("p",{className:"mt-1 whitespace-pre-wrap text-sm","data-testid":`issues-hint-${s.hash}`,children:E}),e[13]=E,e[14]=s.hash,e[15]=r,e[16]=v):v=e[16];let y;e[17]!==M||e[18]!==v?(y=(0,t.jsxs)("div",{children:[M,v]}),e[17]=M,e[18]=v,e[19]=y):y=e[19];let w=`issues-explain-${s.hash}`,b;e[20]!==_||e[21]!==r?(b=r(_?"Explaining\u2026":"Explain in plain language"),e[20]=_,e[21]=r,e[22]=b):b=e[22];let m;e[23]!==_||e[24]!==z||e[25]!==b||e[26]!==w?(m=(0,t.jsx)("div",{children:(0,t.jsx)(ie,{"data-testid":w,disabled:_,onClick:z,size:"sm",type:"button",variant:"outline",children:b})}),e[23]=_,e[24]=z,e[25]=b,e[26]=w,e[27]=m):m=e[27];let f;e[28]!==C||e[29]!==s.hash?(f=C!==null&&(0,t.jsx)("p",{className:"text-xs text-destructive","data-testid":`issues-explain-error-${s.hash}`,role:"alert",children:C}),e[28]=C,e[29]=s.hash,e[30]=f):f=e[30];let p;e[31]!==a||e[32]!==s.hash||e[33]!==r?(p=a!==void 0&&(a.degraded?(0,t.jsx)("p",{className:"text-xs text-muted-foreground","data-testid":`issues-degraded-${s.hash}`,children:a.reason==="no-ai-binding"?r("No AI binding is configured. Wire an AI binding to enable plain-language explanations \u2014 the suggested fix above is always available."):r("The AI model could not explain this error right now. The suggested fix above still applies.")}):(0,t.jsxs)("div",{"data-testid":`issues-explanation-${s.hash}`,children:[(0,t.jsx)("div",{className:"text-xs font-medium text-muted-foreground",children:r("AI explanation")}),(0,t.jsx)("p",{className:"mt-1 whitespace-pre-wrap text-sm",children:a.explanation}),a.groundedId===void 0&&(0,t.jsx)("p",{className:"mt-1 text-xs text-muted-foreground","data-testid":`issues-ungrounded-${s.hash}`,children:r("No catalog fix matched this error, so this explanation is the model's own reading of the message. Verify before acting on it.")}),(0,t.jsx)("p",{className:"mt-1 text-[0.7rem] text-muted-foreground",children:r("Generated by {model}",{model:a.model})})]})),e[31]=a,e[32]=s.hash,e[33]=r,e[34]=p):p=e[34];let c;e[35]!==m||e[36]!==f||e[37]!==p||e[38]!==h||e[39]!==y?(c=(0,t.jsx)(L,{className:"bg-muted/30",colSpan:7,children:(0,t.jsxs)("div",{className:"flex flex-col gap-3 py-1",children:[h,y,m,f,p]})}),e[35]=m,e[36]=f,e[37]=p,e[38]=h,e[39]=y,e[40]=c):c=e[40];let S;return e[41]!==c||e[42]!==T?(S=(0,t.jsx)(pe,{"data-testid":T,children:c}),e[41]=c,e[42]=T,e[43]=S):S=e[43],S},"es"),is=d(n=>{let e=(0,ge.c)(119),{busy:u,issue:s,rowError:$,runTriage:i,shardKey:r}=n,a=ue(),[o,_]=(0,ne.useState)(!1),C;e[0]===Symbol.for("react.memo_cache_sentinel")?(C=d(()=>{_(ls)},"C"),e[0]=C):C=e[0];let j=C,K;e[1]!==s.hash||e[2]!==i?(K=d(ae=>{let ce=ae===null||ae===Se?null:ae;re(i(s.hash,Ye,{severity:ce}))},"K"),e[1]=s.hash,e[2]=i,e[3]=K):K=e[3];let z=K,k;e[4]!==s.hash||e[5]!==i?(k=d(ae=>{if(ae.key!=="Enter")return;let ce=ae.currentTarget.value.trim();re(i(s.hash,Ue,{assignee:ce===""?null:ce}))},"k"),e[4]=s.hash,e[5]=i,e[6]=k):k=e[6];let E=k,T=`issues-row-${s.hash}`,h;e[7]!==a?(h=a("Toggle issue details"),e[7]=a,e[8]=h):h=e[8];let x=`issues-toggle-${s.hash}`,M=`mt-1 size-3 shrink-0 text-muted-foreground transition-transform ${o?"rotate-90":""}`,v;e[9]===Symbol.for("react.memo_cache_sentinel")?(v=(0,t.jsx)("path",{d:"m9 6 6 6-6 6"}),e[9]=v):v=e[9];let y;e[10]!==M?(y=(0,t.jsx)("svg",{"aria-hidden":"true",className:M,fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,viewBox:"0 0 24 24",children:v}),e[10]=M,e[11]=y):y=e[11];let w;e[12]!==s.title?(w=(0,t.jsx)("span",{className:"block truncate font-medium",title:s.title,children:s.title}),e[12]=s.title,e[13]=w):w=e[13];let b;e[14]!==s.culprit?(b=(0,t.jsx)("span",{className:"block truncate font-mono text-xs text-muted-foreground",title:s.culprit,children:s.culprit}),e[14]=s.culprit,e[15]=b):b=e[15];let m;e[16]!==w||e[17]!==b?(m=(0,t.jsxs)("span",{className:"min-w-0",children:[w,b]}),e[16]=w,e[17]=b,e[18]=m):m=e[18];let f;e[19]!==o||e[20]!==m||e[21]!==h||e[22]!==x||e[23]!==y?(f=(0,t.jsxs)("button",{"aria-expanded":o,"aria-label":h,className:"flex w-full items-start gap-2 text-left","data-testid":x,onClick:j,type:"button",children:[y,m]}),e[19]=o,e[20]=m,e[21]=h,e[22]=x,e[23]=y,e[24]=f):f=e[24];let p;e[25]!==s.hash||e[26]!==$?(p=$!==void 0&&(0,t.jsx)("p",{className:"mt-1 text-xs text-destructive","data-testid":`issues-action-error-${s.hash}`,role:"alert",children:$}),e[25]=s.hash,e[26]=$,e[27]=p):p=e[27];let c;e[28]!==f||e[29]!==p?(c=(0,t.jsxs)(L,{className:"max-w-80",children:[f,p]}),e[28]=f,e[29]=p,e[30]=c):c=e[30];let S=`issues-status-${s.hash}`,g;e[31]!==s.status?(g=ss(s.status),e[31]=s.status,e[32]=g):g=e[32];let I;e[33]!==s.status||e[34]!==S||e[35]!==g?(I=(0,t.jsx)(L,{children:(0,t.jsx)(me,{"data-testid":S,variant:g,children:s.status})}),e[33]=s.status,e[34]=S,e[35]=g,e[36]=I):I=e[36];let R=s.severity??Se,l;e[37]!==a?(l=a("Set severity"),e[37]=a,e[38]=l):l=e[38];let oe=`issues-severity-${s.hash}`,q;e[39]!==a?(q=a("\u2014"),e[39]=a,e[40]=q):q=e[40];let N;e[41]!==s.severity||e[42]!==a?(N=s.severity===void 0?(0,t.jsx)("span",{className:"text-muted-foreground",children:a("\u2014")}):(0,t.jsx)(me,{variant:ts(s.severity),children:s.severity}),e[41]=s.severity,e[42]=a,e[43]=N):N=e[43];let A;e[44]!==q||e[45]!==N?(A=(0,t.jsx)(De,{placeholder:q,children:N}),e[44]=q,e[45]=N,e[46]=A):A=e[46];let V;e[47]!==l||e[48]!==oe||e[49]!==A?(V=(0,t.jsx)(Fe,{"aria-label":l,className:"h-7 w-[110px]","data-testid":oe,children:A}),e[47]=l,e[48]=oe,e[49]=A,e[50]=V):V=e[50];let de;e[51]===Symbol.for("react.memo_cache_sentinel")?(de=Je.map(rs),e[51]=de):de=e[51];let F;e[52]!==a?(F=a("Clear"),e[52]=a,e[53]=F):F=e[53];let O;e[54]!==F?(O=(0,t.jsxs)(Oe,{children:[de,(0,t.jsx)(be,{value:Se,children:F})]}),e[54]=F,e[55]=O):O=e[55];let U;e[56]!==u||e[57]!==z||e[58]!==R||e[59]!==V||e[60]!==O?(U=(0,t.jsx)(L,{children:(0,t.jsxs)(We,{disabled:u,onValueChange:z,value:R,children:[V,O]})}),e[56]=u,e[57]=z,e[58]=R,e[59]=V,e[60]=O,e[61]=U):U=e[61];let B;e[62]!==a?(B=a("Assignee"),e[62]=a,e[63]=B):B=e[63];let fe=`issues-assignee-${s.hash}`,xe=s.assignee??"",ve=s.assignee??"",G;e[64]!==a?(G=a("Unassigned"),e[64]=a,e[65]=G):G=e[65];let H;e[66]!==u||e[67]!==E||e[68]!==B||e[69]!==fe||e[70]!==xe||e[71]!==ve||e[72]!==G?(H=(0,t.jsx)(L,{children:(0,t.jsx)(ke,{"aria-label":B,className:"h-7 w-32","data-testid":fe,defaultValue:xe,disabled:u,onKeyDown:E,placeholder:G},ve)}),e[66]=u,e[67]=E,e[68]=B,e[69]=fe,e[70]=xe,e[71]=ve,e[72]=G,e[73]=H):H=e[73];let P;e[74]!==s.count?(P=(0,t.jsx)(L,{className:"text-right",children:(0,t.jsx)(me,{variant:"secondary",children:s.count})}),e[74]=s.count,e[75]=P):P=e[75];let J;e[76]!==s.lastSeen?(J=Ee(s.lastSeen),e[76]=s.lastSeen,e[77]=J):J=e[77];let Q;e[78]!==J?(Q=(0,t.jsx)(L,{className:"text-xs tabular-nums text-muted-foreground",children:J}),e[78]=J,e[79]=Q):Q=e[79];let X;e[80]!==u||e[81]!==s.hash||e[82]!==s.status||e[83]!==i||e[84]!==a?(X=s.status!=="resolved"&&(0,t.jsx)(ie,{"data-testid":`issues-resolve-${s.hash}`,disabled:u,onClick:d(()=>{re(i(s.hash,Qe,{}))},"onClick"),size:"xs",variant:"outline",children:a("Resolve")}),e[80]=u,e[81]=s.hash,e[82]=s.status,e[83]=i,e[84]=a,e[85]=X):X=e[85];let Y;e[86]!==u||e[87]!==s.hash||e[88]!==s.status||e[89]!==i||e[90]!==a?(Y=s.status!=="ignored"&&(0,t.jsx)(ie,{"data-testid":`issues-ignore-${s.hash}`,disabled:u,onClick:d(()=>{re(i(s.hash,Xe,{}))},"onClick"),size:"xs",variant:"ghost",children:a("Ignore")}),e[86]=u,e[87]=s.hash,e[88]=s.status,e[89]=i,e[90]=a,e[91]=Y):Y=e[91];let Z;e[92]!==u||e[93]!==s.assignee||e[94]!==s.hash||e[95]!==s.status||e[96]!==i||e[97]!==a?(Z=s.status!=="open"&&(0,t.jsx)(ie,{"data-testid":`issues-reopen-${s.hash}`,disabled:u,onClick:d(()=>{re(i(s.hash,Ue,{assignee:s.assignee??null}))},"onClick"),size:"xs",variant:"ghost",children:a("Reopen")}),e[92]=u,e[93]=s.assignee,e[94]=s.hash,e[95]=s.status,e[96]=i,e[97]=a,e[98]=Z):Z=e[98];let ee;e[99]!==X||e[100]!==Y||e[101]!==Z?(ee=(0,t.jsx)(L,{className:"text-right",children:(0,t.jsxs)("div",{className:"flex justify-end gap-1",children:[X,Y,Z]})}),e[99]=X,e[100]=Y,e[101]=Z,e[102]=ee):ee=e[102];let se;e[103]!==c||e[104]!==I||e[105]!==U||e[106]!==H||e[107]!==P||e[108]!==Q||e[109]!==T||e[110]!==ee?(se=(0,t.jsxs)(pe,{"data-testid":T,children:[c,I,U,H,P,Q,ee]}),e[103]=c,e[104]=I,e[105]=U,e[106]=H,e[107]=P,e[108]=Q,e[109]=T,e[110]=ee,e[111]=se):se=e[111];let te;e[112]!==o||e[113]!==s||e[114]!==r?(te=(0,t.jsx)(as,{expanded:o,issue:s,shardKey:r},s.sampleMessage),e[112]=o,e[113]=s,e[114]=r,e[115]=te):te=e[115];let he;return e[116]!==se||e[117]!==te?(he=(0,t.jsxs)(t.Fragment,{children:[se,te]}),e[116]=se,e[117]=te,e[118]=he):he=e[118],he},"ss"),ks=d(n=>{let e=(0,ge.c)(38),{initialShardKey:u}=n,s=ue(),$=Ne(),{queryShardKey:i,setShardKey:r,shardKey:a}=ze(u),[o,_]=(0,ne.useState)("all"),[C,j]=(0,ne.useState)(ns),[K,z]=(0,ne.useState)(os),k;e[0]!==o?(k=o==="all"?{}:{status:o},e[0]=o,e[1]=k):k=e[1];let E;e[2]!==i?(E={live:!0,shardKey:i},e[2]=i,e[3]=E):E=e[3];let{data:T,error:h,liveError:x}=Te(D.getIssues,k,E),M=T!==void 0,v;if(e[4]!==K||e[5]!==C||e[6]!==$||e[7]!==T||e[8]!==h||e[9]!==x||e[10]!==M||e[11]!==i||e[12]!==r||e[13]!==a||e[14]!==o||e[15]!==s){let y=es(T),w;e[17]!==$||e[18]!==i?(w=d(async(l,oe,q)=>{z(N=>{if(!N.has(l))return N;let A=new Map(N);return A.delete(l),A}),j(N=>new Set(N).add(l));try{await $.query(oe,{...q,hash:l},we(i))}catch(N){let A=Ke(N);z(V=>new Map(V).set(l,A))}j(N=>{let A=new Set(N);return A.delete(l),A})},"N"),e[17]=$,e[18]=i,e[19]=w):w=e[19];let b=w,m;e[20]!==s?(m=d(l=>s(l==="all"?"All":l==="open"?"Open":l==="resolved"?"Resolved":"Ignored"),"u"),e[20]=s,e[21]=m):m=e[21];let f=m,p;e[22]!==h?(p=h!==null&&(0,t.jsx)("p",{className:"text-sm text-destructive","data-testid":"issues-error",role:"alert",children:h}),e[22]=h,e[23]=p):p=e[23];let c;e[24]!==r||e[25]!==a?(c=(0,t.jsx)(_e,{onChange:r,testId:"issues-shard-input",value:a}),e[24]=r,e[25]=a,e[26]=c):c=e[26];let S;e[27]!==x?(S=(0,t.jsx)(Ve,{message:x,prefix:"issues"}),e[27]=x,e[28]=S):S=e[28];let g;e[29]!==o||e[30]!==f?(g=Pe.map(l=>(0,t.jsx)(ie,{"data-active":o===l?"":void 0,"data-testid":`issues-filter-${l}`,onClick:d(()=>{_(l)},"onClick"),size:"xs",variant:o===l?"default":"outline",children:f(l)},l)),e[29]=o,e[30]=f,e[31]=g):g=e[31];let I;e[32]!==g?(I=(0,t.jsx)("div",{className:"ms-auto flex items-center gap-1","data-testid":"issues-status-filter",role:"group",children:g}),e[32]=g,e[33]=I):I=e[33];let R;e[34]!==I||e[35]!==c||e[36]!==S?(R=(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[c,S,I]}),e[34]=I,e[35]=c,e[36]=S,e[37]=R):R=e[37],v=(0,t.jsxs)("div",{className:"flex flex-col gap-6","data-testid":"lunora-issues-panel",children:[p,R,M&&y.length===0?(0,t.jsx)(Ce,{description:s("No grouped errors yet. When a function throws or a container crashes, matching errors fold into a single issue here."),testId:"issues-empty",title:s("No issues")}):(0,t.jsx)(Me,{className:"overflow-hidden py-0",children:(0,t.jsx)(Ae,{className:"px-0",children:(0,t.jsxs)(Le,{"data-testid":"issues-table",children:[(0,t.jsx)(je,{children:(0,t.jsxs)(pe,{children:[(0,t.jsx)(W,{children:s("Issue")}),(0,t.jsx)(W,{children:s("Status")}),(0,t.jsx)(W,{children:s("Severity")}),(0,t.jsx)(W,{children:s("Assignee")}),(0,t.jsx)(W,{className:"text-right",children:s("Events")}),(0,t.jsx)(W,{children:s("Last seen")}),(0,t.jsx)(W,{className:"text-right",children:s("Actions")})]})}),(0,t.jsx)(Re,{children:y.map(l=>(0,t.jsx)(is,{busy:C.has(l.hash),issue:l,rowError:K.get(l.hash),runTriage:b,shardKey:i},l.hash))})]})})})]}),e[4]=K,e[5]=C,e[6]=$,e[7]=T,e[8]=h,e[9]=x,e[10]=M,e[11]=i,e[12]=r,e[13]=a,e[14]=o,e[15]=s,e[16]=v}else v=e[16];return v},"ks");function ls(n){return!n}d(ls,"ts");function rs(n){return(0,t.jsx)(be,{value:n,children:n},n)}d(rs,"as");function ns(){return new Set}d(ns,"is");function os(){return new Map}d(os,"rs");export{ks as IssuesPanel};
@@ -0,0 +1 @@
1
+ import{b as h}from"./chunk-THIXMMZD.js";import"./chunk-6ST5ECQA.js";import{b as S}from"./chunk-4D7XIQ5Q.js";import{f as k}from"./chunk-DBWOWJYT.js";import"./chunk-XBDKZZ67.js";import{a as y,e as A}from"./chunk-UZERI5YC.js";import{d as I}from"./chunk-IUYFXK4X.js";import"./chunk-XNGYYOLS.js";import{a as u,e as w,g as $,h as j}from"./chunk-3XIESWL4.js";var N=w($(),1);var a=w(j(),1);var z=[{key:"accounts",label:"Accounts"},{key:"admin",label:"Admin"},{key:"organization",label:"Organizations"},{key:"passkey",label:"Passkeys"},{key:"twoFactor",label:"Two-factor"}],v=u(e=>{if(e===void 0)return"\u2014";let i=[[86400,"d"],[3600,"h"],[60,"m"]];for(let[t,d]of i)if(e>=t&&e%t===0)return`${String(e/t)}${d}`;return`${String(e)}s`},"v"),g=u(e=>{let i=(0,N.c)(8),{children:t,heading:d,testId:r}=e,l;i[0]!==d?(l=(0,a.jsx)("header",{className:"border-b border-border px-4 py-3",children:(0,a.jsx)("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:d})}),i[0]=d,i[1]=l):l=i[1];let n;i[2]!==t?(n=(0,a.jsx)(A,{className:"p-3",children:t}),i[2]=t,i[3]=n):n=i[3];let c;return i[4]!==l||i[5]!==n||i[6]!==r?(c=(0,a.jsxs)(y,{className:"gap-0 py-0","data-testid":r,children:[l,n]}),i[4]=l,i[5]=n,i[6]=r,i[7]=c):c=i[7],c},"h"),o=u(e=>{let i=(0,N.c)(7),{label:t,value:d}=e,r;i[0]!==t?(r=(0,a.jsx)("span",{className:"text-sm",children:t}),i[0]=t,i[1]=r):r=i[1];let l;i[2]!==d?(l=(0,a.jsx)("span",{className:"text-sm text-muted-foreground tabular-nums",children:d}),i[2]=d,i[3]=l):l=i[3];let n;return i[4]!==r||i[5]!==l?(n=(0,a.jsxs)("div",{className:"flex items-center justify-between gap-2 rounded-xl border border-border bg-card p-2 shadow-xs",children:[r,l]}),i[4]=r,i[5]=l,i[6]=n):n=i[6],n},"c"),T=u(()=>{let e=(0,N.c)(20),i=k(),t=I(),d;e[0]===Symbol.for("react.memo_cache_sentinel")?(d=["lunora-auth-config"],e[0]=d):d=e[0];let r;e[1]!==i?(r=u(()=>i.getAuthConfig(),"s"),e[1]=i,e[2]=r):r=e[2];let{data:l,error:n}=S(d,r),c;e[3]!==t?(c=u(s=>(0,a.jsx)(h,{variant:s?"success":"outline",children:t(s?"Enabled":"Disabled")}),"u"),e[3]=t,e[4]=c):c=e[4];let m=c,p;e[5]!==n?(p=n!==null&&(0,a.jsx)("p",{className:"px-4 py-8 text-center text-sm text-destructive","data-testid":"auth-config-error",role:"alert",children:n}),e[5]=n,e[6]=p):p=e[6];let f;e[7]!==l||e[8]!==n||e[9]!==t?(f=n===null&&l===void 0&&(0,a.jsx)("p",{className:"px-4 py-8 text-center text-sm text-muted-foreground","data-testid":"auth-config-loading",children:t("Loading auth configuration\u2026")}),e[7]=l,e[8]=n,e[9]=t,e[10]=f):f=e[10];let x;e[11]!==l||e[12]!==n||e[13]!==m||e[14]!==t?(x=n===null&&l!==void 0&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(g,{heading:t("Enabled capabilities"),testId:"auth-config-capabilities",children:(0,a.jsx)("ul",{className:"grid grid-cols-1 gap-2 sm:grid-cols-2",children:z.map(s=>{let P=l.capabilities[s.key];return(0,a.jsxs)("li",{className:"flex items-center justify-between gap-2 rounded-xl border border-border bg-card p-2 shadow-xs","data-testid":`auth-config-cap-${s.key}`,children:[(0,a.jsx)("span",{className:"text-sm",children:t(s.label)}),m(P)]},s.key)})})}),(0,a.jsx)(g,{heading:t("Plugins"),testId:"auth-config-plugins",children:l.plugins.length===0?(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:t("No plugins enabled.")}):(0,a.jsx)("div",{className:"flex flex-wrap gap-2",children:l.plugins.map(L)})}),(0,a.jsx)(g,{heading:t("Sign-in methods"),testId:"auth-config-signin",children:(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsx)(o,{label:t("Email & password"),value:m(l.emailAndPassword)}),(0,a.jsx)(o,{label:t("Social providers"),value:l.socialProviders.length===0?t("None"):(0,a.jsx)("span",{className:"flex flex-wrap justify-end gap-1",children:l.socialProviders.map(q)})})]})}),l.organization.enabled&&(0,a.jsx)(g,{heading:t("Organizations"),testId:"auth-config-org",children:(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsx)(o,{label:t("Teams"),value:m(l.organization.teams)}),(0,a.jsx)(o,{label:t("Custom roles"),value:m(l.organization.roles)})]})}),(0,a.jsx)(g,{heading:t("Session policy"),testId:"auth-config-session",children:(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsx)(o,{label:t("Expires in"),value:v(l.session.expiresIn)}),(0,a.jsx)(o,{label:t("Refresh after"),value:v(l.session.updateAge)}),(0,a.jsx)(o,{label:t("Fresh window"),value:v(l.session.freshAge)}),(0,a.jsx)(o,{label:t("Cookie cache"),value:m(l.session.cookieCache===!0)})]})}),(0,a.jsx)(g,{heading:t("Rate limit"),testId:"auth-config-ratelimit",children:(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsx)(o,{label:t("Status"),value:m(l.rateLimit.enabled)}),l.rateLimit.enabled&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o,{label:t("Max requests"),value:l.rateLimit.max??"\u2014"}),(0,a.jsx)(o,{label:t("Window"),value:v(l.rateLimit.window)})]})]})}),l.userFields.length>0&&(0,a.jsx)(g,{heading:t("Plugin user fields"),testId:"auth-config-user-fields",children:(0,a.jsx)("ul",{className:"flex flex-col gap-2",children:l.userFields.map(s=>(0,a.jsxs)("li",{className:"flex items-center justify-between gap-2 rounded-xl border border-border bg-card p-2 shadow-xs","data-testid":`auth-config-user-field-${s.name}`,children:[(0,a.jsxs)("span",{className:"flex flex-col",children:[(0,a.jsx)("span",{className:"font-mono text-xs",children:s.name}),s.plugin!==void 0&&(0,a.jsx)("span",{className:"text-[11px] text-muted-foreground",children:s.plugin})]}),(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,a.jsx)(h,{variant:"outline",children:s.type}),s.required&&(0,a.jsx)(h,{variant:"secondary",children:t("required")}),s.unique&&(0,a.jsx)(h,{variant:"secondary",children:t("unique")})]})]},s.name))})}),(0,a.jsx)(y,{className:"gap-0 py-0",children:(0,a.jsx)("p",{className:"px-4 py-3 text-xs text-muted-foreground","data-testid":"auth-config-note",children:t("OAuth providers, email templates, and rate limits are configured at deploy time in the better-auth setup and aren't editable here. See the Mail tab for email output.")})})]}),e[11]=l,e[12]=n,e[13]=m,e[14]=t,e[15]=x):x=e[15];let b;return e[16]!==p||e[17]!==f||e[18]!==x?(b=(0,a.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"auth-config",children:[p,f,x]}),e[16]=p,e[17]=f,e[18]=x,e[19]=b):b=e[19],b},"M");function L(e){return(0,a.jsx)(h,{"data-testid":`auth-config-plugin-${e}`,variant:"outline",children:e},e)}u(L,"P");function q(e){return(0,a.jsx)(h,{"data-testid":`auth-config-provider-${e}`,variant:"outline",children:e},e)}u(q,"z");export{T as AuthConfigPanel};
@@ -0,0 +1 @@
1
+ import{a as we,b as Ke,c as je}from"./chunk-IVFHIQOT.js";import{i as Ge,k as He}from"./chunk-QBWRC5YX.js";import{D as Se,I as Me,K as Ve,L as Le,M as De,N as Oe,O as Te,P as Fe,Q as _e,a as $,b as Ie,c as Ne,e as F,f as Be}from"./chunk-CFPZYHPY.js";import{b as Ae}from"./chunk-FXCBF4XT.js";import{a as T,e as de}from"./chunk-2OUPA2WJ.js";import{a as ye,c as ve,d as Re,e as Ee,g as se,i as Pe,j as W}from"./chunk-6ST5ECQA.js";import{a as i,d as vt,e as x,f as O,g as Rt,h as ke,j as Ce}from"./chunk-3XIESWL4.js";var Ye=x(Rt(),1);var w={};vt(w,{Indicator:()=>Xe,Root:()=>Je});var l=x(O(),1);function Ue(t){if(!t)return null;for(let e of t.elements){let n=e.tagName;if(n==="BUTTON"||n==="INPUT"){let o=e;if(o.type==="submit")return o}}return null}i(Ue,"getDefaultFormSubmitter");var qe=x(O(),1);var ce=(function(t){return t.checked="data-checked",t.unchecked="data-unchecked",t.indeterminate="data-indeterminate",t.disabled="data-disabled",t.readonly="data-readonly",t.required="data-required",t.valid="data-valid",t.invalid="data-invalid",t.touched="data-touched",t.dirty="data-dirty",t.filled="data-filled",t.focused="data-focused",t})({});function z(t){return qe.useMemo(()=>({checked(e){return t.indeterminate?{}:e?{[ce.checked]:""}:{[ce.unchecked]:""}},...$}),[t.indeterminate])}i(z,"useStateAttributesMapping");var We=x(O(),1);function $e(t,e,n,o=!0,a){let[f,p]=We.useState(),S=F(a?`${a}-label`:void 0),b=t??e??f;return T(()=>{let g=t||e||!o?void 0:Et(n.current,S);f!==g&&p(g)}),b}i($e,"useAriaLabelledBy");function Et(t,e){let n=Pt(t);if(n)return!n.id&&e&&(n.id=e),n.id||void 0}i(Et,"getAriaLabelledBy");function Pt(t){if(!t)return;let e=t.parentElement;if(e&&e.tagName==="LABEL")return e;let n=t.id;if(n){let a=t.nextElementSibling;if(a&&a.htmlFor===n)return a}let o=t.labels;return o&&o[0]}i(Pt,"findAssociatedLabel");var J=x(O(),1);var ue=J.createContext(void 0);function ze(){let t=J.useContext(ue);if(t===void 0)throw new Error(ve(14));return t}i(ze,"useCheckboxRootContext");var _=x(ke(),1);var It="data-parent",Je=l.forwardRef(i(function(e,n){let{checked:o,className:a,defaultChecked:f=!1,"aria-labelledby":p,disabled:S=!1,form:b,id:g,indeterminate:M=!1,inputRef:Q,name:K,onCheckedChange:A,parent:m=!1,readOnly:R=!1,render:le,required:E=!1,uncheckedValue:j,value:G,nativeButton:H=!1,style:Nt,...Qe}=e,{clearErrors:Ze}=Ne(),{disabled:et,name:tt,setDirty:rt,setFilled:Z,setFocused:fe,setTouched:nt,state:pe,validationMode:ot,validityData:it,validation:at}=Ie(),st=Se(),{labelId:dt,controlId:ct,registerControlId:P,getDescriptionProps:me}=Be(),s=_e(),V=s?.parent,L=V&&s.allValues,c=et||st.disabled||s?.disabled||S,I=tt??K,d=G??I,he=F(),ut=F(),k=ct;L?k=m?ut:`${V.id}-${d}`:g&&(k=g);let ee={};L&&(m?ee=s.parent.getParentProps():d&&(ee=s.parent.getChildProps(d)));let{checked:be=o,indeterminate:lt=M,onCheckedChange:ft,...pt}=ee,N=s?.value,ge=s?.setValue,xe=s?.defaultValue,te=l.useRef(null),U=Re(()=>Symbol("checkbox-control")),re=l.useRef(!1),{getButtonProps:mt,buttonRef:ht}=Ae({disabled:c,native:H}),B=s?.validation??at,[u,bt]=De({controlled:d&&N&&!m?N.includes(d):be,default:d&&xe&&!m?xe.includes(d):f,name:"Checkbox",state:"checked"}),ne=L?!!be:u,D=L&&lt||M;T(()=>{P!==se&&(re.current=!0,P(U.current,k))},[k,P,U]),l.useEffect(()=>{let r=U.current;return()=>{!re.current||P===se||(re.current=!1,P(r,void 0))}},[P,U]),Oe(te,he,u,void 0,!s&&!c,K);let C=l.useRef(null),gt=Ee(Q,C,B.inputRef,B.registerInput),xt=$e(p,dt,C,!H,k??void 0);T(()=>{C.current&&(C.current.indeterminate=D,u&&Z(!0))},[u,D,Z]),je(u,()=>{s||(Ze(I),Z(u),rt(u!==it.initialValue),B.change(u))});let kt=ye({checked:u,disabled:c,form:b,name:m?void 0:I,id:H?void 0:k??void 0,required:E,ref:gt,style:I?Ke:we,tabIndex:-1,type:"checkbox","aria-hidden":!0,onChange(r){if(r.nativeEvent.defaultPrevented)return;if(R){r.preventDefault();return}let h=r.currentTarget.checked,y=Fe(Te.none,r.nativeEvent);if(A?.(h,y),!y.isCanceled&&(ft?.(h,y),!y.isCanceled&&(bt(h),d&&N&&ge&&!m&&!L))){let v=h?[...N,d]:N.filter(q=>q!==d);ge(v,y)}},onFocus(){te.current?.focus()}},G!==void 0?{value:(s?u&&G:G)||""}:Pe,me,r=>B.getValidationProps(c,r));l.useEffect(()=>{if(!V||!d)return;let r=V.disabledStatesRef.current;return r.set(d,c),()=>{r.delete(d)}},[V,c,d]);let oe=l.useMemo(()=>({...pe,checked:ne,disabled:c,readOnly:R,required:E,indeterminate:D}),[pe,ne,c,R,E,D]),Ct=z(oe),yt=W("span",e,{state:oe,ref:[ht,te,n,s?.registerControlRef],props:[{id:H?k??void 0:he,role:"checkbox","aria-checked":D?"mixed":ne,"aria-readonly":R||void 0,"aria-required":E||void 0,"aria-labelledby":xt,[It]:m?"":void 0,onFocus(){c||fe(!0)},onBlur(){let r=C.current;r&&(nt(!0),fe(!1),ot==="onBlur"&&B.commit(s?N:r.checked))},onKeyDown(r){if(r.key!=="Enter"||(r.preventBaseUIHandler(),r.defaultPrevented))return;let h=C.current?.form??null,y=r.currentTarget,v=r.nativeEvent,q=r.preventDefault,ie=v.preventDefault,ae=!1;r.preventDefault=()=>{ae=!0,q.call(r)},v.preventDefault=()=>{ae=!0,ie.call(v)},ie.call(v),de(y).queueMicrotask(()=>{r.preventDefault=q,v.preventDefault=ie,ae||Ue(h)?.click()})},onClick(r){if(R||c)return;r.preventDefault();let h=C.current;h&&h.dispatchEvent(new(de(h)).PointerEvent("click",{bubbles:!0,shiftKey:r.shiftKey,ctrlKey:r.ctrlKey,altKey:r.altKey,metaKey:r.metaKey}))}},Qe,pt,mt,me,r=>B.getValidationProps(c,r)],stateAttributesMapping:Ct});return(0,_.jsxs)(ue.Provider,{value:oe,children:[yt,!u&&!s&&I&&!m&&j!==void 0&&(0,_.jsx)("input",{type:"hidden",form:b,name:I,value:j,disabled:c}),(0,_.jsx)("input",{...kt,suppressHydrationWarning:!0})]})},"CheckboxRoot"));var X=x(O(),1);var Xe=X.forwardRef(i(function(e,n){let{render:o,className:a,style:f,keepMounted:p=!1,...S}=e,b=ze(),g=b.checked||b.indeterminate,{mounted:M,transitionStatus:Q,setMounted:K}=Le(g),A=X.useRef(null),m={...b,transitionStatus:Q};Ve({open:g,ref:A,onComplete(){g||K(!1)}});let le={...z(b),...Me,...$},E=p||M,j=W("span",e,{ref:[n,A],state:m,stateAttributesMapping:le,props:S});return E?j:null},"CheckboxIndicator"));var Y=x(ke(),1);function Vr(t){let e=(0,Ye.c)(9),n,o;e[0]!==t?({className:n,...o}=t,e[0]=t,e[1]=n,e[2]=o):(n=e[1],o=e[2]);let a;e[3]!==n?(a=Ce("peer relative flex size-4 shrink-0 items-center justify-center rounded-md border border-input transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-1 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-1 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary",n),e[3]=n,e[4]=a):a=e[4];let f;e[5]===Symbol.for("react.memo_cache_sentinel")?(f=(0,Y.jsx)(w.Indicator,{"data-slot":"checkbox-indicator",className:"grid place-content-center text-current transition-none [&>svg]:size-3.5",children:(0,Y.jsx)(He,{icon:Ge,strokeWidth:2})}),e[5]=f):f=e[5];let p;return e[6]!==o||e[7]!==a?(p=(0,Y.jsx)(w.Root,{"data-slot":"checkbox",className:a,...o,children:f}),e[6]=o,e[7]=a,e[8]=p):p=e[8],p}i(Vr,"h");export{Vr as a};
@@ -0,0 +1 @@
1
+ import{a as q}from"./chunk-XQCVZAGU.js";import{a as O,b as v,c as N,d as b,e as _,f as M}from"./chunk-MIQTKZAR.js";import{a as k}from"./chunk-UZERI5YC.js";import{d as g,h as w,m as I,o as T}from"./chunk-IUYFXK4X.js";import{c as L}from"./chunk-XNGYYOLS.js";import{a as u,e as x,f as P,g as U,h as W}from"./chunk-3XIESWL4.js";var $=x(U(),1);var F="https://api.cloudflare.com/client/v4/accounts",E=class extends L{static{u(this,"c")}constructor(t,m){super("ANALYTICS_SQL_ERROR",`Analytics Engine SQL API returned ${String(t)}: ${m}`,{name:"AnalyticsSqlError",status:t})}},R=u(n=>{let t=n.fetch??globalThis.fetch,m=`${F}/${encodeURIComponent(n.accountId)}/analytics_engine/sql`;return{query:u(async p=>{let l=await t(m,{body:p,headers:{Authorization:`Bearer ${n.apiToken}`,"Content-Type":"text/plain"},method:"POST"});if(!l.ok)throw new E(l.status,await l.text());let r;try{r=await l.json()}catch{throw new E(l.status,"Analytics Engine SQL API returned a non-JSON body.")}let e=r,s=e.data??[];return{columns:e.meta??[],rowCount:e.rows??s.length,rows:s}},"query")}},"d");var y=x(P(),1);var a=x(W(),1);var H="ANALYTICS",D=[{key:"volume",sql:u(n=>`SELECT blob2 AS fn, count() AS calls FROM ${n} WHERE blob1 = 'function_call' GROUP BY fn ORDER BY calls DESC LIMIT 25`,"sql"),title:"Request volume per function"},{key:"latency",sql:u(n=>`SELECT blob2 AS fn, quantileWeighted(0.50)(double1, _sample_interval) AS p50, quantileWeighted(0.95)(double1, _sample_interval) AS p95 FROM ${n} WHERE blob1 = 'function_call' GROUP BY fn ORDER BY p95 DESC LIMIT 25`,"sql"),title:"Latency p50 / p95 per function"},{key:"hotShards",sql:u(n=>`SELECT blob3 AS shard, count() AS calls FROM ${n} WHERE blob1 = 'function_call' GROUP BY shard ORDER BY calls DESC LIMIT 25`,"sql"),title:"Hot shards"}],j={error:null,loading:!0,result:null},Q=u(n=>{let t=(0,$.c)(27),{state:m,title:p}=n,l=g(),{error:r,loading:e,result:s}=m,o=`analytics-panel-${p}`,c;t[0]!==l||t[1]!==p?(c=l(p),t[0]=l,t[1]=p,t[2]=c):c=t[2];let i;t[3]!==c?(i=(0,a.jsx)("header",{className:"border-b border-border px-4 py-3",children:(0,a.jsx)("span",{className:"font-mono text-[11px] tracking-wide text-muted-foreground uppercase",children:c})}),t[3]=c,t[4]=i):i=t[4];let d;t[5]!==e||t[6]!==l?(d=e&&(0,a.jsx)("p",{className:"px-4 py-8 text-center text-sm text-muted-foreground","data-testid":"analytics-loading",children:l("Loading\u2026")}),t[5]=e,t[6]=l,t[7]=d):d=t[7];let f;t[8]!==r||t[9]!==e?(f=!e&&r!==null&&(0,a.jsx)("p",{className:"px-4 py-8 text-center text-sm text-destructive","data-testid":"analytics-error",role:"alert",children:r}),t[8]=r,t[9]=e,t[10]=f):f=t[10];let h;t[11]!==r||t[12]!==e||t[13]!==s||t[14]!==l?(h=!e&&r===null&&s!==null&&s.rows.length===0&&(0,a.jsx)("p",{className:"px-4 py-8 text-center text-sm text-muted-foreground","data-testid":"analytics-empty-rows",children:l("No data points yet.")}),t[11]=r,t[12]=e,t[13]=s,t[14]=l,t[15]=h):h=t[15];let A;t[16]!==r||t[17]!==e||t[18]!==s?(A=!e&&r===null&&s!==null&&s.rows.length>0&&(0,a.jsxs)(O,{children:[(0,a.jsx)(v,{children:(0,a.jsx)(b,{children:s.columns.map(G)})}),(0,a.jsx)(N,{children:s.rows.map((B,Y)=>(0,a.jsx)(b,{children:s.columns.map(C=>(0,a.jsx)(M,{className:"font-mono text-xs",children:I(B[C.name])},C.name))},Y))})]}),t[16]=r,t[17]=e,t[18]=s,t[19]=A):A=t[19];let S;return t[20]!==o||t[21]!==i||t[22]!==d||t[23]!==f||t[24]!==h||t[25]!==A?(S=(0,a.jsxs)(k,{className:"gap-0 py-0","data-testid":o,children:[i,d,f,h,A]}),t[20]=o,t[21]=i,t[22]=d,t[23]=f,t[24]=h,t[25]=A,t[26]=S):S=t[26],S},"U"),rt=u(({config:n,dataset:t=H,runQuery:m}={})=>{let p=g(),[l,r]=(0,y.useState)({}),e=(0,y.useMemo)(()=>{if(m!==void 0)return m;if(n===void 0)return null;let o=R({accountId:n.accountId,apiToken:n.apiToken});return c=>o.query(c)},[n,m]),s=(0,y.useCallback)(async o=>{if(e!==null)for(let c of D){if(o.cancelled)return;r(i=>({...i,[c.key]:{error:null,loading:!0,result:null}}));try{let i=await e(c.sql(t));o.cancelled||r(d=>({...d,[c.key]:{error:null,loading:!1,result:i}}))}catch(i){o.cancelled||r(d=>({...d,[c.key]:{error:w(i),loading:!1,result:null}}))}}},[e,t]);return(0,y.useEffect)(()=>{let o={cancelled:!1};return T(s(o)),()=>{o.cancelled=!0}},[s]),e===null?(0,a.jsx)(q,{description:p("Set CLOUDFLARE_ACCOUNT_ID and CLOUDFLARE_API_TOKEN (Analytics Read) in your .dev.vars to enable usage panels."),icon:(0,a.jsx)("svg",{"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:(0,a.jsx)("path",{d:"M5 20V10m6.5 10V4M18 20v-7M3 20h18"})}),testId:"analytics-not-configured",title:p("Analytics is not configured.")}):(0,a.jsx)("div",{className:"flex flex-col gap-4","data-testid":"lunora-analytics-panel",children:D.map(o=>(0,a.jsx)(Q,{state:l[o.key]??j,title:o.title},o.key))})},"Z");function G(n){return(0,a.jsx)(_,{children:n.name},n.name)}u(G,"H");export{rt as AnalyticsPanel};
@@ -0,0 +1 @@
1
+ import{a as te}from"./chunk-V53KNYRN.js";import{R as Z}from"./chunk-CFPZYHPY.js";import"./chunk-7QIFDWQV.js";import{c as I}from"./chunk-FXCBF4XT.js";import"./chunk-2OUPA2WJ.js";import"./chunk-6ST5ECQA.js";import{a as K}from"./chunk-VDW32UET.js";import{c as ee}from"./chunk-4D7XIQ5Q.js";import{f as M}from"./chunk-DBWOWJYT.js";import"./chunk-XBDKZZ67.js";import{a as q}from"./chunk-XQCVZAGU.js";import{a as z,b as D,c as F,d as h,e as o,f as i}from"./chunk-MIQTKZAR.js";import{a as T,e as j}from"./chunk-UZERI5YC.js";import{d as H,f as Q,g as V,h as W,o as $}from"./chunk-IUYFXK4X.js";import"./chunk-XNGYYOLS.js";import{a as n,e as Y,f as ne,h as le}from"./chunk-3XIESWL4.js";var c=Y(ne(),1);var e=Y(le(),1);var oe=["queued","running","paused","waiting","complete","errored","terminated"],ie=["pause","resume","terminate"],de="WORKFLOWS_NOT_CONFIGURED",ce=n(l=>typeof l=="object"&&l!==null&&l.code===de,"ie"),me=n(l=>{let r=l.error??l.output;if(r===void 0)return"\u2014";try{return JSON.stringify(r)}catch{return"(unserializable)"}},"de"),ue=n(({loadDetail:l,loadInstances:r,readOnly:N,runAction:R,workflowName:g})=>{let A=M(),s=H(),[p,k]=(0,c.useState)(null),[S,O]=(0,c.useState)(null),[v,_]=(0,c.useState)(""),[b,f]=(0,c.useState)(null),[J,C]=(0,c.useState)(!1),[L,P]=(0,c.useState)(null),w=l??(a=>A.getWorkflowInstance(a)),x=N?void 0:R??(r===void 0?a=>A.setWorkflowInstanceStatus(a):void 0),E=n(async()=>{f(null),C(!1);let a=v===""?void 0:v;try{if(r===void 0){let d=await A.listWorkflowInstances({name:g,status:a});if(d.configured===!1){k(null),C(!0);return}k(d.instances);return}k(await r({name:g,status:a}))}catch(d){k(null),ce(d)?C(!0):f(W(d))}},"O");(0,c.useEffect)(()=>{O(null),$(E())},[g,v]);let U=n(async a=>{f(null);try{O(await w({id:a,name:g}))}catch(d){f(W(d))}},"D"),B=n(async(a,d)=>{if(x!==void 0){P(a),f(null);try{await x({action:d,id:a,name:g}),await E()}catch(G){f(W(G))}P(null)}},"K");return(0,e.jsxs)("div",{className:"flex flex-col gap-3","data-testid":"lunora-workflow-instances",children:[(0,e.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,e.jsx)("h3",{className:"text-sm font-medium",children:s("Instance history")}),(0,e.jsxs)("select",{"aria-label":s("Filter by status"),className:"h-8 rounded-md border border-input bg-transparent px-2.5 py-1 text-xs outline-none focus-visible:border-ring focus-visible:ring-1 focus-visible:ring-ring/50","data-testid":"workflow-instances-filter",onChange:n(a=>{_(a.target.value)},"onChange"),value:v,children:[(0,e.jsx)("option",{value:"",children:s("All statuses")}),oe.map(a=>(0,e.jsx)("option",{value:a,children:a},a))]})]}),b!==null&&(0,e.jsx)("p",{className:"text-sm text-destructive","data-testid":"workflow-instances-error",role:"alert",children:b}),J&&(0,e.jsx)(q,{description:s("Set CLOUDFLARE_ACCOUNT_ID and CLOUDFLARE_API_TOKEN in your .dev.vars to enable workflow instance history."),testId:"workflow-instances-unconfigured",title:s("Workflow inspection not configured")}),!J&&p!==null&&p.length===0&&(0,e.jsx)(q,{description:s("No instances match this filter for the selected workflow."),testId:"workflow-instances-empty",title:s("No instances")}),p!==null&&p.length>0&&(0,e.jsx)(T,{className:"overflow-hidden py-0",children:(0,e.jsx)(j,{className:"px-0",children:(0,e.jsxs)(z,{"data-testid":"workflow-instances-table",children:[(0,e.jsx)(D,{children:(0,e.jsxs)(h,{children:[(0,e.jsx)(o,{children:s("Instance id")}),(0,e.jsx)(o,{children:s("Status")}),(0,e.jsx)(o,{children:s("Created")}),(0,e.jsx)(o,{children:s("Ended")}),(0,e.jsx)(o,{"aria-label":s("Actions")})]})}),(0,e.jsx)(F,{children:p.map(a=>(0,e.jsxs)(h,{"data-testid":`workflow-instance-${a.id}`,children:[(0,e.jsx)(i,{className:"font-mono text-xs",children:a.id}),(0,e.jsx)(i,{className:"font-mono text-xs",children:a.status}),(0,e.jsx)(i,{className:"text-muted-foreground tabular-nums",children:a.createdOn??"\u2014"}),(0,e.jsx)(i,{className:"text-muted-foreground tabular-nums",children:a.endedOn??"\u2014"}),(0,e.jsx)(i,{className:"text-right",children:(0,e.jsxs)("div",{className:"flex justify-end gap-1.5",children:[(0,e.jsx)(I,{"data-testid":`workflow-instance-steps-${a.id}`,onClick:n(()=>{$(U(a.id))},"onClick"),size:"sm",type:"button",variant:"outline",children:s("Steps")}),x!==void 0&&ie.map(d=>(0,e.jsx)(I,{"data-testid":`workflow-instance-${d}-${a.id}`,disabled:L===a.id,onClick:n(()=>{$(B(a.id,d))},"onClick"),size:"sm",type:"button",variant:"ghost",children:s(d)},d))]})})]},a.id))})]})})}),S!==null&&(0,e.jsx)(T,{className:"overflow-hidden py-0","data-testid":"workflow-instance-detail",children:(0,e.jsxs)(j,{className:"flex flex-col gap-2 px-4 py-3",children:[(0,e.jsxs)("div",{className:"flex items-center justify-between",children:[(0,e.jsxs)("span",{className:"font-mono text-xs",children:[s("Steps")," \xB7 ",S.id]}),(0,e.jsx)(I,{"data-testid":"workflow-instance-detail-close",onClick:n(()=>{O(null)},"onClick"),size:"xs",type:"button",variant:"ghost",children:s("Close")})]}),S.steps.length===0?(0,e.jsx)("p",{className:"text-xs text-muted-foreground",children:s("This instance has no recorded steps yet.")}):(0,e.jsxs)(z,{"data-testid":"workflow-instance-steps",children:[(0,e.jsx)(D,{children:(0,e.jsxs)(h,{children:[(0,e.jsx)(o,{children:s("Step")}),(0,e.jsx)(o,{children:s("Type")}),(0,e.jsx)(o,{children:s("Attempts")}),(0,e.jsx)(o,{children:s("Started")}),(0,e.jsx)(o,{children:s("Output")})]})}),(0,e.jsx)(F,{children:S.steps.map((a,d)=>(0,e.jsxs)(h,{"data-testid":`workflow-step-${String(d)}`,children:[(0,e.jsx)(i,{className:"font-mono text-xs",children:a.name}),(0,e.jsx)(i,{className:"text-xs text-muted-foreground",children:a.type??"\u2014"}),(0,e.jsx)(i,{className:"tabular-nums",children:a.attempts??"\u2014"}),(0,e.jsx)(i,{className:"text-muted-foreground tabular-nums",children:a.start??"\u2014"}),(0,e.jsx)(i,{className:"font-mono text-xs text-muted-foreground",children:me(a)})]},`${a.name}:${String(d)}`))})]})]})})]})},"ce"),fe=Q(K.createWorkflowInstance),he=Q(K.getWorkflowInstanceStatus),pe=n(l=>{if(l.error)return`${l.error.name}: ${l.error.message}`;if(l.output===void 0)return"\u2014";try{return JSON.stringify(l.output)}catch{return"(unserializable)"}},"fe"),we=n((l,r)=>l.some(N=>N.exportName===r)?r:l[0]?.exportName??"","he"),We=n(()=>{let l=M(),r=H(),{data:N,error:R}=ee(K.listWorkflows,{}),[g,A]=(0,c.useState)(""),[s,p]=(0,c.useState)(""),[k,S]=(0,c.useState)(""),[O,v]=(0,c.useState)(!1),[_,b]=(0,c.useState)(null),[f,J]=(0,c.useState)([]),[C,L]=(0,c.useState)(null),P=N!==void 0,w=Array.isArray(N?.workflows)?[...N.workflows].toSorted((t,u)=>t.exportName.localeCompare(u.exportName)):[],x=we(w,g),E=w.find(t=>t.exportName===x),U=n(t=>{J(u=>{let m=u.filter(y=>!(y.exportName===t.exportName&&y.id===t.id));return[t,...m]})},"D"),B=n(async()=>{let t=x;if(t==="")return;let u,m=k.trim();if(m!=="")try{u=JSON.parse(m)}catch{b(r("Params must be valid JSON"));return}v(!0),b(null);try{let y=s.trim(),X=await l.query(fe,{exportName:t,id:y===""?void 0:y,params:u},V(""));U({exportName:t,id:X.id,status:X.status}),p("")}catch(y){b(W(y))}v(!1)},"K"),a=n(()=>{$(B())},"a"),d=n(async(t,u)=>{L(u);try{let m=await l.query(he,{exportName:t,id:u},V(""));U({error:m.error,exportName:t,id:m.id,output:m.output,status:m.status})}catch(m){b(W(m))}L(null)},"l"),G=n(t=>{A(t.target.value)},"P"),ae=n(t=>{p(t.target.value)},"Y"),re=n(t=>{S(t.target.value)},"Z"),se=n(t=>{let{export:u,id:m}=t.currentTarget.dataset;u!==void 0&&m!==void 0&&$(d(u,m))},"ee");return(0,e.jsxs)("div",{className:"flex flex-col gap-6","data-testid":"lunora-workflows-panel",children:[R!==null&&(0,e.jsx)("p",{className:"text-sm text-destructive","data-testid":"workflows-error",role:"alert",children:R}),(0,e.jsx)("p",{className:"text-sm text-muted-foreground",children:r("Workflows are declared in code with defineWorkflow and run as durable Cloudflare Workflows. Start an instance and observe its status below.")}),P&&w.length===0?(0,e.jsx)(q,{description:r("No defineWorkflow is declared in lunora/workflows.ts in this deployment. Add one to run a durable, multi-step workflow."),testId:"workflows-empty",title:r("No workflows defined")}):(0,e.jsx)(T,{className:"overflow-hidden py-0",children:(0,e.jsx)(j,{className:"px-0",children:(0,e.jsxs)(z,{"data-testid":"workflows-table",children:[(0,e.jsx)(D,{children:(0,e.jsxs)(h,{children:[(0,e.jsx)(o,{children:r("Export")}),(0,e.jsx)(o,{children:r("Name")}),(0,e.jsx)(o,{children:r("Class")}),(0,e.jsx)(o,{children:r("Binding")})]})}),(0,e.jsx)(F,{children:w.map(t=>(0,e.jsxs)(h,{"data-testid":`workflows-row-${t.exportName}`,children:[(0,e.jsx)(i,{className:"font-mono text-xs",children:t.exportName}),(0,e.jsx)(i,{className:"font-mono text-xs text-muted-foreground",children:t.name}),(0,e.jsx)(i,{className:"font-mono text-xs text-muted-foreground",children:t.className}),(0,e.jsx)(i,{className:"font-mono text-xs text-muted-foreground",children:t.binding})]},t.exportName))})]})})}),w.length>0&&(0,e.jsxs)("div",{className:"flex flex-col gap-3","data-testid":"workflows-start",children:[(0,e.jsx)("h3",{className:"text-sm font-medium",children:r("Start instance")}),_!==null&&(0,e.jsx)("p",{className:"text-sm text-destructive","data-testid":"workflows-start-error",role:"alert",children:_}),(0,e.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,e.jsx)("select",{"aria-label":r("Workflow"),className:"h-8 rounded-md border border-input bg-transparent px-2.5 py-1 text-xs outline-none focus-visible:border-ring focus-visible:ring-1 focus-visible:ring-ring/50","data-testid":"workflows-start-select",onChange:G,value:x,children:w.map(t=>(0,e.jsx)("option",{value:t.exportName,children:t.exportName},t.exportName))}),(0,e.jsx)(Z,{"aria-label":r("Instance id (optional)"),className:"max-w-48","data-testid":"workflows-start-id",onChange:ae,placeholder:r("Instance id (optional)"),value:s}),(0,e.jsx)(I,{"data-testid":"workflows-start-button",disabled:O||x==="",onClick:a,children:r(O?"Starting\u2026":"Start instance")})]}),(0,e.jsx)(te,{"aria-label":r("Params (JSON)"),className:"font-mono","data-testid":"workflows-start-params",onChange:re,placeholder:r("Params (JSON, optional)"),value:k})]}),f.length>0&&(0,e.jsxs)("div",{className:"flex flex-col gap-3","data-testid":"workflows-instances",children:[(0,e.jsx)("h3",{className:"text-sm font-medium",children:r("Instances")}),(0,e.jsx)(T,{className:"overflow-hidden py-0",children:(0,e.jsx)(j,{className:"px-0",children:(0,e.jsxs)(z,{"data-testid":"workflows-instances-table",children:[(0,e.jsx)(D,{children:(0,e.jsxs)(h,{children:[(0,e.jsx)(o,{children:r("Workflow")}),(0,e.jsx)(o,{children:r("Instance id")}),(0,e.jsx)(o,{children:r("Status")}),(0,e.jsx)(o,{children:r("Output")}),(0,e.jsx)(o,{})]})}),(0,e.jsx)(F,{children:f.map(t=>(0,e.jsxs)(h,{"data-testid":`workflows-instance-${t.id}`,children:[(0,e.jsx)(i,{className:"font-mono text-xs",children:t.exportName}),(0,e.jsx)(i,{className:"font-mono text-xs text-muted-foreground",children:t.id}),(0,e.jsx)(i,{className:"font-mono text-xs",children:t.status}),(0,e.jsx)(i,{className:"font-mono text-xs text-muted-foreground",children:pe(t)}),(0,e.jsx)(i,{children:(0,e.jsx)(I,{"data-export":t.exportName,"data-id":t.id,"data-testid":`workflows-instance-refresh-${t.id}`,disabled:C===t.id,onClick:se,size:"xs",variant:"outline",children:C===t.id?r("Refreshing\u2026"):r("Refresh")})})]},`${t.exportName}:${t.id}`))})]})})})]}),E!==void 0&&(0,e.jsx)(ue,{workflowName:E.name})]})},"Oe");export{We as default};
@@ -0,0 +1 @@
1
+ import{a as r,c as o}from"./chunk-7T7UOTYK.js";import{a as e}from"./chunk-3XIESWL4.js";var a="lunora:traces:pending-filter",i=e(s=>{o(a,s,"session")},"o"),d=e(()=>{let s=r("session");if(s!==void 0)try{let n=s.getItem(a);if(n===null)return;let t=JSON.parse(n);return typeof t.traceId!="string"?void 0:{traceId:t.traceId,...typeof t.shardKey=="string"?{shardKey:t.shardKey}:{}}}catch{return}},"c"),p=e(()=>{try{r("session")?.removeItem(a)}catch{}},"d");export{i as a,d as b,p as c};
@@ -0,0 +1 @@
1
+ import{R as V}from"./chunk-CFPZYHPY.js";import"./chunk-7QIFDWQV.js";import{c as F}from"./chunk-FXCBF4XT.js";import"./chunk-2OUPA2WJ.js";import{b as C}from"./chunk-THIXMMZD.js";import"./chunk-6ST5ECQA.js";import{a as q}from"./chunk-ZKTWHB7Q.js";import"./chunk-XXQUMVWH.js";import"./chunk-NH3VWHCL.js";import"./chunk-QLQADHFE.js";import{a as U}from"./chunk-VDW32UET.js";import{c as O}from"./chunk-4D7XIQ5Q.js";import"./chunk-DBWOWJYT.js";import"./chunk-XBDKZZ67.js";import{a as D}from"./chunk-XQCVZAGU.js";import{a as G,b as J,c as K,d as M,e as a,f as o}from"./chunk-MIQTKZAR.js";import{a as W,e as B}from"./chunk-UZERI5YC.js";import{d as T,r as H}from"./chunk-IUYFXK4X.js";import"./chunk-XNGYYOLS.js";import{a as n,e as j,f as re,g as se,h as ie}from"./chunk-3XIESWL4.js";var X=j(se(),1),P=j(re(),1);var t=j(ie(),1);var ne=n(e=>e==="ok"?"success":e==="failed"?"destructive":e==="expired"?"warning":"secondary","te"),Q=n(e=>e.endpoint??e.id,"P"),xe=n(()=>{let e=(0,X.c)(38),r=T(),[i,Y]=(0,P.useState)("all"),[l,Z]=(0,P.useState)(""),g;e[0]===Symbol.for("react.memo_cache_sentinel")?(g={},e[0]=g):g=e[0];let{data:_,error:c,errorSource:v,isLoading:I,refetch:x}=O(U.listPushSubscriptions,g),N;if(e[1]!==_?.subscriptions||e[2]!==c||e[3]!==v||e[4]!==I||e[5]!==i||e[6]!==x||e[7]!==l||e[8]!==r){let L=_?.subscriptions??[],z=l.trim().toLowerCase(),A=L.filter(s=>i!=="all"&&s.kind!==i?!1:z===""?!0:`${Q(s)} ${s.userId??""}`.toLowerCase().includes(z)),b;e[10]===Symbol.for("react.memo_cache_sentinel")?(b=n(s=>{Z(s.target.value)},"b"),e[10]=b):b=e[10];let ee=b,w;e[11]!==x?(w=n(()=>{x()},"w"),e[11]=x,e[12]=w):w=e[12];let E=w,k;e[13]===Symbol.for("react.memo_cache_sentinel")?(k=["all","web-push","fcm"],e[13]=k):k=e[13];let te=k,d;e[14]!==i||e[15]!==r?(d=(0,t.jsx)("div",{className:"flex items-center gap-1","data-testid":"nt-kind-filter",role:"tablist",children:te.map(s=>(0,t.jsx)(F,{"aria-selected":i===s,"data-testid":`nt-kind-${s}`,onClick:n(()=>{Y(s)},"onClick"),role:"tab",size:"sm",type:"button",variant:i===s?"secondary":"ghost",children:s==="all"?r("All"):s},s))}),e[14]=i,e[15]=r,e[16]=d):d=e[16];let m;e[17]!==r?(m=r("Filter devices"),e[17]=r,e[18]=m):m=e[18];let h;e[19]!==r?(h=r("filter endpoint, user"),e[19]=r,e[20]=h):h=e[20];let u;e[21]!==l||e[22]!==m||e[23]!==h?(u=(0,t.jsx)(V,{"aria-label":m,className:"h-8 w-56","data-testid":"nt-search",onChange:ee,placeholder:h,value:l}),e[21]=l,e[22]=m,e[23]=h,e[24]=u):u=e[24];let f;e[25]!==r?(f=r("Refresh"),e[25]=r,e[26]=f):f=e[26];let p;e[27]!==E||e[28]!==f?(p=(0,t.jsx)(F,{className:"ml-auto","data-testid":"nt-refresh",onClick:E,size:"sm",type:"button",variant:"outline",children:f}),e[27]=E,e[28]=f,e[29]=p):p=e[29];let $=L.length>0&&(0,t.jsx)(C,{"data-testid":"nt-count",variant:"secondary",children:r("{count} devices",{count:L.length})}),y;e[30]!==p||e[31]!==$||e[32]!==d||e[33]!==u?(y=(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[d,u,p,$]}),e[30]=p,e[31]=$,e[32]=d,e[33]=u,e[34]=y):y=e[34];let S;e[35]!==c||e[36]!==v?(S=c!==null&&(0,t.jsx)(q,{error:v,testId:"nt-error"}),e[35]=c,e[36]=v,e[37]=S):S=e[37],N=(0,t.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"lunora-notifications",children:[y,S,c===null&&!I&&A.length===0&&(0,t.jsx)(D,{description:r("Registered Web Push / FCM devices appear here. Configure lunora/notify.ts with defineNotify({ store }) and register a device with ctx.push.register(...)."),icon:(0,t.jsx)("svg",{"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:(0,t.jsx)("path",{d:"M15 17h5l-1.4-1.4A2 2 0 0 1 18 14.2V11a6 6 0 0 0-4-5.7V5a2 2 0 1 0-4 0v.3A6 6 0 0 0 6 11v3.2a2 2 0 0 1-.6 1.4L4 17h5m6 0v1a3 3 0 1 1-6 0v-1m6 0H9"})}),testId:"nt-empty",title:r("No registered devices.")}),A.length>0&&(0,t.jsx)(W,{className:"overflow-hidden py-0",children:(0,t.jsx)(B,{className:"max-h-[30rem] overflow-auto px-0",children:(0,t.jsxs)(G,{"data-testid":"nt-table",children:[(0,t.jsx)(J,{children:(0,t.jsxs)(M,{children:[(0,t.jsx)(a,{children:r("kind")}),(0,t.jsx)(a,{children:r("endpoint")}),(0,t.jsx)(a,{children:r("user")}),(0,t.jsx)(a,{children:r("last seen")}),(0,t.jsx)(a,{children:r("status")}),(0,t.jsx)(a,{children:r("error")})]})}),(0,t.jsx)(K,{children:A.map(s=>{let R=Q(s);return(0,t.jsxs)(M,{"data-testid":"nt-row",children:[(0,t.jsx)(o,{children:(0,t.jsx)(C,{variant:"outline",children:s.kind})}),(0,t.jsx)(o,{className:"max-w-[28ch] truncate font-mono text-xs",title:R,children:R}),(0,t.jsx)(o,{className:"max-w-[16ch] truncate font-mono text-xs",children:s.userId??(0,t.jsx)("span",{className:"text-muted-foreground",children:"\u2014"})}),(0,t.jsx)(o,{className:"text-muted-foreground tabular-nums",children:H(s.lastSeenAt,"\u2014")}),(0,t.jsx)(o,{children:(0,t.jsx)(C,{"data-testid":`nt-status-${s.id}`,variant:ne(s.lastStatus),children:s.lastStatus??r("n/a")})}),(0,t.jsx)(o,{className:"max-w-[28ch] truncate font-mono text-xs text-muted-foreground",title:s.lastError??void 0,children:s.lastError??(0,t.jsx)("span",{className:"text-muted-foreground",children:"\u2014"})})]},s.id)})})]})})})]}),e[1]=_?.subscriptions,e[2]=c,e[3]=v,e[4]=I,e[5]=i,e[6]=x,e[7]=l,e[8]=r,e[9]=N}else N=e[9];return N},"ve");export{xe as NotificationsPanel};
@@ -0,0 +1 @@
1
+ import{a as ye,d as et,e as $e,f as pt}from"./chunk-2PJNAWB3.js";import{a as ht,b as Ue}from"./chunk-BGBLQ563.js";import{C as Ee,e as ut,i as dt,p as De,q as mt}from"./chunk-CFPZYHPY.js";import{a as he,c as pe}from"./chunk-2OUPA2WJ.js";import{c as be,j as U}from"./chunk-6ST5ECQA.js";import{a as r,d as Vt,e as N,f as te,g as zt,h as Le,j as Qe}from"./chunk-3XIESWL4.js";var Mt=N(zt(),1);var ce={};Vt(ce,{Content:()=>Ct,Corner:()=>Tt,Root:()=>vt,Scrollbar:()=>Ot,Thumb:()=>Xt,Viewport:()=>Et});var s=N(te(),1);var Fe=N(te(),1);var tt=Fe.createContext(void 0);function q(){let e=Fe.useContext(tt);if(e===void 0)throw new Error(be(53));return e}r(q,"useScrollAreaRootContext");var Ae=(function(e){return e.scrollAreaCornerHeight="--scroll-area-corner-height",e.scrollAreaCornerWidth="--scroll-area-corner-width",e})({});function Y(e,t,i){if(!e)return 0;let y=getComputedStyle(e),O=i==="x"?"Inline":"Block";return i==="x"&&t==="margin"?parseFloat(y[`${t}InlineStart`])*2:parseFloat(y[`${t}${O}Start`])+parseFloat(y[`${t}${O}End`])}r(Y,"getOffset");var St=(function(e){return e.orientation="data-orientation",e.hovering="data-hovering",e.scrolling="data-scrolling",e.hasOverflowX="data-has-overflow-x",e.hasOverflowY="data-has-overflow-y",e.overflowXStart="data-overflow-x-start",e.overflowXEnd="data-overflow-x-end",e.overflowYStart="data-overflow-y-start",e.overflowYEnd="data-overflow-y-end",e})({});var Se=(function(e){return e.scrolling="data-scrolling",e.hasOverflowX="data-has-overflow-x",e.hasOverflowY="data-has-overflow-y",e.overflowXStart="data-overflow-x-start",e.overflowXEnd="data-overflow-x-end",e.overflowYStart="data-overflow-y-start",e.overflowYEnd="data-overflow-y-end",e})({});var le={hasOverflowX:r(e=>e?{[Se.hasOverflowX]:""}:null,"hasOverflowX"),hasOverflowY:r(e=>e?{[Se.hasOverflowY]:""}:null,"hasOverflowY"),overflowXStart:r(e=>e?{[Se.overflowXStart]:""}:null,"overflowXStart"),overflowXEnd:r(e=>e?{[Se.overflowXEnd]:""}:null,"overflowXEnd"),overflowYStart:r(e=>e?{[Se.overflowYStart]:""}:null,"overflowYStart"),overflowYEnd:r(e=>e?{[Se.overflowYEnd]:""}:null,"overflowYEnd"),cornerHidden:r(()=>null,"cornerHidden")};var wt=N(Le(),1);var It={x:0,y:0},xt={width:0,height:0},_t={xStart:!1,xEnd:!1,yStart:!1,yEnd:!1},Lt={x:!0,y:!0,corner:!0},vt=s.forwardRef(r(function(t,i){let{render:y,className:O,overflowEdgeThreshold:a,style:x,...f}=t,{xStart:w,xEnd:R,yStart:X,yEnd:j}=Dt(a),T=ut(),C=Ee(),v=Ee(),{nonce:M,disableStyleElements:S}=pt(),[b,h]=s.useState(!1),[$,V]=s.useState(!1),[H,F]=s.useState(!1),[k,z]=s.useState(!1),[ie,G]=s.useState(!1),[B,fe]=s.useState(xt),[J,Ye]=s.useState(xt),[W,I]=s.useState(_t),[l,Q]=s.useState(Lt),K=s.useRef(null),m=s.useRef(null),g=s.useRef(null),o=s.useRef(null),c=s.useRef(null),u=s.useRef(null),p=s.useRef(null),E=s.useRef(!1),_=s.useRef(0),L=s.useRef(0),A=s.useRef(0),oe=s.useRef(0),P=s.useRef("vertical"),xe=s.useRef(It),we=pe(n=>{let ee=n.x-xe.current.x,Te=n.y-xe.current.y;xe.current=n,Te!==0&&(F(!0),C.start(500,()=>{F(!1)})),ee!==0&&(V(!0),v.start(500,()=>{V(!1)}))}),ne=pe(n=>{n.button===0&&(E.current=!0,_.current=n.clientY,L.current=n.clientX,P.current=n.currentTarget.getAttribute(St.orientation),m.current&&(A.current=m.current.scrollTop,oe.current=m.current.scrollLeft),c.current&&P.current==="vertical"&&c.current.setPointerCapture(n.pointerId),u.current&&P.current==="horizontal"&&u.current.setPointerCapture(n.pointerId))}),ze=pe(n=>{if(!E.current)return;let ee=n.clientY-_.current,Te=n.clientX-L.current;if(m.current){let Me=m.current.scrollHeight,Ie=m.current.clientHeight,Ke=m.current.scrollWidth,Ze=m.current.clientWidth;if(c.current&&g.current&&P.current==="vertical"){let ue=Y(g.current,"padding","y"),de=Y(c.current,"margin","y"),Re=c.current.offsetHeight,He=g.current.offsetHeight-Re-ue-de,We=ee/He;m.current.scrollTop=A.current+We*(Me-Ie),n.preventDefault(),F(!0),C.start(500,()=>{F(!1)})}if(u.current&&o.current&&P.current==="horizontal"){let ue=Y(o.current,"padding","x"),de=Y(u.current,"margin","x"),Re=u.current.offsetWidth,He=o.current.offsetWidth-Re-ue-de,We=Te/He;m.current.scrollLeft=oe.current+We*(Ke-Ze),n.preventDefault(),V(!0),v.start(500,()=>{V(!1)})}}}),ve=pe(n=>{E.current=!1,c.current&&P.current==="vertical"&&c.current.hasPointerCapture(n.pointerId)&&c.current.releasePointerCapture(n.pointerId),u.current&&P.current==="horizontal"&&u.current.hasPointerCapture(n.pointerId)&&u.current.releasePointerCapture(n.pointerId)});function D(n){z(n.pointerType==="touch")}r(D,"handleTouchModalityChange");function Z(n){if(D(n),n.pointerType!=="touch"){let ee=De(K.current,n.target);h(ee)}}r(Z,"handlePointerEnterOrMove");let Xe=s.useMemo(()=>({scrolling:$||H,hasOverflowX:!l.x,hasOverflowY:!l.y,overflowXStart:W.xStart,overflowXEnd:W.xEnd,overflowYStart:W.yStart,overflowYEnd:W.yEnd,cornerHidden:l.corner}),[$,H,l.x,l.y,l.corner,W]),Be={role:"presentation",onPointerEnter:Z,onPointerMove:Z,onPointerDown:D,onPointerLeave(){h(!1)},style:{position:"relative",[Ae.scrollAreaCornerHeight]:`${B.height}px`,[Ae.scrollAreaCornerWidth]:`${B.width}px`}},ge=U("div",t,{state:Xe,ref:[i,K],props:[Be,f],stateAttributesMapping:le}),Ne=s.useMemo(()=>({handlePointerDown:ne,handlePointerMove:ze,handlePointerUp:ve,handleScroll:we,cornerSize:B,setCornerSize:fe,thumbSize:J,setThumbSize:Ye,hasMeasuredScrollbar:ie,setHasMeasuredScrollbar:G,touchModality:k,cornerRef:p,scrollingX:$,setScrollingX:V,scrollingY:H,setScrollingY:F,hovering:b,setHovering:h,viewportRef:m,rootRef:K,scrollbarYRef:g,scrollbarXRef:o,thumbYRef:c,thumbXRef:u,rootId:T,hiddenState:l,setHiddenState:Q,overflowEdges:W,setOverflowEdges:I,viewportState:Xe,overflowEdgeThreshold:{xStart:w,xEnd:R,yStart:X,yEnd:j}}),[ne,ze,ve,we,B,J,ie,k,$,V,H,F,b,h,T,l,W,Xe,w,R,X,j]);return(0,wt.jsxs)(tt.Provider,{value:Ne,children:[!S&&$e.getElement(M),ge]})},"ScrollAreaRoot"));function Dt(e){if(typeof e=="number"){let t=Math.max(0,e);return{xStart:t,xEnd:t,yStart:t,yEnd:t}}return{xStart:Math.max(0,e?.xStart||0),xEnd:Math.max(0,e?.xEnd||0),yStart:Math.max(0,e?.yStart||0),yEnd:Math.max(0,e?.yEnd||0)}}r(Dt,"normalizeOverflowEdgeThreshold");var se=N(te(),1);var ke=N(te(),1);var ot=ke.createContext(void 0);function gt(){let e=ke.useContext(ot);if(e===void 0)throw new Error(be(55));return e}r(gt,"useScrollAreaViewportContext");var re=(function(e){return e.scrollAreaOverflowXStart="--scroll-area-overflow-x-start",e.scrollAreaOverflowXEnd="--scroll-area-overflow-x-end",e.scrollAreaOverflowYStart="--scroll-area-overflow-y-start",e.scrollAreaOverflowYEnd="--scroll-area-overflow-y-end",e})({});var bt=N(Le(),1);var Rt=!1;function $t(){Rt||dt.engine.webkit||(typeof CSS<"u"&&"registerProperty"in CSS&&[re.scrollAreaOverflowXStart,re.scrollAreaOverflowXEnd,re.scrollAreaOverflowYStart,re.scrollAreaOverflowYEnd].forEach(e=>{try{CSS.registerProperty({name:e,syntax:"<length>",inherits:!1,initialValue:"0px"})}catch{}}),Rt=!0)}r($t,"removeCSSVariableInheritance");var Et=se.forwardRef(r(function(t,i){let{render:y,className:O,style:a,...x}=t,{viewportRef:f,scrollbarYRef:w,scrollbarXRef:R,thumbYRef:X,thumbXRef:j,cornerRef:T,cornerSize:C,setCornerSize:v,setThumbSize:M,rootId:S,setHiddenState:b,hiddenState:h,setHasMeasuredScrollbar:$,handleScroll:V,setHovering:H,setOverflowEdges:F,overflowEdges:k,overflowEdgeThreshold:z,scrollingX:ie,scrollingY:G}=q(),B=Ue(),fe=se.useRef(!0),J=se.useRef([NaN,NaN,NaN,NaN]),Ye=Ee(),W=Ee(),I=pe(()=>{let o=f.current,c=w.current,u=R.current,p=X.current,E=j.current,_=T.current;if(!o)return;let L=o.scrollHeight,A=o.scrollWidth,oe=o.clientHeight,P=o.clientWidth,xe=o.scrollTop,we=o.scrollLeft,ne=J.current,ze=Number.isNaN(ne[0]);if(ne[0]=oe,ne[1]=L,ne[2]=P,ne[3]=A,ze&&$(!0),L===0||A===0)return;let ve=Ft(o),D=ve.y,Z=ve.x,Xe=P/A,Be=oe/L,ge=Math.max(0,A-P),Ne=Math.max(0,L-oe),n=0,ee=0;if(!Z){let d=0;B==="rtl"?d=ye(-we,0,ge):d=ye(we,0,ge),n=et(d,ge),ee=ge-n}let Te=D?0:ye(xe,0,Ne),Me=D?0:et(Te,Ne),Ie=D?0:Ne-Me,Ke=Z?0:P,Ze=D?0:oe,ue=0,de=0;!Z&&!D&&(ue=c?.offsetWidth||0,de=u?.offsetHeight||0);let Re=C.width===0&&C.height===0,He=Re?ue:0,We=Re?de:0,lt=Y(u,"padding","x"),st=Y(c,"padding","y"),ct=Y(E,"margin","x"),at=Y(p,"margin","y"),it=Ke-lt-ct,ft=Ze-st-at,Ht=u?Math.min(u.offsetWidth-He,it):it,Wt=c?Math.min(c.offsetHeight-We,ft):ft,qe=Math.max(16,Ht*Xe),Ge=Math.max(16,Wt*Be);if(M(d=>d.height===Ge&&d.width===qe?d:{width:qe,height:Ge}),c&&p){let d=c.offsetHeight-Ge-st-at,me=L-oe,_e=me===0?0:xe/me,Je=Math.min(d,Math.max(0,_e*d));p.style.transform=`translate3d(0,${Je}px,0)`}if(u&&E){let d=u.offsetWidth-qe-lt-ct,me=A-P,_e=me===0?0:we/me,Je=B==="rtl"?ye(_e*d,-d,0):ye(_e*d,0,d);E.style.transform=`translate3d(${Je}px,0,0)`}let Pt=[[re.scrollAreaOverflowXStart,n],[re.scrollAreaOverflowXEnd,ee],[re.scrollAreaOverflowYStart,Me],[re.scrollAreaOverflowYEnd,Ie]];for(let[d,me]of Pt)o.style.setProperty(d,`${me}px`);_&&(Z||D?v({width:0,height:0}):!Z&&!D&&v({width:ue,height:de})),b(d=>kt(d,ve));let Pe={xStart:!Z&&n>z.xStart,xEnd:!Z&&ee>z.xEnd,yStart:!D&&Me>z.yStart,yEnd:!D&&Ie>z.yEnd};F(d=>d.xStart===Pe.xStart&&d.xEnd===Pe.xEnd&&d.yStart===Pe.yStart&&d.yEnd===Pe.yEnd?d:Pe)});he(()=>{f.current&&$t()},[f]),he(()=>{queueMicrotask(I)},[I,h,B,z.xStart,z.xEnd,z.yStart,z.yEnd]),he(()=>{f.current?.matches(":hover")&&H(!0)},[f,H]),he(()=>{let o=f.current;if(typeof ResizeObserver>"u"||!o)return;let c=!1,u=new ResizeObserver(()=>{if(!c){c=!0;let p=J.current;if(p[0]===o.clientHeight&&p[1]===o.scrollHeight&&p[2]===o.clientWidth&&p[3]===o.scrollWidth)return}I()});return u.observe(o),W.start(0,()=>{let p=o.getAnimations({subtree:!0});p.length!==0&&Promise.allSettled(p.map(E=>E.finished)).then(I).catch(()=>{})}),()=>{u.disconnect(),W.clear()}},[I,f,W]);function l(){fe.current=!1}r(l,"handleUserInteraction");let Q={role:"presentation",...S&&{"data-id":`${S}-viewport`},tabIndex:h.x&&h.y?-1:0,className:$e.className,style:{overflow:"scroll"},onScroll(){f.current&&(I(),fe.current||V({x:f.current.scrollLeft,y:f.current.scrollTop}),Ye.start(100,()=>{fe.current=!0}))},onWheel:l,onTouchMove:l,onPointerMove:l,onPointerEnter:l,onKeyDown:l},K=se.useMemo(()=>({scrolling:ie||G,hasOverflowX:!h.x,hasOverflowY:!h.y,overflowXStart:k.xStart,overflowXEnd:k.xEnd,overflowYStart:k.yStart,overflowYEnd:k.yEnd,cornerHidden:h.corner}),[ie,G,h.x,h.y,h.corner,k]),m=U("div",t,{ref:[i,f],state:K,props:[Q,x],stateAttributesMapping:le}),g=se.useMemo(()=>({computeThumbPosition:I}),[I]);return(0,bt.jsx)(ot.Provider,{value:g,children:m})},"ScrollAreaViewport"));function Ft(e){let t=e.clientHeight>=e.scrollHeight,i=e.clientWidth>=e.scrollWidth;return{y:t,x:i,corner:t||i}}r(Ft,"getHiddenState");function kt(e,t){return e.y===t.y&&e.x===t.x&&e.corner===t.corner?e:t}r(kt,"mergeHiddenState");var Ce=N(te(),1);var je=N(te(),1);var nt=je.createContext(void 0);function yt(){let e=je.useContext(nt);if(e===void 0)throw new Error(be(54));return e}r(yt,"useScrollAreaScrollbarContext");var Oe=(function(e){return e.scrollAreaThumbHeight="--scroll-area-thumb-height",e.scrollAreaThumbWidth="--scroll-area-thumb-width",e})({});var At=N(Le(),1);var Ot=Ce.forwardRef(r(function(t,i){let{render:y,className:O,orientation:a="vertical",keepMounted:x=!1,style:f,...w}=t,{hovering:R,scrollingX:X,scrollingY:j,hiddenState:T,overflowEdges:C,scrollbarYRef:v,scrollbarXRef:M,viewportRef:S,thumbYRef:b,thumbXRef:h,handlePointerDown:$,handlePointerUp:V,handleScroll:H,rootId:F,thumbSize:k,hasMeasuredScrollbar:z}=q(),ie={hovering:R,scrolling:{horizontal:X,vertical:j}[a],orientation:a,hasOverflowX:!T.x,hasOverflowY:!T.y,overflowXStart:C.xStart,overflowXEnd:C.xEnd,overflowYStart:C.yStart,overflowYEnd:C.yEnd,cornerHidden:T.corner},G=Ue(),B=!z&&!x,fe=a==="vertical"?T.y:T.x,J=x||!fe;Ce.useEffect(()=>{if(!J)return;let l=S.current,Q=a==="vertical"?v.current:M.current;if(!Q)return;function K(m){if(!l||!Q||m.ctrlKey)return;let g=a==="horizontal",o=g?"scrollLeft":"scrollTop",c=g?m.deltaX:m.deltaY;if(c===0)return;let u=g?l.scrollWidth-l.clientWidth:l.scrollHeight-l.clientHeight,p=g&&G==="rtl"?-u:0,E=g&&G==="rtl"?0:u,_=l[o];_<=p&&c<0||_>=E&&c>0||(m.preventDefault(),l[o]=Math.min(E,Math.max(p,_+c)),H({x:l.scrollLeft,y:l.scrollTop}))}return r(K,"handleWheel"),ht(Q,"wheel",K,{passive:!1})},[G,H,a,M,v,J,S]);let Ye={...F&&{"data-id":`${F}-scrollbar`},onPointerDown(l){if(l.button!==0)return;let Q=mt(l.nativeEvent),K=a==="vertical"?b.current:h.current;if(!(K&&De(K,Q))&&S.current){if(b.current&&v.current&&a==="vertical"){let m=Y(b.current,"margin","y"),g=Y(v.current,"padding","y"),o=b.current.offsetHeight,c=v.current.getBoundingClientRect(),u=l.clientY-c.top-o/2-g+m/2,p=S.current.scrollHeight,E=S.current.clientHeight,_=v.current.offsetHeight-o-g-m,A=u/_*(p-E);S.current.scrollTop=A}if(h.current&&M.current&&a==="horizontal"){let m=Y(h.current,"margin","x"),g=Y(M.current,"padding","x"),o=h.current.offsetWidth,c=M.current.getBoundingClientRect(),u=l.clientX-c.left-o/2-g+m/2,p=S.current.scrollWidth,E=S.current.clientWidth,_=M.current.offsetWidth-o-g-m,L=u/_,A;G==="rtl"?(A=(1-L)*(p-E),S.current.scrollLeft<=0&&(A=-A)):A=L*(p-E),S.current.scrollLeft=A}H({x:S.current.scrollLeft,y:S.current.scrollTop}),$(l)}},onPointerUp:V,onPointerCancel:V,style:{position:"absolute",touchAction:"none",WebkitUserSelect:"none",userSelect:"none",visibility:B?"hidden":void 0,...a==="vertical"&&{top:0,bottom:`var(${Ae.scrollAreaCornerHeight})`,insetInlineEnd:0,[Oe.scrollAreaThumbHeight]:`${k.height}px`},...a==="horizontal"&&{insetInlineStart:0,insetInlineEnd:`var(${Ae.scrollAreaCornerWidth})`,bottom:0,[Oe.scrollAreaThumbWidth]:`${k.width}px`}}},W=U("div",t,{ref:[i,a==="vertical"?v:M],state:ie,props:[Ye,w],stateAttributesMapping:le}),I=Ce.useMemo(()=>({orientation:a}),[a]);return J?(0,At.jsx)(nt.Provider,{value:I,children:W}):null},"ScrollAreaScrollbar"));var Ve=N(te(),1);var Ct=Ve.forwardRef(r(function(t,i){let{render:y,className:O,style:a,...x}=t,{computeThumbPosition:f}=gt(),{hasMeasuredScrollbar:w,viewportState:R}=q(),X=Ve.useRef(null),j=Ve.useRef(w);return he(()=>{if(typeof ResizeObserver>"u")return;let C=!1,v=new ResizeObserver(()=>{!C&&(C=!0,!j.current)||f()});return X.current&&v.observe(X.current),()=>{v.disconnect()}},[f]),U("div",t,{ref:[i,X],state:R,stateAttributesMapping:le,props:[{role:"presentation",style:{minWidth:"fit-content"}},x]})},"ScrollAreaContent"));var Yt=N(te(),1);var Xt=Yt.forwardRef(r(function(t,i){let{render:y,className:O,style:a,...x}=t,{thumbYRef:f,thumbXRef:w,handlePointerDown:R,handlePointerMove:X,handlePointerUp:j,setScrollingX:T,setScrollingY:C,scrollingX:v,scrollingY:M,hasMeasuredScrollbar:S}=q(),{orientation:b}=yt(),h={scrolling:b==="horizontal"?v:M,orientation:b};function $(H){b==="vertical"&&C(!1),b==="horizontal"&&T(!1),j(H)}return r($,"endDrag"),U("div",t,{ref:[i,b==="vertical"?f:w],state:h,props:[{onPointerDown:R,onPointerMove:X,onPointerUp:$,onPointerCancel:$,style:{visibility:S?void 0:"hidden",...b==="vertical"&&{height:`var(${Oe.scrollAreaThumbHeight})`},...b==="horizontal"&&{width:`var(${Oe.scrollAreaThumbWidth})`}}},x]})},"ScrollAreaThumb"));var Nt=N(te(),1);var Tt=Nt.forwardRef(r(function(t,i){let{render:y,className:O,style:a,...x}=t,{cornerRef:f,cornerSize:w,hiddenState:R}=q(),X=U("div",t,{ref:[i,f],props:[{style:{position:"absolute",bottom:0,insetInlineEnd:0,width:w.width,height:w.height}},x]});return R.corner?null:X},"ScrollAreaCorner"));var ae=N(Le(),1);function Co(e){let t=(0,Mt.c)(14),i,y,O;t[0]!==e?({className:y,children:i,...O}=e,t[0]=e,t[1]=i,t[2]=y,t[3]=O):(i=t[1],y=t[2],O=t[3]);let a;t[4]!==y?(a=Qe("relative",y),t[4]=y,t[5]=a):a=t[5];let x;t[6]!==i?(x=(0,ae.jsx)(ce.Viewport,{"data-slot":"scroll-area-viewport",className:"size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1",children:i}),t[6]=i,t[7]=x):x=t[7];let f,w;t[8]===Symbol.for("react.memo_cache_sentinel")?(f=(0,ae.jsx)(jt,{}),w=(0,ae.jsx)(ce.Corner,{}),t[8]=f,t[9]=w):(f=t[8],w=t[9]);let R;return t[10]!==O||t[11]!==a||t[12]!==x?(R=(0,ae.jsxs)(ce.Root,{"data-slot":"scroll-area",className:a,...O,children:[x,f,w]}),t[10]=O,t[11]=a,t[12]=x,t[13]=R):R=t[13],R}r(Co,"z");function jt({className:e,orientation:t="vertical",...i}){return(0,ae.jsx)(ce.Scrollbar,{"data-slot":"scroll-area-scrollbar","data-orientation":t,orientation:t,className:Qe("flex touch-none p-px transition-colors select-none data-horizontal:h-2.5 data-horizontal:flex-col data-horizontal:border-t data-horizontal:border-t-transparent data-vertical:h-full data-vertical:w-2.5 data-vertical:border-s data-vertical:border-s-transparent",e),...i,children:(0,ae.jsx)(ce.Thumb,{"data-slot":"scroll-area-thumb",className:"relative flex-1 rounded-md bg-border"})})}r(jt,"f");export{Co as a};
@@ -0,0 +1 @@
1
+ import{a as E}from"./chunk-54MMVNPT.js";import{c as w}from"./chunk-FXCBF4XT.js";import"./chunk-2OUPA2WJ.js";import"./chunk-6ST5ECQA.js";import{b as $}from"./chunk-4D7XIQ5Q.js";import{f as b}from"./chunk-DBWOWJYT.js";import"./chunk-XBDKZZ67.js";import{a as j}from"./chunk-XQCVZAGU.js";import{a as z,b as B,c as C,d as g,e as n,f as i}from"./chunk-MIQTKZAR.js";import{a as S,e as I}from"./chunk-UZERI5YC.js";import{d as k,o as R,r as _}from"./chunk-IUYFXK4X.js";import"./chunk-XNGYYOLS.js";import{a as h,e as y,g as O,h as P}from"./chunk-3XIESWL4.js";var L=y(O(),1);var s=y(P(),1);var T=200,U=h(()=>{let e=(0,L.c)(21),l=b(),t=k(),u;e[0]===Symbol.for("react.memo_cache_sentinel")?(u=["lunora-auth-sessions",T],e[0]=u):u=e[0];let p;e[1]!==l?(p=h(()=>l.listAuthSessions({limit:T}),"u"),e[1]=l,e[2]=p):p=e[2];let o=$(u,p),{error:f}=o,a=o.data?.rows??null,x;e[3]!==o?(x=h(()=>{o.refetch()},"f"),e[3]=o,e[4]=x):x=e[4],E(x,!0);let N;e[5]!==l||e[6]!==o?(N=h(r=>{R((async()=>{await l.revokeAuthSession({sessionId:r}),o.refetch()})())},"x"),e[5]=l,e[6]=o,e[7]=N):N=e[7];let A=N,d;e[8]!==f?(d=f!==null&&(0,s.jsx)("p",{className:"text-sm text-destructive","data-testid":"auth-sessions-error",role:"alert",children:f}),e[8]=f,e[9]=d):d=e[9];let c;e[10]!==a||e[11]!==t?(c=a!==null&&a.length===0&&(0,s.jsx)(j,{testId:"auth-sessions-empty",title:t("No active sessions.")}),e[10]=a,e[11]=t,e[12]=c):c=e[12];let m;e[13]!==A||e[14]!==a||e[15]!==t?(m=a!==null&&a.length>0&&(0,s.jsx)(S,{className:"overflow-hidden py-0",children:(0,s.jsx)(I,{className:"px-0",children:(0,s.jsxs)(z,{"data-testid":"auth-sessions-table",children:[(0,s.jsx)(B,{children:(0,s.jsxs)(g,{children:[(0,s.jsx)(n,{children:t("user")}),(0,s.jsx)(n,{children:t("expires")}),(0,s.jsx)(n,{children:t("ip")}),(0,s.jsx)(n,{children:t("user agent")}),(0,s.jsx)(n,{children:t("impersonated by")}),(0,s.jsx)(n,{"aria-label":t("Actions")})]})}),(0,s.jsx)(C,{children:a.map(r=>(0,s.jsxs)(g,{"data-testid":`auth-session-${r.id}`,children:[(0,s.jsx)(i,{className:"font-mono text-xs",children:r.userId}),(0,s.jsx)(i,{className:"text-muted-foreground tabular-nums",children:_(r.expiresAt)}),(0,s.jsx)(i,{children:r.ipAddress??""}),(0,s.jsx)(i,{className:"max-w-40 truncate",children:r.userAgent??""}),(0,s.jsx)(i,{className:"font-mono text-xs",children:r.impersonatedBy??""}),(0,s.jsx)(i,{children:(0,s.jsx)(w,{"data-testid":`auth-session-revoke-${r.id}`,onClick:h(()=>{A(r.id)},"onClick"),size:"xs",type:"button",variant:"ghost",children:t("Revoke")})})]},r.id))})]})})}),e[13]=A,e[14]=a,e[15]=t,e[16]=m):m=e[16];let v;return e[17]!==d||e[18]!==c||e[19]!==m?(v=(0,s.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"auth-sessions",children:[d,c,m]}),e[17]=d,e[18]=c,e[19]=m,e[20]=v):v=e[20],v},"Q");export{U as AuthSessionsPanel};