{"version":3,"sources":["shared/provider-logo.js"],"names":["$","initProviderLogos","fn","providerLogo","data","makeLogoAttrs","logoEntityIdentifier","entity","configs","window","logos","displayModeConfigs","map","mc","Object","assign","imageUrl","makeUrl","type","mode","id","fileVersion","sort","a","b","width","sizes","c","sizeSpecifier","join","srcset","i","length","alt","name","src","each","$this","logoData","attrs","attr","includeLink","match","linkUrl","wrap","loadLogos","removeClass","ko","bindingHandlers","update","el","valueAccessor","args"],"mappings":";;AAAAA,EAAE,SAASC,iBAAT,GAA6B;AAC9BD,GAAEE,EAAF,CAAKC,YAAL,GAAoB,UAAUC,IAAV,EAAgB;AACnC;;;AAGA,WAASC,aAAT,CAAuBC,oBAAvB,EAA6C;AAC5C,OAAMC,SAASD,oBAAf;;AAEA,OAAME,UAAUC,OAAOC,KAAP,CAAaC,kBAAb,CACdC,GADc,CACV,UAACC,EAAD;AAAA,WAAQC,OAAOC,MAAP,CAAc,EAAd,EAAkBF,EAAlB,EAAsB;AAClCG,eAAUP,OAAOC,KAAP,CAAaO,OAAb,CAAqBV,OAAOW,IAA5B,EAAkCL,GAAGM,IAArC,EAA2CZ,OAAOa,EAAlD,EAAsDb,OAAOc,WAA7D;AADwB,KAAtB,CAAR;AAAA,IADU,EAIdC,IAJc,CAIT,UAACC,CAAD,EAAIC,CAAJ;AAAA,WAAUD,EAAEE,KAAF,GAAUD,EAAEC,KAAtB;AAAA,IAJS,CAAhB;;AAMA,OAAMC,QAAQlB,QAAQI,GAAR,CAAY,UAACe,CAAD;AAAA,WAAOA,EAAEC,aAAT;AAAA,IAAZ,EAAoCC,IAApC,CAAyC,IAAzC,CAAd;;AAEA,OAAMC,SAAStB,QAAQI,GAAR,CAAY,UAACe,CAAD,EAAII,CAAJ;AAAA,WAC1BA,IAAI,CAAJ,KAAUvB,QAAQwB,MAAlB,GACEL,EAAEX,QADJ,GAEEW,EAAEX,QAAF,GAAa,GAAb,GAAmBW,EAAEF,KAArB,GAA6B,GAHL;AAAA,IAAZ,EAGsBI,IAHtB,CAG2B,IAH3B,CAAf;;AAKA,UAAO;AACNI,SAAK,cAAc1B,OAAO2B,IADpB;AAENJ,YAAQA,MAFF;AAGNJ,WAAOA,KAHD;AAINS,SAAK3B,QAAQ,CAAR,EAAWQ;AAJV,IAAP;AAMA;;AAED,SAAOhB,EAAE,IAAF,EAAQoC,IAAR,CAAa,YAAY;AAC/B,OAAMC,QAAQrC,EAAE,IAAF,CAAd;;AAEA,OAAMsC,WAAWlC,QAAQiC,MAAMjC,IAAN,CAAW,MAAX,CAAzB;AACA,OAAMmC,QAAQlC,cAAciC,QAAd,CAAd;;AAEAD,SAAMG,IAAN,CAAWD,KAAX;;AAEA,OAAME,cAAc,CAACJ,MAAMjC,IAAN,CAAW,mBAAX,KAAmC,EAApC,EAAwCsC,KAAxC,CAA8C,OAA9C,CAApB;;AAEA,OAAID,eAAeH,SAASK,OAA5B,EAAqC;AACpCN,UAAMO,IAAN,6CAAkDN,SAASK,OAA3D;AACA;AACD,GAbM,CAAP;AAcA,EA1CD;;AA4CAlC,QAAOoC,SAAP,GAAmB;AAAA,SAClB7C,EAAE,uCAAF,EACEG,YADF,GAEE2C,WAFF,CAEc,wBAFd,CADkB;AAAA,EAAnB;;AAKA9C,GAAES,OAAOoC,SAAT;;AAEA,KAAIpC,OAAOsC,EAAX,EAAe;AACdA,KAAGC,eAAH,CAAmB7C,YAAnB,GAAkC;AACjC8C,WAAQ,gBAACC,EAAD,EAAKC,aAAL,EAAuB;AAC9B,QAAMC,OAAOD,eAAb;;AAEAnD,MAAEkD,EAAF,EAAM/C,YAAN,CAAmBiD,IAAnB;AACA;AALgC,GAAlC;AAOA;AACD,CA7DD","file":"provider-logo.js","sourcesContent":["$(function initProviderLogos() {\r\n\t$.fn.providerLogo = function (data) {\r\n\t\t/**\r\n\t\t * Effectively duplicates logic defined in ProviderLogo.cs.\r\n\t\t */\r\n\t\tfunction makeLogoAttrs(logoEntityIdentifier) {\r\n\t\t\tconst entity = logoEntityIdentifier;\r\n\r\n\t\t\tconst configs = window.logos.displayModeConfigs\r\n\t\t\t\t.map((mc) => Object.assign({}, mc, {\r\n\t\t\t\t\timageUrl: window.logos.makeUrl(entity.type, mc.mode, entity.id, entity.fileVersion)\r\n\t\t\t\t}))\r\n\t\t\t\t.sort((a, b) => a.width - b.width);\r\n\r\n\t\t\tconst sizes = configs.map((c) => c.sizeSpecifier).join(\", \");\r\n\r\n\t\t\tconst srcset = configs.map((c, i) =>\r\n\t\t\t\ti + 1 === configs.length\r\n\t\t\t\t? c.imageUrl\r\n\t\t\t\t: c.imageUrl + \" \" + c.width + \"w\").join(\", \");\r\n\r\n\t\t\treturn {\r\n\t\t\t\talt: \"Logo for \" + entity.name,\r\n\t\t\t\tsrcset: srcset,\r\n\t\t\t\tsizes: sizes,\r\n\t\t\t\tsrc: configs[0].imageUrl\r\n\t\t\t};\r\n\t\t}\r\n\r\n\t\treturn $(this).each(function () {\r\n\t\t\tconst $this = $(this);\r\n\r\n\t\t\tconst logoData = data || $this.data(\"logo\");\r\n\t\t\tconst attrs = makeLogoAttrs(logoData);\r\n\r\n\t\t\t$this.attr(attrs);\r\n\r\n\t\t\tconst includeLink = ($this.data(\"include-logo-link\") || \"\").match(/true/i);\r\n\r\n\t\t\tif (includeLink && logoData.linkUrl) {\t\t\t\t\r\n\t\t\t\t$this.wrap(``);\r\n\t\t\t}\r\n\t\t});\r\n\t};\r\n\r\n\twindow.loadLogos = () =>\r\n\t\t$(\".provider-logo.provider-logo-unloaded\")\r\n\t\t\t.providerLogo()\r\n\t\t\t.removeClass(\"provider-logo-unloaded\");\r\n\r\n\t$(window.loadLogos);\r\n\r\n\tif (window.ko) {\r\n\t\tko.bindingHandlers.providerLogo = {\r\n\t\t\tupdate: (el, valueAccessor) => {\r\n\t\t\t\tconst args = valueAccessor();\r\n\r\n\t\t\t\t$(el).providerLogo(args);\r\n\t\t\t}\r\n\t\t};\r\n\t}\r\n});\r\n"]}