deep-package-manager
Version:
DEEP Package Manager
53 lines (45 loc) • 1.16 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.PageLoaderDriver = undefined;
var _AbstractDriver = require('./AbstractDriver');
var _PathIdentifier = require('./Helpers/PathIdentifier.js');
/**
* Custom Content Driver
*/
class PageLoaderDriver extends _AbstractDriver.AbstractDriver {
/**
* @param {Object} loaderConfig
* @param {Object} microservices
*/
constructor(loaderConfig, microservices) {
super();
this._loader = loaderConfig;
this._microservices = microservices;
}
/**
* @param {String} htmlContent
* @returns {String}
*/
inject(htmlContent) {
let path = new _PathIdentifier.PathIdentifier(this._microservices, this._loader.src).getPath();
return this.replaceTags(htmlContent, PageLoaderDriver.TAG_SUFFIX, this._buildImgTag(path, this._loader.alt));
}
/**
*
* @param {String} src
* @param {String} alt
* @returns {String}
*/
_buildImgTag(src, alt) {
return `<img src="${src}" alt="${alt}">`;
}
/**
* @returns {String}
*/
static get TAG_SUFFIX() {
return 'loader';
}
}
exports.PageLoaderDriver = PageLoaderDriver;