{"version":3,"file":"media-audit-log.repository-DbYcgnGr.js","sources":["../../../src/packages/media/media/reference/repository/media-reference.server.data.ts","../../../src/packages/media/media/reference/repository/media-reference.repository.ts","../../../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 { UmbControllerHost } from '@umbraco-cms/backoffice/controller-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 * @class UmbMediaReferenceServerDataSource\r\n * @implements {RepositoryDetailDataSource}\r\n */\r\nexport class UmbMediaReferenceServerDataSource {\r\n\t#host: UmbControllerHost;\r\n\r\n\t/**\r\n\t * Creates an instance of UmbMediaReferenceServerDataSource.\r\n\t * @param {UmbControllerHost} host - The controller host for this controller to be appended to\r\n\t * @memberof UmbMediaReferenceServerDataSource\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 * Fetches the item for the given id from the server\r\n\t * @param {Array} ids\r\n\t * @returns {*}\r\n\t * @memberof UmbMediaReferenceServerDataSource\r\n\t */\r\n\tasync getReferencedBy(id: string, skip = 0, take = 20) {\r\n\t\treturn await tryExecuteAndNotify(this.#host, MediaService.getMediaByIdReferencedBy({ id, skip, take }));\r\n\t}\r\n}\r\n","import { UmbMediaReferenceServerDataSource } from './media-reference.server.data.js';\r\nimport type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';\r\nimport { UmbControllerBase } from '@umbraco-cms/backoffice/class-api';\r\n\r\nexport class UmbMediaReferenceRepository extends UmbControllerBase {\r\n\t#referenceSource: UmbMediaReferenceServerDataSource;\r\n\r\n\tconstructor(host: UmbControllerHost) {\r\n\t\tsuper(host);\r\n\t\tthis.#referenceSource = new UmbMediaReferenceServerDataSource(this);\r\n\t}\r\n\r\n\tasync requestReferencedBy(unique: string, skip = 0, take = 20) {\r\n\t\tif (!unique) throw new Error(`unique is required`);\r\n\t\treturn this.#referenceSource.getReferencedBy(unique, skip, take);\r\n\t}\r\n}\r\n\r\nexport default UmbMediaReferenceRepository;\r\n","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":["UmbMediaReferenceServerDataSource","#host","host","id","skip","take","tryExecuteAndNotify","MediaService","UmbMediaReferenceRepository","UmbControllerBase","#referenceSource","unique","UmbMediaAuditLogServerDataSource","args","data","error","item","UmbMediaAuditLogRepository","UmbRepositoryBase","#dataSource"],"mappings":";;;;AAQO,MAAMA,EAAkC;AAAA,EAC9CC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,YAAYC,GAAyB;AACpC,SAAKD,KAAQC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASd,MAAM,gBAAgBC,GAAYC,IAAO,GAAGC,IAAO,IAAI;AAC/C,WAAA,MAAMC,EAAoB,KAAKL,IAAOM,EAAa,yBAAyB,EAAE,IAAAJ,GAAI,MAAAC,GAAM,MAAAC,EAAK,CAAC,CAAC;AAAA,EAAA;AAExG;ACzBO,MAAMG,UAAoCC,EAAkB;AAAA,EAClEC;AAAA,EAEA,YAAYR,GAAyB;AACpC,UAAMA,CAAI,GACL,KAAAQ,KAAmB,IAAIV,EAAkC,IAAI;AAAA,EAAA;AAAA,EAGnE,MAAM,oBAAoBW,GAAgBP,IAAO,GAAGC,IAAO,IAAI;AAC9D,QAAI,CAACM,EAAc,OAAA,IAAI,MAAM,oBAAoB;AACjD,WAAO,KAAKD,GAAiB,gBAAgBC,GAAQP,GAAMC,CAAI;AAAA,EAAA;AAEjE;ACJO,MAAMO,EAAyF;AAAA,EACrGX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,YAAYC,GAAyB;AACpC,SAAKD,KAAQC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASd,MAAM,YAAYW,GAA8B;AAC/C,UAAM,EAAE,MAAAC,GAAM,OAAAC,EAAM,IAAI,MAAMT;AAAA,MAC7B,KAAKL;AAAA,MACLM,EAAa,qBAAqB;AAAA,QACjC,IAAIM,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,CAACE,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,OAAOF,EAAK,QAAQ,IAGnD,EAAE,OAAAC,EAAM;AAAA,EAAA;AAEjB;AC/CO,MAAME,UACJC,EAET;AAAA,EACCC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,YAAYjB,GAAyB;AACpC,UAAMA,CAAI,GACL,KAAAiB,KAAc,IAAIP,EAAiCV,CAAI;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAS7D,MAAM,gBAAgBW,GAA8B;AAC5C,WAAA,KAAKM,GAAY,YAAYN,CAAI;AAAA,EAAA;AAE1C;"}