@webiny/ai-powerups 6.3.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. package/AiPowerups.d.ts +2 -0
  2. package/AiPowerups.js +12 -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 +31 -0
  8. package/admin/Extension.js.map +1 -0
  9. package/admin/features/feature.d.ts +1 -0
  10. package/admin/features/feature.js +21 -0
  11. package/admin/features/feature.js.map +1 -0
  12. package/admin/features/generatePageContent/GeneratePageContentGateway.d.ts +12 -0
  13. package/admin/features/generatePageContent/GeneratePageContentGateway.js +26 -0
  14. package/admin/features/generatePageContent/GeneratePageContentGateway.js.map +1 -0
  15. package/admin/features/generatePageContent/GeneratePageContentUseCase.d.ts +11 -0
  16. package/admin/features/generatePageContent/GeneratePageContentUseCase.js +15 -0
  17. package/admin/features/generatePageContent/GeneratePageContentUseCase.js.map +1 -0
  18. package/admin/features/generatePageContent/abstractions.d.ts +20 -0
  19. package/admin/features/generatePageContent/abstractions.js +5 -0
  20. package/admin/features/generatePageContent/abstractions.js.map +1 -0
  21. package/admin/features/generatePageContent/feature.d.ts +1 -0
  22. package/admin/features/generatePageContent/feature.js +12 -0
  23. package/admin/features/generatePageContent/feature.js.map +1 -0
  24. package/admin/features/generatePageContent/index.d.ts +3 -0
  25. package/admin/features/generatePageContent/index.js +4 -0
  26. package/admin/features/generatePageContent/index.js.map +1 -0
  27. package/admin/features/listModels/ListModelsGateway.d.ts +12 -0
  28. package/admin/features/listModels/ListModelsGateway.js +31 -0
  29. package/admin/features/listModels/ListModelsGateway.js.map +1 -0
  30. package/admin/features/listModels/ListModelsRepository.d.ts +13 -0
  31. package/admin/features/listModels/ListModelsRepository.js +24 -0
  32. package/admin/features/listModels/ListModelsRepository.js.map +1 -0
  33. package/admin/features/listModels/ListModelsUseCase.d.ts +10 -0
  34. package/admin/features/listModels/ListModelsUseCase.js +15 -0
  35. package/admin/features/listModels/ListModelsUseCase.js.map +1 -0
  36. package/admin/features/listModels/abstractions.d.ts +28 -0
  37. package/admin/features/listModels/abstractions.js +6 -0
  38. package/admin/features/listModels/abstractions.js.map +1 -0
  39. package/admin/features/listModels/feature.d.ts +3 -0
  40. package/admin/features/listModels/feature.js +20 -0
  41. package/admin/features/listModels/feature.js.map +1 -0
  42. package/admin/features/listModels/index.d.ts +2 -0
  43. package/admin/features/listModels/index.js +4 -0
  44. package/admin/features/listModels/index.js.map +1 -0
  45. package/admin/features/settings/getSettings/GetSettingsGateway.d.ts +11 -0
  46. package/admin/features/settings/getSettings/GetSettingsGateway.js +26 -0
  47. package/admin/features/settings/getSettings/GetSettingsGateway.js.map +1 -0
  48. package/admin/features/settings/getSettings/GetSettingsRepository.d.ts +12 -0
  49. package/admin/features/settings/getSettings/GetSettingsRepository.js +23 -0
  50. package/admin/features/settings/getSettings/GetSettingsRepository.js.map +1 -0
  51. package/admin/features/settings/getSettings/GetSettingsUseCase.d.ts +10 -0
  52. package/admin/features/settings/getSettings/GetSettingsUseCase.js +15 -0
  53. package/admin/features/settings/getSettings/GetSettingsUseCase.js.map +1 -0
  54. package/admin/features/settings/getSettings/abstractions.d.ts +22 -0
  55. package/admin/features/settings/getSettings/abstractions.js +6 -0
  56. package/admin/features/settings/getSettings/abstractions.js.map +1 -0
  57. package/admin/features/settings/getSettings/feature.d.ts +3 -0
  58. package/admin/features/settings/getSettings/feature.js +20 -0
  59. package/admin/features/settings/getSettings/feature.js.map +1 -0
  60. package/admin/features/settings/getSettings/index.d.ts +2 -0
  61. package/admin/features/settings/getSettings/index.js +4 -0
  62. package/admin/features/settings/getSettings/index.js.map +1 -0
  63. package/admin/features/settings/shared/SettingsCache.d.ts +9 -0
  64. package/admin/features/settings/shared/SettingsCache.js +18 -0
  65. package/admin/features/settings/shared/SettingsCache.js.map +1 -0
  66. package/admin/features/settings/shared/abstractions.d.ts +9 -0
  67. package/admin/features/settings/shared/abstractions.js +21 -0
  68. package/admin/features/settings/shared/abstractions.js.map +1 -0
  69. package/admin/features/settings/shared/feature.d.ts +1 -0
  70. package/admin/features/settings/shared/feature.js +14 -0
  71. package/admin/features/settings/shared/feature.js.map +1 -0
  72. package/admin/features/settings/shared/index.d.ts +2 -0
  73. package/admin/features/settings/shared/index.js +4 -0
  74. package/admin/features/settings/shared/index.js.map +1 -0
  75. package/admin/features/settings/updateSettings/UpdateSettingsGateway.d.ts +12 -0
  76. package/admin/features/settings/updateSettings/UpdateSettingsGateway.js +29 -0
  77. package/admin/features/settings/updateSettings/UpdateSettingsGateway.js.map +1 -0
  78. package/admin/features/settings/updateSettings/UpdateSettingsRepository.d.ts +13 -0
  79. package/admin/features/settings/updateSettings/UpdateSettingsRepository.js +19 -0
  80. package/admin/features/settings/updateSettings/UpdateSettingsRepository.js.map +1 -0
  81. package/admin/features/settings/updateSettings/UpdateSettingsUseCase.d.ts +11 -0
  82. package/admin/features/settings/updateSettings/UpdateSettingsUseCase.js +15 -0
  83. package/admin/features/settings/updateSettings/UpdateSettingsUseCase.js.map +1 -0
  84. package/admin/features/settings/updateSettings/abstractions.d.ts +22 -0
  85. package/admin/features/settings/updateSettings/abstractions.js +6 -0
  86. package/admin/features/settings/updateSettings/abstractions.js.map +1 -0
  87. package/admin/features/settings/updateSettings/feature.d.ts +3 -0
  88. package/admin/features/settings/updateSettings/feature.js +20 -0
  89. package/admin/features/settings/updateSettings/feature.js.map +1 -0
  90. package/admin/features/settings/updateSettings/index.d.ts +2 -0
  91. package/admin/features/settings/updateSettings/index.js +4 -0
  92. package/admin/features/settings/updateSettings/index.js.map +1 -0
  93. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsConfig.d.ts +2 -0
  94. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsConfig.js +11 -0
  95. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsConfig.js.map +1 -0
  96. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsDialog.d.ts +5 -0
  97. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsDialog.js +58 -0
  98. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsDialog.js.map +1 -0
  99. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsPresenter.d.ts +25 -0
  100. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsPresenter.js +140 -0
  101. package/admin/presentation/AiPowerUpsSettings/AiPowerUpsSettingsPresenter.js.map +1 -0
  102. package/admin/presentation/AiPowerUpsSettings/abstractions.d.ts +17 -0
  103. package/admin/presentation/AiPowerUpsSettings/abstractions.js +4 -0
  104. package/admin/presentation/AiPowerUpsSettings/abstractions.js.map +1 -0
  105. package/admin/presentation/AiPowerUpsSettings/feature.d.ts +3 -0
  106. package/admin/presentation/AiPowerUpsSettings/feature.js +21 -0
  107. package/admin/presentation/AiPowerUpsSettings/feature.js.map +1 -0
  108. package/admin/presentation/AiPowerUpsSettings/index.d.ts +5 -0
  109. package/admin/presentation/AiPowerUpsSettings/index.js +7 -0
  110. package/admin/presentation/AiPowerUpsSettings/index.js.map +1 -0
  111. package/admin/presentation/AiPowerUpsSettings/settingsGroup.d.ts +18 -0
  112. package/admin/presentation/AiPowerUpsSettings/settingsGroup.js +4 -0
  113. package/admin/presentation/AiPowerUpsSettings/settingsGroup.js.map +1 -0
  114. package/admin/presentation/AiPowerUpsSettings/useAiPowerUpsSettingsDialog.d.ts +1 -0
  115. package/admin/presentation/AiPowerUpsSettings/useAiPowerUpsSettingsDialog.js +12 -0
  116. package/admin/presentation/AiPowerUpsSettings/useAiPowerUpsSettingsDialog.js.map +1 -0
  117. package/admin/presentation/PersonasSettings.d.ts +11 -0
  118. package/admin/presentation/PersonasSettings.js +28 -0
  119. package/admin/presentation/PersonasSettings.js.map +1 -0
  120. package/admin/presentation/ProvidersSettings.d.ts +16 -0
  121. package/admin/presentation/ProvidersSettings.js +37 -0
  122. package/admin/presentation/ProvidersSettings.js.map +1 -0
  123. package/admin/presentation/WbContentGeneration/Extension.d.ts +2 -0
  124. package/admin/presentation/WbContentGeneration/Extension.js +23 -0
  125. package/admin/presentation/WbContentGeneration/Extension.js.map +1 -0
  126. package/admin/presentation/WbContentGeneration/GenerateContentButton.d.ts +2 -0
  127. package/admin/presentation/WbContentGeneration/GenerateContentButton.js +17 -0
  128. package/admin/presentation/WbContentGeneration/GenerateContentButton.js.map +1 -0
  129. package/admin/presentation/WbContentGeneration/GenerateContentDialog.d.ts +21 -0
  130. package/admin/presentation/WbContentGeneration/GenerateContentDialog.js +102 -0
  131. package/admin/presentation/WbContentGeneration/GenerateContentDialog.js.map +1 -0
  132. package/admin/presentation/WbContentGeneration/GenerateContentPresenter.d.ts +24 -0
  133. package/admin/presentation/WbContentGeneration/GenerateContentPresenter.js +91 -0
  134. package/admin/presentation/WbContentGeneration/GenerateContentPresenter.js.map +1 -0
  135. package/admin/presentation/WbContentGeneration/PROCESS_IDEA.md +190 -0
  136. package/admin/presentation/WbContentGeneration/abstractions.d.ts +28 -0
  137. package/admin/presentation/WbContentGeneration/abstractions.js +4 -0
  138. package/admin/presentation/WbContentGeneration/abstractions.js.map +1 -0
  139. package/admin/presentation/WbContentGeneration/decompressGzipBase64.d.ts +1 -0
  140. package/admin/presentation/WbContentGeneration/decompressGzipBase64.js +14 -0
  141. package/admin/presentation/WbContentGeneration/decompressGzipBase64.js.map +1 -0
  142. package/admin/presentation/WbContentGeneration/feature.d.ts +3 -0
  143. package/admin/presentation/WbContentGeneration/feature.js +16 -0
  144. package/admin/presentation/WbContentGeneration/feature.js.map +1 -0
  145. package/api/Extension.d.ts +4 -0
  146. package/api/Extension.js +16 -0
  147. package/api/Extension.js.map +1 -0
  148. package/api/constants.d.ts +1 -0
  149. package/api/constants.js +3 -0
  150. package/api/constants.js.map +1 -0
  151. package/api/features/GetSettings/GetSettingsRepository.d.ts +15 -0
  152. package/api/features/GetSettings/GetSettingsRepository.js +45 -0
  153. package/api/features/GetSettings/GetSettingsRepository.js.map +1 -0
  154. package/api/features/GetSettings/GetSettingsUseCase.d.ts +10 -0
  155. package/api/features/GetSettings/GetSettingsUseCase.js +15 -0
  156. package/api/features/GetSettings/GetSettingsUseCase.js.map +1 -0
  157. package/api/features/GetSettings/abstractions.d.ts +16 -0
  158. package/api/features/GetSettings/abstractions.js +5 -0
  159. package/api/features/GetSettings/abstractions.js.map +1 -0
  160. package/api/features/GetSettings/feature.d.ts +4 -0
  161. package/api/features/GetSettings/feature.js +12 -0
  162. package/api/features/GetSettings/feature.js.map +1 -0
  163. package/api/features/GetSettings/index.d.ts +1 -0
  164. package/api/features/GetSettings/index.js +3 -0
  165. package/api/features/GetSettings/index.js.map +1 -0
  166. package/api/features/UpdateSettings/UpdateSettingsRepository.d.ts +15 -0
  167. package/api/features/UpdateSettings/UpdateSettingsRepository.js +42 -0
  168. package/api/features/UpdateSettings/UpdateSettingsRepository.js.map +1 -0
  169. package/api/features/UpdateSettings/UpdateSettingsUseCase.d.ts +14 -0
  170. package/api/features/UpdateSettings/UpdateSettingsUseCase.js +40 -0
  171. package/api/features/UpdateSettings/UpdateSettingsUseCase.js.map +1 -0
  172. package/api/features/UpdateSettings/abstractions.d.ts +46 -0
  173. package/api/features/UpdateSettings/abstractions.js +10 -0
  174. package/api/features/UpdateSettings/abstractions.js.map +1 -0
  175. package/api/features/UpdateSettings/events.d.ts +10 -0
  176. package/api/features/UpdateSettings/events.js +16 -0
  177. package/api/features/UpdateSettings/events.js.map +1 -0
  178. package/api/features/UpdateSettings/feature.d.ts +4 -0
  179. package/api/features/UpdateSettings/feature.js +12 -0
  180. package/api/features/UpdateSettings/feature.js.map +1 -0
  181. package/api/features/UpdateSettings/index.d.ts +1 -0
  182. package/api/features/UpdateSettings/index.js +3 -0
  183. package/api/features/UpdateSettings/index.js.map +1 -0
  184. package/api/features/UpdateSettings/validation.d.ts +17 -0
  185. package/api/features/UpdateSettings/validation.js +21 -0
  186. package/api/features/UpdateSettings/validation.js.map +1 -0
  187. package/api/features/WbGeneratePageContent/WbGeneratePageContentTask.d.ts +29 -0
  188. package/api/features/WbGeneratePageContent/WbGeneratePageContentTask.js +72 -0
  189. package/api/features/WbGeneratePageContent/WbGeneratePageContentTask.js.map +1 -0
  190. package/api/features/WbGeneratePageContent/WbGeneratePageContentUseCase.d.ts +17 -0
  191. package/api/features/WbGeneratePageContent/WbGeneratePageContentUseCase.js +62 -0
  192. package/api/features/WbGeneratePageContent/WbGeneratePageContentUseCase.js.map +1 -0
  193. package/api/features/WbGeneratePageContent/abstractions.d.ts +14 -0
  194. package/api/features/WbGeneratePageContent/abstractions.js +4 -0
  195. package/api/features/WbGeneratePageContent/abstractions.js.map +1 -0
  196. package/api/features/WbGeneratePageContent/buildPrompt.d.ts +1 -0
  197. package/api/features/WbGeneratePageContent/buildPrompt.js +142 -0
  198. package/api/features/WbGeneratePageContent/buildPrompt.js.map +1 -0
  199. package/api/features/WbGeneratePageContent/feature.d.ts +4 -0
  200. package/api/features/WbGeneratePageContent/feature.js +12 -0
  201. package/api/features/WbGeneratePageContent/feature.js.map +1 -0
  202. package/api/features/WbGeneratePageContent/index.d.ts +1 -0
  203. package/api/features/WbGeneratePageContent/index.js +3 -0
  204. package/api/features/WbGeneratePageContent/index.js.map +1 -0
  205. package/api/graphql/BaseGraphQLSchema.d.ts +8 -0
  206. package/api/graphql/BaseGraphQLSchema.js +110 -0
  207. package/api/graphql/BaseGraphQLSchema.js.map +1 -0
  208. package/api/types.d.ts +19 -0
  209. package/api/types.js +3 -0
  210. package/api/types.js.map +1 -0
  211. package/index.d.ts +1 -0
  212. package/index.js +3 -0
  213. package/index.js.map +1 -0
  214. package/package.json +54 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GetSettingsRepository","RepositoryAbstraction","GetSettingsGateway","SettingsCache","GetSettingsRepositoryImpl","constructor","cache","gateway","execute","cached","get","data","set","createImplementation","implementation","dependencies"],"sources":["GetSettingsRepository.ts"],"sourcesContent":["import {\n GetSettingsRepository as RepositoryAbstraction,\n GetSettingsGateway\n} from \"./abstractions.js\";\nimport { SettingsCache } from \"../shared/abstractions.js\";\n\nclass GetSettingsRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private cache: SettingsCache.Interface,\n private gateway: GetSettingsGateway.Interface\n ) {}\n\n async execute(): Promise<Record<string, any>> {\n const cached = this.cache.get();\n if (cached) {\n return cached;\n }\n\n const data = await this.gateway.execute();\n this.cache.set(data);\n return data;\n }\n}\n\nexport const GetSettingsRepository = RepositoryAbstraction.createImplementation({\n implementation: GetSettingsRepositoryImpl,\n dependencies: [SettingsCache, GetSettingsGateway]\n});\n"],"mappings":"AAAA,SACIA,qBAAqB,IAAIC,qBAAqB,EAC9CC,kBAAkB;AAEtB,SAASC,aAAa;AAEtB,MAAMC,yBAAyB,CAA4C;EACvEC,WAAWA,CACCC,KAA8B,EAC9BC,OAAqC,EAC/C;IAAA,KAFUD,KAA8B,GAA9BA,KAA8B;IAAA,KAC9BC,OAAqC,GAArCA,OAAqC;EAC9C;EAEH,MAAMC,OAAOA,CAAA,EAAiC;IAC1C,MAAMC,MAAM,GAAG,IAAI,CAACH,KAAK,CAACI,GAAG,CAAC,CAAC;IAC/B,IAAID,MAAM,EAAE;MACR,OAAOA,MAAM;IACjB;IAEA,MAAME,IAAI,GAAG,MAAM,IAAI,CAACJ,OAAO,CAACC,OAAO,CAAC,CAAC;IACzC,IAAI,CAACF,KAAK,CAACM,GAAG,CAACD,IAAI,CAAC;IACpB,OAAOA,IAAI;EACf;AACJ;AAEA,OAAO,MAAMX,qBAAqB,GAAGC,qBAAqB,CAACY,oBAAoB,CAAC;EAC5EC,cAAc,EAAEV,yBAAyB;EACzCW,YAAY,EAAE,CAACZ,aAAa,EAAED,kBAAkB;AACpD,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ import { GetSettingsUseCase as UseCaseAbstraction, GetSettingsRepository } from "./abstractions.js";
2
+ declare class GetSettingsUseCaseImpl implements UseCaseAbstraction.Interface {
3
+ private repository;
4
+ constructor(repository: GetSettingsRepository.Interface);
5
+ execute(): Promise<Record<string, any>>;
6
+ }
7
+ export declare const GetSettingsUseCase: typeof GetSettingsUseCaseImpl & {
8
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IGetSettingsUseCase>;
9
+ };
10
+ export {};
@@ -0,0 +1,15 @@
1
+ import { GetSettingsUseCase as UseCaseAbstraction, GetSettingsRepository } from "./abstractions.js";
2
+ class GetSettingsUseCaseImpl {
3
+ constructor(repository) {
4
+ this.repository = repository;
5
+ }
6
+ async execute() {
7
+ return this.repository.execute();
8
+ }
9
+ }
10
+ export const GetSettingsUseCase = UseCaseAbstraction.createImplementation({
11
+ implementation: GetSettingsUseCaseImpl,
12
+ dependencies: [GetSettingsRepository]
13
+ });
14
+
15
+ //# sourceMappingURL=GetSettingsUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GetSettingsUseCase","UseCaseAbstraction","GetSettingsRepository","GetSettingsUseCaseImpl","constructor","repository","execute","createImplementation","implementation","dependencies"],"sources":["GetSettingsUseCase.ts"],"sourcesContent":["import { GetSettingsUseCase as UseCaseAbstraction, GetSettingsRepository } from \"./abstractions.js\";\n\nclass GetSettingsUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private repository: GetSettingsRepository.Interface) {}\n\n async execute(): Promise<Record<string, any>> {\n return this.repository.execute();\n }\n}\n\nexport const GetSettingsUseCase = UseCaseAbstraction.createImplementation({\n implementation: GetSettingsUseCaseImpl,\n dependencies: [GetSettingsRepository]\n});\n"],"mappings":"AAAA,SAASA,kBAAkB,IAAIC,kBAAkB,EAAEC,qBAAqB;AAExE,MAAMC,sBAAsB,CAAyC;EACjEC,WAAWA,CAASC,UAA2C,EAAE;IAAA,KAA7CA,UAA2C,GAA3CA,UAA2C;EAAG;EAElE,MAAMC,OAAOA,CAAA,EAAiC;IAC1C,OAAO,IAAI,CAACD,UAAU,CAACC,OAAO,CAAC,CAAC;EACpC;AACJ;AAEA,OAAO,MAAMN,kBAAkB,GAAGC,kBAAkB,CAACM,oBAAoB,CAAC;EACtEC,cAAc,EAAEL,sBAAsB;EACtCM,YAAY,EAAE,CAACP,qBAAqB;AACxC,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,22 @@
1
+ import type { ISettings } from "../../../../admin/features/settings/shared/abstractions.js";
2
+ export interface IGetSettingsUseCase {
3
+ execute(): Promise<ISettings>;
4
+ }
5
+ export declare const GetSettingsUseCase: import("@webiny/di").Abstraction<IGetSettingsUseCase>;
6
+ export declare namespace GetSettingsUseCase {
7
+ type Interface = IGetSettingsUseCase;
8
+ }
9
+ export interface IGetSettingsRepository {
10
+ execute(): Promise<ISettings>;
11
+ }
12
+ export declare const GetSettingsRepository: import("@webiny/di").Abstraction<IGetSettingsRepository>;
13
+ export declare namespace GetSettingsRepository {
14
+ type Interface = IGetSettingsRepository;
15
+ }
16
+ export interface IGetSettingsGateway {
17
+ execute(): Promise<ISettings>;
18
+ }
19
+ export declare const GetSettingsGateway: import("@webiny/di").Abstraction<IGetSettingsGateway>;
20
+ export declare namespace GetSettingsGateway {
21
+ type Interface = IGetSettingsGateway;
22
+ }
@@ -0,0 +1,6 @@
1
+ import { createAbstraction } from "@webiny/feature/admin";
2
+ export const GetSettingsUseCase = createAbstraction("AiPowerUps/GetSettingsUseCase");
3
+ export const GetSettingsRepository = createAbstraction("AiPowerUps/GetSettingsRepository");
4
+ export const GetSettingsGateway = createAbstraction("AiPowerUps/GetSettingsGateway");
5
+
6
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","GetSettingsUseCase","GetSettingsRepository","GetSettingsGateway"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\nimport type { ISettings } from \"~/admin/features/settings/shared/abstractions.js\";\n\nexport interface IGetSettingsUseCase {\n execute(): Promise<ISettings>;\n}\n\nexport const GetSettingsUseCase = createAbstraction<IGetSettingsUseCase>(\n \"AiPowerUps/GetSettingsUseCase\"\n);\nexport namespace GetSettingsUseCase {\n export type Interface = IGetSettingsUseCase;\n}\n\nexport interface IGetSettingsRepository {\n execute(): Promise<ISettings>;\n}\n\nexport const GetSettingsRepository = createAbstraction<IGetSettingsRepository>(\n \"AiPowerUps/GetSettingsRepository\"\n);\nexport namespace GetSettingsRepository {\n export type Interface = IGetSettingsRepository;\n}\n\nexport interface IGetSettingsGateway {\n execute(): Promise<ISettings>;\n}\n\nexport const GetSettingsGateway = createAbstraction<IGetSettingsGateway>(\n \"AiPowerUps/GetSettingsGateway\"\n);\nexport namespace GetSettingsGateway {\n export type Interface = IGetSettingsGateway;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,uBAAuB;AAOzD,OAAO,MAAMC,kBAAkB,GAAGD,iBAAiB,CAC/C,+BACJ,CAAC;AASD,OAAO,MAAME,qBAAqB,GAAGF,iBAAiB,CAClD,kCACJ,CAAC;AASD,OAAO,MAAMG,kBAAkB,GAAGH,iBAAiB,CAC/C,+BACJ,CAAC","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ export declare const GetSettingsFeature: import("@webiny/feature/admin").FeatureDefinition<{
2
+ useCase: import("./abstractions.js").IGetSettingsUseCase;
3
+ }, []>;
@@ -0,0 +1,20 @@
1
+ import { createFeature } from "@webiny/feature/admin";
2
+ import { GetSettingsUseCase as UseCaseAbstraction } from "./abstractions.js";
3
+ import { GetSettingsUseCase } from "./GetSettingsUseCase.js";
4
+ import { GetSettingsRepository } from "./GetSettingsRepository.js";
5
+ import { GetSettingsGateway } from "./GetSettingsGateway.js";
6
+ export const GetSettingsFeature = createFeature({
7
+ name: "AiPowerUps/GetSettings",
8
+ register(container) {
9
+ container.register(GetSettingsUseCase);
10
+ container.register(GetSettingsRepository).inSingletonScope();
11
+ container.register(GetSettingsGateway).inSingletonScope();
12
+ },
13
+ resolve(container) {
14
+ return {
15
+ useCase: container.resolve(UseCaseAbstraction)
16
+ };
17
+ }
18
+ });
19
+
20
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","GetSettingsUseCase","UseCaseAbstraction","GetSettingsRepository","GetSettingsGateway","GetSettingsFeature","name","register","container","inSingletonScope","resolve","useCase"],"sources":["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"],"mappings":"AAAA,SAASA,aAAa,QAAQ,uBAAuB;AACrD,SAASC,kBAAkB,IAAIC,kBAAkB;AACjD,SAASD,kBAAkB;AAC3B,SAASE,qBAAqB;AAC9B,SAASC,kBAAkB;AAE3B,OAAO,MAAMC,kBAAkB,GAAGL,aAAa,CAAC;EAC5CM,IAAI,EAAE,wBAAwB;EAC9BC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACN,kBAAkB,CAAC;IACtCO,SAAS,CAACD,QAAQ,CAACJ,qBAAqB,CAAC,CAACM,gBAAgB,CAAC,CAAC;IAC5DD,SAAS,CAACD,QAAQ,CAACH,kBAAkB,CAAC,CAACK,gBAAgB,CAAC,CAAC;EAC7D,CAAC;EACDC,OAAOA,CAACF,SAAS,EAAE;IACf,OAAO;MACHG,OAAO,EAAEH,SAAS,CAACE,OAAO,CAACR,kBAAkB;IACjD,CAAC;EACL;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export { GetSettingsUseCase, GetSettingsRepository, GetSettingsGateway } from "./abstractions.js";
2
+ export { GetSettingsFeature } from "./feature.js";
@@ -0,0 +1,4 @@
1
+ export { GetSettingsUseCase, GetSettingsRepository, GetSettingsGateway } from "./abstractions.js";
2
+ export { GetSettingsFeature } from "./feature.js";
3
+
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GetSettingsUseCase","GetSettingsRepository","GetSettingsGateway","GetSettingsFeature"],"sources":["index.ts"],"sourcesContent":["export { GetSettingsUseCase, GetSettingsRepository, GetSettingsGateway } from \"./abstractions.js\";\nexport { GetSettingsFeature } from \"./feature.js\";\n"],"mappings":"AAAA,SAASA,kBAAkB,EAAEC,qBAAqB,EAAEC,kBAAkB;AACtE,SAASC,kBAAkB","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ import type { ISettingsCache } from "./abstractions.js";
2
+ declare class SettingsCacheImpl implements ISettingsCache {
3
+ private data;
4
+ constructor();
5
+ get(): Record<string, any> | null;
6
+ set(data: Record<string, any>): void;
7
+ }
8
+ export declare const settingsCache: SettingsCacheImpl;
9
+ export {};
@@ -0,0 +1,18 @@
1
+ import { makeAutoObservable, runInAction } from "mobx";
2
+ class SettingsCacheImpl {
3
+ data = null;
4
+ constructor() {
5
+ makeAutoObservable(this);
6
+ }
7
+ get() {
8
+ return this.data;
9
+ }
10
+ set(data) {
11
+ runInAction(() => {
12
+ this.data = data;
13
+ });
14
+ }
15
+ }
16
+ export const settingsCache = new SettingsCacheImpl();
17
+
18
+ //# sourceMappingURL=SettingsCache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["makeAutoObservable","runInAction","SettingsCacheImpl","data","constructor","get","set","settingsCache"],"sources":["SettingsCache.ts"],"sourcesContent":["import { makeAutoObservable, runInAction } from \"mobx\";\nimport type { ISettingsCache } from \"./abstractions.js\";\n\nclass SettingsCacheImpl implements ISettingsCache {\n private data: Record<string, any> | null = null;\n\n constructor() {\n makeAutoObservable(this);\n }\n\n get(): Record<string, any> | null {\n return this.data;\n }\n\n set(data: Record<string, any>): void {\n runInAction(() => {\n this.data = data;\n });\n }\n}\n\nexport const settingsCache = new SettingsCacheImpl();\n"],"mappings":"AAAA,SAASA,kBAAkB,EAAEC,WAAW,QAAQ,MAAM;AAGtD,MAAMC,iBAAiB,CAA2B;EACtCC,IAAI,GAA+B,IAAI;EAE/CC,WAAWA,CAAA,EAAG;IACVJ,kBAAkB,CAAC,IAAI,CAAC;EAC5B;EAEAK,GAAGA,CAAA,EAA+B;IAC9B,OAAO,IAAI,CAACF,IAAI;EACpB;EAEAG,GAAGA,CAACH,IAAyB,EAAQ;IACjCF,WAAW,CAAC,MAAM;MACd,IAAI,CAACE,IAAI,GAAGA,IAAI;IACpB,CAAC,CAAC;EACN;AACJ;AAEA,OAAO,MAAMI,aAAa,GAAG,IAAIL,iBAAiB,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ export interface ISettingsCache {
2
+ get(): ISettings | null;
3
+ set(data: Record<string, any>): void;
4
+ }
5
+ export declare const SettingsCache: import("@webiny/di").Abstraction<ISettingsCache>;
6
+ export declare namespace SettingsCache {
7
+ type Interface = ISettingsCache;
8
+ }
9
+ export type ISettings = Record<string, any>;
@@ -0,0 +1,21 @@
1
+ import { createAbstraction } from "@webiny/feature/admin";
2
+ export const SettingsCache = createAbstraction("AiPowerUps/SettingsCache");
3
+
4
+ // export interface ISettings {
5
+ // providers: {
6
+ // presets: {
7
+ // name: string;
8
+ // description: string;
9
+ // model: string;
10
+ // apiKey: string;
11
+ // }[];
12
+ // };
13
+ // personas: {
14
+ // presets: {
15
+ // name: string;
16
+ // description: string;
17
+ // };
18
+ // };
19
+ // };
20
+
21
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","SettingsCache"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\n\nexport interface ISettingsCache {\n get(): ISettings | null;\n set(data: Record<string, any>): void;\n}\n\nexport const SettingsCache = createAbstraction<ISettingsCache>(\"AiPowerUps/SettingsCache\");\nexport namespace SettingsCache {\n export type Interface = ISettingsCache;\n}\n\n// export interface ISettings {\n// providers: {\n// presets: {\n// name: string;\n// description: string;\n// model: string;\n// apiKey: string;\n// }[];\n// };\n// personas: {\n// presets: {\n// name: string;\n// description: string;\n// };\n// };\n// };\n\nexport type ISettings = Record<string, any>;\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,uBAAuB;AAOzD,OAAO,MAAMC,aAAa,GAAGD,iBAAiB,CAAiB,0BAA0B,CAAC;;AAK1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare const SharedSettingsFeature: import("@webiny/feature/admin").FeatureDefinition<{}, []>;
@@ -0,0 +1,14 @@
1
+ import { createFeature } from "@webiny/feature/admin";
2
+ import { SettingsCache } from "./abstractions.js";
3
+ import { settingsCache } from "./SettingsCache.js";
4
+ export const SharedSettingsFeature = createFeature({
5
+ name: "AiPowerUps/SharedSettings",
6
+ register(container) {
7
+ container.registerInstance(SettingsCache, settingsCache);
8
+ },
9
+ resolve() {
10
+ return {};
11
+ }
12
+ });
13
+
14
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","SettingsCache","settingsCache","SharedSettingsFeature","name","register","container","registerInstance","resolve"],"sources":["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() {\n return {};\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,uBAAuB;AACrD,SAASC,aAAa;AACtB,SAASC,aAAa;AAEtB,OAAO,MAAMC,qBAAqB,GAAGH,aAAa,CAAC;EAC/CI,IAAI,EAAE,2BAA2B;EACjCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACC,gBAAgB,CAACN,aAAa,EAAEC,aAAa,CAAC;EAC5D,CAAC;EACDM,OAAOA,CAAA,EAAG;IACN,OAAO,CAAC,CAAC;EACb;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export { SettingsCache } from "./abstractions.js";
2
+ export { SharedSettingsFeature } from "./feature.js";
@@ -0,0 +1,4 @@
1
+ export { SettingsCache } from "./abstractions.js";
2
+ export { SharedSettingsFeature } from "./feature.js";
3
+
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["SettingsCache","SharedSettingsFeature"],"sources":["index.ts"],"sourcesContent":["export { SettingsCache } from \"./abstractions.js\";\nexport { SharedSettingsFeature } from \"./feature.js\";\n"],"mappings":"AAAA,SAASA,aAAa;AACtB,SAASC,qBAAqB","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ import { UpdateSettingsGateway as GatewayAbstraction } from "./abstractions.js";
2
+ import { MainGraphQLClient } from "@webiny/app/features/mainGraphQLClient";
3
+ import type { ISettings } 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: ISettings): Promise<ISettings>;
8
+ }
9
+ export declare const UpdateSettingsGateway: typeof UpdateSettingsGatewayImpl & {
10
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateSettingsGateway>;
11
+ };
12
+ export {};
@@ -0,0 +1,29 @@
1
+ import { UpdateSettingsGateway as GatewayAbstraction } from "./abstractions.js";
2
+ import { MainGraphQLClient } from "@webiny/app/features/mainGraphQLClient";
3
+ const UPDATE_SETTINGS = /* GraphQL */`
4
+ mutation UpdateAiPowerUpsSettings($input: JSON!) {
5
+ aiPowerUps {
6
+ updateSettings(input: $input)
7
+ }
8
+ }
9
+ `;
10
+ class UpdateSettingsGatewayImpl {
11
+ constructor(client) {
12
+ this.client = client;
13
+ }
14
+ async execute(data) {
15
+ const response = await this.client.execute({
16
+ query: UPDATE_SETTINGS,
17
+ variables: {
18
+ input: data
19
+ }
20
+ });
21
+ return response.aiPowerUps.updateSettings ?? {};
22
+ }
23
+ }
24
+ export const UpdateSettingsGateway = GatewayAbstraction.createImplementation({
25
+ implementation: UpdateSettingsGatewayImpl,
26
+ dependencies: [MainGraphQLClient]
27
+ });
28
+
29
+ //# sourceMappingURL=UpdateSettingsGateway.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["UpdateSettingsGateway","GatewayAbstraction","MainGraphQLClient","UPDATE_SETTINGS","UpdateSettingsGatewayImpl","constructor","client","execute","data","response","query","variables","input","aiPowerUps","updateSettings","createImplementation","implementation","dependencies"],"sources":["UpdateSettingsGateway.ts"],"sourcesContent":["import { UpdateSettingsGateway as GatewayAbstraction } from \"./abstractions.js\";\nimport { MainGraphQLClient } from \"@webiny/app/features/mainGraphQLClient\";\nimport type { ISettings } from \"~/admin/features/settings/shared/abstractions.js\";\n\nconst UPDATE_SETTINGS = /* GraphQL */ `\n mutation UpdateAiPowerUpsSettings($input: JSON!) {\n aiPowerUps {\n updateSettings(input: $input)\n }\n }\n`;\n\ntype UpdateSettingsResponse = {\n aiPowerUps: {\n updateSettings: ISettings;\n };\n};\n\nclass UpdateSettingsGatewayImpl implements GatewayAbstraction.Interface {\n constructor(private client: MainGraphQLClient.Interface) {}\n\n async execute(data: ISettings): Promise<ISettings> {\n const response = await this.client.execute<UpdateSettingsResponse>({\n query: UPDATE_SETTINGS,\n variables: { input: data }\n });\n\n return response.aiPowerUps.updateSettings ?? {};\n }\n}\n\nexport const UpdateSettingsGateway = GatewayAbstraction.createImplementation({\n implementation: UpdateSettingsGatewayImpl,\n dependencies: [MainGraphQLClient]\n});\n"],"mappings":"AAAA,SAASA,qBAAqB,IAAIC,kBAAkB;AACpD,SAASC,iBAAiB,QAAQ,wCAAwC;AAG1E,MAAMC,eAAe,GAAG,aAAc;AACtC;AACA;AACA;AACA;AACA;AACA,CAAC;AAQD,MAAMC,yBAAyB,CAAyC;EACpEC,WAAWA,CAASC,MAAmC,EAAE;IAAA,KAArCA,MAAmC,GAAnCA,MAAmC;EAAG;EAE1D,MAAMC,OAAOA,CAACC,IAAe,EAAsB;IAC/C,MAAMC,QAAQ,GAAG,MAAM,IAAI,CAACH,MAAM,CAACC,OAAO,CAAyB;MAC/DG,KAAK,EAAEP,eAAe;MACtBQ,SAAS,EAAE;QAAEC,KAAK,EAAEJ;MAAK;IAC7B,CAAC,CAAC;IAEF,OAAOC,QAAQ,CAACI,UAAU,CAACC,cAAc,IAAI,CAAC,CAAC;EACnD;AACJ;AAEA,OAAO,MAAMd,qBAAqB,GAAGC,kBAAkB,CAACc,oBAAoB,CAAC;EACzEC,cAAc,EAAEZ,yBAAyB;EACzCa,YAAY,EAAE,CAACf,iBAAiB;AACpC,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ import { UpdateSettingsRepository as RepositoryAbstraction, UpdateSettingsGateway } from "./abstractions.js";
2
+ import { SettingsCache } from "../shared/abstractions.js";
3
+ import type { ISettings } 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: ISettings): Promise<ISettings>;
9
+ }
10
+ export declare const UpdateSettingsRepository: typeof UpdateSettingsRepositoryImpl & {
11
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateSettingsRepository>;
12
+ };
13
+ export {};
@@ -0,0 +1,19 @@
1
+ import { UpdateSettingsRepository as RepositoryAbstraction, UpdateSettingsGateway } 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
+ export const UpdateSettingsRepository = RepositoryAbstraction.createImplementation({
15
+ implementation: UpdateSettingsRepositoryImpl,
16
+ dependencies: [SettingsCache, UpdateSettingsGateway]
17
+ });
18
+
19
+ //# sourceMappingURL=UpdateSettingsRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["UpdateSettingsRepository","RepositoryAbstraction","UpdateSettingsGateway","SettingsCache","UpdateSettingsRepositoryImpl","constructor","cache","gateway","execute","data","result","set","createImplementation","implementation","dependencies"],"sources":["UpdateSettingsRepository.ts"],"sourcesContent":["import {\n UpdateSettingsRepository as RepositoryAbstraction,\n UpdateSettingsGateway\n} from \"./abstractions.js\";\nimport { SettingsCache } from \"../shared/abstractions.js\";\nimport type { ISettings } 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: ISettings): Promise<ISettings> {\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"],"mappings":"AAAA,SACIA,wBAAwB,IAAIC,qBAAqB,EACjDC,qBAAqB;AAEzB,SAASC,aAAa;AAGtB,MAAMC,4BAA4B,CAA4C;EAC1EC,WAAWA,CACCC,KAA8B,EAC9BC,OAAwC,EAClD;IAAA,KAFUD,KAA8B,GAA9BA,KAA8B;IAAA,KAC9BC,OAAwC,GAAxCA,OAAwC;EACjD;EAEH,MAAMC,OAAOA,CAACC,IAAe,EAAsB;IAC/C,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACH,OAAO,CAACC,OAAO,CAACC,IAAI,CAAC;IAC/C,IAAI,CAACH,KAAK,CAACK,GAAG,CAACD,MAAM,CAAC;IACtB,OAAOA,MAAM;EACjB;AACJ;AAEA,OAAO,MAAMV,wBAAwB,GAAGC,qBAAqB,CAACW,oBAAoB,CAAC;EAC/EC,cAAc,EAAET,4BAA4B;EAC5CU,YAAY,EAAE,CAACX,aAAa,EAAED,qBAAqB;AACvD,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ import { UpdateSettingsUseCase as UseCaseAbstraction, UpdateSettingsRepository } from "./abstractions.js";
2
+ import type { ISettings } 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: ISettings): Promise<ISettings>;
7
+ }
8
+ export declare const UpdateSettingsUseCase: typeof UpdateSettingsUseCaseImpl & {
9
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateSettingsUseCase>;
10
+ };
11
+ export {};
@@ -0,0 +1,15 @@
1
+ import { UpdateSettingsUseCase as UseCaseAbstraction, UpdateSettingsRepository } 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
+ export const UpdateSettingsUseCase = UseCaseAbstraction.createImplementation({
11
+ implementation: UpdateSettingsUseCaseImpl,
12
+ dependencies: [UpdateSettingsRepository]
13
+ });
14
+
15
+ //# sourceMappingURL=UpdateSettingsUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["UpdateSettingsUseCase","UseCaseAbstraction","UpdateSettingsRepository","UpdateSettingsUseCaseImpl","constructor","repository","execute","data","createImplementation","implementation","dependencies"],"sources":["UpdateSettingsUseCase.ts"],"sourcesContent":["import {\n UpdateSettingsUseCase as UseCaseAbstraction,\n UpdateSettingsRepository\n} from \"./abstractions.js\";\nimport type { ISettings } from \"~/admin/features/settings/shared/abstractions.js\";\n\nclass UpdateSettingsUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private repository: UpdateSettingsRepository.Interface) {}\n\n async execute(data: ISettings): Promise<ISettings> {\n return this.repository.execute(data);\n }\n}\n\nexport const UpdateSettingsUseCase = UseCaseAbstraction.createImplementation({\n implementation: UpdateSettingsUseCaseImpl,\n dependencies: [UpdateSettingsRepository]\n});\n"],"mappings":"AAAA,SACIA,qBAAqB,IAAIC,kBAAkB,EAC3CC,wBAAwB;AAI5B,MAAMC,yBAAyB,CAAyC;EACpEC,WAAWA,CAASC,UAA8C,EAAE;IAAA,KAAhDA,UAA8C,GAA9CA,UAA8C;EAAG;EAErE,MAAMC,OAAOA,CAACC,IAAe,EAAsB;IAC/C,OAAO,IAAI,CAACF,UAAU,CAACC,OAAO,CAACC,IAAI,CAAC;EACxC;AACJ;AAEA,OAAO,MAAMP,qBAAqB,GAAGC,kBAAkB,CAACO,oBAAoB,CAAC;EACzEC,cAAc,EAAEN,yBAAyB;EACzCO,YAAY,EAAE,CAACR,wBAAwB;AAC3C,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,22 @@
1
+ import type { ISettings } from "../../../../admin/features/settings/shared/abstractions.js";
2
+ export interface IUpdateSettingsUseCase {
3
+ execute(data: ISettings): Promise<ISettings>;
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: ISettings): Promise<ISettings>;
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: ISettings): Promise<ISettings>;
18
+ }
19
+ export declare const UpdateSettingsGateway: import("@webiny/di").Abstraction<IUpdateSettingsGateway>;
20
+ export declare namespace UpdateSettingsGateway {
21
+ type Interface = IUpdateSettingsGateway;
22
+ }
@@ -0,0 +1,6 @@
1
+ import { createAbstraction } from "@webiny/feature/admin";
2
+ export const UpdateSettingsUseCase = createAbstraction("AiPowerUps/UpdateSettingsUseCase");
3
+ export const UpdateSettingsRepository = createAbstraction("AiPowerUps/UpdateSettingsRepository");
4
+ export const UpdateSettingsGateway = createAbstraction("AiPowerUps/UpdateSettingsGateway");
5
+
6
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","UpdateSettingsUseCase","UpdateSettingsRepository","UpdateSettingsGateway"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\nimport type { ISettings } from \"~/admin/features/settings/shared/abstractions.js\";\n\nexport interface IUpdateSettingsUseCase {\n execute(data: ISettings): Promise<ISettings>;\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: ISettings): Promise<ISettings>;\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: ISettings): Promise<ISettings>;\n}\n\nexport const UpdateSettingsGateway = createAbstraction<IUpdateSettingsGateway>(\n \"AiPowerUps/UpdateSettingsGateway\"\n);\nexport namespace UpdateSettingsGateway {\n export type Interface = IUpdateSettingsGateway;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,uBAAuB;AAOzD,OAAO,MAAMC,qBAAqB,GAAGD,iBAAiB,CAClD,kCACJ,CAAC;AASD,OAAO,MAAME,wBAAwB,GAAGF,iBAAiB,CACrD,qCACJ,CAAC;AASD,OAAO,MAAMG,qBAAqB,GAAGH,iBAAiB,CAClD,kCACJ,CAAC","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ export declare const UpdateSettingsFeature: import("@webiny/feature/admin").FeatureDefinition<{
2
+ useCase: import("./abstractions.js").IUpdateSettingsUseCase;
3
+ }, []>;
@@ -0,0 +1,20 @@
1
+ import { createFeature } from "@webiny/feature/admin";
2
+ import { UpdateSettingsUseCase as UseCaseAbstraction } from "./abstractions.js";
3
+ import { UpdateSettingsUseCase } from "./UpdateSettingsUseCase.js";
4
+ import { UpdateSettingsRepository } from "./UpdateSettingsRepository.js";
5
+ import { UpdateSettingsGateway } from "./UpdateSettingsGateway.js";
6
+ export const UpdateSettingsFeature = createFeature({
7
+ name: "AiPowerUps/UpdateSettings",
8
+ register(container) {
9
+ container.register(UpdateSettingsUseCase);
10
+ container.register(UpdateSettingsRepository).inSingletonScope();
11
+ container.register(UpdateSettingsGateway).inSingletonScope();
12
+ },
13
+ resolve(container) {
14
+ return {
15
+ useCase: container.resolve(UseCaseAbstraction)
16
+ };
17
+ }
18
+ });
19
+
20
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","UpdateSettingsUseCase","UseCaseAbstraction","UpdateSettingsRepository","UpdateSettingsGateway","UpdateSettingsFeature","name","register","container","inSingletonScope","resolve","useCase"],"sources":["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"],"mappings":"AAAA,SAASA,aAAa,QAAQ,uBAAuB;AACrD,SAASC,qBAAqB,IAAIC,kBAAkB;AACpD,SAASD,qBAAqB;AAC9B,SAASE,wBAAwB;AACjC,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,qBAAqB,GAAGL,aAAa,CAAC;EAC/CM,IAAI,EAAE,2BAA2B;EACjCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACN,qBAAqB,CAAC;IACzCO,SAAS,CAACD,QAAQ,CAACJ,wBAAwB,CAAC,CAACM,gBAAgB,CAAC,CAAC;IAC/DD,SAAS,CAACD,QAAQ,CAACH,qBAAqB,CAAC,CAACK,gBAAgB,CAAC,CAAC;EAChE,CAAC;EACDC,OAAOA,CAACF,SAAS,EAAE;IACf,OAAO;MACHG,OAAO,EAAEH,SAAS,CAACE,OAAO,CAACR,kBAAkB;IACjD,CAAC;EACL;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export { UpdateSettingsUseCase, UpdateSettingsRepository, UpdateSettingsGateway } from "./abstractions.js";
2
+ export { UpdateSettingsFeature } from "./feature.js";
@@ -0,0 +1,4 @@
1
+ export { UpdateSettingsUseCase, UpdateSettingsRepository, UpdateSettingsGateway } from "./abstractions.js";
2
+ export { UpdateSettingsFeature } from "./feature.js";
3
+
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["UpdateSettingsUseCase","UpdateSettingsRepository","UpdateSettingsGateway","UpdateSettingsFeature"],"sources":["index.ts"],"sourcesContent":["export {\n UpdateSettingsUseCase,\n UpdateSettingsRepository,\n UpdateSettingsGateway\n} from \"./abstractions.js\";\nexport { UpdateSettingsFeature } from \"./feature.js\";\n"],"mappings":"AAAA,SACIA,qBAAqB,EACrBC,wBAAwB,EACxBC,qBAAqB;AAEzB,SAASC,qBAAqB","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const AiPowerUpsSettingsConfig: () => React.JSX.Element;
@@ -0,0 +1,11 @@
1
+ import React from "react";
2
+ import { AdminConfig } from "@webiny/app-admin";
3
+ import { AiPowerUpsSettingsDialog, AI_POWER_UPS_SETTINGS_DIALOG } from "./AiPowerUpsSettingsDialog.js";
4
+ export const AiPowerUpsSettingsConfig = () => {
5
+ return /*#__PURE__*/React.createElement(AdminConfig, null, /*#__PURE__*/React.createElement(AdminConfig.Dialog, {
6
+ name: AI_POWER_UPS_SETTINGS_DIALOG,
7
+ element: /*#__PURE__*/React.createElement(AiPowerUpsSettingsDialog, null)
8
+ }));
9
+ };
10
+
11
+ //# sourceMappingURL=AiPowerUpsSettingsConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","AdminConfig","AiPowerUpsSettingsDialog","AI_POWER_UPS_SETTINGS_DIALOG","AiPowerUpsSettingsConfig","createElement","Dialog","name","element"],"sources":["AiPowerUpsSettingsConfig.tsx"],"sourcesContent":["import React from \"react\";\nimport { AdminConfig } from \"@webiny/app-admin\";\nimport {\n AiPowerUpsSettingsDialog,\n AI_POWER_UPS_SETTINGS_DIALOG\n} from \"./AiPowerUpsSettingsDialog.js\";\n\nexport const AiPowerUpsSettingsConfig = () => {\n return (\n <AdminConfig>\n <AdminConfig.Dialog\n name={AI_POWER_UPS_SETTINGS_DIALOG}\n element={<AiPowerUpsSettingsDialog />}\n />\n </AdminConfig>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,WAAW,QAAQ,mBAAmB;AAC/C,SACIC,wBAAwB,EACxBC,4BAA4B;AAGhC,OAAO,MAAMC,wBAAwB,GAAGA,CAAA,KAAM;EAC1C,oBACIJ,KAAA,CAAAK,aAAA,CAACJ,WAAW,qBACRD,KAAA,CAAAK,aAAA,CAACJ,WAAW,CAACK,MAAM;IACfC,IAAI,EAAEJ,4BAA6B;IACnCK,OAAO,eAAER,KAAA,CAAAK,aAAA,CAACH,wBAAwB,MAAE;EAAE,CACzC,CACQ,CAAC;AAEtB,CAAC","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ export declare const AI_POWER_UPS_SETTINGS_DIALOG = "ai-power-ups-settings";
3
+ export declare const AiPowerUpsSettingsDialog: (() => React.JSX.Element) & {
4
+ displayName: string;
5
+ };
@@ -0,0 +1,58 @@
1
+ import React, { useEffect } from "react";
2
+ import { observer } from "mobx-react-lite";
3
+ import { useDialog, FormView } from "@webiny/app-admin";
4
+ import { Dialog, OverlayLoader, useToast } from "@webiny/admin-ui";
5
+ import { useFeature } from "@webiny/app";
6
+ import { AiPowerUpsSettingsFeature } from "./feature.js";
7
+ export const AI_POWER_UPS_SETTINGS_DIALOG = "ai-power-ups-settings";
8
+ export const AiPowerUpsSettingsDialog = observer(() => {
9
+ const {
10
+ closeDialog
11
+ } = useDialog();
12
+ const toast = useToast();
13
+ const {
14
+ presenter
15
+ } = useFeature(AiPowerUpsSettingsFeature);
16
+ const vm = presenter.vm;
17
+ useEffect(() => {
18
+ presenter.init();
19
+ }, []);
20
+ const handleSave = async () => {
21
+ const success = await presenter.save();
22
+ if (success) {
23
+ toast.showSuccessToast({
24
+ title: "AI power-ups settings saved successfully!"
25
+ });
26
+ closeDialog();
27
+ }
28
+ };
29
+ return /*#__PURE__*/React.createElement(Dialog, {
30
+ open: true,
31
+ onClose: closeDialog,
32
+ title: "AI Power-Ups",
33
+ size: "xl",
34
+ className: "w-[1000px]",
35
+ actions: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Dialog.CancelAction, {
36
+ onClick: closeDialog,
37
+ text: "Cancel"
38
+ }), /*#__PURE__*/React.createElement(Dialog.ConfirmAction, {
39
+ onClick: handleSave,
40
+ text: "Save"
41
+ }))
42
+ }, vm.loading || vm.saving ? /*#__PURE__*/React.createElement(OverlayLoader, {
43
+ text: vm.saving ? "Saving..." : "Loading..."
44
+ }) : null, vm.error ? /*#__PURE__*/React.createElement("div", {
45
+ className: "text-destructive-default text-sm mb-4"
46
+ }, vm.error) : null, vm.form && vm.form.errors.length > 0 ? /*#__PURE__*/React.createElement("div", {
47
+ className: "flex flex-col gap-1 mb-4"
48
+ }, vm.form.errors.map((err, i) => /*#__PURE__*/React.createElement("div", {
49
+ key: i,
50
+ className: "text-destructive-default text-sm"
51
+ }, err.label ? `${err.label}: ${err.message}` : err.message))) : null, /*#__PURE__*/React.createElement("div", {
52
+ className: "flex flex-col gap-4"
53
+ }, vm.form ? /*#__PURE__*/React.createElement(FormView, {
54
+ form: vm.form
55
+ }) : null));
56
+ });
57
+
58
+ //# sourceMappingURL=AiPowerUpsSettingsDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useEffect","observer","useDialog","FormView","Dialog","OverlayLoader","useToast","useFeature","AiPowerUpsSettingsFeature","AI_POWER_UPS_SETTINGS_DIALOG","AiPowerUpsSettingsDialog","closeDialog","toast","presenter","vm","init","handleSave","success","save","showSuccessToast","title","createElement","open","onClose","size","className","actions","Fragment","CancelAction","onClick","text","ConfirmAction","loading","saving","error","form","errors","length","map","err","i","key","label","message"],"sources":["AiPowerUpsSettingsDialog.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { useDialog, FormView } from \"@webiny/app-admin\";\nimport { Dialog, OverlayLoader, useToast } from \"@webiny/admin-ui\";\nimport { useFeature } from \"@webiny/app\";\nimport { AiPowerUpsSettingsFeature } from \"./feature.js\";\n\nexport const AI_POWER_UPS_SETTINGS_DIALOG = \"ai-power-ups-settings\";\n\nexport const AiPowerUpsSettingsDialog = observer(() => {\n const { closeDialog } = useDialog();\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 closeDialog();\n }\n };\n\n return (\n <Dialog\n open={true}\n onClose={closeDialog}\n title=\"AI Power-Ups\"\n size={\"xl\"}\n className={\"w-[1000px]\"}\n actions={\n <>\n <Dialog.CancelAction onClick={closeDialog} text=\"Cancel\" />\n <Dialog.ConfirmAction onClick={handleSave} text=\"Save\" />\n </>\n }\n >\n {vm.loading || vm.saving ? (\n <OverlayLoader text={vm.saving ? \"Saving...\" : \"Loading...\"} />\n ) : null}\n {vm.error ? (\n <div className=\"text-destructive-default text-sm mb-4\">{vm.error}</div>\n ) : null}\n {vm.form && vm.form.errors.length > 0 ? (\n <div className=\"flex flex-col gap-1 mb-4\">\n {vm.form.errors.map((err, i) => (\n <div key={i} className=\"text-destructive-default text-sm\">\n {err.label ? `${err.label}: ${err.message}` : err.message}\n </div>\n ))}\n </div>\n ) : null}\n <div className=\"flex flex-col gap-4\">\n {vm.form ? <FormView form={vm.form} /> : null}\n </div>\n </Dialog>\n );\n});\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,SAASC,QAAQ,QAAQ,iBAAiB;AAC1C,SAASC,SAAS,EAAEC,QAAQ,QAAQ,mBAAmB;AACvD,SAASC,MAAM,EAAEC,aAAa,EAAEC,QAAQ,QAAQ,kBAAkB;AAClE,SAASC,UAAU,QAAQ,aAAa;AACxC,SAASC,yBAAyB;AAElC,OAAO,MAAMC,4BAA4B,GAAG,uBAAuB;AAEnE,OAAO,MAAMC,wBAAwB,GAAGT,QAAQ,CAAC,MAAM;EACnD,MAAM;IAAEU;EAAY,CAAC,GAAGT,SAAS,CAAC,CAAC;EACnC,MAAMU,KAAK,GAAGN,QAAQ,CAAC,CAAC;EACxB,MAAM;IAAEO;EAAU,CAAC,GAAGN,UAAU,CAACC,yBAAyB,CAAC;EAC3D,MAAMM,EAAE,GAAGD,SAAS,CAACC,EAAE;EAEvBd,SAAS,CAAC,MAAM;IACZa,SAAS,CAACE,IAAI,CAAC,CAAC;EACpB,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,UAAU,GAAG,MAAAA,CAAA,KAAY;IAC3B,MAAMC,OAAO,GAAG,MAAMJ,SAAS,CAACK,IAAI,CAAC,CAAC;IACtC,IAAID,OAAO,EAAE;MACTL,KAAK,CAACO,gBAAgB,CAAC;QACnBC,KAAK,EAAE;MACX,CAAC,CAAC;MACFT,WAAW,CAAC,CAAC;IACjB;EACJ,CAAC;EAED,oBACIZ,KAAA,CAAAsB,aAAA,CAACjB,MAAM;IACHkB,IAAI,EAAE,IAAK;IACXC,OAAO,EAAEZ,WAAY;IACrBS,KAAK,EAAC,cAAc;IACpBI,IAAI,EAAE,IAAK;IACXC,SAAS,EAAE,YAAa;IACxBC,OAAO,eACH3B,KAAA,CAAAsB,aAAA,CAAAtB,KAAA,CAAA4B,QAAA,qBACI5B,KAAA,CAAAsB,aAAA,CAACjB,MAAM,CAACwB,YAAY;MAACC,OAAO,EAAElB,WAAY;MAACmB,IAAI,EAAC;IAAQ,CAAE,CAAC,eAC3D/B,KAAA,CAAAsB,aAAA,CAACjB,MAAM,CAAC2B,aAAa;MAACF,OAAO,EAAEb,UAAW;MAACc,IAAI,EAAC;IAAM,CAAE,CAC1D;EACL,GAEAhB,EAAE,CAACkB,OAAO,IAAIlB,EAAE,CAACmB,MAAM,gBACpBlC,KAAA,CAAAsB,aAAA,CAAChB,aAAa;IAACyB,IAAI,EAAEhB,EAAE,CAACmB,MAAM,GAAG,WAAW,GAAG;EAAa,CAAE,CAAC,GAC/D,IAAI,EACPnB,EAAE,CAACoB,KAAK,gBACLnC,KAAA,CAAAsB,aAAA;IAAKI,SAAS,EAAC;EAAuC,GAAEX,EAAE,CAACoB,KAAW,CAAC,GACvE,IAAI,EACPpB,EAAE,CAACqB,IAAI,IAAIrB,EAAE,CAACqB,IAAI,CAACC,MAAM,CAACC,MAAM,GAAG,CAAC,gBACjCtC,KAAA,CAAAsB,aAAA;IAAKI,SAAS,EAAC;EAA0B,GACpCX,EAAE,CAACqB,IAAI,CAACC,MAAM,CAACE,GAAG,CAAC,CAACC,GAAG,EAAEC,CAAC,kBACvBzC,KAAA,CAAAsB,aAAA;IAAKoB,GAAG,EAAED,CAAE;IAACf,SAAS,EAAC;EAAkC,GACpDc,GAAG,CAACG,KAAK,GAAG,GAAGH,GAAG,CAACG,KAAK,KAAKH,GAAG,CAACI,OAAO,EAAE,GAAGJ,GAAG,CAACI,OACjD,CACR,CACA,CAAC,GACN,IAAI,eACR5C,KAAA,CAAAsB,aAAA;IAAKI,SAAS,EAAC;EAAqB,GAC/BX,EAAE,CAACqB,IAAI,gBAAGpC,KAAA,CAAAsB,aAAA,CAAClB,QAAQ;IAACgC,IAAI,EAAErB,EAAE,CAACqB;EAAK,CAAE,CAAC,GAAG,IACxC,CACD,CAAC;AAEjB,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,25 @@
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 error;
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
+ private collectGroups;
20
+ private buildForm;
21
+ }
22
+ export declare const AiPowerUpsSettingsPresenter: typeof AiPowerUpsSettingsPresenterImpl & {
23
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IAiPowerUpsSettingsPresenter>;
24
+ };
25
+ export {};