diff --git a/api/src/database/migrations/20220308A-add-bookmark-icon-and-color.ts b/api/src/database/migrations/20220308A-add-bookmark-icon-and-color.ts new file mode 100644 index 0000000000..6e60960fcc --- /dev/null +++ b/api/src/database/migrations/20220308A-add-bookmark-icon-and-color.ts @@ -0,0 +1,15 @@ +import { Knex } from 'knex'; + +export async function up(knex: Knex): Promise { + await knex.schema.alterTable('directus_presets', (table) => { + table.string('icon', 30).notNullable().defaultTo('bookmark_outline'); + table.string('color').nullable(); + }); +} + +export async function down(knex: Knex): Promise { + await knex.schema.alterTable('directus_presets', (table) => { + table.dropColumn('icon'); + table.dropColumn('color'); + }); +} diff --git a/api/src/database/system-data/fields/presets.yaml b/api/src/database/system-data/fields/presets.yaml index c79b3f03ec..f955b9910a 100644 --- a/api/src/database/system-data/fields/presets.yaml +++ b/api/src/database/system-data/fields/presets.yaml @@ -33,6 +33,12 @@ fields: - field: bookmark width: half + - field: icon + width: half + + - field: color + width: half + - field: search width: half diff --git a/app/src/composables/use-preset/use-preset.ts b/app/src/composables/use-preset/use-preset.ts index 104e3c075f..824bd4c798 100644 --- a/app/src/composables/use-preset/use-preset.ts +++ b/app/src/composables/use-preset/use-preset.ts @@ -90,6 +90,11 @@ export function usePreset( initLocalPreset(); }); + // update current bookmark title when it is edited in navigation-bookmark + presetsStore.$subscribe(() => { + initLocalPreset(); + }); + const layoutOptions = computed>({ get() { return localPreset.value.layout_options?.[layout.value] || null; diff --git a/app/src/lang/translations/en-US.yaml b/app/src/lang/translations/en-US.yaml index 6e49fc9d84..f56df7b1dc 100644 --- a/app/src/lang/translations/en-US.yaml +++ b/app/src/lang/translations/en-US.yaml @@ -92,11 +92,13 @@ delete_folder: Delete Folder prefix: Prefix suffix: Suffix reset_bookmark: Reset Bookmark -rename_bookmark: Rename Bookmark update_bookmark: Update Bookmark delete_bookmark: Delete Bookmark delete_bookmark_copy: >- Are you sure you want to delete the "{bookmark}" bookmark? This action cannot be undone. +delete_personal_bookmark: Delete Personal Bookmark +delete_role_bookmark: Delete Role Bookmark +delete_global_bookmark: Delete Global Bookmark logoutReason: SIGN_OUT: Signed out SESSION_EXPIRED: Session expired @@ -569,6 +571,11 @@ value_hashed: Value Securely Hashed bookmark_name: Bookmark name... create_bookmark: Create Bookmark edit_bookmark: Edit Bookmark +edit_personal_bookmark: Edit Personal Bookmark +edit_role_bookmark: Edit Role Bookmark +edit_global_bookmark: Edit Global Bookmark +cannot_edit_role_bookmarks: Can't Edit Role Bookmarks +cannot_edit_global_bookmarks: Can't Edit Global Bookmarks bookmarks: Bookmarks presets: Presets unexpected_error: Unexpected Error diff --git a/app/src/modules/content/components/navigation-bookmark.vue b/app/src/modules/content/components/navigation-bookmark.vue index dc936d8b69..12634ecc71 100644 --- a/app/src/modules/content/components/navigation-bookmark.vue +++ b/app/src/modules/content/components/navigation-bookmark.vue @@ -1,46 +1,64 @@