From 9ba3ea5721d32b9fa7e894b93257e28225b4502a Mon Sep 17 00:00:00 2001 From: leekelleher Date: Mon, 30 Sep 2024 13:38:01 +0100 Subject: [PATCH] Tiptap Link: Configured overlay size --- .../rte/tiptap/extensions/umb/link.extension.ts | 5 ++++- .../rte/tiptap/property-editors/tiptap/manifests.ts | 11 ++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/packages/rte/tiptap/extensions/umb/link.extension.ts b/src/packages/rte/tiptap/extensions/umb/link.extension.ts index 13b907f40e..bbf928d420 100644 --- a/src/packages/rte/tiptap/extensions/umb/link.extension.ts +++ b/src/packages/rte/tiptap/extensions/umb/link.extension.ts @@ -4,6 +4,7 @@ import { UMB_LINK_PICKER_MODAL } from '@umbraco-cms/backoffice/multi-url-picker' import { UMB_MODAL_MANAGER_CONTEXT } from '@umbraco-cms/backoffice/modal'; import type { Editor } from '@umbraco-cms/backoffice/external/tiptap'; import type { UmbLinkPickerLink } from '@umbraco-cms/backoffice/multi-url-picker'; +import type { UUIModalSidebarSize } from '@umbraco-cms/backoffice/external/uui'; export default class UmbTiptapLinkExtensionApi extends UmbTiptapToolbarElementApiBase { override async execute(editor?: Editor) { @@ -12,8 +13,10 @@ export default class UmbTiptapLinkExtensionApi extends UmbTiptapToolbarElementAp const data = { config: {}, index: null }; const value = { link }; + const overlaySize = this.configuration?.getValueByAlias('overlaySize') ?? 'small'; + const modalManager = await this.getContext(UMB_MODAL_MANAGER_CONTEXT); - const modalHandler = modalManager.open(this, UMB_LINK_PICKER_MODAL, { data, value }); + const modalHandler = modalManager.open(this, UMB_LINK_PICKER_MODAL, { data, value, modal: { size: overlaySize } }); if (!modalHandler) return; diff --git a/src/packages/rte/tiptap/property-editors/tiptap/manifests.ts b/src/packages/rte/tiptap/property-editors/tiptap/manifests.ts index e3c51f2e65..bb41303d90 100644 --- a/src/packages/rte/tiptap/property-editors/tiptap/manifests.ts +++ b/src/packages/rte/tiptap/property-editors/tiptap/manifests.ts @@ -49,8 +49,17 @@ export const manifests: Array = [ weight: 40, config: [{ alias: 'min', value: 0 }], }, + { + alias: 'overlaySize', + label: 'Overlay Size', + description: 'Select the width of the overlay (link picker)', + propertyEditorUiAlias: 'Umb.PropertyEditorUi.OverlaySize', + weight: 50, + }, + ], + defaultData: [ + { alias: 'overlaySize', value: 'medium' }, ], - defaultData: [], }, }, },