@wezom/zz-load
Version:
Lazy loader based on IntersectionObserver API
30 lines (29 loc) • 803 B
JavaScript
;
var __importDefault =
(this && this.__importDefault) ||
function (mod) {
return mod && mod.__esModule ? mod : { default: mod };
};
Object.defineProperty(exports, '__esModule', { value: true });
const data_set_1 = __importDefault(require('../config/data-set'));
function default_1(element) {
const sourcesAttrs = JSON.parse(
element.dataset[data_set_1.default.sourceSources] || 'null'
);
if (Array.isArray(sourcesAttrs)) {
return sourcesAttrs
.filter(
(attrs) =>
typeof attrs === 'object' && attrs !== null && !Array.isArray(attrs)
)
.map((attrs) => {
const source = document.createElement('source');
for (const attr in attrs) {
source.setAttribute(attr, attrs[attr]);
}
return source;
});
}
return [];
}
exports.default = default_1;