{"version":3,"sources":["utils/url-utils.ts"],"names":["ArchiveType","getModuleRelativePath","moduleUrl","relativePath","URL","pathname","appendUrlParams","url","params","result","document","baseURI","let","name","value","searchParams","has","set","append","getDownloadItemsAsZipUrl","itemIds","ids","toString","logicalUrl","getLogicalUrl","archiveType","pageId","itemId","additionalParams","Page","PageID","Product","Document","Event","ItemID","ArchiveTypeID","Image","File","getImageUrl","imageId","this","getProductUrl"],"mappings":"OAASA,gBAAmB,gDAEtB,SAAUC,sBAAsBC,EAAmBC,GAErD,OADY,IAAIC,IAAID,EAAcD,GACvBG,SAGT,SAAUC,gBAAgBC,EAAaC,GACzC,MAAMC,EAAS,IAAIL,IAAIG,EAAKG,SAASC,SAErC,IAAKC,IAAIC,KAAQL,EAAQ,CACrB,IAAMM,EAAQN,EAAOK,GACrBJ,EAAOM,aAAaC,IAAIH,GAAQJ,EAAOM,aAAaE,IAAIJ,EAAMC,GAASL,EAAOM,aAAaG,OAAOL,EAAMC,GAG5G,OAAUL,EAAOJ,SAAV,IAAsBI,EAAOM,aAGlC,SAAUI,yBAAyBC,GACrC,OAAOd,gBAAgB,iBAAkB,CAAEe,QAASD,EAAQE,sBAGnDC,WACFC,qBAAqBC,EAA0BC,EAAgBC,EAAgBC,GAClF,OAAQH,GACJ,KAAKzB,YAAY6B,KACb,OAAKH,EAGEpB,gBAAgB,IAAK,CAAOwB,OAAQJ,KAAaE,IAF7C,GAGf,KAAK5B,YAAY+B,QACjB,KAAK/B,YAAYgC,SACjB,KAAKhC,YAAYiC,MACb,OAAKN,EAGErB,gBAAgB,4BAA6B,CAAO4B,OAAQP,EAAQQ,cAAenC,YAAYyB,MAAmBG,IAF9G,GAGf,KAAK5B,YAAYoC,MACb,OAAKT,EAGErB,gBAAgB,kBAAmB,CAAO4B,OAAQP,KAAaC,IAF3D,GAGf,KAAK5B,YAAYqC,KACb,OAAKV,EAGErB,gBAAgB,iBAAkB,CAAO4B,OAAQP,KAAaC,IAF1D,GAGf,QACI,MAAO,IAIZU,mBAAmBC,EAAiBX,GACvC,OAAOY,KAAKhB,cAAcxB,YAAYoC,MAAO,EAAGG,EAASX,GAGtDa,qBAAqBd,GACxB,OAAOa,KAAKhB,cAAcxB,YAAY+B,QAAS,EAAGJ,GAG/CR,gCAAgCC,GACnC,OAAOd,gBAAgB,iBAAkB,CAAEe,QAASD,EAAQE,wBA3DpDrB,sBAKAK,gBAWAa,yBAIHI","file":"url-utils.js","sourcesContent":["import { ArchiveType } from \"../../components-shared/enums/archive-type.js\";\n\nexport function getModuleRelativePath(moduleUrl: string, relativePath: string) {\n const url = new URL(relativePath, moduleUrl);\n return url.pathname;\n}\n\nexport function appendUrlParams(url: string, params: any): string {\n const result = new URL(url, document.baseURI);\n\n for (let name in params) {\n const value = params[name];\n result.searchParams.has(name) ? result.searchParams.set(name, value) : result.searchParams.append(name, value);\n }\n\n return `${result.pathname}?${result.searchParams}`;\n}\n\nexport function getDownloadItemsAsZipUrl(itemIds: number[]): string {\n return appendUrlParams(\"/ViewFile.aspx\", { ids: `[${itemIds.toString()}]` });\n}\n\nexport class logicalUrl {\n public static getLogicalUrl(archiveType: ArchiveType, pageId: number, itemId: number, additionalParams?: any): string {\n switch (archiveType) {\n case ArchiveType.Page:\n if (!pageId) {\n return \"\";\n }\n return appendUrlParams(\"/\", { ...{ PageID: pageId }, ...additionalParams });\n case ArchiveType.Product:\n case ArchiveType.Document:\n case ArchiveType.Event:\n if (!itemId) {\n return \"\";\n }\n return appendUrlParams(\"/Startup/Common/Main.aspx\", { ...{ ItemID: itemId, ArchiveTypeID: ArchiveType[archiveType] }, ...additionalParams });\n case ArchiveType.Image:\n if (!itemId) {\n return \"\";\n }\n return appendUrlParams(\"/ViewImage.aspx\", { ...{ ItemID: itemId }, ...additionalParams });\n case ArchiveType.File:\n if (!itemId) {\n return \"\";\n }\n return appendUrlParams(\"/ViewFile.aspx\", { ...{ ItemID: itemId }, ...additionalParams });\n default:\n return \"\";\n }\n }\n\n public static getImageUrl(imageId: number, additionalParams?: any): string {\n return this.getLogicalUrl(ArchiveType.Image, 0, imageId, additionalParams);\n }\n\n public static getProductUrl(itemId: number): string {\n return this.getLogicalUrl(ArchiveType.Product, 0, itemId);\n }\n\n public static getDownloadItemsAsZipUrl(itemIds: number[]): string {\n return appendUrlParams(\"/ViewFile.aspx\", { ids: `[${itemIds.toString()}]` });\n }\n}\n"]}