@react-native-ohos/react-native-pager-view 6.7.2-rc.2 → 7.0.3-rc.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 (39) hide show
  1. package/README.OpenSource +10 -10
  2. package/README.md +1 -1
  3. package/harmony/pager_view/oh-package.json5 +2 -2
  4. package/harmony/pager_view/src/main/cpp/SwiperNode.cpp +3 -0
  5. package/harmony/pager_view/src/main/cpp/SwiperNode.h +2 -0
  6. package/harmony/pager_view/src/main/cpp/ViewPagerComponentInstance.cpp +1 -1
  7. package/harmony/pager_view.har +0 -0
  8. package/lib/commonjs/PagerView.js +66 -66
  9. package/lib/commonjs/PagerView.js.map +1 -1
  10. package/lib/commonjs/PagerViewNativeComponent.js.map +1 -1
  11. package/lib/commonjs/index.js.map +1 -1
  12. package/lib/commonjs/package.json +1 -0
  13. package/lib/commonjs/usePagerView.js +1 -4
  14. package/lib/commonjs/usePagerView.js.map +1 -1
  15. package/lib/commonjs/utils.js +12 -7
  16. package/lib/commonjs/utils.js.map +1 -1
  17. package/lib/module/PagerView.js +66 -67
  18. package/lib/module/PagerView.js.map +1 -1
  19. package/lib/module/PagerViewNativeComponent.js +2 -0
  20. package/lib/module/PagerViewNativeComponent.js.map +1 -1
  21. package/lib/module/index.js +2 -0
  22. package/lib/module/index.js.map +1 -1
  23. package/lib/module/usePagerView.js +3 -4
  24. package/lib/module/usePagerView.js.map +1 -1
  25. package/lib/module/utils.js +14 -7
  26. package/lib/module/utils.js.map +1 -1
  27. package/lib/typescript/PagerView.d.ts +1 -0
  28. package/lib/typescript/PagerView.d.ts.map +1 -0
  29. package/lib/typescript/PagerViewNativeComponent.d.ts +1 -0
  30. package/lib/typescript/PagerViewNativeComponent.d.ts.map +1 -0
  31. package/lib/typescript/index.d.ts +1 -0
  32. package/lib/typescript/index.d.ts.map +1 -0
  33. package/lib/typescript/usePagerView.d.ts +2 -1
  34. package/lib/typescript/usePagerView.d.ts.map +1 -0
  35. package/lib/typescript/utils.d.ts +1 -0
  36. package/lib/typescript/utils.d.ts.map +1 -0
  37. package/package.json +18 -18
  38. package/src/utils.tsx +4 -1
  39. package/harmony/pager_view/BuildProfile.ets +0 -17
package/README.OpenSource CHANGED
@@ -1,11 +1,11 @@
1
- [
2
- {
3
- "Name": "react-native-pager-view",
4
- "License": "MIT License",
5
- "License File": " LICENSE ",
6
- "Version Number": "6.7.1",
7
- "Owner" : "xiafeng@huawei.com",
8
- "Upstream URL": "https://github.com/callstack/react-native-pager-view",
9
- "Description": "React Native wrapper for the Android ViewPager and iOS UIPageViewController."
10
- }
1
+ [
2
+ {
3
+ "Name": "react-native-pager-view",
4
+ "License": "MIT License",
5
+ "License File": " LICENSE ",
6
+ "Version Number": "7.0.2",
7
+ "Owner" : "xiafeng@huawei.com",
8
+ "Upstream URL": "https://github.com/callstack/react-native-pager-view",
9
+ "Description": "React Native wrapper for the Android ViewPager and iOS UIPageViewController."
10
+ }
11
11
  ]
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @react-native-ohos/react-native-pager-view
2
2
 
3
- This project is based on [react-native-pager-view](https://github.com/callstack/react-native-pager-view)
3
+ This project is based on [react-native-pager-view@v7.0.2](https://github.com/callstack/react-native-pager-view/releases/tag/v7.0.2)
4
4
 
5
5
  ## Documentation
6
6
 
@@ -5,9 +5,9 @@
5
5
  "name": "@react-native-ohos/react-native-pager-view",
6
6
  "description": "React Native wrapper for HarmonyOS ViewPager",
7
7
  "main": "index.ets",
8
- "version": "6.7.2-rc.2",
8
+ "version": "7.0.3-rc.1",
9
9
  "dependencies": {
10
- "@rnoh/react-native-openharmony": "file:../react_native_openharmony.har"
10
+ "@rnoh/react-native-openharmony": "file:../../node_modules/@react-native-oh/react-native-harmony/harmony/react_native_openharmony.har"
11
11
  },
12
12
  "metadata": {
13
13
  "sourceRoots": [
@@ -42,6 +42,9 @@ namespace rnoh {
42
42
  m_nodeHandle, NODE_SWIPER_EVENT_ON_CONTENT_DID_SCROLL, NODE_SWIPER_EVENT_ON_CONTENT_DID_SCROLL, this));
43
43
  maybeThrow(NativeNodeApi::getInstance()->registerNodeEvent(
44
44
  m_nodeHandle, NODE_EVENT_ON_APPEAR, NODE_EVENT_ON_APPEAR, this));
45
+ ArkUI_NumberValue indexValue[] = {{.i32 = m_swiperNestedScrollMode}};
46
+ ArkUI_AttributeItem indexItem = {indexValue, sizeof(indexValue) / sizeof(ArkUI_NumberValue)};
47
+ maybeThrow(NativeNodeApi::getInstance()->setAttribute(m_nodeHandle, NODE_SWIPER_NESTED_SCROLL, &indexItem));
45
48
  }
46
49
 
47
50
 
@@ -26,6 +26,7 @@
26
26
 
27
27
  #include "RNOH/arkui/ArkUINode.h"
28
28
  #include "generated/react/renderer/components/react_native_pager_view/EventEmitters.h"
29
+ #include <arkui/native_type.h>
29
30
 
30
31
  namespace rnoh {
31
32
 
@@ -81,6 +82,7 @@ namespace rnoh {
81
82
  std::chrono::high_resolution_clock::time_point animationEnd;
82
83
  bool m_interceptSendOffset = false;
83
84
  std::map<void*,ArkUI_NodeHandle> m_nodeHandleMap;
85
+ ArkUI_SwiperNestedScrollMode m_swiperNestedScrollMode = ARKUI_SWIPER_NESTED_SRCOLL_SELF_FIRST;
84
86
  public:
85
87
  SwiperNode();
86
88
 
@@ -55,7 +55,7 @@ void ViewPagerComponentInstance::onPropsChanged(SharedConcreteProps const &props
55
55
  << " pageMargin:" << props->pageMargin << " offscreenPageLimit:" << props->offscreenPageLimit
56
56
  << " overdrag:" << props->overdrag << " overScrollMode:" << facebook::react::toString(props->overScrollMode);
57
57
  this->m_scrollEnabled = props->scrollEnabled;
58
- this->m_pageIndex = props->initialPage;
58
+ if (m_isInitialPage) this->m_pageIndex = props->initialPage;
59
59
  this->m_keyboardDismissMode = facebook::react::toString(props->keyboardDismissMode);
60
60
  this->getLocalRootArkUINode().setVertical(facebook::react::toString(props->orientation));
61
61
  this->getLocalRootArkUINode().setDirection(facebook::react::toString(props->layoutDirection));
Binary file
@@ -8,12 +8,10 @@ var _react = _interopRequireDefault(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _utils = require("./utils");
10
10
  var _PagerViewNativeComponent = _interopRequireWildcard(require("./PagerViewNativeComponent"));
11
+ var _jsxRuntime = require("react/jsx-runtime");
11
12
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
12
13
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
14
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
15
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
16
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /**
14
+ /**
17
15
  * MIT License
18
16
  *
19
17
  * Copyright (C) 2025 Huawei Device Co., Ltd.
@@ -36,6 +34,7 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
36
34
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
37
35
  * SOFTWARE.
38
36
  */
37
+
39
38
  /**
40
39
  * Container that allows to flip left and right between child views. Each
41
40
  * child view of the `PagerView` will be treated as a separate page
@@ -79,66 +78,8 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
79
78
  */
80
79
 
81
80
  class PagerView extends _react.default.Component {
82
- constructor(...args) {
83
- super(...args);
84
- _defineProperty(this, "isScrolling", false);
85
- _defineProperty(this, "pagerView", null);
86
- _defineProperty(this, "_onPageScroll", e => {
87
- if (this.props.onPageScroll) {
88
- this.props.onPageScroll(e);
89
- }
90
-
91
- // Not implemented on iOS yet
92
- // @ts-ignore
93
- if (_reactNative.Platform.OS === 'android' || _reactNative.Platform.OS === 'harmony') {
94
- if (this.props.keyboardDismissMode === 'on-drag') {
95
- _reactNative.Keyboard.dismiss();
96
- }
97
- }
98
- });
99
- _defineProperty(this, "_onPageScrollStateChanged", e => {
100
- if (this.props.onPageScrollStateChanged) {
101
- this.props.onPageScrollStateChanged(e);
102
- }
103
- this.isScrolling = e.nativeEvent.pageScrollState === 'dragging';
104
- });
105
- _defineProperty(this, "_onPageSelected", e => {
106
- if (this.props.onPageSelected) {
107
- this.props.onPageSelected(e);
108
- }
109
- });
110
- _defineProperty(this, "_onMoveShouldSetResponderCapture", () => {
111
- return this.isScrolling;
112
- });
113
- /**
114
- * A helper function to scroll to a specific page in the PagerView.
115
- * The transition between pages will be animated.
116
- */
117
- _defineProperty(this, "setPage", selectedPage => {
118
- if (this.pagerView) {
119
- _PagerViewNativeComponent.Commands.setPage(this.pagerView, selectedPage);
120
- }
121
- });
122
- /**
123
- * A helper function to scroll to a specific page in the PagerView.
124
- * The transition between pages will *not* be animated.
125
- */
126
- _defineProperty(this, "setPageWithoutAnimation", selectedPage => {
127
- if (this.pagerView) {
128
- _PagerViewNativeComponent.Commands.setPageWithoutAnimation(this.pagerView, selectedPage);
129
- }
130
- });
131
- /**
132
- * A helper function to enable/disable scroll imperatively
133
- * The recommended way is using the scrollEnabled prop, however, there might be a case where a
134
- * imperative solution is more useful (e.g. for not blocking an animation)
135
- */
136
- _defineProperty(this, "setScrollEnabled", scrollEnabled => {
137
- if (this.pagerView) {
138
- _PagerViewNativeComponent.Commands.setScrollEnabledImperatively(this.pagerView, scrollEnabled);
139
- }
140
- });
141
- }
81
+ isScrolling = false;
82
+ pagerView = null;
142
83
  get deducedLayoutDirection() {
143
84
  if (!this.props.layoutDirection ||
144
85
  //@ts-ignore fix it
@@ -148,8 +89,67 @@ class PagerView extends _react.default.Component {
148
89
  return this.props.layoutDirection;
149
90
  }
150
91
  }
92
+ _onPageScroll = e => {
93
+ if (this.props.onPageScroll) {
94
+ this.props.onPageScroll(e);
95
+ }
96
+
97
+ // Not implemented on iOS yet
98
+ // @ts-ignore
99
+ if (_reactNative.Platform.OS === 'android' || _reactNative.Platform.OS === 'harmony') {
100
+ if (this.props.keyboardDismissMode === 'on-drag') {
101
+ _reactNative.Keyboard.dismiss();
102
+ }
103
+ }
104
+ };
105
+ _onPageScrollStateChanged = e => {
106
+ if (this.props.onPageScrollStateChanged) {
107
+ this.props.onPageScrollStateChanged(e);
108
+ }
109
+ this.isScrolling = e.nativeEvent.pageScrollState === 'dragging';
110
+ };
111
+ _onPageSelected = e => {
112
+ if (this.props.onPageSelected) {
113
+ this.props.onPageSelected(e);
114
+ }
115
+ };
116
+ _onMoveShouldSetResponderCapture = () => {
117
+ return this.isScrolling;
118
+ };
119
+
120
+ /**
121
+ * A helper function to scroll to a specific page in the PagerView.
122
+ * The transition between pages will be animated.
123
+ */
124
+ setPage = selectedPage => {
125
+ if (this.pagerView) {
126
+ _PagerViewNativeComponent.Commands.setPage(this.pagerView, selectedPage);
127
+ }
128
+ };
129
+
130
+ /**
131
+ * A helper function to scroll to a specific page in the PagerView.
132
+ * The transition between pages will *not* be animated.
133
+ */
134
+ setPageWithoutAnimation = selectedPage => {
135
+ if (this.pagerView) {
136
+ _PagerViewNativeComponent.Commands.setPageWithoutAnimation(this.pagerView, selectedPage);
137
+ }
138
+ };
139
+
140
+ /**
141
+ * A helper function to enable/disable scroll imperatively
142
+ * The recommended way is using the scrollEnabled prop, however, there might be a case where a
143
+ * imperative solution is more useful (e.g. for not blocking an animation)
144
+ */
145
+ setScrollEnabled = scrollEnabled => {
146
+ if (this.pagerView) {
147
+ _PagerViewNativeComponent.Commands.setScrollEnabledImperatively(this.pagerView, scrollEnabled);
148
+ }
149
+ };
151
150
  render() {
152
- return /*#__PURE__*/_react.default.createElement(_PagerViewNativeComponent.default, _extends({}, this.props, {
151
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PagerViewNativeComponent.default, {
152
+ ...this.props,
153
153
  ref: ref => {
154
154
  this.pagerView = ref;
155
155
  },
@@ -160,7 +160,7 @@ class PagerView extends _react.default.Component {
160
160
  onPageSelected: this._onPageSelected,
161
161
  onMoveShouldSetResponderCapture: this._onMoveShouldSetResponderCapture,
162
162
  children: (0, _utils.childrenWithOverriddenStyle)(this.props.children)
163
- }));
163
+ });
164
164
  }
165
165
  }
166
166
  exports.PagerView = PagerView;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_utils","_PagerViewNativeComponent","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_defineProperty","_toPropertyKey","value","enumerable","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","PagerView","React","Component","constructor","args","props","onPageScroll","Platform","OS","keyboardDismissMode","Keyboard","dismiss","onPageScrollStateChanged","isScrolling","nativeEvent","pageScrollState","onPageSelected","selectedPage","pagerView","PagerViewNativeCommands","setPage","setPageWithoutAnimation","scrollEnabled","setScrollEnabledImperatively","deducedLayoutDirection","layoutDirection","I18nManager","isRTL","render","createElement","ref","style","_onPageScroll","_onPageScrollStateChanged","_onPageSelected","onMoveShouldSetResponderCapture","_onMoveShouldSetResponderCapture","children","childrenWithOverriddenStyle","exports"],"sources":["PagerView.tsx"],"sourcesContent":["/**\r\n * MIT License\r\n *\r\n * Copyright (C) 2025 Huawei Device Co., Ltd.\r\n *\r\n * Permission is hereby granted, free of charge, to any person obtaining a copy\r\n * of this software and associated documentation files (the \"Software\"), to deal\r\n * in the Software without restriction, including without limitation the rights\r\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\n * copies of the Software, and to permit persons to whom the Software is\r\n * furnished to do so, subject to the following conditions:\r\n *\r\n * The above copyright notice and this permission notice shall be included in all\r\n * copies or substantial portions of the Software.\r\n *\r\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r\n * SOFTWARE.\r\n */\r\nimport React from 'react';\r\nimport { Platform, Keyboard } from 'react-native';\r\nimport { I18nManager } from 'react-native';\r\nimport type * as ReactNative from 'react-native';\r\n\r\nimport {\r\n childrenWithOverriddenStyle,\r\n} from './utils';\r\n\r\nimport PagerViewNativeComponent, {\r\n Commands as PagerViewNativeCommands,\r\n OnPageScrollEventData,\r\n OnPageScrollStateChangedEventData,\r\n OnPageSelectedEventData,\r\n NativeProps,\r\n} from './PagerViewNativeComponent';\r\n\r\n\r\n/**\r\n * Container that allows to flip left and right between child views. Each\r\n * child view of the `PagerView` will be treated as a separate page\r\n * and will be stretched to fill the `PagerView`.\r\n *\r\n * It is important all children are `<View>`s and not composite components.\r\n * You can set style properties like `padding` or `backgroundColor` for each\r\n * child. It is also important that each child have a `key` prop.\r\n *\r\n * Example:\r\n *\r\n * ```\r\n * render: function() {\r\n * return (\r\n * <PagerView\r\n * style={styles.PagerView}\r\n * initialPage={0}>\r\n * <View style={styles.pageStyle} key=\"1\">\r\n * <Text>First page</Text>\r\n * </View>\r\n * <View style={styles.pageStyle} key=\"2\">\r\n * <Text>Second page</Text>\r\n * </View>\r\n * </PagerView>\r\n * );\r\n * }\r\n *\r\n * ...\r\n *\r\n * var styles = {\r\n * ...\r\n * PagerView: {\r\n * flex: 1\r\n * },\r\n * pageStyle: {\r\n * alignItems: 'center',\r\n * padding: 20,\r\n * }\r\n * }\r\n * ```\r\n */\r\n\r\nexport class PagerView extends React.Component<NativeProps> {\r\n private isScrolling = false;\r\n pagerView: React.ElementRef<typeof PagerViewNativeComponent> | null = null;\r\n\r\n\r\n private get deducedLayoutDirection() {\r\n if (\r\n !this.props.layoutDirection ||\r\n //@ts-ignore fix it\r\n this.props.layoutDirection === 'locale'\r\n ) {\r\n return I18nManager.isRTL ? 'rtl' : 'ltr';\r\n } else {\r\n return this.props.layoutDirection;\r\n }\r\n }\r\n\r\n private _onPageScroll = (\r\n e: ReactNative.NativeSyntheticEvent<OnPageScrollEventData>\r\n ) => {\r\n if (this.props.onPageScroll) {\r\n this.props.onPageScroll(e);\r\n }\r\n\r\n // Not implemented on iOS yet\r\n // @ts-ignore\r\n if (Platform.OS === 'android' || Platform.OS === 'harmony') {\r\n if (this.props.keyboardDismissMode === 'on-drag') {\r\n Keyboard.dismiss();\r\n }\r\n }\r\n };\r\n\r\n private _onPageScrollStateChanged = (\r\n e: ReactNative.NativeSyntheticEvent<OnPageScrollStateChangedEventData>\r\n ) => {\r\n if (this.props.onPageScrollStateChanged) {\r\n this.props.onPageScrollStateChanged(e);\r\n }\r\n this.isScrolling = e.nativeEvent.pageScrollState === 'dragging';\r\n };\r\n\r\n private _onPageSelected = (\r\n e: ReactNative.NativeSyntheticEvent<OnPageSelectedEventData>\r\n ) => {\r\n if (this.props.onPageSelected) {\r\n this.props.onPageSelected(e);\r\n }\r\n };\r\n\r\n private _onMoveShouldSetResponderCapture = () => {\r\n return this.isScrolling;\r\n };\r\n\r\n /**\r\n * A helper function to scroll to a specific page in the PagerView.\r\n * The transition between pages will be animated.\r\n */\r\n public setPage = (selectedPage: number) => {\r\n if (this.pagerView) {\r\n PagerViewNativeCommands.setPage(this.pagerView, selectedPage);\r\n }\r\n };\r\n\r\n /**\r\n * A helper function to scroll to a specific page in the PagerView.\r\n * The transition between pages will *not* be animated.\r\n */\r\n public setPageWithoutAnimation = (selectedPage: number) => {\r\n if (this.pagerView) {\r\n PagerViewNativeCommands.setPageWithoutAnimation(\r\n this.pagerView,\r\n selectedPage\r\n );\r\n }\r\n };\r\n\r\n /**\r\n * A helper function to enable/disable scroll imperatively\r\n * The recommended way is using the scrollEnabled prop, however, there might be a case where a\r\n * imperative solution is more useful (e.g. for not blocking an animation)\r\n */\r\n public setScrollEnabled = (scrollEnabled: boolean) => {\r\n if (this.pagerView) {\r\n PagerViewNativeCommands.setScrollEnabledImperatively(\r\n this.pagerView,\r\n scrollEnabled\r\n );\r\n }\r\n };\r\n\r\n render() {\r\n return (\r\n <PagerViewNativeComponent\r\n {...this.props}\r\n ref={(ref) => {\r\n this.pagerView = ref;\r\n }}\r\n style={this.props.style}\r\n layoutDirection={this.deducedLayoutDirection}\r\n onPageScroll={this._onPageScroll}\r\n onPageScrollStateChanged={this._onPageScrollStateChanged}\r\n onPageSelected={this._onPageSelected}\r\n onMoveShouldSetResponderCapture={\r\n this._onMoveShouldSetResponderCapture\r\n }\r\n children={childrenWithOverriddenStyle(this.props.children)}\r\n />\r\n );\r\n }\r\n}\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_utils","_PagerViewNativeComponent","_interopRequireWildcard","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","PagerView","React","Component","isScrolling","pagerView","deducedLayoutDirection","props","layoutDirection","I18nManager","isRTL","_onPageScroll","onPageScroll","Platform","OS","keyboardDismissMode","Keyboard","dismiss","_onPageScrollStateChanged","onPageScrollStateChanged","nativeEvent","pageScrollState","_onPageSelected","onPageSelected","_onMoveShouldSetResponderCapture","setPage","selectedPage","PagerViewNativeCommands","setPageWithoutAnimation","setScrollEnabled","scrollEnabled","setScrollEnabledImperatively","render","jsx","ref","style","onMoveShouldSetResponderCapture","children","childrenWithOverriddenStyle","exports"],"sourceRoot":"../../src","sources":["PagerView.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_codegenNativeCommands","_interopRequireDefault","require","_codegenNativeComponent","e","__esModule","default","Commands","exports","codegenNativeCommands","supportedCommands","_default","codegenNativeComponent"],"sources":["PagerViewNativeComponent.ts"],"sourcesContent":["/**\r\n * MIT License\r\n *\r\n * Copyright (C) 2025 Huawei Device Co., Ltd.\r\n *\r\n * Permission is hereby granted, free of charge, to any person obtaining a copy\r\n * of this software and associated documentation files (the \"Software\"), to deal\r\n * in the Software without restriction, including without limitation the rights\r\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\n * copies of the Software, and to permit persons to whom the Software is\r\n * furnished to do so, subject to the following conditions:\r\n *\r\n * The above copyright notice and this permission notice shall be included in all\r\n * copies or substantial portions of the Software.\r\n *\r\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r\n * SOFTWARE.\r\n */\r\nimport type * as React from 'react';\r\nimport type { HostComponent, ViewProps } from 'react-native';\r\nimport codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';\r\nimport codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';\r\n\r\nimport type {\r\n DirectEventHandler,\r\n Double,\r\n Int32,\r\n WithDefault,\r\n} from 'react-native/Libraries/Types/CodegenTypes';\r\n\r\nexport type OnPageScrollEventData = Readonly<{\r\n position: Double;\r\n offset: Double;\r\n}>;\r\n\r\nexport type OnPageSelectedEventData = Readonly<{\r\n position: Double;\r\n}>;\r\n\r\nexport type OnPageScrollStateChangedEventData = Readonly<{\r\n pageScrollState: 'idle' | 'dragging' | 'settling';\r\n}>;\r\n\r\nexport interface NativeProps extends ViewProps {\r\n scrollEnabled?: WithDefault<boolean, true>;\r\n layoutDirection?: WithDefault<'ltr' | 'rtl', 'ltr'>;\r\n initialPage?: Int32;\r\n orientation?: WithDefault<'horizontal' | 'vertical', 'horizontal'>;\r\n offscreenPageLimit?: Int32;\r\n pageMargin?: Int32;\r\n overScrollMode?: WithDefault<'auto' | 'always' | 'never', 'auto'>;\r\n overdrag?: WithDefault<boolean, false>;\r\n keyboardDismissMode?: WithDefault<'none' | 'on-drag', 'none'>;\r\n onPageScroll?: DirectEventHandler<OnPageScrollEventData>;\r\n onPageSelected?: DirectEventHandler<OnPageSelectedEventData>;\r\n onPageScrollStateChanged?: DirectEventHandler<OnPageScrollStateChangedEventData>;\r\n}\r\n\r\ntype PagerViewViewType = HostComponent<NativeProps>;\r\n\r\nexport interface NativeCommands {\r\n setPage: (\r\n viewRef: React.ElementRef<PagerViewViewType>,\r\n selectedPage: Int32\r\n ) => void;\r\n setPageWithoutAnimation: (\r\n viewRef: React.ElementRef<PagerViewViewType>,\r\n selectedPage: Int32\r\n ) => void;\r\n setScrollEnabledImperatively: (\r\n viewRef: React.ElementRef<PagerViewViewType>,\r\n scrollEnabled: boolean\r\n ) => void;\r\n}\r\n\r\nexport const Commands: NativeCommands = codegenNativeCommands<NativeCommands>({\r\n supportedCommands: [\r\n 'setPage',\r\n 'setPageWithoutAnimation',\r\n 'setScrollEnabledImperatively',\r\n ],\r\n});\r\n\r\nexport default codegenNativeComponent<NativeProps>(\r\n 'RNCViewPager'\r\n) as HostComponent<NativeProps>;\r\n"],"mappings":";;;;;;AAyBA,IAAAA,sBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,uBAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA6F,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AA1B7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA0DO,MAAMG,QAAwB,GAAAC,OAAA,CAAAD,QAAA,GAAG,IAAAE,8BAAqB,EAAiB;EAC5EC,iBAAiB,EAAE,CACjB,SAAS,EACT,yBAAyB,EACzB,8BAA8B;AAElC,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAH,OAAA,CAAAF,OAAA,GAEY,IAAAM,+BAAsB,EACnC,cACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_codegenNativeCommands","_interopRequireDefault","require","_codegenNativeComponent","e","__esModule","default","Commands","exports","codegenNativeCommands","supportedCommands","_default","codegenNativeComponent"],"sourceRoot":"../../src","sources":["PagerViewNativeComponent.ts"],"mappings":";;;;;;AAyBA,IAAAA,sBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,uBAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA6F,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AA1B7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA0DO,MAAMG,QAAwB,GAAAC,OAAA,CAAAD,QAAA,GAAG,IAAAE,8BAAqB,EAAiB;EAC5EC,iBAAiB,EAAE,CACjB,SAAS,EACT,yBAAyB,EACzB,8BAA8B;AAElC,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAH,OAAA,CAAAF,OAAA,GAEY,IAAAM,+BAAsB,EACnC,cACF,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_PagerView","require","_usePagerView","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_default","default","PagerView"],"sources":["index.tsx"],"sourcesContent":["/**\r\n * MIT License\r\n *\r\n * Copyright (C) 2025 Huawei Device Co., Ltd.\r\n *\r\n * Permission is hereby granted, free of charge, to any person obtaining a copy\r\n * of this software and associated documentation files (the \"Software\"), to deal\r\n * in the Software without restriction, including without limitation the rights\r\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\n * copies of the Software, and to permit persons to whom the Software is\r\n * furnished to do so, subject to the following conditions:\r\n *\r\n * The above copyright notice and this permission notice shall be included in all\r\n * copies or substantial portions of the Software.\r\n *\r\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r\n * SOFTWARE.\r\n */\r\nimport type * as ReactNative from 'react-native';\r\nimport { PagerView } from './PagerView';\r\nexport default PagerView;\r\nexport * from './usePagerView';\r\n\r\nimport type {\r\n OnPageScrollEventData as PagerViewOnPageScrollEventData,\r\n OnPageSelectedEventData as PagerViewOnPageSelectedEventData,\r\n OnPageScrollStateChangedEventData as PageScrollStateChangedNativeEventData,\r\n NativeProps,\r\n} from './PagerViewNativeComponent';\r\n\r\nexport type {\r\n PagerViewOnPageScrollEventData,\r\n PagerViewOnPageSelectedEventData,\r\n PageScrollStateChangedNativeEventData,\r\n NativeProps as PagerViewProps,\r\n};\r\n\r\nexport type PagerViewOnPageScrollEvent =\r\n ReactNative.NativeSyntheticEvent<PagerViewOnPageScrollEventData>;\r\n\r\nexport type PagerViewOnPageSelectedEvent =\r\n ReactNative.NativeSyntheticEvent<PagerViewOnPageSelectedEventData>;\r\n\r\nexport type PageScrollStateChangedNativeEvent =\r\n ReactNative.NativeSyntheticEvent<PageScrollStateChangedNativeEventData>;\r\n"],"mappings":";;;;;;;AAwBA,IAAAA,UAAA,GAAAC,OAAA;AAEA,IAAAC,aAAA,GAAAD,OAAA;AAAAE,MAAA,CAAAC,IAAA,CAAAF,aAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,aAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,aAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AA1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAtBA,IAAAS,QAAA,GAAAJ,OAAA,CAAAK,OAAA,GAyBeC,oBAAS","ignoreList":[]}
1
+ {"version":3,"names":["_PagerView","require","_usePagerView","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_default","default","PagerView"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;AAwBA,IAAAA,UAAA,GAAAC,OAAA;AAEA,IAAAC,aAAA,GAAAD,OAAA;AAAAE,MAAA,CAAAC,IAAA,CAAAF,aAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,aAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,aAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AA1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAtBA,IAAAS,QAAA,GAAAJ,OAAA,CAAAK,OAAA,GAyBeC,oBAAS","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"type":"commonjs"}
@@ -51,10 +51,7 @@ function usePagerView({
51
51
  const onPageScrollOffset = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
52
52
  const onPageScrollPosition = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
53
53
  const onPageSelectedPosition = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
54
- const setPage = (0, _react.useCallback)(page => {
55
- var _ref$current, _ref$current2;
56
- return isAnimated ? (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.setPage(page) : (_ref$current2 = ref.current) === null || _ref$current2 === void 0 ? void 0 : _ref$current2.setPageWithoutAnimation(page);
57
- }, [isAnimated]);
54
+ const setPage = (0, _react.useCallback)(page => isAnimated ? ref.current?.setPage(page) : ref.current?.setPageWithoutAnimation(page), [isAnimated]);
58
55
  const addPage = (0, _react.useCallback)(() => {
59
56
  setPages(prevPages => {
60
57
  return [...prevPages, prevPages.length];
@@ -1 +1 @@
1
- {"version":3,"names":["_PagerView","require","_reactNative","_react","AnimatedPagerView","Animated","createAnimatedComponent","PagerView","usePagerView","pagesAmount","ref","useRef","pages","setPages","useState","Array","fill","map","_v","index","activePage","setActivePage","isAnimated","setIsAnimated","overdragEnabled","setOverdragEnabled","scrollEnabled","setScrollEnabled","scrollState","setScrollState","progress","setProgress","position","offset","onPageScrollOffset","Value","current","onPageScrollPosition","onPageSelectedPosition","setPage","useCallback","page","_ref$current","_ref$current2","setPageWithoutAnimation","addPage","prevPages","length","removePage","slice","toggleAnimation","animated","toggleScroll","enabled","toggleOverdrag","onPageScroll","useMemo","event","nativeEvent","listener","useNativeDriver","onPageSelected","onPageScrollStateChanged","e","pageScrollState"],"sources":["usePagerView.ts"],"sourcesContent":["/**\r\n * MIT License\r\n *\r\n * Copyright (C) 2025 Huawei Device Co., Ltd.\r\n *\r\n * Permission is hereby granted, free of charge, to any person obtaining a copy\r\n * of this software and associated documentation files (the \"Software\"), to deal\r\n * in the Software without restriction, including without limitation the rights\r\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\n * copies of the Software, and to permit persons to whom the Software is\r\n * furnished to do so, subject to the following conditions:\r\n *\r\n * The above copyright notice and this permission notice shall be included in all\r\n * copies or substantial portions of the Software.\r\n *\r\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r\n * SOFTWARE.\r\n */\r\nimport type * as ReactNative from 'react-native';\r\nimport type {\r\n OnPageScrollEventData as PagerViewOnPageScrollEventData,\r\n OnPageSelectedEventData as PagerViewOnPageSelectedEventData,\r\n OnPageScrollStateChangedEventData as PageScrollStateChangedNativeEventData,\r\n} from './PagerViewNativeComponent';\r\n\r\ntype PageScrollStateChangedNativeEvent =\r\n ReactNative.NativeSyntheticEvent<PageScrollStateChangedNativeEventData>;\r\n\r\nimport { PagerView } from './PagerView';\r\n\r\nimport { Animated } from 'react-native';\r\nimport { useCallback, useMemo, useRef, useState } from 'react';\r\n\r\nexport type UsePagerViewProps = ReturnType<typeof usePagerView>;\r\n\r\nconst AnimatedPagerView = Animated.createAnimatedComponent(PagerView);\r\n\r\ntype UsePagerViewParams = {\r\n pagesAmount: number;\r\n};\r\n\r\nexport function usePagerView(\r\n { pagesAmount }: UsePagerViewParams = { pagesAmount: 0 }\r\n) {\r\n const ref = useRef<PagerView>(null);\r\n const [pages, setPages] = useState<number[]>(\r\n new Array(pagesAmount).fill('').map((_v, index) => index)\r\n );\r\n const [activePage, setActivePage] = useState(0);\r\n const [isAnimated, setIsAnimated] = useState(true);\r\n const [overdragEnabled, setOverdragEnabled] = useState(false);\r\n const [scrollEnabled, setScrollEnabled] = useState(true);\r\n const [scrollState, setScrollState] = useState('idle');\r\n const [progress, setProgress] = useState({ position: 0, offset: 0 });\r\n const onPageScrollOffset = useRef(new Animated.Value(0)).current;\r\n const onPageScrollPosition = useRef(new Animated.Value(0)).current;\r\n const onPageSelectedPosition = useRef(new Animated.Value(0)).current;\r\n\r\n const setPage = useCallback(\r\n (page: number) =>\r\n isAnimated\r\n ? ref.current?.setPage(page)\r\n : ref.current?.setPageWithoutAnimation(page),\r\n [isAnimated]\r\n );\r\n\r\n const addPage = useCallback(() => {\r\n setPages((prevPages) => {\r\n return [...prevPages, prevPages.length];\r\n });\r\n }, []);\r\n\r\n const removePage = useCallback(() => {\r\n setPages((prevPages) => {\r\n if (prevPages.length === 1) {\r\n return prevPages;\r\n }\r\n return prevPages.slice(0, prevPages.length - 1);\r\n });\r\n }, []);\r\n\r\n const toggleAnimation = useCallback(\r\n () => setIsAnimated((animated) => !animated),\r\n []\r\n );\r\n\r\n const toggleScroll = useCallback(\r\n () => setScrollEnabled((enabled) => !enabled),\r\n []\r\n );\r\n\r\n const toggleOverdrag = useCallback(\r\n () => setOverdragEnabled((enabled) => !enabled),\r\n []\r\n );\r\n\r\n const onPageScroll = useMemo(\r\n () =>\r\n Animated.event<PagerViewOnPageScrollEventData>(\r\n [\r\n {\r\n nativeEvent: {\r\n offset: onPageScrollOffset,\r\n position: onPageScrollPosition,\r\n },\r\n },\r\n ],\r\n {\r\n listener: ({ nativeEvent: { offset, position } }) => {\r\n setProgress({\r\n position,\r\n offset,\r\n });\r\n },\r\n useNativeDriver: true,\r\n }\r\n ),\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n []\r\n );\r\n\r\n const onPageSelected = useMemo(\r\n () =>\r\n Animated.event<PagerViewOnPageSelectedEventData>(\r\n [{ nativeEvent: { position: onPageSelectedPosition } }],\r\n {\r\n listener: ({ nativeEvent: { position } }) => {\r\n setActivePage(position);\r\n },\r\n useNativeDriver: true,\r\n }\r\n ),\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n []\r\n );\r\n\r\n const onPageScrollStateChanged = useCallback(\r\n (e: PageScrollStateChangedNativeEvent) => {\r\n setScrollState(e.nativeEvent.pageScrollState);\r\n },\r\n []\r\n );\r\n\r\n return {\r\n ref,\r\n activePage,\r\n isAnimated,\r\n pages,\r\n scrollState,\r\n scrollEnabled,\r\n progress,\r\n overdragEnabled,\r\n setPage,\r\n addPage,\r\n removePage,\r\n toggleScroll,\r\n toggleAnimation,\r\n setProgress,\r\n onPageScroll,\r\n onPageSelected,\r\n onPageScrollStateChanged,\r\n toggleOverdrag,\r\n AnimatedPagerView,\r\n PagerView,\r\n };\r\n}\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_PagerView","require","_reactNative","_react","AnimatedPagerView","Animated","createAnimatedComponent","PagerView","usePagerView","pagesAmount","ref","useRef","pages","setPages","useState","Array","fill","map","_v","index","activePage","setActivePage","isAnimated","setIsAnimated","overdragEnabled","setOverdragEnabled","scrollEnabled","setScrollEnabled","scrollState","setScrollState","progress","setProgress","position","offset","onPageScrollOffset","Value","current","onPageScrollPosition","onPageSelectedPosition","setPage","useCallback","page","setPageWithoutAnimation","addPage","prevPages","length","removePage","slice","toggleAnimation","animated","toggleScroll","enabled","toggleOverdrag","onPageScroll","useMemo","event","nativeEvent","listener","useNativeDriver","onPageSelected","onPageScrollStateChanged","e","pageScrollState"],"sourceRoot":"../../src","sources":["usePagerView.ts"],"mappings":"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","ignoreList":[]}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.childrenWithOverriddenStyle = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
+ var _jsxRuntime = require("react/jsx-runtime");
9
10
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
10
11
  /**
11
12
  * MIT License
@@ -33,18 +34,22 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
33
34
 
34
35
  const childrenWithOverriddenStyle = children => {
35
36
  return _react.Children.map(children, child => {
37
+ if (child == null || ! /*#__PURE__*/_react.default.isValidElement(child)) {
38
+ return null;
39
+ }
36
40
  const element = child;
37
41
  return (
38
42
  /*#__PURE__*/
39
43
  // Add a wrapper to ensure layout is calculated correctly
40
- _react.default.createElement(_reactNative.View, {
44
+ (0, _jsxRuntime.jsx)(_reactNative.View, {
41
45
  style: _reactNative.StyleSheet.absoluteFill,
42
- collapsable: false
43
- }, /*#__PURE__*/_react.default.cloneElement(element, {
44
- ...element.props,
45
- // Override styles so that each page will fill the parent.
46
- style: [element.props.style, _reactNative.StyleSheet.absoluteFill]
47
- }))
46
+ collapsable: false,
47
+ children: /*#__PURE__*/_react.default.cloneElement(element, {
48
+ ...element.props,
49
+ // Override styles so that each page will fill the parent.
50
+ style: [element.props.style, _reactNative.StyleSheet.absoluteFill]
51
+ })
52
+ })
48
53
  );
49
54
  });
50
55
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","childrenWithOverriddenStyle","children","Children","map","child","element","createElement","View","style","StyleSheet","absoluteFill","collapsable","React","cloneElement","props","exports"],"sources":["utils.tsx"],"sourcesContent":["/**\r\n * MIT License\r\n *\r\n * Copyright (C) 2025 Huawei Device Co., Ltd.\r\n *\r\n * Permission is hereby granted, free of charge, to any person obtaining a copy\r\n * of this software and associated documentation files (the \"Software\"), to deal\r\n * in the Software without restriction, including without limitation the rights\r\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\n * copies of the Software, and to permit persons to whom the Software is\r\n * furnished to do so, subject to the following conditions:\r\n *\r\n * The above copyright notice and this permission notice shall be included in all\r\n * copies or substantial portions of the Software.\r\n *\r\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r\n * SOFTWARE.\r\n */\r\nimport React, { Children, ReactNode } from 'react';\r\nimport { StyleSheet, View } from 'react-native';\r\n\r\nexport const childrenWithOverriddenStyle = (children?: ReactNode) => {\r\n return Children.map(children, (child) => {\r\n const element = child as React.ReactElement;\r\n return (\r\n // Add a wrapper to ensure layout is calculated correctly\r\n <View style={StyleSheet.absoluteFill} collapsable={false}>\r\n {/* @ts-ignore */}\r\n {React.cloneElement(element, {\r\n ...element.props,\r\n // Override styles so that each page will fill the parent.\r\n style: [element.props.style, StyleSheet.absoluteFill],\r\n })}\r\n </View>\r\n );\r\n });\r\n};\r\n"],"mappings":";;;;;;AAuBA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAAgD,SAAAD,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,CAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAxBhD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIO,MAAMkB,2BAA2B,GAAIC,QAAoB,IAAK;EACnE,OAAOC,eAAQ,CAACC,GAAG,CAACF,QAAQ,EAAGG,KAAK,IAAK;IACvC,MAAMC,OAAO,GAAGD,KAA2B;IAC3C;MAAA;MACE;MACA3B,MAAA,CAAAc,OAAA,CAAAe,aAAA,CAAC1B,YAAA,CAAA2B,IAAI;QAACC,KAAK,EAAEC,uBAAU,CAACC,YAAa;QAACC,WAAW,EAAE;MAAM,gBAEtDC,cAAK,CAACC,YAAY,CAACR,OAAO,EAAE;QAC3B,GAAGA,OAAO,CAACS,KAAK;QAChB;QACAN,KAAK,EAAE,CAACH,OAAO,CAACS,KAAK,CAACN,KAAK,EAAEC,uBAAU,CAACC,YAAY;MACtD,CAAC,CACG;IAAC;EAEX,CAAC,CAAC;AACJ,CAAC;AAACK,OAAA,CAAAf,2BAAA,GAAAA,2BAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","childrenWithOverriddenStyle","children","Children","map","child","React","isValidElement","element","jsx","View","style","StyleSheet","absoluteFill","collapsable","cloneElement","props","exports"],"sourceRoot":"../../src","sources":["utils.tsx"],"mappings":";;;;;;AAuBA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAAgD,IAAAE,WAAA,GAAAF,OAAA;AAAA,SAAAD,wBAAAI,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAN,uBAAA,YAAAA,CAAAI,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAxBhD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIO,MAAMkB,2BAA2B,GAAIC,QAAoB,IAAK;EACnE,OAAOC,eAAQ,CAACC,GAAG,CAACF,QAAQ,EAAGG,KAAK,IAAK;IACvC,IAAIA,KAAK,IAAI,IAAI,IAAI,eAACC,cAAK,CAACC,cAAc,CAACF,KAAK,CAAC,EAAE;MACjD,OAAO,IAAI;IACb;IACA,MAAMG,OAAO,GAAGH,KAAgC;IAChD;MAAA;MACE;MACA,IAAAxB,WAAA,CAAA4B,GAAA,EAAC7B,YAAA,CAAA8B,IAAI;QAACC,KAAK,EAAEC,uBAAU,CAACC,YAAa;QAACC,WAAW,EAAE,KAAM;QAAAZ,QAAA,eAEtDI,cAAK,CAACS,YAAY,CAACP,OAAO,EAAE;UAC3B,GAAGA,OAAO,CAACQ,KAAK;UAChB;UACAL,KAAK,EAAE,CAACH,OAAO,CAACQ,KAAK,CAACL,KAAK,EAAEC,uBAAU,CAACC,YAAY;QACtD,CAAC;MAAC,CACE;IAAC;EAEX,CAAC,CAAC;AACJ,CAAC;AAACI,OAAA,CAAAhB,2BAAA,GAAAA,2BAAA","ignoreList":[]}
@@ -1,7 +1,5 @@
1
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
3
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
4
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
1
+ "use strict";
2
+
5
3
  /**
6
4
  * MIT License
7
5
  *
@@ -72,68 +70,10 @@ import PagerViewNativeComponent, { Commands as PagerViewNativeCommands } from '.
72
70
  * }
73
71
  * ```
74
72
  */
75
-
73
+ import { jsx as _jsx } from "react/jsx-runtime";
76
74
  export class PagerView extends React.Component {
77
- constructor(...args) {
78
- super(...args);
79
- _defineProperty(this, "isScrolling", false);
80
- _defineProperty(this, "pagerView", null);
81
- _defineProperty(this, "_onPageScroll", e => {
82
- if (this.props.onPageScroll) {
83
- this.props.onPageScroll(e);
84
- }
85
-
86
- // Not implemented on iOS yet
87
- // @ts-ignore
88
- if (Platform.OS === 'android' || Platform.OS === 'harmony') {
89
- if (this.props.keyboardDismissMode === 'on-drag') {
90
- Keyboard.dismiss();
91
- }
92
- }
93
- });
94
- _defineProperty(this, "_onPageScrollStateChanged", e => {
95
- if (this.props.onPageScrollStateChanged) {
96
- this.props.onPageScrollStateChanged(e);
97
- }
98
- this.isScrolling = e.nativeEvent.pageScrollState === 'dragging';
99
- });
100
- _defineProperty(this, "_onPageSelected", e => {
101
- if (this.props.onPageSelected) {
102
- this.props.onPageSelected(e);
103
- }
104
- });
105
- _defineProperty(this, "_onMoveShouldSetResponderCapture", () => {
106
- return this.isScrolling;
107
- });
108
- /**
109
- * A helper function to scroll to a specific page in the PagerView.
110
- * The transition between pages will be animated.
111
- */
112
- _defineProperty(this, "setPage", selectedPage => {
113
- if (this.pagerView) {
114
- PagerViewNativeCommands.setPage(this.pagerView, selectedPage);
115
- }
116
- });
117
- /**
118
- * A helper function to scroll to a specific page in the PagerView.
119
- * The transition between pages will *not* be animated.
120
- */
121
- _defineProperty(this, "setPageWithoutAnimation", selectedPage => {
122
- if (this.pagerView) {
123
- PagerViewNativeCommands.setPageWithoutAnimation(this.pagerView, selectedPage);
124
- }
125
- });
126
- /**
127
- * A helper function to enable/disable scroll imperatively
128
- * The recommended way is using the scrollEnabled prop, however, there might be a case where a
129
- * imperative solution is more useful (e.g. for not blocking an animation)
130
- */
131
- _defineProperty(this, "setScrollEnabled", scrollEnabled => {
132
- if (this.pagerView) {
133
- PagerViewNativeCommands.setScrollEnabledImperatively(this.pagerView, scrollEnabled);
134
- }
135
- });
136
- }
75
+ isScrolling = false;
76
+ pagerView = null;
137
77
  get deducedLayoutDirection() {
138
78
  if (!this.props.layoutDirection ||
139
79
  //@ts-ignore fix it
@@ -143,8 +83,67 @@ export class PagerView extends React.Component {
143
83
  return this.props.layoutDirection;
144
84
  }
145
85
  }
86
+ _onPageScroll = e => {
87
+ if (this.props.onPageScroll) {
88
+ this.props.onPageScroll(e);
89
+ }
90
+
91
+ // Not implemented on iOS yet
92
+ // @ts-ignore
93
+ if (Platform.OS === 'android' || Platform.OS === 'harmony') {
94
+ if (this.props.keyboardDismissMode === 'on-drag') {
95
+ Keyboard.dismiss();
96
+ }
97
+ }
98
+ };
99
+ _onPageScrollStateChanged = e => {
100
+ if (this.props.onPageScrollStateChanged) {
101
+ this.props.onPageScrollStateChanged(e);
102
+ }
103
+ this.isScrolling = e.nativeEvent.pageScrollState === 'dragging';
104
+ };
105
+ _onPageSelected = e => {
106
+ if (this.props.onPageSelected) {
107
+ this.props.onPageSelected(e);
108
+ }
109
+ };
110
+ _onMoveShouldSetResponderCapture = () => {
111
+ return this.isScrolling;
112
+ };
113
+
114
+ /**
115
+ * A helper function to scroll to a specific page in the PagerView.
116
+ * The transition between pages will be animated.
117
+ */
118
+ setPage = selectedPage => {
119
+ if (this.pagerView) {
120
+ PagerViewNativeCommands.setPage(this.pagerView, selectedPage);
121
+ }
122
+ };
123
+
124
+ /**
125
+ * A helper function to scroll to a specific page in the PagerView.
126
+ * The transition between pages will *not* be animated.
127
+ */
128
+ setPageWithoutAnimation = selectedPage => {
129
+ if (this.pagerView) {
130
+ PagerViewNativeCommands.setPageWithoutAnimation(this.pagerView, selectedPage);
131
+ }
132
+ };
133
+
134
+ /**
135
+ * A helper function to enable/disable scroll imperatively
136
+ * The recommended way is using the scrollEnabled prop, however, there might be a case where a
137
+ * imperative solution is more useful (e.g. for not blocking an animation)
138
+ */
139
+ setScrollEnabled = scrollEnabled => {
140
+ if (this.pagerView) {
141
+ PagerViewNativeCommands.setScrollEnabledImperatively(this.pagerView, scrollEnabled);
142
+ }
143
+ };
146
144
  render() {
147
- return /*#__PURE__*/React.createElement(PagerViewNativeComponent, _extends({}, this.props, {
145
+ return /*#__PURE__*/_jsx(PagerViewNativeComponent, {
146
+ ...this.props,
148
147
  ref: ref => {
149
148
  this.pagerView = ref;
150
149
  },
@@ -155,7 +154,7 @@ export class PagerView extends React.Component {
155
154
  onPageSelected: this._onPageSelected,
156
155
  onMoveShouldSetResponderCapture: this._onMoveShouldSetResponderCapture,
157
156
  children: childrenWithOverriddenStyle(this.props.children)
158
- }));
157
+ });
159
158
  }
160
159
  }
161
160
  //# sourceMappingURL=PagerView.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","Platform","Keyboard","I18nManager","childrenWithOverriddenStyle","PagerViewNativeComponent","Commands","PagerViewNativeCommands","PagerView","Component","constructor","args","_defineProperty","e","props","onPageScroll","OS","keyboardDismissMode","dismiss","onPageScrollStateChanged","isScrolling","nativeEvent","pageScrollState","onPageSelected","selectedPage","pagerView","setPage","setPageWithoutAnimation","scrollEnabled","setScrollEnabledImperatively","deducedLayoutDirection","layoutDirection","isRTL","render","createElement","_extends","ref","style","_onPageScroll","_onPageScrollStateChanged","_onPageSelected","onMoveShouldSetResponderCapture","_onMoveShouldSetResponderCapture","children"],"sources":["PagerView.tsx"],"sourcesContent":["/**\r\n * MIT License\r\n *\r\n * Copyright (C) 2025 Huawei Device Co., Ltd.\r\n *\r\n * Permission is hereby granted, free of charge, to any person obtaining a copy\r\n * of this software and associated documentation files (the \"Software\"), to deal\r\n * in the Software without restriction, including without limitation the rights\r\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\n * copies of the Software, and to permit persons to whom the Software is\r\n * furnished to do so, subject to the following conditions:\r\n *\r\n * The above copyright notice and this permission notice shall be included in all\r\n * copies or substantial portions of the Software.\r\n *\r\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r\n * SOFTWARE.\r\n */\r\nimport React from 'react';\r\nimport { Platform, Keyboard } from 'react-native';\r\nimport { I18nManager } from 'react-native';\r\nimport type * as ReactNative from 'react-native';\r\n\r\nimport {\r\n childrenWithOverriddenStyle,\r\n} from './utils';\r\n\r\nimport PagerViewNativeComponent, {\r\n Commands as PagerViewNativeCommands,\r\n OnPageScrollEventData,\r\n OnPageScrollStateChangedEventData,\r\n OnPageSelectedEventData,\r\n NativeProps,\r\n} from './PagerViewNativeComponent';\r\n\r\n\r\n/**\r\n * Container that allows to flip left and right between child views. Each\r\n * child view of the `PagerView` will be treated as a separate page\r\n * and will be stretched to fill the `PagerView`.\r\n *\r\n * It is important all children are `<View>`s and not composite components.\r\n * You can set style properties like `padding` or `backgroundColor` for each\r\n * child. It is also important that each child have a `key` prop.\r\n *\r\n * Example:\r\n *\r\n * ```\r\n * render: function() {\r\n * return (\r\n * <PagerView\r\n * style={styles.PagerView}\r\n * initialPage={0}>\r\n * <View style={styles.pageStyle} key=\"1\">\r\n * <Text>First page</Text>\r\n * </View>\r\n * <View style={styles.pageStyle} key=\"2\">\r\n * <Text>Second page</Text>\r\n * </View>\r\n * </PagerView>\r\n * );\r\n * }\r\n *\r\n * ...\r\n *\r\n * var styles = {\r\n * ...\r\n * PagerView: {\r\n * flex: 1\r\n * },\r\n * pageStyle: {\r\n * alignItems: 'center',\r\n * padding: 20,\r\n * }\r\n * }\r\n * ```\r\n */\r\n\r\nexport class PagerView extends React.Component<NativeProps> {\r\n private isScrolling = false;\r\n pagerView: React.ElementRef<typeof PagerViewNativeComponent> | null = null;\r\n\r\n\r\n private get deducedLayoutDirection() {\r\n if (\r\n !this.props.layoutDirection ||\r\n //@ts-ignore fix it\r\n this.props.layoutDirection === 'locale'\r\n ) {\r\n return I18nManager.isRTL ? 'rtl' : 'ltr';\r\n } else {\r\n return this.props.layoutDirection;\r\n }\r\n }\r\n\r\n private _onPageScroll = (\r\n e: ReactNative.NativeSyntheticEvent<OnPageScrollEventData>\r\n ) => {\r\n if (this.props.onPageScroll) {\r\n this.props.onPageScroll(e);\r\n }\r\n\r\n // Not implemented on iOS yet\r\n // @ts-ignore\r\n if (Platform.OS === 'android' || Platform.OS === 'harmony') {\r\n if (this.props.keyboardDismissMode === 'on-drag') {\r\n Keyboard.dismiss();\r\n }\r\n }\r\n };\r\n\r\n private _onPageScrollStateChanged = (\r\n e: ReactNative.NativeSyntheticEvent<OnPageScrollStateChangedEventData>\r\n ) => {\r\n if (this.props.onPageScrollStateChanged) {\r\n this.props.onPageScrollStateChanged(e);\r\n }\r\n this.isScrolling = e.nativeEvent.pageScrollState === 'dragging';\r\n };\r\n\r\n private _onPageSelected = (\r\n e: ReactNative.NativeSyntheticEvent<OnPageSelectedEventData>\r\n ) => {\r\n if (this.props.onPageSelected) {\r\n this.props.onPageSelected(e);\r\n }\r\n };\r\n\r\n private _onMoveShouldSetResponderCapture = () => {\r\n return this.isScrolling;\r\n };\r\n\r\n /**\r\n * A helper function to scroll to a specific page in the PagerView.\r\n * The transition between pages will be animated.\r\n */\r\n public setPage = (selectedPage: number) => {\r\n if (this.pagerView) {\r\n PagerViewNativeCommands.setPage(this.pagerView, selectedPage);\r\n }\r\n };\r\n\r\n /**\r\n * A helper function to scroll to a specific page in the PagerView.\r\n * The transition between pages will *not* be animated.\r\n */\r\n public setPageWithoutAnimation = (selectedPage: number) => {\r\n if (this.pagerView) {\r\n PagerViewNativeCommands.setPageWithoutAnimation(\r\n this.pagerView,\r\n selectedPage\r\n );\r\n }\r\n };\r\n\r\n /**\r\n * A helper function to enable/disable scroll imperatively\r\n * The recommended way is using the scrollEnabled prop, however, there might be a case where a\r\n * imperative solution is more useful (e.g. for not blocking an animation)\r\n */\r\n public setScrollEnabled = (scrollEnabled: boolean) => {\r\n if (this.pagerView) {\r\n PagerViewNativeCommands.setScrollEnabledImperatively(\r\n this.pagerView,\r\n scrollEnabled\r\n );\r\n }\r\n };\r\n\r\n render() {\r\n return (\r\n <PagerViewNativeComponent\r\n {...this.props}\r\n ref={(ref) => {\r\n this.pagerView = ref;\r\n }}\r\n style={this.props.style}\r\n layoutDirection={this.deducedLayoutDirection}\r\n onPageScroll={this._onPageScroll}\r\n onPageScrollStateChanged={this._onPageScrollStateChanged}\r\n onPageSelected={this._onPageSelected}\r\n onMoveShouldSetResponderCapture={\r\n this._onMoveShouldSetResponderCapture\r\n }\r\n children={childrenWithOverriddenStyle(this.props.children)}\r\n />\r\n );\r\n }\r\n}\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Platform","Keyboard","I18nManager","childrenWithOverriddenStyle","PagerViewNativeComponent","Commands","PagerViewNativeCommands","jsx","_jsx","PagerView","Component","isScrolling","pagerView","deducedLayoutDirection","props","layoutDirection","isRTL","_onPageScroll","e","onPageScroll","OS","keyboardDismissMode","dismiss","_onPageScrollStateChanged","onPageScrollStateChanged","nativeEvent","pageScrollState","_onPageSelected","onPageSelected","_onMoveShouldSetResponderCapture","setPage","selectedPage","setPageWithoutAnimation","setScrollEnabled","scrollEnabled","setScrollEnabledImperatively","render","ref","style","onMoveShouldSetResponderCapture","children"],"sourceRoot":"../../src","sources":["PagerView.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,5 @@
1
+ "use strict";
2
+
1
3
  /**
2
4
  * MIT License
3
5
  *
@@ -1 +1 @@
1
- {"version":3,"names":["codegenNativeCommands","codegenNativeComponent","Commands","supportedCommands"],"sources":["PagerViewNativeComponent.ts"],"sourcesContent":["/**\r\n * MIT License\r\n *\r\n * Copyright (C) 2025 Huawei Device Co., Ltd.\r\n *\r\n * Permission is hereby granted, free of charge, to any person obtaining a copy\r\n * of this software and associated documentation files (the \"Software\"), to deal\r\n * in the Software without restriction, including without limitation the rights\r\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\n * copies of the Software, and to permit persons to whom the Software is\r\n * furnished to do so, subject to the following conditions:\r\n *\r\n * The above copyright notice and this permission notice shall be included in all\r\n * copies or substantial portions of the Software.\r\n *\r\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r\n * SOFTWARE.\r\n */\r\nimport type * as React from 'react';\r\nimport type { HostComponent, ViewProps } from 'react-native';\r\nimport codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';\r\nimport codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';\r\n\r\nimport type {\r\n DirectEventHandler,\r\n Double,\r\n Int32,\r\n WithDefault,\r\n} from 'react-native/Libraries/Types/CodegenTypes';\r\n\r\nexport type OnPageScrollEventData = Readonly<{\r\n position: Double;\r\n offset: Double;\r\n}>;\r\n\r\nexport type OnPageSelectedEventData = Readonly<{\r\n position: Double;\r\n}>;\r\n\r\nexport type OnPageScrollStateChangedEventData = Readonly<{\r\n pageScrollState: 'idle' | 'dragging' | 'settling';\r\n}>;\r\n\r\nexport interface NativeProps extends ViewProps {\r\n scrollEnabled?: WithDefault<boolean, true>;\r\n layoutDirection?: WithDefault<'ltr' | 'rtl', 'ltr'>;\r\n initialPage?: Int32;\r\n orientation?: WithDefault<'horizontal' | 'vertical', 'horizontal'>;\r\n offscreenPageLimit?: Int32;\r\n pageMargin?: Int32;\r\n overScrollMode?: WithDefault<'auto' | 'always' | 'never', 'auto'>;\r\n overdrag?: WithDefault<boolean, false>;\r\n keyboardDismissMode?: WithDefault<'none' | 'on-drag', 'none'>;\r\n onPageScroll?: DirectEventHandler<OnPageScrollEventData>;\r\n onPageSelected?: DirectEventHandler<OnPageSelectedEventData>;\r\n onPageScrollStateChanged?: DirectEventHandler<OnPageScrollStateChangedEventData>;\r\n}\r\n\r\ntype PagerViewViewType = HostComponent<NativeProps>;\r\n\r\nexport interface NativeCommands {\r\n setPage: (\r\n viewRef: React.ElementRef<PagerViewViewType>,\r\n selectedPage: Int32\r\n ) => void;\r\n setPageWithoutAnimation: (\r\n viewRef: React.ElementRef<PagerViewViewType>,\r\n selectedPage: Int32\r\n ) => void;\r\n setScrollEnabledImperatively: (\r\n viewRef: React.ElementRef<PagerViewViewType>,\r\n scrollEnabled: boolean\r\n ) => void;\r\n}\r\n\r\nexport const Commands: NativeCommands = codegenNativeCommands<NativeCommands>({\r\n supportedCommands: [\r\n 'setPage',\r\n 'setPageWithoutAnimation',\r\n 'setScrollEnabledImperatively',\r\n ],\r\n});\r\n\r\nexport default codegenNativeComponent<NativeProps>(\r\n 'RNCViewPager'\r\n) as HostComponent<NativeProps>;\r\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,OAAOA,qBAAqB,MAAM,wDAAwD;AAC1F,OAAOC,sBAAsB,MAAM,yDAAyD;AAsD5F,OAAO,MAAMC,QAAwB,GAAGF,qBAAqB,CAAiB;EAC5EG,iBAAiB,EAAE,CACjB,SAAS,EACT,yBAAyB,EACzB,8BAA8B;AAElC,CAAC,CAAC;AAEF,eAAeF,sBAAsB,CACnC,cACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["codegenNativeCommands","codegenNativeComponent","Commands","supportedCommands"],"sourceRoot":"../../src","sources":["PagerViewNativeComponent.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,OAAOA,qBAAqB,MAAM,wDAAwD;AAC1F,OAAOC,sBAAsB,MAAM,yDAAyD;AAsD5F,OAAO,MAAMC,QAAwB,GAAGF,qBAAqB,CAAiB;EAC5EG,iBAAiB,EAAE,CACjB,SAAS,EACT,yBAAyB,EACzB,8BAA8B;AAElC,CAAC,CAAC;AAEF,eAAeF,sBAAsB,CACnC,cACF,CAAC","ignoreList":[]}
@@ -1,3 +1,5 @@
1
+ "use strict";
2
+
1
3
  /**
2
4
  * MIT License
3
5
  *
@@ -1 +1 @@
1
- {"version":3,"names":["PagerView"],"sources":["index.tsx"],"sourcesContent":["/**\r\n * MIT License\r\n *\r\n * Copyright (C) 2025 Huawei Device Co., Ltd.\r\n *\r\n * Permission is hereby granted, free of charge, to any person obtaining a copy\r\n * of this software and associated documentation files (the \"Software\"), to deal\r\n * in the Software without restriction, including without limitation the rights\r\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\n * copies of the Software, and to permit persons to whom the Software is\r\n * furnished to do so, subject to the following conditions:\r\n *\r\n * The above copyright notice and this permission notice shall be included in all\r\n * copies or substantial portions of the Software.\r\n *\r\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r\n * SOFTWARE.\r\n */\r\nimport type * as ReactNative from 'react-native';\r\nimport { PagerView } from './PagerView';\r\nexport default PagerView;\r\nexport * from './usePagerView';\r\n\r\nimport type {\r\n OnPageScrollEventData as PagerViewOnPageScrollEventData,\r\n OnPageSelectedEventData as PagerViewOnPageSelectedEventData,\r\n OnPageScrollStateChangedEventData as PageScrollStateChangedNativeEventData,\r\n NativeProps,\r\n} from './PagerViewNativeComponent';\r\n\r\nexport type {\r\n PagerViewOnPageScrollEventData,\r\n PagerViewOnPageSelectedEventData,\r\n PageScrollStateChangedNativeEventData,\r\n NativeProps as PagerViewProps,\r\n};\r\n\r\nexport type PagerViewOnPageScrollEvent =\r\n ReactNative.NativeSyntheticEvent<PagerViewOnPageScrollEventData>;\r\n\r\nexport type PagerViewOnPageSelectedEvent =\r\n ReactNative.NativeSyntheticEvent<PagerViewOnPageSelectedEventData>;\r\n\r\nexport type PageScrollStateChangedNativeEvent =\r\n ReactNative.NativeSyntheticEvent<PageScrollStateChangedNativeEventData>;\r\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,SAAS,QAAQ,aAAa;AACvC,eAAeA,SAAS;AACxB,cAAc,gBAAgB","ignoreList":[]}
1
+ {"version":3,"names":["PagerView"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,SAAS,QAAQ,aAAa;AACvC,eAAeA,SAAS;AACxB,cAAc,gBAAgB","ignoreList":[]}
@@ -1,3 +1,5 @@
1
+ "use strict";
2
+
1
3
  /**
2
4
  * MIT License
3
5
  *
@@ -45,10 +47,7 @@ export function usePagerView({
45
47
  const onPageScrollOffset = useRef(new Animated.Value(0)).current;
46
48
  const onPageScrollPosition = useRef(new Animated.Value(0)).current;
47
49
  const onPageSelectedPosition = useRef(new Animated.Value(0)).current;
48
- const setPage = useCallback(page => {
49
- var _ref$current, _ref$current2;
50
- return isAnimated ? (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.setPage(page) : (_ref$current2 = ref.current) === null || _ref$current2 === void 0 ? void 0 : _ref$current2.setPageWithoutAnimation(page);
51
- }, [isAnimated]);
50
+ const setPage = useCallback(page => isAnimated ? ref.current?.setPage(page) : ref.current?.setPageWithoutAnimation(page), [isAnimated]);
52
51
  const addPage = useCallback(() => {
53
52
  setPages(prevPages => {
54
53
  return [...prevPages, prevPages.length];
@@ -1 +1 @@
1
- {"version":3,"names":["PagerView","Animated","useCallback","useMemo","useRef","useState","AnimatedPagerView","createAnimatedComponent","usePagerView","pagesAmount","ref","pages","setPages","Array","fill","map","_v","index","activePage","setActivePage","isAnimated","setIsAnimated","overdragEnabled","setOverdragEnabled","scrollEnabled","setScrollEnabled","scrollState","setScrollState","progress","setProgress","position","offset","onPageScrollOffset","Value","current","onPageScrollPosition","onPageSelectedPosition","setPage","page","_ref$current","_ref$current2","setPageWithoutAnimation","addPage","prevPages","length","removePage","slice","toggleAnimation","animated","toggleScroll","enabled","toggleOverdrag","onPageScroll","event","nativeEvent","listener","useNativeDriver","onPageSelected","onPageScrollStateChanged","e","pageScrollState"],"sources":["usePagerView.ts"],"sourcesContent":["/**\r\n * MIT License\r\n *\r\n * Copyright (C) 2025 Huawei Device Co., Ltd.\r\n *\r\n * Permission is hereby granted, free of charge, to any person obtaining a copy\r\n * of this software and associated documentation files (the \"Software\"), to deal\r\n * in the Software without restriction, including without limitation the rights\r\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\n * copies of the Software, and to permit persons to whom the Software is\r\n * furnished to do so, subject to the following conditions:\r\n *\r\n * The above copyright notice and this permission notice shall be included in all\r\n * copies or substantial portions of the Software.\r\n *\r\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r\n * SOFTWARE.\r\n */\r\nimport type * as ReactNative from 'react-native';\r\nimport type {\r\n OnPageScrollEventData as PagerViewOnPageScrollEventData,\r\n OnPageSelectedEventData as PagerViewOnPageSelectedEventData,\r\n OnPageScrollStateChangedEventData as PageScrollStateChangedNativeEventData,\r\n} from './PagerViewNativeComponent';\r\n\r\ntype PageScrollStateChangedNativeEvent =\r\n ReactNative.NativeSyntheticEvent<PageScrollStateChangedNativeEventData>;\r\n\r\nimport { PagerView } from './PagerView';\r\n\r\nimport { Animated } from 'react-native';\r\nimport { useCallback, useMemo, useRef, useState } from 'react';\r\n\r\nexport type UsePagerViewProps = ReturnType<typeof usePagerView>;\r\n\r\nconst AnimatedPagerView = Animated.createAnimatedComponent(PagerView);\r\n\r\ntype UsePagerViewParams = {\r\n pagesAmount: number;\r\n};\r\n\r\nexport function usePagerView(\r\n { pagesAmount }: UsePagerViewParams = { pagesAmount: 0 }\r\n) {\r\n const ref = useRef<PagerView>(null);\r\n const [pages, setPages] = useState<number[]>(\r\n new Array(pagesAmount).fill('').map((_v, index) => index)\r\n );\r\n const [activePage, setActivePage] = useState(0);\r\n const [isAnimated, setIsAnimated] = useState(true);\r\n const [overdragEnabled, setOverdragEnabled] = useState(false);\r\n const [scrollEnabled, setScrollEnabled] = useState(true);\r\n const [scrollState, setScrollState] = useState('idle');\r\n const [progress, setProgress] = useState({ position: 0, offset: 0 });\r\n const onPageScrollOffset = useRef(new Animated.Value(0)).current;\r\n const onPageScrollPosition = useRef(new Animated.Value(0)).current;\r\n const onPageSelectedPosition = useRef(new Animated.Value(0)).current;\r\n\r\n const setPage = useCallback(\r\n (page: number) =>\r\n isAnimated\r\n ? ref.current?.setPage(page)\r\n : ref.current?.setPageWithoutAnimation(page),\r\n [isAnimated]\r\n );\r\n\r\n const addPage = useCallback(() => {\r\n setPages((prevPages) => {\r\n return [...prevPages, prevPages.length];\r\n });\r\n }, []);\r\n\r\n const removePage = useCallback(() => {\r\n setPages((prevPages) => {\r\n if (prevPages.length === 1) {\r\n return prevPages;\r\n }\r\n return prevPages.slice(0, prevPages.length - 1);\r\n });\r\n }, []);\r\n\r\n const toggleAnimation = useCallback(\r\n () => setIsAnimated((animated) => !animated),\r\n []\r\n );\r\n\r\n const toggleScroll = useCallback(\r\n () => setScrollEnabled((enabled) => !enabled),\r\n []\r\n );\r\n\r\n const toggleOverdrag = useCallback(\r\n () => setOverdragEnabled((enabled) => !enabled),\r\n []\r\n );\r\n\r\n const onPageScroll = useMemo(\r\n () =>\r\n Animated.event<PagerViewOnPageScrollEventData>(\r\n [\r\n {\r\n nativeEvent: {\r\n offset: onPageScrollOffset,\r\n position: onPageScrollPosition,\r\n },\r\n },\r\n ],\r\n {\r\n listener: ({ nativeEvent: { offset, position } }) => {\r\n setProgress({\r\n position,\r\n offset,\r\n });\r\n },\r\n useNativeDriver: true,\r\n }\r\n ),\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n []\r\n );\r\n\r\n const onPageSelected = useMemo(\r\n () =>\r\n Animated.event<PagerViewOnPageSelectedEventData>(\r\n [{ nativeEvent: { position: onPageSelectedPosition } }],\r\n {\r\n listener: ({ nativeEvent: { position } }) => {\r\n setActivePage(position);\r\n },\r\n useNativeDriver: true,\r\n }\r\n ),\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n []\r\n );\r\n\r\n const onPageScrollStateChanged = useCallback(\r\n (e: PageScrollStateChangedNativeEvent) => {\r\n setScrollState(e.nativeEvent.pageScrollState);\r\n },\r\n []\r\n );\r\n\r\n return {\r\n ref,\r\n activePage,\r\n isAnimated,\r\n pages,\r\n scrollState,\r\n scrollEnabled,\r\n progress,\r\n overdragEnabled,\r\n setPage,\r\n addPage,\r\n removePage,\r\n toggleScroll,\r\n toggleAnimation,\r\n setProgress,\r\n onPageScroll,\r\n onPageSelected,\r\n onPageScrollStateChanged,\r\n toggleOverdrag,\r\n AnimatedPagerView,\r\n PagerView,\r\n };\r\n}\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["PagerView","Animated","useCallback","useMemo","useRef","useState","AnimatedPagerView","createAnimatedComponent","usePagerView","pagesAmount","ref","pages","setPages","Array","fill","map","_v","index","activePage","setActivePage","isAnimated","setIsAnimated","overdragEnabled","setOverdragEnabled","scrollEnabled","setScrollEnabled","scrollState","setScrollState","progress","setProgress","position","offset","onPageScrollOffset","Value","current","onPageScrollPosition","onPageSelectedPosition","setPage","page","setPageWithoutAnimation","addPage","prevPages","length","removePage","slice","toggleAnimation","animated","toggleScroll","enabled","toggleOverdrag","onPageScroll","event","nativeEvent","listener","useNativeDriver","onPageSelected","onPageScrollStateChanged","e","pageScrollState"],"sourceRoot":"../../src","sources":["usePagerView.ts"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,5 @@
1
+ "use strict";
2
+
1
3
  /**
2
4
  * MIT License
3
5
  *
@@ -23,20 +25,25 @@
23
25
  */
24
26
  import React, { Children } from 'react';
25
27
  import { StyleSheet, View } from 'react-native';
28
+ import { jsx as _jsx } from "react/jsx-runtime";
26
29
  export const childrenWithOverriddenStyle = children => {
27
30
  return Children.map(children, child => {
31
+ if (child == null || ! /*#__PURE__*/React.isValidElement(child)) {
32
+ return null;
33
+ }
28
34
  const element = child;
29
35
  return (
30
36
  /*#__PURE__*/
31
37
  // Add a wrapper to ensure layout is calculated correctly
32
- React.createElement(View, {
38
+ _jsx(View, {
33
39
  style: StyleSheet.absoluteFill,
34
- collapsable: false
35
- }, /*#__PURE__*/React.cloneElement(element, {
36
- ...element.props,
37
- // Override styles so that each page will fill the parent.
38
- style: [element.props.style, StyleSheet.absoluteFill]
39
- }))
40
+ collapsable: false,
41
+ children: /*#__PURE__*/React.cloneElement(element, {
42
+ ...element.props,
43
+ // Override styles so that each page will fill the parent.
44
+ style: [element.props.style, StyleSheet.absoluteFill]
45
+ })
46
+ })
40
47
  );
41
48
  });
42
49
  };
@@ -1 +1 @@
1
- {"version":3,"names":["React","Children","StyleSheet","View","childrenWithOverriddenStyle","children","map","child","element","createElement","style","absoluteFill","collapsable","cloneElement","props"],"sources":["utils.tsx"],"sourcesContent":["/**\r\n * MIT License\r\n *\r\n * Copyright (C) 2025 Huawei Device Co., Ltd.\r\n *\r\n * Permission is hereby granted, free of charge, to any person obtaining a copy\r\n * of this software and associated documentation files (the \"Software\"), to deal\r\n * in the Software without restriction, including without limitation the rights\r\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\n * copies of the Software, and to permit persons to whom the Software is\r\n * furnished to do so, subject to the following conditions:\r\n *\r\n * The above copyright notice and this permission notice shall be included in all\r\n * copies or substantial portions of the Software.\r\n *\r\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r\n * SOFTWARE.\r\n */\r\nimport React, { Children, ReactNode } from 'react';\r\nimport { StyleSheet, View } from 'react-native';\r\n\r\nexport const childrenWithOverriddenStyle = (children?: ReactNode) => {\r\n return Children.map(children, (child) => {\r\n const element = child as React.ReactElement;\r\n return (\r\n // Add a wrapper to ensure layout is calculated correctly\r\n <View style={StyleSheet.absoluteFill} collapsable={false}>\r\n {/* @ts-ignore */}\r\n {React.cloneElement(element, {\r\n ...element.props,\r\n // Override styles so that each page will fill the parent.\r\n style: [element.props.style, StyleSheet.absoluteFill],\r\n })}\r\n </View>\r\n );\r\n });\r\n};\r\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAOA,KAAK,IAAIC,QAAQ,QAAmB,OAAO;AAClD,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAE/C,OAAO,MAAMC,2BAA2B,GAAIC,QAAoB,IAAK;EACnE,OAAOJ,QAAQ,CAACK,GAAG,CAACD,QAAQ,EAAGE,KAAK,IAAK;IACvC,MAAMC,OAAO,GAAGD,KAA2B;IAC3C;MAAA;MACE;MACAP,KAAA,CAAAS,aAAA,CAACN,IAAI;QAACO,KAAK,EAAER,UAAU,CAACS,YAAa;QAACC,WAAW,EAAE;MAAM,gBAEtDZ,KAAK,CAACa,YAAY,CAACL,OAAO,EAAE;QAC3B,GAAGA,OAAO,CAACM,KAAK;QAChB;QACAJ,KAAK,EAAE,CAACF,OAAO,CAACM,KAAK,CAACJ,KAAK,EAAER,UAAU,CAACS,YAAY;MACtD,CAAC,CACG;IAAC;EAEX,CAAC,CAAC;AACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","Children","StyleSheet","View","jsx","_jsx","childrenWithOverriddenStyle","children","map","child","isValidElement","element","style","absoluteFill","collapsable","cloneElement","props"],"sourceRoot":"../../src","sources":["utils.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAOA,KAAK,IAAIC,QAAQ,QAAmB,OAAO;AAClD,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEhD,OAAO,MAAMC,2BAA2B,GAAIC,QAAoB,IAAK;EACnE,OAAON,QAAQ,CAACO,GAAG,CAACD,QAAQ,EAAGE,KAAK,IAAK;IACvC,IAAIA,KAAK,IAAI,IAAI,IAAI,eAACT,KAAK,CAACU,cAAc,CAACD,KAAK,CAAC,EAAE;MACjD,OAAO,IAAI;IACb;IACA,MAAME,OAAO,GAAGF,KAAgC;IAChD;MAAA;MACE;MACAJ,IAAA,CAACF,IAAI;QAACS,KAAK,EAAEV,UAAU,CAACW,YAAa;QAACC,WAAW,EAAE,KAAM;QAAAP,QAAA,eAEtDP,KAAK,CAACe,YAAY,CAACJ,OAAO,EAAE;UAC3B,GAAGA,OAAO,CAACK,KAAK;UAChB;UACAJ,KAAK,EAAE,CAACD,OAAO,CAACK,KAAK,CAACJ,KAAK,EAAEV,UAAU,CAACW,YAAY;QACtD,CAAC;MAAC,CACE;IAAC;EAEX,CAAC,CAAC;AACJ,CAAC","ignoreList":[]}
@@ -90,3 +90,4 @@ export declare class PagerView extends React.Component<NativeProps> {
90
90
  setScrollEnabled: (scrollEnabled: boolean) => void;
91
91
  render(): React.JSX.Element;
92
92
  }
93
+ //# sourceMappingURL=PagerView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PagerView.d.ts","sourceRoot":"","sources":["../../src/PagerView.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,OAAO,wBAAwB,EAAE,EAK/B,WAAW,EACZ,MAAM,4BAA4B,CAAC;AAGpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,qBAAa,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC;IACzD,OAAO,CAAC,WAAW,CAAS;IAC5B,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,wBAAwB,CAAC,GAAG,IAAI,CAAQ;IAG3E,OAAO,KAAK,sBAAsB,GAUjC;IAED,OAAO,CAAC,aAAa,CAcnB;IAEF,OAAO,CAAC,yBAAyB,CAO/B;IAEF,OAAO,CAAC,eAAe,CAMrB;IAEF,OAAO,CAAC,gCAAgC,CAEtC;IAEF;;;OAGG;IACI,OAAO,iBAAkB,MAAM,UAIpC;IAEF;;;OAGG;IACI,uBAAuB,iBAAkB,MAAM,UAOpD;IAEF;;;;OAIG;IACI,gBAAgB,kBAAmB,OAAO,UAO/C;IAEF,MAAM;CAmBP"}
@@ -57,3 +57,4 @@ export interface NativeCommands {
57
57
  export declare const Commands: NativeCommands;
58
58
  declare const _default: HostComponent<NativeProps>;
59
59
  export default _default;
60
+ //# sourceMappingURL=PagerViewNativeComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PagerViewNativeComponent.d.ts","sourceRoot":"","sources":["../../src/PagerViewNativeComponent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAI7D,OAAO,KAAK,EACV,kBAAkB,EAClB,MAAM,EACN,KAAK,EACL,WAAW,EACZ,MAAM,2CAA2C,CAAC;AAEnD,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC,CAAC;AAEH,MAAM,MAAM,uBAAuB,GAAG,QAAQ,CAAC;IAC7C,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,CAAC;AAEH,MAAM,MAAM,iCAAiC,GAAG,QAAQ,CAAC;IACvD,eAAe,EAAE,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;CACnD,CAAC,CAAC;AAEH,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,aAAa,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC3C,eAAe,CAAC,EAAE,WAAW,CAAC,KAAK,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC;IACpD,WAAW,CAAC,EAAE,KAAK,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,CAAC,YAAY,GAAG,UAAU,EAAE,YAAY,CAAC,CAAC;IACnE,kBAAkB,CAAC,EAAE,KAAK,CAAC;IAC3B,UAAU,CAAC,EAAE,KAAK,CAAC;IACnB,cAAc,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,QAAQ,GAAG,OAAO,EAAE,MAAM,CAAC,CAAC;IAClE,QAAQ,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACvC,mBAAmB,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,SAAS,EAAE,MAAM,CAAC,CAAC;IAC9D,YAAY,CAAC,EAAE,kBAAkB,CAAC,qBAAqB,CAAC,CAAC;IACzD,cAAc,CAAC,EAAE,kBAAkB,CAAC,uBAAuB,CAAC,CAAC;IAC7D,wBAAwB,CAAC,EAAE,kBAAkB,CAAC,iCAAiC,CAAC,CAAC;CAClF;AAED,KAAK,iBAAiB,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;AAEpD,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,CACP,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAC5C,YAAY,EAAE,KAAK,KAChB,IAAI,CAAC;IACV,uBAAuB,EAAE,CACvB,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAC5C,YAAY,EAAE,KAAK,KAChB,IAAI,CAAC;IACV,4BAA4B,EAAE,CAC5B,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAC5C,aAAa,EAAE,OAAO,KACnB,IAAI,CAAC;CACX;AAED,eAAO,MAAM,QAAQ,EAAE,cAMrB,CAAC;;AAEH,wBAEgC"}
@@ -30,3 +30,4 @@ export type { PagerViewOnPageScrollEventData, PagerViewOnPageSelectedEventData,
30
30
  export type PagerViewOnPageScrollEvent = ReactNative.NativeSyntheticEvent<PagerViewOnPageScrollEventData>;
31
31
  export type PagerViewOnPageSelectedEvent = ReactNative.NativeSyntheticEvent<PagerViewOnPageSelectedEventData>;
32
32
  export type PageScrollStateChangedNativeEvent = ReactNative.NativeSyntheticEvent<PageScrollStateChangedNativeEventData>;
33
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,KAAK,KAAK,WAAW,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,eAAe,SAAS,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAE/B,OAAO,KAAK,EACV,qBAAqB,IAAI,8BAA8B,EACvD,uBAAuB,IAAI,gCAAgC,EAC3D,iCAAiC,IAAI,qCAAqC,EAC1E,WAAW,EACZ,MAAM,4BAA4B,CAAC;AAEpC,YAAY,EACV,8BAA8B,EAC9B,gCAAgC,EAChC,qCAAqC,EACrC,WAAW,IAAI,cAAc,GAC9B,CAAC;AAEF,MAAM,MAAM,0BAA0B,GACpC,WAAW,CAAC,oBAAoB,CAAC,8BAA8B,CAAC,CAAC;AAEnE,MAAM,MAAM,4BAA4B,GACtC,WAAW,CAAC,oBAAoB,CAAC,gCAAgC,CAAC,CAAC;AAErE,MAAM,MAAM,iCAAiC,GAC3C,WAAW,CAAC,oBAAoB,CAAC,qCAAqC,CAAC,CAAC"}
@@ -32,7 +32,7 @@ type UsePagerViewParams = {
32
32
  pagesAmount: number;
33
33
  };
34
34
  export declare function usePagerView({ pagesAmount }?: UsePagerViewParams): {
35
- ref: import("react").RefObject<PagerView>;
35
+ ref: import("react").RefObject<PagerView | null>;
36
36
  activePage: number;
37
37
  isAnimated: boolean;
38
38
  pages: number[];
@@ -60,3 +60,4 @@ export declare function usePagerView({ pagesAmount }?: UsePagerViewParams): {
60
60
  PagerView: typeof PagerView;
61
61
  };
62
62
  export {};
63
+ //# sourceMappingURL=usePagerView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePagerView.d.ts","sourceRoot":"","sources":["../../src/usePagerView.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,KAAK,KAAK,WAAW,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAGV,iCAAiC,IAAI,qCAAqC,EAC3E,MAAM,4BAA4B,CAAC;AAEpC,KAAK,iCAAiC,GACpC,WAAW,CAAC,oBAAoB,CAAC,qCAAqC,CAAC,CAAC;AAE1E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AAIhE,KAAK,kBAAkB,GAAG;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,wBAAgB,YAAY,CAC1B,EAAE,WAAW,EAAE,GAAE,kBAAuC;;;;;;;;;;;;oBAiB/C,MAAM;;;;;;;;;;;;;;;EA0GhB"}
@@ -23,3 +23,4 @@
23
23
  */
24
24
  import React, { ReactNode } from 'react';
25
25
  export declare const childrenWithOverriddenStyle: (children?: ReactNode) => React.JSX.Element[] | null | undefined;
26
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,KAAK,EAAE,EAAY,SAAS,EAAE,MAAM,OAAO,CAAC;AAGnD,eAAO,MAAM,2BAA2B,cAAe,SAAS,2CAkB/D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-native-ohos/react-native-pager-view",
3
- "version": "6.7.2-rc.2",
3
+ "version": "7.0.3-rc.1",
4
4
  "description": "React Native wrapper for Harmony ViewPager",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -36,33 +36,33 @@
36
36
  ],
37
37
  "repository": {
38
38
  "type": "git",
39
- "url": "https://github.com/react-native-oh-library/react-native-pager-view.git"
39
+ "url": "https://gitcode.com/openharmony-sig/rntpc_react-native-pager-view.git"
40
40
  },
41
41
  "author": "troZee <hello@callstack.com> (https://github.com/callstack)",
42
42
  "license": "MIT",
43
43
  "bugs": {
44
- "url": "https://github.com/callstack/react-native-pager-view/issues"
44
+ "url": "https://gitcode.com/openharmony-sig/rntpc_react-native-pager-view/issues"
45
45
  },
46
- "homepage": "https://github.com/callstack/react-native-pager-view#readme",
46
+ "homepage": "https://gitcode.com/openharmony-sig/rntpc_react-native-pager-view/tree/br_rnoh0.77#readme",
47
47
  "publishConfig": {
48
48
  "registry": "https://registry.npmjs.org/",
49
49
  "access": "public"
50
50
  },
51
51
  "dependencies": {
52
- "react-native-pager-view": "6.7.1"
52
+ "react-native-pager-view": "7.0.2"
53
53
  },
54
54
  "devDependencies": {
55
55
  "@babel/eslint-parser": "^7.20.0",
56
- "@react-native/babel-preset": "0.76.3",
57
- "@react-native/eslint-config": "0.76.3",
58
- "@react-native/metro-config": "0.76.3",
59
- "@react-native/typescript-config": "0.76.3",
60
- "@react-native-community/cli": "15.0.1",
61
- "@react-native-community/cli-platform-android": "15.0.1",
62
- "@react-native-community/cli-platform-ios": "15.0.1",
56
+ "@react-native/babel-preset": "0.82.1",
57
+ "@react-native/eslint-config": "0.82.1",
58
+ "@react-native/metro-config": "0.82.1",
59
+ "@react-native/typescript-config": "0.82.1",
60
+ "@react-native-community/cli": "20.0.0",
61
+ "@react-native-community/cli-platform-android": "20.0.0",
62
+ "@react-native-community/cli-platform-ios": "20.0.0",
63
63
  "@release-it/conventional-changelog": "^2.0.0",
64
- "@types/jest": "^29.5.12",
65
- "@types/react": "^18.2.6",
64
+ "@types/jest": "^29.5.13",
65
+ "@types/react": "^19.0.0",
66
66
  "eslint": "^8.19.0",
67
67
  "eslint-config-prettier": "^8.5.0",
68
68
  "eslint-plugin-ft-flow": "^3.0.1",
@@ -70,10 +70,10 @@
70
70
  "eslint-plugin-prettier": "^4.0.0",
71
71
  "jest": "^29.6.3",
72
72
  "metro-react-native-babel-preset": "^0.77.0",
73
- "prettier": "^2.4.1",
74
- "react": "18.3.1",
75
- "react-native": "0.77.1",
76
- "react-native-builder-bob": "^0.18.3",
73
+ "prettier": "^2.8.0",
74
+ "react": "19.1.1",
75
+ "react-native": "0.82.1",
76
+ "react-native-builder-bob": "^0.40.5",
77
77
  "release-it": "^14.2.2",
78
78
  "typescript": "5.0.4"
79
79
  },
package/src/utils.tsx CHANGED
@@ -26,7 +26,10 @@ import { StyleSheet, View } from 'react-native';
26
26
 
27
27
  export const childrenWithOverriddenStyle = (children?: ReactNode) => {
28
28
  return Children.map(children, (child) => {
29
- const element = child as React.ReactElement;
29
+ if (child == null || !React.isValidElement(child)) {
30
+ return null;
31
+ }
32
+ const element = child as React.ReactElement<any>;
30
33
  return (
31
34
  // Add a wrapper to ensure layout is calculated correctly
32
35
  <View style={StyleSheet.absoluteFill} collapsable={false}>
@@ -1,17 +0,0 @@
1
- /**
2
- * Use these variables when you tailor your ArkTS code. They must be of the const type.
3
- */
4
- export const HAR_VERSION = '6.7.2-rc.2';
5
- export const BUILD_MODE_NAME = 'debug';
6
- export const DEBUG = true;
7
- export const TARGET_NAME = 'default';
8
-
9
- /**
10
- * BuildProfile Class is used only for compatibility purposes.
11
- */
12
- export default class BuildProfile {
13
- static readonly HAR_VERSION = HAR_VERSION;
14
- static readonly BUILD_MODE_NAME = BUILD_MODE_NAME;
15
- static readonly DEBUG = DEBUG;
16
- static readonly TARGET_NAME = TARGET_NAME;
17
- }