@cdot65/prisma-airs-cli 2.11.0 → 3.0.0

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 (388) hide show
  1. package/README.md +27 -169
  2. package/dist/chunk-JXHYQFEK.js +1752 -0
  3. package/dist/cli/index.js +6511 -4
  4. package/dist/dlp-5XKWITZX.js +710 -0
  5. package/dist/index.d.ts +1396 -26
  6. package/dist/index.js +40 -37
  7. package/package.json +22 -25
  8. package/dist/airs/dlp/data-filtering-profiles.d.ts +0 -10
  9. package/dist/airs/dlp/data-filtering-profiles.d.ts.map +0 -1
  10. package/dist/airs/dlp/data-filtering-profiles.js +0 -17
  11. package/dist/airs/dlp/data-filtering-profiles.js.map +0 -1
  12. package/dist/airs/dlp/data-patterns.d.ts +0 -13
  13. package/dist/airs/dlp/data-patterns.d.ts.map +0 -1
  14. package/dist/airs/dlp/data-patterns.js +0 -26
  15. package/dist/airs/dlp/data-patterns.js.map +0 -1
  16. package/dist/airs/dlp/data-profiles.d.ts +0 -12
  17. package/dist/airs/dlp/data-profiles.d.ts.map +0 -1
  18. package/dist/airs/dlp/data-profiles.js +0 -23
  19. package/dist/airs/dlp/data-profiles.js.map +0 -1
  20. package/dist/airs/dlp/dictionaries.d.ts +0 -13
  21. package/dist/airs/dlp/dictionaries.d.ts.map +0 -1
  22. package/dist/airs/dlp/dictionaries.js +0 -34
  23. package/dist/airs/dlp/dictionaries.js.map +0 -1
  24. package/dist/airs/dlp/index.d.ts +0 -6
  25. package/dist/airs/dlp/index.d.ts.map +0 -1
  26. package/dist/airs/dlp/index.js +0 -6
  27. package/dist/airs/dlp/index.js.map +0 -1
  28. package/dist/airs/dlp/types.d.ts +0 -36
  29. package/dist/airs/dlp/types.d.ts.map +0 -1
  30. package/dist/airs/dlp/types.js +0 -2
  31. package/dist/airs/dlp/types.js.map +0 -1
  32. package/dist/airs/management.d.ts +0 -68
  33. package/dist/airs/management.d.ts.map +0 -1
  34. package/dist/airs/management.js +0 -317
  35. package/dist/airs/management.js.map +0 -1
  36. package/dist/airs/modelsecurity.d.ts +0 -74
  37. package/dist/airs/modelsecurity.d.ts.map +0 -1
  38. package/dist/airs/modelsecurity.js +0 -337
  39. package/dist/airs/modelsecurity.js.map +0 -1
  40. package/dist/airs/promptsets.d.ts +0 -50
  41. package/dist/airs/promptsets.d.ts.map +0 -1
  42. package/dist/airs/promptsets.js +0 -120
  43. package/dist/airs/promptsets.js.map +0 -1
  44. package/dist/airs/redteam.d.ts +0 -74
  45. package/dist/airs/redteam.d.ts.map +0 -1
  46. package/dist/airs/redteam.js +0 -406
  47. package/dist/airs/redteam.js.map +0 -1
  48. package/dist/airs/runtime.d.ts +0 -27
  49. package/dist/airs/runtime.d.ts.map +0 -1
  50. package/dist/airs/runtime.js +0 -158
  51. package/dist/airs/runtime.js.map +0 -1
  52. package/dist/airs/scanner.d.ts +0 -36
  53. package/dist/airs/scanner.d.ts.map +0 -1
  54. package/dist/airs/scanner.js +0 -101
  55. package/dist/airs/scanner.js.map +0 -1
  56. package/dist/airs/types.d.ts +0 -780
  57. package/dist/airs/types.d.ts.map +0 -1
  58. package/dist/airs/types.js +0 -6
  59. package/dist/airs/types.js.map +0 -1
  60. package/dist/audit/evaluator.d.ts +0 -17
  61. package/dist/audit/evaluator.d.ts.map +0 -1
  62. package/dist/audit/evaluator.js +0 -82
  63. package/dist/audit/evaluator.js.map +0 -1
  64. package/dist/audit/report.d.ts +0 -38
  65. package/dist/audit/report.d.ts.map +0 -1
  66. package/dist/audit/report.js +0 -141
  67. package/dist/audit/report.js.map +0 -1
  68. package/dist/audit/runner.d.ts +0 -18
  69. package/dist/audit/runner.d.ts.map +0 -1
  70. package/dist/audit/runner.js +0 -60
  71. package/dist/audit/runner.js.map +0 -1
  72. package/dist/audit/types.d.ts +0 -53
  73. package/dist/audit/types.d.ts.map +0 -1
  74. package/dist/audit/types.js +0 -5
  75. package/dist/audit/types.js.map +0 -1
  76. package/dist/backup/index.d.ts +0 -3
  77. package/dist/backup/index.d.ts.map +0 -1
  78. package/dist/backup/index.js +0 -3
  79. package/dist/backup/index.js.map +0 -1
  80. package/dist/backup/io.d.ts +0 -15
  81. package/dist/backup/io.d.ts.map +0 -1
  82. package/dist/backup/io.js +0 -67
  83. package/dist/backup/io.js.map +0 -1
  84. package/dist/backup/types.d.ts +0 -25
  85. package/dist/backup/types.d.ts.map +0 -1
  86. package/dist/backup/types.js +0 -2
  87. package/dist/backup/types.js.map +0 -1
  88. package/dist/cli/builders/profile-builder.d.ts +0 -45
  89. package/dist/cli/builders/profile-builder.d.ts.map +0 -1
  90. package/dist/cli/builders/profile-builder.js +0 -308
  91. package/dist/cli/builders/profile-builder.js.map +0 -1
  92. package/dist/cli/bulk-scan-state.d.ts +0 -15
  93. package/dist/cli/bulk-scan-state.d.ts.map +0 -1
  94. package/dist/cli/bulk-scan-state.js +0 -20
  95. package/dist/cli/bulk-scan-state.js.map +0 -1
  96. package/dist/cli/commands/audit.d.ts +0 -4
  97. package/dist/cli/commands/audit.d.ts.map +0 -1
  98. package/dist/cli/commands/audit.js +0 -113
  99. package/dist/cli/commands/audit.js.map +0 -1
  100. package/dist/cli/commands/backup.d.ts +0 -10
  101. package/dist/cli/commands/backup.d.ts.map +0 -1
  102. package/dist/cli/commands/backup.js +0 -102
  103. package/dist/cli/commands/backup.js.map +0 -1
  104. package/dist/cli/commands/dlp/build-body.d.ts +0 -28
  105. package/dist/cli/commands/dlp/build-body.d.ts.map +0 -1
  106. package/dist/cli/commands/dlp/build-body.js +0 -174
  107. package/dist/cli/commands/dlp/build-body.js.map +0 -1
  108. package/dist/cli/commands/dlp/dictionaries.d.ts +0 -3
  109. package/dist/cli/commands/dlp/dictionaries.d.ts.map +0 -1
  110. package/dist/cli/commands/dlp/dictionaries.js +0 -167
  111. package/dist/cli/commands/dlp/dictionaries.js.map +0 -1
  112. package/dist/cli/commands/dlp/filtering-profiles.d.ts +0 -3
  113. package/dist/cli/commands/dlp/filtering-profiles.d.ts.map +0 -1
  114. package/dist/cli/commands/dlp/filtering-profiles.js +0 -82
  115. package/dist/cli/commands/dlp/filtering-profiles.js.map +0 -1
  116. package/dist/cli/commands/dlp/generate.d.ts +0 -3
  117. package/dist/cli/commands/dlp/generate.d.ts.map +0 -1
  118. package/dist/cli/commands/dlp/generate.js +0 -51
  119. package/dist/cli/commands/dlp/generate.js.map +0 -1
  120. package/dist/cli/commands/dlp/index.d.ts +0 -3
  121. package/dist/cli/commands/dlp/index.d.ts.map +0 -1
  122. package/dist/cli/commands/dlp/index.js +0 -16
  123. package/dist/cli/commands/dlp/index.js.map +0 -1
  124. package/dist/cli/commands/dlp/patch.d.ts +0 -15
  125. package/dist/cli/commands/dlp/patch.d.ts.map +0 -1
  126. package/dist/cli/commands/dlp/patch.js +0 -70
  127. package/dist/cli/commands/dlp/patch.js.map +0 -1
  128. package/dist/cli/commands/dlp/patterns.d.ts +0 -3
  129. package/dist/cli/commands/dlp/patterns.d.ts.map +0 -1
  130. package/dist/cli/commands/dlp/patterns.js +0 -127
  131. package/dist/cli/commands/dlp/patterns.js.map +0 -1
  132. package/dist/cli/commands/dlp/profiles.d.ts +0 -3
  133. package/dist/cli/commands/dlp/profiles.d.ts.map +0 -1
  134. package/dist/cli/commands/dlp/profiles.js +0 -126
  135. package/dist/cli/commands/dlp/profiles.js.map +0 -1
  136. package/dist/cli/commands/modelsecurity.d.ts +0 -4
  137. package/dist/cli/commands/modelsecurity.d.ts.map +0 -1
  138. package/dist/cli/commands/modelsecurity.js +0 -605
  139. package/dist/cli/commands/modelsecurity.js.map +0 -1
  140. package/dist/cli/commands/profiles-cleanup.d.ts +0 -26
  141. package/dist/cli/commands/profiles-cleanup.d.ts.map +0 -1
  142. package/dist/cli/commands/profiles-cleanup.js +0 -113
  143. package/dist/cli/commands/profiles-cleanup.js.map +0 -1
  144. package/dist/cli/commands/redteam.d.ts +0 -12
  145. package/dist/cli/commands/redteam.d.ts.map +0 -1
  146. package/dist/cli/commands/redteam.js +0 -1071
  147. package/dist/cli/commands/redteam.js.map +0 -1
  148. package/dist/cli/commands/restore.d.ts +0 -11
  149. package/dist/cli/commands/restore.d.ts.map +0 -1
  150. package/dist/cli/commands/restore.js +0 -109
  151. package/dist/cli/commands/restore.js.map +0 -1
  152. package/dist/cli/commands/runtime.d.ts +0 -6
  153. package/dist/cli/commands/runtime.d.ts.map +0 -1
  154. package/dist/cli/commands/runtime.js +0 -822
  155. package/dist/cli/commands/runtime.js.map +0 -1
  156. package/dist/cli/commands/topics-apply.d.ts +0 -16
  157. package/dist/cli/commands/topics-apply.d.ts.map +0 -1
  158. package/dist/cli/commands/topics-apply.js +0 -69
  159. package/dist/cli/commands/topics-apply.js.map +0 -1
  160. package/dist/cli/commands/topics-create.d.ts +0 -16
  161. package/dist/cli/commands/topics-create.d.ts.map +0 -1
  162. package/dist/cli/commands/topics-create.js +0 -71
  163. package/dist/cli/commands/topics-create.js.map +0 -1
  164. package/dist/cli/commands/topics-eval.d.ts +0 -7
  165. package/dist/cli/commands/topics-eval.d.ts.map +0 -1
  166. package/dist/cli/commands/topics-eval.js +0 -65
  167. package/dist/cli/commands/topics-eval.js.map +0 -1
  168. package/dist/cli/commands/topics-revert.d.ts +0 -9
  169. package/dist/cli/commands/topics-revert.d.ts.map +0 -1
  170. package/dist/cli/commands/topics-revert.js +0 -52
  171. package/dist/cli/commands/topics-revert.js.map +0 -1
  172. package/dist/cli/commands/topics-sample.d.ts +0 -4
  173. package/dist/cli/commands/topics-sample.d.ts.map +0 -1
  174. package/dist/cli/commands/topics-sample.js +0 -27
  175. package/dist/cli/commands/topics-sample.js.map +0 -1
  176. package/dist/cli/debug-logger.d.ts +0 -11
  177. package/dist/cli/debug-logger.d.ts.map +0 -1
  178. package/dist/cli/debug-logger.js +0 -137
  179. package/dist/cli/debug-logger.js.map +0 -1
  180. package/dist/cli/index.d.ts +0 -3
  181. package/dist/cli/index.d.ts.map +0 -1
  182. package/dist/cli/index.js.map +0 -1
  183. package/dist/cli/parse-input.d.ts +0 -9
  184. package/dist/cli/parse-input.d.ts.map +0 -1
  185. package/dist/cli/parse-input.js +0 -109
  186. package/dist/cli/parse-input.js.map +0 -1
  187. package/dist/cli/program.d.ts +0 -3
  188. package/dist/cli/program.d.ts.map +0 -1
  189. package/dist/cli/program.js +0 -32
  190. package/dist/cli/program.js.map +0 -1
  191. package/dist/cli/renderer/audit.d.ts +0 -11
  192. package/dist/cli/renderer/audit.d.ts.map +0 -1
  193. package/dist/cli/renderer/audit.js +0 -58
  194. package/dist/cli/renderer/audit.js.map +0 -1
  195. package/dist/cli/renderer/backup.d.ts +0 -8
  196. package/dist/cli/renderer/backup.d.ts.map +0 -1
  197. package/dist/cli/renderer/backup.js +0 -50
  198. package/dist/cli/renderer/backup.js.map +0 -1
  199. package/dist/cli/renderer/common.d.ts +0 -14
  200. package/dist/cli/renderer/common.d.ts.map +0 -1
  201. package/dist/cli/renderer/common.js +0 -50
  202. package/dist/cli/renderer/common.js.map +0 -1
  203. package/dist/cli/renderer/dlp.d.ts +0 -34
  204. package/dist/cli/renderer/dlp.d.ts.map +0 -1
  205. package/dist/cli/renderer/dlp.js +0 -348
  206. package/dist/cli/renderer/dlp.js.map +0 -1
  207. package/dist/cli/renderer/eval.d.ts +0 -30
  208. package/dist/cli/renderer/eval.d.ts.map +0 -1
  209. package/dist/cli/renderer/eval.js +0 -61
  210. package/dist/cli/renderer/eval.js.map +0 -1
  211. package/dist/cli/renderer/index.d.ts +0 -9
  212. package/dist/cli/renderer/index.d.ts.map +0 -1
  213. package/dist/cli/renderer/index.js +0 -9
  214. package/dist/cli/renderer/index.js.map +0 -1
  215. package/dist/cli/renderer/modelsecurity.d.ts +0 -35
  216. package/dist/cli/renderer/modelsecurity.d.ts.map +0 -1
  217. package/dist/cli/renderer/modelsecurity.js +0 -339
  218. package/dist/cli/renderer/modelsecurity.js.map +0 -1
  219. package/dist/cli/renderer/redteam.d.ts +0 -216
  220. package/dist/cli/renderer/redteam.d.ts.map +0 -1
  221. package/dist/cli/renderer/redteam.js +0 -471
  222. package/dist/cli/renderer/redteam.js.map +0 -1
  223. package/dist/cli/renderer/runtime.d.ts +0 -107
  224. package/dist/cli/renderer/runtime.d.ts.map +0 -1
  225. package/dist/cli/renderer/runtime.js +0 -359
  226. package/dist/cli/renderer/runtime.js.map +0 -1
  227. package/dist/config/loader.d.ts +0 -3
  228. package/dist/config/loader.d.ts.map +0 -1
  229. package/dist/config/loader.js +0 -59
  230. package/dist/config/loader.js.map +0 -1
  231. package/dist/config/schema.d.ts +0 -63
  232. package/dist/config/schema.d.ts.map +0 -1
  233. package/dist/config/schema.js +0 -38
  234. package/dist/config/schema.js.map +0 -1
  235. package/dist/core/constraints.d.ts +0 -19
  236. package/dist/core/constraints.d.ts.map +0 -1
  237. package/dist/core/constraints.js +0 -82
  238. package/dist/core/constraints.js.map +0 -1
  239. package/dist/core/metrics.d.ts +0 -13
  240. package/dist/core/metrics.d.ts.map +0 -1
  241. package/dist/core/metrics.js +0 -73
  242. package/dist/core/metrics.js.map +0 -1
  243. package/dist/core/prompt-loader.d.ts +0 -14
  244. package/dist/core/prompt-loader.d.ts.map +0 -1
  245. package/dist/core/prompt-loader.js +0 -122
  246. package/dist/core/prompt-loader.js.map +0 -1
  247. package/dist/core/types.d.ts +0 -96
  248. package/dist/core/types.d.ts.map +0 -1
  249. package/dist/core/types.js +0 -5
  250. package/dist/core/types.js.map +0 -1
  251. package/dist/dlp/embed/docx.d.ts +0 -3
  252. package/dist/dlp/embed/docx.d.ts.map +0 -1
  253. package/dist/dlp/embed/docx.js +0 -54
  254. package/dist/dlp/embed/docx.js.map +0 -1
  255. package/dist/dlp/embed/index.d.ts +0 -6
  256. package/dist/dlp/embed/index.d.ts.map +0 -1
  257. package/dist/dlp/embed/index.js +0 -20
  258. package/dist/dlp/embed/index.js.map +0 -1
  259. package/dist/dlp/embed/jpeg.d.ts +0 -5
  260. package/dist/dlp/embed/jpeg.d.ts.map +0 -1
  261. package/dist/dlp/embed/jpeg.js +0 -60
  262. package/dist/dlp/embed/jpeg.js.map +0 -1
  263. package/dist/dlp/embed/pdf.d.ts +0 -7
  264. package/dist/dlp/embed/pdf.d.ts.map +0 -1
  265. package/dist/dlp/embed/pdf.js +0 -92
  266. package/dist/dlp/embed/pdf.js.map +0 -1
  267. package/dist/dlp/embed/png-chunks.d.ts +0 -12
  268. package/dist/dlp/embed/png-chunks.d.ts.map +0 -1
  269. package/dist/dlp/embed/png-chunks.js +0 -85
  270. package/dist/dlp/embed/png-chunks.js.map +0 -1
  271. package/dist/dlp/embed/png.d.ts +0 -5
  272. package/dist/dlp/embed/png.d.ts.map +0 -1
  273. package/dist/dlp/embed/png.js +0 -68
  274. package/dist/dlp/embed/png.js.map +0 -1
  275. package/dist/dlp/embed/svg.d.ts +0 -3
  276. package/dist/dlp/embed/svg.d.ts.map +0 -1
  277. package/dist/dlp/embed/svg.js +0 -28
  278. package/dist/dlp/embed/svg.js.map +0 -1
  279. package/dist/dlp/embed/zip.d.ts +0 -3
  280. package/dist/dlp/embed/zip.d.ts.map +0 -1
  281. package/dist/dlp/embed/zip.js +0 -25
  282. package/dist/dlp/embed/zip.js.map +0 -1
  283. package/dist/dlp/generate/docx.d.ts +0 -3
  284. package/dist/dlp/generate/docx.d.ts.map +0 -1
  285. package/dist/dlp/generate/docx.js +0 -24
  286. package/dist/dlp/generate/docx.js.map +0 -1
  287. package/dist/dlp/generate/index.d.ts +0 -5
  288. package/dist/dlp/generate/index.d.ts.map +0 -1
  289. package/dist/dlp/generate/index.js +0 -21
  290. package/dist/dlp/generate/index.js.map +0 -1
  291. package/dist/dlp/generate/jpeg.d.ts +0 -3
  292. package/dist/dlp/generate/jpeg.d.ts.map +0 -1
  293. package/dist/dlp/generate/jpeg.js +0 -8
  294. package/dist/dlp/generate/jpeg.js.map +0 -1
  295. package/dist/dlp/generate/pdf.d.ts +0 -3
  296. package/dist/dlp/generate/pdf.d.ts.map +0 -1
  297. package/dist/dlp/generate/pdf.js +0 -19
  298. package/dist/dlp/generate/pdf.js.map +0 -1
  299. package/dist/dlp/generate/png.d.ts +0 -3
  300. package/dist/dlp/generate/png.d.ts.map +0 -1
  301. package/dist/dlp/generate/png.js +0 -8
  302. package/dist/dlp/generate/png.js.map +0 -1
  303. package/dist/dlp/generate/raster.d.ts +0 -9
  304. package/dist/dlp/generate/raster.d.ts.map +0 -1
  305. package/dist/dlp/generate/raster.js +0 -20
  306. package/dist/dlp/generate/raster.js.map +0 -1
  307. package/dist/dlp/generate/svg.d.ts +0 -3
  308. package/dist/dlp/generate/svg.d.ts.map +0 -1
  309. package/dist/dlp/generate/svg.js +0 -17
  310. package/dist/dlp/generate/svg.js.map +0 -1
  311. package/dist/dlp/index.d.ts +0 -15
  312. package/dist/dlp/index.d.ts.map +0 -1
  313. package/dist/dlp/index.js +0 -54
  314. package/dist/dlp/index.js.map +0 -1
  315. package/dist/dlp/lorem.d.ts +0 -3
  316. package/dist/dlp/lorem.d.ts.map +0 -1
  317. package/dist/dlp/lorem.js +0 -65
  318. package/dist/dlp/lorem.js.map +0 -1
  319. package/dist/dlp/manifest.d.ts +0 -11
  320. package/dist/dlp/manifest.d.ts.map +0 -1
  321. package/dist/dlp/manifest.js +0 -14
  322. package/dist/dlp/manifest.js.map +0 -1
  323. package/dist/dlp/payload.d.ts +0 -6
  324. package/dist/dlp/payload.d.ts.map +0 -1
  325. package/dist/dlp/payload.js +0 -62
  326. package/dist/dlp/payload.js.map +0 -1
  327. package/dist/dlp/rng.d.ts +0 -9
  328. package/dist/dlp/rng.d.ts.map +0 -1
  329. package/dist/dlp/rng.js +0 -28
  330. package/dist/dlp/rng.js.map +0 -1
  331. package/dist/dlp/types.d.ts +0 -26
  332. package/dist/dlp/types.d.ts.map +0 -1
  333. package/dist/dlp/types.js +0 -2
  334. package/dist/dlp/types.js.map +0 -1
  335. package/dist/index.d.ts.map +0 -1
  336. package/dist/index.js.map +0 -1
  337. package/dist/llm/prompts/analyze-results.d.ts +0 -3
  338. package/dist/llm/prompts/analyze-results.d.ts.map +0 -1
  339. package/dist/llm/prompts/analyze-results.js +0 -52
  340. package/dist/llm/prompts/analyze-results.js.map +0 -1
  341. package/dist/llm/prompts/generate-companion.d.ts +0 -3
  342. package/dist/llm/prompts/generate-companion.d.ts.map +0 -1
  343. package/dist/llm/prompts/generate-companion.js +0 -42
  344. package/dist/llm/prompts/generate-companion.js.map +0 -1
  345. package/dist/llm/prompts/generate-tests.d.ts +0 -3
  346. package/dist/llm/prompts/generate-tests.d.ts.map +0 -1
  347. package/dist/llm/prompts/generate-tests.js +0 -46
  348. package/dist/llm/prompts/generate-tests.js.map +0 -1
  349. package/dist/llm/prompts/generate-topic.d.ts +0 -4
  350. package/dist/llm/prompts/generate-topic.d.ts.map +0 -1
  351. package/dist/llm/prompts/generate-topic.js +0 -41
  352. package/dist/llm/prompts/generate-topic.js.map +0 -1
  353. package/dist/llm/prompts/improve-topic.d.ts +0 -3
  354. package/dist/llm/prompts/improve-topic.d.ts.map +0 -1
  355. package/dist/llm/prompts/improve-topic.js +0 -77
  356. package/dist/llm/prompts/improve-topic.js.map +0 -1
  357. package/dist/llm/prompts/simplify-topic.d.ts +0 -3
  358. package/dist/llm/prompts/simplify-topic.d.ts.map +0 -1
  359. package/dist/llm/prompts/simplify-topic.js +0 -50
  360. package/dist/llm/prompts/simplify-topic.js.map +0 -1
  361. package/dist/llm/provider.d.ts +0 -21
  362. package/dist/llm/provider.d.ts.map +0 -1
  363. package/dist/llm/provider.js +0 -76
  364. package/dist/llm/provider.js.map +0 -1
  365. package/dist/llm/schemas.d.ts +0 -97
  366. package/dist/llm/schemas.d.ts.map +0 -1
  367. package/dist/llm/schemas.js +0 -24
  368. package/dist/llm/schemas.js.map +0 -1
  369. package/dist/llm/service.d.ts +0 -34
  370. package/dist/llm/service.d.ts.map +0 -1
  371. package/dist/llm/service.js +0 -268
  372. package/dist/llm/service.js.map +0 -1
  373. package/dist/llm/types.d.ts +0 -18
  374. package/dist/llm/types.d.ts.map +0 -1
  375. package/dist/llm/types.js +0 -2
  376. package/dist/llm/types.js.map +0 -1
  377. package/dist/report/html.d.ts +0 -6
  378. package/dist/report/html.d.ts.map +0 -1
  379. package/dist/report/html.js +0 -200
  380. package/dist/report/html.js.map +0 -1
  381. package/dist/report/json.d.ts +0 -11
  382. package/dist/report/json.d.ts.map +0 -1
  383. package/dist/report/json.js +0 -74
  384. package/dist/report/json.js.map +0 -1
  385. package/dist/report/types.d.ts +0 -58
  386. package/dist/report/types.d.ts.map +0 -1
  387. package/dist/report/types.js +0 -5
  388. package/dist/report/types.js.map +0 -1
@@ -1,317 +0,0 @@
1
- import { ManagementClient, } from '@cdot65/prisma-airs-sdk';
2
- /**
3
- * Wraps the SDK's ManagementClient to implement our ManagementService interface.
4
- * OAuth2 token management, caching, and retry are handled by the SDK.
5
- */
6
- export class SdkManagementService {
7
- client;
8
- constructor(opts) {
9
- this.client = getOrCreateManagementClient(opts);
10
- }
11
- async createTopic(request) {
12
- return this.client.topics.create(request);
13
- }
14
- async updateTopic(topicId, request) {
15
- return this.client.topics.update(topicId, request);
16
- }
17
- async deleteTopic(topicId) {
18
- await this.client.topics.delete(topicId);
19
- }
20
- async forceDeleteTopic(topicId, updatedBy) {
21
- const response = await this.client.topics.forceDelete(topicId, updatedBy);
22
- return { message: response.message };
23
- }
24
- async listTopics() {
25
- const response = await this.client.topics.list();
26
- return response.custom_topics;
27
- }
28
- async getTopic(topicId) {
29
- const topics = await this.listTopics();
30
- const topic = topics.find((t) => t.topic_id === topicId);
31
- if (!topic)
32
- throw new Error(`Topic ${topicId} not found`);
33
- return topic;
34
- }
35
- async getTopicByName(topicName) {
36
- const topics = await this.listTopics();
37
- const topic = topics.find((t) => t.topic_name === topicName);
38
- if (!topic)
39
- throw new Error(`Topic "${topicName}" not found`);
40
- return topic;
41
- }
42
- /**
43
- * Sets a single custom topic on a profile's topic-guardrails config.
44
- * Delegates to {@link assignTopicsToProfile} for backward compatibility.
45
- */
46
- async assignTopicToProfile(profileName, topicId, topicName, action) {
47
- return this.assignTopicsToProfile(profileName, [{ topicId, topicName, action }]);
48
- }
49
- /**
50
- * Sets one or more custom topics on a profile's topic-guardrails config.
51
- * Replaces any existing topics — previous runs' stale topics are cleared.
52
- * Groups topics by action; skips empty action groups (AIRS rejects them).
53
- *
54
- * CRITICAL: Each topic entry MUST include the current `revision` number.
55
- * AIRS pins topic content to the revision specified in the profile — omitting
56
- * it defaults to revision 0 (original content), not the latest.
57
- */
58
- async assignTopicsToProfile(profileName, topics, guardrailAction) {
59
- // Find profile by name
60
- const { ai_profiles } = await this.client.profiles.list();
61
- const profile = ai_profiles.find((p) => p.profile_name === profileName);
62
- if (!profile?.profile_id) {
63
- throw new Error(`Profile "${profileName}" not found`);
64
- }
65
- // Fetch current topic revisions — AIRS requires the revision field to
66
- // reference the correct topic content snapshot.
67
- const allTopics = await this.listTopics();
68
- const revisionMap = new Map(allTopics.map((t) => [t.topic_id, t.revision ?? 0]));
69
- // Deep clone the policy to mutate
70
- const policy = JSON.parse(JSON.stringify(profile.policy ?? {}));
71
- const aiProfiles = policy['ai-security-profiles'] ?? [
72
- { 'model-type': 'default', 'model-configuration': {} },
73
- ];
74
- const modelConfig = aiProfiles[0]?.['model-configuration'] ?? {};
75
- // Find or create model-protection with topic-guardrails
76
- const modelProtection = modelConfig['model-protection'] ?? [];
77
- let topicGuardrails = modelProtection.find((mp) => mp.name === 'topic-guardrails');
78
- if (!topicGuardrails) {
79
- topicGuardrails = {
80
- action: 'block',
81
- name: 'topic-guardrails',
82
- options: [],
83
- 'topic-list': [],
84
- };
85
- modelProtection.push(topicGuardrails);
86
- }
87
- // Guardrail-level action controls default behavior for topic-guardrails layer.
88
- // 'block' = block all unless explicitly allowed (requires allow topics).
89
- // 'allow' = allow all unless explicitly blocked (only block topics needed).
90
- topicGuardrails.action = guardrailAction ?? 'block';
91
- // Group topics by action, build topic-list entries with revision (skip empty groups).
92
- const byAction = new Map();
93
- for (const t of topics) {
94
- const group = byAction.get(t.action) ?? [];
95
- group.push({
96
- topic_id: t.topicId,
97
- topic_name: t.topicName,
98
- revision: revisionMap.get(t.topicId) ?? 0,
99
- });
100
- byAction.set(t.action, group);
101
- }
102
- const topicList = [];
103
- for (const [action, group] of byAction) {
104
- topicList.push({ action, topic: group });
105
- }
106
- topicGuardrails['topic-list'] = topicList;
107
- // Write back
108
- modelConfig['model-protection'] = modelProtection;
109
- aiProfiles[0]['model-configuration'] = modelConfig;
110
- policy['ai-security-profiles'] = aiProfiles;
111
- await this.client.profiles.update(profile.profile_id, {
112
- profile_name: profile.profile_name,
113
- active: profile.active,
114
- policy,
115
- });
116
- }
117
- async getProfileTopics(profileName) {
118
- const { ai_profiles } = await this.client.profiles.list();
119
- const profile = ai_profiles.find((p) => p.profile_name === profileName);
120
- if (!profile?.profile_id) {
121
- throw new Error(`Profile "${profileName}" not found`);
122
- }
123
- // Extract topic entries from profile policy
124
- const policy = profile.policy ?? {};
125
- const aiProfiles = policy['ai-security-profiles'] ?? [];
126
- const modelConfig = aiProfiles[0]?.['model-configuration'] ?? {};
127
- const modelProtection = modelConfig['model-protection'] ?? [];
128
- const topicGuardrails = modelProtection.find((mp) => mp.name === 'topic-guardrails');
129
- if (!topicGuardrails)
130
- return [];
131
- const topicList = topicGuardrails['topic-list'] ?? [];
132
- // Flatten entries into topic refs with action
133
- const topicRefs = [];
134
- for (const entry of topicList) {
135
- for (const t of entry.topic ?? []) {
136
- topicRefs.push({
137
- topicId: t.topic_id,
138
- topicName: t.topic_name,
139
- action: entry.action,
140
- });
141
- }
142
- }
143
- if (topicRefs.length === 0)
144
- return [];
145
- // Fetch full topic details
146
- const allTopics = await this.listTopics();
147
- const topicMap = new Map(allTopics.map((t) => [t.topic_id, t]));
148
- return topicRefs.map((ref) => {
149
- const full = topicMap.get(ref.topicId);
150
- return {
151
- topicId: ref.topicId,
152
- topicName: ref.topicName,
153
- action: ref.action,
154
- description: full?.description ?? '',
155
- examples: full?.examples ?? [],
156
- };
157
- });
158
- }
159
- // -------------------------------------------------------------------------
160
- // Profile CRUD
161
- // -------------------------------------------------------------------------
162
- normalizeProfile(p) {
163
- return {
164
- profileId: p.profile_id,
165
- profileName: p.profile_name,
166
- revision: p.revision,
167
- active: p.active,
168
- createdBy: p.created_by,
169
- updatedBy: p.updated_by,
170
- lastModifiedTs: p.last_modified_ts,
171
- policy: p.policy,
172
- };
173
- }
174
- async getProfile(profileId) {
175
- const response = await this.client.profiles.get(profileId);
176
- return this.normalizeProfile(response);
177
- }
178
- async getProfileByName(profileName) {
179
- const response = await this.client.profiles.getByName(profileName);
180
- return this.normalizeProfile(response);
181
- }
182
- async listProfiles(opts) {
183
- const response = await this.client.profiles.list(opts);
184
- return {
185
- profiles: (response.ai_profiles ?? []).map((p) => this.normalizeProfile(p)),
186
- nextOffset: response.next_offset,
187
- };
188
- }
189
- async createProfile(request) {
190
- const response = await this.client.profiles.create(request);
191
- return this.normalizeProfile(response);
192
- }
193
- async updateProfile(profileId, request) {
194
- const response = await this.client.profiles.update(profileId, request);
195
- return this.normalizeProfile(response);
196
- }
197
- async deleteProfile(profileId) {
198
- const response = await this.client.profiles.delete(profileId);
199
- return { message: response.message };
200
- }
201
- async forceDeleteProfile(profileId, updatedBy) {
202
- const response = await this.client.profiles.forceDelete(profileId, updatedBy);
203
- return { message: response.message };
204
- }
205
- // -------------------------------------------------------------------------
206
- // API Keys
207
- // -------------------------------------------------------------------------
208
- normalizeApiKey(k) {
209
- return {
210
- id: (k.id ?? k.api_key_id ?? ''),
211
- name: (k.name ?? k.api_key_name ?? ''),
212
- apiKey: k.api_key,
213
- last8: k.api_key_last8,
214
- createdAt: k.created_at,
215
- expiresAt: k.expires_at,
216
- };
217
- }
218
- async listApiKeys(opts) {
219
- const response = await this.client.apiKeys.list(opts);
220
- const raw = response;
221
- const keys = (raw.api_keys ?? []);
222
- return {
223
- apiKeys: keys.map((k) => this.normalizeApiKey(k)),
224
- nextOffset: raw.next_offset,
225
- };
226
- }
227
- async createApiKey(request) {
228
- const response = await this.client.apiKeys.create(request);
229
- return this.normalizeApiKey(response);
230
- }
231
- async regenerateApiKey(apiKeyId, request) {
232
- const response = await this.client.apiKeys.regenerate(apiKeyId, request);
233
- return this.normalizeApiKey(response);
234
- }
235
- async deleteApiKey(apiKeyName, updatedBy) {
236
- const response = await this.client.apiKeys.delete(apiKeyName, updatedBy);
237
- return { message: response.message };
238
- }
239
- // -------------------------------------------------------------------------
240
- // Customer Apps
241
- // -------------------------------------------------------------------------
242
- normalizeCustomerApp(a) {
243
- return {
244
- id: (a.customer_app_id ?? a.id),
245
- name: (a.app_name ?? a.name ?? ''),
246
- description: a.description,
247
- raw: a,
248
- };
249
- }
250
- async listCustomerApps(opts) {
251
- const response = await this.client.customerApps.list(opts);
252
- const raw = response;
253
- const apps = (raw.customer_apps ?? []);
254
- return {
255
- apps: apps.map((a) => this.normalizeCustomerApp(a)),
256
- nextOffset: raw.next_offset,
257
- };
258
- }
259
- async getCustomerApp(appName) {
260
- const response = await this.client.customerApps.get(appName);
261
- return this.normalizeCustomerApp(response);
262
- }
263
- async updateCustomerApp(appId, request) {
264
- const response = await this.client.customerApps.update(appId, request);
265
- return this.normalizeCustomerApp(response);
266
- }
267
- async deleteCustomerApp(appName, updatedBy) {
268
- const response = await this.client.customerApps.delete(appName, updatedBy);
269
- return this.normalizeCustomerApp(response);
270
- }
271
- // -------------------------------------------------------------------------
272
- // Deployment Profiles (read-only)
273
- // -------------------------------------------------------------------------
274
- async listDeploymentProfiles(opts) {
275
- const response = await this.client.deploymentProfiles.list(opts);
276
- const raw = response;
277
- const profiles = (raw.deployment_profiles ?? []);
278
- return profiles.map((p) => ({ raw: p }));
279
- }
280
- // -------------------------------------------------------------------------
281
- // Scan Logs
282
- // -------------------------------------------------------------------------
283
- async queryScanLogs(opts) {
284
- const response = await this.client.scanLogs.query({
285
- time_interval: opts.timeInterval,
286
- time_unit: opts.timeUnit,
287
- pageNumber: opts.pageNumber,
288
- pageSize: opts.pageSize,
289
- filter: opts.filter,
290
- page_token: opts.pageToken,
291
- });
292
- const raw = response;
293
- const dashboard = (raw.scan_result_for_dashboard ?? {});
294
- const entries = (dashboard.scan_result_entries ?? raw.results ?? []);
295
- return {
296
- results: entries,
297
- pageToken: raw.page_token,
298
- raw,
299
- };
300
- }
301
- }
302
- let _sharedClient;
303
- /**
304
- * Get or lazily construct the shared ManagementClient.
305
- * Opts are only used on the first call; subsequent calls return the cached client.
306
- */
307
- export function getOrCreateManagementClient(opts) {
308
- if (!_sharedClient) {
309
- _sharedClient = new ManagementClient(opts);
310
- }
311
- return _sharedClient;
312
- }
313
- /** Test-only: reset the cached client. */
314
- export function _resetManagementClient() {
315
- _sharedClient = undefined;
316
- }
317
- //# sourceMappingURL=management.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"management.js","sourceRoot":"","sources":["../../src/airs/management.ts"],"names":[],"mappings":"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"}
@@ -1,74 +0,0 @@
1
- import { type ModelSecurityClientOptions } from '@cdot65/prisma-airs-sdk';
2
- import type { ModelSecurityEvaluation, ModelSecurityFile, ModelSecurityFileListOptions, ModelSecurityGroup, ModelSecurityGroupCreateRequest, ModelSecurityGroupListOptions, ModelSecurityGroupUpdateRequest, ModelSecurityLabel, ModelSecurityPyPIAuth, ModelSecurityRule, ModelSecurityRuleInstance, ModelSecurityRuleInstanceListOptions, ModelSecurityRuleInstanceUpdateRequest, ModelSecurityRuleListOptions, ModelSecurityScan, ModelSecurityScanListOptions, ModelSecurityService, ModelSecurityViolation } from './types.js';
3
- /**
4
- * Wraps the SDK's ModelSecurityClient to implement ModelSecurityService.
5
- * Provides security group CRUD, rule browsing, scan operations, and label management.
6
- */
7
- export declare class SdkModelSecurityService implements ModelSecurityService {
8
- private client;
9
- constructor(opts?: ModelSecurityClientOptions);
10
- listGroups(opts?: ModelSecurityGroupListOptions): Promise<{
11
- totalItems: number;
12
- groups: ModelSecurityGroup[];
13
- }>;
14
- getGroup(uuid: string): Promise<ModelSecurityGroup>;
15
- createGroup(request: ModelSecurityGroupCreateRequest): Promise<ModelSecurityGroup>;
16
- updateGroup(uuid: string, request: ModelSecurityGroupUpdateRequest): Promise<ModelSecurityGroup>;
17
- deleteGroup(uuid: string): Promise<void>;
18
- listRuleInstances(groupUuid: string, opts?: ModelSecurityRuleInstanceListOptions): Promise<{
19
- totalItems: number;
20
- ruleInstances: ModelSecurityRuleInstance[];
21
- }>;
22
- getRuleInstance(groupUuid: string, instanceUuid: string): Promise<ModelSecurityRuleInstance>;
23
- updateRuleInstance(groupUuid: string, instanceUuid: string, request: ModelSecurityRuleInstanceUpdateRequest): Promise<ModelSecurityRuleInstance>;
24
- listRules(opts?: ModelSecurityRuleListOptions): Promise<{
25
- totalItems: number;
26
- rules: ModelSecurityRule[];
27
- }>;
28
- getRule(uuid: string): Promise<ModelSecurityRule>;
29
- createScan(request: Record<string, unknown>): Promise<ModelSecurityScan>;
30
- listScans(opts?: ModelSecurityScanListOptions): Promise<{
31
- totalItems: number;
32
- scans: ModelSecurityScan[];
33
- }>;
34
- getScan(uuid: string): Promise<ModelSecurityScan>;
35
- getEvaluations(scanUuid: string, opts?: {
36
- skip?: number;
37
- limit?: number;
38
- }): Promise<{
39
- totalItems: number;
40
- evaluations: ModelSecurityEvaluation[];
41
- }>;
42
- getEvaluation(uuid: string): Promise<ModelSecurityEvaluation>;
43
- getViolations(scanUuid: string, opts?: {
44
- skip?: number;
45
- limit?: number;
46
- }): Promise<{
47
- totalItems: number;
48
- violations: ModelSecurityViolation[];
49
- }>;
50
- getViolation(uuid: string): Promise<ModelSecurityViolation>;
51
- getFiles(scanUuid: string, opts?: ModelSecurityFileListOptions): Promise<{
52
- totalItems: number;
53
- files: ModelSecurityFile[];
54
- }>;
55
- addLabels(scanUuid: string, labels: ModelSecurityLabel[]): Promise<void>;
56
- setLabels(scanUuid: string, labels: ModelSecurityLabel[]): Promise<void>;
57
- deleteLabels(scanUuid: string, keys: string[]): Promise<void>;
58
- getLabelKeys(opts?: {
59
- skip?: number;
60
- limit?: number;
61
- }): Promise<{
62
- totalItems: number;
63
- keys: string[];
64
- }>;
65
- getLabelValues(key: string, opts?: {
66
- skip?: number;
67
- limit?: number;
68
- }): Promise<{
69
- totalItems: number;
70
- values: string[];
71
- }>;
72
- getPyPIAuth(): Promise<ModelSecurityPyPIAuth>;
73
- }
74
- //# sourceMappingURL=modelsecurity.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"modelsecurity.d.ts","sourceRoot":"","sources":["../../src/airs/modelsecurity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAC/F,OAAO,KAAK,EACV,uBAAuB,EACvB,iBAAiB,EACjB,4BAA4B,EAC5B,kBAAkB,EAClB,+BAA+B,EAC/B,6BAA6B,EAC7B,+BAA+B,EAC/B,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EAEjB,yBAAyB,EACzB,oCAAoC,EACpC,sCAAsC,EACtC,4BAA4B,EAC5B,iBAAiB,EACjB,4BAA4B,EAC5B,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,YAAY,CAAC;AAqHpB;;;GAGG;AACH,qBAAa,uBAAwB,YAAW,oBAAoB;IAClE,OAAO,CAAC,MAAM,CAAsB;gBAExB,IAAI,CAAC,EAAE,0BAA0B;IAQvC,UAAU,CACd,IAAI,CAAC,EAAE,6BAA6B,GACnC,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,kBAAkB,EAAE,CAAA;KAAE,CAAC;IAqB1D,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAKnD,WAAW,CAAC,OAAO,EAAE,+BAA+B,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAYlF,WAAW,CACf,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,+BAA+B,GACvC,OAAO,CAAC,kBAAkB,CAAC;IAKxB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQxC,iBAAiB,CACrB,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,oCAAoC,GAC1C,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,yBAAyB,EAAE,CAAA;KAAE,CAAC;IAqBxE,eAAe,CACnB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,yBAAyB,CAAC;IAK/B,kBAAkB,CACtB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,yBAAyB,CAAC;IAmB/B,SAAS,CACb,IAAI,CAAC,EAAE,4BAA4B,GAClC,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,iBAAiB,EAAE,CAAA;KAAE,CAAC;IAkBxD,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IASjD,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAKxE,SAAS,CACb,IAAI,CAAC,EAAE,4BAA4B,GAClC,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,iBAAiB,EAAE,CAAA;KAAE,CAAC;IAoBxD,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IASjD,cAAc,CAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GACvC,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,uBAAuB,EAAE,CAAA;KAAE,CAAC;IAYpE,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAS7D,aAAa,CACjB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GACvC,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,sBAAsB,EAAE,CAAA;KAAE,CAAC;IAYlE,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAS3D,QAAQ,CACZ,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,4BAA4B,GAClC,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,iBAAiB,EAAE,CAAA;KAAE,CAAC;IAgBxD,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxE,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,YAAY,CAAC,IAAI,CAAC,EAAE;QACxB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAY7C,cAAc,CAClB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GACvC,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAgB9C,WAAW,IAAI,OAAO,CAAC,qBAAqB,CAAC;CAQpD"}