antd-mobile 5.2.0 → 5.2.1

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 (171) hide show
  1. package/2x/cjs/components/calendar/calendar.d.ts +1 -28
  2. package/2x/cjs/components/capsule-tabs/capsule-tabs.d.ts +1 -0
  3. package/2x/cjs/components/capsule-tabs/capsule-tabs.js +14 -17
  4. package/2x/cjs/components/cascade-picker/prompt.d.ts +2 -1
  5. package/2x/cjs/components/collapse/collapse.js +5 -3
  6. package/2x/cjs/components/date-picker/date-picker.js +11 -1
  7. package/2x/cjs/components/dropdown/item.js +2 -2
  8. package/2x/cjs/components/form/form.d.ts +2 -2
  9. package/2x/cjs/components/form/index.d.ts +2 -2
  10. package/2x/cjs/components/image-viewer/image-viewer.d.ts +1 -1
  11. package/2x/cjs/components/image-viewer/index.d.ts +1 -1
  12. package/2x/cjs/components/input/input.d.ts +2 -2
  13. package/2x/cjs/components/jumbo-tabs/jumbo-tabs.d.ts +1 -0
  14. package/2x/cjs/components/jumbo-tabs/jumbo-tabs.js +14 -17
  15. package/2x/cjs/components/mask/mask.js +2 -2
  16. package/2x/cjs/components/passcode-input/passcode-input.d.ts +1 -1
  17. package/2x/cjs/components/picker/prompt.d.ts +2 -2
  18. package/2x/cjs/components/popover/index.d.ts +3 -3
  19. package/2x/cjs/components/popover/popover-menu.d.ts +1 -1
  20. package/2x/cjs/components/popover/popover.d.ts +1 -1
  21. package/2x/cjs/components/popup/popup.js +2 -2
  22. package/2x/cjs/components/search-bar/search-bar.js +1 -0
  23. package/2x/cjs/components/selector/selector.d.ts +3 -1
  24. package/2x/cjs/components/stepper/stepper.d.ts +11 -2
  25. package/2x/cjs/components/swiper/index.d.ts +3 -3
  26. package/2x/cjs/components/swiper/swiper.d.ts +3 -3
  27. package/2x/cjs/components/tabs/tabs.d.ts +1 -0
  28. package/2x/cjs/components/tabs/tabs.js +17 -19
  29. package/2x/cjs/components/virtual-input/virtual-input.d.ts +2 -2
  30. package/2x/cjs/utils/measure-css-length.js +3 -1
  31. package/2x/cjs/utils/native-props.d.ts +1 -1
  32. package/2x/cjs/utils/render-to-container.d.ts +1 -1
  33. package/2x/cjs/utils/should-render.d.ts +10 -0
  34. package/{cjs/utils/use-should-render.js → 2x/cjs/utils/should-render.js} +8 -0
  35. package/2x/cjs/utils/use-drag-and-pinch.d.ts +1 -2
  36. package/2x/cjs/utils/use-isomorphic-update-layout-effect.js +1 -3
  37. package/2x/cjs/utils/use-props-value.d.ts +1 -1
  38. package/2x/cjs/utils/use-tab-list-scroll.js +3 -1
  39. package/2x/cjs/utils/use-touch.d.ts +0 -1
  40. package/2x/cjs/utils/validate.js +1 -1
  41. package/2x/cjs/utils/with-stop-propagation.d.ts +1 -1
  42. package/2x/es/components/calendar/calendar.d.ts +1 -28
  43. package/2x/es/components/capsule-tabs/capsule-tabs.d.ts +1 -0
  44. package/2x/es/components/capsule-tabs/capsule-tabs.js +13 -17
  45. package/2x/es/components/cascade-picker/prompt.d.ts +2 -1
  46. package/2x/es/components/collapse/collapse.js +4 -3
  47. package/2x/es/components/date-picker/date-picker.js +10 -1
  48. package/2x/es/components/dropdown/item.js +1 -1
  49. package/2x/es/components/form/form.d.ts +2 -2
  50. package/2x/es/components/form/index.d.ts +2 -2
  51. package/2x/es/components/image-viewer/image-viewer.d.ts +1 -1
  52. package/2x/es/components/image-viewer/index.d.ts +1 -1
  53. package/2x/es/components/input/input.d.ts +2 -2
  54. package/2x/es/components/jumbo-tabs/jumbo-tabs.d.ts +1 -0
  55. package/2x/es/components/jumbo-tabs/jumbo-tabs.js +13 -17
  56. package/2x/es/components/mask/mask.js +1 -1
  57. package/2x/es/components/passcode-input/passcode-input.d.ts +1 -1
  58. package/2x/es/components/picker/prompt.d.ts +2 -2
  59. package/2x/es/components/popover/index.d.ts +3 -3
  60. package/2x/es/components/popover/popover-menu.d.ts +1 -1
  61. package/2x/es/components/popover/popover.d.ts +1 -1
  62. package/2x/es/components/popup/popup.js +1 -1
  63. package/2x/es/components/search-bar/search-bar.js +1 -0
  64. package/2x/es/components/selector/selector.d.ts +3 -1
  65. package/2x/es/components/stepper/stepper.d.ts +11 -2
  66. package/2x/es/components/swiper/index.d.ts +3 -3
  67. package/2x/es/components/swiper/swiper.d.ts +3 -3
  68. package/2x/es/components/tabs/tabs.d.ts +1 -0
  69. package/2x/es/components/tabs/tabs.js +16 -20
  70. package/2x/es/components/virtual-input/virtual-input.d.ts +2 -2
  71. package/2x/es/utils/measure-css-length.js +3 -1
  72. package/2x/es/utils/native-props.d.ts +1 -1
  73. package/2x/es/utils/render-to-container.d.ts +1 -1
  74. package/2x/es/utils/should-render.d.ts +10 -0
  75. package/{es/utils/use-should-render.js → 2x/es/utils/should-render.js} +4 -0
  76. package/2x/es/utils/use-drag-and-pinch.d.ts +1 -2
  77. package/2x/es/utils/use-isomorphic-update-layout-effect.js +1 -2
  78. package/2x/es/utils/use-props-value.d.ts +1 -1
  79. package/2x/es/utils/use-tab-list-scroll.js +3 -2
  80. package/2x/es/utils/use-touch.d.ts +0 -1
  81. package/2x/es/utils/validate.js +1 -1
  82. package/2x/es/utils/with-stop-propagation.d.ts +1 -1
  83. package/2x/package.json +4 -4
  84. package/cjs/components/calendar/calendar.d.ts +1 -28
  85. package/cjs/components/capsule-tabs/capsule-tabs.d.ts +1 -0
  86. package/cjs/components/capsule-tabs/capsule-tabs.js +14 -17
  87. package/cjs/components/cascade-picker/prompt.d.ts +2 -1
  88. package/cjs/components/collapse/collapse.js +5 -3
  89. package/cjs/components/date-picker/date-picker.js +11 -1
  90. package/cjs/components/dropdown/item.js +2 -2
  91. package/cjs/components/form/form.d.ts +2 -2
  92. package/cjs/components/form/index.d.ts +2 -2
  93. package/cjs/components/image-viewer/image-viewer.d.ts +1 -1
  94. package/cjs/components/image-viewer/index.d.ts +1 -1
  95. package/cjs/components/input/input.d.ts +2 -2
  96. package/cjs/components/jumbo-tabs/jumbo-tabs.d.ts +1 -0
  97. package/cjs/components/jumbo-tabs/jumbo-tabs.js +14 -17
  98. package/cjs/components/mask/mask.js +2 -2
  99. package/cjs/components/passcode-input/passcode-input.d.ts +1 -1
  100. package/cjs/components/picker/prompt.d.ts +2 -2
  101. package/cjs/components/popover/index.d.ts +3 -3
  102. package/cjs/components/popover/popover-menu.d.ts +1 -1
  103. package/cjs/components/popover/popover.d.ts +1 -1
  104. package/cjs/components/popup/popup.js +2 -2
  105. package/cjs/components/search-bar/search-bar.js +1 -0
  106. package/cjs/components/selector/selector.d.ts +3 -1
  107. package/cjs/components/stepper/stepper.d.ts +11 -2
  108. package/cjs/components/swiper/index.d.ts +3 -3
  109. package/cjs/components/swiper/swiper.d.ts +3 -3
  110. package/cjs/components/tabs/tabs.d.ts +1 -0
  111. package/cjs/components/tabs/tabs.js +17 -19
  112. package/cjs/components/virtual-input/virtual-input.d.ts +2 -2
  113. package/cjs/utils/measure-css-length.js +3 -1
  114. package/cjs/utils/native-props.d.ts +1 -1
  115. package/cjs/utils/render-to-container.d.ts +1 -1
  116. package/cjs/utils/should-render.d.ts +10 -0
  117. package/{2x/cjs/utils/use-should-render.js → cjs/utils/should-render.js} +8 -0
  118. package/cjs/utils/use-drag-and-pinch.d.ts +1 -2
  119. package/cjs/utils/use-isomorphic-update-layout-effect.js +1 -3
  120. package/cjs/utils/use-props-value.d.ts +1 -1
  121. package/cjs/utils/use-tab-list-scroll.js +3 -1
  122. package/cjs/utils/use-touch.d.ts +0 -1
  123. package/cjs/utils/validate.js +1 -1
  124. package/cjs/utils/with-stop-propagation.d.ts +1 -1
  125. package/es/components/calendar/calendar.d.ts +1 -28
  126. package/es/components/capsule-tabs/capsule-tabs.d.ts +1 -0
  127. package/es/components/capsule-tabs/capsule-tabs.js +13 -17
  128. package/es/components/cascade-picker/prompt.d.ts +2 -1
  129. package/es/components/collapse/collapse.js +4 -3
  130. package/es/components/date-picker/date-picker.js +10 -1
  131. package/es/components/dropdown/item.js +1 -1
  132. package/es/components/form/form.d.ts +2 -2
  133. package/es/components/form/index.d.ts +2 -2
  134. package/es/components/image-viewer/image-viewer.d.ts +1 -1
  135. package/es/components/image-viewer/index.d.ts +1 -1
  136. package/es/components/input/input.d.ts +2 -2
  137. package/es/components/jumbo-tabs/jumbo-tabs.d.ts +1 -0
  138. package/es/components/jumbo-tabs/jumbo-tabs.js +13 -17
  139. package/es/components/mask/mask.js +1 -1
  140. package/es/components/passcode-input/passcode-input.d.ts +1 -1
  141. package/es/components/picker/prompt.d.ts +2 -2
  142. package/es/components/popover/index.d.ts +3 -3
  143. package/es/components/popover/popover-menu.d.ts +1 -1
  144. package/es/components/popover/popover.d.ts +1 -1
  145. package/es/components/popup/popup.js +1 -1
  146. package/es/components/search-bar/search-bar.js +1 -0
  147. package/es/components/selector/selector.d.ts +3 -1
  148. package/es/components/stepper/stepper.d.ts +11 -2
  149. package/es/components/swiper/index.d.ts +3 -3
  150. package/es/components/swiper/swiper.d.ts +3 -3
  151. package/es/components/tabs/tabs.d.ts +1 -0
  152. package/es/components/tabs/tabs.js +16 -20
  153. package/es/components/virtual-input/virtual-input.d.ts +2 -2
  154. package/es/utils/measure-css-length.js +3 -1
  155. package/es/utils/native-props.d.ts +1 -1
  156. package/es/utils/render-to-container.d.ts +1 -1
  157. package/es/utils/should-render.d.ts +10 -0
  158. package/{2x/es/utils/use-should-render.js → es/utils/should-render.js} +4 -0
  159. package/es/utils/use-drag-and-pinch.d.ts +1 -2
  160. package/es/utils/use-isomorphic-update-layout-effect.js +1 -2
  161. package/es/utils/use-props-value.d.ts +1 -1
  162. package/es/utils/use-tab-list-scroll.js +3 -2
  163. package/es/utils/use-touch.d.ts +0 -1
  164. package/es/utils/validate.js +1 -1
  165. package/es/utils/with-stop-propagation.d.ts +1 -1
  166. package/package.json +4 -4
  167. package/umd/antd-mobile.js +1 -1
  168. package/2x/cjs/utils/use-should-render.d.ts +0 -1
  169. package/2x/es/utils/use-should-render.d.ts +0 -1
  170. package/cjs/utils/use-should-render.d.ts +0 -1
  171. package/es/utils/use-should-render.d.ts +0 -1
@@ -1,16 +1,25 @@
1
1
  import { FC } from 'react';
2
2
  import { NativeProps } from '../../utils/native-props';
3
3
  import { InputProps } from '../input';
4
- export declare type StepperProps = Pick<InputProps, 'onFocus' | 'onBlur'> & {
4
+ declare type ValueProps = {
5
+ allowEmpty: true;
5
6
  value?: number | null;
6
7
  defaultValue?: number | null;
7
8
  onChange?: (value: number | null) => void;
9
+ };
10
+ declare type ValuePropsWithNull = {
11
+ allowEmpty?: false;
12
+ value?: number;
13
+ defaultValue?: number;
14
+ onChange?: (value: number) => void;
15
+ };
16
+ export declare type StepperProps = Pick<InputProps, 'onFocus' | 'onBlur'> & (ValuePropsWithNull | ValueProps) & {
8
17
  min?: number;
9
18
  max?: number;
10
19
  step?: number;
11
20
  digits?: number;
12
21
  disabled?: boolean;
13
22
  inputReadOnly?: boolean;
14
- allowEmpty?: boolean;
15
23
  } & NativeProps<'--height' | '--input-width' | '--input-font-size' | '--input-background-color' | '--border-radius' | '--border' | '--border-inner' | '--active-border' | '--button-font-size' | '--button-background-color' | '--button-width' | '--input-font-color' | '--button-text-color'>;
16
24
  export declare const Stepper: FC<StepperProps>;
25
+ export {};
@@ -7,15 +7,15 @@ declare const _default: import("react").ForwardRefExoticComponent<{
7
7
  autoplay?: boolean | undefined;
8
8
  autoplayInterval?: number | undefined;
9
9
  loop?: boolean | undefined;
10
- direction?: "horizontal" | "vertical" | undefined;
10
+ direction?: "vertical" | "horizontal" | undefined;
11
11
  onIndexChange?: ((index: number) => void) | undefined;
12
- indicatorProps?: Pick<import("../page-indicator").PageIndicatorProps, "style" | "color" | "className"> | undefined;
12
+ indicatorProps?: Pick<import("../page-indicator").PageIndicatorProps, "style" | "className" | "color"> | undefined;
13
13
  indicator?: ((total: number, current: number) => import("react").ReactNode) | undefined;
14
14
  slideSize?: number | undefined;
15
15
  trackOffset?: number | undefined;
16
16
  stuckAtBoundary?: boolean | undefined;
17
17
  rubberband?: boolean | undefined;
18
- children?: import("react").ReactElement<any, string | ((props: any) => import("react").ReactElement<any, any> | null) | (new (props: any) => import("react").Component<any, any, any>)> | import("react").ReactElement<any, string | ((props: any) => import("react").ReactElement<any, any> | null) | (new (props: any) => import("react").Component<any, any, any>)>[] | undefined;
18
+ children?: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>[] | undefined;
19
19
  } & import("../../utils/native-props").NativeProps<"--border-radius" | "--width" | "--height" | "--track-padding"> & import("react").RefAttributes<import("./swiper").SwiperRef>> & {
20
20
  Item: import("react").FC<{
21
21
  onClick?: ((e: import("react").MouseEvent<HTMLDivElement, MouseEvent>) => void) | undefined;
@@ -28,13 +28,13 @@ export declare const Swiper: React.ForwardRefExoticComponent<{
28
28
  autoplay?: boolean | undefined;
29
29
  autoplayInterval?: number | undefined;
30
30
  loop?: boolean | undefined;
31
- direction?: "horizontal" | "vertical" | undefined;
31
+ direction?: "vertical" | "horizontal" | undefined;
32
32
  onIndexChange?: ((index: number) => void) | undefined;
33
- indicatorProps?: Pick<PageIndicatorProps, "style" | "color" | "className"> | undefined;
33
+ indicatorProps?: Pick<PageIndicatorProps, "style" | "className" | "color"> | undefined;
34
34
  indicator?: ((total: number, current: number) => ReactNode) | undefined;
35
35
  slideSize?: number | undefined;
36
36
  trackOffset?: number | undefined;
37
37
  stuckAtBoundary?: boolean | undefined;
38
38
  rubberband?: boolean | undefined;
39
- children?: React.ReactElement<any, string | ((props: any) => React.ReactElement<any, any> | null) | (new (props: any) => React.Component<any, any, any>)> | React.ReactElement<any, string | ((props: any) => React.ReactElement<any, any> | null) | (new (props: any) => React.Component<any, any, any>)>[] | undefined;
39
+ children?: React.ReactElement<any, string | React.JSXElementConstructor<any>> | React.ReactElement<any, string | React.JSXElementConstructor<any>>[] | undefined;
40
40
  } & NativeProps<"--border-radius" | "--width" | "--height" | "--track-padding"> & React.RefAttributes<SwiperRef>>;
@@ -4,6 +4,7 @@ export declare type TabProps = {
4
4
  title: ReactNode;
5
5
  disabled?: boolean;
6
6
  forceRender?: boolean;
7
+ destroyOnClose?: boolean;
7
8
  } & NativeProps;
8
9
  export declare const Tab: FC<TabProps>;
9
10
  export declare type TabsProps = {
@@ -4,10 +4,12 @@ import { useSpring, animated } from '@react-spring/web';
4
4
  import { withNativeProps } from '../../utils/native-props';
5
5
  import { usePropsValue } from '../../utils/use-props-value';
6
6
  import { bound } from '../../utils/bound';
7
- import { useUpdateLayoutEffect, useThrottleFn, useIsomorphicLayoutEffect } from 'ahooks';
7
+ import { useThrottleFn, useIsomorphicLayoutEffect } from 'ahooks';
8
8
  import { useMutationEffect } from '../../utils/use-mutation-effect';
9
9
  import { useResizeEffect } from '../../utils/use-resize-effect';
10
10
  import { mergeProps } from '../../utils/with-default-props';
11
+ import { useIsomorphicUpdateLayoutEffect } from '../../utils/use-isomorphic-update-layout-effect';
12
+ import { ShouldRender } from '../../utils/should-render';
11
13
  const classPrefix = `adm-tabs`;
12
14
  export const Tab = () => {
13
15
  return null;
@@ -137,7 +139,7 @@ export const Tabs = p => {
137
139
  useIsomorphicLayoutEffect(() => {
138
140
  animate(!x.isAnimating);
139
141
  }, []);
140
- useUpdateLayoutEffect(() => {
142
+ useIsomorphicUpdateLayoutEffect(() => {
141
143
  animate();
142
144
  }, [activeKey]);
143
145
  useResizeEffect(() => {
@@ -224,23 +226,17 @@ export const Tabs = p => {
224
226
  return null;
225
227
  }
226
228
 
227
- if (pane.key === activeKey) {
228
- return React.createElement("div", {
229
- key: pane.key,
230
- className: `${classPrefix}-content`
231
- }, pane.props.children);
232
- }
233
-
234
- if (pane.props.forceRender) {
235
- return React.createElement("div", {
236
- key: pane.key,
237
- className: `${classPrefix}-content`,
238
- style: {
239
- display: 'none'
240
- }
241
- }, pane.props.children);
242
- }
243
-
244
- return null;
229
+ const active = pane.key === activeKey;
230
+ return React.createElement(ShouldRender, {
231
+ key: pane.key,
232
+ active: active,
233
+ forceRender: pane.props.forceRender,
234
+ destroyOnClose: pane.props.destroyOnClose
235
+ }, React.createElement("div", {
236
+ className: `${classPrefix}-content`,
237
+ style: {
238
+ display: active ? 'block' : 'none'
239
+ }
240
+ }, pane.props.children));
245
241
  })));
246
242
  };
@@ -18,7 +18,7 @@ export declare const VirtualInput: React.ForwardRefExoticComponent<{
18
18
  onFocus?: (() => void) | undefined;
19
19
  onBlur?: (() => void) | undefined;
20
20
  onClick?: ((e: React.MouseEvent<HTMLDivElement>) => void) | undefined;
21
- keyboard?: React.ReactElement<NumberKeyboardProps, string | ((props: any) => React.ReactElement<any, any> | null) | (new (props: any) => React.Component<any, any, any>)> | undefined;
21
+ keyboard?: React.ReactElement<NumberKeyboardProps, string | React.JSXElementConstructor<any>> | undefined;
22
22
  clearable?: boolean | undefined;
23
23
  onClear?: (() => void) | undefined;
24
- } & Pick<InputProps, "value" | "disabled" | "onChange" | "placeholder"> & NativeProps<"--color" | "--font-size" | "--placeholder-color" | "--text-align" | "--disabled-color" | "--caret-width" | "--caret-color"> & React.RefAttributes<VirtualInputRef>>;
24
+ } & Pick<InputProps, "value" | "onChange" | "disabled" | "placeholder"> & NativeProps<"--color" | "--font-size" | "--placeholder-color" | "--text-align" | "--disabled-color" | "--caret-width" | "--caret-color"> & React.RefAttributes<VirtualInputRef>>;
@@ -7,9 +7,11 @@ export function measureCSSLength(raw) {
7
7
  return parseFloat(withUnit);
8
8
  } else if (withUnit.endsWith('rem')) {
9
9
  return parseFloat(withUnit) * parseFloat(window.getComputedStyle(document.documentElement).fontSize);
10
+ } else if (withUnit.endsWith('vw')) {
11
+ return parseFloat(withUnit) * window.innerWidth / 100;
10
12
  } else {
11
13
  if (isDev) {
12
- devError('Global', 'You are using a not supported CSS unit. Only `px` and `rem` are supported.');
14
+ devError('Global', 'You are using a not supported CSS unit. Only `px` `rem` and `vw` are supported.');
13
15
  }
14
16
 
15
17
  return 0;
@@ -5,4 +5,4 @@ export interface NativeProps<S extends string = never> {
5
5
  style?: CSSProperties & Partial<Record<S, string>>;
6
6
  tabIndex?: number;
7
7
  }
8
- export declare function withNativeProps<P extends NativeProps>(props: P, element: ReactElement): React.ReactElement<any, string | ((props: any) => React.ReactElement<any, any> | null) | (new (props: any) => React.Component<any, any, any>)>;
8
+ export declare function withNativeProps<P extends NativeProps>(props: P, element: ReactElement): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
@@ -1,3 +1,3 @@
1
1
  import { ReactElement } from 'react';
2
2
  export declare type GetContainer = HTMLElement | (() => HTMLElement) | null;
3
- export declare function renderToContainer(getContainer: GetContainer, node: ReactElement): ReactElement<any, string | ((props: any) => ReactElement<any, any> | null) | (new (props: any) => import("react").Component<any, any, any>)>;
3
+ export declare function renderToContainer(getContainer: GetContainer, node: ReactElement): ReactElement<any, string | import("react").JSXElementConstructor<any>>;
@@ -0,0 +1,10 @@
1
+ import { FC, ReactElement } from 'react';
2
+ interface Props {
3
+ active: boolean;
4
+ forceRender?: boolean;
5
+ destroyOnClose?: boolean;
6
+ children: ReactElement;
7
+ }
8
+ export declare const ShouldRender: FC<Props>;
9
+ export declare function useShouldRender(active: boolean, forceRender?: boolean, destroyOnClose?: boolean): boolean;
10
+ export {};
@@ -1,4 +1,8 @@
1
1
  import { useInitialized } from './use-initialized';
2
+ export const ShouldRender = props => {
3
+ const shouldRender = useShouldRender(props.active, props.forceRender, props.destroyOnClose);
4
+ return shouldRender ? props.children : null;
5
+ };
2
6
  export function useShouldRender(active, forceRender, destroyOnClose) {
3
7
  const initialized = useInitialized(active);
4
8
  if (forceRender) return true;
@@ -1,2 +1 @@
1
- /// <reference types="react" />
2
- export declare const useDragAndPinch: <Config extends import("@use-gesture/react").UserGestureConfig = import("@use-gesture/react").UserGestureConfig>(_handlers: Partial<import("@use-gesture/react").NativeHandlers<import("@use-gesture/react").EventTypes> & import("@use-gesture/react").UserHandlers<import("@use-gesture/react").EventTypes>>, _config?: {} | Config | undefined) => Config["target"] extends object ? void : (...args: any[]) => Pick<import("react").DOMAttributes<EventTarget>, "onClick" | "onChange" | "onPause" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDragCapture" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScrollCapture" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture">;
1
+ export declare const useDragAndPinch: <Config extends import("@use-gesture/react").UserGestureConfig = import("@use-gesture/react").UserGestureConfig>(_handlers: Partial<import("@use-gesture/react").NativeHandlers<import("@use-gesture/react").EventTypes> & import("@use-gesture/react").UserHandlers<import("@use-gesture/react").EventTypes>>, _config?: {} | Config | undefined) => Config["target"] extends object ? void : (...args: any[]) => import("@use-gesture/react").ReactDOMAttributes;
@@ -1,3 +1,2 @@
1
- import { createUpdateEffect } from 'ahooks/lib/createUpdateEffect';
2
- import { useIsomorphicLayoutEffect } from 'ahooks';
1
+ import { createUpdateEffect, useIsomorphicLayoutEffect } from 'ahooks';
3
2
  export const useIsomorphicUpdateLayoutEffect = createUpdateEffect(useIsomorphicLayoutEffect);
@@ -3,5 +3,5 @@ declare type Options<T> = {
3
3
  defaultValue: T;
4
4
  onChange?: (v: T) => void;
5
5
  };
6
- export declare function usePropsValue<T>(options: Options<T>): readonly [T, (v: T) => void];
6
+ export declare function usePropsValue<T>(options: Options<T>): readonly [T, (this: unknown, v: T) => void];
7
7
  export {};
@@ -1,7 +1,8 @@
1
1
  import { useSpring } from '@react-spring/web';
2
2
  import { useMutationEffect } from './use-mutation-effect';
3
3
  import { bound } from './bound';
4
- import { useIsomorphicLayoutEffect, useUpdateLayoutEffect } from 'ahooks';
4
+ import { useIsomorphicLayoutEffect } from 'ahooks';
5
+ import { useIsomorphicUpdateLayoutEffect } from './use-isomorphic-update-layout-effect';
5
6
  export const useTabListScroll = (targetRef, activeIndex) => {
6
7
  const [{
7
8
  scrollLeft
@@ -39,7 +40,7 @@ export const useTabListScroll = (targetRef, activeIndex) => {
39
40
  useIsomorphicLayoutEffect(() => {
40
41
  animate(true);
41
42
  }, []);
42
- useUpdateLayoutEffect(() => {
43
+ useIsomorphicUpdateLayoutEffect(() => {
43
44
  animate();
44
45
  }, [activeIndex]);
45
46
  useMutationEffect(() => {
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  declare type Direction = '' | 'vertical' | 'horizontal';
3
2
  export declare function useTouch(): {
4
3
  move: EventListener;
@@ -6,7 +6,7 @@ export function isObject(val) {
6
6
  return val !== null && typeof val === 'object';
7
7
  }
8
8
  export function isPromise(obj) {
9
- return obj && typeof obj === 'object' && typeof obj.then === 'function';
9
+ return !!obj && typeof obj === 'object' && typeof obj.then === 'function';
10
10
  }
11
11
  export function isDate(val) {
12
12
  return Object.prototype.toString.call(val) === '[object Date]' && !Number.isNaN(val.getTime());
@@ -1,3 +1,3 @@
1
1
  import React, { ReactElement } from 'react';
2
2
  export declare type PropagationEvent = 'click';
3
- export declare function withStopPropagation(events: PropagationEvent[], element: ReactElement): React.ReactElement<any, string | ((props: any) => React.ReactElement<any, any> | null) | (new (props: any) => React.Component<any, any, any>)>;
3
+ export declare function withStopPropagation(events: PropagationEvent[], element: ReactElement): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
package/package.json CHANGED
@@ -1,20 +1,20 @@
1
1
  {
2
2
  "name": "antd-mobile",
3
- "version": "5.2.0",
3
+ "version": "5.2.1",
4
4
  "dependencies": {
5
5
  "@react-spring/web": "^9.4.3",
6
6
  "@types/resize-observer-browser": "^0.1.7",
7
7
  "@use-gesture/react": "^10.2.6",
8
- "ahooks": "^3.1.9",
8
+ "ahooks": "^3.1.10",
9
9
  "antd-mobile-icons": "^0.2.2",
10
10
  "antd-mobile-v5-count": "^1.0.1",
11
11
  "classnames": "^2.3.1",
12
12
  "dayjs": "^1.10.7",
13
13
  "lodash": "^4.17.21",
14
- "rc-field-form": "^1.22.1",
14
+ "rc-field-form": "^1.23.0",
15
15
  "rc-tooltip": "^5.1.1",
16
16
  "staged-components": "^1.1.2",
17
- "tslib": "^1.14.1",
17
+ "tslib": "^2.3.1",
18
18
  "use-async-memo": "^1.2.3"
19
19
  },
20
20
  "peerDependencies": {