{"version":3,"file":"document-item.repository-DmGfbv_q.js","sources":["../../../src/packages/documents/documents/repository/item/document-item.server.data-source.ts","../../../src/packages/documents/documents/repository/item/document-item.repository.ts"],"sourcesContent":["import { UMB_DOCUMENT_ENTITY_TYPE } from '../../entity.js';\r\nimport type { UmbDocumentItemModel } from './types.js';\r\nimport type { DocumentItemResponseModel } from '@umbraco-cms/backoffice/external/backend-api';\r\nimport { DocumentService } from '@umbraco-cms/backoffice/external/backend-api';\r\nimport type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';\r\nimport { UmbItemServerDataSourceBase } from '@umbraco-cms/backoffice/repository';\r\n\r\n/**\r\n * A data source for Document items that fetches data from the server\r\n * @class UmbDocumentItemServerDataSource\r\n * @implements {DocumentTreeDataSource}\r\n */\r\nexport class UmbDocumentItemServerDataSource extends UmbItemServerDataSourceBase<\r\n\tDocumentItemResponseModel,\r\n\tUmbDocumentItemModel\r\n> {\r\n\t/**\r\n\t * Creates an instance of UmbDocumentItemServerDataSource.\r\n\t * @param {UmbControllerHost} host - The controller host for this controller to be appended to\r\n\t * @memberof UmbDocumentItemServerDataSource\r\n\t */\r\n\tconstructor(host: UmbControllerHost) {\r\n\t\tsuper(host, {\r\n\t\t\tgetItems,\r\n\t\t\tmapper,\r\n\t\t});\r\n\t}\r\n}\r\n\r\n/* eslint-disable local-rules/no-direct-api-import */\r\nconst getItems = (uniques: Array) => DocumentService.getItemDocument({ id: uniques });\r\n\r\nconst mapper = (item: DocumentItemResponseModel): UmbDocumentItemModel => {\r\n\treturn {\r\n\t\tdocumentType: {\r\n\t\t\tcollection: item.documentType.collection ? { unique: item.documentType.collection.id } : null,\r\n\t\t\ticon: item.documentType.icon,\r\n\t\t\tunique: item.documentType.id,\r\n\t\t},\r\n\t\tentityType: UMB_DOCUMENT_ENTITY_TYPE,\r\n\t\thasChildren: item.hasChildren,\r\n\t\tisProtected: item.isProtected,\r\n\t\tisTrashed: item.isTrashed,\r\n\t\tname: item.variants[0]?.name, // TODO: this is not correct. We need to get it from the variants. This is a temp solution.\r\n\t\tparent: item.parent ? { unique: item.parent.id } : null,\r\n\t\tunique: item.id,\r\n\t\tvariants: item.variants.map((variant) => {\r\n\t\t\treturn {\r\n\t\t\t\tculture: variant.culture || null,\r\n\t\t\t\tname: variant.name,\r\n\t\t\t\tstate: variant.state,\r\n\t\t\t};\r\n\t\t}),\r\n\t};\r\n};\r\n","import { UmbDocumentItemServerDataSource } from './document-item.server.data-source.js';\r\nimport { UMB_DOCUMENT_ITEM_STORE_CONTEXT } from './document-item.store.context-token.js';\r\nimport type { UmbDocumentItemModel } from './types.js';\r\nimport type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';\r\nimport { UmbItemRepositoryBase } from '@umbraco-cms/backoffice/repository';\r\n\r\nexport class UmbDocumentItemRepository extends UmbItemRepositoryBase {\r\n\tconstructor(host: UmbControllerHost) {\r\n\t\tsuper(host, UmbDocumentItemServerDataSource, UMB_DOCUMENT_ITEM_STORE_CONTEXT);\r\n\t}\r\n}\r\n\r\nexport { UmbDocumentItemRepository as api };\r\n"],"names":["UmbDocumentItemServerDataSource","UmbItemServerDataSourceBase","host","getItems","mapper","uniques","DocumentService","item","UMB_DOCUMENT_ENTITY_TYPE","variant","UmbDocumentItemRepository","UmbItemRepositoryBase","UMB_DOCUMENT_ITEM_STORE_CONTEXT"],"mappings":";;;AAYO,MAAMA,UAAwCC,EAGnD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMD,YAAYC,GAAyB;AACpC,UAAMA,GAAM;AAAA,MACX,UAAAC;AAAA,MACA,QAAAC;AAAA,IAAA,CACA;AAAA,EAAA;AAEH;AAGA,MAAMD,IAAW,CAACE,MAA2BC,EAAgB,gBAAgB,EAAE,IAAID,GAAS,GAEtFD,IAAS,CAACG,OACR;AAAA,EACN,cAAc;AAAA,IACb,YAAYA,EAAK,aAAa,aAAa,EAAE,QAAQA,EAAK,aAAa,WAAW,GAAA,IAAO;AAAA,IACzF,MAAMA,EAAK,aAAa;AAAA,IACxB,QAAQA,EAAK,aAAa;AAAA,EAC3B;AAAA,EACA,YAAYC;AAAA,EACZ,aAAaD,EAAK;AAAA,EAClB,aAAaA,EAAK;AAAA,EAClB,WAAWA,EAAK;AAAA,EAChB,MAAMA,EAAK,SAAS,CAAC,GAAG;AAAA;AAAA,EACxB,QAAQA,EAAK,SAAS,EAAE,QAAQA,EAAK,OAAO,OAAO;AAAA,EACnD,QAAQA,EAAK;AAAA,EACb,UAAUA,EAAK,SAAS,IAAI,CAACE,OACrB;AAAA,IACN,SAASA,EAAQ,WAAW;AAAA,IAC5B,MAAMA,EAAQ;AAAA,IACd,OAAOA,EAAQ;AAAA,EAChB,EACA;AACF;AC/CM,MAAMC,UAAkCC,EAA4C;AAAA,EAC1F,YAAYT,GAAyB;AAC9B,UAAAA,GAAMF,GAAiCY,CAA+B;AAAA,EAAA;AAE9E;"}