1$(function () { 2 3 matriz.ui.components.Plugin = function () { 4 this.init = function (options) { 5 options.version = options.container.attributes['data-matriz-version'].value; 6 options.build = options.container.attributes['data-matriz-build'].value; 7 options.type = options.container.attributes['data-matriz-plugin-type'].value; 8 matriz.ui.components.plugins.loadAsset(options.version, options.build, options.type, 'loader.js').then(function(asset) { 9 matriz.ui.components.plugins[options.type].init(options); 10 }); 11 }; 12 }; 13 14 matriz.ui.components.plugins = { 15 createStyle: function(uri) { 16 var link = document.createElement('link'); 17 var links = document.getElementsByTagName('link')[0]; 18 link.rel = "stylesheet"; 19 link.media = "all"; 20 link.href = uri; 21 links.parentNode.insertBefore(link, links); 22 return link; 23 }, 24 createScript: function(uri) { 25 var script = document.createElement('script'); 26 var scripts = document.getElementsByTagName('script')[0]; 27 script.src = uri; 28 scripts.parentNode.insertBefore(script, scripts); 29 return script; 30 }, 31 createAsset: function(uri) { 32 if (uri.indexOf('.js') > -1) { 33 return this.createScript(uri); 34 } else { 35 return this.createStyle(uri); 36 } 37 }, 38 loadAsset: function(version, build, type, asset) { 39 var versionWithBuild = version.concat(".").concat(build); 40 var uri="/matriz_common/versions/".concat(version).concat("/components/plugin/plugins/").concat(type).concat("/").concat(asset).concat("?").concat(versionWithBuild); 41 var deferred = $.Deferred(); 42 if (this.assets[type] && this.assets[type][asset]) { 43 deferred.resolve(this.assets[type][asset]); 44 } else { 45 var el = this.createAsset(uri); 46 $(el).on("load",(function(el) { 47 this.assets[type] = this.assets[type] || {}; 48 this.assets[type][asset] = el; 49 deferred.resolve(this.assets[type][asset]); 50 }).bind(this, el)); 51 } 52 return deferred.promise(); 53 }, 54 assets : { 55 56 } 57 }; 58});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.