28 lines
		
	
	
		
			1021 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			1021 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| import { getDevtoolsGlobalHook, getTarget, isProxyAvailable } from './env.js';
 | |
| import { HOOK_SETUP } from './const.js';
 | |
| import { ApiProxy } from './proxy.js';
 | |
| export * from './api/index.js';
 | |
| export * from './plugin.js';
 | |
| export * from './time.js';
 | |
| export function setupDevtoolsPlugin(pluginDescriptor, setupFn) {
 | |
|     const descriptor = pluginDescriptor;
 | |
|     const target = getTarget();
 | |
|     const hook = getDevtoolsGlobalHook();
 | |
|     const enableProxy = isProxyAvailable && descriptor.enableEarlyProxy;
 | |
|     if (hook && (target.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !enableProxy)) {
 | |
|         hook.emit(HOOK_SETUP, pluginDescriptor, setupFn);
 | |
|     }
 | |
|     else {
 | |
|         const proxy = enableProxy ? new ApiProxy(descriptor, hook) : null;
 | |
|         const list = target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || [];
 | |
|         list.push({
 | |
|             pluginDescriptor: descriptor,
 | |
|             setupFn,
 | |
|             proxy,
 | |
|         });
 | |
|         if (proxy) {
 | |
|             setupFn(proxy.proxiedTarget);
 | |
|         }
 | |
|     }
 | |
| }
 |