@vue/compat 3.5.5 → 3.5.6

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.
package/dist/vue.cjs.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.5.5
2
+ * @vue/compat v3.5.6
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -285,6 +285,9 @@ const isKnownHtmlAttr = /* @__PURE__ */ makeMap(
285
285
  const isKnownSvgAttr = /* @__PURE__ */ makeMap(
286
286
  `xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xmlns:xlink,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan`
287
287
  );
288
+ const isKnownMathMLAttr = /* @__PURE__ */ makeMap(
289
+ `accent,accentunder,actiontype,align,alignmentscope,altimg,altimg-height,altimg-valign,altimg-width,alttext,bevelled,close,columnsalign,columnlines,columnspan,denomalign,depth,dir,display,displaystyle,encoding,equalcolumns,equalrows,fence,fontstyle,fontweight,form,frame,framespacing,groupalign,height,href,id,indentalign,indentalignfirst,indentalignlast,indentshift,indentshiftfirst,indentshiftlast,indextype,justify,largetop,largeop,lquote,lspace,mathbackground,mathcolor,mathsize,mathvariant,maxsize,minlabelspacing,mode,other,overflow,position,rowalign,rowlines,rowspan,rquote,rspace,scriptlevel,scriptminsize,scriptsizemultiplier,selection,separator,separators,shift,side,src,stackalign,stretchy,subscriptshift,superscriptshift,symmetric,voffset,width,widths,xlink:href,xlink:show,xlink:type,xmlns`
290
+ );
288
291
  function isRenderableAttrValue(value) {
289
292
  if (value == null) {
290
293
  return false;
@@ -582,7 +585,7 @@ class ReactiveEffect {
582
585
  /**
583
586
  * @internal
584
587
  */
585
- this.nextEffect = void 0;
588
+ this.next = void 0;
586
589
  /**
587
590
  * @internal
588
591
  */
@@ -612,9 +615,7 @@ class ReactiveEffect {
612
615
  return;
613
616
  }
614
617
  if (!(this.flags & 8)) {
615
- this.flags |= 8;
616
- this.nextEffect = batchedEffect;
617
- batchedEffect = this;
618
+ batch(this);
618
619
  }
619
620
  }
620
621
  run() {
@@ -675,7 +676,12 @@ class ReactiveEffect {
675
676
  }
676
677
  }
677
678
  let batchDepth = 0;
678
- let batchedEffect;
679
+ let batchedSub;
680
+ function batch(sub) {
681
+ sub.flags |= 8;
682
+ sub.next = batchedSub;
683
+ batchedSub = sub;
684
+ }
679
685
  function startBatch() {
680
686
  batchDepth++;
681
687
  }
@@ -684,15 +690,16 @@ function endBatch() {
684
690
  return;
685
691
  }
686
692
  let error;
687
- while (batchedEffect) {
688
- let e = batchedEffect;
689
- batchedEffect = void 0;
693
+ while (batchedSub) {
694
+ let e = batchedSub;
695
+ batchedSub = void 0;
690
696
  while (e) {
691
- const next = e.nextEffect;
692
- e.nextEffect = void 0;
697
+ const next = e.next;
698
+ e.next = void 0;
693
699
  e.flags &= ~8;
694
700
  if (e.flags & 1) {
695
701
  try {
702
+ ;
696
703
  e.trigger();
697
704
  } catch (err) {
698
705
  if (!error) error = err;
@@ -732,7 +739,7 @@ function cleanupDeps(sub) {
732
739
  }
733
740
  function isDirty(sub) {
734
741
  for (let link = sub.deps; link; link = link.nextDep) {
735
- if (link.dep.version !== link.version || link.dep.computed && refreshComputed(link.dep.computed) || link.dep.version !== link.version) {
742
+ if (link.dep.version !== link.version || link.dep.computed && (refreshComputed(link.dep.computed) || link.dep.version !== link.version)) {
736
743
  return true;
737
744
  }
738
745
  }
@@ -752,7 +759,7 @@ function refreshComputed(computed) {
752
759
  computed.globalVersion = globalVersion;
753
760
  const dep = computed.dep;
754
761
  computed.flags |= 2;
755
- if (dep.version > 0 && !computed.isSSR && !isDirty(computed)) {
762
+ if (dep.version > 0 && !computed.isSSR && computed.deps && !isDirty(computed)) {
756
763
  computed.flags &= ~2;
757
764
  return;
758
765
  }
@@ -947,7 +954,10 @@ class Dep {
947
954
  }
948
955
  }
949
956
  for (let link = this.subs; link; link = link.prevSub) {
950
- link.sub.notify();
957
+ if (link.sub.notify()) {
958
+ ;
959
+ link.sub.dep.notify();
960
+ }
951
961
  }
952
962
  } finally {
953
963
  endBatch();
@@ -2016,8 +2026,10 @@ class ComputedRefImpl {
2016
2026
  */
2017
2027
  notify() {
2018
2028
  this.flags |= 16;
2019
- if (activeSub !== this) {
2020
- this.dep.notify();
2029
+ if (!(this.flags & 8) && // avoid infinite self recursion
2030
+ activeSub !== this) {
2031
+ batch(this);
2032
+ return true;
2021
2033
  }
2022
2034
  }
2023
2035
  get value() {
@@ -2165,20 +2177,12 @@ function watch$1(source, cb, options = EMPTY_OBJ) {
2165
2177
  remove(scope.effects, effect);
2166
2178
  }
2167
2179
  };
2168
- if (once) {
2169
- if (cb) {
2170
- const _cb = cb;
2171
- cb = (...args) => {
2172
- _cb(...args);
2173
- watchHandle();
2174
- };
2175
- } else {
2176
- const _getter = getter;
2177
- getter = () => {
2178
- _getter();
2179
- watchHandle();
2180
- };
2181
- }
2180
+ if (once && cb) {
2181
+ const _cb = cb;
2182
+ cb = (...args) => {
2183
+ _cb(...args);
2184
+ watchHandle();
2185
+ };
2182
2186
  }
2183
2187
  let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;
2184
2188
  const job = (immediateFirstRun) => {
@@ -7160,7 +7164,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
7160
7164
  return vm;
7161
7165
  }
7162
7166
  }
7163
- Vue.version = `2.6.14-compat:${"3.5.5"}`;
7167
+ Vue.version = `2.6.14-compat:${"3.5.6"}`;
7164
7168
  Vue.config = singletonApp.config;
7165
7169
  Vue.use = (plugin, ...options) => {
7166
7170
  if (plugin && isFunction(plugin.install)) {
@@ -9978,11 +9982,12 @@ function doWatch(source, cb, options = EMPTY_OBJ) {
9978
9982
  } else if (!cb || immediate) {
9979
9983
  baseWatchOptions.once = true;
9980
9984
  } else {
9981
- return {
9982
- stop: NOOP,
9983
- resume: NOOP,
9984
- pause: NOOP
9985
+ const watchStopHandle = () => {
9985
9986
  };
9987
+ watchStopHandle.stop = NOOP;
9988
+ watchStopHandle.resume = NOOP;
9989
+ watchStopHandle.pause = NOOP;
9990
+ return watchStopHandle;
9986
9991
  }
9987
9992
  }
9988
9993
  const instance = currentInstance;
@@ -12274,7 +12279,7 @@ function isMemoSame(cached, memo) {
12274
12279
  return true;
12275
12280
  }
12276
12281
 
12277
- const version = "3.5.5";
12282
+ const version = "3.5.6";
12278
12283
  const warn = warn$1 ;
12279
12284
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
12280
12285
  const devtools = devtools$1 ;
@@ -21204,7 +21209,7 @@ const getCachedNode = (node) => {
21204
21209
  };
21205
21210
  const dataAriaRE = /^(data|aria)-/;
21206
21211
  const isStringifiableAttr = (name, ns) => {
21207
- return (ns === 0 ? isKnownHtmlAttr(name) : ns === 1 ? isKnownSvgAttr(name) : false) || dataAriaRE.test(name);
21212
+ return (ns === 0 ? isKnownHtmlAttr(name) : ns === 1 ? isKnownSvgAttr(name) : ns === 2 ? isKnownMathMLAttr(name) : false) || dataAriaRE.test(name);
21208
21213
  };
21209
21214
  const isNonStringifiable = /* @__PURE__ */ makeMap(
21210
21215
  `caption,thead,tr,th,tbody,td,tfoot,colgroup,col`
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.5.5
2
+ * @vue/compat v3.5.6
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -220,6 +220,9 @@ const isKnownHtmlAttr = /* @__PURE__ */ makeMap(
220
220
  const isKnownSvgAttr = /* @__PURE__ */ makeMap(
221
221
  `xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xmlns:xlink,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan`
222
222
  );
223
+ const isKnownMathMLAttr = /* @__PURE__ */ makeMap(
224
+ `accent,accentunder,actiontype,align,alignmentscope,altimg,altimg-height,altimg-valign,altimg-width,alttext,bevelled,close,columnsalign,columnlines,columnspan,denomalign,depth,dir,display,displaystyle,encoding,equalcolumns,equalrows,fence,fontstyle,fontweight,form,frame,framespacing,groupalign,height,href,id,indentalign,indentalignfirst,indentalignlast,indentshift,indentshiftfirst,indentshiftlast,indextype,justify,largetop,largeop,lquote,lspace,mathbackground,mathcolor,mathsize,mathvariant,maxsize,minlabelspacing,mode,other,overflow,position,rowalign,rowlines,rowspan,rquote,rspace,scriptlevel,scriptminsize,scriptsizemultiplier,selection,separator,separators,shift,side,src,stackalign,stretchy,subscriptshift,superscriptshift,symmetric,voffset,width,widths,xlink:href,xlink:show,xlink:type,xmlns`
225
+ );
223
226
 
224
227
  const escapeRE = /["'&<>]/;
225
228
  function escapeHtml(string) {
@@ -493,7 +496,7 @@ class ReactiveEffect {
493
496
  /**
494
497
  * @internal
495
498
  */
496
- this.nextEffect = void 0;
499
+ this.next = void 0;
497
500
  /**
498
501
  * @internal
499
502
  */
@@ -523,9 +526,7 @@ class ReactiveEffect {
523
526
  return;
524
527
  }
525
528
  if (!(this.flags & 8)) {
526
- this.flags |= 8;
527
- this.nextEffect = batchedEffect;
528
- batchedEffect = this;
529
+ batch(this);
529
530
  }
530
531
  }
531
532
  run() {
@@ -581,7 +582,12 @@ class ReactiveEffect {
581
582
  }
582
583
  }
583
584
  let batchDepth = 0;
584
- let batchedEffect;
585
+ let batchedSub;
586
+ function batch(sub) {
587
+ sub.flags |= 8;
588
+ sub.next = batchedSub;
589
+ batchedSub = sub;
590
+ }
585
591
  function startBatch() {
586
592
  batchDepth++;
587
593
  }
@@ -590,15 +596,16 @@ function endBatch() {
590
596
  return;
591
597
  }
592
598
  let error;
593
- while (batchedEffect) {
594
- let e = batchedEffect;
595
- batchedEffect = void 0;
599
+ while (batchedSub) {
600
+ let e = batchedSub;
601
+ batchedSub = void 0;
596
602
  while (e) {
597
- const next = e.nextEffect;
598
- e.nextEffect = void 0;
603
+ const next = e.next;
604
+ e.next = void 0;
599
605
  e.flags &= ~8;
600
606
  if (e.flags & 1) {
601
607
  try {
608
+ ;
602
609
  e.trigger();
603
610
  } catch (err) {
604
611
  if (!error) error = err;
@@ -638,7 +645,7 @@ function cleanupDeps(sub) {
638
645
  }
639
646
  function isDirty(sub) {
640
647
  for (let link = sub.deps; link; link = link.nextDep) {
641
- if (link.dep.version !== link.version || link.dep.computed && refreshComputed(link.dep.computed) || link.dep.version !== link.version) {
648
+ if (link.dep.version !== link.version || link.dep.computed && (refreshComputed(link.dep.computed) || link.dep.version !== link.version)) {
642
649
  return true;
643
650
  }
644
651
  }
@@ -658,7 +665,7 @@ function refreshComputed(computed) {
658
665
  computed.globalVersion = globalVersion;
659
666
  const dep = computed.dep;
660
667
  computed.flags |= 2;
661
- if (dep.version > 0 && !computed.isSSR && !isDirty(computed)) {
668
+ if (dep.version > 0 && !computed.isSSR && computed.deps && !isDirty(computed)) {
662
669
  computed.flags &= ~2;
663
670
  return;
664
671
  }
@@ -827,7 +834,10 @@ class Dep {
827
834
  try {
828
835
  if (false) ;
829
836
  for (let link = this.subs; link; link = link.prevSub) {
830
- link.sub.notify();
837
+ if (link.sub.notify()) {
838
+ ;
839
+ link.sub.dep.notify();
840
+ }
831
841
  }
832
842
  } finally {
833
843
  endBatch();
@@ -1824,8 +1834,10 @@ class ComputedRefImpl {
1824
1834
  */
1825
1835
  notify() {
1826
1836
  this.flags |= 16;
1827
- if (activeSub !== this) {
1828
- this.dep.notify();
1837
+ if (!(this.flags & 8) && // avoid infinite self recursion
1838
+ activeSub !== this) {
1839
+ batch(this);
1840
+ return true;
1829
1841
  }
1830
1842
  }
1831
1843
  get value() {
@@ -1949,20 +1961,12 @@ function watch$1(source, cb, options = EMPTY_OBJ) {
1949
1961
  remove(scope.effects, effect);
1950
1962
  }
1951
1963
  };
1952
- if (once) {
1953
- if (cb) {
1954
- const _cb = cb;
1955
- cb = (...args) => {
1956
- _cb(...args);
1957
- watchHandle();
1958
- };
1959
- } else {
1960
- const _getter = getter;
1961
- getter = () => {
1962
- _getter();
1963
- watchHandle();
1964
- };
1965
- }
1964
+ if (once && cb) {
1965
+ const _cb = cb;
1966
+ cb = (...args) => {
1967
+ _cb(...args);
1968
+ watchHandle();
1969
+ };
1966
1970
  }
1967
1971
  let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;
1968
1972
  const job = (immediateFirstRun) => {
@@ -5752,7 +5756,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
5752
5756
  return vm;
5753
5757
  }
5754
5758
  }
5755
- Vue.version = `2.6.14-compat:${"3.5.5"}`;
5759
+ Vue.version = `2.6.14-compat:${"3.5.6"}`;
5756
5760
  Vue.config = singletonApp.config;
5757
5761
  Vue.use = (plugin, ...options) => {
5758
5762
  if (plugin && isFunction(plugin.install)) {
@@ -8099,11 +8103,12 @@ function doWatch(source, cb, options = EMPTY_OBJ) {
8099
8103
  } else if (!cb || immediate) {
8100
8104
  baseWatchOptions.once = true;
8101
8105
  } else {
8102
- return {
8103
- stop: NOOP,
8104
- resume: NOOP,
8105
- pause: NOOP
8106
+ const watchStopHandle = () => {
8106
8107
  };
8108
+ watchStopHandle.stop = NOOP;
8109
+ watchStopHandle.resume = NOOP;
8110
+ watchStopHandle.pause = NOOP;
8111
+ return watchStopHandle;
8107
8112
  }
8108
8113
  }
8109
8114
  const instance = currentInstance;
@@ -9872,7 +9877,7 @@ function isMemoSame(cached, memo) {
9872
9877
  return true;
9873
9878
  }
9874
9879
 
9875
- const version = "3.5.5";
9880
+ const version = "3.5.6";
9876
9881
  const warn$1 = NOOP;
9877
9882
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
9878
9883
  const devtools = void 0;
@@ -18388,7 +18393,7 @@ const getCachedNode = (node) => {
18388
18393
  };
18389
18394
  const dataAriaRE = /^(data|aria)-/;
18390
18395
  const isStringifiableAttr = (name, ns) => {
18391
- return (ns === 0 ? isKnownHtmlAttr(name) : ns === 1 ? isKnownSvgAttr(name) : false) || dataAriaRE.test(name);
18396
+ return (ns === 0 ? isKnownHtmlAttr(name) : ns === 1 ? isKnownSvgAttr(name) : ns === 2 ? isKnownMathMLAttr(name) : false) || dataAriaRE.test(name);
18392
18397
  };
18393
18398
  const isNonStringifiable = /* @__PURE__ */ makeMap(
18394
18399
  `caption,thead,tr,th,tbody,td,tfoot,colgroup,col`
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.5.5
2
+ * @vue/compat v3.5.6
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -532,7 +532,7 @@ class ReactiveEffect {
532
532
  /**
533
533
  * @internal
534
534
  */
535
- this.nextEffect = void 0;
535
+ this.next = void 0;
536
536
  /**
537
537
  * @internal
538
538
  */
@@ -562,9 +562,7 @@ class ReactiveEffect {
562
562
  return;
563
563
  }
564
564
  if (!(this.flags & 8)) {
565
- this.flags |= 8;
566
- this.nextEffect = batchedEffect;
567
- batchedEffect = this;
565
+ batch(this);
568
566
  }
569
567
  }
570
568
  run() {
@@ -625,7 +623,12 @@ class ReactiveEffect {
625
623
  }
626
624
  }
627
625
  let batchDepth = 0;
628
- let batchedEffect;
626
+ let batchedSub;
627
+ function batch(sub) {
628
+ sub.flags |= 8;
629
+ sub.next = batchedSub;
630
+ batchedSub = sub;
631
+ }
629
632
  function startBatch() {
630
633
  batchDepth++;
631
634
  }
@@ -634,15 +637,16 @@ function endBatch() {
634
637
  return;
635
638
  }
636
639
  let error;
637
- while (batchedEffect) {
638
- let e = batchedEffect;
639
- batchedEffect = void 0;
640
+ while (batchedSub) {
641
+ let e = batchedSub;
642
+ batchedSub = void 0;
640
643
  while (e) {
641
- const next = e.nextEffect;
642
- e.nextEffect = void 0;
644
+ const next = e.next;
645
+ e.next = void 0;
643
646
  e.flags &= ~8;
644
647
  if (e.flags & 1) {
645
648
  try {
649
+ ;
646
650
  e.trigger();
647
651
  } catch (err) {
648
652
  if (!error) error = err;
@@ -682,7 +686,7 @@ function cleanupDeps(sub) {
682
686
  }
683
687
  function isDirty(sub) {
684
688
  for (let link = sub.deps; link; link = link.nextDep) {
685
- if (link.dep.version !== link.version || link.dep.computed && refreshComputed(link.dep.computed) || link.dep.version !== link.version) {
689
+ if (link.dep.version !== link.version || link.dep.computed && (refreshComputed(link.dep.computed) || link.dep.version !== link.version)) {
686
690
  return true;
687
691
  }
688
692
  }
@@ -702,7 +706,7 @@ function refreshComputed(computed) {
702
706
  computed.globalVersion = globalVersion;
703
707
  const dep = computed.dep;
704
708
  computed.flags |= 2;
705
- if (dep.version > 0 && !computed.isSSR && !isDirty(computed)) {
709
+ if (dep.version > 0 && !computed.isSSR && computed.deps && !isDirty(computed)) {
706
710
  computed.flags &= ~2;
707
711
  return;
708
712
  }
@@ -897,7 +901,10 @@ class Dep {
897
901
  }
898
902
  }
899
903
  for (let link = this.subs; link; link = link.prevSub) {
900
- link.sub.notify();
904
+ if (link.sub.notify()) {
905
+ ;
906
+ link.sub.dep.notify();
907
+ }
901
908
  }
902
909
  } finally {
903
910
  endBatch();
@@ -1966,8 +1973,10 @@ class ComputedRefImpl {
1966
1973
  */
1967
1974
  notify() {
1968
1975
  this.flags |= 16;
1969
- if (activeSub !== this) {
1970
- this.dep.notify();
1976
+ if (!(this.flags & 8) && // avoid infinite self recursion
1977
+ activeSub !== this) {
1978
+ batch(this);
1979
+ return true;
1971
1980
  }
1972
1981
  }
1973
1982
  get value() {
@@ -2115,20 +2124,12 @@ function watch$1(source, cb, options = EMPTY_OBJ) {
2115
2124
  remove(scope.effects, effect);
2116
2125
  }
2117
2126
  };
2118
- if (once) {
2119
- if (cb) {
2120
- const _cb = cb;
2121
- cb = (...args) => {
2122
- _cb(...args);
2123
- watchHandle();
2124
- };
2125
- } else {
2126
- const _getter = getter;
2127
- getter = () => {
2128
- _getter();
2129
- watchHandle();
2130
- };
2131
- }
2127
+ if (once && cb) {
2128
+ const _cb = cb;
2129
+ cb = (...args) => {
2130
+ _cb(...args);
2131
+ watchHandle();
2132
+ };
2132
2133
  }
2133
2134
  let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;
2134
2135
  const job = (immediateFirstRun) => {
@@ -7110,7 +7111,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
7110
7111
  return vm;
7111
7112
  }
7112
7113
  }
7113
- Vue.version = `2.6.14-compat:${"3.5.5"}`;
7114
+ Vue.version = `2.6.14-compat:${"3.5.6"}`;
7114
7115
  Vue.config = singletonApp.config;
7115
7116
  Vue.use = (plugin, ...options) => {
7116
7117
  if (plugin && isFunction(plugin.install)) {
@@ -9928,11 +9929,12 @@ function doWatch(source, cb, options = EMPTY_OBJ) {
9928
9929
  } else if (!cb || immediate) {
9929
9930
  baseWatchOptions.once = true;
9930
9931
  } else {
9931
- return {
9932
- stop: NOOP,
9933
- resume: NOOP,
9934
- pause: NOOP
9932
+ const watchStopHandle = () => {
9935
9933
  };
9934
+ watchStopHandle.stop = NOOP;
9935
+ watchStopHandle.resume = NOOP;
9936
+ watchStopHandle.pause = NOOP;
9937
+ return watchStopHandle;
9936
9938
  }
9937
9939
  }
9938
9940
  const instance = currentInstance;
@@ -12224,7 +12226,7 @@ function isMemoSame(cached, memo) {
12224
12226
  return true;
12225
12227
  }
12226
12228
 
12227
- const version = "3.5.5";
12229
+ const version = "3.5.6";
12228
12230
  const warn = warn$1 ;
12229
12231
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
12230
12232
  const devtools = devtools$1 ;