refactor(editor): Cleanup template variant experiment (#6929)

* cleanup template variant experiment

* remove template preveting search to render
This commit is contained in:
Ricardo Espinoza 2023-08-15 08:38:28 -04:00 committed by GitHub
parent 7ce05b08c7
commit 6c607635ed
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 28 additions and 61 deletions

View file

@ -525,14 +525,7 @@ export const KEEP_AUTH_IN_NDV_FOR_NODES = [
export const MAIN_AUTH_FIELD_NAME = 'authentication';
export const NODE_RESOURCE_FIELD_NAME = 'resource';
export const TEMPLATES_EXPERIMENT = {
name: '008_template_variants',
control: 'control',
variant: 'variant',
variantIds: ['1932', '1930', '1931', '1933', '1750', '1748', '1435'],
};
export const EXPERIMENTS_TO_TRACK = [TEMPLATES_EXPERIMENT.name];
export const EXPERIMENTS_TO_TRACK = [];
export const NODE_TYPES_EXCLUDED_FROM_OUTPUT_NAME_APPEND = [FILTER_NODE_TYPE];

View file

@ -18,7 +18,7 @@
</template>
<template #content>
<div :class="$style.contentWrapper">
<div :class="$style.filters" v-if="!isFixedListExperiment">
<div :class="$style.filters">
<TemplateFilters
:categories="templatesStore.allCategories"
:sortOnPopulate="areCategoriesPrepopulated"
@ -30,41 +30,35 @@
/>
</div>
<div :class="$style.search">
<template v-if="!isFixedListExperiment">
<n8n-input
:modelValue="search"
:placeholder="$locale.baseText('templates.searchPlaceholder')"
@update:modelValue="onSearchInput"
@blur="trackSearch"
clearable
>
<template #prefix>
<font-awesome-icon icon="search" />
</template>
</n8n-input>
<div
:class="$style.carouselContainer"
v-show="collections.length || loadingCollections"
>
<div :class="$style.header">
<n8n-heading :bold="true" size="medium" color="text-light">
{{ $locale.baseText('templates.collections') }}
<span v-if="!loadingCollections" v-text="`(${collections.length})`" />
</n8n-heading>
</div>
<CollectionsCarousel
:collections="collections"
:loading="loadingCollections"
@openCollection="onOpenCollection"
/>
<n8n-input
:modelValue="search"
:placeholder="$locale.baseText('templates.searchPlaceholder')"
@update:modelValue="onSearchInput"
@blur="trackSearch"
clearable
>
<template #prefix>
<font-awesome-icon icon="search" />
</template>
</n8n-input>
<div :class="$style.carouselContainer" v-show="collections.length || loadingCollections">
<div :class="$style.header">
<n8n-heading :bold="true" size="medium" color="text-light">
{{ $locale.baseText('templates.collections') }}
<span v-if="!loadingCollections" v-text="`(${collections.length})`" />
</n8n-heading>
</div>
</template>
<CollectionsCarousel
:collections="collections"
:loading="loadingCollections"
@openCollection="onOpenCollection"
/>
</div>
<TemplateList
:infinite-scroll-enabled="!isFixedListExperiment"
:infinite-scroll-enabled="true"
:loading="loadingWorkflows"
:total-workflows="totalWorkflows"
:workflows="isFixedListExperiment ? fixedTemplatesList : workflows"
:simple-view="isFixedListExperiment"
:workflows="workflows"
@loadMore="onLoadMore"
@openTemplate="onOpenTemplate"
/>
@ -96,7 +90,7 @@ import type {
} from '@/Interface';
import type { IDataObject } from 'n8n-workflow';
import { setPageTitle } from '@/utils';
import { TEMPLATES_EXPERIMENT, VIEWS } from '@/constants';
import { VIEWS } from '@/constants';
import { debounceHelper } from '@/mixins/debounce';
import { useSettingsStore } from '@/stores/settings.store';
import { useUsersStore } from '@/stores/users.store';
@ -142,17 +136,6 @@ export default defineComponent({
},
computed: {
...mapStores(useSettingsStore, useTemplatesStore, useUIStore, useUsersStore, usePostHog),
isFixedListExperiment() {
return this.posthogStore.isVariantEnabled(
TEMPLATES_EXPERIMENT.name,
TEMPLATES_EXPERIMENT.variant,
);
},
fixedTemplatesList() {
return TEMPLATES_EXPERIMENT.variantIds
.map((id) => this.templatesStore.workflows[id])
.filter(Boolean);
},
totalWorkflows(): number {
return this.templatesStore.getSearchedWorkflowsTotal(this.query);
},
@ -405,15 +388,6 @@ export default defineComponent({
}, 100);
},
async created() {
if (this.isFixedListExperiment) {
// Templates are lazy-loaded so we need to make sure the fixed ids are loaded
TEMPLATES_EXPERIMENT.variantIds.forEach(async (templateId) =>
this.templatesStore.fetchTemplateById(templateId),
);
// Categorization and filtering based on search is not supported if fixed list is enabled
return;
}
if (this.$route.query.search && typeof this.$route.query.search === 'string') {
this.search = this.$route.query.search;
}