{"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","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,GACpBJ,EAAOM,aAAaE,IAAIJ,EAAMC,GAC9BL,EAAOM,aAAaG,OAAOL,EAAMC,GAGzC,OAAUL,EAAOJ,SAAV,IAAsBI,EAAOM,aAGlC,SAAUI,yBAAyBC,GACrC,OAAOd,gBAAgB,iBAAkB,CAACe,QAASD,EAAQE,sBAGlDC,WACFC,qBAAqBC,EAA0BC,EAAeC,EAAeC,GAEhF,OAAQH,GAEJ,KAAKzB,YAAY6B,KACb,OAAKH,EACEpB,gBAAgB,IAAK,CAAKwB,OAAQJ,KAAYE,IAD/B,GAE1B,KAAK5B,YAAY+B,QACjB,KAAK/B,YAAYgC,SACjB,KAAKhC,YAAYiC,MACb,OAAKN,EACErB,gBAAgB,+BAAgC,CAAK4B,OAAQP,KAAYC,IAD1D,GAE1B,KAAK5B,YAAYmC,MACb,OAAKR,EACErB,gBAAgB,kBAAmB,CAAK4B,OAAQP,KAAYC,IAD7C,GAE1B,KAAK5B,YAAYoC,KACb,OAAKT,EACErB,gBAAgB,iBAAkB,CAAK4B,OAAQP,KAAYC,IAD5C,GAE1B,QACI,MAAO,IAIZS,mBAAmBC,EAAiBV,GACvC,OAAOW,KAAKf,cAAcxB,YAAYmC,MAAO,EAAGG,EAASV,GAGtDY,qBAAqBb,GACxB,OAAOY,KAAKf,cAAcxB,YAAY+B,QAAS,EAAGJ,GAG/CR,gCAAgCC,GACnC,OAAOd,gBAAgB,iBAAkB,CAACe,QAASD,EAAQE,wBAvDnDrB,sBAKAK,gBAaAa,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) ? \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}"]}