PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB` /* MIT License http://www.opensource.org/licenses/mit-license.php */ "use strict"; const RuntimeGlobals = require("../RuntimeGlobals"); const Template = require("../Template"); const HelperRuntimeModule = require("./HelperRuntimeModule"); class CreateScriptUrlRuntimeModule extends HelperRuntimeModule { constructor() { super("trusted types"); } /** * @returns {string} runtime code */ generate() { const { compilation } = this; const { runtimeTemplate, outputOptions } = compilation; const { trustedTypes } = outputOptions; const fn = RuntimeGlobals.createScriptUrl; if (!trustedTypes) { // Skip Trusted Types logic. return Template.asString([ `${fn} = ${runtimeTemplate.returningFunction("url", "url")};` ]); } return Template.asString([ "var policy;", `${fn} = ${runtimeTemplate.basicFunction("url", [ "// Create Trusted Type policy if Trusted Types are available and the policy doesn't exist yet.", "if (policy === undefined) {", Template.indent([ "policy = {", Template.indent([ `createScriptURL: ${runtimeTemplate.returningFunction( "url", "url" )}` ]), "};", 'if (typeof trustedTypes !== "undefined" && trustedTypes.createPolicy) {', Template.indent([ `policy = trustedTypes.createPolicy(${JSON.stringify( trustedTypes.policyName )}, policy);` ]), "}" ]), "}", "return policy.createScriptURL(url);" ])};` ]); } } module.exports = CreateScriptUrlRuntimeModule;