diff --git a/app/src/lang/translations/en-US.yaml b/app/src/lang/translations/en-US.yaml index 011cc48c92..74b0929f75 100644 --- a/app/src/lang/translations/en-US.yaml +++ b/app/src/lang/translations/en-US.yaml @@ -611,6 +611,7 @@ add_new: Add New from_collection: 'From “{collection}” Collection' create_new: Create New all: All +no_layout_collection_selected_yet: No layout/collection selected yet batch_delete_confirm: >- No items have been selected | Are you sure you want to delete this item? This action can not be undone. | Are you sure you want to delete these {count} diff --git a/app/src/modules/settings/routes/presets/item.vue b/app/src/modules/settings/routes/presets/item.vue index f57debb4b5..535e917f26 100644 --- a/app/src/modules/settings/routes/presets/item.vue +++ b/app/src/modules/settings/routes/presets/item.vue @@ -53,13 +53,7 @@
- +
+ > + + + + + + + {{ $t('no_layout_collection_selected_yet') }} +
@@ -148,7 +158,7 @@ export default defineComponent({ const { loading: rolesLoading, roles } = useRoles(); const { loading: presetLoading, preset } = usePreset(); const { fields } = useForm(); - const { edits, hasEdits, initialValues, values, layoutQuery, layoutOptions } = useValues(); + const { edits, hasEdits, initialValues, values, layoutQuery, layoutOptions, updateFilters } = useValues(); const { save, saving } = useSave(); const { deleting, deleteAndQuit, confirmDelete } = useDelete(); @@ -171,6 +181,7 @@ export default defineComponent({ deleteAndQuit, confirmDelete, marked, + updateFilters, }; function useSave() { @@ -316,7 +327,14 @@ export default defineComponent({ }, }); - return { edits, initialValues, values, layoutQuery, layoutOptions, hasEdits }; + return { edits, initialValues, values, layoutQuery, layoutOptions, hasEdits, updateFilters }; + + function updateFilters(newFilters: Filter) { + edits.value = { + ...edits.value, + filters: newFilters, + }; + } } function usePreset() { @@ -447,8 +465,7 @@ export default defineComponent({ value: collection.collection, })) .filter((option) => { - if (option.value.startsWith('directus_')) - return systemCollectionWhiteList.includes(option.value); + if (option.value.startsWith('directus_')) return systemCollectionWhiteList.includes(option.value); return true; }), diff --git a/app/src/views/private/components/filter-sidebar-detail/filter-input.vue b/app/src/views/private/components/filter-sidebar-detail/filter-input.vue index 4fe2a06a3b..bbf1a48f4f 100644 --- a/app/src/views/private/components/filter-sidebar-detail/filter-input.vue +++ b/app/src/views/private/components/filter-sidebar-detail/filter-input.vue @@ -47,14 +47,7 @@ @@ -66,7 +59,7 @@ import { FilterOperator } from '@/types'; export default defineComponent({ props: { value: { - type: [String, Boolean], + type: [String, Number, Boolean], required: true, }, type: { @@ -83,7 +76,7 @@ export default defineComponent({ }, }, setup(props, { emit }) { - const _value = computed({ + const _value = computed({ get() { return props.value; },