From e721cc56d51843941ad7d4c16e5dc896b89a5f1e Mon Sep 17 00:00:00 2001 From: Sebastian Krupinski Date: Sun, 15 Feb 2026 21:31:57 -0500 Subject: [PATCH] feat: collection rename Signed-off-by: Sebastian Krupinski --- src/services/collectionService.ts | 8 +++++++- src/stores/collectionsStore.ts | 12 ++++++------ 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/services/collectionService.ts b/src/services/collectionService.ts index 08cc711..b255576 100644 --- a/src/services/collectionService.ts +++ b/src/services/collectionService.ts @@ -19,7 +19,7 @@ import type { CollectionInterface, } from '../types/collection'; import { useIntegrationStore } from '@KTXC/stores/integrationStore'; -import { CollectionObject } from '../models'; +import { CollectionObject, CollectionPropertiesObject } from '../models/collection'; /** * Helper to create the right collection model class based on provider identifier @@ -94,6 +94,9 @@ export const collectionService = { * @returns Promise with created collection object */ async create(request: CollectionCreateRequest): Promise { + if (request.properties instanceof CollectionPropertiesObject) { + request.properties = request.properties.toJson(); + } const response = await transceivePost('collection.create', request); return createCollectionObject(response); }, @@ -106,6 +109,9 @@ export const collectionService = { * @returns Promise with updated collection object */ async update(request: CollectionUpdateRequest): Promise { + if (request.properties instanceof CollectionPropertiesObject) { + request.properties = request.properties.toJson(); + } const response = await transceivePost('collection.update', request); return createCollectionObject(response); }, diff --git a/src/stores/collectionsStore.ts b/src/stores/collectionsStore.ts index 2cba247..4071292 100644 --- a/src/stores/collectionsStore.ts +++ b/src/stores/collectionsStore.ts @@ -5,8 +5,8 @@ import { ref, computed, readonly } from 'vue' import { defineStore } from 'pinia' import { collectionService } from '../services' -import { CollectionObject } from '../models/collection' -import type { SourceSelector, ListFilter, ListSort, CollectionMutableProperties } from '../types' +import { CollectionObject, CollectionPropertiesObject } from '../models/collection' +import type { SourceSelector, ListFilter, ListSort } from '../types' export const useCollectionsStore = defineStore('mailCollectionsStore', () => { // State @@ -221,14 +221,14 @@ export const useCollectionsStore = defineStore('mailCollectionsStore', () => { * * @returns Promise with created collection object */ - async function create(provider: string, service: string | number, collection: string | number | null, data: CollectionMutableProperties): Promise { + async function create(provider: string, service: string | number, collection: string | number | null, data: CollectionPropertiesObject): Promise { transceiving.value = true try { const response = await collectionService.create({ provider, service, collection, - properties: data + properties: data }) // Merge created collection into state @@ -255,14 +255,14 @@ export const useCollectionsStore = defineStore('mailCollectionsStore', () => { * * @returns Promise with updated collection object */ - async function update(provider: string, service: string | number, identifier: string | number, data: CollectionMutableProperties): Promise { + async function update(provider: string, service: string | number, identifier: string | number, data: CollectionPropertiesObject): Promise { transceiving.value = true try { const response = await collectionService.update({ provider, service, identifier, - properties: data + properties: data }) // Merge updated collection into state