feat(editor): Add Ask AI preview (#5916)

*  Add Ask AI preview

* 🐛 Fire event on mousedown

*  Update to use Alex's event bus

* ✏️ Use i18n

*  Add telemetry

* ♻️ Change trigger from focus to hover

*  Ensure focus + hover trigger event
This commit is contained in:
Iván Ovejero
2023-04-13 14:14:27 +02:00
committed by GitHub
parent 8474cd386d
commit f8f8374506
7 changed files with 133 additions and 4 deletions

View File

@@ -0,0 +1,52 @@
<template>
<Modal
width="460px"
:center="true"
:eventBus="modalBus"
:name="ASK_AI_MODAL_KEY"
:title="$locale.baseText('askAi.dialog.title')"
>
<template #content>
<n8n-text v-html="$locale.baseText('askAi.dialog.body')"></n8n-text>
</template>
<template #footer>
<n8n-link :to="ASK_AI_WAITLIST_URL">
<n8n-button
float="right"
:label="$locale.baseText('askAi.dialog.signup')"
@click="onAskAiWaitlistClick"
/>
</n8n-link>
</template>
</Modal>
</template>
<script lang="ts">
import Vue from 'vue';
import Modal from './Modal.vue';
import { ASK_AI_MODAL_KEY, ASK_AI_WAITLIST_URL } from '../constants';
import { createEventBus } from '@/event-bus';
export default Vue.extend({
name: 'AskAI',
components: {
Modal,
},
data() {
return {
ASK_AI_WAITLIST_URL,
ASK_AI_MODAL_KEY,
modalBus: createEventBus(),
};
},
methods: {
onAskAiWaitlistClick() {
this.$telemetry.track('User clicked join waitlist', { source: 'ask-ai-code' });
this.modalBus.emit('close');
},
},
});
</script>
<style module lang="scss"></style>