UNPKG

@progress/telerik-jquery-report-viewer

Version:

Progress® Telerik® Report Viewer for jQuery

40 lines (35 loc) 1.25 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var utils = require('./utils.js'); const TemplateCache = function() { var cache = {}; return { load: function(url, serviceUrl, client) { var p = cache[url]; if (!p) { cache[url] = p = client.get(url).then(function(html) { var templates = {}; var styleSheets = []; var baseUri = utils.rTrim(serviceUrl, "\\/") + "/"; html = utils.replaceAll(html, "{service}/", baseUri); html = utils.replaceAll(html, "{service}", baseUri); var viewerTemplate = $("<div></div>").html(html); Array.from(viewerTemplate.find("template")).forEach((element) => { var $element = $(element); templates[$element.attr("id")] = utils.trim($element.html(), "\n "); }); Array.from(viewerTemplate.find("link")).forEach((element) => { styleSheets.push(utils.trim(element.outerHTML, "\n ")); }); styleSheets = utils.filterUniqueLastOccurrence(styleSheets); return { templates, styleSheets }; }); } return p; } }; }(); exports.TemplateCache = TemplateCache;