kennel 0.2.3 → 0.2.6

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 (274) hide show
  1. package/README.md +23 -13
  2. package/dist/cli/dispatch.js +16 -3
  3. package/dist/cli/src/cli/dispatch.js +16 -3
  4. package/dist/cli/src/cli/usage.js +1 -1
  5. package/dist/cli/src/core/command.js +1 -0
  6. package/dist/cli/src/core/init.js +5 -5
  7. package/dist/cli/src/plugins/external.d.ts +28 -2
  8. package/dist/cli/src/plugins/external.js +77 -23
  9. package/dist/cli/src/site/server-plugins.d.ts +4 -9
  10. package/dist/cli/src/site/viewer.js +1 -0
  11. package/dist/cli/usage.js +1 -1
  12. package/dist/core/api-client.js +576 -10317
  13. package/dist/core/command.js +1 -0
  14. package/dist/core/core-folders.js +2313 -12088
  15. package/dist/core/init.js +5 -5
  16. package/dist/core/runtime.js +8237 -20713
  17. package/dist/package/preview.js +19617 -33352
  18. package/dist/plugins/external.d.ts +28 -2
  19. package/dist/plugins/external.js +77 -23
  20. package/dist/site/server-plugins.d.ts +4 -9
  21. package/dist/site/server-plugins.js +557 -10452
  22. package/dist/site/viewer.js +1 -0
  23. package/kernel/apps/web/package.json +2 -6
  24. package/kernel/apps/web/scripts/dev.mjs +53 -0
  25. package/kernel/apps/web/src/app.css +0 -3
  26. package/kernel/apps/web/src/external-plugins.ts +1 -1
  27. package/kernel/apps/web/src/folder-filter-icons.tsx +1 -1
  28. package/kernel/apps/web/src/folder-plugin-view.tsx +1 -1
  29. package/kernel/apps/web/src/main.tsx +0 -1
  30. package/kernel/apps/web/src/plugins.ts +1 -31
  31. package/kernel/apps/web/tsconfig.json +1 -2
  32. package/kernel/apps/web/vite.config.ts +32 -14
  33. package/kernel/packages/agents/package.json +1 -1
  34. package/kernel/packages/agents/src/agent-card.tsx +1 -1
  35. package/kernel/packages/agents/src/client.tsx +1 -1
  36. package/kernel/packages/agents/src/manifest.ts +1 -1
  37. package/kernel/packages/agents/src/server.ts +1 -1
  38. package/kernel/packages/agents/src/viewer.tsx +1 -1
  39. package/kernel/packages/api/package.json +1 -5
  40. package/kernel/packages/api/src/server/acp-live-plugin.ts +1 -1
  41. package/kernel/packages/api/src/server/api/create-agent-file.ts +2 -2
  42. package/kernel/packages/api/src/server/api/document-edit.ts +2 -2
  43. package/kernel/packages/api/src/server/api/open-path.ts +2 -2
  44. package/kernel/packages/api/src/server/folder-metadata-plugin.ts +17 -42
  45. package/kernel/packages/api/src/server/index.ts +0 -1
  46. package/kernel/packages/api/src/server/plugins.ts +52 -19
  47. package/kernel/packages/api/src/shared/viewer-route.ts +1 -1
  48. package/kernel/packages/api/test/core.test.ts +14 -26
  49. package/kernel/packages/markdown/README.md +1 -1
  50. package/kernel/packages/notes/package.json +1 -1
  51. package/kernel/packages/notes/src/client.tsx +1 -1
  52. package/kernel/packages/notes/src/manifest.ts +1 -1
  53. package/kernel/packages/notes/src/server.ts +1 -1
  54. package/kernel/packages/plugins/SKILL.md +39 -0
  55. package/kernel/{plugins/mail → packages/plugins}/package.json +53 -28
  56. package/kernel/packages/plugins/src/index.ts +52 -0
  57. package/kernel/packages/plugins/src/page.ts +17 -0
  58. package/kernel/{plugins/projects → packages/plugins}/tsconfig.json +5 -1
  59. package/kernel/packages/plugins/tsup.config.ts +25 -0
  60. package/kernel/packages/ui/src/components/content-issues.tsx +1 -1
  61. package/kernel/packages/ui/tsconfig.json +1 -1
  62. package/package.json +2 -3
  63. package/web/assets/{abnfDiagram-VRR7QNED-Bgfb1nEB.js → abnfDiagram-VRR7QNED-xd_g1uK3.js} +1 -1
  64. package/web/assets/app-CX20nNIa.js +2 -0
  65. package/web/assets/{app-options-D-RJiQ-X.js → app-options-CkPJE5ep.js} +1 -1
  66. package/web/assets/{app-view-header-BLvLq02T.js → app-view-header-CNk5KnA-.js} +1 -1
  67. package/web/assets/{arc-Dk_KI36B.js → arc-B0u5yBJA.js} +1 -1
  68. package/web/assets/{architectureDiagram-ZJ3FMSHR-NR_KhRCf.js → architectureDiagram-ZJ3FMSHR-DfxOAo8P.js} +1 -1
  69. package/web/assets/{ask-tray-TzeTcO6-.js → ask-tray-SscJecDY.js} +1 -1
  70. package/web/assets/{blockDiagram-677ZJIJ3-CkLkwx9C.js → blockDiagram-677ZJIJ3-Ci3Usxh6.js} +1 -1
  71. package/web/assets/{c4Diagram-LMCZKHZV-CFCUH8e_.js → c4Diagram-LMCZKHZV-BqgwIVgh.js} +1 -1
  72. package/web/assets/channel-X7WHyxxT.js +1 -0
  73. package/web/assets/{chunk-2Q5K7J3B-B_BPLWsW.js → chunk-2Q5K7J3B-CfX69l2U.js} +1 -1
  74. package/web/assets/{chunk-32BRIVSS-B1VB1hOy.js → chunk-32BRIVSS-CuFlzZkl.js} +1 -1
  75. package/web/assets/{chunk-5VM5RSS4-KFcYr8Co.js → chunk-5VM5RSS4-DidCMlJa.js} +1 -1
  76. package/web/assets/{chunk-EX3LRPZG-CpBX3kuK.js → chunk-EX3LRPZG-B5CDm1dS.js} +1 -1
  77. package/web/assets/{chunk-JWPE2WC7-BPSl40wG.js → chunk-JWPE2WC7-D5fGV_sH.js} +1 -1
  78. package/web/assets/{chunk-MOJQB5TN-D2RcYmoU.js → chunk-MOJQB5TN-ayhH5Q-H.js} +1 -1
  79. package/web/assets/{chunk-RYQCIY6F-m7Gyn-t3.js → chunk-RYQCIY6F-C4BfOOZn.js} +1 -1
  80. package/web/assets/{chunk-V7JOEXUC-TDvdopxS.js → chunk-V7JOEXUC-DpUEIM9V.js} +1 -1
  81. package/web/assets/{chunk-VR4S4FIN-DZTsG51a.js → chunk-VR4S4FIN-DoQuFFRh.js} +1 -1
  82. package/web/assets/{chunk-XXDRQBXY-Dp0--RE2.js → chunk-XXDRQBXY-CI9eiLwn.js} +1 -1
  83. package/web/assets/classDiagram-OUVF2IWQ-BjsLQ3dz.js +1 -0
  84. package/web/assets/classDiagram-v2-EOCWNBFH-BjsLQ3dz.js +1 -0
  85. package/web/assets/client-7OWw5kW2.js +6 -0
  86. package/web/assets/client-DYj_td4Q.js +17 -0
  87. package/web/assets/{client-j2kQmxsO.js → client-Dk-NBvJR.js} +4 -4
  88. package/web/assets/command-zkzH4hVz.js +38 -0
  89. package/web/assets/{copy-context-C0Uqsp-3.js → copy-context-D5oiWrYC.js} +1 -1
  90. package/web/assets/{cose-bilkent-JH36ORCC-CPu3PI8h.js → cose-bilkent-JH36ORCC-BHRk1mO3.js} +1 -1
  91. package/web/assets/{cynefin-VYW2F7L2-DWxftYAm.js → cynefin-VYW2F7L2-C1B09TRE.js} +1 -1
  92. package/web/assets/{cynefinDiagram-TSTJHNR4-DsmN2V-p.js → cynefinDiagram-TSTJHNR4-B27qXQbv.js} +1 -1
  93. package/web/assets/{dagre-VKFMJZFB-COEbApyY.js → dagre-VKFMJZFB-B1qEi32g.js} +1 -1
  94. package/web/assets/{diagram-FQU43EPY-0O9WGWKB.js → diagram-FQU43EPY-BMkkgADD.js} +1 -1
  95. package/web/assets/{diagram-G47NLZAW-CutEdMVh.js → diagram-G47NLZAW-Cb8_g1A5.js} +1 -1
  96. package/web/assets/{diagram-NH7WQ7WH-C9KZc3B2.js → diagram-NH7WQ7WH-B51wuc5m.js} +1 -1
  97. package/web/assets/{diagram-OA4YK3LP-D8kkPXbY.js → diagram-OA4YK3LP-xnsecbbI.js} +1 -1
  98. package/web/assets/{diagram-WEI45ONY-_YqiTaGP.js → diagram-WEI45ONY-DSZdyaAV.js} +1 -1
  99. package/web/assets/{document-Dgt5eZFj.js → document-Dc2dftTW.js} +3 -3
  100. package/web/assets/{ebnfDiagram-CCIWWBDH-JO-zQh6g.js → ebnfDiagram-CCIWWBDH-aTHmcUGy.js} +1 -1
  101. package/web/assets/{entities-C3wz7FCx.js → entities-CCUtpskY.js} +1 -1
  102. package/web/assets/{erDiagram-Q63AITRT-9UjQwJ4P.js → erDiagram-Q63AITRT-CUUPBcvo.js} +1 -1
  103. package/web/assets/{file-viewer-DZJ8nYnl.js → file-viewer-DJ3rsmef.js} +1 -1
  104. package/web/assets/{flowDiagram-23GEKE2U-Ca08tnYM.js → flowDiagram-23GEKE2U-aTQXx2Mh.js} +1 -1
  105. package/web/assets/{folder-image-BfGgxo7i.js → folder-image-Bnv43tzP.js} +1 -1
  106. package/web/assets/{folder-landing-qUKBCnG-.js → folder-landing-DCnzYXXY.js} +1 -1
  107. package/web/assets/{folder-list-BfFjv7rR.js → folder-list-DvVkVjiR.js} +1 -1
  108. package/web/assets/{folder-metadata-DCw8xzHk.js → folder-metadata-C9hMMzIH.js} +1 -1
  109. package/web/assets/{folder-mobile-bar-Ubz4babf.js → folder-mobile-bar-VoTL1GS0.js} +1 -1
  110. package/web/assets/folder-plugin-view-Cvd804ZU.js +6 -0
  111. package/web/assets/{ganttDiagram-NO4QXBWP-KnHzX5W3.js → ganttDiagram-NO4QXBWP-DiwdUp7u.js} +1 -1
  112. package/web/assets/{gitGraphDiagram-IHSO6WYX-Cm8woNtK.js → gitGraphDiagram-IHSO6WYX-BL2gG_IS.js} +1 -1
  113. package/web/assets/{index-CNyy98F8.js → index-CUTtMSyJ.js} +2 -2
  114. package/web/assets/index-CegvVQ1C.js +1 -0
  115. package/web/assets/index-Dwhf8F_U.css +1 -0
  116. package/web/assets/{infoDiagram-FWYZ7A6U-yyqmUtIb.js → infoDiagram-FWYZ7A6U-B3n0zZpt.js} +1 -1
  117. package/web/assets/{ishikawaDiagram-FXEZZL3T-BfvR_Zy4.js → ishikawaDiagram-FXEZZL3T-D7YytbEv.js} +1 -1
  118. package/web/assets/{journeyDiagram-5HDEW3XC-BKuw06HM.js → journeyDiagram-5HDEW3XC-BYwqEl3C.js} +1 -1
  119. package/web/assets/{kanban-definition-HUTT4EX6-n0010rmQ.js → kanban-definition-HUTT4EX6-BQHNJgXZ.js} +1 -1
  120. package/web/assets/{linear-C0d0lT8O.js → linear-BPiQCLNk.js} +1 -1
  121. package/web/assets/{mermaid.core-BDVbShyO.js → mermaid.core-CD-KvBjV.js} +4 -4
  122. package/web/assets/{metadata-KV0dpp4G.js → metadata-COJ7fZul.js} +1 -1
  123. package/web/assets/{mindmap-definition-LN4V7U3C--_0ks3GF.js → mindmap-definition-LN4V7U3C-C1L_gyoj.js} +1 -1
  124. package/web/assets/{pegDiagram-2B236MQR-CBoNIpKR.js → pegDiagram-2B236MQR-BDAfItqS.js} +1 -1
  125. package/web/assets/{pieDiagram-ENE6RG2P-MA5tkYh5.js → pieDiagram-ENE6RG2P-CkZYH3Vz.js} +1 -1
  126. package/web/assets/{popover-DBD7FF-W.js → popover-0oA2lLUV.js} +2 -2
  127. package/web/assets/{project-search-dialog-DM1IkSZu.js → project-search-dialog-B2oqMT6h.js} +1 -1
  128. package/web/assets/{quadrantDiagram-ABIIQ3AL-CWT1ryqF.js → quadrantDiagram-ABIIQ3AL-Dy8Al3YZ.js} +1 -1
  129. package/web/assets/{railroadDiagram-RFXS5EU6-ZiLB5FGi.js → railroadDiagram-RFXS5EU6-Dd9_yo7B.js} +1 -1
  130. package/web/assets/{requirementDiagram-TGXJPOKE-CQq9uneq.js → requirementDiagram-TGXJPOKE-DPhIUsbs.js} +1 -1
  131. package/web/assets/{sankeyDiagram-HTMAVEWB-qDG-0JqI.js → sankeyDiagram-HTMAVEWB-B2QkYtub.js} +1 -1
  132. package/web/assets/{search-DNrQA5fF.js → search-C1J0-xiB.js} +1 -1
  133. package/web/assets/select-CtXC_PLC.js +30 -0
  134. package/web/assets/{selection-popup-DmtTeRs2.js → selection-popup-qhlUFzGq.js} +1 -1
  135. package/web/assets/{sequenceDiagram-DBY2YBRQ-CiApurLO.js → sequenceDiagram-DBY2YBRQ-Bx7fcZDx.js} +1 -1
  136. package/web/assets/{sizeCapture-X5ZJPWSS-DZSR5QXm.js → sizeCapture-X5ZJPWSS-CIXIhl_A.js} +1 -1
  137. package/web/assets/{stateDiagram-2N3HPSRC-CjJJR9_z.js → stateDiagram-2N3HPSRC-DCrdAflB.js} +1 -1
  138. package/web/assets/stateDiagram-v2-6OUMAXLB-0KCFLYeQ.js +1 -0
  139. package/web/assets/{swimlanes-5IMT3BWC-CKmo1sg6.js → swimlanes-5IMT3BWC-DA2vc7iZ.js} +2 -2
  140. package/web/assets/swimlanesDiagram-G3AALYLV-CAw3AV84.js +8 -0
  141. package/web/assets/{timeline-definition-FHXFAJF6-D-NMwS3y.js → timeline-definition-FHXFAJF6-lKfJiV9V.js} +1 -1
  142. package/web/assets/{vennDiagram-L72KCM5P-CfL6LBWw.js → vennDiagram-L72KCM5P-DO1q2KzG.js} +1 -1
  143. package/web/assets/{view-context-gyDl_p2V.js → view-context-DXKM3-l1.js} +4 -4
  144. package/web/assets/{viewer-capabilities-Bpp8Uvcg.js → viewer-capabilities-Cig_xM9u.js} +1 -1
  145. package/web/assets/{wardleyDiagram-EHGQE667-DgldMxaj.js → wardleyDiagram-EHGQE667-Dal9LkuZ.js} +1 -1
  146. package/web/assets/{xychartDiagram-FW5EYKEG-CIoAIFX8.js → xychartDiagram-FW5EYKEG-B3dPLPII.js} +1 -1
  147. package/web/index.html +2 -2
  148. package/kernel/packages/api/test/partial-loading.test.ts +0 -43
  149. package/kernel/packages/folder-plugin/package.json +0 -50
  150. package/kernel/packages/folder-plugin/src/index.ts +0 -15
  151. package/kernel/packages/folder-plugin/tsconfig.json +0 -17
  152. package/kernel/plugins/calendar/SKILL.md +0 -173
  153. package/kernel/plugins/calendar/eslint.config.js +0 -10
  154. package/kernel/plugins/calendar/package.json +0 -73
  155. package/kernel/plugins/calendar/schema.json +0 -137
  156. package/kernel/plugins/calendar/src/calendar.tsx +0 -328
  157. package/kernel/plugins/calendar/src/client.tsx +0 -139
  158. package/kernel/plugins/calendar/src/context.ts +0 -48
  159. package/kernel/plugins/calendar/src/copy-button.tsx +0 -66
  160. package/kernel/plugins/calendar/src/event-dialog.tsx +0 -270
  161. package/kernel/plugins/calendar/src/index.ts +0 -4
  162. package/kernel/plugins/calendar/src/manifest.ts +0 -7
  163. package/kernel/plugins/calendar/src/parse.ts +0 -610
  164. package/kernel/plugins/calendar/src/server.ts +0 -160
  165. package/kernel/plugins/calendar/src/utils.ts +0 -80
  166. package/kernel/plugins/calendar/src/views.tsx +0 -418
  167. package/kernel/plugins/calendar/test/context.test.mjs +0 -60
  168. package/kernel/plugins/calendar/test/package.test.mjs +0 -43
  169. package/kernel/plugins/calendar/test/parse.test.mjs +0 -392
  170. package/kernel/plugins/calendar/test/server.test.mjs +0 -126
  171. package/kernel/plugins/calendar/tsconfig.json +0 -17
  172. package/kernel/plugins/mail/SKILL.md +0 -97
  173. package/kernel/plugins/mail/eslint.config.js +0 -10
  174. package/kernel/plugins/mail/src/api.ts +0 -359
  175. package/kernel/plugins/mail/src/bun-ffi.d.ts +0 -14
  176. package/kernel/plugins/mail/src/client.tsx +0 -14
  177. package/kernel/plugins/mail/src/flock.ts +0 -137
  178. package/kernel/plugins/mail/src/folders.ts +0 -37
  179. package/kernel/plugins/mail/src/history.ts +0 -485
  180. package/kernel/plugins/mail/src/index.ts +0 -3
  181. package/kernel/plugins/mail/src/mail-card.tsx +0 -123
  182. package/kernel/plugins/mail/src/mail-conversation.tsx +0 -153
  183. package/kernel/plugins/mail/src/mail-detail-page.tsx +0 -467
  184. package/kernel/plugins/mail/src/mail-hooks.ts +0 -252
  185. package/kernel/plugins/mail/src/mail-page.tsx +0 -109
  186. package/kernel/plugins/mail/src/mail-request.ts +0 -78
  187. package/kernel/plugins/mail/src/mail-send-box.tsx +0 -175
  188. package/kernel/plugins/mail/src/mailos.ts +0 -723
  189. package/kernel/plugins/mail/src/manifest.ts +0 -7
  190. package/kernel/plugins/mail/src/node.ts +0 -171
  191. package/kernel/plugins/mail/src/parse.ts +0 -139
  192. package/kernel/plugins/mail/src/server.ts +0 -125
  193. package/kernel/plugins/mail/src/types.ts +0 -10
  194. package/kernel/plugins/mail/src/viewer.tsx +0 -147
  195. package/kernel/plugins/mail/test/flock.test.mjs +0 -156
  196. package/kernel/plugins/mail/test/folders.test.mjs +0 -138
  197. package/kernel/plugins/mail/test/history.test.mjs +0 -460
  198. package/kernel/plugins/mail/test/mailos.test.mjs +0 -752
  199. package/kernel/plugins/mail/test/node.test.mjs +0 -207
  200. package/kernel/plugins/mail/test/package.test.mjs +0 -54
  201. package/kernel/plugins/mail/test/parse.test.mjs +0 -32
  202. package/kernel/plugins/mail/test/server.test.mjs +0 -116
  203. package/kernel/plugins/mail/test/viewer.test.mjs +0 -192
  204. package/kernel/plugins/mail/tsconfig.json +0 -17
  205. package/kernel/plugins/projects/SKILL.md +0 -73
  206. package/kernel/plugins/projects/eslint.config.js +0 -10
  207. package/kernel/plugins/projects/package.json +0 -70
  208. package/kernel/plugins/projects/src/client.tsx +0 -17
  209. package/kernel/plugins/projects/src/data/model.ts +0 -129
  210. package/kernel/plugins/projects/src/index.ts +0 -17
  211. package/kernel/plugins/projects/src/manifest.ts +0 -7
  212. package/kernel/plugins/projects/src/project-context.ts +0 -41
  213. package/kernel/plugins/projects/src/server.ts +0 -276
  214. package/kernel/plugins/projects/src/ui/project-card.tsx +0 -61
  215. package/kernel/plugins/projects/src/ui/projects-page.tsx +0 -102
  216. package/kernel/plugins/projects/test/package.test.mjs +0 -51
  217. package/kernel/plugins/tasks/SKILL.md +0 -341
  218. package/kernel/plugins/tasks/eslint.config.js +0 -10
  219. package/kernel/plugins/tasks/package.json +0 -74
  220. package/kernel/plugins/tasks/schema.json +0 -939
  221. package/kernel/plugins/tasks/src/api.ts +0 -212
  222. package/kernel/plugins/tasks/src/client.tsx +0 -23
  223. package/kernel/plugins/tasks/src/data/parse.ts +0 -544
  224. package/kernel/plugins/tasks/src/data/task-id.ts +0 -56
  225. package/kernel/plugins/tasks/src/data/todo-model.ts +0 -795
  226. package/kernel/plugins/tasks/src/index.ts +0 -34
  227. package/kernel/plugins/tasks/src/manifest.ts +0 -7
  228. package/kernel/plugins/tasks/src/pages/task-detail.tsx +0 -48
  229. package/kernel/plugins/tasks/src/pages/task-list.tsx +0 -88
  230. package/kernel/plugins/tasks/src/server.ts +0 -447
  231. package/kernel/plugins/tasks/src/styles.css +0 -9
  232. package/kernel/plugins/tasks/src/ui/compact-todo-list.tsx +0 -372
  233. package/kernel/plugins/tasks/src/ui/error-details.tsx +0 -78
  234. package/kernel/plugins/tasks/src/ui/task-page.tsx +0 -392
  235. package/kernel/plugins/tasks/src/ui/todo-agent-filter.tsx +0 -36
  236. package/kernel/plugins/tasks/src/ui/todo-filter-bar.tsx +0 -66
  237. package/kernel/plugins/tasks/src/ui/todo-item.tsx +0 -494
  238. package/kernel/plugins/tasks/src/ui/todo-status-filter.tsx +0 -60
  239. package/kernel/plugins/tasks/src/ui/todo-tag-filter.tsx +0 -48
  240. package/kernel/plugins/tasks/src/ui/todo-warnings.tsx +0 -106
  241. package/kernel/plugins/tasks/test/api.test.mjs +0 -99
  242. package/kernel/plugins/tasks/test/folder-sources.test.mjs +0 -46
  243. package/kernel/plugins/tasks/test/package.test.mjs +0 -54
  244. package/kernel/plugins/tasks/test/parse.test.mjs +0 -225
  245. package/kernel/plugins/tasks/test/server.test.mjs +0 -386
  246. package/kernel/plugins/tasks/tsconfig.json +0 -17
  247. package/web/assets/app-DoGr2Zi7.js +0 -2
  248. package/web/assets/channel-uMEjV8qc.js +0 -1
  249. package/web/assets/classDiagram-OUVF2IWQ-fbZocVor.js +0 -1
  250. package/web/assets/classDiagram-v2-EOCWNBFH-fbZocVor.js +0 -1
  251. package/web/assets/client-C6Nxdfif.js +0 -2
  252. package/web/assets/client-CXYfBko5.js +0 -17
  253. package/web/assets/client-CoKtOq-X.js +0 -7
  254. package/web/assets/client-DyRQz5RU.js +0 -53
  255. package/web/assets/client-OY6HUzuD.js +0 -98
  256. package/web/assets/client-YOYWZIFi.js +0 -34
  257. package/web/assets/command-BugZBGXE.js +0 -38
  258. package/web/assets/folder-plugin-view-DsWR1zmQ.js +0 -6
  259. package/web/assets/index-BaRnbYRw.js +0 -1
  260. package/web/assets/index-BexmLxIP.css +0 -1
  261. package/web/assets/index-DDirZMgx.js +0 -1
  262. package/web/assets/note-card-DBfX6gW1.js +0 -6
  263. package/web/assets/select-D8cqNgcp.js +0 -30
  264. package/web/assets/stateDiagram-v2-6OUMAXLB-BpeGSCu9.js +0 -1
  265. package/web/assets/swimlanesDiagram-G3AALYLV-D9RjLKb9.js +0 -8
  266. package/web/assets/use-folder-filter-LQyXns5Q.js +0 -1
  267. /package/kernel/packages/{folder-plugin → plugins}/eslint.config.js +0 -0
  268. /package/kernel/packages/{folder-plugin → plugins}/src/client.ts +0 -0
  269. /package/kernel/packages/{folder-plugin → plugins}/src/endpoint.ts +0 -0
  270. /package/kernel/packages/{folder-plugin → plugins}/src/server.ts +0 -0
  271. /package/kernel/packages/{folder-plugin → plugins}/src/subpath.ts +0 -0
  272. /package/kernel/packages/{folder-plugin → plugins}/src/types.ts +0 -0
  273. /package/kernel/packages/{folder-plugin → plugins}/src/validation.ts +0 -0
  274. /package/kernel/packages/{folder-plugin → plugins}/test/contract.test.mjs +0 -0
@@ -1,4 +1,4 @@
1
- import{c as S,j as r}from"./react-B9jn2M18.js";import{m as fe}from"./tanstack-YzX_Mi37.js";import{C as we,f as ze}from"./app-options-D-RJiQ-X.js";import{A as He}from"./app-view-header-BLvLq02T.js";import{l as k}from"./view-context-gyDl_p2V.js";import{B as K}from"./button-C6arH7zt.js";import{b as je,S as he,c as pe,d as xe,e as ge,f as X,C as Se}from"./select-D8cqNgcp.js";import{C as qe}from"./copy-context-C0Uqsp-3.js";import{F as Ue}from"./folder-list-BfFjv7rR.js";import{u as V,a as Y}from"./utils-DCaHk0Gm.js";import{l as Pe,u as We}from"./index-BaRnbYRw.js";import{c as Xe,g as Ye,b as I,P as q}from"./index-CCXE8zc9.js";import{c as Ge,u as Qe}from"./index-CXhBn-ar.js";import{u as Je}from"./folder-image-BfGgxo7i.js";import"./markdown-Bw9RgUGR.js";import"./popover-DBD7FF-W.js";import"./index-CNyy98F8.js";import"./index-Bp9DidgD.js";var Ze=Object.defineProperty,v=(e,t)=>Ze(e,"name",{value:t,configurable:!0}),Ce=["PageUp","PageDown"],Re=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],Ee={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},U="Slider",[te,et,tt]=Ge(U),[oe,Xt]=Xe(U,[tt]),[nt,W]=oe(U),rt=S.forwardRef(v(function(t,o){const{name:i,min:s=0,max:n=100,step:l=1,orientation:c="horizontal",disabled:d=!1,minStepsBetweenThumbs:f=0,defaultValue:p=[s],value:u,onValueChange:a=v(()=>{},"onValueChange"),onValueCommit:m=v(()=>{},"onValueCommit"),inverted:w=!1,form:y,...g}=t,h=S.useRef(new Set),b=S.useRef(0),P=S.useRef(!1),E=c==="horizontal"?ot:st,[M,x]=S.useState(null),j=V(o,x),[C=[],D]=Ye({prop:u,defaultProp:p,onChange:v(N=>{[...h.current][b.current]?.focus({preventScroll:!0,focusVisible:P.current}),P.current=!1,a(N)},"onChange")}),$=S.useRef(C),Le=S.useRef(C);S.useEffect(()=>{const N=y?M?.ownerDocument.getElementById(y):M?.closest("form");if(N instanceof HTMLFormElement){const _=v(()=>D(Le.current),"reset");return N.addEventListener("reset",_),()=>N.removeEventListener("reset",_)}},[M,y,D]);function ae(N){const _=Ie(C,N);A(N,_)}v(ae,"handleSlideStart");function le(N){A(N,b.current)}v(le,"handleSlideMove");function ce(){String(C)!==String($.current)&&m(C)}v(ce,"handleSlideEnd");function A(N,_,{commit:de}={commit:!1}){const ue=ie(l),Z=O(Math.round((N-s)/l)*l+s,ue),B=Pe(Z,[s,n]);D((F=[])=>{const T=Ae(F,B,_);if(Be(T,f*l)){b.current=T.indexOf(B);const me=String(T)!==String(F);return me&&de&&m(T),me?T:F}else return F})}return v(A,"updateValues"),r.jsx(nt,{scope:t.__scopeSlider,name:i,disabled:d,min:s,max:n,valueIndexToChangeRef:b,thumbs:h.current,values:C,orientation:c,form:y,children:r.jsx(te.Provider,{scope:t.__scopeSlider,children:r.jsx(te.Slot,{scope:t.__scopeSlider,children:r.jsx(E,{"aria-disabled":d,"data-disabled":d?"":void 0,...g,ref:j,onPointerDown:I(g.onPointerDown,()=>{d||($.current=C,P.current=!1)}),min:s,max:n,inverted:w,onSlideStart:d?void 0:ae,onSlideMove:d?void 0:le,onSlideEnd:d?void 0:ce,onHomeKeyDown:()=>{d||(P.current=!0,A(s,0,{commit:!0}))},onEndKeyDown:()=>{d||(P.current=!0,A(n,C.length-1,{commit:!0}))},onStepKeyDown:({event:N,direction:_})=>{if(!d){P.current=!0;const Z=Ce.includes(N.key)||N.shiftKey&&Re.includes(N.key)?10:1,B=b.current,F=C[B],T=ke(F,{min:s,step:l,direction:_,multiplier:Z});A(T,B,{commit:!0})}}})})})})},"Slider")),[Ne,Me]=oe(U,{startEdge:"left",endEdge:"right",size:"width",direction:1}),ot=S.forwardRef(v(function(t,o){const{min:i,max:s,dir:n,inverted:l,onSlideStart:c,onSlideMove:d,onSlideEnd:f,onStepKeyDown:p,...u}=t,[a,m]=S.useState(null),w=V(o,m),y=S.useRef(void 0),g=Qe(n),h=g==="ltr",b=h&&!l||!h&&l;function P(R){const E=y.current||a.getBoundingClientRect(),M=[0,E.width],j=J(M,b?[i,s]:[s,i]);return y.current=E,j(R-E.left)}return v(P,"getValueFromPointer"),r.jsx(Ne,{scope:t.__scopeSlider,startEdge:b?"left":"right",endEdge:b?"right":"left",direction:b?1:-1,size:"width",children:r.jsx(_e,{dir:g,"data-orientation":"horizontal",...u,ref:w,style:{...u.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:R=>{const E=P(R.clientX);c?.(E)},onSlideMove:R=>{const E=P(R.clientX);d?.(E)},onSlideEnd:()=>{y.current=void 0,f?.()},onStepKeyDown:R=>{const M=Ee[b?"from-left":"from-right"].includes(R.key);p?.({event:R,direction:M?-1:1})}})})},"SliderHorizontal")),st=S.forwardRef(v(function(t,o){const{min:i,max:s,inverted:n,onSlideStart:l,onSlideMove:c,onSlideEnd:d,onStepKeyDown:f,...p}=t,u=S.useRef(null),a=V(o,u),m=S.useRef(void 0),w=!n;function y(g){const h=m.current||u.current.getBoundingClientRect(),b=[0,h.height],R=J(b,w?[s,i]:[i,s]);return m.current=h,R(g-h.top)}return v(y,"getValueFromPointer"),r.jsx(Ne,{scope:t.__scopeSlider,startEdge:w?"bottom":"top",endEdge:w?"top":"bottom",size:"height",direction:w?1:-1,children:r.jsx(_e,{"data-orientation":"vertical",...p,ref:a,style:{...p.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:g=>{const h=y(g.clientY);l?.(h)},onSlideMove:g=>{const h=y(g.clientY);c?.(h)},onSlideEnd:()=>{m.current=void 0,d?.()},onStepKeyDown:g=>{const b=Ee[w?"from-bottom":"from-top"].includes(g.key);f?.({event:g,direction:b?-1:1})}})})},"SliderVertical")),_e=S.forwardRef(v(function(t,o){const{__scopeSlider:i,onSlideStart:s,onSlideMove:n,onSlideEnd:l,onHomeKeyDown:c,onEndKeyDown:d,onStepKeyDown:f,...p}=t,u=W(U,i);return r.jsx(q.span,{...p,ref:o,onKeyDown:I(t.onKeyDown,a=>{a.key==="Home"?(c(a),a.preventDefault()):a.key==="End"?(d(a),a.preventDefault()):Ce.concat(Re).includes(a.key)&&(f(a),a.preventDefault())}),onPointerDown:I(t.onPointerDown,a=>{const m=a.target;m.setPointerCapture(a.pointerId),a.preventDefault(),u.thumbs.has(m)?m.focus({preventScroll:!0,focusVisible:!1}):s(a)}),onPointerMove:I(t.onPointerMove,a=>{a.target.hasPointerCapture(a.pointerId)&&n(a)}),onPointerUp:I(t.onPointerUp,a=>{const m=a.target;m.hasPointerCapture(a.pointerId)&&(m.releasePointerCapture(a.pointerId),l(a))})})},"SliderImpl")),it="SliderTrack",at=S.forwardRef(v(function(t,o){const{__scopeSlider:i,...s}=t,n=W(it,i);return r.jsx(q.span,{"data-disabled":n.disabled?"":void 0,"data-orientation":n.orientation,...s,ref:o})},"SliderTrack")),be="SliderRange",lt=S.forwardRef(v(function(t,o){const{__scopeSlider:i,...s}=t,n=W(be,i),l=Me(be,i),c=S.useRef(null),d=V(o,c),f=n.values.length,p=n.values.map(m=>se(m,n.min,n.max)),u=f>1?Math.min(...p):0,a=100-Math.max(...p);return r.jsx(q.span,{"data-orientation":n.orientation,"data-disabled":n.disabled?"":void 0,...s,ref:d,style:{...t.style,[l.startEdge]:u+"%",[l.endEdge]:a+"%"}})},"SliderRange")),ct="SliderThumb",[dt,De]=oe(ct),ut="SliderThumbProvider";function Te(e){const{__scopeSlider:t,name:o,children:i,internal_do_not_use_render:s}=e,n=W(ut,t),l=et(t),[c,d]=S.useState(null),f=S.useMemo(()=>c?l().findIndex(g=>g.ref.current===c):-1,[l,c]),p=Je(c),u=c?!!n.form||!!c.closest("form"):!0,a=n.values[f],m=o??(n.name?n.name+(n.values.length>1?"[]":""):void 0),w=a===void 0?0:se(a,n.min,n.max);S.useEffect(()=>{if(c)return n.thumbs.add(c),()=>{n.thumbs.delete(c)}},[c,n.thumbs]);const y={value:a,name:m,form:n.form,isFormControl:u,index:f,thumb:c,onThumbChange:d,percent:w,size:p};return r.jsx(dt,{scope:t,...y,children:Ke(s)?s(y):i})}v(Te,"SliderThumbProvider");var ee="SliderThumbTrigger",mt=S.forwardRef(v(function(t,o){const{__scopeSlider:i,...s}=t,n=W(ee,i),l=Me(ee,i),{index:c,value:d,percent:f,size:p,onThumbChange:u}=De(ee,i),a=V(o,u),m=Fe(c,n.values.length),w=p?.[l.size],y=w?Ve(w,f,l.direction):0;return r.jsx("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[l.startEdge]:`calc(${f}% + ${y}px)`},children:r.jsx(te.ItemSlot,{scope:i,children:r.jsx(q.span,{role:"slider","aria-label":t["aria-label"]||m,"aria-valuemin":n.min,"aria-valuenow":d,"aria-valuemax":n.max,"aria-orientation":n.orientation,"data-orientation":n.orientation,"data-disabled":n.disabled?"":void 0,tabIndex:n.disabled?void 0:0,...s,ref:a,style:d===void 0?{display:"none"}:t.style,onFocus:I(t.onFocus,()=>{n.valueIndexToChangeRef.current=c})})})})},"SliderThumbTrigger")),ft=S.forwardRef(v(function(t,o){const{__scopeSlider:i,name:s,...n}=t;return r.jsx(Te,{__scopeSlider:i,name:s,internal_do_not_use_render:({index:l,isFormControl:c})=>r.jsxs(r.Fragment,{children:[r.jsx(mt,{...n,ref:o,__scopeSlider:i}),c?r.jsx(pt,{__scopeSlider:i},l):null]})})},"SliderThumb")),ht="SliderBubbleInput",pt=S.forwardRef(v(function({__scopeSlider:t,...o},i){const{value:s,name:n,form:l}=De(ht,t),c=S.useRef(null),d=V(c,i),f=We(s);return S.useEffect(()=>{const p=c.current;if(!p)return;const u=window.HTMLInputElement.prototype,m=Object.getOwnPropertyDescriptor(u,"value").set;if(f!==s&&m){const w=new Event("input",{bubbles:!0});m.call(p,s),p.dispatchEvent(w)}},[f,s]),r.jsx(q.input,{style:{display:"none"},name:n,form:l,...o,ref:d,defaultValue:s})},"SliderBubbleInput"));function Ae(e=[],t,o){const i=[...e];return i[o]=t,i.sort((s,n)=>s-n)}v(Ae,"getNextSortedValues");function se(e,t,o){const n=100/(o-t)*(e-t);return Pe(n,[0,100])}v(se,"convertValueToPercentage");function Fe(e,t){return t>2?`Value ${e+1} of ${t}`:t===2?["Minimum","Maximum"][e]:void 0}v(Fe,"getLabel");function Ie(e,t){if(e.length===1)return 0;const o=e.map(s=>Math.abs(s-t)),i=Math.min(...o);return o.indexOf(i)}v(Ie,"getClosestValueIndex");function Ve(e,t,o){const i=e/2,n=J([0,50],[0,i]);return(i-n(t)*o)*o}v(Ve,"getThumbInBoundsOffset");function $e(e){return e.slice(0,-1).map((t,o)=>e[o+1]-t)}v($e,"getStepsBetweenValues");function Be(e,t){if(t>0){const o=$e(e);return Math.min(...o)>=t}return!0}v(Be,"hasMinStepsBetweenValues");function J(e,t){return o=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const i=(t[1]-t[0])/(e[1]-e[0]);return t[0]+i*(o-e[0])}}v(J,"linearScale");function ie(e){if(!Number.isFinite(e))return 0;const t=e.toString();if(t.includes("e")){const[i,s]=t.split("e"),n=i.split(".")[1]||"",l=Number(s);return Math.max(0,n.length-l)}const o=t.split(".")[1];return o?o.length:0}v(ie,"getDecimalCount");function O(e,t){const o=Math.pow(10,t);return Math.round(e*o)/o}v(O,"roundValue");function ke(e,{min:t,step:o,direction:i,multiplier:s}){const n=ie(o),l=(e-t)/o,c=Math.round(l),d=O(c*o+t,n)===O(e,n);let f;return d?f=c+s*i:i>0?f=Math.ceil(l):f=Math.floor(l),O(f*o+t,n)}v(ke,"getNextStepValue");function Ke(e){return typeof e=="function"}v(Ke,"isFunction");function xt({className:e,type:t,...o}){return r.jsx("input",{type:t,"data-slot":"input",className:Y(`file:text-foreground placeholder:text-muted-foreground
1
+ import{c as S,j as r}from"./react-B9jn2M18.js";import{m as fe}from"./tanstack-YzX_Mi37.js";import{C as we,f as ze}from"./app-options-CkPJE5ep.js";import{A as He}from"./app-view-header-CNk5KnA-.js";import{l as k}from"./view-context-DXKM3-l1.js";import{B as K}from"./button-C6arH7zt.js";import{g as je,u as qe,b as Pe,S as he,c as pe,d as xe,e as ge,f as X,C as Se}from"./select-CtXC_PLC.js";import{C as Ue}from"./copy-context-D5oiWrYC.js";import{F as We}from"./folder-list-DvVkVjiR.js";import{u as V,a as Y}from"./utils-DCaHk0Gm.js";import{c as Xe,g as Ye,b as I,P as q}from"./index-CCXE8zc9.js";import{c as Ge,u as Qe}from"./index-CXhBn-ar.js";import{u as Je}from"./folder-image-Bnv43tzP.js";import"./markdown-Bw9RgUGR.js";import"./popover-0oA2lLUV.js";import"./index-CUTtMSyJ.js";import"./index-Bp9DidgD.js";var Ze=Object.defineProperty,v=(e,t)=>Ze(e,"name",{value:t,configurable:!0}),Ce=["PageUp","PageDown"],Re=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],Ee={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},U="Slider",[te,et,tt]=Ge(U),[oe,Wt]=Xe(U,[tt]),[nt,W]=oe(U),rt=S.forwardRef(v(function(t,o){const{name:i,min:s=0,max:n=100,step:l=1,orientation:c="horizontal",disabled:d=!1,minStepsBetweenThumbs:f=0,defaultValue:p=[s],value:u,onValueChange:a=v(()=>{},"onValueChange"),onValueCommit:m=v(()=>{},"onValueCommit"),inverted:w=!1,form:y,...g}=t,h=S.useRef(new Set),b=S.useRef(0),P=S.useRef(!1),E=c==="horizontal"?ot:st,[M,x]=S.useState(null),j=V(o,x),[C=[],D]=Ye({prop:u,defaultProp:p,onChange:v(N=>{[...h.current][b.current]?.focus({preventScroll:!0,focusVisible:P.current}),P.current=!1,a(N)},"onChange")}),$=S.useRef(C),Le=S.useRef(C);S.useEffect(()=>{const N=y?M?.ownerDocument.getElementById(y):M?.closest("form");if(N instanceof HTMLFormElement){const _=v(()=>D(Le.current),"reset");return N.addEventListener("reset",_),()=>N.removeEventListener("reset",_)}},[M,y,D]);function ae(N){const _=Ie(C,N);A(N,_)}v(ae,"handleSlideStart");function le(N){A(N,b.current)}v(le,"handleSlideMove");function ce(){String(C)!==String($.current)&&m(C)}v(ce,"handleSlideEnd");function A(N,_,{commit:de}={commit:!1}){const ue=ie(l),Z=O(Math.round((N-s)/l)*l+s,ue),B=je(Z,[s,n]);D((F=[])=>{const T=Ae(F,B,_);if(Be(T,f*l)){b.current=T.indexOf(B);const me=String(T)!==String(F);return me&&de&&m(T),me?T:F}else return F})}return v(A,"updateValues"),r.jsx(nt,{scope:t.__scopeSlider,name:i,disabled:d,min:s,max:n,valueIndexToChangeRef:b,thumbs:h.current,values:C,orientation:c,form:y,children:r.jsx(te.Provider,{scope:t.__scopeSlider,children:r.jsx(te.Slot,{scope:t.__scopeSlider,children:r.jsx(E,{"aria-disabled":d,"data-disabled":d?"":void 0,...g,ref:j,onPointerDown:I(g.onPointerDown,()=>{d||($.current=C,P.current=!1)}),min:s,max:n,inverted:w,onSlideStart:d?void 0:ae,onSlideMove:d?void 0:le,onSlideEnd:d?void 0:ce,onHomeKeyDown:()=>{d||(P.current=!0,A(s,0,{commit:!0}))},onEndKeyDown:()=>{d||(P.current=!0,A(n,C.length-1,{commit:!0}))},onStepKeyDown:({event:N,direction:_})=>{if(!d){P.current=!0;const Z=Ce.includes(N.key)||N.shiftKey&&Re.includes(N.key)?10:1,B=b.current,F=C[B],T=ke(F,{min:s,step:l,direction:_,multiplier:Z});A(T,B,{commit:!0})}}})})})})},"Slider")),[Ne,Me]=oe(U,{startEdge:"left",endEdge:"right",size:"width",direction:1}),ot=S.forwardRef(v(function(t,o){const{min:i,max:s,dir:n,inverted:l,onSlideStart:c,onSlideMove:d,onSlideEnd:f,onStepKeyDown:p,...u}=t,[a,m]=S.useState(null),w=V(o,m),y=S.useRef(void 0),g=Qe(n),h=g==="ltr",b=h&&!l||!h&&l;function P(R){const E=y.current||a.getBoundingClientRect(),M=[0,E.width],j=J(M,b?[i,s]:[s,i]);return y.current=E,j(R-E.left)}return v(P,"getValueFromPointer"),r.jsx(Ne,{scope:t.__scopeSlider,startEdge:b?"left":"right",endEdge:b?"right":"left",direction:b?1:-1,size:"width",children:r.jsx(_e,{dir:g,"data-orientation":"horizontal",...u,ref:w,style:{...u.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:R=>{const E=P(R.clientX);c?.(E)},onSlideMove:R=>{const E=P(R.clientX);d?.(E)},onSlideEnd:()=>{y.current=void 0,f?.()},onStepKeyDown:R=>{const M=Ee[b?"from-left":"from-right"].includes(R.key);p?.({event:R,direction:M?-1:1})}})})},"SliderHorizontal")),st=S.forwardRef(v(function(t,o){const{min:i,max:s,inverted:n,onSlideStart:l,onSlideMove:c,onSlideEnd:d,onStepKeyDown:f,...p}=t,u=S.useRef(null),a=V(o,u),m=S.useRef(void 0),w=!n;function y(g){const h=m.current||u.current.getBoundingClientRect(),b=[0,h.height],R=J(b,w?[s,i]:[i,s]);return m.current=h,R(g-h.top)}return v(y,"getValueFromPointer"),r.jsx(Ne,{scope:t.__scopeSlider,startEdge:w?"bottom":"top",endEdge:w?"top":"bottom",size:"height",direction:w?1:-1,children:r.jsx(_e,{"data-orientation":"vertical",...p,ref:a,style:{...p.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:g=>{const h=y(g.clientY);l?.(h)},onSlideMove:g=>{const h=y(g.clientY);c?.(h)},onSlideEnd:()=>{m.current=void 0,d?.()},onStepKeyDown:g=>{const b=Ee[w?"from-bottom":"from-top"].includes(g.key);f?.({event:g,direction:b?-1:1})}})})},"SliderVertical")),_e=S.forwardRef(v(function(t,o){const{__scopeSlider:i,onSlideStart:s,onSlideMove:n,onSlideEnd:l,onHomeKeyDown:c,onEndKeyDown:d,onStepKeyDown:f,...p}=t,u=W(U,i);return r.jsx(q.span,{...p,ref:o,onKeyDown:I(t.onKeyDown,a=>{a.key==="Home"?(c(a),a.preventDefault()):a.key==="End"?(d(a),a.preventDefault()):Ce.concat(Re).includes(a.key)&&(f(a),a.preventDefault())}),onPointerDown:I(t.onPointerDown,a=>{const m=a.target;m.setPointerCapture(a.pointerId),a.preventDefault(),u.thumbs.has(m)?m.focus({preventScroll:!0,focusVisible:!1}):s(a)}),onPointerMove:I(t.onPointerMove,a=>{a.target.hasPointerCapture(a.pointerId)&&n(a)}),onPointerUp:I(t.onPointerUp,a=>{const m=a.target;m.hasPointerCapture(a.pointerId)&&(m.releasePointerCapture(a.pointerId),l(a))})})},"SliderImpl")),it="SliderTrack",at=S.forwardRef(v(function(t,o){const{__scopeSlider:i,...s}=t,n=W(it,i);return r.jsx(q.span,{"data-disabled":n.disabled?"":void 0,"data-orientation":n.orientation,...s,ref:o})},"SliderTrack")),be="SliderRange",lt=S.forwardRef(v(function(t,o){const{__scopeSlider:i,...s}=t,n=W(be,i),l=Me(be,i),c=S.useRef(null),d=V(o,c),f=n.values.length,p=n.values.map(m=>se(m,n.min,n.max)),u=f>1?Math.min(...p):0,a=100-Math.max(...p);return r.jsx(q.span,{"data-orientation":n.orientation,"data-disabled":n.disabled?"":void 0,...s,ref:d,style:{...t.style,[l.startEdge]:u+"%",[l.endEdge]:a+"%"}})},"SliderRange")),ct="SliderThumb",[dt,De]=oe(ct),ut="SliderThumbProvider";function Te(e){const{__scopeSlider:t,name:o,children:i,internal_do_not_use_render:s}=e,n=W(ut,t),l=et(t),[c,d]=S.useState(null),f=S.useMemo(()=>c?l().findIndex(g=>g.ref.current===c):-1,[l,c]),p=Je(c),u=c?!!n.form||!!c.closest("form"):!0,a=n.values[f],m=o??(n.name?n.name+(n.values.length>1?"[]":""):void 0),w=a===void 0?0:se(a,n.min,n.max);S.useEffect(()=>{if(c)return n.thumbs.add(c),()=>{n.thumbs.delete(c)}},[c,n.thumbs]);const y={value:a,name:m,form:n.form,isFormControl:u,index:f,thumb:c,onThumbChange:d,percent:w,size:p};return r.jsx(dt,{scope:t,...y,children:Ke(s)?s(y):i})}v(Te,"SliderThumbProvider");var ee="SliderThumbTrigger",mt=S.forwardRef(v(function(t,o){const{__scopeSlider:i,...s}=t,n=W(ee,i),l=Me(ee,i),{index:c,value:d,percent:f,size:p,onThumbChange:u}=De(ee,i),a=V(o,u),m=Fe(c,n.values.length),w=p?.[l.size],y=w?Ve(w,f,l.direction):0;return r.jsx("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[l.startEdge]:`calc(${f}% + ${y}px)`},children:r.jsx(te.ItemSlot,{scope:i,children:r.jsx(q.span,{role:"slider","aria-label":t["aria-label"]||m,"aria-valuemin":n.min,"aria-valuenow":d,"aria-valuemax":n.max,"aria-orientation":n.orientation,"data-orientation":n.orientation,"data-disabled":n.disabled?"":void 0,tabIndex:n.disabled?void 0:0,...s,ref:a,style:d===void 0?{display:"none"}:t.style,onFocus:I(t.onFocus,()=>{n.valueIndexToChangeRef.current=c})})})})},"SliderThumbTrigger")),ft=S.forwardRef(v(function(t,o){const{__scopeSlider:i,name:s,...n}=t;return r.jsx(Te,{__scopeSlider:i,name:s,internal_do_not_use_render:({index:l,isFormControl:c})=>r.jsxs(r.Fragment,{children:[r.jsx(mt,{...n,ref:o,__scopeSlider:i}),c?r.jsx(pt,{__scopeSlider:i},l):null]})})},"SliderThumb")),ht="SliderBubbleInput",pt=S.forwardRef(v(function({__scopeSlider:t,...o},i){const{value:s,name:n,form:l}=De(ht,t),c=S.useRef(null),d=V(c,i),f=qe(s);return S.useEffect(()=>{const p=c.current;if(!p)return;const u=window.HTMLInputElement.prototype,m=Object.getOwnPropertyDescriptor(u,"value").set;if(f!==s&&m){const w=new Event("input",{bubbles:!0});m.call(p,s),p.dispatchEvent(w)}},[f,s]),r.jsx(q.input,{style:{display:"none"},name:n,form:l,...o,ref:d,defaultValue:s})},"SliderBubbleInput"));function Ae(e=[],t,o){const i=[...e];return i[o]=t,i.sort((s,n)=>s-n)}v(Ae,"getNextSortedValues");function se(e,t,o){const n=100/(o-t)*(e-t);return je(n,[0,100])}v(se,"convertValueToPercentage");function Fe(e,t){return t>2?`Value ${e+1} of ${t}`:t===2?["Minimum","Maximum"][e]:void 0}v(Fe,"getLabel");function Ie(e,t){if(e.length===1)return 0;const o=e.map(s=>Math.abs(s-t)),i=Math.min(...o);return o.indexOf(i)}v(Ie,"getClosestValueIndex");function Ve(e,t,o){const i=e/2,n=J([0,50],[0,i]);return(i-n(t)*o)*o}v(Ve,"getThumbInBoundsOffset");function $e(e){return e.slice(0,-1).map((t,o)=>e[o+1]-t)}v($e,"getStepsBetweenValues");function Be(e,t){if(t>0){const o=$e(e);return Math.min(...o)>=t}return!0}v(Be,"hasMinStepsBetweenValues");function J(e,t){return o=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const i=(t[1]-t[0])/(e[1]-e[0]);return t[0]+i*(o-e[0])}}v(J,"linearScale");function ie(e){if(!Number.isFinite(e))return 0;const t=e.toString();if(t.includes("e")){const[i,s]=t.split("e"),n=i.split(".")[1]||"",l=Number(s);return Math.max(0,n.length-l)}const o=t.split(".")[1];return o?o.length:0}v(ie,"getDecimalCount");function O(e,t){const o=Math.pow(10,t);return Math.round(e*o)/o}v(O,"roundValue");function ke(e,{min:t,step:o,direction:i,multiplier:s}){const n=ie(o),l=(e-t)/o,c=Math.round(l),d=O(c*o+t,n)===O(e,n);let f;return d?f=c+s*i:i>0?f=Math.ceil(l):f=Math.floor(l),O(f*o+t,n)}v(ke,"getNextStepValue");function Ke(e){return typeof e=="function"}v(Ke,"isFunction");function xt({className:e,type:t,...o}){return r.jsx("input",{type:t,"data-slot":"input",className:Y(`file:text-foreground placeholder:text-muted-foreground
2
2
  selection:bg-primary selection:text-primary-foreground dark:bg-input/30
3
3
  border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3
4
4
  py-1 text-base shadow-xs transition-[color,box-shadow] outline-none
@@ -6,7 +6,7 @@ import{c as S,j as r}from"./react-B9jn2M18.js";import{m as fe}from"./tanstack-Yz
6
6
  file:font-medium disabled:pointer-events-none
7
7
  disabled:cursor-not-allowed disabled:opacity-50 md:text-sm`,`focus-visible:border-ring focus-visible:ring-ring/50
8
8
  focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40
9
- aria-invalid:border-destructive`,e),...o})}const G="f_",Q="max_",L="min_",ne="q",re="sort";function gt(e,t,o){const i=new URL(e),s=new Set(t),n=new Set(o),l={},c={};for(const[d,f]of i.searchParams){if(d.startsWith(G)&&f){const m=d.slice(G.length);s.has(m)&&(l[m]=f);continue}const p=d.startsWith(L)?L:d.startsWith(Q)?Q:void 0;if(!p||!f)continue;const u=d.slice(p.length),a=Number(f);!n.has(u)||!Number.isFinite(a)||(c[u]={...c[u],[p===L?"min":"max"]:a})}return{filters:l,query:i.searchParams.get(ne)??"",ranges:c,sort:Oe(e)}}function Oe(e){return new URL(e).searchParams.get(re)==="alpha"?"alpha":"recent"}function St(e,t){const o=new URL(e);o.searchParams.delete(ne);for(const s of[...o.searchParams.keys()])(s.startsWith(G)||s.startsWith(L)||s.startsWith(Q))&&o.searchParams.delete(s);const i=t.query.trim();i&&o.searchParams.set(ne,i),t.sort==="alpha"?o.searchParams.set(re,t.sort):o.searchParams.delete(re);for(const[s,n]of Object.entries(t.filters))n&&o.searchParams.set(`${G}${s}`,n);for(const[s,n]of Object.entries(t.ranges))Number.isFinite(n.min)&&o.searchParams.set(`${L}${s}`,String(n.min)),Number.isFinite(n.max)&&o.searchParams.set(`${Q}${s}`,String(n.max));return o.toString()}function z(e,t){let o=e;for(const i of t.split(".")){if(!o||typeof o!="object"||Array.isArray(o))return;o=o[i]}return o}function H(e){return e==null?"":Array.isArray(e)?e.map(H).join(", "):typeof e=="object"?JSON.stringify(e):String(e)}function bt(e,t){return[...new Set(e.records.map(o=>H(z(o.fields,t))).filter(Boolean))].sort()}function vt(e,t,o="",i={}){const s=o.trim().toLocaleLowerCase();return e.records.filter(n=>(!s||`${n.title} ${Object.values(n.fields).map(H).join(" ")}`.toLocaleLowerCase().includes(s))&&e.ui.filters.every(l=>!t[l]||H(z(n.fields,l))===t[l])&&Object.entries(i).every(([l,c])=>{const d=z(n.fields,l);return typeof d=="number"&&(c.min===void 0||d>=c.min)&&(c.max===void 0||d<=c.max)}))}function yt({collection:e,record:t}){const[o,i]=S.useState(),s=t.iconAssetKey?e.assets?.[t.iconAssetKey]:void 0,n=s?s.url??(s.data?`data:${s.mediaType};base64,${s.data}`:void 0):void 0;return!n||o===n?r.jsx(we,{name:e.icon}):r.jsx("img",{alt:"","aria-hidden":"true",onError:()=>i(n),src:n,style:{width:18,height:18,borderRadius:4,objectFit:"contain",flexShrink:0}})}const ve=e=>e.replace(/[\\/][^\\/]+$/,""),wt=e=>/(?:^|[\\/])(?:AGENTS|README|SKILL)\.md$/i.test(e);function jt({collection:e,documentHref:t,folderHref:o,folder:i,records:s}){return r.jsx(Ue,{className:"landing-collection-records",items:s,renderActions:n=>r.jsx(qe,{className:"landing-list-copy-context",context:()=>ve(n.path),label:`Copy folder path for ${n.title}`}),empty:r.jsx("p",{className:"landing-empty",children:e.count?"No matching records.":"No records match this collection’s document patterns."}),getClassName:()=>"has-copy-context",getKey:n=>n.id,getHref:n=>wt(n.path)?o(ve(n.path)):`${t(n.path.slice(i.length+1))}?collection=${encodeURIComponent(e.id)}`,renderItem:n=>r.jsxs(r.Fragment,{children:[r.jsx(yt,{collection:e,record:n}),r.jsxs("span",{children:[r.jsx("strong",{children:n.title}),r.jsx("small",{children:e.ui.secondaryField?H(z(n.fields,e.ui.secondaryField)):n.relativePath}),n.validationErrors.length?r.jsxs("small",{className:"text-destructive",title:n.validationErrors.map(l=>`${l.path}: ${l.message}`).join(`
9
+ aria-invalid:border-destructive`,e),...o})}const G="f_",Q="max_",L="min_",ne="q",re="sort";function gt(e,t,o){const i=new URL(e),s=new Set(t),n=new Set(o),l={},c={};for(const[d,f]of i.searchParams){if(d.startsWith(G)&&f){const m=d.slice(G.length);s.has(m)&&(l[m]=f);continue}const p=d.startsWith(L)?L:d.startsWith(Q)?Q:void 0;if(!p||!f)continue;const u=d.slice(p.length),a=Number(f);!n.has(u)||!Number.isFinite(a)||(c[u]={...c[u],[p===L?"min":"max"]:a})}return{filters:l,query:i.searchParams.get(ne)??"",ranges:c,sort:Oe(e)}}function Oe(e){return new URL(e).searchParams.get(re)==="alpha"?"alpha":"recent"}function St(e,t){const o=new URL(e);o.searchParams.delete(ne);for(const s of[...o.searchParams.keys()])(s.startsWith(G)||s.startsWith(L)||s.startsWith(Q))&&o.searchParams.delete(s);const i=t.query.trim();i&&o.searchParams.set(ne,i),t.sort==="alpha"?o.searchParams.set(re,t.sort):o.searchParams.delete(re);for(const[s,n]of Object.entries(t.filters))n&&o.searchParams.set(`${G}${s}`,n);for(const[s,n]of Object.entries(t.ranges))Number.isFinite(n.min)&&o.searchParams.set(`${L}${s}`,String(n.min)),Number.isFinite(n.max)&&o.searchParams.set(`${Q}${s}`,String(n.max));return o.toString()}function z(e,t){let o=e;for(const i of t.split(".")){if(!o||typeof o!="object"||Array.isArray(o))return;o=o[i]}return o}function H(e){return e==null?"":Array.isArray(e)?e.map(H).join(", "):typeof e=="object"?JSON.stringify(e):String(e)}function bt(e,t){return[...new Set(e.records.map(o=>H(z(o.fields,t))).filter(Boolean))].sort()}function vt(e,t,o="",i={}){const s=o.trim().toLocaleLowerCase();return e.records.filter(n=>(!s||`${n.title} ${Object.values(n.fields).map(H).join(" ")}`.toLocaleLowerCase().includes(s))&&e.ui.filters.every(l=>!t[l]||H(z(n.fields,l))===t[l])&&Object.entries(i).every(([l,c])=>{const d=z(n.fields,l);return typeof d=="number"&&(c.min===void 0||d>=c.min)&&(c.max===void 0||d<=c.max)}))}function yt({collection:e,record:t}){const[o,i]=S.useState(),s=t.iconAssetKey?e.assets?.[t.iconAssetKey]:void 0,n=s?s.url??(s.data?`data:${s.mediaType};base64,${s.data}`:void 0):void 0;return!n||o===n?r.jsx(we,{name:e.icon}):r.jsx("img",{alt:"","aria-hidden":"true",onError:()=>i(n),src:n,style:{width:18,height:18,borderRadius:4,objectFit:"contain",flexShrink:0}})}const ve=e=>e.replace(/[\\/][^\\/]+$/,""),wt=e=>/(?:^|[\\/])(?:AGENTS|README|SKILL)\.md$/i.test(e);function jt({collection:e,documentHref:t,folderHref:o,folder:i,records:s}){return r.jsx(We,{className:"landing-collection-records",items:s,renderActions:n=>r.jsx(Ue,{className:"landing-list-copy-context",context:()=>ve(n.path),label:`Copy folder path for ${n.title}`}),empty:r.jsx("p",{className:"landing-empty",children:e.count?"No matching records.":"No records match this collection’s document patterns."}),getClassName:()=>"has-copy-context",getKey:n=>n.id,getHref:n=>wt(n.path)?o(ve(n.path)):`${t(n.path.slice(i.length+1))}?collection=${encodeURIComponent(e.id)}`,renderItem:n=>r.jsxs(r.Fragment,{children:[r.jsx(yt,{collection:e,record:n}),r.jsxs("span",{children:[r.jsx("strong",{children:n.title}),r.jsx("small",{children:e.ui.secondaryField?H(z(n.fields,e.ui.secondaryField)):n.relativePath}),n.validationErrors.length?r.jsxs("small",{className:"text-destructive",title:n.validationErrors.map(l=>`${l.path}: ${l.message}`).join(`
10
10
  `),children:[n.validationErrors.length," metadata issues"]}):null]})]})})}function Pt({className:e,defaultValue:t,value:o,min:i=0,max:s=100,...n}){const l=S.useMemo(()=>Array.isArray(o)?o:Array.isArray(t)?t:[i,s],[o,t,i,s]);return r.jsxs(rt,{"data-slot":"slider",defaultValue:t,value:o,min:i,max:s,className:Y(`relative flex w-full touch-none items-center select-none
11
11
  data-[disabled]:opacity-50 data-[orientation=vertical]:h-full
12
12
  data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto
@@ -17,6 +17,6 @@ import{c as S,j as r}from"./react-B9jn2M18.js";import{m as fe}from"./tanstack-Yz
17
17
  data-[orientation=vertical]:w-full`)})}),Array.from({length:l.length},(c,d)=>r.jsx(ft,{"data-slot":"slider-thumb",className:`border-primary ring-ring/50 block size-4 shrink-0
18
18
  rounded-full border bg-white shadow-sm transition-[color,box-shadow]
19
19
  hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden
20
- disabled:pointer-events-none disabled:opacity-50`},d))]})}function Ct(e,t){const o=e.records.map(i=>z(i.fields,t)).filter(i=>typeof i=="number");return{max:Math.max(...o),min:Math.min(...o)}}const ye=new Intl.NumberFormat;function Rt({collection:e,filters:t,onClear:o,onFilters:i,onRanges:s,onRangesCommit:n,onSort:l,ranges:c,refreshing:d=!1,sort:f}){const p=Object.values(t).some(Boolean)||Object.values(c).some(u=>u.min!==void 0||u.max!==void 0);return r.jsxs(je,{id:"collection-filters",className:"rounded-xl bg-white px-4 shadow-sm","aria-label":"Collection filters",role:"region",children:[r.jsxs("div",{className:"flex items-center justify-between gap-2",children:[r.jsxs("p",{className:"text-muted-foreground text-xs",role:"status",children:[d?"Refreshing metadata…":`Indexed ${new Date(e.indexedAt).toLocaleString()}`,e.state==="error"?" · Index has errors":""]}),p?r.jsx(K,{variant:"ghost",size:"sm",onClick:o,children:"Clear"}):null]}),r.jsxs("div",{className:"flex flex-wrap items-end gap-3 py-3",children:[e.ui.sort?null:r.jsxs("label",{className:"grid gap-1 text-sm",children:["Order",r.jsxs(he,{value:f,onValueChange:u=>l(u),children:[r.jsx(pe,{"aria-label":"Order records",children:r.jsx(xe,{})}),r.jsxs(ge,{children:[r.jsx(X,{value:"recent",children:"Recently updated"}),r.jsx(X,{value:"alpha",children:"Alphabetical"})]})]})]}),e.ui.filters.map(u=>{const a=bt(e,u);return r.jsxs("label",{className:"grid gap-1 text-sm",children:[u,r.jsxs(he,{value:t[u]?`value:${t[u]}`:"all",onValueChange:m=>i(w=>({...w,[u]:m==="all"?"":m.slice(6)})),children:[r.jsx(pe,{"aria-label":`Filter ${u}`,children:r.jsx(xe,{})}),r.jsxs(ge,{children:[r.jsx(X,{value:"all",children:"All"}),a.map(m=>r.jsx(X,{value:`value:${m}`,children:m},m))]})]})]},u)}),e.ui.numericFilters.map(u=>{const a=Ct(e,u),m=c[u]??{},w=Math.max(a.min,m.min??a.min),y=Math.min(a.max,m.max??a.max),g=(h,b)=>P=>{const R={max:b===a.max?void 0:b,min:h===a.min?void 0:h},E={...P,[u]:R};return R.min===void 0&&R.max===void 0&&delete E[u],E};return r.jsxs("fieldset",{className:"grid min-w-56 gap-1 text-sm",children:[r.jsx("legend",{children:u}),r.jsx(Pt,{"aria-label":`Filter ${u}`,max:a.max,min:a.min,step:Number.isInteger(a.min)&&Number.isInteger(a.max)?1:void 0,value:[Math.min(w,y),Math.max(w,y)],onValueChange:h=>{const[b,P]=h;b!==void 0&&P!==void 0&&s(g(b,P))},onValueCommit:h=>{const[b,P]=h;b!==void 0&&P!==void 0&&n(g(b,P))}}),r.jsxs("span",{className:"text-muted-foreground flex justify-between text-xs",children:[r.jsx("span",{children:ye.format(Math.min(w,y))}),r.jsx("span",{children:ye.format(Math.max(w,y))})]})]},u)})]})]})}function Et({onQuery:e,query:t}){return r.jsx(je,{id:"collection-search",className:"rounded-xl border bg-white px-4 py-3 shadow-sm","aria-label":"Search collection",role:"region",children:r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx(xt,{className:"max-w-sm","aria-label":"Search collection",placeholder:"Search records…",value:t,onChange:o=>e(o.target.value)}),t.trim()?r.jsx(K,{variant:"ghost",size:"sm",onClick:()=>e(""),children:"Clear"}):null]})})}function Nt(e){return t=>{typeof window>"u"||window.history.replaceState(null,"",St(window.location.href,{...t,sort:e}))}}function Mt({collection:e,documentHref:t,folderHref:o,folder:i,href:s,onSort:n,refreshing:l=!1,sort:c}){const[d,f]=S.useState(!1),[p,u]=S.useState(!1),[a,m]=S.useState(()=>gt(s,e.ui.filters,e.ui.numericFilters)),w=Nt(c),y=(x,j=!0)=>{m(C=>{const D=x(C);return j&&w(D),D})},g=x=>y(j=>({...j,query:x})),h=x=>y(j=>({...j,filters:x(j.filters)})),b=(x,j=!0)=>y(C=>({...C,ranges:x(C.ranges)}),j),P=x=>b(x),R=x=>b(x,!1),E=vt(e,a.filters,a.query,a.ranges),M=e.ui.filters.filter(x=>a.filters[x]).map(x=>({key:`filter:${x}`,label:`${x}: ${a.filters[x]}`,remove:()=>h(j=>{const C={...j};return delete C[x],C})}));for(const x of e.ui.numericFilters){const j=a.ranges[x];if(!j||j.min===void 0&&j.max===void 0)continue;const C=[j.min===void 0?"":`≥ ${j.min}`,j.max===void 0?"":`≤ ${j.max}`].filter(Boolean).join(" · ");M.push({key:`range:${x}`,label:`${x}: ${C}`,remove:()=>P(D=>{const $={...D};return delete $[x],$})})}return a.query.trim()&&M.push({key:"query",label:`Search: “${a.query.trim()}”`,remove:()=>g("")}),r.jsxs("main",{className:"mx-auto grid w-full max-w-3xl gap-4 px-4 py-5","aria-label":e.title,children:[r.jsxs("header",{className:"flex flex-wrap items-center justify-between gap-3",children:[r.jsxs("h1",{className:`m-0 flex items-center gap-2 text-2xl font-semibold
20
+ disabled:pointer-events-none disabled:opacity-50`},d))]})}function Ct(e,t){const o=e.records.map(i=>z(i.fields,t)).filter(i=>typeof i=="number");return{max:Math.max(...o),min:Math.min(...o)}}const ye=new Intl.NumberFormat;function Rt({collection:e,filters:t,onClear:o,onFilters:i,onRanges:s,onRangesCommit:n,onSort:l,ranges:c,refreshing:d=!1,sort:f}){const p=Object.values(t).some(Boolean)||Object.values(c).some(u=>u.min!==void 0||u.max!==void 0);return r.jsxs(Pe,{id:"collection-filters",className:"rounded-xl bg-white px-4 shadow-sm","aria-label":"Collection filters",role:"region",children:[r.jsxs("div",{className:"flex items-center justify-between gap-2",children:[r.jsxs("p",{className:"text-muted-foreground text-xs",role:"status",children:[d?"Refreshing metadata…":`Indexed ${new Date(e.indexedAt).toLocaleString()}`,e.state==="error"?" · Index has errors":""]}),p?r.jsx(K,{variant:"ghost",size:"sm",onClick:o,children:"Clear"}):null]}),r.jsxs("div",{className:"flex flex-wrap items-end gap-3 py-3",children:[e.ui.sort?null:r.jsxs("label",{className:"grid gap-1 text-sm",children:["Order",r.jsxs(he,{value:f,onValueChange:u=>l(u),children:[r.jsx(pe,{"aria-label":"Order records",children:r.jsx(xe,{})}),r.jsxs(ge,{children:[r.jsx(X,{value:"recent",children:"Recently updated"}),r.jsx(X,{value:"alpha",children:"Alphabetical"})]})]})]}),e.ui.filters.map(u=>{const a=bt(e,u);return r.jsxs("label",{className:"grid gap-1 text-sm",children:[u,r.jsxs(he,{value:t[u]?`value:${t[u]}`:"all",onValueChange:m=>i(w=>({...w,[u]:m==="all"?"":m.slice(6)})),children:[r.jsx(pe,{"aria-label":`Filter ${u}`,children:r.jsx(xe,{})}),r.jsxs(ge,{children:[r.jsx(X,{value:"all",children:"All"}),a.map(m=>r.jsx(X,{value:`value:${m}`,children:m},m))]})]})]},u)}),e.ui.numericFilters.map(u=>{const a=Ct(e,u),m=c[u]??{},w=Math.max(a.min,m.min??a.min),y=Math.min(a.max,m.max??a.max),g=(h,b)=>P=>{const R={max:b===a.max?void 0:b,min:h===a.min?void 0:h},E={...P,[u]:R};return R.min===void 0&&R.max===void 0&&delete E[u],E};return r.jsxs("fieldset",{className:"grid min-w-56 gap-1 text-sm",children:[r.jsx("legend",{children:u}),r.jsx(Pt,{"aria-label":`Filter ${u}`,max:a.max,min:a.min,step:Number.isInteger(a.min)&&Number.isInteger(a.max)?1:void 0,value:[Math.min(w,y),Math.max(w,y)],onValueChange:h=>{const[b,P]=h;b!==void 0&&P!==void 0&&s(g(b,P))},onValueCommit:h=>{const[b,P]=h;b!==void 0&&P!==void 0&&n(g(b,P))}}),r.jsxs("span",{className:"text-muted-foreground flex justify-between text-xs",children:[r.jsx("span",{children:ye.format(Math.min(w,y))}),r.jsx("span",{children:ye.format(Math.max(w,y))})]})]},u)})]})]})}function Et({onQuery:e,query:t}){return r.jsx(Pe,{id:"collection-search",className:"rounded-xl border bg-white px-4 py-3 shadow-sm","aria-label":"Search collection",role:"region",children:r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx(xt,{className:"max-w-sm","aria-label":"Search collection",placeholder:"Search records…",value:t,onChange:o=>e(o.target.value)}),t.trim()?r.jsx(K,{variant:"ghost",size:"sm",onClick:()=>e(""),children:"Clear"}):null]})})}function Nt(e){return t=>{typeof window>"u"||window.history.replaceState(null,"",St(window.location.href,{...t,sort:e}))}}function Mt({collection:e,documentHref:t,folderHref:o,folder:i,href:s,onSort:n,refreshing:l=!1,sort:c}){const[d,f]=S.useState(!1),[p,u]=S.useState(!1),[a,m]=S.useState(()=>gt(s,e.ui.filters,e.ui.numericFilters)),w=Nt(c),y=(x,j=!0)=>{m(C=>{const D=x(C);return j&&w(D),D})},g=x=>y(j=>({...j,query:x})),h=x=>y(j=>({...j,filters:x(j.filters)})),b=(x,j=!0)=>y(C=>({...C,ranges:x(C.ranges)}),j),P=x=>b(x),R=x=>b(x,!1),E=vt(e,a.filters,a.query,a.ranges),M=e.ui.filters.filter(x=>a.filters[x]).map(x=>({key:`filter:${x}`,label:`${x}: ${a.filters[x]}`,remove:()=>h(j=>{const C={...j};return delete C[x],C})}));for(const x of e.ui.numericFilters){const j=a.ranges[x];if(!j||j.min===void 0&&j.max===void 0)continue;const C=[j.min===void 0?"":`≥ ${j.min}`,j.max===void 0?"":`≤ ${j.max}`].filter(Boolean).join(" · ");M.push({key:`range:${x}`,label:`${x}: ${C}`,remove:()=>P(D=>{const $={...D};return delete $[x],$})})}return a.query.trim()&&M.push({key:"query",label:`Search: “${a.query.trim()}”`,remove:()=>g("")}),r.jsxs("main",{className:"mx-auto grid w-full max-w-3xl gap-4 px-4 py-5","aria-label":e.title,children:[r.jsxs("header",{className:"flex flex-wrap items-center justify-between gap-3",children:[r.jsxs("h1",{className:`m-0 flex items-center gap-2 text-2xl font-semibold
21
21
  text-[#233025]`,children:[r.jsx(we,{name:e.icon}),e.title]}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("span",{className:"text-muted-foreground text-sm",role:"status",children:M.length?`${E.length} ${E.length===1?"result":"results"}`:e.count}),r.jsx(K,{variant:"ghost",size:"icon","aria-controls":"collection-search","aria-expanded":p,"aria-label":p?"Hide search":"Show search",onClick:()=>u(x=>!x),children:p?r.jsx(k.X,{"aria-hidden":"true"}):r.jsx(k.Search,{"aria-hidden":"true"})}),r.jsx(K,{variant:"ghost",size:"icon","aria-controls":"collection-filters","aria-expanded":d,"aria-label":d?"Hide filters":"Show filters",onClick:()=>f(x=>!x),children:d?r.jsx(k.X,{"aria-hidden":"true"}):r.jsx(k.Filter,{"aria-hidden":"true"})})]})]}),M.length?r.jsx("div",{className:"flex flex-wrap gap-2",role:"group","aria-label":"Active filters",children:M.map(({key:x,label:j,remove:C})=>r.jsxs(K,{type:"button",variant:"secondary",size:"sm",className:`border-border h-auto max-w-full rounded-full border
22
- py-1 text-xs`,"aria-label":`Remove ${j}`,title:j,onClick:C,children:[r.jsx("span",{className:"min-w-0 truncate",children:j}),r.jsx(k.X,{"aria-hidden":"true",className:"size-3"})]},x))}):null,r.jsx(Se,{open:p,onOpenChange:u,children:r.jsx(Et,{onQuery:g,query:a.query})}),r.jsx(Se,{open:d,onOpenChange:f,children:r.jsx(Rt,{collection:e,filters:a.filters,onFilters:h,onRanges:R,onRangesCommit:P,onClear:()=>y(x=>({...x,filters:{},ranges:{}})),ranges:a.ranges,onSort:n,refreshing:l,sort:c})}),e.diagnostics.length?r.jsx("ul",{role:"alert",className:"text-destructive m-0 text-sm",children:e.diagnostics.map((x,j)=>r.jsx("li",{children:x.message},j))}):null,r.jsx(jt,{collection:e,documentHref:t,folderHref:o,folder:i,records:E})]})}function Yt({collectionHref:e,documentHref:t,folderHref:o,homeHref:i,href:s,openFolder:n,parseRoute:l,request:c,subscribeApiEvent:d}){const{folder:f,collectionId:p}=l(s),u=fe.useQueryClient(),a=Oe(s),[m,w]=S.useState(a);S.useEffect(()=>{w(a)},[a]);const y=h=>{w(h)};S.useEffect(()=>{const h=()=>{u.invalidateQueries({queryKey:["collection",f]})},b=d("kennel:metadata-changed",h),P=d("kennel:workspace-changed",h);return()=>{b(),P()}},[u,f,d]);const g=fe.useQuery({queryKey:["collection",f,p,m],enabled:!!(f&&p),placeholderData:(h,b)=>b&&b.queryKey[1]===f&&b.queryKey[2]===p?h:void 0,queryFn:({signal:h})=>c(s,"collections",{id:p,signal:h,sort:m})});return g.error?r.jsxs("p",{role:"alert",children:["Could not load collection: ",g.error.message]}):g.data?r.jsxs(r.Fragment,{children:[r.jsx(He,{actions:ze({folderPath:g.data.folder,onOpenFolder:n?()=>n(g.data.folder):void 0}),className:"collection-page-header",collectionHref:h=>e(g.data.folder,h),folder:g.data.folder,folderHref:o,homeHref:i(g.data.folder)}),r.jsx(Mt,{href:s,folder:g.data.folder,collection:g.data.collection,documentHref:h=>t(g.data.folder,h),folderHref:o,onSort:y,refreshing:g.isFetching,sort:m},`${f}:${p}`)]}):r.jsx("p",{role:"status",children:"Loading collection…"})}export{Yt as CollectionPage};
22
+ py-1 text-xs`,"aria-label":`Remove ${j}`,title:j,onClick:C,children:[r.jsx("span",{className:"min-w-0 truncate",children:j}),r.jsx(k.X,{"aria-hidden":"true",className:"size-3"})]},x))}):null,r.jsx(Se,{open:p,onOpenChange:u,children:r.jsx(Et,{onQuery:g,query:a.query})}),r.jsx(Se,{open:d,onOpenChange:f,children:r.jsx(Rt,{collection:e,filters:a.filters,onFilters:h,onRanges:R,onRangesCommit:P,onClear:()=>y(x=>({...x,filters:{},ranges:{}})),ranges:a.ranges,onSort:n,refreshing:l,sort:c})}),e.diagnostics.length?r.jsx("ul",{role:"alert",className:"text-destructive m-0 text-sm",children:e.diagnostics.map((x,j)=>r.jsx("li",{children:x.message},j))}):null,r.jsx(jt,{collection:e,documentHref:t,folderHref:o,folder:i,records:E})]})}function Xt({collectionHref:e,documentHref:t,folderHref:o,homeHref:i,href:s,openFolder:n,parseRoute:l,request:c,subscribeApiEvent:d}){const{folder:f,collectionId:p}=l(s),u=fe.useQueryClient(),a=Oe(s),[m,w]=S.useState(a);S.useEffect(()=>{w(a)},[a]);const y=h=>{w(h)};S.useEffect(()=>{const h=()=>{u.invalidateQueries({queryKey:["collection",f]})},b=d("kennel:metadata-changed",h),P=d("kennel:workspace-changed",h);return()=>{b(),P()}},[u,f,d]);const g=fe.useQuery({queryKey:["collection",f,p,m],enabled:!!(f&&p),placeholderData:(h,b)=>b&&b.queryKey[1]===f&&b.queryKey[2]===p?h:void 0,queryFn:({signal:h})=>c(s,"collections",{id:p,signal:h,sort:m})});return g.error?r.jsxs("p",{role:"alert",children:["Could not load collection: ",g.error.message]}):g.data?r.jsxs(r.Fragment,{children:[r.jsx(He,{actions:ze({folderPath:g.data.folder,onOpenFolder:n?()=>n(g.data.folder):void 0}),className:"collection-page-header",collectionHref:h=>e(g.data.folder,h),folder:g.data.folder,folderHref:o,homeHref:i(g.data.folder)}),r.jsx(Mt,{href:s,folder:g.data.folder,collection:g.data.collection,documentHref:h=>t(g.data.folder,h),folderHref:o,onSort:y,refreshing:g.isFetching,sort:m},`${f}:${p}`)]}):r.jsx("p",{role:"status",children:"Loading collection…"})}export{Xt as CollectionPage};
@@ -0,0 +1,38 @@
1
+ import{c as s,j as m,R as Be,d as ht,B as Et}from"./react-B9jn2M18.js";import{R as yt,h as bt}from"./index-CCXE8zc9.js";import{l as Ke}from"./view-context-DXKM3-l1.js";import{a as M}from"./utils-DCaHk0Gm.js";import{D as xt,c as Ct,d as wt,a as Dt,b as Rt,e as Nt,f as St}from"./index-CegvVQ1C.js";var Ae=1,It=.9,Pt=.8,Ot=.17,me=.1,pe=.999,At=.9999,_t=.99,kt=/[\\\/_+.#"@\[\(\{&]/,Tt=/[\\\/_+.#"@\[\(\{&]/g,Mt=/[\s-]/,Ve=/[\s-]/g;function ye(e,t,n,o,r,a,c){if(a===t.length)return r===e.length?Ae:_t;var i=`${r},${a}`;if(c[i]!==void 0)return c[i];for(var f=o.charAt(a),l=n.indexOf(f,r),d=0,p,y,h,R;l>=0;)p=ye(e,t,n,o,l+1,a+1,c),p>d&&(l===r?p*=Ae:kt.test(e.charAt(l-1))?(p*=Pt,h=e.slice(r,l-1).match(Tt),h&&r>0&&(p*=Math.pow(pe,h.length))):Mt.test(e.charAt(l-1))?(p*=It,R=e.slice(r,l-1).match(Ve),R&&r>0&&(p*=Math.pow(pe,R.length))):(p*=Ot,r>0&&(p*=Math.pow(pe,l-r))),e.charAt(l)!==t.charAt(a)&&(p*=At)),(p<me&&n.charAt(l-1)===o.charAt(a+1)||o.charAt(a+1)===o.charAt(a)&&n.charAt(l-1)!==o.charAt(a))&&(y=ye(e,t,n,o,l+1,a+2,c),y*me>p&&(p=y*me)),p>d&&(d=p),l=n.indexOf(f,l+1);return c[i]=d,d}function _e(e){return e.toLowerCase().replace(Ve," ")}function Ft(e,t,n){return e=n&&n.length>0?`${e+" "+n.join(" ")}`:e,ye(e,t,_e(e),_e(t),0,0,{})}function W(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),n===!1||!r.defaultPrevented)return t?.(r)}}function ke(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function K(...e){return t=>{let n=!1;const o=e.map(r=>{const a=ke(r,t);return!n&&typeof a=="function"&&(n=!0),a});if(n)return()=>{for(let r=0;r<o.length;r++){const a=o[r];typeof a=="function"?a():ke(e[r],null)}}}}function H(...e){return s.useCallback(K(...e),e)}function jt(e,t){const n=s.createContext(t),o=a=>{const{children:c,...i}=a,f=s.useMemo(()=>i,Object.values(i));return m.jsx(n.Provider,{value:f,children:c})};o.displayName=e+"Provider";function r(a){const c=s.useContext(n);if(c)return c;if(t!==void 0)return t;throw new Error(`\`${a}\` must be used within \`${e}\``)}return[o,r]}function Lt(e,t=[]){let n=[];function o(a,c){const i=s.createContext(c),f=n.length;n=[...n,c];const l=p=>{const{scope:y,children:h,...R}=p,x=y?.[e]?.[f]||i,N=s.useMemo(()=>R,Object.values(R));return m.jsx(x.Provider,{value:N,children:h})};l.displayName=a+"Provider";function d(p,y){const h=y?.[e]?.[f]||i,R=s.useContext(h);if(R)return R;if(c!==void 0)return c;throw new Error(`\`${p}\` must be used within \`${a}\``)}return[l,d]}const r=()=>{const a=n.map(c=>s.createContext(c));return function(i){const f=i?.[e]||a;return s.useMemo(()=>({[`__scope${e}`]:{...i,[e]:f}}),[i,f])}};return r.scopeName=e,[o,$t(r,...t)]}function $t(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const o=e.map(r=>({useScope:r(),scopeName:r.scopeName}));return function(a){const c=o.reduce((i,{useScope:f,scopeName:l})=>{const p=f(a)[`__scope${l}`];return{...i,...p}},{});return s.useMemo(()=>({[`__scope${t.scopeName}`]:c}),[c])}};return n.scopeName=t.scopeName,n}var ee=globalThis?.document?s.useLayoutEffect:()=>{},Wt=Be[" useId ".trim().toString()]||(()=>{}),Ut=0;function j(e){const[t,n]=s.useState(Wt());return ee(()=>{n(o=>o??String(Ut++))},[e]),t?`radix-${t}`:""}var Bt=Be[" useInsertionEffect ".trim().toString()]||ee;function Kt({prop:e,defaultProp:t,onChange:n=()=>{},caller:o}){const[r,a,c]=Vt({defaultProp:t,onChange:n}),i=e!==void 0,f=i?e:r;{const d=s.useRef(e!==void 0);s.useEffect(()=>{const p=d.current;p!==i&&console.warn(`${o} is changing from ${p?"controlled":"uncontrolled"} to ${i?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),d.current=i},[i,o])}const l=s.useCallback(d=>{if(i){const p=zt(d)?d(e):d;p!==e&&c.current?.(p)}else a(d)},[i,e,a,c]);return[f,l]}function Vt({defaultProp:e,onChange:t}){const[n,o]=s.useState(e),r=s.useRef(n),a=s.useRef(t);return Bt(()=>{a.current=t},[t]),s.useEffect(()=>{r.current!==n&&(a.current?.(n),r.current=n)},[n,r]),[n,o,a]}function zt(e){return typeof e=="function"}function ze(e){const t=Ht(e),n=s.forwardRef((o,r)=>{const{children:a,...c}=o,i=s.Children.toArray(a),f=i.find(qt);if(f){const l=f.props.children,d=i.map(p=>p===f?s.Children.count(l)>1?s.Children.only(null):s.isValidElement(l)?l.props.children:null:p);return m.jsx(t,{...c,ref:r,children:s.isValidElement(l)?s.cloneElement(l,void 0,d):null})}return m.jsx(t,{...c,ref:r,children:a})});return n.displayName=`${e}.Slot`,n}function Ht(e){const t=s.forwardRef((n,o)=>{const{children:r,...a}=n;if(s.isValidElement(r)){const c=Yt(r),i=Xt(a,r.props);return r.type!==s.Fragment&&(i.ref=o?K(o,c):c),s.cloneElement(r,i)}return s.Children.count(r)>1?s.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var Gt=Symbol("radix.slottable");function qt(e){return s.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===Gt}function Xt(e,t){const n={...t};for(const o in t){const r=e[o],a=t[o];/^on[A-Z]/.test(o)?r&&a?n[o]=(...i)=>{const f=a(...i);return r(...i),f}:r&&(n[o]=r):o==="style"?n[o]={...r,...a}:o==="className"&&(n[o]=[r,a].filter(Boolean).join(" "))}return{...e,...n}}function Yt(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var Zt=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],P=Zt.reduce((e,t)=>{const n=ze(`Primitive.${t}`),o=s.forwardRef((r,a)=>{const{asChild:c,...i}=r,f=c?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),m.jsx(f,{...i,ref:a})});return o.displayName=`Primitive.${t}`,{...e,[t]:o}},{});function Jt(e,t){e&&ht.flushSync(()=>e.dispatchEvent(t))}function te(e){const t=s.useRef(e);return s.useEffect(()=>{t.current=e}),s.useMemo(()=>(...n)=>t.current?.(...n),[])}function Qt(e,t=globalThis?.document){const n=te(e);s.useEffect(()=>{const o=r=>{r.key==="Escape"&&n(r)};return t.addEventListener("keydown",o,{capture:!0}),()=>t.removeEventListener("keydown",o,{capture:!0})},[n,t])}var en="DismissableLayer",be="dismissableLayer.update",tn="dismissableLayer.pointerDownOutside",nn="dismissableLayer.focusOutside",Te,He=s.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Ge=s.forwardRef((e,t)=>{const{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:o,onPointerDownOutside:r,onFocusOutside:a,onInteractOutside:c,onDismiss:i,...f}=e,l=s.useContext(He),[d,p]=s.useState(null),y=d?.ownerDocument??globalThis?.document,[,h]=s.useState({}),R=H(t,E=>p(E)),x=Array.from(l.layers),[N]=[...l.layersWithOutsidePointerEventsDisabled].slice(-1),S=x.indexOf(N),k=d?x.indexOf(d):-1,A=l.layersWithOutsidePointerEventsDisabled.size>0,I=k>=S,T=sn(E=>{const L=E.target,Z=[...l.branches].some(B=>B.contains(L));!I||Z||(r?.(E),c?.(E),E.defaultPrevented||i?.())},y),w=an(E=>{const L=E.target;[...l.branches].some(B=>B.contains(L))||(a?.(E),c?.(E),E.defaultPrevented||i?.())},y);return Qt(E=>{k===l.layers.size-1&&(o?.(E),!E.defaultPrevented&&i&&(E.preventDefault(),i()))},y),s.useEffect(()=>{if(d)return n&&(l.layersWithOutsidePointerEventsDisabled.size===0&&(Te=y.body.style.pointerEvents,y.body.style.pointerEvents="none"),l.layersWithOutsidePointerEventsDisabled.add(d)),l.layers.add(d),Me(),()=>{n&&l.layersWithOutsidePointerEventsDisabled.size===1&&(y.body.style.pointerEvents=Te)}},[d,y,n,l]),s.useEffect(()=>()=>{d&&(l.layers.delete(d),l.layersWithOutsidePointerEventsDisabled.delete(d),Me())},[d,l]),s.useEffect(()=>{const E=()=>h({});return document.addEventListener(be,E),()=>document.removeEventListener(be,E)},[]),m.jsx(P.div,{...f,ref:R,style:{pointerEvents:A?I?"auto":"none":void 0,...e.style},onFocusCapture:W(e.onFocusCapture,w.onFocusCapture),onBlurCapture:W(e.onBlurCapture,w.onBlurCapture),onPointerDownCapture:W(e.onPointerDownCapture,T.onPointerDownCapture)})});Ge.displayName=en;var rn="DismissableLayerBranch",on=s.forwardRef((e,t)=>{const n=s.useContext(He),o=s.useRef(null),r=H(t,o);return s.useEffect(()=>{const a=o.current;if(a)return n.branches.add(a),()=>{n.branches.delete(a)}},[n.branches]),m.jsx(P.div,{...e,ref:r})});on.displayName=rn;function sn(e,t=globalThis?.document){const n=te(e),o=s.useRef(!1),r=s.useRef(()=>{});return s.useEffect(()=>{const a=i=>{if(i.target&&!o.current){let f=function(){qe(tn,n,l,{discrete:!0})};const l={originalEvent:i};i.pointerType==="touch"?(t.removeEventListener("click",r.current),r.current=f,t.addEventListener("click",r.current,{once:!0})):f()}else t.removeEventListener("click",r.current);o.current=!1},c=window.setTimeout(()=>{t.addEventListener("pointerdown",a)},0);return()=>{window.clearTimeout(c),t.removeEventListener("pointerdown",a),t.removeEventListener("click",r.current)}},[t,n]),{onPointerDownCapture:()=>o.current=!0}}function an(e,t=globalThis?.document){const n=te(e),o=s.useRef(!1);return s.useEffect(()=>{const r=a=>{a.target&&!o.current&&qe(nn,n,{originalEvent:a},{discrete:!1})};return t.addEventListener("focusin",r),()=>t.removeEventListener("focusin",r)},[t,n]),{onFocusCapture:()=>o.current=!0,onBlurCapture:()=>o.current=!1}}function Me(){const e=new CustomEvent(be);document.dispatchEvent(e)}function qe(e,t,n,{discrete:o}){const r=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&r.addEventListener(e,t,{once:!0}),o?Jt(r,a):r.dispatchEvent(a)}var ve="focusScope.autoFocusOnMount",ge="focusScope.autoFocusOnUnmount",Fe={bubbles:!1,cancelable:!0},ln="FocusScope",Xe=s.forwardRef((e,t)=>{const{loop:n=!1,trapped:o=!1,onMountAutoFocus:r,onUnmountAutoFocus:a,...c}=e,[i,f]=s.useState(null),l=te(r),d=te(a),p=s.useRef(null),y=H(t,x=>f(x)),h=s.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;s.useEffect(()=>{if(o){let x=function(A){if(h.paused||!i)return;const I=A.target;i.contains(I)?p.current=I:$(p.current,{select:!0})},N=function(A){if(h.paused||!i)return;const I=A.relatedTarget;I!==null&&(i.contains(I)||$(p.current,{select:!0}))},S=function(A){if(document.activeElement===document.body)for(const T of A)T.removedNodes.length>0&&$(i)};document.addEventListener("focusin",x),document.addEventListener("focusout",N);const k=new MutationObserver(S);return i&&k.observe(i,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",x),document.removeEventListener("focusout",N),k.disconnect()}}},[o,i,h.paused]),s.useEffect(()=>{if(i){Le.add(h);const x=document.activeElement;if(!i.contains(x)){const S=new CustomEvent(ve,Fe);i.addEventListener(ve,l),i.dispatchEvent(S),S.defaultPrevented||(cn(pn(Ye(i)),{select:!0}),document.activeElement===x&&$(i))}return()=>{i.removeEventListener(ve,l),setTimeout(()=>{const S=new CustomEvent(ge,Fe);i.addEventListener(ge,d),i.dispatchEvent(S),S.defaultPrevented||$(x??document.body,{select:!0}),i.removeEventListener(ge,d),Le.remove(h)},0)}}},[i,l,d,h]);const R=s.useCallback(x=>{if(!n&&!o||h.paused)return;const N=x.key==="Tab"&&!x.altKey&&!x.ctrlKey&&!x.metaKey,S=document.activeElement;if(N&&S){const k=x.currentTarget,[A,I]=un(k);A&&I?!x.shiftKey&&S===I?(x.preventDefault(),n&&$(A,{select:!0})):x.shiftKey&&S===A&&(x.preventDefault(),n&&$(I,{select:!0})):S===k&&x.preventDefault()}},[n,o,h.paused]);return m.jsx(P.div,{tabIndex:-1,...c,ref:y,onKeyDown:R})});Xe.displayName=ln;function cn(e,{select:t=!1}={}){const n=document.activeElement;for(const o of e)if($(o,{select:t}),document.activeElement!==n)return}function un(e){const t=Ye(e),n=je(t,e),o=je(t.reverse(),e);return[n,o]}function Ye(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:o=>{const r=o.tagName==="INPUT"&&o.type==="hidden";return o.disabled||o.hidden||r?NodeFilter.FILTER_SKIP:o.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function je(e,t){for(const n of e)if(!dn(n,{upTo:t}))return n}function dn(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function fn(e){return e instanceof HTMLInputElement&&"select"in e}function $(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&fn(e)&&t&&e.select()}}var Le=mn();function mn(){let e=[];return{add(t){const n=e[0];t!==n&&n?.pause(),e=$e(e,t),e.unshift(t)},remove(t){e=$e(e,t),e[0]?.resume()}}}function $e(e,t){const n=[...e],o=n.indexOf(t);return o!==-1&&n.splice(o,1),n}function pn(e){return e.filter(t=>t.tagName!=="A")}var vn="Portal",Ze=s.forwardRef((e,t)=>{const{container:n,...o}=e,[r,a]=s.useState(!1);ee(()=>a(!0),[]);const c=n||r&&globalThis?.document?.body;return c?Et.createPortal(m.jsx(P.div,{...o,ref:t}),c):null});Ze.displayName=vn;function gn(e,t){return s.useReducer((n,o)=>t[n][o]??n,e)}var ae=e=>{const{present:t,children:n}=e,o=hn(t),r=typeof n=="function"?n({present:o.isPresent}):s.Children.only(n),a=H(o.ref,En(r));return typeof n=="function"||o.isPresent?s.cloneElement(r,{ref:a}):null};ae.displayName="Presence";function hn(e){const[t,n]=s.useState(),o=s.useRef(null),r=s.useRef(e),a=s.useRef("none"),c=e?"mounted":"unmounted",[i,f]=gn(c,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return s.useEffect(()=>{const l=oe(o.current);a.current=i==="mounted"?l:"none"},[i]),ee(()=>{const l=o.current,d=r.current;if(d!==e){const y=a.current,h=oe(l);e?f("MOUNT"):h==="none"||l?.display==="none"?f("UNMOUNT"):f(d&&y!==h?"ANIMATION_OUT":"UNMOUNT"),r.current=e}},[e,f]),ee(()=>{if(t){let l;const d=t.ownerDocument.defaultView??window,p=h=>{const x=oe(o.current).includes(CSS.escape(h.animationName));if(h.target===t&&x&&(f("ANIMATION_END"),!r.current)){const N=t.style.animationFillMode;t.style.animationFillMode="forwards",l=d.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=N)})}},y=h=>{h.target===t&&(a.current=oe(o.current))};return t.addEventListener("animationstart",y),t.addEventListener("animationcancel",p),t.addEventListener("animationend",p),()=>{d.clearTimeout(l),t.removeEventListener("animationstart",y),t.removeEventListener("animationcancel",p),t.removeEventListener("animationend",p)}}else f("ANIMATION_END")},[t,f]),{isPresent:["mounted","unmountSuspended"].includes(i),ref:s.useCallback(l=>{o.current=l?getComputedStyle(l):null,n(l)},[])}}function oe(e){return e?.animationName||"none"}function En(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var he=0;function yn(){s.useEffect(()=>{const e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??We()),document.body.insertAdjacentElement("beforeend",e[1]??We()),he++,()=>{he===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(t=>t.remove()),he--}},[])}function We(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}var ie="Dialog",[Je]=Lt(ie),[bn,F]=Je(ie),Qe=e=>{const{__scopeDialog:t,children:n,open:o,defaultOpen:r,onOpenChange:a,modal:c=!0}=e,i=s.useRef(null),f=s.useRef(null),[l,d]=Kt({prop:o,defaultProp:r??!1,onChange:a,caller:ie});return m.jsx(bn,{scope:t,triggerRef:i,contentRef:f,contentId:j(),titleId:j(),descriptionId:j(),open:l,onOpenChange:d,onOpenToggle:s.useCallback(()=>d(p=>!p),[d]),modal:c,children:n})};Qe.displayName=ie;var et="DialogTrigger",xn=s.forwardRef((e,t)=>{const{__scopeDialog:n,...o}=e,r=F(et,n),a=H(t,r.triggerRef);return m.jsx(P.button,{type:"button","aria-haspopup":"dialog","aria-expanded":r.open,"aria-controls":r.contentId,"data-state":De(r.open),...o,ref:a,onClick:W(e.onClick,r.onOpenToggle)})});xn.displayName=et;var Ce="DialogPortal",[Cn,tt]=Je(Ce,{forceMount:void 0}),nt=e=>{const{__scopeDialog:t,forceMount:n,children:o,container:r}=e,a=F(Ce,t);return m.jsx(Cn,{scope:t,forceMount:n,children:s.Children.map(o,c=>m.jsx(ae,{present:n||a.open,children:m.jsx(Ze,{asChild:!0,container:r,children:c})}))})};nt.displayName=Ce;var se="DialogOverlay",rt=s.forwardRef((e,t)=>{const n=tt(se,e.__scopeDialog),{forceMount:o=n.forceMount,...r}=e,a=F(se,e.__scopeDialog);return a.modal?m.jsx(ae,{present:o||a.open,children:m.jsx(Dn,{...r,ref:t})}):null});rt.displayName=se;var wn=ze("DialogOverlay.RemoveScroll"),Dn=s.forwardRef((e,t)=>{const{__scopeDialog:n,...o}=e,r=F(se,n);return m.jsx(yt,{as:wn,allowPinchZoom:!0,shards:[r.contentRef],children:m.jsx(P.div,{"data-state":De(r.open),...o,ref:t,style:{pointerEvents:"auto",...o.style}})})}),V="DialogContent",ot=s.forwardRef((e,t)=>{const n=tt(V,e.__scopeDialog),{forceMount:o=n.forceMount,...r}=e,a=F(V,e.__scopeDialog);return m.jsx(ae,{present:o||a.open,children:a.modal?m.jsx(Rn,{...r,ref:t}):m.jsx(Nn,{...r,ref:t})})});ot.displayName=V;var Rn=s.forwardRef((e,t)=>{const n=F(V,e.__scopeDialog),o=s.useRef(null),r=H(t,n.contentRef,o);return s.useEffect(()=>{const a=o.current;if(a)return bt(a)},[]),m.jsx(st,{...e,ref:r,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:W(e.onCloseAutoFocus,a=>{a.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:W(e.onPointerDownOutside,a=>{const c=a.detail.originalEvent,i=c.button===0&&c.ctrlKey===!0;(c.button===2||i)&&a.preventDefault()}),onFocusOutside:W(e.onFocusOutside,a=>a.preventDefault())})}),Nn=s.forwardRef((e,t)=>{const n=F(V,e.__scopeDialog),o=s.useRef(!1),r=s.useRef(!1);return m.jsx(st,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:a=>{e.onCloseAutoFocus?.(a),a.defaultPrevented||(o.current||n.triggerRef.current?.focus(),a.preventDefault()),o.current=!1,r.current=!1},onInteractOutside:a=>{e.onInteractOutside?.(a),a.defaultPrevented||(o.current=!0,a.detail.originalEvent.type==="pointerdown"&&(r.current=!0));const c=a.target;n.triggerRef.current?.contains(c)&&a.preventDefault(),a.detail.originalEvent.type==="focusin"&&r.current&&a.preventDefault()}})}),st=s.forwardRef((e,t)=>{const{__scopeDialog:n,trapFocus:o,onOpenAutoFocus:r,onCloseAutoFocus:a,...c}=e,i=F(V,n),f=s.useRef(null),l=H(t,f);return yn(),m.jsxs(m.Fragment,{children:[m.jsx(Xe,{asChild:!0,loop:!0,trapped:o,onMountAutoFocus:r,onUnmountAutoFocus:a,children:m.jsx(Ge,{role:"dialog",id:i.contentId,"aria-describedby":i.descriptionId,"aria-labelledby":i.titleId,"data-state":De(i.open),...c,ref:l,onDismiss:()=>i.onOpenChange(!1)})}),m.jsxs(m.Fragment,{children:[m.jsx(On,{titleId:i.titleId}),m.jsx(_n,{contentRef:f,descriptionId:i.descriptionId})]})]})}),we="DialogTitle",Sn=s.forwardRef((e,t)=>{const{__scopeDialog:n,...o}=e,r=F(we,n);return m.jsx(P.h2,{id:r.titleId,...o,ref:t})});Sn.displayName=we;var at="DialogDescription",In=s.forwardRef((e,t)=>{const{__scopeDialog:n,...o}=e,r=F(at,n);return m.jsx(P.p,{id:r.descriptionId,...o,ref:t})});In.displayName=at;var it="DialogClose",Pn=s.forwardRef((e,t)=>{const{__scopeDialog:n,...o}=e,r=F(it,n);return m.jsx(P.button,{type:"button",...o,ref:t,onClick:W(e.onClick,()=>r.onOpenChange(!1))})});Pn.displayName=it;function De(e){return e?"open":"closed"}var lt="DialogTitleWarning",[dr,ct]=jt(lt,{contentName:V,titleName:we,docsSlug:"dialog"}),On=({titleId:e})=>{const t=ct(lt),n=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.
2
+
3
+ If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
4
+
5
+ For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return s.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},An="DialogDescriptionWarning",_n=({contentRef:e,descriptionId:t})=>{const o=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${ct(An).contentName}}.`;return s.useEffect(()=>{const r=e.current?.getAttribute("aria-describedby");t&&r&&(document.getElementById(t)||console.warn(o))},[o,e,t]),null},kn=Qe,Tn=nt,Mn=rt,Fn=ot,Q='[cmdk-group=""]',Ee='[cmdk-group-items=""]',jn='[cmdk-group-heading=""]',ut='[cmdk-item=""]',Ue=`${ut}:not([aria-disabled="true"])`,xe="cmdk-item-select",q="data-value",Ln=(e,t,n)=>Ft(e,t,n),dt=s.createContext(void 0),ne=()=>s.useContext(dt),ft=s.createContext(void 0),Re=()=>s.useContext(ft),mt=s.createContext(void 0),pt=s.forwardRef((e,t)=>{let n=X(()=>{var u,g;return{search:"",value:(g=(u=e.value)!=null?u:e.defaultValue)!=null?g:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),o=X(()=>new Set),r=X(()=>new Map),a=X(()=>new Map),c=X(()=>new Set),i=vt(e),{label:f,children:l,value:d,onValueChange:p,filter:y,shouldFilter:h,loop:R,disablePointerSelection:x=!1,vimBindings:N=!0,...S}=e,k=j(),A=j(),I=j(),T=s.useRef(null),w=Xn();z(()=>{if(d!==void 0){let u=d.trim();n.current.value=u,E.emit()}},[d]),z(()=>{w(6,Ne)},[]);let E=s.useMemo(()=>({subscribe:u=>(c.current.add(u),()=>c.current.delete(u)),snapshot:()=>n.current,setState:(u,g,b)=>{var v,C,D,_;if(!Object.is(n.current[u],g)){if(n.current[u]=g,u==="search")ue(),B(),w(1,ce);else if(u==="value"){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let O=document.getElementById(I);O?O.focus():(v=document.getElementById(k))==null||v.focus()}if(w(7,()=>{var O;n.current.selectedItemId=(O=G())==null?void 0:O.id,E.emit()}),b||w(5,Ne),((C=i.current)==null?void 0:C.value)!==void 0){let O=g??"";(_=(D=i.current).onValueChange)==null||_.call(D,O);return}}E.emit()}},emit:()=>{c.current.forEach(u=>u())}}),[]),L=s.useMemo(()=>({value:(u,g,b)=>{var v;g!==((v=a.current.get(u))==null?void 0:v.value)&&(a.current.set(u,{value:g,keywords:b}),n.current.filtered.items.set(u,Z(g,b)),w(2,()=>{B(),E.emit()}))},item:(u,g)=>(o.current.add(u),g&&(r.current.has(g)?r.current.get(g).add(u):r.current.set(g,new Set([u]))),w(3,()=>{ue(),B(),n.current.value||ce(),E.emit()}),()=>{a.current.delete(u),o.current.delete(u),n.current.filtered.items.delete(u);let b=G();w(4,()=>{ue(),b?.getAttribute("id")===u&&ce(),E.emit()})}),group:u=>(r.current.has(u)||r.current.set(u,new Set),()=>{a.current.delete(u),r.current.delete(u)}),filter:()=>i.current.shouldFilter,label:f||e["aria-label"],getDisablePointerSelection:()=>i.current.disablePointerSelection,listId:k,inputId:I,labelId:A,listInnerRef:T}),[]);function Z(u,g){var b,v;let C=(v=(b=i.current)==null?void 0:b.filter)!=null?v:Ln;return u?C(u,n.current.search,g):0}function B(){if(!n.current.search||i.current.shouldFilter===!1)return;let u=n.current.filtered.items,g=[];n.current.filtered.groups.forEach(v=>{let C=r.current.get(v),D=0;C.forEach(_=>{let O=u.get(_);D=Math.max(O,D)}),g.push([v,D])});let b=T.current;J().sort((v,C)=>{var D,_;let O=v.getAttribute("id"),re=C.getAttribute("id");return((D=u.get(re))!=null?D:0)-((_=u.get(O))!=null?_:0)}).forEach(v=>{let C=v.closest(Ee);C?C.appendChild(v.parentElement===C?v:v.closest(`${Ee} > *`)):b.appendChild(v.parentElement===b?v:v.closest(`${Ee} > *`))}),g.sort((v,C)=>C[1]-v[1]).forEach(v=>{var C;let D=(C=T.current)==null?void 0:C.querySelector(`${Q}[${q}="${encodeURIComponent(v[0])}"]`);D?.parentElement.appendChild(D)})}function ce(){let u=J().find(b=>b.getAttribute("aria-disabled")!=="true"),g=u?.getAttribute(q);E.setState("value",g||void 0)}function ue(){var u,g,b,v;if(!n.current.search||i.current.shouldFilter===!1){n.current.filtered.count=o.current.size;return}n.current.filtered.groups=new Set;let C=0;for(let D of o.current){let _=(g=(u=a.current.get(D))==null?void 0:u.value)!=null?g:"",O=(v=(b=a.current.get(D))==null?void 0:b.keywords)!=null?v:[],re=Z(_,O);n.current.filtered.items.set(D,re),re>0&&C++}for(let[D,_]of r.current)for(let O of _)if(n.current.filtered.items.get(O)>0){n.current.filtered.groups.add(D);break}n.current.filtered.count=C}function Ne(){var u,g,b;let v=G();v&&(((u=v.parentElement)==null?void 0:u.firstChild)===v&&((b=(g=v.closest(Q))==null?void 0:g.querySelector(jn))==null||b.scrollIntoView({block:"nearest"})),v.scrollIntoView({block:"nearest"}))}function G(){var u;return(u=T.current)==null?void 0:u.querySelector(`${ut}[aria-selected="true"]`)}function J(){var u;return Array.from(((u=T.current)==null?void 0:u.querySelectorAll(Ue))||[])}function de(u){let g=J()[u];g&&E.setState("value",g.getAttribute(q))}function fe(u){var g;let b=G(),v=J(),C=v.findIndex(_=>_===b),D=v[C+u];(g=i.current)!=null&&g.loop&&(D=C+u<0?v[v.length-1]:C+u===v.length?v[0]:v[C+u]),D&&E.setState("value",D.getAttribute(q))}function Se(u){let g=G(),b=g?.closest(Q),v;for(;b&&!v;)b=u>0?Gn(b,Q):qn(b,Q),v=b?.querySelector(Ue);v?E.setState("value",v.getAttribute(q)):fe(u)}let Ie=()=>de(J().length-1),Pe=u=>{u.preventDefault(),u.metaKey?Ie():u.altKey?Se(1):fe(1)},Oe=u=>{u.preventDefault(),u.metaKey?de(0):u.altKey?Se(-1):fe(-1)};return s.createElement(P.div,{ref:t,tabIndex:-1,...S,"cmdk-root":"",onKeyDown:u=>{var g;(g=S.onKeyDown)==null||g.call(S,u);let b=u.nativeEvent.isComposing||u.keyCode===229;if(!(u.defaultPrevented||b))switch(u.key){case"n":case"j":{N&&u.ctrlKey&&Pe(u);break}case"ArrowDown":{Pe(u);break}case"p":case"k":{N&&u.ctrlKey&&Oe(u);break}case"ArrowUp":{Oe(u);break}case"Home":{u.preventDefault(),de(0);break}case"End":{u.preventDefault(),Ie();break}case"Enter":{u.preventDefault();let v=G();if(v){let C=new Event(xe);v.dispatchEvent(C)}}}}},s.createElement("label",{"cmdk-label":"",htmlFor:L.inputId,id:L.labelId,style:Zn},f),le(e,u=>s.createElement(ft.Provider,{value:E},s.createElement(dt.Provider,{value:L},u))))}),$n=s.forwardRef((e,t)=>{var n,o;let r=j(),a=s.useRef(null),c=s.useContext(mt),i=ne(),f=vt(e),l=(o=(n=f.current)==null?void 0:n.forceMount)!=null?o:c?.forceMount;z(()=>{if(!l)return i.item(r,c?.id)},[l]);let d=gt(r,a,[e.value,e.children,a],e.keywords),p=Re(),y=U(w=>w.value&&w.value===d.current),h=U(w=>l||i.filter()===!1?!0:w.search?w.filtered.items.get(r)>0:!0);s.useEffect(()=>{let w=a.current;if(!(!w||e.disabled))return w.addEventListener(xe,R),()=>w.removeEventListener(xe,R)},[h,e.onSelect,e.disabled]);function R(){var w,E;x(),(E=(w=f.current).onSelect)==null||E.call(w,d.current)}function x(){p.setState("value",d.current,!0)}if(!h)return null;let{disabled:N,value:S,onSelect:k,forceMount:A,keywords:I,...T}=e;return s.createElement(P.div,{ref:K(a,t),...T,id:r,"cmdk-item":"",role:"option","aria-disabled":!!N,"aria-selected":!!y,"data-disabled":!!N,"data-selected":!!y,onPointerMove:N||i.getDisablePointerSelection()?void 0:x,onClick:N?void 0:R},e.children)}),Wn=s.forwardRef((e,t)=>{let{heading:n,children:o,forceMount:r,...a}=e,c=j(),i=s.useRef(null),f=s.useRef(null),l=j(),d=ne(),p=U(h=>r||d.filter()===!1?!0:h.search?h.filtered.groups.has(c):!0);z(()=>d.group(c),[]),gt(c,i,[e.value,e.heading,f]);let y=s.useMemo(()=>({id:c,forceMount:r}),[r]);return s.createElement(P.div,{ref:K(i,t),...a,"cmdk-group":"",role:"presentation",hidden:p?void 0:!0},n&&s.createElement("div",{ref:f,"cmdk-group-heading":"","aria-hidden":!0,id:l},n),le(e,h=>s.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":n?l:void 0},s.createElement(mt.Provider,{value:y},h))))}),Un=s.forwardRef((e,t)=>{let{alwaysRender:n,...o}=e,r=s.useRef(null),a=U(c=>!c.search);return!n&&!a?null:s.createElement(P.div,{ref:K(r,t),...o,"cmdk-separator":"",role:"separator"})}),Bn=s.forwardRef((e,t)=>{let{onValueChange:n,...o}=e,r=e.value!=null,a=Re(),c=U(l=>l.search),i=U(l=>l.selectedItemId),f=ne();return s.useEffect(()=>{e.value!=null&&a.setState("search",e.value)},[e.value]),s.createElement(P.input,{ref:t,...o,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":f.listId,"aria-labelledby":f.labelId,"aria-activedescendant":i,id:f.inputId,type:"text",value:r?e.value:c,onChange:l=>{r||a.setState("search",l.target.value),n?.(l.target.value)}})}),Kn=s.forwardRef((e,t)=>{let{children:n,label:o="Suggestions",...r}=e,a=s.useRef(null),c=s.useRef(null),i=U(l=>l.selectedItemId),f=ne();return s.useEffect(()=>{if(c.current&&a.current){let l=c.current,d=a.current,p,y=new ResizeObserver(()=>{p=requestAnimationFrame(()=>{let h=l.offsetHeight;d.style.setProperty("--cmdk-list-height",h.toFixed(1)+"px")})});return y.observe(l),()=>{cancelAnimationFrame(p),y.unobserve(l)}}},[]),s.createElement(P.div,{ref:K(a,t),...r,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":i,"aria-label":o,id:f.listId},le(e,l=>s.createElement("div",{ref:K(c,f.listInnerRef),"cmdk-list-sizer":""},l)))}),Vn=s.forwardRef((e,t)=>{let{open:n,onOpenChange:o,overlayClassName:r,contentClassName:a,container:c,...i}=e;return s.createElement(kn,{open:n,onOpenChange:o},s.createElement(Tn,{container:c},s.createElement(Mn,{"cmdk-overlay":"",className:r}),s.createElement(Fn,{"aria-label":e.label,"cmdk-dialog":"",className:a},s.createElement(pt,{ref:t,...i}))))}),zn=s.forwardRef((e,t)=>U(n=>n.filtered.count===0)?s.createElement(P.div,{ref:t,...e,"cmdk-empty":"",role:"presentation"}):null),Hn=s.forwardRef((e,t)=>{let{progress:n,children:o,label:r="Loading...",...a}=e;return s.createElement(P.div,{ref:t,...a,"cmdk-loading":"",role:"progressbar","aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":r},le(e,c=>s.createElement("div",{"aria-hidden":!0},c)))}),Y=Object.assign(pt,{List:Kn,Item:$n,Input:Bn,Group:Wn,Separator:Un,Dialog:Vn,Empty:zn,Loading:Hn});function Gn(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return n;n=n.nextElementSibling}}function qn(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return n;n=n.previousElementSibling}}function vt(e){let t=s.useRef(e);return z(()=>{t.current=e}),t}var z=typeof window>"u"?s.useEffect:s.useLayoutEffect;function X(e){let t=s.useRef();return t.current===void 0&&(t.current=e()),t}function U(e){let t=Re(),n=()=>e(t.snapshot());return s.useSyncExternalStore(t.subscribe,n,n)}function gt(e,t,n,o=[]){let r=s.useRef(),a=ne();return z(()=>{var c;let i=(()=>{var l;for(let d of n){if(typeof d=="string")return d.trim();if(typeof d=="object"&&"current"in d)return d.current?(l=d.current.textContent)==null?void 0:l.trim():r.current}})(),f=o.map(l=>l.trim());a.value(e,i,f),(c=t.current)==null||c.setAttribute(q,i),r.current=i}),r}var Xn=()=>{let[e,t]=s.useState(),n=X(()=>new Map);return z(()=>{n.current.forEach(o=>o()),n.current=new Map},[e]),(o,r)=>{n.current.set(o,r),t({})}};function Yn(e){let t=e.type;return typeof t=="function"?t(e.props):"render"in t?t.render(e.props):e}function le({asChild:e,children:t},n){return e&&s.isValidElement(t)?s.cloneElement(Yn(t),{ref:t.ref},n(t.props.children)):n(t)}var Zn={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};function Jn({...e}){return m.jsx(xt,{"data-slot":"dialog",...e})}function Qn({...e}){return m.jsx(Nt,{"data-slot":"dialog-portal",...e})}function er({className:e,...t}){return m.jsx(St,{"data-slot":"dialog-overlay",className:M(`data-[state=open]:animate-in data-[state=closed]:animate-out
6
+ data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0
7
+ z-50 bg-black/50`,e),...t})}function tr({className:e,children:t,showCloseButton:n=!0,...o}){return m.jsxs(Qn,{"data-slot":"dialog-portal",children:[m.jsx(er,{}),m.jsxs(Dt,{"data-slot":"dialog-content",className:M(`bg-background data-[state=open]:animate-in
8
+ data-[state=closed]:animate-out data-[state=closed]:fade-out-0
9
+ data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95
10
+ data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid
11
+ w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%]
12
+ gap-4 rounded-lg border p-6 shadow-lg duration-200 outline-none
13
+ sm:max-w-lg`,e),...o,children:[t,n&&m.jsxs(Rt,{"data-slot":"dialog-close",className:`ring-offset-background focus:ring-ring
14
+ data-[state=open]:bg-accent
15
+ data-[state=open]:text-muted-foreground absolute top-4 right-4
16
+ rounded-xs opacity-70 transition-opacity hover:opacity-100
17
+ focus:ring-2 focus:ring-offset-2 focus:outline-hidden
18
+ disabled:pointer-events-none [&_svg]:pointer-events-none
19
+ [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,children:[m.jsx(Ke.XIcon,{}),m.jsx("span",{className:"sr-only",children:"Close"})]})]})]})}function nr({className:e,...t}){return m.jsx("div",{"data-slot":"dialog-header",className:M("flex flex-col gap-2 text-center sm:text-left",e),...t})}function rr({className:e,...t}){return m.jsx(Ct,{"data-slot":"dialog-title",className:M("text-lg leading-none font-semibold",e),...t})}function or({className:e,...t}){return m.jsx(wt,{"data-slot":"dialog-description",className:M("text-muted-foreground text-sm",e),...t})}function sr({className:e,...t}){return m.jsx(Y,{"data-slot":"command",className:M(`bg-popover text-popover-foreground flex h-full w-full flex-col
20
+ overflow-hidden rounded-md`,e),...t})}function fr({title:e="Command Palette",description:t="Search for a command to run...",children:n,className:o,showCloseButton:r=!0,...a}){return m.jsxs(Jn,{...a,children:[m.jsxs(nr,{className:"sr-only",children:[m.jsx(rr,{children:e}),m.jsx(or,{children:t})]}),m.jsx(tr,{className:M("overflow-hidden p-0",o),showCloseButton:r,children:m.jsx(sr,{className:`[&_[cmdk-group-heading]]:text-muted-foreground
21
+ **:data-[slot=command-input-wrapper]:h-12
22
+ [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium
23
+ [&_[cmdk-group]]:px-2
24
+ [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0
25
+ [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5
26
+ [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3
27
+ [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5`,children:n})})]})}function mr({className:e,...t}){return m.jsxs("div",{"data-slot":"command-input-wrapper",className:"flex h-9 items-center gap-2 border-b px-3",children:[m.jsx(Ke.SearchIcon,{className:"size-4 shrink-0 opacity-50"}),m.jsx(Y.Input,{"data-slot":"command-input",className:M(`placeholder:text-muted-foreground flex h-10 w-full rounded-md
28
+ bg-transparent py-3 text-sm outline-hidden disabled:cursor-not-allowed
29
+ disabled:opacity-50`,e),...t})]})}function pr({className:e,...t}){return m.jsx(Y.List,{"data-slot":"command-list",className:M("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto",e),...t})}function vr({...e}){return m.jsx(Y.Empty,{"data-slot":"command-empty",className:"py-6 text-center text-sm",...e})}function gr({className:e,...t}){return m.jsx(Y.Group,{"data-slot":"command-group",className:M(`text-foreground [&_[cmdk-group-heading]]:text-muted-foreground
30
+ overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2
31
+ [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs
32
+ [&_[cmdk-group-heading]]:font-medium`,e),...t})}function hr({className:e,...t}){return m.jsx(Y.Item,{"data-slot":"command-item",className:M(`data-[selected=true]:bg-accent
33
+ data-[selected=true]:text-accent-foreground
34
+ [&_svg:not([class*='text-'])]:text-muted-foreground relative flex
35
+ cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm
36
+ outline-hidden select-none data-[disabled=true]:pointer-events-none
37
+ data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none
38
+ [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,e),...t})}export{fr as C,mr as a,pr as b,vr as c,gr as d,hr as e,sr as f};
@@ -1 +1 @@
1
- import{j as p,c as a}from"./react-B9jn2M18.js";import{l as d,t as l}from"./view-context-gyDl_p2V.js";import{B as x}from"./button-C6arH7zt.js";const f=async e=>{if(navigator.clipboard?.writeText)try{return await navigator.clipboard.writeText(e),!0}catch{}const t=document.createElement("textarea");t.value=e,t.setAttribute("readonly",""),t.style.position="fixed",t.style.left="-9999px",t.style.top="0",document.body.appendChild(t),t.select();try{return document.execCommand("copy")}finally{document.body.removeChild(t)}},C=(e,t={})=>{const{copiedMs:o=1400}=t,[c,i]=a.useState(!1),s=a.useRef(void 0);a.useEffect(()=>()=>window.clearTimeout(s.current),[]);const n=a.useCallback(async()=>{const u=typeof e=="function"?await e():e,r=await f(u);return window.clearTimeout(s.current),i(r),r&&(s.current=window.setTimeout(()=>i(!1),o)),r},[e,o]);return{copied:c,copy:n}};function T({className:e,context:t,label:o="Copy context",notify:c=!0,onCopied:i,onFailed:s,size:n="icon-xs",variant:u="ghost"}){const{copied:r,copy:m}=C(t);return p.jsx(x,{type:"button",variant:u,size:n,className:e,"aria-label":o,title:o,onClick:()=>{m().then(y=>{y?(c&&l.success("Copied"),i?.()):(c&&l.error("Could not copy"),s?.())})},children:r?p.jsx(d.Check,{className:"size-3.5 text-emerald-600"}):p.jsx(d.Copy,{className:"size-3.5"})})}export{T as C,f as c};
1
+ import{j as p,c as a}from"./react-B9jn2M18.js";import{l as d,t as l}from"./view-context-DXKM3-l1.js";import{B as x}from"./button-C6arH7zt.js";const f=async e=>{if(navigator.clipboard?.writeText)try{return await navigator.clipboard.writeText(e),!0}catch{}const t=document.createElement("textarea");t.value=e,t.setAttribute("readonly",""),t.style.position="fixed",t.style.left="-9999px",t.style.top="0",document.body.appendChild(t),t.select();try{return document.execCommand("copy")}finally{document.body.removeChild(t)}},C=(e,t={})=>{const{copiedMs:o=1400}=t,[c,i]=a.useState(!1),s=a.useRef(void 0);a.useEffect(()=>()=>window.clearTimeout(s.current),[]);const n=a.useCallback(async()=>{const u=typeof e=="function"?await e():e,r=await f(u);return window.clearTimeout(s.current),i(r),r&&(s.current=window.setTimeout(()=>i(!1),o)),r},[e,o]);return{copied:c,copy:n}};function T({className:e,context:t,label:o="Copy context",notify:c=!0,onCopied:i,onFailed:s,size:n="icon-xs",variant:u="ghost"}){const{copied:r,copy:m}=C(t);return p.jsx(x,{type:"button",variant:u,size:n,className:e,"aria-label":o,title:o,onClick:()=>{m().then(y=>{y?(c&&l.success("Copied"),i?.()):(c&&l.error("Could not copy"),s?.())})},children:r?p.jsx(d.Check,{className:"size-3.5 text-emerald-600"}):p.jsx(d.Copy,{className:"size-3.5"})})}export{T as C,f as c};