From 43ac630269d66e643e97e5abecfd7bf794cf7047 Mon Sep 17 00:00:00 2001 From: Lukas Hroch Date: Thu, 10 Oct 2024 17:31:36 +0100 Subject: [PATCH] perf(ui): refs & vue nodes when not needed --- .../dialogs/event-notifications.vue | 128 ++++----- .../components/dialogs/select-resource.vue | 27 +- .../associated-foods/associated-food-list.vue | 3 +- .../fdbs/categories/add-category-dialog.vue | 23 +- .../fdbs/categories/category-list.vue | 49 ++-- .../admin/src/components/fdbs/food-search.vue | 4 +- .../fdbs/locales/add-locale-dialog.vue | 27 +- .../components/fdbs/locales/locale-list.vue | 45 ++-- .../fdbs/nutrients/add-nutrient-dialog.vue | 134 ++++------ .../fdbs/nutrients/nutrient-list.vue | 60 ++--- .../parameters/standard-portion.vue | 4 +- .../portion-size-method-list.vue | 8 +- .../components/feedback/cards/card-list.vue | 3 +- .../cards/card-types/nutrient-group.vue | 6 +- .../demographic-group-list.vue | 3 +- .../henry-coefficient-list.vue | 3 +- .../feedback/meals/table-field-list.vue | 3 +- apps/admin/src/components/gallery/gallery.vue | 1 + .../src/components/jobs/polls-job-list.vue | 117 ++++---- .../admin/src/components/lists/color-list.vue | 3 +- apps/admin/src/components/lists/meal-list.vue | 3 +- .../src/components/lists/nutrient-list.vue | 3 +- .../src/components/lists/options-list.vue | 3 +- .../prompts/list/load-prompt-dialog.vue | 54 ++-- .../prompts/list/prompt-list-item.vue | 171 +++++------- .../components/prompts/list/prompt-list.vue | 253 ++++++++---------- .../src/components/securables/securable.vue | 4 +- apps/admin/src/components/user/mfa/mfa.vue | 85 +++--- apps/admin/src/scss/app.scss | 30 +-- .../src/views/authentication/mfa-dialog.vue | 25 +- apps/admin/src/views/fdbs/browse.vue | 6 +- .../src/views/feedback-schemes/browse.vue | 6 +- .../src/views/feedback-schemes/sections.vue | 3 +- apps/admin/src/views/food-groups/browse.vue | 6 +- .../src/views/images/drinkware-sets/edit.vue | 1 + apps/admin/src/views/images/guide-drawer.vue | 1 + apps/admin/src/views/jobs/browse.vue | 6 +- apps/admin/src/views/languages/browse.vue | 6 +- .../views/languages/translations/browse.vue | 3 +- apps/admin/src/views/locales/browse.vue | 6 +- .../src/views/locales/recipe-foods/browse.vue | 4 +- .../locales/recipe-foods/steps-dialog.vue | 76 ++---- .../src/views/locales/split-lists/browse.vue | 61 +++-- .../src/views/locales/split-words/browse.vue | 6 +- .../src/views/locales/synonym-sets/browse.vue | 6 +- .../src/views/nutrient-tables/browse.vue | 6 +- .../admin/src/views/nutrient-types/browse.vue | 6 +- .../admin/src/views/nutrient-units/browse.vue | 6 +- apps/admin/src/views/permissions/browse.vue | 6 +- .../src/views/permissions/roles/browse.vue | 6 +- .../src/views/permissions/users/browse.vue | 6 +- apps/admin/src/views/roles/browse.vue | 6 +- .../src/views/roles/permissions/browse.vue | 6 +- apps/admin/src/views/roles/users/browse.vue | 6 +- apps/admin/src/views/sign-in-logs/browse.vue | 6 +- .../admin/src/views/standard-units/browse.vue | 6 +- .../standard-units/categories/browse.vue | 4 +- .../src/views/standard-units/foods/browse.vue | 4 +- .../views/survey-scheme-prompts/browse.vue | 6 +- .../src/views/survey-scheme-prompts/read.vue | 2 +- .../admin/src/views/survey-schemes/browse.vue | 6 +- .../survey-schemes/data-export/browse.vue | 3 +- .../data-export/data-export-section.vue | 6 +- .../views/survey-schemes/prompts/browse.vue | 4 +- apps/admin/src/views/surveys/browse.vue | 6 +- .../src/views/surveys/overrides/browse.vue | 2 +- .../src/views/surveys/respondents/browse.vue | 4 +- .../src/views/surveys/sessions/browse.vue | 6 +- .../src/views/surveys/submissions/browse.vue | 6 +- apps/admin/src/views/tasks/browse.vue | 5 +- apps/admin/src/views/user/jobs/browse.vue | 6 +- .../user/personal-access-tokens/browse.vue | 3 +- apps/admin/src/views/users/browse.vue | 6 +- .../src/views/users/permissions/browse.vue | 6 +- apps/admin/src/views/users/roles/browse.vue | 6 +- .../elements/CategoryContentsView.vue | 3 +- .../components/elements/FoodSearchResults.vue | 37 --- apps/survey/src/components/elements/index.ts | 1 - .../prompts/partials/EditableFoodList.vue | 4 +- apps/survey/src/scss/app.scss | 8 +- .../src/types/http/admin/nutrient-tables.ts | 14 +- .../common/src/types/http/admin/references.ts | 9 +- .../components/feedback-user-info.vue | 15 +- 83 files changed, 752 insertions(+), 975 deletions(-) delete mode 100644 apps/survey/src/components/elements/FoodSearchResults.vue diff --git a/apps/admin/src/components/dialogs/event-notifications.vue b/apps/admin/src/components/dialogs/event-notifications.vue index 861cb6b2eb..26af4dd505 100644 --- a/apps/admin/src/components/dialogs/event-notifications.vue +++ b/apps/admin/src/components/dialogs/event-notifications.vue @@ -25,70 +25,70 @@ {{ $t('notifications.add') }} - - + + + + + + + + + + + + + + + + + + + + + + diff --git a/apps/admin/src/components/dialogs/select-resource.vue b/apps/admin/src/components/dialogs/select-resource.vue index ebf2c01504..ddc090cecc 100644 --- a/apps/admin/src/components/dialogs/select-resource.vue +++ b/apps/admin/src/components/dialogs/select-resource.vue @@ -41,21 +41,18 @@ @click:clear="clear" /> diff --git a/apps/admin/src/views/survey-schemes/data-export/browse.vue b/apps/admin/src/views/survey-schemes/data-export/browse.vue index 76c8592235..3ee2ef9817 100644 --- a/apps/admin/src/views/survey-schemes/data-export/browse.vue +++ b/apps/admin/src/views/survey-schemes/data-export/browse.vue @@ -48,7 +48,7 @@ @close="close" @update="update" /> - + diff --git a/apps/admin/src/views/users/permissions/browse.vue b/apps/admin/src/views/users/permissions/browse.vue index fe4513f3c9..531a5d5639 100644 --- a/apps/admin/src/views/users/permissions/browse.vue +++ b/apps/admin/src/views/users/permissions/browse.vue @@ -15,7 +15,7 @@ diff --git a/apps/survey/src/components/elements/index.ts b/apps/survey/src/components/elements/index.ts index a5d771aaab..3e4ee9f9c8 100644 --- a/apps/survey/src/components/elements/index.ts +++ b/apps/survey/src/components/elements/index.ts @@ -2,7 +2,6 @@ export { default as CategoryContentsView } from './CategoryContentsView.vue'; export { default as ErrorAlert } from './ErrorAlert.vue'; export { default as ExpansionPanelActions } from './ExpansionPanelActions.vue'; export { default as FoodBrowser } from './FoodBrowser.vue'; -export { default as FoodSearchResults } from './FoodSearchResults.vue'; export { default as ImagePlaceholder } from './ImagePlaceholder.vue'; export { default as InfoAlert } from './InfoAlert.vue'; export { default as MissingAllRecipeIngredients } from './MissingAllRecipeIngredients.vue'; diff --git a/apps/survey/src/components/prompts/partials/EditableFoodList.vue b/apps/survey/src/components/prompts/partials/EditableFoodList.vue index 3b72b74f1a..57d5c55710 100644 --- a/apps/survey/src/components/prompts/partials/EditableFoodList.vue +++ b/apps/survey/src/components/prompts/partials/EditableFoodList.vue @@ -51,11 +51,11 @@ - + ; -export type NutrientTablesResponse = Pagination; - export type NutrientTableEntry = NutrientTableAttributes & { csvMapping: NutrientTableCsvMappingAttributes; csvMappingFields: NutrientTableCsvMappingFieldAttributes[]; @@ -97,7 +93,13 @@ export const nutrientTableRecordRequest = z.object({ nutrients: z.array(z.tuple([z.string(), z.number()])), fields: z.array(z.tuple([z.string(), z.string()])), }); - export type NutrientTableRecordRequest = z.infer; -export type NutrientTableRecordsResponse = Pagination; +export const nutrientTableRecordAttributes = z.object({ + id: z.string(), + name: z.string(), + localName: z.string(), + nutrientTableId: z.string(), + nutrientTableRecordId: z.string(), +}); +export type NutrientTableRecordAttributes = z.infer; diff --git a/packages/common/src/types/http/admin/references.ts b/packages/common/src/types/http/admin/references.ts index e9c9120f09..77924d9aa5 100644 --- a/packages/common/src/types/http/admin/references.ts +++ b/packages/common/src/types/http/admin/references.ts @@ -2,6 +2,7 @@ import { z } from 'zod'; import { languageAttributes } from './languages'; import { systemLocaleAttributes } from './locales'; +import { nutrientTableRecordAttributes } from './nutrient-tables'; import { standardUnitAttributes } from './standard-units'; import { surveyAttributes } from './surveys'; @@ -39,13 +40,7 @@ export const localeReference = systemLocaleAttributes.pick({ }); export type LocaleReference = z.infer; -export const nutrientTableRecordReference = z.object({ - id: z.string(), - nutrientTableId: z.string(), - nutrientTableRecordId: z.string(), - name: z.string(), - localName: z.string(), -}); +export const nutrientTableRecordReference = nutrientTableRecordAttributes; export type NutrientTableRecordReference = z.infer; export const standardUnitReference = standardUnitAttributes.pick({ diff --git a/packages/ui/src/feedback/components/feedback-user-info.vue b/packages/ui/src/feedback/components/feedback-user-info.vue index ff2b104697..858a3af7a0 100644 --- a/packages/ui/src/feedback/components/feedback-user-info.vue +++ b/packages/ui/src/feedback/components/feedback-user-info.vue @@ -18,15 +18,12 @@ {{ $t('feedback.physicalData.change') }} - - + + + + {{ item }} + +