{"version":3,"file":"get-multiple.mjs","names":["mediaShareLinksFormatter","formatter"],"sources":["../../../src/services/media-share-links/get-multiple.ts"],"sourcesContent":["import formatter, {\n\tmediaShareLinksFormatter,\n} from \"../../libs/formatters/index.js\";\nimport { MediaShareLinksRepository } from \"../../libs/repositories/index.js\";\nimport type { GetMultipleShareLinksQueryParams } from \"../../schemas/media-share-links.js\";\nimport type { MediaShareLink } from \"../../types/response.js\";\nimport { getBaseUrl } from \"../../utils/helpers/index.js\";\nimport type { ServiceFn } from \"../../utils/services/types.js\";\nimport assertMediaAccess from \"./helpers/assert-media-access.js\";\n\nconst getMultiple: ServiceFn<\n\t[\n\t\t{\n\t\t\tmediaId: number;\n\t\t\tquery: GetMultipleShareLinksQueryParams;\n\t\t},\n\t],\n\t{\n\t\tdata: MediaShareLink[];\n\t\tcount: number;\n\t}\n> = async (context, data) => {\n\tconst mediaAccessRes = await assertMediaAccess(context, {\n\t\tmediaId: data.mediaId,\n\t});\n\tif (mediaAccessRes.error) return mediaAccessRes;\n\n\tconst MediaShareLinks = new MediaShareLinksRepository(\n\t\tcontext.db.client,\n\t\tcontext.config.db,\n\t);\n\n\tconst linksRes = await MediaShareLinks.selectMultipleFiltered({\n\t\tselect: [\n\t\t\t\"id\",\n\t\t\t\"media_id\",\n\t\t\t\"token\",\n\t\t\t\"password\",\n\t\t\t\"expires_at\",\n\t\t\t\"name\",\n\t\t\t\"description\",\n\t\t\t\"created_at\",\n\t\t\t\"updated_at\",\n\t\t\t\"created_by\",\n\t\t\t\"updated_by\",\n\t\t],\n\t\twhere: [{ key: \"media_id\", operator: \"=\", value: data.mediaId }],\n\t\tqueryParams: data.query,\n\t\tvalidation: {\n\t\t\tenabled: true,\n\t\t},\n\t});\n\tif (linksRes.error) return linksRes;\n\n\treturn {\n\t\terror: undefined,\n\t\tdata: {\n\t\t\tdata: mediaShareLinksFormatter.formatMultiple({\n\t\t\t\tlinks: linksRes.data[0],\n\t\t\t\thost: getBaseUrl(context),\n\t\t\t}),\n\t\t\tcount: formatter.parseCount(linksRes.data[1]?.count),\n\t\t},\n\t};\n};\n\nexport default getMultiple;\n"],"mappings":"4QAUA,MAAM,EAWF,MAAO,EAAS,IAAS,CAC5B,IAAM,EAAiB,MAAM,EAAkB,EAAS,CACvD,QAAS,EAAK,OACf,CAAC,EACD,GAAI,EAAe,MAAO,OAAO,EAOjC,IAAM,EAAW,MAAM,IALK,EAC3B,EAAQ,GAAG,OACX,EAAQ,OAAO,EAGqB,CAAC,CAAC,uBAAuB,CAC7D,OAAQ,CACP,KACA,WACA,QACA,WACA,aACA,OACA,cACA,aACA,aACA,aACA,YACD,EACA,MAAO,CAAC,CAAE,IAAK,WAAY,SAAU,IAAK,MAAO,EAAK,OAAQ,CAAC,EAC/D,YAAa,EAAK,MAClB,WAAY,CACX,QAAS,EACV,CACD,CAAC,EAGD,OAFI,EAAS,MAAc,EAEpB,CACN,MAAO,IAAA,GACP,KAAM,CACL,KAAMA,EAAyB,eAAe,CAC7C,MAAO,EAAS,KAAK,GACrB,KAAM,EAAW,CAAO,CACzB,CAAC,EACD,MAAOC,EAAU,WAAW,EAAS,KAAK,EAAE,EAAE,KAAK,CACpD,CACD,CACD"}