@acorex/modules 19.4.10 → 19.4.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/content-management/README.md +3 -0
- package/content-management/index.d.ts +6 -0
- package/content-management/lib/const.d.ts +19 -0
- package/content-management/lib/content-management.module.d.ts +7 -0
- package/content-management/lib/entity.provider.d.ts +10 -0
- package/content-management/lib/menu.provider.d.ts +5 -0
- package/content-management/lib/permission-definition.provider.d.ts +4 -0
- package/content-management/lib/search-command.provider.d.ts +4 -0
- package/content-management/lib/setting.provider.d.ts +4 -0
- package/document-management/lib/features/shared/document-manager.service.d.ts +3 -0
- package/fesm2022/acorex-modules-content-management-acorex-modules-content-management-C23PlUCn.mjs +392 -0
- package/fesm2022/acorex-modules-content-management-acorex-modules-content-management-C23PlUCn.mjs.map +1 -0
- package/fesm2022/acorex-modules-content-management-promotion.entity-D3qRwZhQ.mjs +892 -0
- package/fesm2022/acorex-modules-content-management-promotion.entity-D3qRwZhQ.mjs.map +1 -0
- package/fesm2022/acorex-modules-content-management.mjs +2 -0
- package/fesm2022/acorex-modules-content-management.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-lAGMGi3Y.mjs → acorex-modules-document-management-acorex-modules-document-management-_tXLNsja.mjs} +20 -20
- package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-_tXLNsja.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-attachment-widget.component-DieghltT.mjs → acorex-modules-document-management-attachment-widget.component-BVOXu-Jt.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-attachment-widget.component-DieghltT.mjs.map → acorex-modules-document-management-attachment-widget.component-BVOXu-Jt.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-Ddzknhp0.mjs → acorex-modules-document-management-create-folder-dialog.component-DRj1LyK3.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-Ddzknhp0.mjs.map → acorex-modules-document-management-create-folder-dialog.component-DRj1LyK3.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-details-view.component-irEPa71J.mjs → acorex-modules-document-management-details-view.component-llMxeeFn.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-details-view.component-irEPa71J.mjs.map → acorex-modules-document-management-details-view.component-llMxeeFn.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-drive-choose.component-eAqk3eca.mjs → acorex-modules-document-management-drive-choose.component-DDepk8Hb.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-drive-choose.component-eAqk3eca.mjs.map → acorex-modules-document-management-drive-choose.component-DDepk8Hb.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-drive.component-TNwvgpB_.mjs → acorex-modules-document-management-drive.component-BQ2w-PZw.mjs} +3 -2
- package/fesm2022/acorex-modules-document-management-drive.component-BQ2w-PZw.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-large-icons-view.component-iBkydbXJ.mjs → acorex-modules-document-management-large-icons-view.component-9Q0LX8M-.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-large-icons-view.component-iBkydbXJ.mjs.map → acorex-modules-document-management-large-icons-view.component-9Q0LX8M-.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-BUnwhB1D.mjs → acorex-modules-document-management-large-tiles-view.component-CyqKSkZY.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-BUnwhB1D.mjs.map → acorex-modules-document-management-large-tiles-view.component-CyqKSkZY.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-list-view.component-Bu6EA_LC.mjs → acorex-modules-document-management-list-view.component-CpXtdrMZ.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-list-view.component-Bu6EA_LC.mjs.map → acorex-modules-document-management-list-view.component-CpXtdrMZ.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-permission-definition.provider-D0O5DPux.mjs → acorex-modules-document-management-permission-definition.provider-DZni4b4s.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-permission-definition.provider-D0O5DPux.mjs.map → acorex-modules-document-management-permission-definition.provider-DZni4b4s.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-CSnz9s0C.mjs → acorex-modules-document-management-rename-node-dialog.component-hcrBZ7h2.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-CSnz9s0C.mjs.map → acorex-modules-document-management-rename-node-dialog.component-hcrBZ7h2.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-small-icons-view.component-BvgWgPdU.mjs → acorex-modules-document-management-small-icons-view.component-y9M40s9q.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-small-icons-view.component-BvgWgPdU.mjs.map → acorex-modules-document-management-small-icons-view.component-y9M40s9q.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-CGAmXmDZ.mjs → acorex-modules-document-management-small-tiles-view.component-Ck8m3hZE.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-CGAmXmDZ.mjs.map → acorex-modules-document-management-small-tiles-view.component-Ck8m3hZE.mjs.map} +1 -1
- package/fesm2022/acorex-modules-document-management.mjs +1 -1
- package/fesm2022/{acorex-modules-platform-management-acorex-modules-platform-management-l00277iI.mjs → acorex-modules-platform-management-acorex-modules-platform-management-B8aACrqL.mjs} +229 -1225
- package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-B8aACrqL.mjs.map +1 -0
- package/fesm2022/{acorex-modules-platform-management-list-version.component-CbjbxadS.mjs → acorex-modules-platform-management-list-version.component-DhSicYd3.mjs} +2 -2
- package/fesm2022/{acorex-modules-platform-management-list-version.component-CbjbxadS.mjs.map → acorex-modules-platform-management-list-version.component-DhSicYd3.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-platform-management-settings.provider-DKwQuq9_.mjs → acorex-modules-platform-management-settings.provider-CnGAUpof.mjs} +2 -2
- package/fesm2022/{acorex-modules-platform-management-settings.provider-DKwQuq9_.mjs.map → acorex-modules-platform-management-settings.provider-CnGAUpof.mjs.map} +1 -1
- package/fesm2022/acorex-modules-platform-management.mjs +1 -1
- package/package.json +5 -1
- package/platform-management/lib/const.d.ts +0 -6
- package/platform-management/lib/entities/data-source/data-source.types.d.ts +1 -2
- package/platform-management/lib/entities/index.d.ts +0 -1
- package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-lAGMGi3Y.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-drive.component-TNwvgpB_.mjs.map +0 -1
- package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-l00277iI.mjs.map +0 -1
- package/platform-management/lib/entities/promotion/index.d.ts +0 -4
- package/platform-management/lib/features/promotion/components/index.d.ts +0 -1
- /package/{platform-management → content-management}/lib/entities/promotion/promotion.datasource.d.ts +0 -0
- /package/{platform-management → content-management}/lib/entities/promotion/promotion.entity.d.ts +0 -0
- /package/{platform-management → content-management}/lib/entities/promotion/promotion.service.d.ts +0 -0
- /package/{platform-management → content-management}/lib/entities/promotion/promotion.types.d.ts +0 -0
- /package/{platform-management → content-management}/lib/features/promotion/components/promotion-slot/promotion-slot.component.d.ts +0 -0
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-content-management-promotion.entity-D3qRwZhQ.mjs","sources":["../../../../libs/modules/content-management/src/lib/entities/promotion/promotion.entity.ts"],"sourcesContent":["import {\n AXPEntity,\n AXPEntityCommandScope,\n AXPEntityQueryType,\n createAllQueryView,\n createQueryView,\n } from '@acorex/platform/common';\n import { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\n import { Injector } from '@angular/core';\n import { RootConfig } from '../../const';\n import { AXPFileListItem } from '@acorex/platform/core';\n import { AXPFileStorageService, AXPFileStorageInfo } from '@acorex/platform/common';\nimport { AXMAppPromotionService } from './promotion.service';\n \n /**\n * Deeply sanitizes an object for storage in IndexedDB by removing non-serializable content\n */\n function sanitizeForStorage(obj: any): any {\n if (!obj) {\n return obj;\n }\n \n // Handle primitive values\n if (typeof obj !== 'object') {\n return obj;\n }\n \n // Handle arrays\n if (Array.isArray(obj)) {\n return obj.map(item => sanitizeForStorage(item));\n }\n \n // Handle Date objects\n if (obj instanceof Date) {\n return obj;\n }\n \n // Handle File objects specially\n if (obj instanceof File) {\n // File objects are handled separately, return as is\n return obj;\n }\n \n // Handle Blob objects\n if (obj instanceof Blob) {\n // Blob objects are handled separately\n return obj;\n }\n \n // Handle regular objects\n const cleanedObj: any = {};\n \n for (const [key, value] of Object.entries(obj)) {\n // Skip functions, symbols and other non-serializable types\n if (typeof value === 'function' || typeof value === 'symbol') {\n continue;\n }\n \n // Handle null values\n if (value === null) {\n cleanedObj[key] = null;\n continue;\n }\n \n // Recursively sanitize objects\n if (typeof value === 'object') {\n cleanedObj[key] = sanitizeForStorage(value);\n } else {\n cleanedObj[key] = value;\n }\n }\n \n return cleanedObj;\n }\n \n export async function promotionEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(AXMAppPromotionService);\n const fileStorageService = injector.get(AXPFileStorageService);\n const i18n = RootConfig.config.i18n;\n \n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.promotion.name,\n source: '',\n title: RootConfig.entities.promotion.title,\n formats: {\n individual: RootConfig.entities.promotion.title,\n plural: RootConfig.entities.promotion.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'promotion',\n title: 'Promotion',\n },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n schema: {\n dataType: 'uuid',\n hidden: true,\n nullable: false,\n readonly: true,\n unique: {\n enabled: true,\n },\n },\n options: {\n sort: {\n enabled: true,\n },\n },\n },\n {\n name: 'title',\n title: `t(\"title\", { scope: \"common\" })`,\n groupId: 'promotion',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n options: {\n sort: {\n enabled: true,\n },\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: true,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'body',\n title: `t(\"body\", { scope: \"${i18n}\" })`,\n groupId: 'promotion',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'imageId',\n title: `t(\"Gallery\", { scope: \"${i18n}\" })`,\n groupId: 'promotion',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.fileUploader,\n options: {\n multiple: true,\n \n },\n },\n },\n },\n {\n name: 'contentType',\n title: `t(\"contentType\", { scope: \"${i18n}\" })`,\n groupId: 'promotion',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n { title: 'Media', name: 'media' },\n { title: 'Text', name: 'text' },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n options: {\n sort: {\n enabled: true,\n },\n filter: {\n advance: {\n enabled: true,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n // {\n // name: 'shape',\n // title: `t(\"shape\", { scope: \"${i18n}\" })`,\n // groupId: 'promotion',\n // schema: {\n // dataType: 'string',\n // interface: {\n // type: AXPWidgetsCatalog.select,\n // options: {\n // valueField: 'name',\n // textField: 'title',\n // dataSource: [\n // { title: 'Circle', name: 'circle' },\n // { title: 'Square', name: 'square' },\n // ],\n // direction: 'horizontal',\n // multiple: false,\n // accept: '',\n // },\n // },\n // },\n // validations: [\n // {\n // rule: 'required',\n // },\n // ],\n // },\n {\n name: 'placement',\n title: `t(\"placement\", { scope: \"${i18n}\" })`,\n groupId: 'promotion',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n {\n title: 'Side Menu Footer',\n name: 'side-menu-footer',\n options: [\n {\n type: 'text-editor',\n mode: 'edit',\n path: 'name',\n options: {\n placeholder: 'Name',\n defaultValue: 'test',\n },\n },\n ],\n },\n {\n title: 'Side Menu Header',\n name: 'side-menu-header',\n options: [\n {\n type: 'text-editor',\n mode: 'edit',\n path: 'name',\n options: {\n placeholder: 'Name',\n defaultValue: 'test',\n },\n },\n ],\n },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n // {\n // name: \"metadaata\",\n // title: \"Meta Data\",\n // groupId: 'promotion',\n // schema: {\n // dataType: 'object',\n // interface: {\n // type: AXPWidgetsCatalog.text,\n // // children: \"{{ context.eval('placement').options }}\" as any,\n // },\n // }\n //},\n // {\n // name: 'metadata',\n // title: `Meta Data`,\n // groupId: 'promotion',\n // schema: {\n // dataType: 'object',\n // interface: {\n // type: AXPWidgetsCatalog.blockLayout,\n // children: \"{{ context.eval('placement')?.options ?? [] }}\" as any,\n // },\n // },\n // },\n ],\n columns: [{ name: 'title' }, { name: 'placement' }, { name: 'imageId' }],\n commands: {\n create: {\n execute: async (data: any) => {\n data = sanitizeForStorage(data);\n \n const entityPayload = { ...data };\n const filesToUploadAfterSave: Array<{ fileItem: AXPFileListItem, blob: File }> = [];\n // const originalImageIdArray = Array.isArray(entityPayload.imageId) ? [...entityPayload.imageId] : [];\n \n if (entityPayload.imageId && Array.isArray(entityPayload.imageId)) {\n const processedImageIdForEntitySave: any[] = [];\n for (const fileItem of entityPayload.imageId as AXPFileListItem[]) {\n if (fileItem.source?.kind === 'blob' && fileItem.source.value instanceof Blob) {\n filesToUploadAfterSave.push({ fileItem, blob: fileItem.source.value as File });\n processedImageIdForEntitySave.push({\n tempId: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n type: (fileItem.source.value as File).type, // Type from blob is reliable\n status: 'pending_upload'\n });\n } else if (fileItem.source?.kind === 'fileId' && fileItem.id && typeof fileItem.source.value === 'string') {\n // If it's a fileId, we assume it's already processed. We don't have type directly on AXPFileListItem.\n // We'll reconstruct it from fileStorageService or it should be part of what's saved if needed.\n processedImageIdForEntitySave.push({\n id: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n // type: fileItem.type, // Removed: AXPFileListItem does not have .type\n status: 'uploaded',\n source: { kind: 'fileId', value: fileItem.source.value }\n });\n } else if (fileItem.id && fileItem.name) { // Fallback for items that might be from a previous save\n processedImageIdForEntitySave.push({\n id: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n // type: fileItem.type, // Removed: AXPFileListItem does not have .type\n status: fileItem.status, // Preserve existing status\n source: fileItem.source ? { kind: fileItem.source.kind, value: fileItem.source.value } : undefined\n });\n }\n }\n entityPayload.imageId = processedImageIdForEntitySave;\n }\n \n const savedEntityId = await dataService.insertOne(entityPayload);\n // const entityId = savedEntity.id; // Corrected based on typical service return\n \n const finalImageIdReferences: any[] = (entityPayload.imageId || [])\n .filter((f: any) => f.status !== 'pending_upload');\n \n for (const { fileItem, blob } of filesToUploadAfterSave) {\n try {\n if (!fileStorageService) {\n throw new Error('fileStorageService is not available.');\n }\n const fileStorageInfo: AXPFileStorageInfo = await fileStorageService.save({\n file: blob,\n refId: savedEntityId,\n refType: `${RootConfig.module.name}.${RootConfig.entities.promotion.name}` ,\n category: '',\n name: blob.name,\n });\n \n finalImageIdReferences.push({\n id: fileStorageInfo.fileId,\n name: fileStorageInfo.name || blob.name,\n size: fileStorageInfo.size || blob.size,\n type: fileStorageInfo.mimeType || blob.type,\n status: 'uploaded',\n source: { kind: 'fileId', value: fileStorageInfo.fileId }\n });\n } catch (err: any) { // Typed error\n console.error('Error uploading file to FileStorage for entityId:', savedEntityId, 'file:', fileItem.name, err);\n finalImageIdReferences.push({\n tempId: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n type: (blob as File).type, // Correctly access type from Blob/File\n status: 'upload_failed',\n error: err.message\n });\n }\n }\n \n if (filesToUploadAfterSave.length > 0) {\n let needsUpdate = true;\n if (entityPayload.imageId && entityPayload.imageId.length === finalImageIdReferences.length) {\n const oldIds = entityPayload.imageId.map((f: any) => f.id || f.tempId).sort().join(',');\n const newIds = finalImageIdReferences.map((f: any) => f.id || f.tempId).sort().join(',');\n if (oldIds === newIds && !finalImageIdReferences.some((f: any) => f.status === 'upload_failed')) {\n needsUpdate = false;\n }\n }\n \n if (needsUpdate) {\n // Assuming updateOne takes the ID and an object of fields to update\n await dataService.updateOne(savedEntityId, { imageId: finalImageIdReferences as any });\n }\n }\n \n return { id: savedEntityId };\n },\n },\n delete: {\n execute: async (id: any) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data: any) => {\n const entityId = data.id;\n const filesToUpload: Array<{ fileItem: AXPFileListItem, blob: File }> = [];\n const processedImageReferences: any[] = []; // Will hold final file objects for DB\n \n // Ensure fileStorageService is available (it's injected at the factory level)\n // const fileStorageService = injector.get(AXPFileStorageService); // Already available in this scope from factory\n \n if (data.imageId && Array.isArray(data.imageId)) {\n for (const fileItem of data.imageId as AXPFileListItem[]) {\n if (fileItem.status === 'deleted') {\n // File marked for deletion. Skip.\n // Optionally, you might want to call fileStorageService.delete(fileId) here\n // if fileItem.id points to an existing stored file and actual deletion is needed.\n // For now, we just disassociate it from the entity.\n continue;\n }\n \n if (fileItem.source?.kind === 'blob' && fileItem.source.value instanceof Blob) {\n filesToUpload.push({ fileItem, blob: fileItem.source.value as File });\n // Actual reference will be added to processedImageReferences after successful upload.\n } else if (fileItem.source?.kind === 'fileId' && fileItem.id && typeof fileItem.source.value === 'string') {\n // This is an existing file, keep its reference.\n processedImageReferences.push({\n id: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n status: fileItem.status || 'uploaded', // Default to 'uploaded' if status is missing\n source: { kind: 'fileId', value: fileItem.source.value }\n // 'type' is not typically part of AXPFileListItem for existing fileIds in 'create'\n });\n } else if (fileItem.id && fileItem.name) { \n // Fallback for items that might be from a previous save state (already processed)\n // These are likely already processed files that are being kept.\n processedImageReferences.push({\n id: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n status: fileItem.status || 'uploaded',\n source: fileItem.source ? { kind: fileItem.source.kind, value: fileItem.source.value } : undefined\n });\n }\n // Else: unknown fileItem structure, it will be ignored or you can log an error.\n }\n }\n \n // Upload new files and add their successful/failed info to processedImageReferences\n for (const { fileItem, blob } of filesToUpload) {\n try {\n if (!fileStorageService) {\n throw new Error('fileStorageService is not available.');\n }\n const fileStorageInfo: AXPFileStorageInfo = await fileStorageService.save({\n file: blob,\n refId: entityId, // ID of the entity being updated\n refType: `${RootConfig.module.name}.${RootConfig.entities.promotion.name}`,\n category: '', // Add category if applicable\n name: blob.name,\n });\n \n processedImageReferences.push({\n id: fileStorageInfo.fileId,\n name: fileStorageInfo.name || blob.name,\n size: fileStorageInfo.size || blob.size,\n type: fileStorageInfo.mimeType || blob.type, // Store MIME type\n status: 'uploaded',\n source: { kind: 'fileId', value: fileStorageInfo.fileId }\n });\n } catch (err: any) {\n console.error('Error uploading file to FileStorage during update for entityId:', entityId, 'file:', fileItem.name, err);\n processedImageReferences.push({\n tempId: fileItem.id, // Use fileItem.id if it's a unique temp client-side ID, or generate one\n name: fileItem.name,\n size: fileItem.size,\n type: (blob as File).type,\n status: 'upload_failed',\n error: err.message\n });\n }\n }\n \n // Construct the final data payload for the update.\n // Create a mutable copy of the input data.\n const finalUpdatePayload = { ...data };\n // Replace the original imageId array with the newly processed one.\n finalUpdatePayload.imageId = processedImageReferences;\n \n // Sanitize the entire payload before sending it to dataService.updateOne.\n // This ensures that the processedImageReferences (which are plain objects)\n // and all other fields in the payload are clean and serializable.\n const fullySanitizedPayload = sanitizeForStorage(finalUpdatePayload);\n \n return await dataService.updateOne(entityId, fullySanitizedPayload);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id: string) => {\n try {\n // Debug the incoming ID parameter\n console.log('byKey original id parameter:', id, typeof id);\n \n // Ensure id is a valid key for IndexedDB - needs to be string or number\n let validId: string;\n \n // If id is an object (e.g., from router params or complex structure)\n if (typeof id === 'object' && id !== null) {\n if ('id' in id) {\n validId = String((id as any).id);\n } else {\n validId = String(id);\n }\n console.warn('Converted object id to string:', validId);\n } else if (id === undefined || id === null) {\n console.error('Invalid id parameter: null or undefined');\n return null;\n } else {\n // Convert to string to ensure consistency\n validId = String(id);\n }\n \n // Log the ID being used for the query\n console.log('Fetching record with id:', validId, typeof validId);\n \n try {\n const data = await dataService.getOne(validId);\n console.log('getOne result:', data ? 'Data found' : 'No data found');\n \n // If no data was found\n if (!data) {\n console.warn(`No record found with id: ${validId}`);\n return null;\n }\n \n return data;\n } catch (error) {\n console.error(`Error fetching data with ID ${validId}:`, error);\n // Return null instead of throwing to avoid cascading errors\n return null;\n }\n } catch (error) {\n console.error('Critical error in byKey query:', error);\n return null; // Return null instead of throwing to avoid UI errors\n }\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'promotion',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 1,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 5,\n },\n },\n },\n },\n {\n name: 'imageId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 6,\n },\n },\n },\n },\n {\n name: 'contentType',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n {\n name: 'shape',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 3,\n },\n },\n },\n },\n {\n name: 'placement',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 4,\n },\n },\n },\n },\n {\n name: 'metadata',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'promotion',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 1,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 5,\n },\n },\n },\n },\n {\n name: 'imageId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 6,\n },\n },\n },\n },\n {\n name: 'contentType',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n {\n name: 'shape',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 3,\n },\n },\n },\n },\n {\n name: 'placement',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 4,\n },\n },\n },\n },\n // {\n // name: 'metadata',\n // layout: {\n // positions: {\n // lg: {\n // colSpan: 12,\n // order: 10,\n // },\n // },\n // },\n // },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'promotion',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'imageId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'contentType',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 4,\n },\n },\n },\n },\n {\n name: 'shape',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 5,\n },\n },\n },\n },\n {\n name: 'placement',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 6,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: `t(\"create\", { scope: \"common\" })`,\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 't(\"deleteItems\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 't(\"detail\", { scope: \"common\" })',\n command: 'open-entity',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"delete\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"entity.modify\", { scope: \"common\" })',\n command: 'quick-modify-entity',\n priority: 'secondary',\n type: 'update',\n scope: AXPEntityCommandScope.Individual,\n },\n //TODO: add this to the entity\n {\n title: 't(\"upload.title\", { scope: \"common\" })',\n command: {\n name:'show-file-uploader-popup',\n options:{\n id: '{{ context.eval(\"id\") }}',\n files: '{{ context.eval(\"imageId\") }}',\n multiple: true,\n accept: '.jpg,.jpeg,.png,.gif,.webp',\n key: 'imageId',\n }\n },\n priority: 'secondary',\n type: 'update',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] }),\n createQueryView('media', `t(\"media\", { scope: \"${i18n}\" })`, true, {\n conditions: [\n {\n name: 'contentType.name',\n operator: {\n type: 'equal',\n },\n value: 'media',\n },\n ],\n }),\n createQueryView('text', `t(\"text\", { scope: \"${i18n}\" })`, true, {\n conditions: [\n {\n name: 'contentType.name',\n operator: {\n type: 'equal',\n },\n value: 'text',\n },\n ],\n }),\n ],\n },\n },\n },\n };\n \n return entityDef;\n }\n "],"names":[],"mappings":"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"}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export { a as AXMContentManagementModule, b as AXMEntityProvider, c as AXMMenuProvider, d as AXMSearchCommandProvider, e as AXMSettingProvider, R as RootConfig } from './acorex-modules-content-management-acorex-modules-content-management-C23PlUCn.mjs';
|
2
|
+
//# sourceMappingURL=acorex-modules-content-management.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-content-management.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
@@ -3519,7 +3519,7 @@ class AXMDocumentManagerService {
|
|
3519
3519
|
* Moves a node to another location
|
3520
3520
|
*/
|
3521
3521
|
async moveTo(options) {
|
3522
|
-
const comp = (await import('./acorex-modules-document-management-drive-choose.component-
|
3522
|
+
const comp = (await import('./acorex-modules-document-management-drive-choose.component-DDepk8Hb.mjs')).AXMDocumentDriveChooseComponent;
|
3523
3523
|
const popup = await this.popupService.open(comp, {
|
3524
3524
|
title: `Choose ${options.browseMode == 'file' ? 'File' : 'Folder'}`,
|
3525
3525
|
data: {
|
@@ -3552,7 +3552,7 @@ class AXMDocumentManagerService {
|
|
3552
3552
|
* Copies a node to another location
|
3553
3553
|
*/
|
3554
3554
|
async copyTo(options) {
|
3555
|
-
const comp = (await import('./acorex-modules-document-management-drive-choose.component-
|
3555
|
+
const comp = (await import('./acorex-modules-document-management-drive-choose.component-DDepk8Hb.mjs')).AXMDocumentDriveChooseComponent;
|
3556
3556
|
const popup = await this.popupService.open(comp, {
|
3557
3557
|
title: `Choose ${options.browseMode == 'file' ? 'File' : 'Folder'}`,
|
3558
3558
|
data: {
|
@@ -3600,7 +3600,7 @@ class AXMDocumentManagerService {
|
|
3600
3600
|
* Searches for folders by term within a scope
|
3601
3601
|
*/
|
3602
3602
|
async searchFolders(searchTerm, scope, options) {
|
3603
|
-
const { result: rootNode } = await this.getRoot(scope, options);
|
3603
|
+
const { result: rootNode } = options?.folderId ? await this.getFolder(scope, options.folderId, options) : await this.getRoot(scope, options);
|
3604
3604
|
const folders = await this.folderService.searchFolders(searchTerm, rootNode.id);
|
3605
3605
|
return folders.map((folder) => this.mapFolderDtoToFolderNode(folder));
|
3606
3606
|
}
|
@@ -3608,7 +3608,7 @@ class AXMDocumentManagerService {
|
|
3608
3608
|
* Searches for files by term within a scope
|
3609
3609
|
*/
|
3610
3610
|
async searchFiles(searchTerm, scope, options) {
|
3611
|
-
const { result: rootNode } = await this.getRoot(scope, options);
|
3611
|
+
const { result: rootNode } = options?.folderId ? await this.getFolder(scope, options.folderId, options) : await this.getRoot(scope, options);
|
3612
3612
|
const files = await this.documentService.searchFiles(searchTerm, rootNode.id);
|
3613
3613
|
return files.map((file) => this.mapFileToNode(file));
|
3614
3614
|
}
|
@@ -3831,7 +3831,7 @@ class AXMDocumentManagerService {
|
|
3831
3831
|
* Shows folder edit dialog
|
3832
3832
|
*/
|
3833
3833
|
async showFolderEditDialog(node) {
|
3834
|
-
const comp = (await import('./acorex-modules-document-management-create-folder-dialog.component-
|
3834
|
+
const comp = (await import('./acorex-modules-document-management-create-folder-dialog.component-DRj1LyK3.mjs'))
|
3835
3835
|
.AXMCreateFolderDialog;
|
3836
3836
|
const popup = await this.popupService.open(comp, {
|
3837
3837
|
title: await this.translate.translateAsync('@document-management:actions.update-folder'),
|
@@ -3845,7 +3845,7 @@ class AXMDocumentManagerService {
|
|
3845
3845
|
* Shows create folder dialog
|
3846
3846
|
*/
|
3847
3847
|
async showCreateFolderDialog(parentId) {
|
3848
|
-
const comp = (await import('./acorex-modules-document-management-create-folder-dialog.component-
|
3848
|
+
const comp = (await import('./acorex-modules-document-management-create-folder-dialog.component-DRj1LyK3.mjs'))
|
3849
3849
|
.AXMCreateFolderDialog;
|
3850
3850
|
const popup = await this.popupService.open(comp, {
|
3851
3851
|
title: await this.translate.translateAsync('@document-management:actions.create-folder'),
|
@@ -3859,7 +3859,7 @@ class AXMDocumentManagerService {
|
|
3859
3859
|
* Shows rename popup for a node
|
3860
3860
|
*/
|
3861
3861
|
async showRenamePopup(node) {
|
3862
|
-
const comp = (await import('./acorex-modules-document-management-rename-node-dialog.component-
|
3862
|
+
const comp = (await import('./acorex-modules-document-management-rename-node-dialog.component-hcrBZ7h2.mjs'))
|
3863
3863
|
.AXMRenameNodeDialog;
|
3864
3864
|
const popup = await this.popupService.open(comp, {
|
3865
3865
|
title: 't("actions.rename")',
|
@@ -3885,7 +3885,7 @@ class AXMDocumentManagerService {
|
|
3885
3885
|
* Shows choose file dialog
|
3886
3886
|
*/
|
3887
3887
|
async showChooseFileDialog(scope) {
|
3888
|
-
const comp = (await import('./acorex-modules-document-management-drive-choose.component-
|
3888
|
+
const comp = (await import('./acorex-modules-document-management-drive-choose.component-DDepk8Hb.mjs')).AXMDocumentDriveChooseComponent;
|
3889
3889
|
const result = await this.popupService.open(comp, {
|
3890
3890
|
title: await this.translate.translateAsync('@document-management:actions.choose-from-drive'),
|
3891
3891
|
data: {
|
@@ -5047,13 +5047,13 @@ class AXMDocumentExplorerComponent {
|
|
5047
5047
|
this.showContextMenu = input(true);
|
5048
5048
|
this.view = signal(null);
|
5049
5049
|
this.viewMap = {
|
5050
|
-
list: async () => (await import('./acorex-modules-document-management-list-view.component-
|
5051
|
-
'small-tiles': async () => (await import('./acorex-modules-document-management-small-tiles-view.component-
|
5052
|
-
'large-tiles': async () => (await import('./acorex-modules-document-management-large-tiles-view.component-
|
5053
|
-
details: async () => (await import('./acorex-modules-document-management-details-view.component-
|
5054
|
-
'large-icons': async () => (await import('./acorex-modules-document-management-large-icons-view.component-
|
5055
|
-
'small-icons': async () => (await import('./acorex-modules-document-management-small-icons-view.component-
|
5056
|
-
'attachment': async () => (await import('./acorex-modules-document-management-attachment-widget.component-
|
5050
|
+
list: async () => (await import('./acorex-modules-document-management-list-view.component-CpXtdrMZ.mjs')).AXMDocumentExplorerListViewComponent,
|
5051
|
+
'small-tiles': async () => (await import('./acorex-modules-document-management-small-tiles-view.component-Ck8m3hZE.mjs')).AXMDocumentExplorerSmallTilesViewComponent,
|
5052
|
+
'large-tiles': async () => (await import('./acorex-modules-document-management-large-tiles-view.component-CyqKSkZY.mjs')).AXMDocumentExplorerLargeTilesViewComponent,
|
5053
|
+
details: async () => (await import('./acorex-modules-document-management-details-view.component-llMxeeFn.mjs')).AXMDocumentExplorerDetailsViewComponent,
|
5054
|
+
'large-icons': async () => (await import('./acorex-modules-document-management-large-icons-view.component-9Q0LX8M-.mjs')).AXMDocumentExplorerLargeIconsViewComponent,
|
5055
|
+
'small-icons': async () => (await import('./acorex-modules-document-management-small-icons-view.component-y9M40s9q.mjs')).AXMDocumentExplorerSmallIconsViewComponent,
|
5056
|
+
'attachment': async () => (await import('./acorex-modules-document-management-attachment-widget.component-BVOXu-Jt.mjs')).AXMDocumentExplorerAttachmentComponent,
|
5057
5057
|
};
|
5058
5058
|
this.#effect = effect(() => {
|
5059
5059
|
if (this.vm.loadingFolderId() == null) {
|
@@ -5282,11 +5282,11 @@ function routesFacory() {
|
|
5282
5282
|
children: [
|
5283
5283
|
{
|
5284
5284
|
path: '',
|
5285
|
-
loadComponent: () => import('./acorex-modules-document-management-drive.component-
|
5285
|
+
loadComponent: () => import('./acorex-modules-document-management-drive.component-BQ2w-PZw.mjs').then((c) => c.AXMDocumentDriveComponent),
|
5286
5286
|
},
|
5287
5287
|
{
|
5288
5288
|
path: ':id',
|
5289
|
-
loadComponent: () => import('./acorex-modules-document-management-drive.component-
|
5289
|
+
loadComponent: () => import('./acorex-modules-document-management-drive.component-BQ2w-PZw.mjs').then((c) => c.AXMDocumentDriveComponent),
|
5290
5290
|
},
|
5291
5291
|
],
|
5292
5292
|
},
|
@@ -5331,7 +5331,7 @@ class AXMDocumentManagementModule {
|
|
5331
5331
|
provide: AXP_PERMISSION_DEFINITION_PROVIDER,
|
5332
5332
|
useFactory: async () => {
|
5333
5333
|
const injector = inject(Injector);
|
5334
|
-
const provider = (await import('./acorex-modules-document-management-permission-definition.provider-
|
5334
|
+
const provider = (await import('./acorex-modules-document-management-permission-definition.provider-DZni4b4s.mjs')).AXMPermissionDefinitionProvider;
|
5335
5335
|
return new provider(injector);
|
5336
5336
|
},
|
5337
5337
|
multi: true,
|
@@ -5431,7 +5431,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
|
|
5431
5431
|
provide: AXP_PERMISSION_DEFINITION_PROVIDER,
|
5432
5432
|
useFactory: async () => {
|
5433
5433
|
const injector = inject(Injector);
|
5434
|
-
const provider = (await import('./acorex-modules-document-management-permission-definition.provider-
|
5434
|
+
const provider = (await import('./acorex-modules-document-management-permission-definition.provider-DZni4b4s.mjs')).AXMPermissionDefinitionProvider;
|
5435
5435
|
return new provider(injector);
|
5436
5436
|
},
|
5437
5437
|
multi: true,
|
@@ -5460,4 +5460,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
|
|
5460
5460
|
*/
|
5461
5461
|
|
5462
5462
|
export { AXPDocumentExplorerViewModel as A, AXMFolderService as B, AXMFolderServiceImpl as C, AXMEntityProvider as D, AXMMenuProvider as E, AXMSearchCommandProvider as F, AXMSettingProvider as G, RootConfig as R, AXMDocumentManagerService as a, AXMDocumentExplorerComponent as b, AXMFolderPathBreadcrumbsComponent as c, AXMPermissionsKeys as d, AXMDocumentTypeService as e, AXMDocumentManagementModule as f, documentFactory as g, AXMDocumentManagementDocumentEntityModule as h, AXMDocumentService as i, AXMDocumentServiceImpl as j, documentTypeFactory as k, AXMDocumentManagementDocumentTypeEntityModule as l, AXMDocumentTypeServiceImpl as m, documentTypeMetaDefinitionfactory as n, AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule as o, AXMDocumentManagementDocumentTypeMetaDefinitionEntityService as p, AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl as q, documentTypeMetaValueFactory as r, AXMDocumentManagementDocumentTypeMetaValueEntityModule as s, AXMDocumentManagementDocumentTypeMetaValueEntityService as t, AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl as u, documentTypeStatusDefinitionFactory as v, AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule as w, AXMDocumentManagementDocumentTypeStatusDefinitionEntityService as x, AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl as y, folderFactory as z };
|
5463
|
-
//# sourceMappingURL=acorex-modules-document-management-acorex-modules-document-management-
|
5463
|
+
//# sourceMappingURL=acorex-modules-document-management-acorex-modules-document-management-_tXLNsja.mjs.map
|