{"version":3,"sources":["utils/url-utils.ts"],"names":["ArchiveType","getModuleRelativePath","moduleUrl","relativePath","URL","pathname","appendUrlParams","url","params","name","result","document","baseURI","value","searchParams","has","set","append","getDownloadItemsAsZipUrl","itemIds","ids","toString","logicalUrl","getLogicalUrl","archiveType","pageId","itemId","additionalParams","Page","PageID","Product","Document","Event","ItemID","Image","File","getImageUrl","imageId","this","getProductUrl"],"mappings":"OAASA,WAAkE,KAA/C,gDAEtB,SAAUC,sBAAsBC,EAAmBC,GAErD,OADY,IAAIC,IAAID,EAAcD,CAAS,EAChCG,QACf,CAEM,SAAUC,gBAAgBC,EAAaC,GACzC,IAESC,EAFHC,EAAS,IAAIN,IAAIG,EAAKI,SAASC,OAAO,EAE5C,IAASH,KAAQD,EAAQ,CACrB,IAAMK,EAAQL,EAAOC,GACrBC,EAAOI,aAAaC,IAAIN,CAAI,EACxBC,EAAOI,aAAaE,IAAIP,EAAMI,CAAK,EACnCH,EAAOI,aAAaG,OAAOR,EAAMI,CAAK,C,CAG9C,OAAUH,EAAOL,SAAV,IAAsBK,EAAOI,YACxC,CAEM,SAAUI,yBAAyBC,GACrC,OAAOb,gBAAgB,iBAAkB,CAACc,QAASD,EAAQE,SAAQ,IAAK,CAAC,CAC7E,OAEaC,WACFC,qBAAqBC,EAA0BC,EAAeC,EAAeC,GAEhF,OAAQH,GAEJ,KAAKxB,YAAY4B,KACb,OAAKH,EACEnB,gBAAgB,IAAK,CAAKuB,OAAQJ,EAAS,GAAGE,CAAgB,CAAC,EADhD,GAE1B,KAAK3B,YAAY8B,QACjB,KAAK9B,YAAY+B,SACjB,KAAK/B,YAAYgC,MACb,OAAKN,EACEpB,gBAAgB,+BAAgC,CAAK2B,OAAQP,EAAS,GAAGC,CAAgB,CAAC,EAD3E,GAE1B,KAAK3B,YAAYkC,MACb,OAAKR,EACEpB,gBAAgB,kBAAmB,CAAK2B,OAAQP,EAAS,GAAGC,CAAgB,CAAC,EAD9D,GAE1B,KAAK3B,YAAYmC,KACb,OAAKT,EACEpB,gBAAgB,iBAAkB,CAAK2B,OAAQP,EAAS,GAAGC,CAAgB,CAAC,EAD7D,GAE1B,QACI,MAAO,E,CAEnB,CAEOS,mBAAmBC,EAAiBV,GACvC,OAAOW,KAAKf,cAAcvB,YAAYkC,MAAO,EAAGG,EAASV,CAAgB,CAC7E,CAEOY,qBAAqBb,GACxB,OAAOY,KAAKf,cAAcvB,YAAY8B,QAAS,EAAGJ,CAAM,CAC5D,CAEOR,gCAAgCC,GACnC,OAAOb,gBAAgB,iBAAkB,CAACc,QAASD,EAAQE,SAAQ,IAAK,CAAC,CAC7E,C,QAxDYpB,sBAKAK,gBAaAY,yBAIHI,U","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) ? \n result.searchParams.set(name, value) : \n 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 {\n switch (archiveType)\n {\n case ArchiveType.Page:\n if (!pageId) { return '';}\n return appendUrlParams('/', {...{PageID: pageId}, ...additionalParams});\n case ArchiveType.Product:\n case ArchiveType.Document:\n case ArchiveType.Event:\n if (!itemId) { return '';}\n return appendUrlParams('/Startup/Common/Default.aspx', {...{ItemID: itemId}, ...additionalParams});\n case ArchiveType.Image:\n if (!itemId) { return '';}\n return appendUrlParams('/ViewImage.aspx', {...{ItemID: itemId}, ...additionalParams});\n case ArchiveType.File:\n if (!itemId) { return '';}\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}"]}