@wavemaker/app-rn-runtime 11.11.7-rc.218 → 11.12.0-next.28188
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/advanced/carousel/carousel.component.js +4 -2
- package/components/advanced/carousel/carousel.component.js.map +1 -1
- package/components/basic/anchor/anchor.component.js +11 -5
- package/components/basic/anchor/anchor.component.js.map +1 -1
- package/components/basic/anchor/anchor.props.js +1 -0
- package/components/basic/anchor/anchor.props.js.map +1 -1
- package/components/basic/audio/audio.component.js +52 -47
- package/components/basic/audio/audio.component.js.map +1 -1
- package/components/basic/bottomsheet/bottomsheet.component.js +94 -48
- package/components/basic/bottomsheet/bottomsheet.component.js.map +1 -1
- package/components/basic/bottomsheet/bottomsheet.props.js +1 -0
- package/components/basic/bottomsheet/bottomsheet.props.js.map +1 -1
- package/components/basic/button/button.component.js +2 -1
- package/components/basic/button/button.component.js.map +1 -1
- package/components/basic/button/button.props.js +1 -0
- package/components/basic/button/button.props.js.map +1 -1
- package/components/basic/label/label.component.js.map +1 -1
- package/components/basic/label/label.props.js +1 -0
- package/components/basic/label/label.props.js.map +1 -1
- package/components/basic/message/message.component.js +15 -7
- package/components/basic/message/message.component.js.map +1 -1
- package/components/basic/message/message.props.js +1 -0
- package/components/basic/message/message.props.js.map +1 -1
- package/components/basic/picture/picture.component.js +2 -2
- package/components/basic/picture/picture.component.js.map +1 -1
- package/components/basic/video/video.component.js +69 -42
- package/components/basic/video/video.component.js.map +1 -1
- package/components/chart/basechart.props.js +1 -0
- package/components/chart/basechart.props.js.map +1 -1
- package/components/container/container.component.js +107 -27
- package/components/container/container.component.js.map +1 -1
- package/components/container/container.props.js +3 -1
- package/components/container/container.props.js.map +1 -1
- package/components/container/container.styles.js +1 -3
- package/components/container/container.styles.js.map +1 -1
- package/components/container/layoutgrid/gridcolumn/gridcolumn.component.js +6 -1
- package/components/container/layoutgrid/gridcolumn/gridcolumn.component.js.map +1 -1
- package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js +2 -2
- package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js.map +1 -1
- package/components/container/tabs/tabheader/tabheader.component.js +11 -2
- package/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
- package/components/container/tabs/tabheader/tabheader.props.js +1 -0
- package/components/container/tabs/tabheader/tabheader.props.js.map +1 -1
- package/components/container/tabs/tabpane/tabpane.props.js +3 -0
- package/components/container/tabs/tabpane/tabpane.props.js.map +1 -1
- package/components/container/tabs/tabs.component.js +11 -2
- package/components/container/tabs/tabs.component.js.map +1 -1
- package/components/container/wizard/wizard.component.js +1 -0
- package/components/container/wizard/wizard.component.js.map +1 -1
- package/components/data/list/list.component.js +23 -13
- package/components/data/list/list.component.js.map +1 -1
- package/components/device/barcodescanner/barcodescanner.component.js +33 -18
- package/components/device/barcodescanner/barcodescanner.component.js.map +1 -1
- package/components/device/barcodescanner/barcodescanner.props.js +2 -1
- package/components/device/barcodescanner/barcodescanner.props.js.map +1 -1
- package/components/device/camera/camera.component.js +35 -22
- package/components/device/camera/camera.component.js.map +1 -1
- package/components/device/camera/camera.props.js +2 -1
- package/components/device/camera/camera.props.js.map +1 -1
- package/components/input/basedataset/basedataset.props.js +1 -0
- package/components/input/basedataset/basedataset.props.js.map +1 -1
- package/components/input/calendar/calendar.component.js +12 -4
- package/components/input/calendar/calendar.component.js.map +1 -1
- package/components/input/calendar/views/month-view.js +9 -2
- package/components/input/calendar/views/month-view.js.map +1 -1
- package/components/input/checkbox/checkbox.component.js +5 -5
- package/components/input/checkbox/checkbox.component.js.map +1 -1
- package/components/input/checkboxset/checkboxset.component.js +15 -11
- package/components/input/checkboxset/checkboxset.component.js.map +1 -1
- package/components/input/chips/chips.component.js +25 -12
- package/components/input/chips/chips.component.js.map +1 -1
- package/components/input/currency/currency.component.js +5 -2
- package/components/input/currency/currency.component.js.map +1 -1
- package/components/input/epoch/base-datetime.component.js +9 -9
- package/components/input/epoch/base-datetime.component.js.map +1 -1
- package/components/input/epoch/datetime/datetime.props.js +1 -0
- package/components/input/epoch/datetime/datetime.props.js.map +1 -1
- package/components/input/epoch/wheelpicker/wheelpicker.component.js +8 -3
- package/components/input/epoch/wheelpicker/wheelpicker.component.js.map +1 -1
- package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js +8 -3
- package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js.map +1 -1
- package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js +8 -3
- package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js.map +1 -1
- package/components/input/fileupload/fileupload.component.js +23 -14
- package/components/input/fileupload/fileupload.component.js.map +1 -1
- package/components/input/fileupload/fileupload.props.js +2 -0
- package/components/input/fileupload/fileupload.props.js.map +1 -1
- package/components/input/radioset/radioset.component.js +15 -5
- package/components/input/radioset/radioset.component.js.map +1 -1
- package/components/input/rating/rating.component.js +11 -3
- package/components/input/rating/rating.component.js.map +1 -1
- package/components/input/rating/rating.props.js +4 -0
- package/components/input/rating/rating.props.js.map +1 -1
- package/components/input/select/select.component.js +7 -5
- package/components/input/select/select.component.js.map +1 -1
- package/components/input/slider/slider.component.js +2 -1
- package/components/input/slider/slider.component.js.map +1 -1
- package/components/input/switch/switch.component.js +11 -9
- package/components/input/switch/switch.component.js.map +1 -1
- package/components/input/toggle/toggle.component.js +8 -4
- package/components/input/toggle/toggle.component.js.map +1 -1
- package/components/input/toggle/toggle.props.js +1 -0
- package/components/input/toggle/toggle.props.js.map +1 -1
- package/components/navigation/appnavbar/appnavbar.component.js +19 -61
- package/components/navigation/appnavbar/appnavbar.component.js.map +1 -1
- package/components/navigation/navitem/navitem.component.js +3 -1
- package/components/navigation/navitem/navitem.component.js.map +1 -1
- package/components/navigation/popover/popover.component.js +2 -1
- package/components/navigation/popover/popover.component.js.map +1 -1
- package/components/navigation/popover/popover.props.js +2 -1
- package/components/navigation/popover/popover.props.js.map +1 -1
- package/components/page/page-content/page-content.component.js +74 -20
- package/components/page/page-content/page-content.component.js.map +1 -1
- package/components/page/page-content/page-content.props.js +1 -0
- package/components/page/page-content/page-content.props.js.map +1 -1
- package/components/page/page.component.js +29 -44
- package/components/page/page.component.js.map +1 -1
- package/components/page/page.props.js +4 -2
- package/components/page/page.props.js.map +1 -1
- package/components/page/tabbar/tabbar.component.js +24 -13
- package/components/page/tabbar/tabbar.component.js.map +1 -1
- package/core/AppConfig.js.map +1 -1
- package/core/accessibility.js +51 -32
- package/core/accessibility.js.map +1 -1
- package/core/base.component.js.map +1 -1
- package/core/components/error-fallback/error-fallback.component.js +140 -0
- package/core/components/error-fallback/error-fallback.component.js.map +1 -0
- package/core/components/error-fallback/error-fallback.styles.js +224 -0
- package/core/components/error-fallback/error-fallback.styles.js.map +1 -0
- package/core/components/sticky-base.component.js +54 -0
- package/core/components/sticky-base.component.js.map +1 -0
- package/core/components/sticky-container.component.js +34 -0
- package/core/components/sticky-container.component.js.map +1 -0
- package/core/components/sticky-container.styles.js +98 -0
- package/core/components/sticky-container.styles.js.map +1 -0
- package/core/components/sticky-nav.component.js +28 -0
- package/core/components/sticky-nav.component.js.map +1 -0
- package/core/device/av-service.js +8 -0
- package/core/device/av-service.js.map +1 -0
- package/core/device/calendar-service.js +7 -1
- package/core/device/calendar-service.js.map +1 -1
- package/core/device/camera-service.js +6 -0
- package/core/device/camera-service.js.map +1 -1
- package/core/device/contacts-service.js +7 -1
- package/core/device/contacts-service.js.map +1 -1
- package/core/device/fileupload-service.js +8 -0
- package/core/device/fileupload-service.js.map +1 -0
- package/core/device/location-service.js +7 -1
- package/core/device/location-service.js.map +1 -1
- package/core/device/scan-service.js +6 -0
- package/core/device/scan-service.js.map +1 -1
- package/core/error-boundary.component.js +1 -1
- package/core/error-boundary.component.js.map +1 -1
- package/core/event-notifier.js +4 -3
- package/core/event-notifier.js.map +1 -1
- package/core/fixed-view.component.js +2 -1
- package/core/fixed-view.component.js.map +1 -1
- package/core/responsive.utils.js +8 -5
- package/core/responsive.utils.js.map +1 -1
- package/core/sticky-view.component.js +50 -0
- package/core/sticky-view.component.js.map +1 -0
- package/core/sticky-wrapper.js +129 -0
- package/core/sticky-wrapper.js.map +1 -0
- package/core/utils.js +0 -6
- package/core/utils.js.map +1 -1
- package/npm-shrinkwrap.json +9 -9
- package/package-lock.json +9 -9
- package/package.json +2 -2
- package/runtime/App.js +3 -5
- package/runtime/App.js.map +1 -1
- package/runtime/services/device/calendar-service.js +9 -5
- package/runtime/services/device/calendar-service.js.map +1 -1
- package/runtime/services/device/camera-service.js +39 -22
- package/runtime/services/device/camera-service.js.map +1 -1
- package/runtime/services/device/contacts-service.js +6 -5
- package/runtime/services/device/contacts-service.js.map +1 -1
- package/runtime/services/device/location-service.js +4 -4
- package/runtime/services/device/location-service.js.map +1 -1
- package/runtime/services/device/permission-service.js +5 -0
- package/runtime/services/device/permission-service.js.map +1 -0
- package/runtime/services/device/permissions.js +34 -39
- package/runtime/services/device/permissions.js.map +1 -1
- package/runtime/services/device/scan-service.js +4 -3
- package/runtime/services/device/scan-service.js.map +1 -1
- package/styles/theme.js +24 -18
- package/styles/theme.js.map +1 -1
- package/variables/device/calendar/create-event.operation.js +12 -1
- package/variables/device/calendar/create-event.operation.js.map +1 -1
- package/variables/device/calendar/delete-event.operation.js +12 -1
- package/variables/device/calendar/delete-event.operation.js.map +1 -1
- package/variables/device/calendar/get-events.operation.js +12 -1
- package/variables/device/calendar/get-events.operation.js.map +1 -1
- package/variables/device/camera/capture-image.operation.js +8 -1
- package/variables/device/camera/capture-image.operation.js.map +1 -1
- package/variables/device/camera/capture-video.operation.js +7 -1
- package/variables/device/camera/capture-video.operation.js.map +1 -1
- package/variables/device/contacts/get-contacts.operation.js +12 -1
- package/variables/device/contacts/get-contacts.operation.js.map +1 -1
- package/variables/device/device/current-geo-position.operation.js +12 -1
- package/variables/device/device/current-geo-position.operation.js.map +1 -1
- package/variables/device/file/upload-file.operation.js +17 -3
- package/variables/device/file/upload-file.operation.js.map +1 -1
- package/variables/device/scan/scan.operation.js +12 -1
- package/variables/device/scan/scan.operation.js.map +1 -1
- package/variables/http.service.js +6 -1
- package/variables/http.service.js.map +1 -1
- package/core/components/error-fallback.component.js +0 -264
- package/core/components/error-fallback.component.js.map +0 -1
- package/core/sticky-container.component.js +0 -175
- package/core/sticky-container.component.js.map +0 -1
@@ -4,7 +4,8 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
|
|
4
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); }
|
5
5
|
import React, { createRef } from 'react';
|
6
6
|
import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';
|
7
|
-
import { View, Animated, PanResponder, Dimensions, TouchableWithoutFeedback, Platform,
|
7
|
+
import { View, Animated, PanResponder, Dimensions, TouchableWithoutFeedback, Platform, StatusBar, BackHandler, KeyboardAvoidingView, Keyboard, Modal } from 'react-native';
|
8
|
+
import { ScrollView } from 'react-native-gesture-handler';
|
8
9
|
import WmBottomsheetProps from './bottomsheet.props';
|
9
10
|
import { DEFAULT_CLASS } from './bottomsheet.styles';
|
10
11
|
import { createSkeleton } from '../skeleton/skeleton.component';
|
@@ -60,8 +61,8 @@ export default class WmBottomsheet extends BaseComponent {
|
|
60
61
|
this.closeSheet();
|
61
62
|
}
|
62
63
|
}
|
63
|
-
constructor(
|
64
|
-
super(
|
64
|
+
constructor(_props) {
|
65
|
+
super(_props, DEFAULT_CLASS, new WmBottomsheetProps(), new WmBottomsheetState());
|
65
66
|
_defineProperty(this, "calculatedHeight", void 0);
|
66
67
|
_defineProperty(this, "expandedHeight", void 0);
|
67
68
|
_defineProperty(this, "defaultHeight", 0.5);
|
@@ -76,6 +77,9 @@ export default class WmBottomsheet extends BaseComponent {
|
|
76
77
|
_defineProperty(this, "maxHeightRatio", 0);
|
77
78
|
_defineProperty(this, "keyboardDidShowListener", void 0);
|
78
79
|
_defineProperty(this, "keyboardDidHideListener", void 0);
|
80
|
+
_defineProperty(this, "topInset", 0);
|
81
|
+
_defineProperty(this, "iosKeyboardHeight", 0);
|
82
|
+
_defineProperty(this, "isIosKeyboardHeightSet", false);
|
79
83
|
_defineProperty(this, "handleBackPress", () => {
|
80
84
|
if (this.state.isBottomsheetVisible) {
|
81
85
|
this.closeSheet();
|
@@ -86,11 +90,35 @@ export default class WmBottomsheet extends BaseComponent {
|
|
86
90
|
_defineProperty(this, "onKeyboardShow", event => {
|
87
91
|
var _event$endCoordinates;
|
88
92
|
let keyboardHeight = ((_event$endCoordinates = event.endCoordinates) === null || _event$endCoordinates === void 0 ? void 0 : _event$endCoordinates.height) || 0;
|
93
|
+
//only storing ios keyboard height once as first time keyboard open (to avoid scroll flickring issue in ios in text widget)
|
94
|
+
if (!this.isIosKeyboardHeightSet) {
|
95
|
+
var _event$endCoordinates2;
|
96
|
+
this.iosKeyboardHeight = ((_event$endCoordinates2 = event.endCoordinates) === null || _event$endCoordinates2 === void 0 ? void 0 : _event$endCoordinates2.height) + 40;
|
97
|
+
this.isIosKeyboardHeightSet = true;
|
98
|
+
}
|
99
|
+
// Calculate available space after keyboard
|
100
|
+
const availableHeight = SCREEN_HEIGHT - (Platform.OS == 'ios' ? this.iosKeyboardHeight : keyboardHeight);
|
101
|
+
// Calculate adjusted sheet height to fit within available space
|
102
|
+
// Leave some buffer space for the drag handle and safe area
|
103
|
+
const bufferSpace = (Platform.OS === 'ios' ? this.topInset : this.statusBarHeight) + 20;
|
104
|
+
const adjustedHeight = availableHeight - bufferSpace;
|
105
|
+
// Animate the sheet height adjustment
|
106
|
+
Animated.timing(this.state.sheetHeight, {
|
107
|
+
toValue: adjustedHeight,
|
108
|
+
duration: 100,
|
109
|
+
useNativeDriver: false
|
110
|
+
}).start();
|
89
111
|
this.updateState({
|
90
112
|
keyboardHeight: keyboardHeight
|
91
113
|
});
|
92
114
|
});
|
93
115
|
_defineProperty(this, "onKeyboardHide", () => {
|
116
|
+
// Restore the original sheet height when keyboard hides
|
117
|
+
Animated.timing(this.state.sheetHeight, {
|
118
|
+
toValue: this.state.isExpanded ? this.expandedHeight : this.calculatedHeight,
|
119
|
+
duration: 100,
|
120
|
+
useNativeDriver: false
|
121
|
+
}).start();
|
94
122
|
this.updateState({
|
95
123
|
keyboardHeight: 0
|
96
124
|
});
|
@@ -241,10 +269,54 @@ export default class WmBottomsheet extends BaseComponent {
|
|
241
269
|
this.state.sheetHeight.setValue(this.calculatedHeight);
|
242
270
|
});
|
243
271
|
});
|
244
|
-
this
|
272
|
+
_defineProperty(this, "renderContent", props => {
|
273
|
+
return /*#__PURE__*/React.createElement(SafeAreaInsetsContext.Consumer, null, (insets = {
|
274
|
+
top: 0,
|
275
|
+
bottom: 0,
|
276
|
+
left: 0,
|
277
|
+
right: 0
|
278
|
+
}) => {
|
279
|
+
this.topInset = (insets === null || insets === void 0 ? void 0 : insets.top) || 0;
|
280
|
+
return /*#__PURE__*/React.createElement(View, _extends({
|
281
|
+
style: this.styles.root
|
282
|
+
}, this.getTestProps('keyboardview')), this._background, /*#__PURE__*/React.createElement(TouchableWithoutFeedback, {
|
283
|
+
onPress: this.closeSheet
|
284
|
+
}, /*#__PURE__*/React.createElement(Animated.View, _extends({
|
285
|
+
style: [this.styles.backdrop, {
|
286
|
+
opacity: this.state.backdropOpacity
|
287
|
+
}]
|
288
|
+
}, this.getTestProps('backdrop'), getAccessibilityProps(AccessibilityWidgetType.BOTTOMSHEET, props)))), /*#__PURE__*/React.createElement(Animated.View, _extends({
|
289
|
+
style: [this.styles.container, {
|
290
|
+
height: this.state.sheetHeight,
|
291
|
+
transform: [{
|
292
|
+
translateY: this.state.translateY
|
293
|
+
}]
|
294
|
+
}]
|
295
|
+
}, this.panResponder.panHandlers), /*#__PURE__*/React.createElement(View, _extends({
|
296
|
+
style: this.styles.dragHandleContainer
|
297
|
+
}, this.dragHandlePanResponder.panHandlers), /*#__PURE__*/React.createElement(TouchableWithoutFeedback, {
|
298
|
+
onPress: this.closeSheet
|
299
|
+
}, /*#__PURE__*/React.createElement(View, _extends({
|
300
|
+
style: this.styles.dragIconHandle
|
301
|
+
}, this.getTestProps('draghandle'))))), /*#__PURE__*/React.createElement(ScrollView, _extends({
|
302
|
+
ref: this.state.scrollViewRef,
|
303
|
+
style: this.styles.sheetContentContainer,
|
304
|
+
contentContainerStyle: this.styles.sheetScrollContent,
|
305
|
+
alwaysBounceVertical: false,
|
306
|
+
alwaysBounceHorizontal: false,
|
307
|
+
bounces: false,
|
308
|
+
showsVerticalScrollIndicator: false,
|
309
|
+
scrollEventThrottle: 16,
|
310
|
+
onScroll: this.handleScroll,
|
311
|
+
nestedScrollEnabled: true,
|
312
|
+
scrollEnabled: true
|
313
|
+
}, this.getTestProps('scorllview')), props.children)));
|
314
|
+
});
|
315
|
+
});
|
316
|
+
this.calculatedHeight = this.calculateSheetHeight(_props.bottomsheetheightratio);
|
245
317
|
|
246
318
|
// Use bottomsheetexpandedheightratio if provided, otherwise use expandedDefaultHeight
|
247
|
-
const expandedRatio =
|
319
|
+
const expandedRatio = _props.bottomsheetexpandedheightratio || this.expandedDefaultHeight;
|
248
320
|
const effectiveExpandedRatio = Math.max(this.minimumExpandedHeight, Math.min(expandedRatio, this.maxHeight));
|
249
321
|
this.expandedHeight = SCREEN_HEIGHT * effectiveExpandedRatio;
|
250
322
|
if (Platform.OS === 'android') {
|
@@ -315,49 +387,23 @@ export default class WmBottomsheet extends BaseComponent {
|
|
315
387
|
}
|
316
388
|
renderWidget(props) {
|
317
389
|
if (!this.state.isBottomsheetVisible) return null;
|
318
|
-
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
transform: [{
|
336
|
-
translateY: this.state.translateY
|
337
|
-
}]
|
338
|
-
}]
|
339
|
-
}, this.panResponder.panHandlers), /*#__PURE__*/React.createElement(View, _extends({
|
340
|
-
style: this.styles.dragHandleContainer
|
341
|
-
}, this.dragHandlePanResponder.panHandlers), /*#__PURE__*/React.createElement(TouchableWithoutFeedback, {
|
342
|
-
onPress: this.closeSheet
|
343
|
-
}, /*#__PURE__*/React.createElement(View, _extends({
|
344
|
-
style: this.styles.dragIconHandle
|
345
|
-
}, this.getTestProps('draghandle'))))), /*#__PURE__*/React.createElement(ScrollView, _extends({
|
346
|
-
ref: this.state.scrollViewRef,
|
347
|
-
style: this.styles.sheetContentContainer,
|
348
|
-
contentContainerStyle: [this.styles.sheetScrollContent, {
|
349
|
-
paddingBottom: this.state.keyboardHeight
|
350
|
-
}],
|
351
|
-
alwaysBounceVertical: false,
|
352
|
-
alwaysBounceHorizontal: false,
|
353
|
-
bounces: false,
|
354
|
-
showsVerticalScrollIndicator: false,
|
355
|
-
scrollEventThrottle: 16,
|
356
|
-
onScroll: this.handleScroll,
|
357
|
-
nestedScrollEnabled: true,
|
358
|
-
scrollEnabled: true
|
359
|
-
}, this.getTestProps('scorllview')), props.children)));
|
360
|
-
});
|
390
|
+
if (props.modal) {
|
391
|
+
return /*#__PURE__*/React.createElement(Modal, {
|
392
|
+
visible: this.state.isBottomsheetVisible,
|
393
|
+
transparent: true,
|
394
|
+
animationType: "none",
|
395
|
+
onRequestClose: this.closeSheet,
|
396
|
+
statusBarTranslucent: true
|
397
|
+
}, /*#__PURE__*/React.createElement(KeyboardAvoidingView, {
|
398
|
+
style: {
|
399
|
+
flex: 1
|
400
|
+
},
|
401
|
+
behavior: Platform.OS === 'ios' ? 'padding' : undefined,
|
402
|
+
keyboardVerticalOffset: Platform.OS === 'ios' ? 0 : undefined
|
403
|
+
}, this.renderContent(props)));
|
404
|
+
} else {
|
405
|
+
return this.renderContent(props);
|
406
|
+
}
|
361
407
|
}
|
362
408
|
}
|
363
409
|
//# sourceMappingURL=bottomsheet.component.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","createRef","BaseComponent","BaseComponentState","View","Animated","PanResponder","Dimensions","TouchableWithoutFeedback","Platform","ScrollView","StatusBar","BackHandler","Keyboard","WmBottomsheetProps","DEFAULT_CLASS","createSkeleton","AccessibilityWidgetType","getAccessibilityProps","SafeAreaInsetsContext","height","SCREEN_HEIGHT","get","WmBottomsheetState","constructor","args","_defineProperty","Value","WmBottomsheet","calculateSheetHeight","bottomsheetheightratio","effectiveRatio","defaultHeight","maxHeightRatio","Math","max","minimumHeight","min","maxHeight","screenHeight","windowHeight","calculatedHeight","OS","defaultTopInset","statusBarHeight","open","state","isBottomsheetVisible","updateState","openSheet","close","closeSheet","props","currentHeight","event","_event$endCoordinates","keyboardHeight","endCoordinates","gestureState","lastGestureDy","dy","isExpanded","expandedHeight","parallel","timing","translateY","toValue","duration","animationDuration","useNativeDriver","sheetHeight","start","vy","create","onStartShouldSetPanResponder","_","scrollOffset","onMoveShouldSetPanResponder","onPanResponderMove","newTranslateY","setValue","onPanResponderRelease","handleSwipeGesture","onPanResponderTerminate","expand","targetHeight","offsetY","nativeEvent","contentOffset","y","isScrolling","backdropOpacity","invokeEventCallback","requestAnimationFrame","handleClose","expandedRatio","bottomsheetexpandedheightratio","expandedDefaultHeight","effectiveExpandedRatio","minimumExpandedHeight","showonrender","closeSheetImmediate","componentDidMount","addEventListener","handleBackPress","keyboardDidShowListener","addListener","onKeyboardShow","keyboardDidHideListener","onKeyboardHide","componentWillUnmount","removeEventListener","remove","componentDidUpdate","prevProps","onPropertyChange","name","$new","$old","renderSkeleton","theme","styles","skeleton","root","width","renderWidget","createElement","Consumer","insets","top","bottom","left","right","_extends","style","getTestProps","_background","onPress","backdrop","opacity","BOTTOMSHEET","container","transform","panResponder","panHandlers","dragHandleContainer","dragHandlePanResponder","dragIconHandle","ref","scrollViewRef","sheetContentContainer","contentContainerStyle","sheetScrollContent","paddingBottom","alwaysBounceVertical","alwaysBounceHorizontal","bounces","showsVerticalScrollIndicator","scrollEventThrottle","onScroll","handleScroll","nestedScrollEnabled","scrollEnabled","children"],"sources":["bottomsheet.component.tsx"],"sourcesContent":["import React, { createRef } from 'react';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { View, Animated, PanResponder, Dimensions, TouchableWithoutFeedback, Platform, ScrollView, PanResponderGestureState, StatusBar, BackHandler, DimensionValue, KeyboardAvoidingView, Keyboard, EmitterSubscription } from 'react-native';\nimport WmBottomsheetProps from './bottomsheet.props';\nimport { DEFAULT_CLASS, WmBottomsheetStyles } from './bottomsheet.styles';\nimport { createSkeleton } from '../skeleton/skeleton.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\nimport { SafeAreaInsetsContext } from 'react-native-safe-area-context';\n\nconst { height: SCREEN_HEIGHT } = Dimensions.get('screen');\nexport class WmBottomsheetState extends BaseComponentState<WmBottomsheetProps> {\n translateY = new Animated.Value(SCREEN_HEIGHT);\n backdropOpacity = new Animated.Value(0);\n sheetHeight = new Animated.Value(0);\n lastGestureDy = 0;\n scrollViewRef = createRef<ScrollView>();\n isScrolling = false;\n scrollOffset = 0;\n isExpanded = false;\n isBottomsheetVisible = false;\n keyboardHeight = 0;\n}\n\nexport default class WmBottomsheet extends BaseComponent<WmBottomsheetProps, WmBottomsheetState, WmBottomsheetStyles> {\n private calculatedHeight: number;\n private expandedHeight: number;\n private defaultHeight: number = 0.5;\n private expandedDefaultHeight: number = 0.8;\n private minimumHeight: number = 0.2;\n private minimumExpandedHeight: number = 0.5;\n private maxHeight: number = 1.0; // Allow full screen height\n private animationDuration: number = 400\n private statusBarHeight: number = StatusBar.currentHeight || 0;\n private defaultTopInset: number = 44;\n private maxHeightRatio: number = 0;\n private keyboardDidShowListener!: EmitterSubscription;\n private keyboardDidHideListener!: EmitterSubscription;\n\n private calculateSheetHeight(bottomsheetheightratio: number): number {\n // Use default height if ratio not provided, but ensure it's not below minimum\n const effectiveRatio = bottomsheetheightratio || this.defaultHeight;\n this.maxHeightRatio = Math.max(\n this.minimumHeight,\n Math.min(effectiveRatio, this.maxHeight)\n );\n\n const screenHeight = Dimensions.get('screen').height;\n const windowHeight = Dimensions.get('window').height;\n let calculatedHeight = screenHeight * this.maxHeightRatio;\n\n if (Platform.OS === 'ios') {\n // Subtract top inset bar height for ios only if bottomsheetheightratio is 0.9\n if (this.maxHeightRatio >= 0.9) {\n calculatedHeight -= this.defaultTopInset;\n }\n }\n else if (Platform.OS === 'android') {\n // Subtract status bar height for Android only if bottomsheetheightratio is 0.9\n if (this.maxHeightRatio >= 0.9) {\n calculatedHeight -= this.statusBarHeight;\n }\n }\n return calculatedHeight;\n }\n\n open() {\n if (!this.state.isBottomsheetVisible)\n this.updateState({\n isBottomsheetVisible: true\n } as WmBottomsheetState);\n this.openSheet();\n }\n\n close() {\n if (this.state.isBottomsheetVisible) {\n this.closeSheet();\n }\n }\n\n constructor(props: WmBottomsheetProps) {\n super(props, DEFAULT_CLASS, new WmBottomsheetProps(), new WmBottomsheetState());\n this.calculatedHeight = this.calculateSheetHeight(props.bottomsheetheightratio);\n\n // Use bottomsheetexpandedheightratio if provided, otherwise use expandedDefaultHeight\n const expandedRatio = props.bottomsheetexpandedheightratio || this.expandedDefaultHeight;\n const effectiveExpandedRatio = Math.max(\n this.minimumExpandedHeight,\n Math.min(expandedRatio, this.maxHeight)\n );\n\n this.expandedHeight = SCREEN_HEIGHT * effectiveExpandedRatio;\n\n if (Platform.OS === 'android') {\n if (effectiveExpandedRatio >= 0.9) {\n this.expandedHeight -= this.statusBarHeight;\n }\n }\n if (Platform.OS === 'ios') {\n if (effectiveExpandedRatio >= 0.9) {\n this.expandedHeight -= this.defaultTopInset;\n }\n }\n this.state.sheetHeight.setValue(this.calculatedHeight);\n\n this.updateState({\n isBottomsheetVisible: this.props.showonrender || false\n } as WmBottomsheetState);\n\n if (this.state.isBottomsheetVisible) {\n this.openSheet();\n } else {\n this.closeSheetImmediate();\n }\n }\n\n componentDidMount() {\n super.componentDidMount();\n if (Platform.OS === 'android') {\n BackHandler.addEventListener('hardwareBackPress', this.handleBackPress);\n }\n this.keyboardDidShowListener = Keyboard.addListener('keyboardDidShow', this.onKeyboardShow);\n this.keyboardDidHideListener = Keyboard.addListener('keyboardDidHide', this.onKeyboardHide);\n }\n\n componentWillUnmount() {\n super.componentWillUnmount();\n if (Platform.OS === 'android') {\n BackHandler.removeEventListener('hardwareBackPress', this.handleBackPress);\n }\n this.keyboardDidShowListener.remove();\n this.keyboardDidHideListener.remove();\n }\n\n private handleBackPress = () => {\n if (this.state.isBottomsheetVisible) {\n this.closeSheet();\n return true; // Prevent default back action\n }\n return false;\n };\n\n private onKeyboardShow = (event: any) => {\n let keyboardHeight = event.endCoordinates?.height || 0;\n this.updateState({\n keyboardHeight: keyboardHeight\n } as WmBottomsheetState);\n };\n\n private onKeyboardHide = () => {\n this.updateState({\n keyboardHeight: 0\n } as WmBottomsheetState);\n };\n\n componentDidUpdate(prevProps: WmBottomsheetProps) {\n if (prevProps.bottomsheetheightratio !== this.props.bottomsheetheightratio) {\n this.calculatedHeight = this.calculateSheetHeight(this.props.bottomsheetheightratio);\n this.state.sheetHeight.setValue(this.calculatedHeight);\n }\n }\n\n handleSwipeGesture = (gestureState: PanResponderGestureState) => {\n this.updateState({\n lastGestureDy: 0\n } as WmBottomsheetState);\n if (gestureState.dy > 0) {\n if (this.state.isExpanded) {\n // Expand the bottom sheet threshold is 25% of the fully expanded height\n // If the user swipe distance is below the threshold, revert to the original sheet height\n if (gestureState.dy < this.expandedHeight / 4) {\n Animated.parallel([\n Animated.timing(this.state.translateY, {\n toValue: 0, // Keep sheet open\n duration: this.animationDuration,\n useNativeDriver: false,\n }),\n Animated.timing(this.state.sheetHeight, {\n toValue: this.calculatedHeight, // Back to original height\n duration: this.animationDuration,\n useNativeDriver: false,\n })\n ]).start();\n this.updateState({\n isExpanded: false\n } as WmBottomsheetState);\n }\n else if (gestureState.dy > this.expandedHeight / 4 || gestureState.vy > 0.5) {\n this.closeSheet();\n }\n }\n else {\n if (gestureState.dy > 100 || gestureState.vy > 0.5) {\n this.closeSheet();\n } else {\n this.openSheet();\n }\n }\n }\n }\n // panResponder for bottom sheet scroll view\n panResponder = PanResponder.create({\n onStartShouldSetPanResponder: (_, gestureState) => {\n // Only handle the gesture if we're at the top and swiping down\n return gestureState.dy > 0 && this.state.scrollOffset <= 0;\n },\n\n onMoveShouldSetPanResponder: (_, gestureState) => {\n // Only handle the gesture if we're at the top and swiping down\n return gestureState.dy > 0 && this.state.scrollOffset <= 0;\n },\n\n onPanResponderMove: (_, gestureState) => {\n if (gestureState.dy > 0) {\n const newTranslateY = Math.max(0, this.state.lastGestureDy + gestureState.dy);\n this.state.translateY.setValue(newTranslateY);\n\n }\n },\n\n onPanResponderRelease: (_, gestureState) => {\n this.handleSwipeGesture(gestureState)\n },\n\n onPanResponderTerminate: () => {\n this.openSheet();\n },\n });\n\n //pan repsoneder for bottom sheet dragable container\n dragHandlePanResponder = PanResponder.create({\n onStartShouldSetPanResponder: () => true,\n onMoveShouldSetPanResponder: () => true,\n onPanResponderMove: (_, gestureState) => {\n\n if (gestureState.dy > 0) { // Handle downward drag\n const newTranslateY = Math.max(0, this.state.lastGestureDy + gestureState.dy);\n this.state.translateY.setValue(newTranslateY);\n } else if (gestureState.dy < 0 && this.props.expand && this.props.bottomsheetheightratio !== 1) {\n // Handle upward drag - expand to full height\n // Allow expansion to full screen height\n const targetHeight = Math.min(this.expandedHeight, SCREEN_HEIGHT);\n Animated.timing(this.state.sheetHeight, {\n toValue: targetHeight,\n duration: this.animationDuration,\n useNativeDriver: false,\n }).start();\n this.updateState({\n isExpanded: true\n } as WmBottomsheetState);\n }\n },\n onPanResponderRelease: (_, gestureState) => {\n this.handleSwipeGesture(gestureState)\n },\n });\n\n handleScroll = (event: any): any => {\n if (this.state.keyboardHeight > 0) return null;\n const offsetY = event.nativeEvent.contentOffset.y;\n this.updateState({\n isScrolling: offsetY > 0,\n scrollOffset: offsetY\n } as WmBottomsheetState);\n };\n\n openSheet = () => {\n this.updateState({\n lastGestureDy: 0,\n } as WmBottomsheetState);\n\n Animated.parallel([\n Animated.timing(this.state.translateY, {\n toValue: 0,\n duration: this.animationDuration,\n useNativeDriver: false,\n }),\n Animated.timing(this.state.backdropOpacity, {\n toValue: 1,\n duration: this.animationDuration,\n useNativeDriver: false,\n }),\n ]).start(() => {\n this.invokeEventCallback('onOpened', [null, this]);\n });\n };\n\n private handleClose = () => {\n this.updateState({\n isBottomsheetVisible: false\n } as WmBottomsheetState);\n this.invokeEventCallback('onClose', [null, this]);\n };\n\n closeSheet = () => {\n Animated.parallel([\n Animated.timing(this.state.translateY, {\n toValue: SCREEN_HEIGHT,\n duration: this.animationDuration,\n useNativeDriver: false,\n }),\n Animated.timing(this.state.backdropOpacity, {\n toValue: 0,\n duration: this.animationDuration,\n useNativeDriver: false,\n }),\n ]).start(() => {\n requestAnimationFrame(() => {\n this.state.sheetHeight.setValue(this.calculatedHeight);\n this.updateState({\n isExpanded: false\n } as WmBottomsheetState);\n this.handleClose();\n });\n });\n };\n\n closeSheetImmediate = () => {\n this.state.translateY.setValue(SCREEN_HEIGHT);\n this.state.backdropOpacity.setValue(0);\n this.updateState({\n lastGestureDy: 0,\n isExpanded: false,\n isBottomsheetVisible: false\n } as WmBottomsheetState);\n requestAnimationFrame(() => {\n this.state.sheetHeight.setValue(this.calculatedHeight);\n });\n };\n\n public onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch (name) {\n case \"showonrender\":\n if ($new) {\n this.updateState({\n isBottomsheetVisible: $new || false\n } as WmBottomsheetState);\n if (this.state.isBottomsheetVisible) {\n this.openSheet && this.openSheet();\n }\n } else {\n this.closeSheetImmediate && this.closeSheetImmediate();\n }\n break;\n }\n }\n\n public renderSkeleton(props: WmBottomsheetProps) {\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: this.styles.root.width as DimensionValue,\n height: this.styles.root.height as DimensionValue\n });\n }\n\n renderWidget(props: WmBottomsheetProps) {\n if (!this.state.isBottomsheetVisible) return null;\n\n\n return (\n <SafeAreaInsetsContext.Consumer >\n {(insets = { top: 0, bottom: 0, left: 0, right: 0 }) => {\n return (\n\n <View style={this.styles.root}\n {...this.getTestProps('keyboardview')}>\n\n {this._background}\n <TouchableWithoutFeedback onPress={this.closeSheet}>\n <Animated.View style={[this.styles.backdrop, { opacity: this.state.backdropOpacity }]}\n {...this.getTestProps('backdrop')}\n {...getAccessibilityProps(AccessibilityWidgetType.BOTTOMSHEET, props)}\n />\n </TouchableWithoutFeedback>\n\n <Animated.View\n style={[\n this.styles.container,\n\n {\n height: this.state.sheetHeight,\n transform: [{ translateY: this.state.translateY }],\n },\n ]}\n {...this.panResponder.panHandlers}\n\n\n >\n <View style={this.styles.dragHandleContainer} {...this.dragHandlePanResponder.panHandlers}>\n <TouchableWithoutFeedback onPress={this.closeSheet}>\n <View style={this.styles.dragIconHandle}\n {...this.getTestProps('draghandle')} />\n </TouchableWithoutFeedback>\n </View>\n <ScrollView\n ref={this.state.scrollViewRef}\n style={this.styles.sheetContentContainer}\n contentContainerStyle={[this.styles.sheetScrollContent,\n {\n paddingBottom: this.state.keyboardHeight\n }\n ]}\n alwaysBounceVertical={false}\n alwaysBounceHorizontal={false}\n bounces={false}\n showsVerticalScrollIndicator={false}\n scrollEventThrottle={16}\n onScroll={this.handleScroll}\n nestedScrollEnabled={true}\n scrollEnabled={true}\n {...this.getTestProps('scorllview')}\n >\n {props.children}\n </ScrollView>\n\n </Animated.View>\n\n </View>\n )\n }}\n </SafeAreaInsetsContext.Consumer>\n\n\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","createRef","BaseComponent","BaseComponentState","View","Animated","PanResponder","Dimensions","TouchableWithoutFeedback","Platform","StatusBar","BackHandler","KeyboardAvoidingView","Keyboard","Modal","ScrollView","WmBottomsheetProps","DEFAULT_CLASS","createSkeleton","AccessibilityWidgetType","getAccessibilityProps","SafeAreaInsetsContext","height","SCREEN_HEIGHT","get","WmBottomsheetState","constructor","args","_defineProperty","Value","WmBottomsheet","calculateSheetHeight","bottomsheetheightratio","effectiveRatio","defaultHeight","maxHeightRatio","Math","max","minimumHeight","min","maxHeight","screenHeight","windowHeight","calculatedHeight","OS","defaultTopInset","statusBarHeight","open","state","isBottomsheetVisible","updateState","openSheet","close","closeSheet","props","currentHeight","event","_event$endCoordinates","keyboardHeight","endCoordinates","isIosKeyboardHeightSet","_event$endCoordinates2","iosKeyboardHeight","availableHeight","bufferSpace","topInset","adjustedHeight","timing","sheetHeight","toValue","duration","useNativeDriver","start","isExpanded","expandedHeight","gestureState","lastGestureDy","dy","parallel","translateY","animationDuration","vy","create","onStartShouldSetPanResponder","_","scrollOffset","onMoveShouldSetPanResponder","onPanResponderMove","newTranslateY","setValue","onPanResponderRelease","handleSwipeGesture","onPanResponderTerminate","expand","targetHeight","offsetY","nativeEvent","contentOffset","y","isScrolling","backdropOpacity","invokeEventCallback","requestAnimationFrame","handleClose","createElement","Consumer","insets","top","bottom","left","right","_extends","style","styles","root","getTestProps","_background","onPress","backdrop","opacity","BOTTOMSHEET","container","transform","panResponder","panHandlers","dragHandleContainer","dragHandlePanResponder","dragIconHandle","ref","scrollViewRef","sheetContentContainer","contentContainerStyle","sheetScrollContent","alwaysBounceVertical","alwaysBounceHorizontal","bounces","showsVerticalScrollIndicator","scrollEventThrottle","onScroll","handleScroll","nestedScrollEnabled","scrollEnabled","children","expandedRatio","bottomsheetexpandedheightratio","expandedDefaultHeight","effectiveExpandedRatio","minimumExpandedHeight","showonrender","closeSheetImmediate","componentDidMount","addEventListener","handleBackPress","keyboardDidShowListener","addListener","onKeyboardShow","keyboardDidHideListener","onKeyboardHide","componentWillUnmount","removeEventListener","remove","componentDidUpdate","prevProps","onPropertyChange","name","$new","$old","renderSkeleton","theme","skeleton","width","renderWidget","modal","visible","transparent","animationType","onRequestClose","statusBarTranslucent","flex","behavior","undefined","keyboardVerticalOffset","renderContent"],"sources":["bottomsheet.component.tsx"],"sourcesContent":["import React, { createRef } from 'react';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { View, Animated, PanResponder, Dimensions, TouchableWithoutFeedback, Platform, PanResponderGestureState, StatusBar, BackHandler, DimensionValue, KeyboardAvoidingView, Keyboard, EmitterSubscription, Modal } from 'react-native';\nimport { ScrollView } from 'react-native-gesture-handler';\nimport WmBottomsheetProps from './bottomsheet.props';\nimport { DEFAULT_CLASS, WmBottomsheetStyles } from './bottomsheet.styles';\nimport { createSkeleton } from '../skeleton/skeleton.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\nimport { SafeAreaInsetsContext } from 'react-native-safe-area-context';\n\nconst { height: SCREEN_HEIGHT } = Dimensions.get('screen');\nexport class WmBottomsheetState extends BaseComponentState<WmBottomsheetProps> {\n translateY = new Animated.Value(SCREEN_HEIGHT);\n backdropOpacity = new Animated.Value(0);\n sheetHeight = new Animated.Value(0);\n lastGestureDy = 0;\n scrollViewRef = createRef<ScrollView>();\n isScrolling = false;\n scrollOffset = 0;\n isExpanded = false;\n isBottomsheetVisible = false;\n keyboardHeight = 0;\n}\n\nexport default class WmBottomsheet extends BaseComponent<WmBottomsheetProps, WmBottomsheetState, WmBottomsheetStyles> {\n private calculatedHeight: number;\n private expandedHeight: number;\n private defaultHeight: number = 0.5;\n private expandedDefaultHeight: number = 0.8;\n private minimumHeight: number = 0.2;\n private minimumExpandedHeight: number = 0.5;\n private maxHeight: number = 1.0; // Allow full screen height\n private animationDuration: number = 400\n private statusBarHeight: number = StatusBar.currentHeight || 0;\n private defaultTopInset: number = 44;\n private maxHeightRatio: number = 0;\n private keyboardDidShowListener!: EmitterSubscription;\n private keyboardDidHideListener!: EmitterSubscription;\n private topInset: number = 0;\n private iosKeyboardHeight: number = 0;\n private isIosKeyboardHeightSet: boolean = false\n\n private calculateSheetHeight(bottomsheetheightratio: number): number {\n // Use default height if ratio not provided, but ensure it's not below minimum\n const effectiveRatio = bottomsheetheightratio || this.defaultHeight;\n this.maxHeightRatio = Math.max(\n this.minimumHeight,\n Math.min(effectiveRatio, this.maxHeight)\n );\n\n const screenHeight = Dimensions.get('screen').height;\n const windowHeight = Dimensions.get('window').height;\n let calculatedHeight = screenHeight * this.maxHeightRatio;\n\n if (Platform.OS === 'ios') {\n // Subtract top inset bar height for ios only if bottomsheetheightratio is 0.9\n if (this.maxHeightRatio >= 0.9) {\n calculatedHeight -= this.defaultTopInset;\n }\n }\n else if (Platform.OS === 'android') {\n // Subtract status bar height for Android only if bottomsheetheightratio is 0.9\n if (this.maxHeightRatio >= 0.9) {\n calculatedHeight -= this.statusBarHeight;\n }\n }\n return calculatedHeight;\n }\n\n open() {\n if (!this.state.isBottomsheetVisible)\n this.updateState({\n isBottomsheetVisible: true\n } as WmBottomsheetState);\n this.openSheet();\n }\n\n close() {\n if (this.state.isBottomsheetVisible) {\n this.closeSheet();\n }\n }\n\n constructor(props: WmBottomsheetProps) {\n super(props, DEFAULT_CLASS, new WmBottomsheetProps(), new WmBottomsheetState());\n this.calculatedHeight = this.calculateSheetHeight(props.bottomsheetheightratio);\n\n // Use bottomsheetexpandedheightratio if provided, otherwise use expandedDefaultHeight\n const expandedRatio = props.bottomsheetexpandedheightratio || this.expandedDefaultHeight;\n const effectiveExpandedRatio = Math.max(\n this.minimumExpandedHeight,\n Math.min(expandedRatio, this.maxHeight)\n );\n\n this.expandedHeight = SCREEN_HEIGHT * effectiveExpandedRatio;\n\n if (Platform.OS === 'android') {\n if (effectiveExpandedRatio >= 0.9) {\n this.expandedHeight -= this.statusBarHeight;\n }\n }\n if (Platform.OS === 'ios') {\n if (effectiveExpandedRatio >= 0.9) {\n this.expandedHeight -= this.defaultTopInset;\n }\n }\n this.state.sheetHeight.setValue(this.calculatedHeight);\n\n this.updateState({\n isBottomsheetVisible: this.props.showonrender || false\n } as WmBottomsheetState);\n\n if (this.state.isBottomsheetVisible) {\n this.openSheet();\n } else {\n this.closeSheetImmediate();\n }\n }\n\n componentDidMount() {\n super.componentDidMount();\n if (Platform.OS === 'android') {\n BackHandler.addEventListener('hardwareBackPress', this.handleBackPress);\n }\n this.keyboardDidShowListener = Keyboard.addListener('keyboardDidShow', this.onKeyboardShow);\n this.keyboardDidHideListener = Keyboard.addListener('keyboardDidHide', this.onKeyboardHide);\n }\n\n componentWillUnmount() {\n super.componentWillUnmount();\n if (Platform.OS === 'android') {\n BackHandler.removeEventListener('hardwareBackPress', this.handleBackPress);\n }\n this.keyboardDidShowListener.remove();\n this.keyboardDidHideListener.remove();\n }\n\n private handleBackPress = () => {\n if (this.state.isBottomsheetVisible) {\n this.closeSheet();\n return true; // Prevent default back action\n }\n return false;\n };\n\n private onKeyboardShow = (event: any) => {\n let keyboardHeight = event.endCoordinates?.height || 0;\n //only storing ios keyboard height once as first time keyboard open (to avoid scroll flickring issue in ios in text widget)\n if (!this.isIosKeyboardHeightSet) {\n this.iosKeyboardHeight = event.endCoordinates?.height + 40\n this.isIosKeyboardHeightSet = true\n }\n // Calculate available space after keyboard\n const availableHeight = SCREEN_HEIGHT - (Platform.OS == 'ios' ? this.iosKeyboardHeight : keyboardHeight);\n // Calculate adjusted sheet height to fit within available space\n // Leave some buffer space for the drag handle and safe area\n const bufferSpace = (Platform.OS === 'ios' ? this.topInset : this.statusBarHeight) + 20;\n const adjustedHeight = availableHeight - bufferSpace;\n // Animate the sheet height adjustment\n Animated.timing(this.state.sheetHeight, {\n toValue: adjustedHeight,\n duration: 100,\n useNativeDriver: false,\n }).start();\n this.updateState({\n keyboardHeight: keyboardHeight,\n } as WmBottomsheetState);\n };\n\n private onKeyboardHide = () => {\n // Restore the original sheet height when keyboard hides\n Animated.timing(this.state.sheetHeight, {\n toValue: this.state.isExpanded ? this.expandedHeight : this.calculatedHeight,\n duration: 100,\n useNativeDriver: false,\n }).start();\n this.updateState({\n keyboardHeight: 0,\n } as WmBottomsheetState);\n };\n\n componentDidUpdate(prevProps: WmBottomsheetProps) {\n if (prevProps.bottomsheetheightratio !== this.props.bottomsheetheightratio) {\n this.calculatedHeight = this.calculateSheetHeight(this.props.bottomsheetheightratio);\n this.state.sheetHeight.setValue(this.calculatedHeight);\n }\n }\n\n handleSwipeGesture = (gestureState: PanResponderGestureState) => {\n this.updateState({\n lastGestureDy: 0\n } as WmBottomsheetState);\n if (gestureState.dy > 0) {\n if (this.state.isExpanded) {\n // Expand the bottom sheet threshold is 25% of the fully expanded height\n // If the user swipe distance is below the threshold, revert to the original sheet height\n if (gestureState.dy < this.expandedHeight / 4) {\n Animated.parallel([\n Animated.timing(this.state.translateY, {\n toValue: 0, // Keep sheet open\n duration: this.animationDuration,\n useNativeDriver: false,\n }),\n Animated.timing(this.state.sheetHeight, {\n toValue: this.calculatedHeight, // Back to original height\n duration: this.animationDuration,\n useNativeDriver: false,\n })\n ]).start();\n this.updateState({\n isExpanded: false\n } as WmBottomsheetState);\n }\n else if (gestureState.dy > this.expandedHeight / 4 || gestureState.vy > 0.5) {\n this.closeSheet();\n }\n }\n else {\n if (gestureState.dy > 100 || gestureState.vy > 0.5) {\n this.closeSheet();\n } else {\n this.openSheet();\n }\n }\n }\n }\n // panResponder for bottom sheet scroll view\n panResponder = PanResponder.create({\n onStartShouldSetPanResponder: (_, gestureState) => {\n // Only handle the gesture if we're at the top and swiping down\n return gestureState.dy > 0 && this.state.scrollOffset <= 0;\n },\n\n onMoveShouldSetPanResponder: (_, gestureState) => {\n // Only handle the gesture if we're at the top and swiping down\n return gestureState.dy > 0 && this.state.scrollOffset <= 0;\n },\n\n onPanResponderMove: (_, gestureState) => {\n if (gestureState.dy > 0) {\n const newTranslateY = Math.max(0, this.state.lastGestureDy + gestureState.dy);\n this.state.translateY.setValue(newTranslateY);\n\n }\n },\n\n onPanResponderRelease: (_, gestureState) => {\n this.handleSwipeGesture(gestureState)\n },\n\n onPanResponderTerminate: () => {\n this.openSheet();\n },\n });\n\n //pan repsoneder for bottom sheet dragable container\n dragHandlePanResponder = PanResponder.create({\n onStartShouldSetPanResponder: () => true,\n onMoveShouldSetPanResponder: () => true,\n onPanResponderMove: (_, gestureState) => {\n\n if (gestureState.dy > 0) { // Handle downward drag\n const newTranslateY = Math.max(0, this.state.lastGestureDy + gestureState.dy);\n this.state.translateY.setValue(newTranslateY);\n } else if (gestureState.dy < 0 && this.props.expand && this.props.bottomsheetheightratio !== 1) {\n // Handle upward drag - expand to full height\n // Allow expansion to full screen height\n const targetHeight = Math.min(this.expandedHeight, SCREEN_HEIGHT);\n Animated.timing(this.state.sheetHeight, {\n toValue: targetHeight,\n duration: this.animationDuration,\n useNativeDriver: false,\n }).start();\n this.updateState({\n isExpanded: true\n } as WmBottomsheetState);\n }\n },\n onPanResponderRelease: (_, gestureState) => {\n this.handleSwipeGesture(gestureState)\n },\n });\n\n handleScroll = (event: any): any => {\n if (this.state.keyboardHeight > 0) return null;\n const offsetY = event.nativeEvent.contentOffset.y;\n this.updateState({\n isScrolling: offsetY > 0,\n scrollOffset: offsetY\n } as WmBottomsheetState);\n };\n\n openSheet = () => {\n this.updateState({\n lastGestureDy: 0,\n } as WmBottomsheetState);\n\n Animated.parallel([\n Animated.timing(this.state.translateY, {\n toValue: 0,\n duration: this.animationDuration,\n useNativeDriver: false,\n }),\n Animated.timing(this.state.backdropOpacity, {\n toValue: 1,\n duration: this.animationDuration,\n useNativeDriver: false,\n }),\n ]).start(() => {\n this.invokeEventCallback('onOpened', [null, this]);\n });\n };\n\n private handleClose = () => {\n this.updateState({\n isBottomsheetVisible: false\n } as WmBottomsheetState);\n this.invokeEventCallback('onClose', [null, this]);\n };\n\n closeSheet = () => {\n Animated.parallel([\n Animated.timing(this.state.translateY, {\n toValue: SCREEN_HEIGHT,\n duration: this.animationDuration,\n useNativeDriver: false,\n }),\n Animated.timing(this.state.backdropOpacity, {\n toValue: 0,\n duration: this.animationDuration,\n useNativeDriver: false,\n }),\n ]).start(() => {\n requestAnimationFrame(() => {\n this.state.sheetHeight.setValue(this.calculatedHeight);\n this.updateState({\n isExpanded: false\n } as WmBottomsheetState);\n this.handleClose();\n });\n });\n };\n\n closeSheetImmediate = () => {\n this.state.translateY.setValue(SCREEN_HEIGHT);\n this.state.backdropOpacity.setValue(0);\n this.updateState({\n lastGestureDy: 0,\n isExpanded: false,\n isBottomsheetVisible: false\n } as WmBottomsheetState);\n requestAnimationFrame(() => {\n this.state.sheetHeight.setValue(this.calculatedHeight);\n });\n };\n\n public onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch (name) {\n case \"showonrender\":\n if ($new) {\n this.updateState({\n isBottomsheetVisible: $new || false\n } as WmBottomsheetState);\n if (this.state.isBottomsheetVisible) {\n this.openSheet && this.openSheet();\n }\n } else {\n this.closeSheetImmediate && this.closeSheetImmediate();\n }\n break;\n }\n }\n\n public renderSkeleton(props: WmBottomsheetProps) {\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: this.styles.root.width as DimensionValue,\n height: this.styles.root.height as DimensionValue\n });\n }\n\n private renderContent = (props: WmBottomsheetProps) => {\n\n return (\n <SafeAreaInsetsContext.Consumer >\n {(insets = { top: 0, bottom: 0, left: 0, right: 0 }) => {\n this.topInset = insets?.top || 0;\n return (\n <View style={this.styles.root}\n {...this.getTestProps('keyboardview')}>\n\n {this._background}\n <TouchableWithoutFeedback onPress={this.closeSheet}>\n <Animated.View style={[this.styles.backdrop, { opacity: this.state.backdropOpacity }]}\n {...this.getTestProps('backdrop')}\n {...getAccessibilityProps(AccessibilityWidgetType.BOTTOMSHEET, props)}\n />\n </TouchableWithoutFeedback>\n\n <Animated.View\n style={[\n this.styles.container,\n\n {\n height: this.state.sheetHeight,\n transform: [{ translateY: this.state.translateY }],\n },\n ]}\n {...this.panResponder.panHandlers}\n\n\n >\n <View style={this.styles.dragHandleContainer} {...this.dragHandlePanResponder.panHandlers}>\n <TouchableWithoutFeedback onPress={this.closeSheet}>\n <View style={this.styles.dragIconHandle}\n {...this.getTestProps('draghandle')} />\n </TouchableWithoutFeedback>\n </View>\n <ScrollView\n ref={this.state.scrollViewRef}\n style={this.styles.sheetContentContainer}\n contentContainerStyle={this.styles.sheetScrollContent}\n alwaysBounceVertical={false}\n alwaysBounceHorizontal={false}\n bounces={false}\n showsVerticalScrollIndicator={false}\n scrollEventThrottle={16}\n onScroll={this.handleScroll}\n nestedScrollEnabled={true}\n scrollEnabled={true}\n {...this.getTestProps('scorllview')}\n >\n {props.children}\n </ScrollView>\n\n </Animated.View>\n\n </View>\n )\n }}\n </SafeAreaInsetsContext.Consumer>\n );\n };\n\n renderWidget(props: WmBottomsheetProps) {\n if (!this.state.isBottomsheetVisible) return null;\n\n if (props.modal) {\n return (\n <Modal\n visible={this.state.isBottomsheetVisible}\n transparent={true}\n animationType=\"none\"\n onRequestClose={this.closeSheet}\n statusBarTranslucent={true}\n >\n <KeyboardAvoidingView\n style={{ flex: 1 }}\n behavior={Platform.OS === 'ios' ? 'padding' : undefined}\n keyboardVerticalOffset={Platform.OS === 'ios' ? 0 : undefined}\n >\n {this.renderContent(props)}\n </KeyboardAvoidingView>\n </Modal>\n );\n } else {\n return this.renderContent(props);\n }\n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AACjG,SAASC,IAAI,EAAEC,QAAQ,EAAEC,YAAY,EAAEC,UAAU,EAAEC,wBAAwB,EAAEC,QAAQ,EAA4BC,SAAS,EAAEC,WAAW,EAAkBC,oBAAoB,EAAEC,QAAQ,EAAuBC,KAAK,QAAQ,cAAc;AACzO,SAASC,UAAU,QAAQ,8BAA8B;AACzD,OAAOC,kBAAkB,MAAM,qBAAqB;AACpD,SAASC,aAAa,QAA6B,sBAAsB;AACzE,SAASC,cAAc,QAAQ,gCAAgC;AAC/D,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,8CAA8C;AAC7G,SAASC,qBAAqB,QAAQ,gCAAgC;AAEtE,MAAM;EAAEC,MAAM,EAAEC;AAAc,CAAC,GAAGhB,UAAU,CAACiB,GAAG,CAAC,QAAQ,CAAC;AAC1D,OAAO,MAAMC,kBAAkB,SAAStB,kBAAkB,CAAqB;EAAAuB,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,qBAChE,IAAIvB,QAAQ,CAACwB,KAAK,CAACN,aAAa,CAAC;IAAAK,eAAA,0BAC5B,IAAIvB,QAAQ,CAACwB,KAAK,CAAC,CAAC,CAAC;IAAAD,eAAA,sBACzB,IAAIvB,QAAQ,CAACwB,KAAK,CAAC,CAAC,CAAC;IAAAD,eAAA,wBACnB,CAAC;IAAAA,eAAA,qCACD3B,SAAS,CAAa,CAAC;IAAA2B,eAAA,sBACzB,KAAK;IAAAA,eAAA,uBACJ,CAAC;IAAAA,eAAA,qBACH,KAAK;IAAAA,eAAA,+BACK,KAAK;IAAAA,eAAA,yBACX,CAAC;EAAA;AACpB;AAEA,eAAe,MAAME,aAAa,SAAS5B,aAAa,CAA8D;EAkB5G6B,oBAAoBA,CAACC,sBAA8B,EAAU;IACnE;IACA,MAAMC,cAAc,GAAGD,sBAAsB,IAAI,IAAI,CAACE,aAAa;IACnE,IAAI,CAACC,cAAc,GAAGC,IAAI,CAACC,GAAG,CAC5B,IAAI,CAACC,aAAa,EAClBF,IAAI,CAACG,GAAG,CAACN,cAAc,EAAE,IAAI,CAACO,SAAS,CACzC,CAAC;IAED,MAAMC,YAAY,GAAGlC,UAAU,CAACiB,GAAG,CAAC,QAAQ,CAAC,CAACF,MAAM;IACpD,MAAMoB,YAAY,GAAGnC,UAAU,CAACiB,GAAG,CAAC,QAAQ,CAAC,CAACF,MAAM;IACpD,IAAIqB,gBAAgB,GAAGF,YAAY,GAAG,IAAI,CAACN,cAAc;IAEzD,IAAI1B,QAAQ,CAACmC,EAAE,KAAK,KAAK,EAAE;MACzB;MACA,IAAI,IAAI,CAACT,cAAc,IAAI,GAAG,EAAE;QAC9BQ,gBAAgB,IAAI,IAAI,CAACE,eAAe;MAC1C;IACF,CAAC,MACI,IAAIpC,QAAQ,CAACmC,EAAE,KAAK,SAAS,EAAE;MAClC;MACA,IAAI,IAAI,CAACT,cAAc,IAAI,GAAG,EAAE;QAC9BQ,gBAAgB,IAAI,IAAI,CAACG,eAAe;MAC1C;IACF;IACA,OAAOH,gBAAgB;EACzB;EAEAI,IAAIA,CAAA,EAAG;IACL,IAAI,CAAC,IAAI,CAACC,KAAK,CAACC,oBAAoB,EAClC,IAAI,CAACC,WAAW,CAAC;MACfD,oBAAoB,EAAE;IACxB,CAAuB,CAAC;IAC1B,IAAI,CAACE,SAAS,CAAC,CAAC;EAClB;EAEAC,KAAKA,CAAA,EAAG;IACN,IAAI,IAAI,CAACJ,KAAK,CAACC,oBAAoB,EAAE;MACnC,IAAI,CAACI,UAAU,CAAC,CAAC;IACnB;EACF;EAEA3B,WAAWA,CAAC4B,MAAyB,EAAE;IACrC,KAAK,CAACA,MAAK,EAAErC,aAAa,EAAE,IAAID,kBAAkB,CAAC,CAAC,EAAE,IAAIS,kBAAkB,CAAC,CAAC,CAAC;IAACG,eAAA;IAAAA,eAAA;IAAAA,eAAA,wBAzDlD,GAAG;IAAAA,eAAA,gCACK,GAAG;IAAAA,eAAA,wBACX,GAAG;IAAAA,eAAA,gCACK,GAAG;IAAAA,eAAA,oBACf,GAAG;IAAE;IAAAA,eAAA,4BACG,GAAG;IAAAA,eAAA,0BACLlB,SAAS,CAAC6C,aAAa,IAAI,CAAC;IAAA3B,eAAA,0BAC5B,EAAE;IAAAA,eAAA,yBACH,CAAC;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,mBAGP,CAAC;IAAAA,eAAA,4BACQ,CAAC;IAAAA,eAAA,iCACK,KAAK;IAAAA,eAAA,0BAiGrB,MAAM;MAC9B,IAAI,IAAI,CAACoB,KAAK,CAACC,oBAAoB,EAAE;QACnC,IAAI,CAACI,UAAU,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC,CAAC;MACf;MACA,OAAO,KAAK;IACd,CAAC;IAAAzB,eAAA,yBAEyB4B,KAAU,IAAK;MAAA,IAAAC,qBAAA;MACvC,IAAIC,cAAc,GAAG,EAAAD,qBAAA,GAAAD,KAAK,CAACG,cAAc,cAAAF,qBAAA,uBAApBA,qBAAA,CAAsBnC,MAAM,KAAI,CAAC;MACtD;MACA,IAAI,CAAC,IAAI,CAACsC,sBAAsB,EAAE;QAAA,IAAAC,sBAAA;QAChC,IAAI,CAACC,iBAAiB,GAAG,EAAAD,sBAAA,GAAAL,KAAK,CAACG,cAAc,cAAAE,sBAAA,uBAApBA,sBAAA,CAAsBvC,MAAM,IAAG,EAAE;QAC1D,IAAI,CAACsC,sBAAsB,GAAG,IAAI;MACpC;MACA;MACA,MAAMG,eAAe,GAAGxC,aAAa,IAAId,QAAQ,CAACmC,EAAE,IAAI,KAAK,GAAG,IAAI,CAACkB,iBAAiB,GAAGJ,cAAc,CAAC;MACxG;MACA;MACA,MAAMM,WAAW,GAAG,CAACvD,QAAQ,CAACmC,EAAE,KAAK,KAAK,GAAG,IAAI,CAACqB,QAAQ,GAAG,IAAI,CAACnB,eAAe,IAAI,EAAE;MACvF,MAAMoB,cAAc,GAAGH,eAAe,GAAGC,WAAW;MACpD;MACA3D,QAAQ,CAAC8D,MAAM,CAAC,IAAI,CAACnB,KAAK,CAACoB,WAAW,EAAE;QACtCC,OAAO,EAAEH,cAAc;QACvBI,QAAQ,EAAE,GAAG;QACbC,eAAe,EAAE;MACnB,CAAC,CAAC,CAACC,KAAK,CAAC,CAAC;MACV,IAAI,CAACtB,WAAW,CAAC;QACfQ,cAAc,EAAEA;MAClB,CAAuB,CAAC;IAC1B,CAAC;IAAA9B,eAAA,yBAEwB,MAAM;MAC7B;MACAvB,QAAQ,CAAC8D,MAAM,CAAC,IAAI,CAACnB,KAAK,CAACoB,WAAW,EAAE;QACtCC,OAAO,EAAE,IAAI,CAACrB,KAAK,CAACyB,UAAU,GAAG,IAAI,CAACC,cAAc,GAAG,IAAI,CAAC/B,gBAAgB;QAC5E2B,QAAQ,EAAE,GAAG;QACbC,eAAe,EAAE;MACnB,CAAC,CAAC,CAACC,KAAK,CAAC,CAAC;MACV,IAAI,CAACtB,WAAW,CAAC;QACfQ,cAAc,EAAE;MAClB,CAAuB,CAAC;IAC1B,CAAC;IAAA9B,eAAA,6BASqB+C,YAAsC,IAAK;MAC/D,IAAI,CAACzB,WAAW,CAAC;QACf0B,aAAa,EAAE;MACjB,CAAuB,CAAC;MACxB,IAAID,YAAY,CAACE,EAAE,GAAG,CAAC,EAAE;QACvB,IAAI,IAAI,CAAC7B,KAAK,CAACyB,UAAU,EAAE;UACzB;UACA;UACA,IAAIE,YAAY,CAACE,EAAE,GAAG,IAAI,CAACH,cAAc,GAAG,CAAC,EAAE;YAC7CrE,QAAQ,CAACyE,QAAQ,CAAC,CAChBzE,QAAQ,CAAC8D,MAAM,CAAC,IAAI,CAACnB,KAAK,CAAC+B,UAAU,EAAE;cACrCV,OAAO,EAAE,CAAC;cAAE;cACZC,QAAQ,EAAE,IAAI,CAACU,iBAAiB;cAChCT,eAAe,EAAE;YACnB,CAAC,CAAC,EACFlE,QAAQ,CAAC8D,MAAM,CAAC,IAAI,CAACnB,KAAK,CAACoB,WAAW,EAAE;cACtCC,OAAO,EAAE,IAAI,CAAC1B,gBAAgB;cAAE;cAChC2B,QAAQ,EAAE,IAAI,CAACU,iBAAiB;cAChCT,eAAe,EAAE;YACnB,CAAC,CAAC,CACH,CAAC,CAACC,KAAK,CAAC,CAAC;YACV,IAAI,CAACtB,WAAW,CAAC;cACfuB,UAAU,EAAE;YACd,CAAuB,CAAC;UAC1B,CAAC,MACI,IAAIE,YAAY,CAACE,EAAE,GAAG,IAAI,CAACH,cAAc,GAAG,CAAC,IAAIC,YAAY,CAACM,EAAE,GAAG,GAAG,EAAE;YAC3E,IAAI,CAAC5B,UAAU,CAAC,CAAC;UACnB;QACF,CAAC,MACI;UACH,IAAIsB,YAAY,CAACE,EAAE,GAAG,GAAG,IAAIF,YAAY,CAACM,EAAE,GAAG,GAAG,EAAE;YAClD,IAAI,CAAC5B,UAAU,CAAC,CAAC;UACnB,CAAC,MAAM;YACL,IAAI,CAACF,SAAS,CAAC,CAAC;UAClB;QACF;MACF;IACF,CAAC;IACD;IAAAvB,eAAA,uBACetB,YAAY,CAAC4E,MAAM,CAAC;MACjCC,4BAA4B,EAAEA,CAACC,CAAC,EAAET,YAAY,KAAK;QACjD;QACA,OAAOA,YAAY,CAACE,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC7B,KAAK,CAACqC,YAAY,IAAI,CAAC;MAC5D,CAAC;MAEDC,2BAA2B,EAAEA,CAACF,CAAC,EAAET,YAAY,KAAK;QAChD;QACA,OAAOA,YAAY,CAACE,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC7B,KAAK,CAACqC,YAAY,IAAI,CAAC;MAC5D,CAAC;MAEDE,kBAAkB,EAAEA,CAACH,CAAC,EAAET,YAAY,KAAK;QACvC,IAAIA,YAAY,CAACE,EAAE,GAAG,CAAC,EAAE;UACvB,MAAMW,aAAa,GAAGpD,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE,IAAI,CAACW,KAAK,CAAC4B,aAAa,GAAGD,YAAY,CAACE,EAAE,CAAC;UAC7E,IAAI,CAAC7B,KAAK,CAAC+B,UAAU,CAACU,QAAQ,CAACD,aAAa,CAAC;QAE/C;MACF,CAAC;MAEDE,qBAAqB,EAAEA,CAACN,CAAC,EAAET,YAAY,KAAK;QAC1C,IAAI,CAACgB,kBAAkB,CAAChB,YAAY,CAAC;MACvC,CAAC;MAEDiB,uBAAuB,EAAEA,CAAA,KAAM;QAC7B,IAAI,CAACzC,SAAS,CAAC,CAAC;MAClB;IACF,CAAC,CAAC;IAEF;IAAAvB,eAAA,iCACyBtB,YAAY,CAAC4E,MAAM,CAAC;MAC3CC,4BAA4B,EAAEA,CAAA,KAAM,IAAI;MACxCG,2BAA2B,EAAEA,CAAA,KAAM,IAAI;MACvCC,kBAAkB,EAAEA,CAACH,CAAC,EAAET,YAAY,KAAK;QAEvC,IAAIA,YAAY,CAACE,EAAE,GAAG,CAAC,EAAE;UAAE;UACzB,MAAMW,aAAa,GAAGpD,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE,IAAI,CAACW,KAAK,CAAC4B,aAAa,GAAGD,YAAY,CAACE,EAAE,CAAC;UAC7E,IAAI,CAAC7B,KAAK,CAAC+B,UAAU,CAACU,QAAQ,CAACD,aAAa,CAAC;QAC/C,CAAC,MAAM,IAAIb,YAAY,CAACE,EAAE,GAAG,CAAC,IAAI,IAAI,CAACvB,KAAK,CAACuC,MAAM,IAAI,IAAI,CAACvC,KAAK,CAACtB,sBAAsB,KAAK,CAAC,EAAE;UAC9F;UACA;UACA,MAAM8D,YAAY,GAAG1D,IAAI,CAACG,GAAG,CAAC,IAAI,CAACmC,cAAc,EAAEnD,aAAa,CAAC;UACjElB,QAAQ,CAAC8D,MAAM,CAAC,IAAI,CAACnB,KAAK,CAACoB,WAAW,EAAE;YACtCC,OAAO,EAAEyB,YAAY;YACrBxB,QAAQ,EAAE,IAAI,CAACU,iBAAiB;YAChCT,eAAe,EAAE;UACnB,CAAC,CAAC,CAACC,KAAK,CAAC,CAAC;UACV,IAAI,CAACtB,WAAW,CAAC;YACfuB,UAAU,EAAE;UACd,CAAuB,CAAC;QAC1B;MACF,CAAC;MACDiB,qBAAqB,EAAEA,CAACN,CAAC,EAAET,YAAY,KAAK;QAC1C,IAAI,CAACgB,kBAAkB,CAAChB,YAAY,CAAC;MACvC;IACF,CAAC,CAAC;IAAA/C,eAAA,uBAEc4B,KAAU,IAAU;MAClC,IAAI,IAAI,CAACR,KAAK,CAACU,cAAc,GAAG,CAAC,EAAE,OAAO,IAAI;MAC9C,MAAMqC,OAAO,GAAGvC,KAAK,CAACwC,WAAW,CAACC,aAAa,CAACC,CAAC;MACjD,IAAI,CAAChD,WAAW,CAAC;QACfiD,WAAW,EAAEJ,OAAO,GAAG,CAAC;QACxBV,YAAY,EAAEU;MAChB,CAAuB,CAAC;IAC1B,CAAC;IAAAnE,eAAA,oBAEW,MAAM;MAChB,IAAI,CAACsB,WAAW,CAAC;QACf0B,aAAa,EAAE;MACjB,CAAuB,CAAC;MAExBvE,QAAQ,CAACyE,QAAQ,CAAC,CAChBzE,QAAQ,CAAC8D,MAAM,CAAC,IAAI,CAACnB,KAAK,CAAC+B,UAAU,EAAE;QACrCV,OAAO,EAAE,CAAC;QACVC,QAAQ,EAAE,IAAI,CAACU,iBAAiB;QAChCT,eAAe,EAAE;MACnB,CAAC,CAAC,EACFlE,QAAQ,CAAC8D,MAAM,CAAC,IAAI,CAACnB,KAAK,CAACoD,eAAe,EAAE;QAC1C/B,OAAO,EAAE,CAAC;QACVC,QAAQ,EAAE,IAAI,CAACU,iBAAiB;QAChCT,eAAe,EAAE;MACnB,CAAC,CAAC,CACH,CAAC,CAACC,KAAK,CAAC,MAAM;QACb,IAAI,CAAC6B,mBAAmB,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;MACpD,CAAC,CAAC;IACJ,CAAC;IAAAzE,eAAA,sBAEqB,MAAM;MAC1B,IAAI,CAACsB,WAAW,CAAC;QACfD,oBAAoB,EAAE;MACxB,CAAuB,CAAC;MACxB,IAAI,CAACoD,mBAAmB,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;IAAAzE,eAAA,qBAEY,MAAM;MACjBvB,QAAQ,CAACyE,QAAQ,CAAC,CAChBzE,QAAQ,CAAC8D,MAAM,CAAC,IAAI,CAACnB,KAAK,CAAC+B,UAAU,EAAE;QACrCV,OAAO,EAAE9C,aAAa;QACtB+C,QAAQ,EAAE,IAAI,CAACU,iBAAiB;QAChCT,eAAe,EAAE;MACnB,CAAC,CAAC,EACFlE,QAAQ,CAAC8D,MAAM,CAAC,IAAI,CAACnB,KAAK,CAACoD,eAAe,EAAE;QAC1C/B,OAAO,EAAE,CAAC;QACVC,QAAQ,EAAE,IAAI,CAACU,iBAAiB;QAChCT,eAAe,EAAE;MACnB,CAAC,CAAC,CACH,CAAC,CAACC,KAAK,CAAC,MAAM;QACb8B,qBAAqB,CAAC,MAAM;UAC1B,IAAI,CAACtD,KAAK,CAACoB,WAAW,CAACqB,QAAQ,CAAC,IAAI,CAAC9C,gBAAgB,CAAC;UACtD,IAAI,CAACO,WAAW,CAAC;YACfuB,UAAU,EAAE;UACd,CAAuB,CAAC;UACxB,IAAI,CAAC8B,WAAW,CAAC,CAAC;QACpB,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ,CAAC;IAAA3E,eAAA,8BAEqB,MAAM;MAC1B,IAAI,CAACoB,KAAK,CAAC+B,UAAU,CAACU,QAAQ,CAAClE,aAAa,CAAC;MAC7C,IAAI,CAACyB,KAAK,CAACoD,eAAe,CAACX,QAAQ,CAAC,CAAC,CAAC;MACtC,IAAI,CAACvC,WAAW,CAAC;QACf0B,aAAa,EAAE,CAAC;QAChBH,UAAU,EAAE,KAAK;QACjBxB,oBAAoB,EAAE;MACxB,CAAuB,CAAC;MACxBqD,qBAAqB,CAAC,MAAM;QAC1B,IAAI,CAACtD,KAAK,CAACoB,WAAW,CAACqB,QAAQ,CAAC,IAAI,CAAC9C,gBAAgB,CAAC;MACxD,CAAC,CAAC;IACJ,CAAC;IAAAf,eAAA,wBA4BwB0B,KAAyB,IAAK;MAErD,oBACEtD,KAAA,CAAAwG,aAAA,CAACnF,qBAAqB,CAACoF,QAAQ,QAC5B,CAACC,MAAM,GAAG;QAAEC,GAAG,EAAE,CAAC;QAAEC,MAAM,EAAE,CAAC;QAAEC,IAAI,EAAE,CAAC;QAAEC,KAAK,EAAE;MAAE,CAAC,KAAK;QACtD,IAAI,CAAC7C,QAAQ,GAAG,CAAAyC,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEC,GAAG,KAAI,CAAC;QAChC,oBACE3G,KAAA,CAAAwG,aAAA,CAACpG,IAAI,EAAA2G,QAAA;UAACC,KAAK,EAAE,IAAI,CAACC,MAAM,CAACC;QAAK,GACxB,IAAI,CAACC,YAAY,CAAC,cAAc,CAAC,GAEpC,IAAI,CAACC,WAAW,eACjBpH,KAAA,CAAAwG,aAAA,CAAChG,wBAAwB;UAAC6G,OAAO,EAAE,IAAI,CAAChE;QAAW,gBACjDrD,KAAA,CAAAwG,aAAA,CAACnG,QAAQ,CAACD,IAAI,EAAA2G,QAAA;UAACC,KAAK,EAAE,CAAC,IAAI,CAACC,MAAM,CAACK,QAAQ,EAAE;YAAEC,OAAO,EAAE,IAAI,CAACvE,KAAK,CAACoD;UAAgB,CAAC;QAAE,GAChF,IAAI,CAACe,YAAY,CAAC,UAAU,CAAC,EAC7B/F,qBAAqB,CAACD,uBAAuB,CAACqG,WAAW,EAAElE,KAAK,CAAC,CACtE,CACuB,CAAC,eAE3BtD,KAAA,CAAAwG,aAAA,CAACnG,QAAQ,CAACD,IAAI,EAAA2G,QAAA;UACZC,KAAK,EAAE,CACL,IAAI,CAACC,MAAM,CAACQ,SAAS,EAErB;YACEnG,MAAM,EAAE,IAAI,CAAC0B,KAAK,CAACoB,WAAW;YAC9BsD,SAAS,EAAE,CAAC;cAAE3C,UAAU,EAAE,IAAI,CAAC/B,KAAK,CAAC+B;YAAW,CAAC;UACnD,CAAC;QACD,GACE,IAAI,CAAC4C,YAAY,CAACC,WAAW,gBAIjC5H,KAAA,CAAAwG,aAAA,CAACpG,IAAI,EAAA2G,QAAA;UAACC,KAAK,EAAE,IAAI,CAACC,MAAM,CAACY;QAAoB,GAAK,IAAI,CAACC,sBAAsB,CAACF,WAAW,gBACvF5H,KAAA,CAAAwG,aAAA,CAAChG,wBAAwB;UAAC6G,OAAO,EAAE,IAAI,CAAChE;QAAW,gBACjDrD,KAAA,CAAAwG,aAAA,CAACpG,IAAI,EAAA2G,QAAA;UAACC,KAAK,EAAE,IAAI,CAACC,MAAM,CAACc;QAAe,GAClC,IAAI,CAACZ,YAAY,CAAC,YAAY,CAAC,CAAG,CAChB,CACtB,CAAC,eACPnH,KAAA,CAAAwG,aAAA,CAACzF,UAAU,EAAAgG,QAAA;UACTiB,GAAG,EAAE,IAAI,CAAChF,KAAK,CAACiF,aAAc;UAC9BjB,KAAK,EAAE,IAAI,CAACC,MAAM,CAACiB,qBAAsB;UACzCC,qBAAqB,EAAE,IAAI,CAAClB,MAAM,CAACmB,kBAAmB;UACtDC,oBAAoB,EAAE,KAAM;UAC5BC,sBAAsB,EAAE,KAAM;UAC9BC,OAAO,EAAE,KAAM;UACfC,4BAA4B,EAAE,KAAM;UACpCC,mBAAmB,EAAE,EAAG;UACxBC,QAAQ,EAAE,IAAI,CAACC,YAAa;UAC5BC,mBAAmB,EAAE,IAAK;UAC1BC,aAAa,EAAE;QAAK,GAChB,IAAI,CAAC1B,YAAY,CAAC,YAAY,CAAC,GAElC7D,KAAK,CAACwF,QACG,CAEC,CAEX,CAAC;MAEX,CAC8B,CAAC;IAErC,CAAC;IAtWC,IAAI,CAACnG,gBAAgB,GAAG,IAAI,CAACZ,oBAAoB,CAACuB,MAAK,CAACtB,sBAAsB,CAAC;;IAE/E;IACA,MAAM+G,aAAa,GAAGzF,MAAK,CAAC0F,8BAA8B,IAAI,IAAI,CAACC,qBAAqB;IACxF,MAAMC,sBAAsB,GAAG9G,IAAI,CAACC,GAAG,CACrC,IAAI,CAAC8G,qBAAqB,EAC1B/G,IAAI,CAACG,GAAG,CAACwG,aAAa,EAAE,IAAI,CAACvG,SAAS,CACxC,CAAC;IAED,IAAI,CAACkC,cAAc,GAAGnD,aAAa,GAAG2H,sBAAsB;IAE5D,IAAIzI,QAAQ,CAACmC,EAAE,KAAK,SAAS,EAAE;MAC7B,IAAIsG,sBAAsB,IAAI,GAAG,EAAE;QACjC,IAAI,CAACxE,cAAc,IAAI,IAAI,CAAC5B,eAAe;MAC7C;IACF;IACA,IAAIrC,QAAQ,CAACmC,EAAE,KAAK,KAAK,EAAE;MACzB,IAAIsG,sBAAsB,IAAI,GAAG,EAAE;QACjC,IAAI,CAACxE,cAAc,IAAI,IAAI,CAAC7B,eAAe;MAC7C;IACF;IACA,IAAI,CAACG,KAAK,CAACoB,WAAW,CAACqB,QAAQ,CAAC,IAAI,CAAC9C,gBAAgB,CAAC;IAEtD,IAAI,CAACO,WAAW,CAAC;MACfD,oBAAoB,EAAE,IAAI,CAACK,KAAK,CAAC8F,YAAY,IAAI;IACnD,CAAuB,CAAC;IAExB,IAAI,IAAI,CAACpG,KAAK,CAACC,oBAAoB,EAAE;MACnC,IAAI,CAACE,SAAS,CAAC,CAAC;IAClB,CAAC,MAAM;MACL,IAAI,CAACkG,mBAAmB,CAAC,CAAC;IAC5B;EACF;EAEAC,iBAAiBA,CAAA,EAAG;IAClB,KAAK,CAACA,iBAAiB,CAAC,CAAC;IACzB,IAAI7I,QAAQ,CAACmC,EAAE,KAAK,SAAS,EAAE;MAC7BjC,WAAW,CAAC4I,gBAAgB,CAAC,mBAAmB,EAAE,IAAI,CAACC,eAAe,CAAC;IACzE;IACA,IAAI,CAACC,uBAAuB,GAAG5I,QAAQ,CAAC6I,WAAW,CAAC,iBAAiB,EAAE,IAAI,CAACC,cAAc,CAAC;IAC3F,IAAI,CAACC,uBAAuB,GAAG/I,QAAQ,CAAC6I,WAAW,CAAC,iBAAiB,EAAE,IAAI,CAACG,cAAc,CAAC;EAC7F;EAEAC,oBAAoBA,CAAA,EAAG;IACrB,KAAK,CAACA,oBAAoB,CAAC,CAAC;IAC5B,IAAIrJ,QAAQ,CAACmC,EAAE,KAAK,SAAS,EAAE;MAC7BjC,WAAW,CAACoJ,mBAAmB,CAAC,mBAAmB,EAAE,IAAI,CAACP,eAAe,CAAC;IAC5E;IACA,IAAI,CAACC,uBAAuB,CAACO,MAAM,CAAC,CAAC;IACrC,IAAI,CAACJ,uBAAuB,CAACI,MAAM,CAAC,CAAC;EACvC;EA8CAC,kBAAkBA,CAACC,SAA6B,EAAE;IAChD,IAAIA,SAAS,CAAClI,sBAAsB,KAAK,IAAI,CAACsB,KAAK,CAACtB,sBAAsB,EAAE;MAC1E,IAAI,CAACW,gBAAgB,GAAG,IAAI,CAACZ,oBAAoB,CAAC,IAAI,CAACuB,KAAK,CAACtB,sBAAsB,CAAC;MACpF,IAAI,CAACgB,KAAK,CAACoB,WAAW,CAACqB,QAAQ,CAAC,IAAI,CAAC9C,gBAAgB,CAAC;IACxD;EACF;EA0KOwH,gBAAgBA,CAACC,IAAY,EAAEC,IAAS,EAAEC,IAAS,EAAQ;IAChE,KAAK,CAACH,gBAAgB,CAACC,IAAI,EAAEC,IAAI,EAAEC,IAAI,CAAC;IACxC,QAAQF,IAAI;MACV,KAAK,cAAc;QACjB,IAAIC,IAAI,EAAE;UACR,IAAI,CAACnH,WAAW,CAAC;YACfD,oBAAoB,EAAEoH,IAAI,IAAI;UAChC,CAAuB,CAAC;UACxB,IAAI,IAAI,CAACrH,KAAK,CAACC,oBAAoB,EAAE;YACnC,IAAI,CAACE,SAAS,IAAI,IAAI,CAACA,SAAS,CAAC,CAAC;UACpC;QACF,CAAC,MAAM;UACL,IAAI,CAACkG,mBAAmB,IAAI,IAAI,CAACA,mBAAmB,CAAC,CAAC;QACxD;QACA;IACJ;EACF;EAEOkB,cAAcA,CAACjH,KAAyB,EAAE;IAC/C,OAAOpC,cAAc,CAAC,IAAI,CAACsJ,KAAK,EAAE,IAAI,CAACvD,MAAM,CAACwD,QAAQ,EAAE;MACtD,GAAG,IAAI,CAACxD,MAAM,CAACC,IAAI;MACnBwD,KAAK,EAAE,IAAI,CAACzD,MAAM,CAACC,IAAI,CAACwD,KAAuB;MAC/CpJ,MAAM,EAAE,IAAI,CAAC2F,MAAM,CAACC,IAAI,CAAC5F;IAC3B,CAAC,CAAC;EACJ;EAiEAqJ,YAAYA,CAACrH,KAAyB,EAAE;IACtC,IAAI,CAAC,IAAI,CAACN,KAAK,CAACC,oBAAoB,EAAE,OAAO,IAAI;IAEjD,IAAIK,KAAK,CAACsH,KAAK,EAAE;MACf,oBACE5K,KAAA,CAAAwG,aAAA,CAAC1F,KAAK;QACJ+J,OAAO,EAAE,IAAI,CAAC7H,KAAK,CAACC,oBAAqB;QACzC6H,WAAW,EAAE,IAAK;QAClBC,aAAa,EAAC,MAAM;QACpBC,cAAc,EAAE,IAAI,CAAC3H,UAAW;QAChC4H,oBAAoB,EAAE;MAAK,gBAE3BjL,KAAA,CAAAwG,aAAA,CAAC5F,oBAAoB;QACnBoG,KAAK,EAAE;UAAEkE,IAAI,EAAE;QAAE,CAAE;QACnBC,QAAQ,EAAE1K,QAAQ,CAACmC,EAAE,KAAK,KAAK,GAAG,SAAS,GAAGwI,SAAU;QACxDC,sBAAsB,EAAE5K,QAAQ,CAACmC,EAAE,KAAK,KAAK,GAAG,CAAC,GAAGwI;MAAU,GAE7D,IAAI,CAACE,aAAa,CAAChI,KAAK,CACL,CACjB,CAAC;IAEZ,CAAC,MAAM;MACL,OAAO,IAAI,CAACgI,aAAa,CAAChI,KAAK,CAAC;IAClC;EACF;AACF","ignoreList":[]}
|
@@ -13,6 +13,7 @@ export default class WmBottomsheetProps extends BaseProps {
|
|
13
13
|
_defineProperty(this, "keyboardverticaloffset", 100);
|
14
14
|
_defineProperty(this, "onOpened", null);
|
15
15
|
_defineProperty(this, "onClose", null);
|
16
|
+
_defineProperty(this, "modal", true);
|
16
17
|
}
|
17
18
|
}
|
18
19
|
//# sourceMappingURL=bottomsheet.props.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["BaseProps","WmBottomsheetProps","constructor","args","_defineProperty"],"sources":["bottomsheet.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmBottomsheetProps extends BaseProps {\n showonrender: boolean = false;\n bottomsheetheightratio:number = 0.3;\n children? = null as any;\n expand?:boolean = false;\n bottomsheetexpandedheightratio?:number = 0.5; \n keyboardverticaloffset: number = 100;\n onOpened?: Function = null as any;\n onClose?: Function = null as any;\n
|
1
|
+
{"version":3,"names":["BaseProps","WmBottomsheetProps","constructor","args","_defineProperty"],"sources":["bottomsheet.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmBottomsheetProps extends BaseProps {\n showonrender: boolean = false;\n bottomsheetheightratio:number = 0.3;\n children? = null as any;\n expand?:boolean = false;\n bottomsheetexpandedheightratio?:number = 0.5; \n keyboardverticaloffset: number = 100;\n onOpened?: Function = null as any;\n onClose?: Function = null as any;\n modal?: boolean = true;\n}"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,kBAAkB,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,uBAC9B,KAAK;IAAAA,eAAA,iCACG,GAAG;IAAAA,eAAA,mBACvB,IAAI;IAAAA,eAAA,iBACE,KAAK;IAAAA,eAAA,yCACkB,GAAG;IAAAA,eAAA,iCACX,GAAG;IAAAA,eAAA,mBACd,IAAI;IAAAA,eAAA,kBACL,IAAI;IAAAA,eAAA,gBACP,IAAI;EAAA;AAC1B","ignoreList":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","Tappable","Badge","WmButtonProps","DEFAULT_CLASS","WmIcon","Animatedview","createSkeleton","AccessibilityWidgetType","getAccessibilityProps","WmButtonState","WmButton","constructor","props","prepareIcon","iconclass","iconurl","hint","name","iconsize","iconheight","iconmargin","iconwidth","createElement","id","getTestId","styles","icon","prepareBadge","_extends","style","badge","getTestProps","badgevalue","renderSkeleton","prop","skeletonWidth","skeletonHeight","skeletonwidth","_this$styles$root","root","width","skeletonheight","_this$styles$root2","height","theme","skeleton","renderWidget","Fragment","entryanimation","animation","delay","animationdelay","onLayout","event","handleLayout","paddingTop","paddingBottom","paddingLeft","paddingRight","overflow","flexDirection","flex","_background","disableTouchEffect","state","disabletoucheffect","justifyContent","rippleColor","target","getTestPropsForAction","accessibilityProps","BUTTON","content","iconposition","caption","text","getTestPropsForLabel","importantForAccessibility"],"sources":["button.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, LayoutChangeEvent, Text, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { Badge } from 'react-native-paper';\n\nimport WmButtonProps from './button.props';\nimport { DEFAULT_CLASS, WmButtonStyles } from './button.styles';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport { createSkeleton } from '../skeleton/skeleton.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nexport class WmButtonState extends BaseComponentState<WmButtonProps> {\n\n}\n\nexport default class WmButton extends BaseComponent<WmButtonProps, WmButtonState, WmButtonStyles> {\n\n constructor(props: WmButtonProps) {\n super(props, DEFAULT_CLASS, new WmButtonProps());\n }\n\n private prepareIcon({\n iconclass,\n iconurl,\n hint,\n name,\n iconsize,\n iconheight,\n iconmargin,\n iconwidth,\n }: any) {\n return iconclass || iconurl\n ? (<WmIcon\n id={this.getTestId('icon')}\n hint={hint}\n styles={this.styles.icon}\n name={`${name}_icon`}\n iconclass={iconclass}\n iconsize={iconsize}\n iconurl={iconurl}\n iconheight={iconheight}\n iconmargin={iconmargin}\n iconwidth={iconwidth}\n />): null;\n }\n\n private prepareBadge(props: any) {\n //@ts-ignore\n return (<Badge style={this.styles.badge} {...this.getTestProps('badge')}>{props.badgevalue}</Badge>);\n }\n\n public renderSkeleton(prop: WmButtonProps) {\n let skeletonWidth, skeletonHeight;\n if(this.props.skeletonwidth == \"0\") {\n skeletonWidth = 0\n } else {\n skeletonWidth = this.props.skeletonwidth || this.styles.root?.width\n }\n\n if(this.props.skeletonheight == \"0\") {\n skeletonHeight = 0\n } else {\n skeletonHeight = this.props.skeletonheight || this.styles.root?.height;\n }\n \n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: skeletonWidth as DimensionValue,\n height: skeletonHeight as DimensionValue\n });\n }\n\n renderWidget(props: WmButtonProps) {\n return (\n <>\n <Animatedview entryanimation={props.animation} delay={props.animationdelay}\n onLayout={(event: LayoutChangeEvent) => this.handleLayout(event)}\n style={[\n this.styles.root,\n {\n paddingTop: 0,\n paddingBottom: 0,\n paddingLeft: 0,\n paddingRight: 0,\n overflow: 'hidden',\n flexDirection: 'column'\n },\n this.styles.root.height == \"100%\" ? {flex: 1}:{}\n ]}\n >\n {this._background}\n <Tappable\n disableTouchEffect={this.state.props.disabletoucheffect}\n styles={{\n paddingTop: this.styles.root.paddingTop,\n paddingBottom: this.styles.root.paddingBottom,\n paddingLeft: this.styles.root.paddingLeft,\n paddingRight: this.styles.root.paddingRight,\n width: '100%',\n height: this.styles.root.height ? '100%' : null,\n justifyContent: 'center',\n }}\n rippleColor = {this.styles.root.rippleColor}\n target={this}\n {...this.getTestPropsForAction()}\n accessibilityProps={{...getAccessibilityProps(\n AccessibilityWidgetType.BUTTON,\n props\n )}}>\n <View\n style={[\n this.styles.content,\n { flexDirection: props.iconposition === 'top' ? 'column' : 'row' }\n ]}>\n {props.iconposition === 'top' && this.prepareIcon(props)}\n {props.iconposition === 'left' && this.prepareIcon(props)}\n {props.caption ? (\n <Text\n style={this.styles.text}\n {...this.getTestPropsForLabel('caption')}\n importantForAccessibility={'no'}\n >\n {props.caption}\n </Text>\n ) : null}\n {props.iconposition === 'right' && this.prepareIcon(props)}\n </View>\n </Tappable>\n </Animatedview>\n {props.badgevalue && this.prepareBadge(props)}\n </>\n );\n }\n}\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAA4CC,IAAI,EAAEC,IAAI,QAAQ,cAAc;AAC5E,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AACjG,SAASC,QAAQ,QAAQ,mDAAmD;AAC5E,SAASC,KAAK,QAAQ,oBAAoB;AAE1C,OAAOC,aAAa,MAAM,gBAAgB;AAC1C,SAASC,aAAa,QAAwB,iBAAiB;AAC/D,OAAOC,MAAM,MAAM,gEAAgE;AACnF,SAASC,YAAY,QAAQ,mEAAmE;AAChG,SAASC,cAAc,QAAQ,gCAAgC;AAC/D,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,8CAA8C;AAE7G,OAAO,MAAMC,aAAa,SAASV,kBAAkB,CAAgB;AAIrE,eAAe,MAAMW,QAAQ,SAASZ,aAAa,CAA+C;EAEhGa,WAAWA,CAACC,KAAoB,EAAE;IAChC,KAAK,CAACA,KAAK,EAAET,aAAa,EAAE,IAAID,aAAa,CAAC,CAAC,CAAC;EAClD;EAEQW,WAAWA,CAAC;IAClBC,SAAS;IACTC,OAAO;IACPC,IAAI;IACJC,IAAI;IACJC,QAAQ;IACRC,UAAU;IACVC,UAAU;IACVC;EACG,CAAC,EAAE;IACN,OAAOP,SAAS,IAAIC,OAAO,gBACtBpB,KAAA,CAAA2B,aAAA,CAAClB,MAAM;MACNmB,EAAE,EAAE,IAAI,CAACC,SAAS,CAAC,MAAM,CAAE;MAC3BR,IAAI,EAAEA,IAAK;MACXS,MAAM,EAAE,IAAI,CAACA,MAAM,CAACC,IAAK;MACzBT,IAAI,EAAE,GAAGA,IAAI,OAAQ;MACrBH,SAAS,EAAEA,SAAU;MACrBI,QAAQ,EAAEA,QAAS;MACnBH,OAAO,EAAEA,OAAQ;MACjBI,UAAU,EAAEA,UAAW;MACvBC,UAAU,EAAEA,UAAW;MACvBC,SAAS,EAAEA;
|
1
|
+
{"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","Tappable","Badge","WmButtonProps","DEFAULT_CLASS","WmIcon","Animatedview","createSkeleton","AccessibilityWidgetType","getAccessibilityProps","WmButtonState","WmButton","constructor","props","prepareIcon","iconclass","iconurl","hint","name","iconsize","iconheight","iconmargin","iconwidth","createElement","id","getTestId","styles","icon","accessible","prepareBadge","_extends","style","badge","getTestProps","badgevalue","renderSkeleton","prop","skeletonWidth","skeletonHeight","skeletonwidth","_this$styles$root","root","width","skeletonheight","_this$styles$root2","height","theme","skeleton","renderWidget","Fragment","entryanimation","animation","delay","animationdelay","onLayout","event","handleLayout","paddingTop","paddingBottom","paddingLeft","paddingRight","overflow","flexDirection","flex","_background","disableTouchEffect","state","disabletoucheffect","justifyContent","rippleColor","target","getTestPropsForAction","accessibilityProps","BUTTON","content","iconposition","caption","text","getTestPropsForLabel","importantForAccessibility"],"sources":["button.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, LayoutChangeEvent, Text, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { Badge } from 'react-native-paper';\n\nimport WmButtonProps from './button.props';\nimport { DEFAULT_CLASS, WmButtonStyles } from './button.styles';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport { createSkeleton } from '../skeleton/skeleton.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nexport class WmButtonState extends BaseComponentState<WmButtonProps> {\n\n}\n\nexport default class WmButton extends BaseComponent<WmButtonProps, WmButtonState, WmButtonStyles> {\n\n constructor(props: WmButtonProps) {\n super(props, DEFAULT_CLASS, new WmButtonProps());\n }\n\n private prepareIcon({\n iconclass,\n iconurl,\n hint,\n name,\n iconsize,\n iconheight,\n iconmargin,\n iconwidth,\n }: any) {\n return iconclass || iconurl\n ? (<WmIcon\n id={this.getTestId('icon')}\n hint={hint}\n styles={this.styles.icon}\n name={`${name}_icon`}\n iconclass={iconclass}\n iconsize={iconsize}\n iconurl={iconurl}\n iconheight={iconheight}\n iconmargin={iconmargin}\n iconwidth={iconwidth}\n accessible={false}\n />): null;\n }\n\n private prepareBadge(props: any) {\n //@ts-ignore\n return (<Badge style={this.styles.badge} {...this.getTestProps('badge')}>{props.badgevalue}</Badge>);\n }\n\n public renderSkeleton(prop: WmButtonProps) {\n let skeletonWidth, skeletonHeight;\n if(this.props.skeletonwidth == \"0\") {\n skeletonWidth = 0\n } else {\n skeletonWidth = this.props.skeletonwidth || this.styles.root?.width\n }\n\n if(this.props.skeletonheight == \"0\") {\n skeletonHeight = 0\n } else {\n skeletonHeight = this.props.skeletonheight || this.styles.root?.height;\n }\n \n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: skeletonWidth as DimensionValue,\n height: skeletonHeight as DimensionValue\n });\n }\n\n renderWidget(props: WmButtonProps) {\n return (\n <>\n <Animatedview entryanimation={props.animation} delay={props.animationdelay}\n onLayout={(event: LayoutChangeEvent) => this.handleLayout(event)}\n style={[\n this.styles.root,\n {\n paddingTop: 0,\n paddingBottom: 0,\n paddingLeft: 0,\n paddingRight: 0,\n overflow: 'hidden',\n flexDirection: 'column'\n },\n this.styles.root.height == \"100%\" ? {flex: 1}:{}\n ]}\n >\n {this._background}\n <Tappable\n disableTouchEffect={this.state.props.disabletoucheffect}\n styles={{\n paddingTop: this.styles.root.paddingTop,\n paddingBottom: this.styles.root.paddingBottom,\n paddingLeft: this.styles.root.paddingLeft,\n paddingRight: this.styles.root.paddingRight,\n width: '100%',\n height: this.styles.root.height ? '100%' : null,\n justifyContent: 'center',\n }}\n rippleColor = {this.styles.root.rippleColor}\n target={this}\n {...this.getTestPropsForAction()}\n accessibilityProps={{...getAccessibilityProps(\n AccessibilityWidgetType.BUTTON,\n props\n )}}>\n <View\n style={[\n this.styles.content,\n { flexDirection: props.iconposition === 'top' ? 'column' : 'row' }\n ]}>\n {props.iconposition === 'top' && this.prepareIcon(props)}\n {props.iconposition === 'left' && this.prepareIcon(props)}\n {props.caption ? (\n <Text\n style={this.styles.text}\n {...this.getTestPropsForLabel('caption')}\n importantForAccessibility={'no'}\n >\n {props.caption}\n </Text>\n ) : null}\n {props.iconposition === 'right' && this.prepareIcon(props)}\n </View>\n </Tappable>\n </Animatedview>\n {props.badgevalue && this.prepareBadge(props)}\n </>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -19,6 +19,7 @@ export default class WmButtonProps extends BaseProps {
|
|
19
19
|
_defineProperty(this, "iconheight", null);
|
20
20
|
_defineProperty(this, "iconwidth", null);
|
21
21
|
_defineProperty(this, "iconmargin", null);
|
22
|
+
_defineProperty(this, "accessible", true);
|
22
23
|
_defineProperty(this, "accessibilitylabel", undefined);
|
23
24
|
_defineProperty(this, "hint", undefined);
|
24
25
|
_defineProperty(this, "accessibilityrole", "button");
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["BaseProps","WmButtonProps","constructor","args","_defineProperty","undefined"],"sources":["button.props.ts"],"sourcesContent":["import {AccessibilityRole} from 'react-native';\nimport { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmButtonProps extends BaseProps {\n animation?: string = null as any;\n animationdelay?: number = null as any;\n caption?: string = null as any;\n badgevalue?: string = null as any;\n iconclass?: string = null as any;\n iconposition? = 'left';\n onTap?: Function = null as any;\n iconsize?:number = 0;\n skeletonheight?: string = null as any;\n skeletonwidth?: string = null as any;\n iconurl?: string = null as any;\n iconheight?: number = null as any;\n iconwidth?: number = null as any;\n iconmargin?: number = null as any;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = \"button\";\n}\n"],"mappings":";;;AACA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,aAAa,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBAC5B,IAAI;IAAAA,eAAA,yBACC,IAAI;IAAAA,eAAA,kBACX,IAAI;IAAAA,eAAA,qBACD,IAAI;IAAAA,eAAA,oBACL,IAAI;IAAAA,eAAA,uBACT,MAAM;IAAAA,eAAA,gBACH,IAAI;IAAAA,eAAA,mBACJ,CAAC;IAAAA,eAAA,yBACM,IAAI;IAAAA,eAAA,wBACL,IAAI;IAAAA,eAAA,kBACV,IAAI;IAAAA,eAAA,qBACD,IAAI;IAAAA,eAAA,oBACL,IAAI;IAAAA,eAAA,qBACH,IAAI;IAAAA,eAAA,
|
1
|
+
{"version":3,"names":["BaseProps","WmButtonProps","constructor","args","_defineProperty","undefined"],"sources":["button.props.ts"],"sourcesContent":["import {AccessibilityRole} from 'react-native';\nimport { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmButtonProps extends BaseProps {\n animation?: string = null as any;\n animationdelay?: number = null as any;\n caption?: string = null as any;\n badgevalue?: string = null as any;\n iconclass?: string = null as any;\n iconposition? = 'left';\n onTap?: Function = null as any;\n iconsize?:number = 0;\n skeletonheight?: string = null as any;\n skeletonwidth?: string = null as any;\n iconurl?: string = null as any;\n iconheight?: number = null as any;\n iconwidth?: number = null as any;\n iconmargin?: number = null as any;\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = \"button\";\n}\n"],"mappings":";;;AACA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,aAAa,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBAC5B,IAAI;IAAAA,eAAA,yBACC,IAAI;IAAAA,eAAA,kBACX,IAAI;IAAAA,eAAA,qBACD,IAAI;IAAAA,eAAA,oBACL,IAAI;IAAAA,eAAA,uBACT,MAAM;IAAAA,eAAA,gBACH,IAAI;IAAAA,eAAA,mBACJ,CAAC;IAAAA,eAAA,yBACM,IAAI;IAAAA,eAAA,wBACL,IAAI;IAAAA,eAAA,kBACV,IAAI;IAAAA,eAAA,qBACD,IAAI;IAAAA,eAAA,oBACL,IAAI;IAAAA,eAAA,qBACH,IAAI;IAAAA,eAAA,qBACH,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA,4BACe,QAAQ;EAAA;AACpD","ignoreList":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Text","View","Platform","BaseComponent","BaseComponentState","Tappable","NavigationServiceConsumer","AccessibilityWidgetType","getAccessibilityProps","WmLabelProps","DEFAULT_CLASS","isNil","toString","Animatedview","createSkeleton","LinearGradient","MaskedView","parseLinearGradient","WmLabelState","constructor","args","_defineProperty","WmLabel","props","updateState","parts","parseCaption","caption","getAsterisk","createElement","style","styles","asterisk","onPropertyChange","name","$new","$old","String","getMultilineSkeleton","width","height","borderRadius","marginBottom","theme","skeleton","replace","lastIndex","match","pattern","exec","index","push","text","substring","undefined","boldContent","linkPattern","linkMatch","beforeLink","bold","link","afterLink","length","renderSkeleton","skeletonWidth","skeletonHeight","skeletonwidth","_this$styles$root","root","skeletonheight","_this$styles$root2","fontSize","multilineskeleton","shouldUseAndroidEllipsis","OS","enableandroidellipsis","getNumberOfLines","numOfLines","wrap","nooflines","renderLabelTextContent","navigationService","isHidden","hasLinearGradient","_this$styles","_this$state$parts","_this$state$parts2","gradientTextWebStyle","backgroundImage","color","backgroundClip","showWebTextGradient","state","useAndroidEllipsis","baseStyle","hiddenStyle","opacity","gradientStyle","isSinglePart","androidEllipsisTextStyle","userSelect","textAlign","_extends","numberOfLines","ellipsizeMode","getTestPropsForLabel","LABEL","map","part","join","required","combinedTextStyle","flexWrap","isLink","key","fontWeight","isValid","selectable","onPress","startsWith","openUrl","eventName","invokeEventCallback","proxy","renderWidget","_this$styles2","linkStyles","mergeStyle","start","end","gradientColors","colorStops","entryanimation","animation","delay","animationdelay","onLayout","event","handleLayout","_background","target","disableTouchEffect","disabletoucheffect","maskElement","colors","locations"],"sources":["label.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, LayoutChangeEvent, Text, View,Platform } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport NavigationService, { NavigationServiceConsumer } from '@wavemaker/app-rn-runtime/core/navigation.service';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nimport WmLabelProps from './label.props';\nimport { DEFAULT_CLASS, WmLabelStyles } from './label.styles';\nimport { isNil, toString } from 'lodash-es';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport WmSkeleton, { createSkeleton } from '../skeleton/skeleton.component';\nimport { LinearGradient } from 'expo-linear-gradient';\nimport MaskedView from '@react-native-masked-view/masked-view';\nimport { parseLinearGradient } from '@wavemaker/app-rn-runtime/core/utils';\n\n\ntype PartType = {\n text?: string,\n link?: string,\n bold?: boolean;\n};\n\nexport class WmLabelState extends BaseComponentState<WmLabelProps> {\n parts: PartType[] = []\n}\n\nexport default class WmLabel extends BaseComponent<WmLabelProps, WmLabelState, WmLabelStyles> {\n\n constructor(props: WmLabelProps) {\n super(props, DEFAULT_CLASS, new WmLabelProps(), new WmLabelState());\n this.updateState({\n parts: this.parseCaption(props.caption || '')\n } as WmLabelState);\n }\n\n private getAsterisk() {\n return <Text style={this.styles.asterisk}>*</Text>;\n }\n\n public onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n\n switch (name) {\n case \"caption\":\n this.updateState({\n parts: this.parseCaption(String($new))\n } as WmLabelState);\n break;\n }\n }\n private getMultilineSkeleton(width: any, height: any) {\n const styles = {\n borderRadius: 4,\n marginBottom: 10,\n height: height\n };\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...styles,\n width: width,\n height: height\n });\n }\n\n parseCaption(caption: string) {\n if (!caption) {\n return [];\n }\n caption += '';\n caption = caption.replace(/\\s*\\(\\s*\\$event,\\s*\\$widget\\s*\\)\\s*/, '');\n caption = caption.replace(/\\(\\s*\\)/, '(#/__EMPTY__)');\n \n let parts: PartType[] = [];\n let lastIndex = 0;\n let match;\n \n // Updated pattern to handle asterisks properly - using lazy matching and proper boundaries\n const pattern = /\\*\\*(.*?)\\*\\*|\\[([^\\]]+)\\]\\(([^)]*)\\)/g;\n \n while ((match = pattern.exec(caption)) !== null) {\n // Add any text before the match\n if (match.index > lastIndex) {\n parts.push({ text: caption.substring(lastIndex, match.index) });\n }\n \n if (match[1] !== undefined) {\n // This is a bold section (first capture group)\n const boldContent = match[1];\n \n // Check if the bold content contains a link\n const linkPattern = /\\[([^\\]]+)\\]\\(([^)]*)\\)/;\n const linkMatch = boldContent.match(linkPattern);\n \n if (linkMatch) {\n // If there's text before the link\n const beforeLink = boldContent.substring(0, linkMatch.index);\n if (beforeLink) {\n parts.push({ text: beforeLink, bold: true });\n }\n \n // Add the link part\n parts.push({ text: linkMatch[1], link: linkMatch[2], bold: true });\n \n // If there's text after the link\n if(linkMatch.index !== undefined) {\n const afterLink = boldContent.substring(linkMatch.index + linkMatch[0].length);\n if (afterLink) {\n parts.push({ text: afterLink, bold: true });\n } \n }\n } else {\n // If no link, just add the entire content as bold\n parts.push({ text: boldContent, bold: true });\n }\n } else if (match[2] !== undefined && match[3] !== undefined) {\n // This is a standalone link (second and third capture groups)\n parts.push({ text: match[2], link: match[3] });\n }\n \n lastIndex = pattern.lastIndex;\n }\n \n // Add any remaining text after the last match\n if (lastIndex < caption.length) {\n parts.push({ text: caption.substring(lastIndex) });\n }\n \n return parts;\n }\n\n public renderSkeleton(props: WmLabelProps) {\n\n let skeletonWidth, skeletonHeight;\n if (this.props.skeletonwidth == \"0\") {\n skeletonWidth = 0\n } else {\n skeletonWidth = this.props.skeletonwidth || this.styles.root?.width\n }\n\n if (this.props.skeletonheight == \"0\") {\n skeletonHeight = 0\n } else {\n skeletonHeight = this.props.skeletonheight || this.styles.root?.height || this.styles.text.fontSize;\n }\n\n if (this.props.multilineskeleton) {\n return (<View style={{\n width: skeletonWidth as DimensionValue\n }}>\n {this.getMultilineSkeleton('100%', skeletonHeight)}\n {this.getMultilineSkeleton('70%', skeletonHeight)}\n {this.getMultilineSkeleton('40%', skeletonHeight)}\n </View>)\n }\n else {\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: skeletonWidth as DimensionValue,\n height: skeletonHeight as DimensionValue\n });\n }\n }\n private shouldUseAndroidEllipsis(props: WmLabelProps): boolean {\n return Platform.OS === 'android' && props.enableandroidellipsis !== false;\n }\n\n // Helper to get the proper number of lines\n private getNumberOfLines(props: WmLabelProps): number | undefined {\n let numOfLines: number | undefined = undefined;\n if (props.wrap === false) {\n numOfLines = 1;\n } else if (typeof props.nooflines === 'number' && props.nooflines > 0) {\n numOfLines = props.nooflines;\n }\n return numOfLines;\n }\n\n private renderLabelTextContent(navigationService: NavigationService, isHidden: boolean = false, hasLinearGradient: boolean = false) {\n //gradient text support for web\n const gradientTextWebStyle = {\n backgroundImage: (this.styles?.text.color as string),\n color: 'transparent',\n backgroundClip: 'text',\n }\n const showWebTextGradient = (hasLinearGradient && Platform.OS === 'web');\n const numOfLines = this.getNumberOfLines(this.state.props);\n const useAndroidEllipsis = this.shouldUseAndroidEllipsis(this.state.props);\n\n // Shared styles\n const baseStyle = this.styles.text;\n const hiddenStyle = isHidden ? { opacity: 0 } : {};\n const gradientStyle = showWebTextGradient ? gradientTextWebStyle : {};\n\n // Determine if it's a single part\n const isSinglePart = this.state.parts.length <= 1;\n if (useAndroidEllipsis) {\n const androidEllipsisTextStyle: any = {\n ...baseStyle,\n ...hiddenStyle,\n ...gradientStyle,\n userSelect: 'none',\n width: '100%',\n textAlign: baseStyle.textAlign,\n };\n return (\n <Text\n style={androidEllipsisTextStyle}\n numberOfLines={numOfLines}\n ellipsizeMode=\"tail\"\n {...(this.state.parts.length <= 1 ? this.getTestPropsForLabel('caption') : {})}\n {...getAccessibilityProps(AccessibilityWidgetType.LABEL, this.state.props)}\n >\n {this.state.parts.length === 1\n ? toString(this.state.props.caption)\n : this.state.parts.map(part => toString(part.text)).join('')}\n {this.state.props.required && this.getAsterisk()}\n </Text>\n );\n } \n\n\n // Compose final style\n const combinedTextStyle = isSinglePart\n ? { ...baseStyle, ...hiddenStyle, ...gradientStyle }\n : {\n flexWrap: 'wrap',\n textAlign: baseStyle.textAlign,\n ...hiddenStyle,\n ...gradientStyle,\n };\n\n\n\n return (\n <Text style={combinedTextStyle}\n {...this.state.parts.length <= 1 ? this.getTestPropsForLabel('caption') : {}}\n {...getAccessibilityProps(AccessibilityWidgetType.LABEL, this.state.props)}\n numberOfLines={numOfLines} ellipsizeMode=\"tail\">\n {(this.state.parts?.length === 1 && !this.state.parts[0].link && !this.state.parts[0].bold) ? toString(this.state.props.caption) : this.state.parts?.map((part, index) => {\n const isLink = !isNil(part.link);\n return (\n <Text\n key={`part_${index}`}\n style={[\n this.styles.text,\n isLink ? this.styles.link.text : null,\n part.bold ? { fontWeight: 'bold'} : null, \n this.state.props.isValid ? null : { color: 'red' }\n ]}\n {...this.getTestPropsForLabel(isLink ? `link_${index}` : `caption_${index}`)}\n selectable={this.styles.text.userSelect === 'text'}\n onPress={() => {\n if (part.link) {\n if (part.link.startsWith('http:')\n || part.link.startsWith('https:')\n || part.link.startsWith('#')) {\n navigationService.openUrl(part.link, '_blank');\n } else if (part.link.startsWith('javascript:')) {\n const eventName = part.link.substring(11);\n this.invokeEventCallback(eventName, [null, this.proxy]);\n }\n }\n this.invokeEventCallback('onTap', [null, this.proxy]);\n }}\n // {...getAccessibilityProps(AccessibilityWidgetType.LABEL, props)}\n >\n {toString(part.text)}\n </Text>\n );\n })}\n {this.state.props.required && this.getAsterisk()}\n </Text>\n )\n\n }\n renderWidget(props: WmLabelProps) {\n const linkStyles = this.theme.mergeStyle({ text: this.styles.text }, this.styles.link);\n const { hasLinearGradient, start, end, gradientColors,colorStops } = parseLinearGradient((this.styles?.text.color) as string);\n \n \n\n\n return !isNil(props.caption) ? (\n <Animatedview\n entryanimation={props.animation}\n delay={props.animationdelay}\n style={this.styles.root}\n onLayout={(event: LayoutChangeEvent) => this.handleLayout(event)}\n >\n {this._background}\n <NavigationServiceConsumer>\n {(navigationService: NavigationService) => {\n return (<Tappable target={this} disableTouchEffect={this.state.props.disabletoucheffect} >\n {hasLinearGradient ? <MaskedView\n maskElement={this.renderLabelTextContent(navigationService, false, hasLinearGradient)}\n >\n <LinearGradient colors={gradientColors} start={start} end={end} locations={colorStops.length > 0 ? colorStops : undefined}>\n {this.renderLabelTextContent(navigationService, true)}\n </LinearGradient>\n </MaskedView> : this.renderLabelTextContent(navigationService)}\n </Tappable>)\n }}\n </NavigationServiceConsumer>\n </Animatedview>\n ) : null;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","Text","View","Platform","BaseComponent","BaseComponentState","Tappable","NavigationServiceConsumer","AccessibilityWidgetType","getAccessibilityProps","WmLabelProps","DEFAULT_CLASS","isNil","toString","Animatedview","createSkeleton","LinearGradient","MaskedView","parseLinearGradient","WmLabelState","constructor","args","_defineProperty","WmLabel","props","updateState","parts","parseCaption","caption","getAsterisk","createElement","style","styles","asterisk","onPropertyChange","name","$new","$old","String","getMultilineSkeleton","width","height","borderRadius","marginBottom","theme","skeleton","replace","lastIndex","match","pattern","exec","index","push","text","substring","undefined","boldContent","linkPattern","linkMatch","beforeLink","bold","link","afterLink","length","renderSkeleton","skeletonWidth","skeletonHeight","skeletonwidth","_this$styles$root","root","skeletonheight","_this$styles$root2","fontSize","multilineskeleton","shouldUseAndroidEllipsis","OS","enableandroidellipsis","getNumberOfLines","numOfLines","wrap","nooflines","renderLabelTextContent","navigationService","isHidden","hasLinearGradient","_this$styles","_this$state$parts","_this$state$parts2","gradientTextWebStyle","backgroundImage","color","backgroundClip","showWebTextGradient","state","useAndroidEllipsis","baseStyle","hiddenStyle","opacity","gradientStyle","isSinglePart","androidEllipsisTextStyle","userSelect","textAlign","_extends","numberOfLines","ellipsizeMode","getTestPropsForLabel","LABEL","map","part","join","required","combinedTextStyle","flexWrap","isLink","key","fontWeight","isValid","selectable","onPress","startsWith","openUrl","eventName","invokeEventCallback","proxy","renderWidget","_this$styles2","linkStyles","mergeStyle","start","end","gradientColors","colorStops","entryanimation","animation","delay","animationdelay","onLayout","event","handleLayout","_background","target","disableTouchEffect","disabletoucheffect","maskElement","colors","locations"],"sources":["label.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, LayoutChangeEvent, Text, View,Platform } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport NavigationService, { NavigationServiceConsumer } from '@wavemaker/app-rn-runtime/core/navigation.service';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nimport WmLabelProps from './label.props';\nimport { DEFAULT_CLASS, WmLabelStyles } from './label.styles';\nimport { isNil, toString } from 'lodash-es';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport WmSkeleton, { createSkeleton } from '../skeleton/skeleton.component';\nimport { LinearGradient } from 'expo-linear-gradient';\nimport MaskedView from '@react-native-masked-view/masked-view';\nimport { parseLinearGradient } from '@wavemaker/app-rn-runtime/core/utils';\n\n\ntype PartType = {\n text?: string,\n link?: string,\n bold?: boolean;\n};\n\nexport class WmLabelState extends BaseComponentState<WmLabelProps> {\n parts: PartType[] = []\n}\n\nexport default class WmLabel extends BaseComponent<WmLabelProps, WmLabelState, WmLabelStyles> {\n\n constructor(props: WmLabelProps) {\n super(props, DEFAULT_CLASS, new WmLabelProps(), new WmLabelState());\n this.updateState({\n parts: this.parseCaption(props.caption || '')\n } as WmLabelState);\n }\n\n private getAsterisk() {\n return <Text style={this.styles.asterisk}>*</Text>;\n }\n\n public onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n\n switch (name) {\n case \"caption\":\n this.updateState({\n parts: this.parseCaption(String($new))\n } as WmLabelState);\n break;\n }\n }\n private getMultilineSkeleton(width: any, height: any) {\n const styles = {\n borderRadius: 4,\n marginBottom: 10,\n height: height\n };\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...styles,\n width: width,\n height: height\n });\n }\n\n parseCaption(caption: string) {\n if (!caption) {\n return [];\n }\n caption += '';\n caption = caption.replace(/\\s*\\(\\s*\\$event,\\s*\\$widget\\s*\\)\\s*/, '');\n caption = caption.replace(/\\(\\s*\\)/, '(#/__EMPTY__)');\n \n let parts: PartType[] = [];\n let lastIndex = 0;\n let match;\n \n // Updated pattern to handle asterisks properly - using lazy matching and proper boundaries\n const pattern = /\\*\\*(.*?)\\*\\*|\\[([^\\]]+)\\]\\(([^)]*)\\)/g;\n \n while ((match = pattern.exec(caption)) !== null) {\n // Add any text before the match\n if (match.index > lastIndex) {\n parts.push({ text: caption.substring(lastIndex, match.index) });\n }\n \n if (match[1] !== undefined) {\n // This is a bold section (first capture group)\n const boldContent = match[1];\n \n // Check if the bold content contains a link\n const linkPattern = /\\[([^\\]]+)\\]\\(([^)]*)\\)/;\n const linkMatch = boldContent.match(linkPattern);\n \n if (linkMatch) {\n // If there's text before the link\n const beforeLink = boldContent.substring(0, linkMatch.index);\n if (beforeLink) {\n parts.push({ text: beforeLink, bold: true });\n }\n \n // Add the link part\n parts.push({ text: linkMatch[1], link: linkMatch[2], bold: true });\n \n // If there's text after the link\n if(linkMatch.index !== undefined) {\n const afterLink = boldContent.substring(linkMatch.index + linkMatch[0].length);\n if (afterLink) {\n parts.push({ text: afterLink, bold: true });\n } \n }\n } else {\n // If no link, just add the entire content as bold\n parts.push({ text: boldContent, bold: true });\n }\n } else if (match[2] !== undefined && match[3] !== undefined) {\n // This is a standalone link (second and third capture groups)\n parts.push({ text: match[2], link: match[3] });\n }\n \n lastIndex = pattern.lastIndex;\n }\n \n // Add any remaining text after the last match\n if (lastIndex < caption.length) {\n parts.push({ text: caption.substring(lastIndex) });\n }\n \n return parts;\n }\n\n public renderSkeleton(props: WmLabelProps) {\n\n let skeletonWidth, skeletonHeight;\n if (this.props.skeletonwidth == \"0\") {\n skeletonWidth = 0\n } else {\n skeletonWidth = this.props.skeletonwidth || this.styles.root?.width\n }\n\n if (this.props.skeletonheight == \"0\") {\n skeletonHeight = 0\n } else {\n skeletonHeight = this.props.skeletonheight || this.styles.root?.height || this.styles.text.fontSize;\n }\n\n if (this.props.multilineskeleton) {\n return (<View style={{\n width: skeletonWidth as DimensionValue\n }}>\n {this.getMultilineSkeleton('100%', skeletonHeight)}\n {this.getMultilineSkeleton('70%', skeletonHeight)}\n {this.getMultilineSkeleton('40%', skeletonHeight)}\n </View>)\n }\n else {\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: skeletonWidth as DimensionValue,\n height: skeletonHeight as DimensionValue\n });\n }\n }\n private shouldUseAndroidEllipsis(props: WmLabelProps): boolean {\n return Platform.OS === 'android' && props.enableandroidellipsis !== false;\n }\n\n // Helper to get the proper number of lines\n private getNumberOfLines(props: WmLabelProps): number | undefined {\n let numOfLines: number | undefined = undefined;\n if (props.wrap === false) {\n numOfLines = 1;\n } else if (typeof props.nooflines === 'number' && props.nooflines > 0) {\n numOfLines = props.nooflines;\n }\n return numOfLines;\n }\n\n private renderLabelTextContent(navigationService: NavigationService, isHidden: boolean = false, hasLinearGradient: boolean = false) {\n //gradient text support for web\n const gradientTextWebStyle = {\n backgroundImage: (this.styles?.text.color as string),\n color: 'transparent',\n backgroundClip: 'text',\n }\n const showWebTextGradient = (hasLinearGradient && Platform.OS === 'web');\n const numOfLines = this.getNumberOfLines(this.state.props);\n const useAndroidEllipsis = this.shouldUseAndroidEllipsis(this.state.props);\n\n // Shared styles\n const baseStyle = this.styles.text;\n const hiddenStyle = isHidden ? { opacity: 0 } : {};\n const gradientStyle = showWebTextGradient ? gradientTextWebStyle : {};\n\n // Determine if it's a single part\n const isSinglePart = this.state.parts.length <= 1;\n if (useAndroidEllipsis) {\n const androidEllipsisTextStyle: any = {\n ...baseStyle,\n ...hiddenStyle,\n ...gradientStyle,\n userSelect: 'none',\n width: '100%',\n textAlign: baseStyle.textAlign,\n };\n return (\n <Text\n style={androidEllipsisTextStyle}\n numberOfLines={numOfLines}\n ellipsizeMode=\"tail\"\n {...(this.state.parts.length <= 1 ? this.getTestPropsForLabel('caption') : {})}\n {...getAccessibilityProps(AccessibilityWidgetType.LABEL, this.state.props)}\n >\n {this.state.parts.length === 1\n ? toString(this.state.props.caption)\n : this.state.parts.map(part => toString(part.text)).join('')}\n {this.state.props.required && this.getAsterisk()}\n </Text>\n );\n } \n\n\n // Compose final style\n const combinedTextStyle = isSinglePart\n ? { ...baseStyle, ...hiddenStyle, ...gradientStyle }\n : {\n flexWrap: 'wrap',\n textAlign: baseStyle.textAlign,\n ...hiddenStyle,\n ...gradientStyle,\n };\n\n\n\n return (\n <Text style={combinedTextStyle}\n {...this.state.parts.length <= 1 ? this.getTestPropsForLabel('caption') : {}}\n {...getAccessibilityProps(AccessibilityWidgetType.LABEL, this.state.props)}\n numberOfLines={numOfLines} ellipsizeMode=\"tail\">\n {(this.state.parts?.length === 1 && !this.state.parts[0].link && !this.state.parts[0].bold) ? toString(this.state.props.caption) : this.state.parts?.map((part, index) => {\n const isLink = !isNil(part.link);\n return (\n <Text\n key={`part_${index}`}\n style={[\n this.styles.text,\n isLink ? this.styles.link.text : null,\n part.bold ? { fontWeight: 'bold'} : null, \n this.state.props.isValid ? null : { color: 'red' }\n ]}\n {...this.getTestPropsForLabel(isLink ? `link_${index}` : `caption_${index}`)}\n selectable={this.styles.text.userSelect === 'text'}\n onPress={() => {\n if (part.link) {\n if (part.link.startsWith('http:')\n || part.link.startsWith('https:')\n || part.link.startsWith('#')) {\n navigationService.openUrl(part.link, '_blank');\n } else if (part.link.startsWith('javascript:')) {\n const eventName = part.link.substring(11);\n this.invokeEventCallback(eventName, [null, this.proxy]);\n }\n }\n this.invokeEventCallback('onTap', [null, this.proxy]);\n }}\n // {...getAccessibilityProps(AccessibilityWidgetType.LABEL, props)}\n >\n {toString(part.text)}\n </Text>\n );\n })}\n {this.state.props.required && this.getAsterisk()}\n </Text>\n )\n\n }\n renderWidget(props: WmLabelProps) {\n const linkStyles = this.theme.mergeStyle({ text: this.styles.text }, this.styles.link);\n const { hasLinearGradient, start, end, gradientColors,colorStops } = parseLinearGradient((this.styles?.text.color) as string);\n \n return !isNil(props.caption) ? (\n <Animatedview\n entryanimation={props.animation}\n delay={props.animationdelay}\n style={this.styles.root}\n onLayout={(event: LayoutChangeEvent) => this.handleLayout(event)}\n >\n {this._background}\n <NavigationServiceConsumer>\n {(navigationService: NavigationService) => {\n return (<Tappable target={this} disableTouchEffect={this.state.props.disabletoucheffect} >\n {hasLinearGradient ? <MaskedView\n maskElement={this.renderLabelTextContent(navigationService, false, hasLinearGradient)}\n >\n <LinearGradient colors={gradientColors} start={start} end={end} locations={colorStops.length > 0 ? colorStops : undefined}>\n {this.renderLabelTextContent(navigationService, true)}\n </LinearGradient>\n </MaskedView> : this.renderLabelTextContent(navigationService)}\n </Tappable>)\n }}\n </NavigationServiceConsumer>\n </Animatedview>\n ) : null;\n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAA4CC,IAAI,EAAEC,IAAI,EAACC,QAAQ,QAAQ,cAAc;AACrF,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AACjG,SAASC,QAAQ,QAAQ,mDAAmD;AAC5E,SAA4BC,yBAAyB,QAAQ,mDAAmD;AAChH,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,8CAA8C;AAE7G,OAAOC,YAAY,MAAM,eAAe;AACxC,SAASC,aAAa,QAAuB,gBAAgB;AAC7D,SAASC,KAAK,EAAEC,QAAQ,QAAQ,WAAW;AAC3C,SAASC,YAAY,QAAQ,mEAAmE;AAChG,SAAqBC,cAAc,QAAQ,gCAAgC;AAC3E,SAASC,cAAc,QAAQ,sBAAsB;AACrD,OAAOC,UAAU,MAAM,uCAAuC;AAC9D,SAASC,mBAAmB,QAAQ,sCAAsC;AAS1E,OAAO,MAAMC,YAAY,SAASd,kBAAkB,CAAe;EAAAe,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,gBAC7C,EAAE;EAAA;AACxB;AAEA,eAAe,MAAMC,OAAO,SAASnB,aAAa,CAA4C;EAE5FgB,WAAWA,CAACI,KAAmB,EAAE;IAC/B,KAAK,CAACA,KAAK,EAAEb,aAAa,EAAE,IAAID,YAAY,CAAC,CAAC,EAAE,IAAIS,YAAY,CAAC,CAAC,CAAC;IACnE,IAAI,CAACM,WAAW,CAAC;MACfC,KAAK,EAAE,IAAI,CAACC,YAAY,CAACH,KAAK,CAACI,OAAO,IAAI,EAAE;IAC9C,CAAiB,CAAC;EACpB;EAEQC,WAAWA,CAAA,EAAG;IACpB,oBAAO7B,KAAA,CAAA8B,aAAA,CAAC7B,IAAI;MAAC8B,KAAK,EAAE,IAAI,CAACC,MAAM,CAACC;IAAS,GAAC,GAAO,CAAC;EACpD;EAEOC,gBAAgBA,CAACC,IAAY,EAAEC,IAAS,EAAEC,IAAS,EAAQ;IAChE,KAAK,CAACH,gBAAgB,CAACC,IAAI,EAAEC,IAAI,EAAEC,IAAI,CAAC;IAExC,QAAQF,IAAI;MACV,KAAK,SAAS;QACZ,IAAI,CAACV,WAAW,CAAC;UACfC,KAAK,EAAE,IAAI,CAACC,YAAY,CAACW,MAAM,CAACF,IAAI,CAAC;QACvC,CAAiB,CAAC;QAClB;IACJ;EACF;EACQG,oBAAoBA,CAACC,KAAU,EAAEC,MAAW,EAAE;IACpD,MAAMT,MAAM,GAAG;MACbU,YAAY,EAAE,CAAC;MACfC,YAAY,EAAE,EAAE;MAChBF,MAAM,EAAEA;IACV,CAAC;IACD,OAAO1B,cAAc,CAAC,IAAI,CAAC6B,KAAK,EAAE,IAAI,CAACZ,MAAM,CAACa,QAAQ,EAAE;MACtD,GAAGb,MAAM;MACTQ,KAAK,EAAEA,KAAK;MACZC,MAAM,EAAEA;IACV,CAAC,CAAC;EACJ;EAEAd,YAAYA,CAACC,OAAe,EAAE;IAC5B,IAAI,CAACA,OAAO,EAAE;MACZ,OAAO,EAAE;IACX;IACAA,OAAO,IAAI,EAAE;IACbA,OAAO,GAAGA,OAAO,CAACkB,OAAO,CAAC,qCAAqC,EAAE,EAAE,CAAC;IACpElB,OAAO,GAAGA,OAAO,CAACkB,OAAO,CAAC,SAAS,EAAE,eAAe,CAAC;IAErD,IAAIpB,KAAiB,GAAG,EAAE;IAC1B,IAAIqB,SAAS,GAAG,CAAC;IACjB,IAAIC,KAAK;;IAET;IACA,MAAMC,OAAO,GAAG,wCAAwC;IAExD,OAAO,CAACD,KAAK,GAAGC,OAAO,CAACC,IAAI,CAACtB,OAAO,CAAC,MAAM,IAAI,EAAE;MAC/C;MACA,IAAIoB,KAAK,CAACG,KAAK,GAAGJ,SAAS,EAAE;QAC3BrB,KAAK,CAAC0B,IAAI,CAAC;UAAEC,IAAI,EAAEzB,OAAO,CAAC0B,SAAS,CAACP,SAAS,EAAEC,KAAK,CAACG,KAAK;QAAE,CAAC,CAAC;MACjE;MAEA,IAAIH,KAAK,CAAC,CAAC,CAAC,KAAKO,SAAS,EAAE;QAC1B;QACA,MAAMC,WAAW,GAAGR,KAAK,CAAC,CAAC,CAAC;;QAE5B;QACA,MAAMS,WAAW,GAAG,yBAAyB;QAC7C,MAAMC,SAAS,GAAGF,WAAW,CAACR,KAAK,CAACS,WAAW,CAAC;QAEhD,IAAIC,SAAS,EAAE;UACb;UACA,MAAMC,UAAU,GAAGH,WAAW,CAACF,SAAS,CAAC,CAAC,EAAEI,SAAS,CAACP,KAAK,CAAC;UAC5D,IAAIQ,UAAU,EAAE;YACdjC,KAAK,CAAC0B,IAAI,CAAC;cAAEC,IAAI,EAAEM,UAAU;cAAEC,IAAI,EAAE;YAAK,CAAC,CAAC;UAC9C;;UAEA;UACAlC,KAAK,CAAC0B,IAAI,CAAC;YAAEC,IAAI,EAAEK,SAAS,CAAC,CAAC,CAAC;YAAEG,IAAI,EAAEH,SAAS,CAAC,CAAC,CAAC;YAAEE,IAAI,EAAE;UAAK,CAAC,CAAC;;UAElE;UACA,IAAGF,SAAS,CAACP,KAAK,KAAKI,SAAS,EAAE;YAChC,MAAMO,SAAS,GAAGN,WAAW,CAACF,SAAS,CAACI,SAAS,CAACP,KAAK,GAAGO,SAAS,CAAC,CAAC,CAAC,CAACK,MAAM,CAAC;YAC9E,IAAID,SAAS,EAAE;cACbpC,KAAK,CAAC0B,IAAI,CAAC;gBAAEC,IAAI,EAAES,SAAS;gBAAEF,IAAI,EAAE;cAAK,CAAC,CAAC;YAC7C;UACF;QACF,CAAC,MAAM;UACL;UACAlC,KAAK,CAAC0B,IAAI,CAAC;YAAEC,IAAI,EAAEG,WAAW;YAAEI,IAAI,EAAE;UAAK,CAAC,CAAC;QAC/C;MACF,CAAC,MAAM,IAAIZ,KAAK,CAAC,CAAC,CAAC,KAAKO,SAAS,IAAIP,KAAK,CAAC,CAAC,CAAC,KAAKO,SAAS,EAAE;QAC3D;QACA7B,KAAK,CAAC0B,IAAI,CAAC;UAAEC,IAAI,EAAEL,KAAK,CAAC,CAAC,CAAC;UAAEa,IAAI,EAAEb,KAAK,CAAC,CAAC;QAAE,CAAC,CAAC;MAChD;MAEAD,SAAS,GAAGE,OAAO,CAACF,SAAS;IAC/B;;IAEA;IACA,IAAIA,SAAS,GAAGnB,OAAO,CAACmC,MAAM,EAAE;MAC9BrC,KAAK,CAAC0B,IAAI,CAAC;QAAEC,IAAI,EAAEzB,OAAO,CAAC0B,SAAS,CAACP,SAAS;MAAE,CAAC,CAAC;IACpD;IAEA,OAAOrB,KAAK;EACd;EAEOsC,cAAcA,CAACxC,KAAmB,EAAE;IAEzC,IAAIyC,aAAa,EAAEC,cAAc;IACjC,IAAI,IAAI,CAAC1C,KAAK,CAAC2C,aAAa,IAAI,GAAG,EAAE;MACnCF,aAAa,GAAG,CAAC;IACnB,CAAC,MAAM;MAAA,IAAAG,iBAAA;MACLH,aAAa,GAAG,IAAI,CAACzC,KAAK,CAAC2C,aAAa,MAAAC,iBAAA,GAAI,IAAI,CAACpC,MAAM,CAACqC,IAAI,cAAAD,iBAAA,uBAAhBA,iBAAA,CAAkB5B,KAAK;IACrE;IAEA,IAAI,IAAI,CAAChB,KAAK,CAAC8C,cAAc,IAAI,GAAG,EAAE;MACpCJ,cAAc,GAAG,CAAC;IACpB,CAAC,MAAM;MAAA,IAAAK,kBAAA;MACLL,cAAc,GAAG,IAAI,CAAC1C,KAAK,CAAC8C,cAAc,MAAAC,kBAAA,GAAI,IAAI,CAACvC,MAAM,CAACqC,IAAI,cAAAE,kBAAA,uBAAhBA,kBAAA,CAAkB9B,MAAM,KAAI,IAAI,CAACT,MAAM,CAACqB,IAAI,CAACmB,QAAQ;IACrG;IAEA,IAAI,IAAI,CAAChD,KAAK,CAACiD,iBAAiB,EAAE;MAChC,oBAAQzE,KAAA,CAAA8B,aAAA,CAAC5B,IAAI;QAAC6B,KAAK,EAAE;UACnBS,KAAK,EAAEyB;QACT;MAAE,GACC,IAAI,CAAC1B,oBAAoB,CAAC,MAAM,EAAE2B,cAAc,CAAC,EACjD,IAAI,CAAC3B,oBAAoB,CAAC,KAAK,EAAE2B,cAAc,CAAC,EAChD,IAAI,CAAC3B,oBAAoB,CAAC,KAAK,EAAE2B,cAAc,CAC5C,CAAC;IACT,CAAC,MACI;MACH,OAAOnD,cAAc,CAAC,IAAI,CAAC6B,KAAK,EAAE,IAAI,CAACZ,MAAM,CAACa,QAAQ,EAAE;QACtD,GAAG,IAAI,CAACb,MAAM,CAACqC,IAAI;QACnB7B,KAAK,EAAEyB,aAA+B;QACtCxB,MAAM,EAAEyB;MACV,CAAC,CAAC;IACJ;EACF;EACQQ,wBAAwBA,CAAClD,KAAmB,EAAW;IAC7D,OAAOrB,QAAQ,CAACwE,EAAE,KAAK,SAAS,IAAInD,KAAK,CAACoD,qBAAqB,KAAK,KAAK;EAC3E;;EAEA;EACQC,gBAAgBA,CAACrD,KAAmB,EAAsB;IAC9D,IAAIsD,UAA8B,GAAGvB,SAAS;IAC9C,IAAI/B,KAAK,CAACuD,IAAI,KAAK,KAAK,EAAE;MACtBD,UAAU,GAAG,CAAC;IAClB,CAAC,MAAM,IAAI,OAAOtD,KAAK,CAACwD,SAAS,KAAK,QAAQ,IAAIxD,KAAK,CAACwD,SAAS,GAAG,CAAC,EAAE;MACnEF,UAAU,GAAGtD,KAAK,CAACwD,SAAS;IAChC;IACA,OAAOF,UAAU;EACrB;EAEQG,sBAAsBA,CAACC,iBAAoC,EAAEC,QAAiB,GAAG,KAAK,EAAEC,iBAA0B,GAAG,KAAK,EAAE;IAAA,IAAAC,YAAA,EAAAC,iBAAA,EAAAC,kBAAA;IAClI;IACA,MAAMC,oBAAoB,GAAG;MAC3BC,eAAe,GAAAJ,YAAA,GAAG,IAAI,CAACrD,MAAM,cAAAqD,YAAA,uBAAXA,YAAA,CAAahC,IAAI,CAACqC,KAAgB;MACpDA,KAAK,EAAE,aAAa;MACpBC,cAAc,EAAE;IAClB,CAAC;IACD,MAAMC,mBAAmB,GAAIR,iBAAiB,IAAIjF,QAAQ,CAACwE,EAAE,KAAK,KAAM;IACxE,MAAMG,UAAU,GAAG,IAAI,CAACD,gBAAgB,CAAC,IAAI,CAACgB,KAAK,CAACrE,KAAK,CAAC;IAC1D,MAAMsE,kBAAkB,GAAG,IAAI,CAACpB,wBAAwB,CAAC,IAAI,CAACmB,KAAK,CAACrE,KAAK,CAAC;;IAE1E;IACA,MAAMuE,SAAS,GAAG,IAAI,CAAC/D,MAAM,CAACqB,IAAI;IAClC,MAAM2C,WAAW,GAAGb,QAAQ,GAAG;MAAEc,OAAO,EAAE;IAAE,CAAC,GAAG,CAAC,CAAC;IAClD,MAAMC,aAAa,GAAGN,mBAAmB,GAAGJ,oBAAoB,GAAG,CAAC,CAAC;;IAErE;IACA,MAAMW,YAAY,GAAG,IAAI,CAACN,KAAK,CAACnE,KAAK,CAACqC,MAAM,IAAI,CAAC;IACjD,IAAI+B,kBAAkB,EAAE;MACtB,MAAMM,wBAA6B,GAAG;QAClC,GAAGL,SAAS;QACZ,GAAGC,WAAW;QACd,GAAGE,aAAa;QAChBG,UAAU,EAAE,MAAM;QAClB7D,KAAK,EAAE,MAAM;QACb8D,SAAS,EAAEP,SAAS,CAACO;MACzB,CAAC;MACD,oBACItG,KAAA,CAAA8B,aAAA,CAAC7B,IAAI,EAAAsG,QAAA;QACDxE,KAAK,EAAEqE,wBAAyB;QAChCI,aAAa,EAAE1B,UAAW;QAC1B2B,aAAa,EAAC;MAAM,GACf,IAAI,CAACZ,KAAK,CAACnE,KAAK,CAACqC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC2C,oBAAoB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EACzEjG,qBAAqB,CAACD,uBAAuB,CAACmG,KAAK,EAAE,IAAI,CAACd,KAAK,CAACrE,KAAK,CAAC,GAEzE,IAAI,CAACqE,KAAK,CAACnE,KAAK,CAACqC,MAAM,KAAK,CAAC,GACxBlD,QAAQ,CAAC,IAAI,CAACgF,KAAK,CAACrE,KAAK,CAACI,OAAO,CAAC,GAClC,IAAI,CAACiE,KAAK,CAACnE,KAAK,CAACkF,GAAG,CAACC,IAAI,IAAIhG,QAAQ,CAACgG,IAAI,CAACxD,IAAI,CAAC,CAAC,CAACyD,IAAI,CAAC,EAAE,CAAC,EAC/D,IAAI,CAACjB,KAAK,CAACrE,KAAK,CAACuF,QAAQ,IAAI,IAAI,CAAClF,WAAW,CAAC,CAC7C,CAAC;IAEb;;IAGA;IACA,MAAMmF,iBAAiB,GAAGb,YAAY,GAClC;MAAE,GAAGJ,SAAS;MAAE,GAAGC,WAAW;MAAE,GAAGE;IAAc,CAAC,GAClD;MACEe,QAAQ,EAAE,MAAM;MAChBX,SAAS,EAAEP,SAAS,CAACO,SAAS;MAC9B,GAAGN,WAAW;MACd,GAAGE;IACL,CAAC;IAIL,oBACElG,KAAA,CAAA8B,aAAA,CAAC7B,IAAI,EAAAsG,QAAA;MAACxE,KAAK,EAAEiF;IAAkB,GACzB,IAAI,CAACnB,KAAK,CAACnE,KAAK,CAACqC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC2C,oBAAoB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EACxEjG,qBAAqB,CAACD,uBAAuB,CAACmG,KAAK,EAAE,IAAI,CAACd,KAAK,CAACrE,KAAK,CAAC;MAC1EgF,aAAa,EAAE1B,UAAW;MAAC2B,aAAa,EAAC;IAAM,IAC7C,EAAAnB,iBAAA,OAAI,CAACO,KAAK,CAACnE,KAAK,cAAA4D,iBAAA,uBAAhBA,iBAAA,CAAkBvB,MAAM,MAAK,CAAC,IAAI,CAAC,IAAI,CAAC8B,KAAK,CAACnE,KAAK,CAAC,CAAC,CAAC,CAACmC,IAAI,IAAI,CAAC,IAAI,CAACgC,KAAK,CAACnE,KAAK,CAAC,CAAC,CAAC,CAACkC,IAAI,GAAI/C,QAAQ,CAAC,IAAI,CAACgF,KAAK,CAACrE,KAAK,CAACI,OAAO,CAAC,IAAA2D,kBAAA,GAAG,IAAI,CAACM,KAAK,CAACnE,KAAK,cAAA6D,kBAAA,uBAAhBA,kBAAA,CAAkBqB,GAAG,CAAC,CAACC,IAAI,EAAE1D,KAAK,KAAK;MACxK,MAAM+D,MAAM,GAAG,CAACtG,KAAK,CAACiG,IAAI,CAAChD,IAAI,CAAC;MAChC,oBACE7D,KAAA,CAAA8B,aAAA,CAAC7B,IAAI,EAAAsG,QAAA;QACHY,GAAG,EAAE,QAAQhE,KAAK,EAAG;QACrBpB,KAAK,EAAE,CACL,IAAI,CAACC,MAAM,CAACqB,IAAI,EAChB6D,MAAM,GAAG,IAAI,CAAClF,MAAM,CAAC6B,IAAI,CAACR,IAAI,GAAG,IAAI,EACrCwD,IAAI,CAACjD,IAAI,GAAG;UAAEwD,UAAU,EAAE;QAAM,CAAC,GAAG,IAAI,EACxC,IAAI,CAACvB,KAAK,CAACrE,KAAK,CAAC6F,OAAO,GAAG,IAAI,GAAG;UAAE3B,KAAK,EAAE;QAAM,CAAC;MAClD,GACE,IAAI,CAACgB,oBAAoB,CAACQ,MAAM,GAAG,QAAQ/D,KAAK,EAAE,GAAG,WAAWA,KAAK,EAAE,CAAC;QAC5EmE,UAAU,EAAE,IAAI,CAACtF,MAAM,CAACqB,IAAI,CAACgD,UAAU,KAAK,MAAO;QACnDkB,OAAO,EAAEA,CAAA,KAAM;UACb,IAAIV,IAAI,CAAChD,IAAI,EAAE;YACb,IAAIgD,IAAI,CAAChD,IAAI,CAAC2D,UAAU,CAAC,OAAO,CAAC,IAC5BX,IAAI,CAAChD,IAAI,CAAC2D,UAAU,CAAC,QAAQ,CAAC,IAC9BX,IAAI,CAAChD,IAAI,CAAC2D,UAAU,CAAC,GAAG,CAAC,EAAE;cAC9BtC,iBAAiB,CAACuC,OAAO,CAACZ,IAAI,CAAChD,IAAI,EAAE,QAAQ,CAAC;YAChD,CAAC,MAAM,IAAIgD,IAAI,CAAChD,IAAI,CAAC2D,UAAU,CAAC,aAAa,CAAC,EAAE;cAC9C,MAAME,SAAS,GAAGb,IAAI,CAAChD,IAAI,CAACP,SAAS,CAAC,EAAE,CAAC;cACzC,IAAI,CAACqE,mBAAmB,CAACD,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,CAACE,KAAK,CAAC,CAAC;YACzD;UACF;UACA,IAAI,CAACD,mBAAmB,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAACC,KAAK,CAAC,CAAC;QACvD;QACF;MAAA,IAEG/G,QAAQ,CAACgG,IAAI,CAACxD,IAAI,CACf,CAAC;IAEX,CAAC,CAAC,EACD,IAAI,CAACwC,KAAK,CAACrE,KAAK,CAACuF,QAAQ,IAAI,IAAI,CAAClF,WAAW,CAAC,CAC3C,CAAC;EAGX;EACAgG,YAAYA,CAACrG,KAAmB,EAAE;IAAA,IAAAsG,aAAA;IAChC,MAAMC,UAAU,GAAG,IAAI,CAACnF,KAAK,CAACoF,UAAU,CAAC;MAAE3E,IAAI,EAAE,IAAI,CAACrB,MAAM,CAACqB;IAAK,CAAC,EAAE,IAAI,CAACrB,MAAM,CAAC6B,IAAI,CAAC;IACtF,MAAM;MAAEuB,iBAAiB;MAAE6C,KAAK;MAAEC,GAAG;MAAEC,cAAc;MAACC;IAAW,CAAC,GAAGlH,mBAAmB,EAAA4G,aAAA,GAAE,IAAI,CAAC9F,MAAM,cAAA8F,aAAA,uBAAXA,aAAA,CAAazE,IAAI,CAACqC,KAAgB,CAAC;IAE7H,OAAO,CAAC9E,KAAK,CAACY,KAAK,CAACI,OAAO,CAAC,gBAC1B5B,KAAA,CAAA8B,aAAA,CAAChB,YAAY;MACXuH,cAAc,EAAE7G,KAAK,CAAC8G,SAAU;MAChCC,KAAK,EAAE/G,KAAK,CAACgH,cAAe;MAC5BzG,KAAK,EAAE,IAAI,CAACC,MAAM,CAACqC,IAAK;MACxBoE,QAAQ,EAAGC,KAAwB,IAAK,IAAI,CAACC,YAAY,CAACD,KAAK;IAAE,GAEhE,IAAI,CAACE,WAAW,eACjB5I,KAAA,CAAA8B,aAAA,CAACvB,yBAAyB,QACtB2E,iBAAoC,IAAK;MACzC,oBAAQlF,KAAA,CAAA8B,aAAA,CAACxB,QAAQ;QAACuI,MAAM,EAAE,IAAK;QAACC,kBAAkB,EAAE,IAAI,CAACjD,KAAK,CAACrE,KAAK,CAACuH;MAAmB,GACrF3D,iBAAiB,gBAAGpF,KAAA,CAAA8B,aAAA,CAACb,UAAU;QAC9B+H,WAAW,EAAE,IAAI,CAAC/D,sBAAsB,CAACC,iBAAiB,EAAE,KAAK,EAAEE,iBAAiB;MAAE,gBAEtFpF,KAAA,CAAA8B,aAAA,CAACd,cAAc;QAACiI,MAAM,EAAEd,cAAe;QAACF,KAAK,EAAEA,KAAM;QAACC,GAAG,EAAEA,GAAI;QAAEgB,SAAS,EAAEd,UAAU,CAACrE,MAAM,GAAG,CAAC,GAAGqE,UAAU,GAAG7E;MAAU,GACxH,IAAI,CAAC0B,sBAAsB,CAACC,iBAAiB,EAAE,IAAI,CACtC,CACN,CAAC,GAAG,IAAI,CAACD,sBAAsB,CAACC,iBAAiB,CACrD,CAAC;IACb,CACyB,CACf,CAAC,GACb,IAAI;EACV;AACF","ignoreList":[]}
|
@@ -15,6 +15,7 @@ export default class WmLabelProps extends BaseProps {
|
|
15
15
|
_defineProperty(this, "skeletonheight", null);
|
16
16
|
_defineProperty(this, "skeletonwidth", null);
|
17
17
|
_defineProperty(this, "multilineskeleton", false);
|
18
|
+
_defineProperty(this, "accessible", true);
|
18
19
|
_defineProperty(this, "accessibilitylabel", undefined);
|
19
20
|
_defineProperty(this, "hint", undefined);
|
20
21
|
_defineProperty(this, "accessibilityrole", 'text');
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["BaseProps","WmLabelProps","constructor","args","_defineProperty","undefined"],"sources":["label.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\nexport default class WmLabelProps extends BaseProps {\n animation?: string = null as any;\n animationdelay?: number = null as any;\n caption?: string = 'Label';\n required?: boolean = null as any;\n isValid?: boolean = true;\n wrap?: boolean = true;\n nooflines?: any = undefined;\n skeletonheight?: string = null as any;\n skeletonwidth?: string = null as any;\n multilineskeleton?: boolean = false;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = 'text';\n onTap?: Function = null as any;\n enableandroidellipsis?: boolean = false;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,YAAY,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBAC3B,IAAI;IAAAA,eAAA,yBACC,IAAI;IAAAA,eAAA,kBACX,OAAO;IAAAA,eAAA,mBACL,IAAI;IAAAA,eAAA,kBACL,IAAI;IAAAA,eAAA,eACP,IAAI;IAAAA,eAAA,oBACHC,SAAS;IAAAD,eAAA,yBACD,IAAI;IAAAA,eAAA,wBACL,IAAI;IAAAA,eAAA,4BACC,KAAK;IAAAA,eAAA,
|
1
|
+
{"version":3,"names":["BaseProps","WmLabelProps","constructor","args","_defineProperty","undefined"],"sources":["label.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\nexport default class WmLabelProps extends BaseProps {\n animation?: string = null as any;\n animationdelay?: number = null as any;\n caption?: string = 'Label';\n required?: boolean = null as any;\n isValid?: boolean = true;\n wrap?: boolean = true;\n nooflines?: any = undefined;\n skeletonheight?: string = null as any;\n skeletonwidth?: string = null as any;\n multilineskeleton?: boolean = false;\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = 'text';\n onTap?: Function = null as any;\n enableandroidellipsis?: boolean = false;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,YAAY,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBAC3B,IAAI;IAAAA,eAAA,yBACC,IAAI;IAAAA,eAAA,kBACX,OAAO;IAAAA,eAAA,mBACL,IAAI;IAAAA,eAAA,kBACL,IAAI;IAAAA,eAAA,eACP,IAAI;IAAAA,eAAA,oBACHC,SAAS;IAAAD,eAAA,yBACD,IAAI;IAAAA,eAAA,wBACL,IAAI;IAAAA,eAAA,4BACC,KAAK;IAAAA,eAAA,qBACZ,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA,4BACe,MAAM;IAAAA,eAAA,gBAC3B,IAAI;IAAAA,eAAA,gCACW,KAAK;EAAA;AAC3C","ignoreList":[]}
|