devchain-cli 0.24.1 → 0.24.2

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 (343) hide show
  1. package/dist/build-info.json +2 -2
  2. package/dist/cli.js +40 -10
  3. package/dist/host-install/devchain-host-bootstrap.tgz +0 -0
  4. package/dist/host-install/pins.json +31 -2
  5. package/dist/lib/exclusive-run.js +51 -3
  6. package/dist/lib/git-owner.js +284 -0
  7. package/dist/lib/host-install.js +19 -151
  8. package/dist/lib/local-api.js +175 -0
  9. package/dist/server/common/config/env.config.d.ts +3 -0
  10. package/dist/server/common/config/env.config.js +1 -0
  11. package/dist/server/common/config/env.config.js.map +1 -1
  12. package/dist/server/common/config/host-image.json +3 -3
  13. package/dist/server/common/constants/syncthing-markers.d.ts +1 -0
  14. package/dist/server/common/constants/syncthing-markers.js +6 -1
  15. package/dist/server/common/constants/syncthing-markers.js.map +1 -1
  16. package/dist/server/common/filesystem/vm-home-path.d.ts +11 -0
  17. package/dist/server/common/filesystem/vm-home-path.js +48 -0
  18. package/dist/server/common/filesystem/vm-home-path.js.map +1 -0
  19. package/dist/server/common/process-ids-env.d.ts +1 -0
  20. package/dist/server/common/process-ids-env.js +13 -0
  21. package/dist/server/common/process-ids-env.js.map +1 -0
  22. package/dist/server/common/test/api-test-app.d.ts +12 -0
  23. package/dist/server/common/test/api-test-app.js +76 -0
  24. package/dist/server/common/test/api-test-app.js.map +1 -0
  25. package/dist/server/common/test/app-bootstrap.helper.js +8 -1
  26. package/dist/server/common/test/app-bootstrap.helper.js.map +1 -1
  27. package/dist/server/common/test/fake-bootstrap.server.js +3 -2
  28. package/dist/server/common/test/fake-bootstrap.server.js.map +1 -1
  29. package/dist/server/common/test/fake-docker-engine.server.d.ts +17 -6
  30. package/dist/server/common/test/fake-docker-engine.server.js +77 -33
  31. package/dist/server/common/test/fake-docker-engine.server.js.map +1 -1
  32. package/dist/server/common/test/fake-proxmox.server.js +4 -4
  33. package/dist/server/common/test/fake-ssh.server.js +6 -6
  34. package/dist/server/common/test/fake-ssh.server.js.map +1 -1
  35. package/dist/server/common/test/test-database.helper.d.ts +6 -0
  36. package/dist/server/common/test/test-database.helper.js +29 -0
  37. package/dist/server/common/test/test-database.helper.js.map +1 -0
  38. package/dist/server/modules/core/controllers/docker-archive.js +1 -1
  39. package/dist/server/modules/core/controllers/docker-archive.js.map +1 -1
  40. package/dist/server/modules/core/controllers/docker-engine.client.d.ts +2 -1
  41. package/dist/server/modules/core/controllers/docker-engine.client.js +8 -4
  42. package/dist/server/modules/core/controllers/docker-engine.client.js.map +1 -1
  43. package/dist/server/modules/core/controllers/docker-image-metadata.d.ts +248 -0
  44. package/dist/server/modules/core/controllers/docker-image-metadata.js +161 -0
  45. package/dist/server/modules/core/controllers/docker-image-metadata.js.map +1 -0
  46. package/dist/server/modules/core/controllers/docker-settings.d.ts +13 -2
  47. package/dist/server/modules/core/controllers/docker-settings.js +49 -11
  48. package/dist/server/modules/core/controllers/docker-settings.js.map +1 -1
  49. package/dist/server/modules/core/controllers/host-user-identity.d.ts +34 -0
  50. package/dist/server/modules/core/controllers/host-user-identity.js +23 -0
  51. package/dist/server/modules/core/controllers/host-user-identity.js.map +1 -0
  52. package/dist/server/modules/core/controllers/runtime.controller.d.ts +11 -4
  53. package/dist/server/modules/core/controllers/runtime.controller.js +2 -0
  54. package/dist/server/modules/core/controllers/runtime.controller.js.map +1 -1
  55. package/dist/server/modules/file-sync/build-exclusion-suggestions.d.ts +15 -0
  56. package/dist/server/modules/file-sync/build-exclusion-suggestions.js +402 -0
  57. package/dist/server/modules/file-sync/build-exclusion-suggestions.js.map +1 -0
  58. package/dist/server/modules/file-sync/file-sync-auto-fix.dto.d.ts +102 -0
  59. package/dist/server/modules/file-sync/file-sync-auto-fix.dto.js +22 -0
  60. package/dist/server/modules/file-sync/file-sync-auto-fix.dto.js.map +1 -0
  61. package/dist/server/modules/file-sync/file-sync-auto-fix.store.d.ts +12 -0
  62. package/dist/server/modules/file-sync/file-sync-auto-fix.store.js +73 -0
  63. package/dist/server/modules/file-sync/file-sync-auto-fix.store.js.map +1 -0
  64. package/dist/server/modules/file-sync/file-sync-conflicts.d.ts +3 -0
  65. package/dist/server/modules/file-sync/file-sync-conflicts.js +191 -0
  66. package/dist/server/modules/file-sync/file-sync-conflicts.js.map +1 -0
  67. package/dist/server/modules/file-sync/file-sync-ignores.store.d.ts +5 -1
  68. package/dist/server/modules/file-sync/file-sync-ignores.store.js +39 -8
  69. package/dist/server/modules/file-sync/file-sync-ignores.store.js.map +1 -1
  70. package/dist/server/modules/file-sync/file-sync.controller.d.ts +1 -3
  71. package/dist/server/modules/file-sync/file-sync.controller.js +5 -14
  72. package/dist/server/modules/file-sync/file-sync.controller.js.map +1 -1
  73. package/dist/server/modules/file-sync/file-sync.dto.d.ts +220 -1
  74. package/dist/server/modules/file-sync/file-sync.dto.js +70 -4
  75. package/dist/server/modules/file-sync/file-sync.dto.js.map +1 -1
  76. package/dist/server/modules/file-sync/file-sync.module.js +16 -1
  77. package/dist/server/modules/file-sync/file-sync.module.js.map +1 -1
  78. package/dist/server/modules/file-sync/file-sync.service.d.ts +18 -4
  79. package/dist/server/modules/file-sync/file-sync.service.js +166 -34
  80. package/dist/server/modules/file-sync/file-sync.service.js.map +1 -1
  81. package/dist/server/modules/file-sync/git-guard.dto.d.ts +61 -0
  82. package/dist/server/modules/file-sync/git-guard.dto.js +26 -0
  83. package/dist/server/modules/file-sync/git-guard.dto.js.map +1 -0
  84. package/dist/server/modules/file-sync/home-git-guard.service.d.ts +4 -2
  85. package/dist/server/modules/file-sync/home-git-guard.service.js +50 -25
  86. package/dist/server/modules/file-sync/home-git-guard.service.js.map +1 -1
  87. package/dist/server/modules/file-sync/host-git-guard.controller.d.ts +10 -0
  88. package/dist/server/modules/file-sync/host-git-guard.controller.js +64 -0
  89. package/dist/server/modules/file-sync/host-git-guard.controller.js.map +1 -0
  90. package/dist/server/modules/file-sync/host-git-index.controller.d.ts +9 -0
  91. package/dist/server/modules/file-sync/host-git-index.controller.js +67 -0
  92. package/dist/server/modules/file-sync/host-git-index.controller.js.map +1 -0
  93. package/dist/server/modules/file-sync/host-sync.controller.d.ts +15 -2
  94. package/dist/server/modules/file-sync/host-sync.controller.js +122 -14
  95. package/dist/server/modules/file-sync/host-sync.controller.js.map +1 -1
  96. package/dist/server/modules/file-sync/ignore-pattern-matcher.d.ts +30 -0
  97. package/dist/server/modules/file-sync/ignore-pattern-matcher.js +183 -0
  98. package/dist/server/modules/file-sync/ignore-pattern-matcher.js.map +1 -0
  99. package/dist/server/modules/file-sync/project-repository.d.ts +2 -0
  100. package/dist/server/modules/file-sync/project-repository.js +20 -0
  101. package/dist/server/modules/file-sync/project-repository.js.map +1 -0
  102. package/dist/server/modules/file-sync/sync-chown.dto.d.ts +99 -0
  103. package/dist/server/modules/file-sync/sync-chown.dto.js +46 -0
  104. package/dist/server/modules/file-sync/sync-chown.dto.js.map +1 -0
  105. package/dist/server/modules/file-sync/sync-chown.service.d.ts +12 -0
  106. package/dist/server/modules/file-sync/sync-chown.service.js +230 -0
  107. package/dist/server/modules/file-sync/sync-chown.service.js.map +1 -0
  108. package/dist/server/modules/file-sync/sync-path-inspection.dto.d.ts +626 -0
  109. package/dist/server/modules/file-sync/sync-path-inspection.dto.js +108 -0
  110. package/dist/server/modules/file-sync/sync-path-inspection.dto.js.map +1 -0
  111. package/dist/server/modules/file-sync/sync-path-inspector.d.ts +12 -0
  112. package/dist/server/modules/file-sync/sync-path-inspector.js +413 -0
  113. package/dist/server/modules/file-sync/sync-path-inspector.js.map +1 -0
  114. package/dist/server/modules/file-sync/testing/fake-file-sync.service.d.ts +27 -4
  115. package/dist/server/modules/file-sync/testing/fake-file-sync.service.js +66 -4
  116. package/dist/server/modules/file-sync/testing/fake-file-sync.service.js.map +1 -1
  117. package/dist/server/modules/file-sync/translate-git-ignore-rule.d.ts +3 -0
  118. package/dist/server/modules/file-sync/translate-git-ignore-rule.js +30 -0
  119. package/dist/server/modules/file-sync/translate-git-ignore-rule.js.map +1 -0
  120. package/dist/server/modules/mcp/services/handlers/skill-tools.js +2 -2
  121. package/dist/server/modules/mcp/services/handlers/skill-tools.js.map +1 -1
  122. package/dist/server/modules/remotes/connect-choices.controller.d.ts +9 -0
  123. package/dist/server/modules/remotes/connect-choices.controller.js +54 -0
  124. package/dist/server/modules/remotes/connect-choices.controller.js.map +1 -0
  125. package/dist/server/modules/remotes/connect-choices.dto.d.ts +52 -0
  126. package/dist/server/modules/remotes/connect-choices.dto.js +19 -0
  127. package/dist/server/modules/remotes/connect-choices.dto.js.map +1 -0
  128. package/dist/server/modules/remotes/connect-choices.store.d.ts +12 -0
  129. package/dist/server/modules/remotes/connect-choices.store.js +95 -0
  130. package/dist/server/modules/remotes/connect-choices.store.js.map +1 -0
  131. package/dist/server/modules/remotes/controllers/remotes.controller.d.ts +3 -0
  132. package/dist/server/modules/remotes/controllers/remotes.controller.js +9 -1
  133. package/dist/server/modules/remotes/controllers/remotes.controller.js.map +1 -1
  134. package/dist/server/modules/remotes/docker/docker-copy-back.js +40 -16
  135. package/dist/server/modules/remotes/docker/docker-copy-back.js.map +1 -1
  136. package/dist/server/modules/remotes/docker/docker-handoff.d.ts +5 -3
  137. package/dist/server/modules/remotes/docker/docker-handoff.js +146 -42
  138. package/dist/server/modules/remotes/docker/docker-handoff.js.map +1 -1
  139. package/dist/server/modules/remotes/docker/docker-handoff.store.d.ts +3 -0
  140. package/dist/server/modules/remotes/docker/docker-handoff.store.js.map +1 -1
  141. package/dist/server/modules/remotes/docker/docker-plan-fit.d.ts +4 -1
  142. package/dist/server/modules/remotes/docker/docker-plan-fit.js +19 -6
  143. package/dist/server/modules/remotes/docker/docker-plan-fit.js.map +1 -1
  144. package/dist/server/modules/remotes/docker/docker-plan-policy.d.ts +6 -2
  145. package/dist/server/modules/remotes/docker/docker-plan-policy.js +191 -38
  146. package/dist/server/modules/remotes/docker/docker-plan-policy.js.map +1 -1
  147. package/dist/server/modules/remotes/docker/docker-plan-source.service.d.ts +52 -8
  148. package/dist/server/modules/remotes/docker/docker-plan-source.service.js +273 -50
  149. package/dist/server/modules/remotes/docker/docker-plan-source.service.js.map +1 -1
  150. package/dist/server/modules/remotes/docker/docker-plan.controller.d.ts +2 -1
  151. package/dist/server/modules/remotes/docker/docker-plan.controller.js +14 -0
  152. package/dist/server/modules/remotes/docker/docker-plan.controller.js.map +1 -1
  153. package/dist/server/modules/remotes/docker/docker-plan.dto.d.ts +46 -1
  154. package/dist/server/modules/remotes/docker/docker-plan.dto.js +1 -0
  155. package/dist/server/modules/remotes/docker/docker-plan.dto.js.map +1 -1
  156. package/dist/server/modules/remotes/docker/docker-plan.service.d.ts +13 -7
  157. package/dist/server/modules/remotes/docker/docker-plan.service.js +57 -13
  158. package/dist/server/modules/remotes/docker/docker-plan.service.js.map +1 -1
  159. package/dist/server/modules/remotes/docker/docker-project-compose.d.ts +7 -0
  160. package/dist/server/modules/remotes/docker/docker-project-compose.js +30 -0
  161. package/dist/server/modules/remotes/docker/docker-project-compose.js.map +1 -0
  162. package/dist/server/modules/remotes/dtos/remote.dto.d.ts +2 -0
  163. package/dist/server/modules/remotes/dtos/remote.dto.js.map +1 -1
  164. package/dist/server/modules/remotes/git-owner.store.d.ts +13 -0
  165. package/dist/server/modules/remotes/git-owner.store.js +69 -0
  166. package/dist/server/modules/remotes/git-owner.store.js.map +1 -0
  167. package/dist/server/modules/remotes/host/host-docker.controller.d.ts +8 -0
  168. package/dist/server/modules/remotes/host/host-docker.controller.js +22 -6
  169. package/dist/server/modules/remotes/host/host-docker.controller.js.map +1 -1
  170. package/dist/server/modules/remotes/host/host-docker.dto.d.ts +606 -0
  171. package/dist/server/modules/remotes/host/host-docker.dto.js +47 -7
  172. package/dist/server/modules/remotes/host/host-docker.dto.js.map +1 -1
  173. package/dist/server/modules/remotes/host/host-docker.service.d.ts +16 -4
  174. package/dist/server/modules/remotes/host/host-docker.service.js +157 -82
  175. package/dist/server/modules/remotes/host/host-docker.service.js.map +1 -1
  176. package/dist/server/modules/remotes/host/host-ipv4-routes.d.ts +4 -0
  177. package/dist/server/modules/remotes/host/host-ipv4-routes.js +43 -0
  178. package/dist/server/modules/remotes/host/host-ipv4-routes.js.map +1 -0
  179. package/dist/server/modules/remotes/host-image.d.ts +1 -1
  180. package/dist/server/modules/remotes/host-image.js +1 -1
  181. package/dist/server/modules/remotes/host-install/host-install-block.d.ts +1 -0
  182. package/dist/server/modules/remotes/host-install/host-install-block.js +76 -2
  183. package/dist/server/modules/remotes/host-install/host-install-block.js.map +1 -1
  184. package/dist/server/modules/remotes/host-install/host-install.service.d.ts +0 -1
  185. package/dist/server/modules/remotes/host-install/host-install.service.js +9 -26
  186. package/dist/server/modules/remotes/host-install/host-install.service.js.map +1 -1
  187. package/dist/server/modules/remotes/operations/attach.operation.d.ts +5 -1
  188. package/dist/server/modules/remotes/operations/attach.operation.js +40 -5
  189. package/dist/server/modules/remotes/operations/attach.operation.js.map +1 -1
  190. package/dist/server/modules/remotes/operations/claim.operation.d.ts +1 -0
  191. package/dist/server/modules/remotes/operations/claim.operation.js +6 -1
  192. package/dist/server/modules/remotes/operations/claim.operation.js.map +1 -1
  193. package/dist/server/modules/remotes/operations/detach.operation.d.ts +4 -1
  194. package/dist/server/modules/remotes/operations/detach.operation.js +10 -2
  195. package/dist/server/modules/remotes/operations/detach.operation.js.map +1 -1
  196. package/dist/server/modules/remotes/operations/docker-import-inventory.store.d.ts +4 -0
  197. package/dist/server/modules/remotes/operations/docker-import-inventory.store.js +11 -0
  198. package/dist/server/modules/remotes/operations/docker-import-inventory.store.js.map +1 -1
  199. package/dist/server/modules/remotes/operations/file-sync-handoff.d.ts +29 -3
  200. package/dist/server/modules/remotes/operations/file-sync-handoff.js +477 -50
  201. package/dist/server/modules/remotes/operations/file-sync-handoff.js.map +1 -1
  202. package/dist/server/modules/remotes/operations/force-sync.operation.d.ts +39 -0
  203. package/dist/server/modules/remotes/operations/force-sync.operation.js +177 -0
  204. package/dist/server/modules/remotes/operations/force-sync.operation.js.map +1 -0
  205. package/dist/server/modules/remotes/operations/git-owner.dto.d.ts +83 -0
  206. package/dist/server/modules/remotes/operations/git-owner.dto.js +25 -0
  207. package/dist/server/modules/remotes/operations/git-owner.dto.js.map +1 -0
  208. package/dist/server/modules/remotes/operations/git-owner.operation.d.ts +35 -0
  209. package/dist/server/modules/remotes/operations/git-owner.operation.js +216 -0
  210. package/dist/server/modules/remotes/operations/git-owner.operation.js.map +1 -0
  211. package/dist/server/modules/remotes/operations/remote-host.client.d.ts +71 -7
  212. package/dist/server/modules/remotes/operations/remote-host.client.js +141 -11
  213. package/dist/server/modules/remotes/operations/remote-host.client.js.map +1 -1
  214. package/dist/server/modules/remotes/operations/remote-operation.dto.d.ts +19 -0
  215. package/dist/server/modules/remotes/operations/remote-operation.dto.js +5 -1
  216. package/dist/server/modules/remotes/operations/remote-operation.dto.js.map +1 -1
  217. package/dist/server/modules/remotes/operations/remote-operation.runner.d.ts +3 -1
  218. package/dist/server/modules/remotes/operations/remote-operation.runner.js +52 -21
  219. package/dist/server/modules/remotes/operations/remote-operation.runner.js.map +1 -1
  220. package/dist/server/modules/remotes/operations/remote-operation.types.d.ts +4 -1
  221. package/dist/server/modules/remotes/operations/remote-operation.types.js.map +1 -1
  222. package/dist/server/modules/remotes/operations/remote-operations.controller.d.ts +5 -0
  223. package/dist/server/modules/remotes/operations/remote-operations.controller.js +56 -0
  224. package/dist/server/modules/remotes/operations/remote-operations.controller.js.map +1 -1
  225. package/dist/server/modules/remotes/operations/remote-operations.service.d.ts +16 -1
  226. package/dist/server/modules/remotes/operations/remote-operations.service.js +155 -5
  227. package/dist/server/modules/remotes/operations/remote-operations.service.js.map +1 -1
  228. package/dist/server/modules/remotes/operations/update-logins.operation.d.ts +1 -3
  229. package/dist/server/modules/remotes/operations/update-logins.operation.js +3 -18
  230. package/dist/server/modules/remotes/operations/update-logins.operation.js.map +1 -1
  231. package/dist/server/modules/remotes/ports/remote-health.port.d.ts +2 -0
  232. package/dist/server/modules/remotes/ports/remote-health.port.js.map +1 -1
  233. package/dist/server/modules/remotes/remotes.module.js +18 -0
  234. package/dist/server/modules/remotes/remotes.module.js.map +1 -1
  235. package/dist/server/modules/remotes/replica/__fixtures__/replica-seed.d.ts +2 -2
  236. package/dist/server/modules/remotes/replica/__fixtures__/replica-seed.js +2 -13
  237. package/dist/server/modules/remotes/replica/__fixtures__/replica-seed.js.map +1 -1
  238. package/dist/server/modules/remotes/services/remote-health.service.js +5 -0
  239. package/dist/server/modules/remotes/services/remote-health.service.js.map +1 -1
  240. package/dist/server/modules/remotes/sync/file-sync-failures.service.d.ts +18 -0
  241. package/dist/server/modules/remotes/sync/file-sync-failures.service.js +157 -0
  242. package/dist/server/modules/remotes/sync/file-sync-failures.service.js.map +1 -0
  243. package/dist/server/modules/remotes/sync/file-sync-pattern-preview.service.d.ts +14 -0
  244. package/dist/server/modules/remotes/sync/file-sync-pattern-preview.service.js +99 -0
  245. package/dist/server/modules/remotes/sync/file-sync-pattern-preview.service.js.map +1 -0
  246. package/dist/server/modules/remotes/sync/file-sync-suggestions.service.d.ts +15 -0
  247. package/dist/server/modules/remotes/sync/file-sync-suggestions.service.js +90 -0
  248. package/dist/server/modules/remotes/sync/file-sync-suggestions.service.js.map +1 -0
  249. package/dist/server/modules/remotes/sync/project-file-sync.controller.d.ts +29 -0
  250. package/dist/server/modules/remotes/sync/project-file-sync.controller.js +160 -0
  251. package/dist/server/modules/remotes/sync/project-file-sync.controller.js.map +1 -0
  252. package/dist/server/modules/remotes/sync/remote-file-sync.dto.d.ts +72 -0
  253. package/dist/server/modules/remotes/sync/remote-file-sync.dto.js +16 -0
  254. package/dist/server/modules/remotes/sync/remote-file-sync.dto.js.map +1 -0
  255. package/dist/server/modules/remotes/sync/remote-file-sync.service.d.ts +32 -1
  256. package/dist/server/modules/remotes/sync/remote-file-sync.service.js +499 -38
  257. package/dist/server/modules/remotes/sync/remote-file-sync.service.js.map +1 -1
  258. package/dist/server/modules/remotes/sync/remote-live-sync.service.d.ts +2 -0
  259. package/dist/server/modules/remotes/sync/remote-live-sync.service.js +26 -12
  260. package/dist/server/modules/remotes/sync/remote-live-sync.service.js.map +1 -1
  261. package/dist/server/modules/remotes/vm-user-identity.d.ts +29 -0
  262. package/dist/server/modules/remotes/vm-user-identity.js +45 -0
  263. package/dist/server/modules/remotes/vm-user-identity.js.map +1 -0
  264. package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js +5 -1
  265. package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js.map +1 -1
  266. package/dist/server/modules/session-reader/data/pricing.json +55 -7
  267. package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js +5 -0
  268. package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js.map +1 -1
  269. package/dist/server/modules/settings/local/delegates/skills-settings.delegate.d.ts +6 -0
  270. package/dist/server/modules/settings/local/delegates/skills-settings.delegate.js +26 -0
  271. package/dist/server/modules/settings/local/delegates/skills-settings.delegate.js.map +1 -1
  272. package/dist/server/modules/settings/services/settings.service.d.ts +3 -1
  273. package/dist/server/modules/settings/services/settings.service.js +6 -0
  274. package/dist/server/modules/settings/services/settings.service.js.map +1 -1
  275. package/dist/server/modules/skills/adapters/anthropic-skill-source.adapter.js +5 -5
  276. package/dist/server/modules/skills/adapters/anthropic-skill-source.adapter.js.map +1 -1
  277. package/dist/server/modules/skills/adapters/github-directory-skill-source.adapter.js +5 -5
  278. package/dist/server/modules/skills/adapters/github-directory-skill-source.adapter.js.map +1 -1
  279. package/dist/server/modules/skills/adapters/github-skill-source.base.js +4 -3
  280. package/dist/server/modules/skills/adapters/github-skill-source.base.js.map +1 -1
  281. package/dist/server/modules/skills/adapters/local-skill-source.adapter.js +5 -5
  282. package/dist/server/modules/skills/adapters/local-skill-source.adapter.js.map +1 -1
  283. package/dist/server/modules/skills/adapters/microsoft-skill-source.adapter.js +5 -5
  284. package/dist/server/modules/skills/adapters/microsoft-skill-source.adapter.js.map +1 -1
  285. package/dist/server/modules/skills/adapters/openai-skill-source.adapter.js +5 -5
  286. package/dist/server/modules/skills/adapters/openai-skill-source.adapter.js.map +1 -1
  287. package/dist/server/modules/skills/adapters/skill-source.adapter.d.ts +5 -0
  288. package/dist/server/modules/skills/adapters/skill-sync-temp-cleanup.d.ts +5 -0
  289. package/dist/server/modules/skills/adapters/skill-sync-temp-cleanup.js +75 -0
  290. package/dist/server/modules/skills/adapters/skill-sync-temp-cleanup.js.map +1 -0
  291. package/dist/server/modules/skills/adapters/trailofbits-skill-source.adapter.js +5 -5
  292. package/dist/server/modules/skills/adapters/trailofbits-skill-source.adapter.js.map +1 -1
  293. package/dist/server/modules/skills/adapters/vercel-skill-source.adapter.js +5 -5
  294. package/dist/server/modules/skills/adapters/vercel-skill-source.adapter.js.map +1 -1
  295. package/dist/server/modules/skills/controllers/skills.controller.js +2 -2
  296. package/dist/server/modules/skills/controllers/skills.controller.js.map +1 -1
  297. package/dist/server/modules/skills/services/skill-source-lifecycle.service.d.ts +3 -3
  298. package/dist/server/modules/skills/services/skill-source-lifecycle.service.js +9 -4
  299. package/dist/server/modules/skills/services/skill-source-lifecycle.service.js.map +1 -1
  300. package/dist/server/modules/skills/services/skill-sync.service.d.ts +3 -3
  301. package/dist/server/modules/skills/services/skill-sync.service.js +32 -6
  302. package/dist/server/modules/skills/services/skill-sync.service.js.map +1 -1
  303. package/dist/server/modules/skills/services/skill-sync.types.d.ts +3 -0
  304. package/dist/server/modules/storage/db/schema.d.ts +2 -2
  305. package/dist/server/modules/storage/db/schema.js +2 -0
  306. package/dist/server/modules/storage/db/schema.js.map +1 -1
  307. package/dist/server/modules/storage/models/domain.models.d.ts +1 -1
  308. package/dist/server/modules/storage/models/domain.models.js +2 -0
  309. package/dist/server/modules/storage/models/domain.models.js.map +1 -1
  310. package/dist/server/modules/terminal/gateways/terminal.gateway.d.ts +3 -1
  311. package/dist/server/modules/terminal/gateways/terminal.gateway.js +9 -4
  312. package/dist/server/modules/terminal/gateways/terminal.gateway.js.map +1 -1
  313. package/dist/server/modules/terminal/services/terminal-activity.service.d.ts +0 -1
  314. package/dist/server/modules/terminal/services/terminal-activity.service.js +0 -3
  315. package/dist/server/modules/terminal/services/terminal-activity.service.js.map +1 -1
  316. package/dist/server/modules/terminal/services/terminal-io/lifecycle.js +15 -3
  317. package/dist/server/modules/terminal/services/terminal-io/lifecycle.js.map +1 -1
  318. package/dist/server/modules/terminal/utils/ansi-sanitizer.d.ts +0 -1
  319. package/dist/server/modules/terminal/utils/ansi-sanitizer.js +0 -4
  320. package/dist/server/modules/terminal/utils/ansi-sanitizer.js.map +1 -1
  321. package/dist/server/templates/teams-dev.json +11 -11
  322. package/dist/server/test-setup-node.js +4 -3
  323. package/dist/server/test-setup-node.js.map +1 -1
  324. package/dist/server/test-setup.js +7 -0
  325. package/dist/server/test-setup.js.map +1 -1
  326. package/dist/server/tsconfig.tsbuildinfo +1 -1
  327. package/dist/server/ui/assets/{ExternalRichEditor-DtNvrV0F.js → ExternalRichEditor-CIZPhssf.js} +24 -24
  328. package/dist/server/ui/assets/ReviewDetailPage-winyLSQ7.js +6 -0
  329. package/dist/server/ui/assets/ReviewsPage-BYKBReMp.js +6 -0
  330. package/dist/server/ui/assets/index-CiDJX6Hn.js +1191 -0
  331. package/dist/server/ui/assets/index-f1WOAqXB.css +32 -0
  332. package/dist/server/ui/assets/useReviewSubscription-v3Cto0y4.js +69 -0
  333. package/dist/server/ui/index.html +2 -2
  334. package/dist/templates/teams-dev.json +11 -11
  335. package/package.json +8 -1
  336. package/dist/server/modules/reviews/utils/notification-formatter.d.ts +0 -12
  337. package/dist/server/modules/reviews/utils/notification-formatter.js +0 -60
  338. package/dist/server/modules/reviews/utils/notification-formatter.js.map +0 -1
  339. package/dist/server/ui/assets/ReviewDetailPage-DJzEoM0x.js +0 -6
  340. package/dist/server/ui/assets/ReviewsPage-z2O8MNEw.js +0 -6
  341. package/dist/server/ui/assets/index-CC4P3V8L.js +0 -994
  342. package/dist/server/ui/assets/index-LsJe1ZTS.css +0 -32
  343. package/dist/server/ui/assets/useReviewSubscription-B7AdJBO2.js +0 -69
@@ -1,69 +0,0 @@
1
- var pa=e=>{throw TypeError(e)};var ga=(e,n,t)=>n.has(e)||pa("Cannot "+t);var Ct=(e,n,t)=>(ga(e,n,"read from private field"),t?t.call(e):n.get(e)),ha=(e,n,t)=>n.has(e)?pa("Cannot add the same private member more than once"):n instanceof WeakSet?n.add(e):n.set(e,t),ma=(e,n,t,r)=>(ga(e,n,"write to private field"),r?r.call(e,t):n.set(e,t),t);import{c as Ve,r as S,J as dr,j as u,P as Yn,L as Qi,N as Oe,O as Ji,Q as ws,U as eo,V as to,W as no,a as V,X as ro,Y as ao,Z as fr,_ as pr,$ as gr,d as gn,e as hn,a0 as so,T as pe,B as Le,M as Ie,u as Ye,l as hr,o as ee,a1 as mn,a2 as an,a3 as Be,a4 as Rt,a5 as io,a6 as oo,a7 as lo,a8 as uo,a9 as co,aa as fo,ab as po,ac as ba,ad as go,ae as ho,af as sn,ag as on,ah as ln,ai as un,aj as cn,ak as qn,al as mr,z as wt,am as xs,v as Dn,w as Mn,x as $n,y as Fn,an as Ss,ao as br,ap as mo,A as ze,aq as Pn,ar as zn,S as bo,p as yo,q as vo,s as wo,t as xo,as as So,at as Eo,au as ya,av as No,aw as ko,h as xt,n as zt,ax as bt,ay as Ao,az as Co,aA as To,aB as Io,aC as _o,aD as jo,aE as Ro,aF as Oo,aG as Lo,aH as Do,aI as Mo,aJ as $o,K as Fo,aK as Po}from"./index-CC4P3V8L.js";/**
2
- * @license lucide-react v0.545.0 - ISC
3
- *
4
- * This source code is licensed under the ISC license.
5
- * See the LICENSE file in the root directory of this source tree.
6
- */const zo=[["rect",{x:"14",y:"14",width:"4",height:"6",rx:"2",key:"p02svl"}],["rect",{x:"6",y:"4",width:"4",height:"6",rx:"2",key:"xm4xkj"}],["path",{d:"M6 20h4",key:"1i6q5t"}],["path",{d:"M14 10h4",key:"ru81e7"}],["path",{d:"M6 14h2v6",key:"16z9wg"}],["path",{d:"M14 4h2v6",key:"1idq9u"}]],Bo=Ve("binary",zo);/**
7
- * @license lucide-react v0.545.0 - ISC
8
- *
9
- * This source code is licensed under the ISC license.
10
- * See the LICENSE file in the root directory of this source tree.
11
- */const Go=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M12 3v18",key:"108xh3"}]],Uo=Ve("columns-2",Go);/**
12
- * @license lucide-react v0.545.0 - ISC
13
- *
14
- * This source code is licensed under the ISC license.
15
- * See the LICENSE file in the root directory of this source tree.
16
- */const Ho=[["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7z",key:"1mlx9k"}]],De=Ve("file-code",Ho);/**
17
- * @license lucide-react v0.545.0 - ISC
18
- *
19
- * This source code is licensed under the ISC license.
20
- * See the LICENSE file in the root directory of this source tree.
21
- */const Ko=[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]],yr=Ve("lightbulb",Ko);/**
22
- * @license lucide-react v0.545.0 - ISC
23
- *
24
- * This source code is licensed under the ISC license.
25
- * See the LICENSE file in the root directory of this source tree.
26
- */const Wo=[["path",{d:"M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719",key:"1sd12s"}]],Vo=Ve("message-circle",Wo);/**
27
- * @license lucide-react v0.545.0 - ISC
28
- *
29
- * This source code is licensed under the ISC license.
30
- * See the LICENSE file in the root directory of this source tree.
31
- */const Yo=[["path",{d:"M13 21h8",key:"1jsn5i"}],["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}]],qo=Ve("pen-line",Yo);/**
32
- * @license lucide-react v0.545.0 - ISC
33
- *
34
- * This source code is licensed under the ISC license.
35
- * See the LICENSE file in the root directory of this source tree.
36
- */const Xo=[["path",{d:"M20 18v-2a4 4 0 0 0-4-4H4",key:"5vmcpk"}],["path",{d:"m9 17-5-5 5-5",key:"nvlc11"}]],Zo=Ve("reply",Xo);/**
37
- * @license lucide-react v0.545.0 - ISC
38
- *
39
- * This source code is licensed under the ISC license.
40
- * See the LICENSE file in the root directory of this source tree.
41
- */const Qo=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M3 12h18",key:"1i2n21"}]],Jo=Ve("rows-2",Qo);var Es="Toggle",Ns=S.forwardRef((e,n)=>{const{pressed:t,defaultPressed:r,onPressedChange:a,...s}=e,[i,o]=dr({prop:t,onChange:a,defaultProp:r??!1,caller:Es});return u.jsx(Yn.button,{type:"button","aria-pressed":i,"data-state":i?"on":"off","data-disabled":e.disabled?"":void 0,...s,ref:n,onClick:Qi(e.onClick,()=>{e.disabled||o(!i)})})});Ns.displayName=Es;var qe="ToggleGroup",[ks]=Ji(qe,[ws]),As=ws(),vr=Oe.forwardRef((e,n)=>{const{type:t,...r}=e;if(t==="single"){const a=r;return u.jsx(el,{...a,ref:n})}if(t==="multiple"){const a=r;return u.jsx(tl,{...a,ref:n})}throw new Error(`Missing prop \`type\` expected on \`${qe}\``)});vr.displayName=qe;var[Cs,Ts]=ks(qe),el=Oe.forwardRef((e,n)=>{const{value:t,defaultValue:r,onValueChange:a=()=>{},...s}=e,[i,o]=dr({prop:t,defaultProp:r??"",onChange:a,caller:qe});return u.jsx(Cs,{scope:e.__scopeToggleGroup,type:"single",value:Oe.useMemo(()=>i?[i]:[],[i]),onItemActivate:o,onItemDeactivate:Oe.useCallback(()=>o(""),[o]),children:u.jsx(Is,{...s,ref:n})})}),tl=Oe.forwardRef((e,n)=>{const{value:t,defaultValue:r,onValueChange:a=()=>{},...s}=e,[i,o]=dr({prop:t,defaultProp:r??[],onChange:a,caller:qe}),l=Oe.useCallback(d=>o((f=[])=>[...f,d]),[o]),c=Oe.useCallback(d=>o((f=[])=>f.filter(p=>p!==d)),[o]);return u.jsx(Cs,{scope:e.__scopeToggleGroup,type:"multiple",value:i,onItemActivate:l,onItemDeactivate:c,children:u.jsx(Is,{...s,ref:n})})});vr.displayName=qe;var[nl,rl]=ks(qe),Is=Oe.forwardRef((e,n)=>{const{__scopeToggleGroup:t,disabled:r=!1,rovingFocus:a=!0,orientation:s,dir:i,loop:o=!0,...l}=e,c=As(t),d=to(i),f={role:"group",dir:d,...l};return u.jsx(nl,{scope:t,rovingFocus:a,disabled:r,children:a?u.jsx(no,{asChild:!0,...c,orientation:s,dir:d,loop:o,children:u.jsx(Yn.div,{...f,ref:n})}):u.jsx(Yn.div,{...f,ref:n})})}),dn="ToggleGroupItem",_s=Oe.forwardRef((e,n)=>{const t=Ts(dn,e.__scopeToggleGroup),r=rl(dn,e.__scopeToggleGroup),a=As(e.__scopeToggleGroup),s=t.value.includes(e.value),i=r.disabled||e.disabled,o={...e,pressed:s,disabled:i},l=Oe.useRef(null);return r.rovingFocus?u.jsx(eo,{asChild:!0,...a,focusable:!i,active:s,ref:l,children:u.jsx(va,{...o,ref:n})}):u.jsx(va,{...o,ref:n})});_s.displayName=dn;var va=Oe.forwardRef((e,n)=>{const{__scopeToggleGroup:t,value:r,...a}=e,s=Ts(dn,t),i={role:"radio","aria-checked":e.pressed,"aria-pressed":void 0},o=s.type==="single"?i:void 0;return u.jsx(Ns,{...o,...a,ref:n,onPressedChange:l=>{l?s.onItemActivate(r):s.onItemDeactivate(r)}})}),js=vr,Rs=_s;const Os=S.createContext({size:"default",variant:"default"}),wr=S.forwardRef(({className:e,variant:n,size:t,children:r,...a},s)=>u.jsx(js,{ref:s,className:V("flex items-center justify-center gap-1",e),...a,children:u.jsx(Os.Provider,{value:{variant:n,size:t},children:r})}));wr.displayName=js.displayName;const al={default:"bg-transparent data-[state=on]:bg-selected data-[state=on]:text-selected-foreground",outline:"border border-input bg-transparent hover:bg-accent hover:text-accent-foreground data-[state=on]:bg-selected data-[state=on]:text-selected-foreground"},sl={default:"h-9 px-3",sm:"h-8 px-2",lg:"h-10 px-4"},xr=S.forwardRef(({className:e,children:n,variant:t,size:r,...a},s)=>{const i=S.useContext(Os);return u.jsx(Rs,{ref:s,className:V("inline-flex items-center justify-center rounded-md text-sm font-medium ring-offset-background transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",al[t??i.variant??"default"],sl[r??i.size??"default"],e),...a,children:n})});xr.displayName=Rs.displayName;function ne(e,n="Assertion error"){if(!e)throw Error(n)}function yt({group:e}){const{orientation:n,panels:t}=e;return t.reduce((r,a)=>(r+=n==="horizontal"?a.element.offsetWidth:a.element.offsetHeight,r),0)}function Xn(e,n){return n.sort(e==="horizontal"?il:ol)}function il(e,n){const t=e.element.offsetLeft-n.element.offsetLeft;return t!==0?t:e.element.offsetWidth-n.element.offsetWidth}function ol(e,n){const t=e.element.offsetTop-n.element.offsetTop;return t!==0?t:e.element.offsetHeight-n.element.offsetHeight}function Ls(e){return e!==null&&typeof e=="object"&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function Ds(e,n){return{x:e.x>=n.left&&e.x<=n.right?0:Math.min(Math.abs(e.x-n.left),Math.abs(e.x-n.right)),y:e.y>=n.top&&e.y<=n.bottom?0:Math.min(Math.abs(e.y-n.top),Math.abs(e.y-n.bottom))}}function ll({orientation:e,rects:n,targetRect:t}){const r={x:t.x+t.width/2,y:t.y+t.height/2};let a,s=Number.MAX_VALUE;for(const i of n){const{x:o,y:l}=Ds(r,i),c=e==="horizontal"?o:l;c<s&&(s=c,a=i)}return ne(a,"No rect found"),a}function Ms(e){const{element:n,orientation:t,panels:r,separators:a}=e,s=Xn(t,Array.from(n.children).filter(Ls).map(d=>({element:d}))).map(({element:d})=>d),i=[];let o=!1,l,c=[];for(const d of s)if(d.hasAttribute("data-panel")){const f=r.find(p=>p.element===d);if(f){if(l){const p=l.element.getBoundingClientRect(),g=d.getBoundingClientRect();let h;if(o){const m=t==="horizontal"?new DOMRect(p.right,p.top,0,p.height):new DOMRect(p.left,p.bottom,p.width,0),b=t==="horizontal"?new DOMRect(g.left,g.top,0,g.height):new DOMRect(g.left,g.top,g.width,0);switch(c.length){case 0:{h=[m,b];break}case 1:{const y=c[0],w=ll({orientation:t,rects:[p,g],targetRect:y.element.getBoundingClientRect()});h=[y,w===p?b:m];break}default:{h=c;break}}}else c.length?h=c:h=[t==="horizontal"?new DOMRect(p.right,g.top,g.left-p.right,g.height):new DOMRect(g.left,p.bottom,g.width,g.top-p.bottom)];for(const m of h)i.push({group:e,groupSize:yt({group:e}),panels:[l,f],separator:"width"in m?void 0:m,rect:"width"in m?m:m.element.getBoundingClientRect()})}o=!1,l=f,c=[]}}else if(d.hasAttribute("data-separator")){const f=a.find(p=>p.element===d);f?c.push(f):(l=void 0,c=[])}else o=!0;return i}function ul(e,n){const t=getComputedStyle(e),r=parseFloat(t.fontSize);return n*r}function cl(e,n){const t=getComputedStyle(e.ownerDocument.body),r=parseFloat(t.fontSize);return n*r}function dl(e){return e/100*window.innerHeight}function fl(e){return e/100*window.innerWidth}function pl(e){switch(typeof e){case"number":return[e,"px"];case"string":{const n=parseFloat(e);return e.endsWith("%")?[n,"%"]:e.endsWith("px")?[n,"px"]:e.endsWith("rem")?[n,"rem"]:e.endsWith("em")?[n,"em"]:e.endsWith("vh")?[n,"vh"]:e.endsWith("vw")?[n,"vw"]:[n,"%"]}}}function Wt({groupSize:e,panelElement:n,styleProp:t}){let r;const[a,s]=pl(t);switch(s){case"%":{r=a/100*e;break}case"px":{r=a;break}case"rem":{r=cl(n,a);break}case"em":{r=ul(n,a);break}case"vh":{r=dl(a);break}case"vw":{r=fl(a);break}}return r}function Re(e){return parseFloat(e.toFixed(3))}function wa(e){const{panels:n}=e,t=yt({group:e});return t===0?n.map(r=>({collapsedSize:0,collapsible:r.panelConstraints.collapsible===!0,defaultSize:void 0,minSize:0,maxSize:100,panelId:r.id})):n.map(r=>{const{element:a,panelConstraints:s}=r;let i=0;if(s.collapsedSize){const d=Wt({groupSize:t,panelElement:a,styleProp:s.collapsedSize});i=Re(d/t*100)}let o;if(s.defaultSize){const d=Wt({groupSize:t,panelElement:a,styleProp:s.defaultSize});o=Re(d/t*100)}let l=0;if(s.minSize){const d=Wt({groupSize:t,panelElement:a,styleProp:s.minSize});l=Re(d/t*100)}let c=100;if(s.maxSize){const d=Wt({groupSize:t,panelElement:a,styleProp:s.maxSize});c=Re(d/t*100)}return{collapsedSize:i,collapsible:s.collapsible===!0,defaultSize:o,minSize:l,maxSize:c,panelId:r.id}})}var Ke;class gl{constructor(){ha(this,Ke,{})}addListener(n,t){const r=Ct(this,Ke)[n];return r===void 0?Ct(this,Ke)[n]=[t]:r.includes(t)||r.push(t),()=>{this.removeListener(n,t)}}emit(n,t){const r=Ct(this,Ke)[n];if(r!==void 0)if(r.length===1)r[0].call(null,t);else{let a=!1,s=null;const i=Array.from(r);for(let o=0;o<i.length;o++){const l=i[o];try{l.call(null,t)}catch(c){s===null&&(a=!0,s=c)}}if(a)throw s}}removeAllListeners(){ma(this,Ke,{})}removeListener(n,t){const r=Ct(this,Ke)[n];if(r!==void 0){const a=r.indexOf(t);a>=0&&r.splice(a,1)}}}Ke=new WeakMap;function me(e,n,t=0){return Math.abs(Re(e)-Re(n))<=t}let Ce={cursorFlags:0,interactionState:{state:"inactive"},mountedGroups:new Map};const tt=new gl;function _e(){return Ce}function ye(e){const n=typeof e=="function"?e(Ce):e;if(Ce===n)return Ce;const t=Ce;return Ce={...Ce,...n},n.cursorFlags!==void 0&&tt.emit("cursorFlagsChange",Ce.cursorFlags),n.interactionState!==void 0&&tt.emit("interactionStateChange",Ce.interactionState),n.mountedGroups!==void 0&&(Ce.mountedGroups.forEach((r,a)=>{r.derivedPanelConstraints.forEach(s=>{if(s.collapsible){const{layout:i}=t.mountedGroups.get(a)??{};if(i){const o=me(s.collapsedSize,r.layout[s.panelId]),l=me(s.collapsedSize,i[s.panelId]);o&&!l&&(a.inMemoryLastExpandedPanelSizes[s.panelId]=i[s.panelId])}}})}),tt.emit("mountedGroupsChange",Ce.mountedGroups)),Ce}function hl(e,n){if(e.length!==n.length)return!1;for(let t=0;t<e.length;t++)if(e[t]!=n[t])return!1;return!0}function Ot(e,n){return me(e,n)?0:e>n?1:-1}function gt({panelConstraints:e,size:n}){const{collapsedSize:t=0,collapsible:r,maxSize:a=100,minSize:s=0}=e;if(Ot(n,s)<0)if(r){const i=(t+s)/2;Ot(n,i)<0?n=t:n=s}else n=s;return n=Math.min(a,n),n=Re(n),n}function Lt({delta:e,initialLayout:n,panelConstraints:t,pivotIndices:r,prevLayout:a,trigger:s}){if(me(e,0))return n;const i=Object.values(n),o=Object.values(a),l=[...i],[c,d]=r;ne(c!=null,"Invalid first pivot index"),ne(d!=null,"Invalid second pivot index");let f=0;if(s==="keyboard"){{const h=e<0?d:c,m=t[h];ne(m,`Panel constraints not found for index ${h}`);const{collapsedSize:b=0,collapsible:y,minSize:w=0}=m;if(y){const x=i[h];if(ne(x!=null,`Previous layout not found for panel index ${h}`),me(x,b)){const v=w-x;Ot(v,Math.abs(e))>0&&(e=e<0?0-v:v)}}}{const h=e<0?c:d,m=t[h];ne(m,`No panel constraints found for index ${h}`);const{collapsedSize:b=0,collapsible:y,minSize:w=0}=m;if(y){const x=i[h];if(ne(x!=null,`Previous layout not found for panel index ${h}`),me(x,w)){const v=x-b;Ot(v,Math.abs(e))>0&&(e=e<0?0-v:v)}}}}{const h=e<0?1:-1;let m=e<0?d:c,b=0;for(;;){const w=i[m];ne(w!=null,`Previous layout not found for panel index ${m}`);const x=gt({panelConstraints:t[m],size:100})-w;if(b+=x,m+=h,m<0||m>=t.length)break}const y=Math.min(Math.abs(e),Math.abs(b));e=e<0?0-y:y}{let h=e<0?c:d;for(;h>=0&&h<t.length;){const m=Math.abs(e)-Math.abs(f),b=i[h];ne(b!=null,`Previous layout not found for panel index ${h}`);const y=b-m,w=gt({panelConstraints:t[h],size:y});if(!me(b,w)&&(f+=b-w,l[h]=w,f.toFixed(3).localeCompare(Math.abs(e).toFixed(3),void 0,{numeric:!0})>=0))break;e<0?h--:h++}}if(hl(o,l))return a;{const h=e<0?d:c,m=i[h];ne(m!=null,`Previous layout not found for panel index ${h}`);const b=m+f,y=gt({panelConstraints:t[h],size:b});if(l[h]=y,!me(y,b)){let w=b-y,x=e<0?d:c;for(;x>=0&&x<t.length;){const v=l[x];ne(v!=null,`Previous layout not found for panel index ${x}`);const N=v+w,E=gt({panelConstraints:t[x],size:N});if(me(v,E)||(w-=E-v,l[x]=E),me(w,0))break;e>0?x--:x++}}}const p=Object.values(l).reduce((h,m)=>m+h,0);if(!me(p,100,.1))return a;const g=Object.keys(a);return l.reduce((h,m,b)=>(h[g[b]]=m,h),{})}function en(e){const{mountedGroups:n}=_e();for(const[t]of n)if(t.separators.some(r=>r.element===e))return t;throw Error("Could not find parent Group for separator element")}function nt(e,n){if(Object.keys(e).length!==Object.keys(n).length)return!1;for(const t in e)if(n[t]===void 0||Ot(e[t],n[t])!==0)return!1;return!0}function rt({layout:e,panelConstraints:n}){const t=[...Object.values(e)],r=t.reduce((i,o)=>i+o,0);if(t.length!==n.length)throw Error(`Invalid ${n.length} panel layout: ${t.map(i=>`${i}%`).join(", ")}`);if(!me(r,100)&&t.length>0)for(let i=0;i<n.length;i++){const o=t[i];ne(o!=null,`No layout data found for index ${i}`);const l=100/r*o;t[i]=l}let a=0;for(let i=0;i<n.length;i++){const o=t[i];ne(o!=null,`No layout data found for index ${i}`);const l=gt({panelConstraints:n[i],size:o});o!=l&&(a+=o-l,t[i]=l)}if(!me(a,0))for(let i=0;i<n.length;i++){const o=t[i];ne(o!=null,`No layout data found for index ${i}`);const l=o+a,c=gt({panelConstraints:n[i],size:l});if(o!==c&&(a-=c-o,t[i]=c,me(a,0)))break}const s=Object.keys(e);return t.reduce((i,o,l)=>(i[s[l]]=o,i),{})}function $s({groupId:e}){const n=()=>{const{mountedGroups:t}=_e();for(const[r,a]of t)if(r.id===e)return{group:r,...a};throw Error(`Could not find Group with id "${e}"`)};return{getLayout(){const{defaultLayoutDeferred:t,layout:r}=n();return t?{}:r},setLayout(t){const{defaultLayoutDeferred:r,derivedPanelConstraints:a,group:s,layout:i,separatorToPanels:o}=n(),l=rt({layout:t,panelConstraints:a});return r?i:(nt(i,l)||ye(c=>({mountedGroups:new Map(c.mountedGroups).set(s,{defaultLayoutDeferred:r,derivedPanelConstraints:a,layout:l,separatorToPanels:o})})),l)}}}function Fs(e){const{mountedGroups:n}=_e(),t=n.get(e);return ne(t,`Mounted Group ${e.id} not found`),t}function Je(e,n){const t=en(e),r=Fs(t),a=t.separators.find(d=>d.element===e);ne(a,"Matching separator not found");const s=r.separatorToPanels.get(a);ne(s,"Matching panels not found");const i=s.map(d=>t.panels.indexOf(d)),o=$s({groupId:t.id}).getLayout(),l=Lt({delta:n,initialLayout:o,panelConstraints:r.derivedPanelConstraints,pivotIndices:i,prevLayout:o,trigger:"keyboard"}),c=rt({layout:l,panelConstraints:r.derivedPanelConstraints});nt(o,c)||ye(d=>({mountedGroups:new Map(d.mountedGroups).set(t,{defaultLayoutDeferred:r.defaultLayoutDeferred,derivedPanelConstraints:r.derivedPanelConstraints,layout:c,separatorToPanels:r.separatorToPanels})}))}function xa(e){if(e.defaultPrevented)return;const n=e.currentTarget,t=en(n);if(!t.disabled)switch(e.key){case"ArrowDown":{e.preventDefault(),t.orientation==="vertical"&&Je(n,5);break}case"ArrowLeft":{e.preventDefault(),t.orientation==="horizontal"&&Je(n,-5);break}case"ArrowRight":{e.preventDefault(),t.orientation==="horizontal"&&Je(n,5);break}case"ArrowUp":{e.preventDefault(),t.orientation==="vertical"&&Je(n,-5);break}case"End":{e.preventDefault(),Je(n,100);break}case"Enter":{e.preventDefault();const r=en(n),{derivedPanelConstraints:a,layout:s,separatorToPanels:i}=Fs(r),o=r.separators.find(f=>f.element===n);ne(o,"Matching separator not found");const l=i.get(o);ne(l,"Matching panels not found");const c=l[0],d=a.find(f=>f.panelId===c.id);if(ne(d,"Panel metadata not found"),d.collapsible){const f=s[c.id],p=d.collapsedSize===f?r.inMemoryLastExpandedPanelSizes[c.id]??d.minSize:d.collapsedSize;Je(n,p-f)}break}case"F6":{e.preventDefault();const r=en(n).separators.map(i=>i.element),a=Array.from(r).findIndex(i=>i===e.currentTarget);ne(a!==null,"Index not found");const s=e.shiftKey?a>0?a-1:r.length-1:a+1<r.length?a+1:0;r[s].focus();break}case"Home":{e.preventDefault(),Je(n,-100);break}}}const ml=e=>e,Bn=()=>{},Ps=1,zs=2,Bs=4,Gs=8,Sa={coarse:10,precise:5};function bl(e,n,t){let r,a={x:1/0,y:1/0};for(const s of n){const i=Ds(t,s.rect);switch(e){case"horizontal":{i.x<=a.x&&(r=s,a=i);break}case"vertical":{i.y<=a.y&&(r=s,a=i);break}}}return r?{distance:a,hitRegion:r}:void 0}let Vt;function yl(){return Vt===void 0&&(typeof matchMedia=="function"?Vt=!!matchMedia("(pointer:coarse)").matches:Vt=!1),Vt}function vl(e){return e!==null&&typeof e=="object"&&"nodeType"in e&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE}function wl(e,n){if(e===n)throw new Error("Cannot compare node with itself");const t={a:ka(e),b:ka(n)};let r;for(;t.a.at(-1)===t.b.at(-1);)e=t.a.pop(),n=t.b.pop(),r=e;ne(r,"Stacking order can only be calculated for elements with a common ancestor");const a={a:Na(Ea(t.a)),b:Na(Ea(t.b))};if(a.a===a.b){const s=r.childNodes,i={a:t.a.at(-1),b:t.b.at(-1)};let o=s.length;for(;o--;){const l=s[o];if(l===i.a)return 1;if(l===i.b)return-1}}return Math.sign(a.a-a.b)}const xl=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function Sl(e){const n=getComputedStyle(Us(e)??e).display;return n==="flex"||n==="inline-flex"}function El(e){const n=getComputedStyle(e);return!!(n.position==="fixed"||n.zIndex!=="auto"&&(n.position!=="static"||Sl(e))||+n.opacity<1||"transform"in n&&n.transform!=="none"||"webkitTransform"in n&&n.webkitTransform!=="none"||"mixBlendMode"in n&&n.mixBlendMode!=="normal"||"filter"in n&&n.filter!=="none"||"webkitFilter"in n&&n.webkitFilter!=="none"||"isolation"in n&&n.isolation==="isolate"||xl.test(n.willChange)||n.webkitOverflowScrolling==="touch")}function Ea(e){let n=e.length;for(;n--;){const t=e[n];if(ne(t,"Missing node"),El(t))return t}return null}function Na(e){return e&&Number(getComputedStyle(e).zIndex)||0}function ka(e){const n=[];for(;e;)n.push(e),e=Us(e);return n}function Us(e){const{parentNode:n}=e;return vl(n)?n.host:n}function Nl(e,n){return e.x<n.x+n.width&&e.x+e.width>n.x&&e.y<n.y+n.height&&e.y+e.height>n.y}function kl({groupElement:e,hitRegion:n,pointerEventTarget:t}){if(!Ls(t)||t.contains(e)||e.contains(t))return!0;if(wl(t,e)>0){let r=t;for(;r;){if(r.contains(e))return!0;if(Nl(r.getBoundingClientRect(),n))return!1;r=r.parentElement}}return!0}function Hs(e,n){const t=[];return n.forEach((r,a)=>{if(a.disabled)return;const s=yl()?Sa.coarse:Sa.precise,i=Ms(a),o=bl(a.orientation,i,{x:e.clientX,y:e.clientY});o&&o.distance.x<=s&&o.distance.y<=s&&kl({groupElement:a.element,hitRegion:o.hitRegion.rect,pointerEventTarget:e.target})&&t.push(o.hitRegion)}),t}function Aa(e){if(e.defaultPrevented||e.pointerType==="mouse"&&e.button>0)return;const{mountedGroups:n}=_e(),t=Hs(e,n),r=new Set,a=new Set,s=new Set,i=new Map;let o=!1;t.forEach(l=>{r.add(l.group),l.panels.forEach(d=>{a.add(d)}),l.separator&&(s.add(l.separator),o||(o=!0,l.separator.element.focus()));const c=n.get(l.group);c&&i.set(l.group,c.layout)}),ye({interactionState:{hitRegions:t,initialLayoutMap:i,pointerDownAtPoint:{x:e.clientX,y:e.clientY},state:"active"}}),t.length&&e.preventDefault()}function Al({cursorFlags:e,groups:n,state:t}){let r=0,a=0;switch(t){case"active":case"hover":n.forEach(s=>{if(!s.disableCursor)switch(s.orientation){case"horizontal":{r++;break}case"vertical":{a++;break}}})}if(r===0&&a===0)return null;switch(t){case"active":{const s=(e&Ps)!==0,i=(e&zs)!==0,o=(e&Bs)!==0,l=(e&Gs)!==0;if(e){if(s)return o?"se-resize":l?"ne-resize":"e-resize";if(i)return o?"sw-resize":l?"nw-resize":"w-resize";if(o)return"s-resize";if(l)return"n-resize"}break}}return r>0&&a>0?"move":r>0?"ew-resize":"ns-resize"}const Ca=new WeakMap;function Sr(e){if(e.defaultView===null||e.defaultView===void 0)return;let{prevStyle:n,styleSheet:t}=Ca.get(e)??{};t===void 0&&(t=new e.defaultView.CSSStyleSheet,e.adoptedStyleSheets=[t]);const{cursorFlags:r,interactionState:a}=_e();switch(a.state){case"active":case"hover":{const s=Al({cursorFlags:r,groups:a.hitRegions.map(o=>o.group),state:a.state}),i=`*{cursor: ${s} !important; ${a.state==="active"?"touch-action: none;":""} }`;if(n===i)return;n=i,s?t.cssRules.length===0?t.insertRule(i):t.replaceSync(i):t.cssRules.length===1&&t.deleteRule(0);break}case"inactive":{n=void 0,t.cssRules.length===1&&t.deleteRule(0);break}}Ca.set(e,{prevStyle:n,styleSheet:t})}function Ks({document:e,event:n,hitRegions:t,initialLayoutMap:r,mountedGroups:a,pointerDownAtPoint:s}){let i=0;const o=new Map(a);t.forEach(l=>{const{group:c,groupSize:d}=l,{disableCursor:f,orientation:p,panels:g}=c;let h=0;s?p==="horizontal"?h=(n.clientX-s.x)/d*100:h=(n.clientY-s.y)/d*100:p==="horizontal"?h=n.clientX<0?-100:100:h=n.clientY<0?-100:100;const m=r.get(c),{defaultLayoutDeferred:b,derivedPanelConstraints:y,layout:w,separatorToPanels:x}=a.get(c)??{defaultLayoutDeferred:!1};if(y&&m&&w&&x){const v=Lt({delta:h,initialLayout:m,panelConstraints:y,pivotIndices:l.panels.map(N=>g.indexOf(N)),prevLayout:w,trigger:"mouse-or-touch"});if(nt(v,w)){if(h!==0&&!f)switch(p){case"horizontal":{i|=h<0?Ps:zs;break}case"vertical":{i|=h<0?Bs:Gs;break}}}else{o.set(l.group,{defaultLayoutDeferred:b,derivedPanelConstraints:y,layout:v,separatorToPanels:x});const N=l.group.panels.map(({id:E})=>E).join(",");l.group.inMemoryLayouts[N]=v}}}),ye({cursorFlags:i,mountedGroups:o}),Sr(e)}function Ta(e){const{interactionState:n,mountedGroups:t}=_e();switch(n.state){case"active":Ks({document:e.currentTarget,event:e,hitRegions:n.hitRegions,initialLayoutMap:n.initialLayoutMap,mountedGroups:t})}}function Ia(e){if(e.defaultPrevented)return;const{interactionState:n,mountedGroups:t}=_e();switch(n.state){case"active":{if(e.buttons===0){ye(r=>r.interactionState.state==="inactive"?r:{cursorFlags:0,interactionState:{state:"inactive"}}),ye(r=>({mountedGroups:new Map(r.mountedGroups)}));return}Ks({document:e.currentTarget,event:e,hitRegions:n.hitRegions,initialLayoutMap:n.initialLayoutMap,mountedGroups:t,pointerDownAtPoint:n.pointerDownAtPoint});break}default:{const r=Hs(e,t);r.length===0?n.state!=="inactive"&&ye({interactionState:{state:"inactive"}}):ye({interactionState:{hitRegions:r,state:"hover"}}),Sr(e.currentTarget);break}}}function _a(e){if(e.defaultPrevented||e.pointerType==="mouse"&&e.button>0)return;const{interactionState:n}=_e();switch(n.state){case"active":ye({cursorFlags:0,interactionState:{state:"inactive"}}),n.hitRegions.length>0&&(Sr(e.currentTarget),ye(t=>({mountedGroups:new Map(t.mountedGroups)})),e.preventDefault())}}function ja(e){let n=0,t=0;const r={};for(const s of e)if(s.defaultSize!==void 0){n++;const i=Re(s.defaultSize);t+=i,r[s.panelId]=i}else r[s.panelId]=void 0;const a=e.length-n;if(a!==0){const s=Re((100-t)/a);for(const i of e)i.defaultSize===void 0&&(r[i.panelId]=s)}return r}function Cl(e,n,t){if(!t[0])return;const r=e.panels.find(l=>l.element===n);if(!r||!r.onResize)return;const a=yt({group:e}),s=e.orientation==="horizontal"?r.element.offsetWidth:r.element.offsetHeight,i=r.mutableValues.prevSize,o={asPercentage:Re(s/a*100),inPixels:s};r.mutableValues.prevSize=o,r.onResize(o,r.id,i)}function Tl(e,n){if(Object.keys(e).length!==Object.keys(n).length)return!1;for(const t in e)if(e[t]!==n[t])return!1;return!0}function Il(e,n){const t=e.map(a=>a.id),r=Object.keys(n);if(t.length!==r.length)return!1;for(const a of t)if(!r.includes(a))return!1;return!0}const ut=new Map;function _l(e){let n=!0;ne(e.element.ownerDocument.defaultView,"Cannot register an unmounted Group");const t=e.element.ownerDocument.defaultView.ResizeObserver,r=new Set,a=new Set,s=new t(h=>{for(const m of h){const{borderBoxSize:b,target:y}=m;if(y===e.element){if(n){if(yt({group:e})===0)return;ye(w=>{const x=w.mountedGroups.get(e);if(x){const v=wa(e),N=x.defaultLayoutDeferred?ja(v):x.layout,E=rt({layout:N,panelConstraints:v});return!x.defaultLayoutDeferred&&nt(N,E)&&Tl(x.derivedPanelConstraints,v)?w:{mountedGroups:new Map(w.mountedGroups).set(e,{defaultLayoutDeferred:!1,derivedPanelConstraints:v,layout:E,separatorToPanels:x.separatorToPanels})}}return w})}}else Cl(e,y,b)}});s.observe(e.element),e.panels.forEach(h=>{ne(!r.has(h.id),`Panel ids must be unique; id "${h.id}" was used more than once`),r.add(h.id),h.onResize&&s.observe(h.element)});const i=yt({group:e}),o=wa(e),l=e.panels.map(({id:h})=>h).join(",");let c=e.defaultLayout;c&&(Il(e.panels,c)||(c=void 0));const d=e.inMemoryLayouts[l]??c??ja(o),f=rt({layout:d,panelConstraints:o}),p=Ms(e),g=e.element.ownerDocument;return ye(h=>{const m=new Map;return ut.set(g,(ut.get(g)??0)+1),p.forEach(b=>{b.separator&&m.set(b.separator,b.panels)}),{mountedGroups:new Map(h.mountedGroups).set(e,{defaultLayoutDeferred:i===0,derivedPanelConstraints:o,layout:f,separatorToPanels:m})}}),e.separators.forEach(h=>{ne(!a.has(h.id),`Separator ids must be unique; id "${h.id}" was used more than once`),a.add(h.id),h.element.addEventListener("keydown",xa)}),ut.get(g)===1&&(g.addEventListener("pointerdown",Aa,!0),g.addEventListener("pointerleave",Ta),g.addEventListener("pointermove",Ia),g.addEventListener("pointerup",_a,!0)),function(){n=!1,ut.set(g,Math.max(0,(ut.get(g)??0)-1)),ye(h=>{const m=new Map(h.mountedGroups);return m.delete(e),{mountedGroups:m}}),e.separators.forEach(h=>{h.element.removeEventListener("keydown",xa)}),ut.get(g)||(g.removeEventListener("pointerdown",Aa,!0),g.removeEventListener("pointerleave",Ta),g.removeEventListener("pointermove",Ia),g.removeEventListener("pointerup",_a,!0)),s.disconnect()}}function Ws(){const[e,n]=S.useState({}),t=S.useCallback(()=>n({}),[]);return[e,t]}function Er(e){const n=S.useId();return`${e??n}`}const at=typeof window<"u"?S.useLayoutEffect:S.useEffect;function _t(e){const n=S.useRef(e);return at(()=>{n.current=e},[e]),S.useCallback((...t)=>{var r;return(r=n.current)==null?void 0:r.call(n,...t)},[n])}function Nr(...e){return _t(n=>{e.forEach(t=>{if(t)switch(typeof t){case"function":{t(n);break}case"object":{t.current=n;break}}})})}function jl(e){const n=S.useRef({...e});return at(()=>{for(const t in e)n.current[t]=e[t]},[e]),n.current}const Vs=S.createContext(null);function Rl(e,n){const t=S.useRef({getLayout:()=>({}),setLayout:ml});S.useImperativeHandle(n,()=>t.current,[]),at(()=>{Object.assign(t.current,$s({groupId:e}))})}function Ys({children:e,className:n,defaultLayout:t,disableCursor:r,disabled:a,elementRef:s,groupRef:i,id:o,onLayoutChange:l,onLayoutChanged:c,orientation:d="horizontal",style:f,...p}){const g=S.useRef({onLayoutChange:{},onLayoutChanged:{}}),h=_t(I=>{nt(g.current.onLayoutChange,I)||(g.current.onLayoutChange=I,l==null||l(I))}),m=_t(I=>{nt(g.current.onLayoutChanged,I)||(g.current.onLayoutChanged=I,c==null||c(I))}),b=Er(o),y=S.useRef(null),[w,x]=Ws(),v=S.useRef({lastExpandedPanelSizes:{},layouts:{},panels:[],separators:[]}),N=Nr(y,s);Rl(b,i);const E=_t((I,j)=>{const{interactionState:D,mountedGroups:R}=_e();for(const M of R.keys())if(M.id===I){const H=R.get(M);if(H){let W=!1;switch(D.state){case"active":{W=D.hitRegions.some(X=>X.group===M);break}}return{flexGrow:H.layout[j]??1,pointerEvents:W?"none":void 0}}}return{flexGrow:(t==null?void 0:t[j])??1}}),C=S.useMemo(()=>({getPanelStyles:E,id:b,orientation:d,registerPanel:I=>{const j=v.current;return j.panels=Xn(d,[...j.panels,I]),x(),()=>{j.panels=j.panels.filter(D=>D!==I),x()}},registerSeparator:I=>{const j=v.current;return j.separators=Xn(d,[...j.separators,I]),x(),()=>{j.separators=j.separators.filter(D=>D!==I),x()}}}),[E,b,x,d]),A=jl({defaultLayout:t,disableCursor:r}),O=S.useRef(null);return at(()=>{const I=y.current;if(I===null)return;const j=v.current,D={defaultLayout:A.defaultLayout,disableCursor:!!A.disableCursor,disabled:!!a,element:I,id:b,inMemoryLastExpandedPanelSizes:v.current.lastExpandedPanelSizes,inMemoryLayouts:v.current.layouts,orientation:d,panels:j.panels,separators:j.separators};O.current=D;const R=_l(D),M=_e().mountedGroups.get(D);if(M){const{defaultLayoutDeferred:X,derivedPanelConstraints:k,layout:U}=M;!X&&k.length>0&&(h(U),m(U),j.panels.forEach(P=>{P.scheduleUpdate()}))}const H=tt.addListener("interactionStateChange",()=>{j.panels.forEach(X=>{X.scheduleUpdate()})}),W=tt.addListener("mountedGroupsChange",X=>{const k=X.get(D);if(k){const{defaultLayoutDeferred:U,derivedPanelConstraints:P,layout:T}=k;if(U||P.length===0)return;const{interactionState:G}=_e(),oe=G.state!=="active";h(T),oe&&m(T),j.panels.forEach(Q=>{Q.scheduleUpdate()})}});return()=>{O.current=null,R(),H(),W()}},[a,b,m,h,d,w,A]),S.useEffect(()=>{const I=O.current;I&&(I.defaultLayout=t,I.disableCursor=!!r)}),u.jsx(Vs.Provider,{value:C,children:u.jsx("div",{...p,"aria-orientation":d,className:n,"data-group":!0,"data-testid":b,id:b,ref:N,style:{height:"100%",width:"100%",overflow:"hidden",...f,display:"flex",flexDirection:d==="horizontal"?"row":"column",flexWrap:"nowrap"},children:e})})}Ys.displayName="Group";function Gn(e,n){return`react-resizable-panels:${[e,...n].join(":")}`}function hp({debounceSaveMs:e=100,panelIds:n,storage:t=localStorage,...r}){const a=n!==void 0,s="id"in r?r.id:r.groupId,i=Gn(s,n??[]),o=S.useSyncExternalStore(Ol,()=>t.getItem(i),()=>t.getItem(i)),l=S.useMemo(()=>o?JSON.parse(o):void 0,[o]),c=S.useRef(null),d=S.useCallback(()=>{const g=c.current;g&&(c.current=null,clearTimeout(g))},[]);S.useLayoutEffect(()=>()=>{d()},[d]);const f=S.useCallback(g=>{d();let h;a?h=Gn(s,Object.keys(g)):h=Gn(s,[]);try{t.setItem(h,JSON.stringify(g))}catch(m){console.error(m)}},[d,a,s,t]),p=S.useCallback(g=>{d(),e===0?f(g):c.current=setTimeout(()=>{f(g)},e)},[d,e,f]);return{defaultLayout:l,onLayoutChange:p,onLayoutChanged:f}}function Ol(){return function(){}}function kr(){const e=S.useContext(Vs);return ne(e,"Group Context not found; did you render a Panel or Separator outside of a Group?"),e}function Ll({groupId:e,panelId:n}){const t=()=>{const{mountedGroups:o}=_e();for(const[l,{defaultLayoutDeferred:c,derivedPanelConstraints:d,layout:f,separatorToPanels:p}]of o)if(l.id===e)return{defaultLayoutDeferred:c,derivedPanelConstraints:d,group:l,layout:f,separatorToPanels:p};throw Error(`Group ${e} not found`)},r=()=>{const o=t().derivedPanelConstraints.find(l=>l.panelId===n);if(o!==void 0)return o;throw Error(`Panel constraints not found for Panel ${n}`)},a=()=>{const o=t().group.panels.find(l=>l.id===n);if(o!==void 0)return o;throw Error(`Layout not found for Panel ${n}`)},s=()=>{const o=t().layout[n];if(o!==void 0)return o;throw Error(`Layout not found for Panel ${n}`)},i=o=>{const l=s();if(o===l)return;const{defaultLayoutDeferred:c,derivedPanelConstraints:d,group:f,layout:p,separatorToPanels:g}=t(),h=f.panels.findIndex(w=>w.id===n),m=h===f.panels.length-1,b=Lt({delta:m?l-o:o-l,initialLayout:p,panelConstraints:d,pivotIndices:m?[h-1,h]:[h,h+1],prevLayout:p,trigger:"imperative-api"}),y=rt({layout:b,panelConstraints:d});nt(p,y)||ye(w=>({mountedGroups:new Map(w.mountedGroups).set(f,{defaultLayoutDeferred:c,derivedPanelConstraints:d,layout:y,separatorToPanels:g})}))};return{collapse:()=>{const{collapsible:o,collapsedSize:l}=r(),{mutableValues:c}=a(),d=s();o&&d!==l&&(c.expandToSize=d,i(l))},expand:()=>{const{collapsible:o,collapsedSize:l,minSize:c}=r(),{mutableValues:d}=a(),f=s();if(o&&f===l){let p=d.expandToSize??c;p===0&&(p=1),i(p)}},getSize:()=>{const{group:o}=t(),l=s(),{element:c}=a(),d=o.orientation==="horizontal"?c.offsetWidth:c.offsetHeight;return{asPercentage:l,inPixels:d}},isCollapsed:()=>{const{collapsible:o,collapsedSize:l}=r(),c=s();return o&&me(l,c)},resize:o=>{if(s()!==o){let l;switch(typeof o){case"number":{const{group:c}=t(),d=yt({group:c});l=Re(o/d*100);break}case"string":{l=parseFloat(o);break}}i(l)}}}}function Dl(e,n){const{id:t}=kr(),r=S.useRef({collapse:Bn,expand:Bn,getSize:()=>({asPercentage:0,inPixels:0}),isCollapsed:()=>!1,resize:Bn});S.useImperativeHandle(n,()=>r.current,[]),at(()=>{Object.assign(r.current,Ll({groupId:t,panelId:e}))})}function qs({children:e,className:n,collapsedSize:t="0%",collapsible:r=!1,defaultSize:a,elementRef:s,id:i,maxSize:o="100%",minSize:l="0%",onResize:c,panelRef:d,style:f,...p}){const g=!!i,h=Er(i),m=S.useRef(null),b=Nr(m,s),[,y]=Ws(),{getPanelStyles:w,id:x,registerPanel:v}=kr(),N=c!==null,E=_t((A,O,I)=>{c==null||c(A,i,I)});at(()=>{const A=m.current;if(A!==null)return v({element:A,id:h,idIsStable:g,mutableValues:{expandToSize:void 0,prevSize:void 0},onResize:N?E:void 0,panelConstraints:{collapsedSize:t,collapsible:r,defaultSize:a,maxSize:o,minSize:l},scheduleUpdate:y})},[t,r,a,y,N,h,g,o,l,E,v]),Dl(h,d);const C=w(x,h);return u.jsx("div",{...p,"data-panel":!0,"data-testid":h,id:h,ref:b,style:{...Ml,flexBasis:0,flexShrink:1,overflow:"hidden",...C},children:u.jsx("div",{className:n,style:{width:"100%",height:"100%",...f},children:e})})}qs.displayName="Panel";const Ml={minHeight:0,maxHeight:"100%",height:"auto",minWidth:0,maxWidth:"100%",width:"auto",border:"none",borderWidth:0,padding:0,margin:0};function $l({layout:e,panelConstraints:n,panelId:t,panelIndex:r}){let a,s;const i=e[t],o=n.find(l=>l.panelId===t);if(o){const l=o.maxSize,c=s=o.collapsible?o.collapsedSize:o.minSize,d=[r,r+1];s=rt({layout:Lt({delta:c-i,initialLayout:e,panelConstraints:n,pivotIndices:d,prevLayout:e,trigger:"keyboard"}),panelConstraints:n})[t],a=rt({layout:Lt({delta:l-i,initialLayout:e,panelConstraints:n,pivotIndices:d,prevLayout:e,trigger:"keyboard"}),panelConstraints:n})[t]}return{valueControls:t,valueMax:a,valueMin:s,valueNow:i}}function Xs({children:e,className:n,elementRef:t,id:r,style:a,...s}){const i=Er(r),[o,l]=S.useState({}),[c,d]=S.useState("inactive"),f=S.useRef(null),p=Nr(f,t),{id:g,orientation:h,registerSeparator:m}=kr(),b=h==="horizontal"?"vertical":"horizontal";return at(()=>{const y=f.current;if(y!==null){const w={element:y,id:i},x=m(w),v=tt.addListener("interactionStateChange",E=>{d(E.state!=="inactive"&&E.hitRegions.some(C=>C.separator===w)?E.state:"inactive")}),N=tt.addListener("mountedGroupsChange",E=>{E.forEach(({derivedPanelConstraints:C,layout:A,separatorToPanels:O},I)=>{if(I.id===g){const j=O.get(w);if(j){const D=j[0],R=I.panels.indexOf(D);l($l({layout:A,panelConstraints:C,panelId:D.id,panelIndex:R}))}}})});return()=>{v(),N(),x()}}},[g,i,m]),u.jsx("div",{...s,"aria-controls":o.valueControls,"aria-orientation":b,"aria-valuemax":o.valueMax,"aria-valuemin":o.valueMin,"aria-valuenow":o.valueNow,children:e,className:n,"data-separator":c,"data-testid":i,id:i,ref:p,role:"separator",style:{flexBasis:"auto",...a,flexGrow:0,flexShrink:0},tabIndex:0})}Xs.displayName="Separator";const mp=({className:e,...n})=>u.jsx(Ys,{className:V("flex h-full w-full data-[panel-group-direction=vertical]:flex-col",e),...n}),bp=qs,yp=({withHandle:e,className:n,...t})=>u.jsx(Xs,{className:V("relative flex w-2 items-center justify-center bg-transparent after:absolute after:inset-y-0 after:left-1/2 after:w-px after:bg-border after:-translate-x-1/2 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1","aria-[orientation=horizontal]:h-2 aria-[orientation=horizontal]:w-full aria-[orientation=horizontal]:after:inset-y-auto aria-[orientation=horizontal]:after:top-1/2 aria-[orientation=horizontal]:after:left-0 aria-[orientation=horizontal]:after:h-px aria-[orientation=horizontal]:after:w-full aria-[orientation=horizontal]:after:-translate-y-1/2 aria-[orientation=horizontal]:after:translate-x-0 [&[aria-orientation=horizontal]>div]:rotate-90",n),...t,children:e&&u.jsx("div",{className:"z-10 flex h-4 w-3 items-center justify-center rounded-sm border bg-border",children:u.jsx(ro,{className:"h-2.5 w-2.5"})})}),Fl=40,Zs={added:{label:"A",className:pe.ok,iconColor:"text-status-ok"},modified:{label:"M",className:pe.warn,iconColor:"text-status-warn"},deleted:{label:"D",className:pe.error,iconColor:"text-destructive"},renamed:{label:"R",className:pe.info,iconColor:"text-status-info"},copied:{label:"C",className:"bg-purple-500 text-white",iconColor:"text-purple-600 dark:text-purple-400"}};function Pl(e){const n=[],t=new Map,r=[...e].sort((a,s)=>a.path.localeCompare(s.path));for(const a of r){const s=a.path.split("/");let i="",o=n;for(let c=0;c<s.length-1;c++){const d=s[c];i=i?`${i}/${d}`:d;let f=t.get(i);f||(f={name:d,path:i,isFolder:!0,children:[]},t.set(i,f),o.push(f)),o=f.children}const l=s[s.length-1];o.push({name:l,path:a.path,isFolder:!1,file:a})}return n}function Zn(e){return e.map(n=>{if(!n.isFolder||!n.children)return n;let t=Zn(n.children),r={...n};for(;t.length===1&&t[0].isFolder;){const a=t[0];r={...r,name:`${r.name}/${a.name}`,path:a.path,children:a.children},t=a.children?Zn(a.children):[]}return{...r,children:t}})}function zl(e){const n=Pl(e);return Zn(n)}function Qs({additions:e,deletions:n}){const t=[e>0?`${e} additions`:null,n>0?`${n} deletions`:null].filter(Boolean).join(", ");return u.jsxs("span",{className:"text-xs shrink-0 font-mono","aria-label":t||"No changes",children:[e>0&&u.jsxs("span",{className:"text-status-ok","aria-hidden":"true",children:["+",e]}),e>0&&n>0&&u.jsx("span",{className:"text-muted-foreground","aria-hidden":"true",children:"/"}),n>0&&u.jsxs("span",{className:"text-destructive","aria-hidden":"true",children:["-",n]})]})}function Js({node:e,depth:n,selectedFile:t,onSelectFile:r,expandedFolders:a,onToggleFolder:s,commentCounts:i,searchQuery:o}){var g,h;const l=a.has(e.path),c=8+n*16;if(e.isFolder){const m=o.toLowerCase(),b=o?e.name.toLowerCase().includes(m)||e.path.toLowerCase().includes(m):!1;return(o?b||((g=e.children)==null?void 0:g.some(w=>w.path.toLowerCase().includes(m)||w.isFolder&&ei(w,o))):!0)?u.jsxs("div",{role:"treeitem","aria-expanded":l,children:[u.jsxs("button",{className:V("w-full text-left px-2 py-1.5 flex items-center gap-1.5 hover:bg-accent rounded-sm transition-colors"),style:{paddingLeft:c},onClick:()=>s(e.path),"aria-expanded":l,"aria-label":`${e.name} folder, ${l?"expanded":"collapsed"}`,title:e.path,children:[l?u.jsx(gn,{className:"h-4 w-4 shrink-0 text-muted-foreground","aria-hidden":"true"}):u.jsx(hn,{className:"h-4 w-4 shrink-0 text-muted-foreground","aria-hidden":"true"}),u.jsx(so,{className:"h-4 w-4 shrink-0 text-muted-foreground","aria-hidden":"true"}),u.jsx("span",{className:"truncate text-sm font-medium",children:e.name})]}),l&&u.jsx("div",{role:"group",children:(h=e.children)==null?void 0:h.map(w=>u.jsx(Js,{node:w,depth:n+1,selectedFile:t,onSelectFile:r,expandedFolders:a,onToggleFolder:s,commentCounts:i,searchQuery:o},w.path))})]}):null}const d=e.file,f=t===e.path,p=(i==null?void 0:i[e.path])??0;return o&&!e.path.toLowerCase().includes(o.toLowerCase())?null:u.jsxs("button",{className:V("w-full text-left px-2 py-1.5 flex items-center gap-1.5 rounded-sm transition-colors",f?"bg-selected text-selected-foreground":"hover:bg-accent/50"),style:{paddingLeft:c+20},onClick:()=>r(e.path),role:"treeitem","aria-selected":f,"aria-label":`${e.name}, ${d.status}, ${d.additions} additions, ${d.deletions} deletions${p>0?`, ${p} comments`:""}`,children:[u.jsx("span",{title:d.status,className:"shrink-0",children:u.jsx(De,{className:V("h-4 w-4",Zs[d.status].iconColor),"aria-hidden":"true"})}),u.jsx("span",{className:"sr-only",children:d.status}),u.jsx("span",{className:V("truncate flex-1 text-sm",f&&"font-medium",d.status==="deleted"&&"text-muted-foreground"),children:e.name}),u.jsxs("div",{className:"flex items-center gap-1.5 shrink-0",children:[p>0&&u.jsxs(Le,{variant:"secondary",className:"h-5 px-1.5 text-xs gap-0.5","aria-hidden":"true",children:[u.jsx(Ie,{className:"h-3 w-3"}),p]}),u.jsx(Qs,{additions:d.additions,deletions:d.deletions})]})]})}function ei(e,n){if(!e.children)return!1;const t=n.toLowerCase();return e.children.some(r=>r.path.toLowerCase().includes(t)||r.name.toLowerCase().includes(t)||r.isFolder&&ei(r,n))}function Bl({file:e,isSelected:n,onSelect:t,commentCount:r}){return u.jsxs("button",{className:V("w-full text-left px-3 py-2 flex items-center gap-2 rounded-md transition-colors",n?"bg-selected text-selected-foreground":"hover:bg-accent/50"),onClick:t,role:"option","aria-selected":n,"aria-label":`${e.path}, ${e.status}, ${e.additions} additions, ${e.deletions} deletions${r>0?`, ${r} comments`:""}`,children:[u.jsx("span",{title:e.status,className:"shrink-0",children:u.jsx(De,{className:V("h-4 w-4",Zs[e.status].iconColor),"aria-hidden":"true"})}),u.jsx("span",{className:"sr-only",children:e.status}),u.jsx("span",{className:V("truncate flex-1 text-sm",n&&"font-medium",e.status==="deleted"&&"text-muted-foreground"),children:e.path}),u.jsxs("div",{className:"flex items-center gap-1.5 shrink-0",children:[r>0&&u.jsxs(Le,{variant:"secondary",className:"h-5 px-1.5 text-xs gap-0.5","aria-hidden":"true",children:[u.jsx(Ie,{className:"h-3 w-3"}),r]}),u.jsx(Qs,{additions:e.additions,deletions:e.deletions})]})]})}function vp({files:e,selectedFile:n,onSelectFile:t,commentCounts:r,isLoading:a}){const[s,i]=S.useState(""),[o,l]=S.useState("tree"),[c,d]=S.useState(new Set),[f,p]=S.useState(!1),g=S.useRef(null);S.useEffect(()=>{if(e.length>0&&!f){const v=new Set;for(const N of e){const E=N.path.split("/");let C="";for(let A=0;A<E.length-1;A++)C=C?`${C}/${E[A]}`:E[A],v.add(C)}d(v),p(!0)}},[e,f]);const h=S.useMemo(()=>zl(e),[e]),m=S.useMemo(()=>{if(!s)return e;const v=s.toLowerCase();return e.filter(N=>N.path.toLowerCase().includes(v))},[e,s]),b=ao({count:m.length,getScrollElement:()=>g.current,estimateSize:()=>Fl,overscan:5});S.useEffect(()=>{if(o==="flat"&&n){const v=m.findIndex(N=>N.path===n);v!==-1&&b.scrollToIndex(v,{align:"auto"})}},[o,n,m,b]);const y=v=>{d(N=>{const E=new Set(N);return E.has(v)?E.delete(v):E.add(v),E})},w=()=>{const v=new Set;for(const N of e){const E=N.path.split("/");let C="";for(let A=0;A<E.length-1;A++)C=C?`${C}/${E[A]}`:E[A],v.add(C)}d(v)},x=()=>{d(new Set)};return a?u.jsxs("div",{className:"h-full flex flex-col",children:[u.jsx("div",{className:"p-2 border-b",children:u.jsx("div",{className:"h-9 bg-muted rounded-md animate-pulse"})}),u.jsx("div",{className:"flex-1 p-2 space-y-1",children:Array.from({length:8}).map((v,N)=>u.jsx("div",{className:"h-7 bg-muted rounded-sm animate-pulse"},N))})]}):e.length===0?u.jsxs("div",{className:"h-full flex flex-col items-center justify-center p-4 text-center text-muted-foreground",children:[u.jsx(De,{className:"h-8 w-8 mb-2"}),u.jsx("p",{className:"text-sm",children:"No files changed"})]}):u.jsxs("div",{className:"h-full flex flex-col",children:[u.jsxs("div",{className:"p-2 border-b space-y-2",children:[u.jsxs("div",{className:"relative",children:[u.jsx(fr,{className:"absolute left-2.5 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground","aria-hidden":"true"}),u.jsx(pr,{placeholder:"Filter files...",value:s,onChange:v=>i(v.target.value),className:"pl-8 h-8 text-sm","aria-label":"Filter files by name"})]}),u.jsxs("div",{className:"flex items-center gap-1 text-xs",role:"group","aria-label":"View options",children:[u.jsx("button",{className:V("px-2 py-1 rounded-sm transition-colors",o==="tree"?"bg-selected text-selected-foreground":"hover:bg-accent/50"),onClick:()=>l("tree"),"aria-pressed":o==="tree",children:"Tree"}),u.jsx("button",{className:V("px-2 py-1 rounded-sm transition-colors",o==="flat"?"bg-selected text-selected-foreground":"hover:bg-accent/50"),onClick:()=>l("flat"),"aria-pressed":o==="flat",children:"Flat"}),o==="tree"&&u.jsxs(u.Fragment,{children:[u.jsx("span",{className:"mx-1 text-muted-foreground","aria-hidden":"true",children:"|"}),u.jsx("button",{className:"px-2 py-1 rounded-sm hover:bg-accent/50 transition-colors",onClick:w,"aria-label":"Expand all folders",children:"Expand"}),u.jsx("button",{className:"px-2 py-1 rounded-sm hover:bg-accent/50 transition-colors",onClick:x,"aria-label":"Collapse all folders",children:"Collapse"})]})]})]}),o==="tree"?u.jsx(gr,{className:"flex-1",children:u.jsxs("div",{className:"py-1",children:[u.jsx("div",{role:"tree","aria-label":"Changed files",children:h.map(v=>u.jsx(Js,{node:v,depth:0,selectedFile:n,onSelectFile:t,expandedFolders:c,onToggleFolder:y,commentCounts:r,searchQuery:s},v.path))}),s&&m.length===0&&u.jsxs("div",{className:"p-4 text-center text-sm text-muted-foreground",role:"status",children:['No files match "',s,'"']})]})}):u.jsx("div",{ref:g,className:"flex-1 overflow-auto",role:"listbox","aria-label":"Changed files",children:m.length>0?u.jsx("div",{className:"relative w-full px-1",style:{height:`${b.getTotalSize()}px`},children:b.getVirtualItems().map(v=>{const N=m[v.index];return u.jsx("div",{className:"absolute top-0 left-0 w-full px-1",style:{height:`${v.size}px`,transform:`translateY(${v.start}px)`},children:u.jsx(Bl,{file:N,isSelected:n===N.path,onSelect:()=>t(N.path),commentCount:(r==null?void 0:r[N.path])??0})},N.path)})}):s?u.jsxs("div",{className:"p-4 text-center text-sm text-muted-foreground",role:"status",children:['No files match "',s,'"']}):null}),u.jsxs("div",{className:"p-2 border-t text-xs text-muted-foreground",children:[e.length," file",e.length!==1?"s":""," changed",s&&m.length!==e.length&&u.jsxs("span",{children:[" (",m.length," shown)"]})]})]})}function Ra(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),t.push.apply(t,r)}return t}function Z(e){for(var n=1;n<arguments.length;n++){var t=arguments[n]!=null?arguments[n]:{};n%2?Ra(Object(t),!0).forEach(function(r){Qn(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Ra(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function Qn(e,n,t){return(n=function(r){var a=function(s,i){if(typeof s!="object"||s===null)return s;var o=s[Symbol.toPrimitive];if(o!==void 0){var l=o.call(s,i);if(typeof l!="object")return l;throw new TypeError("@@toPrimitive must return a primitive value.")}return(i==="string"?String:Number)(s)}(r,"string");return typeof a=="symbol"?a:String(a)}(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function We(e,n){if(e==null)return{};var t,r,a=function(i,o){if(i==null)return{};var l,c,d={},f=Object.keys(i);for(c=0;c<f.length;c++)l=f[c],o.indexOf(l)>=0||(d[l]=i[l]);return d}(e,n);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r<s.length;r++)t=s[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}function q(e,n){return ni(e)||function(t,r){var a=t==null?null:typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(a!=null){var s,i,o,l,c=[],d=!0,f=!1;try{if(o=(a=a.call(t)).next,r===0){if(Object(a)!==a)return;d=!1}else for(;!(d=(s=o.call(a)).done)&&(c.push(s.value),c.length!==r);d=!0);}catch(p){f=!0,i=p}finally{try{if(!d&&a.return!=null&&(l=a.return(),Object(l)!==l))return}finally{if(f)throw i}}return c}}(e,n)||bn(e,n)||ai()}function ti(e){return ni(e)||ri(e)||bn(e)||ai()}function Ee(e){return function(n){if(Array.isArray(n))return Jn(n)}(e)||ri(e)||bn(e)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
42
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function ni(e){if(Array.isArray(e))return e}function ri(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function bn(e,n){if(e){if(typeof e=="string")return Jn(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return t==="Object"&&e.constructor&&(t=e.constructor.name),t==="Map"||t==="Set"?Array.from(e):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Jn(e,n):void 0}}function Jn(e,n){(n==null||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function ai(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
43
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Ar(e,n){var t=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=bn(e))||n){t&&(e=t);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(l){throw l},f:a}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
44
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var s,i=!0,o=!1;return{s:function(){t=t.call(e)},n:function(){var l=t.next();return i=l.done,l},e:function(l){o=!0,s=l},f:function(){try{i||t.return==null||t.return()}finally{if(o)throw s}}}}var Yt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Bt(e,n){return e(n={exports:{}},n.exports),n.exports}var Se=Bt(function(e){/*!
45
- Copyright (c) 2018 Jed Watson.
46
- Licensed under the MIT License (MIT), see
47
- http://jedwatson.github.io/classnames
48
- */(function(){var n={}.hasOwnProperty;function t(){for(var r=[],a=0;a<arguments.length;a++){var s=arguments[a];if(s){var i=typeof s;if(i==="string"||i==="number")r.push(s);else if(Array.isArray(s)){if(s.length){var o=t.apply(null,s);o&&r.push(o)}}else if(i==="object"){if(s.toString!==Object.prototype.toString&&!s.toString.toString().includes("[native code]")){r.push(s.toString());continue}for(var l in s)n.call(s,l)&&s[l]&&r.push(l)}}}return r.join(" ")}e.exports?(t.default=t,e.exports=t):window.classNames=t})()}),be={hunkClassName:"",lineClassName:"",gutterClassName:"",codeClassName:"",monotonous:!1,gutterType:"default",viewType:"split",widgets:{},hideGutter:!1,selectedChanges:[],generateAnchorID:function(){},generateLineClassName:function(){},renderGutter:function(e){var n=e.renderDefault;return(0,e.wrapInAnchor)(n())},codeEvents:{},gutterEvents:{}},si=S.createContext(be),Gl=si.Provider,Ul=function(){return S.useContext(si)},Hl=Bt(function(e,n){(function(t){function r(s){var i=s.slice(11),o=null,l=null;switch(i.indexOf('"')){case-1:o=(f=i.split(" "))[0].slice(2),l=f[1].slice(2);break;case 0:var c=i.indexOf('"',2);o=i.slice(3,c);var d=i.indexOf('"',c+1);l=d<0?i.slice(c+4):i.slice(d+3,-1);break;default:var f;o=(f=i.split(" "))[0].slice(2),l=f[1].slice(3,-1)}return{oldPath:o,newPath:l}}var a={parse:function(s){for(var i,o,l,c,d,f=[],p=2,g=s.split(`
49
- `),h=g.length,m=0;m<h;){var b=g[m];if(b.indexOf("diff --git")===0){i={hunks:[],oldEndingNewLine:!0,newEndingNewLine:!0,oldPath:(d=r(b)).oldPath,newPath:d.newPath},f.push(i);var y,w=null;e:for(;y=g[++m];){var x=y.indexOf(" "),v=x>-1?y.slice(0,x):v;switch(v){case"diff":m--;break e;case"deleted":case"new":var N=y.slice(x+1);N.indexOf("file mode")===0&&(i[v==="new"?"newMode":"oldMode"]=N.slice(10));break;case"similarity":i.similarity=parseInt(y.split(" ")[2],10);break;case"index":var E=y.slice(x+1).split(" "),C=E[0].split("..");i.oldRevision=C[0],i.newRevision=C[1],E[1]&&(i.oldMode=i.newMode=E[1]);break;case"copy":case"rename":var A=y.slice(x+1);A.indexOf("from")===0?i.oldPath=A.slice(5):i.newPath=A.slice(3),w=v;break;case"---":var O=y.slice(x+1),I=g[++m].slice(4);O==="/dev/null"?(I=I.slice(2),w="add"):I==="/dev/null"?(O=O.slice(2),w="delete"):(w="modify",O=O.slice(2),I=I.slice(2)),O&&(i.oldPath=O),I&&(i.newPath=I),p=5;break e}}i.type=w||"modify"}else if(b.indexOf("Binary")===0)i.isBinary=!0,i.type=b.indexOf("/dev/null and")>=0?"add":b.indexOf("and /dev/null")>=0?"delete":"modify",p=2,i=null;else if(p===5)if(b.indexOf("@@")===0){var j=/^@@\s+-([0-9]+)(,([0-9]+))?\s+\+([0-9]+)(,([0-9]+))?/.exec(b);o={content:b,oldStart:j[1]-0,newStart:j[4]-0,oldLines:j[3]-0||1,newLines:j[6]-0||1,changes:[]},i.hunks.push(o),l=o.oldStart,c=o.newStart}else{var D=b.slice(0,1),R={content:b.slice(1)};switch(D){case"+":R.type="insert",R.isInsert=!0,R.lineNumber=c,c++;break;case"-":R.type="delete",R.isDelete=!0,R.lineNumber=l,l++;break;case" ":R.type="normal",R.isNormal=!0,R.oldLineNumber=l,R.newLineNumber=c,l++,c++;break;case"\\":var M=o.changes[o.changes.length-1];M.isDelete||(i.newEndingNewLine=!1),M.isInsert||(i.oldEndingNewLine=!1)}R.type&&o.changes.push(R)}m++}return f}};e.exports=a})()});function Xe(e){return e.type==="insert"}function Ne(e){return e.type==="delete"}function Ge(e){return e.type==="normal"}function Kl(e,n){var t=n.nearbySequences==="zip"?function(r){var a=r.reduce(function(s,i,o){var l=q(s,3),c=l[0],d=l[1],f=l[2];return d?Xe(i)&&f>=0?(c.splice(f+1,0,i),[c,i,f+2]):(c.push(i),[c,i,Ne(i)&&Ne(d)?f:o]):(c.push(i),[c,i,Ne(i)?o:-1])},[[],null,-1]);return q(a,1)[0]}(e.changes):e.changes;return Z(Z({},e),{},{isPlain:!1,changes:t})}function Wl(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=function(r){if(r.startsWith("diff --git"))return r;var a=r.indexOf(`
50
- `),s=r.indexOf(`
51
- `,a+1),i=r.slice(0,a),o=r.slice(a+1,s),l=i.split(" ").slice(1,-3).join(" "),c=o.split(" ").slice(1,-3).join(" ");return["diff --git a/".concat(l," b/").concat(c),"index 1111111..2222222 100644","--- a/".concat(l),"+++ b/".concat(c),r.slice(s+1)].join(`
52
- `)}(e.trimStart());return Hl.parse(t).map(function(r){return function(a,s){var i=a.hunks.map(function(o){return Kl(o,s)});return Z(Z({},a),{},{hunks:i})}(r,n)})}function Vl(e){return e[0]}function Yl(e){return e[e.length-1]}function er(e){return["".concat(e,"Start"),"".concat(e,"Lines")]}function Dt(e){return e==="old"?function(n){return Xe(n)?-1:Ge(n)?n.oldLineNumber:n.lineNumber}:function(n){return Ne(n)?-1:Ge(n)?n.newLineNumber:n.lineNumber}}function ii(e,n){return function(t,r){var a=t[e],s=a+t[n];return r>=a&&r<s}}function ql(e,n){return function(t,r,a){var s=t[e]+t[n],i=r[e];return a>=s&&a<i}}function oi(e){var n=Dt(e),t=function(r){var a=q(er(r),2),s=ii(a[0],a[1]);return function(i,o){return i.find(function(l){return s(l,o)})}}(e);return function(r,a){var s=t(r,a);if(s)return s.changes.find(function(i){return n(i)===a})}}function Cr(e){var n=e==="old"?"new":"old",t=q(er(e),2),r=t[0],a=t[1],s=q(er(n),2),i=s[0],o=s[1],l=Dt(e),c=Dt(n),d=ii(r,a),f=ql(r,a);return function(p,g){var h=Vl(p);if(g<h[r]){var m=h[r]-g;return h[i]-m}var b=Yl(p);if(b[r]+b[a]<=g){var y=g-b[r]-b[a];return b[i]+b[o]+y}for(var w=0;w<p.length;w++){var x=p[w],v=p[w+1];if(d(x,g)){var N=x.changes.findIndex(function(j){return l(j)===g}),E=x.changes[N];if(Ge(E))return c(E);var C=Ne(E)?N+1:N-1,A=x.changes[C];if(!A)return-1;var O=Xe(E)?"delete":"insert";return A.type===O?c(A):-1}if(f(x,v,g)){var I=g-x[r]-x[a];return x[i]+x[o]+I}}throw new Error("Unexpected line position ".concat(g))}}var Xl=function(e,n,t,r){for(var a=e.length,s=t+-1;++s<a;)if(n(e[s],s,e))return s;return-1},Zl=function(){this.__data__=[],this.size=0},li=function(e,n){return e===n||e!=e&&n!=n},yn=function(e,n){for(var t=e.length;t--;)if(li(e[t][0],n))return t;return-1},Ql=Array.prototype.splice,Jl=function(e){var n=this.__data__,t=yn(n,e);return!(t<0)&&(t==n.length-1?n.pop():Ql.call(n,t,1),--this.size,!0)},eu=function(e){var n=this.__data__,t=yn(n,e);return t<0?void 0:n[t][1]},tu=function(e){return yn(this.__data__,e)>-1},nu=function(e,n){var t=this.__data__,r=yn(t,e);return r<0?(++this.size,t.push([e,n])):t[r][1]=n,this};function ct(e){var n=-1,t=e==null?0:e.length;for(this.clear();++n<t;){var r=e[n];this.set(r[0],r[1])}}ct.prototype.clear=Zl,ct.prototype.delete=Jl,ct.prototype.get=eu,ct.prototype.has=tu,ct.prototype.set=nu;var vn=ct,ru=function(){this.__data__=new vn,this.size=0},au=function(e){var n=this.__data__,t=n.delete(e);return this.size=n.size,t},su=function(e){return this.__data__.get(e)},iu=function(e){return this.__data__.has(e)},ui=typeof Yt=="object"&&Yt&&Yt.Object===Object&&Yt,ou=typeof self=="object"&&self&&self.Object===Object&&self,Ue=ui||ou||Function("return this")(),$e=Ue.Symbol,ci=Object.prototype,lu=ci.hasOwnProperty,uu=ci.toString,Tt=$e?$e.toStringTag:void 0,cu=function(e){var n=lu.call(e,Tt),t=e[Tt];try{e[Tt]=void 0;var r=!0}catch{}var a=uu.call(e);return r&&(n?e[Tt]=t:delete e[Tt]),a},du=Object.prototype.toString,fu=function(e){return du.call(e)},Oa=$e?$e.toStringTag:void 0,St=function(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Oa&&Oa in Object(e)?cu(e):fu(e)},Mt=function(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")},di=function(e){if(!Mt(e))return!1;var n=St(e);return n=="[object Function]"||n=="[object GeneratorFunction]"||n=="[object AsyncFunction]"||n=="[object Proxy]"},Un=Ue["__core-js_shared__"],La=function(){var e=/[^.]+$/.exec(Un&&Un.keys&&Un.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),pu=function(e){return!!La&&La in e},gu=Function.prototype.toString,st=function(e){if(e!=null){try{return gu.call(e)}catch{}try{return e+""}catch{}}return""},hu=/^\[object .+?Constructor\]$/,mu=Function.prototype,bu=Object.prototype,yu=mu.toString,vu=bu.hasOwnProperty,wu=RegExp("^"+yu.call(vu).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),xu=function(e){return!(!Mt(e)||pu(e))&&(di(e)?wu:hu).test(st(e))},Su=function(e,n){return e==null?void 0:e[n]},it=function(e,n){var t=Su(e,n);return xu(t)?t:void 0},$t=it(Ue,"Map"),Ft=it(Object,"create"),Eu=function(){this.__data__=Ft?Ft(null):{},this.size=0},Nu=function(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n},ku=Object.prototype.hasOwnProperty,Au=function(e){var n=this.__data__;if(Ft){var t=n[e];return t==="__lodash_hash_undefined__"?void 0:t}return ku.call(n,e)?n[e]:void 0},Cu=Object.prototype.hasOwnProperty,Tu=function(e){var n=this.__data__;return Ft?n[e]!==void 0:Cu.call(n,e)},Iu=function(e,n){var t=this.__data__;return this.size+=this.has(e)?0:1,t[e]=Ft&&n===void 0?"__lodash_hash_undefined__":n,this};function dt(e){var n=-1,t=e==null?0:e.length;for(this.clear();++n<t;){var r=e[n];this.set(r[0],r[1])}}dt.prototype.clear=Eu,dt.prototype.delete=Nu,dt.prototype.get=Au,dt.prototype.has=Tu,dt.prototype.set=Iu;var Da=dt,_u=function(){this.size=0,this.__data__={hash:new Da,map:new($t||vn),string:new Da}},ju=function(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null},wn=function(e,n){var t=e.__data__;return ju(n)?t[typeof n=="string"?"string":"hash"]:t.map},Ru=function(e){var n=wn(this,e).delete(e);return this.size-=n?1:0,n},Ou=function(e){return wn(this,e).get(e)},Lu=function(e){return wn(this,e).has(e)},Du=function(e,n){var t=wn(this,e),r=t.size;return t.set(e,n),this.size+=t.size==r?0:1,this};function ft(e){var n=-1,t=e==null?0:e.length;for(this.clear();++n<t;){var r=e[n];this.set(r[0],r[1])}}ft.prototype.clear=_u,ft.prototype.delete=Ru,ft.prototype.get=Ou,ft.prototype.has=Lu,ft.prototype.set=Du;var xn=ft,Mu=function(e,n){var t=this.__data__;if(t instanceof vn){var r=t.__data__;if(!$t||r.length<199)return r.push([e,n]),this.size=++t.size,this;t=this.__data__=new xn(r)}return t.set(e,n),this.size=t.size,this};function pt(e){var n=this.__data__=new vn(e);this.size=n.size}pt.prototype.clear=ru,pt.prototype.delete=au,pt.prototype.get=su,pt.prototype.has=iu,pt.prototype.set=Mu;var tn=pt,$u=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},Fu=function(e){return this.__data__.has(e)};function nn(e){var n=-1,t=e==null?0:e.length;for(this.__data__=new xn;++n<t;)this.add(e[n])}nn.prototype.add=nn.prototype.push=$u,nn.prototype.has=Fu;var Pu=nn,zu=function(e,n){for(var t=-1,r=e==null?0:e.length;++t<r;)if(n(e[t],t,e))return!0;return!1},Bu=function(e,n){return e.has(n)},fi=function(e,n,t,r,a,s){var i=1&t,o=e.length,l=n.length;if(o!=l&&!(i&&l>o))return!1;var c=s.get(e),d=s.get(n);if(c&&d)return c==n&&d==e;var f=-1,p=!0,g=2&t?new Pu:void 0;for(s.set(e,n),s.set(n,e);++f<o;){var h=e[f],m=n[f];if(r)var b=i?r(m,h,f,n,e,s):r(h,m,f,e,n,s);if(b!==void 0){if(b)continue;p=!1;break}if(g){if(!zu(n,function(y,w){if(!Bu(g,w)&&(h===y||a(h,y,t,r,s)))return g.push(w)})){p=!1;break}}else if(h!==m&&!a(h,m,t,r,s)){p=!1;break}}return s.delete(e),s.delete(n),p},Ma=Ue.Uint8Array,Gu=function(e){var n=-1,t=Array(e.size);return e.forEach(function(r,a){t[++n]=[a,r]}),t},Uu=function(e){var n=-1,t=Array(e.size);return e.forEach(function(r){t[++n]=r}),t},$a=$e?$e.prototype:void 0,Hn=$a?$a.valueOf:void 0,Hu=function(e,n,t,r,a,s,i){switch(t){case"[object DataView]":if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=n.byteLength||!s(new Ma(e),new Ma(n)));case"[object Boolean]":case"[object Date]":case"[object Number]":return li(+e,+n);case"[object Error]":return e.name==n.name&&e.message==n.message;case"[object RegExp]":case"[object String]":return e==n+"";case"[object Map]":var o=Gu;case"[object Set]":var l=1&r;if(o||(o=Uu),e.size!=n.size&&!l)return!1;var c=i.get(e);if(c)return c==n;r|=2,i.set(e,n);var d=fi(o(e),o(n),r,a,s,i);return i.delete(e),d;case"[object Symbol]":if(Hn)return Hn.call(e)==Hn.call(n)}return!1},pi=function(e,n){for(var t=-1,r=n.length,a=e.length;++t<r;)e[a+t]=n[t];return e},ke=Array.isArray,Ku=function(e,n,t){var r=n(e);return ke(e)?r:pi(r,t(e))},Wu=function(e,n){for(var t=-1,r=e==null?0:e.length,a=0,s=[];++t<r;){var i=e[t];n(i,t,e)&&(s[a++]=i)}return s},Vu=function(){return[]},Yu=Object.prototype.propertyIsEnumerable,Fa=Object.getOwnPropertySymbols,qu=Fa?function(e){return e==null?[]:(e=Object(e),Wu(Fa(e),function(n){return Yu.call(e,n)}))}:Vu,Xu=function(e,n){for(var t=-1,r=Array(e);++t<e;)r[t]=n(t);return r},vt=function(e){return e!=null&&typeof e=="object"},Pa=function(e){return vt(e)&&St(e)=="[object Arguments]"},gi=Object.prototype,Zu=gi.hasOwnProperty,Qu=gi.propertyIsEnumerable,Sn=Pa(function(){return arguments}())?Pa:function(e){return vt(e)&&Zu.call(e,"callee")&&!Qu.call(e,"callee")},Ju=function(){return!1},fn=Bt(function(e,n){var t=n&&!n.nodeType&&n,r=t&&e&&!e.nodeType&&e,a=r&&r.exports===t?Ue.Buffer:void 0,s=(a?a.isBuffer:void 0)||Ju;e.exports=s}),ec=/^(?:0|[1-9]\d*)$/,hi=function(e,n){var t=typeof e;return!!(n=n??9007199254740991)&&(t=="number"||t!="symbol"&&ec.test(e))&&e>-1&&e%1==0&&e<n},Tr=function(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=9007199254740991},ie={};ie["[object Float32Array]"]=ie["[object Float64Array]"]=ie["[object Int8Array]"]=ie["[object Int16Array]"]=ie["[object Int32Array]"]=ie["[object Uint8Array]"]=ie["[object Uint8ClampedArray]"]=ie["[object Uint16Array]"]=ie["[object Uint32Array]"]=!0,ie["[object Arguments]"]=ie["[object Array]"]=ie["[object ArrayBuffer]"]=ie["[object Boolean]"]=ie["[object DataView]"]=ie["[object Date]"]=ie["[object Error]"]=ie["[object Function]"]=ie["[object Map]"]=ie["[object Number]"]=ie["[object Object]"]=ie["[object RegExp]"]=ie["[object Set]"]=ie["[object String]"]=ie["[object WeakMap]"]=!1;var tc=function(e){return vt(e)&&Tr(e.length)&&!!ie[St(e)]},nc=function(e){return function(n){return e(n)}},za=Bt(function(e,n){var t=n&&!n.nodeType&&n,r=t&&e&&!e.nodeType&&e,a=r&&r.exports===t&&ui.process,s=function(){try{var i=r&&r.require&&r.require("util").types;return i||a&&a.binding&&a.binding("util")}catch{}}();e.exports=s}),Ba=za&&za.isTypedArray,Ir=Ba?nc(Ba):tc,rc=Object.prototype.hasOwnProperty,ac=function(e,n){var t=ke(e),r=!t&&Sn(e),a=!t&&!r&&fn(e),s=!t&&!r&&!a&&Ir(e),i=t||r||a||s,o=i?Xu(e.length,String):[],l=o.length;for(var c in e)!rc.call(e,c)||i&&(c=="length"||a&&(c=="offset"||c=="parent")||s&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||hi(c,l))||o.push(c);return o},sc=Object.prototype,mi=function(e){var n=e&&e.constructor;return e===(typeof n=="function"&&n.prototype||sc)},ic=function(e,n){return function(t){return e(n(t))}}(Object.keys,Object),oc=Object.prototype.hasOwnProperty,bi=function(e){if(!mi(e))return ic(e);var n=[];for(var t in Object(e))oc.call(e,t)&&t!="constructor"&&n.push(t);return n},En=function(e){return e!=null&&Tr(e.length)&&!di(e)},_r=function(e){return En(e)?ac(e):bi(e)},Ga=function(e){return Ku(e,_r,qu)},lc=Object.prototype.hasOwnProperty,uc=function(e,n,t,r,a,s){var i=1&t,o=Ga(e),l=o.length;if(l!=Ga(n).length&&!i)return!1;for(var c=l;c--;){var d=o[c];if(!(i?d in n:lc.call(n,d)))return!1}var f=s.get(e),p=s.get(n);if(f&&p)return f==n&&p==e;var g=!0;s.set(e,n),s.set(n,e);for(var h=i;++c<l;){var m=e[d=o[c]],b=n[d];if(r)var y=i?r(b,m,d,n,e,s):r(m,b,d,e,n,s);if(!(y===void 0?m===b||a(m,b,t,r,s):y)){g=!1;break}h||(h=d=="constructor")}if(g&&!h){var w=e.constructor,x=n.constructor;w==x||!("constructor"in e)||!("constructor"in n)||typeof w=="function"&&w instanceof w&&typeof x=="function"&&x instanceof x||(g=!1)}return s.delete(e),s.delete(n),g},tr=it(Ue,"DataView"),nr=it(Ue,"Promise"),rr=it(Ue,"Set"),ar=it(Ue,"WeakMap"),cc=st(tr),dc=st($t),fc=st(nr),pc=st(rr),gc=st(ar),et=St;(tr&&et(new tr(new ArrayBuffer(1)))!="[object DataView]"||$t&&et(new $t)!="[object Map]"||nr&&et(nr.resolve())!="[object Promise]"||rr&&et(new rr)!="[object Set]"||ar&&et(new ar)!="[object WeakMap]")&&(et=function(e){var n=St(e),t=n=="[object Object]"?e.constructor:void 0,r=t?st(t):"";if(r)switch(r){case cc:return"[object DataView]";case dc:return"[object Map]";case fc:return"[object Promise]";case pc:return"[object Set]";case gc:return"[object WeakMap]"}return n});var sr=et,qt="[object Object]",Ua=Object.prototype.hasOwnProperty,hc=function(e,n,t,r,a,s){var i=ke(e),o=ke(n),l=i?"[object Array]":sr(e),c=o?"[object Array]":sr(n),d=(l=l=="[object Arguments]"?qt:l)==qt,f=(c=c=="[object Arguments]"?qt:c)==qt,p=l==c;if(p&&fn(e)){if(!fn(n))return!1;i=!0,d=!1}if(p&&!d)return s||(s=new tn),i||Ir(e)?fi(e,n,t,r,a,s):Hu(e,n,l,t,r,a,s);if(!(1&t)){var g=d&&Ua.call(e,"__wrapped__"),h=f&&Ua.call(n,"__wrapped__");if(g||h){var m=g?e.value():e,b=h?n.value():n;return s||(s=new tn),a(m,b,t,r,s)}}return!!p&&(s||(s=new tn),uc(e,n,t,r,a,s))},Nn=function e(n,t,r,a,s){return n===t||(n==null||t==null||!vt(n)&&!vt(t)?n!=n&&t!=t:hc(n,t,r,a,e,s))},mc=function(e,n,t,r){var a=t.length,s=a;if(e==null)return!s;for(e=Object(e);a--;){var i=t[a];if(i[2]?i[1]!==e[i[0]]:!(i[0]in e))return!1}for(;++a<s;){var o=(i=t[a])[0],l=e[o],c=i[1];if(i[2]){if(l===void 0&&!(o in e))return!1}else{var d=new tn,f;if(!(f===void 0?Nn(c,l,3,r,d):f))return!1}}return!0},yi=function(e){return e==e&&!Mt(e)},bc=function(e){for(var n=_r(e),t=n.length;t--;){var r=n[t],a=e[r];n[t]=[r,a,yi(a)]}return n},vi=function(e,n){return function(t){return t!=null&&t[e]===n&&(n!==void 0||e in Object(t))}},yc=function(e){var n=bc(e);return n.length==1&&n[0][2]?vi(n[0][0],n[0][1]):function(t){return t===e||mc(t,e,n)}},kn=function(e){return typeof e=="symbol"||vt(e)&&St(e)=="[object Symbol]"},vc=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,wc=/^\w*$/,jr=function(e,n){if(ke(e))return!1;var t=typeof e;return!(t!="number"&&t!="symbol"&&t!="boolean"&&e!=null&&!kn(e))||wc.test(e)||!vc.test(e)||n!=null&&e in Object(n)};function Rr(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError("Expected a function");var t=function(){var r=arguments,a=n?n.apply(this,r):r[0],s=t.cache;if(s.has(a))return s.get(a);var i=e.apply(this,r);return t.cache=s.set(a,i)||s,i};return t.cache=new(Rr.Cache||xn),t}Rr.Cache=xn;var xc=Rr,Sc=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ec=/\\(\\)?/g,Nc=function(e){var n=xc(e,function(r){return t.size===500&&t.clear(),r}),t=n.cache;return n}(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(Sc,function(t,r,a,s){n.push(a?s.replace(Ec,"$1"):r||t)}),n}),wi=function(e,n){for(var t=-1,r=e==null?0:e.length,a=Array(r);++t<r;)a[t]=n(e[t],t,e);return a},Ha=$e?$e.prototype:void 0,Ka=Ha?Ha.toString:void 0,kc=function e(n){if(typeof n=="string")return n;if(ke(n))return wi(n,e)+"";if(kn(n))return Ka?Ka.call(n):"";var t=n+"";return t=="0"&&1/n==-1/0?"-0":t},Ac=function(e){return e==null?"":kc(e)},xi=function(e,n){return ke(e)?e:jr(e,n)?[e]:Nc(Ac(e))},An=function(e){if(typeof e=="string"||kn(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n},Si=function(e,n){for(var t=0,r=(n=xi(n,e)).length;e!=null&&t<r;)e=e[An(n[t++])];return t&&t==r?e:void 0},Cc=function(e,n,t){var r=e==null?void 0:Si(e,n);return r===void 0?t:r},Tc=function(e,n){return e!=null&&n in Object(e)},Ic=function(e,n,t){for(var r=-1,a=(n=xi(n,e)).length,s=!1;++r<a;){var i=An(n[r]);if(!(s=e!=null&&t(e,i)))break;e=e[i]}return s||++r!=a?s:!!(a=e==null?0:e.length)&&Tr(a)&&hi(i,a)&&(ke(e)||Sn(e))},_c=function(e,n){return e!=null&&Ic(e,n,Tc)},jc=function(e,n){return jr(e)&&yi(n)?vi(An(e),n):function(t){var r=Cc(t,e);return r===void 0&&r===n?_c(t,e):Nn(n,r,3)}},Rc=function(e){return e},Oc=function(e){return function(n){return n==null?void 0:n[e]}},Lc=function(e){return function(n){return Si(n,e)}},Dc=function(e){return jr(e)?Oc(An(e)):Lc(e)},Cn=function(e){return typeof e=="function"?e:e==null?Rc:typeof e=="object"?ke(e)?jc(e[0],e[1]):yc(e):Dc(e)},Mc=/\s/,$c=function(e){for(var n=e.length;n--&&Mc.test(e.charAt(n)););return n},Fc=/^\s+/,Pc=function(e){return e&&e.slice(0,$c(e)+1).replace(Fc,"")},zc=/^[-+]0x[0-9a-f]+$/i,Bc=/^0b[01]+$/i,Gc=/^0o[0-7]+$/i,Uc=parseInt,Hc=function(e){if(typeof e=="number")return e;if(kn(e))return NaN;if(Mt(e)){var n=typeof e.valueOf=="function"?e.valueOf():e;e=Mt(n)?n+"":n}if(typeof e!="string")return e===0?e:+e;e=Pc(e);var t=Bc.test(e);return t||Gc.test(e)?Uc(e.slice(2),t?2:8):zc.test(e)?NaN:+e},Kc=function(e){return e?(e=Hc(e))===1/0||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:e===0?e:0},Wc=function(e){var n=Kc(e),t=n%1;return n==n?t?n-t:n:0};function Te(e){if(!e)throw new Error("change is not provided");if(Ge(e))return"N".concat(e.oldLineNumber);var n=Xe(e)?"I":"D";return"".concat(n).concat(e.lineNumber)}Cr("old");var Tn=Dt("old"),In=Dt("new");oi("old");oi("new");Cr("new");Cr("old");var Wa=function(){try{var e=it(Object,"defineProperty");return e({},"",{}),e}catch{}}(),Or=function(e,n,t){n=="__proto__"&&Wa?Wa(e,n,{configurable:!0,enumerable:!0,value:t,writable:!0}):e[n]=t},Vc=function(e){return function(n,t,r){for(var a=-1,s=Object(n),i=r(n),o=i.length;o--;){var l=i[++a];if(t(s[l],l,s)===!1)break}return n}},Yc=Vc(),Ei=function(e,n){return e&&Yc(e,n,_r)},Ni=function(e,n){var t={};return n=Cn(n),Ei(e,function(r,a,s){Or(t,a,n(r,a,s))}),t},qc=["changeKey","text","tokens","renderToken"],Va=function e(n,t){var r=n.type,a=n.value,s=n.markType,i=n.properties,o=n.className,l=n.children,c=function(f){return u.jsx("span",{className:f,children:a||l&&l.map(e)},t)};switch(r){case"text":return a;case"mark":return c("diff-code-mark diff-code-mark-".concat(s));case"edit":return c("diff-code-edit");default:var d=i&&i.className;return c(Se(o||d))}};function Xc(e){if(!Array.isArray(e))return!0;if(e.length>1)return!1;if(e.length===1){var n=q(e,1)[0];return n.type==="text"&&!n.value}return!0}function Zc(e){var n=e.changeKey,t=e.text,r=e.tokens,a=e.renderToken,s=We(e,qc),i=a?function(o,l){return a(o,Va,l)}:Va;return u.jsx("td",Z(Z({},s),{},{"data-change-key":n,children:r?Xc(r)?" ":r.map(i):t||" "}))}var ki=S.memo(Zc);function Ai(e,n){return function(){var t=n==="old"?Tn(e):In(e);return t===-1?void 0:t}}function Ci(e,n){return function(t){return e&&t?u.jsx("a",{href:n?"#"+n:void 0,children:t}):t}}function pn(e,n){return n?function(t){e(),n(t)}:e}function Ya(e,n,t,r){return S.useMemo(function(){var a=Ni(e,function(s){return function(i){return s&&s(n,i)}});return a.onMouseEnter=pn(t,a.onMouseEnter),a.onMouseLeave=pn(r,a.onMouseLeave),a},[e,t,r,n])}function qa(e,n,t,r,a,s,i,o,l){var c={change:n,side:r,inHoverState:o,renderDefault:Ai(n,r),wrapInAnchor:Ci(a,s)};return u.jsx("td",Z(Z({className:e},i),{},{"data-change-key":t,children:l(c)}))}function Qc(e){var n,t,r,a=e.change,s=e.selected,i=e.tokens,o=e.className,l=e.generateLineClassName,c=e.gutterClassName,d=e.codeClassName,f=e.gutterEvents,p=e.codeEvents,g=e.hideGutter,h=e.gutterAnchor,m=e.generateAnchorID,b=e.renderToken,y=e.renderGutter,w=a.type,x=a.content,v=Te(a),N=(n=q(S.useState(!1),2),t=n[0],r=n[1],[t,S.useCallback(function(){return r(!0)},[]),S.useCallback(function(){return r(!1)},[])]),E=q(N,3),C=E[0],A=E[1],O=E[2],I=S.useMemo(function(){return{change:a}},[a]),j=Ya(f,I,A,O),D=Ya(p,I,A,O),R=m(a),M=l({changes:[a],defaultGenerate:function(){return o}}),H=Se("diff-gutter","diff-gutter-".concat(w),c,{"diff-gutter-selected":s}),W=Se("diff-code","diff-code-".concat(w),d,{"diff-code-selected":s});return u.jsxs("tr",{id:R,className:Se("diff-line",M),children:[!g&&qa(H,a,v,"old",h,R,j,C,y),!g&&qa(H,a,v,"new",h,R,j,C,y),u.jsx(ki,Z({className:W,changeKey:v,text:x,tokens:i,renderToken:b},D))]})}var Jc=S.memo(Qc);function ed(e){var n=e.hideGutter,t=e.element;return u.jsx("tr",{className:"diff-widget",children:u.jsx("td",{colSpan:n?1:3,className:"diff-widget-content",children:t})})}var td=["hideGutter","selectedChanges","tokens","lineClassName"],nd=["hunk","widgets","className"];function rd(e){var n=e.hunk,t=e.widgets,r=e.className,a=We(e,nd),s=function(i,o){return i.reduce(function(l,c){var d=Te(c);l.push(["change",d,c]);var f=o[d];return f&&l.push(["widget",d,f]),l},[])}(n.changes,t);return u.jsx("tbody",{className:Se("diff-hunk",r),children:s.map(function(i){return function(o,l){var c=q(o,3),d=c[0],f=c[1],p=c[2],g=l.hideGutter,h=l.selectedChanges,m=l.tokens,b=l.lineClassName,y=We(l,td);if(d==="change"){var w=Ne(p)?"old":"new",x=Ne(p)?Tn(p):In(p),v=m?m[w][x-1]:null;return u.jsx(Jc,Z({className:b,change:p,hideGutter:g,selected:h.includes(f),tokens:v},y),"change".concat(f))}return d==="widget"?u.jsx(ed,{hideGutter:g,element:p},"widget".concat(f)):null}(i,a)})})}var Ti=0;function Xt(e,n,t,r){var a=S.useCallback(function(){return n(e)},[e,n]),s=S.useCallback(function(){return n("")},[n]);return S.useMemo(function(){var i=Ni(r,function(o){return function(l){return o&&o({side:e,change:t},l)}});return i.onMouseEnter=pn(a,i.onMouseEnter),i.onMouseLeave=pn(s,i.onMouseLeave),i},[t,r,a,e,s])}function Kn(e){var n=e.change,t=e.side,r=e.selected,a=e.tokens,s=e.gutterClassName,i=e.codeClassName,o=e.gutterEvents,l=e.codeEvents,c=e.anchorID,d=e.gutterAnchor,f=e.gutterAnchorTarget,p=e.hideGutter,g=e.hover,h=e.renderToken,m=e.renderGutter;if(!n){var b=Se("diff-gutter","diff-gutter-omit",s),y=Se("diff-code","diff-code-omit",i);return[!p&&u.jsx("td",{className:b},"gutter"),u.jsx("td",{className:y},"code")]}var w=n.type,x=n.content,v=Te(n),N=t===Ti?"old":"new",E=Z({id:c||void 0,className:Se("diff-gutter","diff-gutter-".concat(w),Qn({"diff-gutter-selected":r},"diff-line-hover-"+N,g),s),children:m({change:n,side:N,inHoverState:g,renderDefault:Ai(n,N),wrapInAnchor:Ci(d,f)})},o),C=Se("diff-code","diff-code-".concat(w),Qn({"diff-code-selected":r},"diff-line-hover-"+N,g),i);return[!p&&u.jsx("td",Z(Z({},E),{},{"data-change-key":v}),"gutter"),u.jsx(ki,Z({className:C,changeKey:v,text:x,tokens:a,renderToken:h},l),"code")]}function ad(e){var n=e.className,t=e.oldChange,r=e.newChange,a=e.oldSelected,s=e.newSelected,i=e.oldTokens,o=e.newTokens,l=e.monotonous,c=e.gutterClassName,d=e.codeClassName,f=e.gutterEvents,p=e.codeEvents,g=e.hideGutter,h=e.generateAnchorID,m=e.generateLineClassName,b=e.gutterAnchor,y=e.renderToken,w=e.renderGutter,x=q(S.useState(""),2),v=x[0],N=x[1],E=Xt("old",N,t,f),C=Xt("new",N,r,f),A=Xt("old",N,t,p),O=Xt("new",N,r,p),I=t&&h(t),j=r&&h(r),D=m({changes:[t,r],defaultGenerate:function(){return n}}),R={monotonous:l,hideGutter:g,gutterClassName:c,codeClassName:d,gutterEvents:f,codeEvents:p,renderToken:y,renderGutter:w},M=Z(Z({},R),{},{change:t,side:Ti,selected:a,tokens:i,gutterEvents:E,codeEvents:A,anchorID:I,gutterAnchor:b,gutterAnchorTarget:I,hover:v==="old"}),H=Z(Z({},R),{},{change:r,side:1,selected:s,tokens:o,gutterEvents:C,codeEvents:O,anchorID:t===r?null:j,gutterAnchor:b,gutterAnchorTarget:t===r?I:j,hover:v==="new"});if(l)return u.jsx("tr",{className:Se("diff-line",D),children:Kn(t?M:H)});var W=function(X,k){return X&&!k?"diff-line-old-only":!X&&k?"diff-line-new-only":X===k?"diff-line-normal":"diff-line-compare"}(t,r);return u.jsxs("tr",{className:Se("diff-line",W,D),children:[Kn(M),Kn(H)]})}var sd=S.memo(ad);function id(e){var n=e.hideGutter,t=e.oldElement,r=e.newElement;return e.monotonous?u.jsx("tr",{className:"diff-widget",children:u.jsx("td",{colSpan:n?1:2,className:"diff-widget-content",children:t||r})}):t===r?u.jsx("tr",{className:"diff-widget",children:u.jsx("td",{colSpan:n?2:4,className:"diff-widget-content",children:t})}):u.jsxs("tr",{className:"diff-widget",children:[u.jsx("td",{colSpan:n?1:2,className:"diff-widget-content",children:t}),u.jsx("td",{colSpan:n?1:2,className:"diff-widget-content",children:r})]})}var od=["selectedChanges","monotonous","hideGutter","tokens","lineClassName"],ld=["hunk","widgets","className"];function Zt(e,n){return(e?Te(e):"00")+(n?Te(n):"00")}function ud(e){var n=e.hunk,t=e.widgets,r=e.className,a=We(e,ld),s=function(i,o){for(var l=function(y){if(!y)return null;var w=Te(y);return o[w]||null},c=[],d=0;d<i.length;d++){var f=i[d];if(Ge(f))c.push(["change",Zt(f,f),f,f]);else if(Ne(f)){var p=i[d+1];p&&Xe(p)?(d+=1,c.push(["change",Zt(f,p),f,p])):c.push(["change",Zt(f,null),f,null])}else c.push(["change",Zt(null,f),null,f]);var g=c[c.length-1],h=l(g[2]),m=l(g[3]);if(h||m){var b=g[1];c.push(["widget",b,h,m])}}return c}(n.changes,t);return u.jsx("tbody",{className:Se("diff-hunk",r),children:s.map(function(i){return function(o,l){var c=q(o,4),d=c[0],f=c[1],p=c[2],g=c[3],h=l.selectedChanges,m=l.monotonous,b=l.hideGutter,y=l.tokens,w=l.lineClassName,x=We(l,od);if(d==="change"){var v=!!p&&h.includes(Te(p)),N=!!g&&h.includes(Te(g)),E=p&&y?y.old[Tn(p)-1]:null,C=g&&y?y.new[In(g)-1]:null;return u.jsx(sd,Z({className:w,oldChange:p,newChange:g,monotonous:m,hideGutter:b,oldSelected:v,newSelected:N,oldTokens:E,newTokens:C},x),"change".concat(f))}return d==="widget"?u.jsx(id,{monotonous:m,hideGutter:b,oldElement:p,newElement:g},"widget".concat(f)):null}(i,a)})})}var cd=["gutterType","hunkClassName"];function Ii(e){var n=e.hunk,t=Ul(),r=t.gutterType,a=t.hunkClassName,s=We(t,cd),i=r==="none",o=r==="anchor",l=s.viewType==="unified"?rd:ud;return u.jsx(l,Z(Z({},s),{},{hunk:n,hideGutter:i,gutterAnchor:o,className:a}))}function dd(){}function Xa(e,n){var t=n?"auto":"none";e instanceof HTMLElement&&e.style.userSelect!==t&&(e.style.userSelect=t)}function fd(e){return e.map(function(n){return u.jsx(Ii,{hunk:n},function(t){return"-".concat(t.oldStart,",").concat(t.oldLines," +").concat(t.newStart,",").concat(t.newLines)}(n))})}function pd(e){var n=e.diffType,t=e.hunks,r=e.optimizeSelection,a=e.className,s=e.hunkClassName,i=s===void 0?be.hunkClassName:s,o=e.lineClassName,l=o===void 0?be.lineClassName:o,c=e.generateLineClassName,d=c===void 0?be.generateLineClassName:c,f=e.gutterClassName,p=f===void 0?be.gutterClassName:f,g=e.codeClassName,h=g===void 0?be.codeClassName:g,m=e.gutterType,b=m===void 0?be.gutterType:m,y=e.viewType,w=y===void 0?be.viewType:y,x=e.gutterEvents,v=x===void 0?be.gutterEvents:x,N=e.codeEvents,E=N===void 0?be.codeEvents:N,C=e.generateAnchorID,A=C===void 0?be.generateAnchorID:C,O=e.selectedChanges,I=O===void 0?be.selectedChanges:O,j=e.widgets,D=j===void 0?be.widgets:j,R=e.renderGutter,M=R===void 0?be.renderGutter:R,H=e.tokens,W=e.renderToken,X=e.children,k=X===void 0?fd:X,U=S.useRef(null),P=S.useCallback(function(le){var He=le.target;if(le.button===0){var Me=function(Qe,L){for(var z=Qe;z&&z!==document.documentElement&&!z.classList.contains(L);)z=z.parentElement;return z===document.documentElement?null:z}(He,"diff-code");if(Me&&Me.parentElement){var kt=window.getSelection();kt&&kt.removeAllRanges();var lt=Ee(Me.parentElement.children).indexOf(Me);if(lt===1||lt===3){var Kt,Ze=Ar(U.current?U.current.querySelectorAll(".diff-line"):[]);try{for(Ze.s();!(Kt=Ze.n()).done;){var At=Kt.value.children;Xa(At[1],lt===1),Xa(At[3],lt===3)}}catch(Qe){Ze.e(Qe)}finally{Ze.f()}}}}},[]),T=b==="none",G=n==="add"||n==="delete",oe=w==="split"&&!G&&r?P:dd,Q=S.useMemo(function(){return u.jsxs("colgroup",w==="unified"?{children:[!T&&u.jsx("col",{className:"diff-gutter-col"}),!T&&u.jsx("col",{className:"diff-gutter-col"}),u.jsx("col",{})]}:G?{children:[!T&&u.jsx("col",{className:"diff-gutter-col"}),u.jsx("col",{})]}:{children:[!T&&u.jsx("col",{className:"diff-gutter-col"}),u.jsx("col",{}),!T&&u.jsx("col",{className:"diff-gutter-col"}),u.jsx("col",{})]})},[w,G,T]),B=S.useMemo(function(){return{hunkClassName:i,lineClassName:l,generateLineClassName:d,gutterClassName:p,codeClassName:h,monotonous:G,hideGutter:T,viewType:w,gutterType:b,codeEvents:E,gutterEvents:v,generateAnchorID:A,selectedChanges:I,widgets:D,renderGutter:M,tokens:H,renderToken:W}},[h,E,A,p,v,b,T,i,l,d,G,M,W,I,H,w,D]);return u.jsx(Gl,{value:B,children:u.jsxs("table",{ref:U,className:Se("diff","diff-".concat(w),a),onMouseDown:oe,children:[Q,k(t)]})})}var gd=S.memo(pd),hd=function(e,n,t,r){for(var a=-1,s=e==null?0:e.length;++a<s;){var i=e[a];n(r,i,t(i),e)}return r},md=function(e,n){return function(t,r){if(t==null)return t;if(!En(t))return e(t,r);for(var a=t.length,s=-1,i=Object(t);++s<a&&r(i[s],s,i)!==!1;);return t}},_i=md(Ei),bd=function(e,n,t,r){return _i(e,function(a,s,i){n(r,a,t(a),i)}),r},ji=function(e,n){return function(t,r){var a=ke(t)?hd:bd,s=n?n():{};return a(t,e,Cn(r),s)}},yd=ji(function(e,n,t){Or(e,t,n)}),Za=$e?$e.isConcatSpreadable:void 0,vd=function(e){return ke(e)||Sn(e)||!!(Za&&e&&e[Za])},Ri=function(n,t,r,a,s){var i=-1,o=n.length;for(r||(r=vd),s||(s=[]);++i<o;){var l=n[i];r(l)?pi(s,l):s[s.length]=l}return s},wd=function(e,n){var t=-1,r=En(e)?Array(e.length):[];return _i(e,function(a,s,i){r[++t]=n(a,s,i)}),r},xd=function(e,n){return(ke(e)?wi:wd)(e,Cn(n))},Lr=function(e,n){return Ri(xd(e,n))};function Sd(e,n){var t=n.newStart,r=n.changes.reduce(function(a,s){var i=q(a,2),o=i[0],l=i[1];return Ne(s)?(o.splice(l,1),[o,l]):(Xe(s)&&o.splice(l,0,s.content),[o,l+1])},[e,t-1]);return q(r,1)[0]}function Qa(e,n,t){if(!e.length)return[];var r=n==="old"?Tn:In,a=yd(e,r),s=r(e[e.length-1]);return Array.from({length:s}).map(function(i,o){return t(a[o+1])})}function Ed(e){var n=function(i){return Lr(i,function(o){return o.changes}).reduce(function(o,l){var c=q(o,2),d=c[0],f=c[1];return Ge(l)?(d.push(l),f.push(l)):Ne(l)?d.push(l):f.push(l),[d,f]},[[],[]])}(e),t=q(n,2),r=t[0],a=t[1],s=function(i){return i?i.content:""};return[Qa(r,"old",s).join(`
53
- `),Qa(a,"new",s).join(`
54
- `)]}function Qt(e){return{type:"root",children:e}}function Nd(e,n){if(n.oldSource){var t=function(l,c){return c.reduce(Sd,l.split(`
55
- `)).join(`
56
- `)}(n.oldSource,e),r=n.highlight?function(l){return n.refractor.highlight(l,n.language)}:function(l){return[{type:"text",value:l}]};return[Qt(r(n.oldSource)),Qt(r(t))]}var a=q(Ed(e),2),s=a[0],i=a[1],o=n.highlight?function(l){return Qt(n.refractor.highlight(l,n.language))}:function(l){return Qt([{type:"text",value:l}])};return[o(s),o(i)]}function ht(e){return e.map(function(n){return Z({},n)})}function kd(e,n){return[].concat(Ee(ht(e.slice(0,-1))),[n])}function Dr(e){var n=e[e.length-1];if(n.type==="text")return n;throw new Error("Invalid token path with leaf of type ".concat(n.type))}function Ad(e,n,t,r){var a=e.slice(0,-1),s=Dr(e),i=[];if(t<=0||n>=(s==null?void 0:s.value.length))return[e];var o=function(f,p){var g=s.value.slice(f,p);return[].concat(Ee(a),[Z(Z({},s),{},{value:g})])};if(n>0){var l=o(0,n);i.push(ht(l))}var c=o(Math.max(n,0),t);if(i.push(r?function(f,p){return[p].concat(Ee(ht(f)))}(c,r):ht(c)),t<s.value.length){var d=o(t);i.push(ht(d))}return i}var Cd=["children"];function Oi(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[];if(e.children){var r=e.children,a=We(e,Cd);t.push(a);var s,i=Ar(r);try{for(i.s();!(s=i.n()).done;)Oi(s.value,n,t)}catch(o){i.e(o)}finally{i.f()}t.pop()}else n.push(ht([].concat(Ee(t.slice(1)),[e])));return n}function Td(e){return e.reduce(function(n,t){var r=n[n.length-1],a=function(l){var c=Dr(l);return c.value.includes(`
57
- `)?c.value.split(`
58
- `).map(function(d){return kd(l,Z(Z({},c),{},{value:d}))}):[l]}(t),s=ti(a),i=s[0],o=s.slice(1);return[].concat(Ee(n.slice(0,-1)),[[].concat(Ee(r),[i])],Ee(o.map(function(l){return[l]})))},[[]])}function Ja(e){return Td(Oi(e))}var Id=function(e,n,t){var r=(t=typeof t=="function"?t:void 0)?t(e,n):void 0;return r===void 0?Nn(e,n,void 0,t):!!r},_d=function(e,n){return Nn(e,n)},jd=function(e){var n=e==null?0:e.length;return n?e[n-1]:void 0};function Rd(e,n){if(!e.children)throw new Error("parent node missing children property");var t,r,a=jd(e.children);return a&&(r=n,(t=a).type===r.type&&(t.type==="text"||t.children&&r.children&&Id(t,r,function(s,i,o){return o==="chlidren"||_d(s,i)})))?e.children[e.children.length-1]=function(s,i){return"value"in s&&"value"in i?Z(Z({},s),{},{value:"".concat(s.value).concat(i.value)}):s}(a,n):e.children.push(n),e.children[e.children.length-1]}function es(e){var n,t={type:"root",children:[]},r=Ar(e);try{var a=function(){var s=n.value;s.reduce(function(i,o,l){return Rd(i,l===s.length-1?Z({},o):Z(Z({},o),{},{children:[]}))},t)};for(r.s();!(n=r.n()).done;)a()}catch(s){r.e(s)}finally{r.f()}return t}var Od=Object.prototype.hasOwnProperty,Ld=ji(function(e,n,t){Od.call(e,t)?e[t].push(n):Or(e,t,[n])}),Dd=Object.prototype.hasOwnProperty,Md=function(e){if(e==null)return!0;if(En(e)&&(ke(e)||typeof e=="string"||typeof e.splice=="function"||fn(e)||Ir(e)||Sn(e)))return!e.length;var n=sr(e);if(n=="[object Map]"||n=="[object Set]")return!e.size;if(mi(e))return!bi(e).length;for(var t in e)if(Dd.call(e,t))return!1;return!0},$d=function(e,n){var t=n.start,r=n.length,a=t+r,s=e.reduce(function(i,o){var l=q(i,2),c=l[0],d=l[1],f=d+Dr(o).value.length;if(d>a||f<t)c.push(o);else{var p=Ad(o,t-d,a-d,n);c.push.apply(c,Ee(p))}return[c,f]},[[],0]);return q(s,1)[0]};function ts(e,n){var t=Ld(n,"lineNumber");return e.map(function(r,a){return function(s,i){return Md(i)?s:i.reduce($d,s)}(r,t[a+1])})}function Fd(e,n){return function(t){var r=q(t,2),a=r[0],s=r[1];return[ts(a,e),ts(s,n)]}}var ns=function(e){return e!=null&&e.length?Ri(e):[]},Pd=Math.max,rs=function(e,n,t){var r=e==null?0:e.length;if(!r)return-1;var a=t==null?0:Wc(t);return a<0&&(a=Pd(r+a,0)),Xl(e,Cn(n),a)},_n=Bt(function(e){var n=function(){this.Diff_Timeout=1,this.Diff_EditCost=4,this.Match_Threshold=.5,this.Match_Distance=1e3,this.Patch_DeleteThreshold=.5,this.Patch_Margin=4,this.Match_MaxBits=32};n.Diff=function(t,r){return[t,r]},n.prototype.diff_main=function(t,r,a,s){s===void 0&&(s=this.Diff_Timeout<=0?Number.MAX_VALUE:new Date().getTime()+1e3*this.Diff_Timeout);var i=s;if(t==null||r==null)throw new Error("Null input. (diff_main)");if(t==r)return t?[new n.Diff(0,t)]:[];a===void 0&&(a=!0);var o=a,l=this.diff_commonPrefix(t,r),c=t.substring(0,l);t=t.substring(l),r=r.substring(l),l=this.diff_commonSuffix(t,r);var d=t.substring(t.length-l);t=t.substring(0,t.length-l),r=r.substring(0,r.length-l);var f=this.diff_compute_(t,r,o,i);return c&&f.unshift(new n.Diff(0,c)),d&&f.push(new n.Diff(0,d)),this.diff_cleanupMerge(f),f},n.prototype.diff_compute_=function(t,r,a,s){var i;if(!t)return[new n.Diff(1,r)];if(!r)return[new n.Diff(-1,t)];var o=t.length>r.length?t:r,l=t.length>r.length?r:t,c=o.indexOf(l);if(c!=-1)return i=[new n.Diff(1,o.substring(0,c)),new n.Diff(0,l),new n.Diff(1,o.substring(c+l.length))],t.length>r.length&&(i[0][0]=i[2][0]=-1),i;if(l.length==1)return[new n.Diff(-1,t),new n.Diff(1,r)];var d=this.diff_halfMatch_(t,r);if(d){var f=d[0],p=d[1],g=d[2],h=d[3],m=d[4],b=this.diff_main(f,g,a,s),y=this.diff_main(p,h,a,s);return b.concat([new n.Diff(0,m)],y)}return a&&t.length>100&&r.length>100?this.diff_lineMode_(t,r,s):this.diff_bisect_(t,r,s)},n.prototype.diff_lineMode_=function(t,r,a){var s=this.diff_linesToChars_(t,r);t=s.chars1,r=s.chars2;var i=s.lineArray,o=this.diff_main(t,r,!1,a);this.diff_charsToLines_(o,i),this.diff_cleanupSemantic(o),o.push(new n.Diff(0,""));for(var l=0,c=0,d=0,f="",p="";l<o.length;){switch(o[l][0]){case 1:d++,p+=o[l][1];break;case-1:c++,f+=o[l][1];break;case 0:if(c>=1&&d>=1){o.splice(l-c-d,c+d),l=l-c-d;for(var g=this.diff_main(f,p,!1,a),h=g.length-1;h>=0;h--)o.splice(l,0,g[h]);l+=g.length}d=0,c=0,f="",p=""}l++}return o.pop(),o},n.prototype.diff_bisect_=function(t,r,a){for(var s=t.length,i=r.length,o=Math.ceil((s+i)/2),l=o,c=2*o,d=new Array(c),f=new Array(c),p=0;p<c;p++)d[p]=-1,f[p]=-1;d[l+1]=0,f[l+1]=0;for(var g=s-i,h=g%2!=0,m=0,b=0,y=0,w=0,x=0;x<o&&!(new Date().getTime()>a);x++){for(var v=-x+m;v<=x-b;v+=2){for(var N=l+v,E=(j=v==-x||v!=x&&d[N-1]<d[N+1]?d[N+1]:d[N-1]+1)-v;j<s&&E<i&&t.charAt(j)==r.charAt(E);)j++,E++;if(d[N]=j,j>s)b+=2;else if(E>i)m+=2;else if(h&&(O=l+g-v)>=0&&O<c&&f[O]!=-1&&j>=(A=s-f[O]))return this.diff_bisectSplit_(t,r,j,E,a)}for(var C=-x+y;C<=x-w;C+=2){for(var A,O=l+C,I=(A=C==-x||C!=x&&f[O-1]<f[O+1]?f[O+1]:f[O-1]+1)-C;A<s&&I<i&&t.charAt(s-A-1)==r.charAt(i-I-1);)A++,I++;if(f[O]=A,A>s)w+=2;else if(I>i)y+=2;else if(!h&&(N=l+g-C)>=0&&N<c&&d[N]!=-1){var j;if(E=l+(j=d[N])-N,j>=(A=s-A))return this.diff_bisectSplit_(t,r,j,E,a)}}}return[new n.Diff(-1,t),new n.Diff(1,r)]},n.prototype.diff_bisectSplit_=function(t,r,a,s,i){var o=t.substring(0,a),l=r.substring(0,s),c=t.substring(a),d=r.substring(s),f=this.diff_main(o,l,!1,i),p=this.diff_main(c,d,!1,i);return f.concat(p)},n.prototype.diff_linesToChars_=function(t,r){var a=[],s={};function i(c){for(var d="",f=0,p=-1,g=a.length;p<c.length-1;){(p=c.indexOf(`
59
- `,f))==-1&&(p=c.length-1);var h=c.substring(f,p+1);(s.hasOwnProperty?s.hasOwnProperty(h):s[h]!==void 0)?d+=String.fromCharCode(s[h]):(g==o&&(h=c.substring(f),p=c.length),d+=String.fromCharCode(g),s[h]=g,a[g++]=h),f=p+1}return d}a[0]="";var o=4e4,l=i(t);return o=65535,{chars1:l,chars2:i(r),lineArray:a}},n.prototype.diff_charsToLines_=function(t,r){for(var a=0;a<t.length;a++){for(var s=t[a][1],i=[],o=0;o<s.length;o++)i[o]=r[s.charCodeAt(o)];t[a][1]=i.join("")}},n.prototype.diff_commonPrefix=function(t,r){if(!t||!r||t.charAt(0)!=r.charAt(0))return 0;for(var a=0,s=Math.min(t.length,r.length),i=s,o=0;a<i;)t.substring(o,i)==r.substring(o,i)?o=a=i:s=i,i=Math.floor((s-a)/2+a);return i},n.prototype.diff_commonSuffix=function(t,r){if(!t||!r||t.charAt(t.length-1)!=r.charAt(r.length-1))return 0;for(var a=0,s=Math.min(t.length,r.length),i=s,o=0;a<i;)t.substring(t.length-i,t.length-o)==r.substring(r.length-i,r.length-o)?o=a=i:s=i,i=Math.floor((s-a)/2+a);return i},n.prototype.diff_commonOverlap_=function(t,r){var a=t.length,s=r.length;if(a==0||s==0)return 0;a>s?t=t.substring(a-s):a<s&&(r=r.substring(0,a));var i=Math.min(a,s);if(t==r)return i;for(var o=0,l=1;;){var c=t.substring(i-l),d=r.indexOf(c);if(d==-1)return o;l+=d,d!=0&&t.substring(i-l)!=r.substring(0,l)||(o=l,l++)}},n.prototype.diff_halfMatch_=function(t,r){if(this.Diff_Timeout<=0)return null;var a=t.length>r.length?t:r,s=t.length>r.length?r:t;if(a.length<4||2*s.length<a.length)return null;var i=this;function o(m,b,y){for(var w,x,v,N,E=m.substring(y,y+Math.floor(m.length/4)),C=-1,A="";(C=b.indexOf(E,C+1))!=-1;){var O=i.diff_commonPrefix(m.substring(y),b.substring(C)),I=i.diff_commonSuffix(m.substring(0,y),b.substring(0,C));A.length<I+O&&(A=b.substring(C-I,C)+b.substring(C,C+O),w=m.substring(0,y-I),x=m.substring(y+O),v=b.substring(0,C-I),N=b.substring(C+O))}return 2*A.length>=m.length?[w,x,v,N,A]:null}var l,c,d,f,p,g=o(a,s,Math.ceil(a.length/4)),h=o(a,s,Math.ceil(a.length/2));return g||h?(l=h?g&&g[4].length>h[4].length?g:h:g,t.length>r.length?(c=l[0],d=l[1],f=l[2],p=l[3]):(f=l[0],p=l[1],c=l[2],d=l[3]),[c,d,f,p,l[4]]):null},n.prototype.diff_cleanupSemantic=function(t){for(var r=!1,a=[],s=0,i=null,o=0,l=0,c=0,d=0,f=0;o<t.length;)t[o][0]==0?(a[s++]=o,l=d,c=f,d=0,f=0,i=t[o][1]):(t[o][0]==1?d+=t[o][1].length:f+=t[o][1].length,i&&i.length<=Math.max(l,c)&&i.length<=Math.max(d,f)&&(t.splice(a[s-1],0,new n.Diff(-1,i)),t[a[s-1]+1][0]=1,s--,o=--s>0?a[s-1]:-1,l=0,c=0,d=0,f=0,i=null,r=!0)),o++;for(r&&this.diff_cleanupMerge(t),this.diff_cleanupSemanticLossless(t),o=1;o<t.length;){if(t[o-1][0]==-1&&t[o][0]==1){var p=t[o-1][1],g=t[o][1],h=this.diff_commonOverlap_(p,g),m=this.diff_commonOverlap_(g,p);h>=m?(h>=p.length/2||h>=g.length/2)&&(t.splice(o,0,new n.Diff(0,g.substring(0,h))),t[o-1][1]=p.substring(0,p.length-h),t[o+1][1]=g.substring(h),o++):(m>=p.length/2||m>=g.length/2)&&(t.splice(o,0,new n.Diff(0,p.substring(0,m))),t[o-1][0]=1,t[o-1][1]=g.substring(0,g.length-m),t[o+1][0]=-1,t[o+1][1]=p.substring(m),o++),o++}o++}},n.prototype.diff_cleanupSemanticLossless=function(t){function r(m,b){if(!m||!b)return 6;var y=m.charAt(m.length-1),w=b.charAt(0),x=y.match(n.nonAlphaNumericRegex_),v=w.match(n.nonAlphaNumericRegex_),N=x&&y.match(n.whitespaceRegex_),E=v&&w.match(n.whitespaceRegex_),C=N&&y.match(n.linebreakRegex_),A=E&&w.match(n.linebreakRegex_),O=C&&m.match(n.blanklineEndRegex_),I=A&&b.match(n.blanklineStartRegex_);return O||I?5:C||A?4:x&&!N&&E?3:N||E?2:x||v?1:0}for(var a=1;a<t.length-1;){if(t[a-1][0]==0&&t[a+1][0]==0){var s=t[a-1][1],i=t[a][1],o=t[a+1][1],l=this.diff_commonSuffix(s,i);if(l){var c=i.substring(i.length-l);s=s.substring(0,s.length-l),i=c+i.substring(0,i.length-l),o=c+o}for(var d=s,f=i,p=o,g=r(s,i)+r(i,o);i.charAt(0)===o.charAt(0);){s+=i.charAt(0),i=i.substring(1)+o.charAt(0),o=o.substring(1);var h=r(s,i)+r(i,o);h>=g&&(g=h,d=s,f=i,p=o)}t[a-1][1]!=d&&(d?t[a-1][1]=d:(t.splice(a-1,1),a--),t[a][1]=f,p?t[a+1][1]=p:(t.splice(a+1,1),a--))}a++}},n.nonAlphaNumericRegex_=/[^a-zA-Z0-9]/,n.whitespaceRegex_=/\s/,n.linebreakRegex_=/[\r\n]/,n.blanklineEndRegex_=/\n\r?\n$/,n.blanklineStartRegex_=/^\r?\n\r?\n/,n.prototype.diff_cleanupEfficiency=function(t){for(var r=!1,a=[],s=0,i=null,o=0,l=!1,c=!1,d=!1,f=!1;o<t.length;)t[o][0]==0?(t[o][1].length<this.Diff_EditCost&&(d||f)?(a[s++]=o,l=d,c=f,i=t[o][1]):(s=0,i=null),d=f=!1):(t[o][0]==-1?f=!0:d=!0,i&&(l&&c&&d&&f||i.length<this.Diff_EditCost/2&&l+c+d+f==3)&&(t.splice(a[s-1],0,new n.Diff(-1,i)),t[a[s-1]+1][0]=1,s--,i=null,l&&c?(d=f=!0,s=0):(o=--s>0?a[s-1]:-1,d=f=!1),r=!0)),o++;r&&this.diff_cleanupMerge(t)},n.prototype.diff_cleanupMerge=function(t){t.push(new n.Diff(0,""));for(var r,a=0,s=0,i=0,o="",l="";a<t.length;)switch(t[a][0]){case 1:i++,l+=t[a][1],a++;break;case-1:s++,o+=t[a][1],a++;break;case 0:s+i>1?(s!==0&&i!==0&&((r=this.diff_commonPrefix(l,o))!==0&&(a-s-i>0&&t[a-s-i-1][0]==0?t[a-s-i-1][1]+=l.substring(0,r):(t.splice(0,0,new n.Diff(0,l.substring(0,r))),a++),l=l.substring(r),o=o.substring(r)),(r=this.diff_commonSuffix(l,o))!==0&&(t[a][1]=l.substring(l.length-r)+t[a][1],l=l.substring(0,l.length-r),o=o.substring(0,o.length-r))),a-=s+i,t.splice(a,s+i),o.length&&(t.splice(a,0,new n.Diff(-1,o)),a++),l.length&&(t.splice(a,0,new n.Diff(1,l)),a++),a++):a!==0&&t[a-1][0]==0?(t[a-1][1]+=t[a][1],t.splice(a,1)):a++,i=0,s=0,o="",l=""}t[t.length-1][1]===""&&t.pop();var c=!1;for(a=1;a<t.length-1;)t[a-1][0]==0&&t[a+1][0]==0&&(t[a][1].substring(t[a][1].length-t[a-1][1].length)==t[a-1][1]?(t[a][1]=t[a-1][1]+t[a][1].substring(0,t[a][1].length-t[a-1][1].length),t[a+1][1]=t[a-1][1]+t[a+1][1],t.splice(a-1,1),c=!0):t[a][1].substring(0,t[a+1][1].length)==t[a+1][1]&&(t[a-1][1]+=t[a+1][1],t[a][1]=t[a][1].substring(t[a+1][1].length)+t[a+1][1],t.splice(a+1,1),c=!0)),a++;c&&this.diff_cleanupMerge(t)},n.prototype.diff_xIndex=function(t,r){var a,s=0,i=0,o=0,l=0;for(a=0;a<t.length&&(t[a][0]!==1&&(s+=t[a][1].length),t[a][0]!==-1&&(i+=t[a][1].length),!(s>r));a++)o=s,l=i;return t.length!=a&&t[a][0]===-1?l:l+(r-o)},n.prototype.diff_prettyHtml=function(t){for(var r=[],a=/&/g,s=/</g,i=/>/g,o=/\n/g,l=0;l<t.length;l++){var c=t[l][0],d=t[l][1].replace(a,"&amp;").replace(s,"&lt;").replace(i,"&gt;").replace(o,"&para;<br>");switch(c){case 1:r[l]='<ins style="background:#e6ffe6;">'+d+"</ins>";break;case-1:r[l]='<del style="background:#ffe6e6;">'+d+"</del>";break;case 0:r[l]="<span>"+d+"</span>"}}return r.join("")},n.prototype.diff_text1=function(t){for(var r=[],a=0;a<t.length;a++)t[a][0]!==1&&(r[a]=t[a][1]);return r.join("")},n.prototype.diff_text2=function(t){for(var r=[],a=0;a<t.length;a++)t[a][0]!==-1&&(r[a]=t[a][1]);return r.join("")},n.prototype.diff_levenshtein=function(t){for(var r=0,a=0,s=0,i=0;i<t.length;i++){var o=t[i][0],l=t[i][1];switch(o){case 1:a+=l.length;break;case-1:s+=l.length;break;case 0:r+=Math.max(a,s),a=0,s=0}}return r+=Math.max(a,s)},n.prototype.diff_toDelta=function(t){for(var r=[],a=0;a<t.length;a++)switch(t[a][0]){case 1:r[a]="+"+encodeURI(t[a][1]);break;case-1:r[a]="-"+t[a][1].length;break;case 0:r[a]="="+t[a][1].length}return r.join(" ").replace(/%20/g," ")},n.prototype.diff_fromDelta=function(t,r){for(var a=[],s=0,i=0,o=r.split(/\t/g),l=0;l<o.length;l++){var c=o[l].substring(1);switch(o[l].charAt(0)){case"+":try{a[s++]=new n.Diff(1,decodeURI(c))}catch{throw new Error("Illegal escape in diff_fromDelta: "+c)}break;case"-":case"=":var d=parseInt(c,10);if(isNaN(d)||d<0)throw new Error("Invalid number in diff_fromDelta: "+c);var f=t.substring(i,i+=d);o[l].charAt(0)=="="?a[s++]=new n.Diff(0,f):a[s++]=new n.Diff(-1,f);break;default:if(o[l])throw new Error("Invalid diff operation in diff_fromDelta: "+o[l])}}if(i!=t.length)throw new Error("Delta length ("+i+") does not equal source text length ("+t.length+").");return a},n.prototype.match_main=function(t,r,a){if(t==null||r==null||a==null)throw new Error("Null input. (match_main)");return a=Math.max(0,Math.min(a,t.length)),t==r?0:t.length?t.substring(a,a+r.length)==r?a:this.match_bitap_(t,r,a):-1},n.prototype.match_bitap_=function(t,r,a){if(r.length>this.Match_MaxBits)throw new Error("Pattern too long for this browser.");var s=this.match_alphabet_(r),i=this;function o(E,C){var A=E/r.length,O=Math.abs(a-C);return i.Match_Distance?A+O/i.Match_Distance:O?1:A}var l=this.Match_Threshold,c=t.indexOf(r,a);c!=-1&&(l=Math.min(o(0,c),l),(c=t.lastIndexOf(r,a+r.length))!=-1&&(l=Math.min(o(0,c),l)));var d,f,p=1<<r.length-1;c=-1;for(var g,h=r.length+t.length,m=0;m<r.length;m++){for(d=0,f=h;d<f;)o(m,a+f)<=l?d=f:h=f,f=Math.floor((h-d)/2+d);h=f;var b=Math.max(1,a-f+1),y=Math.min(a+f,t.length)+r.length,w=Array(y+2);w[y+1]=(1<<m)-1;for(var x=y;x>=b;x--){var v=s[t.charAt(x-1)];if(w[x]=m===0?(w[x+1]<<1|1)&v:(w[x+1]<<1|1)&v|(g[x+1]|g[x])<<1|1|g[x+1],w[x]&p){var N=o(m,x-1);if(N<=l){if(l=N,!((c=x-1)>a))break;b=Math.max(1,2*a-c)}}}if(o(m+1,a)>l)break;g=w}return c},n.prototype.match_alphabet_=function(t){for(var r={},a=0;a<t.length;a++)r[t.charAt(a)]=0;for(a=0;a<t.length;a++)r[t.charAt(a)]|=1<<t.length-a-1;return r},n.prototype.patch_addContext_=function(t,r){if(r.length!=0){if(t.start2===null)throw Error("patch not initialized");for(var a=r.substring(t.start2,t.start2+t.length1),s=0;r.indexOf(a)!=r.lastIndexOf(a)&&a.length<this.Match_MaxBits-this.Patch_Margin-this.Patch_Margin;)s+=this.Patch_Margin,a=r.substring(t.start2-s,t.start2+t.length1+s);s+=this.Patch_Margin;var i=r.substring(t.start2-s,t.start2);i&&t.diffs.unshift(new n.Diff(0,i));var o=r.substring(t.start2+t.length1,t.start2+t.length1+s);o&&t.diffs.push(new n.Diff(0,o)),t.start1-=i.length,t.start2-=i.length,t.length1+=i.length+o.length,t.length2+=i.length+o.length}},n.prototype.patch_make=function(t,r,a){var s,i;if(typeof t=="string"&&typeof r=="string"&&a===void 0)s=t,(i=this.diff_main(s,r,!0)).length>2&&(this.diff_cleanupSemantic(i),this.diff_cleanupEfficiency(i));else if(t&&typeof t=="object"&&r===void 0&&a===void 0)i=t,s=this.diff_text1(i);else if(typeof t=="string"&&r&&typeof r=="object"&&a===void 0)s=t,i=r;else{if(typeof t!="string"||typeof r!="string"||!a||typeof a!="object")throw new Error("Unknown call format to patch_make.");s=t,i=a}if(i.length===0)return[];for(var o=[],l=new n.patch_obj,c=0,d=0,f=0,p=s,g=s,h=0;h<i.length;h++){var m=i[h][0],b=i[h][1];switch(c||m===0||(l.start1=d,l.start2=f),m){case 1:l.diffs[c++]=i[h],l.length2+=b.length,g=g.substring(0,f)+b+g.substring(f);break;case-1:l.length1+=b.length,l.diffs[c++]=i[h],g=g.substring(0,f)+g.substring(f+b.length);break;case 0:b.length<=2*this.Patch_Margin&&c&&i.length!=h+1?(l.diffs[c++]=i[h],l.length1+=b.length,l.length2+=b.length):b.length>=2*this.Patch_Margin&&c&&(this.patch_addContext_(l,p),o.push(l),l=new n.patch_obj,c=0,p=g,d=f)}m!==1&&(d+=b.length),m!==-1&&(f+=b.length)}return c&&(this.patch_addContext_(l,p),o.push(l)),o},n.prototype.patch_deepCopy=function(t){for(var r=[],a=0;a<t.length;a++){var s=t[a],i=new n.patch_obj;i.diffs=[];for(var o=0;o<s.diffs.length;o++)i.diffs[o]=new n.Diff(s.diffs[o][0],s.diffs[o][1]);i.start1=s.start1,i.start2=s.start2,i.length1=s.length1,i.length2=s.length2,r[a]=i}return r},n.prototype.patch_apply=function(t,r){if(t.length==0)return[r,[]];t=this.patch_deepCopy(t);var a=this.patch_addPadding(t);r=a+r+a,this.patch_splitMax(t);for(var s=0,i=[],o=0;o<t.length;o++){var l,c,d=t[o].start2+s,f=this.diff_text1(t[o].diffs),p=-1;if(f.length>this.Match_MaxBits?(l=this.match_main(r,f.substring(0,this.Match_MaxBits),d))!=-1&&((p=this.match_main(r,f.substring(f.length-this.Match_MaxBits),d+f.length-this.Match_MaxBits))==-1||l>=p)&&(l=-1):l=this.match_main(r,f,d),l==-1)i[o]=!1,s-=t[o].length2-t[o].length1;else if(i[o]=!0,s=l-d,f==(c=p==-1?r.substring(l,l+f.length):r.substring(l,p+this.Match_MaxBits)))r=r.substring(0,l)+this.diff_text2(t[o].diffs)+r.substring(l+f.length);else{var g=this.diff_main(f,c,!1);if(f.length>this.Match_MaxBits&&this.diff_levenshtein(g)/f.length>this.Patch_DeleteThreshold)i[o]=!1;else{this.diff_cleanupSemanticLossless(g);for(var h,m=0,b=0;b<t[o].diffs.length;b++){var y=t[o].diffs[b];y[0]!==0&&(h=this.diff_xIndex(g,m)),y[0]===1?r=r.substring(0,l+h)+y[1]+r.substring(l+h):y[0]===-1&&(r=r.substring(0,l+h)+r.substring(l+this.diff_xIndex(g,m+y[1].length))),y[0]!==-1&&(m+=y[1].length)}}}}return[r=r.substring(a.length,r.length-a.length),i]},n.prototype.patch_addPadding=function(t){for(var r=this.Patch_Margin,a="",s=1;s<=r;s++)a+=String.fromCharCode(s);for(s=0;s<t.length;s++)t[s].start1+=r,t[s].start2+=r;var i=t[0],o=i.diffs;if(o.length==0||o[0][0]!=0)o.unshift(new n.Diff(0,a)),i.start1-=r,i.start2-=r,i.length1+=r,i.length2+=r;else if(r>o[0][1].length){var l=r-o[0][1].length;o[0][1]=a.substring(o[0][1].length)+o[0][1],i.start1-=l,i.start2-=l,i.length1+=l,i.length2+=l}return(o=(i=t[t.length-1]).diffs).length==0||o[o.length-1][0]!=0?(o.push(new n.Diff(0,a)),i.length1+=r,i.length2+=r):r>o[o.length-1][1].length&&(l=r-o[o.length-1][1].length,o[o.length-1][1]+=a.substring(0,l),i.length1+=l,i.length2+=l),a},n.prototype.patch_splitMax=function(t){for(var r=this.Match_MaxBits,a=0;a<t.length;a++)if(!(t[a].length1<=r)){var s=t[a];t.splice(a--,1);for(var i=s.start1,o=s.start2,l="";s.diffs.length!==0;){var c=new n.patch_obj,d=!0;for(c.start1=i-l.length,c.start2=o-l.length,l!==""&&(c.length1=c.length2=l.length,c.diffs.push(new n.Diff(0,l)));s.diffs.length!==0&&c.length1<r-this.Patch_Margin;){var f=s.diffs[0][0],p=s.diffs[0][1];f===1?(c.length2+=p.length,o+=p.length,c.diffs.push(s.diffs.shift()),d=!1):f===-1&&c.diffs.length==1&&c.diffs[0][0]==0&&p.length>2*r?(c.length1+=p.length,i+=p.length,d=!1,c.diffs.push(new n.Diff(f,p)),s.diffs.shift()):(p=p.substring(0,r-c.length1-this.Patch_Margin),c.length1+=p.length,i+=p.length,f===0?(c.length2+=p.length,o+=p.length):d=!1,c.diffs.push(new n.Diff(f,p)),p==s.diffs[0][1]?s.diffs.shift():s.diffs[0][1]=s.diffs[0][1].substring(p.length))}l=(l=this.diff_text2(c.diffs)).substring(l.length-this.Patch_Margin);var g=this.diff_text1(s.diffs).substring(0,this.Patch_Margin);g!==""&&(c.length1+=g.length,c.length2+=g.length,c.diffs.length!==0&&c.diffs[c.diffs.length-1][0]===0?c.diffs[c.diffs.length-1][1]+=g:c.diffs.push(new n.Diff(0,g))),d||t.splice(++a,0,c)}}},n.prototype.patch_toText=function(t){for(var r=[],a=0;a<t.length;a++)r[a]=t[a];return r.join("")},n.prototype.patch_fromText=function(t){var r=[];if(!t)return r;for(var a=t.split(`
60
- `),s=0,i=/^@@ -(\d+),?(\d*) \+(\d+),?(\d*) @@$/;s<a.length;){var o=a[s].match(i);if(!o)throw new Error("Invalid patch string: "+a[s]);var l=new n.patch_obj;for(r.push(l),l.start1=parseInt(o[1],10),o[2]===""?(l.start1--,l.length1=1):o[2]=="0"?l.length1=0:(l.start1--,l.length1=parseInt(o[2],10)),l.start2=parseInt(o[3],10),o[4]===""?(l.start2--,l.length2=1):o[4]=="0"?l.length2=0:(l.start2--,l.length2=parseInt(o[4],10)),s++;s<a.length;){var c=a[s].charAt(0);try{var d=decodeURI(a[s].substring(1))}catch{throw new Error("Illegal escape in patch_fromText: "+d)}if(c=="-")l.diffs.push(new n.Diff(-1,d));else if(c=="+")l.diffs.push(new n.Diff(1,d));else if(c==" ")l.diffs.push(new n.Diff(0,d));else{if(c=="@")break;if(c!=="")throw new Error('Invalid patch mode "'+c+'" in: '+d)}s++}}return r},(n.patch_obj=function(){this.diffs=[],this.start1=null,this.start2=null,this.length1=0,this.length2=0}).prototype.toString=function(){for(var t,r=["@@ -"+(this.length1===0?this.start1+",0":this.length1==1?this.start1+1:this.start1+1+","+this.length1)+" +"+(this.length2===0?this.start2+",0":this.length2==1?this.start2+1:this.start2+1+","+this.length2)+` @@
61
- `],a=0;a<this.diffs.length;a++){switch(this.diffs[a][0]){case 1:t="+";break;case-1:t="-";break;case 0:t=" "}r[a+1]=t+encodeURI(this.diffs[a][1])+`
62
- `}return r.join("").replace(/%20/g," ")},e.exports=n,e.exports.diff_match_patch=n,e.exports.DIFF_DELETE=-1,e.exports.DIFF_INSERT=1,e.exports.DIFF_EQUAL=0}),zd=_n.DIFF_EQUAL,Bd=_n.DIFF_DELETE,Gd=_n.DIFF_INSERT;function Li(e){var n=rs(e,function(r){return!Ge(r)});if(n===-1)return[];var t=rs(e,function(r){return!!Ge(r)},n);return t===-1?[e.slice(n)]:[e.slice(n,t)].concat(Ee(Li(e.slice(t))))}function as(e){return e.reduce(function(n,t){var r=q(t,2),a=r[0],s=ti(r[1].split(`
63
- `).map(function(l){return[a,l]})),i=s[0],o=s.slice(1);return[].concat(Ee(n.slice(0,-1)),[[].concat(Ee(n[n.length-1]),[i])],Ee(o.map(function(l){return[l]})))},[[]])}function ir(e,n){return e.reduce(function(t,r){var a=q(t,2),s=a[0],i=a[1],o=q(r,2),l=o[0],c=o[1];if(l!==zd){var d={type:"edit",lineNumber:n,start:i,length:c.length};s.push(d)}return[s,i+c.length]},[[],0])[0]}function ss(e,n){return Lr(e,function(t,r){return ir(t,n+r)})}function Di(e,n){var t=new _n,r=t.diff_main(e,n);return t.diff_cleanupSemantic(r),r.length<=1?[[],[]]:function(a){return a.reduce(function(s,i){var o=q(s,2),l=o[0],c=o[1];switch(q(i,1)[0]){case Gd:c.push(i);break;case Bd:l.push(i);break;default:l.push(i),c.push(i)}return[l,c]},[[],[]])}(r)}function Ud(e){var n=e.reduce(function(c,d){var f=q(c,2),p=f[0],g=f[1];return Ne(d)?[p+(p?`
64
- `:"")+d.content,g]:[p,g+(g?`
65
- `:"")+d.content]},["",""]),t=q(n,2),r=q(Di(t[0],t[1]),2),a=r[0],s=r[1];if(a.length===0&&s.length===0)return[[],[]];var i=function(c){if(c&&!Ge(c))return c.lineNumber},o=i(e.find(Ne)),l=i(e.find(Xe));if(o===void 0||l===void 0)throw new Error("Could not find start line number for edit");return[ss(as(a),o),ss(as(s),l)]}function Hd(e){var n=e.reduce(function(r,a){var s=q(r,3),i=s[0],o=s[1],l=s[2];if(!l||!Ne(l)||!Xe(a))return[i,o,a];var c=q(Di(l.content,a.content),2),d=c[0],f=c[1];return[i.concat(ir(d,l.lineNumber)),o.concat(ir(f,a.lineNumber)),a]},[[],[],null]),t=q(n,2);return[t[0],t[1]]}function Kd(e){var n=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{}).type,t=(n===void 0?"block":n)==="block"?Ud:Hd,r=Lr(e.map(function(o){return o.changes}),Li).map(t).reduce(function(o,l){var c=q(o,2),d=c[0],f=c[1],p=q(l,2),g=p[0],h=p[1];return[d.concat(g),f.concat(h)]},[[],[]]),a=q(r,2),s=a[0],i=a[1];return Fd(ns(s),ns(i))}var Wd=["enhancers"],Vd=function(e){var n,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=t.enhancers,a=r===void 0?[]:r,s=q(Nd(e,We(t,Wd)),2),i=s[0],o=s[1],l=[Ja(i),Ja(o)],c=(n=[l[0],l[1]],a.reduce(function(m,b){return b(m)},n)),d=q(c,2),f=d[0],p=d[1],g=[f.map(es),p.map(es)],h=g[1];return{old:g[0].map(function(m){var b;return(b=m.children)!==null&&b!==void 0?b:[]}),new:h.map(function(m){var b;return(b=m.children)!==null&&b!==void 0?b:[]})}};Fe.displayName="clike";Fe.aliases=[];function Fe(e){e.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/}}Gt.displayName="c";Gt.aliases=[];function Gt(e){e.register(Fe),e.languages.c=e.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),e.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),e.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},e.languages.c.string],char:e.languages.c.char,comment:e.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:e.languages.c}}}}),e.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete e.languages.c.boolean}jn.displayName="cpp";jn.aliases=[];function jn(e){e.register(Gt),function(n){var t=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,r=/\b(?!<keyword>)\w+(?:\s*\.\s*\w+)*\b/.source.replace(/<keyword>/g,function(){return t.source});n.languages.cpp=n.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!<keyword>)\w+/.source.replace(/<keyword>/g,function(){return t.source})),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:t,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),n.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/<mod-name>(?:\s*:\s*<mod-name>)?|:\s*<mod-name>/.source.replace(/<mod-name>/g,function(){return r})+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),n.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:n.languages.cpp}}}}),n.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),n.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:n.languages.extend("cpp",{})}}),n.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},n.languages.cpp["base-clause"])}(e)}Mr.displayName="arduino";Mr.aliases=["ino"];function Mr(e){e.register(jn),e.languages.arduino=e.languages.extend("cpp",{keyword:/\b(?:String|array|bool|boolean|break|byte|case|catch|continue|default|do|double|else|finally|for|function|goto|if|in|instanceof|int|integer|long|loop|new|null|return|setup|string|switch|throw|try|void|while|word)\b/,constant:/\b(?:ANALOG_MESSAGE|DEFAULT|DIGITAL_MESSAGE|EXTERNAL|FIRMATA_STRING|HIGH|INPUT|INPUT_PULLUP|INTERNAL|INTERNAL1V1|INTERNAL2V56|LED_BUILTIN|LOW|OUTPUT|REPORT_ANALOG|REPORT_DIGITAL|SET_PIN_MODE|SYSEX_START|SYSTEM_RESET)\b/,builtin:/\b(?:Audio|BSSID|Bridge|Client|Console|EEPROM|Esplora|EsploraTFT|Ethernet|EthernetClient|EthernetServer|EthernetUDP|File|FileIO|FileSystem|Firmata|GPRS|GSM|GSMBand|GSMClient|GSMModem|GSMPIN|GSMScanner|GSMServer|GSMVoiceCall|GSM_SMS|HttpClient|IPAddress|IRread|Keyboard|KeyboardController|LiquidCrystal|LiquidCrystal_I2C|Mailbox|Mouse|MouseController|PImage|Process|RSSI|RobotControl|RobotMotor|SD|SPI|SSID|Scheduler|Serial|Server|Servo|SoftwareSerial|Stepper|Stream|TFT|Task|USBHost|WiFi|WiFiClient|WiFiServer|WiFiUDP|Wire|YunClient|YunServer|abs|addParameter|analogRead|analogReadResolution|analogReference|analogWrite|analogWriteResolution|answerCall|attach|attachGPRS|attachInterrupt|attached|autoscroll|available|background|beep|begin|beginPacket|beginSD|beginSMS|beginSpeaker|beginTFT|beginTransmission|beginWrite|bit|bitClear|bitRead|bitSet|bitWrite|blink|blinkVersion|buffer|changePIN|checkPIN|checkPUK|checkReg|circle|cityNameRead|cityNameWrite|clear|clearScreen|click|close|compassRead|config|connect|connected|constrain|cos|countryNameRead|countryNameWrite|createChar|cursor|debugPrint|delay|delayMicroseconds|detach|detachInterrupt|digitalRead|digitalWrite|disconnect|display|displayLogos|drawBMP|drawCompass|encryptionType|end|endPacket|endSMS|endTransmission|endWrite|exists|exitValue|fill|find|findUntil|flush|gatewayIP|get|getAsynchronously|getBand|getButton|getCurrentCarrier|getIMEI|getKey|getModifiers|getOemKey|getPINUsed|getResult|getSignalStrength|getSocket|getVoiceCallStatus|getXChange|getYChange|hangCall|height|highByte|home|image|interrupts|isActionDone|isDirectory|isListening|isPIN|isPressed|isValid|keyPressed|keyReleased|keyboardRead|knobRead|leftToRight|line|lineFollowConfig|listen|listenOnLocalhost|loadImage|localIP|lowByte|macAddress|maintain|map|max|messageAvailable|micros|millis|min|mkdir|motorsStop|motorsWrite|mouseDragged|mouseMoved|mousePressed|mouseReleased|move|noAutoscroll|noBlink|noBuffer|noCursor|noDisplay|noFill|noInterrupts|noListenOnLocalhost|noStroke|noTone|onReceive|onRequest|open|openNextFile|overflow|parseCommand|parseFloat|parseInt|parsePacket|pauseMode|peek|pinMode|playFile|playMelody|point|pointTo|position|pow|prepare|press|print|printFirmwareVersion|printVersion|println|process|processInput|pulseIn|put|random|randomSeed|read|readAccelerometer|readBlue|readButton|readBytes|readBytesUntil|readGreen|readJoystickButton|readJoystickSwitch|readJoystickX|readJoystickY|readLightSensor|readMessage|readMicrophone|readNetworks|readRed|readSlider|readString|readStringUntil|readTemperature|ready|rect|release|releaseAll|remoteIP|remoteNumber|remotePort|remove|requestFrom|retrieveCallingNumber|rewindDirectory|rightToLeft|rmdir|robotNameRead|robotNameWrite|run|runAsynchronously|runShellCommand|runShellCommandAsynchronously|running|scanNetworks|scrollDisplayLeft|scrollDisplayRight|seek|sendAnalog|sendDigitalPortPair|sendDigitalPorts|sendString|sendSysex|serialEvent|setBand|setBitOrder|setClockDivider|setCursor|setDNS|setDataMode|setFirmwareVersion|setMode|setPINUsed|setSpeed|setTextSize|setTimeout|shiftIn|shiftOut|shutdown|sin|size|sqrt|startLoop|step|stop|stroke|subnetMask|switchPIN|tan|tempoWrite|text|tone|transfer|tuneWrite|turn|updateIR|userNameRead|userNameWrite|voiceCall|waitContinue|width|write|writeBlue|writeGreen|writeJSON|writeMessage|writeMicroseconds|writeRGB|writeRed|yield)\b/}),e.languages.ino=e.languages.arduino}$r.displayName="bash";$r.aliases=["sh","shell"];function $r(e){(function(n){var t="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",r={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},a={bash:r,environment:{pattern:RegExp("\\$"+t),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+t),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};n.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?:\.\w+)*(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+t),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},parameter:{pattern:/(^|\s)-{1,2}(?:\w+:[+-]?)?\w+(?:\.\w+)*(?=[=\s]|$)/,alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:a},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:r}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:a},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:a.entity}}],environment:{pattern:RegExp("\\$?"+t),alias:"constant"},variable:a.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cargo|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|java|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|sysctl|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},r.inside=n.languages.bash;for(var s=["comment","function-name","for-or-select","assign-left","parameter","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],i=a.variable[1].inside,o=0;o<s.length;o++)i[s[o]]=n.languages.bash[s[o]];n.languages.sh=n.languages.bash,n.languages.shell=n.languages.bash})(e)}Fr.displayName="csharp";Fr.aliases=["cs","dotnet"];function Fr(e){e.register(Fe),function(n){function t(P,T){return P.replace(/<<(\d+)>>/g,function(G,oe){return"(?:"+T[+oe]+")"})}function r(P,T,G){return RegExp(t(P,T),"")}function a(P,T){for(var G=0;G<T;G++)P=P.replace(/<<self>>/g,function(){return"(?:"+P+")"});return P.replace(/<<self>>/g,"[^\\s\\S]")}var s={type:"bool byte char decimal double dynamic float int long object sbyte short string uint ulong ushort var void",typeDeclaration:"class enum interface record struct",contextual:"add alias and ascending async await by descending from(?=\\s*(?:\\w|$)) get global group into init(?=\\s*;) join let nameof not notnull on or orderby partial remove select set unmanaged value when where with(?=\\s*{)",other:"abstract as base break case catch checked const continue default delegate do else event explicit extern finally fixed for foreach goto if implicit in internal is lock namespace new null operator out override params private protected public readonly ref return sealed sizeof stackalloc static switch this throw try typeof unchecked unsafe using virtual volatile while yield"};function i(P){return"\\b(?:"+P.trim().replace(/ /g,"|")+")\\b"}var o=i(s.typeDeclaration),l=RegExp(i(s.type+" "+s.typeDeclaration+" "+s.contextual+" "+s.other)),c=i(s.typeDeclaration+" "+s.contextual+" "+s.other),d=i(s.type+" "+s.typeDeclaration+" "+s.other),f=a(/<(?:[^<>;=+\-*/%&|^]|<<self>>)*>/.source,2),p=a(/\((?:[^()]|<<self>>)*\)/.source,2),g=/@?\b[A-Za-z_]\w*\b/.source,h=t(/<<0>>(?:\s*<<1>>)?/.source,[g,f]),m=t(/(?!<<0>>)<<1>>(?:\s*\.\s*<<1>>)*/.source,[c,h]),b=/\[\s*(?:,\s*)*\]/.source,y=t(/<<0>>(?:\s*(?:\?\s*)?<<1>>)*(?:\s*\?)?/.source,[m,b]),w=t(/[^,()<>[\];=+\-*/%&|^]|<<0>>|<<1>>|<<2>>/.source,[f,p,b]),x=t(/\(<<0>>+(?:,<<0>>+)+\)/.source,[w]),v=t(/(?:<<0>>|<<1>>)(?:\s*(?:\?\s*)?<<2>>)*(?:\s*\?)?/.source,[x,m,b]),N={keyword:l,punctuation:/[<>()?,.:[\]]/},E=/'(?:[^\r\n'\\]|\\.|\\[Uux][\da-fA-F]{1,8})'/.source,C=/"(?:\\.|[^\\"\r\n])*"/.source,A=/@"(?:""|\\[\s\S]|[^\\"])*"(?!")/.source;n.languages.csharp=n.languages.extend("clike",{string:[{pattern:r(/(^|[^$\\])<<0>>/.source,[A]),lookbehind:!0,greedy:!0},{pattern:r(/(^|[^@$\\])<<0>>/.source,[C]),lookbehind:!0,greedy:!0}],"class-name":[{pattern:r(/(\busing\s+static\s+)<<0>>(?=\s*;)/.source,[m]),lookbehind:!0,inside:N},{pattern:r(/(\busing\s+<<0>>\s*=\s*)<<1>>(?=\s*;)/.source,[g,v]),lookbehind:!0,inside:N},{pattern:r(/(\busing\s+)<<0>>(?=\s*=)/.source,[g]),lookbehind:!0},{pattern:r(/(\b<<0>>\s+)<<1>>/.source,[o,h]),lookbehind:!0,inside:N},{pattern:r(/(\bcatch\s*\(\s*)<<0>>/.source,[m]),lookbehind:!0,inside:N},{pattern:r(/(\bwhere\s+)<<0>>/.source,[g]),lookbehind:!0},{pattern:r(/(\b(?:is(?:\s+not)?|as)\s+)<<0>>/.source,[y]),lookbehind:!0,inside:N},{pattern:r(/\b<<0>>(?=\s+(?!<<1>>|with\s*\{)<<2>>(?:\s*[=,;:{)\]]|\s+(?:in|when)\b))/.source,[v,d,g]),inside:N}],keyword:l,number:/(?:\b0(?:x[\da-f_]*[\da-f]|b[01_]*[01])|(?:\B\.\d+(?:_+\d+)*|\b\d+(?:_+\d+)*(?:\.\d+(?:_+\d+)*)?)(?:e[-+]?\d+(?:_+\d+)*)?)(?:[dflmu]|lu|ul)?\b/i,operator:/>>=?|<<=?|[-=]>|([-+&|])\1|~|\?\?=?|[-+*/%&|^!=<>]=?/,punctuation:/\?\.?|::|[{}[\];(),.:]/}),n.languages.insertBefore("csharp","number",{range:{pattern:/\.\./,alias:"operator"}}),n.languages.insertBefore("csharp","punctuation",{"named-parameter":{pattern:r(/([(,]\s*)<<0>>(?=\s*:)/.source,[g]),lookbehind:!0,alias:"punctuation"}}),n.languages.insertBefore("csharp","class-name",{namespace:{pattern:r(/(\b(?:namespace|using)\s+)<<0>>(?:\s*\.\s*<<0>>)*(?=\s*[;{])/.source,[g]),lookbehind:!0,inside:{punctuation:/\./}},"type-expression":{pattern:r(/(\b(?:default|sizeof|typeof)\s*\(\s*(?!\s))(?:[^()\s]|\s(?!\s)|<<0>>)*(?=\s*\))/.source,[p]),lookbehind:!0,alias:"class-name",inside:N},"return-type":{pattern:r(/<<0>>(?=\s+(?:<<1>>\s*(?:=>|[({]|\.\s*this\s*\[)|this\s*\[))/.source,[v,m]),inside:N,alias:"class-name"},"constructor-invocation":{pattern:r(/(\bnew\s+)<<0>>(?=\s*[[({])/.source,[v]),lookbehind:!0,inside:N,alias:"class-name"},"generic-method":{pattern:r(/<<0>>\s*<<1>>(?=\s*\()/.source,[g,f]),inside:{function:r(/^<<0>>/.source,[g]),generic:{pattern:RegExp(f),alias:"class-name",inside:N}}},"type-list":{pattern:r(/\b((?:<<0>>\s+<<1>>|record\s+<<1>>\s*<<5>>|where\s+<<2>>)\s*:\s*)(?:<<3>>|<<4>>|<<1>>\s*<<5>>|<<6>>)(?:\s*,\s*(?:<<3>>|<<4>>|<<6>>))*(?=\s*(?:where|[{;]|=>|$))/.source,[o,h,g,v,l.source,p,/\bnew\s*\(\s*\)/.source]),lookbehind:!0,inside:{"record-arguments":{pattern:r(/(^(?!new\s*\()<<0>>\s*)<<1>>/.source,[h,p]),lookbehind:!0,greedy:!0,inside:n.languages.csharp},keyword:l,"class-name":{pattern:RegExp(v),greedy:!0,inside:N},punctuation:/[,()]/}},preprocessor:{pattern:/(^[\t ]*)#.*/m,lookbehind:!0,alias:"property",inside:{directive:{pattern:/(#)\b(?:define|elif|else|endif|endregion|error|if|line|nullable|pragma|region|undef|warning)\b/,lookbehind:!0,alias:"keyword"}}}});var O=C+"|"+E,I=t(/\/(?![*/])|\/\/[^\r\n]*[\r\n]|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>/.source,[O]),j=a(t(/[^"'/()]|<<0>>|\(<<self>>*\)/.source,[I]),2),D=/\b(?:assembly|event|field|method|module|param|property|return|type)\b/.source,R=t(/<<0>>(?:\s*\(<<1>>*\))?/.source,[m,j]);n.languages.insertBefore("csharp","class-name",{attribute:{pattern:r(/((?:^|[^\s\w>)?])\s*\[\s*)(?:<<0>>\s*:\s*)?<<1>>(?:\s*,\s*<<1>>)*(?=\s*\])/.source,[D,R]),lookbehind:!0,greedy:!0,inside:{target:{pattern:r(/^<<0>>(?=\s*:)/.source,[D]),alias:"keyword"},"attribute-arguments":{pattern:r(/\(<<0>>*\)/.source,[j]),inside:n.languages.csharp},"class-name":{pattern:RegExp(m),inside:{punctuation:/\./}},punctuation:/[:,]/}}});var M=/:[^}\r\n]+/.source,H=a(t(/[^"'/()]|<<0>>|\(<<self>>*\)/.source,[I]),2),W=t(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[H,M]),X=a(t(/[^"'/()]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>|\(<<self>>*\)/.source,[O]),2),k=t(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[X,M]);function U(P,T){return{interpolation:{pattern:r(/((?:^|[^{])(?:\{\{)*)<<0>>/.source,[P]),lookbehind:!0,inside:{"format-string":{pattern:r(/(^\{(?:(?![}:])<<0>>)*)<<1>>(?=\}$)/.source,[T,M]),lookbehind:!0,inside:{punctuation:/^:/}},punctuation:/^\{|\}$/,expression:{pattern:/[\s\S]+/,alias:"language-csharp",inside:n.languages.csharp}}},string:/[\s\S]+/}}n.languages.insertBefore("csharp","string",{"interpolation-string":[{pattern:r(/(^|[^\\])(?:\$@|@\$)"(?:""|\\[\s\S]|\{\{|<<0>>|[^\\{"])*"/.source,[W]),lookbehind:!0,greedy:!0,inside:U(W,H)},{pattern:r(/(^|[^@\\])\$"(?:\\.|\{\{|<<0>>|[^\\"{])*"/.source,[k]),lookbehind:!0,greedy:!0,inside:U(k,X)}],char:{pattern:RegExp(E),greedy:!0}}),n.languages.dotnet=n.languages.cs=n.languages.csharp}(e)}Ut.displayName="markup";Ut.aliases=["atom","html","mathml","rss","ssml","svg","xml"];function Ut(e){e.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},e.languages.markup.tag.inside["attr-value"].inside.entity=e.languages.markup.entity,e.languages.markup.doctype.inside["internal-subset"].inside=e.languages.markup,e.hooks.add("wrap",function(n){n.type==="entity"&&(n.attributes.title=n.content.value.replace(/&amp;/,"&"))}),Object.defineProperty(e.languages.markup.tag,"addInlined",{value:function(t,r){var a={};a["language-"+r]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:e.languages[r]},a.cdata=/^<!\[CDATA\[|\]\]>$/i;var s={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:a}};s["language-"+r]={pattern:/[\s\S]+/,inside:e.languages[r]};var i={};i[t]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,function(){return t}),"i"),lookbehind:!0,greedy:!0,inside:s},e.languages.insertBefore("markup","cdata",i)}}),Object.defineProperty(e.languages.markup.tag,"addAttribute",{value:function(n,t){e.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+n+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[t,"language-"+t],inside:e.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),e.languages.html=e.languages.markup,e.languages.mathml=e.languages.markup,e.languages.svg=e.languages.markup,e.languages.xml=e.languages.extend("markup",{}),e.languages.ssml=e.languages.xml,e.languages.atom=e.languages.xml,e.languages.rss=e.languages.xml}Et.displayName="css";Et.aliases=[];function Et(e){(function(n){var t=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;n.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+t.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+t.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+t.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+t.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:t,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},n.languages.css.atrule.inside.rest=n.languages.css;var r=n.languages.markup;r&&(r.tag.addInlined("style","css"),r.tag.addAttribute("style","css"))})(e)}Pr.displayName="diff";Pr.aliases=[];function Pr(e){(function(n){n.languages.diff={coord:[/^(?:\*{3}|-{3}|\+{3}).*$/m,/^@@.*@@$/m,/^\d.*$/m]};var t={"deleted-sign":"-","deleted-arrow":"<","inserted-sign":"+","inserted-arrow":">",unchanged:" ",diff:"!"};Object.keys(t).forEach(function(r){var a=t[r],s=[];/^\w+$/.test(r)||s.push(/\w+/.exec(r)[0]),r==="diff"&&s.push("bold"),n.languages.diff[r]={pattern:RegExp("^(?:["+a+`].*(?:\r
66
- ?|
67
- |(?![\\s\\S])))+`,"m"),alias:s,inside:{line:{pattern:/(.)(?=[\s\S]).*(?:\r\n?|\n)?/,lookbehind:!0},prefix:{pattern:/[\s\S]/,alias:/\w+/.exec(r)[0]}}}}),Object.defineProperty(n.languages.diff,"PREFIXES",{value:t})})(e)}zr.displayName="go";zr.aliases=[];function zr(e){e.register(Fe),e.languages.go=e.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),e.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete e.languages.go["class-name"]}Br.displayName="ini";Br.aliases=[];function Br(e){e.languages.ini={comment:{pattern:/(^[ \f\t\v]*)[#;][^\n\r]*/m,lookbehind:!0},section:{pattern:/(^[ \f\t\v]*)\[[^\n\r\]]*\]?/m,lookbehind:!0,inside:{"section-name":{pattern:/(^\[[ \f\t\v]*)[^ \f\t\v\]]+(?:[ \f\t\v]+[^ \f\t\v\]]+)*/,lookbehind:!0,alias:"selector"},punctuation:/\[|\]/}},key:{pattern:/(^[ \f\t\v]*)[^ \f\n\r\t\v=]+(?:[ \f\t\v]+[^ \f\n\r\t\v=]+)*(?=[ \f\t\v]*=)/m,lookbehind:!0,alias:"attr-name"},value:{pattern:/(=[ \f\t\v]*)[^ \f\n\r\t\v]+(?:[ \f\t\v]+[^ \f\n\r\t\v]+)*/,lookbehind:!0,alias:"attr-value",inside:{"inner-value":{pattern:/^("|').+(?=\1$)/,lookbehind:!0}}},punctuation:/=/}}Gr.displayName="java";Gr.aliases=[];function Gr(e){e.register(Fe),function(n){var t=/\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record(?!\s*[(){}[\]<>=%~.:,;?+\-*/&|^])|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/,r=/(?:[a-z]\w*\s*\.\s*)*(?:[A-Z]\w*\s*\.\s*)*/.source,a={pattern:RegExp(/(^|[^\w.])/.source+r+/[A-Z](?:[\d_A-Z]*[a-z]\w*)?\b/.source),lookbehind:!0,inside:{namespace:{pattern:/^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,inside:{punctuation:/\./}},punctuation:/\./}};n.languages.java=n.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"/,lookbehind:!0,greedy:!0},"class-name":[a,{pattern:RegExp(/(^|[^\w.])/.source+r+/[A-Z]\w*(?=\s+\w+\s*[;,=()]|\s*(?:\[[\s,]*\]\s*)?::\s*new\b)/.source),lookbehind:!0,inside:a.inside},{pattern:RegExp(/(\b(?:class|enum|extends|implements|instanceof|interface|new|record|throws)\s+)/.source+r+/[A-Z]\w*\b/.source),lookbehind:!0,inside:a.inside}],keyword:t,function:[n.languages.clike.function,{pattern:/(::\s*)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x(?:\.[\da-f_p+-]+|[\da-f_]+(?:\.[\da-f_p+-]+)?)\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0},constant:/\b[A-Z][A-Z_\d]+\b/}),n.languages.insertBefore("java","string",{"triple-quoted-string":{pattern:/"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,greedy:!0,alias:"string"},char:{pattern:/'(?:\\.|[^'\\\r\n]){1,6}'/,greedy:!0}}),n.languages.insertBefore("java","class-name",{annotation:{pattern:/(^|[^.])@\w+(?:\s*\.\s*\w+)*/,lookbehind:!0,alias:"punctuation"},generics:{pattern:/<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&))*>)*>)*>)*>/,inside:{"class-name":a,keyword:t,punctuation:/[<>(),.:]/,operator:/[?&|]/}},import:[{pattern:RegExp(/(\bimport\s+)/.source+r+/(?:[A-Z]\w*|\*)(?=\s*;)/.source),lookbehind:!0,inside:{namespace:a.inside.namespace,punctuation:/\./,operator:/\*/,"class-name":/\w+/}},{pattern:RegExp(/(\bimport\s+static\s+)/.source+r+/(?:\w+|\*)(?=\s*;)/.source),lookbehind:!0,alias:"static",inside:{namespace:a.inside.namespace,static:/\b\w+$/,punctuation:/\./,operator:/\*/,"class-name":/\w+/}}],namespace:{pattern:RegExp(/(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)(?!<keyword>)[a-z]\w*(?:\.[a-z]\w*)*\.?/.source.replace(/<keyword>/g,function(){return t.source})),lookbehind:!0,inside:{punctuation:/\./}}})}(e)}Ur.displayName="regex";Ur.aliases=[];function Ur(e){(function(n){var t={pattern:/\\[\\(){}[\]^$+*?|.]/,alias:"escape"},r=/\\(?:x[\da-fA-F]{2}|u[\da-fA-F]{4}|u\{[\da-fA-F]+\}|0[0-7]{0,2}|[123][0-7]{2}|c[a-zA-Z]|.)/,a={pattern:/\.|\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},s={pattern:/\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},i="(?:[^\\\\-]|"+r.source+")",o=RegExp(i+"-"+i),l={pattern:/(<|')[^<>']+(?=[>']$)/,lookbehind:!0,alias:"variable"};n.languages.regex={"char-class":{pattern:/((?:^|[^\\])(?:\\\\)*)\[(?:[^\\\]]|\\[\s\S])*\]/,lookbehind:!0,inside:{"char-class-negation":{pattern:/(^\[)\^/,lookbehind:!0,alias:"operator"},"char-class-punctuation":{pattern:/^\[|\]$/,alias:"punctuation"},range:{pattern:o,inside:{escape:r,"range-punctuation":{pattern:/-/,alias:"operator"}}},"special-escape":t,"char-set":s,escape:r}},"special-escape":t,"char-set":a,backreference:[{pattern:/\\(?![123][0-7]{2})[1-9]/,alias:"keyword"},{pattern:/\\k<[^<>']+>/,alias:"keyword",inside:{"group-name":l}}],anchor:{pattern:/[$^]|\\[ABbGZz]/,alias:"function"},escape:r,group:[{pattern:/\((?:\?(?:<[^<>']+>|'[^<>']+'|[>:]|<?[=!]|[idmnsuxU]+(?:-[idmnsuxU]+)?:?))?/,alias:"punctuation",inside:{"group-name":l}},{pattern:/\)/,alias:"punctuation"}],quantifier:{pattern:/(?:[+*?]|\{\d+(?:,\d*)?\})[?+]?/,alias:"number"},alternation:{pattern:/\|/,alias:"keyword"}}})(e)}Rn.displayName="javascript";Rn.aliases=["js"];function Rn(e){e.register(Fe),e.languages.javascript=e.languages.extend("clike",{"class-name":[e.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),e.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,e.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:e.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:e.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:e.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:e.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:e.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),e.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:e.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),e.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),e.languages.markup&&(e.languages.markup.tag.addInlined("script","javascript"),e.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),e.languages.js=e.languages.javascript}Hr.displayName="json";Hr.aliases=["webmanifest"];function Hr(e){e.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},e.languages.webmanifest=e.languages.json}Kr.displayName="kotlin";Kr.aliases=["kt","kts"];function Kr(e){e.register(Fe),function(n){n.languages.kotlin=n.languages.extend("clike",{keyword:{pattern:/(^|[^.])\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\b/,lookbehind:!0},function:[{pattern:/(?:`[^\r\n`]+`|\b\w+)(?=\s*\()/,greedy:!0},{pattern:/(\.)(?:`[^\r\n`]+`|\w+)(?=\s*\{)/,lookbehind:!0,greedy:!0}],number:/\b(?:0[xX][\da-fA-F]+(?:_[\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?[fFL]?)\b/,operator:/\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\/*%<>]=?|[?:]:?|\.\.|&&|\|\||\b(?:and|inv|or|shl|shr|ushr|xor)\b/}),delete n.languages.kotlin["class-name"];var t={"interpolation-punctuation":{pattern:/^\$\{?|\}$/,alias:"punctuation"},expression:{pattern:/[\s\S]+/,inside:n.languages.kotlin}};n.languages.insertBefore("kotlin","string",{"string-literal":[{pattern:/"""(?:[^$]|\$(?:(?!\{)|\{[^{}]*\}))*?"""/,alias:"multiline",inside:{interpolation:{pattern:/\$(?:[a-z_]\w*|\{[^{}]*\})/i,inside:t},string:/[\s\S]+/}},{pattern:/"(?:[^"\\\r\n$]|\\.|\$(?:(?!\{)|\{[^{}]*\}))*"/,alias:"singleline",inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$(?:[a-z_]\w*|\{[^{}]*\})/i,lookbehind:!0,inside:t},string:/[\s\S]+/}}],char:{pattern:/'(?:[^'\\\r\n]|\\(?:.|u[a-fA-F0-9]{0,4}))'/,greedy:!0}}),delete n.languages.kotlin.string,n.languages.insertBefore("kotlin","keyword",{annotation:{pattern:/\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/,alias:"builtin"}}),n.languages.insertBefore("kotlin","function",{label:{pattern:/\b\w+@|@\w+\b/,alias:"symbol"}}),n.languages.kt=n.languages.kotlin,n.languages.kts=n.languages.kotlin}(e)}Wr.displayName="less";Wr.aliases=[];function Wr(e){e.register(Et),e.languages.less=e.languages.extend("css",{comment:[/\/\*[\s\S]*?\*\//,{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0}],atrule:{pattern:/@[\w-](?:\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{punctuation:/[:()]/}},selector:{pattern:/(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};@\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{variable:/@+[\w-]+/}},property:/(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/,operator:/[+\-*\/]/}),e.languages.insertBefore("less","property",{variable:[{pattern:/@[\w-]+\s*:/,inside:{punctuation:/:/}},/@@?[\w-]+/],"mixin-usage":{pattern:/([{;]\s*)[.#](?!\d)[\w-].*?(?=[(;])/,lookbehind:!0,alias:"function"}})}Vr.displayName="lua";Vr.aliases=[];function Vr(e){e.languages.lua={comment:/^#!.+|--(?:\[(=*)\[[\s\S]*?\]\1\]|.*)/m,string:{pattern:/(["'])(?:(?!\1)[^\\\r\n]|\\z(?:\r\n|\s)|\\(?:\r\n|[^z]))*\1|\[(=*)\[[\s\S]*?\]\2\]/,greedy:!0},number:/\b0x[a-f\d]+(?:\.[a-f\d]*)?(?:p[+-]?\d+)?\b|\b\d+(?:\.\B|(?:\.\d*)?(?:e[+-]?\d+)?\b)|\B\.\d+(?:e[+-]?\d+)?\b/i,keyword:/\b(?:and|break|do|else|elseif|end|false|for|function|goto|if|in|local|nil|not|or|repeat|return|then|true|until|while)\b/,function:/(?!\d)\w+(?=\s*(?:[({]))/,operator:[/[-+*%^&|#]|\/\/?|<[<=]?|>[>=]?|[=~]=?/,{pattern:/(^|[^.])\.\.(?!\.)/,lookbehind:!0}],punctuation:/[\[\](){},;]|\.+|:+/}}Yr.displayName="makefile";Yr.aliases=[];function Yr(e){e.languages.makefile={comment:{pattern:/(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/,lookbehind:!0},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"builtin-target":{pattern:/\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,alias:"builtin"},target:{pattern:/^(?:[^:=\s]|[ \t]+(?![\s:]))+(?=\s*:(?!=))/m,alias:"symbol",inside:{variable:/\$+(?:(?!\$)[^(){}:#=\s]+|(?=[({]))/}},variable:/\$+(?:(?!\$)[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/,keyword:/-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/,function:{pattern:/(\()(?:abspath|addsuffix|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:list|s)?)(?=[ \t])/,lookbehind:!0},operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/}}qr.displayName="yaml";qr.aliases=["yml"];function qr(e){(function(n){var t=/[*&][^\s[\]{},]+/,r=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,a="(?:"+r.source+"(?:[ ]+"+t.source+")?|"+t.source+"(?:[ ]+"+r.source+")?)",s=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(/<PLAIN>/g,function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source}),i=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function o(l,c){c=(c||"").replace(/m/g,"")+"m";var d=/([:\-,[{]\s*(?:\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<<prop>>/g,function(){return a}).replace(/<<value>>/g,function(){return l});return RegExp(d,c)}n.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<<prop>>/g,function(){return a})),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g,function(){return a}).replace(/<<key>>/g,function(){return"(?:"+s+"|"+i+")"})),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:o(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:o(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:o(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:o(i),lookbehind:!0,greedy:!0},number:{pattern:o(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:r,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},n.languages.yml=n.languages.yaml})(e)}Xr.displayName="markdown";Xr.aliases=["md"];function Xr(e){e.register(Ut),function(n){var t=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function r(o){return o=o.replace(/<inner>/g,function(){return t}),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+o+")")}var a=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,s=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,function(){return a}),i=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source;n.languages.markdown=n.languages.extend("markup",{}),n.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:n.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+s+i+"(?:"+s+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+s+i+")(?:"+s+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(a),inside:n.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+s+")"+i+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+s+"$"),inside:{"table-header":{pattern:RegExp(a),alias:"important",inside:n.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:r(/\b__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\b|\*\*(?:(?!\*)<inner>|\*(?:(?!\*)<inner>)+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:r(/\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\b|\*(?:(?!\*)<inner>|\*\*(?:(?!\*)<inner>)+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:r(/(~~?)(?:(?!~)<inner>)+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:r(/!?\[(?:(?!\])<inner>)+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\])<inner>)+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach(function(o){["url","bold","italic","strike","code-snippet"].forEach(function(l){o!==l&&(n.languages.markdown[o].inside.content.inside[l]=n.languages.markdown[l])})}),n.hooks.add("after-tokenize",function(o){if(o.language!=="markdown"&&o.language!=="md")return;function l(c){if(!(!c||typeof c=="string"))for(var d=0,f=c.length;d<f;d++){var p=c[d];if(p.type!=="code"){l(p.content);continue}var g=p.content[1],h=p.content[3];if(g&&h&&g.type==="code-language"&&h.type==="code-block"&&typeof g.content=="string"){var m=g.content.replace(/\b#/g,"sharp").replace(/\b\+\+/g,"pp");m=(/[a-z][\w-]*/i.exec(m)||[""])[0].toLowerCase();var b="language-"+m;h.alias?typeof h.alias=="string"?h.alias=[h.alias,b]:h.alias.push(b):h.alias=[b]}}}l(o.tokens)}),n.hooks.add("wrap",function(o){if(o.type==="code-block"){for(var l="",c=0,d=o.classes.length;c<d;c++){var f=o.classes[c],p=/language-(.+)/.exec(f);if(p){l=p[1];break}}var g=n.languages[l];if(g)o.content=n.highlight(o.content.value,g,l);else if(l&&l!=="none"&&n.plugins.autoloader){var h="md-"+new Date().valueOf()+"-"+Math.floor(Math.random()*1e16);o.attributes.id=h,n.plugins.autoloader.loadLanguages(l,function(){var m=document.getElementById(h);m&&(m.innerHTML=n.highlight(m.textContent,n.languages[l],l))})}}}),RegExp(n.languages.markup.tag.pattern.source,"gi"),n.languages.md=n.languages.markdown}(e)}Zr.displayName="objectivec";Zr.aliases=["objc"];function Zr(e){e.register(Gt),e.languages.objectivec=e.languages.extend("c",{string:{pattern:/@?"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,operator:/-[->]?|\+\+?|!=?|<<?=?|>>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete e.languages.objectivec["class-name"],e.languages.objc=e.languages.objectivec}Qr.displayName="perl";Qr.aliases=[];function Qr(e){(function(n){var t=/(?:\((?:[^()\\]|\\[\s\S])*\)|\{(?:[^{}\\]|\\[\s\S])*\}|\[(?:[^[\]\\]|\\[\s\S])*\]|<(?:[^<>\\]|\\[\s\S])*>)/.source;n.languages.perl={comment:[{pattern:/(^\s*)=\w[\s\S]*?=cut.*/m,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\$])#.*/,lookbehind:!0,greedy:!0}],string:[{pattern:RegExp(/\b(?:q|qq|qw|qx)(?![a-zA-Z0-9])\s*/.source+"(?:"+[/([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/.source,/([a-zA-Z0-9])(?:(?!\2)[^\\]|\\[\s\S])*\2/.source,t].join("|")+")"),greedy:!0},{pattern:/("|`)(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0},{pattern:/'(?:[^'\\\r\n]|\\.)*'/,greedy:!0}],regex:[{pattern:RegExp(/\b(?:m|qr)(?![a-zA-Z0-9])\s*/.source+"(?:"+[/([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/.source,/([a-zA-Z0-9])(?:(?!\2)[^\\]|\\[\s\S])*\2/.source,t].join("|")+")"+/[msixpodualngc]*/.source),greedy:!0},{pattern:RegExp(/(^|[^-])\b(?:s|tr|y)(?![a-zA-Z0-9])\s*/.source+"(?:"+[/([^a-zA-Z0-9\s{(\[<])(?:(?!\2)[^\\]|\\[\s\S])*\2(?:(?!\2)[^\\]|\\[\s\S])*\2/.source,/([a-zA-Z0-9])(?:(?!\3)[^\\]|\\[\s\S])*\3(?:(?!\3)[^\\]|\\[\s\S])*\3/.source,t+/\s*/.source+t].join("|")+")"+/[msixpodualngcer]*/.source),lookbehind:!0,greedy:!0},{pattern:/\/(?:[^\/\\\r\n]|\\.)*\/[msixpodualngc]*(?=\s*(?:$|[\r\n,.;})&|\-+*~<>!?^]|(?:and|cmp|eq|ge|gt|le|lt|ne|not|or|x|xor)\b))/,greedy:!0}],variable:[/[&*$@%]\{\^[A-Z]+\}/,/[&*$@%]\^[A-Z_]/,/[&*$@%]#?(?=\{)/,/[&*$@%]#?(?:(?:::)*'?(?!\d)[\w$]+(?![\w$]))+(?:::)*/,/[&*$@%]\d+/,/(?!%=)[$@%][!"#$%&'()*+,\-.\/:;<=>?@[\\\]^_`{|}~]/],filehandle:{pattern:/<(?![<=])\S*?>|\b_\b/,alias:"symbol"},"v-string":{pattern:/v\d+(?:\.\d+)*|\d+(?:\.\d+){2,}/,alias:"string"},function:{pattern:/(\bsub[ \t]+)\w+/,lookbehind:!0},keyword:/\b(?:any|break|continue|default|delete|die|do|else|elsif|eval|for|foreach|given|goto|if|last|local|my|next|our|package|print|redo|require|return|say|state|sub|switch|undef|unless|until|use|when|while)\b/,number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)\b/,operator:/-[rwxoRWXOezsfdlpSbctugkTBMAC]\b|\+[+=]?|-[-=>]?|\*\*?=?|\/\/?=?|=[=~>]?|~[~=]?|\|\|?=?|&&?=?|<(?:=>?|<=?)?|>>?=?|![~=]?|[%^]=?|\.(?:=|\.\.?)?|[\\?]|\bx(?:=|\b)|\b(?:and|cmp|eq|ge|gt|le|lt|ne|not|or|xor)\b/,punctuation:/[{}[\];(),:]/}})(e)}On.displayName="markup-templating";On.aliases=[];function On(e){e.register(Ut),function(n){function t(r,a){return"___"+r.toUpperCase()+a+"___"}Object.defineProperties(n.languages["markup-templating"]={},{buildPlaceholders:{value:function(r,a,s,i){if(r.language===a){var o=r.tokenStack=[];r.code=r.code.replace(s,function(l){if(typeof i=="function"&&!i(l))return l;for(var c=o.length,d;r.code.indexOf(d=t(a,c))!==-1;)++c;return o[c]=l,d}),r.grammar=n.languages.markup}}},tokenizePlaceholders:{value:function(r,a){if(r.language!==a||!r.tokenStack)return;r.grammar=n.languages[a];var s=0,i=Object.keys(r.tokenStack);function o(l){for(var c=0;c<l.length&&!(s>=i.length);c++){var d=l[c];if(typeof d=="string"||d.content&&typeof d.content=="string"){var f=i[s],p=r.tokenStack[f],g=typeof d=="string"?d:d.content,h=t(a,f),m=g.indexOf(h);if(m>-1){++s;var b=g.substring(0,m),y=new n.Token(a,n.tokenize(p,r.grammar),"language-"+a,p),w=g.substring(m+h.length),x=[];b&&x.push.apply(x,o([b])),x.push(y),w&&x.push.apply(x,o([w])),typeof d=="string"?l.splice.apply(l,[c,1].concat(x)):d.content=x}}else d.content&&o(d.content)}return l}o(r.tokens)}}})}(e)}Jr.displayName="php";Jr.aliases=[];function Jr(e){e.register(On),function(n){var t=/\/\*[\s\S]*?\*\/|\/\/.*|#(?!\[).*/,r=[{pattern:/\b(?:false|true)\b/i,alias:"boolean"},{pattern:/(::\s*)\b[a-z_]\w*\b(?!\s*\()/i,greedy:!0,lookbehind:!0},{pattern:/(\b(?:case|const)\s+)\b[a-z_]\w*(?=\s*[;=])/i,greedy:!0,lookbehind:!0},/\b(?:null)\b/i,/\b[A-Z_][A-Z0-9_]*\b(?!\s*\()/],a=/\b0b[01]+(?:_[01]+)*\b|\b0o[0-7]+(?:_[0-7]+)*\b|\b0x[\da-f]+(?:_[\da-f]+)*\b|(?:\b\d+(?:_\d+)*\.?(?:\d+(?:_\d+)*)?|\B\.\d+)(?:e[+-]?\d+)?/i,s=/<?=>|\?\?=?|\.{3}|\??->|[!=]=?=?|::|\*\*=?|--|\+\+|&&|\|\||<<|>>|[?~]|[/^|%*&<>.+-]=?/,i=/[{}\[\](),:;]/;n.languages.php={delimiter:{pattern:/\?>$|^<\?(?:php(?=\s)|=)?/i,alias:"important"},comment:t,variable:/\$+(?:\w+\b|(?=\{))/,package:{pattern:/(namespace\s+|use\s+(?:function\s+)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,lookbehind:!0,inside:{punctuation:/\\/}},"class-name-definition":{pattern:/(\b(?:class|enum|interface|trait)\s+)\b[a-z_]\w*(?!\\)\b/i,lookbehind:!0,alias:"class-name"},"function-definition":{pattern:/(\bfunction\s+)[a-z_]\w*(?=\s*\()/i,lookbehind:!0,alias:"function"},keyword:[{pattern:/(\(\s*)\b(?:array|bool|boolean|float|int|integer|object|string)\b(?=\s*\))/i,alias:"type-casting",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|object|self|static|string)\b(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|never|object|self|static|string|void)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/\b(?:array(?!\s*\()|bool|float|int|iterable|mixed|object|string|void)\b/i,alias:"type-declaration",greedy:!0},{pattern:/(\|\s*)(?:false|null)\b|\b(?:false|null)(?=\s*\|)/i,alias:"type-declaration",greedy:!0,lookbehind:!0},{pattern:/\b(?:parent|self|static)(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(\byield\s+)from\b/i,lookbehind:!0},/\bclass\b/i,{pattern:/((?:^|[^\s>:]|(?:^|[^-])>|(?:^|[^:]):)\s*)\b(?:abstract|and|array|as|break|callable|case|catch|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|enum|eval|exit|extends|final|finally|fn|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|match|namespace|never|new|or|parent|print|private|protected|public|readonly|require|require_once|return|self|static|switch|throw|trait|try|unset|use|var|while|xor|yield|__halt_compiler)\b/i,lookbehind:!0}],"argument-name":{pattern:/([(,]\s*)\b[a-z_]\w*(?=\s*:(?!:))/i,lookbehind:!0},"class-name":[{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self|\s+static))\s+|\bcatch\s*\()\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/(\|\s*)\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/\b[a-z_]\w*(?!\\)\b(?=\s*\|)/i,greedy:!0},{pattern:/(\|\s*)(?:\\?\b[a-z_]\w*)+\b/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(?:\\?\b[a-z_]\w*)+\b(?=\s*\|)/i,alias:"class-name-fully-qualified",greedy:!0,inside:{punctuation:/\\/}},{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self\b|\s+static\b))\s+|\bcatch\s*\()(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*\$)/i,alias:"type-declaration",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-declaration"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*::)/i,alias:["class-name-fully-qualified","static-context"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/([(,?]\s*)[a-z_]\w*(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-hint"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b[a-z_]\w*(?!\\)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:["class-name-fully-qualified","return-type"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:r,function:{pattern:/(^|[^\\\w])\\?[a-z_](?:[\w\\]*\w)?(?=\s*\()/i,lookbehind:!0,inside:{punctuation:/\\/}},property:{pattern:/(->\s*)\w+/,lookbehind:!0},number:a,operator:s,punctuation:i};var o={pattern:/\{\$(?:\{(?:\{[^{}]+\}|[^{}]+)\}|[^{}])+\}|(^|[^\\{])\$+(?:\w+(?:\[[^\r\n\[\]]+\]|->\w+)?)/,lookbehind:!0,inside:n.languages.php},l=[{pattern:/<<<'([^']+)'[\r\n](?:.*[\r\n])*?\1;/,alias:"nowdoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<'?|[';]$/}}}},{pattern:/<<<(?:"([^"]+)"[\r\n](?:.*[\r\n])*?\1;|([a-z_]\w*)[\r\n](?:.*[\r\n])*?\2;)/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<"?|[";]$/}},interpolation:o}},{pattern:/`(?:\\[\s\S]|[^\\`])*`/,alias:"backtick-quoted-string",greedy:!0},{pattern:/'(?:\\[\s\S]|[^\\'])*'/,alias:"single-quoted-string",greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,alias:"double-quoted-string",greedy:!0,inside:{interpolation:o}}];n.languages.insertBefore("php","variable",{string:l,attribute:{pattern:/#\[(?:[^"'\/#]|\/(?![*/])|\/\/.*$|#(?!\[).*$|\/\*(?:[^*]|\*(?!\/))*\*\/|"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*')+\](?=\s*[a-z$#])/im,greedy:!0,inside:{"attribute-content":{pattern:/^(#\[)[\s\S]+(?=\]$)/,lookbehind:!0,inside:{comment:t,string:l,"attribute-class-name":[{pattern:/([^:]|^)\b[a-z_]\w*(?!\\)\b/i,alias:"class-name",greedy:!0,lookbehind:!0},{pattern:/([^:]|^)(?:\\?\b[a-z_]\w*)+/i,alias:["class-name","class-name-fully-qualified"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:r,number:a,operator:s,punctuation:i}},delimiter:{pattern:/^#\[|\]$/,alias:"punctuation"}}}}),n.hooks.add("before-tokenize",function(c){if(/<\?/.test(c.code)){var d=/<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#(?!\[))(?:[^?\n\r]|\?(?!>))*(?=$|\?>|[\r\n])|#\[|\/\*(?:[^*]|\*(?!\/))*(?:\*\/|$))*?(?:\?>|$)/g;n.languages["markup-templating"].buildPlaceholders(c,"php",d)}}),n.hooks.add("after-tokenize",function(c){n.languages["markup-templating"].tokenizePlaceholders(c,"php")})}(e)}ea.displayName="python";ea.aliases=["py"];function ea(e){e.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},e.languages.python["string-interpolation"].inside.interpolation.inside.rest=e.languages.python,e.languages.py=e.languages.python}ta.displayName="r";ta.aliases=[];function ta(e){e.languages.r={comment:/#.*/,string:{pattern:/(['"])(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},"percent-operator":{pattern:/%[^%\s]*%/,alias:"operator"},boolean:/\b(?:FALSE|TRUE)\b/,ellipsis:/\.\.(?:\.|\d+)/,number:[/\b(?:Inf|NaN)\b/,/(?:\b0x[\dA-Fa-f]+(?:\.\d*)?|\b\d+(?:\.\d*)?|\B\.\d+)(?:[EePp][+-]?\d+)?[iL]?/],keyword:/\b(?:NA|NA_character_|NA_complex_|NA_integer_|NA_real_|NULL|break|else|for|function|if|in|next|repeat|while)\b/,operator:/->?>?|<(?:=|<?-)?|[>=!]=?|::?|&&?|\|\|?|[+*\/^$@~]/,punctuation:/[(){}\[\],;]/}}na.displayName="ruby";na.aliases=["rb"];function na(e){e.register(Fe),function(n){n.languages.ruby=n.languages.extend("clike",{comment:{pattern:/#.*|^=begin\s[\s\S]*?^=end/m,greedy:!0},"class-name":{pattern:/(\b(?:class|module)\s+|\bcatch\s+\()[\w.\\]+|\b[A-Z_]\w*(?=\s*\.\s*new\b)/,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:BEGIN|END|alias|and|begin|break|case|class|def|define_method|defined|do|each|else|elsif|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|private|protected|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/,operator:/\.{2,3}|&\.|===|<?=>|[!=]?~|(?:&&|\|\||<<|>>|\*\*|[+\-*/%<>!^&|=])=?|[?:]/,punctuation:/[(){}[\].,;]/}),n.languages.insertBefore("ruby","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}});var t={pattern:/((?:^|[^\\])(?:\\{2})*)#\{(?:[^{}]|\{[^{}]*\})*\}/,lookbehind:!0,inside:{content:{pattern:/^(#\{)[\s\S]+(?=\}$)/,lookbehind:!0,inside:n.languages.ruby},delimiter:{pattern:/^#\{|\}$/,alias:"punctuation"}}};delete n.languages.ruby.function;var r="(?:"+[/([^a-zA-Z0-9\s{(\[<=])(?:(?!\1)[^\\]|\\[\s\S])*\1/.source,/\((?:[^()\\]|\\[\s\S]|\((?:[^()\\]|\\[\s\S])*\))*\)/.source,/\{(?:[^{}\\]|\\[\s\S]|\{(?:[^{}\\]|\\[\s\S])*\})*\}/.source,/\[(?:[^\[\]\\]|\\[\s\S]|\[(?:[^\[\]\\]|\\[\s\S])*\])*\]/.source,/<(?:[^<>\\]|\\[\s\S]|<(?:[^<>\\]|\\[\s\S])*>)*>/.source].join("|")+")",a=/(?:"(?:\\.|[^"\\\r\n])*"|(?:\b[a-zA-Z_]\w*|[^\s\0-\x7F]+)[?!]?|\$.)/.source;n.languages.insertBefore("ruby","keyword",{"regex-literal":[{pattern:RegExp(/%r/.source+r+/[egimnosux]{0,6}/.source),greedy:!0,inside:{interpolation:t,regex:/[\s\S]+/}},{pattern:/(^|[^/])\/(?!\/)(?:\[[^\r\n\]]+\]|\\.|[^[/\\\r\n])+\/[egimnosux]{0,6}(?=\s*(?:$|[\r\n,.;})#]))/,lookbehind:!0,greedy:!0,inside:{interpolation:t,regex:/[\s\S]+/}}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:[{pattern:RegExp(/(^|[^:]):/.source+a),lookbehind:!0,greedy:!0},{pattern:RegExp(/([\r\n{(,][ \t]*)/.source+a+/(?=:(?!:))/.source),lookbehind:!0,greedy:!0}],"method-definition":{pattern:/(\bdef\s+)\w+(?:\s*\.\s*\w+)?/,lookbehind:!0,inside:{function:/\b\w+$/,keyword:/^self\b/,"class-name":/^\w+/,punctuation:/\./}}}),n.languages.insertBefore("ruby","string",{"string-literal":[{pattern:RegExp(/%[qQiIwWs]?/.source+r),greedy:!0,inside:{interpolation:t,string:/[\s\S]+/}},{pattern:/("|')(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|(?!\1)[^\\#\r\n])*\1/,greedy:!0,inside:{interpolation:t,string:/[\s\S]+/}},{pattern:/<<[-~]?([a-z_]\w*)[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?[a-z_]\w*|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?/}},interpolation:t,string:/[\s\S]+/}},{pattern:/<<[-~]?'([a-z_]\w*)'[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?'[a-z_]\w*'|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?'|'$/}},string:/[\s\S]+/}}],"command-literal":[{pattern:RegExp(/%x/.source+r),greedy:!0,inside:{interpolation:t,command:{pattern:/[\s\S]+/,alias:"string"}}},{pattern:/`(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|[^\\`#\r\n])*`/,greedy:!0,inside:{interpolation:t,command:{pattern:/[\s\S]+/,alias:"string"}}}]}),delete n.languages.ruby.string,n.languages.insertBefore("ruby","number",{builtin:/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Fixnum|Float|Hash|IO|Integer|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|Stat|String|Struct|Symbol|TMS|Thread|ThreadGroup|Time|TrueClass)\b/,constant:/\b[A-Z][A-Z0-9_]*(?:[?!]|\b)/}),n.languages.rb=n.languages.ruby}(e)}ra.displayName="rust";ra.aliases=[];function ra(e){(function(n){for(var t=/\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|<self>)*\*\//.source,r=0;r<2;r++)t=t.replace(/<self>/g,function(){return t});t=t.replace(/<self>/g,function(){return/[^\s\S]/.source}),n.languages.rust={comment:[{pattern:RegExp(/(^|[^\\])/.source+t),lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/,greedy:!0},char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/,greedy:!0},attribute:{pattern:/#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/,greedy:!0,alias:"attr-name",inside:{string:null}},"closure-params":{pattern:/([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/,lookbehind:!0,greedy:!0,inside:{"closure-punctuation":{pattern:/^\||\|$/,alias:"punctuation"},rest:null}},"lifetime-annotation":{pattern:/'\w+/,alias:"symbol"},"fragment-specifier":{pattern:/(\$\w+:)[a-z]+/,lookbehind:!0,alias:"punctuation"},variable:/\$\w+/,"function-definition":{pattern:/(\bfn\s+)\w+/,lookbehind:!0,alias:"function"},"type-definition":{pattern:/(\b(?:enum|struct|trait|type|union)\s+)\w+/,lookbehind:!0,alias:"class-name"},"module-declaration":[{pattern:/(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/,lookbehind:!0,alias:"namespace"},{pattern:/(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/,lookbehind:!0,alias:"namespace",inside:{punctuation:/::/}}],keyword:[/\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,/\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\b/],function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())/,macro:{pattern:/\b\w+!/,alias:"property"},constant:/\b[A-Z_][A-Z_\d]+\b/,"class-name":/\b[A-Z]\w*\b/,namespace:{pattern:/(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/,inside:{punctuation:/::/}},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\b/,boolean:/\b(?:false|true)\b/,punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<<?=?|>>?=?|[@?]/},n.languages.rust["closure-params"].inside.rest=n.languages.rust,n.languages.rust.attribute.inside.string=n.languages.rust.string})(e)}aa.displayName="sass";aa.aliases=[];function aa(e){e.register(Et),function(n){n.languages.sass=n.languages.extend("css",{comment:{pattern:/^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t].+)*/m,lookbehind:!0,greedy:!0}}),n.languages.insertBefore("sass","atrule",{"atrule-line":{pattern:/^(?:[ \t]*)[@+=].+/m,greedy:!0,inside:{atrule:/(?:@[\w-]+|[+=])/}}}),delete n.languages.sass.atrule;var t=/\$[-\w]+|#\{\$[-\w]+\}/,r=[/[+*\/%]|[=!]=|<=?|>=?|\b(?:and|not|or)\b/,{pattern:/(\s)-(?=\s)/,lookbehind:!0}];n.languages.insertBefore("sass","property",{"variable-line":{pattern:/^[ \t]*\$.+/m,greedy:!0,inside:{punctuation:/:/,variable:t,operator:r}},"property-line":{pattern:/^[ \t]*(?:[^:\s]+ *:.*|:[^:\s].*)/m,greedy:!0,inside:{property:[/[^:\s]+(?=\s*:)/,{pattern:/(:)[^:\s]+/,lookbehind:!0}],punctuation:/:/,variable:t,operator:r,important:n.languages.sass.important}}}),delete n.languages.sass.property,delete n.languages.sass.important,n.languages.insertBefore("sass","punctuation",{selector:{pattern:/^([ \t]*)\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*)*/m,lookbehind:!0,greedy:!0}})}(e)}sa.displayName="scss";sa.aliases=[];function sa(e){e.register(Et),e.languages.scss=e.languages.extend("css",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},atrule:{pattern:/@[\w-](?:\([^()]+\)|[^()\s]|\s+(?!\s))*?(?=\s+[{;])/,inside:{rule:/@[\w-]+/}},url:/(?:[-a-z]+-)?url(?=\()/i,selector:{pattern:/(?=\S)[^@;{}()]?(?:[^@;{}()\s]|\s+(?!\s)|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}][^:{}]*[:{][^}]))/,inside:{parent:{pattern:/&/,alias:"important"},placeholder:/%[-\w]+/,variable:/\$[-\w]+|#\{\$[-\w]+\}/}},property:{pattern:/(?:[-\w]|\$[-\w]|#\{\$[-\w]+\})+(?=\s*:)/,inside:{variable:/\$[-\w]+|#\{\$[-\w]+\}/}}}),e.languages.insertBefore("scss","atrule",{keyword:[/@(?:content|debug|each|else(?: if)?|extend|for|forward|function|if|import|include|mixin|return|use|warn|while)\b/i,{pattern:/( )(?:from|through)(?= )/,lookbehind:!0}]}),e.languages.insertBefore("scss","important",{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),e.languages.insertBefore("scss","function",{"module-modifier":{pattern:/\b(?:as|hide|show|with)\b/i,alias:"keyword"},placeholder:{pattern:/%[-\w]+/,alias:"selector"},statement:{pattern:/\B!(?:default|optional)\b/i,alias:"keyword"},boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"},operator:{pattern:/(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|not|or)(?=\s)/,lookbehind:!0}}),e.languages.scss.atrule.inside.rest=e.languages.scss}ia.displayName="sql";ia.aliases=[];function ia(e){e.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},identifier:{pattern:/(^|[^@\\])`(?:\\[\s\S]|[^`\\]|``)*`/,greedy:!0,lookbehind:!0,inside:{punctuation:/^`|`$/}},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/i,number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/}}oa.displayName="swift";oa.aliases=[];function oa(e){e.languages.swift={comment:{pattern:/(^|[^\\:])(?:\/\/.*|\/\*(?:[^/*]|\/(?!\*)|\*(?!\/)|\/\*(?:[^*]|\*(?!\/))*\*\/)*\*\/)/,lookbehind:!0,greedy:!0},"string-literal":[{pattern:RegExp(/(^|[^"#])/.source+"(?:"+/"(?:\\(?:\((?:[^()]|\([^()]*\))*\)|\r\n|[^(])|[^\\\r\n"])*"/.source+"|"+/"""(?:\\(?:\((?:[^()]|\([^()]*\))*\)|[^(])|[^\\"]|"(?!""))*"""/.source+")"+/(?!["#])/.source),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\\($/,alias:"punctuation"},punctuation:/\\(?=[\r\n])/,string:/[\s\S]+/}},{pattern:RegExp(/(^|[^"#])(#+)/.source+"(?:"+/"(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|\r\n|[^#])|[^\\\r\n])*?"/.source+"|"+/"""(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|[^#])|[^\\])*?"""/.source+")\\2"),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\#+\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\#+\($/,alias:"punctuation"},string:/[\s\S]+/}}],directive:{pattern:RegExp(/#/.source+"(?:"+(/(?:elseif|if)\b/.source+"(?:[ ]*"+/(?:![ \t]*)?(?:\b\w+\b(?:[ \t]*\((?:[^()]|\([^()]*\))*\))?|\((?:[^()]|\([^()]*\))*\))(?:[ \t]*(?:&&|\|\|))?/.source+")+")+"|"+/(?:else|endif)\b/.source+")"),alias:"property",inside:{"directive-name":/^#\w+/,boolean:/\b(?:false|true)\b/,number:/\b\d+(?:\.\d+)*\b/,operator:/!|&&|\|\||[<>]=?/,punctuation:/[(),]/}},literal:{pattern:/#(?:colorLiteral|column|dsohandle|file(?:ID|Literal|Path)?|function|imageLiteral|line)\b/,alias:"constant"},"other-directive":{pattern:/#\w+\b/,alias:"property"},attribute:{pattern:/@\w+/,alias:"atrule"},"function-definition":{pattern:/(\bfunc\s+)\w+/,lookbehind:!0,alias:"function"},label:{pattern:/\b(break|continue)\s+\w+|\b[a-zA-Z_]\w*(?=\s*:\s*(?:for|repeat|while)\b)/,lookbehind:!0,alias:"important"},keyword:/\b(?:Any|Protocol|Self|Type|actor|as|assignment|associatedtype|associativity|async|await|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic|else|enum|extension|fallthrough|fileprivate|final|for|func|get|guard|higherThan|if|import|in|indirect|infix|init|inout|internal|is|isolated|lazy|left|let|lowerThan|mutating|none|nonisolated|nonmutating|open|operator|optional|override|postfix|precedencegroup|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|set|some|static|struct|subscript|super|switch|throw|throws|try|typealias|unowned|unsafe|var|weak|where|while|willSet)\b/,boolean:/\b(?:false|true)\b/,nil:{pattern:/\bnil\b/,alias:"constant"},"short-argument":/\$\d+\b/,omit:{pattern:/\b_\b/,alias:"keyword"},number:/\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,"class-name":/\b[A-Z](?:[A-Z_\d]*[a-z]\w*)?\b/,function:/\b[a-z_]\w*(?=\s*\()/i,constant:/\b(?:[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,operator:/[-+*/%=!<>&|^~?]+|\.[.\-+*/%=!<>&|^~?]+/,punctuation:/[{}[\]();,.:\\]/},e.languages.swift["string-literal"].forEach(function(n){n.inside.interpolation.inside=e.languages.swift})}la.displayName="typescript";la.aliases=["ts"];function la(e){e.register(Rn),function(n){n.languages.typescript=n.languages.extend("javascript",{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),n.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete n.languages.typescript.parameter,delete n.languages.typescript["literal-property"];var t=n.languages.extend("typescript",{});delete t["class-name"],n.languages.typescript["class-name"].inside=t,n.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:t}}}}),n.languages.ts=n.languages.typescript}(e)}Ln.displayName="basic";Ln.aliases=[];function Ln(e){e.languages.basic={comment:{pattern:/(?:!|REM\b).+/i,inside:{keyword:/^REM/i}},string:{pattern:/"(?:""|[!#$%&'()*,\/:;<=>?^\w +\-.])*"/,greedy:!0},number:/(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:E[+-]?\d+)?/i,keyword:/\b(?:AS|BEEP|BLOAD|BSAVE|CALL(?: ABSOLUTE)?|CASE|CHAIN|CHDIR|CLEAR|CLOSE|CLS|COM|COMMON|CONST|DATA|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DIM|DO|DOUBLE|ELSE|ELSEIF|END|ENVIRON|ERASE|ERROR|EXIT|FIELD|FILES|FOR|FUNCTION|GET|GOSUB|GOTO|IF|INPUT|INTEGER|IOCTL|KEY|KILL|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|MKDIR|NAME|NEXT|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPTION BASE|OUT|POKE|PUT|READ|REDIM|REM|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SELECT CASE|SHARED|SHELL|SINGLE|SLEEP|STATIC|STEP|STOP|STRING|SUB|SWAP|SYSTEM|THEN|TIMER|TO|TROFF|TRON|TYPE|UNLOCK|UNTIL|USING|VIEW PRINT|WAIT|WEND|WHILE|WRITE)(?:\$|\b)/i,function:/\b(?:ABS|ACCESS|ACOS|ANGLE|AREA|ARITHMETIC|ARRAY|ASIN|ASK|AT|ATN|BASE|BEGIN|BREAK|CAUSE|CEIL|CHR|CLIP|COLLATE|COLOR|CON|COS|COSH|COT|CSC|DATE|DATUM|DEBUG|DECIMAL|DEF|DEG|DEGREES|DELETE|DET|DEVICE|DISPLAY|DOT|ELAPSED|EPS|ERASABLE|EXLINE|EXP|EXTERNAL|EXTYPE|FILETYPE|FIXED|FP|GO|GRAPH|HANDLER|IDN|IMAGE|IN|INT|INTERNAL|IP|IS|KEYED|LBOUND|LCASE|LEFT|LEN|LENGTH|LET|LINE|LINES|LOG|LOG10|LOG2|LTRIM|MARGIN|MAT|MAX|MAXNUM|MID|MIN|MISSING|MOD|NATIVE|NUL|NUMERIC|OF|OPTION|ORD|ORGANIZATION|OUTIN|OUTPUT|PI|POINT|POINTER|POINTS|POS|PRINT|PROGRAM|PROMPT|RAD|RADIANS|RANDOMIZE|RECORD|RECSIZE|RECTYPE|RELATIVE|REMAINDER|REPEAT|REST|RETRY|REWRITE|RIGHT|RND|ROUND|RTRIM|SAME|SEC|SELECT|SEQUENTIAL|SET|SETTER|SGN|SIN|SINH|SIZE|SKIP|SQR|STANDARD|STATUS|STR|STREAM|STYLE|TAB|TAN|TANH|TEMPLATE|TEXT|THERE|TIME|TIMEOUT|TRACE|TRANSFORM|TRUNCATE|UBOUND|UCASE|USE|VAL|VARIABLE|VIEWPORT|WHEN|WINDOW|WITH|ZER|ZONEWIDTH)(?:\$|\b)/i,operator:/<[=>]?|>=?|[+\-*\/^=&]|\b(?:AND|EQV|IMP|NOT|OR|XOR)\b/i,punctuation:/[,;:()]/}}ua.displayName="vbnet";ua.aliases=[];function ua(e){e.register(Ln),e.languages.vbnet=e.languages.extend("basic",{comment:[{pattern:/(?:!|REM\b).+/i,inside:{keyword:/^REM/i}},{pattern:/(^|[^\\:])'.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(^|[^"])"(?:""|[^"])*"(?!")/,lookbehind:!0,greedy:!0},keyword:/(?:\b(?:ADDHANDLER|ADDRESSOF|ALIAS|AND|ANDALSO|AS|BEEP|BLOAD|BOOLEAN|BSAVE|BYREF|BYTE|BYVAL|CALL(?: ABSOLUTE)?|CASE|CATCH|CBOOL|CBYTE|CCHAR|CDATE|CDBL|CDEC|CHAIN|CHAR|CHDIR|CINT|CLASS|CLEAR|CLNG|CLOSE|CLS|COBJ|COM|COMMON|CONST|CONTINUE|CSBYTE|CSHORT|CSNG|CSTR|CTYPE|CUINT|CULNG|CUSHORT|DATA|DATE|DECIMAL|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DEFAULT|DELEGATE|DIM|DIRECTCAST|DO|DOUBLE|ELSE|ELSEIF|END|ENUM|ENVIRON|ERASE|ERROR|EVENT|EXIT|FALSE|FIELD|FILES|FINALLY|FOR(?: EACH)?|FRIEND|FUNCTION|GET|GETTYPE|GETXMLNAMESPACE|GLOBAL|GOSUB|GOTO|HANDLES|IF|IMPLEMENTS|IMPORTS|IN|INHERITS|INPUT|INTEGER|INTERFACE|IOCTL|IS|ISNOT|KEY|KILL|LET|LIB|LIKE|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|ME|MKDIR|MOD|MODULE|MUSTINHERIT|MUSTOVERRIDE|MYBASE|MYCLASS|NAME|NAMESPACE|NARROWING|NEW|NEXT|NOT|NOTHING|NOTINHERITABLE|NOTOVERRIDABLE|OBJECT|OF|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPERATOR|OPTION(?: BASE)?|OPTIONAL|OR|ORELSE|OUT|OVERLOADS|OVERRIDABLE|OVERRIDES|PARAMARRAY|PARTIAL|POKE|PRIVATE|PROPERTY|PROTECTED|PUBLIC|PUT|RAISEEVENT|READ|READONLY|REDIM|REM|REMOVEHANDLER|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SBYTE|SELECT(?: CASE)?|SET|SHADOWS|SHARED|SHELL|SHORT|SINGLE|SLEEP|STATIC|STEP|STOP|STRING|STRUCTURE|SUB|SWAP|SYNCLOCK|SYSTEM|THEN|THROW|TIMER|TO|TROFF|TRON|TRUE|TRY|TRYCAST|TYPE|TYPEOF|UINTEGER|ULONG|UNLOCK|UNTIL|USHORT|USING|VIEW PRINT|WAIT|WEND|WHEN|WHILE|WIDENING|WITH|WITHEVENTS|WRITE|WRITEONLY|XOR)|\B(?:#CONST|#ELSE|#ELSEIF|#END|#IF))(?:\$|\b)/i,punctuation:/[,;:(){}]/})}class Ht{constructor(n,t,r){this.normal=t,this.property=n,r&&(this.space=r)}}Ht.prototype.normal={};Ht.prototype.property={};Ht.prototype.space=void 0;function Mi(e,n){const t={},r={};for(const a of e)Object.assign(t,a.property),Object.assign(r,a.normal);return new Ht(t,r,n)}function Pt(e){return e.toLowerCase()}class ve{constructor(n,t){this.attribute=t,this.property=n}}ve.prototype.attribute="";ve.prototype.booleanish=!1;ve.prototype.boolean=!1;ve.prototype.commaOrSpaceSeparated=!1;ve.prototype.commaSeparated=!1;ve.prototype.defined=!1;ve.prototype.mustUseProperty=!1;ve.prototype.number=!1;ve.prototype.overloadedBoolean=!1;ve.prototype.property="";ve.prototype.spaceSeparated=!1;ve.prototype.space=void 0;let Yd=0;const K=ot(),ce=ot(),or=ot(),_=ot(),ae=ot(),mt=ot(),xe=ot();function ot(){return 2**++Yd}const lr=Object.freeze(Object.defineProperty({__proto__:null,boolean:K,booleanish:ce,commaOrSpaceSeparated:xe,commaSeparated:mt,number:_,overloadedBoolean:or,spaceSeparated:ae},Symbol.toStringTag,{value:"Module"})),Wn=Object.keys(lr);class ca extends ve{constructor(n,t,r,a){let s=-1;if(super(n,t),is(this,"space",a),typeof r=="number")for(;++s<Wn.length;){const i=Wn[s];is(this,Wn[s],(r&lr[i])===lr[i])}}}ca.prototype.defined=!0;function is(e,n,t){t&&(e[n]=t)}function Nt(e){const n={},t={};for(const[r,a]of Object.entries(e.properties)){const s=new ca(r,e.transform(e.attributes||{},r),a,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(s.mustUseProperty=!0),n[r]=s,t[Pt(r)]=r,t[Pt(s.attribute)]=r}return new Ht(n,t,e.space)}const $i=Nt({properties:{ariaActiveDescendant:null,ariaAtomic:ce,ariaAutoComplete:null,ariaBusy:ce,ariaChecked:ce,ariaColCount:_,ariaColIndex:_,ariaColSpan:_,ariaControls:ae,ariaCurrent:null,ariaDescribedBy:ae,ariaDetails:null,ariaDisabled:ce,ariaDropEffect:ae,ariaErrorMessage:null,ariaExpanded:ce,ariaFlowTo:ae,ariaGrabbed:ce,ariaHasPopup:null,ariaHidden:ce,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:ae,ariaLevel:_,ariaLive:null,ariaModal:ce,ariaMultiLine:ce,ariaMultiSelectable:ce,ariaOrientation:null,ariaOwns:ae,ariaPlaceholder:null,ariaPosInSet:_,ariaPressed:ce,ariaReadOnly:ce,ariaRelevant:null,ariaRequired:ce,ariaRoleDescription:ae,ariaRowCount:_,ariaRowIndex:_,ariaRowSpan:_,ariaSelected:ce,ariaSetSize:_,ariaSort:null,ariaValueMax:_,ariaValueMin:_,ariaValueNow:_,ariaValueText:null,role:null},transform(e,n){return n==="role"?n:"aria-"+n.slice(4).toLowerCase()}});function Fi(e,n){return n in e?e[n]:n}function Pi(e,n){return Fi(e,n.toLowerCase())}const qd=Nt({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:mt,acceptCharset:ae,accessKey:ae,action:null,allow:null,allowFullScreen:K,allowPaymentRequest:K,allowUserMedia:K,alt:null,as:null,async:K,autoCapitalize:null,autoComplete:ae,autoFocus:K,autoPlay:K,blocking:ae,capture:null,charSet:null,checked:K,cite:null,className:ae,cols:_,colSpan:null,content:null,contentEditable:ce,controls:K,controlsList:ae,coords:_|mt,crossOrigin:null,data:null,dateTime:null,decoding:null,default:K,defer:K,dir:null,dirName:null,disabled:K,download:or,draggable:ce,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:K,formTarget:null,headers:ae,height:_,hidden:or,high:_,href:null,hrefLang:null,htmlFor:ae,httpEquiv:ae,id:null,imageSizes:null,imageSrcSet:null,inert:K,inputMode:null,integrity:null,is:null,isMap:K,itemId:null,itemProp:ae,itemRef:ae,itemScope:K,itemType:ae,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:K,low:_,manifest:null,max:null,maxLength:_,media:null,method:null,min:null,minLength:_,multiple:K,muted:K,name:null,nonce:null,noModule:K,noValidate:K,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:K,optimum:_,pattern:null,ping:ae,placeholder:null,playsInline:K,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:K,referrerPolicy:null,rel:ae,required:K,reversed:K,rows:_,rowSpan:_,sandbox:ae,scope:null,scoped:K,seamless:K,selected:K,shadowRootClonable:K,shadowRootDelegatesFocus:K,shadowRootMode:null,shape:null,size:_,sizes:null,slot:null,span:_,spellCheck:ce,src:null,srcDoc:null,srcLang:null,srcSet:null,start:_,step:null,style:null,tabIndex:_,target:null,title:null,translate:null,type:null,typeMustMatch:K,useMap:null,value:ce,width:_,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:ae,axis:null,background:null,bgColor:null,border:_,borderColor:null,bottomMargin:_,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:K,declare:K,event:null,face:null,frame:null,frameBorder:null,hSpace:_,leftMargin:_,link:null,longDesc:null,lowSrc:null,marginHeight:_,marginWidth:_,noResize:K,noHref:K,noShade:K,noWrap:K,object:null,profile:null,prompt:null,rev:null,rightMargin:_,rules:null,scheme:null,scrolling:ce,standby:null,summary:null,text:null,topMargin:_,valueType:null,version:null,vAlign:null,vLink:null,vSpace:_,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:K,disableRemotePlayback:K,prefix:null,property:null,results:_,security:null,unselectable:null},space:"html",transform:Pi}),Xd=Nt({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:xe,accentHeight:_,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:_,amplitude:_,arabicForm:null,ascent:_,attributeName:null,attributeType:null,azimuth:_,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:_,by:null,calcMode:null,capHeight:_,className:ae,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:_,diffuseConstant:_,direction:null,display:null,dur:null,divisor:_,dominantBaseline:null,download:K,dx:null,dy:null,edgeMode:null,editable:null,elevation:_,enableBackground:null,end:null,event:null,exponent:_,externalResourcesRequired:null,fill:null,fillOpacity:_,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:mt,g2:mt,glyphName:mt,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:_,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:_,horizOriginX:_,horizOriginY:_,id:null,ideographic:_,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:_,k:_,k1:_,k2:_,k3:_,k4:_,kernelMatrix:xe,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:_,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:_,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:_,overlineThickness:_,paintOrder:null,panose1:null,path:null,pathLength:_,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:ae,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:_,pointsAtY:_,pointsAtZ:_,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:xe,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:xe,rev:xe,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:xe,requiredFeatures:xe,requiredFonts:xe,requiredFormats:xe,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:_,specularExponent:_,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:_,strikethroughThickness:_,string:null,stroke:null,strokeDashArray:xe,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:_,strokeOpacity:_,strokeWidth:null,style:null,surfaceScale:_,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:xe,tabIndex:_,tableValues:null,target:null,targetX:_,targetY:_,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:xe,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:_,underlineThickness:_,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:_,values:null,vAlphabetic:_,vMathematical:_,vectorEffect:null,vHanging:_,vIdeographic:_,version:null,vertAdvY:_,vertOriginX:_,vertOriginY:_,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:_,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:Fi}),zi=Nt({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,n){return"xlink:"+n.slice(5).toLowerCase()}}),Bi=Nt({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:Pi}),Gi=Nt({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,n){return"xml:"+n.slice(3).toLowerCase()}}),Zd=/[A-Z]/g,os=/-[a-z]/g,Qd=/^data[-\w.:]+$/i;function Jd(e,n){const t=Pt(n);let r=n,a=ve;if(t in e.normal)return e.property[e.normal[t]];if(t.length>4&&t.slice(0,4)==="data"&&Qd.test(n)){if(n.charAt(4)==="-"){const s=n.slice(5).replace(os,tf);r="data"+s.charAt(0).toUpperCase()+s.slice(1)}else{const s=n.slice(4);if(!os.test(s)){let i=s.replace(Zd,ef);i.charAt(0)!=="-"&&(i="-"+i),n="data"+i}}a=ca}return new a(r,n)}function ef(e){return"-"+e.toLowerCase()}function tf(e){return e.charAt(1).toUpperCase()}const nf=Mi([$i,qd,zi,Bi,Gi],"html"),rf=Mi([$i,Xd,zi,Bi,Gi],"svg");function ls(e){const n=[],t=String(e||"");let r=t.indexOf(","),a=0,s=!1;for(;!s;){r===-1&&(r=t.length,s=!0);const i=t.slice(a,r).trim();(i||!s)&&n.push(i),a=r+1,r=t.indexOf(",",a)}return n}const us=/[#.]/g;function af(e,n){const t=e||"",r={};let a=0,s,i;for(;a<t.length;){us.lastIndex=a;const o=us.exec(t),l=t.slice(a,o?o.index:t.length);l&&(s?s==="#"?r.id=l:Array.isArray(r.className)?r.className.push(l):r.className=[l]:i=l,a+=l.length),o&&(s=o[0],a++)}return{type:"element",tagName:i||n||"div",properties:r,children:[]}}function cs(e){const n=String(e||"").trim();return n?n.split(/[ \t\n\r\f]+/g):[]}function Ui(e,n,t){const r=t?uf(t):void 0;function a(s,i,...o){let l;if(s==null){l={type:"root",children:[]};const c=i;o.unshift(c)}else{l=af(s,n);const c=l.tagName.toLowerCase(),d=r?r.get(c):void 0;if(l.tagName=d||c,sf(i))o.unshift(i);else for(const[f,p]of Object.entries(i))of(e,l.properties,f,p)}for(const c of o)ur(l.children,c);return l.type==="element"&&l.tagName==="template"&&(l.content={type:"root",children:l.children},l.children=[]),l}return a}function sf(e){if(e===null||typeof e!="object"||Array.isArray(e))return!0;if(typeof e.type!="string")return!1;const n=e,t=Object.keys(e);for(const r of t){const a=n[r];if(a&&typeof a=="object"){if(!Array.isArray(a))return!0;const s=a;for(const i of s)if(typeof i!="number"&&typeof i!="string")return!0}}return!!("children"in e&&Array.isArray(e.children))}function of(e,n,t,r){const a=Jd(e,t);let s;if(r!=null){if(typeof r=="number"){if(Number.isNaN(r))return;s=r}else typeof r=="boolean"?s=r:typeof r=="string"?a.spaceSeparated?s=cs(r):a.commaSeparated?s=ls(r):a.commaOrSpaceSeparated?s=cs(ls(r).join(" ")):s=ds(a,a.property,r):Array.isArray(r)?s=[...r]:s=a.property==="style"?lf(r):String(r);if(Array.isArray(s)){const i=[];for(const o of s)i.push(ds(a,a.property,o));s=i}a.property==="className"&&Array.isArray(n.className)&&(s=n.className.concat(s)),n[a.property]=s}}function ur(e,n){if(n!=null)if(typeof n=="number"||typeof n=="string")e.push({type:"text",value:String(n)});else if(Array.isArray(n))for(const t of n)ur(e,t);else if(typeof n=="object"&&"type"in n)n.type==="root"?ur(e,n.children):e.push(n);else throw new Error("Expected node, nodes, or string, got `"+n+"`")}function ds(e,n,t){if(typeof t=="string"){if(e.number&&t&&!Number.isNaN(Number(t)))return Number(t);if((e.boolean||e.overloadedBoolean)&&(t===""||Pt(t)===Pt(n)))return!0}return t}function lf(e){const n=[];for(const[t,r]of Object.entries(e))n.push([t,r].join(": "));return n.join("; ")}function uf(e){const n=new Map;for(const t of e)n.set(t.toLowerCase(),t);return n}const cf=["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","solidColor","textArea","textPath"],df=Ui(nf,"div");Ui(rf,"g",cf);const ff=["AElig","AMP","Aacute","Acirc","Agrave","Aring","Atilde","Auml","COPY","Ccedil","ETH","Eacute","Ecirc","Egrave","Euml","GT","Iacute","Icirc","Igrave","Iuml","LT","Ntilde","Oacute","Ocirc","Ograve","Oslash","Otilde","Ouml","QUOT","REG","THORN","Uacute","Ucirc","Ugrave","Uuml","Yacute","aacute","acirc","acute","aelig","agrave","amp","aring","atilde","auml","brvbar","ccedil","cedil","cent","copy","curren","deg","divide","eacute","ecirc","egrave","eth","euml","frac12","frac14","frac34","gt","iacute","icirc","iexcl","igrave","iquest","iuml","laquo","lt","macr","micro","middot","nbsp","not","ntilde","oacute","ocirc","ograve","ordf","ordm","oslash","otilde","ouml","para","plusmn","pound","quot","raquo","reg","sect","shy","sup1","sup2","sup3","szlig","thorn","times","uacute","ucirc","ugrave","uml","uuml","yacute","yen","yuml"],fs={0:"�",128:"€",130:"‚",131:"ƒ",132:"„",133:"…",134:"†",135:"‡",136:"ˆ",137:"‰",138:"Š",139:"‹",140:"Œ",142:"Ž",145:"‘",146:"’",147:"“",148:"”",149:"•",150:"–",151:"—",152:"˜",153:"™",154:"š",155:"›",156:"œ",158:"ž",159:"Ÿ"};function Hi(e){const n=typeof e=="string"?e.charCodeAt(0):e;return n>=48&&n<=57}function pf(e){const n=typeof e=="string"?e.charCodeAt(0):e;return n>=97&&n<=102||n>=65&&n<=70||n>=48&&n<=57}function gf(e){const n=typeof e=="string"?e.charCodeAt(0):e;return n>=97&&n<=122||n>=65&&n<=90}function ps(e){return gf(e)||Hi(e)}const gs=document.createElement("i");function hs(e){const n="&"+e+";";gs.innerHTML=n;const t=gs.textContent;return t.charCodeAt(t.length-1)===59&&e!=="semi"||t===n?!1:t}const hf=["","Named character references must be terminated by a semicolon","Numeric character references must be terminated by a semicolon","Named character references cannot be empty","Numeric character references cannot be empty","Named character references must be known","Numeric character references cannot be disallowed","Numeric character references cannot be outside the permissible Unicode range"];function mf(e,n){const t={},r=typeof t.additional=="string"?t.additional.charCodeAt(0):t.additional,a=[];let s=0,i=-1,o="",l,c;t.position&&("start"in t.position||"indent"in t.position?(c=t.position.indent,l=t.position.start):l=t.position);let d=(l?l.line:0)||1,f=(l?l.column:0)||1,p=h(),g;for(s--;++s<=e.length;)if(g===10&&(f=(c?c[i]:0)||1),g=e.charCodeAt(s),g===38){const y=e.charCodeAt(s+1);if(y===9||y===10||y===12||y===32||y===38||y===60||Number.isNaN(y)||r&&y===r){o+=String.fromCharCode(g),f++;continue}const w=s+1;let x=w,v=w,N;if(y===35){v=++x;const R=e.charCodeAt(v);R===88||R===120?(N="hexadecimal",v=++x):N="decimal"}else N="named";let E="",C="",A="";const O=N==="named"?ps:N==="decimal"?Hi:pf;for(v--;++v<=e.length;){const R=e.charCodeAt(v);if(!O(R))break;A+=String.fromCharCode(R),N==="named"&&ff.includes(A)&&(E=A,C=hs(A))}let I=e.charCodeAt(v)===59;if(I){v++;const R=N==="named"?hs(A):!1;R&&(E=A,C=R)}let j=1+v-w,D="";if(!(!I&&t.nonTerminated===!1))if(!A)N!=="named"&&m(4,j);else if(N==="named"){if(I&&!C)m(5,1);else if(E!==A&&(v=x+E.length,j=1+v-x,I=!1),!I){const R=E?1:3;if(t.attribute){const M=e.charCodeAt(v);M===61?(m(R,j),C=""):ps(M)?C="":m(R,j)}else m(R,j)}D=C}else{I||m(2,j);let R=Number.parseInt(A,N==="hexadecimal"?16:10);if(bf(R))m(7,j),D="�";else if(R in fs)m(6,j),D=fs[R];else{let M="";yf(R)&&m(6,j),R>65535&&(R-=65536,M+=String.fromCharCode(R>>>10|55296),R=56320|R&1023),D=M+String.fromCharCode(R)}}if(D){b(),p=h(),s=v-1,f+=v-w+1,a.push(D);const R=h();R.offset++,t.reference&&t.reference.call(t.referenceContext||void 0,D,{start:p,end:R},e.slice(w-1,v)),p=R}else A=e.slice(w-1,v),o+=A,f+=A.length,s=v-1}else g===10&&(d++,i++,f=0),Number.isNaN(g)?b():(o+=String.fromCharCode(g),f++);return a.join("");function h(){return{line:d,column:f,offset:s+((l?l.offset:0)||0)}}function m(y,w){let x;t.warning&&(x=h(),x.column+=w,x.offset+=w,t.warning.call(t.warningContext||void 0,hf[y],x,y))}function b(){o&&(a.push(o),t.text&&t.text.call(t.textContext||void 0,o,{start:p,end:h()}),o="")}}function bf(e){return e>=55296&&e<=57343||e>1114111}function yf(e){return e>=1&&e<=8||e===11||e>=13&&e<=31||e>=127&&e<=159||e>=64976&&e<=65007||(e&65535)===65535||(e&65535)===65534}var vf=0,Jt={},fe={util:{type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++vf}),e.__id},clone:function e(n,t){t=t||{};var r,a;switch(fe.util.type(n)){case"Object":if(a=fe.util.objId(n),t[a])return t[a];r={},t[a]=r;for(var s in n)n.hasOwnProperty(s)&&(r[s]=e(n[s],t));return r;case"Array":return a=fe.util.objId(n),t[a]?t[a]:(r=[],t[a]=r,n.forEach(function(i,o){r[o]=e(i,t)}),r);default:return n}}},languages:{plain:Jt,plaintext:Jt,text:Jt,txt:Jt,extend:function(e,n){var t=fe.util.clone(fe.languages[e]);for(var r in n)t[r]=n[r];return t},insertBefore:function(e,n,t,r){r=r||fe.languages;var a=r[e],s={};for(var i in a)if(a.hasOwnProperty(i)){if(i==n)for(var o in t)t.hasOwnProperty(o)&&(s[o]=t[o]);t.hasOwnProperty(i)||(s[i]=a[i])}var l=r[e];return r[e]=s,fe.languages.DFS(fe.languages,function(c,d){d===l&&c!=e&&(this[c]=s)}),s},DFS:function e(n,t,r,a){a=a||{};var s=fe.util.objId;for(var i in n)if(n.hasOwnProperty(i)){t.call(n,i,n[i],r||i);var o=n[i],l=fe.util.type(o);l==="Object"&&!a[s(o)]?(a[s(o)]=!0,e(o,t,null,a)):l==="Array"&&!a[s(o)]&&(a[s(o)]=!0,e(o,t,i,a))}}},plugins:{},highlight:function(e,n,t){var r={code:e,grammar:n,language:t};if(fe.hooks.run("before-tokenize",r),!r.grammar)throw new Error('The language "'+r.language+'" has no grammar.');return r.tokens=fe.tokenize(r.code,r.grammar),fe.hooks.run("after-tokenize",r),jt.stringify(fe.util.encode(r.tokens),r.language)},tokenize:function(e,n){var t=n.rest;if(t){for(var r in t)n[r]=t[r];delete n.rest}var a=new wf;return rn(a,a.head,e),Ki(e,a,n,a.head,0),Sf(a)},hooks:{all:{},add:function(e,n){var t=fe.hooks.all;t[e]=t[e]||[],t[e].push(n)},run:function(e,n){var t=fe.hooks.all[e];if(!(!t||!t.length))for(var r=0,a;a=t[r++];)a(n)}},Token:jt};function jt(e,n,t,r){this.type=e,this.content=n,this.alias=t,this.length=(r||"").length|0}function ms(e,n,t,r){e.lastIndex=n;var a=e.exec(t);if(a&&r&&a[1]){var s=a[1].length;a.index+=s,a[0]=a[0].slice(s)}return a}function Ki(e,n,t,r,a,s){for(var i in t)if(!(!t.hasOwnProperty(i)||!t[i])){var o=t[i];o=Array.isArray(o)?o:[o];for(var l=0;l<o.length;++l){if(s&&s.cause==i+","+l)return;var c=o[l],d=c.inside,f=!!c.lookbehind,p=!!c.greedy,g=c.alias;if(p&&!c.pattern.global){var h=c.pattern.toString().match(/[imsuy]*$/)[0];c.pattern=RegExp(c.pattern.source,h+"g")}for(var m=c.pattern||c,b=r.next,y=a;b!==n.tail&&!(s&&y>=s.reach);y+=b.value.length,b=b.next){var w=b.value;if(n.length>e.length)return;if(!(w instanceof jt)){var x=1,v;if(p){if(v=ms(m,y,e,f),!v||v.index>=e.length)break;var A=v.index,N=v.index+v[0].length,E=y;for(E+=b.value.length;A>=E;)b=b.next,E+=b.value.length;if(E-=b.value.length,y=E,b.value instanceof jt)continue;for(var C=b;C!==n.tail&&(E<N||typeof C.value=="string");C=C.next)x++,E+=C.value.length;x--,w=e.slice(y,E),v.index-=y}else if(v=ms(m,0,w,f),!v)continue;var A=v.index,O=v[0],I=w.slice(0,A),j=w.slice(A+O.length),D=y+w.length;s&&D>s.reach&&(s.reach=D);var R=b.prev;I&&(R=rn(n,R,I),y+=I.length),xf(n,R,x);var M=new jt(i,d?fe.tokenize(O,d):O,g,O);if(b=rn(n,R,M),j&&rn(n,b,j),x>1){var H={cause:i+","+l,reach:D};Ki(e,n,t,b.prev,y,H),s&&H.reach>s.reach&&(s.reach=H.reach)}}}}}}function wf(){var e={value:null,prev:null,next:null},n={value:null,prev:e,next:null};e.next=n,this.head=e,this.tail=n,this.length=0}function rn(e,n,t){var r=n.next,a={value:t,prev:n,next:r};return n.next=a,r.prev=a,e.length++,a}function xf(e,n,t){for(var r=n.next,a=0;a<t&&r!==e.tail;a++)r=r.next;n.next=r,r.prev=n,e.length-=a}function Sf(e){for(var n=[],t=e.head.next;t!==e.tail;)n.push(t.value),t=t.next;return n}const Wi=fe;function Vi(){}Vi.prototype=Wi;const $=new Vi;$.highlight=Ef;$.register=Nf;$.alias=kf;$.registered=Af;$.listLanguages=Cf;$.util.encode=Tf;$.Token.stringify=cr;function Ef(e,n){if(typeof e!="string")throw new TypeError("Expected `string` for `value`, got `"+e+"`");let t,r;if(n&&typeof n=="object")t=n;else{if(r=n,typeof r!="string")throw new TypeError("Expected `string` for `name`, got `"+r+"`");if(Object.hasOwn($.languages,r))t=$.languages[r];else throw new Error("Unknown language: `"+r+"` is not registered")}return{type:"root",children:Wi.highlight.call($,e,t,r)}}function Nf(e){if(typeof e!="function"||!e.displayName)throw new Error("Expected `function` for `syntax`, got `"+e+"`");Object.hasOwn($.languages,e.displayName)||e($)}function kf(e,n){const t=$.languages;let r={};typeof e=="string"?n&&(r[e]=n):r=e;let a;for(a in r)if(Object.hasOwn(r,a)){const s=r[a],i=typeof s=="string"?[s]:s;let o=-1;for(;++o<i.length;)t[i[o]]=t[a]}}function Af(e){if(typeof e!="string")throw new TypeError("Expected `string` for `aliasOrLanguage`, got `"+e+"`");return Object.hasOwn($.languages,e)}function Cf(){const e=$.languages,n=[];let t;for(t in e)Object.hasOwn(e,t)&&typeof e[t]=="object"&&n.push(t);return n}function cr(e,n){if(typeof e=="string")return{type:"text",value:e};if(Array.isArray(e)){const r=[];let a=-1;for(;++a<e.length;)e[a]!==null&&e[a]!==void 0&&e[a]!==""&&r.push(cr(e[a],n));return r}const t={attributes:{},classes:["token",e.type],content:cr(e.content,n),language:n,tag:"span",type:e.type};return e.alias&&t.classes.push(...typeof e.alias=="string"?[e.alias]:e.alias),$.hooks.run("wrap",t),df(t.tag+"."+t.classes.join("."),If(t.attributes),t.content)}function Tf(e){return e}function If(e){let n;for(n in e)Object.hasOwn(e,n)&&(e[n]=mf(e[n]));return e}$.register(Fe);$.register(Gt);$.register(jn);$.register(Mr);$.register($r);$.register(Fr);$.register(Ut);$.register(Et);$.register(Pr);$.register(zr);$.register(Br);$.register(Gr);$.register(Ur);$.register(Rn);$.register(Hr);$.register(Kr);$.register(Wr);$.register(Vr);$.register(Yr);$.register(qr);$.register(Xr);$.register(Zr);$.register(Qr);$.register(On);$.register(Jr);$.register(ea);$.register(ta);$.register(na);$.register(ra);$.register(aa);$.register(sa);$.register(ia);$.register(oa);$.register(la);$.register(Ln);$.register(ua);function Yi(e,n,t){const[r,a]=S.useState(!1),[s,i]=S.useState(""),[o,l]=S.useState(0),c=S.useCallback((p,g)=>{const h=p.substring(0,g),m=h.lastIndexOf("@");if(m!==-1){const b=h.substring(m+1);if(!/\s/.test(b)){i(b),a(!0),l(0);return}}a(!1)},[]),d=S.useCallback((p,g)=>{if(!e.current)return g;const h=e.current,m=h.selectionStart,y=g.substring(0,m).lastIndexOf("@");if(y===-1)return g;const w=g.substring(0,y),x=g.substring(m),v=`${w}@${p.name} ${x}`;return a(!1),i(""),setTimeout(()=>{const N=y+p.name.length+2;h.setSelectionRange(N,N),h.focus()},0),v},[e]),f=S.useCallback((p,g,h)=>{if(!r)return!1;const m=n.filter(b=>b.name.toLowerCase().includes(s.toLowerCase()));switch(p.key){case"ArrowDown":return m.length===0?!1:(p.preventDefault(),l(b=>(b+1)%m.length),!0);case"ArrowUp":return m.length===0?!1:(p.preventDefault(),l(b=>(b-1+m.length)%m.length),!0);case"Enter":if(m.length>0){p.preventDefault();const b=m[o],y=d(b,g);return h(y),t==null||t(b),!0}return!1;case"Escape":return p.preventDefault(),a(!1),i(""),!0;default:return!1}},[r,s,o,n,d,t]);return{showAutocomplete:r,mentionQuery:s,selectedIndex:o,handleInputChange:c,handleKeyDown:f,insertMention:d}}function _f(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function qi(e,n){const t=new Set,r=e.toLowerCase();for(const a of n){const s=a.name.trim().toLowerCase();if(!s)continue;const i=`@${_f(s)}`;new RegExp(`(^|[^\\w@])${i}(?=$|[^\\w])`).test(r)&&t.add(a.id)}return[...t]}async function jf(e,n){const t=await e(`/api/agents?projectId=${encodeURIComponent(n)}`);if(!t.ok)throw new Error("Failed to fetch agents");return t.json()}function Rf({commentCount:e,hasUnresolved:n,onClick:t,className:r}){const a=`${e} comment${e>1?"s":""}${n?", has unresolved":""}`;return u.jsx("button",{onClick:t,className:V("flex items-center justify-center h-5 w-5 rounded-full border text-xs hover:bg-accent",n?pe.warn:"bg-muted text-muted-foreground",r),title:`${e} comment${e>1?"s":""}`,"aria-label":a,children:u.jsx(Ie,{className:"h-3 w-3","aria-hidden":"true"})})}function Of({lineStart:e,lineEnd:n,side:t,projectId:r,onSubmit:a,onCancel:s,isSubmitting:i=!1,className:o}){const l=Ye(),[c,d]=S.useState(""),[f,p]=S.useState("comment"),[g,h]=S.useState(new Set),[m,b]=S.useState(""),[y,w]=S.useState(!1),x=S.useRef(null),{data:v,isLoading:N}=hr({queryKey:["agents",r],queryFn:()=>jf(l,r),enabled:!!r}),E=(v==null?void 0:v.items)??[],{showAutocomplete:C,mentionQuery:A,selectedIndex:O,handleInputChange:I,handleKeyDown:j,insertMention:D}=Yi(x,E,T=>{h(G=>new Set([...G,T.id]))}),R=S.useMemo(()=>E.filter(T=>T.name.toLowerCase().includes(A.toLowerCase())),[E,A]),M=T=>{const G=D(T,c);d(G),h(oe=>new Set([...oe,T.id]))},H=S.useMemo(()=>{if(!m.trim())return E;const T=m.toLowerCase();return E.filter(G=>G.name.toLowerCase().includes(T))},[E,m]),W=6,X=S.useMemo(()=>{if(y)return H;const T=H.slice(0,W),G=H.filter(oe=>g.has(oe.id)&&!T.some(Q=>Q.id===oe.id));return[...T,...G]},[H,y,g]),k=H.length>W,U=e===n?`Line ${e}`:`Lines ${e}-${n}`,P=async()=>{if(!c.trim())return;const T=qi(c,E),G=[...new Set([...g,...T])];await a(c.trim(),f,G)};return u.jsxs("div",{className:V("new-comment-form border-l-2 border-status-ok/40 bg-status-ok/10 px-3 py-2 my-1",o),"data-testid":"new-comment-form",children:[u.jsxs("div",{className:"flex items-center justify-between mb-2",children:[u.jsxs("span",{className:"text-xs font-medium text-muted-foreground",children:[U," (",t==="new"?"new":"old",")"]}),u.jsx(ee,{size:"sm",variant:"ghost",className:"h-5 w-5 p-0",onClick:s,children:u.jsx(mn,{className:"h-3 w-3"})})]}),u.jsxs("div",{className:"relative mb-2",children:[u.jsx(an,{ref:x,placeholder:"Write a comment... (type @ to mention agents)",value:c,onChange:T=>{d(T.target.value),I(T.target.value,T.target.selectionStart)},onKeyDown:T=>{j(T,c,d)},className:"min-h-[80px] text-sm bg-background",disabled:i,autoFocus:!0}),C&&R.length>0&&u.jsx("div",{className:"absolute bottom-full left-0 mb-1 w-48 max-h-40 overflow-auto bg-popover border rounded-md shadow-lg z-50",children:R.map((T,G)=>u.jsxs("button",{type:"button",className:V("w-full px-3 py-1.5 text-sm text-left flex items-center gap-2",G===O?"bg-selected text-selected-foreground":"hover:bg-accent"),onClick:()=>M(T),children:[u.jsx(Be,{className:"h-3 w-3 text-muted-foreground"}),T.name]},T.id))})]}),E.length>0&&u.jsxs("div",{className:"mb-2 space-y-2",role:"group","aria-label":"Assign to agents",children:[u.jsxs("div",{className:"flex items-center gap-1 flex-wrap",children:[u.jsxs("span",{className:"text-xs text-muted-foreground mr-1",children:[u.jsx(Be,{className:"h-3 w-3 inline mr-0.5"}),"Assign to:"]}),u.jsx(wr,{type:"multiple",value:Array.from(g),onValueChange:T=>h(new Set(T)),className:"flex-wrap !justify-start gap-1",children:X.map(T=>u.jsxs(xr,{value:T.id,size:"sm",variant:"outline",className:"h-6 text-xs gap-1 px-2 data-[state=on]:!bg-primary data-[state=on]:!text-primary-foreground","aria-label":`Assign to ${T.name}`,children:[u.jsx(Be,{className:"h-3 w-3"}),T.name]},T.id))}),X.length===0&&m.trim()&&u.jsx("span",{className:"text-xs text-muted-foreground",children:"No agents found"}),k&&!y&&u.jsxs(ee,{variant:"ghost",size:"sm",className:"h-6 text-xs px-2",onClick:()=>w(!0),children:["+",H.length-W," more"]})]}),y&&u.jsx("div",{className:"space-y-2",children:u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsxs("div",{className:"relative flex-1",children:[u.jsx(fr,{className:"absolute left-2 top-1/2 -translate-y-1/2 h-3 w-3 text-muted-foreground"}),u.jsx(pr,{value:m,onChange:T=>b(T.target.value),placeholder:"Search agents...",className:"h-7 pl-7 text-xs"})]}),u.jsxs(ee,{variant:"ghost",size:"sm",className:"h-7 text-xs",onClick:()=>{w(!1),b("")},children:[u.jsx(gn,{className:"h-3 w-3 mr-1"}),"Collapse"]})]})})]}),E.length>0&&g.size===0&&!N&&u.jsx("p",{className:"text-xs text-muted-foreground",children:"No agents selected — no notifications will be sent"}),N&&u.jsx("div",{className:"mb-2 flex items-center gap-1",children:u.jsxs("span",{className:"text-xs text-muted-foreground",children:[u.jsx(Be,{className:"h-3 w-3 inline mr-0.5"}),"Loading agents..."]})}),u.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[u.jsxs("select",{value:f,onChange:T=>p(T.target.value),className:"text-xs border rounded px-2 py-1 bg-background",disabled:i,children:[u.jsx("option",{value:"comment",children:"Comment"}),u.jsx("option",{value:"suggestion",children:"Suggestion"}),u.jsx("option",{value:"issue",children:"Issue"}),u.jsx("option",{value:"approval",children:"Approval"})]}),u.jsx("div",{className:"flex-1 min-w-0"}),u.jsx(ee,{size:"sm",variant:"ghost",onClick:s,disabled:i,children:"Cancel"}),u.jsx(ee,{size:"sm",onClick:P,disabled:!c.trim()||i,children:i?"Posting...":"Comment"})]})]})}function Lf(e){const n=[],t=/```suggestion\s*\n([\s\S]*?)```/g;let r=0,a;for(;(a=t.exec(e))!==null;){if(a.index>r){const s=e.slice(r,a.index).trim();s&&n.push({type:"text",content:s})}n.push({type:"suggestion",content:a[1].trimEnd()}),r=a.index+a[0].length}if(r<e.length){const s=e.slice(r).trim();s&&n.push({type:"text",content:s})}return n.length===0&&e.trim()&&n.push({type:"text",content:e.trim()}),n}function Df(e){return/```suggestion\s*\n[\s\S]*?```/.test(e)}function Mf({suggestedCode:e,originalCode:n,filePath:t,lineStart:r,lineEnd:a,onApply:s,isApplying:i=!1,isApplied:o=!1,showApplyButton:l=!0,className:c}){const[d,f]=S.useState(!1),p=async()=>{await navigator.clipboard.writeText(e),f(!0),setTimeout(()=>f(!1),2e3)},g=r!=null?a!=null&&a!==r?`L${r}-${a}`:`L${r}`:null;return u.jsxs("div",{className:V("rounded-md border bg-background overflow-hidden",c),"data-testid":"suggestion-block",children:[u.jsxs("div",{className:"flex items-center justify-between px-3 py-1.5 bg-background border-b",children:[u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx(Le,{variant:"outline",className:V("text-xs",pe.info),children:"Suggestion"}),t&&g&&u.jsxs("span",{className:"text-xs text-muted-foreground font-mono",children:[t,":",g]})]}),u.jsx("div",{className:"flex items-center gap-1",children:u.jsx(ee,{variant:"ghost",size:"sm",className:"h-6 w-6 p-0",onClick:p,title:"Copy suggestion",children:d?u.jsx(Rt,{className:"h-3.5 w-3.5 text-status-ok"}):u.jsx(io,{className:"h-3.5 w-3.5"})})})]}),u.jsxs("div",{className:"text-sm font-mono",children:[n&&u.jsx("div",{className:"bg-destructive/10 border-l-4 border-destructive/40",children:n.split(`
68
- `).map((h,m)=>u.jsxs("div",{className:"px-3 py-0.5 flex",children:[u.jsx("span",{className:"text-destructive mr-2 select-none",children:"-"}),u.jsx("span",{className:"text-foreground",children:h||" "})]},`old-${m}`))}),u.jsx("div",{className:"bg-status-ok/10 border-l-4 border-status-ok/40",children:e.split(`
69
- `).map((h,m)=>u.jsxs("div",{className:"px-3 py-0.5 flex",children:[u.jsx("span",{className:"text-status-ok mr-2 select-none",children:"+"}),u.jsx("span",{className:"text-foreground",children:h||" "})]},`new-${m}`))})]}),l&&s&&!o&&u.jsx("div",{className:"px-3 py-2 bg-muted/50 border-t",children:u.jsx(ee,{size:"sm",variant:"secondary",className:"h-7 text-xs",onClick:s,disabled:i,children:i?u.jsxs(u.Fragment,{children:[u.jsx(oo,{className:"h-3 w-3 mr-1 animate-spin"}),"Applying..."]}):u.jsxs(u.Fragment,{children:[u.jsx(lo,{className:"h-3 w-3 mr-1"}),"Apply Suggestion"]})})}),o&&u.jsx("div",{className:"px-3 py-2 bg-status-ok/10 border-t",children:u.jsxs("span",{className:"text-xs text-status-ok flex items-center gap-1",children:[u.jsx(Rt,{className:"h-3 w-3"}),"Suggestion applied"]})})]})}function bs(e){const n=new Date(e),r=new Date().getTime()-n.getTime(),a=Math.floor(r/1e3),s=Math.floor(a/60),i=Math.floor(s/60),o=Math.floor(i/24);return a<60?"just now":s<60?`${s}m ago`:i<24?`${i}h ago`:o<7?`${o}d ago`:n.toLocaleDateString()}const $f={comment:{icon:Ie,label:"Comment",className:"bg-muted text-muted-foreground"},suggestion:{icon:yr,label:"Suggestion",className:pe.info},issue:{icon:wt,label:"Issue",className:pe.warn},approval:{icon:mr,label:"Approval",className:pe.ok}},Ff={open:{icon:wt,label:"Open",className:"text-status-warn"},resolved:{icon:Rt,label:"Resolved",className:"text-status-ok"},wont_fix:{icon:mn,label:"Won't Fix",className:"text-muted-foreground"}};function Xi({comment:e,isReply:n=!1,isPending:t=!1,getSessionForAgent:r,onOpenTerminal:a}){var b;const s=$f[e.commentType],i=Ff[e.status],o=s.icon,l=i.icon,c=e.authorType==="agent",d=c?Be:xs,f=c?e.authorAgentName??((b=e.authorAgentId)==null?void 0:b.slice(0,8))??"Agent":"You",p=c&&e.authorAgentId&&r?r(e.authorAgentId):null,g=()=>{p&&a&&a(p)},h=(y,w,x)=>{const v=(r==null?void 0:r(y))??null;return u.jsxs("span",{children:[x&&", ",v&&a?u.jsx("button",{onClick:()=>a(v),className:"bg-background text-primary hover:underline font-medium",children:w}):u.jsx(Dn,{children:u.jsxs(Mn,{children:[u.jsx($n,{asChild:!0,children:u.jsx("span",{className:"text-status-warn cursor-not-allowed",children:w})}),u.jsx(Fn,{children:u.jsx("p",{children:"No running session"})})]})})]},y)},m=()=>{if(!t||!e.targetAgents||e.targetAgents.length===0)return null;const y=3,w=e.targetAgents.slice(0,y),x=e.targetAgents.length-y;return u.jsxs("span",{className:"text-xs text-status-warn flex items-center gap-1",children:["Waiting on: ",w.map((v,N)=>h(v.agentId,v.name,N>0)),x>0&&u.jsx(Dn,{children:u.jsxs(Mn,{children:[u.jsx($n,{asChild:!0,children:u.jsxs("span",{className:"text-status-warn cursor-help",children:["+",x," more"]})}),u.jsx(Fn,{children:u.jsx("p",{children:e.targetAgents.slice(y).map(v=>v.name).join(", ")})})]})})]})};return u.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[u.jsxs("div",{className:V("flex items-center gap-1.5 text-sm font-medium",c?"text-purple-700":"text-foreground"),children:[u.jsx(d,{className:"h-4 w-4","aria-hidden":"true"}),c&&p&&a?u.jsx("button",{onClick:g,className:"hover:underline",title:"Open terminal",children:f}):c&&!p&&r?u.jsx(Dn,{children:u.jsxs(Mn,{children:[u.jsx($n,{asChild:!0,children:u.jsx("span",{className:"cursor-not-allowed",children:f})}),u.jsx(Fn,{children:u.jsx("p",{children:"No running session"})})]})}):u.jsx("span",{children:f})]}),!n&&u.jsxs(Ss,{fit:!1,variant:"outline",className:V("text-xs",s.className),"aria-label":`Comment type: ${s.label}`,children:[u.jsx(o,{className:"h-3 w-3 mr-1","aria-hidden":"true"}),s.label]}),!n&&u.jsxs("span",{className:V("flex items-center gap-1 text-xs",i.className),role:"status","aria-label":`Status: ${i.label}`,children:[u.jsx(l,{className:"h-3 w-3","aria-hidden":"true"}),i.label]}),!n&&t?m():!n&&e.targetAgents&&e.targetAgents.length>0&&u.jsxs(Le,{variant:"outline",className:"text-xs",title:e.targetAgents.map(y=>y.name).join(", "),children:["Sent to: ",e.targetAgents.length]}),u.jsx("time",{className:"text-xs text-muted-foreground",dateTime:e.createdAt,children:bs(e.createdAt)}),e.editedAt&&u.jsx("span",{className:"text-xs text-muted-foreground italic",title:`Edited ${bs(e.editedAt)}`,children:"(edited)"})]})}function Pf({comment:e}){if(!e.filePath)return null;const n=e.lineStart!==null?e.lineEnd!==null&&e.lineEnd!==e.lineStart?`L${e.lineStart}-${e.lineEnd}`:`L${e.lineStart}`:null;return u.jsxs("div",{className:"flex items-center gap-1.5 text-xs text-muted-foreground mt-1",children:[u.jsx(De,{className:"h-3 w-3"}),u.jsx("span",{className:"font-mono",children:e.filePath}),n&&u.jsxs("span",{className:"text-muted-foreground",children:["(",n,")"]})]})}function zf({reply:e,getSessionForAgent:n,onOpenTerminal:t}){return u.jsxs("div",{className:"pl-4 border-l-2 border-muted mt-2",children:[u.jsx(Xi,{comment:e,isReply:!0,getSessionForAgent:n,onOpenTerminal:t}),u.jsx("p",{className:"text-sm mt-1 whitespace-pre-wrap",children:e.content})]})}function Bf({comment:e,replies:n=[],isPending:t=!1,getSessionForAgent:r,onOpenTerminal:a,onReply:s,onResolve:i,onApplySuggestion:o,onDelete:l,onEdit:c,isReplying:d=!1,isResolving:f=!1,isApplyingSuggestion:p=!1,isDeleting:g=!1,isEditing:h=!1,className:m}){const[b,y]=S.useState(!1),[w,x]=S.useState(""),[v,N]=S.useState(!1),[E,C]=S.useState(!1),[A,O]=S.useState("resolved"),[I,j]=S.useState(!0),[D,R]=S.useState(!1),[M,H]=S.useState(e.content),W=n.length>0,X=e.status==="open",k=e.authorType==="user",U=async()=>{!w.trim()||!s||(await s(e.id,w.trim()),x(""),y(!1))},P=async()=>{i&&(await i(e.id,A),N(!1))},T=async()=>{l&&(await l(e.id),C(!1))},G=async()=>{!M.trim()||!c||(await c(e.id,M.trim(),e.version),R(!1))},oe=()=>{H(e.content),R(!1)};return u.jsxs("div",{className:V("p-3 rounded-lg border bg-card",t&&"border-l-4 border-l-status-warn/40 bg-status-warn/10",!X&&"text-muted-foreground",m),"data-testid":"comment-thread",children:[u.jsxs("div",{className:"flex items-start gap-2",children:[W&&u.jsx("button",{onClick:()=>j(!I),className:"mt-0.5 p-0.5 hover:bg-muted rounded","aria-label":I?"Collapse replies":"Expand replies",children:I?u.jsx(gn,{className:"h-4 w-4 text-muted-foreground"}):u.jsx(hn,{className:"h-4 w-4 text-muted-foreground"})}),u.jsxs("div",{className:"flex-1 min-w-0",children:[u.jsx(Xi,{comment:e,isPending:t,getSessionForAgent:r,onOpenTerminal:a}),u.jsx(Pf,{comment:e})]}),k&&(c||l)&&!D&&u.jsxs(uo,{children:[u.jsx(co,{asChild:!0,children:u.jsxs(ee,{variant:"ghost",size:"sm",className:"h-6 w-6 p-0",children:[u.jsx(fo,{className:"h-4 w-4"}),u.jsx("span",{className:"sr-only",children:"Comment actions"})]})}),u.jsxs(po,{align:"end",children:[c&&u.jsxs(ba,{onClick:()=>R(!0),children:[u.jsx(go,{className:"h-4 w-4 mr-2"}),"Edit"]}),l&&u.jsxs(ba,{onClick:()=>C(!0),className:"text-destructive focus:text-destructive",children:[u.jsx(ho,{className:"h-4 w-4 mr-2"}),"Delete"]})]})]})]}),u.jsx("div",{className:V("mt-2",W&&"ml-6"),children:D?u.jsxs("div",{className:"space-y-2",children:[u.jsx(an,{value:M,onChange:Q=>H(Q.target.value),className:"min-h-[80px] text-sm",disabled:h,"aria-label":"Edit comment content"}),u.jsxs("div",{className:"flex gap-2",children:[u.jsx(ee,{size:"sm",onClick:G,disabled:!M.trim()||h||M.trim()===e.content,children:h?"Saving...":"Save"}),u.jsx(ee,{size:"sm",variant:"ghost",onClick:oe,disabled:h,children:"Cancel"})]})]}):Df(e.content)?u.jsx("div",{className:"space-y-2",children:Lf(e.content).map((Q,B)=>Q.type==="suggestion"?u.jsx(Mf,{suggestedCode:Q.content,filePath:e.filePath,lineStart:e.lineStart,lineEnd:e.lineEnd,onApply:o?()=>o(e.id):void 0,isApplying:p,isApplied:e.status==="resolved",showApplyButton:!!o&&e.status==="open"},B):u.jsx("p",{className:"text-sm whitespace-pre-wrap",children:Q.content},B))}):u.jsx("p",{className:"text-sm whitespace-pre-wrap",children:e.content})}),W&&I&&u.jsx("div",{className:"mt-3 ml-6 space-y-2",children:n.map(Q=>u.jsx(zf,{reply:Q,getSessionForAgent:r,onOpenTerminal:a},Q.id))}),b&&u.jsxs("div",{className:"mt-3 ml-6 space-y-2",children:[u.jsx(an,{placeholder:"Write a reply...",value:w,onChange:Q=>x(Q.target.value),className:"min-h-[80px] text-sm",disabled:d}),u.jsxs("div",{className:"flex gap-2",children:[u.jsx(ee,{size:"sm",onClick:U,disabled:!w.trim()||d,children:d?"Posting...":"Reply"}),u.jsx(ee,{size:"sm",variant:"ghost",onClick:()=>{y(!1),x("")},children:"Cancel"})]})]}),!D&&u.jsxs("div",{className:"mt-3 flex flex-wrap gap-1",role:"group","aria-label":"Comment actions",children:[s&&u.jsxs(ee,{size:"sm",variant:"ghost",className:"h-7 text-xs",onClick:()=>y(!b),"aria-expanded":b,"aria-label":b?"Cancel reply":"Reply to this comment",children:[u.jsx(Zo,{className:"h-3 w-3 mr-1","aria-hidden":"true"}),"Reply"]}),X&&i&&u.jsxs(ee,{size:"sm",variant:"ghost",className:"h-7 text-xs",onClick:()=>N(!0),disabled:f,"aria-label":"Resolve this comment",children:[u.jsx(Rt,{className:"h-3 w-3 mr-1","aria-hidden":"true"}),"Resolve"]}),W&&u.jsxs("span",{className:"text-xs text-muted-foreground self-center","aria-live":"polite",children:[n.length," ",n.length===1?"reply":"replies"]})]}),u.jsx(sn,{open:v,onOpenChange:N,children:u.jsxs(on,{children:[u.jsxs(ln,{children:[u.jsx(un,{children:"Resolve Comment"}),u.jsx(cn,{children:"How do you want to resolve this comment?"})]}),u.jsxs("fieldset",{className:"py-4",children:[u.jsx("legend",{className:"sr-only",children:"Resolution status"}),u.jsxs("div",{className:"flex gap-4",children:[u.jsxs("label",{className:"flex items-center gap-2 cursor-pointer",children:[u.jsx("input",{type:"radio",name:"resolveStatus",value:"resolved",checked:A==="resolved",onChange:()=>O("resolved"),className:"h-4 w-4","aria-describedby":"resolve-desc"}),u.jsx("span",{className:"text-sm",children:"Resolved"})]}),u.jsxs("label",{className:"flex items-center gap-2 cursor-pointer",children:[u.jsx("input",{type:"radio",name:"resolveStatus",value:"wont_fix",checked:A==="wont_fix",onChange:()=>O("wont_fix"),className:"h-4 w-4","aria-describedby":"resolve-desc"}),u.jsx("span",{className:"text-sm",children:"Won't Fix"})]})]}),u.jsx("p",{id:"resolve-desc",className:"sr-only",children:"Choose resolved if the issue was addressed, or won't fix if it will not be addressed"})]}),u.jsxs(qn,{children:[u.jsx(ee,{variant:"outline",onClick:()=>N(!1),children:"Cancel"}),u.jsx(ee,{onClick:P,disabled:f,children:f?"Resolving...":"Confirm"})]})]})}),u.jsx(sn,{open:E,onOpenChange:C,children:u.jsxs(on,{children:[u.jsxs(ln,{children:[u.jsx(un,{children:"Delete Comment"}),u.jsxs(cn,{children:["Are you sure you want to delete this comment? This action cannot be undone.",W&&" All replies will also be deleted."]})]}),u.jsxs(qn,{children:[u.jsx(ee,{variant:"outline",onClick:()=>C(!1),children:"Cancel"}),u.jsx(ee,{variant:"destructive",onClick:T,disabled:g,children:g?"Deleting...":"Delete"})]})]})})]})}async function wp(e,n){const t=await e(`/api/reviews/${n}`);if(!t.ok)throw new Error("Failed to fetch review");return t.json()}async function xp(e,n){const t=await e("/api/reviews",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!t.ok)throw new Error("Failed to create review");return t.json()}async function Gf(e,n,t){const a=new URLSearchParams().toString(),s=a?`/api/reviews/${n}/comments?${a}`:`/api/reviews/${n}/comments`,i=await e(s);if(!i.ok)throw new Error("Failed to fetch review comments");return i.json()}const Sp={draft:"bg-muted border-border text-muted-foreground",pending:pe.warn,changes_requested:pe.warn,approved:pe.ok,closed:"bg-muted border-border text-muted-foreground"},Ep={draft:"Draft",pending:"Pending",changes_requested:"Changes Requested",approved:"Approved",closed:"Closed"};async function Np(e,n,t){const r=new URLSearchParams({projectId:n});t!=null&&t.ref&&r.append("ref",t.ref),r.append("limit",String(t.limit));const a=await e(`/api/git/commits?${r.toString()}`);if(!a.ok)throw new Error("Failed to fetch commits");return a.json()}async function kp(e,n){const t=await e(`/api/git/branches?projectId=${n}`);if(!t.ok)throw new Error("Failed to fetch branches");return t.json()}async function Ap(e,n,t,r){const a=new URLSearchParams({projectId:n,base:t,head:r}),s=await e(`/api/git/changed-files?${a.toString()}`);if(!s.ok)throw new Error("Failed to fetch changed files");return s.json()}async function Cp(e,n,t,r){const a=new URLSearchParams({projectId:n,base:t,head:r}),s=await e(`/api/git/diff?${a.toString()}`);if(!s.ok)throw new Error("Failed to fetch diff");return(await s.json()).diff}async function Tp(e,n,t="all"){const r=new URLSearchParams({projectId:n,filter:t}),a=await e(`/api/git/working-tree?${r.toString()}`);if(!a.ok)throw new Error("Failed to fetch working tree");return a.json()}async function Ip(e,n,t){const r=new URLSearchParams({projectId:n}),a=await e(`/api/git/commit/${t}?${r.toString()}`);if(!a.ok)throw new Error("Failed to fetch commit diff");return a.json()}async function _p(e,n){const t=new URLSearchParams({projectId:n}),r=await e(`/api/reviews/active?${t.toString()}`);if(!r.ok)throw new Error("Failed to fetch active review");return(await r.json()).review}async function jp(e,n,t){const r=await e(`/api/reviews/${n}/close`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({version:t})});if(!r.ok)throw new Error("Failed to close review");return r.json()}function Zi(e){const n=new Map;for(const t of e)if(t.parentId!==null){const r=n.get(t.parentId);r?r.push(t):n.set(t.parentId,[t])}return n}function da(e,n){const t=n.get(e)||[],r=[];for(const a of t)r.push(a),r.push(...da(a.id,n));return r.sort((a,s)=>new Date(a.createdAt).getTime()-new Date(s.createdAt).getTime())}function Uf(e){const n=new Map,t=Zi(e);return e.filter(a=>a.parentId===null).forEach(a=>{const s=da(a.id,t);n.set(a.id,s)}),n}function Hf(e){const n=Zi(e),t=new Map;for(const r of e)if(r.lineStart!==null&&r.parentId===null){const a=`${r.side||"new"}-${r.lineStart}`,s={root:r,replies:da(r.id,n)},i=t.get(a)||[];t.set(a,[...i,s])}for(const[r,a]of t)a.sort((s,i)=>new Date(s.root.createdAt).getTime()-new Date(i.root.createdAt).getTime()),t.set(r,a);return t}function It(e){const{comment:n,replies:t}=e;if(n.parentId!==null||n.status!=="open")return!1;const r=new Set(n.targetAgents.map(i=>i.agentId));if(r.size===0)return!1;let a=n.authorType==="user"?new Date(n.createdAt):null;for(const i of t)if(i.authorType==="user"){const o=new Date(i.createdAt);(!a||o>a)&&(a=o)}if(!a)return!1;let s=null;for(const i of t)if(i.authorType==="agent"&&i.authorAgentId&&r.has(i.authorAgentId)){const o=new Date(i.createdAt);(!s||o>s)&&(s=o)}return!s||a>s}const Kf={js:"javascript",jsx:"jsx",ts:"typescript",tsx:"tsx",py:"python",rb:"ruby",go:"go",rs:"rust",java:"java",kt:"kotlin",swift:"swift",c:"c",cpp:"cpp",h:"c",hpp:"cpp",cs:"csharp",php:"php",sh:"bash",bash:"bash",zsh:"bash",json:"json",yaml:"yaml",yml:"yaml",xml:"markup",html:"markup",css:"css",scss:"scss",less:"less",md:"markdown",sql:"sql",graphql:"graphql",dockerfile:"docker",makefile:"makefile"};function Wf(e){var t;const n=(t=e.split(".").pop())==null?void 0:t.toLowerCase();return n&&Kf[n]||null}function Vf(){return u.jsxs("div",{className:"h-full flex flex-col",children:[u.jsxs("div",{className:"p-3 border-b flex items-center gap-2",children:[u.jsx(ze,{className:"h-5 w-5"}),u.jsx(ze,{className:"h-5 w-48"}),u.jsx("div",{className:"flex-1"}),u.jsx(ze,{className:"h-8 w-20"}),u.jsx(ze,{className:"h-8 w-20"})]}),u.jsx("div",{className:"flex-1 p-4 space-y-2",children:Array.from({length:15}).map((e,n)=>u.jsx(ze,{className:"h-5 w-full",style:{width:`${60+Math.random()*40}%`}},n))})]})}function Yf({filePath:e}){return u.jsxs("div",{className:"flex flex-col items-center justify-center h-full text-muted-foreground p-8",children:[u.jsx(Bo,{className:"h-12 w-12 mb-4"}),u.jsx("p",{className:"text-lg font-medium mb-2",children:"Binary file"}),u.jsxs("p",{className:"text-sm text-center",children:["Cannot display diff for binary file: ",e]})]})}function qf({message:e}){return u.jsxs("div",{className:"flex flex-col items-center justify-center h-full text-destructive p-8",children:[u.jsx(wt,{className:"h-12 w-12 mb-4"}),u.jsx("p",{className:"text-lg font-medium mb-2",children:"Failed to load diff"}),u.jsx("p",{className:"text-sm text-center",children:e})]})}function Xf({fileInfo:e}){return(e==null?void 0:e.status)==="added"&&(e==null?void 0:e.additions)===0&&(e==null?void 0:e.deletions)===0?u.jsxs("div",{className:"flex flex-col items-center justify-center h-full text-muted-foreground p-8",children:[u.jsx(De,{className:"h-12 w-12 mb-4"}),u.jsx("p",{className:"text-lg font-medium mb-2",children:"New file"}),u.jsx("p",{className:"text-sm text-center max-w-md",children:"This is an untracked file. The diff content may not be available if the file is binary, too large, or was skipped during diff generation."})]}):u.jsxs("div",{className:"flex flex-col items-center justify-center h-full text-muted-foreground p-8",children:[u.jsx(De,{className:"h-12 w-12 mb-4"}),u.jsx("p",{className:"text-lg font-medium mb-2",children:"No changes"}),u.jsx("p",{className:"text-sm text-center",children:"This file has no visible changes."})]})}function Pe(e,n){return e.type==="insert"?n==="new"?e.lineNumber:null:e.type==="delete"?n==="old"?e.lineNumber:null:n==="old"?e.oldLineNumber:e.newLineNumber}const Zf=8,Qf=S.memo(function({hunk:n,hunkKey:t,isExpanded:r,onToggleExpand:a,children:s,viewType:i}){const o=S.useRef(null),[l,c]=S.useState(!1);S.useEffect(()=>{const m=o.current;if(!m)return;const b=new IntersectionObserver(y=>{y.forEach(w=>{w.isIntersecting&&c(!0)})},{rootMargin:"200px",threshold:0});return b.observe(m),()=>{b.disconnect()}},[]);const d=n.changes.length,f=d>Zf*2,p=n.oldStart,g=n.newStart,h=i==="split"?4:3;return u.jsxs(u.Fragment,{children:[u.jsx("tbody",{ref:o,"data-hunk-key":t,children:f?u.jsx("tr",{className:"bg-muted/50 border-y text-xs text-muted-foreground",children:u.jsx("td",{colSpan:h,className:"px-2 py-1",children:u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsxs("button",{onClick:a,className:"flex items-center gap-1 hover:text-foreground","aria-expanded":r,"aria-label":`${r?"Collapse":"Expand"} ${d} lines`,children:[r?u.jsx(gn,{className:"h-3 w-3","aria-hidden":"true"}):u.jsx(hn,{className:"h-3 w-3","aria-hidden":"true"}),u.jsxs("span",{children:[r?"Collapse":"Expand"," ",d," lines"]})]}),u.jsxs("span",{className:"text-muted-foreground","aria-label":`Hunk at line ${p} old, ${g} new`,children:["@@ -",p," +",g," @@"]})]})})}):u.jsx("tr",{className:"h-0",children:u.jsx("td",{colSpan:h})})}),!f||r?l?s:u.jsx("tbody",{children:u.jsx("tr",{style:{height:`${d*22}px`},children:u.jsx("td",{colSpan:h,className:"text-center text-muted-foreground text-sm py-4",children:u.jsx(Pn,{className:"h-4 w-4 animate-pulse inline-block"})})})}):u.jsx("tbody",{children:u.jsx("tr",{children:u.jsx("td",{colSpan:h,children:u.jsxs("button",{onClick:a,className:"w-full flex items-center justify-center gap-2 py-2 text-xs text-muted-foreground hover:bg-muted/50 border-b","aria-expanded":!1,"aria-label":`Show ${d} hidden lines`,children:[u.jsx(Pn,{className:"h-3 w-3","aria-hidden":"true"}),u.jsxs("span",{children:["Show ",d," hidden lines"]}),u.jsx(Pn,{className:"h-3 w-3","aria-hidden":"true"})]})})})})]})});function Rp({diff:e,filePath:n,isLoading:t,error:r,viewType:a,onViewTypeChange:s,projectId:i,comments:o=[],onAddComment:l,onReplyToComment:c,onResolveComment:d,onDeleteComment:f,onEditComment:p,isSubmittingComment:g=!1,isResolvingComment:h=!1,isDeletingComment:m=!1,isEditingComment:b=!1,getSessionForAgent:y,onOpenTerminal:w,fileInfo:x,selectedCommentId:v,onClearSelectedComment:N}){const[E,C]=S.useState(null),[A,O]=S.useState(null),[I,j]=S.useState(new Set);S.useEffect(()=>{j(new Set)},[n]);const[D,R]=S.useState(!1),M=S.useRef(null),H=S.useRef(null),W=S.useRef(null);S.useEffect(()=>{const L=F=>{F.key==="Escape"&&(E||A)&&(C(null),O(null))},z=F=>{H.current&&!H.current.contains(F.target)&&E&&!A&&C(null)};return document.addEventListener("keydown",L),document.addEventListener("mousedown",z),()=>{document.removeEventListener("keydown",L),document.removeEventListener("mousedown",z)}},[E,A]),S.useEffect(()=>{if(!D)return;const L=F=>{var se;const Y=document.elementFromPoint(F.clientX,F.clientY);if(!Y)return;const te=Y.closest(".diff-gutter, .diff-gutter-col");if(!te)return;const J=(se=te.textContent)==null?void 0:se.trim(),ge=J?parseInt(J,10):null;if(ge&&!isNaN(ge)&&M.current){const je=Math.min(M.current.line,ge),ue=Math.max(M.current.line,ge);C({lineStart:je,lineEnd:ue,side:M.current.side})}},z=()=>{R(!1)};return document.addEventListener("mousemove",L),document.addEventListener("mouseup",z),()=>{document.removeEventListener("mousemove",L),document.removeEventListener("mouseup",z)}},[D]);const X=S.useMemo(()=>{if(!e)return[];try{return Wl(e)}catch{return[]}},[e]),k=S.useMemo(()=>X.length===0?null:X.find(L=>L.newPath===n||L.oldPath===n)||X[0],[X,n]),U=S.useMemo(()=>{const L=new Map;return k!=null&&k.hunks&&k.hunks.forEach(z=>{z.changes.forEach(F=>{L.set(Te(F),F)})}),L},[k==null?void 0:k.hunks]),P=S.useMemo(()=>{const L=new Map;return k!=null&&k.hunks&&k.hunks.forEach(z=>{const F=Te(z.changes[0]);z.changes.forEach(Y=>{const te=Pe(Y,"old"),J=Pe(Y,"new");te!==null&&L.set(`old-${te}`,F),J!==null&&L.set(`new-${J}`,F)})}),L},[k==null?void 0:k.hunks]);S.useEffect(()=>{if(!v)return;let L=!1,z=null,F=null,Y=o.find(re=>re.id===v);if(!Y){for(const re of o)if(re.parentId===v){Y=o.find(he=>he.id===re.parentId)||re;break}}if(!Y||Y.lineStart===null){N==null||N();return}const J=(Y.parentId===null?Y.id:Y.parentId)||v,ge=`${Y.side||"new"}-${Y.lineStart}`,se=P.get(ge);se&&I.has(se)&&j(re=>{const he=new Set(re);return he.delete(se),he});const je=()=>{var re;if(!L&&se){const he=(re=H.current)==null?void 0:re.querySelector(`[data-hunk-key="${se}"]`);he&&he.scrollIntoView({behavior:"auto",block:"center"})}},ue=2500,Ae=100;let we=0;const de=()=>{var he;if(L)return;const re=(he=H.current)==null?void 0:he.querySelector(`[data-comment-id="${J}"]`);re?(re.scrollIntoView({behavior:"smooth",block:"center"}),re instanceof HTMLElement&&re.focus({preventScroll:!0}),z=setTimeout(()=>{L||N==null||N()},2e3)):we<ue?(we+=Ae,F=setTimeout(de,Ae)):N==null||N()};return requestAnimationFrame(()=>{L||(je(),F=setTimeout(de,50))}),()=>{L=!0,z&&clearTimeout(z),F&&clearTimeout(F)}},[v,o,N,P,I]);const T=(k==null?void 0:k.isBinary)===!0,G=S.useMemo(()=>Wf(n),[n]),oe=S.useMemo(()=>{if(!(!(k!=null&&k.hunks)||!G))try{return $.registered(G)?Vd(k.hunks,{highlight:!0,enhancers:[Kd(k.hunks,{type:"block"})],language:G,refractor:$}):void 0}catch{return}},[k==null?void 0:k.hunks,G]),Q=S.useMemo(()=>Hf(o),[o]),B=S.useMemo(()=>{const L={};return k!=null&&k.hunks&&k.hunks.forEach(z=>{z.changes.forEach(F=>{const Y=Te(F),te=Pe(F,"new")||Pe(F,"old");if(!te)return;const J=F.type==="delete"?"old":"new",ge=`${J}-${te}`,se=Q.get(ge);if(se&&se.length>0){const je=ue=>{for(const Ae of se){if(Ae.root.id===ue)return Ae.root;const we=Ae.replies.find(de=>de.id===ue);if(we)return we}};L[Y]=u.jsx("div",{className:"inline-comment-wrapper my-1 space-y-2",children:se.map(ue=>{const Ae=It({comment:ue.root,replies:ue.replies}),we=v===ue.root.id;return u.jsx("div",{"data-comment-id":ue.root.id,tabIndex:-1,className:V("transition-all duration-200 outline-none",we&&"ring-2 ring-primary ring-offset-2 rounded-lg"),children:u.jsx(Bf,{comment:ue.root,replies:ue.replies,isPending:Ae,getSessionForAgent:y,onOpenTerminal:w,onReply:c?async(de,re)=>{await c(de,re)}:void 0,onResolve:d?async(de,re)=>{const he=je(de);he&&await d(de,re,he.version)}:void 0,onDelete:f,onEdit:p,isReplying:g,isResolving:h,isDeleting:m,isEditing:b})},ue.root.id)})})}A&&A.side===J&&te>=A.lineStart&&te===A.lineEnd&&(L[Y]=u.jsx(Of,{lineStart:A.lineStart,lineEnd:A.lineEnd,side:A.side,projectId:i??"",onSubmit:async(je,ue,Ae)=>{l&&await l(A.lineStart,A.lineEnd,A.side,je,ue,Ae),O(null)},onCancel:()=>O(null),isSubmitting:g}))})}),L},[k==null?void 0:k.hunks,Q,A,i,l,c,d,f,p,g,h,m,b,y,w,v]),le=S.useCallback((L,z)=>{if(!l||!L.change)return;const F=L.change,Y=L.side==="old"?"old":"new",te=Pe(F,Y);if(te){if(z.shiftKey&&E&&E.side===Y){const J=Math.min(E.lineStart,te),ge=Math.max(E.lineStart,te);C({lineStart:J,lineEnd:ge,side:Y});return}M.current={line:te,side:Y},R(!0),C({lineStart:te,lineEnd:te,side:Y})}},[l,E]),He=S.useCallback(L=>{!l||!L.change||!E||!D&&E&&O({lineStart:E.lineStart,lineEnd:E.lineEnd,side:E.side})},[l,E,D]),Me=S.useCallback(L=>{let z=L;for(;z;){if(z instanceof HTMLElement){const F=z.getAttribute("data-change-key");if(F)return F}z=z.parentNode}return null},[]),kt=S.useCallback(L=>{const z=window.getSelection();if(!z||z.isCollapsed){W.current=null;return}const F=Me(z.anchorNode),Y=Me(z.focusNode);if(!F||!Y){W.current=null;return}const te=U.get(F),J=U.get(Y);if(!te||!J){W.current=null;return}const ge=Pe(te,L),se=Pe(J,L);if(ge==null||se==null){W.current=null;return}const je=Math.min(ge,se),ue=Math.max(ge,se);W.current={lineStart:je,lineEnd:ue,side:L}},[Me,U]),lt=S.useCallback(L=>{const{change:z,side:F,renderDefault:Y,inHoverState:te}=L,J=Pe(z,F);if(!J)return Y();const ge=`${F}-${J}`,se=Q.get(ge),je=se&&se.length>0,ue=(se==null?void 0:se.some(we=>we.root.status==="open"||we.replies.some(de=>de.status==="open")))||!1,Ae=E&&E.side===F&&J>=E.lineStart&&J<=E.lineEnd;return u.jsxs("div",{className:"flex items-center gap-0.5",children:[u.jsx("span",{className:V(Ae&&"bg-selected"),children:Y()}),u.jsx("div",{className:"w-5 flex items-center justify-center",children:je?u.jsx(Rf,{commentCount:se.length,hasUnresolved:ue,onClick:()=>{var re;const we=se[0].root.id,de=(re=H.current)==null?void 0:re.querySelector(`[data-comment-id="${we}"]`);de&&(de.scrollIntoView({behavior:"smooth",block:"center"}),de instanceof HTMLElement&&de.focus({preventScroll:!0}))}}):(!l||!te?!1:a==="split"?!0:z.type==="delete"?F==="old":F==="new")?u.jsx("button",{className:"h-4 w-4 rounded-full bg-primary hover:bg-primary/90 text-primary-foreground flex items-center justify-center",onMouseDown:()=>kt(F),onClick:de=>{var he,fa;de.stopPropagation();const re=(((he=W.current)==null?void 0:he.side)===F?W.current:null)??((E==null?void 0:E.side)===F?E:null)??{lineStart:J,lineEnd:J,side:F};O({lineStart:re.lineStart,lineEnd:re.lineEnd,side:re.side}),W.current=null,(fa=window.getSelection())==null||fa.removeAllRanges()},title:"Add comment","aria-label":`Add comment on line ${J}`,children:u.jsx(br,{className:"h-2.5 w-2.5","aria-hidden":"true"})}):null})]})},[Q,E,l,a,kt]),Kt=S.useCallback(({changes:L})=>{if(!E||L.length===0)return"";const z=L.find(te=>te!==null);if(!z)return"";const F=E.side,Y=Pe(z,F);return Y&&Y>=E.lineStart&&Y<=E.lineEnd?"bg-selected":""},[E]);if(t)return u.jsx(Vf,{});if(r)return u.jsx(qf,{message:r});if(T)return u.jsx(Yf,{filePath:n});if(!k||!k.hunks||k.hunks.length===0)return u.jsx(Xf,{fileInfo:x});const Ze=k.hunks.reduce((L,z)=>L+z.changes.filter(F=>F.type==="insert").length,0),At=k.hunks.reduce((L,z)=>L+z.changes.filter(F=>F.type==="delete").length,0),Qe=o.filter(L=>L.parentId===null).length;return u.jsxs("div",{ref:H,className:"h-full flex flex-col",role:"region","aria-label":`Diff viewer for ${n}`,children:[u.jsxs("div",{className:"p-3 border-b flex items-center gap-2 bg-card shrink-0",children:[u.jsx(De,{className:"h-4 w-4 text-muted-foreground","aria-hidden":"true"}),u.jsx("span",{className:"font-mono text-sm truncate",children:n}),u.jsxs("div",{className:"flex items-center gap-1 ml-2",role:"group","aria-label":"File statistics",children:[u.jsxs(Le,{variant:"outline",className:V("text-xs",pe.ok),"aria-label":`${Ze} lines added`,children:["+",Ze]}),u.jsxs(Le,{variant:"outline",className:V("text-xs",pe.error),"aria-label":`${At} lines removed`,children:["-",At]}),Qe>0&&u.jsxs(Le,{variant:"outline",className:V("text-xs",pe.info),"aria-label":`${Qe} comments`,children:[u.jsx(Ie,{className:"h-3 w-3 mr-1","aria-hidden":"true"}),Qe]})]}),u.jsx("div",{className:"flex-1"}),u.jsxs("div",{className:"flex items-center gap-1 border rounded-md p-0.5",role:"group","aria-label":"View type",children:[u.jsxs(ee,{variant:a==="unified"?"selected":"ghost",size:"sm",className:"h-7 px-2 text-xs",onClick:()=>s("unified"),title:"Unified view","aria-pressed":a==="unified",children:[u.jsx(Jo,{className:"h-3.5 w-3.5 mr-1","aria-hidden":"true"}),"Unified"]}),u.jsxs(ee,{variant:a==="split"?"selected":"ghost",size:"sm",className:"h-7 px-2 text-xs",onClick:()=>s("split"),title:"Side-by-side view","aria-pressed":a==="split",children:[u.jsx(Uo,{className:"h-3.5 w-3.5 mr-1","aria-hidden":"true"}),"Split"]})]})]}),u.jsxs(gr,{className:"flex-1",children:[u.jsx("div",{className:V("diff-viewer",a==="split"&&"diff-split"),children:u.jsx(gd,{viewType:a,diffType:k.type,hunks:k.hunks,tokens:oe,widgets:B,renderGutter:lt,generateLineClassName:Kt,gutterEvents:{onMouseDown:le,onClick:He},children:L=>L.map(z=>{const F=Te(z.changes[0]),Y=!I.has(F);return u.jsx(Qf,{hunk:z,hunkKey:F,isExpanded:Y,onToggleExpand:()=>{j(te=>{const J=new Set(te);return J.has(F)?J.delete(F):J.add(F),J})},viewType:a,children:u.jsx(Ii,{hunk:z})},F)})})}),u.jsx(mo,{orientation:"horizontal"})]})]})}const Jf={comment:{icon:Ie,label:"Comment",className:"text-muted-foreground"},suggestion:{icon:yr,label:"Suggestion",className:"text-status-info"},issue:{icon:wt,label:"Issue",className:"text-status-warn"},approval:{icon:mr,label:"Approval",className:"text-status-ok"}},ep={open:{icon:wt,label:"Open"},resolved:{icon:Rt,label:"Resolved"},wont_fix:{icon:mn,label:"Won't Fix"}};function tp(e,n=60){const t=e.replace(/\n/g," ").trim();return t.length<=n?t:t.slice(0,n).trim()+"…"}function np(e){if(!e.filePath)return"Review-level";const n=e.filePath.split("/").pop()||e.filePath,t=e.lineStart!==null?e.lineEnd!==null&&e.lineEnd!==e.lineStart?`:${e.lineStart}-${e.lineEnd}`:`:${e.lineStart}`:"";return`${n}${t}`}function ys({comment:e,replyCount:n,isPending:t,onClick:r,isSelected:a=!1,className:s}){var b;const i=Jf[e.commentType],o=ep[e.status],l=i.icon,c=o.icon,d=e.authorType==="agent",f=d?Be:xs,p=d?e.authorAgentName??((b=e.authorAgentId)==null?void 0:b.slice(0,8))??"Agent":"You",g=np(e),h=tp(e.content),m=[i.label,"by",p,"-",h,"-",g,"-",o.label,n>0?`- ${n} ${n===1?"reply":"replies"}`:"",t?"- Pending response":""].filter(Boolean).join(" ");return u.jsxs("button",{type:"button",onClick:r,className:V("w-full text-left p-2 rounded-md border transition-colors",!a&&"hover:bg-accent hover:border-accent-foreground/20","focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",t&&"border-l-4 border-l-status-warn/40 bg-status-warn/10",a&&"bg-selected border-accent-foreground/30",e.status!=="open"&&!a&&"text-muted-foreground",s),"aria-label":m,"data-testid":"comment-reference-item",children:[u.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[u.jsx(l,{className:V("h-4 w-4 flex-shrink-0",i.className),"aria-hidden":"true"}),u.jsxs("div",{className:V("flex items-center gap-1 text-xs font-medium min-w-0",d?"text-purple-700 dark:text-purple-400":"text-foreground"),children:[u.jsx(f,{className:"h-3 w-3 flex-shrink-0","aria-hidden":"true"}),u.jsx("span",{className:"truncate",children:p})]}),u.jsx("div",{className:"flex-1"}),u.jsxs(Ss,{fit:!1,variant:"outline",className:V("text-[10px] px-1.5 py-0 h-4 flex-shrink-0",e.status==="open"&&pe.warn,e.status==="resolved"&&pe.ok,e.status==="wont_fix"&&"bg-muted text-muted-foreground border-border"),children:[u.jsx(c,{className:"h-2.5 w-2.5 mr-0.5","aria-hidden":"true"}),o.label]})]}),u.jsx("p",{className:"text-sm text-foreground truncate mb-1",title:e.content,children:h}),u.jsxs("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[u.jsxs("div",{className:"flex items-center gap-1 min-w-0 flex-1",children:[u.jsx(De,{className:"h-3 w-3 flex-shrink-0","aria-hidden":"true"}),u.jsx("span",{className:"truncate",title:e.filePath??"Review-level",children:g})]}),n>0&&u.jsxs("div",{className:"flex items-center gap-0.5 flex-shrink-0",children:[u.jsx(Vo,{className:"h-3 w-3","aria-hidden":"true"}),u.jsx("span",{children:n})]}),t&&u.jsx("span",{className:"text-status-warn flex-shrink-0",children:"Pending"})]})]})}function rp(e){let t=(r=>r.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;"))(e);return t=t.replace(/```(\w+)?\n([\s\S]*?)```/g,'<pre class="bg-muted p-2 rounded text-sm overflow-x-auto"><code>$2</code></pre>').replace(/`([^`]+)`/g,'<code class="bg-muted px-1 rounded text-sm">$1</code>').replace(/\*\*([^*]+)\*\*/g,"<strong>$1</strong>").replace(/\*([^*]+)\*/g,"<em>$1</em>").replace(/\[([^\]]+)\]\(([^)]+)\)/g,(r,a,s)=>`<a href="${/^(https?:|mailto:|#|\/)/i.test(s)?s:"#"}" class="text-primary underline" target="_blank" rel="noopener noreferrer">${a}</a>`).replace(/\n/g,"<br />"),ko.sanitize(t,{ALLOWED_TAGS:["pre","code","strong","em","a","br"],ALLOWED_ATTR:["href","class","target","rel"],ALLOW_DATA_ATTR:!1})}const ap=[{value:"comment",label:"Comment",icon:Ie},{value:"suggestion",label:"Suggestion",icon:yr},{value:"issue",label:"Issue",icon:wt},{value:"approval",label:"Approval",icon:mr}];async function sp(e,n){const t=await e(`/api/agents?projectId=${encodeURIComponent(n)}`);if(!t.ok)throw new Error("Failed to fetch agents");return t.json()}function ip({open:e,onOpenChange:n,filePath:t,lineStart:r,lineEnd:a,side:s,projectId:i,reviewId:o,onSubmit:l,isSubmitting:c=!1}){const d=Ye(),[f,p]=S.useState(""),[g,h]=S.useState("comment"),[m,b]=S.useState(new Set),[y,w]=S.useState(""),[x,v]=S.useState("write"),[N,E]=S.useState(!1),C=S.useRef(null),{data:A}=hr({queryKey:["agents",i],queryFn:()=>sp(d,i),enabled:e&&!!i}),O=(A==null?void 0:A.items)??[],{showAutocomplete:I,mentionQuery:j,selectedIndex:D,handleInputChange:R,handleKeyDown:M,insertMention:H}=Yi(C,O,B=>{b(le=>new Set([...le,B.id]))}),W=S.useMemo(()=>O.filter(B=>B.name.toLowerCase().includes(j.toLowerCase())),[O,j]),X=B=>{const le=H(B,f);p(le),b(He=>new Set([...He,B.id]))},k=S.useMemo(()=>{if(!y.trim())return O;const B=y.toLowerCase();return O.filter(le=>le.name.toLowerCase().includes(B))},[O,y]),U=8,P=S.useMemo(()=>{if(N)return k;const B=k.slice(0,U),le=k.filter(He=>m.has(He.id)&&!B.some(Me=>Me.id===He.id));return[...B,...le]},[k,N,m]),T=k.length>U,G=S.useMemo(()=>t?r===null?t:a===null||a===r?`${t}:${r} (${s==="old"?"old":"new"})`:`${t}:${r}-${a} (${s==="old"?"old":"new"})`:"Review-level comment",[t,r,a,s]),oe=async()=>{if(!f.trim())return;const B=qi(f,O),le=[...new Set([...m,...B])];await l({content:f.trim(),commentType:g,assignedAgentIds:le,filePath:t,lineStart:r,lineEnd:a,side:s}),p(""),h("comment"),b(new Set),w(""),v("write")},Q=()=>{p(""),h("comment"),b(new Set),w(""),v("write"),n(!1)};return u.jsx(sn,{open:e,onOpenChange:n,children:u.jsxs(on,{className:"max-w-2xl max-h-[90vh] flex flex-col",children:[u.jsxs(ln,{children:[u.jsxs(un,{className:"flex items-center gap-2",children:[u.jsx(Ie,{className:"h-5 w-5"}),"New Comment"]}),u.jsxs(cn,{className:"flex items-center gap-2 font-mono text-xs",children:[u.jsx(De,{className:"h-3 w-3"}),G]})]}),u.jsxs("div",{className:"flex-1 space-y-4 overflow-hidden",children:[u.jsxs("div",{className:"space-y-2",children:[u.jsx(zn,{children:"Comment Type"}),u.jsxs(bo,{value:g,onValueChange:B=>h(B),children:[u.jsx(yo,{className:"w-[200px]","aria-label":"Select comment type",children:u.jsx(vo,{})}),u.jsx(wo,{children:ap.map(B=>{const le=B.icon;return u.jsx(xo,{value:B.value,children:u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx(le,{className:"h-4 w-4"}),B.label]})},B.value)})})]})]}),u.jsxs("div",{className:"space-y-2",children:[u.jsxs("div",{className:"flex items-center justify-between",children:[u.jsx(zn,{children:"Content"}),u.jsx(So,{value:x,onValueChange:B=>v(B),children:u.jsxs(Eo,{className:"h-8",children:[u.jsxs(ya,{value:"write",className:"text-xs px-2 h-6",children:[u.jsx(qo,{className:"h-3 w-3 mr-1"}),"Write"]}),u.jsxs(ya,{value:"preview",className:"text-xs px-2 h-6",children:[u.jsx(No,{className:"h-3 w-3 mr-1"}),"Preview"]})]})})]}),x==="write"?u.jsxs("div",{className:"relative",children:[u.jsx(an,{ref:C,value:f,onChange:B=>{p(B.target.value),R(B.target.value,B.target.selectionStart)},onKeyDown:B=>{M(B,f,p)},placeholder:"Write your comment... (Markdown supported, type @ to mention agents)",className:"min-h-[150px] font-mono text-sm",disabled:c}),I&&W.length>0&&u.jsx("div",{className:"absolute bottom-full left-0 mb-1 w-48 max-h-40 overflow-auto bg-popover border rounded-md shadow-lg z-50",children:W.map((B,le)=>u.jsxs("button",{type:"button",className:V("w-full px-3 py-1.5 text-sm text-left flex items-center gap-2",le===D?"bg-selected text-selected-foreground":"hover:bg-accent"),onClick:()=>X(B),children:[u.jsx(Be,{className:"h-3 w-3 text-muted-foreground"}),B.name]},B.id))})]}):u.jsx("div",{className:"min-h-[150px] p-3 border rounded-md bg-muted/30 prose prose-sm max-w-none",dangerouslySetInnerHTML:{__html:f.trim()?rp(f):'<span class="text-muted-foreground">Nothing to preview</span>'}}),u.jsx("p",{className:"text-xs text-muted-foreground",children:"Supports basic Markdown: **bold**, *italic*, `code`, ```code blocks```, [links](url)"})]}),u.jsxs("div",{className:"space-y-2",children:[u.jsxs(zn,{className:"flex items-center gap-2",children:[u.jsx(Be,{className:"h-4 w-4"}),"Assign to Agents (optional)"]}),O.length>0?u.jsxs("div",{className:"space-y-2",children:[u.jsxs("div",{className:"flex items-center gap-1 flex-wrap",children:[u.jsx(wr,{type:"multiple",value:Array.from(m),onValueChange:B=>b(new Set(B)),className:"flex-wrap !justify-start gap-1",children:P.map(B=>u.jsxs(xr,{value:B.id,size:"sm",variant:"outline",className:"h-7 text-sm gap-1 px-2 data-[state=on]:!bg-primary data-[state=on]:!text-primary-foreground","aria-label":`Assign to ${B.name}`,children:[u.jsx(Be,{className:"h-3 w-3"}),B.name]},B.id))}),P.length===0&&y.trim()&&u.jsx("p",{className:"text-sm text-muted-foreground py-2",children:"No agents found"}),T&&!N&&u.jsxs(ee,{variant:"ghost",size:"sm",className:"h-7 text-sm px-2",onClick:()=>E(!0),children:["+",k.length-U," more"]})]}),N&&u.jsx("div",{className:"space-y-2",children:u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsxs("div",{className:"relative flex-1",children:[u.jsx(fr,{className:"absolute left-2 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),u.jsx(pr,{value:y,onChange:B=>w(B.target.value),placeholder:"Search agents...",className:"pl-8"})]}),u.jsx(ee,{variant:"ghost",size:"sm",onClick:()=>{E(!1),w("")},children:"Collapse"})]})}),m.size>0?u.jsxs("p",{className:"text-xs text-muted-foreground",children:[m.size," agent",m.size>1?"s":""," selected"]}):u.jsx("p",{className:"text-xs text-muted-foreground",children:"No agents selected — no notifications will be sent"})]}):u.jsx("p",{className:"text-sm text-muted-foreground py-2",children:"No agents available"})]})]}),u.jsxs(qn,{children:[u.jsx(ee,{variant:"outline",onClick:Q,disabled:c,children:"Cancel"}),u.jsx(ee,{onClick:oe,disabled:!f.trim()||c,children:c?"Posting...":"Post Comment"})]})]})})}function op(){const e=Ye(),n=xt();return zt({mutationFn:async t=>{const r=await e(`/api/reviews/${t.reviewId}/comments`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:t.content,commentType:t.commentType,filePath:t.filePath,lineStart:t.lineStart,lineEnd:t.lineEnd,side:t.side,targetAgentIds:t.targetAgentIds})});if(!r.ok)throw new Error("Failed to create comment");return r.json()},onMutate:async t=>{await n.cancelQueries({queryKey:["review-comments",t.reviewId]});const r=n.getQueryData(["review-comments",t.reviewId]),a={id:`temp-${Date.now()}`,reviewId:t.reviewId,filePath:t.filePath,parentId:null,lineStart:t.lineStart,lineEnd:t.lineEnd,side:t.side,content:t.content,commentType:t.commentType,status:"open",authorType:"user",authorAgentId:null,authorAgentName:null,targetAgents:[],version:1,editedAt:null,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()};return n.setQueryData(["review-comments",t.reviewId],s=>s?{...s,items:[a,...s.items],total:s.total+1}:{items:[a],total:1,limit:100,offset:0}),{previousComments:r}},onError:(t,r,a)=>{a!=null&&a.previousComments&&n.setQueryData(["review-comments",r.reviewId],a.previousComments),bt({title:"Failed to create comment",description:"Your comment could not be posted. Please try again.",variant:"destructive"})},onSettled:(t,r,a)=>{n.invalidateQueries({queryKey:["review-comments",a.reviewId]})}})}function Op(){const e=Ye(),n=xt();return zt({mutationFn:async t=>{const r=await e(`/api/reviews/${t.reviewId}/comments`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({parentId:t.parentId,content:t.content,commentType:"comment",targetAgentIds:t.targetAgentIds})});if(!r.ok)throw new Error("Failed to post reply");return r.json()},onMutate:async t=>{await n.cancelQueries({queryKey:["review-comments",t.reviewId]});const r=n.getQueryData(["review-comments",t.reviewId]),a=r==null?void 0:r.items.find(i=>i.id===t.parentId),s={id:`temp-${Date.now()}`,reviewId:t.reviewId,filePath:(a==null?void 0:a.filePath)??null,parentId:t.parentId,lineStart:(a==null?void 0:a.lineStart)??null,lineEnd:(a==null?void 0:a.lineEnd)??null,side:(a==null?void 0:a.side)??null,content:t.content,commentType:"comment",status:"open",authorType:"user",authorAgentId:null,authorAgentName:null,targetAgents:[],version:1,editedAt:null,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()};return n.setQueryData(["review-comments",t.reviewId],i=>i?{...i,items:[...i.items,s],total:i.total+1}:{items:[s],total:1,limit:100,offset:0}),{previousComments:r}},onError:(t,r,a)=>{a!=null&&a.previousComments&&n.setQueryData(["review-comments",r.reviewId],a.previousComments),bt({title:"Failed to post reply",description:"Your reply could not be posted. Please try again.",variant:"destructive"})},onSettled:(t,r,a)=>{n.invalidateQueries({queryKey:["review-comments",a.reviewId]})}})}function Lp(){const e=Ye(),n=xt();return zt({mutationFn:async t=>{const r=await e(`/api/reviews/${t.reviewId}/comments/${t.commentId}/resolve`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({status:t.status,version:t.version})});if(!r.ok)throw new Error("Failed to resolve comment");return r.json()},onMutate:async t=>{await n.cancelQueries({queryKey:["review-comments",t.reviewId]});const r=n.getQueryData(["review-comments",t.reviewId]);return n.setQueryData(["review-comments",t.reviewId],a=>a&&{...a,items:a.items.map(s=>s.id===t.commentId?{...s,status:t.status,version:t.version+1}:s)}),{previousComments:r}},onError:(t,r,a)=>{a!=null&&a.previousComments&&n.setQueryData(["review-comments",r.reviewId],a.previousComments),bt({title:"Failed to resolve comment",description:"The comment could not be resolved. Please try again.",variant:"destructive"})},onSettled:(t,r,a)=>{n.invalidateQueries({queryKey:["review-comments",a.reviewId]})}})}function Dp(){const e=Ye(),n=xt();return zt({mutationFn:async t=>{if(!(await e(`/api/reviews/${t.reviewId}/comments/${t.commentId}`,{method:"DELETE"})).ok)throw new Error("Failed to delete comment")},onMutate:async t=>{await n.cancelQueries({queryKey:["review-comments",t.reviewId]});const r=n.getQueryData(["review-comments",t.reviewId]);return n.setQueryData(["review-comments",t.reviewId],a=>{if(!a)return a;const s=new Map;a.items.forEach(c=>{if(!c.parentId)return;const d=s.get(c.parentId);d?d.push(c.id):s.set(c.parentId,[c.id])});const i=new Set,o=[t.commentId];for(;o.length>0;){const c=o.pop();if(!c||i.has(c))continue;i.add(c);const d=s.get(c);d&&o.push(...d)}const l=a.items.filter(c=>!i.has(c.id));return{...a,items:l,total:l.length}}),{previousComments:r}},onError:(t,r,a)=>{a!=null&&a.previousComments&&n.setQueryData(["review-comments",r.reviewId],a.previousComments),bt({title:"Failed to delete comment",description:"The comment could not be deleted. Please try again.",variant:"destructive"})},onSuccess:()=>{bt({title:"Comment deleted",description:"The comment has been deleted."})},onSettled:(t,r,a)=>{n.invalidateQueries({queryKey:["review-comments",a.reviewId]})}})}function Mp(){const e=Ye(),n=xt();return zt({mutationFn:async t=>{const r=await e(`/api/reviews/${t.reviewId}/comments/${t.commentId}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:t.content,version:t.version})});if(!r.ok)throw new Error("Failed to edit comment");return r.json()},onMutate:async t=>{await n.cancelQueries({queryKey:["review-comments",t.reviewId]});const r=n.getQueryData(["review-comments",t.reviewId]);return n.setQueryData(["review-comments",t.reviewId],a=>a&&{...a,items:a.items.map(s=>s.id===t.commentId?{...s,content:t.content,version:t.version+1,editedAt:new Date().toISOString(),updatedAt:new Date().toISOString()}:s)}),{previousComments:r}},onError:(t,r,a)=>{a!=null&&a.previousComments&&n.setQueryData(["review-comments",r.reviewId],a.previousComments),bt({title:"Failed to edit comment",description:"The comment could not be updated. Please try again.",variant:"destructive"})},onSettled:(t,r,a)=>{n.invalidateQueries({queryKey:["review-comments",a.reviewId]})}})}function Vn({filter:e,currentFilter:n,onClick:t,count:r,icon:a,label:s}){const i=e===n;return u.jsxs(ee,{variant:i?"selected":"ghost",size:"sm",onClick:t,className:"h-7 text-xs gap-1","aria-pressed":i,"aria-label":`${s} filter${r!==void 0?`, ${r} comments`:""}`,children:[u.jsx(a,{className:"h-3 w-3","aria-hidden":"true"}),s,r!==void 0&&u.jsx(Le,{variant:"outline",className:"h-4 px-1 text-[10px] ml-1","aria-hidden":"true",children:r})]})}function lp(){return u.jsx("div",{className:"p-4 space-y-4",children:Array.from({length:3}).map((e,n)=>u.jsxs("div",{className:"space-y-2",children:[u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx(ze,{className:"h-4 w-4 rounded-full"}),u.jsx(ze,{className:"h-4 w-24"}),u.jsx(ze,{className:"h-4 w-16"})]}),u.jsx(ze,{className:"h-16 w-full"})]},n))})}function up({filter:e,_selectedFile:n,onAddComment:t}){const r=()=>{switch(e){case"file":return"No file comments yet";case"review":return"No review-level comments";default:return"No comments yet"}};return u.jsxs("div",{className:"flex flex-col items-center justify-center h-full text-muted-foreground p-4",children:[u.jsx(Ie,{className:"h-8 w-8 mb-2"}),u.jsx("p",{className:"text-sm text-center",children:r()}),e==="review"&&t&&u.jsxs(ee,{variant:"outline",size:"sm",className:"mt-3",onClick:t,children:[u.jsx(br,{className:"h-3 w-3 mr-1"}),"Add Review Comment"]})]})}function cp({group:e,isExpanded:n,isSelected:t,onToggle:r,onSelect:a}){const s=()=>{a==null||a(),n||r()};return u.jsxs("div",{className:V("flex items-center gap-1 w-full rounded-md","transition-colors",t?"bg-selected border-l-2 border-l-primary":"hover:bg-accent"),"data-testid":"file-group-header","aria-expanded":n,children:[u.jsx("button",{type:"button",onClick:r,className:"shrink-0 p-2 rounded hover:bg-accent-foreground/10 focus:outline-none focus-visible:ring-2 focus-visible:ring-ring","aria-label":n?"Collapse":"Expand","aria-expanded":n,children:u.jsx(hn,{className:V("h-4 w-4 transition-transform",n&&"rotate-90"),"aria-hidden":"true"})}),u.jsxs("button",{type:"button",onClick:s,className:"flex items-center gap-2 flex-1 min-w-0 py-2 pr-2 text-left focus:outline-none focus-visible:ring-2 focus-visible:ring-ring rounded-r-md",children:[u.jsx(De,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}),u.jsx("span",{className:"flex-1 truncate font-medium text-sm",children:e.fileName}),t&&u.jsx($o,{className:"h-2 w-2 fill-primary text-primary shrink-0","aria-label":"Selected file"}),u.jsx(Le,{variant:"secondary",className:"text-xs shrink-0",children:e.comments.length})]})]})}function $p({reviewId:e,review:n,projectId:t,selectedFile:r,onCommentSelect:a,onNavigateToComment:s,onSelectFile:i,selectedCommentId:o,onCloseReview:l,isClosingReview:c,className:d}){const f=Ye(),[p,g]=S.useState("all"),[h,m]=S.useState(!1),[b,y]=S.useState(new Set),w=S.useRef(null),x=op();S.useEffect(()=>{r&&g("file")},[r]);const{data:v,isLoading:N,isError:E}=hr({queryKey:["review-comments",e],queryFn:()=>Gf(f,e),enabled:!!e}),C=(v==null?void 0:v.items)??[],A=S.useMemo(()=>{switch(p){case"file":return C.filter(k=>k.filePath!==null);case"review":return C.filter(k=>k.filePath===null);default:return C}},[C,p]),O=S.useMemo(()=>Uf(A),[A]),I=S.useMemo(()=>A.filter(k=>k.parentId===null).sort((k,U)=>{const P=O.get(k.id)??[],T=O.get(U.id)??[],G=It({comment:k,replies:P}),oe=It({comment:U,replies:T});if(G!==oe)return G?-1:1;if(k.status!==U.status){if(k.status==="open")return-1;if(U.status==="open")return 1}return new Date(U.createdAt).getTime()-new Date(k.createdAt).getTime()}),[A,O]),j=S.useMemo(()=>{if(p!=="file")return[];const k=new Map;for(const P of I)if(P.filePath){const T=k.get(P.filePath)||[];k.set(P.filePath,[...T,P])}const U=[];for(const[P,T]of k){const G=T.flatMap(Q=>{const B=O.get(Q.id)??[];return[Q.createdAt,...B.map(le=>le.createdAt)]}),oe=Math.max(...G.map(Q=>new Date(Q).getTime()));U.push({filePath:P,fileName:P.split("/").pop()||P,comments:T,recentActivity:oe})}return U.sort((P,T)=>T.recentActivity!==P.recentActivity?T.recentActivity-P.recentActivity:P.filePath.localeCompare(T.filePath))},[I,O,p]),D=S.useMemo(()=>j.map(k=>k.filePath).join("|"),[j]);S.useEffect(()=>{p==="file"&&j.length>0&&y(new Set(j.map(k=>k.filePath)))},[p,D,j]),S.useEffect(()=>{r&&p==="file"&&y(k=>new Set([...k,r]))},[r,p]),S.useEffect(()=>{if(!r||p!=="file"||!w.current)return;const k=setTimeout(()=>{var U;(U=w.current)==null||U.scrollIntoView({behavior:"smooth",block:"nearest"})},0);return()=>clearTimeout(k)},[r,p]);const R=S.useMemo(()=>{const k=C.filter(T=>T.filePath!==null&&T.parentId===null),U=C.filter(T=>T.filePath===null&&T.parentId===null);return{all:C.filter(T=>T.parentId===null).length,file:k.length,review:U.length}},[C]),M=S.useMemo(()=>{const k=C.filter(T=>T.parentId===null),U=k.filter(T=>T.status==="open").length,P=k.filter(T=>T.status==="resolved"||T.status==="wont_fix").length;return{open:U,resolved:P}},[C]),H=k=>{s&&s({commentId:k.id,filePath:k.filePath,lineStart:k.lineStart,side:k.side}),a&&a(k)},W=()=>{m(!0)},X=async k=>{await x.mutateAsync({reviewId:e,content:k.content,commentType:k.commentType,filePath:k.filePath,lineStart:k.lineStart,lineEnd:k.lineEnd,side:k.side,targetAgentIds:k.assignedAgentIds}),m(!1),g("review")};return N?u.jsxs("div",{className:V("h-full flex flex-col",d),children:[u.jsx("div",{className:"p-3 border-b",children:u.jsxs("h3",{className:"font-medium flex items-center gap-2 text-sm",children:[u.jsx(Ie,{className:"h-4 w-4"}),"Comments"]})}),u.jsx(lp,{})]}):E?u.jsxs("div",{className:V("h-full flex flex-col",d),children:[u.jsx("div",{className:"p-3 border-b",children:u.jsxs("h3",{className:"font-medium flex items-center gap-2 text-sm",children:[u.jsx(Ie,{className:"h-4 w-4"}),"Comments"]})}),u.jsx("div",{className:"flex-1 flex items-center justify-center text-muted-foreground p-4",children:u.jsx("p",{className:"text-sm",children:"Failed to load comments"})})]}):u.jsxs("div",{className:V("h-full flex flex-col",d),role:"region","aria-label":"Comments panel","data-testid":"comment-panel",children:[u.jsxs("div",{className:"p-3 border-b space-y-2",children:[u.jsxs("div",{className:"flex items-center justify-between",children:[u.jsxs("h3",{className:"font-medium flex items-center gap-2 text-sm",id:"comments-heading",children:[u.jsx(Ie,{className:"h-4 w-4","aria-hidden":"true"}),"Comments",R.all>0&&u.jsx(Le,{variant:"secondary",className:"text-xs","aria-label":`${R.all} total comments`,children:R.all})]}),n&&l&&u.jsxs(Ao,{children:[u.jsx(Co,{asChild:!0,children:u.jsxs(ee,{variant:"outline",size:"sm",className:"h-7 text-xs",disabled:c,children:[u.jsx(mn,{className:"h-3 w-3 mr-1"}),"Close Review"]})}),u.jsxs(To,{children:[u.jsxs(Io,{children:[u.jsx(_o,{children:"Close review?"}),u.jsx(jo,{asChild:!0,children:u.jsxs("div",{className:"space-y-2",children:[u.jsx("p",{children:"Are you sure you want to close this review?"}),M.open>0&&u.jsxs("p",{className:"text-status-warn",children:[M.open," open comment",M.open!==1?"s":""," will be deleted."]}),M.resolved>0&&u.jsxs("p",{className:"text-muted-foreground",children:[M.resolved," resolved comment",M.resolved!==1?"s":""," will be kept."]}),M.open===0&&M.resolved===0&&u.jsx("p",{className:"text-muted-foreground",children:"No comments in this review."})]})})]}),u.jsxs(Ro,{children:[u.jsx(Oo,{children:"Cancel"}),u.jsx(Lo,{onClick:l,disabled:c,children:c?"Closing...":"Close Review"})]})]})]})]}),u.jsxs("div",{className:"flex gap-1 flex-wrap",role:"group","aria-label":"Comment filters",children:[u.jsx(Vn,{filter:"all",currentFilter:p,onClick:()=>g("all"),count:R.all,icon:Do,label:"All"}),u.jsx(Vn,{filter:"file",currentFilter:p,onClick:()=>g("file"),count:R.file,icon:De,label:"Files"}),u.jsx(Vn,{filter:"review",currentFilter:p,onClick:()=>g("review"),count:R.review,icon:Mo,label:"Review"}),p==="review"&&t&&u.jsxs(ee,{variant:"outline",size:"sm",className:"h-7 text-xs gap-1 ml-auto",onClick:W,children:[u.jsx(br,{className:"h-3 w-3"}),"Add Comment"]})]})]}),u.jsx(gr,{className:"flex-1",children:I.length===0?u.jsx(up,{filter:p,_selectedFile:r,onAddComment:t?W:void 0}):p==="file"?u.jsx("div",{className:"p-3 space-y-1","aria-labelledby":"comments-heading",children:j.map(k=>{const U=b.has(k.filePath),P=r===k.filePath;return u.jsxs("div",{ref:P?w:void 0,"data-testid":"file-group",children:[u.jsx(cp,{group:k,isExpanded:U,isSelected:P,onToggle:()=>{y(T=>{const G=new Set(T);return G.has(k.filePath)?G.delete(k.filePath):G.add(k.filePath),G})},onSelect:()=>i==null?void 0:i(k.filePath)}),U&&u.jsx("div",{className:"ml-6 mt-1 space-y-2",children:k.comments.map(T=>{const G=O.get(T.id)??[],oe=It({comment:T,replies:G});return u.jsx(ys,{comment:T,replyCount:G.length,isPending:oe,onClick:()=>H(T),isSelected:o===T.id},T.id)})})]},k.filePath)})}):u.jsx("div",{className:"p-3 space-y-2","aria-labelledby":"comments-heading",children:I.map(k=>{const U=O.get(k.id)??[],P=It({comment:k,replies:U});return u.jsx(ys,{comment:k,replyCount:U.length,isPending:P,onClick:()=>H(k),isSelected:o===k.id},k.id)})})}),t&&u.jsx(ip,{open:h,onOpenChange:m,filePath:null,lineStart:null,lineEnd:null,side:null,projectId:t,reviewId:e,onSubmit:X,isSubmitting:x.isPending})]})}function dp(){const e=document.activeElement;if(!e)return!1;const n=e.tagName.toLowerCase();return n==="input"||n==="textarea"||n==="select"||e.getAttribute("contenteditable")==="true"}const fp=[{key:"j",description:"Next file"},{key:"k",description:"Previous file"},{key:"n",description:"Next comment"},{key:"p",description:"Previous comment"},{key:"c",description:"Add comment on selected line"},{key:"r",description:"Reply to focused comment"},{key:"Escape",description:"Close dialog / Clear selection"},{key:"⌘/Ctrl + Enter",description:"Submit comment"},{key:"?",description:"Show keyboard shortcuts"}];function Fp(e){const{enabled:n=!0,handlers:t}=e,[r,a]=S.useState(!1),s=S.useCallback(()=>a(!0),[]),i=S.useCallback(()=>a(!1),[]),o=S.useCallback(()=>a(l=>!l),[]);return S.useEffect(()=>{if(!n)return;const l=c=>{if(c.key==="Escape"&&r){c.preventDefault(),i();return}if((c.metaKey||c.ctrlKey)&&c.key==="Enter"){t.onSubmit&&(c.preventDefault(),t.onSubmit());return}if(!dp())switch(c.key){case"j":t.onNextFile&&(c.preventDefault(),t.onNextFile());break;case"k":t.onPreviousFile&&(c.preventDefault(),t.onPreviousFile());break;case"n":t.onNextComment&&(c.preventDefault(),t.onNextComment());break;case"p":t.onPreviousComment&&(c.preventDefault(),t.onPreviousComment());break;case"c":t.onOpenComment&&(c.preventDefault(),t.onOpenComment());break;case"r":t.onReply&&(c.preventDefault(),t.onReply());break;case"Escape":t.onEscape&&(c.preventDefault(),t.onEscape());break;case"?":c.preventDefault(),o();break}};return document.addEventListener("keydown",l),()=>{document.removeEventListener("keydown",l)}},[n,t,r,i,o]),{isHelpOpen:r,openHelp:s,closeHelp:i,toggleHelp:o}}function vs({children:e}){return u.jsx(Le,{variant:"outline",className:"px-2 py-0.5 text-xs font-mono bg-muted min-w-[24px] justify-center",children:e})}function Pp({open:e,onOpenChange:n}){return u.jsx(sn,{open:e,onOpenChange:n,children:u.jsxs(on,{className:"sm:max-w-md",children:[u.jsxs(ln,{children:[u.jsxs(un,{className:"flex items-center gap-2",children:[u.jsx(Fo,{className:"h-5 w-5"}),"Keyboard Shortcuts"]}),u.jsx(cn,{className:"sr-only",children:"List of available keyboard shortcuts for navigating the review"})]}),u.jsx("div",{className:"space-y-3 py-2",children:fp.map(t=>u.jsxs("div",{className:"flex items-center justify-between gap-4",children:[u.jsx("span",{className:"text-sm text-muted-foreground",children:t.description}),u.jsx(vs,{children:t.key})]},t.key))}),u.jsxs("div",{className:"pt-2 text-xs text-muted-foreground text-center border-t",children:["Press ",u.jsx(vs,{children:"?"})," anytime to show this help"]})]})})}function zp(e,n){const t=xt(),r=S.useCallback(s=>{if(!e)return;const{topic:i,type:o}=s;i===`review/${e}`&&(o==="comment.created"?t.invalidateQueries({queryKey:["review-comments",e]}):o==="comment.resolved"?t.invalidateQueries({queryKey:["review-comments",e]}):o==="comment.updated"?t.invalidateQueries({queryKey:["review-comments",e]}):o==="comment.deleted"?t.invalidateQueries({queryKey:["review-comments",e]}):o==="review.updated"&&t.invalidateQueries({queryKey:["review",e]})),n&&i===`project/${n}/reviews`&&(o==="comment.created"||o==="comment.resolved"||o==="comment.updated"||o==="comment.deleted"?t.invalidateQueries({queryKey:["reviews",n]}):o==="review.updated"&&t.invalidateQueries({queryKey:["reviews",n]}))},[t,e,n]),a=S.useMemo(()=>({message:r}),[r]);Po(a,[e,n])}export{Bf as C,Rp as D,De as F,Pp as K,hp as N,mp as R,Ep as S,wr as T,op as a,Op as b,Lp as c,Dp as d,Mp as e,_p as f,Uf as g,Fp as h,It as i,xr as j,bp as k,vp as l,yp as m,$p as n,xp as o,jp as p,Tp as q,Ip as r,Np as s,kp as t,zp as u,Gf as v,Sp as w,wp as x,Ap as y,Cp as z};