{"version":3,"file":"media-audit-log.repository-aXbdezOC.js","sources":["../../../src/packages/media/media/audit-log/repository/media-audit-log.server.data-source.ts","../../../src/packages/media/media/audit-log/repository/media-audit-log.repository.ts"],"sourcesContent":["import type { UmbMediaAuditLogModel } from '../types.js';\r\nimport type { UmbMediaAuditLogType } from '../utils/index.js';\r\nimport type { UmbAuditLogDataSource, UmbAuditLogRequestArgs } from '@umbraco-cms/backoffice/audit-log';\r\nimport type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';\r\nimport type { DirectionModel } from '@umbraco-cms/backoffice/external/backend-api';\r\nimport { MediaService } from '@umbraco-cms/backoffice/external/backend-api';\r\nimport { tryExecuteAndNotify } from '@umbraco-cms/backoffice/resources';\r\n\r\n/**\r\n * Server data source for the Media audit log\r\n * @class UmbAuditLogServerDataSource\r\n */\r\nexport class UmbMediaAuditLogServerDataSource implements UmbAuditLogDataSource {\r\n\t#host: UmbControllerHost;\r\n\r\n\t/**\r\n\t * Creates an instance of UmbAuditLogServerDataSource.\r\n\t * @param {UmbControllerHost} host - The controller host for this controller to be appended to\r\n\t * @memberof UmbAuditLogServerDataSource\r\n\t */\r\n\tconstructor(host: UmbControllerHost) {\r\n\t\tthis.#host = host;\r\n\t}\r\n\r\n\t/**\r\n\t * Get the audit log for a Media\r\n\t * @param {UmbAuditLogRequestArgs} args\r\n\t * @returns {*}\r\n\t * @memberof UmbMediaAuditLogServerDataSource\r\n\t */\r\n\tasync getAuditLog(args: UmbAuditLogRequestArgs) {\r\n\t\tconst { data, error } = await tryExecuteAndNotify(\r\n\t\t\tthis.#host,\r\n\t\t\tMediaService.getMediaByIdAuditLog({\r\n\t\t\t\tid: args.unique,\r\n\t\t\t\torderDirection: args.orderDirection as DirectionModel, // TODO: fix this type cast\r\n\t\t\t\tsinceDate: args.sinceDate,\r\n\t\t\t\tskip: args.skip,\r\n\t\t\t\ttake: args.take,\r\n\t\t\t}),\r\n\t\t);\r\n\r\n\t\tif (data) {\r\n\t\t\tconst mappedItems: Array = data.items.map((item) => {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tuser: { unique: item.user.id },\r\n\t\t\t\t\ttimestamp: item.timestamp,\r\n\t\t\t\t\tlogType: item.logType as UmbMediaAuditLogType, // TODO: fix this type cast\r\n\t\t\t\t\tcomment: item.comment,\r\n\t\t\t\t\tparameters: item.parameters,\r\n\t\t\t\t};\r\n\t\t\t});\r\n\r\n\t\t\treturn { data: { items: mappedItems, total: data.total } };\r\n\t\t}\r\n\r\n\t\treturn { error };\r\n\t}\r\n}\r\n","import type { UmbMediaAuditLogModel } from '../types.js';\r\nimport { UmbMediaAuditLogServerDataSource } from './media-audit-log.server.data-source.js';\r\nimport type { UmbAuditLogRepository, UmbAuditLogRequestArgs } from '@umbraco-cms/backoffice/audit-log';\r\nimport type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';\r\nimport { UmbRepositoryBase } from '@umbraco-cms/backoffice/repository';\r\n\r\n/**\r\n * Repository for the Media audit log\r\n * @class UmbMediaAuditLogRepository\r\n * @augments {UmbRepositoryBase}\r\n */\r\nexport class UmbMediaAuditLogRepository\r\n\textends UmbRepositoryBase\r\n\timplements UmbAuditLogRepository\r\n{\r\n\t#dataSource: UmbMediaAuditLogServerDataSource;\r\n\r\n\t/**\r\n\t * Creates an instance of UmbMediaAuditLogRepository.\r\n\t * @param {UmbControllerHost} host - The controller host for this controller to be appended to\r\n\t * @memberof UmbMediaAuditLogRepository\r\n\t */\r\n\tconstructor(host: UmbControllerHost) {\r\n\t\tsuper(host);\r\n\t\tthis.#dataSource = new UmbMediaAuditLogServerDataSource(host);\r\n\t}\r\n\r\n\t/**\r\n\t * Request the audit log for a Media\r\n\t * @param {UmbAuditLogRequestArgs} args\r\n\t * @returns {*}\r\n\t * @memberof UmbMediaAuditLogRepository\r\n\t */\r\n\tasync requestAuditLog(args: UmbAuditLogRequestArgs) {\r\n\t\treturn this.#dataSource.getAuditLog(args);\r\n\t}\r\n}\r\n"],"names":["UmbMediaAuditLogServerDataSource","#host","host","args","data","error","tryExecuteAndNotify","MediaService","item","UmbMediaAuditLogRepository","UmbRepositoryBase","#dataSource"],"mappings":";;;AAYO,MAAMA,EAAyF;AAAA,EACrGC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,YAAYC,GAAyB;AACpC,SAAKD,KAAQC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASd,MAAM,YAAYC,GAA8B;AAC/C,UAAM,EAAE,MAAAC,GAAM,OAAAC,EAAM,IAAI,MAAMC;AAAA,MAC7B,KAAKL;AAAA,MACLM,EAAa,qBAAqB;AAAA,QACjC,IAAIJ,EAAK;AAAA,QACT,gBAAgBA,EAAK;AAAA;AAAA,QACrB,WAAWA,EAAK;AAAA,QAChB,MAAMA,EAAK;AAAA,QACX,MAAMA,EAAK;AAAA,MACX,CAAA;AAAA,IACF;AAEA,WAAIC,IAWI,EAAE,MAAM,EAAE,OAViCA,EAAK,MAAM,IAAI,CAACI,OAC1D;AAAA,MACN,MAAM,EAAE,QAAQA,EAAK,KAAK,GAAG;AAAA,MAC7B,WAAWA,EAAK;AAAA,MAChB,SAASA,EAAK;AAAA;AAAA,MACd,SAASA,EAAK;AAAA,MACd,YAAYA,EAAK;AAAA,IAClB,EACA,GAEoC,OAAOJ,EAAK,QAAQ,IAGnD,EAAE,OAAAC,EAAM;AAAA,EAAA;AAEjB;AC/CO,MAAMI,UACJC,EAET;AAAA,EACCC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,YAAYT,GAAyB;AACpC,UAAMA,CAAI,GACL,KAAAS,KAAc,IAAIX,EAAiCE,CAAI;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAS7D,MAAM,gBAAgBC,GAA8B;AAC5C,WAAA,KAAKQ,GAAY,YAAYR,CAAI;AAAA,EAAA;AAE1C;"}