From 90e56a72cff33cfbb82c0abceb8fa2c623e82b4a Mon Sep 17 00:00:00 2001 From: peterpaulo-azion Date: Mon, 4 Mar 2024 11:33:50 -0300 Subject: [PATCH 01/54] refactor: tracker adapter struture --- src/App.vue | 2 +- src/plugins/AnalyticsTrackerAdapterPlugin.js | 2 +- .../AnalyticsTrackerAdapter.js | 195 ++++-------------- .../analytics/products/CreateTracker.js | 74 +++++++ .../analytics/products/SignInTracker.js | 29 +++ .../analytics/products/SignUpTracker.js | 63 ++++++ src/router/hooks/afterEachRoute.js | 2 +- src/templates/create-modal-block/index.vue | 6 +- src/templates/navbar-block/create.vue | 4 +- src/templates/sign-in-block/index.vue | 6 +- .../additional-data-form-block.vue | 6 +- .../signup-block/form-signup-block.vue | 4 +- .../adapters/AnalyticsTrackerAdapter.test.js | 26 +-- src/views/CreateNew/CreateView.vue | 4 +- src/views/CreateNew/DeployView.vue | 8 +- src/views/EdgeApplications/CreateView.vue | 2 +- src/views/EdgeApplications/EditView.vue | 5 +- src/views/EdgeApplications/ListView.vue | 2 +- src/views/Home/HomeView.vue | 4 +- src/views/Login/LoginView.vue | 4 +- 20 files changed, 248 insertions(+), 200 deletions(-) rename src/plugins/adapters/{ => analytics}/AnalyticsTrackerAdapter.js (56%) create mode 100644 src/plugins/adapters/analytics/products/CreateTracker.js create mode 100644 src/plugins/adapters/analytics/products/SignInTracker.js create mode 100644 src/plugins/adapters/analytics/products/SignUpTracker.js diff --git a/src/App.vue b/src/App.vue index cea072ae6..f259f088b 100644 --- a/src/App.vue +++ b/src/App.vue @@ -5,7 +5,7 @@ import { useAccountStore } from '@/stores/account' import { storeToRefs } from 'pinia' import { themeSelect } from '@/helpers' - /** @type {import('@/plugins/adapters/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /** @type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') const accountStore = useAccountStore() diff --git a/src/plugins/AnalyticsTrackerAdapterPlugin.js b/src/plugins/AnalyticsTrackerAdapterPlugin.js index 5275cc2fc..b7fc8e947 100644 --- a/src/plugins/AnalyticsTrackerAdapterPlugin.js +++ b/src/plugins/AnalyticsTrackerAdapterPlugin.js @@ -1,6 +1,6 @@ import { getEnvironment } from '@/helpers' import { makeAnalyticsClient } from './factories/analytics-tracking-factory' -import { AnalyticsTrackerAdapter } from './adapters/AnalyticsTrackerAdapter' +import { AnalyticsTrackerAdapter } from './adapters/analytics/AnalyticsTrackerAdapter' /**@type {import('vue').Plugin} */ export default { diff --git a/src/plugins/adapters/AnalyticsTrackerAdapter.js b/src/plugins/adapters/analytics/AnalyticsTrackerAdapter.js similarity index 56% rename from src/plugins/adapters/AnalyticsTrackerAdapter.js rename to src/plugins/adapters/analytics/AnalyticsTrackerAdapter.js index d44309203..599c9d084 100644 --- a/src/plugins/adapters/AnalyticsTrackerAdapter.js +++ b/src/plugins/adapters/analytics/AnalyticsTrackerAdapter.js @@ -1,3 +1,7 @@ +import { SignUpTracker } from './products/SignUpTracker' +import { SignInTracker } from './products/SignInTracker' +import { CreateTracker } from './products/CreateTracker' + /** * @typedef {Object} TrackerEvent * @property {string} eventName - The name of the event. @@ -14,6 +18,9 @@ export class AnalyticsTrackerAdapter { /** @type {import('analytics').AnalyticsInstance} */ #analyticsClient = null #traits = {} + #signUpTracker = null + #signInTracker = null + #createTracker = null /** * Creates an instance of AnalyticsTrackerAdapter. @@ -21,6 +28,38 @@ export class AnalyticsTrackerAdapter { */ constructor(analyticsClient) { this.#analyticsClient = analyticsClient + + this.#signUpTracker = new SignUpTracker(this) + this.#signInTracker = new SignInTracker(this) + this.#createTracker = new CreateTracker(this) + } + + addEvent(event) { + this.#events.push(event) + } + + /** + * call this method to run each stored tracker event + */ + async track() { + this.#events.forEach(async (action) => { + const { eventName, props } = action + const propsWithTraits = { ...props, ...this.#traits } + await this.#analyticsClient.track(eventName, propsWithTraits) + }) + this.#events = [] + } + + get signUp() { + return this.#signUpTracker + } + + get signIn() { + return this.#signInTracker + } + + get create() { + return this.#createTracker } async identify(id) { @@ -82,28 +121,6 @@ export class AnalyticsTrackerAdapter { return this } - /** - * @returns {AnalyticsTrackerAdapter} - */ - userSigned() { - this.#events.push({ - eventName: 'User Signed In', - props: {} - }) - return this - } - - /** - * @returns {AnalyticsTrackerAdapter} - */ - userFailedSignIn() { - this.#events.push({ - eventName: 'User Failed to Sign In', - props: {} - }) - return this - } - /** * @param {Object} payload * @param {AzionProductsNames} payload.productName @@ -155,138 +172,4 @@ export class AnalyticsTrackerAdapter { }) return this } - - /** - * @param {Object} payload - * @param {string} payload.url - * @param {string} payload.location - * @returns {AnalyticsTrackerAdapter} - */ - createEventInHomeAndHeader(payload) { - this.#events.push({ - eventName: 'Clicked to Create', - props: { - url: payload.url, - location: payload.location - } - }) - return this - } - - /** - * @returns {AnalyticsTrackerAdapter} - */ - userSignedUp() { - this.#events.push({ - eventName: 'User Signed Up', - props: {} - }) - return this - } - - /** - * @returns {AnalyticsTrackerAdapter} - */ - submittedAdditionalData() { - this.#events.push({ - eventName: 'Submitted Additional Data', - props: {} - }) - return this - } - - /** - * @returns {AnalyticsTrackerAdapter} - */ - userFailedSignUp() { - this.#events.push({ - eventName: 'User Failed to Sign Up', - props: {} - }) - return this - } - - /** - * @returns {AnalyticsTrackerAdapter} - */ - failedSubmitAdditionalData() { - this.#events.push({ - eventName: 'Failed to Submit Additional Data', - props: {} - }) - return this - } - - /** - * @param {Object} payload - * @param {string} payload.section - * @param {string} payload.selection - * @returns {AnalyticsTrackerAdapter} - */ - selectedOnCreate(payload) { - this.#events.push({ - eventName: 'Selected on Create', - props: { - section: payload.section, - selection: payload.selection - } - }) - return this - } - - /** - * @returns {AnalyticsTrackerAdapter} - */ - clickMoreDetailsOnTemplate() { - this.#events.push({ - eventName: 'Clicked to View More Details on Template', - props: {} - }) - return this - } - - /** - * @returns {AnalyticsTrackerAdapter} - */ - userActivatedAccount() { - this.#events.push({ - eventName: 'User Activated Account', - props: {} - }) - return this - } - - /** - * @returns {AnalyticsTrackerAdapter} - */ - eventDeployed() { - this.#events.push({ - eventName: 'Deployed', - props: {} - }) - return this - } - - /** - * @returns {AnalyticsTrackerAdapter} - */ - eventFailedDeployed() { - this.#events.push({ - eventName: 'Failed to Deploy', - props: {} - }) - return this - } - - /** - * call this method to run each stored tracker event - */ - async track() { - this.#events.forEach(async (action) => { - const { eventName, props } = action - const propsWithTraits = { ...props, ...this.#traits } - await this.#analyticsClient.track(eventName, propsWithTraits) - }) - this.#events = [] - } } diff --git a/src/plugins/adapters/analytics/products/CreateTracker.js b/src/plugins/adapters/analytics/products/CreateTracker.js new file mode 100644 index 000000000..0142712be --- /dev/null +++ b/src/plugins/adapters/analytics/products/CreateTracker.js @@ -0,0 +1,74 @@ +export class CreateTracker { + #adapter + + constructor(adapter) { + this.#adapter = adapter + } + + /** + * @param {Object} payload + * @param {string} payload.url + * @param {string} payload.location + * @returns {AnalyticsTrackerAdapter} + */ + createEventInHomeAndHeader(payload) { + this.#adapter.addEvent({ + eventName: 'Clicked to Create', + props: { + url: payload.url, + location: payload.location + } + }) + return this.#adapter + } + + /** + * @param {Object} payload + * @param {string} payload.section + * @param {string} payload.selection + * @returns {AnalyticsTrackerAdapter} + */ + selectedOnCreate(payload) { + this.#adapter.addEvent({ + eventName: 'Selected on Create', + props: { + section: payload.section, + selection: payload.selection + } + }) + return this.#adapter + } + + /** + * @returns {AnalyticsTrackerAdapter} + */ + clickMoreDetailsOnTemplate() { + this.#adapter.addEvent({ + eventName: 'Clicked to View More Details on Template', + props: {} + }) + return this.#adapter + } + + /** + * @returns {AnalyticsTrackerAdapter} + */ + eventDeployed() { + this.#adapter.addEvent({ + eventName: 'Deployed', + props: {} + }) + return this.#adapter + } + + /** + * @returns {AnalyticsTrackerAdapter} + */ + eventFailedDeployed() { + this.#adapter.addEvent({ + eventName: 'Failed to Deploy', + props: {} + }) + return this.#adapter + } +} diff --git a/src/plugins/adapters/analytics/products/SignInTracker.js b/src/plugins/adapters/analytics/products/SignInTracker.js new file mode 100644 index 000000000..20468d903 --- /dev/null +++ b/src/plugins/adapters/analytics/products/SignInTracker.js @@ -0,0 +1,29 @@ +export class SignInTracker { + #adapter + + constructor(adapter) { + this.#adapter = adapter + } + + /** + * @returns {AnalyticsTrackerAdapter} + */ + userSignedIn() { + this.#adapter.addEvent({ + eventName: 'User Signed In', + props: {} + }) + return this.#adapter + } + + /** + * @returns {AnalyticsTrackerAdapter} + */ + userFailedSignIn() { + this.#adapter.addEvent({ + eventName: 'User Failed to Sign In', + props: {} + }) + return this.#adapter + } +} diff --git a/src/plugins/adapters/analytics/products/SignUpTracker.js b/src/plugins/adapters/analytics/products/SignUpTracker.js new file mode 100644 index 000000000..ee8376f4f --- /dev/null +++ b/src/plugins/adapters/analytics/products/SignUpTracker.js @@ -0,0 +1,63 @@ + +export class SignUpTracker { + #adapter; + + constructor(adapter) { + this.#adapter = adapter; + } + + /** + * @returns {AnalyticsTrackerAdapter} + */ + userSignedUp() { + this.#adapter.addEvent({ + eventName: 'User Signed Up', + props: {} + }) + return this.#adapter + } + + /** + * @returns {AnalyticsTrackerAdapter} + */ + userFailedSignUp() { + this.#adapter.addEvent({ + eventName: 'User Failed to Sign Up', + props: {} + }) + return this.#adapter + } + + /** + * @returns {AnalyticsTrackerAdapter} + */ + submittedAdditionalData() { + this.#adapter.addEvent({ + eventName: 'Submitted Additional Data', + props: {} + }) + return this.#adapter + } + + /** + * @returns {AnalyticsTrackerAdapter} + */ + failedSubmitAdditionalData() { + this.#adapter.addEvent({ + eventName: 'Failed to Submit Additional Data', + props: {} + }) + return this.#adapter + } + + /** + * @returns {AnalyticsTrackerAdapter} + */ + userActivatedAccount() { + this.#adapter.addEvent({ + eventName: 'User Activated Account', + props: {} + }) + return this.#adapter + } +} diff --git a/src/router/hooks/afterEachRoute.js b/src/router/hooks/afterEachRoute.js index 08f759e36..1545127a5 100644 --- a/src/router/hooks/afterEachRoute.js +++ b/src/router/hooks/afterEachRoute.js @@ -6,7 +6,7 @@ import { inject } from 'vue' export default function afterEachRoute(to, from, failure) { const loadingStore = useLoadingStore() loadingStore.finishLoading() - /** @type {import('@/plugins/adapters/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /** @type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') tracker .pageLoad({ diff --git a/src/templates/create-modal-block/index.vue b/src/templates/create-modal-block/index.vue index f51f8cea0..bf72c6f0b 100644 --- a/src/templates/create-modal-block/index.vue +++ b/src/templates/create-modal-block/index.vue @@ -5,7 +5,7 @@ import { computed, onBeforeMount, ref, inject } from 'vue' import { useRouter } from 'vue-router' import { useToast } from 'primevue/usetoast' - /**@type {import('@/plugins/adapters/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') defineOptions({ name: 'create-modal-block' @@ -119,7 +119,7 @@ } const redirectToSolution = (template, section) => { - tracker.selectedOnCreate({ + tracker.create.selectedOnCreate({ section, selection: template.name }) @@ -132,7 +132,7 @@ } const redirect = (toLink, selection) => { - tracker.selectedOnCreate({ + tracker.create.selectedOnCreate({ section: 'resources', selection }) diff --git a/src/templates/navbar-block/create.vue b/src/templates/navbar-block/create.vue index 1c447ee6f..19d479c52 100644 --- a/src/templates/navbar-block/create.vue +++ b/src/templates/navbar-block/create.vue @@ -72,7 +72,7 @@ import PrimeDialog from 'primevue/dialog' import Sidebar from 'primevue/sidebar' import CreateModalBlock from '@/templates/create-modal-block' - /**@type {import('@/plugins/adapters/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') defineOptions({ name: 'navbar-create-block' }) @@ -83,7 +83,7 @@ const SCREEN_BREAKPOINT_MD = 768 const openCreateModalToggle = () => { - tracker.createEventInHomeAndHeader({ url: route.path, location: 'header' }).track() + tracker.create.create.createEventInHomeAndHeader({ url: route.path, location: 'header' }).track() createModalStore.toggle() } diff --git a/src/templates/sign-in-block/index.vue b/src/templates/sign-in-block/index.vue index 9742f13d5..b94c2605e 100644 --- a/src/templates/sign-in-block/index.vue +++ b/src/templates/sign-in-block/index.vue @@ -156,7 +156,7 @@ import { ref, inject } from 'vue' import { useRouter } from 'vue-router' import * as yup from 'yup' - /**@type {import('@/plugins/adapters/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') defineOptions({ name: 'signInBlock' }) @@ -228,7 +228,7 @@ await props.authenticationLoginService(loginData) const { twoFactor, trustedDevice, user_tracking_info: userInfo } = await verify() - tracker.userSigned() + tracker.signIn.userSignedIn() if (twoFactor) { const mfaRoute = trustedDevice ? 'authentication' : 'setup' router.push(`/mfa/${mfaRoute}`) @@ -237,7 +237,7 @@ await switchClientAccount(userInfo.props) } catch { - tracker.userFailedSignIn().track() + tracker.signIn.userFailedSignIn().track() hasRequestErrorMessage.value = new UserNotFoundError().message isButtonLoading.value = false } diff --git a/src/templates/signup-block/additional-data-form-block.vue b/src/templates/signup-block/additional-data-form-block.vue index e7b989ece..16f81f243 100644 --- a/src/templates/signup-block/additional-data-form-block.vue +++ b/src/templates/signup-block/additional-data-form-block.vue @@ -143,7 +143,7 @@ import { computed, onMounted, ref, inject } from 'vue' import { useRouter } from 'vue-router' import * as yup from 'yup' - /** @type {import('@/plugins/adapters/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /** @type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') defineOptions({ @@ -245,12 +245,12 @@ } await props.putAdditionalDataService(form) - tracker.userSignedUp().submittedAdditionalData() + tracker.signUp.userSignedUp().submittedAdditionalData() router.push({ name: 'home' }) } catch (err) { toast.add({ life: 5000, severity: 'error', detail: err, summary: 'Error' }) - tracker.failedSubmitAdditionalData().track() + tracker.signUp.failedSubmitAdditionalData().track() } finally { loading.value = false } diff --git a/src/templates/signup-block/form-signup-block.vue b/src/templates/signup-block/form-signup-block.vue index f92803243..dd950b860 100644 --- a/src/templates/signup-block/form-signup-block.vue +++ b/src/templates/signup-block/form-signup-block.vue @@ -106,7 +106,7 @@ import InputPassword from 'primevue/password' import PrimeButton from 'primevue/button' import PrimeDivider from 'primevue/divider' - /** @type {import('@/plugins/adapters/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /** @type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') defineEmits(['change-signup-method']) @@ -184,7 +184,7 @@ router.push({ name: 'activation', query: { email: encodeEmail(values.email) } }) } catch (err) { - tracker.userFailedSignUp().track() + tracker.signUp.userFailedSignUp().track() loading.value = false toast.add({ life: 5000, severity: 'error', detail: err, summary: 'Error' }) } diff --git a/src/tests/plugins/adapters/AnalyticsTrackerAdapter.test.js b/src/tests/plugins/adapters/AnalyticsTrackerAdapter.test.js index 691c7223a..8ea80f90b 100644 --- a/src/tests/plugins/adapters/AnalyticsTrackerAdapter.test.js +++ b/src/tests/plugins/adapters/AnalyticsTrackerAdapter.test.js @@ -1,4 +1,4 @@ -import { AnalyticsTrackerAdapter } from '@/plugins/adapters/AnalyticsTrackerAdapter' +import { AnalyticsTrackerAdapter } from '@/plugins/adapters/analytics/AnalyticsTrackerAdapter' import { describe, expect, it, vi } from 'vitest' const makeSut = () => { @@ -181,7 +181,7 @@ describe('AnalyticsTrackerAdapter', () => { it('should call userSigned when valid identification is provided', () => { const { sut, analyticsClientSpy } = makeSut() - sut.userSigned() + sut.signIn.userSignedIn() sut.track() @@ -191,7 +191,7 @@ describe('AnalyticsTrackerAdapter', () => { it('should call userFailedSignIn when valid identification is provided', () => { const { sut, analyticsClientSpy } = makeSut() - sut.userFailedSignIn() + sut.signIn.userFailedSignIn() sut.track() @@ -203,7 +203,7 @@ describe('AnalyticsTrackerAdapter', () => { const mockUrl = 'test-url-ABC/q-2/t' const mockLocation = 'home' - sut.createEventInHomeAndHeader({ + sut.create.createEventInHomeAndHeader({ url: mockUrl, location: mockLocation }) @@ -219,7 +219,7 @@ describe('AnalyticsTrackerAdapter', () => { it('should track the user sign-up event with the correct parameters', () => { const { sut, analyticsClientSpy } = makeSut() - sut.userSignedUp().track() + sut.signUp.userSignedUp().track() expect(analyticsClientSpy.track).toHaveBeenCalledWith('User Signed Up', {}) }) @@ -227,7 +227,7 @@ describe('AnalyticsTrackerAdapter', () => { it('should track the additional data submit event with the correct parameters', () => { const { sut, analyticsClientSpy } = makeSut() - sut.submittedAdditionalData().track() + sut.signUp.submittedAdditionalData().track() expect(analyticsClientSpy.track).toHaveBeenCalledWith('Submitted Additional Data', {}) }) @@ -235,7 +235,7 @@ describe('AnalyticsTrackerAdapter', () => { it('should track the user failed to sign-up event with the correct parameters', () => { const { sut, analyticsClientSpy } = makeSut() - sut.userFailedSignUp().track() + sut.signUp.userFailedSignUp().track() expect(analyticsClientSpy.track).toHaveBeenCalledWith('User Failed to Sign Up', {}) }) @@ -243,7 +243,7 @@ describe('AnalyticsTrackerAdapter', () => { it('should track the failed additional data submit event with the correct parameters', () => { const { sut, analyticsClientSpy } = makeSut() - sut.failedSubmitAdditionalData().track() + sut.signUp.failedSubmitAdditionalData().track() expect(analyticsClientSpy.track).toHaveBeenCalledWith('Failed to Submit Additional Data', {}) }) @@ -253,7 +253,7 @@ describe('AnalyticsTrackerAdapter', () => { const selectionMock = 'cardTitle' const sectionMock = 'recommended' - sut.selectedOnCreate({ + sut.create.selectedOnCreate({ selection: selectionMock, section: sectionMock }) @@ -269,7 +269,7 @@ describe('AnalyticsTrackerAdapter', () => { it('should use the View More Details on Template event with correct parameters', () => { const { sut, analyticsClientSpy } = makeSut() - sut.clickMoreDetailsOnTemplate({}) + sut.create.clickMoreDetailsOnTemplate({}) sut.track() @@ -282,7 +282,7 @@ describe('AnalyticsTrackerAdapter', () => { it('should use the deployed event with correct parameters', () => { const { sut, analyticsClientSpy } = makeSut() - sut.eventDeployed({}) + sut.create.eventDeployed() sut.track() @@ -292,7 +292,7 @@ describe('AnalyticsTrackerAdapter', () => { it('should track the account activation event with the correct parameters', () => { const { sut, analyticsClientSpy } = makeSut() - sut.userActivatedAccount().track() + sut.signUp.userActivatedAccount().track() expect(analyticsClientSpy.track).toHaveBeenCalledWith('User Activated Account', {}) }) @@ -300,7 +300,7 @@ describe('AnalyticsTrackerAdapter', () => { it('should use the failed deployed event with correct parameters', () => { const { sut, analyticsClientSpy } = makeSut() - sut.eventFailedDeployed({}) + sut.create.eventFailedDeployed() sut.track() diff --git a/src/views/CreateNew/CreateView.vue b/src/views/CreateNew/CreateView.vue index f0e1ef2de..09844b73d 100644 --- a/src/views/CreateNew/CreateView.vue +++ b/src/views/CreateNew/CreateView.vue @@ -238,7 +238,7 @@ import { useLoadingStore } from '@/stores/loading' import { useRouter, useRoute } from 'vue-router' import { useToast } from 'primevue/usetoast' - /**@type {import('@/plugins/adapters/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') const isLoading = ref(false) @@ -296,7 +296,7 @@ } const openDetails = () => { - tracker.clickMoreDetailsOnTemplate().track() + tracker.create.clickMoreDetailsOnTemplate().track() showDetails.value = true } diff --git a/src/views/CreateNew/DeployView.vue b/src/views/CreateNew/DeployView.vue index a7df0576c..969cad534 100644 --- a/src/views/CreateNew/DeployView.vue +++ b/src/views/CreateNew/DeployView.vue @@ -138,7 +138,7 @@ import ScriptRunnerBlock from '@/templates/script-runner-block' import PrimeCard from 'primevue/card' import { useToast } from 'primevue/usetoast' - /**@type {import('@/plugins/adapters/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') const props = defineProps({ @@ -196,7 +196,7 @@ detail: 'The edge application is being propagated through the edge nodes. This process will take a few minutes.' }) - tracker.eventDeployed().track() + tracker.create.eventDeployed().track() } catch (error) { deployFailed.value = true toast.add({ @@ -205,7 +205,7 @@ summary: 'Creation failed', detail: failMessage }) - tracker.eventFailedDeployed().track() + tracker.create.eventFailedDeployed().track() } } @@ -262,4 +262,4 @@ onUnmounted(() => { clearInterval(intervalRef.value) }) - + \ No newline at end of file diff --git a/src/views/EdgeApplications/CreateView.vue b/src/views/EdgeApplications/CreateView.vue index e5243b430..bafb68e57 100644 --- a/src/views/EdgeApplications/CreateView.vue +++ b/src/views/EdgeApplications/CreateView.vue @@ -37,7 +37,7 @@ import ContentBlock from '@/templates/content-block' import PageHeadingBlock from '@/templates/page-heading-block' - /**@type {import('@/plugins/adapters/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') const props = defineProps({ diff --git a/src/views/EdgeApplications/EditView.vue b/src/views/EdgeApplications/EditView.vue index a879698df..e618ef793 100644 --- a/src/views/EdgeApplications/EditView.vue +++ b/src/views/EdgeApplications/EditView.vue @@ -35,8 +35,7 @@ defineOptions({ name: 'edit-edge-application' }) const emit = defineEmits(['updatedApplication']) - - /**@type {import('@/plugins/adapters/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') const props = defineProps({ @@ -84,4 +83,4 @@ await onSubmit() emit('updatedApplication', values) } - + \ No newline at end of file diff --git a/src/views/EdgeApplications/ListView.vue b/src/views/EdgeApplications/ListView.vue index a36af220d..446dee58a 100644 --- a/src/views/EdgeApplications/ListView.vue +++ b/src/views/EdgeApplications/ListView.vue @@ -9,7 +9,7 @@ import PageHeadingBlock from '@/templates/page-heading-block' defineOptions({ name: 'list-edge-applications' }) - /**@type {import('@/plugins/adapters/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') const props = defineProps({ diff --git a/src/views/Home/HomeView.vue b/src/views/Home/HomeView.vue index 0974ae840..5199ad5fc 100644 --- a/src/views/Home/HomeView.vue +++ b/src/views/Home/HomeView.vue @@ -211,7 +211,7 @@ import { useForm } from 'vee-validate' import * as yup from 'yup' import FormFieldsHome from './FormFields/FormFieldsHome.vue' - /**@type {import('@/plugins/adapters/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ export default { name: 'home-view', @@ -324,7 +324,7 @@ const createModalStore = useCreateModalStore() const openModalCreate = () => { - tracker.createEventInHomeAndHeader({ url: '/', location: 'home' }).track() + tracker.create.createEventInHomeAndHeader({ url: '/', location: 'home' }).track() createModalStore.toggle() } diff --git a/src/views/Login/LoginView.vue b/src/views/Login/LoginView.vue index 6702dcce8..d7d73bc68 100644 --- a/src/views/Login/LoginView.vue +++ b/src/views/Login/LoginView.vue @@ -22,7 +22,7 @@ import SignInBlock from '@/templates/sign-in-block' import ForgotPassword from '@/templates/sign-in-block/forgot-password.vue' import { useRoute, useRouter } from 'vue-router' - /**@type {import('@/plugins/adapters/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') const route = useRoute() @@ -62,7 +62,7 @@ const isActivatedEmail = !!email && !activated if (isActivatedEmail) { - tracker.userActivatedAccount() + tracker.signUp.userActivatedAccount() const newQuery = { ...route.query, activated: 'true' } router.replace({ query: newQuery }) From 87c1f4b7d3585b2a98260418fc3fa7644b31f14f Mon Sep 17 00:00:00 2001 From: peterpaulo-azion Date: Mon, 4 Mar 2024 11:35:44 -0300 Subject: [PATCH 02/54] refactor: adjust create call --- src/plugins/adapters/analytics/products/SignUpTracker.js | 5 ++--- src/templates/navbar-block/create.vue | 4 +++- src/views/CreateNew/DeployView.vue | 2 +- src/views/EdgeApplications/EditView.vue | 2 +- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/plugins/adapters/analytics/products/SignUpTracker.js b/src/plugins/adapters/analytics/products/SignUpTracker.js index ee8376f4f..7f27014a1 100644 --- a/src/plugins/adapters/analytics/products/SignUpTracker.js +++ b/src/plugins/adapters/analytics/products/SignUpTracker.js @@ -1,9 +1,8 @@ - export class SignUpTracker { - #adapter; + #adapter constructor(adapter) { - this.#adapter = adapter; + this.#adapter = adapter } /** diff --git a/src/templates/navbar-block/create.vue b/src/templates/navbar-block/create.vue index 19d479c52..3f459e1bb 100644 --- a/src/templates/navbar-block/create.vue +++ b/src/templates/navbar-block/create.vue @@ -83,7 +83,9 @@ const SCREEN_BREAKPOINT_MD = 768 const openCreateModalToggle = () => { - tracker.create.create.createEventInHomeAndHeader({ url: route.path, location: 'header' }).track() + tracker.create + .createEventInHomeAndHeader({ url: route.path, location: 'header' }) + .track() createModalStore.toggle() } diff --git a/src/views/CreateNew/DeployView.vue b/src/views/CreateNew/DeployView.vue index 969cad534..61a464bb7 100644 --- a/src/views/CreateNew/DeployView.vue +++ b/src/views/CreateNew/DeployView.vue @@ -262,4 +262,4 @@ onUnmounted(() => { clearInterval(intervalRef.value) }) - \ No newline at end of file + diff --git a/src/views/EdgeApplications/EditView.vue b/src/views/EdgeApplications/EditView.vue index e618ef793..5d8684f38 100644 --- a/src/views/EdgeApplications/EditView.vue +++ b/src/views/EdgeApplications/EditView.vue @@ -83,4 +83,4 @@ await onSubmit() emit('updatedApplication', values) } - \ No newline at end of file + From 348e382aa696f09ed1d53a74e9014e5d1adc4fd1 Mon Sep 17 00:00:00 2001 From: peterpaulo-azion Date: Mon, 4 Mar 2024 11:38:14 -0300 Subject: [PATCH 03/54] refactor: linter fix --- src/templates/navbar-block/create.vue | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/templates/navbar-block/create.vue b/src/templates/navbar-block/create.vue index 3f459e1bb..95bb933d6 100644 --- a/src/templates/navbar-block/create.vue +++ b/src/templates/navbar-block/create.vue @@ -83,9 +83,7 @@ const SCREEN_BREAKPOINT_MD = 768 const openCreateModalToggle = () => { - tracker.create - .createEventInHomeAndHeader({ url: route.path, location: 'header' }) - .track() + tracker.create.createEventInHomeAndHeader({ url: route.path, location: 'header' }).track() createModalStore.toggle() } From 58acde793edbcbff90d1a6e986e023ecb5d973f6 Mon Sep 17 00:00:00 2001 From: peterpaulo-azion Date: Mon, 4 Mar 2024 14:42:08 -0300 Subject: [PATCH 04/54] refactor: added types for analytics properties and functions --- .../analytics/AnalyticsTrackerAdapter.js | 19 ++++++++++++ .../analytics/products/CreateTracker.js | 29 +++++++++++-------- .../analytics/products/SignInTracker.js | 17 +++++++---- .../analytics/products/SignUpTracker.js | 29 +++++++++++-------- 4 files changed, 64 insertions(+), 30 deletions(-) diff --git a/src/plugins/adapters/analytics/AnalyticsTrackerAdapter.js b/src/plugins/adapters/analytics/AnalyticsTrackerAdapter.js index 599c9d084..720d89f29 100644 --- a/src/plugins/adapters/analytics/AnalyticsTrackerAdapter.js +++ b/src/plugins/adapters/analytics/AnalyticsTrackerAdapter.js @@ -18,8 +18,12 @@ export class AnalyticsTrackerAdapter { /** @type {import('analytics').AnalyticsInstance} */ #analyticsClient = null #traits = {} + + /** @type {SignUpTracker} - events related to signup product */ #signUpTracker = null + /** @type {SignInTracker} - events related to signin product */ #signInTracker = null + /** @type {CreateTracker} - events related to create entity */ #createTracker = null /** @@ -50,14 +54,29 @@ export class AnalyticsTrackerAdapter { this.#events = [] } + /** + * Getter for the signUp property. + * + * @return {SignUpTracker} SignUpTracker instance + */ get signUp() { return this.#signUpTracker } + /** + * Getter for the signIn property. + * + * @return {SignInTracker} SignInTracker instance + */ get signIn() { return this.#signInTracker } + /** + * Get for the CreateTracker property. + * + * @return {CreateTracker} CreateTracker instance + */ get create() { return this.#createTracker } diff --git a/src/plugins/adapters/analytics/products/CreateTracker.js b/src/plugins/adapters/analytics/products/CreateTracker.js index 0142712be..63798317f 100644 --- a/src/plugins/adapters/analytics/products/CreateTracker.js +++ b/src/plugins/adapters/analytics/products/CreateTracker.js @@ -1,8 +1,13 @@ export class CreateTracker { - #adapter + /** @typedef TrackerAdapter - instance of AnalyticsTrackerAdapter */ + #trackerAdapter + /** + * Receives an instance of AnalyticsTrackerAdapter. + * @param {import('analytics').AnalyticsInstance} adapter + */ constructor(adapter) { - this.#adapter = adapter + this.#trackerAdapter = adapter } /** @@ -12,14 +17,14 @@ export class CreateTracker { * @returns {AnalyticsTrackerAdapter} */ createEventInHomeAndHeader(payload) { - this.#adapter.addEvent({ + this.#trackerAdapter.addEvent({ eventName: 'Clicked to Create', props: { url: payload.url, location: payload.location } }) - return this.#adapter + return this.#trackerAdapter } /** @@ -29,46 +34,46 @@ export class CreateTracker { * @returns {AnalyticsTrackerAdapter} */ selectedOnCreate(payload) { - this.#adapter.addEvent({ + this.#trackerAdapter.addEvent({ eventName: 'Selected on Create', props: { section: payload.section, selection: payload.selection } }) - return this.#adapter + return this.#trackerAdapter } /** * @returns {AnalyticsTrackerAdapter} */ clickMoreDetailsOnTemplate() { - this.#adapter.addEvent({ + this.#trackerAdapter.addEvent({ eventName: 'Clicked to View More Details on Template', props: {} }) - return this.#adapter + return this.#trackerAdapter } /** * @returns {AnalyticsTrackerAdapter} */ eventDeployed() { - this.#adapter.addEvent({ + this.#trackerAdapter.addEvent({ eventName: 'Deployed', props: {} }) - return this.#adapter + return this.#trackerAdapter } /** * @returns {AnalyticsTrackerAdapter} */ eventFailedDeployed() { - this.#adapter.addEvent({ + this.#trackerAdapter.addEvent({ eventName: 'Failed to Deploy', props: {} }) - return this.#adapter + return this.#trackerAdapter } } diff --git a/src/plugins/adapters/analytics/products/SignInTracker.js b/src/plugins/adapters/analytics/products/SignInTracker.js index 20468d903..433a10315 100644 --- a/src/plugins/adapters/analytics/products/SignInTracker.js +++ b/src/plugins/adapters/analytics/products/SignInTracker.js @@ -1,29 +1,34 @@ export class SignInTracker { - #adapter + /** @typedef TrackerAdapter - instance of AnalyticsTrackerAdapter */ + #trackerAdapter + /** + * Receives an instance of AnalyticsTrackerAdapter. + * @param {import('analytics').AnalyticsInstance} adapter + */ constructor(adapter) { - this.#adapter = adapter + this.#trackerAdapter = adapter } /** * @returns {AnalyticsTrackerAdapter} */ userSignedIn() { - this.#adapter.addEvent({ + this.#trackerAdapter.addEvent({ eventName: 'User Signed In', props: {} }) - return this.#adapter + return this.#trackerAdapter } /** * @returns {AnalyticsTrackerAdapter} */ userFailedSignIn() { - this.#adapter.addEvent({ + this.#trackerAdapter.addEvent({ eventName: 'User Failed to Sign In', props: {} }) - return this.#adapter + return this.#trackerAdapter } } diff --git a/src/plugins/adapters/analytics/products/SignUpTracker.js b/src/plugins/adapters/analytics/products/SignUpTracker.js index 7f27014a1..c8353a5ea 100644 --- a/src/plugins/adapters/analytics/products/SignUpTracker.js +++ b/src/plugins/adapters/analytics/products/SignUpTracker.js @@ -1,62 +1,67 @@ export class SignUpTracker { - #adapter + /** @typedef TrackerAdapter - instance of AnalyticsTrackerAdapter */ + #trackerAdapter + /** + * Receives an instance of AnalyticsTrackerAdapter. + * @param {import('analytics').AnalyticsInstance} adapter + */ constructor(adapter) { - this.#adapter = adapter + this.#trackerAdapter = adapter } /** * @returns {AnalyticsTrackerAdapter} */ userSignedUp() { - this.#adapter.addEvent({ + this.#trackerAdapter.addEvent({ eventName: 'User Signed Up', props: {} }) - return this.#adapter + return this.#trackerAdapter } /** * @returns {AnalyticsTrackerAdapter} */ userFailedSignUp() { - this.#adapter.addEvent({ + this.#trackerAdapter.addEvent({ eventName: 'User Failed to Sign Up', props: {} }) - return this.#adapter + return this.#trackerAdapter } /** * @returns {AnalyticsTrackerAdapter} */ submittedAdditionalData() { - this.#adapter.addEvent({ + this.#trackerAdapter.addEvent({ eventName: 'Submitted Additional Data', props: {} }) - return this.#adapter + return this.#trackerAdapter } /** * @returns {AnalyticsTrackerAdapter} */ failedSubmitAdditionalData() { - this.#adapter.addEvent({ + this.#trackerAdapter.addEvent({ eventName: 'Failed to Submit Additional Data', props: {} }) - return this.#adapter + return this.#trackerAdapter } /** * @returns {AnalyticsTrackerAdapter} */ userActivatedAccount() { - this.#adapter.addEvent({ + this.#trackerAdapter.addEvent({ eventName: 'User Activated Account', props: {} }) - return this.#adapter + return this.#trackerAdapter } } From 53aa188714072e9e600bfbca331c74ffc7e79151 Mon Sep 17 00:00:00 2001 From: peterpaulo-azion Date: Tue, 5 Mar 2024 15:10:38 -0300 Subject: [PATCH 05/54] refactor: path name to tracker and typedef adjust --- src/plugins/adapters/analytics/AnalyticsTrackerAdapter.js | 6 +++--- .../analytics/{products => trackers}/CreateTracker.js | 6 +++++- .../analytics/{products => trackers}/SignInTracker.js | 6 +++++- .../analytics/{products => trackers}/SignUpTracker.js | 6 +++++- 4 files changed, 18 insertions(+), 6 deletions(-) rename src/plugins/adapters/analytics/{products => trackers}/CreateTracker.js (91%) rename src/plugins/adapters/analytics/{products => trackers}/SignInTracker.js (77%) rename src/plugins/adapters/analytics/{products => trackers}/SignUpTracker.js (89%) diff --git a/src/plugins/adapters/analytics/AnalyticsTrackerAdapter.js b/src/plugins/adapters/analytics/AnalyticsTrackerAdapter.js index 720d89f29..9f149e075 100644 --- a/src/plugins/adapters/analytics/AnalyticsTrackerAdapter.js +++ b/src/plugins/adapters/analytics/AnalyticsTrackerAdapter.js @@ -1,6 +1,6 @@ -import { SignUpTracker } from './products/SignUpTracker' -import { SignInTracker } from './products/SignInTracker' -import { CreateTracker } from './products/CreateTracker' +import { SignUpTracker } from './trackers/SignUpTracker' +import { SignInTracker } from './trackers/SignInTracker' +import { CreateTracker } from './trackers/CreateTracker' /** * @typedef {Object} TrackerEvent diff --git a/src/plugins/adapters/analytics/products/CreateTracker.js b/src/plugins/adapters/analytics/trackers/CreateTracker.js similarity index 91% rename from src/plugins/adapters/analytics/products/CreateTracker.js rename to src/plugins/adapters/analytics/trackers/CreateTracker.js index 63798317f..34310d8ef 100644 --- a/src/plugins/adapters/analytics/products/CreateTracker.js +++ b/src/plugins/adapters/analytics/trackers/CreateTracker.js @@ -1,5 +1,9 @@ export class CreateTracker { - /** @typedef TrackerAdapter - instance of AnalyticsTrackerAdapter */ + /** + * Interface for TrackerAdapter. + * @typedef {Object} TrackerAdapter + * @property {function(...args: any[]): void} addEvent - Method to add an event. + */ #trackerAdapter /** diff --git a/src/plugins/adapters/analytics/products/SignInTracker.js b/src/plugins/adapters/analytics/trackers/SignInTracker.js similarity index 77% rename from src/plugins/adapters/analytics/products/SignInTracker.js rename to src/plugins/adapters/analytics/trackers/SignInTracker.js index 433a10315..227ee406c 100644 --- a/src/plugins/adapters/analytics/products/SignInTracker.js +++ b/src/plugins/adapters/analytics/trackers/SignInTracker.js @@ -1,5 +1,9 @@ export class SignInTracker { - /** @typedef TrackerAdapter - instance of AnalyticsTrackerAdapter */ + /** + * Interface for TrackerAdapter. + * @typedef {Object} TrackerAdapter + * @property {function({eventName: string, props: Object}): void} addEvent - Method to add an event. + */ #trackerAdapter /** diff --git a/src/plugins/adapters/analytics/products/SignUpTracker.js b/src/plugins/adapters/analytics/trackers/SignUpTracker.js similarity index 89% rename from src/plugins/adapters/analytics/products/SignUpTracker.js rename to src/plugins/adapters/analytics/trackers/SignUpTracker.js index c8353a5ea..97f20b598 100644 --- a/src/plugins/adapters/analytics/products/SignUpTracker.js +++ b/src/plugins/adapters/analytics/trackers/SignUpTracker.js @@ -1,5 +1,9 @@ export class SignUpTracker { - /** @typedef TrackerAdapter - instance of AnalyticsTrackerAdapter */ + /** + * Interface for TrackerAdapter. + * @typedef {Object} TrackerAdapter + * @property {function(...args: any[]): void} addEvent - Method to add an event. + */ #trackerAdapter /** From 47826dcceec17047b8745b6e3bbef9babc3cdc6b Mon Sep 17 00:00:00 2001 From: peterpaulo-azion Date: Tue, 5 Mar 2024 15:12:01 -0300 Subject: [PATCH 06/54] fix: linter --- src/plugins/adapters/analytics/trackers/CreateTracker.js | 8 ++++---- src/plugins/adapters/analytics/trackers/SignUpTracker.js | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/plugins/adapters/analytics/trackers/CreateTracker.js b/src/plugins/adapters/analytics/trackers/CreateTracker.js index 34310d8ef..0718ecc53 100644 --- a/src/plugins/adapters/analytics/trackers/CreateTracker.js +++ b/src/plugins/adapters/analytics/trackers/CreateTracker.js @@ -1,9 +1,9 @@ export class CreateTracker { /** - * Interface for TrackerAdapter. - * @typedef {Object} TrackerAdapter - * @property {function(...args: any[]): void} addEvent - Method to add an event. - */ + * Interface for TrackerAdapter. + * @typedef {Object} TrackerAdapter + * @property {function(...args: any[]): void} addEvent - Method to add an event. + */ #trackerAdapter /** diff --git a/src/plugins/adapters/analytics/trackers/SignUpTracker.js b/src/plugins/adapters/analytics/trackers/SignUpTracker.js index 97f20b598..e6ab32ca4 100644 --- a/src/plugins/adapters/analytics/trackers/SignUpTracker.js +++ b/src/plugins/adapters/analytics/trackers/SignUpTracker.js @@ -1,9 +1,9 @@ export class SignUpTracker { /** - * Interface for TrackerAdapter. - * @typedef {Object} TrackerAdapter - * @property {function(...args: any[]): void} addEvent - Method to add an event. - */ + * Interface for TrackerAdapter. + * @typedef {Object} TrackerAdapter + * @property {function(...args: any[]): void} addEvent - Method to add an event. + */ #trackerAdapter /** From 77ca24d2e96c097a328e1265a9459ee7a5025c97 Mon Sep 17 00:00:00 2001 From: peterpaulo-azion Date: Fri, 8 Mar 2024 12:16:18 -0300 Subject: [PATCH 07/54] chore: lint all files --- src/App.vue | 5 ++--- src/templates/create-modal-block/index.vue | 1 - src/templates/navbar-block/create.vue | 3 +-- src/templates/sign-in-block/index.vue | 3 +-- src/templates/signup-block/additional-data-form-block.vue | 3 +-- src/templates/signup-block/form-signup-block.vue | 4 ++-- src/views/CreateNew/CreateView.vue | 4 ++-- src/views/CreateNew/DeployView.vue | 3 +-- src/views/EdgeApplications/CreateView.vue | 3 +-- src/views/EdgeApplications/EditView.vue | 3 +-- src/views/EdgeApplications/ListView.vue | 3 +-- src/views/Home/HomeView.vue | 3 +-- src/views/Login/LoginView.vue | 3 +-- 13 files changed, 15 insertions(+), 26 deletions(-) diff --git a/src/App.vue b/src/App.vue index 3405dccd4..cfb3e18f9 100644 --- a/src/App.vue +++ b/src/App.vue @@ -5,7 +5,7 @@ import { useAccountStore } from '@/stores/account' import { storeToRefs } from 'pinia' import { themeSelect } from '@/helpers' - /** @type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /** @type {import('@/plugins/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') const accountStore = useAccountStore() @@ -47,5 +47,4 @@ /> - -@/plugins/analytics/AnalyticsTrackerAdapter \ No newline at end of file + \ No newline at end of file diff --git a/src/templates/create-modal-block/index.vue b/src/templates/create-modal-block/index.vue index aa5c9f2dd..552640262 100644 --- a/src/templates/create-modal-block/index.vue +++ b/src/templates/create-modal-block/index.vue @@ -315,4 +315,3 @@ -@/plugins/analytics/AnalyticsTrackerAdapter \ No newline at end of file diff --git a/src/templates/navbar-block/create.vue b/src/templates/navbar-block/create.vue index 4bda69a16..d37c6b59b 100644 --- a/src/templates/navbar-block/create.vue +++ b/src/templates/navbar-block/create.vue @@ -72,7 +72,7 @@ import PrimeDialog from 'primevue/dialog' import Sidebar from 'primevue/sidebar' import CreateModalBlock from '@/templates/create-modal-block' - /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') defineOptions({ name: 'navbar-create-block' }) @@ -102,4 +102,3 @@ return createModalStore.isOpen }) -@/plugins/analytics/AnalyticsTrackerAdapter \ No newline at end of file diff --git a/src/templates/sign-in-block/index.vue b/src/templates/sign-in-block/index.vue index 683cc3e2b..3029eb218 100644 --- a/src/templates/sign-in-block/index.vue +++ b/src/templates/sign-in-block/index.vue @@ -156,7 +156,7 @@ import { ref, inject } from 'vue' import { useRouter } from 'vue-router' import * as yup from 'yup' - /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') defineOptions({ name: 'signInBlock' }) @@ -291,4 +291,3 @@ resetField() } -@/plugins/analytics/AnalyticsTrackerAdapter \ No newline at end of file diff --git a/src/templates/signup-block/additional-data-form-block.vue b/src/templates/signup-block/additional-data-form-block.vue index c7bbf8afe..f1e822cba 100644 --- a/src/templates/signup-block/additional-data-form-block.vue +++ b/src/templates/signup-block/additional-data-form-block.vue @@ -143,7 +143,7 @@ import { computed, onMounted, ref, inject } from 'vue' import { useRouter } from 'vue-router' import * as yup from 'yup' - /** @type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /** @type {import('@/plugins/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') defineOptions({ @@ -256,4 +256,3 @@ } } -@/plugins/analytics/AnalyticsTrackerAdapter \ No newline at end of file diff --git a/src/templates/signup-block/form-signup-block.vue b/src/templates/signup-block/form-signup-block.vue index f4e482049..201ad4ca2 100644 --- a/src/templates/signup-block/form-signup-block.vue +++ b/src/templates/signup-block/form-signup-block.vue @@ -106,7 +106,7 @@ import InputPassword from 'primevue/password' import PrimeButton from 'primevue/button' import PrimeDivider from 'primevue/divider' - /** @type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /** @type {import('@/plugins/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') defineEmits(['change-signup-method']) @@ -200,4 +200,4 @@ onUnmounted(() => { getInstance()?.hideBadge() }) -@/plugins/analytics/AnalyticsTrackerAdapter + diff --git a/src/views/CreateNew/CreateView.vue b/src/views/CreateNew/CreateView.vue index a35ff4228..c679ffa2f 100644 --- a/src/views/CreateNew/CreateView.vue +++ b/src/views/CreateNew/CreateView.vue @@ -238,7 +238,7 @@ import { useLoadingStore } from '@/stores/loading' import { useRouter, useRoute } from 'vue-router' import { useToast } from 'primevue/usetoast' - /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') const isLoading = ref(false) @@ -324,4 +324,4 @@ } loadSolutionByVendor() }) -@/plugins/analytics/AnalyticsTrackerAdapter + diff --git a/src/views/CreateNew/DeployView.vue b/src/views/CreateNew/DeployView.vue index 617b2b13b..681ff03e9 100644 --- a/src/views/CreateNew/DeployView.vue +++ b/src/views/CreateNew/DeployView.vue @@ -138,7 +138,7 @@ import ScriptRunnerBlock from '@/templates/script-runner-block' import PrimeCard from 'primevue/card' import { useToast } from 'primevue/usetoast' - /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') const props = defineProps({ @@ -263,4 +263,3 @@ clearInterval(intervalRef.value) }) -@/plugins/analytics/AnalyticsTrackerAdapter \ No newline at end of file diff --git a/src/views/EdgeApplications/CreateView.vue b/src/views/EdgeApplications/CreateView.vue index e6f382ced..21ae21709 100644 --- a/src/views/EdgeApplications/CreateView.vue +++ b/src/views/EdgeApplications/CreateView.vue @@ -37,7 +37,7 @@ import ContentBlock from '@/templates/content-block' import PageHeadingBlock from '@/templates/page-heading-block' - /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') const props = defineProps({ @@ -96,4 +96,3 @@ .track() } -@/plugins/analytics/AnalyticsTrackerAdapter \ No newline at end of file diff --git a/src/views/EdgeApplications/EditView.vue b/src/views/EdgeApplications/EditView.vue index 3207854c0..50bf5e091 100644 --- a/src/views/EdgeApplications/EditView.vue +++ b/src/views/EdgeApplications/EditView.vue @@ -35,7 +35,7 @@ defineOptions({ name: 'edit-edge-application' }) const emit = defineEmits(['updatedApplication']) - /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') const props = defineProps({ @@ -84,4 +84,3 @@ emit('updatedApplication', values) } -@/plugins/analytics/AnalyticsTrackerAdapter \ No newline at end of file diff --git a/src/views/EdgeApplications/ListView.vue b/src/views/EdgeApplications/ListView.vue index d444c1b2b..c9979c757 100644 --- a/src/views/EdgeApplications/ListView.vue +++ b/src/views/EdgeApplications/ListView.vue @@ -9,7 +9,7 @@ import PageHeadingBlock from '@/templates/page-heading-block' defineOptions({ name: 'list-edge-applications' }) - /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') const props = defineProps({ @@ -108,4 +108,3 @@ -@/plugins/analytics/AnalyticsTrackerAdapter \ No newline at end of file diff --git a/src/views/Home/HomeView.vue b/src/views/Home/HomeView.vue index f65e4ff74..a325e1f28 100644 --- a/src/views/Home/HomeView.vue +++ b/src/views/Home/HomeView.vue @@ -211,7 +211,7 @@ import { useForm } from 'vee-validate' import * as yup from 'yup' import FormFieldsHome from './FormFields/FormFieldsHome.vue' - /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ export default { name: 'home-view', @@ -350,4 +350,3 @@ } } -@/plugins/analytics/AnalyticsTrackerAdapter \ No newline at end of file diff --git a/src/views/Login/LoginView.vue b/src/views/Login/LoginView.vue index 5ecd41e40..3f2037b93 100644 --- a/src/views/Login/LoginView.vue +++ b/src/views/Login/LoginView.vue @@ -22,7 +22,7 @@ import SignInBlock from '@/templates/sign-in-block' import ForgotPassword from '@/templates/sign-in-block/forgot-password.vue' import { useRoute, useRouter } from 'vue-router' - /**@type {import('@/plugins/adapters/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ + /**@type {import('@/plugins/analytics/AnalyticsTrackerAdapter').AnalyticsTrackerAdapter} */ const tracker = inject('tracker') const route = useRoute() @@ -69,4 +69,3 @@ } }) -@/plugins/analytics/AnalyticsTrackerAdapter \ No newline at end of file From 31c07471576b35c75f976c7a211f2a0baa8308ba Mon Sep 17 00:00:00 2001 From: Gabriel Lisboa Date: Wed, 13 Mar 2024 11:16:11 -0300 Subject: [PATCH 08/54] fix: responsive layout for action bar --- src/templates/action-bar-block/index.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/templates/action-bar-block/index.vue b/src/templates/action-bar-block/index.vue index a1cdd12dc..68eb71282 100644 --- a/src/templates/action-bar-block/index.vue +++ b/src/templates/action-bar-block/index.vue @@ -40,7 +40,7 @@ diff --git a/src/views/EdgeApplications/EditView.vue b/src/views/EdgeApplications/EditView.vue index b685de78c..c8a41fe5c 100644 --- a/src/views/EdgeApplications/EditView.vue +++ b/src/views/EdgeApplications/EditView.vue @@ -68,7 +68,6 @@ return { fieldName, message } } - const loadEdgeApplication = async () => { return props.edgeApplication } diff --git a/src/views/EdgeFirewall/FormFields/FormFieldsEdgeFirewall.vue b/src/views/EdgeFirewall/FormFields/FormFieldsEdgeFirewall.vue index ab406cd53..76a027ad3 100644 --- a/src/views/EdgeFirewall/FormFields/FormFieldsEdgeFirewall.vue +++ b/src/views/EdgeFirewall/FormFields/FormFieldsEdgeFirewall.vue @@ -134,7 +134,8 @@ Select an item from the list and then use the arrows to move it between the available and - selected domains boxes. Use the double-line arrows to move all items or press the ctrl or command keys to select multiple items. + selected domains boxes. Use the double-line arrows to move all items or press the + ctrl or command keys to select multiple items. diff --git a/src/views/TeamsPermissions/FormFields/FormFieldsTeamPermissions.vue b/src/views/TeamsPermissions/FormFields/FormFieldsTeamPermissions.vue index c0227f44c..7eebf6e5d 100644 --- a/src/views/TeamsPermissions/FormFields/FormFieldsTeamPermissions.vue +++ b/src/views/TeamsPermissions/FormFields/FormFieldsTeamPermissions.vue @@ -119,7 +119,8 @@ Select an item from the list and then use the arrows to move it between the available and - selected permissions boxes. Use the double-line arrows to move all items or press the ctrl or command keys to select multiple items. + selected permissions boxes. Use the double-line arrows to move all items or press the + ctrl or command keys to select multiple items. From 8086178acaa74a693bf5947c42ece6591200e30e Mon Sep 17 00:00:00 2001 From: peterpaulo-azion Date: Fri, 15 Mar 2024 16:22:48 -0300 Subject: [PATCH 11/54] chore: lint all files --- src/App.vue | 2 +- .../analytics/trackers/ProductTracker.js | 46 +++++++++---------- src/plugins/analytics/trackers/index.js | 7 +-- src/stores/account.js | 4 +- .../analytics/AnalyticsTrackerAdapter.test.js | 12 ++--- src/views/CreateNew/CreateView.vue | 4 +- .../FormFields/FormFieldsDataStream.vue | 3 +- src/views/EdgeApplications/CreateView.vue | 4 +- src/views/EdgeApplications/EditView.vue | 8 ++-- .../Drawer/index.vue | 4 +- .../Drawer/index.vue | 4 +- .../EditView.vue | 4 +- .../Drawer/index.vue | 4 +- .../EdgeApplicationsOrigins/Drawer/index.vue | 12 ++--- .../Drawer/index.vue | 4 +- .../FormFields/FormFieldsEdgeFirewall.vue | 3 +- .../FormFields/FormFieldsTeamPermissions.vue | 3 +- 17 files changed, 63 insertions(+), 65 deletions(-) diff --git a/src/App.vue b/src/App.vue index cfb3e18f9..da2130e62 100644 --- a/src/App.vue +++ b/src/App.vue @@ -47,4 +47,4 @@ /> - \ No newline at end of file + diff --git a/src/plugins/analytics/trackers/ProductTracker.js b/src/plugins/analytics/trackers/ProductTracker.js index c2d85d855..e0557248b 100644 --- a/src/plugins/analytics/trackers/ProductTracker.js +++ b/src/plugins/analytics/trackers/ProductTracker.js @@ -84,23 +84,23 @@ export class ProductTracker { return this.#trackerAdapter } - /** + /** * @param {Object} payload * @param {AzionProductsNames} payload.productName * @param {String} payload.tab * @returns {AnalyticsTrackerAdapter} */ - productEdited(payload) { - this.#trackerAdapter.addEvent({ - eventName: `Edited ${payload.productName}`, - props: { - tab: payload.tab - } - }) - return this.#trackerAdapter - } + productEdited(payload) { + this.#trackerAdapter.addEvent({ + eventName: `Edited ${payload.productName}`, + props: { + tab: payload.tab + } + }) + return this.#trackerAdapter + } - /** + /** * @param {Object} payload * @param {AzionProductsNames} payload.productName * @param {String} payload.errorType @@ -120,7 +120,7 @@ export class ProductTracker { return this.#trackerAdapter } - /** + /** * @param {Object} payload * @param {AzionProductsNames} payload.productName * @param {String} payload.errorType @@ -128,15 +128,15 @@ export class ProductTracker { * @param {String} payload.errorMessage * @returns {AnalyticsTrackerAdapter} */ - failedToEdit(payload) { - this.#trackerAdapter.addEvent({ - eventName: `Failed to Edit ${payload.productName}`, - props: { - errorType: payload.errorType, - fieldName: payload.fieldName, - errorMessage: payload.errorMessage - } - }) - return this.#trackerAdapter - } + failedToEdit(payload) { + this.#trackerAdapter.addEvent({ + eventName: `Failed to Edit ${payload.productName}`, + props: { + errorType: payload.errorType, + fieldName: payload.fieldName, + errorMessage: payload.errorMessage + } + }) + return this.#trackerAdapter + } } diff --git a/src/plugins/analytics/trackers/index.js b/src/plugins/analytics/trackers/index.js index e85cb74de..39fd5890e 100644 --- a/src/plugins/analytics/trackers/index.js +++ b/src/plugins/analytics/trackers/index.js @@ -3,9 +3,4 @@ import { SignInTracker } from './SignInTracker' import { CreateTracker } from './CreateTracker' import { ProductTracker } from './ProductTracker' -export { - SignUpTracker, - SignInTracker, - CreateTracker, - ProductTracker -} +export { SignUpTracker, SignInTracker, CreateTracker, ProductTracker } diff --git a/src/stores/account.js b/src/stores/account.js index 70eda5e15..e92cd4d32 100644 --- a/src/stores/account.js +++ b/src/stores/account.js @@ -30,7 +30,7 @@ export const useAccountStore = defineStore({ }, ssoSignUpMethod(state) { return state.identifySignUpProvider - }, + } }, actions: { setAccountData(account) { @@ -50,6 +50,6 @@ export const useAccountStore = defineStore({ }, resetSsoSignUpMethod() { this.identifySignUpProvider = '' - }, + } } }) diff --git a/src/tests/plugins/analytics/AnalyticsTrackerAdapter.test.js b/src/tests/plugins/analytics/AnalyticsTrackerAdapter.test.js index f0828c646..0252ceffc 100644 --- a/src/tests/plugins/analytics/AnalyticsTrackerAdapter.test.js +++ b/src/tests/plugins/analytics/AnalyticsTrackerAdapter.test.js @@ -137,8 +137,8 @@ describe('AnalyticsTrackerAdapter', () => { const { sut, analyticsClientSpy } = makeSut() const productNameMock = 'Azion Product Name Mock' - sut - .product.productEdited({ + sut.product + .productEdited({ productName: productNameMock }) .track() @@ -150,8 +150,8 @@ describe('AnalyticsTrackerAdapter', () => { const { sut, analyticsClientSpy } = makeSut() const productNameMock = 'Azion Product Name Mock' - sut - .product.failedToCreate({ + sut.product + .failedToCreate({ productName: productNameMock }) .track() @@ -166,8 +166,8 @@ describe('AnalyticsTrackerAdapter', () => { const { sut, analyticsClientSpy } = makeSut() const productNameMock = 'Azion Product Name Mock' - sut - .product.failedToEdit({ + sut.product + .failedToEdit({ productName: productNameMock }) .track() diff --git a/src/views/CreateNew/CreateView.vue b/src/views/CreateNew/CreateView.vue index b054975ea..bfbe2de4a 100644 --- a/src/views/CreateNew/CreateView.vue +++ b/src/views/CreateNew/CreateView.vue @@ -321,8 +321,8 @@ } const handleSubmitClick = () => { - tracker - .create.eventClickedToDeploy({ + tracker.create + .eventClickedToDeploy({ isv: solution.value.vendor.slug, version: solution.value.version, versionId: solution.value.latestVersionInstallTemplate, diff --git a/src/views/DataStream/FormFields/FormFieldsDataStream.vue b/src/views/DataStream/FormFields/FormFieldsDataStream.vue index 435bfc2f4..e6afc59bd 100644 --- a/src/views/DataStream/FormFields/FormFieldsDataStream.vue +++ b/src/views/DataStream/FormFields/FormFieldsDataStream.vue @@ -164,7 +164,8 @@ Select an item from the list and then use the arrows to move it between the available and - selected domains boxes. Use the double-line arrows to move all items or press the ctrl or command keys to select multiple items. + selected domains boxes. Use the double-line arrows to move all items or press the + ctrl or command keys to select multiple items. diff --git a/src/views/EdgeApplications/CreateView.vue b/src/views/EdgeApplications/CreateView.vue index 507598fec..aafc7b930 100644 --- a/src/views/EdgeApplications/CreateView.vue +++ b/src/views/EdgeApplications/CreateView.vue @@ -101,8 +101,8 @@ const handleTrackFailedCreation = (error) => { const { fieldName, message } = checkError(error) - tracker - .product.failedToCreate({ + tracker.product + .failedToCreate({ productName: 'Edge Application', errorType: 'api', fieldName: fieldName.trim(), diff --git a/src/views/EdgeApplications/EditView.vue b/src/views/EdgeApplications/EditView.vue index 3db83222c..520868a4c 100644 --- a/src/views/EdgeApplications/EditView.vue +++ b/src/views/EdgeApplications/EditView.vue @@ -65,16 +65,16 @@ } const handleTrackSuccessEdit = () => { - tracker - .product.productEdited({ + tracker.product + .productEdited({ productName: 'Edge Application', tab: 'mainSettings' }) .track() } const handleTrackFailEdit = () => { - tracker - .product.failedToEdit({ + tracker.product + .failedToEdit({ productName: 'Edge Application' }) .track() diff --git a/src/views/EdgeApplicationsCacheSettings/Drawer/index.vue b/src/views/EdgeApplicationsCacheSettings/Drawer/index.vue index 2d042c045..24cc9932d 100644 --- a/src/views/EdgeApplicationsCacheSettings/Drawer/index.vue +++ b/src/views/EdgeApplicationsCacheSettings/Drawer/index.vue @@ -161,8 +161,8 @@ } const handleTrackSuccessEdit = () => { - tracker - .product.productEdited({ + tracker.product + .productEdited({ productName: 'Edge Application', tab: 'cacheSettings' }) diff --git a/src/views/EdgeApplicationsDeviceGroups/Drawer/index.vue b/src/views/EdgeApplicationsDeviceGroups/Drawer/index.vue index 79fc87410..c6bd511aa 100644 --- a/src/views/EdgeApplicationsDeviceGroups/Drawer/index.vue +++ b/src/views/EdgeApplicationsDeviceGroups/Drawer/index.vue @@ -75,8 +75,8 @@ return deviceGroup } const handleTrackSuccessEdit = () => { - tracker - .product.productEdited({ + tracker.product + .productEdited({ productName: 'Edge Application', tab: 'deviceGroups' }) diff --git a/src/views/EdgeApplicationsErrorResponses/EditView.vue b/src/views/EdgeApplicationsErrorResponses/EditView.vue index cac881260..463aa339d 100644 --- a/src/views/EdgeApplicationsErrorResponses/EditView.vue +++ b/src/views/EdgeApplicationsErrorResponses/EditView.vue @@ -41,8 +41,8 @@ }) } const handleTrackSuccessEdit = () => { - tracker - .product.productEdited({ + tracker.product + .productEdited({ productName: 'Edge Application', tab: 'errorResponses' }) diff --git a/src/views/EdgeApplicationsFunctions/Drawer/index.vue b/src/views/EdgeApplicationsFunctions/Drawer/index.vue index 2381ad18a..15dbfaaaa 100644 --- a/src/views/EdgeApplicationsFunctions/Drawer/index.vue +++ b/src/views/EdgeApplicationsFunctions/Drawer/index.vue @@ -91,8 +91,8 @@ emit('onSuccess') } const handleTrackSuccessEdit = () => { - tracker - .product.productEdited({ + tracker.product + .productEdited({ productName: 'Edge Application', tab: 'functions' }) diff --git a/src/views/EdgeApplicationsOrigins/Drawer/index.vue b/src/views/EdgeApplicationsOrigins/Drawer/index.vue index 51e46dab8..e3221d673 100644 --- a/src/views/EdgeApplicationsOrigins/Drawer/index.vue +++ b/src/views/EdgeApplicationsOrigins/Drawer/index.vue @@ -186,8 +186,8 @@ } const handleTrackEdit = () => { - tracker - .product.productEdited({ + tracker.product + .productEdited({ productName: 'Origin' }) .product.productEdited({ @@ -230,8 +230,8 @@ const handleFailedEditOrigin = (error) => { const { fieldName, message } = checkError(error) - tracker - .product.failedToEdit({ + tracker.product + .failedToEdit({ productName: 'Origin', errorMessage: message, fieldName: fieldName, @@ -244,8 +244,8 @@ const handleFailedCreateOrigin = (error) => { const { fieldName, message } = checkError(error) - tracker - .product.failedToCreate({ + tracker.product + .failedToCreate({ productName: 'Origin', errorType: 'api', fieldName: fieldName.trim(), diff --git a/src/views/EdgeApplicationsRulesEngine/Drawer/index.vue b/src/views/EdgeApplicationsRulesEngine/Drawer/index.vue index 9c1747c4d..f30feaf08 100644 --- a/src/views/EdgeApplicationsRulesEngine/Drawer/index.vue +++ b/src/views/EdgeApplicationsRulesEngine/Drawer/index.vue @@ -165,8 +165,8 @@ closeDrawerCreate() } const handleTrackSuccessEdit = () => { - tracker - .product.productEdited({ + tracker.product + .productEdited({ productName: 'Edge Application', tab: 'rulesEngine' }) diff --git a/src/views/EdgeFirewall/FormFields/FormFieldsEdgeFirewall.vue b/src/views/EdgeFirewall/FormFields/FormFieldsEdgeFirewall.vue index ab406cd53..76a027ad3 100644 --- a/src/views/EdgeFirewall/FormFields/FormFieldsEdgeFirewall.vue +++ b/src/views/EdgeFirewall/FormFields/FormFieldsEdgeFirewall.vue @@ -134,7 +134,8 @@ Select an item from the list and then use the arrows to move it between the available and - selected domains boxes. Use the double-line arrows to move all items or press the ctrl or command keys to select multiple items. + selected domains boxes. Use the double-line arrows to move all items or press the + ctrl or command keys to select multiple items. diff --git a/src/views/TeamsPermissions/FormFields/FormFieldsTeamPermissions.vue b/src/views/TeamsPermissions/FormFields/FormFieldsTeamPermissions.vue index c0227f44c..7eebf6e5d 100644 --- a/src/views/TeamsPermissions/FormFields/FormFieldsTeamPermissions.vue +++ b/src/views/TeamsPermissions/FormFields/FormFieldsTeamPermissions.vue @@ -119,7 +119,8 @@ Select an item from the list and then use the arrows to move it between the available and - selected permissions boxes. Use the double-line arrows to move all items or press the ctrl or command keys to select multiple items. + selected permissions boxes. Use the double-line arrows to move all items or press the + ctrl or command keys to select multiple items. From 6a64a1fa54a1149cbc595a5bb77eb97f73bc235e Mon Sep 17 00:00:00 2001 From: paulosf0 Date: Tue, 19 Mar 2024 10:14:57 -0300 Subject: [PATCH 12/54] feat: add noProductErrorMessage --- .../edit-edge-application-service.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/services/edge-application-services/edit-edge-application-service.js b/src/services/edge-application-services/edit-edge-application-service.js index 83273e42b..e8b8e1a0c 100644 --- a/src/services/edge-application-services/edit-edge-application-service.js +++ b/src/services/edge-application-services/edit-edge-application-service.js @@ -74,6 +74,12 @@ const adapt = (payload) => { * @returns {string} The result message based on the status code. */ const extractErrorKey = (errorSchema, key) => { + if (key === 'user_has_no_product') { + const noProductErrorMessage = + 'In order to perform this action, you must first have access to the product Tiered Cache' + return `${key}: ${noProductErrorMessage}` + } + if (typeof errorSchema[key] === 'string') { return `${key}: ${errorSchema[key]}` } From 41fafc2ac22c1632b23a15bb6911e733f5534aa8 Mon Sep 17 00:00:00 2001 From: paulosf0 Date: Tue, 19 Mar 2024 16:29:43 -0300 Subject: [PATCH 13/54] feat: add parseInt in behavior.argument --- .../edge-firewall-functions-services/list-functions-service.js | 2 +- .../load-edge-firewall-rules-engine-service.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/services/edge-firewall-functions-services/list-functions-service.js b/src/services/edge-firewall-functions-services/list-functions-service.js index 1f2cbacb5..9a4d37577 100644 --- a/src/services/edge-firewall-functions-services/list-functions-service.js +++ b/src/services/edge-firewall-functions-services/list-functions-service.js @@ -29,7 +29,7 @@ const adapt = (httpResponse) => { name: edgeFirewall.name, lastEditor: edgeFirewall.last_editor, lastModified: edgeFirewall.last_modified, - args: edgeFirewall.args + args: edgeFirewall.json_args } }) diff --git a/src/services/edge-firewall-rules-engine-services/load-edge-firewall-rules-engine-service.js b/src/services/edge-firewall-rules-engine-services/load-edge-firewall-rules-engine-service.js index 396042ab7..e377021be 100644 --- a/src/services/edge-firewall-rules-engine-services/load-edge-firewall-rules-engine-service.js +++ b/src/services/edge-firewall-rules-engine-services/load-edge-firewall-rules-engine-service.js @@ -22,7 +22,7 @@ const parseBehaviors = (behaviors) => { case 'run_function': return { name: behavior.name, - functionId: behavior.argument + functionId: parseInt(behavior.argument) } case 'set_waf_ruleset_and_waf_mode': From 95b8c594da88914035c567699d25a4b221704018 Mon Sep 17 00:00:00 2001 From: paulosf0 Date: Tue, 19 Mar 2024 16:30:45 -0300 Subject: [PATCH 14/54] chore: lint project files --- src/stores/account.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/stores/account.js b/src/stores/account.js index dfbdabb51..92d9fb4c0 100644 --- a/src/stores/account.js +++ b/src/stores/account.js @@ -30,7 +30,7 @@ export const useAccountStore = defineStore({ }, ssoSignUpMethod(state) { return state._ssoSignUpMethod - }, + } }, actions: { setAccountData(account) { @@ -50,6 +50,6 @@ export const useAccountStore = defineStore({ }, resetSsoSignUpMethod() { this._ssoSignUpMethod = '' - }, + } } }) From 31c8f7c550d5be8582ef4a83df1bc0ab8ccd3dec Mon Sep 17 00:00:00 2001 From: Bru Andrade <119969414+bru-andrade@users.noreply.github.com> Date: Tue, 19 Mar 2024 17:01:28 -0300 Subject: [PATCH 15/54] [EDU-4326] chore: final uxw check for edge nodes (#909) * chore: review uxw in edge nodes * chore: format * Apply suggestions from code review --- .../create-service-edge-node-service.js | 2 +- src/templates/empty-results-block/empty-edge-node.vue | 11 +++++++---- .../create-service-edge-node-service.test.js | 2 +- src/views/EdgeNode/FormFields/FormFieldsEdgeNode.vue | 6 ++++-- 4 files changed, 13 insertions(+), 8 deletions(-) diff --git a/src/services/edge-node-service-services/create-service-edge-node-service.js b/src/services/edge-node-service-services/create-service-edge-node-service.js index f84b3c444..2a5e3769d 100644 --- a/src/services/edge-node-service-services/create-service-edge-node-service.js +++ b/src/services/edge-node-service-services/create-service-edge-node-service.js @@ -68,7 +68,7 @@ const parseHttpResponse = (httpResponse) => { switch (httpResponse.statusCode) { case 201: return { - feedback: `Service was added to an edge node`, + feedback: `Service was added to the edge node`, resource: httpResponse.body } case 400: diff --git a/src/templates/empty-results-block/empty-edge-node.vue b/src/templates/empty-results-block/empty-edge-node.vue index edb3a220b..56c0af8ac 100644 --- a/src/templates/empty-results-block/empty-edge-node.vue +++ b/src/templates/empty-results-block/empty-edge-node.vue @@ -5,10 +5,10 @@ >
-

No Edge Node list added

+

No edge nodes have been added

- To begin the Edge Node installation process, you must download the Edge Orchestrator - installation binary of your choice. + To begin the Edge Node installation process, download the appropriate Edge Orchestrator + installation binary.

@@ -47,6 +47,9 @@ props.documentationService() } function downloadOrchestrator() { - window.open('https://downloads.azion.com/darwin/x86_64/edge-orchestrator', '_blank') + window.open( + 'https://www.azion.com/en/documentation/products/guides/deploy/install-orchestrator-agent/', + '_blank' + ) } diff --git a/src/tests/services/edge-node-service-services/create-service-edge-node-service.test.js b/src/tests/services/edge-node-service-services/create-service-edge-node-service.test.js index 8ca3781e4..fd6876a47 100644 --- a/src/tests/services/edge-node-service-services/create-service-edge-node-service.test.js +++ b/src/tests/services/edge-node-service-services/create-service-edge-node-service.test.js @@ -77,7 +77,7 @@ describe('EdgeNodeServices', () => { const { feedback } = await sut(fixtures.mock) - expect(feedback).toBe('Service was added to an edge node') + expect(feedback).toBe('Service was added to the edge node') }) it('Should return an API error to an invalid edge node name', async () => { diff --git a/src/views/EdgeNode/FormFields/FormFieldsEdgeNode.vue b/src/views/EdgeNode/FormFields/FormFieldsEdgeNode.vue index 48d305d88..aec179f9e 100644 --- a/src/views/EdgeNode/FormFields/FormFieldsEdgeNode.vue +++ b/src/views/EdgeNode/FormFields/FormFieldsEdgeNode.vue @@ -48,7 +48,9 @@ :class="{ 'p-invalid': nameError }" class="w-full" /> - + + Give a unique and descriptive name to identify the edge node.

- Preview stage. - This platform is under development. Expect occasional instability or bugs during this - time. + Preview Stage: + The new Azion Console is in preview. You may encounter minor issues during this time. Your + feedback is valuable.

Date: Thu, 21 Mar 2024 11:33:41 -0300 Subject: [PATCH 30/54] [UXE-2582] New Custom Product Icons (#916) * feat: new custom icons * feat: added icons to sidebar * feat: removed unnecessary icon --- src/assets/icons/azionicons.scss | 88 ++++++++++++++++++- src/assets/icons/azionicons.woff2 | Bin 800 -> 7492 bytes src/services/sidebar-menus-services/menus.js | 37 ++++---- 3 files changed, 104 insertions(+), 21 deletions(-) diff --git a/src/assets/icons/azionicons.scss b/src/assets/icons/azionicons.scss index f3f6e0c22..7f1f14a17 100644 --- a/src/assets/icons/azionicons.scss +++ b/src/assets/icons/azionicons.scss @@ -19,8 +19,92 @@ /* Icons */ .ai.ai-x::before { - content: '\0001'; + content: '\ea02'; } .ai.ai-column::before { - content: '\0002'; + content: '\ea03'; +} +.ai.ai-home::before { + content: '\ea04'; +} +.ai.ai-marketplace::before { + content: '\ea05'; +} +.ai.ai-domains::before { + content: '\ea06'; +} +.ai.ai-edge-application::before { + content: '\ea08'; +} +.ai.ai-build-pillar::before { + content: '\ea07'; +} +.ai.ai-variables::before { + content: '\ea09'; +} +.ai.ai-secure-pillar::before { + content: '\ea10'; +} +.ai.ai-edge-firewall::before { + content: '\ea11'; +} +.ai.ai-edge-dns::before { + content: '\ea12'; +} +.ai.ai-deploy-pillar::before { + content: '\ea13'; +} +.ai.ai-edge-nodes::before { + content: '\ea14'; +} +.ai.ai-observe-pillar::before { + content: '\ea15'; +} +.ai.ai-data-stream::before { + content: '\ea16'; +} +.ai.ai-edge-pulse::before { + content: '\ea17'; +} +.ai.ai-real-time-metrics::before { + content: '\ea18'; +} +.ai.ai-real-time-events::before { + content: '\ea19'; +} +.ai.ai-real-time-purge::before { + content: '\ea20'; +} +.ai.ai-edge-libraries::before { + content: '\ea21'; +} +.ai.ai-edge-functions::before { + content: '\ea22'; +} +.ai.ai-edge-services::before { + content: '\ea23'; +} +.ai.ai-digital-certificates::before { + content: '\ea24'; +} +.ai.ai-network-lists::before { + content: '\ea25'; +} +.ai.ai-waf-rules::before { + content: '\ea26'; +} +.ai.ai-store::before { + content: '\ea27'; +} +.ai.ai-edge-storage::before { + content: '\ea28'; +} +.ai.ai-edge-sql::before { + content: '\ea29'; +} +.ai.ai-edge-kv::before { + content: '\ea30'; +} +.ai.ai-edge-orchestrator::before { + content: '\ea31'; } diff --git a/src/assets/icons/azionicons.woff2 b/src/assets/icons/azionicons.woff2 index 51ccf3b44af313d6443782410090ff6769a6ee70..b8637b9dd756b4af333adee6eb3187471e7b9aff 100644 GIT binary patch literal 7492 zcmV-K9lPRpPew8T0RR9103AdC4FCWD05dQE037WA0RR9100000000000000000000 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 OzyS_$fQD4yJ^%oQuylt2 delta 779 zcmV+m1N8jFI-mv^cTYw#009610009Z01W^D000PB0008Zkr*R?f>;p<3V~#Satj~; z0X70813UyE1%?<0fixRu2Ou7YaV)YmBOWvnd~dVt_h%%HV3Fs@#26is)`u9b9UVkQ zsvIeGiVz|vi(O{^w|`l2=@;6`oTmWacqS+jtkp7}35GJkP$?C#3-*GK7}0=nKqzn1 zA}N9r3N1Y%rh5i|dk6s^-uMsj#WF9TexQYJPRO@s*<$ck3I?PoKNxxqFZJYJ7bA+veN* zPu+j-DRaJy_aFW4q9(u7_3lB{YsUsg9vqoBMqplS;K)m!9p;3GABqJZ?(&UEem)Qg z_I~&Je|4RI^=r{AT=-whzW=YatKXxLKu~}J)Y<|7&{Y7^GZgGA_$T&}qd6&=PT?039Mu7obzbxdL>5Ys9Sr^r*#JnaJx%kR19|Iq7sL zXAW~N=jPhU6@#ARs@Xo`niM@KXb5$hK!fI>Nr$6F$D)HyMkk%g-TLEvg?e Date: Thu, 21 Mar 2024 11:35:37 -0300 Subject: [PATCH 31/54] fix: listings without deletion action (#923) --- src/templates/list-table-block/no-header.vue | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/templates/list-table-block/no-header.vue b/src/templates/list-table-block/no-header.vue index 9f51f7df5..9974de055 100644 --- a/src/templates/list-table-block/no-header.vue +++ b/src/templates/list-table-block/no-header.vue @@ -116,7 +116,6 @@ :popup="true" /> { loadData({ page: 1 }) @@ -308,10 +306,6 @@ return actionOptions } - const hasActions = computed(() => { - return menuActionsCounter.value > 0 - }) - const toast = useToast() const loadData = async ({ page }) => { From 3c72f324417a007b35457ad3e3067582cd988f88 Mon Sep 17 00:00:00 2001 From: Erick Costa <45740490+Erick374@users.noreply.github.com> Date: Thu, 21 Mar 2024 13:49:54 -0300 Subject: [PATCH 32/54] [UXE-2513] fix: overwrite z-index (#918) * fix: overwrite z-index * fix: overwrite z-index --- .../FormFields/FormFieldsEdgeApplicationsRulesEngine.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/views/EdgeApplicationsRulesEngine/FormFields/FormFieldsEdgeApplicationsRulesEngine.vue b/src/views/EdgeApplicationsRulesEngine/FormFields/FormFieldsEdgeApplicationsRulesEngine.vue index cf61cc2fc..b8cd35189 100644 --- a/src/views/EdgeApplicationsRulesEngine/FormFields/FormFieldsEdgeApplicationsRulesEngine.vue +++ b/src/views/EdgeApplicationsRulesEngine/FormFields/FormFieldsEdgeApplicationsRulesEngine.vue @@ -743,7 +743,7 @@ {{ item.conditional }} @@ -875,7 +875,7 @@
{{ getBehaviorLabel(behaviorItem) }} From cf65e0b2f14ca7afa35b09d76efe23226c12054f Mon Sep 17 00:00:00 2001 From: Gabriel Lisboa Date: Thu, 21 Mar 2024 14:54:37 -0300 Subject: [PATCH 33/54] feat: custom theme values for password --- .../themes/azion-dark/variables/_form.scss | 6 +- .../themes/azion-light/variables/_form.scss | 8 +-- src/views/Playground/PlaygroundView.vue | 65 +++++++++++-------- 3 files changed, 45 insertions(+), 34 deletions(-) diff --git a/src/assets/themes/scss/themes/azion-dark/variables/_form.scss b/src/assets/themes/scss/themes/azion-dark/variables/_form.scss index 35d4f9fb6..4cbee6292 100644 --- a/src/assets/themes/scss/themes/azion-dark/variables/_form.scss +++ b/src/assets/themes/scss/themes/azion-dark/variables/_form.scss @@ -557,7 +557,7 @@ $editorContentBg: #ffffff; /// Background of a password meter /// @group form -$passwordMeterBg: #dee2e6; +$passwordMeterBg: var(--surface-400); /// Background of a week password /// @group form @@ -565,8 +565,8 @@ $passwordWeakBg: #e53935; /// Background of a medium password /// @group form -$passwordMediumBg: #ffb300; +$passwordMediumBg: #FFB64D; /// Background of a strong password /// @group form -$passwordStrongBg: #43a047; +$passwordStrongBg: #39E478; diff --git a/src/assets/themes/scss/themes/azion-light/variables/_form.scss b/src/assets/themes/scss/themes/azion-light/variables/_form.scss index 623c1f669..a40263d7c 100644 --- a/src/assets/themes/scss/themes/azion-light/variables/_form.scss +++ b/src/assets/themes/scss/themes/azion-light/variables/_form.scss @@ -557,16 +557,16 @@ $editorContentBg: #ffffff; /// Background of a password meter /// @group form -$passwordMeterBg: #dee2e6; +$passwordMeterBg: var(--surface-200); /// Background of a week password /// @group form -$passwordWeakBg: #e53935; +$passwordWeakBg: #EF4040; /// Background of a medium password /// @group form -$passwordMediumBg: #ffb300; +$passwordMediumBg: #C59707; /// Background of a strong password /// @group form -$passwordStrongBg: #43a047; +$passwordStrongBg: #16A34A; diff --git a/src/views/Playground/PlaygroundView.vue b/src/views/Playground/PlaygroundView.vue index 22298b79c..ebc613170 100644 --- a/src/views/Playground/PlaygroundView.vue +++ b/src/views/Playground/PlaygroundView.vue @@ -1,33 +1,44 @@ From 928dc4b545f4878dbb18ffec268eab4660de50c6 Mon Sep 17 00:00:00 2001 From: paulosf0 Date: Thu, 21 Mar 2024 15:17:49 -0300 Subject: [PATCH 34/54] fix: hiding the td of actions --- src/templates/list-table-block/no-header.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/templates/list-table-block/no-header.vue b/src/templates/list-table-block/no-header.vue index 9974de055..ce74cf805 100644 --- a/src/templates/list-table-block/no-header.vue +++ b/src/templates/list-table-block/no-header.vue @@ -69,10 +69,10 @@ -