@akasecurity/cli 0.9.13 → 0.9.14

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 (210) hide show
  1. package/README.md +46 -3
  2. package/dist/cli.js +3461 -1491
  3. package/extension/manifest.json +1 -1
  4. package/native-host/content-retention.js +35685 -0
  5. package/native-host/history-sync.js +36816 -0
  6. package/native-host/host.js +2428 -1014
  7. package/native-host/scan-worker.js +1754 -871
  8. package/native-host/sync.js +2231 -950
  9. package/package.json +12 -12
  10. package/web-ui/package.json +3 -3
  11. package/web-ui/packages/dashboard-ui/package.json +5 -5
  12. package/web-ui/packages/plugin-sdk/package.json +2 -2
  13. package/web-ui/packages/schema/package.json +1 -1
  14. package/web-ui/packages/ui-kit/package.json +2 -2
  15. package/web-ui/web-ui/.next/BUILD_ID +1 -1
  16. package/web-ui/web-ui/.next/app-build-manifest.json +253 -253
  17. package/web-ui/web-ui/.next/app-path-routes-manifest.json +7 -7
  18. package/web-ui/web-ui/.next/build-manifest.json +14 -14
  19. package/web-ui/web-ui/.next/prerender-manifest.json +14 -14
  20. package/web-ui/web-ui/.next/required-server-files.json +1 -1
  21. package/web-ui/web-ui/.next/server/app/(app)/activity/page.js +2 -2
  22. package/web-ui/web-ui/.next/server/app/(app)/activity/page.js.nft.json +1 -1
  23. package/web-ui/web-ui/.next/server/app/(app)/activity/page_client-reference-manifest.js +1 -1
  24. package/web-ui/web-ui/.next/server/app/(app)/data-shares/page.js +2 -2
  25. package/web-ui/web-ui/.next/server/app/(app)/data-shares/page.js.nft.json +1 -1
  26. package/web-ui/web-ui/.next/server/app/(app)/data-shares/page_client-reference-manifest.js +1 -1
  27. package/web-ui/web-ui/.next/server/app/(app)/detections/page.js +2 -2
  28. package/web-ui/web-ui/.next/server/app/(app)/detections/page.js.nft.json +1 -1
  29. package/web-ui/web-ui/.next/server/app/(app)/detections/page_client-reference-manifest.js +1 -1
  30. package/web-ui/web-ui/.next/server/app/(app)/exceptions/[id]/page.js +2 -2
  31. package/web-ui/web-ui/.next/server/app/(app)/exceptions/[id]/page.js.nft.json +1 -1
  32. package/web-ui/web-ui/.next/server/app/(app)/exceptions/[id]/page_client-reference-manifest.js +1 -1
  33. package/web-ui/web-ui/.next/server/app/(app)/exceptions/new/page.js +2 -2
  34. package/web-ui/web-ui/.next/server/app/(app)/exceptions/new/page.js.nft.json +1 -1
  35. package/web-ui/web-ui/.next/server/app/(app)/exceptions/new/page_client-reference-manifest.js +1 -1
  36. package/web-ui/web-ui/.next/server/app/(app)/exceptions/page.js +2 -2
  37. package/web-ui/web-ui/.next/server/app/(app)/exceptions/page.js.nft.json +1 -1
  38. package/web-ui/web-ui/.next/server/app/(app)/exceptions/page_client-reference-manifest.js +1 -1
  39. package/web-ui/web-ui/.next/server/app/(app)/findings/page.js +2 -2
  40. package/web-ui/web-ui/.next/server/app/(app)/findings/page.js.nft.json +1 -1
  41. package/web-ui/web-ui/.next/server/app/(app)/findings/page_client-reference-manifest.js +1 -1
  42. package/web-ui/web-ui/.next/server/app/(app)/inventory/page.js +2 -2
  43. package/web-ui/web-ui/.next/server/app/(app)/inventory/page.js.nft.json +1 -1
  44. package/web-ui/web-ui/.next/server/app/(app)/inventory/page_client-reference-manifest.js +1 -1
  45. package/web-ui/web-ui/.next/server/app/(app)/policies/page.js +2 -2
  46. package/web-ui/web-ui/.next/server/app/(app)/policies/page.js.nft.json +1 -1
  47. package/web-ui/web-ui/.next/server/app/(app)/policies/page_client-reference-manifest.js +1 -1
  48. package/web-ui/web-ui/.next/server/app/(app)/scan/page.js +3 -3
  49. package/web-ui/web-ui/.next/server/app/(app)/scan/page.js.nft.json +1 -1
  50. package/web-ui/web-ui/.next/server/app/(app)/scan/page_client-reference-manifest.js +1 -1
  51. package/web-ui/web-ui/.next/server/app/(app)/security/page.js +2 -2
  52. package/web-ui/web-ui/.next/server/app/(app)/security/page.js.nft.json +1 -1
  53. package/web-ui/web-ui/.next/server/app/(app)/security/page_client-reference-manifest.js +1 -1
  54. package/web-ui/web-ui/.next/server/app/(app)/settings/page.js +2 -2
  55. package/web-ui/web-ui/.next/server/app/(app)/settings/page.js.nft.json +1 -1
  56. package/web-ui/web-ui/.next/server/app/(app)/settings/page_client-reference-manifest.js +1 -1
  57. package/web-ui/web-ui/.next/server/app/(app)/updates/page.js +2 -2
  58. package/web-ui/web-ui/.next/server/app/(app)/updates/page.js.nft.json +1 -1
  59. package/web-ui/web-ui/.next/server/app/(app)/updates/page_client-reference-manifest.js +1 -1
  60. package/web-ui/web-ui/.next/server/app/(app)/vault/page.js +2 -2
  61. package/web-ui/web-ui/.next/server/app/(app)/vault/page.js.nft.json +1 -1
  62. package/web-ui/web-ui/.next/server/app/(app)/vault/page_client-reference-manifest.js +1 -1
  63. package/web-ui/web-ui/.next/server/app/_not-found/page.js +2 -2
  64. package/web-ui/web-ui/.next/server/app/_not-found/page.js.nft.json +1 -1
  65. package/web-ui/web-ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  66. package/web-ui/web-ui/.next/server/app/_not-found.html +1 -1
  67. package/web-ui/web-ui/.next/server/app/_not-found.rsc +10 -10
  68. package/web-ui/web-ui/.next/server/app/icon.svg/route.js +1 -1
  69. package/web-ui/web-ui/.next/server/app/icon.svg/route.js.nft.json +1 -1
  70. package/web-ui/web-ui/.next/server/app/index.html +1 -1
  71. package/web-ui/web-ui/.next/server/app/index.rsc +10 -10
  72. package/web-ui/web-ui/.next/server/app/page.js +2 -2
  73. package/web-ui/web-ui/.next/server/app/page.js.nft.json +1 -1
  74. package/web-ui/web-ui/.next/server/app/page_client-reference-manifest.js +1 -1
  75. package/web-ui/web-ui/.next/server/app-paths-manifest.json +7 -7
  76. package/web-ui/web-ui/.next/server/chunks/167.js +11 -0
  77. package/web-ui/web-ui/.next/server/chunks/197.js +12 -0
  78. package/web-ui/web-ui/.next/server/chunks/247.js +66 -0
  79. package/web-ui/web-ui/.next/server/chunks/259.js +22 -0
  80. package/web-ui/web-ui/.next/server/chunks/285.js +1 -0
  81. package/web-ui/web-ui/.next/server/chunks/293.js +1022 -0
  82. package/web-ui/web-ui/.next/server/chunks/498.js +1 -0
  83. package/web-ui/web-ui/.next/server/chunks/524.js +109 -0
  84. package/web-ui/web-ui/.next/server/chunks/{300.js → 618.js} +1 -1
  85. package/web-ui/web-ui/.next/server/chunks/{121.js → 670.js} +1 -1
  86. package/web-ui/web-ui/.next/server/chunks/74.js +1031 -0
  87. package/web-ui/web-ui/.next/server/chunks/807.js +6 -0
  88. package/web-ui/web-ui/.next/server/chunks/811.js +6 -0
  89. package/web-ui/web-ui/.next/server/chunks/97.js +1 -0
  90. package/web-ui/web-ui/.next/server/functions-config-manifest.json +5 -5
  91. package/web-ui/web-ui/.next/server/middleware-build-manifest.js +1 -1
  92. package/web-ui/web-ui/.next/server/middleware-manifest.json +5 -5
  93. package/web-ui/web-ui/.next/server/middleware.js +2 -2
  94. package/web-ui/web-ui/.next/server/pages/404.html +1 -1
  95. package/web-ui/web-ui/.next/server/pages/500.html +1 -1
  96. package/web-ui/web-ui/.next/server/pages/_app.js +1 -1
  97. package/web-ui/web-ui/.next/server/pages/_app.js.nft.json +1 -1
  98. package/web-ui/web-ui/.next/server/pages/_document.js +1 -1
  99. package/web-ui/web-ui/.next/server/pages/_document.js.nft.json +1 -1
  100. package/web-ui/web-ui/.next/server/pages/_error.js +9 -9
  101. package/web-ui/web-ui/.next/server/pages/_error.js.nft.json +1 -1
  102. package/web-ui/web-ui/.next/server/server-reference-manifest.js +1 -1
  103. package/web-ui/web-ui/.next/server/server-reference-manifest.json +1 -1
  104. package/web-ui/web-ui/.next/static/{pkVZ1_T311YNkJgZOLTx5 → 5Pl1KmhN7uMqXkPkq0ZmS}/_buildManifest.js +1 -1
  105. package/web-ui/web-ui/.next/static/chunks/333-837ec42ac57bd0f5.js +1 -0
  106. package/web-ui/web-ui/.next/static/chunks/423b6282-fc44d01f7ffd176d.js +1 -0
  107. package/web-ui/web-ui/.next/static/chunks/539-ca04468e745ed73a.js +1 -0
  108. package/web-ui/web-ui/.next/static/chunks/614-2c96a5e95ce63862.js +1 -0
  109. package/web-ui/web-ui/.next/static/chunks/639-6f64a434dce13266.js +1 -0
  110. package/web-ui/web-ui/.next/static/chunks/826-e806952dd7b636f8.js +55 -0
  111. package/web-ui/web-ui/.next/static/chunks/app/(app)/activity/loading-dd5849a39c269cf4.js +1 -0
  112. package/web-ui/web-ui/.next/static/chunks/app/(app)/activity/page-5fc18420d8d5bf62.js +1 -0
  113. package/web-ui/web-ui/.next/static/chunks/app/(app)/data-shares/loading-dd5849a39c269cf4.js +1 -0
  114. package/web-ui/web-ui/.next/static/chunks/app/(app)/data-shares/page-fe72214e54d52a14.js +1 -0
  115. package/web-ui/web-ui/.next/static/chunks/app/(app)/detections/loading-dd5849a39c269cf4.js +1 -0
  116. package/web-ui/web-ui/.next/static/chunks/app/(app)/detections/page-47e4dd015f24c04d.js +1 -0
  117. package/web-ui/web-ui/.next/static/chunks/app/(app)/error-be2032a4770a35bf.js +1 -0
  118. package/web-ui/web-ui/.next/static/chunks/app/(app)/exceptions/[id]/loading-dd5849a39c269cf4.js +1 -0
  119. package/web-ui/web-ui/.next/static/chunks/app/(app)/exceptions/[id]/page-f90fbb03406e4383.js +1 -0
  120. package/web-ui/web-ui/.next/static/chunks/app/(app)/exceptions/loading-dd5849a39c269cf4.js +1 -0
  121. package/web-ui/web-ui/.next/static/chunks/app/(app)/exceptions/new/loading-dd5849a39c269cf4.js +1 -0
  122. package/web-ui/web-ui/.next/static/chunks/app/(app)/exceptions/new/page-0a1d6a3557b99750.js +1 -0
  123. package/web-ui/web-ui/.next/static/chunks/app/(app)/exceptions/page-dbf32c5303140e8c.js +1 -0
  124. package/web-ui/web-ui/.next/static/chunks/app/(app)/findings/loading-dd5849a39c269cf4.js +1 -0
  125. package/web-ui/web-ui/.next/static/chunks/app/(app)/findings/page-cb1934547acde891.js +1 -0
  126. package/web-ui/web-ui/.next/static/chunks/app/(app)/inventory/loading-dd5849a39c269cf4.js +1 -0
  127. package/web-ui/web-ui/.next/static/chunks/app/(app)/inventory/page-6688bc58741c7c7d.js +1 -0
  128. package/web-ui/web-ui/.next/static/chunks/app/(app)/layout-d357a1d54c653d14.js +1 -0
  129. package/web-ui/web-ui/.next/static/chunks/app/(app)/policies/loading-dd5849a39c269cf4.js +1 -0
  130. package/web-ui/web-ui/.next/static/chunks/app/(app)/policies/page-bc95c7097cca0dfc.js +1 -0
  131. package/web-ui/web-ui/.next/static/chunks/app/(app)/scan/loading-dd5849a39c269cf4.js +1 -0
  132. package/web-ui/web-ui/.next/static/chunks/app/(app)/scan/page-5bebd818c1bb3a79.js +1 -0
  133. package/web-ui/web-ui/.next/static/chunks/app/(app)/security/loading-dd5849a39c269cf4.js +1 -0
  134. package/web-ui/web-ui/.next/static/chunks/app/(app)/security/page-42845dce0b734eeb.js +1 -0
  135. package/web-ui/web-ui/.next/static/chunks/app/(app)/settings/loading-dd5849a39c269cf4.js +1 -0
  136. package/web-ui/web-ui/.next/static/chunks/app/(app)/settings/page-d3ce8a503e8ce592.js +1 -0
  137. package/web-ui/web-ui/.next/static/chunks/app/(app)/updates/loading-dd5849a39c269cf4.js +1 -0
  138. package/web-ui/web-ui/.next/static/chunks/app/(app)/updates/page-802942c0a06fbe31.js +1 -0
  139. package/web-ui/web-ui/.next/static/chunks/app/(app)/vault/loading-dd5849a39c269cf4.js +1 -0
  140. package/web-ui/web-ui/.next/static/chunks/app/(app)/vault/page-52c8cd3a2a09a067.js +1 -0
  141. package/web-ui/web-ui/.next/static/chunks/app/_not-found/page-260d84f0d7697773.js +1 -0
  142. package/web-ui/web-ui/.next/static/chunks/app/layout-c64d57251ee073d5.js +1 -0
  143. package/web-ui/web-ui/.next/static/chunks/app/page-b7ea78b4203d219b.js +1 -0
  144. package/web-ui/web-ui/.next/static/chunks/framework-4a8a69f5ce633b25.js +1 -0
  145. package/web-ui/web-ui/.next/static/chunks/main-89a5d50418a9a7e3.js +1 -0
  146. package/web-ui/web-ui/.next/static/chunks/main-app-4a18e3117ef3af1e.js +1 -0
  147. package/web-ui/web-ui/.next/static/chunks/pages/_app-671d04cd06b05cac.js +1 -0
  148. package/web-ui/web-ui/.next/static/chunks/pages/_error-ae172b6a97f64258.js +1 -0
  149. package/web-ui/web-ui/.next/static/chunks/{webpack-f10501a57c4d919d.js → webpack-c0fb35a40828243e.js} +1 -1
  150. package/web-ui/web-ui/.next/static/css/616a1cc3e0d40480.css +2 -0
  151. package/web-ui/web-ui/dist/scan-worker.js +1754 -871
  152. package/web-ui/web-ui/package.json +7 -7
  153. package/web-ui/web-ui/.next/server/chunks/130.js +0 -1026
  154. package/web-ui/web-ui/.next/server/chunks/19.js +0 -22
  155. package/web-ui/web-ui/.next/server/chunks/290.js +0 -6
  156. package/web-ui/web-ui/.next/server/chunks/3.js +0 -1017
  157. package/web-ui/web-ui/.next/server/chunks/475.js +0 -1
  158. package/web-ui/web-ui/.next/server/chunks/585.js +0 -12
  159. package/web-ui/web-ui/.next/server/chunks/589.js +0 -99
  160. package/web-ui/web-ui/.next/server/chunks/662.js +0 -1
  161. package/web-ui/web-ui/.next/server/chunks/67.js +0 -6
  162. package/web-ui/web-ui/.next/server/chunks/70.js +0 -1
  163. package/web-ui/web-ui/.next/server/chunks/743.js +0 -11
  164. package/web-ui/web-ui/.next/server/chunks/935.js +0 -61
  165. package/web-ui/web-ui/.next/static/chunks/288-2743815300ed0872.js +0 -1
  166. package/web-ui/web-ui/.next/static/chunks/399-6887e92996f64590.js +0 -1
  167. package/web-ui/web-ui/.next/static/chunks/421-cc967c01935826d1.js +0 -1
  168. package/web-ui/web-ui/.next/static/chunks/526-f0156de7831566b3.js +0 -50
  169. package/web-ui/web-ui/.next/static/chunks/52b9c8c1-87132a73d61bdb69.js +0 -1
  170. package/web-ui/web-ui/.next/static/chunks/563-a96f29a2819589cb.js +0 -1
  171. package/web-ui/web-ui/.next/static/chunks/app/(app)/activity/loading-5ae897a85d4509ca.js +0 -1
  172. package/web-ui/web-ui/.next/static/chunks/app/(app)/activity/page-41fba0354cc950be.js +0 -1
  173. package/web-ui/web-ui/.next/static/chunks/app/(app)/data-shares/loading-5ae897a85d4509ca.js +0 -1
  174. package/web-ui/web-ui/.next/static/chunks/app/(app)/data-shares/page-d2e03c3ab61af01a.js +0 -1
  175. package/web-ui/web-ui/.next/static/chunks/app/(app)/detections/loading-5ae897a85d4509ca.js +0 -1
  176. package/web-ui/web-ui/.next/static/chunks/app/(app)/detections/page-566036afcc87e4c9.js +0 -1
  177. package/web-ui/web-ui/.next/static/chunks/app/(app)/error-4baae46bcee63009.js +0 -1
  178. package/web-ui/web-ui/.next/static/chunks/app/(app)/exceptions/[id]/loading-5ae897a85d4509ca.js +0 -1
  179. package/web-ui/web-ui/.next/static/chunks/app/(app)/exceptions/[id]/page-73dbcf0078b82ec4.js +0 -1
  180. package/web-ui/web-ui/.next/static/chunks/app/(app)/exceptions/loading-5ae897a85d4509ca.js +0 -1
  181. package/web-ui/web-ui/.next/static/chunks/app/(app)/exceptions/new/loading-5ae897a85d4509ca.js +0 -1
  182. package/web-ui/web-ui/.next/static/chunks/app/(app)/exceptions/new/page-8051503193da1baf.js +0 -1
  183. package/web-ui/web-ui/.next/static/chunks/app/(app)/exceptions/page-32c8a853bc8b5d34.js +0 -1
  184. package/web-ui/web-ui/.next/static/chunks/app/(app)/findings/loading-5ae897a85d4509ca.js +0 -1
  185. package/web-ui/web-ui/.next/static/chunks/app/(app)/findings/page-dc8fadb56d6d1e77.js +0 -1
  186. package/web-ui/web-ui/.next/static/chunks/app/(app)/inventory/loading-5ae897a85d4509ca.js +0 -1
  187. package/web-ui/web-ui/.next/static/chunks/app/(app)/inventory/page-9b49ef42350ea7bd.js +0 -1
  188. package/web-ui/web-ui/.next/static/chunks/app/(app)/layout-f5f361f817f90ac9.js +0 -1
  189. package/web-ui/web-ui/.next/static/chunks/app/(app)/policies/loading-5ae897a85d4509ca.js +0 -1
  190. package/web-ui/web-ui/.next/static/chunks/app/(app)/policies/page-01b303adf3c8ee56.js +0 -1
  191. package/web-ui/web-ui/.next/static/chunks/app/(app)/scan/loading-5ae897a85d4509ca.js +0 -1
  192. package/web-ui/web-ui/.next/static/chunks/app/(app)/scan/page-8db3b62245c333a3.js +0 -1
  193. package/web-ui/web-ui/.next/static/chunks/app/(app)/security/loading-5ae897a85d4509ca.js +0 -1
  194. package/web-ui/web-ui/.next/static/chunks/app/(app)/security/page-7a4ba61626e0d130.js +0 -1
  195. package/web-ui/web-ui/.next/static/chunks/app/(app)/settings/loading-5ae897a85d4509ca.js +0 -1
  196. package/web-ui/web-ui/.next/static/chunks/app/(app)/settings/page-0930b49f6ab951bc.js +0 -1
  197. package/web-ui/web-ui/.next/static/chunks/app/(app)/updates/loading-5ae897a85d4509ca.js +0 -1
  198. package/web-ui/web-ui/.next/static/chunks/app/(app)/updates/page-9b04f3441a1a3f96.js +0 -1
  199. package/web-ui/web-ui/.next/static/chunks/app/(app)/vault/loading-5ae897a85d4509ca.js +0 -1
  200. package/web-ui/web-ui/.next/static/chunks/app/(app)/vault/page-911a76e75f5a1419.js +0 -1
  201. package/web-ui/web-ui/.next/static/chunks/app/_not-found/page-a0f1d816312dcb9c.js +0 -1
  202. package/web-ui/web-ui/.next/static/chunks/app/layout-d6718b04dff0ca9c.js +0 -1
  203. package/web-ui/web-ui/.next/static/chunks/app/page-9f976e619a11c1dd.js +0 -1
  204. package/web-ui/web-ui/.next/static/chunks/framework-78529e4152d251a3.js +0 -1
  205. package/web-ui/web-ui/.next/static/chunks/main-aef82d1ebf75b725.js +0 -1
  206. package/web-ui/web-ui/.next/static/chunks/main-app-ecdeb13a427413ee.js +0 -1
  207. package/web-ui/web-ui/.next/static/chunks/pages/_app-cb7c9f431bf725f7.js +0 -1
  208. package/web-ui/web-ui/.next/static/chunks/pages/_error-fae7cf4a2cfcee1b.js +0 -1
  209. package/web-ui/web-ui/.next/static/css/298a651f6af38209.css +0 -2
  210. /package/web-ui/web-ui/.next/static/{pkVZ1_T311YNkJgZOLTx5 → 5Pl1KmhN7uMqXkPkq0ZmS}/_ssgManifest.js +0 -0
@@ -0,0 +1,6 @@
1
+ "use strict";exports.id=807,exports.ids=[807],exports.modules={38807:(a,b,c)=>{let d,e,f;c.d(b,{D1:()=>G,mB:()=>K,Pi:()=>cP,S1:()=>ag,tq:()=>aj,IL:()=>cT,$g:()=>M,Lr:()=>cN,yy:()=>_,Kq:()=>cQ,KQ:()=>R,UE:()=>ak,I7:()=>P,I9:()=>cJ,K5:()=>F,xe:()=>cS,US:()=>cE,f2:()=>cO,u5:()=>cU,OF:()=>cL,He:()=>an,cW:()=>ao});var g=c(88477),h=c(31421),i=c(48161);let j="win32"===process.platform,k=/[\s&|^<>()"]/;function l(a){return k.test(a)?`"${a.replaceAll('"','""')}"`:a}let m=/^[\w@%+=:,./-]+$/;function n(a){return j?a.map(l):a}let o="win32"===process.platform?{cwd:(0,i.homedir)()}:{};function p(a){let b="win32"===process.platform?"where":"command",c="win32"===process.platform?[a]:["-v",a];try{let a=(0,h.spawnSync)(b,c,{stdio:"ignore",shell:"win32"!==process.platform,...o});return 0===a.status}catch{return!1}}function q(a,b,c=15e3){try{let d=(0,h.execFileSync)(a,n(b),{encoding:"utf8",timeout:c,stdio:["ignore","pipe","pipe"],shell:j,...o});return{ok:!0,stdout:d.trim(),stderr:""}}catch(a){return{ok:!1,stdout:"string"==typeof a.stdout?a.stdout.trim():"",stderr:"string"==typeof a.stderr?a.stderr.trim():""}}}function r(a,b){try{return(0,h.execFileSync)(a,n(b),{stdio:"inherit",shell:j,...o}),!0}catch{return!1}}let s={claude:{install:a=>[["plugin","install",a]],update:(a,b)=>[["plugin","update",a,...b?["--scope",b]:[]]],register:a=>[["plugin","marketplace","add",a]],refresh:a=>[["plugin","marketplace","update",a]]},codex:{install:a=>[["plugin","add",a]],update:a=>[["plugin","add",a]],register:a=>[["plugin","marketplace","add",a]],refresh:a=>[["plugin","marketplace","upgrade",a]]}};function t(a,b){let c=s[a],d=a=>c.update(a,b),e=b=>b.every(b=>r(a,[...b])),f=b=>b.map(b=>`${a} ${b.join(" ")}`),g=(a,b)=>[...c.register(a),...b?c.refresh(b):[]],h=(a,b)=>f([...b?c.register(b):[],...a]),i=(a,b,c)=>f([...b?g(b,c):[],...a]);return{available:()=>p(a),marketplaceSteps:g,installSteps:a=>c.install(a),updateSteps:a=>d(a),installRecipe:(a,b)=>h(c.install(a),b),updateRecipe:(a,b)=>h(d(a),b),installSpawnPlan:(a,b,d)=>i(c.install(a),b,d),updateSpawnPlan:(a,b,c)=>i(d(a),b,c),install:a=>e(c.install(a)),update:a=>e(d(a))}}var u=c(73024),v=c(76760);function w(a){let b=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-.]+))?$/.exec(a.trim());return b?{core:[Number(b[1]),Number(b[2]),Number(b[3])],pre:b[4]?b[4].split("."):[]}:null}function x(a){return null!==w(a)}function y(a){return"string"==typeof a&&a.length<=256&&a===a.trim()&&x(a)}function z(a,b){let c=w(a),d=w(b);if(!c||!d)return 0;for(let a=0;a<3;a++){let b=c.core[a]??0,e=d.core[a]??0;if(b!==e)return b<e?-1:1}return function(a,b){if(0===a.length&&0===b.length)return 0;if(0===a.length)return 1;if(0===b.length)return -1;let c=Math.min(a.length,b.length);for(let d=0;d<c;d++){let c=a[d]??"",e=b[d]??"";if(c===e)continue;let f=/^\d+$/.test(c),g=/^\d+$/.test(e);if(f&&!g)return -1;if(!f&&g)return 1;if(f&&g)return Number(c)<Number(e)?-1:1;return c<e?-1:1}return a.length===b.length?0:a.length<b.length?-1:1}(c.pre,d.pre)}var A=c(73136);let B=(0,g.g$R)(200);function C(a){return"object"==typeof a&&null!==a}function D(a){if((0,u.existsSync)(a))try{return JSON.parse((0,u.readFileSync)(a,"utf8"))}catch{return}}let E={version:null};function F(a,b=(0,v.join)((0,i.homedir)(),".claude")){if("claude"!==a.cliBin)return E;let{marketplace:c,pluginName:d}=a;if(void 0===c||void 0===d)return E;let e=function(a,b){let c=D((0,v.join)(a,"plugins","known_marketplaces.json"));if(!C(c))return null;let d=c[b];return C(d)&&"string"==typeof d.installLocation?d.installLocation:null}(b,c);if(null===e)return E;let f=D((0,v.join)(e,".claude-plugin","marketplace.json"));if(!C(f)||!Array.isArray(f.plugins))return E;let g=f.plugins.find(a=>C(a)&&a.name===d);if(void 0===g||!C(g.source))return E;let h=g.source.version;return"string"!=typeof h||""===h.trim()?E:y(h)?{version:h}:B.safeParse(h).success?{version:null,range:h}:E}let G=[{id:"claude-code",name:"Claude Code",sourceTool:g.Zdp.ClaudeCode,description:"Hooks Claude Code sessions to detect + redact sensitive data in prompts, responses, and file writes.",npmPackage:"@akasecurity/ai-tc-claude-code",pluginName:"ai-tc",marketplace:"akasecurity",marketplaceSource:"akasecurity/marketplace",cliBin:"claude"},{id:"codex",name:"Codex CLI",sourceTool:g.Zdp.Codex,description:"Hooks Codex CLI sessions to detect + redact sensitive data in prompts, responses, and Bash tool calls.",npmPackage:"@akasecurity/ai-tc-codex",pluginName:"aka-codex",marketplace:"ai-tc",marketplaceSource:"akasecurity/ai-tc",cliBin:"codex"},{id:"antigravity",name:"Antigravity",sourceTool:g.Zdp.Antigravity,description:"Hooks Antigravity CLI sessions to detect sensitive data in shell commands and file writes.",npmPackage:"@akasecurity/ai-tc-antigravity",installHint:"Antigravity installs plugins from a local directory rather than a marketplace:\n npm pack @akasecurity/ai-tc-antigravity && tar -xzf akasecurity-ai-tc-antigravity-*.tgz\n agy plugin install ./package\nThen run `aka init` to set up the local store."}];function H(a){if(a.pluginName&&a.marketplace)return`${a.pluginName}@${a.marketplace}`}function I(a){if(null===a)return g.UiT.Stable;let[b]=w(a)?.pre??[];return b===g.UiT.Beta?g.UiT.Beta:b===g.UiT.Nightly?g.UiT.Nightly:g.UiT.Stable}function J(a,b){if(null===a)return{version:null,source:g.pHc.Unknown};let c=a[g.qvI[g.UiT.Stable]]??null;if(b===g.UiT.Stable)return null===c?{version:null,source:g.pHc.Unpublished}:{version:c,source:g.pHc.Channel};let d=a[g.qvI[b]]??null;return null===d?{version:c,source:g.pHc.Unpublished}:null===c?{version:d,source:g.pHc.Channel}:z(c,d)>0?{version:c,source:g.pHc.Graduated}:{version:d,source:g.pHc.Channel}}Object.keys(g.qvI).filter(function(a){return Object.hasOwn(g.qvI,a)});let K="@akasecurity/cli";function L(a){return"object"==typeof a&&null!==a}function M(a){let b=a??(0,v.dirname)((0,A.fileURLToPath)("file:///home/runner/work/ai-tc/ai-tc/packages/local-ops/src/updates.ts"));for(let a=0;a<6;a++){let a=(0,v.join)(b,"package.json");if((0,u.existsSync)(a))try{let b=JSON.parse((0,u.readFileSync)(a,"utf8"));if(L(b)&&b.name===K&&"string"==typeof b.version)return b.version}catch{}let c=(0,v.dirname)(b);if(c===b)break;b=c}return null}function N(a=(0,v.join)((0,i.homedir)(),".claude")){let b,c=new Map,d=(0,v.join)(a,"plugins","installed_plugins.json");if(!(0,u.existsSync)(d))return c;try{b=JSON.parse((0,u.readFileSync)(d,"utf8"))}catch{return c}if(!L(b)||!L(b.plugins))return c;for(let[a,d]of Object.entries(b.plugins)){if(!Array.isArray(d)||0===d.length)continue;let b=d.find(a=>L(a)&&"user"===a.scope)??d.find(a=>L(a));b&&"string"==typeof b.version&&c.set(a,{version:b.version,..."string"==typeof b.scope?{scope:b.scope}:{}})}return c}function O(a,b){return N(b).get(a)?.scope}function P(a,b){return new Map([...new Map([...N(a)].map(([a,{version:b}])=>[a,b])),...function(a=(0,v.join)((0,i.homedir)(),".codex")){let b=new Map,c=(0,v.join)(a,"plugins","cache");for(let a of G){if("codex"!==a.cliBin)continue;let d=H(a);if(!d||!a.pluginName||!a.marketplace)continue;let e=function(a){let b;try{b=(0,u.readdirSync)(a,{withFileTypes:!0}).filter(a=>a.isDirectory()).map(a=>a.name)}catch{return null}if(0===b.length)return null;if(b.includes("local"))return"local";let c=b.filter(x);return 0===c.length?null:c.reduce((a,b)=>z(b,a)>0?b:a)}((0,v.join)(c,a.marketplace,a.pluginName));null!==e&&b.set(d,e)}return b}(b)])}function Q(a,b=q){let c=b("npm",["view",a,"dist-tags","--json"],15e3);if(!c.ok||!c.stdout)return null;let d=function(a){let b=0;for(let c of a.split("\n")){let d=/^[ \t]*/.exec(c)?.[0].length??0;if("{"===c[d])try{let c=JSON.parse(a.slice(b+d));if(L(c))return c}catch{}b+=c.length+1}return null}(c.stdout);if(null===d)return null;let e={};for(let[a,b]of Object.entries(d)){if("string"!=typeof b)return null;e[a]=b}return e}function R(a){let b=a.cliChannel??I(a.cliInstalled),c=a.viewDistTags(K),d=J(c,b),e=d.version,f=d.source===g.pHc.Graduated?c?.[g.qvI[b]]:void 0,h=[{id:"cli",name:"aka CLI",kind:"cli",installed:a.cliInstalled,latest:e,updateAvailable:null!==a.cliInstalled&&null!==e&&z(e,a.cliInstalled)>0,channel:b,latestFrom:d.source,...void 0!==f?{channelLatest:f}:{}}],i=[];for(let b of G){let c=H(b);if(!c||!b.npmPackage)continue;let d=a.installed.get(c)??null,e=I(d),f=J(a.viewDistTags(b.npmPackage),e),g=f.version,j=a.marketplacePin(b),k=j.version??g,l=null===j.version&&void 0!==j.range,m=(null!==j.version||void 0!==j.range)&&void 0!==b.marketplace?{marketplacePin:{marketplace:b.marketplace,npmLatest:g,npmAhead:null!==j.version&&null!==g&&z(g,j.version)>0,...void 0!==j.range?{range:j.range}:{}}}:{};if(null===d){i.push({id:b.id,name:b.name,latest:k});continue}h.push({id:b.id,name:b.name,kind:"plugin",installed:d,latest:k,updateAvailable:!l&&null!==k&&z(k,d)>0,channel:e,...null===j.version?{latestFrom:f.source}:{},...m})}return{statuses:h,availablePlugins:i}}let S={Homebrew:"homebrew",Scoop:"scoop",Standalone:"standalone"};function T(a){return a.split(v.sep).filter(Boolean)}function U(a,b){for(let c=a.length-b.length;c>=0;c--)if(b.every((b,d)=>a[c+d]===b))return c;return -1}function V(a){let b=0;for(;a[b]===v.sep;)b++;return a.slice(0,b)}function W(a,b){return b+a.join(v.sep)}let X=new Set(["homebrew","local","linuxbrew",".linuxbrew"]);function Y(a){for(let b=a.length-2;b>=1;b--)if("Cellar"===a[b]&&X.has(a[b-1]??""))return a[b+1]??null;return null}let Z=[["pnpm-lock.yaml","pnpm"],["yarn.lock","yarn"],["bun.lock","bun"],["bun.lockb","bun"],["package-lock.json","npm"]];function $(a){return"yarn"===a.toLowerCase().replace(/^\./,"")}function _(a){var b;return function(a){if(a.sea){let b=T(a.execPath),c=V(a.execPath),d="aka"===Y(b)?S.Homebrew:!function(a,b,c){let d=U(b,["apps","aka"]);if(d<1||b.length<d+4)return!1;let e=b[d+2];return("current"===e||!!/^\d/.test(e??""))&&a.exists((0,v.join)(W(b.slice(0,d),c),"shims"))}(a,b,c)?S.Standalone:S.Scoop;return{kind:"sea",execPath:a.execPath,managedBy:d,installRoot:d===S.Standalone?function(a){let b=T(a),c=b[b.length-2];return b.length<4||!c?.startsWith("aka-")?null:W(b.slice(0,b.length-3),V(a))}(a.execPath):null}}if(void 0===a.moduleDir)return{kind:"unknown",detail:"the running module has no resolvable path"};let b=function(a,b){let c=b;for(let b=0;b<8;b++){if(a.packageName(c)===K)return c;let b=(0,v.dirname)(c);if(b===c)break;c=b}return null}(a,a.moduleDir);if(null===b){let b=function(a,b){let c=b;for(let b=0;b<8;b++){if(a.exists((0,v.join)(c,"pnpm-workspace.yaml")))return c;let b=(0,v.dirname)(c);if(b===c)break;c=b}return null}(a,a.moduleDir);return null!==b?{kind:"dev",packageDir:b}:{kind:"unknown",detail:`no ${K} package.json above ${a.moduleDir}`}}let c=function(a){let b=a.lastIndexOf(".pnpm");if(b<1)return a;let c=a.indexOf("node_modules",b+1);if(c<0)return a;let d=a.slice(0,b),e="node_modules"===d[d.length-1]?[]:["node_modules"];return[...d,...e,...a.slice(c+1)]}(T(b)),d=V(b);if(null!==Y(c))return{kind:"homebrew",packageDir:b};let e=U(c,["install","global","node_modules"]);if(e>=0)return{kind:"global",manager:"bun",root:W(c.slice(0,e+2),d),packageDir:b};let f=U(c,["global"]);if(f>=0&&"node_modules"===c[f+2]&&/^\d+$/.test(c[f+1]??""))return{kind:"global",manager:"pnpm",root:W(c.slice(0,f+1),d),packageDir:b};let g=U(c,["global","node_modules"]);if(g>=1&&c.slice(Math.max(0,g-2),g).some($))return{kind:"global",manager:"yarn",root:W(c.slice(0,g+1),d),packageDir:b};let h=U(c,["lib","node_modules"]);if(h>=0)return{kind:"global",manager:"npm",root:W(c.slice(0,h),d),packageDir:b};let i=U(c,["node_modules"]);if(i>=0){let e=W(c.slice(0,i),d);return a.exists((0,v.join)(e,"package.json"))?a.exists((0,v.join)(e,"pnpm-workspace.yaml"))?{kind:"dev",packageDir:b}:{kind:"project",packageDir:b,projectRoot:e,manager:function(a,b){for(let[c,d]of Z)if(a.exists((0,v.join)(b,c)))return d;return"npm"}(a,e)}:a.exists((0,v.join)(e,"src"))?{kind:"dev",packageDir:b}:{kind:"global",manager:"npm",root:e,packageDir:b}}return a.exists((0,v.join)(b,"src"))?{kind:"dev",packageDir:b}:{kind:"unknown",detail:`unrecognised layout at ${b}`}}((b=a,{sea:function(){try{let a=c(15895);return"function"==typeof a.isSea&&a.isSea()}catch{return!1}}(),execPath:aa(process.execPath),moduleDir:void 0===b.moduleDir?void 0:aa(b.moduleDir),exists:u.existsSync,packageName:ab}))}function aa(a){try{return(0,u.realpathSync)(a)}catch{return a}}function ab(a){let b=(0,v.join)(a,"package.json");if(!(0,u.existsSync)(b))return null;try{let a=JSON.parse((0,u.readFileSync)(b,"utf8"));return L(a)&&"string"==typeof a.name?a.name:null}catch{return null}}let ac={[S.Homebrew]:()=>({display:"brew upgrade aka",reason:"this standalone binary is managed by Homebrew — brew owns the files under Cellar, and re-running the installer would leave a second copy beside them"}),[S.Scoop]:()=>({display:"scoop update aka",reason:"this standalone binary is managed by Scoop — scoop owns the files under its apps directory, and re-running the installer would leave a second copy beside them"}),[S.Standalone]:a=>({display:"win32"===a?"irm https://raw.githubusercontent.com/akasecurity/ai-tc/bin-latest/tools/installer/install.ps1 | iex":"curl -fsSL https://raw.githubusercontent.com/akasecurity/ai-tc/bin-latest/tools/installer/install.sh | sh",reason:"this is the standalone binary — it embeds its own runtime and has no npm package behind it, so re-run the installer to replace it"})},ad={channel:g.UiT.Stable,version:null};function ae(a,b,c,d=6e5){if("inherit"===c)return{ok:r(a,[...b]),output:""};let e=q(a,[...b],d);return{ok:e.ok,output:[e.stdout,e.stderr].filter(Boolean).join("\n")}}function af(a,b,c){let d=[];for(let e of b){let b=ae(a,e,c);if(b.output&&d.push(b.output),!b.ok)return{ok:!1,output:d.join("\n")}}return{ok:!0,output:d.join("\n")}}function ag(a,b="capture",c=p,d={channel:g.UiT.Stable,version:null}){let e=function(a,b=process.platform,c=ad){let d=function(a){let{channel:b,version:c}=a,d=null!==c&&y(c)?c:g.qvI[b];return`${K}@${d}`}(c),e=c.channel,f=e===g.UiT.Stable?"":`; it cannot follow the ${e} channel, so there is nothing here to switch`;switch(a.kind){case"global":return function(a,b,c,d){let e={npm:["install","-g","--prefix",b,c],pnpm:["add","-g","--global-dir",b,c],yarn:["global","add",c],bun:["add","-g",c]}[a],f=[a,...e.map(a=>(function(a,b=process.platform){return"win32"===b?l(a):a.length>0&&m.test(a)?a:`'${a.replaceAll("'",String.raw`'\''`)}'`})(a,d))].join(" ");return{command:{bin:a,args:e},display:f}}(a.manager,a.root,d,b);case"homebrew":return{command:null,display:"brew upgrade aka",reason:`this copy is managed by Homebrew — brew owns the files under Cellar${f}`};case"sea":{let c=ac[a.managedBy](b);return{command:null,display:c.display,reason:`${c.reason}${f}`}}case"dev":return{command:null,display:"git pull",reason:`running from a source checkout at ${a.packageDir} — nothing to install`};case"project":{let b="npm"===a.manager?"install":"add";return{command:null,display:`${a.manager} ${b} ${d}`,reason:`this copy is a dependency of the project at ${a.projectRoot}, not a global install — update it there, in that project`}}case"unknown":return{command:null,display:`npm install -g ${d}`,reason:`could not tell how this copy of aka was installed (${a.detail})`}}}(a,process.platform,d);if(null===e.command)return{ok:!1,output:`Cannot update automatically: ${e.reason??"unsupported install"}.
2
+ Run: ${e.display}`};let{bin:f,args:h}=e.command;return c(f)?ae(f,h,b):{ok:!1,output:`the \`${f}\` CLI isn't on your PATH — install it, then run: ${e.display}`}}function ah(a){let b=G.find(b=>b.id===a);if(!b)return{ok:!1,output:`unknown agent '${a}'`};let c=H(b),d=b.cliBin;if(!c||!d)return{ok:!1,output:`${b.name} has no automated install path yet.`};let e=t(d,O(c));if(!e.available()){let a=b.marketplaceSource,f=e.installRecipe(c,a).join(" && "),g=e.updateRecipe(c,a).join(" && "),h=f===g?`\`${f}\` (that installs or updates)`:`\`${f}\` (or update with \`${g}\`)`;return{ok:!1,output:`the \`${d}\` CLI isn't on your PATH — install ${b.name}, then run ${h}.`}}return{ref:c,cliBin:d,marketplace:b.marketplace,marketplaceSource:b.marketplaceSource}}function ai(a,b){if(a.marketplaceSource)for(let c of t(a.cliBin).marketplaceSteps(a.marketplaceSource,a.marketplace))ae(a.cliBin,c,b,6e4)}function aj(a,b="capture"){let c=ah(a);if("ok"in c)return c;ai(c,b);let d=t(c.cliBin,O(c.ref));return af(c.cliBin,d.updateSteps(c.ref),b)}function ak(a,b="capture"){let c=ah(a);if("ok"in c)return c;ai(c,b);let d=t(c.cliBin);return af(c.cliBin,d.installSteps(c.ref),b)}var al=c(77598);function am(a){return`com.akasecurity.aka.background-sync.${(0,al.createHash)("sha256").update(a).digest("hex").slice(0,12)}`}function an(a,b={}){let c=b.akaCommand??"aka";if(!(b.probeCli??function(a){let b=(0,h.spawnSync)(a,["--version"],{stdio:"ignore",timeout:5e3});return b.error?.code!=="ENOENT"})(c))return{started:!1,reason:"no-cli-entry"};try{return(b.startDetached??function(a,b){let c=(0,h.spawn)(a,[...b],{detached:!0,stdio:"ignore"});c.on("error",()=>void 0),c.unref()})(c,["sync-history","--run","--home",a]),{started:!0}}catch{return{started:!1,reason:"spawn-failed"}}}function ao(a,b={}){try{if((b.platform??process.platform)!=="darwin")return;(b.runLaunchctl??function(a){return q("launchctl",a).ok})(["bootout",`${function(){let a=process.getuid;return`gui/${String("function"==typeof a?a():0)}`}()}/${am(a)}`]),(b.removeFile??(a=>{(0,u.rmSync)(a,{force:!0})}))(v.posix.join(v.posix.join((b.homeDir??i.homedir)(),"Library","LaunchAgents"),`${am(a)}.plist`))}catch{}}let ap=t("claude");ap.available,ap.install,ap.update;let aq=t("codex");aq.available,aq.install,aq.update;var ar=c(30285),as=c(61074),at=c(74123);let au=at.YjP().optional().transform(a=>{if(void 0===a)return;let b=a.trim().toLowerCase();return""!==b&&"false"!==b&&"0"!==b}).catch(void 0),av=at.vkY(a=>{if("string"!=typeof a||""!==a.trim())return a},at.YjP().optional()).catch(void 0);at.Ikc({CLAUDE_CODE_USE_BEDROCK:au,CLAUDE_CODE_USE_VERTEX:au,ANTHROPIC_BASE_URL:av});let aw=JSON.parse('{"specVersion":1,"id":"code-flaws/auth-jwt-no-verify","name":"JWT decoded without signature verification","category":"code_flaw","severity":"critical","matcher":{"type":"regex","pattern":"(verify\\\\s*=\\\\s*false|verify_signature.*false|algorithms\\\\s*=\\\\s*\\\\[\\\\])","flags":"gi"},"requiresNearby":{"labels":["jwt","decode","token"],"windowChars":160},"examples":["jwt.decode(token, options={\\"verify_signature\\": False})","jwt.decode(token, algorithms=[])"]}'),ax=JSON.parse('{"specVersion":1,"id":"code-flaws/auth-ssl-verify-false","name":"SSL certificate verification disabled","category":"code_flaw","severity":"high","matcher":{"type":"regex","pattern":"\\\\brequests\\\\.(get|post|put|delete|patch|request)\\\\s*\\\\([^)]*verify\\\\s*=\\\\s*False","flags":"gi"},"examples":["requests.get(url, verify=False)","requests.post(endpoint, data=payload, verify=False)"],"appliesTo":{"extensions":[".py"]}}'),ay=JSON.parse('{"specVersion":1,"id":"code-flaws/cmd-inject-exec","name":"Command injection via Java Runtime.exec","category":"code_flaw","severity":"critical","matcher":{"type":"regex","pattern":"Runtime\\\\.getRuntime\\\\(\\\\)\\\\.exec\\\\(","flags":"g"},"requiresNearby":{"labels":["input","request","param","user"],"windowChars":200},"examples":["Runtime.getRuntime().exec(userInput)"],"appliesTo":{"extensions":[".java"]}}'),az=JSON.parse('{"specVersion":1,"id":"code-flaws/cmd-inject-node-exec","name":"Command injection via Node.js exec with variable argument","category":"code_flaw","severity":"critical","matcher":{"type":"regex","pattern":"\\\\bexec(?:Sync)?\\\\s*\\\\(\\\\s*(?![\'\\"`])","flags":"g"},"requiresNearby":{"labels":["input","request","param","argv","user","query","body"],"windowChars":200},"examples":["exec(req.query.cmd)","execSync(userInput)"],"appliesTo":{"extensions":[".js",".jsx",".ts",".tsx",".mjs",".cjs"]}}'),aA=JSON.parse('{"specVersion":1,"id":"code-flaws/cmd-inject-shell","name":"Command injection via subprocess shell=True","category":"code_flaw","severity":"critical","matcher":{"type":"regex","pattern":"subprocess\\\\.(run|Popen|call|check_output)\\\\s*\\\\([^)]*shell\\\\s*=\\\\s*True","flags":"gi"},"requiresNearby":{"labels":["input","request","param","argv","user"],"windowChars":300},"examples":["subprocess.run(user_input, shell=True)"],"appliesTo":{"extensions":[".py"]}}'),aB=JSON.parse('{"specVersion":1,"id":"code-flaws/crypto-insecure-random","name":"Insecure random number generator used for security-sensitive value","category":"code_flaw","severity":"medium","matcher":{"type":"regex","pattern":"\\\\b(Math\\\\.random\\\\(\\\\)|random\\\\.random\\\\(\\\\)|random\\\\.randint\\\\()","flags":"gi"},"requiresNearby":{"labels":["token","session","key","password","secret","nonce","salt"],"windowChars":160},"examples":["const token = Math.random().toString(36)","session_key = str(random.random())"],"appliesTo":{"extensions":[".js",".jsx",".ts",".tsx",".mjs",".cjs",".py"]}}'),aC=JSON.parse('{"specVersion":1,"id":"code-flaws/crypto-weak-hash-md5","name":"Weak cryptographic hash: MD5","category":"code_flaw","severity":"medium","matcher":{"type":"regex","pattern":"(hashlib\\\\.md5\\\\s*\\\\(|MD5\\\\.(?:digest|hash)\\\\b|Digest::MD5|MessageDigest\\\\.getInstance\\\\s*\\\\(\\\\s*[\\"\']MD5[\\"\'])","flags":"gi"},"examples":["hashlib.md5(password.encode())","MessageDigest.getInstance(\\"MD5\\")"],"appliesTo":{"extensions":[".py",".rb",".java"]}}'),aD=JSON.parse('{"specVersion":1,"id":"code-flaws/crypto-weak-hash-sha1","name":"Weak cryptographic hash: SHA-1 in security context","category":"code_flaw","severity":"medium","matcher":{"type":"regex","pattern":"(hashlib\\\\.sha1\\\\s*\\\\(|SHA1\\\\.(?:digest|hash)\\\\b|Digest::SHA1|MessageDigest\\\\.getInstance\\\\s*\\\\(\\\\s*[\\"\']SHA-?1[\\"\'])","flags":"gi"},"requiresNearby":{"labels":["password","credential","hash","token","secret"],"windowChars":160},"examples":["password_hash = hashlib.sha1(password.encode()).hexdigest()","MessageDigest.getInstance(\\"SHA1\\")"],"appliesTo":{"extensions":[".py",".rb",".java"]}}'),aE=JSON.parse('{"specVersion":1,"id":"code-flaws/deser-java-ois","name":"Insecure deserialization via Java ObjectInputStream","category":"code_flaw","severity":"critical","matcher":{"type":"regex","pattern":"\\\\bObjectInputStream\\\\b","flags":"g"},"requiresNearby":{"labels":["readObject"],"windowChars":200},"examples":["ObjectInputStream ois = new ObjectInputStream(inputStream); Object obj = ois.readObject();"],"appliesTo":{"extensions":[".java"]}}'),aF=JSON.parse('{"specVersion":1,"id":"code-flaws/deser-pickle","name":"Insecure deserialization via Python pickle","category":"code_flaw","severity":"critical","matcher":{"type":"regex","pattern":"\\\\bpickle\\\\.loads?\\\\s*\\\\(","flags":"gi"},"examples":["data = pickle.loads(user_data)","obj = pickle.load(request.stream)"],"appliesTo":{"extensions":[".py"]}}'),aG=JSON.parse('{"specVersion":1,"id":"code-flaws/deser-yaml-unsafe","name":"Insecure deserialization via yaml.load without SafeLoader","category":"code_flaw","severity":"high","matcher":{"type":"regex","pattern":"\\\\byaml\\\\.load\\\\s*\\\\((?![^)]*SafeLoader|[^)]*safe_load)","flags":"gi"},"examples":["data = yaml.load(user_input)","config = yaml.load(f)"],"appliesTo":{"extensions":[".py"]}}'),aH=JSON.parse('{"specVersion":1,"id":"code-flaws/dev-debug-enabled","name":"Debug mode enabled in configuration","category":"code_flaw","severity":"medium","matcher":{"type":"regex","pattern":"\\\\bdebug\\\\s*[=:]\\\\s*(true|1|yes)","flags":"gi"},"examples":["DEBUG = True","debug: true","app.debug = True"]}'),aI=JSON.parse('{"specVersion":1,"id":"code-flaws/dev-placeholder-secret","name":"Placeholder or default secret left in code","category":"code_flaw","severity":"high","matcher":{"type":"keyword","keywords":["changeme","placeholder","your-secret","dev-secret","replace-me","todo-secret"],"caseSensitive":false},"requiresNearby":{"labels":["key","secret","password","token"],"windowChars":80},"examples":["SECRET_KEY = \'changeme\'","api_token = \'your-secret\'"]}'),aJ=JSON.parse('{"specVersion":1,"id":"code-flaws/dev-wildcard-cors","name":"CORS wildcard allowing all origins","category":"code_flaw","severity":"medium","matcher":{"type":"regex","pattern":"(Access-Control-Allow-Origin:\\\\s*\\\\*|origin:\\\\s*[\\"\']\\\\*[\\"\']|allow_all_origins\\\\s*=\\\\s*True|CORS_ALLOW_ALL_ORIGINS\\\\s*=\\\\s*True)","flags":"gi"},"examples":["Access-Control-Allow-Origin: *","cors({ origin: \'*\' })","CORS_ALLOW_ALL_ORIGINS = True"]}'),aK=JSON.parse('{"specVersion":1,"id":"code-flaws/eval-dynamic-exec","name":"Dynamic code execution with user-controlled input","category":"code_flaw","severity":"critical","matcher":{"type":"regex","pattern":"\\\\b(eval|exec)\\\\s*\\\\(\\\\s*(?![\'\\"`])","flags":"g"},"requiresNearby":{"labels":["input","request","param","user","query","body"],"windowChars":200},"examples":["eval(request.body.code)","exec(user_input)"]}'),aL=JSON.parse('{"specVersion":1,"id":"code-flaws/hardcoded-password","name":"Hardcoded password in source code","category":"code_flaw","severity":"high","matcher":{"type":"regex","pattern":"(?:password|passwd|pwd)\\\\s*=\\\\s*[\\"\']([^\\"\']{3,})[\\"\']","flags":"gi","captureGroup":1},"postValidators":[{"name":"entropy","config":{"minLength":8,"threshold":3}}],"examples":["password = \\"Tr0ub4dor&3\\"","DB_PASSWORD = \'c0rr3ctH0rseBatt3ry\'"]}'),aM=JSON.parse('{"specVersion":1,"id":"code-flaws/hardcoded-secret-key","name":"Hardcoded API key or secret key in source code","category":"code_flaw","severity":"high","matcher":{"type":"regex","pattern":"\\\\b(secret[_-]?key|api[_-]?key|auth[_-]?token)\\\\s*=\\\\s*[\\"\'][^\\"\']{8,}[\\"\']","flags":"gi"},"postValidators":["entropy"],"examples":["SECRET_KEY = \\"a9f2c8e1b4d7f3a6c9e2b5d8f1a4c7e0\\"","api_key = \'sk-proj-abc123XYZ789def456\'"]}'),aN=JSON.parse('{"specVersion":1,"id":"code-flaws/path-traversal-join","name":"Path traversal via os.path.join with user-controlled component","category":"code_flaw","severity":"high","matcher":{"type":"regex","pattern":"os\\\\.path\\\\.join\\\\s*\\\\([^,)]+,\\\\s*(request|req|params|user)","flags":"gi"},"examples":["os.path.join(base_dir, request.args[\'file\'])","os.path.join(upload_dir, user_filename)"],"appliesTo":{"extensions":[".py"]}}'),aO=JSON.parse('{"specVersion":1,"id":"code-flaws/path-traversal-open","name":"Path traversal via open() with user-controlled path","category":"code_flaw","severity":"high","matcher":{"type":"regex","pattern":"\\\\bopen\\\\s*\\\\(\\\\s*(request|req|params|argv|input)","flags":"gi"},"requiresNearby":{"labels":["request","param","input","argv","user"],"windowChars":200},"examples":["open(request.args[\'filename\'])","open(params[\'path\'])"],"appliesTo":{"extensions":[".py",".rb"]}}'),aP=JSON.parse('{"specVersion":1,"id":"code-flaws/prototype-pollution-merge","name":"Prototype pollution via merge with user-controlled input","category":"code_flaw","severity":"high","matcher":{"type":"regex","pattern":"(Object\\\\.assign\\\\s*\\\\(\\\\s*\\\\w+\\\\s*,\\\\s*(req|request|body|params|query)|_\\\\.merge\\\\s*\\\\(\\\\s*\\\\w+\\\\s*,\\\\s*(req|request))","flags":"gi"},"examples":["Object.assign(config, req.body)","_.merge(target, request.body)"],"appliesTo":{"extensions":[".js",".jsx",".ts",".tsx",".mjs",".cjs"]}}'),aQ=JSON.parse('{"specVersion":1,"id":"code-flaws/regex-redos-backtrack","name":"ReDoS via catastrophic backtracking pattern","category":"code_flaw","severity":"medium","matcher":{"type":"regex","pattern":"\\\\((?:\\\\?:)?(?:\\\\\\\\.|\\\\[[^\\\\]]*\\\\]|[^\\\\\\\\()\\\\[\\\\]+*?|])[+*](?:(?:\\\\\\\\.|\\\\[[^\\\\]]*\\\\]|[^\\\\\\\\()\\\\[\\\\]+*?|])\\\\*)?\\\\)[+*]|\\\\((?:\\\\?:)?([^()|]+)\\\\|\\\\1\\\\)[+*]","flags":"g"},"examples":["/(a+)+/","/(\\\\w+\\\\s*)+/"]}'),aR=JSON.parse('{"specVersion":1,"id":"code-flaws/sql-inject-concat-dot","name":"SQL injection via string concatenation (PHP dot operator)","category":"code_flaw","severity":"high","matcher":{"type":"regex","pattern":"[\\"\'][^\\\\n]*?(select|insert|update|delete|drop|where)[^\\\\n]*?[\\"\']\\\\s*\\\\.","flags":"gi"},"appliesTo":{"extensions":[".php"]},"examples":["$query = \\"SELECT * FROM orders WHERE user = \\" . $username;"]}'),aS=JSON.parse('{"specVersion":1,"id":"code-flaws/sql-inject-concat","name":"SQL injection via string concatenation","category":"code_flaw","severity":"high","matcher":{"type":"regex","pattern":"[\\"\']\\\\s*(?:select\\\\b[^\\\\n]*?\\\\bfrom\\\\b|insert\\\\s+into\\\\b|update\\\\s+\\\\S+\\\\s+set\\\\b|delete\\\\s+from\\\\b|drop\\\\s+(?:table|database)\\\\b|where\\\\b[^\\\\n]*?=)[^\\\\n]*?[\\"\']\\\\s*\\\\+","flags":"gi"},"examples":["\\"SELECT * FROM users WHERE id = \\" + userId"]}'),aT=JSON.parse('{"specVersion":1,"id":"code-flaws/sql-inject-format","name":"SQL injection via format string or f-string","category":"code_flaw","severity":"high","matcher":{"type":"regex","pattern":"\\\\b(?:select\\\\b[^\\\\n]*?\\\\bfrom\\\\b|insert\\\\s+into\\\\b|update\\\\s+\\\\S+\\\\s+set\\\\b|delete\\\\s+from\\\\b|drop\\\\s+(?:table|database)\\\\b|where\\\\b[^\\\\n]*?=)[^\\\\n]*?(?:[%][sd]|\\\\{[^}]+\\\\})","flags":"gi"},"examples":["f\\"SELECT * FROM users WHERE id = {user_id}\\"","\\"SELECT * FROM users WHERE name = \'%s\'\\" % name"]}'),aU=JSON.parse('{"specVersion":1,"id":"code-flaws/sql-inject-interp","name":"SQL injection via Ruby string interpolation or PHP variable","category":"code_flaw","severity":"high","matcher":{"type":"regex","pattern":"(select|insert|update|delete|where)[^\\\\n]*?(#\\\\{|\\\\$[a-z_])","flags":"gi"},"examples":["\\"SELECT * FROM users WHERE id = #{params[:id]}\\"","\\"SELECT * FROM users WHERE id = $userId\\""],"appliesTo":{"extensions":[".rb",".php"]}}'),aV=JSON.parse('{"specVersion":1,"id":"code-flaws/ssrf-user-url","name":"Server-side request forgery via user-controlled URL","category":"code_flaw","severity":"high","matcher":{"type":"regex","pattern":"(fetch|axios\\\\.\\\\w+|requests\\\\.get|urllib\\\\.request\\\\.urlopen)\\\\s*\\\\(\\\\s*(req|request|params|query|body)","flags":"gi"},"examples":["fetch(req.query.url)","requests.get(request.form[\'url\'])"],"appliesTo":{"extensions":[".js",".jsx",".ts",".tsx",".mjs",".cjs",".py"]}}'),aW=JSON.parse('{"specVersion":1,"id":"code-flaws/xss-dangerously-set","name":"XSS via React dangerouslySetInnerHTML","category":"code_flaw","severity":"high","matcher":{"type":"keyword","keywords":["dangerouslySetInnerHTML"],"caseSensitive":true},"examples":["<div dangerouslySetInnerHTML={{ __html: userContent }} />"],"appliesTo":{"extensions":[".js",".jsx",".ts",".tsx"]}}'),aX=JSON.parse('{"specVersion":1,"id":"code-flaws/xss-inner-html","name":"XSS via innerHTML assignment","category":"code_flaw","severity":"high","matcher":{"type":"keyword","keywords":["innerHTML =","innerHTML="],"caseSensitive":true},"examples":["element.innerHTML = userInput"],"appliesTo":{"extensions":[".js",".jsx",".ts",".tsx",".mjs",".cjs"]}}'),aY=JSON.parse('{"specVersion":1,"id":"code-flaws/xss-unescaped-render","name":"XSS via unescaped template rendering","category":"code_flaw","severity":"high","matcher":{"type":"regex","pattern":"(\\\\braw\\\\s*\\\\(|\\\\bhtml_safe\\\\b|\\\\|\\\\s*safe\\\\b|\\\\bmark_safe\\\\s*\\\\()","flags":"gi"},"examples":["<%= raw(user_comment) %>","{{ user_input | safe }}","mark_safe(user_html)"],"appliesTo":{"extensions":[".rb",".py"]}}'),aZ=JSON.parse('{"specVersion":1,"id":"core-code-context/db-table-name","name":"Internal database table/column name","category":"code_context","severity":"low","matcher":{"type":"keyword","keywords":["SELECT * FROM ","SELECT COUNT(*) FROM ","INSERT INTO ","DELETE FROM ","CREATE TABLE ","ALTER TABLE ","DROP TABLE ","FROM users","FROM orders","FROM employees","FROM customers","FROM accounts","FROM transactions","FROM products","FROM payments"],"caseSensitive":false},"examples":["SELECT * FROM users WHERE id = 1"]}'),a$=JSON.parse('{"specVersion":1,"id":"core-code-context/feature-flag","name":"Feature flag / toggle name","category":"code_context","severity":"low","matcher":{"type":"keyword","keywords":["feature_flag:","feature_toggle:","feature-flag:","feature-toggle:","FF_","FEATURE_FLAG_","FEATURE_TOGGLE_","unleash:","launchdarkly:","split.io:"],"caseSensitive":false},"examples":["feature_flag: new-checkout-flow","FF_ENABLE_DARK_MODE"]}'),a_=JSON.parse('{"specVersion":1,"id":"core-code-context/file-path","name":"User home / identity-bearing file path","category":"code_context","severity":"low","matcher":{"type":"regex","pattern":"(?:/home|/Users)/[A-Za-z0-9_.@-]+(?:/[A-Za-z0-9_.@+-]+)*|/root(?:/[A-Za-z0-9_.@+-]+)+|[A-Za-z]:\\\\\\\\[Uu]sers\\\\\\\\[A-Za-z0-9_.-]+(?:\\\\\\\\[A-Za-z0-9_.-]+)*","flags":"g"},"examples":["/home/user/.ssh/id_rsa","/Users/jane/projects/acme/secrets.env","C:\\\\Users\\\\admin\\\\config.yml"]}'),a0=JSON.parse('{"specVersion":1,"id":"core-code-context/internal-domain","name":"Internal domain / hostname","category":"code_context","severity":"low","matcher":{"type":"regex","pattern":"(?<![A-Za-z0-9.-])[A-Za-z0-9][A-Za-z0-9.-]{0,251}\\\\.(?:internal|corp|local|lan|intranet|private|dev|staging|test|qa)(?:\\\\.(?:com|net|org|io|co|app))?\\\\b","flags":"gi"},"examples":["db.internal.com","app.corp.local","api.staging.example.com"]}'),a1=JSON.parse('{"specVersion":1,"id":"core-code-context/internal-ip","name":"Internal (RFC 1918) IP address","category":"code_context","severity":"low","matcher":{"type":"regex","pattern":"(?<![\\\\d.])(?:10\\\\.(?:25[0-5]|2[0-4]\\\\d|[01]?\\\\d\\\\d?)\\\\.(?:25[0-5]|2[0-4]\\\\d|[01]?\\\\d\\\\d?)\\\\.(?:25[0-5]|2[0-4]\\\\d|[01]?\\\\d\\\\d?)|172\\\\.(?:1[6-9]|2\\\\d|3[01])\\\\.(?:25[0-5]|2[0-4]\\\\d|[01]?\\\\d\\\\d?)\\\\.(?:25[0-5]|2[0-4]\\\\d|[01]?\\\\d\\\\d?)|192\\\\.168\\\\.(?:25[0-5]|2[0-4]\\\\d|[01]?\\\\d\\\\d?)\\\\.(?:25[0-5]|2[0-4]\\\\d|[01]?\\\\d\\\\d?))(?![\\\\d])","flags":"g"},"examples":["10.0.0.1","192.168.1.1","172.16.0.1"]}'),a2=JSON.parse('{"specVersion":1,"id":"core-code-context/internal-url","name":"Internal environment URL","category":"code_context","severity":"low","matcher":{"type":"keyword","keywords":["https://staging.","https://dev.","https://qa.","https://test.","http://staging.","http://dev.","http://qa.","http://test.",".staging.com",".dev.com",".qa.com","staging.internal","dev.internal"],"caseSensitive":false},"examples":["https://staging.example.com"]}'),a3=JSON.parse('{"specVersion":1,"id":"core-code-context/localhost-ref","name":"Localhost reference","category":"code_context","severity":"low","matcher":{"type":"regex","pattern":"(?<![A-Za-z0-9_])(?:localhost|127\\\\.0\\\\.0\\\\.1|0\\\\.0\\\\.0\\\\.0|(?<![A-Za-z0-9_]\\\\[)::1(?!:|\\\\.[0-9]))(?![A-Za-z0-9_])","flags":"g"},"examples":["localhost","127.0.0.1","0.0.0.0","::1"]}'),a4=JSON.parse('{"specVersion":1,"id":"core-code-context/stack-trace","name":"Stack trace (internal code structure)","category":"code_context","severity":"low","matcher":{"type":"regex","pattern":"(?:^|\\\\s+)at\\\\s+[A-Za-z0-9._$<>]+\\\\.[A-Za-z0-9_$]+\\\\s*\\\\([A-Za-z0-9._\\\\-/:]+:\\\\d+:\\\\d+\\\\)","flags":"g"},"examples":["at com.example.service.UserService.findUser(UserService.java:42:13)"]}'),a5=JSON.parse('{"specVersion":1,"id":"core-financial/credit-card","name":"Credit/debit card number","category":"financial","severity":"critical","matcher":{"type":"regex","pattern":"\\\\b(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|3[47][0-9]{13}|6(?:011|5[0-9]{2})[0-9]{12})\\\\b","flags":"g"},"postValidators":["luhn"],"examples":["4111111111111111","5500000000000004"]}'),a6=JSON.parse('{"specVersion":1,"id":"core-financial/cusip","name":"CUSIP security identifier","category":"financial","severity":"medium","matcher":{"type":"regex","pattern":"\\\\bcusip\\\\b[\\\\s#:=-]{0,8}(\\\\d{3}[A-Z0-9]{2}[A-Z0-9*#@]\\\\d{2}[0-9])\\\\b","flags":"gi","captureGroup":1},"examples":["CUSIP: 037833100","CUSIP 931142103"]}'),a7=JSON.parse('{"specVersion":1,"id":"core-financial/cvv","name":"Card security code (CVV/CVC)","category":"financial","severity":"high","matcher":{"type":"regex","pattern":"\\\\b(?:CVV|CVC|CID|security\\\\s+code|card\\\\s+code)[:\\\\s]*\\\\d{3,4}\\\\b","flags":"gi"},"examples":["CVV: 123","CVC: 456"]}'),a8=JSON.parse('{"specVersion":1,"id":"core-financial/iban","name":"International Bank Account Number","category":"financial","severity":"high","matcher":{"type":"regex","pattern":"\\\\b[A-Z]{2}\\\\d{2}[A-Z0-9 ]{10,30}\\\\b","flags":"g"},"requiresNearby":{"labels":["iban","bank","account","bic","swift"],"windowChars":160},"examples":["IBAN: GB82 WEST 1234 5698 7654 32","IBAN: DE89 3704 0044 0532 0130 00"]}'),a9=JSON.parse('{"specVersion":1,"id":"core-financial/paypal","name":"PayPal transaction/merchant ID","category":"financial","severity":"medium","matcher":{"type":"regex","pattern":"paypal.{0,30}?\\\\b([A-Z0-9]{17})\\\\b","flags":"gi","captureGroup":1},"examples":["PayPal transaction ID: 9HW7382910ABCDEF1"]}'),ba=JSON.parse('{"specVersion":1,"id":"core-financial/routing-number","name":"US bank routing number (ABA)","category":"financial","severity":"high","matcher":{"type":"regex","pattern":"\\\\b(?:routing|aba|rtn)\\\\b[\\\\s#:=-]{0,8}(\\\\d{9})\\\\b","flags":"gi","captureGroup":1},"examples":["Routing: 021000021","ABA 111000025"]}'),bb=JSON.parse('{"specVersion":1,"id":"core-financial/salary","name":"Salary/compensation (contextual)","category":"financial","severity":"low","matcher":{"type":"keyword","keywords":["my salary is","my base salary","annual compensation","total comp","my tc is","my package is","i make $","i earn $","offered $"],"caseSensitive":false},"examples":["My salary is $150,000"]}'),bc=JSON.parse('{"specVersion":1,"id":"core-financial/swift","name":"SWIFT/BIC code","category":"financial","severity":"high","matcher":{"type":"regex","pattern":"\\\\b(?:swift|bic)\\\\b[\\\\s#:=-]{0,8}([A-Z]{6}[A-Z0-9]{2}(?:[A-Z0-9]{3})?)\\\\b","flags":"gi","captureGroup":1},"examples":["SWIFT: BOFAUS3N","BIC: CHASGB2LXXX"]}'),bd=JSON.parse('{"specVersion":1,"id":"core-phi/biometric-ref","name":"Biometric data reference","category":"phi","severity":"high","matcher":{"type":"keyword","keywords":["fingerprint data","fingerprint scan","my iris scan","my retina scan","my biometric","my facial recognition","my voiceprint","my palm print","my hand geometry"],"caseSensitive":false},"examples":["My fingerprint data is stored in the biometric database"]}'),be=JSON.parse('{"specVersion":1,"id":"core-phi/genetic-data","name":"Genetic/DNA sequence reference","category":"phi","severity":"high","matcher":{"type":"keyword","keywords":["my dna sequence","my genome","my genetic","dna test results","genetic test results","my 23andme","my ancestrydna","gene variant","my genotype","my haplogroup"],"caseSensitive":false},"examples":["My DNA sequence shows a variant in the BRCA1 gene"]}'),bf=JSON.parse('{"specVersion":1,"id":"core-phi/group-id","name":"Health plan group ID","category":"phi","severity":"high","matcher":{"type":"regex","pattern":"\\\\bgroup\\\\s*(?:id|number|no|#)\\\\s*[:#]?\\\\s*[A-Za-z0-9]{6,20}\\\\b","flags":"gi"},"requiresNearby":{"ruleIds":["core-phi/member-id"],"labels":["member id","subscriber","health plan"],"windowChars":200,"confidenceBoost":0.05},"examples":["Member ID: ABC987654321, Group ID: GRP12345678"]}'),bg=JSON.parse('{"specVersion":1,"id":"core-phi/hipaa-identifier","name":"HIPAA standard identifier (health plan / beneficiary / claim number)","category":"phi","severity":"high","matcher":{"type":"regex","pattern":"\\\\b(?:health\\\\s+plan|beneficiary|claim\\\\s+number|subscriber)[:\\\\s]*[A-Za-z0-9]{8,20}\\\\b","flags":"gi"},"examples":["Health Plan: XYZ123456789","Beneficiary: ABC987654321"]}'),bh=JSON.parse('{"specVersion":1,"id":"core-phi/icd10-code","name":"ICD-10 diagnosis code","category":"phi","severity":"medium","matcher":{"type":"regex","pattern":"(?:icd[- ]?10|diagnosis|\\\\bdx\\\\b).{0,12}?([A-Z][0-9]{2}(?:\\\\.[0-9]{1,4})?)\\\\b","flags":"gi","captureGroup":1},"examples":["ICD-10: I10","Diagnosis code E11.9","dx: J45.909"]}'),bi=JSON.parse('{"specVersion":1,"id":"core-phi/member-id","name":"Health plan member ID","category":"phi","severity":"high","matcher":{"type":"regex","pattern":"\\\\bmember\\\\s*(?:id|number|no|#)\\\\s*[:#]?\\\\s*[A-Za-z0-9]{6,20}\\\\b","flags":"gi"},"examples":["Member ID: ABC987654321"]}'),bj=JSON.parse('{"specVersion":1,"id":"core-phi/mrn","name":"Medical Record Number","category":"phi","severity":"high","matcher":{"type":"regex","pattern":"\\\\b(?:MRN|MR#|medical\\\\s+record)[:\\\\s]*[A-Za-z0-9]{6,16}\\\\b","flags":"gi"},"examples":["MRN: 1234567890","Medical Record: ABCD1234"]}'),bk=JSON.parse('{"specVersion":1,"id":"core-phi/ndc-code","name":"National Drug Code (NDC)","category":"phi","severity":"medium","matcher":{"type":"regex","pattern":"\\\\b\\\\d{4,5}-\\\\d{3,4}-\\\\d{1,2}\\\\b","flags":"g"},"examples":["0002-1427-01","68788-6965-1"]}'),bl=JSON.parse('{"specVersion":1,"id":"core-pii/dob","name":"Date of birth","category":"pii","severity":"high","matcher":{"type":"regex","pattern":"\\\\b(?:(?:19[4-9]\\\\d|20[0-1]\\\\d)[/-]\\\\d{1,2}[/-]\\\\d{1,2}|\\\\d{1,2}[/-]\\\\d{1,2}[/-](?:19[4-9]\\\\d|20[0-1]\\\\d))\\\\b","flags":"g"},"requiresNearby":{"categories":["pii"],"labels":["dob","date of birth","birth","d.o.b"],"windowChars":160},"examples":["DOB: 1985-03-22","Date of birth: 03/22/1985"]}'),bm=JSON.parse('{"specVersion":1,"id":"core-pii/drivers-license-us","name":"US driver\'s license number","category":"pii","severity":"high","matcher":{"type":"regex","pattern":"(?:driver\'?s?\\\\s*licen[sc]e|licen[sc]e|\\\\bDL\\\\b).{0,10}?([A-Z]\\\\d{6,8}|\\\\d{8,9})\\\\b","flags":"gi","captureGroup":1},"examples":["Driver\'s License: D1234567","DL: 123456789"]}'),bn=JSON.parse('{"specVersion":1,"id":"core-pii/email","name":"Email address","category":"pii","severity":"medium","matcher":{"type":"regex","pattern":"(?<![A-Za-z0-9._%+-])[A-Za-z0-9._%+-]{1,64}@[A-Za-z0-9.-]{1,255}\\\\.[A-Za-z]{2,24}\\\\b","flags":"g"},"examples":["user@example.com"]}'),bo=JSON.parse('{"specVersion":1,"id":"core-pii/home-address","name":"Home address (contextual)","category":"pii","severity":"medium","matcher":{"type":"keyword","keywords":["my address is","home address","shipping address","billing address","mailing address","my home is at","i reside at"],"caseSensitive":false},"examples":["My address is 123 Main St, Springfield, IL 62701"]}'),bp=JSON.parse('{"specVersion":1,"id":"core-pii/ip-address","name":"IP address","category":"pii","severity":"low","matcher":{"type":"regex","pattern":"\\\\b(?:(?:25[0-5]|2[0-4]\\\\d|[01]?\\\\d\\\\d?)\\\\.){3}(?:25[0-5]|2[0-4]\\\\d|[01]?\\\\d\\\\d?)\\\\b","flags":"g"},"examples":["192.168.1.1","10.0.0.1"]}'),bq=JSON.parse('{"specVersion":1,"id":"core-pii/mac-address","name":"MAC address","category":"pii","severity":"low","matcher":{"type":"regex","pattern":"\\\\b(?:[0-9A-Fa-f]{2}[:-]){5}[0-9A-Fa-f]{2}\\\\b","flags":"g"},"examples":["AA:BB:CC:DD:EE:FF"]}'),br=JSON.parse('{"specVersion":1,"id":"core-pii/name","name":"Personal name (contextual)","category":"pii","severity":"medium","matcher":{"type":"keyword","keywords":["my name is","my full name","i am called","please call me","name:\\n","\\"full_name\\": \\"","\\"fullName\\": \\""],"caseSensitive":false},"examples":["My name is John Doe"]}'),bs=JSON.parse('{"specVersion":1,"id":"core-pii/national-id","name":"National ID number (multi-country)","category":"pii","severity":"high","matcher":{"type":"regex","pattern":"\\\\b[A-Z]{2}\\\\d{6}[A-D]\\\\b|\\\\b[2-9]\\\\d{11}\\\\b|(?:national\\\\s*id|aadhaar|\\\\bSIN\\\\b).{0,10}?\\\\d{3}[\\\\s-]?\\\\d{3}[\\\\s-]?\\\\d{3}\\\\b","flags":"gi"},"requiresNearby":{"labels":["national id","national identity","national insurance","nino","ni","aadhaar","sin","identity number","id number"],"windowChars":160},"examples":["Aadhaar: 234567890123","NI: AB123456C","SIN: 123-456-789"]}'),bt=JSON.parse('{"specVersion":1,"id":"core-pii/passport-us","name":"US passport number","category":"pii","severity":"high","matcher":{"type":"regex","pattern":"\\\\b[A-Z]\\\\d{8}\\\\b","flags":"g"},"requiresNearby":{"labels":["passport"],"windowChars":160},"examples":["Passport: A12345678"]}'),bu=JSON.parse('{"specVersion":1,"id":"core-pii/phone-intl","name":"International phone number","category":"pii","severity":"high","matcher":{"type":"regex","pattern":"\\\\+\\\\d{1,3}(?:[-.\\\\s]\\\\d{1,14}){1,5}\\\\b","flags":"g"},"examples":["+44 20 7946 0958","+86 138 0013 8000"]}'),bv=JSON.parse('{"specVersion":1,"id":"core-pii/phone-us","name":"US phone number","category":"pii","severity":"high","matcher":{"type":"regex","pattern":"(?<!\\\\d)(?:\\\\+?1[-.\\\\s]?)?(?:\\\\([2-9]\\\\d{2}\\\\)[-.\\\\s]?|[2-9]\\\\d{2}[-.\\\\s])\\\\d{3}[-.\\\\s]\\\\d{4}(?!\\\\d)","flags":"g"},"requiresNearby":{"labels":["phone","call","mobile","cell","tel","telephone","contact","fax","dial"],"windowChars":160},"examples":["(555) 123-4567","+1-555-123-4567"]}'),bw=JSON.parse('{"specVersion":1,"id":"core-pii/ssn","name":"US Social Security Number","category":"pii","severity":"high","matcher":{"type":"regex","pattern":"\\\\b(?!000|666|9\\\\d{2})\\\\d{3}[\\\\s\\\\-](?!00)\\\\d{2}[\\\\s\\\\-](?!0000)\\\\d{4}\\\\b","flags":"g"},"examples":["123-45-6789"]}'),bx=JSON.parse('{"specVersion":1,"id":"core-pii/vin","name":"Vehicle Identification Number","category":"pii","severity":"medium","matcher":{"type":"regex","pattern":"\\\\b[A-HJ-NPR-Z0-9]{17}\\\\b","flags":"g"},"examples":["1HGCM82633A004352"]}'),by=JSON.parse('{"specVersion":1,"id":"core-pii/zip","name":"US ZIP / ZIP+4 postal code","category":"pii","severity":"low","matcher":{"type":"regex","pattern":"\\\\b\\\\d{5}(?:-\\\\d{4})?\\\\b","flags":"g"},"requiresNearby":{"ruleIds":["core-pii/home-address"],"labels":["address","street","avenue","boulevard","mailing","shipping","billing","suite","p.o. box","po box","postal"],"windowChars":120},"examples":["Shipping address: 123 Main Street, Springfield, IL 94107-1234"]}'),bz=JSON.parse('{"specVersion":1,"id":"secrets-infra/api-key-header","name":"API key in a custom HTTP header","category":"secret","severity":"high","matcher":{"type":"regex","pattern":"[\\"\']?\\\\bapi-?key\\\\b[\\"\']?\\\\s*:\\\\s*[\\"\']?([A-Za-z0-9+/_\\\\-.]{16,500})[\\"\']?","flags":"gi","captureGroup":1},"postValidators":["entropy"],"examples":["X-Api-Key: aBc123XyZ789kLmNoPqRsTuVwXyZ1234567890"]}'),bA=JSON.parse('{"specVersion":1,"id":"secrets-infra/basic-auth-header","name":"HTTP Basic auth Authorization header","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"authorization\\\\s*:\\\\s*basic\\\\s+[A-Za-z0-9+/=]{16,}","flags":"gi"},"examples":["Authorization: Basic dXNlcjpwYXNzd29yZDEyMzQ="]}'),bB=JSON.parse('{"specVersion":1,"id":"secrets-infra/basic-auth-url","name":"URL with embedded basic auth credentials","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"https?://[A-Za-z0-9_%\\\\-]+:[A-Za-z0-9_%\\\\-]+@[A-Za-z0-9.\\\\-]+","flags":"g"},"examples":["https://user:password@example.com/path"]}'),bC=JSON.parse('{"specVersion":1,"id":"secrets-infra/bearer-token","name":"Generic Authorization Bearer token","category":"secret","severity":"high","matcher":{"type":"regex","pattern":"\\\\b(?:Bearer|bearer)\\\\s+([A-Za-z0-9_\\\\-.]{20,500})","flags":"g","captureGroup":1},"postValidators":["entropy"],"examples":["Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8U"]}'),bD=JSON.parse('{"specVersion":1,"id":"secrets-infra/db-connection-string","name":"Database connection string with credentials","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\b(?:postgres(?:ql)?|mysql|mongodb(?:\\\\+srv)?|redis|rediss)://[A-Za-z0-9_%\\\\-]+:[A-Za-z0-9_%\\\\-]+@[A-Za-z0-9.\\\\-]+(?:\\\\:\\\\d+)?","flags":"g"},"examples":["postgresql://user:password@localhost:5432/mydb"]}'),bE=JSON.parse('{"specVersion":1,"id":"secrets-infra/docker-config-auth","name":"Docker config.json auth (base64-encoded)","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\"auth\\"\\\\s*:\\\\s*\\"[A-Za-z0-9+/]{12,}={0,2}\\"","flags":"g"},"examples":["\\"auths\\": {\\"https://index.docker.io/v1/\\": {\\"auth\\": \\"dXNlcjpwYXNzd29yZA==\\"}}"]}'),bF=JSON.parse('{"specVersion":1,"id":"secrets-infra/env-key-value","name":"Environment variable assignment with sensitive key","category":"secret","severity":"high","matcher":{"type":"regex","pattern":"\\\\b[A-Za-z0-9_]*(?:API_KEY|API_SECRET|SECRET_KEY|SECRET|TOKEN|PASSWORD|PASS|CREDENTIALS|PRIVATE_KEY|ENCRYPTION_KEY|SIGNING_KEY)\\\\s*=\\\\s*[\\"\']?([^\\\\s\\"\']{4,})","flags":"gi","captureGroup":1},"examples":["API_KEY=aBcDeFgHiJkLmNoPqRsTuVwXyZ1234567890"]}'),bG=JSON.parse('{"specVersion":1,"id":"secrets-infra/generic-high-entropy-secret","name":"Generic high-entropy secret assigned to a credential-shaped field","category":"secret","severity":"high","matcher":{"type":"regex","pattern":"(?<![A-Za-z0-9_-])[A-Za-z0-9_]{0,34}(?:(?:secret|token|passw(?:or)?d|credentials?|(?<!api[_-]?)key)(?:[\\"\']?\\\\s*:|\\\\s+=)|(?:passwd|credential|(?<!api[_-]?)(?<!secret_)(?<!private_)(?<!encryption_)(?<!signing_)key)=)\\\\s*[\\"\']?((?!eyJ)[A-Za-z0-9+/_\\\\-]{20,200})","flags":"gi","captureGroup":1},"postValidators":["entropy"],"examples":["authToken: \\"aBc123XyZ789kLmNoPqRsTuVwXyZ1234567890\\"","MASTER_KEY=aBc123XyZ789kLmNoPqRsTuVwXyZ1234567890"]}'),bH=JSON.parse('{"specVersion":1,"id":"secrets-infra/jwt-token","name":"JSON Web Token (JWT)","category":"secret","severity":"high","matcher":{"type":"regex","pattern":"\\\\beyJ[A-Za-z0-9_\\\\-+/]+\\\\.[A-Za-z0-9_\\\\-+/]+\\\\.[A-Za-z0-9_\\\\-+/]+\\\\b","flags":"g"},"postValidators":["entropy"],"examples":["eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8U"]}'),bI=JSON.parse('{"specVersion":1,"id":"secrets-infra/kubeconfig-token","name":"Kubernetes kubeconfig embedded token","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\b(?:client-(?:certificate|key)-data|token):\\\\s+([A-Za-z0-9+/=_.-]{20,})","flags":"g","captureGroup":1},"examples":["token: eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9..."]}'),bJ=JSON.parse('{"specVersion":1,"id":"secrets-infra/password-field","name":"JSON/YAML field with password value","category":"secret","severity":"high","matcher":{"type":"regex","pattern":"[\\"\']?\\\\b(?:password|passwd|pwd|pass|secret|token|api[_-]?key|apikey)\\\\b[\\"\']?\\\\s*:\\\\s*[\\"\']([^\\"\'\\\\n]{4,})[\\"\']","flags":"gi","captureGroup":1},"examples":["\\"password\\": \\"supersecret123\\""]}'),bK=JSON.parse('{"specVersion":1,"id":"secrets-infra/pgp-private-key","name":"PGP private key block","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"-----BEGIN PGP PRIVATE KEY BLOCK-----","flags":"g"},"examples":["-----BEGIN PGP PRIVATE KEY BLOCK-----\\nVersion: Keybase Go 1.0.0\\n...\\n-----END PGP PRIVATE KEY BLOCK-----"]}'),bL=JSON.parse('{"specVersion":1,"id":"secrets-infra/ssh-private-key","name":"SSH private key","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"-----BEGIN (?:RSA |DSA |EC |OPENSSH |SSH2 )?PRIVATE KEY-----","flags":"g"},"examples":["-----BEGIN RSA PRIVATE KEY-----\\nMIIEpAIBAAKCAQEA...\\n-----END RSA PRIVATE KEY-----"]}'),bM=JSON.parse('{"specVersion":1,"id":"secrets/anthropic-api-key","name":"Anthropic API key","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\bsk-ant-[A-Za-z0-9_-]{40,}","flags":"g"},"postValidators":["entropy"],"examples":["sk-ant-AbCdEfGhIjKlMnOpQrStUvWxYzAbCdEfGhIjKlMnOpQrStUvWxYz"]}'),bN=JSON.parse('{"specVersion":1,"id":"secrets/aws-access-key","name":"AWS Access Key ID","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\b(AKIA|ASIA|AROA|AIDA|ANPA|ANVA|APKA)[A-Z0-9]{16}\\\\b","flags":"g"},"postValidators":["entropy"],"examples":["AKIAIOSFODNN7EXAMPLE"]}'),bO=JSON.parse('{"specVersion":1,"id":"secrets/aws-secret-key","name":"AWS Secret Access Key","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"aws[_.-]?secret[_.-]?(?:access[_.-]?)?key[\\"\'\\\\s:=]{1,5}([A-Za-z0-9/+]{40})","flags":"gi","captureGroup":1},"postValidators":["entropy"],"examples":["AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"]}'),bP=JSON.parse('{"specVersion":1,"id":"secrets/azure-connection-string","name":"Azure connection string","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"(?<![A-Za-z0-9])(?:DefaultEndpointsProtocol|AccountEndpoint|AccountName|AccountKey|SharedAccessSignature|SharedAccessKeyName|SharedAccessKey|EndpointSuffix|BlobEndpoint|QueueEndpoint|TableEndpoint|FileEndpoint|HostName|Endpoint)=(?![{<($])[^\\\\x3B\\\\r\\\\n]{1,400}\\\\x3B(?:[A-Za-z][A-Za-z0-9_]{0,39}=[^\\\\x3B\\\\r\\\\n]{1,400}\\\\x3B){0,10}(?:DefaultEndpointsProtocol|AccountEndpoint|AccountName|AccountKey|SharedAccessSignature|SharedAccessKeyName|SharedAccessKey|EndpointSuffix|BlobEndpoint|QueueEndpoint|TableEndpoint|FileEndpoint|HostName|Endpoint)=(?![{<($])[^\\\\x3B\\\\r\\\\n]{1,400}(?:\\\\x3B[A-Za-z][A-Za-z0-9_]{0,39}=[^\\\\x3B\\\\r\\\\n]{1,400}){0,10}","flags":"g"},"examples":["AccountName=mystorage;AccountKey=abc123=="]}'),bQ=JSON.parse('{"specVersion":1,"id":"secrets/cloudflare-api-key","name":"Cloudflare API token","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"cloudflare.{0,40}?[\\"\'\\\\s:=]([A-Za-z0-9_-]{40})","flags":"gi","captureGroup":1},"postValidators":["entropy"],"examples":["CLOUDFLARE_API_TOKEN=kQ9fL2mP7xR4tY6wB1nC8vD3jH5sZ0aG2eU4iO7p"]}'),bR=JSON.parse('{"specVersion":1,"id":"secrets/datadog-key","name":"Datadog API/Application key","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\b(?:DD_API_KEY|DD_APP_KEY|DATADOG_API_KEY|DATADOG_APP_KEY)[\\\\s:=]+([A-Za-z0-9]{32,40})\\\\b","flags":"gi","captureGroup":1},"postValidators":["entropy"],"examples":["DD_API_KEY=a3F5g8H1j4K7m2N0p9Q6r1S4t7U0v3W8"]}'),bS=JSON.parse('{"specVersion":1,"id":"secrets/digitalocean-token","name":"DigitalOcean Personal Access Token","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\bdop_v1_[A-Za-z0-9]{64}\\\\b","flags":"g"},"examples":["dop_v1_1234567890123456789012345678901234567890123456789012345678901234"]}'),bT=JSON.parse('{"specVersion":1,"id":"secrets/discord-token","name":"Discord bot token","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\b[A-Za-z0-9]{24}\\\\.[A-Za-z0-9]{6}\\\\.[A-Za-z0-9_\\\\-]{27}\\\\b","flags":"g"},"postValidators":["entropy"],"examples":["AbCdEfGhIjKlMnOpQrStUvWx.YzAbCd.ABCdEfGhIjKlMnOpQrStUvWxYzAbCdEf"]}'),bU=JSON.parse('{"specVersion":1,"id":"secrets/gcp-service-account","name":"GCP service account key","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"(?<![a-z0-9-])[a-z0-9-]{3,}@[a-z0-9][a-z0-9-]{2,60}\\\\.iam\\\\.gserviceaccount\\\\.com\\\\b","flags":"g"},"examples":["deploy-bot@sample-project.iam.gserviceaccount.com","12345678-1234-1234-1234-123456789012@my-project.iam.gserviceaccount.com"]}'),bV=JSON.parse('{"specVersion":1,"id":"secrets/github-pat","name":"GitHub Personal Access Token (classic and fine-grained)","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\b(?:gh[psou]_[A-Za-z0-9]{36}|github_pat_[0-9A-Za-z_]{82})\\\\b","flags":"g"},"examples":["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","ghp_aBcDeFgHiJkLmNoPqRsTuVwXyZ1234567890"]}'),bW=JSON.parse('{"specVersion":1,"id":"secrets/gitlab-token","name":"GitLab Personal/Project Access Token","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\bglpat-[A-Za-z0-9\\\\-_]{20,40}\\\\b","flags":"g"},"postValidators":["entropy"],"examples":["glpat-ABCdEfGhIjKlMnOpQrStUvWxYz1234567890"]}'),bX=JSON.parse('{"specVersion":1,"id":"secrets/heroku-api-key","name":"Heroku API key","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"heroku.{0,40}?([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})","flags":"gi","captureGroup":1},"examples":["HEROKU_API_KEY=3f8a1c2e-9b4d-4e6f-a1b2-c3d4e5f6a7b8"]}'),bY=JSON.parse('{"specVersion":1,"id":"secrets/npm-token","name":"npm access token","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\bnpm_[A-Za-z0-9]{36,60}\\\\b","flags":"g"},"postValidators":["entropy"],"examples":["npm_AbCdEfGhIjKlMnOpQrStUvWxYz1234567890AbCdEfGhIjKlMnO"]}'),bZ=JSON.parse('{"specVersion":1,"id":"secrets/openai-api-key","name":"OpenAI API key","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\bsk-proj-[A-Za-z0-9]{20,60}\\\\b|\\\\bsk-[A-Za-z0-9]{40,55}\\\\b","flags":"g"},"postValidators":["entropy"],"examples":["sk-proj-AbCdEfGhIjKlMnOpQrStUvWxYz1234567890AbCdEfGhIjK"]}'),b$=JSON.parse('{"specVersion":1,"id":"secrets/pulumi-access-token","name":"Pulumi access token","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\bpul-[A-Za-z0-9]{20,60}\\\\b","flags":"g"},"postValidators":["entropy"],"examples":["pul-ABCdEfGhIjKlMnOpQrStUvWxYz1234567890"]}'),b_=JSON.parse('{"specVersion":1,"id":"secrets/sendgrid-key","name":"SendGrid API key","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\bSG\\\\.[A-Za-z0-9_\\\\-]{20,60}\\\\b","flags":"g"},"postValidators":["entropy"],"examples":["SG.AbCdEfGhIjKlMnOpQrStUvWxYzAbCdEfGhIjKlMnOpQrStUvWxYz"]}'),b0=JSON.parse('{"specVersion":1,"id":"secrets/slack-token","name":"Slack API token","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\b(?:xox[baprs]-[A-Za-z0-9]{10,60}|xapp-[A-Za-z0-9-]{10,60})\\\\b","flags":"g"},"examples":["xoxb-123456789012-123456789012-ABCdEfGhIjKlMnOpQrStUvWx"]}'),b1=JSON.parse('{"specVersion":1,"id":"secrets/stripe-live-key","name":"Stripe live API key","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\b(?:sk|pk|rk)_live_[A-Za-z0-9]{24,40}\\\\b","flags":"g"},"postValidators":["entropy"],"examples":["sk_live_aBcDeFgHiJkLmNoPqRsTuVwXyZ"]}'),b2=JSON.parse('{"specVersion":1,"id":"secrets/terraform-cloud-token","name":"Terraform Cloud / TFE user token","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\b[A-Za-z0-9]{14}\\\\.atlasv1\\\\.[A-Za-z0-9_\\\\-]{60,80}\\\\b","flags":"g"},"postValidators":["entropy"],"examples":["AbCdEfGhIjKlMnOp.atlasv1.XyZ1234567890123456789012345678901234567890123456789012345678901234567890"]}'),b3=[{packId:"code-flaws",name:"Code Security Flaws",version:"0.1.0",rawRules:[aS,aR,aT,aU,aA,ay,az,aX,aW,aY,aF,aG,aE,aL,aM,aH,aI,aJ,ax,aw,aO,aN,aC,aD,aB,aP,aK,aV,aQ]},{packId:"core-code-context",name:"Code Context",version:"0.1.0",rawRules:[a1,a3,a0,a_,a4,a2,a$,aZ]},{packId:"core-financial",name:"Financial Information",version:"0.1.0",rawRules:[a5,a8,ba,bc,a7,a6,a9,bb]},{packId:"core-phi",name:"Protected Health Information",version:"0.1.0",rawRules:[bj,bg,bi,bf,bh,bk,be,bd]},{packId:"core-pii",name:"Core PII",version:"0.2.0",rawRules:[bn,bw,bv,bu,bp,bl,bm,bt,bo,br,bx,bq,bs,by]},{packId:"secrets",name:"Secrets & Credentials",version:"0.1.0",rawRules:[bN,bO,bU,bP,bZ,bM,b1,b0,bT,b_,JSON.parse('{"specVersion":1,"id":"secrets/twilio-key","name":"Twilio Account SID","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\bAC[A-Za-z0-9]{32}\\\\b","flags":"g"},"examples":["AC12345678901234567890123456789012"]}'),bW,bS,bR,bY,bX,bQ,b$,b2,JSON.parse('{"specVersion":1,"id":"secrets/vault-token","name":"HashiCorp Vault token","category":"secret","severity":"critical","matcher":{"type":"regex","pattern":"\\\\b(?:hvs\\\\.[A-Za-z0-9\\\\-_]{20,50}|s\\\\.[A-Za-z0-9\\\\-_]{20,50})\\\\b","flags":"g"},"postValidators":["entropy"],"examples":["hvs.AbCdEfGhIjKlMnOpQrStUvWxYz1234567890"]}'),bV]},{packId:"secrets-infra",name:"Infrastructure Secrets",version:"0.1.0",rawRules:[bL,bD,bH,bB,bA,bK,bC,bF,bJ,bE,bI,bz,bG]}];function b4(a){try{let b=b7(a);if(!b)return;let c=b8(b),d=c?.headRoot??b,e=c?function(a){let b=b9(a.configPath);if(void 0===b)return;let c=function(a){let b,c={};for(let d of a.split("\n")){let a=d.trim(),e=/^\[remote "([^"]+)"\]$/.exec(a);if(e){b=e[1];continue}if(a.startsWith("[")){b=void 0;continue}if(b&&!(b in c)){let d=/^url\s*=\s*(.+)$/.exec(a)?.[1];d&&(c[b]=d.trim())}}return c}(b);return c.origin??Object.values(c)[0]}(c):void 0;return{url:e??d.split(v.sep).join("/"),name:(e?function(a){let b=a.replace(/\.git$/,"").split(/[/:]/).filter(Boolean).pop();return b&&b.length>0?b:void 0}(e):void 0)??(0,v.basename)(d)}}catch{return}}function b5(a){try{return b7(a)}catch{return}}function b6(a){try{let b=b7(a);if(!b)return;return b8(b)?.headRoot??b}catch{return}}function b7(a){let b=a;for(;;){if((0,u.existsSync)((0,v.join)(b,".git")))return b;let a=(0,v.dirname)(b);if(a===b)return;b=a}}function b8(a){let b=(0,v.join)(a,".git");try{if((0,u.statSync)(b).isDirectory())return{configPath:(0,v.join)(b,"config"),headRoot:a}}catch{return}let c=/^gitdir:\s*(.+?)\s*$/m.exec(b9(b)??"")?.[1];if(!c)return;let d=(0,v.isAbsolute)(c)?c:(0,v.join)(a,c);if((0,u.existsSync)((0,v.join)(d,"config")))return{configPath:(0,v.join)(d,"config"),headRoot:a};let e=b9((0,v.join)(d,"commondir"))?.trim();if(!e)return;let f=(0,v.isAbsolute)(e)?e:(0,v.join)(d,e),g=".git"===(0,v.basename)(f)?(0,v.dirname)(f):a;return{configPath:(0,v.join)(f,"config"),headRoot:g}}function b9(a){try{return(0,u.readFileSync)(a,"utf8")}catch{return}}var ca=c(75919);function cb(a){return a instanceof Error?a.message:String(a)}function cc(a,b={}){let c,d,f,g,h=b.budgetMs??2e3,i=b.probeBudgetMs??1e3,j=b.startBudgetMs??5e3,k=b.minAttributionMs??500,l=!1,m=1,n=new Set,o=Promise.resolve();function p(){let a=g;if(a)return g=void 0,void 0!==a.startupTimer&&clearTimeout(a.startupTimer),void 0!==a.timer&&clearTimeout(a.timer),c?.unref(),a}function q(a){p()?.fail(a)}function r(a){c===a&&(c=void 0),d===a&&(d=void 0);let b=a.terminate().catch(()=>void 0);n.add(b),b.finally(()=>n.delete(b))}function s(a){void 0!==a.startupTimer&&(clearTimeout(a.startupTimer),a.startupTimer=void 0),void 0===a.timer&&(a.startedAt=performance.now(),a.progressAt=a.startedAt,a.timer=setTimeout(()=>{!function(a){if(g!==a)return;let b=performance.now(),c=b-a.progressAt,d=b-a.startedAt,e=a.progressIndex>=0&&c>=k&&c>=.5*d?a.progressIndex:void 0;r(a.worker),q({status:"timeout",culpritIndex:e,elapsedMs:d})}(a)},a.budgetMs))}function t(h,i){if(l)return void i({status:"unavailable",reason:"the scan worker is closed"});if(void 0!==f)return void i({status:"unavailable",reason:`the scan worker crashed: ${f}`});let k=function(){let h;if(c)return c;let i=b.workerUrl??function(){if(void 0!==e)return e??void 0;for(let a of["scan-worker.js","scan-worker.ts"]){let b=new URL(a,"file:///home/runner/work/ai-tc/ai-tc/packages/plugin-sdk/src/isolated-scan.ts");try{if((0,u.existsSync)((0,A.fileURLToPath)(b)))return e=b,b}catch{}}e=null}();if(!i)return{error:"the scan worker script was not found next to this bundle"};try{h=new ca.Worker(i,{workerData:a})}catch(a){return{error:`could not start the scan worker: ${cb(a)}`}}return b.onWorkerStart?.(h.threadId),h.on("message",a=>{if(c!==h)return;if("ready"===a.kind){d=h,g?.worker===h&&s(g);return}if("progress"===a.kind){g?.worker===h&&(g.progressIndex=a.index,g.progressAt=performance.now());return}if(g?.id!==a.id)return;if("failed"===a.kind)return void q({status:"unavailable",reason:`the scan worker failed: ${a.message}`});let b=p();b&&!b.reply(a)&&b.fail({status:"unavailable",reason:"the scan worker answered the wrong job"})}),h.on("error",a=>{c===h&&(f=cb(a),c=void 0,d===h&&(d=void 0),q({status:"unavailable",reason:`the scan worker crashed: ${f}`}))}),h.on("exit",()=>{c===h&&(f??="the scan worker exited before answering",c=void 0,d===h&&(d=void 0),q({status:"unavailable",reason:"the scan worker exited before answering"}))}),h.unref(),c=h,h}();if(!(k instanceof ca.Worker)){f=k.error,i({status:"unavailable",reason:k.error});return}let n=m++,o=performance.now(),t={id:n,worker:k,budgetMs:h.budgetMs,startedAt:o,progressIndex:-1,progressAt:o,startupTimer:void 0,timer:void 0,reply:h.reply,fail:i};g=t,k.ref(),d===k?s(t):t.startupTimer=setTimeout(()=>{g===t&&(r(t.worker),q({status:"unavailable",reason:`the scan worker did not start within ${String(j)}ms`}))},j);try{k.postMessage(h.build(n))}catch(a){q({status:"unavailable",reason:`could not reach the scan worker: ${cb(a)}`})}}function v(a){let b=o.then(()=>new Promise(b=>{a(b)}));return o=b.then(()=>void 0,()=>void 0),b}return{scan:(a,b,c)=>v(d=>{t({budgetMs:h,build:d=>({kind:"scan",id:d,text:a,filePath:b?.filePath,attribute:c?.attribute===!0}),reply:a=>"result"===a.kind&&(d({status:"ok",findings:a.findings}),!0)},d)}),probe:a=>v(b=>{t({budgetMs:i,build:b=>({kind:"probe",id:b,rule:a}),reply:a=>"probed"===a.kind&&(b({status:"ok",verdict:a.verdict,worstMs:a.worstMs,corroboratedMs:a.corroboratedMs}),!0)},b)}),async close(){l=!0;let a=c;c=void 0,d=void 0,q({status:"unavailable",reason:"the scan worker is closed"}),a&&r(a),await Promise.all([...n])}}}function cd(){let a="function"==typeof process.threadCpuUsage?process.threadCpuUsage():process.cpuUsage();return(a.user+a.system)/1e3}function ce(a){if("regex"===a.matcher.type){var b;return b=`${a.matcher.pattern} ${a.matcher.flags}`,(0,al.createHash)("sha256").update(b).digest("hex")}}function cf(a,b,c,d){process.stderr.write(`[aka] ${b} rule "${a.id}": ${c}${d?" (clear it with `aka detections unquarantine`)":""}
3
+ `)}function cg(a,b,c){cf(a,"quarantined",Number.isFinite(b)?`regex matcher exceeded the ReDoS timing budget (${b.toFixed(1)}ms); excluded from this scan.`:"the timing battery failed while measuring its regex matcher; excluded from this scan.",c)}async function ch(a,b,c,d){let e=ce(b),f=!1;if(void 0!==e)try{await a.setRuleProbeVerdict(e,"quarantined",c),f=!0}catch{}cf(b,"quarantined",d,f)}async function ci(a,b,c){var d,e;let f=c?.passBudgetMs??2e3,g=c?.prober,h=performance.now(),i=[],j=new Map;try{for(let c of a){let a,k,l,m=ce(c);if(void 0===m){i.push(c);continue}try{a=await b.getRuleProbeVerdict(m)}catch{a=void 0}if(a){"safe"===a.verdict?i.push(c):cg(c,a.worstProbeMs,!0);continue}if(performance.now()-h>=f){cf(c,"skipped","the timing pre-flight ran out of time before this rule could be measured; excluded for the rest of this run, and measured again next time.",!1);continue}let n=0;if(g){let a=await g.probe(c);if("unavailable"===a.status){j.set(a.reason,(j.get(a.reason)??0)+1);continue}k="ok"===a.status?a.verdict:"over-budget",l="ok"===a.status?a.worstMs:a.elapsedMs,"ok"===a.status&&(n=a.corroboratedMs)}else try{({verdict:k,worstMs:l,corroboratedMs:n}=(0,ar.r4)(c,cd))}catch{k="over-budget",l=1/0}if("uncorroborated"===k){d=l,e=n,cf(c,"deferred",`its regex matcher ran past the ReDoS timing budget (${d.toFixed(1)}ms) but spent only ${e.toFixed(1)}ms of CPU doing it, which is a busy machine rather than a slow pattern; excluded from this run and measured again next time, with nothing recorded against it.`,!1);continue}let o="safe"===k,p=!1;try{await b.setRuleProbeVerdict(m,o?"safe":"quarantined",l),p=!0}catch{}o?i.push(c):cg(c,l,p)}}finally{for(let[a,b]of j)process.stderr.write(`[aka] ${String(b)} pulled/custom-pack rule(s) could not be time-checked: ${a}. That is a problem with this install, not with the rules — until it is fixed they are excluded from every scan on this machine. Nothing was quarantined, so reinstalling AKA brings them straight back.
4
+ `)}return i}function cj(a,b,c){process.stderr.write(`[aka] isolated scanning is off for ${a}: ${c}. ${String(b)} pulled/custom-pack rule(s) are excluded; the built-in packs still run.
5
+ `)}let ck={ModelSwitch:"model-switch",VaultPointerDisplay:"vault-pointer-display"};ck.ModelSwitch,ck.VaultPointerDisplay;var cl=c(17498),cm=c.n(cl);function cn(a,b,c){try{return{matcher:cm()().add((0,u.readFileSync)((0,v.join)(a,b),"utf8")),anchorLen:c}}catch{return}}function co(a,b,c,d){let e=d?"/":"";for(let d=a.length-1;d>=0;d--){var f;let g=a[d];if(void 0===g)continue;let h=g.matcher.test((f=g.anchorLen,(f===b.length?c:`${b.slice(0===f?0:f+1)}/${c}`)+e));if(h.ignored)return"ignored";if(h.unignored)return"unignored"}return"unmatched"}function cp(a,b){return""===a?b:`${a}/${b}`}function cq(a,b){return b?[...a,b]:a}function cr(a){return a.split(v.sep).join("/")}let cs=new Set([".git","node_modules",".pnpm-store",".venv","venv","__pycache__",".next",".turbo","dist","build","out","coverage","target",".cache"]),ct={maxDepth:64,budgetMs:4e3};function cu(a,b,c,d){return"ignored"===co(a,b,c,d)}let cv=new Set(["pnpm-lock.yaml","package-lock.json","yarn.lock","cargo.lock","poetry.lock","gemfile.lock","composer.lock","go.sum"]),cw=new Set([".yml",".yaml",".toml",".ini",".properties",".conf"]),cx=new Set([".md",".mdx",".rst",".adoc",".txt"]),cy=new Set(["cmakelists.txt","constraints.txt","robots.txt"]),cz=new Set([".csv",".tsv",".parquet",".sql",".jsonl",".ndjson"]),cA=new Set(["package.json","dockerfile","makefile","justfile",".gitignore",".gitattributes",".npmrc",".nvmrc",".editorconfig",".akaignore"]),cB=at.vkY(a=>{if("string"!=typeof a||""!==a.trim())return a},at.YjP().optional()).catch(void 0),cC=at.vkY(a=>{if("string"!=typeof a)return!1;let b=a.trim().toLowerCase();return""!==b&&"0"!==b&&"false"!==b},at.zMY()).catch(!1);at.Ikc({GOOGLE_GENAI_USE_VERTEXAI:cC,GOOGLE_GEMINI_BASE_URL:cB});let cD=at.vkY(a=>{if("string"!=typeof a||""!==a.trim())return a},at.YjP().optional()).catch(void 0);function cE(a,b,c,d=(0,as.tI)()){try{let e,f,g,h;if(!(0,as.xR)(d).dataSharesInPlace)return null;let i=(0,v.resolve)(b),j=(0,u.statSync)(i).isDirectory()?i:(0,v.dirname)(i),k=b4(i),l=b5(i);k&&l?(e=l,f=`git:${k.url}`,g=k.name,h=a.sourceProject.upsert({url:k.url,name:k.name,attributes:{}})):({root:e,projectKey:f,project:g}=function(a,b){let c=function(a,b){let c=a,d=null;for(let a=0;a<40;a+=1){(function(a,b){try{for(let c of(0,u.readdirSync)(a,{withFileTypes:!0}))if(c.isFile()&&null!=b(c.name))return!0}catch{}return!1})(c,b)&&(d=c);let a=(0,v.dirname)(c);if(a===c)break;c=a}return d??a}(a,b),d=(0,u.realpathSync)(c);return{root:c,projectKey:`path:${d}`,project:(0,v.basename)(d)}}(j,ar.DK),h=null);let m=[];for(let a of c.files){let b=cr((0,v.relative)(e,a.file));!(""===b||b.startsWith("../"))&&(b.startsWith(".")||b.includes("/.")||m.push({...a,file:b,vendored:(0,ar.$1)(b)}))}let n={projectKey:f,project:g,projectId:h,reconcile:{mode:"walk",walkedPrefix:cr((0,v.relative)(e,i))},hits:(0,ar.Ip)(m)};return{...a.shares.recordProjectEgress(n),project:n.project,input:n}}catch{return null}}function cF(a){try{return u.realpathSync.native(a)}catch{return(0,v.resolve)(a)}}function cG(a,b){return b.some(b=>a===b||a.startsWith(b+v.sep))}at.Ikc({OPENAI_BASE_URL:cD});let cH="AKA_PROTECTED_SCAN_TARGET";class cI extends Error{constructor(a){super(`refusing to scan ${a}: it holds credentials this scanner must never read`),this.code=cH,this.name="ProtectedTargetError",this.path=a}}function cJ(a){return"object"==typeof a&&null!==a&&a.code===cH}let cK=new Set(["node_modules",".git","dist",".next","coverage",".turbo","build","out"]);async function cL(a,b,c={}){let d,e=c.scanText??(a=>Promise.resolve((0,ar.SQ)(a,c.rules))),f=0,h=0,j=[],k=[];for(let{path:l,gitignored:m}of function*(a,b={}){let c,d=function(a,b){let c=(0,v.basename)((0,as.tI)());return[...new Set([(0,v.resolve)(a,".claude","ide"),(0,v.resolve)(a,".claude",".credentials.json"),(0,v.resolve)(a,".codex","auth.json"),(0,v.resolve)(b),(0,as.tI)(),(0,v.resolve)(a,c)].map(cF))]}(b.home??(0,i.homedir)(),b.akaHome??(0,as.tI)()),e=cF(a);try{c=(0,u.statSync)(a)}catch{return}if(cG(e,d))throw new cI(a);if(c.isFile()){c.size<=1e6&&(yield{path:a,gitignored:!1});return}c.isDirectory()&&(yield*function* a(b,c,d,e,f,g,h){let i;try{i=(0,u.readdirSync)(b,{withFileTypes:!0})}catch(a){if(""===d)throw a;return}let j=cq(e,g?void 0:cn(b,".gitignore",d.length)),k=cq(f,cn(b,".akaignore",d.length));for(let e of i){let f=(0,v.join)(b,e.name),i=c===b?f:(0,v.join)(c,e.name);if(e.isDirectory()){if(cG(i,h))continue;let b=co(k,d,e.name,!0);if("unignored"!==b&&(cK.has(e.name)||e.name.startsWith(".")||"ignored"===b))continue;let c=g||"ignored"===co(j,d,e.name,!0);yield*a(f,i,cp(d,e.name),j,k,c,h)}else if(e.isFile()){let a;if(cG(i,h)||"ignored"===co(k,d,e.name,!1))continue;try{a=(0,u.statSync)(f).size}catch{continue}if(a>1e6)continue;yield{path:f,gitignored:g||"ignored"===co(j,d,e.name,!1)}}}}(a,e,"",[],[],!1,d))}((0,v.resolve)(b),{akaHome:c.akaHome})){let b;try{b=(0,u.readFileSync)(l,"utf8")}catch{continue}f++;let i=function(a,b){if(b.includes("\0"))return null;let c=(0,v.basename)(a);if(ar.mu.has(c))return null;let d=(0,ar.DK)(c),e=null===d?[]:(0,ar.W$)(b,d),f=null===d&&ar.Nc.has((0,v.extname)(a))?(0,ar.Pb)(b):[];return 0===f.length&&0===e.length?null:{file:a,vendored:(0,ar.$1)(cr(a)),endpoints:f,sdkHits:e}}(l,b);i&&k.push(i);let n=(0,ar.KD)(b),o=(0,ar.uT)(await e(n.text),n.spans);if(0===o.length)continue;let p=o.map(a=>({match:a,action:c.ruleActions?.get(a.ruleId)??g.unw[a.category]})),q=p.filter(({action:a})=>(0,g.T2I)(a,"redact")),r=(0,al.randomUUID)(),s={filePath:l};m&&(s.gitignored=!0);let t={id:r,sourceTool:c.sourceTool??g.Zdp.Cli,kind:"code_change",occurredAt:new Date().toISOString(),contentHash:(0,al.createHash)("sha256").update(b).digest("hex"),content:(0,ar.E$)(b,q.map(({match:a})=>a)),metadata:s},w=p.map(({match:a,action:b})=>{let e=(0,ar.sE)(a.rawMatch),f=function(){if(void 0===d)try{d=c.dataDir?(0,as.Rd)(c.dataDir):null}catch{d=null}return d}(),g=f?(0,as._2)(f,a.rawMatch):e;return{id:(0,al.randomUUID)(),eventId:r,ruleId:a.ruleId,category:a.category,severity:a.severity,span:a.span,maskedMatch:e,actionTaken:b,confidence:a.confidence,findingKey:(0,as.Qo)({ruleId:a.ruleId,filePath:l,valueFingerprint:g})}});a.recordCapture(t,w),j.push({path:l,gitignored:m,findings:w}),h+=w.length}return{scanned:f,findings:h,files:j,egress:{files:k}}}let cM={status:"unavailable",reason:"this build shipped without its scan worker, so there was nowhere killable to measure them"};async function cN(a,b,c={}){let e,h={getRuleProbeVerdict:b=>Promise.resolve(a.ruleProbeCache.getVerdict(b)),setRuleProbeVerdict:(b,c,d)=>(a.ruleProbeCache.setVerdict(b,c,d),Promise.resolve())},i=c.workerUrl,j={workerUrl:i,budgetMs:c.budgetMs,probeBudgetMs:c.probeBudgetMs,startBudgetMs:c.startBudgetMs,onWorkerStart:c.onWorkerStart,minAttributionMs:void 0},k=f??=new Set((d??=b3.map(a=>({namespace:"aka",packId:a.packId,version:a.version,name:a.name,rules:a.rawRules.map(a=>g.jON.parse(a))}))).flatMap(a=>a.rules).map(ce).filter(a=>void 0!==a)),l=[],m=[];for(let a of b){let b=ce(a);void 0!==b&&k.has(b)?l.push(a):m.push(a)}let n=await ci(m,h,{passBudgetMs:c.passBudgetMs,prober:{probe:a=>void 0===i?Promise.resolve(cM):(e??=cc({verified:[],unverified:[]},j)).probe(a)}});await e?.close();let o=new Set(n),p=0,q=0;for(let a of m){let b;if(o.has(a))continue;let c=ce(a);try{b=void 0===c?void 0:(await h.getRuleProbeVerdict(c))?.verdict}catch{b=void 0}"quarantined"===b?p++:q++}let r=[...l],s=[],t=0;for(let a of n)"regex"!==a.matcher.type?r.push(a):void 0!==i?s.push(a):t++;let u=function(a,b,c){let d=c?.degradeScope??"the rest of this process",e=a.verified,f=a.unverified,g=f.length>0?cc({verified:e,unverified:f},c):void 0,h=!1;async function i(){let a=g;g=void 0,f=[],a&&await a.close()}async function j(){h=!0,await i()}async function k(a,b,c,d){try{return await a.scan(b,c,{attribute:d})}catch(a){return{status:"unavailable",reason:a instanceof Error?a.message:"the scan worker failed unexpectedly"}}}return{scan:async function(a,c){let h=g;if(!h)return(0,ar.SQ)(a,e,c);let i=await k(h,a,c,!1);if("ok"===i.status)return i.findings;"timeout"===i.status&&(i=await k(h,a,c,!0));let l=f.length;if("ok"===i.status){cj(d,l,"a scan overran its bound once and no rule could be held responsible");let a=i.findings;return await j(),a}if("timeout"===i.status){let a=void 0===i.culpritIndex?void 0:f[i.culpritIndex];a&&await ch(b,a,i.elapsedMs,`it did not finish within the ${i.elapsedMs.toFixed(0)}ms isolated-scan bound and was terminated; excluded from every later scan.`),cj(d,l,a?`rule "${a.id}" had to be terminated mid-scan`:`a scan was terminated at the ${i.elapsedMs.toFixed(0)}ms bound and no single rule could be held responsible, so nothing was quarantined and the next process will try these rules again`)}else cj(d,l,i.reason);return await j(),(0,ar.SQ)(a,e,c)},degraded:()=>h,async close(){await i()}}}({verified:r,unverified:s},h,{...j,degradeScope:"the rest of this scan"});return q+=t,{scanText:a=>u.scan(a),dropped:()=>({quarantined:p,unmeasured:q,bound:u.degraded()?s.length:0,isolated:void 0!==i}),close:()=>u.close()}}function cO(a,b){try{let c=(0,v.resolve)(b);(0,u.statSync)(c);let d=b4(c);if(!d)return null;let e=a.sourceProject.upsert({url:d.url,name:d.name,attributes:{}}),f=function(a,b={}){let c=b.bounds??ct,d=b.now??(()=>performance.now());try{let b=b5(a);if(!b)return;let e=b6(a)!==b,f=[],g={lostSubtree:!1,omitted:!1,seen:0},h=d()+c.budgetMs,i=function a(b,e,i,j){let k;try{k=(0,u.readdirSync)(b,{withFileTypes:!0,encoding:"utf8"})}catch{return g.lostSubtree=!0,!1}if(d()>h)return g.omitted=!0,!0;let l=cq(i,cn(b,".gitignore",e.length));for(let i of k){if(g.seen++,g.seen%512==0&&d()>h)return g.omitted=!0,!0;if(i.isDirectory()){if(cs.has(i.name)||cu(l,e,i.name,!0))continue;let d=(0,v.join)(b,i.name);if((0,u.existsSync)((0,v.join)(d,".git")))continue;if(j>=c.maxDepth){g.omitted=!0;continue}if(a(d,cp(e,i.name),l,j+1))return!0;continue}if(!i.isFile()||".git"===i.name||cu(l,e,i.name,!1))continue;if(f.length>=2e4)return!0;let k=cp(e,i.name);f.push({path:k,name:(0,v.basename)(i.name),origin:function(a,b){let c=b.toLowerCase(),d=c.lastIndexOf("."),e=d>0?c.slice(d):"",f=a.split("/");return cv.has(c)||c.includes(".generated.")||f.includes("__generated__")||f.includes("generated")||".map"===e||c.endsWith(".min.js")||c.endsWith(".min.css")?"generated":f.includes("vendor")||f.includes("third_party")?"vendored":cy.has(c)||".txt"===e&&c.startsWith("requirements")?"config":cx.has(e)||c.startsWith("license")||"docs"===f[0]?"docs":cz.has(e)||f.includes("fixtures")||f.includes("__fixtures__")?"data":cA.has(c)||cw.has(e)||c.startsWith(".")||c.includes(".config.")||c.startsWith("tsconfig")?"config":"source"}(k,i.name),defaultAccess:"approved"})}return!1}(b,"",[],0)||g.lostSubtree||g.omitted||e;if(0===f.length)return;return f.sort((a,b)=>a.path.localeCompare(b.path)),{files:f,truncated:i,scannedAt:new Date().toISOString()}}catch{return}}(c);f&&a.recordProjectFiles(e,f);let g=b6(c),h=b5(c);return g&&h&&a.reconcileWorktreeProjects(e,g,h),{projectId:e,name:d.name,url:d.url,fileCount:f?.files.length??0,truncated:f?.truncated??!1}}catch{return null}}let cP={unauthorized:"key rejected; re-attach with a valid plugin key",forbidden:"key is valid but not permitted for Data Shares ingest; a key minted before Data Shares ingest existed needs a re-attach, otherwise ask your org admin","route-absent":"the deployment predates Data Shares ingest; upgrade it, then re-run the scan","invalid-request":"this build assembled a request the contract refuses; please report it",rejected:"the deployment refused the request body; this build and the deployment are out of step — upgrade one of them",unreachable:"control plane unreachable (timeout or server error); the next scan retries"};async function cQ(a,b,c){let d=null;try{let e=(0,as.xR)(a),f=e.controlPlane;if(!(0,g.lgf)(e)||void 0===f)return{status:"not-attached"};let h=(0,g.F$B)(f);if(d=h,!1===c.enabled)return{status:"disabled",endpoint:h,reason:"opt-out"};if(!e.dataSharesInPlace)return{status:"disabled",endpoint:h,reason:"data-shares-off"};let i=(0,as.R8)((0,as.VL)(a),f);if(null===i)return{status:"no-credential",endpoint:h};let j=(0,as.Yf)(b),k=await c.send({endpoint:f.endpoint,apiKey:i.apiKey},j);return k.ok?{status:"forwarded",endpoint:h,callSites:j.hits.length}:{status:"failed",endpoint:h,kind:k.kind}}catch{return null===d?{status:"not-attached"}:{status:"failed",endpoint:d,kind:"unreachable"}}}function cR(a){return(0,v.join)((0,as.KS)(a),"update-check.json")}function cS(a){let b=cR(a);if(!(0,u.existsSync)(b))return null;try{let a=JSON.parse((0,u.readFileSync)(b,"utf8"));if(!L(a)||"number"!=typeof a.checkedAt||!L(a.report))return null;return a}catch{return null}}function cT(a){try{(0,u.rmSync)(cR(a),{force:!0})}catch{}}function cU(a){let b=cS(a);var c={checkedAt:Date.now(),report:R({viewDistTags:Q,installed:P(),cliInstalled:M(),cliChannel:void 0,marketplacePin:a=>F(a)}),notifiedPluginIds:b?.notifiedPluginIds??[]};if((0,u.existsSync)((0,as.KS)(a)))try{(0,as.g5)(cR(a),`${JSON.stringify(c,null,2)}
6
+ `)}catch{}}}};
@@ -0,0 +1,6 @@
1
+ exports.id=811,exports.ids=[811],exports.modules={8740:(a,b)=>{"use strict";function c(a){return null!==a&&"object"==typeof a&&"then"in a&&"function"==typeof a.then}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"isThenable",{enumerable:!0,get:function(){return c}})},10811:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"normalizePagePath",{enumerable:!0,get:function(){return g}});let d=c(97301),e=c(21484),f=c(52923);function g(a){let b=/^\/index(\/|$)/.test(a)&&!(0,e.isDynamicRoute)(a)?"/index"+a:"/"===a?"/index":(0,d.ensureLeadingSlash)(a);{let{posix:a}=c(33873),d=a.normalize(b);if(d!==b)throw new f.NormalizeError("Requested and resolved page mismatch: "+b+" "+d)}return b}},21242:a=>{(()=>{"use strict";var b={491:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.ContextAPI=void 0;let d=c(223),e=c(172),f=c(930),g="context",h=new d.NoopContextManager;class i{constructor(){}static getInstance(){return this._instance||(this._instance=new i),this._instance}setGlobalContextManager(a){return(0,e.registerGlobal)(g,a,f.DiagAPI.instance())}active(){return this._getContextManager().active()}with(a,b,c,...d){return this._getContextManager().with(a,b,c,...d)}bind(a,b){return this._getContextManager().bind(a,b)}_getContextManager(){return(0,e.getGlobal)(g)||h}disable(){this._getContextManager().disable(),(0,e.unregisterGlobal)(g,f.DiagAPI.instance())}}b.ContextAPI=i},930:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.DiagAPI=void 0;let d=c(56),e=c(912),f=c(957),g=c(172);class h{constructor(){function a(a){return function(...b){let c=(0,g.getGlobal)("diag");if(c)return c[a](...b)}}let b=this;b.setLogger=(a,c={logLevel:f.DiagLogLevel.INFO})=>{var d,h,i;if(a===b){let a=Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return b.error(null!=(d=a.stack)?d:a.message),!1}"number"==typeof c&&(c={logLevel:c});let j=(0,g.getGlobal)("diag"),k=(0,e.createLogLevelDiagLogger)(null!=(h=c.logLevel)?h:f.DiagLogLevel.INFO,a);if(j&&!c.suppressOverrideMessage){let a=null!=(i=Error().stack)?i:"<failed to generate stacktrace>";j.warn(`Current logger will be overwritten from ${a}`),k.warn(`Current logger will overwrite one already registered from ${a}`)}return(0,g.registerGlobal)("diag",k,b,!0)},b.disable=()=>{(0,g.unregisterGlobal)("diag",b)},b.createComponentLogger=a=>new d.DiagComponentLogger(a),b.verbose=a("verbose"),b.debug=a("debug"),b.info=a("info"),b.warn=a("warn"),b.error=a("error")}static instance(){return this._instance||(this._instance=new h),this._instance}}b.DiagAPI=h},653:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.MetricsAPI=void 0;let d=c(660),e=c(172),f=c(930),g="metrics";class h{constructor(){}static getInstance(){return this._instance||(this._instance=new h),this._instance}setGlobalMeterProvider(a){return(0,e.registerGlobal)(g,a,f.DiagAPI.instance())}getMeterProvider(){return(0,e.getGlobal)(g)||d.NOOP_METER_PROVIDER}getMeter(a,b,c){return this.getMeterProvider().getMeter(a,b,c)}disable(){(0,e.unregisterGlobal)(g,f.DiagAPI.instance())}}b.MetricsAPI=h},181:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.PropagationAPI=void 0;let d=c(172),e=c(874),f=c(194),g=c(277),h=c(369),i=c(930),j="propagation",k=new e.NoopTextMapPropagator;class l{constructor(){this.createBaggage=h.createBaggage,this.getBaggage=g.getBaggage,this.getActiveBaggage=g.getActiveBaggage,this.setBaggage=g.setBaggage,this.deleteBaggage=g.deleteBaggage}static getInstance(){return this._instance||(this._instance=new l),this._instance}setGlobalPropagator(a){return(0,d.registerGlobal)(j,a,i.DiagAPI.instance())}inject(a,b,c=f.defaultTextMapSetter){return this._getGlobalPropagator().inject(a,b,c)}extract(a,b,c=f.defaultTextMapGetter){return this._getGlobalPropagator().extract(a,b,c)}fields(){return this._getGlobalPropagator().fields()}disable(){(0,d.unregisterGlobal)(j,i.DiagAPI.instance())}_getGlobalPropagator(){return(0,d.getGlobal)(j)||k}}b.PropagationAPI=l},997:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.TraceAPI=void 0;let d=c(172),e=c(846),f=c(139),g=c(607),h=c(930),i="trace";class j{constructor(){this._proxyTracerProvider=new e.ProxyTracerProvider,this.wrapSpanContext=f.wrapSpanContext,this.isSpanContextValid=f.isSpanContextValid,this.deleteSpan=g.deleteSpan,this.getSpan=g.getSpan,this.getActiveSpan=g.getActiveSpan,this.getSpanContext=g.getSpanContext,this.setSpan=g.setSpan,this.setSpanContext=g.setSpanContext}static getInstance(){return this._instance||(this._instance=new j),this._instance}setGlobalTracerProvider(a){let b=(0,d.registerGlobal)(i,this._proxyTracerProvider,h.DiagAPI.instance());return b&&this._proxyTracerProvider.setDelegate(a),b}getTracerProvider(){return(0,d.getGlobal)(i)||this._proxyTracerProvider}getTracer(a,b){return this.getTracerProvider().getTracer(a,b)}disable(){(0,d.unregisterGlobal)(i,h.DiagAPI.instance()),this._proxyTracerProvider=new e.ProxyTracerProvider}}b.TraceAPI=j},277:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.deleteBaggage=b.setBaggage=b.getActiveBaggage=b.getBaggage=void 0;let d=c(491),e=(0,c(780).createContextKey)("OpenTelemetry Baggage Key");function f(a){return a.getValue(e)||void 0}b.getBaggage=f,b.getActiveBaggage=function(){return f(d.ContextAPI.getInstance().active())},b.setBaggage=function(a,b){return a.setValue(e,b)},b.deleteBaggage=function(a){return a.deleteValue(e)}},993:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.BaggageImpl=void 0;class c{constructor(a){this._entries=a?new Map(a):new Map}getEntry(a){let b=this._entries.get(a);if(b)return Object.assign({},b)}getAllEntries(){return Array.from(this._entries.entries()).map(([a,b])=>[a,b])}setEntry(a,b){let d=new c(this._entries);return d._entries.set(a,b),d}removeEntry(a){let b=new c(this._entries);return b._entries.delete(a),b}removeEntries(...a){let b=new c(this._entries);for(let c of a)b._entries.delete(c);return b}clear(){return new c}}b.BaggageImpl=c},830:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.baggageEntryMetadataSymbol=void 0,b.baggageEntryMetadataSymbol=Symbol("BaggageEntryMetadata")},369:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.baggageEntryMetadataFromString=b.createBaggage=void 0;let d=c(930),e=c(993),f=c(830),g=d.DiagAPI.instance();b.createBaggage=function(a={}){return new e.BaggageImpl(new Map(Object.entries(a)))},b.baggageEntryMetadataFromString=function(a){return"string"!=typeof a&&(g.error(`Cannot create baggage metadata from unknown type: ${typeof a}`),a=""),{__TYPE__:f.baggageEntryMetadataSymbol,toString:()=>a}}},67:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.context=void 0,b.context=c(491).ContextAPI.getInstance()},223:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.NoopContextManager=void 0;let d=c(780);class e{active(){return d.ROOT_CONTEXT}with(a,b,c,...d){return b.call(c,...d)}bind(a,b){return b}enable(){return this}disable(){return this}}b.NoopContextManager=e},780:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.ROOT_CONTEXT=b.createContextKey=void 0,b.createContextKey=function(a){return Symbol.for(a)};class c{constructor(a){let b=this;b._currentContext=a?new Map(a):new Map,b.getValue=a=>b._currentContext.get(a),b.setValue=(a,d)=>{let e=new c(b._currentContext);return e._currentContext.set(a,d),e},b.deleteValue=a=>{let d=new c(b._currentContext);return d._currentContext.delete(a),d}}}b.ROOT_CONTEXT=new c},506:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.diag=void 0,b.diag=c(930).DiagAPI.instance()},56:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.DiagComponentLogger=void 0;let d=c(172);class e{constructor(a){this._namespace=a.namespace||"DiagComponentLogger"}debug(...a){return f("debug",this._namespace,a)}error(...a){return f("error",this._namespace,a)}info(...a){return f("info",this._namespace,a)}warn(...a){return f("warn",this._namespace,a)}verbose(...a){return f("verbose",this._namespace,a)}}function f(a,b,c){let e=(0,d.getGlobal)("diag");if(e)return c.unshift(b),e[a](...c)}b.DiagComponentLogger=e},972:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.DiagConsoleLogger=void 0;let c=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}];class d{constructor(){for(let a=0;a<c.length;a++)this[c[a].n]=function(a){return function(...b){if(console){let c=console[a];if("function"!=typeof c&&(c=console.log),"function"==typeof c)return c.apply(console,b)}}}(c[a].c)}}b.DiagConsoleLogger=d},912:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.createLogLevelDiagLogger=void 0;let d=c(957);b.createLogLevelDiagLogger=function(a,b){function c(c,d){let e=b[c];return"function"==typeof e&&a>=d?e.bind(b):function(){}}return a<d.DiagLogLevel.NONE?a=d.DiagLogLevel.NONE:a>d.DiagLogLevel.ALL&&(a=d.DiagLogLevel.ALL),b=b||{},{error:c("error",d.DiagLogLevel.ERROR),warn:c("warn",d.DiagLogLevel.WARN),info:c("info",d.DiagLogLevel.INFO),debug:c("debug",d.DiagLogLevel.DEBUG),verbose:c("verbose",d.DiagLogLevel.VERBOSE)}}},957:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.DiagLogLevel=void 0,function(a){a[a.NONE=0]="NONE",a[a.ERROR=30]="ERROR",a[a.WARN=50]="WARN",a[a.INFO=60]="INFO",a[a.DEBUG=70]="DEBUG",a[a.VERBOSE=80]="VERBOSE",a[a.ALL=9999]="ALL"}(b.DiagLogLevel||(b.DiagLogLevel={}))},172:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.unregisterGlobal=b.getGlobal=b.registerGlobal=void 0;let d=c(200),e=c(521),f=c(130),g=e.VERSION.split(".")[0],h=Symbol.for(`opentelemetry.js.api.${g}`),i=d._globalThis;b.registerGlobal=function(a,b,c,d=!1){var f;let g=i[h]=null!=(f=i[h])?f:{version:e.VERSION};if(!d&&g[a]){let b=Error(`@opentelemetry/api: Attempted duplicate registration of API: ${a}`);return c.error(b.stack||b.message),!1}if(g.version!==e.VERSION){let b=Error(`@opentelemetry/api: Registration of version v${g.version} for ${a} does not match previously registered API v${e.VERSION}`);return c.error(b.stack||b.message),!1}return g[a]=b,c.debug(`@opentelemetry/api: Registered a global for ${a} v${e.VERSION}.`),!0},b.getGlobal=function(a){var b,c;let d=null==(b=i[h])?void 0:b.version;if(d&&(0,f.isCompatible)(d))return null==(c=i[h])?void 0:c[a]},b.unregisterGlobal=function(a,b){b.debug(`@opentelemetry/api: Unregistering a global for ${a} v${e.VERSION}.`);let c=i[h];c&&delete c[a]}},130:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.isCompatible=b._makeCompatibilityCheck=void 0;let d=c(521),e=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function f(a){let b=new Set([a]),c=new Set,d=a.match(e);if(!d)return()=>!1;let f={major:+d[1],minor:+d[2],patch:+d[3],prerelease:d[4]};if(null!=f.prerelease)return function(b){return b===a};function g(a){return c.add(a),!1}return function(a){if(b.has(a))return!0;if(c.has(a))return!1;let d=a.match(e);if(!d)return g(a);let h={major:+d[1],minor:+d[2],patch:+d[3],prerelease:d[4]};if(null!=h.prerelease||f.major!==h.major)return g(a);if(0===f.major)return f.minor===h.minor&&f.patch<=h.patch?(b.add(a),!0):g(a);return f.minor<=h.minor?(b.add(a),!0):g(a)}}b._makeCompatibilityCheck=f,b.isCompatible=f(d.VERSION)},886:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.metrics=void 0,b.metrics=c(653).MetricsAPI.getInstance()},901:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.ValueType=void 0,function(a){a[a.INT=0]="INT",a[a.DOUBLE=1]="DOUBLE"}(b.ValueType||(b.ValueType={}))},102:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.createNoopMeter=b.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=b.NOOP_OBSERVABLE_GAUGE_METRIC=b.NOOP_OBSERVABLE_COUNTER_METRIC=b.NOOP_UP_DOWN_COUNTER_METRIC=b.NOOP_HISTOGRAM_METRIC=b.NOOP_COUNTER_METRIC=b.NOOP_METER=b.NoopObservableUpDownCounterMetric=b.NoopObservableGaugeMetric=b.NoopObservableCounterMetric=b.NoopObservableMetric=b.NoopHistogramMetric=b.NoopUpDownCounterMetric=b.NoopCounterMetric=b.NoopMetric=b.NoopMeter=void 0;class c{constructor(){}createHistogram(a,c){return b.NOOP_HISTOGRAM_METRIC}createCounter(a,c){return b.NOOP_COUNTER_METRIC}createUpDownCounter(a,c){return b.NOOP_UP_DOWN_COUNTER_METRIC}createObservableGauge(a,c){return b.NOOP_OBSERVABLE_GAUGE_METRIC}createObservableCounter(a,c){return b.NOOP_OBSERVABLE_COUNTER_METRIC}createObservableUpDownCounter(a,c){return b.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC}addBatchObservableCallback(a,b){}removeBatchObservableCallback(a){}}b.NoopMeter=c;class d{}b.NoopMetric=d;class e extends d{add(a,b){}}b.NoopCounterMetric=e;class f extends d{add(a,b){}}b.NoopUpDownCounterMetric=f;class g extends d{record(a,b){}}b.NoopHistogramMetric=g;class h{addCallback(a){}removeCallback(a){}}b.NoopObservableMetric=h;class i extends h{}b.NoopObservableCounterMetric=i;class j extends h{}b.NoopObservableGaugeMetric=j;class k extends h{}b.NoopObservableUpDownCounterMetric=k,b.NOOP_METER=new c,b.NOOP_COUNTER_METRIC=new e,b.NOOP_HISTOGRAM_METRIC=new g,b.NOOP_UP_DOWN_COUNTER_METRIC=new f,b.NOOP_OBSERVABLE_COUNTER_METRIC=new i,b.NOOP_OBSERVABLE_GAUGE_METRIC=new j,b.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=new k,b.createNoopMeter=function(){return b.NOOP_METER}},660:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.NOOP_METER_PROVIDER=b.NoopMeterProvider=void 0;let d=c(102);class e{getMeter(a,b,c){return d.NOOP_METER}}b.NoopMeterProvider=e,b.NOOP_METER_PROVIDER=new e},200:function(a,b,c){var d=this&&this.__createBinding||(Object.create?function(a,b,c,d){void 0===d&&(d=c),Object.defineProperty(a,d,{enumerable:!0,get:function(){return b[c]}})}:function(a,b,c,d){void 0===d&&(d=c),a[d]=b[c]}),e=this&&this.__exportStar||function(a,b){for(var c in a)"default"===c||Object.prototype.hasOwnProperty.call(b,c)||d(b,a,c)};Object.defineProperty(b,"__esModule",{value:!0}),e(c(46),b)},651:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b._globalThis=void 0,b._globalThis="object"==typeof globalThis?globalThis:global},46:function(a,b,c){var d=this&&this.__createBinding||(Object.create?function(a,b,c,d){void 0===d&&(d=c),Object.defineProperty(a,d,{enumerable:!0,get:function(){return b[c]}})}:function(a,b,c,d){void 0===d&&(d=c),a[d]=b[c]}),e=this&&this.__exportStar||function(a,b){for(var c in a)"default"===c||Object.prototype.hasOwnProperty.call(b,c)||d(b,a,c)};Object.defineProperty(b,"__esModule",{value:!0}),e(c(651),b)},939:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.propagation=void 0,b.propagation=c(181).PropagationAPI.getInstance()},874:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.NoopTextMapPropagator=void 0;class c{inject(a,b){}extract(a,b){return a}fields(){return[]}}b.NoopTextMapPropagator=c},194:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.defaultTextMapSetter=b.defaultTextMapGetter=void 0,b.defaultTextMapGetter={get(a,b){if(null!=a)return a[b]},keys:a=>null==a?[]:Object.keys(a)},b.defaultTextMapSetter={set(a,b,c){null!=a&&(a[b]=c)}}},845:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.trace=void 0,b.trace=c(997).TraceAPI.getInstance()},403:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.NonRecordingSpan=void 0;let d=c(476);class e{constructor(a=d.INVALID_SPAN_CONTEXT){this._spanContext=a}spanContext(){return this._spanContext}setAttribute(a,b){return this}setAttributes(a){return this}addEvent(a,b){return this}setStatus(a){return this}updateName(a){return this}end(a){}isRecording(){return!1}recordException(a,b){}}b.NonRecordingSpan=e},614:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.NoopTracer=void 0;let d=c(491),e=c(607),f=c(403),g=c(139),h=d.ContextAPI.getInstance();class i{startSpan(a,b,c=h.active()){var d;if(null==b?void 0:b.root)return new f.NonRecordingSpan;let i=c&&(0,e.getSpanContext)(c);return"object"==typeof(d=i)&&"string"==typeof d.spanId&&"string"==typeof d.traceId&&"number"==typeof d.traceFlags&&(0,g.isSpanContextValid)(i)?new f.NonRecordingSpan(i):new f.NonRecordingSpan}startActiveSpan(a,b,c,d){let f,g,i;if(arguments.length<2)return;2==arguments.length?i=b:3==arguments.length?(f=b,i=c):(f=b,g=c,i=d);let j=null!=g?g:h.active(),k=this.startSpan(a,f,j),l=(0,e.setSpan)(j,k);return h.with(l,i,void 0,k)}}b.NoopTracer=i},124:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.NoopTracerProvider=void 0;let d=c(614);class e{getTracer(a,b,c){return new d.NoopTracer}}b.NoopTracerProvider=e},125:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.ProxyTracer=void 0;let d=new(c(614)).NoopTracer;class e{constructor(a,b,c,d){this._provider=a,this.name=b,this.version=c,this.options=d}startSpan(a,b,c){return this._getTracer().startSpan(a,b,c)}startActiveSpan(a,b,c,d){let e=this._getTracer();return Reflect.apply(e.startActiveSpan,e,arguments)}_getTracer(){if(this._delegate)return this._delegate;let a=this._provider.getDelegateTracer(this.name,this.version,this.options);return a?(this._delegate=a,this._delegate):d}}b.ProxyTracer=e},846:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.ProxyTracerProvider=void 0;let d=c(125),e=new(c(124)).NoopTracerProvider;class f{getTracer(a,b,c){var e;return null!=(e=this.getDelegateTracer(a,b,c))?e:new d.ProxyTracer(this,a,b,c)}getDelegate(){var a;return null!=(a=this._delegate)?a:e}setDelegate(a){this._delegate=a}getDelegateTracer(a,b,c){var d;return null==(d=this._delegate)?void 0:d.getTracer(a,b,c)}}b.ProxyTracerProvider=f},996:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.SamplingDecision=void 0,function(a){a[a.NOT_RECORD=0]="NOT_RECORD",a[a.RECORD=1]="RECORD",a[a.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"}(b.SamplingDecision||(b.SamplingDecision={}))},607:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.getSpanContext=b.setSpanContext=b.deleteSpan=b.setSpan=b.getActiveSpan=b.getSpan=void 0;let d=c(780),e=c(403),f=c(491),g=(0,d.createContextKey)("OpenTelemetry Context Key SPAN");function h(a){return a.getValue(g)||void 0}function i(a,b){return a.setValue(g,b)}b.getSpan=h,b.getActiveSpan=function(){return h(f.ContextAPI.getInstance().active())},b.setSpan=i,b.deleteSpan=function(a){return a.deleteValue(g)},b.setSpanContext=function(a,b){return i(a,new e.NonRecordingSpan(b))},b.getSpanContext=function(a){var b;return null==(b=h(a))?void 0:b.spanContext()}},325:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.TraceStateImpl=void 0;let d=c(564);class e{constructor(a){this._internalState=new Map,a&&this._parse(a)}set(a,b){let c=this._clone();return c._internalState.has(a)&&c._internalState.delete(a),c._internalState.set(a,b),c}unset(a){let b=this._clone();return b._internalState.delete(a),b}get(a){return this._internalState.get(a)}serialize(){return this._keys().reduce((a,b)=>(a.push(b+"="+this.get(b)),a),[]).join(",")}_parse(a){!(a.length>512)&&(this._internalState=a.split(",").reverse().reduce((a,b)=>{let c=b.trim(),e=c.indexOf("=");if(-1!==e){let f=c.slice(0,e),g=c.slice(e+1,b.length);(0,d.validateKey)(f)&&(0,d.validateValue)(g)&&a.set(f,g)}return a},new Map),this._internalState.size>32&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,32))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let a=new e;return a._internalState=new Map(this._internalState),a}}b.TraceStateImpl=e},564:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.validateValue=b.validateKey=void 0;let c="[_0-9a-z-*/]",d=`[a-z]${c}{0,255}`,e=`[a-z0-9]${c}{0,240}@[a-z]${c}{0,13}`,f=RegExp(`^(?:${d}|${e})$`),g=/^[ -~]{0,255}[!-~]$/,h=/,|=/;b.validateKey=function(a){return f.test(a)},b.validateValue=function(a){return g.test(a)&&!h.test(a)}},98:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.createTraceState=void 0;let d=c(325);b.createTraceState=function(a){return new d.TraceStateImpl(a)}},476:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.INVALID_SPAN_CONTEXT=b.INVALID_TRACEID=b.INVALID_SPANID=void 0;let d=c(475);b.INVALID_SPANID="0000000000000000",b.INVALID_TRACEID="00000000000000000000000000000000",b.INVALID_SPAN_CONTEXT={traceId:b.INVALID_TRACEID,spanId:b.INVALID_SPANID,traceFlags:d.TraceFlags.NONE}},357:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.SpanKind=void 0,function(a){a[a.INTERNAL=0]="INTERNAL",a[a.SERVER=1]="SERVER",a[a.CLIENT=2]="CLIENT",a[a.PRODUCER=3]="PRODUCER",a[a.CONSUMER=4]="CONSUMER"}(b.SpanKind||(b.SpanKind={}))},139:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.wrapSpanContext=b.isSpanContextValid=b.isValidSpanId=b.isValidTraceId=void 0;let d=c(476),e=c(403),f=/^([0-9a-f]{32})$/i,g=/^[0-9a-f]{16}$/i;function h(a){return f.test(a)&&a!==d.INVALID_TRACEID}function i(a){return g.test(a)&&a!==d.INVALID_SPANID}b.isValidTraceId=h,b.isValidSpanId=i,b.isSpanContextValid=function(a){return h(a.traceId)&&i(a.spanId)},b.wrapSpanContext=function(a){return new e.NonRecordingSpan(a)}},847:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.SpanStatusCode=void 0,function(a){a[a.UNSET=0]="UNSET",a[a.OK=1]="OK",a[a.ERROR=2]="ERROR"}(b.SpanStatusCode||(b.SpanStatusCode={}))},475:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.TraceFlags=void 0,function(a){a[a.NONE=0]="NONE",a[a.SAMPLED=1]="SAMPLED"}(b.TraceFlags||(b.TraceFlags={}))},521:(a,b)=>{Object.defineProperty(b,"__esModule",{value:!0}),b.VERSION=void 0,b.VERSION="1.6.0"}},c={};function d(a){var e=c[a];if(void 0!==e)return e.exports;var f=c[a]={exports:{}},g=!0;try{b[a].call(f.exports,f,f.exports,d),g=!1}finally{g&&delete c[a]}return f.exports}d.ab=__dirname+"/";var e={};(()=>{Object.defineProperty(e,"__esModule",{value:!0}),e.trace=e.propagation=e.metrics=e.diag=e.context=e.INVALID_SPAN_CONTEXT=e.INVALID_TRACEID=e.INVALID_SPANID=e.isValidSpanId=e.isValidTraceId=e.isSpanContextValid=e.createTraceState=e.TraceFlags=e.SpanStatusCode=e.SpanKind=e.SamplingDecision=e.ProxyTracerProvider=e.ProxyTracer=e.defaultTextMapSetter=e.defaultTextMapGetter=e.ValueType=e.createNoopMeter=e.DiagLogLevel=e.DiagConsoleLogger=e.ROOT_CONTEXT=e.createContextKey=e.baggageEntryMetadataFromString=void 0;var a=d(369);Object.defineProperty(e,"baggageEntryMetadataFromString",{enumerable:!0,get:function(){return a.baggageEntryMetadataFromString}});var b=d(780);Object.defineProperty(e,"createContextKey",{enumerable:!0,get:function(){return b.createContextKey}}),Object.defineProperty(e,"ROOT_CONTEXT",{enumerable:!0,get:function(){return b.ROOT_CONTEXT}});var c=d(972);Object.defineProperty(e,"DiagConsoleLogger",{enumerable:!0,get:function(){return c.DiagConsoleLogger}});var f=d(957);Object.defineProperty(e,"DiagLogLevel",{enumerable:!0,get:function(){return f.DiagLogLevel}});var g=d(102);Object.defineProperty(e,"createNoopMeter",{enumerable:!0,get:function(){return g.createNoopMeter}});var h=d(901);Object.defineProperty(e,"ValueType",{enumerable:!0,get:function(){return h.ValueType}});var i=d(194);Object.defineProperty(e,"defaultTextMapGetter",{enumerable:!0,get:function(){return i.defaultTextMapGetter}}),Object.defineProperty(e,"defaultTextMapSetter",{enumerable:!0,get:function(){return i.defaultTextMapSetter}});var j=d(125);Object.defineProperty(e,"ProxyTracer",{enumerable:!0,get:function(){return j.ProxyTracer}});var k=d(846);Object.defineProperty(e,"ProxyTracerProvider",{enumerable:!0,get:function(){return k.ProxyTracerProvider}});var l=d(996);Object.defineProperty(e,"SamplingDecision",{enumerable:!0,get:function(){return l.SamplingDecision}});var m=d(357);Object.defineProperty(e,"SpanKind",{enumerable:!0,get:function(){return m.SpanKind}});var n=d(847);Object.defineProperty(e,"SpanStatusCode",{enumerable:!0,get:function(){return n.SpanStatusCode}});var o=d(475);Object.defineProperty(e,"TraceFlags",{enumerable:!0,get:function(){return o.TraceFlags}});var p=d(98);Object.defineProperty(e,"createTraceState",{enumerable:!0,get:function(){return p.createTraceState}});var q=d(139);Object.defineProperty(e,"isSpanContextValid",{enumerable:!0,get:function(){return q.isSpanContextValid}}),Object.defineProperty(e,"isValidTraceId",{enumerable:!0,get:function(){return q.isValidTraceId}}),Object.defineProperty(e,"isValidSpanId",{enumerable:!0,get:function(){return q.isValidSpanId}});var r=d(476);Object.defineProperty(e,"INVALID_SPANID",{enumerable:!0,get:function(){return r.INVALID_SPANID}}),Object.defineProperty(e,"INVALID_TRACEID",{enumerable:!0,get:function(){return r.INVALID_TRACEID}}),Object.defineProperty(e,"INVALID_SPAN_CONTEXT",{enumerable:!0,get:function(){return r.INVALID_SPAN_CONTEXT}});let s=d(67);Object.defineProperty(e,"context",{enumerable:!0,get:function(){return s.context}});let t=d(506);Object.defineProperty(e,"diag",{enumerable:!0,get:function(){return t.diag}});let u=d(886);Object.defineProperty(e,"metrics",{enumerable:!0,get:function(){return u.metrics}});let v=d(939);Object.defineProperty(e,"propagation",{enumerable:!0,get:function(){return v.propagation}});let w=d(845);Object.defineProperty(e,"trace",{enumerable:!0,get:function(){return w.trace}}),e.default={context:s.context,diag:t.diag,metrics:u.metrics,propagation:v.propagation,trace:w.trace}})(),a.exports=e})()},21484:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{getSortedRouteObjects:function(){return d.getSortedRouteObjects},getSortedRoutes:function(){return d.getSortedRoutes},isDynamicRoute:function(){return e.isDynamicRoute}});let d=c(57474),e=c(47888)},28260:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{default:function(){return e},getProperError:function(){return f}});let d=c(36617);function e(a){return"object"==typeof a&&null!==a&&"name"in a&&"message"in a}function f(a){return e(a)?a:Object.defineProperty(Error((0,d.isPlainObject)(a)?function(a){let b=new WeakSet;return JSON.stringify(a,(a,c)=>{if("object"==typeof c&&null!==c){if(b.has(c))return"[Circular]";b.add(c)}return c})}(a):a+""),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}},31119:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{INTERCEPTION_ROUTE_MARKERS:function(){return e},extractInterceptionRouteInformation:function(){return g},isInterceptionRouteAppPath:function(){return f}});let d=c(70706),e=["(..)(..)","(.)","(..)","(...)"];function f(a){return void 0!==a.split("/").find(a=>e.find(b=>a.startsWith(b)))}function g(a){let b,c,f;for(let d of a.split("/"))if(c=e.find(a=>d.startsWith(a))){[b,f]=a.split(c,2);break}if(!b||!c||!f)throw Object.defineProperty(Error("Invalid interception route: "+a+". Must be in the format /<intercepting route>/(..|...|..)(..)/<intercepted route>"),"__NEXT_ERROR_CODE",{value:"E269",enumerable:!1,configurable:!0});switch(b=(0,d.normalizeAppPath)(b),c){case"(.)":f="/"===b?"/"+f:b+"/"+f;break;case"(..)":if("/"===b)throw Object.defineProperty(Error("Invalid interception route: "+a+". Cannot use (..) marker at the root level, use (.) instead."),"__NEXT_ERROR_CODE",{value:"E207",enumerable:!1,configurable:!0});f=b.split("/").slice(0,-1).concat(f).join("/");break;case"(...)":f="/"+f;break;case"(..)(..)":let g=b.split("/");if(g.length<=2)throw Object.defineProperty(Error("Invalid interception route: "+a+". Cannot use (..)(..) marker at the root level or one level up."),"__NEXT_ERROR_CODE",{value:"E486",enumerable:!1,configurable:!0});f=g.slice(0,-2).concat(f).join("/");break;default:throw Object.defineProperty(Error("Invariant: unexpected marker"),"__NEXT_ERROR_CODE",{value:"E112",enumerable:!1,configurable:!0})}return{interceptingRoute:b,interceptedRoute:f}}},36617:(a,b)=>{"use strict";function c(a){return Object.prototype.toString.call(a)}function d(a){if("[object Object]"!==c(a))return!1;let b=Object.getPrototypeOf(a);return null===b||b.hasOwnProperty("isPrototypeOf")}Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{getObjectClassLabel:function(){return c},isPlainObject:function(){return d}})},38485:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"getPageFiles",{enumerable:!0,get:function(){return f}});let d=c(91344),e=c(10811);function f(a,b){let c=(0,d.denormalizePagePath)((0,e.normalizePagePath)(b)),f=a.pages[c];return f||(console.warn(`Could not find files for ${c} in .next/build-manifest.json`),[])}},39276:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{AppRenderSpan:function(){return i},AppRouteRouteHandlersSpan:function(){return l},BaseServerSpan:function(){return c},LoadComponentsSpan:function(){return d},LogSpanAllowList:function(){return p},MiddlewareSpan:function(){return n},NextNodeServerSpan:function(){return f},NextServerSpan:function(){return e},NextVanillaSpanAllowlist:function(){return o},NodeSpan:function(){return k},RenderSpan:function(){return h},ResolveMetadataSpan:function(){return m},RouterSpan:function(){return j},StartServerSpan:function(){return g}});var c=function(a){return a.handleRequest="BaseServer.handleRequest",a.run="BaseServer.run",a.pipe="BaseServer.pipe",a.getStaticHTML="BaseServer.getStaticHTML",a.render="BaseServer.render",a.renderToResponseWithComponents="BaseServer.renderToResponseWithComponents",a.renderToResponse="BaseServer.renderToResponse",a.renderToHTML="BaseServer.renderToHTML",a.renderError="BaseServer.renderError",a.renderErrorToResponse="BaseServer.renderErrorToResponse",a.renderErrorToHTML="BaseServer.renderErrorToHTML",a.render404="BaseServer.render404",a}(c||{}),d=function(a){return a.loadDefaultErrorComponents="LoadComponents.loadDefaultErrorComponents",a.loadComponents="LoadComponents.loadComponents",a}(d||{}),e=function(a){return a.getRequestHandler="NextServer.getRequestHandler",a.getServer="NextServer.getServer",a.getServerRequestHandler="NextServer.getServerRequestHandler",a.createServer="createServer.createServer",a}(e||{}),f=function(a){return a.compression="NextNodeServer.compression",a.getBuildId="NextNodeServer.getBuildId",a.createComponentTree="NextNodeServer.createComponentTree",a.clientComponentLoading="NextNodeServer.clientComponentLoading",a.getLayoutOrPageModule="NextNodeServer.getLayoutOrPageModule",a.generateStaticRoutes="NextNodeServer.generateStaticRoutes",a.generateFsStaticRoutes="NextNodeServer.generateFsStaticRoutes",a.generatePublicRoutes="NextNodeServer.generatePublicRoutes",a.generateImageRoutes="NextNodeServer.generateImageRoutes.route",a.sendRenderResult="NextNodeServer.sendRenderResult",a.proxyRequest="NextNodeServer.proxyRequest",a.runApi="NextNodeServer.runApi",a.render="NextNodeServer.render",a.renderHTML="NextNodeServer.renderHTML",a.imageOptimizer="NextNodeServer.imageOptimizer",a.getPagePath="NextNodeServer.getPagePath",a.getRoutesManifest="NextNodeServer.getRoutesManifest",a.findPageComponents="NextNodeServer.findPageComponents",a.getFontManifest="NextNodeServer.getFontManifest",a.getServerComponentManifest="NextNodeServer.getServerComponentManifest",a.getRequestHandler="NextNodeServer.getRequestHandler",a.renderToHTML="NextNodeServer.renderToHTML",a.renderError="NextNodeServer.renderError",a.renderErrorToHTML="NextNodeServer.renderErrorToHTML",a.render404="NextNodeServer.render404",a.startResponse="NextNodeServer.startResponse",a.route="route",a.onProxyReq="onProxyReq",a.apiResolver="apiResolver",a.internalFetch="internalFetch",a}(f||{}),g=function(a){return a.startServer="startServer.startServer",a}(g||{}),h=function(a){return a.getServerSideProps="Render.getServerSideProps",a.getStaticProps="Render.getStaticProps",a.renderToString="Render.renderToString",a.renderDocument="Render.renderDocument",a.createBodyResult="Render.createBodyResult",a}(h||{}),i=function(a){return a.renderToString="AppRender.renderToString",a.renderToReadableStream="AppRender.renderToReadableStream",a.getBodyResult="AppRender.getBodyResult",a.fetch="AppRender.fetch",a}(i||{}),j=function(a){return a.executeRoute="Router.executeRoute",a}(j||{}),k=function(a){return a.runHandler="Node.runHandler",a}(k||{}),l=function(a){return a.runHandler="AppRouteRouteHandlers.runHandler",a}(l||{}),m=function(a){return a.generateMetadata="ResolveMetadata.generateMetadata",a.generateViewport="ResolveMetadata.generateViewport",a}(m||{}),n=function(a){return a.execute="Middleware.execute",a}(n||{});let o=new Set(["Middleware.execute","BaseServer.handleRequest","Render.getServerSideProps","Render.getStaticProps","AppRender.fetch","AppRender.getBodyResult","Render.renderDocument","Node.runHandler","AppRouteRouteHandlers.runHandler","ResolveMetadata.generateMetadata","ResolveMetadata.generateViewport","NextNodeServer.createComponentTree","NextNodeServer.findPageComponents","NextNodeServer.getLayoutOrPageModule","NextNodeServer.startResponse","NextNodeServer.clientComponentLoading"]),p=new Set(["NextNodeServer.findPageComponents","NextNodeServer.createComponentTree","NextNodeServer.clientComponentLoading"])},44207:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{APP_BUILD_MANIFEST:function(){return u},APP_CLIENT_INTERNALS:function(){return _},APP_PATHS_MANIFEST:function(){return r},APP_PATH_ROUTES_MANIFEST:function(){return s},AdapterOutputType:function(){return f},BARREL_OPTIMIZATION_PREFIX:function(){return S},BLOCKED_PAGES:function(){return N},BUILD_ID_FILE:function(){return M},BUILD_MANIFEST:function(){return t},CLIENT_PUBLIC_FILES_PATH:function(){return O},CLIENT_REFERENCE_MANIFEST:function(){return T},CLIENT_STATIC_FILES_PATH:function(){return P},CLIENT_STATIC_FILES_RUNTIME_AMP:function(){return ab},CLIENT_STATIC_FILES_RUNTIME_MAIN:function(){return Z},CLIENT_STATIC_FILES_RUNTIME_MAIN_APP:function(){return $},CLIENT_STATIC_FILES_RUNTIME_POLYFILLS:function(){return ad},CLIENT_STATIC_FILES_RUNTIME_POLYFILLS_SYMBOL:function(){return ae},CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH:function(){return aa},CLIENT_STATIC_FILES_RUNTIME_WEBPACK:function(){return ac},COMPILER_INDEXES:function(){return g},COMPILER_NAMES:function(){return e},CONFIG_FILES:function(){return L},DEFAULT_RUNTIME_WEBPACK:function(){return af},DEFAULT_SANS_SERIF_FONT:function(){return ak},DEFAULT_SERIF_FONT:function(){return aj},DEV_CLIENT_MIDDLEWARE_MANIFEST:function(){return I},DEV_CLIENT_PAGES_MANIFEST:function(){return E},DYNAMIC_CSS_MANIFEST:function(){return Y},EDGE_RUNTIME_WEBPACK:function(){return ag},EDGE_UNSUPPORTED_NODE_APIS:function(){return ap},EXPORT_DETAIL:function(){return z},EXPORT_MARKER:function(){return y},FUNCTIONS_CONFIG_MANIFEST:function(){return v},IMAGES_MANIFEST:function(){return C},INTERCEPTION_ROUTE_REWRITE_MANIFEST:function(){return X},MIDDLEWARE_BUILD_MANIFEST:function(){return V},MIDDLEWARE_MANIFEST:function(){return F},MIDDLEWARE_REACT_LOADABLE_MANIFEST:function(){return W},MODERN_BROWSERSLIST_TARGET:function(){return d.default},NEXT_BUILTIN_DOCUMENT:function(){return R},NEXT_FONT_MANIFEST:function(){return x},PAGES_MANIFEST:function(){return p},PHASE_DEVELOPMENT_SERVER:function(){return m},PHASE_EXPORT:function(){return j},PHASE_INFO:function(){return o},PHASE_PRODUCTION_BUILD:function(){return k},PHASE_PRODUCTION_SERVER:function(){return l},PHASE_TEST:function(){return n},PRERENDER_MANIFEST:function(){return A},REACT_LOADABLE_MANIFEST:function(){return J},ROUTES_MANIFEST:function(){return B},RSC_MODULE_TYPES:function(){return ao},SERVER_DIRECTORY:function(){return K},SERVER_FILES_MANIFEST:function(){return D},SERVER_PROPS_ID:function(){return ai},SERVER_REFERENCE_MANIFEST:function(){return U},STATIC_PROPS_ID:function(){return ah},STATIC_STATUS_PAGES:function(){return al},STRING_LITERAL_DROP_BUNDLE:function(){return Q},SUBRESOURCE_INTEGRITY_MANIFEST:function(){return w},SYSTEM_ENTRYPOINTS:function(){return aq},TRACE_OUTPUT_VERSION:function(){return am},TURBOPACK_CLIENT_BUILD_MANIFEST:function(){return H},TURBOPACK_CLIENT_MIDDLEWARE_MANIFEST:function(){return G},TURBO_TRACE_DEFAULT_MEMORY_LIMIT:function(){return an},UNDERSCORE_NOT_FOUND_ROUTE:function(){return h},UNDERSCORE_NOT_FOUND_ROUTE_ENTRY:function(){return i},WEBPACK_STATS:function(){return q}});let d=c(44570)._(c(88985)),e={client:"client",server:"server",edgeServer:"edge-server"};var f=function(a){return a.PAGES="PAGES",a.PAGES_API="PAGES_API",a.APP_PAGE="APP_PAGE",a.APP_ROUTE="APP_ROUTE",a.PRERENDER="PRERENDER",a.STATIC_FILE="STATIC_FILE",a.MIDDLEWARE="MIDDLEWARE",a}({});let g={[e.client]:0,[e.server]:1,[e.edgeServer]:2},h="/_not-found",i=""+h+"/page",j="phase-export",k="phase-production-build",l="phase-production-server",m="phase-development-server",n="phase-test",o="phase-info",p="pages-manifest.json",q="webpack-stats.json",r="app-paths-manifest.json",s="app-path-routes-manifest.json",t="build-manifest.json",u="app-build-manifest.json",v="functions-config-manifest.json",w="subresource-integrity-manifest",x="next-font-manifest",y="export-marker.json",z="export-detail.json",A="prerender-manifest.json",B="routes-manifest.json",C="images-manifest.json",D="required-server-files.json",E="_devPagesManifest.json",F="middleware-manifest.json",G="_clientMiddlewareManifest.json",H="client-build-manifest.json",I="_devMiddlewareManifest.json",J="react-loadable-manifest.json",K="server",L=["next.config.js","next.config.mjs","next.config.ts"],M="BUILD_ID",N=["/_document","/_app","/_error"],O="public",P="static",Q="__NEXT_DROP_CLIENT_FILE__",R="__NEXT_BUILTIN_DOCUMENT__",S="__barrel_optimize__",T="client-reference-manifest",U="server-reference-manifest",V="middleware-build-manifest",W="middleware-react-loadable-manifest",X="interception-route-rewrite-manifest",Y="dynamic-css-manifest",Z="main",$=""+Z+"-app",_="app-pages-internals",aa="react-refresh",ab="amp",ac="webpack",ad="polyfills",ae=Symbol(ad),af="webpack-runtime",ag="edge-runtime-webpack",ah="__N_SSG",ai="__N_SSP",aj={name:"Times New Roman",xAvgCharWidth:821,azAvgWidth:854.3953488372093,unitsPerEm:2048},ak={name:"Arial",xAvgCharWidth:904,azAvgWidth:934.5116279069767,unitsPerEm:2048},al=["/500"],am=1,an=6e3,ao={client:"client",server:"server"},ap=["clearImmediate","setImmediate","BroadcastChannel","ByteLengthQueuingStrategy","CompressionStream","CountQueuingStrategy","DecompressionStream","DomException","MessageChannel","MessageEvent","MessagePort","ReadableByteStreamController","ReadableStreamBYOBRequest","ReadableStreamDefaultController","TransformStreamDefaultController","WritableStreamDefaultController"],aq=new Set([Z,aa,ab,$]);("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},44570:(a,b)=>{"use strict";b._=function(a){return a&&a.__esModule?a:{default:a}}},47888:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"isDynamicRoute",{enumerable:!0,get:function(){return g}});let d=c(31119),e=/\/[^/]*\[[^/]+\][^/]*(?=\/|$)/,f=/\/\[[^/]+\](?=\/|$)/;function g(a,b){return(void 0===b&&(b=!0),(0,d.isInterceptionRouteAppPath)(a)&&(a=(0,d.extractInterceptionRouteInformation)(a).interceptedRoute),b)?f.test(a):e.test(a)}},51141:(a,b)=>{"use strict";function c(a){return a.split("/").map(a=>encodeURIComponent(a)).join("/")}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"encodeURIPath",{enumerable:!0,get:function(){return c}})},51940:(a,b,c)=>{"use strict";a.exports=c(60869).vendored.contexts.HtmlContext},52923:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{DecodeError:function(){return o},MiddlewareNotFoundError:function(){return s},MissingStaticPage:function(){return r},NormalizeError:function(){return p},PageNotFoundError:function(){return q},SP:function(){return m},ST:function(){return n},WEB_VITALS:function(){return c},execOnce:function(){return d},getDisplayName:function(){return i},getLocationOrigin:function(){return g},getURL:function(){return h},isAbsoluteUrl:function(){return f},isResSent:function(){return j},loadGetInitialProps:function(){return l},normalizeRepeatedSlashes:function(){return k},stringifyError:function(){return t}});let c=["CLS","FCP","FID","INP","LCP","TTFB"];function d(a){let b,c=!1;return function(){for(var d=arguments.length,e=Array(d),f=0;f<d;f++)e[f]=arguments[f];return c||(c=!0,b=a(...e)),b}}let e=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,f=a=>e.test(a);function g(){let{protocol:a,hostname:b,port:c}=window.location;return a+"//"+b+(c?":"+c:"")}function h(){let{href:a}=window.location,b=g();return a.substring(b.length)}function i(a){return"string"==typeof a?a:a.displayName||a.name||"Unknown"}function j(a){return a.finished||a.headersSent}function k(a){let b=a.split("?");return b[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(b[1]?"?"+b.slice(1).join("?"):"")}async function l(a,b){let c=b.res||b.ctx&&b.ctx.res;if(!a.getInitialProps)return b.ctx&&b.Component?{pageProps:await l(b.Component,b.ctx)}:{};let d=await a.getInitialProps(b);if(c&&j(c))return d;if(!d)throw Object.defineProperty(Error('"'+i(a)+'.getInitialProps()" should resolve to an object. But found "'+d+'" instead.'),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return d}let m="undefined"!=typeof performance,n=m&&["mark","measure","getEntriesByName"].every(a=>"function"==typeof performance[a]);class o extends Error{}class p extends Error{}class q extends Error{constructor(a){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message="Cannot find module for page: "+a}}class r extends Error{constructor(a,b){super(),this.message="Failed to load static file for page: "+a+" "+b}}class s extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function t(a){return JSON.stringify({message:a.message,stack:a.stack})}},57474:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{getSortedRouteObjects:function(){return e},getSortedRoutes:function(){return d}});class c{insert(a){this._insert(a.split("/").filter(Boolean),[],!1)}smoosh(){return this._smoosh()}_smoosh(a){void 0===a&&(a="/");let b=[...this.children.keys()].sort();null!==this.slugName&&b.splice(b.indexOf("[]"),1),null!==this.restSlugName&&b.splice(b.indexOf("[...]"),1),null!==this.optionalRestSlugName&&b.splice(b.indexOf("[[...]]"),1);let c=b.map(b=>this.children.get(b)._smoosh(""+a+b+"/")).reduce((a,b)=>[...a,...b],[]);if(null!==this.slugName&&c.push(...this.children.get("[]")._smoosh(a+"["+this.slugName+"]/")),!this.placeholder){let b="/"===a?"/":a.slice(0,-1);if(null!=this.optionalRestSlugName)throw Object.defineProperty(Error('You cannot define a route with the same specificity as a optional catch-all route ("'+b+'" and "'+b+"[[..."+this.optionalRestSlugName+']]").'),"__NEXT_ERROR_CODE",{value:"E458",enumerable:!1,configurable:!0});c.unshift(b)}return null!==this.restSlugName&&c.push(...this.children.get("[...]")._smoosh(a+"[..."+this.restSlugName+"]/")),null!==this.optionalRestSlugName&&c.push(...this.children.get("[[...]]")._smoosh(a+"[[..."+this.optionalRestSlugName+"]]/")),c}_insert(a,b,d){if(0===a.length){this.placeholder=!1;return}if(d)throw Object.defineProperty(Error("Catch-all must be the last part of the URL."),"__NEXT_ERROR_CODE",{value:"E392",enumerable:!1,configurable:!0});let e=a[0];if(e.startsWith("[")&&e.endsWith("]")){let c=e.slice(1,-1),g=!1;if(c.startsWith("[")&&c.endsWith("]")&&(c=c.slice(1,-1),g=!0),c.startsWith("…"))throw Object.defineProperty(Error("Detected a three-dot character ('…') at ('"+c+"'). Did you mean ('...')?"),"__NEXT_ERROR_CODE",{value:"E147",enumerable:!1,configurable:!0});if(c.startsWith("...")&&(c=c.substring(3),d=!0),c.startsWith("[")||c.endsWith("]"))throw Object.defineProperty(Error("Segment names may not start or end with extra brackets ('"+c+"')."),"__NEXT_ERROR_CODE",{value:"E421",enumerable:!1,configurable:!0});if(c.startsWith("."))throw Object.defineProperty(Error("Segment names may not start with erroneous periods ('"+c+"')."),"__NEXT_ERROR_CODE",{value:"E288",enumerable:!1,configurable:!0});function f(a,c){if(null!==a&&a!==c)throw Object.defineProperty(Error("You cannot use different slug names for the same dynamic path ('"+a+"' !== '"+c+"')."),"__NEXT_ERROR_CODE",{value:"E337",enumerable:!1,configurable:!0});b.forEach(a=>{if(a===c)throw Object.defineProperty(Error('You cannot have the same slug name "'+c+'" repeat within a single dynamic path'),"__NEXT_ERROR_CODE",{value:"E247",enumerable:!1,configurable:!0});if(a.replace(/\W/g,"")===e.replace(/\W/g,""))throw Object.defineProperty(Error('You cannot have the slug names "'+a+'" and "'+c+'" differ only by non-word symbols within a single dynamic path'),"__NEXT_ERROR_CODE",{value:"E499",enumerable:!1,configurable:!0})}),b.push(c)}if(d)if(g){if(null!=this.restSlugName)throw Object.defineProperty(Error('You cannot use both an required and optional catch-all route at the same level ("[...'+this.restSlugName+']" and "'+a[0]+'" ).'),"__NEXT_ERROR_CODE",{value:"E299",enumerable:!1,configurable:!0});f(this.optionalRestSlugName,c),this.optionalRestSlugName=c,e="[[...]]"}else{if(null!=this.optionalRestSlugName)throw Object.defineProperty(Error('You cannot use both an optional and required catch-all route at the same level ("[[...'+this.optionalRestSlugName+']]" and "'+a[0]+'").'),"__NEXT_ERROR_CODE",{value:"E300",enumerable:!1,configurable:!0});f(this.restSlugName,c),this.restSlugName=c,e="[...]"}else{if(g)throw Object.defineProperty(Error('Optional route parameters are not yet supported ("'+a[0]+'").'),"__NEXT_ERROR_CODE",{value:"E435",enumerable:!1,configurable:!0});f(this.slugName,c),this.slugName=c,e="[]"}}this.children.has(e)||this.children.set(e,new c),this.children.get(e)._insert(a.slice(1),b,d)}constructor(){this.placeholder=!0,this.children=new Map,this.slugName=null,this.restSlugName=null,this.optionalRestSlugName=null}}function d(a){let b=new c;return a.forEach(a=>b.insert(a)),b.smoosh()}function e(a,b){let c={},e=[];for(let d=0;d<a.length;d++){let f=b(a[d]);c[f]=d,e[d]=f}return d(e).map(b=>a[c[b]])}},59158:(a,b)=>{"use strict";function c(a){return a.replace(/\\/g,"/")}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"normalizePathSep",{enumerable:!0,get:function(){return c}})},59241:(a,b,c)=>{"use strict";var d,e,f,g,h,i;c.r(b),c.d(b,{DiagConsoleLogger:()=>F,DiagLogLevel:()=>d,INVALID_SPANID:()=>ad,INVALID_SPAN_CONTEXT:()=>af,INVALID_TRACEID:()=>ae,ProxyTracer:()=>ax,ProxyTracerProvider:()=>aA,ROOT_CONTEXT:()=>C,SamplingDecision:()=>g,SpanKind:()=>h,SpanStatusCode:()=>i,TraceFlags:()=>f,ValueType:()=>e,baggageEntryMetadataFromString:()=>z,context:()=>aJ,createContextKey:()=>A,createNoopMeter:()=>Y,createTraceState:()=>aI,default:()=>a1,defaultTextMapGetter:()=>Z,defaultTextMapSetter:()=>$,diag:()=>aK,isSpanContextValid:()=>as,isValidSpanId:()=>ar,isValidTraceId:()=>aq,metrics:()=>aP,propagation:()=>aZ,trace:()=>a0});let j="1.9.1",k=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/,l=function(a){let b=new Set([a]),c=new Set,d=a.match(k);if(!d)return()=>!1;let e={major:+d[1],minor:+d[2],patch:+d[3],prerelease:d[4]};if(null!=e.prerelease)return function(b){return b===a};function f(a){return c.add(a),!1}return function(a){if(b.has(a))return!0;if(c.has(a))return!1;let d=a.match(k);if(!d)return f(a);let g={major:+d[1],minor:+d[2],patch:+d[3],prerelease:d[4]};if(null!=g.prerelease||e.major!==g.major)return f(a);if(0===e.major)return e.minor===g.minor&&e.patch<=g.patch?(b.add(a),!0):f(a);return e.minor<=g.minor?(b.add(a),!0):f(a)}}(j),m=j.split(".")[0],n=Symbol.for(`opentelemetry.js.api.${m}`),o="object"==typeof globalThis?globalThis:"object"==typeof self?self:"object"==typeof window?window:"object"==typeof global?global:{};function p(a,b,c,d=!1){var e;let f=o[n]=null!=(e=o[n])?e:{version:j};if(!d&&f[a]){let b=Error(`@opentelemetry/api: Attempted duplicate registration of API: ${a}`);return c.error(b.stack||b.message),!1}if(f.version!==j){let b=Error(`@opentelemetry/api: Registration of version v${f.version} for ${a} does not match previously registered API v${j}`);return c.error(b.stack||b.message),!1}return f[a]=b,c.debug(`@opentelemetry/api: Registered a global for ${a} v${j}.`),!0}function q(a){var b,c;let d=null==(b=o[n])?void 0:b.version;if(d&&l(d))return null==(c=o[n])?void 0:c[a]}function r(a,b){b.debug(`@opentelemetry/api: Unregistering a global for ${a} v${j}.`);let c=o[n];c&&delete c[a]}class s{constructor(a){this._namespace=a.namespace||"DiagComponentLogger"}debug(...a){return t("debug",this._namespace,a)}error(...a){return t("error",this._namespace,a)}info(...a){return t("info",this._namespace,a)}warn(...a){return t("warn",this._namespace,a)}verbose(...a){return t("verbose",this._namespace,a)}}function t(a,b,c){let d=q("diag");if(d)return d[a](b,...c)}!function(a){a[a.NONE=0]="NONE",a[a.ERROR=30]="ERROR",a[a.WARN=50]="WARN",a[a.INFO=60]="INFO",a[a.DEBUG=70]="DEBUG",a[a.VERBOSE=80]="VERBOSE",a[a.ALL=9999]="ALL"}(d||(d={}));class u{static instance(){return this._instance||(this._instance=new u),this._instance}constructor(){function a(a){return function(...b){let c=q("diag");if(c)return c[a](...b)}}let b=this,c=(a,c={logLevel:d.INFO})=>{var e,f,g;if(a===b){let a=Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return b.error(null!=(e=a.stack)?e:a.message),!1}"number"==typeof c&&(c={logLevel:c});let h=q("diag"),i=function(a,b){function c(c,d){let e=b[c];return"function"==typeof e&&a>=d?e.bind(b):function(){}}return a<d.NONE?a=d.NONE:a>d.ALL&&(a=d.ALL),b=b||{},{error:c("error",d.ERROR),warn:c("warn",d.WARN),info:c("info",d.INFO),debug:c("debug",d.DEBUG),verbose:c("verbose",d.VERBOSE)}}(null!=(f=c.logLevel)?f:d.INFO,a);if(h&&!c.suppressOverrideMessage){let a=null!=(g=Error().stack)?g:"<failed to generate stacktrace>";h.warn(`Current logger will be overwritten from ${a}`),i.warn(`Current logger will overwrite one already registered from ${a}`)}return p("diag",i,b,!0)};b.setLogger=c,b.disable=()=>{r("diag",b)},b.createComponentLogger=a=>new s(a),b.verbose=a("verbose"),b.debug=a("debug"),b.info=a("info"),b.warn=a("warn"),b.error=a("error")}}class v{constructor(a){this._entries=a?new Map(a):new Map}getEntry(a){let b=this._entries.get(a);if(b)return Object.assign({},b)}getAllEntries(){return Array.from(this._entries.entries())}setEntry(a,b){let c=new v(this._entries);return c._entries.set(a,b),c}removeEntry(a){let b=new v(this._entries);return b._entries.delete(a),b}removeEntries(...a){let b=new v(this._entries);for(let c of a)b._entries.delete(c);return b}clear(){return new v}}let w=Symbol("BaggageEntryMetadata"),x=u.instance();function y(a={}){return new v(new Map(Object.entries(a)))}function z(a){return"string"!=typeof a&&(x.error(`Cannot create baggage metadata from unknown type: ${typeof a}`),a=""),{__TYPE__:w,toString:()=>a}}function A(a){return Symbol.for(a)}class B{constructor(a){let b=this;b._currentContext=a?new Map(a):new Map,b.getValue=a=>b._currentContext.get(a),b.setValue=(a,c)=>{let d=new B(b._currentContext);return d._currentContext.set(a,c),d},b.deleteValue=a=>{let c=new B(b._currentContext);return c._currentContext.delete(a),c}}}let C=new B,D=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}],E={};if("undefined"!=typeof console)for(let a of["error","warn","info","debug","trace","log"])"function"==typeof console[a]&&(E[a]=console[a]);class F{constructor(){for(let a=0;a<D.length;a++)this[D[a].n]=function(a){return function(...b){let c=E[a];if("function"!=typeof c&&(c=E.log),"function"!=typeof c&&console&&"function"!=typeof(c=console[a])&&(c=console.log),"function"==typeof c)return c.apply(console,b)}}(D[a].c)}}class G{constructor(){}createGauge(a,b){return S}createHistogram(a,b){return T}createCounter(a,b){return R}createUpDownCounter(a,b){return U}createObservableGauge(a,b){return W}createObservableCounter(a,b){return V}createObservableUpDownCounter(a,b){return X}addBatchObservableCallback(a,b){}removeBatchObservableCallback(a){}}class H{}class I extends H{add(a,b){}}class J extends H{add(a,b){}}class K extends H{record(a,b){}}class L extends H{record(a,b){}}class M{addCallback(a){}removeCallback(a){}}class N extends M{}class O extends M{}class P extends M{}let Q=new G,R=new I,S=new K,T=new L,U=new J,V=new N,W=new O,X=new P;function Y(){return Q}!function(a){a[a.INT=0]="INT",a[a.DOUBLE=1]="DOUBLE"}(e||(e={}));let Z={get(a,b){if(null!=a)return a[b]},keys:a=>null==a?[]:Object.keys(a)},$={set(a,b,c){null!=a&&(a[b]=c)}};class _{active(){return C}with(a,b,c,...d){return b.call(c,...d)}bind(a,b){return b}enable(){return this}disable(){return this}}let aa="context",ab=new _;class ac{constructor(){}static getInstance(){return this._instance||(this._instance=new ac),this._instance}setGlobalContextManager(a){return p(aa,a,u.instance())}active(){return this._getContextManager().active()}with(a,b,c,...d){return this._getContextManager().with(a,b,c,...d)}bind(a,b){return this._getContextManager().bind(a,b)}_getContextManager(){return q(aa)||ab}disable(){this._getContextManager().disable(),r(aa,u.instance())}}!function(a){a[a.NONE=0]="NONE",a[a.SAMPLED=1]="SAMPLED"}(f||(f={}));let ad="0000000000000000",ae="00000000000000000000000000000000",af={traceId:ae,spanId:ad,traceFlags:f.NONE};class ag{constructor(a=af){this._spanContext=a}spanContext(){return this._spanContext}setAttribute(a,b){return this}setAttributes(a){return this}addEvent(a,b){return this}addLink(a){return this}addLinks(a){return this}setStatus(a){return this}updateName(a){return this}end(a){}isRecording(){return!1}recordException(a,b){}}let ah=A("OpenTelemetry Context Key SPAN");function ai(a){return a.getValue(ah)||void 0}function aj(){return ai(ac.getInstance().active())}function ak(a,b){return a.setValue(ah,b)}function al(a){return a.deleteValue(ah)}function am(a,b){return ak(a,new ag(b))}function an(a){var b;return null==(b=ai(a))?void 0:b.spanContext()}let ao=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1]);function ap(a,b){if("string"!=typeof a||a.length!==b)return!1;let c=0;for(let b=0;b<a.length;b+=4)c+=(0|ao[a.charCodeAt(b)])+(0|ao[a.charCodeAt(b+1)])+(0|ao[a.charCodeAt(b+2)])+(0|ao[a.charCodeAt(b+3)]);return c===b}function aq(a){return ap(a,32)&&a!==ae}function ar(a){return ap(a,16)&&a!==ad}function as(a){return aq(a.traceId)&&ar(a.spanId)}function at(a){return new ag(a)}let au=ac.getInstance();class av{startSpan(a,b,c=au.active()){var d;if(null==b?void 0:b.root)return new ag;let e=c&&an(c);return null!==(d=e)&&"object"==typeof d&&"spanId"in d&&"string"==typeof d.spanId&&"traceId"in d&&"string"==typeof d.traceId&&"traceFlags"in d&&"number"==typeof d.traceFlags&&as(e)?new ag(e):new ag}startActiveSpan(a,b,c,d){let e,f,g;if(arguments.length<2)return;2==arguments.length?g=b:3==arguments.length?(e=b,g=c):(e=b,f=c,g=d);let h=null!=f?f:au.active(),i=this.startSpan(a,e,h),j=ak(h,i);return au.with(j,g,void 0,i)}}let aw=new av;class ax{constructor(a,b,c,d){this._provider=a,this.name=b,this.version=c,this.options=d}startSpan(a,b,c){return this._getTracer().startSpan(a,b,c)}startActiveSpan(a,b,c,d){let e=this._getTracer();return Reflect.apply(e.startActiveSpan,e,arguments)}_getTracer(){if(this._delegate)return this._delegate;let a=this._provider.getDelegateTracer(this.name,this.version,this.options);return a?(this._delegate=a,this._delegate):aw}}class ay{getTracer(a,b,c){return new av}}let az=new ay;class aA{getTracer(a,b,c){var d;return null!=(d=this.getDelegateTracer(a,b,c))?d:new ax(this,a,b,c)}getDelegate(){var a;return null!=(a=this._delegate)?a:az}setDelegate(a){this._delegate=a}getDelegateTracer(a,b,c){var d;return null==(d=this._delegate)?void 0:d.getTracer(a,b,c)}}!function(a){a[a.NOT_RECORD=0]="NOT_RECORD",a[a.RECORD=1]="RECORD",a[a.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"}(g||(g={})),function(a){a[a.INTERNAL=0]="INTERNAL",a[a.SERVER=1]="SERVER",a[a.CLIENT=2]="CLIENT",a[a.PRODUCER=3]="PRODUCER",a[a.CONSUMER=4]="CONSUMER"}(h||(h={})),function(a){a[a.UNSET=0]="UNSET",a[a.OK=1]="OK",a[a.ERROR=2]="ERROR"}(i||(i={}));let aB="[_0-9a-z-*/]",aC=`[a-z]${aB}{0,255}`,aD=`[a-z0-9]${aB}{0,240}@[a-z]${aB}{0,13}`,aE=RegExp(`^(?:${aC}|${aD})$`),aF=/^[ -~]{0,255}[!-~]$/,aG=/,|=/;class aH{constructor(a){this._internalState=new Map,a&&this._parse(a)}set(a,b){let c=this._clone();return c._internalState.has(a)&&c._internalState.delete(a),c._internalState.set(a,b),c}unset(a){let b=this._clone();return b._internalState.delete(a),b}get(a){return this._internalState.get(a)}serialize(){return Array.from(this._internalState.keys()).reduceRight((a,b)=>(a.push(b+"="+this.get(b)),a),[]).join(",")}_parse(a){!(a.length>512)&&(this._internalState=a.split(",").reduceRight((a,b)=>{let c=b.trim(),d=c.indexOf("=");if(-1!==d){let e=c.slice(0,d),f=c.slice(d+1,b.length);aE.test(e)&&aF.test(f)&&!aG.test(f)&&a.set(e,f)}return a},new Map),this._internalState.size>32&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,32))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let a=new aH;return a._internalState=new Map(this._internalState),a}}function aI(a){return new aH(a)}let aJ=ac.getInstance(),aK=u.instance();class aL{getMeter(a,b,c){return Q}}let aM=new aL,aN="metrics";class aO{constructor(){}static getInstance(){return this._instance||(this._instance=new aO),this._instance}setGlobalMeterProvider(a){return p(aN,a,u.instance())}getMeterProvider(){return q(aN)||aM}getMeter(a,b,c){return this.getMeterProvider().getMeter(a,b,c)}disable(){r(aN,u.instance())}}let aP=aO.getInstance();class aQ{inject(a,b){}extract(a,b){return a}fields(){return[]}}let aR=A("OpenTelemetry Baggage Key");function aS(a){return a.getValue(aR)||void 0}function aT(){return aS(ac.getInstance().active())}function aU(a,b){return a.setValue(aR,b)}function aV(a){return a.deleteValue(aR)}let aW="propagation",aX=new aQ;class aY{constructor(){this.createBaggage=y,this.getBaggage=aS,this.getActiveBaggage=aT,this.setBaggage=aU,this.deleteBaggage=aV}static getInstance(){return this._instance||(this._instance=new aY),this._instance}setGlobalPropagator(a){return p(aW,a,u.instance())}inject(a,b,c=$){return this._getGlobalPropagator().inject(a,b,c)}extract(a,b,c=Z){return this._getGlobalPropagator().extract(a,b,c)}fields(){return this._getGlobalPropagator().fields()}disable(){r(aW,u.instance())}_getGlobalPropagator(){return q(aW)||aX}}let aZ=aY.getInstance(),a$="trace";class a_{constructor(){this._proxyTracerProvider=new aA,this.wrapSpanContext=at,this.isSpanContextValid=as,this.deleteSpan=al,this.getSpan=ai,this.getActiveSpan=aj,this.getSpanContext=an,this.setSpan=ak,this.setSpanContext=am}static getInstance(){return this._instance||(this._instance=new a_),this._instance}setGlobalTracerProvider(a){let b=p(a$,this._proxyTracerProvider,u.instance());return b&&this._proxyTracerProvider.setDelegate(a),b}getTracerProvider(){return q(a$)||this._proxyTracerProvider}getTracer(a,b){return this.getTracerProvider().getTracer(a,b)}disable(){r(a$,u.instance()),this._proxyTracerProvider=new aA}}let a0=a_.getInstance(),a1={context:aJ,diag:aK,metrics:aP,propagation:aZ,trace:a0}},60869:(a,b,c)=>{"use strict";a.exports=c(40361)},67294:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{cleanAmpPath:function(){return f},debounce:function(){return g},isBlockedPage:function(){return e}});let d=c(44207);function e(a){return d.BLOCKED_PAGES.includes(a)}function f(a){return a.match(/\?amp=(y|yes|true|1)/)&&(a=a.replace(/\?amp=(y|yes|true|1)&?/,"?")),a.match(/&amp=(y|yes|true|1)/)&&(a=a.replace(/&amp=(y|yes|true|1)/,"")),a=a.replace(/\?$/,"")}function g(a,b,c=1/0){let d,e,f,h=0,i=0;function j(){let g=Date.now(),k=i+b-g;k<=0||h+c>=g?(d=void 0,a.apply(f,e)):d=setTimeout(j,k)}return function(...a){e=a,f=this,i=Date.now(),void 0===d&&(h=i,d=setTimeout(j,b))}}},70706:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{normalizeAppPath:function(){return f},normalizeRscURL:function(){return g}});let d=c(97301),e=c(78679);function f(a){return(0,d.ensureLeadingSlash)(a.split("/").reduce((a,b,c,d)=>!b||(0,e.isGroupSegment)(b)||"@"===b[0]||("page"===b||"route"===b)&&c===d.length-1?a:a+"/"+b,""))}function g(a){return a.replace(/\.rsc($|\?)/,"$1")}},78162:(a,b,c)=>{"use strict";let d;Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{BubbledError:function(){return n},SpanKind:function(){return l},SpanStatusCode:function(){return k},getTracer:function(){return v},isBubbledError:function(){return o}});let e=c(39276),f=c(8740),g=process.env.NEXT_OTEL_PERFORMANCE_PREFIX;try{d=c(59241)}catch(a){d=c(21242)}let{context:h,propagation:i,trace:j,SpanStatusCode:k,SpanKind:l,ROOT_CONTEXT:m}=d;class n extends Error{constructor(a,b){super(),this.bubble=a,this.result=b}}function o(a){return"object"==typeof a&&null!==a&&a instanceof n}let p=(a,b)=>{o(b)&&b.bubble?a.setAttribute("next.bubble",!0):(b&&(a.recordException(b),a.setAttribute("error.type",b.name)),a.setStatus({code:k.ERROR,message:null==b?void 0:b.message})),a.end()},q=new Map,r=d.createContextKey("next.rootSpanId"),s=0,t={set(a,b,c){a.push({key:b,value:c})}};class u{getTracerInstance(){return j.getTracer("next.js","0.0.1")}getContext(){return h}getTracePropagationData(){let a=h.active(),b=[];return i.inject(a,b,t),b}getActiveScopeSpan(){return j.getSpan(null==h?void 0:h.active())}withPropagatedContext(a,b,c){let d=h.active();if(j.getSpanContext(d))return b();let e=i.extract(d,a,c);return h.with(e,b)}trace(...a){var b;let[c,d,i]=a,{fn:k,options:l}="function"==typeof d?{fn:d,options:{}}:{fn:i,options:{...d}},n=l.spanName??c;if(!e.NextVanillaSpanAllowlist.has(c)&&"1"!==process.env.NEXT_OTEL_VERBOSE||l.hideSpan)return k();let o=this.getSpanContext((null==l?void 0:l.parentSpan)??this.getActiveScopeSpan()),t=!1;o?(null==(b=j.getSpanContext(o))?void 0:b.isRemote)&&(t=!0):(o=(null==h?void 0:h.active())??m,t=!0);let u=s++;return l.attributes={"next.span_name":n,"next.span_type":c,...l.attributes},h.with(o.setValue(r,u),()=>this.getTracerInstance().startActiveSpan(n,l,a=>{let b;g&&c&&e.LogSpanAllowList.has(c)&&(b="performance"in globalThis&&"measure"in performance?globalThis.performance.now():void 0);let d=!1,h=()=>{!d&&(d=!0,q.delete(u),b&&performance.measure(`${g}:next-${(c.split(".").pop()||"").replace(/[A-Z]/g,a=>"-"+a.toLowerCase())}`,{start:b,end:performance.now()}))};if(t&&q.set(u,new Map(Object.entries(l.attributes??{}))),k.length>1)try{return k(a,b=>p(a,b))}catch(b){throw p(a,b),b}finally{h()}try{let b=k(a);if((0,f.isThenable)(b))return b.then(b=>(a.end(),b)).catch(b=>{throw p(a,b),b}).finally(h);return a.end(),h(),b}catch(b){throw p(a,b),h(),b}}))}wrap(...a){let b=this,[c,d,f]=3===a.length?a:[a[0],{},a[1]];return e.NextVanillaSpanAllowlist.has(c)||"1"===process.env.NEXT_OTEL_VERBOSE?function(){let a=d;"function"==typeof a&&"function"==typeof f&&(a=a.apply(this,arguments));let e=arguments.length-1,g=arguments[e];if("function"!=typeof g)return b.trace(c,a,()=>f.apply(this,arguments));{let d=b.getContext().bind(h.active(),g);return b.trace(c,a,(a,b)=>(arguments[e]=function(a){return null==b||b(a),d.apply(this,arguments)},f.apply(this,arguments)))}}:f}startSpan(...a){let[b,c]=a,d=this.getSpanContext((null==c?void 0:c.parentSpan)??this.getActiveScopeSpan());return this.getTracerInstance().startSpan(b,c,d)}getSpanContext(a){return a?j.setSpan(h.active(),a):void 0}getRootSpanAttributes(){let a=h.active().getValue(r);return q.get(a)}setRootSpanAttribute(a,b){let c=h.active().getValue(r),d=q.get(c);d&&d.set(a,b)}}let v=(()=>{let a=new u;return()=>a})()},78679:(a,b)=>{"use strict";function c(a){return"("===a[0]&&a.endsWith(")")}function d(a){return a.startsWith("@")&&"@children"!==a}function e(a,b){if(a.includes(f)){let a=JSON.stringify(b);return"{}"!==a?f+"?"+a:f}return a}Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{DEFAULT_SEGMENT_KEY:function(){return g},PAGE_SEGMENT_KEY:function(){return f},addSearchParamsIfPageSegment:function(){return e},isGroupSegment:function(){return c},isParallelRouteSegment:function(){return d}});let f="__PAGE__",g="__DEFAULT__"},83811:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{Head:function(){return v},Html:function(){return x},Main:function(){return y},NextScript:function(){return w},default:function(){return z}});let d=c(8732),e=function(a,b){if(a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=n(b);if(c&&c.has(a))return c.get(a);var d={__proto__:null},e=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var f in a)if("default"!==f&&Object.prototype.hasOwnProperty.call(a,f)){var g=e?Object.getOwnPropertyDescriptor(a,f):null;g&&(g.get||g.set)?Object.defineProperty(d,f,g):d[f]=a[f]}return d.default=a,c&&c.set(a,d),d}(c(82015)),f=c(44207),g=c(38485),h=c(84394),i=function(a){return a&&a.__esModule?a:{default:a}}(c(28260)),j=c(51940),k=c(51141),l=c(78162),m=c(89336);function n(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(n=function(a){return a?c:b})(a)}let o=new Set;function p(a,b,c){let d=(0,g.getPageFiles)(a,"/_app"),e=c?[]:(0,g.getPageFiles)(a,b);return{sharedFiles:d,pageFiles:e,allFiles:[...new Set([...d,...e])]}}function q(a,b){let{assetPrefix:c,buildManifest:e,assetQueryString:f,disableOptimizedLoading:g,crossOrigin:h}=a;return e.polyfillFiles.filter(a=>a.endsWith(".js")&&!a.endsWith(".module.js")).map(a=>(0,d.jsx)("script",{defer:!g,nonce:b.nonce,crossOrigin:b.crossOrigin||h,noModule:!0,src:`${c}/_next/${(0,k.encodeURIPath)(a)}${f}`},a))}function r({styles:a}){if(!a)return null;let b=Array.isArray(a)?a:[];if(a.props&&Array.isArray(a.props.children)){let c=a=>{var b,c;return null==a||null==(c=a.props)||null==(b=c.dangerouslySetInnerHTML)?void 0:b.__html};a.props.children.forEach(a=>{Array.isArray(a)?a.forEach(a=>c(a)&&b.push(a)):c(a)&&b.push(a)})}return(0,d.jsx)("style",{"amp-custom":"",dangerouslySetInnerHTML:{__html:b.map(a=>a.props.dangerouslySetInnerHTML.__html).join("").replace(/\/\*# sourceMappingURL=.*\*\//g,"").replace(/\/\*@ sourceURL=.*?\*\//g,"")}})}function s(a,b,c){let{dynamicImports:e,assetPrefix:f,isDevelopment:g,assetQueryString:h,disableOptimizedLoading:i,crossOrigin:j}=a;return e.map(a=>!a.endsWith(".js")||c.allFiles.includes(a)?null:(0,d.jsx)("script",{async:!g&&i,defer:!i,src:`${f}/_next/${(0,k.encodeURIPath)(a)}${h}`,nonce:b.nonce,crossOrigin:b.crossOrigin||j},a))}function t(a,b,c){var e;let{assetPrefix:f,buildManifest:g,isDevelopment:h,assetQueryString:i,disableOptimizedLoading:j,crossOrigin:l}=a;return[...c.allFiles.filter(a=>a.endsWith(".js")),...null==(e=g.lowPriorityFiles)?void 0:e.filter(a=>a.endsWith(".js"))].map(a=>(0,d.jsx)("script",{src:`${f}/_next/${(0,k.encodeURIPath)(a)}${i}`,nonce:b.nonce,async:!h&&j,defer:!j,crossOrigin:b.crossOrigin||l},a))}function u(a,b){let{scriptLoader:c,disableOptimizedLoading:f,crossOrigin:g}=a,h=function(a,b){let{assetPrefix:c,scriptLoader:f,crossOrigin:g,nextScriptWorkers:h}=a;if(!h)return null;try{let{partytownSnippet:a}=require("@builder.io/partytown/integration"),h=(Array.isArray(b.children)?b.children:[b.children]).find(a=>{var b,c;return!!a&&!!a.props&&(null==a||null==(c=a.props)||null==(b=c.dangerouslySetInnerHTML)?void 0:b.__html.length)&&"data-partytown-config"in a.props});return(0,d.jsxs)(d.Fragment,{children:[!h&&(0,d.jsx)("script",{"data-partytown-config":"",dangerouslySetInnerHTML:{__html:`
2
+ partytown = {
3
+ lib: "${c}/_next/static/~partytown/"
4
+ };
5
+ `}}),(0,d.jsx)("script",{"data-partytown":"",dangerouslySetInnerHTML:{__html:a()}}),(f.worker||[]).map((a,c)=>{let{strategy:d,src:f,children:h,dangerouslySetInnerHTML:i,...j}=a,k={};if(f)k.src=f;else if(i&&i.__html)k.dangerouslySetInnerHTML={__html:i.__html};else if(h)k.dangerouslySetInnerHTML={__html:"string"==typeof h?h:Array.isArray(h)?h.join(""):""};else throw Object.defineProperty(Error("Invalid usage of next/script. Did you forget to include a src attribute or an inline script? https://nextjs.org/docs/messages/invalid-script"),"__NEXT_ERROR_CODE",{value:"E82",enumerable:!1,configurable:!0});return(0,e.createElement)("script",{...k,...j,type:"text/partytown",key:f||c,nonce:b.nonce,"data-nscript":"worker",crossOrigin:b.crossOrigin||g})})]})}catch(a){return(0,i.default)(a)&&"MODULE_NOT_FOUND"!==a.code&&console.warn(`Warning: ${a.message}`),null}}(a,b),j=(c.beforeInteractive||[]).filter(a=>a.src).map((a,c)=>{let{strategy:d,...h}=a;return(0,e.createElement)("script",{...h,key:h.src||c,defer:h.defer??!f,nonce:h.nonce||b.nonce,"data-nscript":"beforeInteractive",crossOrigin:b.crossOrigin||g})});return(0,d.jsxs)(d.Fragment,{children:[h,j]})}class v extends e.default.Component{static #a=this.contextType=j.HtmlContext;getCssLinks(a){let{assetPrefix:b,assetQueryString:c,dynamicImports:e,dynamicCssManifest:f,crossOrigin:g,optimizeCss:h}=this.context,i=a.allFiles.filter(a=>a.endsWith(".css")),j=new Set(a.sharedFiles),l=new Set([]),m=Array.from(new Set(e.filter(a=>a.endsWith(".css"))));if(m.length){let a=new Set(i);l=new Set(m=m.filter(b=>!(a.has(b)||j.has(b)))),i.push(...m)}let n=[];return i.forEach(a=>{let e=j.has(a),i=l.has(a),m=f.has(a);h||n.push((0,d.jsx)("link",{nonce:this.props.nonce,rel:"preload",href:`${b}/_next/${(0,k.encodeURIPath)(a)}${c}`,as:"style",crossOrigin:this.props.crossOrigin||g},`${a}-preload`)),n.push((0,d.jsx)("link",{nonce:this.props.nonce,rel:"stylesheet",href:`${b}/_next/${(0,k.encodeURIPath)(a)}${c}`,crossOrigin:this.props.crossOrigin||g,"data-n-g":i?void 0:e?"":void 0,"data-n-p":e||i||m?void 0:""},a))}),0===n.length?null:n}getPreloadDynamicChunks(){let{dynamicImports:a,assetPrefix:b,assetQueryString:c,crossOrigin:e}=this.context;return a.map(a=>a.endsWith(".js")?(0,d.jsx)("link",{rel:"preload",href:`${b}/_next/${(0,k.encodeURIPath)(a)}${c}`,as:"script",nonce:this.props.nonce,crossOrigin:this.props.crossOrigin||e},a):null).filter(Boolean)}getPreloadMainLinks(a){let{assetPrefix:b,assetQueryString:c,scriptLoader:e,crossOrigin:f}=this.context,g=a.allFiles.filter(a=>a.endsWith(".js"));return[...(e.beforeInteractive||[]).map(a=>(0,d.jsx)("link",{nonce:this.props.nonce,rel:"preload",href:a.src,as:"script",crossOrigin:this.props.crossOrigin||f},a.src)),...g.map(a=>(0,d.jsx)("link",{nonce:this.props.nonce,rel:"preload",href:`${b}/_next/${(0,k.encodeURIPath)(a)}${c}`,as:"script",crossOrigin:this.props.crossOrigin||f},a))]}getBeforeInteractiveInlineScripts(){let{scriptLoader:a}=this.context,{nonce:b,crossOrigin:c}=this.props;return(a.beforeInteractive||[]).filter(a=>!a.src&&(a.dangerouslySetInnerHTML||a.children)).map((a,d)=>{let{strategy:f,children:g,dangerouslySetInnerHTML:h,src:i,...j}=a,k="";return h&&h.__html?k=h.__html:g&&(k="string"==typeof g?g:Array.isArray(g)?g.join(""):""),(0,e.createElement)("script",{...j,dangerouslySetInnerHTML:{__html:k},key:j.id||d,nonce:b,"data-nscript":"beforeInteractive",crossOrigin:c||void 0})})}getDynamicChunks(a){return s(this.context,this.props,a)}getPreNextScripts(){return u(this.context,this.props)}getScripts(a){return t(this.context,this.props,a)}getPolyfillScripts(){return q(this.context,this.props)}render(){let{styles:a,ampPath:b,inAmpMode:f,hybridAmp:g,canonicalBase:h,__NEXT_DATA__:i,dangerousAsPath:j,headTags:n,unstable_runtimeJS:o,unstable_JsPreload:q,disableOptimizedLoading:s,optimizeCss:t,assetPrefix:u,nextFontManifest:v}=this.context,w=!1===o,x=!1===q||!s;this.context.docComponentsRendered.Head=!0;let{head:y}=this.context,z=[],A=[];y&&(y.forEach(a=>{a&&"link"===a.type&&"preload"===a.props.rel&&"style"===a.props.as?z.push(a):a&&A.push(e.default.cloneElement(a,{"data-next-head":""}))}),y=z.concat(A));let B=e.default.Children.toArray(this.props.children).filter(Boolean),C=!1,D=!1;y=e.default.Children.map(y||[],a=>{if(!a)return a;let{type:b,props:c}=a;if(f){let d="";if("meta"===b&&"viewport"===c.name?d='name="viewport"':"link"===b&&"canonical"===c.rel?D=!0:"script"===b&&(c.src&&-1>c.src.indexOf("ampproject")||c.dangerouslySetInnerHTML&&(!c.type||"text/javascript"===c.type))&&(d="<script",Object.keys(c).forEach(a=>{d+=` ${a}="${c[a]}"`}),d+="/>"),d)return console.warn(`Found conflicting amp tag "${a.type}" with conflicting prop ${d} in ${i.page}. https://nextjs.org/docs/messages/conflicting-amp-tag`),null}else"link"===b&&"amphtml"===c.rel&&(C=!0);return a});let E=p(this.context.buildManifest,this.context.__NEXT_DATA__.page,f),F=function(a,b,c=""){if(!a)return{preconnect:null,preload:null};let e=a.pages["/_app"],f=a.pages[b],g=Array.from(new Set([...e??[],...f??[]]));return{preconnect:0===g.length&&(e||f)?(0,d.jsx)("link",{"data-next-font":a.pagesUsingSizeAdjust?"size-adjust":"",rel:"preconnect",href:"/",crossOrigin:"anonymous"}):null,preload:g?g.map(a=>{let b=/\.(woff|woff2|eot|ttf|otf)$/.exec(a)[1];return(0,d.jsx)("link",{rel:"preload",href:`${c}/_next/${(0,k.encodeURIPath)(a)}`,as:"font",type:`font/${b}`,crossOrigin:"anonymous","data-next-font":a.includes("-s")?"size-adjust":""},a)}):null}}(v,j,u),G=((0,m.getTracedMetadata)((0,l.getTracer)().getTracePropagationData(),this.context.experimentalClientTraceMetadata)||[]).map(({key:a,value:b},c)=>(0,d.jsx)("meta",{name:a,content:b},`next-trace-data-${c}`));return(0,d.jsxs)("head",{...function(a){let{crossOrigin:b,nonce:c,...d}=a;return d}(this.props),children:[this.context.isDevelopment&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("style",{"data-next-hide-fouc":!0,"data-ampdevmode":f?"true":void 0,dangerouslySetInnerHTML:{__html:"body{display:none}"}}),(0,d.jsx)("noscript",{"data-next-hide-fouc":!0,"data-ampdevmode":f?"true":void 0,children:(0,d.jsx)("style",{dangerouslySetInnerHTML:{__html:"body{display:block}"}})})]}),y,B,F.preconnect,F.preload,f&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("meta",{name:"viewport",content:"width=device-width,minimum-scale=1,initial-scale=1"}),!D&&(0,d.jsx)("link",{rel:"canonical",href:h+c(67294).cleanAmpPath(j)}),(0,d.jsx)("link",{rel:"preload",as:"script",href:"https://cdn.ampproject.org/v0.js"}),(0,d.jsx)(r,{styles:a}),(0,d.jsx)("style",{"amp-boilerplate":"",dangerouslySetInnerHTML:{__html:"body{-webkit-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-moz-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:-amp-start 8s steps(1,end) 0s 1 normal both;animation:-amp-start 8s steps(1,end) 0s 1 normal both}@-webkit-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}"}}),(0,d.jsx)("noscript",{children:(0,d.jsx)("style",{"amp-boilerplate":"",dangerouslySetInnerHTML:{__html:"body{-webkit-animation:none;-moz-animation:none;-ms-animation:none;animation:none}"}})}),(0,d.jsx)("script",{async:!0,src:"https://cdn.ampproject.org/v0.js"})]}),!f&&(0,d.jsxs)(d.Fragment,{children:[!C&&g&&(0,d.jsx)("link",{rel:"amphtml",href:h+(b||`${j}${j.includes("?")?"&":"?"}amp=1`)}),this.getBeforeInteractiveInlineScripts(),!t&&this.getCssLinks(E),!t&&(0,d.jsx)("noscript",{"data-n-css":this.props.nonce??""}),!w&&!x&&this.getPreloadDynamicChunks(),!w&&!x&&this.getPreloadMainLinks(E),!s&&!w&&this.getPolyfillScripts(),!s&&!w&&this.getPreNextScripts(),!s&&!w&&this.getDynamicChunks(E),!s&&!w&&this.getScripts(E),t&&this.getCssLinks(E),t&&(0,d.jsx)("noscript",{"data-n-css":this.props.nonce??""}),this.context.isDevelopment&&(0,d.jsx)("noscript",{id:"__next_css__DO_NOT_USE__"}),G,a||null]}),e.default.createElement(e.default.Fragment,{},...n||[])]})}}class w extends e.default.Component{static #a=this.contextType=j.HtmlContext;getDynamicChunks(a){return s(this.context,this.props,a)}getPreNextScripts(){return u(this.context,this.props)}getScripts(a){return t(this.context,this.props,a)}getPolyfillScripts(){return q(this.context,this.props)}static getInlineScriptSource(a){let{__NEXT_DATA__:b,largePageDataBytes:d}=a;try{let e=JSON.stringify(b);if(o.has(b.page))return(0,h.htmlEscapeJsonString)(e);let f=Buffer.from(e).byteLength,g=c(95063).A;return d&&f>d&&(o.add(b.page),console.warn(`Warning: data for page "${b.page}"${b.page===a.dangerousAsPath?"":` (path "${a.dangerousAsPath}")`} is ${g(f)} which exceeds the threshold of ${g(d)}, this amount of data can reduce performance.
6
+ See more info here: https://nextjs.org/docs/messages/large-page-data`)),(0,h.htmlEscapeJsonString)(e)}catch(a){if((0,i.default)(a)&&-1!==a.message.indexOf("circular structure"))throw Object.defineProperty(Error(`Circular structure in "getInitialProps" result of page "${b.page}". https://nextjs.org/docs/messages/circular-structure`),"__NEXT_ERROR_CODE",{value:"E490",enumerable:!1,configurable:!0});throw a}}render(){let{assetPrefix:a,inAmpMode:b,buildManifest:c,unstable_runtimeJS:e,docComponentsRendered:f,assetQueryString:g,disableOptimizedLoading:h,crossOrigin:i}=this.context,j=!1===e;if(f.NextScript=!0,b)return null;let l=p(this.context.buildManifest,this.context.__NEXT_DATA__.page,b);return(0,d.jsxs)(d.Fragment,{children:[!j&&c.devFiles?c.devFiles.map(b=>(0,d.jsx)("script",{src:`${a}/_next/${(0,k.encodeURIPath)(b)}${g}`,nonce:this.props.nonce,crossOrigin:this.props.crossOrigin||i},b)):null,j?null:(0,d.jsx)("script",{id:"__NEXT_DATA__",type:"application/json",nonce:this.props.nonce,crossOrigin:this.props.crossOrigin||i,dangerouslySetInnerHTML:{__html:w.getInlineScriptSource(this.context)}}),h&&!j&&this.getPolyfillScripts(),h&&!j&&this.getPreNextScripts(),h&&!j&&this.getDynamicChunks(l),h&&!j&&this.getScripts(l)]})}}function x(a){let{inAmpMode:b,docComponentsRendered:c,locale:f,scriptLoader:g,__NEXT_DATA__:h}=(0,j.useHtmlContext)();return c.Html=!0,!function(a,b,c){var d,f,g,h;if(!c.children)return;let i=[],j=Array.isArray(c.children)?c.children:[c.children],k=null==(f=j.find(a=>a.type===v))||null==(d=f.props)?void 0:d.children,l=null==(h=j.find(a=>"body"===a.type))||null==(g=h.props)?void 0:g.children,m=[...Array.isArray(k)?k:[k],...Array.isArray(l)?l:[l]];e.default.Children.forEach(m,b=>{var c;if(b&&(null==(c=b.type)?void 0:c.__nextScript)){if("beforeInteractive"===b.props.strategy){a.beforeInteractive=(a.beforeInteractive||[]).concat([{...b.props}]);return}else if(["lazyOnload","afterInteractive","worker"].includes(b.props.strategy))return void i.push(b.props);else if(void 0===b.props.strategy)return void i.push({...b.props,strategy:"afterInteractive"})}}),b.scriptLoader=i}(g,h,a),(0,d.jsx)("html",{...a,lang:a.lang||f||void 0,amp:b?"":void 0,"data-ampdevmode":void 0})}function y(){let{docComponentsRendered:a}=(0,j.useHtmlContext)();return a.Main=!0,(0,d.jsx)("next-js-internal-body-render-target",{})}class z extends e.default.Component{static getInitialProps(a){return a.defaultGetInitialProps(a)}render(){return(0,d.jsxs)(x,{children:[(0,d.jsx)(v,{nonce:this.props.nonce}),(0,d.jsxs)("body",{children:[(0,d.jsx)(y,{}),(0,d.jsx)(w,{nonce:this.props.nonce})]})]})}}z[f.NEXT_BUILTIN_DOCUMENT]=function(){return(0,d.jsxs)(x,{children:[(0,d.jsx)(v,{}),(0,d.jsxs)("body",{children:[(0,d.jsx)(y,{}),(0,d.jsx)(w,{})]})]})}},84394:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{ESCAPE_REGEX:function(){return d},htmlEscapeAttributeString:function(){return h},htmlEscapeJsonString:function(){return g}});let c={"&":"\\u0026",">":"\\u003e","<":"\\u003c","\u2028":"\\u2028","\u2029":"\\u2029"},d=/[&><\u2028\u2029]/g,e={"&":"&amp;",'"':"&quot;","'":"&#39;","<":"&lt;",">":"&gt;"},f=/[&"'<>]/g;function g(a){return a.replace(d,a=>c[a])}function h(a){return a.replace(f,a=>e[a])}},88985:a=>{"use strict";a.exports=["chrome 64","edge 79","firefox 67","opera 51","safari 12"]},89336:(a,b)=>{"use strict";function c(a,b){if(b)return a.filter(({key:a})=>b.includes(a))}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"getTracedMetadata",{enumerable:!0,get:function(){return c}})},91344:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"denormalizePagePath",{enumerable:!0,get:function(){return f}});let d=c(21484),e=c(59158);function f(a){let b=(0,e.normalizePathSep)(a);return b.startsWith("/index/")&&!(0,d.isDynamicRoute)(b)?b.slice(6):"/index"!==b?b:"/"}},95063:(a,b)=>{"use strict";Object.defineProperty(b,"A",{enumerable:!0,get:function(){return e}});let c=["B","kB","MB","GB","TB","PB","EB","ZB","YB"],d=(a,b)=>{let c=a;return"string"==typeof b?c=a.toLocaleString(b):!0===b&&(c=a.toLocaleString()),c};function e(a,b){if(!Number.isFinite(a))throw Object.defineProperty(TypeError(`Expected a finite number, got ${typeof a}: ${a}`),"__NEXT_ERROR_CODE",{value:"E572",enumerable:!1,configurable:!0});if((b=Object.assign({},b)).signed&&0===a)return" 0 B";let e=a<0,f=e?"-":b.signed?"+":"";if(e&&(a=-a),a<1)return f+d(a,b.locale)+" B";let g=Math.min(Math.floor(Math.log10(a)/3),c.length-1);return f+d(a=Number((a/Math.pow(1e3,g)).toPrecision(3)),b.locale)+" "+c[g]}},97301:(a,b)=>{"use strict";function c(a){return a.startsWith("/")?a:"/"+a}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"ensureLeadingSlash",{enumerable:!0,get:function(){return c}})}};
@@ -0,0 +1 @@
1
+ "use strict";exports.id=97,exports.ids=[97],exports.modules={35572:(a,b,c)=>{c.d(b,{db:()=>f});var d=c(61074);let e=globalThis;function f(){if(e.__akaDb)return e.__akaDb;let a=(0,d.Ji)((0,d.KS)());return a.purgeSampleData(),e.__akaDb=a,a}},80097:(a,b,c)=>{c.d(b,{Zs:()=>t,cm:()=>s,h2:()=>u,h6:()=>w,oP:()=>v});var d=c(84728);c(77462);var e=c(48161),f=c(30285),g=c(61074),h=c(88477),i=c(78197),j=c(35572),k=c(5378);let l="Could not read the local store (~/.aka/data/aka.db).";function m(a){return null===a.field?"The request did not arrive in the expected shape — reload the page and try again.":a.wrongType?`The '${a.field}' field did not arrive as text — reload the page and try again.`:`The '${a.field}' field was not in the expected form — reload the page and try again.`}let n=`${l} The fingerprint key cannot be minted until it is readable, because a key that reused a stored version would produce grants that never match.`;function o(a){let b=a?.code;return"floor-unreadable"===b?n:"string"==typeof b?"Could not access the exception key file — check the permissions on ~/.aka/data. Do not delete exception.key to work around this; that invalidates every existing grant.":"The exception key file is corrupt. Delete ~/.aka/data/exception.key to mint a new key (this invalidates existing grants)."}function p(){try{return(0,e.userInfo)().username}catch{return"unknown"}}function q(a){try{return(0,h.N6N)(a)}catch(a){return{error:a instanceof Error?a.message:"invalid scope"}}}function r(a){return(0,j.db)().exceptions.create(a).then(()=>((0,i.revalidatePath)("/exceptions"),{ok:!0})).catch(a=>a instanceof g.qA?{ok:!1,error:"An active exception for this value already exists — revoke it first."}:{ok:!1,error:"Could not create the exception."})}async function s(a){let b,c,d=(0,h.K7s)(h.QcD,a);if(!d.ok)return{ok:!1,error:m(d)};let e=d.data,f=e.reason.trim();if(""===f)return{ok:!1,error:"A reason is required — it is the audit trail."};let i=q(e.scope);if("error"in i)return{ok:!1,error:i.error};try{b=(await (0,j.db)().exceptions.recentBlocked(g.WR)).find(a=>a.reference===e.reference)}catch{return{ok:!1,error:l}}if(!b)return{ok:!1,error:"That blocked detection has expired from the ledger — trigger it again."};try{c=(0,g.y9)((0,g.KS)())}catch(a){return{ok:!1,error:o(a)}}return(0,g.Dg)(c,b.keyVersion)?"permanent"===i.scope&&e.confirmation!==b.maskedValue?{ok:!1,error:"Permanent grants require retyping the masked value exactly as shown."}:r({ruleId:b.ruleId,category:b.category,valueFingerprint:b.valueFingerprint,keyVersion:b.keyVersion,maskedValue:b.maskedValue,...i,justification:f,conditions:null,createdBy:p(),createdVia:"web-approve"}):{ok:!1,error:null===c?"The exception key file is missing, so the fingerprint recorded for this detection can no longer be matched. Trigger the detection again.":`That detection was blocked under fingerprint key v${String(b.keyVersion)}; the key is now v${String(c.version)}, so a grant from it could never match. Trigger the detection again.`}}async function t(a){let b,c,d=(0,h.K7s)(h.Nh0,a);if(!d.ok)return{ok:!1,error:m(d)};let e=d.data,i=e.reason.trim();if(""===i)return{ok:!1,error:"A reason is required — it is the audit trail."};let k=q(e.scope);if("error"in k)return{ok:!1,error:k.error};if(""===e.value)return{ok:!1,error:"No value supplied — nothing to except."};if("permanent"===k.scope&&e.confirmation!==e.value)return{ok:!1,error:"Permanent grants require retyping the value exactly."};try{({rules:b}=(0,j.db)().installedPacks.installedRuleset())}catch{return{ok:!1,error:l}}let n=b.find(a=>a.id===e.ruleId);if(!n)return{ok:!1,error:`Unknown or disabled rule '${e.ruleId}'.`};let s=(0,f.SQ)(e.value,b).filter(a=>a.ruleId===e.ruleId);if(0===s.length)return{ok:!1,error:`The value does not match rule ${e.ruleId} — a grant for it would never apply.`};let t=[...new Set(s.map(a=>a.rawMatch))],u=t[0];if(t.length>1||void 0===u)return{ok:!1,error:`The input contains ${String(t.length)} distinct values matching ${e.ruleId} — supply exactly one.`};try{c=(0,g.Rd)((0,g.KS)())}catch(a){return{ok:!1,error:o(a)}}let v={valueFingerprint:(0,g._2)(c,u),keyVersion:c.version,maskedValue:(0,f.sE)(u)};return r({ruleId:n.id,category:n.category,...v,...k,justification:i,conditions:null,createdBy:p(),createdVia:"web-add"})}async function u(a){let b,c,d=(0,h.K7s)(h.agn,a);if(!d.ok)return{ok:!1,error:m(d)};let e=d.data,f=e.justification.trim();if(""===f)return{ok:!1,error:"A justification is required — it is the audit trail."};let k=q(e.scope);if("error"in k)return{ok:!1,error:k.error};let l=h.jUf.safeParse(e.pointer.trim());if(!l.success)return{ok:!1,error:"Not a vault pointer — paste the full [[aka:...]] token."};try{let a=new g.Pi({repo:(0,j.db)().secretVault,keys:(0,g.Ru)((0,g.xR)().vaultKeyCustody,(0,g.Wo)()),isConsented:()=>(0,h.hds)((0,g.xR)().vaultConsent)});b=await a.resolvePointerIdentity(l.data),c=null===b?null:await a.describePointer(l.data)}catch{b=null,c=null}if(null===b)return{ok:!1,error:"The pointer could not be resolved — it is not one this machine issued, or its entry was purged."};let n=c?.category??function(a){let b=a.slice(6).split(":")[0]??"",c=h.gbA.safeParse(b);return c.success?c.data:null}(l.data);if(null===n)return{ok:!1,error:"Not a vault pointer — paste the full [[aka:...]] token."};if("permanent"===k.scope){if(null===c)return{ok:!1,error:"A permanent reveal needs the value preview to confirm against — use a time-limited scope."};if(e.confirmation!==c.maskedMatch)return{ok:!1,error:`A permanent reveal must be confirmed by retyping the masked value (${c.maskedMatch}).`}}try{let a=await (0,j.db)().exceptions.create({ruleId:b.ruleId,category:n,valueFingerprint:b.valueFingerprint,keyVersion:b.fingerprintKeyVersion,maskedValue:c?.maskedMatch??"\xb7\xb7\xb7",capability:"reveal_to_model",...k,justification:f,conditions:null,createdBy:"dashboard",createdVia:"web-approve"});return(0,i.revalidatePath)("/exceptions"),{ok:!0,grantIdPrefix:a.id.slice(0,8)}}catch(a){if(a instanceof g.qA)return{ok:!1,error:"An active exception for this value already exists — revoke it first."};return{ok:!1,error:"Could not create the reveal grant."}}}async function v(a,b){let c,d=(0,h.K7s)(h.eYL,{id:a,reason:b});if(!d.ok)return{ok:!1,error:m(d)};let e=d.data,f=e.reason.trim();try{c=await (0,j.db)().exceptions.revoke(e.id,p(),""===f?void 0:f)}catch{return{ok:!1,error:l}}return c?((0,i.revalidatePath)("/exceptions"),(0,i.revalidatePath)(`/exceptions/${e.id}`),{ok:!0}):{ok:!1,error:"No active exception with that id."}}async function w(a){let b,c=(0,h.K7s)(h.JJC,{confirmation:a});if(!c.ok)return{ok:!1,error:m(c)};if("rotate"!==c.data.confirmation)return{ok:!1,error:'Type "rotate" to confirm.'};try{b=(0,g.v5)((0,g.KS)())}catch(a){return{ok:!1,error:`Could not rotate the fingerprint key. ${o(a)}`}}try{let a=new g.Pi({repo:(0,j.db)().secretVault,keys:(0,g.Ru)((0,g.xR)().vaultKeyCustody,(0,g.Wo)()),isConsented:()=>(0,h.hds)((0,g.xR)().vaultConsent)});await a.refreshFingerprints(b)}catch{}return(0,i.revalidatePath)("/exceptions"),{ok:!0}}(0,k.D)([s,t,u,v,w]),(0,d.A)(s,"404801fc9f0975993787652b0f05885cc49e76ddca",null),(0,d.A)(t,"4082d4cdab9fb1d908135f6e47c986965b212a4ce4",null),(0,d.A)(u,"40c134b85f2cb26a320bc7f7b6fe9daeebad4a8970",null),(0,d.A)(v,"60a3c2b2a70bf5774a661107bcf817a5af29f12f04",null),(0,d.A)(w,"40951c82b1be375b3d2cd330f1bc2ca1dcd92d05e6",null)}};
@@ -2,18 +2,18 @@
2
2
  "version": 1,
3
3
  "functions": {
4
4
  "/activity": {},
5
- "/data-shares": {},
6
5
  "/detections": {},
6
+ "/data-shares": {},
7
7
  "/exceptions/[id]": {},
8
- "/exceptions/new": {},
9
8
  "/exceptions": {},
9
+ "/policies": {},
10
10
  "/findings": {},
11
11
  "/inventory": {},
12
- "/policies": {},
13
12
  "/scan": {},
14
- "/security": {},
15
13
  "/settings": {},
16
14
  "/updates": {},
17
- "/vault": {}
15
+ "/security": {},
16
+ "/vault": {},
17
+ "/exceptions/new": {}
18
18
  }
19
19
  }
@@ -1 +1 @@
1
- globalThis.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-42372ed130431b0a.js"],devFiles:[],ampDevFiles:[],lowPriorityFiles:[],rootMainFiles:["static/chunks/webpack-f10501a57c4d919d.js","static/chunks/52b9c8c1-87132a73d61bdb69.js","static/chunks/563-a96f29a2819589cb.js","static/chunks/main-app-ecdeb13a427413ee.js"],rootMainFilesTree:{},pages:{"/_app":["static/chunks/webpack-f10501a57c4d919d.js","static/chunks/framework-78529e4152d251a3.js","static/chunks/main-aef82d1ebf75b725.js","static/chunks/pages/_app-cb7c9f431bf725f7.js"],"/_error":["static/chunks/webpack-f10501a57c4d919d.js","static/chunks/framework-78529e4152d251a3.js","static/chunks/main-aef82d1ebf75b725.js","static/chunks/pages/_error-fae7cf4a2cfcee1b.js"]},ampFirstPages:[]},globalThis.__BUILD_MANIFEST.lowPriorityFiles=["/static/"+process.env.__NEXT_BUILD_ID+"/_buildManifest.js",,"/static/"+process.env.__NEXT_BUILD_ID+"/_ssgManifest.js"];
1
+ globalThis.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-42372ed130431b0a.js"],devFiles:[],ampDevFiles:[],lowPriorityFiles:[],rootMainFiles:["static/chunks/webpack-c0fb35a40828243e.js","static/chunks/423b6282-fc44d01f7ffd176d.js","static/chunks/639-6f64a434dce13266.js","static/chunks/main-app-4a18e3117ef3af1e.js"],rootMainFilesTree:{},pages:{"/_app":["static/chunks/webpack-c0fb35a40828243e.js","static/chunks/framework-4a8a69f5ce633b25.js","static/chunks/main-89a5d50418a9a7e3.js","static/chunks/pages/_app-671d04cd06b05cac.js"],"/_error":["static/chunks/webpack-c0fb35a40828243e.js","static/chunks/framework-4a8a69f5ce633b25.js","static/chunks/main-89a5d50418a9a7e3.js","static/chunks/pages/_error-ae172b6a97f64258.js"]},ampFirstPages:[]},globalThis.__BUILD_MANIFEST.lowPriorityFiles=["/static/"+process.env.__NEXT_BUILD_ID+"/_buildManifest.js",,"/static/"+process.env.__NEXT_BUILD_ID+"/_ssgManifest.js"];
@@ -17,11 +17,11 @@
17
17
  "wasm": [],
18
18
  "assets": [],
19
19
  "env": {
20
- "__NEXT_BUILD_ID": "pkVZ1_T311YNkJgZOLTx5",
21
- "NEXT_SERVER_ACTIONS_ENCRYPTION_KEY": "TiyOJaafJvOEIuxNWn5FRf9x3u5ZYWgp7ykiYVIk/Ng=",
22
- "__NEXT_PREVIEW_MODE_ID": "e2eb40f05cba6888dc87d1cbffd8b6ee",
23
- "__NEXT_PREVIEW_MODE_SIGNING_KEY": "379f12f8a3c406a91f3513a6f32d0a829f187026b8a2b03c75a8f95fc217904f",
24
- "__NEXT_PREVIEW_MODE_ENCRYPTION_KEY": "a2dd7e6ae4bee3f511284af423a0345d76dc41408c65292f55bb03ad50b631d3"
20
+ "__NEXT_BUILD_ID": "5Pl1KmhN7uMqXkPkq0ZmS",
21
+ "NEXT_SERVER_ACTIONS_ENCRYPTION_KEY": "s6Vj56Kw8yNNez0wxZPFBHXnMWHgAT7FjUJBQVdt7Vc=",
22
+ "__NEXT_PREVIEW_MODE_ID": "1290715c930390b880c0f5f32cbe217c",
23
+ "__NEXT_PREVIEW_MODE_SIGNING_KEY": "91e849e80ecac49a1d0e1b63b2fb64125541a2d7e20d8c8581157500827129f5",
24
+ "__NEXT_PREVIEW_MODE_ENCRYPTION_KEY": "a6466162c9db1d6af7bfa7f6dfb22d63bb23bbc869aa76fbfc28429060d2ca1b"
25
25
  }
26
26
  }
27
27
  },