@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":"admin/features/settings/getSettings/feature.js","sources":["../../../../../src/admin/features/settings/getSettings/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/admin\";\nimport { GetSettingsUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport { GetSettingsUseCase } from \"./GetSettingsUseCase.js\";\nimport { GetSettingsRepository } from \"./GetSettingsRepository.js\";\nimport { GetSettingsGateway } from \"./GetSettingsGateway.js\";\n\nexport const GetSettingsFeature = createFeature({\n name: \"AiPowerUps/GetSettings\",\n register(container) {\n container.register(GetSettingsUseCase);\n container.register(GetSettingsRepository).inSingletonScope();\n container.register(GetSettingsGateway).inSingletonScope();\n },\n resolve(container) {\n return {\n useCase: container.resolve(UseCaseAbstraction)\n };\n }\n});\n"],"names":["GetSettingsFeature","createFeature","container","GetSettingsUseCase","GetSettingsRepository","GetSettingsGateway","UseCaseAbstraction"],"mappings":";;;;;AAMO,MAAMA,qBAAqBC,cAAc;IAC5C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;QACnBD,UAAU,QAAQ,CAACE,uBAAuB,gBAAgB;QAC1DF,UAAU,QAAQ,CAACG,oBAAoB,gBAAgB;IAC3D;IACA,SAAQH,SAAS;QACb,OAAO;YACH,SAASA,UAAU,OAAO,CAACI;QAC/B;IACJ;AACJ"}
@@ -0,0 +1,2 @@
1
+ export { GetSettingsUseCase, GetSettingsRepository, GetSettingsGateway } from "./abstractions.js";
2
+ export { GetSettingsFeature } from "./feature.js";
@@ -0,0 +1,2 @@
1
+ export { GetSettingsGateway, GetSettingsRepository, GetSettingsUseCase } from "./abstractions.js";
2
+ export { GetSettingsFeature } from "./feature.js";
@@ -0,0 +1,10 @@
1
+ import type { IAiPowerUpsSettingsCache } from "./abstractions.js";
2
+ import type { IAiPowerUpsSettings } from "./abstractions.js";
3
+ declare class SettingsCacheImpl implements IAiPowerUpsSettingsCache {
4
+ private data;
5
+ constructor();
6
+ get(): IAiPowerUpsSettings | null;
7
+ set(data: IAiPowerUpsSettings): void;
8
+ }
9
+ export declare const settingsCache: SettingsCacheImpl;
10
+ export {};
@@ -0,0 +1,19 @@
1
+ import { makeAutoObservable, runInAction } from "mobx";
2
+ class SettingsCacheImpl {
3
+ constructor(){
4
+ this.data = null;
5
+ makeAutoObservable(this);
6
+ }
7
+ get() {
8
+ return this.data;
9
+ }
10
+ set(data) {
11
+ runInAction(()=>{
12
+ this.data = data;
13
+ });
14
+ }
15
+ }
16
+ const settingsCache = new SettingsCacheImpl();
17
+ export { settingsCache };
18
+
19
+ //# sourceMappingURL=SettingsCache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/features/settings/shared/SettingsCache.js","sources":["../../../../../src/admin/features/settings/shared/SettingsCache.ts"],"sourcesContent":["import { makeAutoObservable, runInAction } from \"mobx\";\nimport type { IAiPowerUpsSettingsCache } from \"./abstractions.js\";\nimport type { IAiPowerUpsSettings } from \"./abstractions.js\";\n\nclass SettingsCacheImpl implements IAiPowerUpsSettingsCache {\n private data: IAiPowerUpsSettings | null = null;\n\n constructor() {\n makeAutoObservable(this);\n }\n\n get(): IAiPowerUpsSettings | null {\n return this.data;\n }\n\n set(data: IAiPowerUpsSettings): void {\n runInAction(() => {\n this.data = data;\n });\n }\n}\n\nexport const settingsCache = new SettingsCacheImpl();\n"],"names":["SettingsCacheImpl","makeAutoObservable","data","runInAction","settingsCache"],"mappings":";AAIA,MAAMA;IAGF,aAAc;aAFN,IAAI,GAA+B;QAGvCC,mBAAmB,IAAI;IAC3B;IAEA,MAAkC;QAC9B,OAAO,IAAI,CAAC,IAAI;IACpB;IAEA,IAAIC,IAAyB,EAAQ;QACjCC,YAAY;YACR,IAAI,CAAC,IAAI,GAAGD;QAChB;IACJ;AACJ;AAEO,MAAME,gBAAgB,IAAIJ"}
@@ -0,0 +1,50 @@
1
+ export interface IAiPowerUpsSettingsCache {
2
+ get(): IAiPowerUpsSettings | null;
3
+ set(data: IAiPowerUpsSettings): void;
4
+ }
5
+ export declare const SettingsCache: import("@webiny/di").Abstraction<IAiPowerUpsSettingsCache>;
6
+ export declare namespace SettingsCache {
7
+ type Interface = IAiPowerUpsSettingsCache;
8
+ }
9
+ export interface IAiPowerUpsPersonaPreset {
10
+ id: string;
11
+ name: string;
12
+ description: string;
13
+ style?: string;
14
+ }
15
+ export interface IAiPowerUpsSettings {
16
+ providers: {
17
+ presets: {
18
+ name: string;
19
+ description: string;
20
+ model: string;
21
+ apiKey: string;
22
+ }[];
23
+ };
24
+ readerPersonas: {
25
+ presets: IAiPowerUpsPersonaPreset[];
26
+ };
27
+ writerPersonas: {
28
+ presets: IAiPowerUpsPersonaPreset[];
29
+ };
30
+ projects: {
31
+ presets: {
32
+ id: string;
33
+ name: string;
34
+ description?: string;
35
+ instructions?: string;
36
+ defaultReaderPersonaId?: string;
37
+ defaultWriterPersonaId?: string;
38
+ files?: {
39
+ id: string;
40
+ name: string;
41
+ size: number;
42
+ mimeType: string;
43
+ src: string;
44
+ width?: number;
45
+ height?: number;
46
+ }[];
47
+ version: number;
48
+ }[];
49
+ };
50
+ }
@@ -0,0 +1,5 @@
1
+ import { createAbstraction } from "@webiny/feature/admin";
2
+ const SettingsCache = createAbstraction("AiPowerUps/SettingsCache");
3
+ export { SettingsCache };
4
+
5
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/features/settings/shared/abstractions.js","sources":["../../../../../src/admin/features/settings/shared/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\n\nexport interface IAiPowerUpsSettingsCache {\n get(): IAiPowerUpsSettings | null;\n set(data: IAiPowerUpsSettings): void;\n}\n\nexport const SettingsCache = createAbstraction<IAiPowerUpsSettingsCache>(\n \"AiPowerUps/SettingsCache\"\n);\nexport namespace SettingsCache {\n export type Interface = IAiPowerUpsSettingsCache;\n}\n\nexport interface IAiPowerUpsPersonaPreset {\n id: string;\n name: string;\n description: string;\n style?: string;\n}\n\nexport interface IAiPowerUpsSettings {\n providers: {\n presets: {\n name: string;\n description: string;\n model: string;\n apiKey: string;\n }[];\n };\n readerPersonas: {\n presets: IAiPowerUpsPersonaPreset[];\n };\n writerPersonas: {\n presets: IAiPowerUpsPersonaPreset[];\n };\n projects: {\n presets: {\n id: string;\n name: string;\n description?: string;\n instructions?: string;\n defaultReaderPersonaId?: string;\n defaultWriterPersonaId?: string;\n files?: {\n id: string;\n name: string;\n size: number;\n mimeType: string;\n src: string;\n width?: number;\n height?: number;\n }[];\n version: number;\n }[];\n };\n}\n"],"names":["SettingsCache","createAbstraction"],"mappings":";AAOO,MAAMA,gBAAgBC,kBACzB"}
@@ -0,0 +1,3 @@
1
+ export declare const SharedSettingsFeature: import("@webiny/feature/admin").FeatureDefinition<{
2
+ settingsCache: import("./abstractions.js").IAiPowerUpsSettingsCache;
3
+ }, []>;
@@ -0,0 +1,17 @@
1
+ import { createFeature } from "@webiny/feature/admin";
2
+ import { SettingsCache } from "./abstractions.js";
3
+ import { settingsCache } from "./SettingsCache.js";
4
+ const SharedSettingsFeature = createFeature({
5
+ name: "AiPowerUps/SharedSettings",
6
+ register (container) {
7
+ container.registerInstance(SettingsCache, settingsCache);
8
+ },
9
+ resolve (container) {
10
+ return {
11
+ settingsCache: container.resolve(SettingsCache)
12
+ };
13
+ }
14
+ });
15
+ export { SharedSettingsFeature };
16
+
17
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/features/settings/shared/feature.js","sources":["../../../../../src/admin/features/settings/shared/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/admin\";\nimport { SettingsCache } from \"./abstractions.js\";\nimport { settingsCache } from \"./SettingsCache.js\";\n\nexport const SharedSettingsFeature = createFeature({\n name: \"AiPowerUps/SharedSettings\",\n register(container) {\n container.registerInstance(SettingsCache, settingsCache);\n },\n resolve(container) {\n return {\n settingsCache: container.resolve(SettingsCache)\n };\n }\n});\n"],"names":["SharedSettingsFeature","createFeature","container","SettingsCache","settingsCache"],"mappings":";;;AAIO,MAAMA,wBAAwBC,cAAc;IAC/C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,gBAAgB,CAACC,eAAeC;IAC9C;IACA,SAAQF,SAAS;QACb,OAAO;YACH,eAAeA,UAAU,OAAO,CAACC;QACrC;IACJ;AACJ"}
@@ -0,0 +1,2 @@
1
+ export { SettingsCache } from "./abstractions.js";
2
+ export { SharedSettingsFeature } from "./feature.js";
@@ -0,0 +1,2 @@
1
+ export { SettingsCache } from "./abstractions.js";
2
+ export { SharedSettingsFeature } from "./feature.js";
@@ -0,0 +1,12 @@
1
+ import { UpdateSettingsGateway as GatewayAbstraction } from "./abstractions.js";
2
+ import { MainGraphQLClient } from "@webiny/app/features/mainGraphQLClient";
3
+ import type { IAiPowerUpsSettings } from "../../../../admin/features/settings/shared/abstractions.js";
4
+ declare class UpdateSettingsGatewayImpl implements GatewayAbstraction.Interface {
5
+ private client;
6
+ constructor(client: MainGraphQLClient.Interface);
7
+ execute(data: IAiPowerUpsSettings): Promise<IAiPowerUpsSettings>;
8
+ }
9
+ export declare const UpdateSettingsGateway: typeof UpdateSettingsGatewayImpl & {
10
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateSettingsGateway>;
11
+ };
12
+ export {};
@@ -0,0 +1,45 @@
1
+ import { UpdateSettingsGateway } from "./abstractions.js";
2
+ import { MainGraphQLClient } from "@webiny/app/features/mainGraphQLClient";
3
+ import { SettingsUpdateError, SettingsValidationError } from "../../../domain/errors.js";
4
+ const UPDATE_SETTINGS = `
5
+ mutation UpdateAiPowerUpsSettings($input: JSON!) {
6
+ aiPowerUps {
7
+ updateSettings(input: $input) {
8
+ data
9
+ error {
10
+ code
11
+ message
12
+ data
13
+ }
14
+ }
15
+ }
16
+ }
17
+ `;
18
+ class UpdateSettingsGatewayImpl {
19
+ constructor(client){
20
+ this.client = client;
21
+ }
22
+ async execute(data) {
23
+ const response = await this.client.execute({
24
+ query: UPDATE_SETTINGS,
25
+ variables: {
26
+ input: data
27
+ }
28
+ });
29
+ const envelope = response.aiPowerUps.updateSettings;
30
+ if (envelope.error) {
31
+ if (envelope.error.data?.invalidFields) throw new SettingsValidationError(envelope.error.data.invalidFields);
32
+ throw new SettingsUpdateError(envelope.error.message);
33
+ }
34
+ return envelope.data ?? {};
35
+ }
36
+ }
37
+ const UpdateSettingsGateway_UpdateSettingsGateway = UpdateSettingsGateway.createImplementation({
38
+ implementation: UpdateSettingsGatewayImpl,
39
+ dependencies: [
40
+ MainGraphQLClient
41
+ ]
42
+ });
43
+ export { UpdateSettingsGateway_UpdateSettingsGateway as UpdateSettingsGateway };
44
+
45
+ //# sourceMappingURL=UpdateSettingsGateway.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/features/settings/updateSettings/UpdateSettingsGateway.js","sources":["../../../../../src/admin/features/settings/updateSettings/UpdateSettingsGateway.ts"],"sourcesContent":["import { UpdateSettingsGateway as GatewayAbstraction } from \"./abstractions.js\";\nimport { MainGraphQLClient } from \"@webiny/app/features/mainGraphQLClient\";\nimport type { IAiPowerUpsSettings } from \"~/admin/features/settings/shared/abstractions.js\";\nimport { SettingsValidationError, SettingsUpdateError } from \"~/admin/domain/errors.js\";\n\nconst UPDATE_SETTINGS = /* GraphQL */ `\n mutation UpdateAiPowerUpsSettings($input: JSON!) {\n aiPowerUps {\n updateSettings(input: $input) {\n data\n error {\n code\n message\n data\n }\n }\n }\n }\n`;\n\ntype UpdateSettingsResponse = {\n aiPowerUps: {\n updateSettings:\n | { data: IAiPowerUpsSettings; error: null }\n | {\n data: null;\n error: {\n code: string;\n message: string;\n data: Record<string, any> | null;\n };\n };\n };\n};\n\nclass UpdateSettingsGatewayImpl implements GatewayAbstraction.Interface {\n constructor(private client: MainGraphQLClient.Interface) {}\n\n async execute(data: IAiPowerUpsSettings): Promise<IAiPowerUpsSettings> {\n const response = await this.client.execute<UpdateSettingsResponse>({\n query: UPDATE_SETTINGS,\n variables: { input: data }\n });\n\n const envelope = response.aiPowerUps.updateSettings;\n\n if (envelope.error) {\n if (envelope.error.data?.invalidFields) {\n throw new SettingsValidationError(envelope.error.data.invalidFields);\n }\n throw new SettingsUpdateError(envelope.error.message);\n }\n\n return envelope.data ?? ({} as IAiPowerUpsSettings);\n }\n}\n\nexport const UpdateSettingsGateway = GatewayAbstraction.createImplementation({\n implementation: UpdateSettingsGatewayImpl,\n dependencies: [MainGraphQLClient]\n});\n"],"names":["UPDATE_SETTINGS","UpdateSettingsGatewayImpl","client","data","response","envelope","SettingsValidationError","SettingsUpdateError","UpdateSettingsGateway","GatewayAbstraction","MainGraphQLClient"],"mappings":";;;AAKA,MAAMA,kBAAgC,CAAC;;;;;;;;;;;;;AAavC,CAAC;AAiBD,MAAMC;IACF,YAAoBC,MAAmC,CAAE;aAArCA,MAAM,GAANA;IAAsC;IAE1D,MAAM,QAAQC,IAAyB,EAAgC;QACnE,MAAMC,WAAW,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAyB;YAC/D,OAAOJ;YACP,WAAW;gBAAE,OAAOG;YAAK;QAC7B;QAEA,MAAME,WAAWD,SAAS,UAAU,CAAC,cAAc;QAEnD,IAAIC,SAAS,KAAK,EAAE;YAChB,IAAIA,SAAS,KAAK,CAAC,IAAI,EAAE,eACrB,MAAM,IAAIC,wBAAwBD,SAAS,KAAK,CAAC,IAAI,CAAC,aAAa;YAEvE,MAAM,IAAIE,oBAAoBF,SAAS,KAAK,CAAC,OAAO;QACxD;QAEA,OAAOA,SAAS,IAAI,IAAK,CAAC;IAC9B;AACJ;AAEO,MAAMG,8CAAwBC,sBAAAA,oBAAuC,CAAC;IACzE,gBAAgBR;IAChB,cAAc;QAACS;KAAkB;AACrC"}
@@ -0,0 +1,13 @@
1
+ import { UpdateSettingsRepository as RepositoryAbstraction, UpdateSettingsGateway } from "./abstractions.js";
2
+ import { SettingsCache } from "../shared/abstractions.js";
3
+ import type { IAiPowerUpsSettings } from "../shared/abstractions.js";
4
+ declare class UpdateSettingsRepositoryImpl implements RepositoryAbstraction.Interface {
5
+ private cache;
6
+ private gateway;
7
+ constructor(cache: SettingsCache.Interface, gateway: UpdateSettingsGateway.Interface);
8
+ execute(data: IAiPowerUpsSettings): Promise<IAiPowerUpsSettings>;
9
+ }
10
+ export declare const UpdateSettingsRepository: typeof UpdateSettingsRepositoryImpl & {
11
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateSettingsRepository>;
12
+ };
13
+ export {};
@@ -0,0 +1,23 @@
1
+ import { UpdateSettingsGateway, UpdateSettingsRepository } from "./abstractions.js";
2
+ import { SettingsCache } from "../shared/abstractions.js";
3
+ class UpdateSettingsRepositoryImpl {
4
+ constructor(cache, gateway){
5
+ this.cache = cache;
6
+ this.gateway = gateway;
7
+ }
8
+ async execute(data) {
9
+ const result = await this.gateway.execute(data);
10
+ this.cache.set(result);
11
+ return result;
12
+ }
13
+ }
14
+ const UpdateSettingsRepository_UpdateSettingsRepository = UpdateSettingsRepository.createImplementation({
15
+ implementation: UpdateSettingsRepositoryImpl,
16
+ dependencies: [
17
+ SettingsCache,
18
+ UpdateSettingsGateway
19
+ ]
20
+ });
21
+ export { UpdateSettingsRepository_UpdateSettingsRepository as UpdateSettingsRepository };
22
+
23
+ //# sourceMappingURL=UpdateSettingsRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/features/settings/updateSettings/UpdateSettingsRepository.js","sources":["../../../../../src/admin/features/settings/updateSettings/UpdateSettingsRepository.ts"],"sourcesContent":["import {\n UpdateSettingsRepository as RepositoryAbstraction,\n UpdateSettingsGateway\n} from \"./abstractions.js\";\nimport { SettingsCache } from \"../shared/abstractions.js\";\nimport type { IAiPowerUpsSettings } from \"../shared/abstractions.js\";\n\nclass UpdateSettingsRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private cache: SettingsCache.Interface,\n private gateway: UpdateSettingsGateway.Interface\n ) {}\n\n async execute(data: IAiPowerUpsSettings): Promise<IAiPowerUpsSettings> {\n const result = await this.gateway.execute(data);\n this.cache.set(result);\n return result;\n }\n}\n\nexport const UpdateSettingsRepository = RepositoryAbstraction.createImplementation({\n implementation: UpdateSettingsRepositoryImpl,\n dependencies: [SettingsCache, UpdateSettingsGateway]\n});\n"],"names":["UpdateSettingsRepositoryImpl","cache","gateway","data","result","UpdateSettingsRepository","RepositoryAbstraction","SettingsCache","UpdateSettingsGateway"],"mappings":";;AAOA,MAAMA;IACF,YACYC,KAA8B,EAC9BC,OAAwC,CAClD;aAFUD,KAAK,GAALA;aACAC,OAAO,GAAPA;IACT;IAEH,MAAM,QAAQC,IAAyB,EAAgC;QACnE,MAAMC,SAAS,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAACD;QAC1C,IAAI,CAAC,KAAK,CAAC,GAAG,CAACC;QACf,OAAOA;IACX;AACJ;AAEO,MAAMC,oDAA2BC,yBAAAA,oBAA0C,CAAC;IAC/E,gBAAgBN;IAChB,cAAc;QAACO;QAAeC;KAAsB;AACxD"}
@@ -0,0 +1,11 @@
1
+ import { UpdateSettingsUseCase as UseCaseAbstraction, UpdateSettingsRepository } from "./abstractions.js";
2
+ import type { IAiPowerUpsSettings } from "../../../../admin/features/settings/shared/abstractions.js";
3
+ declare class UpdateSettingsUseCaseImpl implements UseCaseAbstraction.Interface {
4
+ private repository;
5
+ constructor(repository: UpdateSettingsRepository.Interface);
6
+ execute(data: IAiPowerUpsSettings): Promise<IAiPowerUpsSettings>;
7
+ }
8
+ export declare const UpdateSettingsUseCase: typeof UpdateSettingsUseCaseImpl & {
9
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateSettingsUseCase>;
10
+ };
11
+ export {};
@@ -0,0 +1,18 @@
1
+ import { UpdateSettingsRepository, UpdateSettingsUseCase } from "./abstractions.js";
2
+ class UpdateSettingsUseCaseImpl {
3
+ constructor(repository){
4
+ this.repository = repository;
5
+ }
6
+ async execute(data) {
7
+ return this.repository.execute(data);
8
+ }
9
+ }
10
+ const UpdateSettingsUseCase_UpdateSettingsUseCase = UpdateSettingsUseCase.createImplementation({
11
+ implementation: UpdateSettingsUseCaseImpl,
12
+ dependencies: [
13
+ UpdateSettingsRepository
14
+ ]
15
+ });
16
+ export { UpdateSettingsUseCase_UpdateSettingsUseCase as UpdateSettingsUseCase };
17
+
18
+ //# sourceMappingURL=UpdateSettingsUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/features/settings/updateSettings/UpdateSettingsUseCase.js","sources":["../../../../../src/admin/features/settings/updateSettings/UpdateSettingsUseCase.ts"],"sourcesContent":["import {\n UpdateSettingsUseCase as UseCaseAbstraction,\n UpdateSettingsRepository\n} from \"./abstractions.js\";\nimport type { IAiPowerUpsSettings } from \"~/admin/features/settings/shared/abstractions.js\";\n\nclass UpdateSettingsUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private repository: UpdateSettingsRepository.Interface) {}\n\n async execute(data: IAiPowerUpsSettings): Promise<IAiPowerUpsSettings> {\n return this.repository.execute(data);\n }\n}\n\nexport const UpdateSettingsUseCase = UseCaseAbstraction.createImplementation({\n implementation: UpdateSettingsUseCaseImpl,\n dependencies: [UpdateSettingsRepository]\n});\n"],"names":["UpdateSettingsUseCaseImpl","repository","data","UpdateSettingsUseCase","UseCaseAbstraction","UpdateSettingsRepository"],"mappings":";AAMA,MAAMA;IACF,YAAoBC,UAA8C,CAAE;aAAhDA,UAAU,GAAVA;IAAiD;IAErE,MAAM,QAAQC,IAAyB,EAAgC;QACnE,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAACA;IACnC;AACJ;AAEO,MAAMC,8CAAwBC,sBAAAA,oBAAuC,CAAC;IACzE,gBAAgBJ;IAChB,cAAc;QAACK;KAAyB;AAC5C"}
@@ -0,0 +1,22 @@
1
+ import type { IAiPowerUpsSettings } from "../../../../admin/features/settings/shared/abstractions.js";
2
+ export interface IUpdateSettingsUseCase {
3
+ execute(data: IAiPowerUpsSettings): Promise<IAiPowerUpsSettings>;
4
+ }
5
+ export declare const UpdateSettingsUseCase: import("@webiny/di").Abstraction<IUpdateSettingsUseCase>;
6
+ export declare namespace UpdateSettingsUseCase {
7
+ type Interface = IUpdateSettingsUseCase;
8
+ }
9
+ export interface IUpdateSettingsRepository {
10
+ execute(data: IAiPowerUpsSettings): Promise<IAiPowerUpsSettings>;
11
+ }
12
+ export declare const UpdateSettingsRepository: import("@webiny/di").Abstraction<IUpdateSettingsRepository>;
13
+ export declare namespace UpdateSettingsRepository {
14
+ type Interface = IUpdateSettingsRepository;
15
+ }
16
+ export interface IUpdateSettingsGateway {
17
+ execute(data: IAiPowerUpsSettings): Promise<IAiPowerUpsSettings>;
18
+ }
19
+ export declare const UpdateSettingsGateway: import("@webiny/di").Abstraction<IUpdateSettingsGateway>;
20
+ export declare namespace UpdateSettingsGateway {
21
+ type Interface = IUpdateSettingsGateway;
22
+ }
@@ -0,0 +1,7 @@
1
+ import { createAbstraction } from "@webiny/feature/admin";
2
+ const UpdateSettingsUseCase = createAbstraction("AiPowerUps/UpdateSettingsUseCase");
3
+ const UpdateSettingsRepository = createAbstraction("AiPowerUps/UpdateSettingsRepository");
4
+ const UpdateSettingsGateway = createAbstraction("AiPowerUps/UpdateSettingsGateway");
5
+ export { UpdateSettingsGateway, UpdateSettingsRepository, UpdateSettingsUseCase };
6
+
7
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/features/settings/updateSettings/abstractions.js","sources":["../../../../../src/admin/features/settings/updateSettings/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\nimport type { IAiPowerUpsSettings } from \"~/admin/features/settings/shared/abstractions.js\";\n\nexport interface IUpdateSettingsUseCase {\n execute(data: IAiPowerUpsSettings): Promise<IAiPowerUpsSettings>;\n}\n\nexport const UpdateSettingsUseCase = createAbstraction<IUpdateSettingsUseCase>(\n \"AiPowerUps/UpdateSettingsUseCase\"\n);\nexport namespace UpdateSettingsUseCase {\n export type Interface = IUpdateSettingsUseCase;\n}\n\nexport interface IUpdateSettingsRepository {\n execute(data: IAiPowerUpsSettings): Promise<IAiPowerUpsSettings>;\n}\n\nexport const UpdateSettingsRepository = createAbstraction<IUpdateSettingsRepository>(\n \"AiPowerUps/UpdateSettingsRepository\"\n);\nexport namespace UpdateSettingsRepository {\n export type Interface = IUpdateSettingsRepository;\n}\n\nexport interface IUpdateSettingsGateway {\n execute(data: IAiPowerUpsSettings): Promise<IAiPowerUpsSettings>;\n}\n\nexport const UpdateSettingsGateway = createAbstraction<IUpdateSettingsGateway>(\n \"AiPowerUps/UpdateSettingsGateway\"\n);\nexport namespace UpdateSettingsGateway {\n export type Interface = IUpdateSettingsGateway;\n}\n"],"names":["UpdateSettingsUseCase","createAbstraction","UpdateSettingsRepository","UpdateSettingsGateway"],"mappings":";AAOO,MAAMA,wBAAwBC,kBACjC;AAUG,MAAMC,2BAA2BD,kBACpC;AAUG,MAAME,wBAAwBF,kBACjC"}
@@ -0,0 +1,3 @@
1
+ export declare const UpdateSettingsFeature: import("@webiny/feature/admin").FeatureDefinition<{
2
+ useCase: import("./abstractions.js").IUpdateSettingsUseCase;
3
+ }, []>;
@@ -0,0 +1,21 @@
1
+ import { createFeature } from "@webiny/feature/admin";
2
+ import { UpdateSettingsUseCase } from "./abstractions.js";
3
+ import { UpdateSettingsUseCase as external_UpdateSettingsUseCase_js_UpdateSettingsUseCase } from "./UpdateSettingsUseCase.js";
4
+ import { UpdateSettingsRepository } from "./UpdateSettingsRepository.js";
5
+ import { UpdateSettingsGateway } from "./UpdateSettingsGateway.js";
6
+ const UpdateSettingsFeature = createFeature({
7
+ name: "AiPowerUps/UpdateSettings",
8
+ register (container) {
9
+ container.register(external_UpdateSettingsUseCase_js_UpdateSettingsUseCase);
10
+ container.register(UpdateSettingsRepository).inSingletonScope();
11
+ container.register(UpdateSettingsGateway).inSingletonScope();
12
+ },
13
+ resolve (container) {
14
+ return {
15
+ useCase: container.resolve(UpdateSettingsUseCase)
16
+ };
17
+ }
18
+ });
19
+ export { UpdateSettingsFeature };
20
+
21
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/features/settings/updateSettings/feature.js","sources":["../../../../../src/admin/features/settings/updateSettings/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/admin\";\nimport { UpdateSettingsUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport { UpdateSettingsUseCase } from \"./UpdateSettingsUseCase.js\";\nimport { UpdateSettingsRepository } from \"./UpdateSettingsRepository.js\";\nimport { UpdateSettingsGateway } from \"./UpdateSettingsGateway.js\";\n\nexport const UpdateSettingsFeature = createFeature({\n name: \"AiPowerUps/UpdateSettings\",\n register(container) {\n container.register(UpdateSettingsUseCase);\n container.register(UpdateSettingsRepository).inSingletonScope();\n container.register(UpdateSettingsGateway).inSingletonScope();\n },\n resolve(container) {\n return {\n useCase: container.resolve(UseCaseAbstraction)\n };\n }\n});\n"],"names":["UpdateSettingsFeature","createFeature","container","UpdateSettingsUseCase","UpdateSettingsRepository","UpdateSettingsGateway","UseCaseAbstraction"],"mappings":";;;;;AAMO,MAAMA,wBAAwBC,cAAc;IAC/C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;QACnBD,UAAU,QAAQ,CAACE,0BAA0B,gBAAgB;QAC7DF,UAAU,QAAQ,CAACG,uBAAuB,gBAAgB;IAC9D;IACA,SAAQH,SAAS;QACb,OAAO;YACH,SAASA,UAAU,OAAO,CAACI;QAC/B;IACJ;AACJ"}
@@ -0,0 +1,2 @@
1
+ export { UpdateSettingsUseCase, UpdateSettingsRepository, UpdateSettingsGateway } from "./abstractions.js";
2
+ export { UpdateSettingsFeature } from "./feature.js";
@@ -0,0 +1,2 @@
1
+ export { UpdateSettingsGateway, UpdateSettingsRepository, UpdateSettingsUseCase } from "./abstractions.js";
2
+ export { UpdateSettingsFeature } from "./feature.js";
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ export declare const AiPowerUpsSettingsPage: (() => React.JSX.Element) & React.NamedExoticComponent<unknown> & {
3
+ readonly type: () => React.JSX.Element;
4
+ };
@@ -0,0 +1,49 @@
1
+ import react, { useEffect } from "react";
2
+ import { observer } from "mobx-react-lite";
3
+ import { FormErrors, FormView, PresenterErrors, SimpleForm, SimpleFormContent, SimpleFormFooter, SimpleFormHeader } from "@webiny/app-admin";
4
+ import { Button, OverlayLoader, useToast } from "@webiny/admin-ui";
5
+ import { useFeature } from "@webiny/app";
6
+ import { AiPowerUpsSettingsFeature } from "./feature.js";
7
+ const AiPowerUpsSettingsPage = observer(()=>{
8
+ const toast = useToast();
9
+ const { presenter } = useFeature(AiPowerUpsSettingsFeature);
10
+ const vm = presenter.vm;
11
+ useEffect(()=>{
12
+ presenter.init();
13
+ }, []);
14
+ const handleSave = async ()=>{
15
+ const success = await presenter.save();
16
+ if (success) toast.showSuccessToast({
17
+ title: "AI power-ups settings saved successfully!"
18
+ });
19
+ };
20
+ return /*#__PURE__*/ react.createElement("div", null, /*#__PURE__*/ react.createElement(SimpleForm, {
21
+ size: "xl"
22
+ }, vm.errors.length > 0 ? /*#__PURE__*/ react.createElement("div", {
23
+ className: "mb-lg"
24
+ }, /*#__PURE__*/ react.createElement(PresenterErrors, {
25
+ errors: vm.errors
26
+ })) : null, vm.form ? /*#__PURE__*/ react.createElement(FormErrors, {
27
+ form: vm.form,
28
+ className: "mb-lg"
29
+ }) : null, vm.loading || vm.saving ? /*#__PURE__*/ react.createElement(OverlayLoader, {
30
+ text: vm.saving ? "Saving..." : "Loading..."
31
+ }) : null, /*#__PURE__*/ react.createElement(SimpleFormHeader, {
32
+ title: "AI Power-Ups"
33
+ }), /*#__PURE__*/ react.createElement(SimpleFormContent, {
34
+ className: "p-0"
35
+ }, /*#__PURE__*/ react.createElement("div", {
36
+ className: "flex flex-col gap-4"
37
+ }, vm.form ? /*#__PURE__*/ react.createElement(FormView, {
38
+ name: "AI Power-Ups",
39
+ form: vm.form
40
+ }) : null)), /*#__PURE__*/ react.createElement(SimpleFormFooter, {
41
+ className: "border-t-sm border-t-neutral-dimmed pt-lg"
42
+ }, /*#__PURE__*/ react.createElement(Button, {
43
+ text: "Save Settings",
44
+ onClick: handleSave
45
+ }))));
46
+ });
47
+ export { AiPowerUpsSettingsPage };
48
+
49
+ //# sourceMappingURL=AiPowerUpsSettingsPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsPage.js","sources":["../../../../src/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsPage.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport {\n FormView,\n FormErrors,\n PresenterErrors,\n SimpleForm,\n SimpleFormContent,\n SimpleFormFooter,\n SimpleFormHeader\n} from \"@webiny/app-admin\";\nimport { Button, OverlayLoader, useToast } from \"@webiny/admin-ui\";\nimport { useFeature } from \"@webiny/app\";\nimport { AiPowerUpsSettingsFeature } from \"./feature.js\";\n\nexport const AiPowerUpsSettingsPage = observer(() => {\n const toast = useToast();\n const { presenter } = useFeature(AiPowerUpsSettingsFeature);\n const vm = presenter.vm;\n\n useEffect(() => {\n presenter.init();\n }, []);\n\n const handleSave = async () => {\n const success = await presenter.save();\n if (success) {\n toast.showSuccessToast({\n title: \"AI power-ups settings saved successfully!\"\n });\n }\n };\n\n return (\n <div>\n <SimpleForm size={\"xl\"}>\n {vm.errors.length > 0 ? (\n <div className={\"mb-lg\"}>\n <PresenterErrors errors={vm.errors} />\n </div>\n ) : null}\n {vm.form ? <FormErrors form={vm.form} className={\"mb-lg\"} /> : null}\n {vm.loading || vm.saving ? (\n <OverlayLoader text={vm.saving ? \"Saving...\" : \"Loading...\"} />\n ) : null}\n <SimpleFormHeader title=\"AI Power-Ups\" />\n <SimpleFormContent className={\"p-0\"}>\n <div className=\"flex flex-col gap-4\">\n {vm.form ? <FormView name=\"AI Power-Ups\" form={vm.form} /> : null}\n </div>\n </SimpleFormContent>\n <SimpleFormFooter className={\"border-t-sm border-t-neutral-dimmed pt-lg\"}>\n <Button text=\"Save Settings\" onClick={handleSave} />\n </SimpleFormFooter>\n </SimpleForm>\n </div>\n );\n});\n"],"names":["AiPowerUpsSettingsPage","observer","toast","useToast","presenter","useFeature","AiPowerUpsSettingsFeature","vm","useEffect","handleSave","success","SimpleForm","PresenterErrors","FormErrors","OverlayLoader","SimpleFormHeader","SimpleFormContent","FormView","SimpleFormFooter","Button"],"mappings":";;;;;;AAeO,MAAMA,yBAAyBC,SAAS;IAC3C,MAAMC,QAAQC;IACd,MAAM,EAAEC,SAAS,EAAE,GAAGC,WAAWC;IACjC,MAAMC,KAAKH,UAAU,EAAE;IAEvBI,UAAU;QACNJ,UAAU,IAAI;IAClB,GAAG,EAAE;IAEL,MAAMK,aAAa;QACf,MAAMC,UAAU,MAAMN,UAAU,IAAI;QACpC,IAAIM,SACAR,MAAM,gBAAgB,CAAC;YACnB,OAAO;QACX;IAER;IAEA,OAAO,WAAP,GACI,oBAAC,2BACG,oBAACS,YAAUA;QAAC,MAAM;OACbJ,GAAG,MAAM,CAAC,MAAM,GAAG,IAAI,WAAJ,GAChB,oBAAC;QAAI,WAAW;qBACZ,oBAACK,iBAAeA;QAAC,QAAQL,GAAG,MAAM;UAEtC,MACHA,GAAG,IAAI,GAAG,WAAH,GAAG,oBAACM,YAAUA;QAAC,MAAMN,GAAG,IAAI;QAAE,WAAW;SAAc,MAC9DA,GAAG,OAAO,IAAIA,GAAG,MAAM,GAAG,WAAH,GACpB,oBAACO,eAAaA;QAAC,MAAMP,GAAG,MAAM,GAAG,cAAc;SAC/C,oBACJ,oBAACQ,kBAAgBA;QAAC,OAAM;sBACxB,oBAACC,mBAAiBA;QAAC,WAAW;qBAC1B,oBAAC;QAAI,WAAU;OACVT,GAAG,IAAI,GAAG,WAAH,GAAG,oBAACU,UAAQA;QAAC,MAAK;QAAe,MAAMV,GAAG,IAAI;SAAO,sBAGrE,oBAACW,kBAAgBA;QAAC,WAAW;qBACzB,oBAACC,QAAMA;QAAC,MAAK;QAAgB,SAASV;;AAK1D"}
@@ -0,0 +1,26 @@
1
+ import { FormModelFactory } from "@webiny/app-admin";
2
+ import { GetSettingsUseCase } from "../../features/settings/getSettings/abstractions.js";
3
+ import { UpdateSettingsUseCase } from "../../features/settings/updateSettings/abstractions.js";
4
+ import { AiPowerUpsSettingsPresenter as PresenterAbstraction } from "./abstractions.js";
5
+ import { AiPowerUpsSettingsGroup } from "./settingsGroup.js";
6
+ declare class AiPowerUpsSettingsPresenterImpl implements PresenterAbstraction.Interface {
7
+ private factory;
8
+ private groups;
9
+ private getSettings;
10
+ private updateSettings;
11
+ private loading;
12
+ private saving;
13
+ private form;
14
+ private errors;
15
+ constructor(factory: FormModelFactory.Interface, groups: AiPowerUpsSettingsGroup.Interface[], getSettings: GetSettingsUseCase.Interface, updateSettings: UpdateSettingsUseCase.Interface);
16
+ get vm(): PresenterAbstraction.ViewModel;
17
+ init(): Promise<void>;
18
+ save(): Promise<boolean>;
19
+ importData(data: Record<string, unknown>): void;
20
+ private collectGroups;
21
+ private buildForm;
22
+ }
23
+ export declare const AiPowerUpsSettingsPresenter: typeof AiPowerUpsSettingsPresenterImpl & {
24
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IAiPowerUpsSettingsPresenter>;
25
+ };
26
+ export {};
@@ -0,0 +1,148 @@
1
+ import { computed, makeAutoObservable, runInAction } from "mobx";
2
+ import { FormModelFactory } from "@webiny/app-admin";
3
+ import { GetSettingsUseCase } from "../../features/settings/getSettings/abstractions.js";
4
+ import { UpdateSettingsUseCase } from "../../features/settings/updateSettings/abstractions.js";
5
+ import { AiPowerUpsSettingsPresenter } from "./abstractions.js";
6
+ import { AiPowerUpsSettingsGroup } from "./settingsGroup.js";
7
+ import { SettingsValidationError } from "../../domain/errors.js";
8
+ class AiPowerUpsSettingsPresenterImpl {
9
+ constructor(factory, groups, getSettings, updateSettings){
10
+ this.factory = factory;
11
+ this.groups = groups;
12
+ this.getSettings = getSettings;
13
+ this.updateSettings = updateSettings;
14
+ this.loading = false;
15
+ this.saving = false;
16
+ this.form = null;
17
+ this.errors = [];
18
+ makeAutoObservable(this, {
19
+ vm: computed
20
+ }, {
21
+ autoBind: true
22
+ });
23
+ }
24
+ get vm() {
25
+ return {
26
+ loading: this.loading,
27
+ saving: this.saving,
28
+ form: this.form ? this.form.vm : null,
29
+ errors: this.errors
30
+ };
31
+ }
32
+ async init() {
33
+ this.loading = true;
34
+ this.errors = [];
35
+ try {
36
+ const data = await this.getSettings.execute();
37
+ runInAction(()=>{
38
+ this.form = this.buildForm();
39
+ this.form.setData(data);
40
+ });
41
+ } catch (err) {
42
+ runInAction(()=>{
43
+ this.errors = [
44
+ err instanceof Error ? err.message : "Failed to load settings."
45
+ ];
46
+ });
47
+ } finally{
48
+ runInAction(()=>{
49
+ this.loading = false;
50
+ });
51
+ }
52
+ }
53
+ async save() {
54
+ if (!this.form) return false;
55
+ const data = await this.form.submit();
56
+ if (!data) return false;
57
+ runInAction(()=>{
58
+ this.saving = true;
59
+ this.errors = [];
60
+ });
61
+ try {
62
+ await this.updateSettings.execute(data);
63
+ return true;
64
+ } catch (err) {
65
+ runInAction(()=>{
66
+ if (err instanceof SettingsValidationError) this.errors = Object.values(err.data.invalidFields).map((e)=>e.message);
67
+ else this.errors = [
68
+ err instanceof Error ? err.message : "Failed to save settings."
69
+ ];
70
+ });
71
+ return false;
72
+ } finally{
73
+ runInAction(()=>{
74
+ this.saving = false;
75
+ });
76
+ }
77
+ }
78
+ importData(data) {
79
+ if (!this.form) return;
80
+ const current = this.form.getData();
81
+ this.form.setData({
82
+ ...current,
83
+ ...data
84
+ });
85
+ }
86
+ collectGroups() {
87
+ return this.groups.map((group)=>{
88
+ const collected = {
89
+ group,
90
+ fieldsFn: null,
91
+ layoutFn: null
92
+ };
93
+ const builder = {
94
+ fields (fn) {
95
+ collected.fieldsFn = fn;
96
+ },
97
+ layout (fn) {
98
+ collected.layoutFn = fn;
99
+ }
100
+ };
101
+ group.buildForm(builder);
102
+ return collected;
103
+ });
104
+ }
105
+ buildForm() {
106
+ const collected = this.collectGroups();
107
+ const form = this.factory.create({
108
+ fields: (fields)=>{
109
+ const result = {};
110
+ for (const { group, fieldsFn } of collected)if (fieldsFn) result[group.name] = fields.object().label(group.label).renderer("passthrough").fields(fieldsFn);
111
+ return result;
112
+ },
113
+ layout: (layout)=>{
114
+ if (0 === collected.length) return [];
115
+ const tabsBuilder = layout.tabs("settings-tabs").renderer("tabsVertical");
116
+ for (const { group } of collected)tabsBuilder.tab(group.name, (tab)=>{
117
+ tab.label(group.label);
118
+ if (group.description) tab.description(group.description);
119
+ if (group.icon) tab.icon(group.icon);
120
+ tab.layout((l)=>[
121
+ l.row(group.name)
122
+ ]);
123
+ });
124
+ return [
125
+ tabsBuilder
126
+ ];
127
+ }
128
+ });
129
+ return form;
130
+ }
131
+ }
132
+ const AiPowerUpsSettingsPresenter_AiPowerUpsSettingsPresenter = AiPowerUpsSettingsPresenter.createImplementation({
133
+ implementation: AiPowerUpsSettingsPresenterImpl,
134
+ dependencies: [
135
+ FormModelFactory,
136
+ [
137
+ AiPowerUpsSettingsGroup,
138
+ {
139
+ multiple: true
140
+ }
141
+ ],
142
+ GetSettingsUseCase,
143
+ UpdateSettingsUseCase
144
+ ]
145
+ });
146
+ export { AiPowerUpsSettingsPresenter_AiPowerUpsSettingsPresenter as AiPowerUpsSettingsPresenter };
147
+
148
+ //# sourceMappingURL=AiPowerUpsSettingsPresenter.js.map