@vue/runtime-core 3.2.12 → 3.2.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -141,14 +141,32 @@ function tryWrap(fn) {
141
141
  };
142
142
  }
143
143
 
144
- function setDevtoolsHook(hook) {
144
+ let buffer = [];
145
+ function emit(event, ...args) {
146
+ if (exports.devtools) {
147
+ exports.devtools.emit(event, ...args);
148
+ }
149
+ else {
150
+ buffer.push({ event, args });
151
+ }
152
+ }
153
+ function setDevtoolsHook(hook, target) {
145
154
  exports.devtools = hook;
155
+ if (exports.devtools) {
156
+ exports.devtools.enabled = true;
157
+ buffer.forEach(({ event, args }) => exports.devtools.emit(event, ...args));
158
+ buffer = [];
159
+ }
160
+ else {
161
+ const replay = (target.__VUE_DEVTOOLS_HOOK_REPLAY__ =
162
+ target.__VUE_DEVTOOLS_HOOK_REPLAY__ || []);
163
+ replay.push((newHook) => {
164
+ setDevtoolsHook(newHook, target);
165
+ });
166
+ }
146
167
  }
147
168
  function devtoolsInitApp(app, version) {
148
- // TODO queue if devtools is undefined
149
- if (!exports.devtools)
150
- return;
151
- exports.devtools.emit("app:init" /* APP_INIT */, app, version, {
169
+ emit("app:init" /* APP_INIT */, app, version, {
152
170
  Fragment,
153
171
  Text,
154
172
  Comment,
@@ -156,9 +174,7 @@ function devtoolsInitApp(app, version) {
156
174
  });
157
175
  }
158
176
  function devtoolsUnmountApp(app) {
159
- if (!exports.devtools)
160
- return;
161
- exports.devtools.emit("app:unmount" /* APP_UNMOUNT */, app);
177
+ emit("app:unmount" /* APP_UNMOUNT */, app);
162
178
  }
163
179
  const devtoolsComponentAdded = /*#__PURE__*/ createDevtoolsComponentHook("component:added" /* COMPONENT_ADDED */);
164
180
  const devtoolsComponentUpdated =
@@ -167,27 +183,21 @@ const devtoolsComponentRemoved =
167
183
  /*#__PURE__*/ createDevtoolsComponentHook("component:removed" /* COMPONENT_REMOVED */);
168
184
  function createDevtoolsComponentHook(hook) {
169
185
  return (component) => {
170
- if (!exports.devtools)
171
- return;
172
- exports.devtools.emit(hook, component.appContext.app, component.uid, component.parent ? component.parent.uid : undefined, component);
186
+ emit(hook, component.appContext.app, component.uid, component.parent ? component.parent.uid : undefined, component);
173
187
  };
174
188
  }
175
189
  const devtoolsPerfStart = /*#__PURE__*/ createDevtoolsPerformanceHook("perf:start" /* PERFORMANCE_START */);
176
190
  const devtoolsPerfEnd = /*#__PURE__*/ createDevtoolsPerformanceHook("perf:end" /* PERFORMANCE_END */);
177
191
  function createDevtoolsPerformanceHook(hook) {
178
192
  return (component, type, time) => {
179
- if (!exports.devtools)
180
- return;
181
- exports.devtools.emit(hook, component.appContext.app, component.uid, component, type, time);
193
+ emit(hook, component.appContext.app, component.uid, component, type, time);
182
194
  };
183
195
  }
184
196
  function devtoolsComponentEmit(component, event, params) {
185
- if (!exports.devtools)
186
- return;
187
- exports.devtools.emit("component:emit" /* COMPONENT_EMIT */, component.appContext.app, component, event, params);
197
+ emit("component:emit" /* COMPONENT_EMIT */, component.appContext.app, component, event, params);
188
198
  }
189
199
 
190
- function emit(instance, event, ...rawArgs) {
200
+ function emit$1(instance, event, ...rawArgs) {
191
201
  const props = instance.vnode.props || shared.EMPTY_OBJ;
192
202
  {
193
203
  const { emitsOptions, propsOptions: [propsOptions] } = instance;
@@ -3132,7 +3142,7 @@ function createAppAPI(render, hydrate) {
3132
3142
  app._instance = vnode.component;
3133
3143
  devtoolsInitApp(app, version);
3134
3144
  }
3135
- return vnode.component.proxy;
3145
+ return getExposeProxy(vnode.component) || vnode.component.proxy;
3136
3146
  }
3137
3147
  else {
3138
3148
  warn(`App has already been mounted.\n` +
@@ -3338,14 +3348,14 @@ function createHydrationFunctions(rendererInternals) {
3338
3348
  for (const key in props) {
3339
3349
  if ((forcePatchValue && key.endsWith('value')) ||
3340
3350
  (shared.isOn(key) && !shared.isReservedProp(key))) {
3341
- patchProp(el, key, null, props[key]);
3351
+ patchProp(el, key, null, props[key], false, undefined, parentComponent);
3342
3352
  }
3343
3353
  }
3344
3354
  }
3345
3355
  else if (props.onClick) {
3346
3356
  // Fast path for click listeners (which is most often) to avoid
3347
3357
  // iterating through props.
3348
- patchProp(el, 'onClick', null, props.onClick);
3358
+ patchProp(el, 'onClick', null, props.onClick, false, undefined, parentComponent);
3349
3359
  }
3350
3360
  }
3351
3361
  // vnode / directive hooks
@@ -3558,10 +3568,10 @@ function createHydrationRenderer(options) {
3558
3568
  }
3559
3569
  // implementation
3560
3570
  function baseCreateRenderer(options, createHydrationFns) {
3571
+ const target = shared.getGlobalThis();
3572
+ target.__VUE__ = true;
3561
3573
  {
3562
- const target = shared.getGlobalThis();
3563
- target.__VUE__ = true;
3564
- setDevtoolsHook(target.__VUE_DEVTOOLS_GLOBAL_HOOK__);
3574
+ setDevtoolsHook(target.__VUE_DEVTOOLS_GLOBAL_HOOK__, target);
3565
3575
  }
3566
3576
  const { insert: hostInsert, remove: hostRemove, patchProp: hostPatchProp, createElement: hostCreateElement, createText: hostCreateText, createComment: hostCreateComment, setText: hostSetText, setElementText: hostSetElementText, parentNode: hostParentNode, nextSibling: hostNextSibling, setScopeId: hostSetScopeId = shared.NOOP, cloneNode: hostCloneNode, insertStaticContent: hostInsertStaticContent } = options;
3567
3577
  // Note: functions inside this closure should use `const xxx = () => {}`
@@ -6123,7 +6133,7 @@ function createComponentInstance(vnode, parent, suspense) {
6123
6133
  instance.ctx = createDevRenderContext(instance);
6124
6134
  }
6125
6135
  instance.root = parent ? parent.root : instance;
6126
- instance.emit = emit.bind(null, instance);
6136
+ instance.emit = emit$1.bind(null, instance);
6127
6137
  // apply custom element special handling
6128
6138
  if (vnode.ce) {
6129
6139
  vnode.ce(instance);
@@ -7093,7 +7103,7 @@ function createPathGetter(ctx, path) {
7093
7103
  return cur;
7094
7104
  };
7095
7105
  }
7096
- function traverse(value, seen = new Set()) {
7106
+ function traverse(value, seen) {
7097
7107
  if (!shared.isObject(value) || value["__v_skip" /* SKIP */]) {
7098
7108
  return value;
7099
7109
  }
@@ -7518,7 +7528,7 @@ function isMemoSame(cached, memo) {
7518
7528
  }
7519
7529
 
7520
7530
  // Core API ------------------------------------------------------------------
7521
- const version = "3.2.12";
7531
+ const version = "3.2.16";
7522
7532
  const _ssrUtils = {
7523
7533
  createComponentInstance,
7524
7534
  setupComponent,
@@ -5,8 +5,21 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var reactivity = require('@vue/reactivity');
6
6
  var shared = require('@vue/shared');
7
7
 
8
- function setDevtoolsHook(hook) {
8
+ let buffer = [];
9
+ function setDevtoolsHook(hook, target) {
9
10
  exports.devtools = hook;
11
+ if (exports.devtools) {
12
+ exports.devtools.enabled = true;
13
+ buffer.forEach(({ event, args }) => exports.devtools.emit(event, ...args));
14
+ buffer = [];
15
+ }
16
+ else {
17
+ const replay = (target.__VUE_DEVTOOLS_HOOK_REPLAY__ =
18
+ target.__VUE_DEVTOOLS_HOOK_REPLAY__ || []);
19
+ replay.push((newHook) => {
20
+ setDevtoolsHook(newHook, target);
21
+ });
22
+ }
10
23
  }
11
24
 
12
25
  function emit(instance, event, ...rawArgs) {
@@ -2450,7 +2463,7 @@ function createAppAPI(render, hydrate) {
2450
2463
  isMounted = true;
2451
2464
  app._container = rootContainer;
2452
2465
  rootContainer.__vue_app__ = app;
2453
- return vnode.component.proxy;
2466
+ return getExposeProxy(vnode.component) || vnode.component.proxy;
2454
2467
  }
2455
2468
  },
2456
2469
  unmount() {
@@ -2632,14 +2645,14 @@ function createHydrationFunctions(rendererInternals) {
2632
2645
  for (const key in props) {
2633
2646
  if ((forcePatchValue && key.endsWith('value')) ||
2634
2647
  (shared.isOn(key) && !shared.isReservedProp(key))) {
2635
- patchProp(el, key, null, props[key]);
2648
+ patchProp(el, key, null, props[key], false, undefined, parentComponent);
2636
2649
  }
2637
2650
  }
2638
2651
  }
2639
2652
  else if (props.onClick) {
2640
2653
  // Fast path for click listeners (which is most often) to avoid
2641
2654
  // iterating through props.
2642
- patchProp(el, 'onClick', null, props.onClick);
2655
+ patchProp(el, 'onClick', null, props.onClick, false, undefined, parentComponent);
2643
2656
  }
2644
2657
  }
2645
2658
  // vnode / directive hooks
@@ -2793,6 +2806,8 @@ function createHydrationRenderer(options) {
2793
2806
  }
2794
2807
  // implementation
2795
2808
  function baseCreateRenderer(options, createHydrationFns) {
2809
+ const target = shared.getGlobalThis();
2810
+ target.__VUE__ = true;
2796
2811
  const { insert: hostInsert, remove: hostRemove, patchProp: hostPatchProp, createElement: hostCreateElement, createText: hostCreateText, createComment: hostCreateComment, setText: hostSetText, setElementText: hostSetElementText, parentNode: hostParentNode, nextSibling: hostNextSibling, setScopeId: hostSetScopeId = shared.NOOP, cloneNode: hostCloneNode, insertStaticContent: hostInsertStaticContent } = options;
2797
2812
  // Note: functions inside this closure should use `const xxx = () => {}`
2798
2813
  // style in order to prevent being inlined by minifiers.
@@ -5774,7 +5789,7 @@ function createPathGetter(ctx, path) {
5774
5789
  return cur;
5775
5790
  };
5776
5791
  }
5777
- function traverse(value, seen = new Set()) {
5792
+ function traverse(value, seen) {
5778
5793
  if (!shared.isObject(value) || value["__v_skip" /* SKIP */]) {
5779
5794
  return value;
5780
5795
  }
@@ -5989,7 +6004,7 @@ function isMemoSame(cached, memo) {
5989
6004
  }
5990
6005
 
5991
6006
  // Core API ------------------------------------------------------------------
5992
- const version = "3.2.12";
6007
+ const version = "3.2.16";
5993
6008
  const _ssrUtils = {
5994
6009
  createComponentInstance,
5995
6010
  setupComponent,
@@ -617,7 +617,7 @@ export declare function defineAsyncComponent<T extends Component = {
617
617
  new (): ComponentPublicInstance;
618
618
  }>(source: AsyncComponentLoader<T> | AsyncComponentOptions<T>): T;
619
619
 
620
- export declare type DefineComponent<PropsOrPropOptions = {}, RawBindings = {}, D = {}, C extends ComputedOptions = ComputedOptions, M extends MethodOptions = MethodOptions, Mixin extends ComponentOptionsMixin = ComponentOptionsMixin, Extends extends ComponentOptionsMixin = ComponentOptionsMixin, E extends EmitsOptions = {}, EE extends string = string, PP = PublicProps, Props = Readonly<ExtractPropTypes<PropsOrPropOptions>> & ({} extends E ? {} : EmitsToProps<E>), Defaults = ExtractDefaultPropTypes<PropsOrPropOptions>> = ComponentPublicInstanceConstructor<CreateComponentPublicInstance<Props, RawBindings, D, C, M, Mixin, Extends, E, PP & Props, Defaults, true> & Props> & ComponentOptionsBase<Props, RawBindings, D, C, M, Mixin, Extends, E, EE, Defaults> & PP;
620
+ export declare type DefineComponent<PropsOrPropOptions = {}, RawBindings = {}, D = {}, C extends ComputedOptions = ComputedOptions, M extends MethodOptions = MethodOptions, Mixin extends ComponentOptionsMixin = ComponentOptionsMixin, Extends extends ComponentOptionsMixin = ComponentOptionsMixin, E extends EmitsOptions = {}, EE extends string = string, PP = PublicProps, Props = Readonly<PropsOrPropOptions extends ComponentPropsOptions ? ExtractPropTypes<PropsOrPropOptions> : PropsOrPropOptions> & ({} extends E ? {} : EmitsToProps<E>), Defaults = ExtractDefaultPropTypes<PropsOrPropOptions>> = ComponentPublicInstanceConstructor<CreateComponentPublicInstance<Props, RawBindings, D, C, M, Mixin, Extends, E, PP & Props, Defaults, true> & Props> & ComponentOptionsBase<Props, RawBindings, D, C, M, Mixin, Extends, E, EE, Defaults> & PP;
621
621
 
622
622
  export declare function defineComponent<Props, RawBindings = object>(setup: (props: Readonly<Props>, ctx: SetupContext) => RawBindings | RenderFunction): DefineComponent<Props, RawBindings>;
623
623
 
@@ -759,6 +759,7 @@ export declare const enum DeprecationTypes {
759
759
  export declare let devtools: DevtoolsHook;
760
760
 
761
761
  declare interface DevtoolsHook {
762
+ enabled?: boolean;
762
763
  emit: (event: string, ...payload: any[]) => void;
763
764
  on: (event: string, handler: Function) => void;
764
765
  once: (event: string, handler: Function) => void;
@@ -1576,7 +1577,7 @@ export declare function setBlockTracking(value: number): void;
1576
1577
  */
1577
1578
  declare function setCurrentRenderingInstance(instance: ComponentInternalInstance | null): ComponentInternalInstance | null;
1578
1579
 
1579
- export declare function setDevtoolsHook(hook: DevtoolsHook): void;
1580
+ export declare function setDevtoolsHook(hook: DevtoolsHook, target: any): void;
1580
1581
 
1581
1582
  export declare function setTransitionHooks(vnode: VNode, hooks: TransitionHooks): void;
1582
1583
 
@@ -140,14 +140,32 @@ function tryWrap(fn) {
140
140
  }
141
141
 
142
142
  let devtools;
143
- function setDevtoolsHook(hook) {
143
+ let buffer = [];
144
+ function emit(event, ...args) {
145
+ if (devtools) {
146
+ devtools.emit(event, ...args);
147
+ }
148
+ else {
149
+ buffer.push({ event, args });
150
+ }
151
+ }
152
+ function setDevtoolsHook(hook, target) {
144
153
  devtools = hook;
154
+ if (devtools) {
155
+ devtools.enabled = true;
156
+ buffer.forEach(({ event, args }) => devtools.emit(event, ...args));
157
+ buffer = [];
158
+ }
159
+ else {
160
+ const replay = (target.__VUE_DEVTOOLS_HOOK_REPLAY__ =
161
+ target.__VUE_DEVTOOLS_HOOK_REPLAY__ || []);
162
+ replay.push((newHook) => {
163
+ setDevtoolsHook(newHook, target);
164
+ });
165
+ }
145
166
  }
146
167
  function devtoolsInitApp(app, version) {
147
- // TODO queue if devtools is undefined
148
- if (!devtools)
149
- return;
150
- devtools.emit("app:init" /* APP_INIT */, app, version, {
168
+ emit("app:init" /* APP_INIT */, app, version, {
151
169
  Fragment,
152
170
  Text,
153
171
  Comment,
@@ -155,9 +173,7 @@ function devtoolsInitApp(app, version) {
155
173
  });
156
174
  }
157
175
  function devtoolsUnmountApp(app) {
158
- if (!devtools)
159
- return;
160
- devtools.emit("app:unmount" /* APP_UNMOUNT */, app);
176
+ emit("app:unmount" /* APP_UNMOUNT */, app);
161
177
  }
162
178
  const devtoolsComponentAdded = /*#__PURE__*/ createDevtoolsComponentHook("component:added" /* COMPONENT_ADDED */);
163
179
  const devtoolsComponentUpdated =
@@ -166,27 +182,21 @@ const devtoolsComponentRemoved =
166
182
  /*#__PURE__*/ createDevtoolsComponentHook("component:removed" /* COMPONENT_REMOVED */);
167
183
  function createDevtoolsComponentHook(hook) {
168
184
  return (component) => {
169
- if (!devtools)
170
- return;
171
- devtools.emit(hook, component.appContext.app, component.uid, component.parent ? component.parent.uid : undefined, component);
185
+ emit(hook, component.appContext.app, component.uid, component.parent ? component.parent.uid : undefined, component);
172
186
  };
173
187
  }
174
188
  const devtoolsPerfStart = /*#__PURE__*/ createDevtoolsPerformanceHook("perf:start" /* PERFORMANCE_START */);
175
189
  const devtoolsPerfEnd = /*#__PURE__*/ createDevtoolsPerformanceHook("perf:end" /* PERFORMANCE_END */);
176
190
  function createDevtoolsPerformanceHook(hook) {
177
191
  return (component, type, time) => {
178
- if (!devtools)
179
- return;
180
- devtools.emit(hook, component.appContext.app, component.uid, component, type, time);
192
+ emit(hook, component.appContext.app, component.uid, component, type, time);
181
193
  };
182
194
  }
183
195
  function devtoolsComponentEmit(component, event, params) {
184
- if (!devtools)
185
- return;
186
- devtools.emit("component:emit" /* COMPONENT_EMIT */, component.appContext.app, component, event, params);
196
+ emit("component:emit" /* COMPONENT_EMIT */, component.appContext.app, component, event, params);
187
197
  }
188
198
 
189
- function emit(instance, event, ...rawArgs) {
199
+ function emit$1(instance, event, ...rawArgs) {
190
200
  const props = instance.vnode.props || EMPTY_OBJ;
191
201
  if ((process.env.NODE_ENV !== 'production')) {
192
202
  const { emitsOptions, propsOptions: [propsOptions] } = instance;
@@ -3143,7 +3153,7 @@ function createAppAPI(render, hydrate) {
3143
3153
  app._instance = vnode.component;
3144
3154
  devtoolsInitApp(app, version);
3145
3155
  }
3146
- return vnode.component.proxy;
3156
+ return getExposeProxy(vnode.component) || vnode.component.proxy;
3147
3157
  }
3148
3158
  else if ((process.env.NODE_ENV !== 'production')) {
3149
3159
  warn(`App has already been mounted.\n` +
@@ -3351,14 +3361,14 @@ function createHydrationFunctions(rendererInternals) {
3351
3361
  for (const key in props) {
3352
3362
  if ((forcePatchValue && key.endsWith('value')) ||
3353
3363
  (isOn(key) && !isReservedProp(key))) {
3354
- patchProp(el, key, null, props[key]);
3364
+ patchProp(el, key, null, props[key], false, undefined, parentComponent);
3355
3365
  }
3356
3366
  }
3357
3367
  }
3358
3368
  else if (props.onClick) {
3359
3369
  // Fast path for click listeners (which is most often) to avoid
3360
3370
  // iterating through props.
3361
- patchProp(el, 'onClick', null, props.onClick);
3371
+ patchProp(el, 'onClick', null, props.onClick, false, undefined, parentComponent);
3362
3372
  }
3363
3373
  }
3364
3374
  // vnode / directive hooks
@@ -3602,10 +3612,10 @@ function baseCreateRenderer(options, createHydrationFns) {
3602
3612
  {
3603
3613
  initFeatureFlags();
3604
3614
  }
3615
+ const target = getGlobalThis();
3616
+ target.__VUE__ = true;
3605
3617
  if ((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) {
3606
- const target = getGlobalThis();
3607
- target.__VUE__ = true;
3608
- setDevtoolsHook(target.__VUE_DEVTOOLS_GLOBAL_HOOK__);
3618
+ setDevtoolsHook(target.__VUE_DEVTOOLS_GLOBAL_HOOK__, target);
3609
3619
  }
3610
3620
  const { insert: hostInsert, remove: hostRemove, patchProp: hostPatchProp, createElement: hostCreateElement, createText: hostCreateText, createComment: hostCreateComment, setText: hostSetText, setElementText: hostSetElementText, parentNode: hostParentNode, nextSibling: hostNextSibling, setScopeId: hostSetScopeId = NOOP, cloneNode: hostCloneNode, insertStaticContent: hostInsertStaticContent } = options;
3611
3621
  // Note: functions inside this closure should use `const xxx = () => {}`
@@ -6190,7 +6200,7 @@ function createComponentInstance(vnode, parent, suspense) {
6190
6200
  instance.ctx = { _: instance };
6191
6201
  }
6192
6202
  instance.root = parent ? parent.root : instance;
6193
- instance.emit = emit.bind(null, instance);
6203
+ instance.emit = emit$1.bind(null, instance);
6194
6204
  // apply custom element special handling
6195
6205
  if (vnode.ce) {
6196
6206
  vnode.ce(instance);
@@ -7154,7 +7164,7 @@ function createPathGetter(ctx, path) {
7154
7164
  return cur;
7155
7165
  };
7156
7166
  }
7157
- function traverse(value, seen = new Set()) {
7167
+ function traverse(value, seen) {
7158
7168
  if (!isObject$1(value) || value["__v_skip" /* SKIP */]) {
7159
7169
  return value;
7160
7170
  }
@@ -7580,7 +7590,7 @@ function isMemoSame(cached, memo) {
7580
7590
  }
7581
7591
 
7582
7592
  // Core API ------------------------------------------------------------------
7583
- const version = "3.2.12";
7593
+ const version = "3.2.16";
7584
7594
  const _ssrUtils = {
7585
7595
  createComponentInstance,
7586
7596
  setupComponent,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vue/runtime-core",
3
- "version": "3.2.12",
3
+ "version": "3.2.16",
4
4
  "description": "@vue/runtime-core",
5
5
  "main": "index.js",
6
6
  "module": "dist/runtime-core.esm-bundler.js",
@@ -32,7 +32,7 @@
32
32
  },
33
33
  "homepage": "https://github.com/vuejs/vue-next/tree/master/packages/runtime-core#readme",
34
34
  "dependencies": {
35
- "@vue/shared": "3.2.12",
36
- "@vue/reactivity": "3.2.12"
35
+ "@vue/shared": "3.2.16",
36
+ "@vue/reactivity": "3.2.16"
37
37
  }
38
38
  }