81 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			81 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /**
 | |
| * vue v3.5.21
 | |
| * (c) 2018-present Yuxi (Evan) You and Vue contributors
 | |
| * @license MIT
 | |
| **/
 | |
| 'use strict';
 | |
| 
 | |
| Object.defineProperty(exports, '__esModule', { value: true });
 | |
| 
 | |
| var compilerDom = require('@vue/compiler-dom');
 | |
| var runtimeDom = require('@vue/runtime-dom');
 | |
| var shared = require('@vue/shared');
 | |
| 
 | |
| function _interopNamespaceDefault(e) {
 | |
|   var n = Object.create(null);
 | |
|   if (e) {
 | |
|     for (var k in e) {
 | |
|       n[k] = e[k];
 | |
|     }
 | |
|   }
 | |
|   n.default = e;
 | |
|   return Object.freeze(n);
 | |
| }
 | |
| 
 | |
| var runtimeDom__namespace = /*#__PURE__*/_interopNamespaceDefault(runtimeDom);
 | |
| 
 | |
| const compileCache = /* @__PURE__ */ Object.create(null);
 | |
| function compileToFunction(template, options) {
 | |
|   if (!shared.isString(template)) {
 | |
|     if (template.nodeType) {
 | |
|       template = template.innerHTML;
 | |
|     } else {
 | |
|       runtimeDom.warn(`invalid template option: `, template);
 | |
|       return shared.NOOP;
 | |
|     }
 | |
|   }
 | |
|   const key = shared.genCacheKey(template, options);
 | |
|   const cached = compileCache[key];
 | |
|   if (cached) {
 | |
|     return cached;
 | |
|   }
 | |
|   if (template[0] === "#") {
 | |
|     const el = document.querySelector(template);
 | |
|     if (!el) {
 | |
|       runtimeDom.warn(`Template element not found or is empty: ${template}`);
 | |
|     }
 | |
|     template = el ? el.innerHTML : ``;
 | |
|   }
 | |
|   const opts = shared.extend(
 | |
|     {
 | |
|       hoistStatic: true,
 | |
|       onError: onError ,
 | |
|       onWarn: (e) => onError(e, true) 
 | |
|     },
 | |
|     options
 | |
|   );
 | |
|   if (!opts.isCustomElement && typeof customElements !== "undefined") {
 | |
|     opts.isCustomElement = (tag) => !!customElements.get(tag);
 | |
|   }
 | |
|   const { code } = compilerDom.compile(template, opts);
 | |
|   function onError(err, asWarning = false) {
 | |
|     const message = asWarning ? err.message : `Template compilation error: ${err.message}`;
 | |
|     const codeFrame = err.loc && shared.generateCodeFrame(
 | |
|       template,
 | |
|       err.loc.start.offset,
 | |
|       err.loc.end.offset
 | |
|     );
 | |
|     runtimeDom.warn(codeFrame ? `${message}
 | |
| ${codeFrame}` : message);
 | |
|   }
 | |
|   const render = new Function("Vue", code)(runtimeDom__namespace);
 | |
|   render._rc = true;
 | |
|   return compileCache[key] = render;
 | |
| }
 | |
| runtimeDom.registerRuntimeCompiler(compileToFunction);
 | |
| 
 | |
| exports.compile = compileToFunction;
 | |
| Object.keys(runtimeDom).forEach(function (k) {
 | |
|   if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) exports[k] = runtimeDom[k];
 | |
| });
 |