From 5d0452037994fbabaf826a93d8f27338cd7f5595 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20Lyngs=C3=B8?= Date: Fri, 12 Jan 2024 20:11:12 +0100 Subject: [PATCH] refactor --- .../sorter-group.ts | 4 +-- .../packages/core/sorter/sorter.controller.ts | 35 ++++++++----------- 2 files changed, 17 insertions(+), 22 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/examples/sorter-with-two-containers/sorter-group.ts b/src/Umbraco.Web.UI.Client/examples/sorter-with-two-containers/sorter-group.ts index f62a5f0410..70c077ee6f 100644 --- a/src/Umbraco.Web.UI.Client/examples/sorter-with-two-containers/sorter-group.ts +++ b/src/Umbraco.Web.UI.Client/examples/sorter-with-two-containers/sorter-group.ts @@ -68,9 +68,9 @@ export class ExampleSorterGroup extends UmbElementMixin(LitElement) { this.requestUpdate('_items', oldValue); return true; },*/ - onChange: (newModel) => { + onChange: ({ model }) => { const oldValue = this._items; - this.items = newModel; + this.items = model; this.requestUpdate('_items', oldValue); }, }); diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/sorter/sorter.controller.ts b/src/Umbraco.Web.UI.Client/src/packages/core/sorter/sorter.controller.ts index 65ce46da5b..f6c49d2869 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/sorter/sorter.controller.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/sorter/sorter.controller.ts @@ -75,7 +75,7 @@ type INTERNAL_UmbSorterConfig = { boundarySelector?: string; dataTransferResolver?: (dataTransfer: DataTransfer | null, currentItem: T) => void; onStart?: (argument: { item: T; element: ElementType }) => void; - onChange?: (argument: { item: T; element: ElementType; model: Array }) => void; + onChange?: (argument: { item: T; model: Array }) => void; onContainerChange?: (argument: { item: T; element: ElementType }) => void; onEnd?: (argument: { item: T; element: ElementType }) => void; itemHasNestedContainersResolver?: (element: HTMLElement) => boolean; @@ -93,7 +93,7 @@ type INTERNAL_UmbSorterConfig = { placeholderIsInThisRow: boolean; horizontalPlaceAfter: boolean; }) => void; - performItemMove?: (argument: { item: T; newIndex: number }) => Promise | boolean; + performItemMove?: (argument: { item: T; newIndex: number; oldIndex: number }) => Promise | boolean; performItemInsert?: (argument: { item: T; newIndex: number }) => Promise | boolean; performItemRemove?: (argument: { item: T }) => Promise | boolean; }; @@ -262,7 +262,6 @@ export class UmbSorterController { - console.log('#drag end!'); window.removeEventListener('dragover', this.#handleDragMove); window.removeEventListener('dragend', this.#handleDragEnd); @@ -663,24 +658,24 @@ export class UmbSorterController x !== item).length > 0; } public async moveItemInModel(newIndex: number, element: ElementType, fromCtrl: UmbSorterController) { - const movingItem = fromCtrl.getItemOfElement(element); - if (!movingItem) { + const item = fromCtrl.getItemOfElement(element); + if (!item) { console.error('Could not find item of sync item'); return false; } - if (this.notifyRequestDrop({ item: movingItem }) === false) { + if (this.notifyRequestDrop({ item }) === false) { return false; } @@ -690,10 +685,10 @@ export class UmbSorterController