diff --git a/modules/lib/src/main/resources/assets/js/app/ai/AI.ts b/modules/lib/src/main/resources/assets/js/app/ai/AI.ts index 7094d6d46d..72f8118b46 100644 --- a/modules/lib/src/main/resources/assets/js/app/ai/AI.ts +++ b/modules/lib/src/main/resources/assets/js/app/ai/AI.ts @@ -12,14 +12,14 @@ import {EnonicAiAppliedData} from './event/data/EnonicAiAppliedData'; import {ContentData} from './event/data/EnonicAiContentData'; import {EnonicAiContentOperatorSetupData} from './event/data/EnonicAiContentOperatorSetupData'; import {EnonicAiTranslatorSetupData} from './event/data/EnonicAiTranslatorSetupData'; -import {EnonicAiContentOperatorApplyEvent} from './event/incoming/EnonicAiContentOperatorApplyEvent'; -import {EnonicAiContentOperatorRenderEvent} from './event/incoming/EnonicAiContentOperatorRenderEvent'; -import {EnonicAiContentOperatorShowEvent} from './event/incoming/EnonicAiContentOperatorShowEvent'; -import {EnonicAiTranslatorCompletedEvent} from './event/incoming/EnonicAiTranslatorCompletedEvent'; -import {EnonicAiTranslatorStartedEvent} from './event/incoming/EnonicAiTranslatorStartedEvent'; -import {EnonicAiContentOperatorConfigEvent} from './event/outgoing/EnonicAiContentOperatorConfigEvent'; -import {EnonicAiDataSentEvent} from './event/outgoing/EnonicAiDataSentEvent'; -import {EnonicAiTranslatorConfigEvent} from './event/outgoing/EnonicAiTranslatorConfigEvent'; +import {AiContentOperatorDialogShownEvent} from './event/incoming/AiContentOperatorDialogShownEvent'; +import {AiContentOperatorRenderedEvent} from './event/incoming/AiContentOperatorRenderedEvent'; +import {AiContentOperatorResultAppliedEvent} from './event/incoming/AiContentOperatorResultAppliedEvent'; +import {AiTranslatorCompletedEvent} from './event/incoming/AiTranslatorCompletedEvent'; +import {AiTranslatorStartedEvent} from './event/incoming/AiTranslatorStartedEvent'; +import {AiContentOperatorConfigureEvent} from './event/outgoing/AiContentOperatorConfigureEvent'; +import {AiTranslatorConfigureEvent} from './event/outgoing/AiTranslatorConfigureEvent'; +import {AiUpdateDataEvent} from './event/outgoing/AiUpdateDataEvent'; declare global { interface Window { @@ -36,6 +36,7 @@ interface EnonicAi { }; translator?: { setup(setupData: EnonicAiTranslatorSetupData): void; + render(container: HTMLElement): void; translate(language?: string): Promise; isAvailable(): boolean; } @@ -70,11 +71,11 @@ export class AI { return; } - EnonicAiContentOperatorRenderEvent.on(this.showContentOperatorEventListener); - EnonicAiContentOperatorShowEvent.on(this.showContentOperatorEventListener); - EnonicAiContentOperatorApplyEvent.on(this.applyContentOperatorEventListener); - EnonicAiTranslatorStartedEvent.on(this.translatorStartedEventListener); - EnonicAiTranslatorCompletedEvent.on(this.translatorCompletedEventListener); + AiContentOperatorRenderedEvent.on(this.showContentOperatorEventListener); + AiContentOperatorDialogShownEvent.on(this.showContentOperatorEventListener); + AiContentOperatorResultAppliedEvent.on(this.applyContentOperatorEventListener); + AiTranslatorStartedEvent.on(this.translatorStartedEventListener); + AiTranslatorCompletedEvent.on(this.translatorCompletedEventListener); this.getContentOperator()?.setup({serviceUrl: CONFIG.getString('services.aiContentOperatorServiceUrl')}); this.getTranslator()?.setup({serviceUrl: CONFIG.getString('services.aiTranslatorServiceUrl')}); @@ -85,7 +86,7 @@ export class AI { const names = fullName.split(' ').map(word => word.substring(0, 1)); const shortName = (names.length >= 2 ? names.join('') : fullName).substring(0, 2).toUpperCase(); - new EnonicAiContentOperatorConfigEvent({ + new AiContentOperatorConfigureEvent({ user: { fullName, shortName, @@ -110,7 +111,7 @@ export class AI { setCurrentData(data: ContentData): void { this.currentData = data; - new EnonicAiDataSentEvent({data}).fire(); + new AiUpdateDataEvent({data}).fire(); } updateInstructions(configs: ApplicationConfig[]): void { @@ -138,10 +139,10 @@ export class AI { private notifyInstructionsChanged(plugin: EnonicAiPlugin, instructions: string): void { switch (plugin) { case 'contentOperator': - new EnonicAiContentOperatorConfigEvent({instructions}).fire(); + new AiContentOperatorConfigureEvent({instructions}).fire(); break; case 'translator': - new EnonicAiTranslatorConfigEvent({instructions}).fire(); + new AiTranslatorConfigureEvent({instructions}).fire(); break; } } @@ -170,18 +171,18 @@ export class AI { return this.getTranslator()?.isAvailable() ?? false; } - private translatorStartedEventListener = (event: EnonicAiTranslatorStartedEvent) => { + private translatorStartedEventListener = (event: AiTranslatorStartedEvent) => { AiHelper.getAiHelperByPath(event.path)?.setState(AiHelperState.PROCESSING); }; - private translatorCompletedEventListener = (event: EnonicAiTranslatorCompletedEvent) => { + private translatorCompletedEventListener = (event: AiTranslatorCompletedEvent) => { const helper = AiHelper.getAiHelperByPath(event.path); helper?.setValue(event.value); helper?.setState(AiHelperState.COMPLETED); }; private showContentOperatorEventListener = () => { - new EnonicAiDataSentEvent({ + new AiUpdateDataEvent({ data: { fields: this.content.getContentData().toJson(), topic: this.content.getDisplayName(), @@ -194,11 +195,11 @@ export class AI { }).fire(); if (this.currentData) { - new EnonicAiDataSentEvent({data: this.currentData}).fire(); + new AiUpdateDataEvent({data: this.currentData}).fire(); } }; - private applyContentOperatorEventListener = (event: EnonicAiContentOperatorApplyEvent) => { + private applyContentOperatorEventListener = (event: AiContentOperatorResultAppliedEvent) => { const {topic} = event.result; const hasDisplayNameChanged = !StringHelper.isEmpty(topic) && topic !== this.content.getDisplayName(); const displayName = hasDisplayNameChanged ? topic : undefined; diff --git a/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiContentOperatorHideEvent.ts b/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiContentOperatorDialogShownEvent.ts similarity index 64% rename from modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiContentOperatorHideEvent.ts rename to modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiContentOperatorDialogShownEvent.ts index 92525ba068..8e3956acac 100644 --- a/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiContentOperatorHideEvent.ts +++ b/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiContentOperatorDialogShownEvent.ts @@ -1,18 +1,18 @@ import {ClassHelper} from '@enonic/lib-admin-ui/ClassHelper'; import {Event} from '@enonic/lib-admin-ui/event/Event'; -export class EnonicAiContentOperatorHideEvent +export class AiContentOperatorDialogShownEvent extends Event { private constructor() { super(); } - static on(handler: (event: EnonicAiContentOperatorHideEvent) => void) { + static on(handler: (event: AiContentOperatorDialogShownEvent) => void) { Event.bind(ClassHelper.getFullName(this), handler); } - static un(handler?: (event: EnonicAiContentOperatorHideEvent) => void) { + static un(handler?: (event: AiContentOperatorDialogShownEvent) => void) { Event.unbind(ClassHelper.getFullName(this), handler); } diff --git a/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiContentOperatorShowEvent.ts b/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiContentOperatorRenderedEvent.ts similarity index 62% rename from modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiContentOperatorShowEvent.ts rename to modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiContentOperatorRenderedEvent.ts index d329d9e1ee..c855e05b69 100644 --- a/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiContentOperatorShowEvent.ts +++ b/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiContentOperatorRenderedEvent.ts @@ -1,18 +1,18 @@ import {ClassHelper} from '@enonic/lib-admin-ui/ClassHelper'; import {Event} from '@enonic/lib-admin-ui/event/Event'; -export class EnonicAiContentOperatorShowEvent +export class AiContentOperatorRenderedEvent extends Event { private constructor() { super(); } - static on(handler: (event: EnonicAiContentOperatorShowEvent) => void) { + static on(handler: (event: AiContentOperatorRenderedEvent) => void) { Event.bind(ClassHelper.getFullName(this), handler); } - static un(handler?: (event: EnonicAiContentOperatorShowEvent) => void) { + static un(handler?: (event: AiContentOperatorRenderedEvent) => void) { Event.unbind(ClassHelper.getFullName(this), handler); } diff --git a/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiContentOperatorApplyEvent.ts b/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiContentOperatorResultAppliedEvent.ts similarity index 69% rename from modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiContentOperatorApplyEvent.ts rename to modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiContentOperatorResultAppliedEvent.ts index 1a379f1b3c..ae52b6a1d0 100644 --- a/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiContentOperatorApplyEvent.ts +++ b/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiContentOperatorResultAppliedEvent.ts @@ -2,7 +2,7 @@ import {ClassHelper} from '@enonic/lib-admin-ui/ClassHelper'; import {Event} from '@enonic/lib-admin-ui/event/Event'; import {EnonicAiAppliedRawData} from '../data/EnonicAiAppliedData'; -export class EnonicAiContentOperatorApplyEvent +export class AiContentOperatorResultAppliedEvent extends Event { result: EnonicAiAppliedRawData; @@ -11,11 +11,11 @@ export class EnonicAiContentOperatorApplyEvent super(); } - static on(handler: (event: EnonicAiContentOperatorApplyEvent) => void) { + static on(handler: (event: AiContentOperatorResultAppliedEvent) => void) { Event.bind(ClassHelper.getFullName(this), handler); } - static un(handler?: (event: EnonicAiContentOperatorApplyEvent) => void) { + static un(handler?: (event: AiContentOperatorResultAppliedEvent) => void) { Event.unbind(ClassHelper.getFullName(this), handler); } diff --git a/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiTranslatorCompletedEvent.ts b/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiTranslatorCompletedEvent.ts similarity index 66% rename from modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiTranslatorCompletedEvent.ts rename to modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiTranslatorCompletedEvent.ts index 20bb5d3b21..c42c9b88b8 100644 --- a/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiTranslatorCompletedEvent.ts +++ b/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiTranslatorCompletedEvent.ts @@ -1,7 +1,7 @@ import {ClassHelper} from '@enonic/lib-admin-ui/ClassHelper'; import {Event} from '@enonic/lib-admin-ui/event/Event'; -export class EnonicAiTranslatorCompletedEvent +export class AiTranslatorCompletedEvent extends Event { readonly path: string; @@ -12,11 +12,11 @@ export class EnonicAiTranslatorCompletedEvent super(); } - static on(handler: (event: EnonicAiTranslatorCompletedEvent) => void) { + static on(handler: (event: AiTranslatorCompletedEvent) => void) { Event.bind(ClassHelper.getFullName(this), handler); } - static un(handler?: (event: EnonicAiTranslatorCompletedEvent) => void) { + static un(handler?: (event: AiTranslatorCompletedEvent) => void) { Event.unbind(ClassHelper.getFullName(this), handler); } diff --git a/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiContentOperatorRenderEvent.ts b/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiTranslatorDialogShownEvent.ts similarity index 61% rename from modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiContentOperatorRenderEvent.ts rename to modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiTranslatorDialogShownEvent.ts index d7aa9e8338..208ec0eab4 100644 --- a/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiContentOperatorRenderEvent.ts +++ b/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiTranslatorDialogShownEvent.ts @@ -1,18 +1,18 @@ import {ClassHelper} from '@enonic/lib-admin-ui/ClassHelper'; import {Event} from '@enonic/lib-admin-ui/event/Event'; -export class EnonicAiContentOperatorRenderEvent +export class AiTranslatorDialogShownEvent extends Event { private constructor() { super(); } - static on(handler: (event: EnonicAiContentOperatorRenderEvent) => void) { + static on(handler: (event: AiTranslatorDialogShownEvent) => void) { Event.bind(ClassHelper.getFullName(this), handler); } - static un(handler?: (event: EnonicAiContentOperatorRenderEvent) => void) { + static un(handler?: (event: AiTranslatorDialogShownEvent) => void) { Event.unbind(ClassHelper.getFullName(this), handler); } diff --git a/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiTranslatorStartedEvent.ts b/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiTranslatorStartedEvent.ts similarity index 64% rename from modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiTranslatorStartedEvent.ts rename to modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiTranslatorStartedEvent.ts index 5758ad1ed8..f0c9680ec1 100644 --- a/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/EnonicAiTranslatorStartedEvent.ts +++ b/modules/lib/src/main/resources/assets/js/app/ai/event/incoming/AiTranslatorStartedEvent.ts @@ -1,7 +1,7 @@ import {ClassHelper} from '@enonic/lib-admin-ui/ClassHelper'; import {Event} from '@enonic/lib-admin-ui/event/Event'; -export class EnonicAiTranslatorStartedEvent +export class AiTranslatorStartedEvent extends Event { readonly path: string; @@ -10,11 +10,11 @@ export class EnonicAiTranslatorStartedEvent super(); } - static on(handler: (event: EnonicAiTranslatorStartedEvent) => void) { + static on(handler: (event: AiTranslatorStartedEvent) => void) { Event.bind(ClassHelper.getFullName(this), handler); } - static un(handler?: (event: EnonicAiTranslatorStartedEvent) => void) { + static un(handler?: (event: AiTranslatorStartedEvent) => void) { Event.unbind(ClassHelper.getFullName(this), handler); } diff --git a/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/EnonicAiContentOperatorConfigEvent.ts b/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/AiContentOperatorConfigureEvent.ts similarity index 73% rename from modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/EnonicAiContentOperatorConfigEvent.ts rename to modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/AiContentOperatorConfigureEvent.ts index 3c0c3762cb..34f7adda52 100644 --- a/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/EnonicAiContentOperatorConfigEvent.ts +++ b/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/AiContentOperatorConfigureEvent.ts @@ -2,7 +2,7 @@ import {ClassHelper} from '@enonic/lib-admin-ui/ClassHelper'; import {Event} from '@enonic/lib-admin-ui/event/Event'; import {EnonicAiConfigData} from '../data/EnonicAiConfigData'; -export class EnonicAiContentOperatorConfigEvent +export class AiContentOperatorConfigureEvent extends Event { private readonly payload: EnonicAiConfigData; @@ -17,11 +17,11 @@ export class EnonicAiContentOperatorConfigEvent return this.payload; } - static on(handler: (event: EnonicAiContentOperatorConfigEvent) => void) { + static on(handler: (event: AiContentOperatorConfigureEvent) => void) { Event.bind(ClassHelper.getFullName(this), handler); } - static un(handler?: (event: EnonicAiContentOperatorConfigEvent) => void) { + static un(handler?: (event: AiContentOperatorConfigureEvent) => void) { Event.unbind(ClassHelper.getFullName(this), handler); } diff --git a/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/EnonicAiTranslatorConfigEvent.ts b/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/AiTranslatorConfigureEvent.ts similarity index 74% rename from modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/EnonicAiTranslatorConfigEvent.ts rename to modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/AiTranslatorConfigureEvent.ts index 03b0a8037e..be001e5ce7 100644 --- a/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/EnonicAiTranslatorConfigEvent.ts +++ b/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/AiTranslatorConfigureEvent.ts @@ -2,7 +2,7 @@ import {ClassHelper} from '@enonic/lib-admin-ui/ClassHelper'; import {Event} from '@enonic/lib-admin-ui/event/Event'; import {EnonicAiConfigData} from '../data/EnonicAiConfigData'; -export class EnonicAiTranslatorConfigEvent +export class AiTranslatorConfigureEvent extends Event { private readonly payload: EnonicAiConfigData; @@ -17,11 +17,11 @@ export class EnonicAiTranslatorConfigEvent return this.payload; } - static on(handler: (event: EnonicAiTranslatorConfigEvent) => void) { + static on(handler: (event: AiTranslatorConfigureEvent) => void) { Event.bind(ClassHelper.getFullName(this), handler); } - static un(handler?: (event: EnonicAiTranslatorConfigEvent) => void) { + static un(handler?: (event: AiTranslatorConfigureEvent) => void) { Event.unbind(ClassHelper.getFullName(this), handler); } diff --git a/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/EnonicAiDataSentEvent.ts b/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/AiUpdateDataEvent.ts similarity index 77% rename from modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/EnonicAiDataSentEvent.ts rename to modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/AiUpdateDataEvent.ts index e5196dc57e..c3f4d48284 100644 --- a/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/EnonicAiDataSentEvent.ts +++ b/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/AiUpdateDataEvent.ts @@ -2,7 +2,7 @@ import {ClassHelper} from '@enonic/lib-admin-ui/ClassHelper'; import {Event} from '@enonic/lib-admin-ui/event/Event'; import {EnonicAiContentData} from '../data/EnonicAiContentData'; -export class EnonicAiDataSentEvent +export class AiUpdateDataEvent extends Event { private readonly payload: EnonicAiContentData; @@ -17,11 +17,11 @@ export class EnonicAiDataSentEvent return this.payload; } - static on(handler: (event: EnonicAiDataSentEvent) => void) { + static on(handler: (event: AiUpdateDataEvent) => void) { Event.bind(ClassHelper.getFullName(this), handler); } - static un(handler?: (event: EnonicAiDataSentEvent) => void) { + static un(handler?: (event: AiUpdateDataEvent) => void) { Event.unbind(ClassHelper.getFullName(this), handler); } diff --git a/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/EnonicAiTranslatorDataSentEvent.ts b/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/EnonicAiTranslatorDataSentEvent.ts deleted file mode 100644 index 9498af4ae4..0000000000 --- a/modules/lib/src/main/resources/assets/js/app/ai/event/outgoing/EnonicAiTranslatorDataSentEvent.ts +++ /dev/null @@ -1,28 +0,0 @@ -import {ClassHelper} from '@enonic/lib-admin-ui/ClassHelper'; -import {Event} from '@enonic/lib-admin-ui/event/Event'; -import {EnonicAiContentData} from '../data/EnonicAiContentData'; - -export class EnonicAiContentOperatorDataSentEvent - extends Event { - - private readonly payload: EnonicAiContentData; - - constructor(data: EnonicAiContentData) { - super(); - - this.payload = data; - } - - getData(): EnonicAiContentData { - return this.payload; - } - - static on(handler: (event: EnonicAiContentOperatorDataSentEvent) => void) { - Event.bind(ClassHelper.getFullName(this), handler); - } - - static un(handler?: (event: EnonicAiContentOperatorDataSentEvent) => void) { - Event.unbind(ClassHelper.getFullName(this), handler); - } - -}