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
 | 
