32 lines
1.2 KiB
JavaScript
32 lines
1.2 KiB
JavaScript
|
"use strict";
|
||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||
|
exports.addDataAttr = exports.extractId = void 0;
|
||
|
function extractId(href) {
|
||
|
return href.replace(/^[a-z-]+:\/+?[^/]+/, '') // Remove protocol & domain
|
||
|
.replace(/[?&]livereload=\w+/, '') // Remove LiveReload cachebuster
|
||
|
.replace(/^\//, '') // Remove root /
|
||
|
.replace(/\.[a-zA-Z]+$/, '') // Remove simple extension
|
||
|
.replace(/[^.\w-]+/g, '-') // Replace illegal characters
|
||
|
.replace(/\./g, ':'); // Replace dots with colons(for valid id)
|
||
|
}
|
||
|
exports.extractId = extractId;
|
||
|
function addDataAttr(options, tag) {
|
||
|
if (!tag) {
|
||
|
return;
|
||
|
} // in case of tag is null or undefined
|
||
|
for (var opt in tag.dataset) {
|
||
|
if (Object.prototype.hasOwnProperty.call(tag.dataset, opt)) {
|
||
|
if (opt === 'env' || opt === 'dumpLineNumbers' || opt === 'rootpath' || opt === 'errorReporting') {
|
||
|
options[opt] = tag.dataset[opt];
|
||
|
}
|
||
|
else {
|
||
|
try {
|
||
|
options[opt] = JSON.parse(tag.dataset[opt]);
|
||
|
}
|
||
|
catch (_) { }
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
exports.addDataAttr = addDataAttr;
|
||
|
//# sourceMappingURL=utils.js.map
|