vant 4.3.2 → 4.4.0

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.
Files changed (89) hide show
  1. package/es/address-edit/AddressEdit.mjs +1 -0
  2. package/es/area/Area.d.ts +6 -8
  3. package/es/area/Area.mjs +1 -1
  4. package/es/area/index.d.ts +4 -6
  5. package/es/back-top/BackTop.d.ts +1 -1
  6. package/es/back-top/BackTop.mjs +6 -3
  7. package/es/back-top/index.css +1 -1
  8. package/es/back-top/index.d.ts +1 -1
  9. package/es/barrage/Barrage.d.ts +93 -0
  10. package/es/barrage/Barrage.mjs +134 -0
  11. package/es/barrage/index.css +1 -0
  12. package/es/barrage/index.d.ts +69 -0
  13. package/es/barrage/index.mjs +10 -0
  14. package/es/barrage/style/index.d.ts +1 -0
  15. package/es/barrage/style/index.mjs +2 -0
  16. package/es/barrage/types.d.ts +7 -0
  17. package/es/barrage/types.mjs +0 -0
  18. package/es/cascader/Cascader.mjs +14 -0
  19. package/es/contact-list/ContactList.mjs +1 -1
  20. package/es/contact-list/index.css +1 -1
  21. package/es/date-picker/DatePicker.mjs +5 -2
  22. package/es/dialog/index.css +1 -1
  23. package/es/divider/Divider.d.ts +4 -0
  24. package/es/divider/Divider.mjs +4 -2
  25. package/es/divider/index.css +1 -1
  26. package/es/divider/index.d.ts +3 -0
  27. package/es/image-preview/ImagePreviewItem.mjs +28 -15
  28. package/es/index.d.ts +2 -1
  29. package/es/index.mjs +4 -1
  30. package/es/notice-bar/NoticeBar.d.ts +1 -1
  31. package/es/notice-bar/index.d.ts +1 -1
  32. package/es/signature/Signature.d.ts +13 -0
  33. package/es/signature/Signature.mjs +24 -8
  34. package/es/signature/index.css +1 -1
  35. package/es/signature/index.d.ts +9 -0
  36. package/es/uploader/Uploader.d.ts +6 -1
  37. package/es/uploader/Uploader.mjs +25 -10
  38. package/es/uploader/UploaderPreviewItem.d.ts +5 -1
  39. package/es/uploader/UploaderPreviewItem.mjs +6 -3
  40. package/es/uploader/index.d.ts +5 -1
  41. package/es/uploader/types.d.ts +1 -0
  42. package/lib/address-edit/AddressEdit.js +1 -0
  43. package/lib/area/Area.d.ts +6 -8
  44. package/lib/area/Area.js +1 -1
  45. package/lib/area/index.d.ts +4 -6
  46. package/lib/back-top/BackTop.d.ts +1 -1
  47. package/lib/back-top/BackTop.js +6 -3
  48. package/lib/back-top/index.css +1 -1
  49. package/lib/back-top/index.d.ts +1 -1
  50. package/lib/barrage/Barrage.d.ts +93 -0
  51. package/lib/barrage/Barrage.js +153 -0
  52. package/lib/barrage/index.css +1 -0
  53. package/lib/barrage/index.d.ts +69 -0
  54. package/lib/barrage/index.js +39 -0
  55. package/lib/barrage/style/index.d.ts +1 -0
  56. package/lib/barrage/style/index.js +2 -0
  57. package/lib/barrage/types.d.ts +7 -0
  58. package/lib/barrage/types.js +15 -0
  59. package/lib/cascader/Cascader.js +14 -0
  60. package/lib/contact-list/ContactList.js +1 -1
  61. package/lib/contact-list/index.css +1 -1
  62. package/lib/date-picker/DatePicker.js +5 -2
  63. package/lib/dialog/index.css +1 -1
  64. package/lib/divider/Divider.d.ts +4 -0
  65. package/lib/divider/Divider.js +4 -2
  66. package/lib/divider/index.css +1 -1
  67. package/lib/divider/index.d.ts +3 -0
  68. package/lib/image-preview/ImagePreviewItem.js +28 -15
  69. package/lib/index.css +1 -1
  70. package/lib/index.d.ts +2 -1
  71. package/lib/index.js +4 -1
  72. package/lib/notice-bar/NoticeBar.d.ts +1 -1
  73. package/lib/notice-bar/index.d.ts +1 -1
  74. package/lib/signature/Signature.d.ts +13 -0
  75. package/lib/signature/Signature.js +23 -7
  76. package/lib/signature/index.css +1 -1
  77. package/lib/signature/index.d.ts +9 -0
  78. package/lib/uploader/Uploader.d.ts +6 -1
  79. package/lib/uploader/Uploader.js +25 -10
  80. package/lib/uploader/UploaderPreviewItem.d.ts +5 -1
  81. package/lib/uploader/UploaderPreviewItem.js +6 -3
  82. package/lib/uploader/index.d.ts +5 -1
  83. package/lib/uploader/types.d.ts +1 -0
  84. package/lib/vant.cjs.js +523 -324
  85. package/lib/vant.es.js +523 -324
  86. package/lib/vant.js +523 -324
  87. package/lib/vant.min.js +1 -1
  88. package/lib/web-types.json +1 -1
  89. package/package.json +1 -1
@@ -53,6 +53,7 @@ var stdin_default = (0, import_vue2.defineComponent)({
53
53
  slots
54
54
  }) {
55
55
  const currentValues = (0, import_vue2.ref)(props.modelValue);
56
+ const updatedByExternalSources = (0, import_vue2.ref)(false);
56
57
  const genYearOptions = () => {
57
58
  const minYear = props.minDate.getFullYear();
58
59
  const maxYear = props.maxDate.getFullYear();
@@ -68,7 +69,7 @@ var stdin_default = (0, import_vue2.defineComponent)({
68
69
  columnsType
69
70
  } = props;
70
71
  const index = columnsType.indexOf(type);
71
- const value = currentValues.value[index];
72
+ const value = updatedByExternalSources.value ? props.modelValue[index] : currentValues.value[index];
72
73
  if (value) {
73
74
  return +value;
74
75
  }
@@ -114,11 +115,13 @@ var stdin_default = (0, import_vue2.defineComponent)({
114
115
  emit("update:modelValue", newValues);
115
116
  }
116
117
  });
117
- (0, import_vue2.watch)(() => props.modelValue, (newValues) => {
118
+ (0, import_vue2.watch)(() => props.modelValue, (newValues, oldValues) => {
119
+ updatedByExternalSources.value = (0, import_utils.isSameValue)(oldValues, currentValues.value);
118
120
  newValues = (0, import_utils2.formatValueRange)(newValues, columns.value);
119
121
  if (!(0, import_utils.isSameValue)(newValues, currentValues.value)) {
120
122
  currentValues.value = newValues;
121
123
  }
124
+ updatedByExternalSources.value = false;
122
125
  }, {
123
126
  immediate: true
124
127
  });
@@ -1 +1 @@
1
- :root{--van-dialog-width: 320px;--van-dialog-small-screen-width: 90%;--van-dialog-font-size: var(--van-font-size-lg);--van-dialog-transition: var(--van-duration-base);--van-dialog-radius: 16px;--van-dialog-background: var(--van-background-2);--van-dialog-header-font-weight: var(--van-font-bold);--van-dialog-header-line-height: 24px;--van-dialog-header-padding-top: 26px;--van-dialog-header-isolated-padding: var(--van-padding-lg) 0;--van-dialog-message-padding: var(--van-padding-lg);--van-dialog-message-font-size: var(--van-font-size-md);--van-dialog-message-line-height: var(--van-line-height-md);--van-dialog-message-max-height: 60vh;--van-dialog-has-title-message-text-color: var(--van-gray-7);--van-dialog-has-title-message-padding-top: var(--van-padding-xs);--van-dialog-button-height: 48px;--van-dialog-round-button-height: 36px;--van-dialog-confirm-button-text-color: var(--van-primary-color)}.van-dialog{top:45%;width:var(--van-dialog-width);overflow:hidden;font-size:var(--van-dialog-font-size);background:var(--van-dialog-background);border-radius:var(--van-dialog-radius);-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:var(--van-dialog-transition);transition-property:transform,opacity}@media (max-width: 321px){.van-dialog{width:var(--van-dialog-small-screen-width)}}.van-dialog__header{color:var(--van-text-color);padding-top:var(--van-dialog-header-padding-top);font-weight:var(--van-dialog-header-font-weight);line-height:var(--van-dialog-header-line-height);text-align:center}.van-dialog__header--isolated{padding:var(--van-dialog-header-isolated-padding)}.van-dialog__content--isolated{display:flex;align-items:center;min-height:104px}.van-dialog__message{color:var(--van-text-color);flex:1;max-height:var(--van-dialog-message-max-height);padding:26px var(--van-dialog-message-padding);overflow-y:auto;font-size:var(--van-dialog-message-font-size);line-height:var(--van-dialog-message-line-height);white-space:pre-wrap;text-align:center;word-wrap:break-word;-webkit-overflow-scrolling:touch}.van-dialog__message--has-title{padding-top:var(--van-dialog-has-title-message-padding-top);color:var(--van-dialog-has-title-message-text-color)}.van-dialog__message--left{text-align:left}.van-dialog__message--right{text-align:right}.van-dialog__message--justify{text-align:justify}.van-dialog__footer{display:flex;overflow:hidden;-webkit-user-select:none;user-select:none}.van-dialog__confirm,.van-dialog__cancel{flex:1;height:var(--van-dialog-button-height);margin:0;border:0}.van-dialog__confirm,.van-dialog__confirm:active{color:var(--van-dialog-confirm-button-text-color)}.van-dialog--round-button .van-dialog__footer{position:relative;height:auto;padding:var(--van-padding-xs) var(--van-padding-lg) var(--van-padding-md)}.van-dialog--round-button .van-dialog__message{padding-bottom:var(--van-padding-md);color:var(--van-text-color)}.van-dialog--round-button .van-dialog__confirm,.van-dialog--round-button .van-dialog__cancel{height:var(--van-dialog-round-button-height)}.van-dialog--round-button .van-dialog__confirm{color:var(--van-white)}.van-dialog-bounce-enter-from{transform:translate3d(0,-50%,0) scale(.7);opacity:0}.van-dialog-bounce-leave-active{transform:translate3d(0,-50%,0) scale(.9);opacity:0}
1
+ :root{--van-dialog-width: 320px;--van-dialog-small-screen-width: 90%;--van-dialog-font-size: var(--van-font-size-lg);--van-dialog-transition: var(--van-duration-base);--van-dialog-radius: 16px;--van-dialog-background: var(--van-background-2);--van-dialog-header-font-weight: var(--van-font-bold);--van-dialog-header-line-height: 24px;--van-dialog-header-padding-top: 26px;--van-dialog-header-isolated-padding: var(--van-padding-lg) 0;--van-dialog-message-padding: var(--van-padding-lg);--van-dialog-message-font-size: var(--van-font-size-md);--van-dialog-message-line-height: var(--van-line-height-md);--van-dialog-message-max-height: 60vh;--van-dialog-has-title-message-text-color: var(--van-gray-7);--van-dialog-has-title-message-padding-top: var(--van-padding-xs);--van-dialog-button-height: 48px;--van-dialog-round-button-height: 36px;--van-dialog-confirm-button-text-color: var(--van-primary-color)}.van-dialog{top:45%;width:var(--van-dialog-width);overflow:hidden;font-size:var(--van-dialog-font-size);background:var(--van-dialog-background);border-radius:var(--van-dialog-radius);-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:var(--van-dialog-transition);transition-property:transform,opacity}@media (max-width: 321px){.van-dialog{width:var(--van-dialog-small-screen-width)}}.van-dialog__header{color:var(--van-text-color);padding-top:var(--van-dialog-header-padding-top);font-weight:var(--van-dialog-header-font-weight);line-height:var(--van-dialog-header-line-height);text-align:center}.van-dialog__header--isolated{padding:var(--van-dialog-header-isolated-padding)}.van-dialog__content--isolated{display:flex;align-items:center;min-height:104px}.van-dialog__message{color:var(--van-text-color);flex:1;max-height:var(--van-dialog-message-max-height);padding:26px var(--van-dialog-message-padding);overflow-y:auto;font-size:var(--van-dialog-message-font-size);line-height:var(--van-dialog-message-line-height);white-space:pre-wrap;text-align:center;word-wrap:break-word;-webkit-overflow-scrolling:touch}.van-dialog__message--has-title{padding-top:var(--van-dialog-has-title-message-padding-top);color:var(--van-dialog-has-title-message-text-color)}.van-dialog__message--left{text-align:left}.van-dialog__message--right{text-align:right}.van-dialog__message--justify{text-align:justify}.van-dialog__footer{display:flex;overflow:hidden;-webkit-user-select:none;user-select:none}.van-dialog__confirm,.van-dialog__cancel{flex:1;height:var(--van-dialog-button-height);margin:0;border:0;border-radius:0}.van-dialog__confirm,.van-dialog__confirm:active{color:var(--van-dialog-confirm-button-text-color)}.van-dialog--round-button .van-dialog__footer{position:relative;height:auto;padding:var(--van-padding-xs) var(--van-padding-lg) var(--van-padding-md)}.van-dialog--round-button .van-dialog__message{padding-bottom:var(--van-padding-md);color:var(--van-text-color)}.van-dialog--round-button .van-dialog__confirm,.van-dialog--round-button .van-dialog__cancel{height:var(--van-dialog-round-button-height)}.van-dialog--round-button .van-dialog__confirm{color:var(--van-white)}.van-dialog--round-button .van-action-bar-button--first{border-top-left-radius:var(--van-radius-max);border-bottom-left-radius:var(--van-radius-max)}.van-dialog--round-button .van-action-bar-button--last{border-top-right-radius:var(--van-radius-max);border-bottom-right-radius:var(--van-radius-max)}.van-dialog-bounce-enter-from{transform:translate3d(0,-50%,0) scale(.7);opacity:0}.van-dialog-bounce-leave-active{transform:translate3d(0,-50%,0) scale(.9);opacity:0}
@@ -6,6 +6,7 @@ export declare const dividerProps: {
6
6
  type: BooleanConstructor;
7
7
  default: true;
8
8
  };
9
+ vertical: BooleanConstructor;
9
10
  contentPosition: {
10
11
  type: import("vue").PropType<DividerContentPosition>;
11
12
  default: DividerContentPosition;
@@ -18,6 +19,7 @@ declare const _default: import("vue").DefineComponent<{
18
19
  type: BooleanConstructor;
19
20
  default: true;
20
21
  };
22
+ vertical: BooleanConstructor;
21
23
  contentPosition: {
22
24
  type: import("vue").PropType<DividerContentPosition>;
23
25
  default: DividerContentPosition;
@@ -28,11 +30,13 @@ declare const _default: import("vue").DefineComponent<{
28
30
  type: BooleanConstructor;
29
31
  default: true;
30
32
  };
33
+ vertical: BooleanConstructor;
31
34
  contentPosition: {
32
35
  type: import("vue").PropType<DividerContentPosition>;
33
36
  default: DividerContentPosition;
34
37
  };
35
38
  }>>, {
39
+ vertical: boolean;
36
40
  hairline: boolean;
37
41
  dashed: boolean;
38
42
  contentPosition: DividerContentPosition;
@@ -28,6 +28,7 @@ const [name, bem] = (0, import_utils.createNamespace)("divider");
28
28
  const dividerProps = {
29
29
  dashed: Boolean,
30
30
  hairline: import_utils.truthProp,
31
+ vertical: Boolean,
31
32
  contentPosition: (0, import_utils.makeStringProp)("center")
32
33
  };
33
34
  var stdin_default = (0, import_vue2.defineComponent)({
@@ -43,9 +44,10 @@ var stdin_default = (0, import_vue2.defineComponent)({
43
44
  "class": bem({
44
45
  dashed: props.dashed,
45
46
  hairline: props.hairline,
46
- [`content-${props.contentPosition}`]: !!slots.default
47
+ vertical: props.vertical,
48
+ [`content-${props.contentPosition}`]: !!slots.default && !props.vertical
47
49
  })
48
- }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
50
+ }, [!props.vertical && ((_a = slots.default) == null ? void 0 : _a.call(slots))]);
49
51
  };
50
52
  }
51
53
  });
@@ -1 +1 @@
1
- :root{--van-divider-margin: var(--van-padding-md) 0;--van-divider-text-color: var(--van-text-color-2);--van-divider-font-size: var(--van-font-size-md);--van-divider-line-height: 24px;--van-divider-border-color: var(--van-border-color);--van-divider-content-padding: var(--van-padding-md);--van-divider-content-left-width: 10%;--van-divider-content-right-width: 10%}.van-divider{display:flex;align-items:center;margin:var(--van-divider-margin);color:var(--van-divider-text-color);font-size:var(--van-divider-font-size);line-height:var(--van-divider-line-height);border-color:var(--van-divider-border-color);border-style:solid;border-width:0}.van-divider:before,.van-divider:after{display:block;flex:1;box-sizing:border-box;height:1px;border-color:inherit;border-style:inherit;border-width:var(--van-border-width) 0 0}.van-divider:before{content:""}.van-divider--hairline:before,.van-divider--hairline:after{transform:scaleY(.5)}.van-divider--dashed{border-style:dashed}.van-divider--content-center:before,.van-divider--content-left:before,.van-divider--content-right:before{margin-right:var(--van-divider-content-padding)}.van-divider--content-center:after,.van-divider--content-left:after,.van-divider--content-right:after{margin-left:var(--van-divider-content-padding);content:""}.van-divider--content-left:before{max-width:var(--van-divider-content-left-width)}.van-divider--content-right:after{max-width:var(--van-divider-content-right-width)}
1
+ :root{--van-divider-margin: var(--van-padding-md) 0;--van-divider-vertical-margin: 0 var(--van-padding-xs);--van-divider-text-color: var(--van-text-color-2);--van-divider-font-size: var(--van-font-size-md);--van-divider-line-height: 24px;--van-divider-border-color: var(--van-border-color);--van-divider-content-padding: var(--van-padding-md);--van-divider-content-left-width: 10%;--van-divider-content-right-width: 10%}.van-divider{display:flex;align-items:center;margin:var(--van-divider-margin);color:var(--van-divider-text-color);font-size:var(--van-divider-font-size);line-height:var(--van-divider-line-height);border-color:var(--van-divider-border-color);border-style:solid;border-width:0}.van-divider:before,.van-divider:after{display:block;flex:1;box-sizing:border-box;height:1px;border-color:inherit;border-style:inherit;border-width:var(--van-border-width) 0 0}.van-divider:before{content:""}.van-divider--hairline:before,.van-divider--hairline:after{transform:scaleY(.5)}.van-divider--dashed{border-style:dashed}.van-divider--content-center:before,.van-divider--content-left:before,.van-divider--content-right:before{margin-right:var(--van-divider-content-padding)}.van-divider--content-center:after,.van-divider--content-left:after,.van-divider--content-right:after{margin-left:var(--van-divider-content-padding);content:""}.van-divider--content-left:before{max-width:var(--van-divider-content-left-width)}.van-divider--content-right:after{max-width:var(--van-divider-content-right-width)}.van-divider--vertical{display:inline-block;width:var(--van-border-width);height:1em;margin:var(--van-divider-vertical-margin);vertical-align:middle}.van-divider--vertical:before{height:100%;border-width:0 0 0 var(--van-border-width)}.van-divider--vertical:after{display:none}.van-divider--vertical.van-divider--hairline:before{transform:scaleX(.5)}
@@ -4,6 +4,7 @@ export declare const Divider: import("../utils").WithInstall<import("vue").Defin
4
4
  type: BooleanConstructor;
5
5
  default: true;
6
6
  };
7
+ vertical: BooleanConstructor;
7
8
  contentPosition: {
8
9
  type: import("vue").PropType<import("./Divider").DividerContentPosition>;
9
10
  default: import("./Divider").DividerContentPosition;
@@ -14,11 +15,13 @@ export declare const Divider: import("../utils").WithInstall<import("vue").Defin
14
15
  type: BooleanConstructor;
15
16
  default: true;
16
17
  };
18
+ vertical: BooleanConstructor;
17
19
  contentPosition: {
18
20
  type: import("vue").PropType<import("./Divider").DividerContentPosition>;
19
21
  default: import("./Divider").DividerContentPosition;
20
22
  };
21
23
  }>>, {
24
+ vertical: boolean;
22
25
  hairline: boolean;
23
26
  dashed: boolean;
24
27
  contentPosition: import("./Divider").DividerContentPosition;
@@ -34,6 +34,7 @@ const getCenter = (touches) => ({
34
34
  y: (touches[0].clientY + touches[1].clientY) / 2
35
35
  });
36
36
  const bem = (0, import_utils.createNamespace)("image-preview")[1];
37
+ const longImageRatio = 2.6;
37
38
  var stdin_default = (0, import_vue2.defineComponent)({
38
39
  props: {
39
40
  src: String,
@@ -56,21 +57,14 @@ var stdin_default = (0, import_vue2.defineComponent)({
56
57
  moveY: 0,
57
58
  moving: false,
58
59
  zooming: false,
59
- imageRatio: 0,
60
- displayWidth: 0,
61
- displayHeight: 0
60
+ imageRatio: 0
62
61
  });
63
62
  const touch = (0, import_use_touch.useTouch)();
64
63
  const imageRef = (0, import_vue2.ref)();
65
64
  const swipeItem = (0, import_vue2.ref)();
66
- const vertical = (0, import_vue2.computed)(() => {
67
- const {
68
- rootWidth,
69
- rootHeight
70
- } = props;
71
- const rootRatio = rootHeight / rootWidth;
72
- return state.imageRatio > rootRatio;
73
- });
65
+ const vertical = (0, import_vue2.ref)(false);
66
+ const isLongImage = (0, import_vue2.ref)(false);
67
+ let initialMoveY = 0;
74
68
  const imageStyle = (0, import_vue2.computed)(() => {
75
69
  const {
76
70
  scale,
@@ -82,7 +76,7 @@ var stdin_default = (0, import_vue2.defineComponent)({
82
76
  const style = {
83
77
  transitionDuration: zooming || moving ? "0s" : ".3s"
84
78
  };
85
- if (scale !== 1) {
79
+ if (scale !== 1 || isLongImage.value) {
86
80
  style.transform = `matrix(${scale}, 0, 0, ${scale}, ${moveX}, ${moveY})`;
87
81
  }
88
82
  return style;
@@ -127,7 +121,7 @@ var stdin_default = (0, import_vue2.defineComponent)({
127
121
  state.moveY = (0, import_utils.clamp)(moveY, -maxMoveY.value, maxMoveY.value);
128
122
  } else {
129
123
  state.moveX = 0;
130
- state.moveY = 0;
124
+ state.moveY = isLongImage.value ? initialMoveY : 0;
131
125
  }
132
126
  emit("scale", {
133
127
  scale,
@@ -140,7 +134,7 @@ var stdin_default = (0, import_vue2.defineComponent)({
140
134
  };
141
135
  const toggleScale = () => {
142
136
  const scale = state.scale > 1 ? 1 : 2;
143
- setScale(scale, scale === 2 ? {
137
+ setScale(scale, scale === 2 || isLongImage.value ? {
144
138
  x: touch.startX.value,
145
139
  y: touch.startY.value
146
140
  } : void 0);
@@ -170,7 +164,7 @@ var stdin_default = (0, import_vue2.defineComponent)({
170
164
  startMoveY = state.moveY;
171
165
  touchStartTime = Date.now();
172
166
  isImageMoved = false;
173
- state.moving = fingerNum === 1 && state.scale !== 1;
167
+ state.moving = fingerNum === 1 && (state.scale !== 1 || isLongImage.value);
174
168
  state.zooming = fingerNum === 2 && !offsetX.value;
175
169
  if (state.zooming) {
176
170
  startScale = state.scale;
@@ -266,12 +260,30 @@ var stdin_default = (0, import_vue2.defineComponent)({
266
260
  checkTap();
267
261
  touch.reset();
268
262
  };
263
+ const resize = () => {
264
+ const {
265
+ rootWidth,
266
+ rootHeight
267
+ } = props;
268
+ const rootRatio = rootHeight / rootWidth;
269
+ const {
270
+ imageRatio
271
+ } = state;
272
+ vertical.value = state.imageRatio > rootRatio && imageRatio < longImageRatio;
273
+ isLongImage.value = state.imageRatio > rootRatio && imageRatio >= longImageRatio;
274
+ if (isLongImage.value) {
275
+ initialMoveY = (imageRatio * rootWidth - rootHeight) / 2;
276
+ state.moveY = initialMoveY;
277
+ }
278
+ resetScale();
279
+ };
269
280
  const onLoad = (event) => {
270
281
  const {
271
282
  naturalWidth,
272
283
  naturalHeight
273
284
  } = event.target;
274
285
  state.imageRatio = naturalHeight / naturalWidth;
286
+ resize();
275
287
  };
276
288
  (0, import_vue2.watch)(() => props.active, resetScale);
277
289
  (0, import_vue2.watch)(() => props.show, (value) => {
@@ -279,6 +291,7 @@ var stdin_default = (0, import_vue2.defineComponent)({
279
291
  resetScale();
280
292
  }
281
293
  });
294
+ (0, import_vue2.watch)(() => [props.rootWidth, props.rootHeight], resize);
282
295
  (0, import_use.useEventListener)("touchmove", onTouchMove, {
283
296
  target: (0, import_vue2.computed)(() => {
284
297
  var _a;