@webiny/ai-powerups 0.0.0-unstable.0d717d18dd

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 (466) hide show
  1. package/AiPowerups.d.ts +2 -0
  2. package/AiPowerups.js +11 -0
  3. package/AiPowerups.js.map +1 -0
  4. package/LICENSE +36 -0
  5. package/README.md +11 -0
  6. package/admin/Extension.d.ts +2 -0
  7. package/admin/Extension.js +45 -0
  8. package/admin/Extension.js.map +1 -0
  9. package/admin/domain/errors.d.ts +12 -0
  10. package/admin/domain/errors.js +21 -0
  11. package/admin/domain/errors.js.map +1 -0
  12. package/admin/features/compareEntryRevisions/CompareEntryRevisionsGateway.d.ts +12 -0
  13. package/admin/features/compareEntryRevisions/CompareEntryRevisionsGateway.js +46 -0
  14. package/admin/features/compareEntryRevisions/CompareEntryRevisionsGateway.js.map +1 -0
  15. package/admin/features/compareEntryRevisions/CompareEntryRevisionsRepository.d.ts +11 -0
  16. package/admin/features/compareEntryRevisions/CompareEntryRevisionsRepository.js +18 -0
  17. package/admin/features/compareEntryRevisions/CompareEntryRevisionsRepository.js.map +1 -0
  18. package/admin/features/compareEntryRevisions/CompareEntryRevisionsUseCase.d.ts +11 -0
  19. package/admin/features/compareEntryRevisions/CompareEntryRevisionsUseCase.js +18 -0
  20. package/admin/features/compareEntryRevisions/CompareEntryRevisionsUseCase.js.map +1 -0
  21. package/admin/features/compareEntryRevisions/abstractions.d.ts +32 -0
  22. package/admin/features/compareEntryRevisions/abstractions.js +7 -0
  23. package/admin/features/compareEntryRevisions/abstractions.js.map +1 -0
  24. package/admin/features/compareEntryRevisions/feature.d.ts +1 -0
  25. package/admin/features/compareEntryRevisions/feature.js +15 -0
  26. package/admin/features/compareEntryRevisions/feature.js.map +1 -0
  27. package/admin/features/compareEntryRevisions/index.d.ts +2 -0
  28. package/admin/features/compareEntryRevisions/index.js +2 -0
  29. package/admin/features/feature.d.ts +1 -0
  30. package/admin/features/feature.js +24 -0
  31. package/admin/features/feature.js.map +1 -0
  32. package/admin/features/generateEntryContent/GenerateEntryContentGateway.d.ts +12 -0
  33. package/admin/features/generateEntryContent/GenerateEntryContentGateway.js +45 -0
  34. package/admin/features/generateEntryContent/GenerateEntryContentGateway.js.map +1 -0
  35. package/admin/features/generateEntryContent/GenerateEntryContentUseCase.d.ts +11 -0
  36. package/admin/features/generateEntryContent/GenerateEntryContentUseCase.js +18 -0
  37. package/admin/features/generateEntryContent/GenerateEntryContentUseCase.js.map +1 -0
  38. package/admin/features/generateEntryContent/abstractions.d.ts +24 -0
  39. package/admin/features/generateEntryContent/abstractions.js +6 -0
  40. package/admin/features/generateEntryContent/abstractions.js.map +1 -0
  41. package/admin/features/generateEntryContent/feature.d.ts +1 -0
  42. package/admin/features/generateEntryContent/feature.js +13 -0
  43. package/admin/features/generateEntryContent/feature.js.map +1 -0
  44. package/admin/features/generateEntryContent/index.d.ts +3 -0
  45. package/admin/features/generateEntryContent/index.js +2 -0
  46. package/admin/features/generatePageContent/GeneratePageContentGateway.d.ts +12 -0
  47. package/admin/features/generatePageContent/GeneratePageContentGateway.js +47 -0
  48. package/admin/features/generatePageContent/GeneratePageContentGateway.js.map +1 -0
  49. package/admin/features/generatePageContent/GeneratePageContentUseCase.d.ts +11 -0
  50. package/admin/features/generatePageContent/GeneratePageContentUseCase.js +18 -0
  51. package/admin/features/generatePageContent/GeneratePageContentUseCase.js.map +1 -0
  52. package/admin/features/generatePageContent/abstractions.d.ts +25 -0
  53. package/admin/features/generatePageContent/abstractions.js +6 -0
  54. package/admin/features/generatePageContent/abstractions.js.map +1 -0
  55. package/admin/features/generatePageContent/feature.d.ts +1 -0
  56. package/admin/features/generatePageContent/feature.js +13 -0
  57. package/admin/features/generatePageContent/feature.js.map +1 -0
  58. package/admin/features/generatePageContent/index.d.ts +3 -0
  59. package/admin/features/generatePageContent/index.js +2 -0
  60. package/admin/features/listModels/ListModelsGateway.d.ts +12 -0
  61. package/admin/features/listModels/ListModelsGateway.js +34 -0
  62. package/admin/features/listModels/ListModelsGateway.js.map +1 -0
  63. package/admin/features/listModels/ListModelsRepository.d.ts +13 -0
  64. package/admin/features/listModels/ListModelsRepository.js +27 -0
  65. package/admin/features/listModels/ListModelsRepository.js.map +1 -0
  66. package/admin/features/listModels/ListModelsUseCase.d.ts +10 -0
  67. package/admin/features/listModels/ListModelsUseCase.js +18 -0
  68. package/admin/features/listModels/ListModelsUseCase.js.map +1 -0
  69. package/admin/features/listModels/abstractions.d.ts +28 -0
  70. package/admin/features/listModels/abstractions.js +7 -0
  71. package/admin/features/listModels/abstractions.js.map +1 -0
  72. package/admin/features/listModels/feature.d.ts +3 -0
  73. package/admin/features/listModels/feature.js +21 -0
  74. package/admin/features/listModels/feature.js.map +1 -0
  75. package/admin/features/listModels/index.d.ts +2 -0
  76. package/admin/features/listModels/index.js +2 -0
  77. package/admin/features/settings/getSettings/GetSettingsGateway.d.ts +12 -0
  78. package/admin/features/settings/getSettings/GetSettingsGateway.js +29 -0
  79. package/admin/features/settings/getSettings/GetSettingsGateway.js.map +1 -0
  80. package/admin/features/settings/getSettings/GetSettingsRepository.d.ts +14 -0
  81. package/admin/features/settings/getSettings/GetSettingsRepository.js +31 -0
  82. package/admin/features/settings/getSettings/GetSettingsRepository.js.map +1 -0
  83. package/admin/features/settings/getSettings/GetSettingsUseCase.d.ts +11 -0
  84. package/admin/features/settings/getSettings/GetSettingsUseCase.js +18 -0
  85. package/admin/features/settings/getSettings/GetSettingsUseCase.js.map +1 -0
  86. package/admin/features/settings/getSettings/abstractions.d.ts +22 -0
  87. package/admin/features/settings/getSettings/abstractions.js +7 -0
  88. package/admin/features/settings/getSettings/abstractions.js.map +1 -0
  89. package/admin/features/settings/getSettings/feature.d.ts +3 -0
  90. package/admin/features/settings/getSettings/feature.js +21 -0
  91. package/admin/features/settings/getSettings/feature.js.map +1 -0
  92. package/admin/features/settings/getSettings/index.d.ts +2 -0
  93. package/admin/features/settings/getSettings/index.js +2 -0
  94. package/admin/features/settings/shared/SettingsCache.d.ts +10 -0
  95. package/admin/features/settings/shared/SettingsCache.js +19 -0
  96. package/admin/features/settings/shared/SettingsCache.js.map +1 -0
  97. package/admin/features/settings/shared/abstractions.d.ts +50 -0
  98. package/admin/features/settings/shared/abstractions.js +5 -0
  99. package/admin/features/settings/shared/abstractions.js.map +1 -0
  100. package/admin/features/settings/shared/feature.d.ts +3 -0
  101. package/admin/features/settings/shared/feature.js +17 -0
  102. package/admin/features/settings/shared/feature.js.map +1 -0
  103. package/admin/features/settings/shared/index.d.ts +2 -0
  104. package/admin/features/settings/shared/index.js +2 -0
  105. package/admin/features/settings/updateSettings/UpdateSettingsGateway.d.ts +12 -0
  106. package/admin/features/settings/updateSettings/UpdateSettingsGateway.js +45 -0
  107. package/admin/features/settings/updateSettings/UpdateSettingsGateway.js.map +1 -0
  108. package/admin/features/settings/updateSettings/UpdateSettingsRepository.d.ts +13 -0
  109. package/admin/features/settings/updateSettings/UpdateSettingsRepository.js +23 -0
  110. package/admin/features/settings/updateSettings/UpdateSettingsRepository.js.map +1 -0
  111. package/admin/features/settings/updateSettings/UpdateSettingsUseCase.d.ts +11 -0
  112. package/admin/features/settings/updateSettings/UpdateSettingsUseCase.js +18 -0
  113. package/admin/features/settings/updateSettings/UpdateSettingsUseCase.js.map +1 -0
  114. package/admin/features/settings/updateSettings/abstractions.d.ts +22 -0
  115. package/admin/features/settings/updateSettings/abstractions.js +7 -0
  116. package/admin/features/settings/updateSettings/abstractions.js.map +1 -0
  117. package/admin/features/settings/updateSettings/feature.d.ts +3 -0
  118. package/admin/features/settings/updateSettings/feature.js +21 -0
  119. package/admin/features/settings/updateSettings/feature.js.map +1 -0
  120. package/admin/features/settings/updateSettings/index.d.ts +2 -0
  121. package/admin/features/settings/updateSettings/index.js +2 -0
  122. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsPage.d.ts +4 -0
  123. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsPage.js +49 -0
  124. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsPage.js.map +1 -0
  125. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsPresenter.d.ts +26 -0
  126. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsPresenter.js +148 -0
  127. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsPresenter.js.map +1 -0
  128. package/admin/presentation/AiPowerUpsSettings/abstractions.d.ts +18 -0
  129. package/admin/presentation/AiPowerUpsSettings/abstractions.js +5 -0
  130. package/admin/presentation/AiPowerUpsSettings/abstractions.js.map +1 -0
  131. package/admin/presentation/AiPowerUpsSettings/feature.d.ts +3 -0
  132. package/admin/presentation/AiPowerUpsSettings/feature.js +25 -0
  133. package/admin/presentation/AiPowerUpsSettings/feature.js.map +1 -0
  134. package/admin/presentation/AiPowerUpsSettings/index.d.ts +3 -0
  135. package/admin/presentation/AiPowerUpsSettings/index.js +3 -0
  136. package/admin/presentation/AiPowerUpsSettings/settingsGroup.d.ts +17 -0
  137. package/admin/presentation/AiPowerUpsSettings/settingsGroup.js +5 -0
  138. package/admin/presentation/AiPowerUpsSettings/settingsGroup.js.map +1 -0
  139. package/admin/presentation/AiPowerUpsSettings/useAiPowerUpsSettings.d.ts +4 -0
  140. package/admin/presentation/AiPowerUpsSettings/useAiPowerUpsSettings.js +27 -0
  141. package/admin/presentation/AiPowerUpsSettings/useAiPowerUpsSettings.js.map +1 -0
  142. package/admin/presentation/AiPromptFormFactory/AiPromptFormFactory.d.ts +20 -0
  143. package/admin/presentation/AiPromptFormFactory/AiPromptFormFactory.js +108 -0
  144. package/admin/presentation/AiPromptFormFactory/AiPromptFormFactory.js.map +1 -0
  145. package/admin/presentation/AiPromptFormFactory/abstractions.d.ts +14 -0
  146. package/admin/presentation/AiPromptFormFactory/abstractions.js +5 -0
  147. package/admin/presentation/AiPromptFormFactory/abstractions.js.map +1 -0
  148. package/admin/presentation/AiPromptFormFactory/feature.d.ts +1 -0
  149. package/admin/presentation/AiPromptFormFactory/feature.js +11 -0
  150. package/admin/presentation/AiPromptFormFactory/feature.js.map +1 -0
  151. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsDialog.d.ts +9 -0
  152. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsDialog.js +118 -0
  153. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsDialog.js.map +1 -0
  154. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsDrawer.d.ts +9 -0
  155. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsDrawer.js +72 -0
  156. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsDrawer.js.map +1 -0
  157. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsMenuItem.d.ts +4 -0
  158. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsMenuItem.js +21 -0
  159. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsMenuItem.js.map +1 -0
  160. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsOverlays.d.ts +2 -0
  161. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsOverlays.js +17 -0
  162. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsOverlays.js.map +1 -0
  163. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsPresenter.d.ts +25 -0
  164. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsPresenter.js +90 -0
  165. package/admin/presentation/CmsCompareEntryRevisions/CmsCompareEntryRevisionsPresenter.js.map +1 -0
  166. package/admin/presentation/CmsCompareEntryRevisions/Extension.d.ts +2 -0
  167. package/admin/presentation/CmsCompareEntryRevisions/Extension.js +16 -0
  168. package/admin/presentation/CmsCompareEntryRevisions/Extension.js.map +1 -0
  169. package/admin/presentation/CmsCompareEntryRevisions/abstractions.d.ts +29 -0
  170. package/admin/presentation/CmsCompareEntryRevisions/abstractions.js +5 -0
  171. package/admin/presentation/CmsCompareEntryRevisions/abstractions.js.map +1 -0
  172. package/admin/presentation/CmsCompareEntryRevisions/feature.d.ts +3 -0
  173. package/admin/presentation/CmsCompareEntryRevisions/feature.js +17 -0
  174. package/admin/presentation/CmsCompareEntryRevisions/feature.js.map +1 -0
  175. package/admin/presentation/CmsContentGeneration/CmsGenerateContentButton.d.ts +4 -0
  176. package/admin/presentation/CmsContentGeneration/CmsGenerateContentButton.js +27 -0
  177. package/admin/presentation/CmsContentGeneration/CmsGenerateContentButton.js.map +1 -0
  178. package/admin/presentation/CmsContentGeneration/CmsGenerateContentDialog.d.ts +5 -0
  179. package/admin/presentation/CmsContentGeneration/CmsGenerateContentDialog.js +106 -0
  180. package/admin/presentation/CmsContentGeneration/CmsGenerateContentDialog.js.map +1 -0
  181. package/admin/presentation/CmsContentGeneration/CmsGenerateContentPresenter.d.ts +29 -0
  182. package/admin/presentation/CmsContentGeneration/CmsGenerateContentPresenter.js +120 -0
  183. package/admin/presentation/CmsContentGeneration/CmsGenerateContentPresenter.js.map +1 -0
  184. package/admin/presentation/CmsContentGeneration/Extension.d.ts +2 -0
  185. package/admin/presentation/CmsContentGeneration/Extension.js +27 -0
  186. package/admin/presentation/CmsContentGeneration/Extension.js.map +1 -0
  187. package/admin/presentation/CmsContentGeneration/abstractions.d.ts +20 -0
  188. package/admin/presentation/CmsContentGeneration/abstractions.js +5 -0
  189. package/admin/presentation/CmsContentGeneration/abstractions.js.map +1 -0
  190. package/admin/presentation/CmsContentGeneration/feature.d.ts +3 -0
  191. package/admin/presentation/CmsContentGeneration/feature.js +17 -0
  192. package/admin/presentation/CmsContentGeneration/feature.js.map +1 -0
  193. package/admin/presentation/CmsEntryWizard/CmsEntryWizard.d.ts +4 -0
  194. package/admin/presentation/CmsEntryWizard/CmsEntryWizard.js +113 -0
  195. package/admin/presentation/CmsEntryWizard/CmsEntryWizard.js.map +1 -0
  196. package/admin/presentation/CmsEntryWizard/CmsEntryWizardGate.d.ts +4 -0
  197. package/admin/presentation/CmsEntryWizard/CmsEntryWizardGate.js +19 -0
  198. package/admin/presentation/CmsEntryWizard/CmsEntryWizardGate.js.map +1 -0
  199. package/admin/presentation/CmsEntryWizard/Extension.d.ts +2 -0
  200. package/admin/presentation/CmsEntryWizard/Extension.js +10 -0
  201. package/admin/presentation/CmsEntryWizard/Extension.js.map +1 -0
  202. package/admin/presentation/ProjectsSettings.d.ts +11 -0
  203. package/admin/presentation/ProjectsSettings.js +56 -0
  204. package/admin/presentation/ProjectsSettings.js.map +1 -0
  205. package/admin/presentation/ProvidersSettings.d.ts +16 -0
  206. package/admin/presentation/ProvidersSettings.js +46 -0
  207. package/admin/presentation/ProvidersSettings.js.map +1 -0
  208. package/admin/presentation/ReaderPersonasSettings.d.ts +11 -0
  209. package/admin/presentation/ReaderPersonasSettings.js +37 -0
  210. package/admin/presentation/ReaderPersonasSettings.js.map +1 -0
  211. package/admin/presentation/WbContentGeneration/Extension.d.ts +2 -0
  212. package/admin/presentation/WbContentGeneration/Extension.js +22 -0
  213. package/admin/presentation/WbContentGeneration/Extension.js.map +1 -0
  214. package/admin/presentation/WbContentGeneration/GenerateContentButton.d.ts +2 -0
  215. package/admin/presentation/WbContentGeneration/GenerateContentButton.js +19 -0
  216. package/admin/presentation/WbContentGeneration/GenerateContentButton.js.map +1 -0
  217. package/admin/presentation/WbContentGeneration/GenerateContentDialog.d.ts +21 -0
  218. package/admin/presentation/WbContentGeneration/GenerateContentDialog.js +125 -0
  219. package/admin/presentation/WbContentGeneration/GenerateContentDialog.js.map +1 -0
  220. package/admin/presentation/WbContentGeneration/GenerateContentPresenter.d.ts +33 -0
  221. package/admin/presentation/WbContentGeneration/GenerateContentPresenter.js +161 -0
  222. package/admin/presentation/WbContentGeneration/GenerateContentPresenter.js.map +1 -0
  223. package/admin/presentation/WbContentGeneration/PROCESS_IDEA.md +190 -0
  224. package/admin/presentation/WbContentGeneration/abstractions.d.ts +31 -0
  225. package/admin/presentation/WbContentGeneration/abstractions.js +5 -0
  226. package/admin/presentation/WbContentGeneration/abstractions.js.map +1 -0
  227. package/admin/presentation/WbContentGeneration/decompressGzipBase64.d.ts +1 -0
  228. package/admin/presentation/WbContentGeneration/decompressGzipBase64.js +13 -0
  229. package/admin/presentation/WbContentGeneration/decompressGzipBase64.js.map +1 -0
  230. package/admin/presentation/WbContentGeneration/feature.d.ts +3 -0
  231. package/admin/presentation/WbContentGeneration/feature.js +17 -0
  232. package/admin/presentation/WbContentGeneration/feature.js.map +1 -0
  233. package/admin/presentation/WriterPersonasSettings.d.ts +11 -0
  234. package/admin/presentation/WriterPersonasSettings.js +37 -0
  235. package/admin/presentation/WriterPersonasSettings.js.map +1 -0
  236. package/admin/routes.d.ts +4 -0
  237. package/admin/routes.js +10 -0
  238. package/admin/routes.js.map +1 -0
  239. package/api/Extension.d.ts +4 -0
  240. package/api/Extension.js +45 -0
  241. package/api/Extension.js.map +1 -0
  242. package/api/constants.d.ts +1 -0
  243. package/api/constants.js +4 -0
  244. package/api/constants.js.map +1 -0
  245. package/api/features/AiImageEnrichment/AiImageEnrichmentAfterCreateHandler.d.ts +13 -0
  246. package/api/features/AiImageEnrichment/AiImageEnrichmentAfterCreateHandler.js +31 -0
  247. package/api/features/AiImageEnrichment/AiImageEnrichmentAfterCreateHandler.js.map +1 -0
  248. package/api/features/AiImageEnrichment/AiImageEnrichmentTask.d.ts +36 -0
  249. package/api/features/AiImageEnrichment/AiImageEnrichmentTask.js +142 -0
  250. package/api/features/AiImageEnrichment/AiImageEnrichmentTask.js.map +1 -0
  251. package/api/features/AiImageEnrichment/feature.d.ts +4 -0
  252. package/api/features/AiImageEnrichment/feature.js +13 -0
  253. package/api/features/AiImageEnrichment/feature.js.map +1 -0
  254. package/api/features/AiPromptContext/AiPromptContextBuilder.d.ts +19 -0
  255. package/api/features/AiPromptContext/AiPromptContextBuilder.js +147 -0
  256. package/api/features/AiPromptContext/AiPromptContextBuilder.js.map +1 -0
  257. package/api/features/AiPromptContext/ProjectFileAssembler.d.ts +22 -0
  258. package/api/features/AiPromptContext/ProjectFileAssembler.js +76 -0
  259. package/api/features/AiPromptContext/ProjectFileAssembler.js.map +1 -0
  260. package/api/features/AiPromptContext/ProjectFileCache.d.ts +16 -0
  261. package/api/features/AiPromptContext/ProjectFileCache.js +61 -0
  262. package/api/features/AiPromptContext/ProjectFileCache.js.map +1 -0
  263. package/api/features/AiPromptContext/ProjectSection.d.ts +4 -0
  264. package/api/features/AiPromptContext/ProjectSection.js +35 -0
  265. package/api/features/AiPromptContext/ProjectSection.js.map +1 -0
  266. package/api/features/AiPromptContext/ReadProjectFileTool.d.ts +3 -0
  267. package/api/features/AiPromptContext/ReadProjectFileTool.js +36 -0
  268. package/api/features/AiPromptContext/ReadProjectFileTool.js.map +1 -0
  269. package/api/features/AiPromptContext/ReaderPersonaSection.d.ts +4 -0
  270. package/api/features/AiPromptContext/ReaderPersonaSection.js +10 -0
  271. package/api/features/AiPromptContext/ReaderPersonaSection.js.map +1 -0
  272. package/api/features/AiPromptContext/WriterPersonaSection.d.ts +4 -0
  273. package/api/features/AiPromptContext/WriterPersonaSection.js +10 -0
  274. package/api/features/AiPromptContext/WriterPersonaSection.js.map +1 -0
  275. package/api/features/AiPromptContext/abstractions.d.ts +71 -0
  276. package/api/features/AiPromptContext/abstractions.js +15 -0
  277. package/api/features/AiPromptContext/abstractions.js.map +1 -0
  278. package/api/features/AiPromptContext/feature.d.ts +4 -0
  279. package/api/features/AiPromptContext/feature.js +15 -0
  280. package/api/features/AiPromptContext/feature.js.map +1 -0
  281. package/api/features/AiPromptContext/index.d.ts +1 -0
  282. package/api/features/AiPromptContext/index.js +1 -0
  283. package/api/features/CmsCompareEntryRevisions/CmsCompareEntryRevisionsUseCase.d.ts +22 -0
  284. package/api/features/CmsCompareEntryRevisions/CmsCompareEntryRevisionsUseCase.js +136 -0
  285. package/api/features/CmsCompareEntryRevisions/CmsCompareEntryRevisionsUseCase.js.map +1 -0
  286. package/api/features/CmsCompareEntryRevisions/abstractions.d.ts +18 -0
  287. package/api/features/CmsCompareEntryRevisions/abstractions.js +5 -0
  288. package/api/features/CmsCompareEntryRevisions/abstractions.js.map +1 -0
  289. package/api/features/CmsCompareEntryRevisions/feature.d.ts +4 -0
  290. package/api/features/CmsCompareEntryRevisions/feature.js +11 -0
  291. package/api/features/CmsCompareEntryRevisions/feature.js.map +1 -0
  292. package/api/features/CmsCompareEntryRevisions/index.d.ts +2 -0
  293. package/api/features/CmsCompareEntryRevisions/index.js +2 -0
  294. package/api/features/CmsGenerateEntryContent/CmsGenerateEntryContentTask.d.ts +33 -0
  295. package/api/features/CmsGenerateEntryContent/CmsGenerateEntryContentTask.js +84 -0
  296. package/api/features/CmsGenerateEntryContent/CmsGenerateEntryContentTask.js.map +1 -0
  297. package/api/features/CmsGenerateEntryContent/CmsGenerateEntryContentUseCase.d.ts +29 -0
  298. package/api/features/CmsGenerateEntryContent/CmsGenerateEntryContentUseCase.js +141 -0
  299. package/api/features/CmsGenerateEntryContent/CmsGenerateEntryContentUseCase.js.map +1 -0
  300. package/api/features/CmsGenerateEntryContent/abstractions.d.ts +36 -0
  301. package/api/features/CmsGenerateEntryContent/abstractions.js +5 -0
  302. package/api/features/CmsGenerateEntryContent/abstractions.js.map +1 -0
  303. package/api/features/CmsGenerateEntryContent/buildPrompt.d.ts +2 -0
  304. package/api/features/CmsGenerateEntryContent/buildPrompt.js +61 -0
  305. package/api/features/CmsGenerateEntryContent/buildPrompt.js.map +1 -0
  306. package/api/features/CmsGenerateEntryContent/feature.d.ts +4 -0
  307. package/api/features/CmsGenerateEntryContent/feature.js +13 -0
  308. package/api/features/CmsGenerateEntryContent/feature.js.map +1 -0
  309. package/api/features/CmsGenerateEntryContent/index.d.ts +1 -0
  310. package/api/features/CmsGenerateEntryContent/index.js +1 -0
  311. package/api/features/CmsGenerateEntryContent/injectDynamicZoneTypenames.d.ts +2 -0
  312. package/api/features/CmsGenerateEntryContent/injectDynamicZoneTypenames.js +30 -0
  313. package/api/features/CmsGenerateEntryContent/injectDynamicZoneTypenames.js.map +1 -0
  314. package/api/features/CmsResolveImageTool/CmsResolveImageTool.d.ts +14 -0
  315. package/api/features/CmsResolveImageTool/CmsResolveImageTool.js +27 -0
  316. package/api/features/CmsResolveImageTool/CmsResolveImageTool.js.map +1 -0
  317. package/api/features/CmsResolveImageTool/feature.d.ts +4 -0
  318. package/api/features/CmsResolveImageTool/feature.js +11 -0
  319. package/api/features/CmsResolveImageTool/feature.js.map +1 -0
  320. package/api/features/ExtractFrontmatter/ExtractFrontmatterBeforeCreateHandler.d.ts +11 -0
  321. package/api/features/ExtractFrontmatter/ExtractFrontmatterBeforeCreateHandler.js +34 -0
  322. package/api/features/ExtractFrontmatter/ExtractFrontmatterBeforeCreateHandler.js.map +1 -0
  323. package/api/features/ExtractFrontmatter/feature.d.ts +4 -0
  324. package/api/features/ExtractFrontmatter/feature.js +11 -0
  325. package/api/features/ExtractFrontmatter/feature.js.map +1 -0
  326. package/api/features/GetSettings/GetSettingsRepository.d.ts +16 -0
  327. package/api/features/GetSettings/GetSettingsRepository.js +40 -0
  328. package/api/features/GetSettings/GetSettingsRepository.js.map +1 -0
  329. package/api/features/GetSettings/GetSettingsUseCase.d.ts +10 -0
  330. package/api/features/GetSettings/GetSettingsUseCase.js +18 -0
  331. package/api/features/GetSettings/GetSettingsUseCase.js.map +1 -0
  332. package/api/features/GetSettings/abstractions.d.ts +16 -0
  333. package/api/features/GetSettings/abstractions.js +6 -0
  334. package/api/features/GetSettings/abstractions.js.map +1 -0
  335. package/api/features/GetSettings/feature.d.ts +4 -0
  336. package/api/features/GetSettings/feature.js +13 -0
  337. package/api/features/GetSettings/feature.js.map +1 -0
  338. package/api/features/GetSettings/index.d.ts +2 -0
  339. package/api/features/GetSettings/index.js +2 -0
  340. package/api/features/Projects/ProjectsHandler.d.ts +31 -0
  341. package/api/features/Projects/ProjectsHandler.js +103 -0
  342. package/api/features/Projects/ProjectsHandler.js.map +1 -0
  343. package/api/features/Projects/feature.d.ts +4 -0
  344. package/api/features/Projects/feature.js +11 -0
  345. package/api/features/Projects/feature.js.map +1 -0
  346. package/api/features/Projects/types.d.ts +50 -0
  347. package/api/features/Projects/types.js +0 -0
  348. package/api/features/Providers/ProvidersGraphQLMapper.d.ts +21 -0
  349. package/api/features/Providers/ProvidersGraphQLMapper.js +39 -0
  350. package/api/features/Providers/ProvidersGraphQLMapper.js.map +1 -0
  351. package/api/features/Providers/ProvidersHandler.d.ts +26 -0
  352. package/api/features/Providers/ProvidersHandler.js +79 -0
  353. package/api/features/Providers/ProvidersHandler.js.map +1 -0
  354. package/api/features/Providers/feature.d.ts +4 -0
  355. package/api/features/Providers/feature.js +13 -0
  356. package/api/features/Providers/feature.js.map +1 -0
  357. package/api/features/Providers/index.d.ts +1 -0
  358. package/api/features/Providers/index.js +0 -0
  359. package/api/features/Providers/types.d.ts +29 -0
  360. package/api/features/Providers/types.js +0 -0
  361. package/api/features/ReaderPersonas/ReaderPersonasHandler.d.ts +20 -0
  362. package/api/features/ReaderPersonas/ReaderPersonasHandler.js +43 -0
  363. package/api/features/ReaderPersonas/ReaderPersonasHandler.js.map +1 -0
  364. package/api/features/ReaderPersonas/feature.d.ts +4 -0
  365. package/api/features/ReaderPersonas/feature.js +11 -0
  366. package/api/features/ReaderPersonas/feature.js.map +1 -0
  367. package/api/features/ReaderPersonas/index.d.ts +2 -0
  368. package/api/features/ReaderPersonas/index.js +1 -0
  369. package/api/features/ReaderPersonas/types.d.ts +24 -0
  370. package/api/features/ReaderPersonas/types.js +0 -0
  371. package/api/features/UpdateSettings/UpdateSettingsRepository.d.ts +16 -0
  372. package/api/features/UpdateSettings/UpdateSettingsRepository.js +71 -0
  373. package/api/features/UpdateSettings/UpdateSettingsRepository.js.map +1 -0
  374. package/api/features/UpdateSettings/UpdateSettingsUseCase.d.ts +13 -0
  375. package/api/features/UpdateSettings/UpdateSettingsUseCase.js +30 -0
  376. package/api/features/UpdateSettings/UpdateSettingsUseCase.js.map +1 -0
  377. package/api/features/UpdateSettings/abstractions.d.ts +36 -0
  378. package/api/features/UpdateSettings/abstractions.js +8 -0
  379. package/api/features/UpdateSettings/abstractions.js.map +1 -0
  380. package/api/features/UpdateSettings/errors.d.ts +10 -0
  381. package/api/features/UpdateSettings/errors.js +14 -0
  382. package/api/features/UpdateSettings/errors.js.map +1 -0
  383. package/api/features/UpdateSettings/events.d.ts +10 -0
  384. package/api/features/UpdateSettings/events.js +21 -0
  385. package/api/features/UpdateSettings/events.js.map +1 -0
  386. package/api/features/UpdateSettings/feature.d.ts +4 -0
  387. package/api/features/UpdateSettings/feature.js +13 -0
  388. package/api/features/UpdateSettings/feature.js.map +1 -0
  389. package/api/features/UpdateSettings/index.d.ts +1 -0
  390. package/api/features/UpdateSettings/index.js +1 -0
  391. package/api/features/WbGeneratePageContent/ComponentFilter.d.ts +18 -0
  392. package/api/features/WbGeneratePageContent/ComponentFilter.js +69 -0
  393. package/api/features/WbGeneratePageContent/ComponentFilter.js.map +1 -0
  394. package/api/features/WbGeneratePageContent/LlmJsonResponse.d.ts +7 -0
  395. package/api/features/WbGeneratePageContent/LlmJsonResponse.js +35 -0
  396. package/api/features/WbGeneratePageContent/LlmJsonResponse.js.map +1 -0
  397. package/api/features/WbGeneratePageContent/WbGeneratePageContentTask.d.ts +34 -0
  398. package/api/features/WbGeneratePageContent/WbGeneratePageContentTask.js +85 -0
  399. package/api/features/WbGeneratePageContent/WbGeneratePageContentTask.js.map +1 -0
  400. package/api/features/WbGeneratePageContent/WbGeneratePageContentUseCase.d.ts +23 -0
  401. package/api/features/WbGeneratePageContent/WbGeneratePageContentUseCase.js +121 -0
  402. package/api/features/WbGeneratePageContent/WbGeneratePageContentUseCase.js.map +1 -0
  403. package/api/features/WbGeneratePageContent/abstractions.d.ts +31 -0
  404. package/api/features/WbGeneratePageContent/abstractions.js +5 -0
  405. package/api/features/WbGeneratePageContent/abstractions.js.map +1 -0
  406. package/api/features/WbGeneratePageContent/buildPrompt.d.ts +3 -0
  407. package/api/features/WbGeneratePageContent/buildPrompt.js +158 -0
  408. package/api/features/WbGeneratePageContent/buildPrompt.js.map +1 -0
  409. package/api/features/WbGeneratePageContent/feature.d.ts +4 -0
  410. package/api/features/WbGeneratePageContent/feature.js +13 -0
  411. package/api/features/WbGeneratePageContent/feature.js.map +1 -0
  412. package/api/features/WbGeneratePageContent/index.d.ts +1 -0
  413. package/api/features/WbGeneratePageContent/index.js +1 -0
  414. package/api/features/WbTranslatePage/LexicalParser.d.ts +10 -0
  415. package/api/features/WbTranslatePage/LexicalParser.js +37 -0
  416. package/api/features/WbTranslatePage/LexicalParser.js.map +1 -0
  417. package/api/features/WbTranslatePage/WbTranslatePageDecorator.d.ts +27 -0
  418. package/api/features/WbTranslatePage/WbTranslatePageDecorator.js +134 -0
  419. package/api/features/WbTranslatePage/WbTranslatePageDecorator.js.map +1 -0
  420. package/api/features/WbTranslatePage/abstractions/LexicalParser.d.ts +7 -0
  421. package/api/features/WbTranslatePage/abstractions/LexicalParser.js +5 -0
  422. package/api/features/WbTranslatePage/abstractions/LexicalParser.js.map +1 -0
  423. package/api/features/WbTranslatePage/feature.d.ts +4 -0
  424. package/api/features/WbTranslatePage/feature.js +13 -0
  425. package/api/features/WbTranslatePage/feature.js.map +1 -0
  426. package/api/features/WbTranslatePage/index.d.ts +2 -0
  427. package/api/features/WbTranslatePage/index.js +2 -0
  428. package/api/features/WriterPersonas/WriterPersonasHandler.d.ts +20 -0
  429. package/api/features/WriterPersonas/WriterPersonasHandler.js +43 -0
  430. package/api/features/WriterPersonas/WriterPersonasHandler.js.map +1 -0
  431. package/api/features/WriterPersonas/feature.d.ts +4 -0
  432. package/api/features/WriterPersonas/feature.js +11 -0
  433. package/api/features/WriterPersonas/feature.js.map +1 -0
  434. package/api/features/WriterPersonas/index.d.ts +2 -0
  435. package/api/features/WriterPersonas/index.js +1 -0
  436. package/api/features/WriterPersonas/types.d.ts +24 -0
  437. package/api/features/WriterPersonas/types.js +0 -0
  438. package/api/features/shared/SettingsCache.d.ts +12 -0
  439. package/api/features/shared/SettingsCache.js +22 -0
  440. package/api/features/shared/SettingsCache.js.map +1 -0
  441. package/api/features/shared/abstractions.d.ts +33 -0
  442. package/api/features/shared/abstractions.js +7 -0
  443. package/api/features/shared/abstractions.js.map +1 -0
  444. package/api/features/shared/index.d.ts +3 -0
  445. package/api/features/shared/index.js +1 -0
  446. package/api/graphql/AiPowerUpsSettingsGraphQLMapper.d.ts +13 -0
  447. package/api/graphql/AiPowerUpsSettingsGraphQLMapper.js +44 -0
  448. package/api/graphql/AiPowerUpsSettingsGraphQLMapper.js.map +1 -0
  449. package/api/graphql/BaseGraphQLSchema.d.ts +8 -0
  450. package/api/graphql/BaseGraphQLSchema.js +172 -0
  451. package/api/graphql/BaseGraphQLSchema.js.map +1 -0
  452. package/api/graphql/CmsCompareEntryRevisionsSchema.d.ts +8 -0
  453. package/api/graphql/CmsCompareEntryRevisionsSchema.js +68 -0
  454. package/api/graphql/CmsCompareEntryRevisionsSchema.js.map +1 -0
  455. package/api/graphql/abstractions.d.ts +9 -0
  456. package/api/graphql/abstractions.js +5 -0
  457. package/api/graphql/abstractions.js.map +1 -0
  458. package/api/types.d.ts +5 -0
  459. package/api/types.js +3 -0
  460. package/exports/admin/ai-powerups.d.ts +1 -0
  461. package/exports/admin/ai-powerups.js +1 -0
  462. package/exports/api/ai-powerups.d.ts +2 -0
  463. package/exports/api/ai-powerups.js +2 -0
  464. package/index.d.ts +1 -0
  465. package/index.js +1 -0
  466. package/package.json +65 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/GetSettings/GetSettingsRepository.js","sources":["../../../../src/api/features/GetSettings/GetSettingsRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { KeyValueStore } from \"@webiny/api-core/features/keyValueStore/index.js\";\nimport {\n AiPowerUpsSettingsGroupHandler,\n AiPowerUpsSettingsCache\n} from \"~/api/features/shared/index.js\";\nimport { GetSettingsRepository } from \"./abstractions.js\";\nimport type { IAiPowerUpsSettings } from \"~/api/types.js\";\nimport { AI_POWER_UPS_SETTINGS } from \"~/api/constants.js\";\n\nclass GetSettingsRepositoryImpl implements GetSettingsRepository.Interface {\n constructor(\n private keyValueStore: KeyValueStore.Interface,\n private handlers: AiPowerUpsSettingsGroupHandler.Interface[],\n private cache: AiPowerUpsSettingsCache.Interface\n ) {}\n\n async get(): Promise<Result<IAiPowerUpsSettings>> {\n const cached = this.cache.get();\n if (cached) {\n return Result.ok(cached.mapped);\n }\n\n const storeResult =\n await this.keyValueStore.get<Record<string, unknown>>(AI_POWER_UPS_SETTINGS);\n\n const raw: Record<string, unknown> =\n storeResult.isOk() && storeResult.value ? storeResult.value : {};\n\n const result: Record<string, unknown> = {};\n\n for (const handler of this.handlers) {\n result[handler.name] = handler.mapFromStorage(raw[handler.name]);\n }\n\n for (const key of Object.keys(raw)) {\n if (!(key in result)) {\n result[key] = raw[key];\n }\n }\n\n const mapped = result as unknown as IAiPowerUpsSettings;\n this.cache.set(raw, mapped);\n\n return Result.ok(mapped);\n }\n}\n\nexport const GetSettingsRepositoryImplementation = GetSettingsRepository.createImplementation({\n implementation: GetSettingsRepositoryImpl,\n dependencies: [\n KeyValueStore,\n [AiPowerUpsSettingsGroupHandler, { multiple: true }],\n AiPowerUpsSettingsCache\n ]\n});\n"],"names":["GetSettingsRepositoryImpl","keyValueStore","handlers","cache","cached","Result","storeResult","AI_POWER_UPS_SETTINGS","raw","result","handler","key","Object","mapped","GetSettingsRepositoryImplementation","GetSettingsRepository","KeyValueStore","AiPowerUpsSettingsGroupHandler","AiPowerUpsSettingsCache"],"mappings":";;;;;AAUA,MAAMA;IACF,YACYC,aAAsC,EACtCC,QAAoD,EACpDC,KAAwC,CAClD;aAHUF,aAAa,GAAbA;aACAC,QAAQ,GAARA;aACAC,KAAK,GAALA;IACT;IAEH,MAAM,MAA4C;QAC9C,MAAMC,SAAS,IAAI,CAAC,KAAK,CAAC,GAAG;QAC7B,IAAIA,QACA,OAAOC,OAAO,EAAE,CAACD,OAAO,MAAM;QAGlC,MAAME,cACF,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAA0BC;QAE1D,MAAMC,MACFF,YAAY,IAAI,MAAMA,YAAY,KAAK,GAAGA,YAAY,KAAK,GAAG,CAAC;QAEnE,MAAMG,SAAkC,CAAC;QAEzC,KAAK,MAAMC,WAAW,IAAI,CAAC,QAAQ,CAC/BD,MAAM,CAACC,QAAQ,IAAI,CAAC,GAAGA,QAAQ,cAAc,CAACF,GAAG,CAACE,QAAQ,IAAI,CAAC;QAGnE,KAAK,MAAMC,OAAOC,OAAO,IAAI,CAACJ,KAC1B,IAAI,CAAEG,CAAAA,OAAOF,MAAK,GACdA,MAAM,CAACE,IAAI,GAAGH,GAAG,CAACG,IAAI;QAI9B,MAAME,SAASJ;QACf,IAAI,CAAC,KAAK,CAAC,GAAG,CAACD,KAAKK;QAEpB,OAAOR,OAAO,EAAE,CAACQ;IACrB;AACJ;AAEO,MAAMC,sCAAsCC,sBAAsB,oBAAoB,CAAC;IAC1F,gBAAgBf;IAChB,cAAc;QACVgB;QACA;YAACC;YAAgC;gBAAE,UAAU;YAAK;SAAE;QACpDC;KACH;AACL"}
@@ -0,0 +1,10 @@
1
+ import { GetSettingsUseCase, GetSettingsRepository } from "./abstractions.js";
2
+ declare class GetSettingsUseCaseImpl implements GetSettingsUseCase.Interface {
3
+ private repository;
4
+ constructor(repository: GetSettingsRepository.Interface);
5
+ execute(): Promise<import("@webiny/feature/api/Result.js").Result<import("~/api/types.js").IAiPowerUpsSettings, never>>;
6
+ }
7
+ export declare const GetSettingsUseCaseImplementation: typeof GetSettingsUseCaseImpl & {
8
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IGetSettingsUseCase>;
9
+ };
10
+ export {};
@@ -0,0 +1,18 @@
1
+ import { GetSettingsRepository, GetSettingsUseCase } from "./abstractions.js";
2
+ class GetSettingsUseCaseImpl {
3
+ constructor(repository){
4
+ this.repository = repository;
5
+ }
6
+ execute() {
7
+ return this.repository.get();
8
+ }
9
+ }
10
+ const GetSettingsUseCaseImplementation = GetSettingsUseCase.createImplementation({
11
+ implementation: GetSettingsUseCaseImpl,
12
+ dependencies: [
13
+ GetSettingsRepository
14
+ ]
15
+ });
16
+ export { GetSettingsUseCaseImplementation };
17
+
18
+ //# sourceMappingURL=GetSettingsUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/GetSettings/GetSettingsUseCase.js","sources":["../../../../src/api/features/GetSettings/GetSettingsUseCase.ts"],"sourcesContent":["import { GetSettingsUseCase, GetSettingsRepository } from \"./abstractions.js\";\n\nclass GetSettingsUseCaseImpl implements GetSettingsUseCase.Interface {\n constructor(private repository: GetSettingsRepository.Interface) {}\n\n execute() {\n return this.repository.get();\n }\n}\n\nexport const GetSettingsUseCaseImplementation = GetSettingsUseCase.createImplementation({\n implementation: GetSettingsUseCaseImpl,\n dependencies: [GetSettingsRepository]\n});\n"],"names":["GetSettingsUseCaseImpl","repository","GetSettingsUseCaseImplementation","GetSettingsUseCase","GetSettingsRepository"],"mappings":";AAEA,MAAMA;IACF,YAAoBC,UAA2C,CAAE;aAA7CA,UAAU,GAAVA;IAA8C;IAElE,UAAU;QACN,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG;IAC9B;AACJ;AAEO,MAAMC,mCAAmCC,mBAAmB,oBAAoB,CAAC;IACpF,gBAAgBH;IAChB,cAAc;QAACI;KAAsB;AACzC"}
@@ -0,0 +1,16 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import type { IAiPowerUpsSettings } from "../../../api/types.js";
3
+ export interface IGetSettingsRepository {
4
+ get(): Promise<Result<IAiPowerUpsSettings>>;
5
+ }
6
+ export declare const GetSettingsRepository: import("@webiny/di").Abstraction<IGetSettingsRepository>;
7
+ export declare namespace GetSettingsRepository {
8
+ type Interface = IGetSettingsRepository;
9
+ }
10
+ export interface IGetSettingsUseCase {
11
+ execute(): Promise<Result<IAiPowerUpsSettings>>;
12
+ }
13
+ export declare const GetSettingsUseCase: import("@webiny/di").Abstraction<IGetSettingsUseCase>;
14
+ export declare namespace GetSettingsUseCase {
15
+ type Interface = IGetSettingsUseCase;
16
+ }
@@ -0,0 +1,6 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const GetSettingsRepository = createAbstraction("AiPowerUpsGetSettingsRepository");
3
+ const GetSettingsUseCase = createAbstraction("AiPowerUpsGetSettingsUseCase");
4
+ export { GetSettingsRepository, GetSettingsUseCase };
5
+
6
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/GetSettings/abstractions.js","sources":["../../../../src/api/features/GetSettings/abstractions.ts"],"sourcesContent":["import { createAbstraction, Result } from \"@webiny/feature/api\";\nimport type { IAiPowerUpsSettings } from \"~/api/types.js\";\n\nexport interface IGetSettingsRepository {\n get(): Promise<Result<IAiPowerUpsSettings>>;\n}\n\nexport const GetSettingsRepository = createAbstraction<IGetSettingsRepository>(\n \"AiPowerUpsGetSettingsRepository\"\n);\n\nexport namespace GetSettingsRepository {\n export type Interface = IGetSettingsRepository;\n}\n\nexport interface IGetSettingsUseCase {\n execute(): Promise<Result<IAiPowerUpsSettings>>;\n}\n\nexport const GetSettingsUseCase = createAbstraction<IGetSettingsUseCase>(\n \"AiPowerUpsGetSettingsUseCase\"\n);\n\nexport namespace GetSettingsUseCase {\n export type Interface = IGetSettingsUseCase;\n}\n"],"names":["GetSettingsRepository","createAbstraction","GetSettingsUseCase"],"mappings":";AAOO,MAAMA,wBAAwBC,kBACjC;AAWG,MAAMC,qBAAqBD,kBAC9B"}
@@ -0,0 +1,4 @@
1
+ export declare const GetSettingsFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -0,0 +1,13 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { GetSettingsRepositoryImplementation } from "./GetSettingsRepository.js";
3
+ import { GetSettingsUseCaseImplementation } from "./GetSettingsUseCase.js";
4
+ const GetSettingsFeature = createFeature({
5
+ name: "AiPowerUpsGetSettings",
6
+ register (container) {
7
+ container.register(GetSettingsRepositoryImplementation).inSingletonScope();
8
+ container.register(GetSettingsUseCaseImplementation);
9
+ }
10
+ });
11
+ export { GetSettingsFeature };
12
+
13
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/GetSettings/feature.js","sources":["../../../../src/api/features/GetSettings/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetSettingsRepositoryImplementation } from \"./GetSettingsRepository.js\";\nimport { GetSettingsUseCaseImplementation } from \"./GetSettingsUseCase.js\";\n\nexport const GetSettingsFeature = createFeature({\n name: \"AiPowerUpsGetSettings\",\n register(container) {\n container.register(GetSettingsRepositoryImplementation).inSingletonScope();\n container.register(GetSettingsUseCaseImplementation);\n }\n});\n"],"names":["GetSettingsFeature","createFeature","container","GetSettingsRepositoryImplementation","GetSettingsUseCaseImplementation"],"mappings":";;;AAIO,MAAMA,qBAAqBC,cAAc;IAC5C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,qCAAqC,gBAAgB;QACxED,UAAU,QAAQ,CAACE;IACvB;AACJ"}
@@ -0,0 +1,2 @@
1
+ import "../Providers/types.js";
2
+ export { GetSettingsUseCase } from "./abstractions.js";
@@ -0,0 +1,2 @@
1
+ import "../Providers/types.js";
2
+ export { GetSettingsUseCase } from "./abstractions.js";
@@ -0,0 +1,31 @@
1
+ import { z } from "zod";
2
+ import { AiPowerUpsSettingsGroupHandler } from "../../../api/features/shared/index.js";
3
+ import type { PersistedProjects, ProjectsSettings } from "./types.js";
4
+ declare class ProjectsHandlerImpl implements AiPowerUpsSettingsGroupHandler.Interface {
5
+ readonly name = "projects";
6
+ readonly inputSchema: z.ZodObject<{
7
+ presets: z.ZodArray<z.ZodObject<{
8
+ id: z.ZodString;
9
+ name: z.ZodString;
10
+ description: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
11
+ instructions: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
12
+ defaultReaderPersonaId: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
13
+ defaultWriterPersonaId: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
14
+ files: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
15
+ id: z.ZodString;
16
+ name: z.ZodString;
17
+ size: z.ZodNumber;
18
+ mimeType: z.ZodString;
19
+ src: z.ZodString;
20
+ }, z.core.$strip>>>>>;
21
+ version: z.ZodOptional<z.ZodNumber>;
22
+ }, z.core.$strip>>;
23
+ }, z.core.$strip>;
24
+ mapFromStorage(persisted: unknown): ProjectsSettings;
25
+ mapToStorage(internal: unknown, existing: unknown | null): Promise<PersistedProjects>;
26
+ private projectChanged;
27
+ }
28
+ declare const _default: typeof ProjectsHandlerImpl & {
29
+ __abstraction: import("@webiny/di").Abstraction<import("../shared/abstractions.js").IAiPowerUpsSettingsGroupHandler>;
30
+ };
31
+ export default _default;
@@ -0,0 +1,103 @@
1
+ import { z } from "zod";
2
+ import { AiPowerUpsSettingsGroupHandler } from "../shared/index.js";
3
+ const fileItemSchema = z.object({
4
+ id: z.string().min(1),
5
+ name: z.string().min(1),
6
+ size: z.number(),
7
+ mimeType: z.string().min(1),
8
+ src: z.string().min(1)
9
+ });
10
+ const TOKEN_BUDGET = 150000;
11
+ const CHARS_PER_TOKEN = 4;
12
+ const MAX_CONTEXT_BYTES = TOKEN_BUDGET * CHARS_PER_TOKEN;
13
+ const presetSchema = z.object({
14
+ id: z.string().min(1),
15
+ name: z.string().min(1),
16
+ description: z.string().nullish().optional(),
17
+ instructions: z.string().nullish().optional(),
18
+ defaultReaderPersonaId: z.string().nullish().optional(),
19
+ defaultWriterPersonaId: z.string().nullish().optional(),
20
+ files: z.array(fileItemSchema).nullish().optional(),
21
+ version: z.number().optional()
22
+ }).superRefine((preset, ctx)=>{
23
+ const instructionsBytes = preset.instructions?.length ?? 0;
24
+ const files = preset.files ?? [];
25
+ const totalFileBytes = files.reduce((sum, f)=>sum + f.size, 0);
26
+ const totalBytes = instructionsBytes + totalFileBytes;
27
+ if (totalBytes <= MAX_CONTEXT_BYTES) return;
28
+ const estimatedTokens = Math.ceil(totalBytes / CHARS_PER_TOKEN);
29
+ const sorted = [
30
+ ...files
31
+ ].sort((a, b)=>b.size - a.size);
32
+ const top = sorted.slice(0, 3).map((f)=>`${f.name} (~${Math.ceil(f.size / CHARS_PER_TOKEN).toLocaleString()} tokens)`);
33
+ ctx.addIssue({
34
+ code: z.ZodIssueCode.custom,
35
+ path: [
36
+ "files"
37
+ ],
38
+ message: `Project "${preset.name}" exceeds the ${TOKEN_BUDGET.toLocaleString()} token budget (~${estimatedTokens.toLocaleString()} tokens). Largest files: ${top.join(", ")}.`
39
+ });
40
+ });
41
+ const inputSchema = z.object({
42
+ presets: z.array(presetSchema)
43
+ });
44
+ class ProjectsHandlerImpl {
45
+ mapFromStorage(persisted) {
46
+ if (!persisted || "object" != typeof persisted) return {
47
+ presets: []
48
+ };
49
+ const data = persisted;
50
+ return {
51
+ presets: data.presets ?? []
52
+ };
53
+ }
54
+ async mapToStorage(internal, existing) {
55
+ const input = internal;
56
+ const prev = existing;
57
+ const prevById = new Map((prev?.presets ?? []).map((p)=>[
58
+ p.id,
59
+ p
60
+ ]));
61
+ return {
62
+ presets: input.presets.map((p)=>{
63
+ const prevProject = prevById.get(p.id);
64
+ const prevVersion = prevProject?.version ?? 0;
65
+ const changed = this.projectChanged(p, prevProject);
66
+ return {
67
+ id: p.id,
68
+ name: p.name,
69
+ description: p.description,
70
+ instructions: p.instructions,
71
+ defaultReaderPersonaId: p.defaultReaderPersonaId,
72
+ defaultWriterPersonaId: p.defaultWriterPersonaId,
73
+ files: (p.files ?? []).map((f)=>({
74
+ id: f.id,
75
+ name: f.name,
76
+ size: f.size,
77
+ mimeType: f.mimeType,
78
+ src: f.src
79
+ })),
80
+ version: changed ? prevVersion + 1 : prevVersion
81
+ };
82
+ })
83
+ };
84
+ }
85
+ projectChanged(current, prev) {
86
+ if (!prev) return true;
87
+ if (current.instructions !== prev.instructions) return true;
88
+ const currentFileIds = (current.files ?? []).map((f)=>f.id).join(",");
89
+ const prevFileIds = (prev.files ?? []).map((f)=>f.id).join(",");
90
+ return currentFileIds !== prevFileIds;
91
+ }
92
+ constructor(){
93
+ this.name = "projects";
94
+ this.inputSchema = inputSchema;
95
+ }
96
+ }
97
+ const ProjectsHandler = AiPowerUpsSettingsGroupHandler.createImplementation({
98
+ implementation: ProjectsHandlerImpl,
99
+ dependencies: []
100
+ });
101
+ export default ProjectsHandler;
102
+
103
+ //# sourceMappingURL=ProjectsHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/Projects/ProjectsHandler.js","sources":["../../../../src/api/features/Projects/ProjectsHandler.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { AiPowerUpsSettingsGroupHandler } from \"~/api/features/shared/index.js\";\nimport type {\n PersistedProjectPreset,\n PersistedProjects,\n ProjectPreset,\n ProjectsSettings\n} from \"./types.js\";\n\nconst fileItemSchema = z.object({\n id: z.string().min(1),\n name: z.string().min(1),\n size: z.number(),\n mimeType: z.string().min(1),\n src: z.string().min(1)\n});\n\nconst TOKEN_BUDGET = 150_000;\nconst CHARS_PER_TOKEN = 4;\nconst MAX_CONTEXT_BYTES = TOKEN_BUDGET * CHARS_PER_TOKEN;\n\nconst presetSchema = z\n .object({\n id: z.string().min(1),\n name: z.string().min(1),\n description: z.string().nullish().optional(),\n instructions: z.string().nullish().optional(),\n defaultReaderPersonaId: z.string().nullish().optional(),\n defaultWriterPersonaId: z.string().nullish().optional(),\n files: z.array(fileItemSchema).nullish().optional(),\n version: z.number().optional()\n })\n .superRefine((preset, ctx) => {\n const instructionsBytes = preset.instructions?.length ?? 0;\n const files = preset.files ?? [];\n const totalFileBytes = files.reduce((sum, f) => sum + f.size, 0);\n const totalBytes = instructionsBytes + totalFileBytes;\n\n if (totalBytes <= MAX_CONTEXT_BYTES) {\n return;\n }\n\n const estimatedTokens = Math.ceil(totalBytes / CHARS_PER_TOKEN);\n const sorted = [...files].sort((a, b) => b.size - a.size);\n const top = sorted\n .slice(0, 3)\n .map(\n f => `${f.name} (~${Math.ceil(f.size / CHARS_PER_TOKEN).toLocaleString()} tokens)`\n );\n\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: [\"files\"],\n message: `Project \"${preset.name}\" exceeds the ${TOKEN_BUDGET.toLocaleString()} token budget (~${estimatedTokens.toLocaleString()} tokens). Largest files: ${top.join(\", \")}.`\n });\n });\n\nconst inputSchema = z.object({\n presets: z.array(presetSchema)\n});\n\nclass ProjectsHandlerImpl implements AiPowerUpsSettingsGroupHandler.Interface {\n readonly name = \"projects\";\n readonly inputSchema = inputSchema;\n\n mapFromStorage(persisted: unknown): ProjectsSettings {\n if (!persisted || typeof persisted !== \"object\") {\n return { presets: [] };\n }\n\n const data = persisted as PersistedProjects;\n return { presets: data.presets ?? [] };\n }\n\n async mapToStorage(internal: unknown, existing: unknown | null): Promise<PersistedProjects> {\n const input = internal as ProjectsSettings;\n const prev = existing as PersistedProjects | null;\n const prevById = new Map((prev?.presets ?? []).map(p => [p.id, p]));\n\n return {\n presets: input.presets.map(p => {\n const prevProject = prevById.get(p.id);\n const prevVersion = prevProject?.version ?? 0;\n const changed = this.projectChanged(p, prevProject);\n\n return {\n id: p.id,\n name: p.name,\n description: p.description,\n instructions: p.instructions,\n defaultReaderPersonaId: p.defaultReaderPersonaId,\n defaultWriterPersonaId: p.defaultWriterPersonaId,\n files: (p.files ?? []).map(f => ({\n id: f.id,\n name: f.name,\n size: f.size,\n mimeType: f.mimeType,\n src: f.src\n })),\n version: changed ? prevVersion + 1 : prevVersion\n };\n })\n };\n }\n\n private projectChanged(\n current: ProjectPreset,\n prev: PersistedProjectPreset | undefined\n ): boolean {\n if (!prev) {\n return true;\n }\n if (current.instructions !== prev.instructions) {\n return true;\n }\n const currentFileIds = (current.files ?? []).map(f => f.id).join(\",\");\n const prevFileIds = (prev.files ?? []).map(f => f.id).join(\",\");\n return currentFileIds !== prevFileIds;\n }\n}\n\nexport default AiPowerUpsSettingsGroupHandler.createImplementation({\n implementation: ProjectsHandlerImpl,\n dependencies: []\n});\n"],"names":["fileItemSchema","z","TOKEN_BUDGET","CHARS_PER_TOKEN","MAX_CONTEXT_BYTES","presetSchema","preset","ctx","instructionsBytes","files","totalFileBytes","sum","f","totalBytes","estimatedTokens","Math","sorted","a","b","top","inputSchema","ProjectsHandlerImpl","persisted","data","internal","existing","input","prev","prevById","Map","p","prevProject","prevVersion","changed","current","currentFileIds","prevFileIds","AiPowerUpsSettingsGroupHandler"],"mappings":";;AASA,MAAMA,iBAAiBC,EAAE,MAAM,CAAC;IAC5B,IAAIA,EAAE,MAAM,GAAG,GAAG,CAAC;IACnB,MAAMA,EAAE,MAAM,GAAG,GAAG,CAAC;IACrB,MAAMA,EAAE,MAAM;IACd,UAAUA,EAAE,MAAM,GAAG,GAAG,CAAC;IACzB,KAAKA,EAAE,MAAM,GAAG,GAAG,CAAC;AACxB;AAEA,MAAMC,eAAe;AACrB,MAAMC,kBAAkB;AACxB,MAAMC,oBAAoBF,eAAeC;AAEzC,MAAME,eAAeJ,EAAAA,MACV,CAAC;IACJ,IAAIA,EAAE,MAAM,GAAG,GAAG,CAAC;IACnB,MAAMA,EAAE,MAAM,GAAG,GAAG,CAAC;IACrB,aAAaA,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ;IAC1C,cAAcA,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ;IAC3C,wBAAwBA,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ;IACrD,wBAAwBA,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ;IACrD,OAAOA,EAAE,KAAK,CAACD,gBAAgB,OAAO,GAAG,QAAQ;IACjD,SAASC,EAAE,MAAM,GAAG,QAAQ;AAChC,GACC,WAAW,CAAC,CAACK,QAAQC;IAClB,MAAMC,oBAAoBF,OAAO,YAAY,EAAE,UAAU;IACzD,MAAMG,QAAQH,OAAO,KAAK,IAAI,EAAE;IAChC,MAAMI,iBAAiBD,MAAM,MAAM,CAAC,CAACE,KAAKC,IAAMD,MAAMC,EAAE,IAAI,EAAE;IAC9D,MAAMC,aAAaL,oBAAoBE;IAEvC,IAAIG,cAAcT,mBACd;IAGJ,MAAMU,kBAAkBC,KAAK,IAAI,CAACF,aAAaV;IAC/C,MAAMa,SAAS;WAAIP;KAAM,CAAC,IAAI,CAAC,CAACQ,GAAGC,IAAMA,EAAE,IAAI,GAAGD,EAAE,IAAI;IACxD,MAAME,MAAMH,OACP,KAAK,CAAC,GAAG,GACT,GAAG,CACAJ,CAAAA,IAAK,GAAGA,EAAE,IAAI,CAAC,GAAG,EAAEG,KAAK,IAAI,CAACH,EAAE,IAAI,GAAGT,iBAAiB,cAAc,GAAG,QAAQ,CAAC;IAG1FI,IAAI,QAAQ,CAAC;QACT,MAAMN,EAAE,YAAY,CAAC,MAAM;QAC3B,MAAM;YAAC;SAAQ;QACf,SAAS,CAAC,SAAS,EAAEK,OAAO,IAAI,CAAC,cAAc,EAAEJ,aAAa,cAAc,GAAG,gBAAgB,EAAEY,gBAAgB,cAAc,GAAG,yBAAyB,EAAEK,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;IAClL;AACJ;AAEJ,MAAMC,cAAcnB,EAAE,MAAM,CAAC;IACzB,SAASA,EAAE,KAAK,CAACI;AACrB;AAEA,MAAMgB;IAIF,eAAeC,SAAkB,EAAoB;QACjD,IAAI,CAACA,aAAa,AAAqB,YAArB,OAAOA,WACrB,OAAO;YAAE,SAAS,EAAE;QAAC;QAGzB,MAAMC,OAAOD;QACb,OAAO;YAAE,SAASC,KAAK,OAAO,IAAI,EAAE;QAAC;IACzC;IAEA,MAAM,aAAaC,QAAiB,EAAEC,QAAwB,EAA8B;QACxF,MAAMC,QAAQF;QACd,MAAMG,OAAOF;QACb,MAAMG,WAAW,IAAIC,IAAKF,AAAAA,CAAAA,MAAM,WAAW,EAAC,EAAG,GAAG,CAACG,CAAAA,IAAK;gBAACA,EAAE,EAAE;gBAAEA;aAAE;QAEjE,OAAO;YACH,SAASJ,MAAM,OAAO,CAAC,GAAG,CAACI,CAAAA;gBACvB,MAAMC,cAAcH,SAAS,GAAG,CAACE,EAAE,EAAE;gBACrC,MAAME,cAAcD,aAAa,WAAW;gBAC5C,MAAME,UAAU,IAAI,CAAC,cAAc,CAACH,GAAGC;gBAEvC,OAAO;oBACH,IAAID,EAAE,EAAE;oBACR,MAAMA,EAAE,IAAI;oBACZ,aAAaA,EAAE,WAAW;oBAC1B,cAAcA,EAAE,YAAY;oBAC5B,wBAAwBA,EAAE,sBAAsB;oBAChD,wBAAwBA,EAAE,sBAAsB;oBAChD,OAAQA,AAAAA,CAAAA,EAAE,KAAK,IAAI,EAAC,EAAG,GAAG,CAAClB,CAAAA,IAAM;4BAC7B,IAAIA,EAAE,EAAE;4BACR,MAAMA,EAAE,IAAI;4BACZ,MAAMA,EAAE,IAAI;4BACZ,UAAUA,EAAE,QAAQ;4BACpB,KAAKA,EAAE,GAAG;wBACd;oBACA,SAASqB,UAAUD,cAAc,IAAIA;gBACzC;YACJ;QACJ;IACJ;IAEQ,eACJE,OAAsB,EACtBP,IAAwC,EACjC;QACP,IAAI,CAACA,MACD,OAAO;QAEX,IAAIO,QAAQ,YAAY,KAAKP,KAAK,YAAY,EAC1C,OAAO;QAEX,MAAMQ,iBAAkBD,AAAAA,CAAAA,QAAQ,KAAK,IAAI,EAAC,EAAG,GAAG,CAACtB,CAAAA,IAAKA,EAAE,EAAE,EAAE,IAAI,CAAC;QACjE,MAAMwB,cAAeT,AAAAA,CAAAA,KAAK,KAAK,IAAI,EAAC,EAAG,GAAG,CAACf,CAAAA,IAAKA,EAAE,EAAE,EAAE,IAAI,CAAC;QAC3D,OAAOuB,mBAAmBC;IAC9B;;aAxDS,IAAI,GAAG;aACP,WAAW,GAAGhB;;AAwD3B;AAEA,wBAAeiB,+BAA+B,oBAAoB,CAAC;IAC/D,gBAAgBhB;IAChB,cAAc,EAAE;AACpB"}
@@ -0,0 +1,4 @@
1
+ export declare const ProjectsFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -0,0 +1,11 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import ProjectsHandler from "./ProjectsHandler.js";
3
+ const ProjectsFeature = createFeature({
4
+ name: "AiPowerUpsProjects",
5
+ register (container) {
6
+ container.register(ProjectsHandler);
7
+ }
8
+ });
9
+ export { ProjectsFeature };
10
+
11
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/Projects/feature.js","sources":["../../../../src/api/features/Projects/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport ProjectsHandler from \"./ProjectsHandler.js\";\n\nexport const ProjectsFeature = createFeature({\n name: \"AiPowerUpsProjects\",\n register(container) {\n container.register(ProjectsHandler);\n }\n});\n"],"names":["ProjectsFeature","createFeature","container","ProjectsHandler"],"mappings":";;AAGO,MAAMA,kBAAkBC,cAAc;IACzC,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
@@ -0,0 +1,50 @@
1
+ import type { IAiPowerUpsSettings } from "../../../api/types.js";
2
+ export interface ProjectFileItem {
3
+ id: string;
4
+ name: string;
5
+ size: number;
6
+ mimeType: string;
7
+ src: string;
8
+ width?: number;
9
+ height?: number;
10
+ }
11
+ export interface ProjectPreset {
12
+ id: string;
13
+ name: string;
14
+ description?: string;
15
+ instructions?: string;
16
+ defaultReaderPersonaId?: string;
17
+ defaultWriterPersonaId?: string;
18
+ files?: ProjectFileItem[];
19
+ version: number;
20
+ }
21
+ declare module "~/api/types.js" {
22
+ interface IAiPowerUpsSettings {
23
+ projects: {
24
+ presets: ProjectPreset[];
25
+ };
26
+ }
27
+ }
28
+ export type ProjectsSettings = IAiPowerUpsSettings["projects"];
29
+ export interface PersistedProjectFileItem {
30
+ id: string;
31
+ name: string;
32
+ size: number;
33
+ mimeType: string;
34
+ src: string;
35
+ width?: number;
36
+ height?: number;
37
+ }
38
+ export interface PersistedProjectPreset {
39
+ id: string;
40
+ name: string;
41
+ description?: string;
42
+ instructions?: string;
43
+ defaultReaderPersonaId?: string;
44
+ defaultWriterPersonaId?: string;
45
+ files?: PersistedProjectFileItem[];
46
+ version: number;
47
+ }
48
+ export interface PersistedProjects {
49
+ presets: PersistedProjectPreset[];
50
+ }
File without changes
@@ -0,0 +1,21 @@
1
+ import { AiPowerUpsSettingsGroupGraphQLMapper } from "../../../api/features/shared/index.js";
2
+ import type { ProvidersSettings } from "./types.js";
3
+ interface ApiProviderPreset {
4
+ id: string;
5
+ name: string;
6
+ description?: string;
7
+ model: string;
8
+ apiKey: string | null;
9
+ }
10
+ interface ApiProviders {
11
+ presets: ApiProviderPreset[];
12
+ }
13
+ declare class ProvidersGraphQLMapperImpl implements AiPowerUpsSettingsGroupGraphQLMapper.Interface {
14
+ readonly name = "providers";
15
+ toApi(internal: unknown): ApiProviders;
16
+ fromApi(api: unknown): ProvidersSettings;
17
+ }
18
+ declare const _default: typeof ProvidersGraphQLMapperImpl & {
19
+ __abstraction: import("@webiny/di").Abstraction<import("../shared/abstractions.js").IAiPowerUpsSettingsGroupGraphQLMapper>;
20
+ };
21
+ export default _default;
@@ -0,0 +1,39 @@
1
+ import { AiPowerUpsSettingsGroupGraphQLMapper } from "../shared/index.js";
2
+ class ProvidersGraphQLMapperImpl {
3
+ toApi(internal) {
4
+ const data = internal;
5
+ return {
6
+ presets: data.presets.map((p)=>({
7
+ id: p.id,
8
+ name: p.name,
9
+ description: p.description,
10
+ model: p.model,
11
+ apiKey: p.apiKeyMasked ?? null
12
+ }))
13
+ };
14
+ }
15
+ fromApi(api) {
16
+ const data = api;
17
+ return {
18
+ presets: data.presets.map((p)=>({
19
+ id: p.id,
20
+ name: p.name,
21
+ description: p.description,
22
+ model: p.model,
23
+ apiKey: p.apiKey,
24
+ apiKeyMasked: "",
25
+ apiKeyEncrypted: ""
26
+ }))
27
+ };
28
+ }
29
+ constructor(){
30
+ this.name = "providers";
31
+ }
32
+ }
33
+ const ProvidersGraphQLMapper = AiPowerUpsSettingsGroupGraphQLMapper.createImplementation({
34
+ implementation: ProvidersGraphQLMapperImpl,
35
+ dependencies: []
36
+ });
37
+ export default ProvidersGraphQLMapper;
38
+
39
+ //# sourceMappingURL=ProvidersGraphQLMapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/Providers/ProvidersGraphQLMapper.js","sources":["../../../../src/api/features/Providers/ProvidersGraphQLMapper.ts"],"sourcesContent":["import { AiPowerUpsSettingsGroupGraphQLMapper } from \"~/api/features/shared/index.js\";\nimport type { ProvidersSettings } from \"./types.js\";\n\ninterface ApiProviderPreset {\n id: string;\n name: string;\n description?: string;\n model: string;\n apiKey: string | null;\n}\n\ninterface ApiProviders {\n presets: ApiProviderPreset[];\n}\n\ninterface ApiInputProviderPreset {\n id: string;\n name: string;\n description?: string;\n model: string;\n apiKey?: string;\n}\n\ninterface ApiInputProviders {\n presets: ApiInputProviderPreset[];\n}\n\nclass ProvidersGraphQLMapperImpl implements AiPowerUpsSettingsGroupGraphQLMapper.Interface {\n readonly name = \"providers\";\n\n toApi(internal: unknown): ApiProviders {\n const data = internal as ProvidersSettings;\n return {\n presets: data.presets.map(p => ({\n id: p.id,\n name: p.name,\n description: p.description,\n model: p.model,\n apiKey: p.apiKeyMasked ?? null\n }))\n };\n }\n\n fromApi(api: unknown): ProvidersSettings {\n const data = api as ApiInputProviders;\n return {\n presets: data.presets.map(p => ({\n id: p.id,\n name: p.name,\n description: p.description,\n model: p.model,\n apiKey: p.apiKey,\n apiKeyMasked: \"\",\n apiKeyEncrypted: \"\"\n }))\n };\n }\n}\n\nexport default AiPowerUpsSettingsGroupGraphQLMapper.createImplementation({\n implementation: ProvidersGraphQLMapperImpl,\n dependencies: []\n});\n"],"names":["ProvidersGraphQLMapperImpl","internal","data","p","api","AiPowerUpsSettingsGroupGraphQLMapper"],"mappings":";AA2BA,MAAMA;IAGF,MAAMC,QAAiB,EAAgB;QACnC,MAAMC,OAAOD;QACb,OAAO;YACH,SAASC,KAAK,OAAO,CAAC,GAAG,CAACC,CAAAA,IAAM;oBAC5B,IAAIA,EAAE,EAAE;oBACR,MAAMA,EAAE,IAAI;oBACZ,aAAaA,EAAE,WAAW;oBAC1B,OAAOA,EAAE,KAAK;oBACd,QAAQA,EAAE,YAAY,IAAI;gBAC9B;QACJ;IACJ;IAEA,QAAQC,GAAY,EAAqB;QACrC,MAAMF,OAAOE;QACb,OAAO;YACH,SAASF,KAAK,OAAO,CAAC,GAAG,CAACC,CAAAA,IAAM;oBAC5B,IAAIA,EAAE,EAAE;oBACR,MAAMA,EAAE,IAAI;oBACZ,aAAaA,EAAE,WAAW;oBAC1B,OAAOA,EAAE,KAAK;oBACd,QAAQA,EAAE,MAAM;oBAChB,cAAc;oBACd,iBAAiB;gBACrB;QACJ;IACJ;;aA5BS,IAAI,GAAG;;AA6BpB;AAEA,+BAAeE,qCAAqC,oBAAoB,CAAC;IACrE,gBAAgBL;IAChB,cAAc,EAAE;AACpB"}
@@ -0,0 +1,26 @@
1
+ import { z } from "zod";
2
+ import { Encryption } from "@webiny/api-core/features/encryption/index.js";
3
+ import { Masker } from "@webiny/api-core/features/masker/index.js";
4
+ import { AiPowerUpsSettingsGroupHandler } from "../../../api/features/shared/index.js";
5
+ import type { PersistedProviders, ProvidersSettings } from "./types.js";
6
+ declare class ProvidersHandlerImpl implements AiPowerUpsSettingsGroupHandler.Interface {
7
+ private encryption;
8
+ private masker;
9
+ readonly name = "providers";
10
+ readonly inputSchema: z.ZodObject<{
11
+ presets: z.ZodArray<z.ZodObject<{
12
+ id: z.ZodString;
13
+ name: z.ZodString;
14
+ description: z.ZodOptional<z.ZodString>;
15
+ model: z.ZodString;
16
+ apiKey: z.ZodOptional<z.ZodString>;
17
+ }, z.core.$strip>>;
18
+ }, z.core.$strip>;
19
+ constructor(encryption: Encryption.Interface, masker: Masker.Interface);
20
+ mapFromStorage(persisted: unknown): ProvidersSettings;
21
+ mapToStorage(internal: unknown, existing: unknown | null): Promise<PersistedProviders>;
22
+ }
23
+ declare const _default: typeof ProvidersHandlerImpl & {
24
+ __abstraction: import("@webiny/di").Abstraction<import("../shared/abstractions.js").IAiPowerUpsSettingsGroupHandler>;
25
+ };
26
+ export default _default;
@@ -0,0 +1,79 @@
1
+ import { z } from "zod";
2
+ import { Encryption } from "@webiny/api-core/features/encryption/index.js";
3
+ import { Masker } from "@webiny/api-core/features/masker/index.js";
4
+ import { AiPowerUpsSettingsGroupHandler } from "../shared/index.js";
5
+ const inputSchema = z.object({
6
+ presets: z.array(z.object({
7
+ id: z.string().min(1),
8
+ name: z.string().min(1),
9
+ description: z.string().optional(),
10
+ model: z.string().min(1),
11
+ apiKey: z.string().optional()
12
+ }))
13
+ });
14
+ class ProvidersHandlerImpl {
15
+ constructor(encryption, masker){
16
+ this.encryption = encryption;
17
+ this.masker = masker;
18
+ this.name = "providers";
19
+ this.inputSchema = inputSchema;
20
+ }
21
+ mapFromStorage(persisted) {
22
+ if (!persisted || "object" != typeof persisted) return {
23
+ presets: []
24
+ };
25
+ const data = persisted;
26
+ const presets = (data.presets ?? []).map((p)=>({
27
+ id: p.id,
28
+ name: p.name,
29
+ description: p.description,
30
+ model: p.model,
31
+ apiKeyMasked: p.apiKeyMasked ?? "",
32
+ apiKeyEncrypted: p.apiKeyEncrypted ?? ""
33
+ }));
34
+ return {
35
+ presets
36
+ };
37
+ }
38
+ async mapToStorage(internal, existing) {
39
+ const input = internal;
40
+ const existingData = existing;
41
+ const existingPresets = existingData?.presets ?? [];
42
+ const presets = await Promise.all(input.presets.map(async (preset)=>{
43
+ const existingMatch = existingPresets.find((ep)=>ep.id === preset.id);
44
+ let apiKeyEncrypted;
45
+ let apiKeyMasked;
46
+ if (preset.apiKey && preset.apiKey !== existingMatch?.apiKeyMasked) {
47
+ apiKeyEncrypted = await this.encryption.encrypt(preset.apiKey);
48
+ apiKeyMasked = this.masker.mask(preset.apiKey, [
49
+ 8,
50
+ 4
51
+ ]);
52
+ } else {
53
+ apiKeyEncrypted = existingMatch?.apiKeyEncrypted ?? "";
54
+ apiKeyMasked = existingMatch?.apiKeyMasked ?? "";
55
+ }
56
+ return {
57
+ id: preset.id,
58
+ name: preset.name,
59
+ description: preset.description,
60
+ model: preset.model,
61
+ apiKeyEncrypted,
62
+ apiKeyMasked
63
+ };
64
+ }));
65
+ return {
66
+ presets
67
+ };
68
+ }
69
+ }
70
+ const ProvidersHandler = AiPowerUpsSettingsGroupHandler.createImplementation({
71
+ implementation: ProvidersHandlerImpl,
72
+ dependencies: [
73
+ Encryption,
74
+ Masker
75
+ ]
76
+ });
77
+ export default ProvidersHandler;
78
+
79
+ //# sourceMappingURL=ProvidersHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/Providers/ProvidersHandler.js","sources":["../../../../src/api/features/Providers/ProvidersHandler.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { Encryption } from \"@webiny/api-core/features/encryption/index.js\";\nimport { Masker } from \"@webiny/api-core/features/masker/index.js\";\nimport { AiPowerUpsSettingsGroupHandler } from \"~/api/features/shared/index.js\";\nimport type { PersistedProviderPreset, PersistedProviders, ProvidersSettings } from \"./types.js\";\n\nconst inputSchema = z.object({\n presets: z.array(\n z.object({\n id: z.string().min(1),\n name: z.string().min(1),\n description: z.string().optional(),\n model: z.string().min(1),\n apiKey: z.string().optional()\n })\n )\n});\n\nclass ProvidersHandlerImpl implements AiPowerUpsSettingsGroupHandler.Interface {\n readonly name = \"providers\";\n readonly inputSchema = inputSchema;\n\n constructor(\n private encryption: Encryption.Interface,\n private masker: Masker.Interface\n ) {}\n\n mapFromStorage(persisted: unknown): ProvidersSettings {\n if (!persisted || typeof persisted !== \"object\") {\n return { presets: [] };\n }\n\n const data = persisted as PersistedProviders;\n const presets = (data.presets ?? []).map(p => ({\n id: p.id,\n name: p.name,\n description: p.description,\n model: p.model,\n apiKeyMasked: p.apiKeyMasked ?? \"\",\n apiKeyEncrypted: p.apiKeyEncrypted ?? \"\"\n }));\n\n return { presets };\n }\n\n async mapToStorage(internal: unknown, existing: unknown | null): Promise<PersistedProviders> {\n const input = internal as ProvidersSettings;\n const existingData = existing as ProvidersSettings | null;\n const existingPresets = existingData?.presets ?? [];\n\n const presets: PersistedProviderPreset[] = await Promise.all(\n input.presets.map(async preset => {\n const existingMatch = existingPresets.find(ep => ep.id === preset.id);\n\n let apiKeyEncrypted: string;\n let apiKeyMasked: string;\n\n if (!preset.apiKey || preset.apiKey === existingMatch?.apiKeyMasked) {\n // Carry forward existing encrypted key\n apiKeyEncrypted = existingMatch?.apiKeyEncrypted ?? \"\";\n apiKeyMasked = existingMatch?.apiKeyMasked ?? \"\";\n } else {\n // New plaintext key — encrypt and mask\n apiKeyEncrypted = await this.encryption.encrypt(preset.apiKey);\n apiKeyMasked = this.masker.mask(preset.apiKey, [8, 4]);\n }\n\n return {\n id: preset.id,\n name: preset.name,\n description: preset.description,\n model: preset.model,\n apiKeyEncrypted,\n apiKeyMasked\n };\n })\n );\n\n return { presets };\n }\n}\n\nexport default AiPowerUpsSettingsGroupHandler.createImplementation({\n implementation: ProvidersHandlerImpl,\n dependencies: [Encryption, Masker]\n});\n"],"names":["inputSchema","z","ProvidersHandlerImpl","encryption","masker","persisted","data","presets","p","internal","existing","input","existingData","existingPresets","Promise","preset","existingMatch","ep","apiKeyEncrypted","apiKeyMasked","AiPowerUpsSettingsGroupHandler","Encryption","Masker"],"mappings":";;;;AAMA,MAAMA,cAAcC,EAAE,MAAM,CAAC;IACzB,SAASA,EAAE,KAAK,CACZA,EAAE,MAAM,CAAC;QACL,IAAIA,EAAE,MAAM,GAAG,GAAG,CAAC;QACnB,MAAMA,EAAE,MAAM,GAAG,GAAG,CAAC;QACrB,aAAaA,EAAE,MAAM,GAAG,QAAQ;QAChC,OAAOA,EAAE,MAAM,GAAG,GAAG,CAAC;QACtB,QAAQA,EAAE,MAAM,GAAG,QAAQ;IAC/B;AAER;AAEA,MAAMC;IAIF,YACYC,UAAgC,EAChCC,MAAwB,CAClC;aAFUD,UAAU,GAAVA;aACAC,MAAM,GAANA;aALH,IAAI,GAAG;aACP,WAAW,GAAGJ;IAKpB;IAEH,eAAeK,SAAkB,EAAqB;QAClD,IAAI,CAACA,aAAa,AAAqB,YAArB,OAAOA,WACrB,OAAO;YAAE,SAAS,EAAE;QAAC;QAGzB,MAAMC,OAAOD;QACb,MAAME,UAAWD,AAAAA,CAAAA,KAAK,OAAO,IAAI,EAAC,EAAG,GAAG,CAACE,CAAAA,IAAM;gBAC3C,IAAIA,EAAE,EAAE;gBACR,MAAMA,EAAE,IAAI;gBACZ,aAAaA,EAAE,WAAW;gBAC1B,OAAOA,EAAE,KAAK;gBACd,cAAcA,EAAE,YAAY,IAAI;gBAChC,iBAAiBA,EAAE,eAAe,IAAI;YAC1C;QAEA,OAAO;YAAED;QAAQ;IACrB;IAEA,MAAM,aAAaE,QAAiB,EAAEC,QAAwB,EAA+B;QACzF,MAAMC,QAAQF;QACd,MAAMG,eAAeF;QACrB,MAAMG,kBAAkBD,cAAc,WAAW,EAAE;QAEnD,MAAML,UAAqC,MAAMO,QAAQ,GAAG,CACxDH,MAAM,OAAO,CAAC,GAAG,CAAC,OAAMI;YACpB,MAAMC,gBAAgBH,gBAAgB,IAAI,CAACI,CAAAA,KAAMA,GAAG,EAAE,KAAKF,OAAO,EAAE;YAEpE,IAAIG;YACJ,IAAIC;YAEJ,IAAI,AAACJ,OAAO,MAAM,IAAIA,OAAO,MAAM,KAAKC,eAAe,cAIhD;gBAEHE,kBAAkB,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACH,OAAO,MAAM;gBAC7DI,eAAe,IAAI,CAAC,MAAM,CAAC,IAAI,CAACJ,OAAO,MAAM,EAAE;oBAAC;oBAAG;iBAAE;YACzD,OARqE;gBAEjEG,kBAAkBF,eAAe,mBAAmB;gBACpDG,eAAeH,eAAe,gBAAgB;YAClD;YAMA,OAAO;gBACH,IAAID,OAAO,EAAE;gBACb,MAAMA,OAAO,IAAI;gBACjB,aAAaA,OAAO,WAAW;gBAC/B,OAAOA,OAAO,KAAK;gBACnBG;gBACAC;YACJ;QACJ;QAGJ,OAAO;YAAEZ;QAAQ;IACrB;AACJ;AAEA,yBAAea,+BAA+B,oBAAoB,CAAC;IAC/D,gBAAgBlB;IAChB,cAAc;QAACmB;QAAYC;KAAO;AACtC"}
@@ -0,0 +1,4 @@
1
+ export declare const ProvidersFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -0,0 +1,13 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import ProvidersHandler from "./ProvidersHandler.js";
3
+ import ProvidersGraphQLMapper from "./ProvidersGraphQLMapper.js";
4
+ const ProvidersFeature = createFeature({
5
+ name: "AiPowerUpsProviders",
6
+ register (container) {
7
+ container.register(ProvidersHandler);
8
+ container.register(ProvidersGraphQLMapper);
9
+ }
10
+ });
11
+ export { ProvidersFeature };
12
+
13
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api/features/Providers/feature.js","sources":["../../../../src/api/features/Providers/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport ProvidersHandler from \"./ProvidersHandler.js\";\nimport ProvidersGraphQLMapper from \"./ProvidersGraphQLMapper.js\";\n\nexport const ProvidersFeature = createFeature({\n name: \"AiPowerUpsProviders\",\n register(container) {\n container.register(ProvidersHandler);\n container.register(ProvidersGraphQLMapper);\n }\n});\n"],"names":["ProvidersFeature","createFeature","container","ProvidersHandler","ProvidersGraphQLMapper"],"mappings":";;;AAIO,MAAMA,mBAAmBC,cAAc;IAC1C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;QACnBD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
@@ -0,0 +1 @@
1
+ export type { ProviderPreset, ProvidersSettings } from "./types.js";
File without changes
@@ -0,0 +1,29 @@
1
+ import type { IAiPowerUpsSettings } from "../../types.js";
2
+ export interface ProviderPreset {
3
+ id: string;
4
+ name: string;
5
+ description?: string;
6
+ model: string;
7
+ apiKey?: string;
8
+ apiKeyMasked: string;
9
+ apiKeyEncrypted: string;
10
+ }
11
+ declare module "../../types.js" {
12
+ interface IAiPowerUpsSettings {
13
+ providers: {
14
+ presets: ProviderPreset[];
15
+ };
16
+ }
17
+ }
18
+ export type ProvidersSettings = IAiPowerUpsSettings["providers"];
19
+ export interface PersistedProviderPreset {
20
+ id: string;
21
+ name: string;
22
+ description?: string;
23
+ model: string;
24
+ apiKeyEncrypted: string;
25
+ apiKeyMasked: string;
26
+ }
27
+ export interface PersistedProviders {
28
+ presets: PersistedProviderPreset[];
29
+ }
File without changes
@@ -0,0 +1,20 @@
1
+ import { z } from "zod";
2
+ import { AiPowerUpsSettingsGroupHandler } from "../../../api/features/shared/index.js";
3
+ import type { PersistedReaderPersonas, ReaderPersonasSettings } from "./types.js";
4
+ declare class ReaderPersonasHandlerImpl implements AiPowerUpsSettingsGroupHandler.Interface {
5
+ readonly name = "readerPersonas";
6
+ readonly inputSchema: z.ZodObject<{
7
+ presets: z.ZodArray<z.ZodObject<{
8
+ id: z.ZodString;
9
+ name: z.ZodString;
10
+ description: z.ZodString;
11
+ style: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
12
+ }, z.core.$strip>>;
13
+ }, z.core.$strip>;
14
+ mapFromStorage(persisted: unknown): ReaderPersonasSettings;
15
+ mapToStorage(internal: unknown): Promise<PersistedReaderPersonas>;
16
+ }
17
+ declare const _default: typeof ReaderPersonasHandlerImpl & {
18
+ __abstraction: import("@webiny/di").Abstraction<import("../shared/abstractions.js").IAiPowerUpsSettingsGroupHandler>;
19
+ };
20
+ export default _default;