@wavemaker/app-rn-runtime 11.14.1-17.6420 → 11.14.1-17.6425
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/container/container.component.js +264 -11
- package/components/container/container.component.js.map +1 -1
- package/components/container/container.props.js +6 -0
- package/components/container/container.props.js.map +1 -1
- package/components/input/baseinput/baseinput.component.js +16 -4
- package/components/input/baseinput/baseinput.component.js.map +1 -1
- package/components/input/basenumber/basenumber.component.js +16 -4
- package/components/input/basenumber/basenumber.component.js.map +1 -1
- package/npm-shrinkwrap.json +731 -733
- package/package-lock.json +731 -733
- package/package.json +2 -2
|
@@ -16,6 +16,59 @@ import { SafeAreaInsetsContext } from 'react-native-safe-area-context';
|
|
|
16
16
|
import { StickyContainer } from '@wavemaker/app-rn-runtime/core/components/sticky-container.component';
|
|
17
17
|
import { getParentStyles } from '@wavemaker/app-rn-runtime/core/components/sticky-container.styles';
|
|
18
18
|
import injector from '@wavemaker/app-rn-runtime/core/injector';
|
|
19
|
+
// Alignment matrix for flex properties
|
|
20
|
+
const alignmentMatrixFixed = {
|
|
21
|
+
'top-left': {
|
|
22
|
+
justifyContent: 'flex-start',
|
|
23
|
+
alignItems: 'flex-start'
|
|
24
|
+
},
|
|
25
|
+
'top-center': {
|
|
26
|
+
justifyContent: 'center',
|
|
27
|
+
alignItems: 'flex-start'
|
|
28
|
+
},
|
|
29
|
+
'top-right': {
|
|
30
|
+
justifyContent: 'flex-end',
|
|
31
|
+
alignItems: 'flex-start'
|
|
32
|
+
},
|
|
33
|
+
'middle-left': {
|
|
34
|
+
justifyContent: 'flex-start',
|
|
35
|
+
alignItems: 'center'
|
|
36
|
+
},
|
|
37
|
+
'middle-center': {
|
|
38
|
+
justifyContent: 'center',
|
|
39
|
+
alignItems: 'center'
|
|
40
|
+
},
|
|
41
|
+
'middle-right': {
|
|
42
|
+
justifyContent: 'flex-end',
|
|
43
|
+
alignItems: 'center'
|
|
44
|
+
},
|
|
45
|
+
'bottom-left': {
|
|
46
|
+
justifyContent: 'flex-start',
|
|
47
|
+
alignItems: 'flex-end'
|
|
48
|
+
},
|
|
49
|
+
'bottom-center': {
|
|
50
|
+
justifyContent: 'center',
|
|
51
|
+
alignItems: 'flex-end'
|
|
52
|
+
},
|
|
53
|
+
'bottom-right': {
|
|
54
|
+
justifyContent: 'flex-end',
|
|
55
|
+
alignItems: 'flex-end'
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
const alignmentMatrixAuto = {
|
|
59
|
+
start: {
|
|
60
|
+
justifyContent: 'space-between',
|
|
61
|
+
alignItems: 'flex-start'
|
|
62
|
+
},
|
|
63
|
+
center: {
|
|
64
|
+
justifyContent: 'space-between',
|
|
65
|
+
alignItems: 'center'
|
|
66
|
+
},
|
|
67
|
+
end: {
|
|
68
|
+
justifyContent: 'space-between',
|
|
69
|
+
alignItems: 'flex-end'
|
|
70
|
+
}
|
|
71
|
+
};
|
|
19
72
|
export class WmContainerState extends PartialHostState {
|
|
20
73
|
constructor(...args) {
|
|
21
74
|
super(...args);
|
|
@@ -48,14 +101,181 @@ export default class WmContainer extends PartialHost {
|
|
|
48
101
|
getBackground() {
|
|
49
102
|
return this._showSkeleton ? null : this._background;
|
|
50
103
|
}
|
|
104
|
+
isAutoLayout() {
|
|
105
|
+
const {
|
|
106
|
+
direction,
|
|
107
|
+
wrap,
|
|
108
|
+
gap,
|
|
109
|
+
alignment,
|
|
110
|
+
columngap
|
|
111
|
+
} = this.props;
|
|
112
|
+
|
|
113
|
+
/* Check if any of the new layout props are provided. If not, return an empty
|
|
114
|
+
style object to maintain backward compatibility. */
|
|
115
|
+
const isAutoLayoutPresent = direction !== undefined || wrap !== undefined || gap !== undefined || alignment !== undefined || columngap !== undefined;
|
|
116
|
+
return isAutoLayoutPresent;
|
|
117
|
+
}
|
|
118
|
+
getDimensionStyle(direction, isInnerView = false) {
|
|
119
|
+
const baseStyle = this.styles.root || {};
|
|
120
|
+
const {
|
|
121
|
+
width,
|
|
122
|
+
height
|
|
123
|
+
} = baseStyle;
|
|
124
|
+
const dimensionStyle = {};
|
|
125
|
+
const isRow = direction === "row";
|
|
126
|
+
if (isInnerView) {
|
|
127
|
+
if (width && width !== 'hug') {
|
|
128
|
+
dimensionStyle.width = '100%';
|
|
129
|
+
}
|
|
130
|
+
if (height && height !== 'hug') {
|
|
131
|
+
dimensionStyle.height = '100%';
|
|
132
|
+
}
|
|
133
|
+
return dimensionStyle;
|
|
134
|
+
}
|
|
135
|
+
if (height === 'fill') {
|
|
136
|
+
var _this$props;
|
|
137
|
+
if (!((_this$props = this.props) !== null && _this$props !== void 0 && _this$props['parent-direction'])) {
|
|
138
|
+
dimensionStyle.height = '100%';
|
|
139
|
+
} else {
|
|
140
|
+
if (isRow) {
|
|
141
|
+
dimensionStyle.alignSelf = 'stretch';
|
|
142
|
+
} else {
|
|
143
|
+
dimensionStyle.flexGrow = 1;
|
|
144
|
+
}
|
|
145
|
+
dimensionStyle.height = undefined;
|
|
146
|
+
}
|
|
147
|
+
} else if (height === 'hug' || height === undefined) {
|
|
148
|
+
if (isRow) {
|
|
149
|
+
dimensionStyle.alignSelf = 'flex-start';
|
|
150
|
+
} else {
|
|
151
|
+
dimensionStyle.flexGrow = 0;
|
|
152
|
+
}
|
|
153
|
+
dimensionStyle.height = undefined;
|
|
154
|
+
} else if (height) {
|
|
155
|
+
const num = typeof height === 'string' && height.endsWith('%') ? height : parseFloat(height);
|
|
156
|
+
dimensionStyle.height = isNaN(num) ? height : num;
|
|
157
|
+
}
|
|
158
|
+
if (width === 'fill') {
|
|
159
|
+
if (isRow) {
|
|
160
|
+
dimensionStyle.flexGrow = 1;
|
|
161
|
+
dimensionStyle.flexShrink = 1;
|
|
162
|
+
dimensionStyle.minWidth = 0;
|
|
163
|
+
} else {
|
|
164
|
+
dimensionStyle.alignSelf = 'stretch';
|
|
165
|
+
}
|
|
166
|
+
dimensionStyle.width = undefined;
|
|
167
|
+
} else if (width === 'hug') {
|
|
168
|
+
if (isRow) {
|
|
169
|
+
dimensionStyle.flexGrow = 0;
|
|
170
|
+
} else {
|
|
171
|
+
dimensionStyle.alignSelf = 'flex-start';
|
|
172
|
+
}
|
|
173
|
+
dimensionStyle.width = undefined;
|
|
174
|
+
} else if (width === undefined) {
|
|
175
|
+
if (isRow) {
|
|
176
|
+
dimensionStyle.flexGrow = 0;
|
|
177
|
+
} else {
|
|
178
|
+
dimensionStyle.alignSelf = 'stretch';
|
|
179
|
+
}
|
|
180
|
+
dimensionStyle.width = undefined;
|
|
181
|
+
} else if (width) {
|
|
182
|
+
const num = typeof width === 'string' && width.endsWith('%') ? width : parseFloat(width);
|
|
183
|
+
dimensionStyle.width = isNaN(num) ? width : num;
|
|
184
|
+
}
|
|
185
|
+
return dimensionStyle;
|
|
186
|
+
}
|
|
187
|
+
getGapStyle() {
|
|
188
|
+
const {
|
|
189
|
+
direction,
|
|
190
|
+
wrap,
|
|
191
|
+
gap,
|
|
192
|
+
alignment,
|
|
193
|
+
columngap
|
|
194
|
+
} = this.props;
|
|
195
|
+
|
|
196
|
+
/* Check if any of the new layout props are provided. If not, return an empty
|
|
197
|
+
style object to maintain backward compatibility. */
|
|
198
|
+
const isAutoLayout = this.isAutoLayout();
|
|
199
|
+
if (!isAutoLayout) {
|
|
200
|
+
return {};
|
|
201
|
+
}
|
|
202
|
+
const finalGap = gap !== null && gap !== void 0 ? gap : 4;
|
|
203
|
+
const finalDirection = direction !== null && direction !== void 0 ? direction : 'row';
|
|
204
|
+
const finalAlignment = alignment !== null && alignment !== void 0 ? alignment : 'top-left';
|
|
205
|
+
const isAutoGap = finalGap === 'auto';
|
|
206
|
+
const isRow = finalDirection === 'row';
|
|
207
|
+
const layoutStyle = {};
|
|
208
|
+
if (isAutoGap) {
|
|
209
|
+
const alignConfig = alignmentMatrixAuto[finalAlignment] || alignmentMatrixAuto['start'];
|
|
210
|
+
layoutStyle.justifyContent = alignConfig.justifyContent;
|
|
211
|
+
layoutStyle.alignItems = alignConfig.alignItems;
|
|
212
|
+
} else {
|
|
213
|
+
if (isRow) {
|
|
214
|
+
// For a row, the main-axis gap (between items) is columnGap.
|
|
215
|
+
layoutStyle.columnGap = Number(finalGap);
|
|
216
|
+
} else {
|
|
217
|
+
// For a column, the main-axis gap (between items) is rowGap.
|
|
218
|
+
layoutStyle.rowGap = Number(finalGap);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
return layoutStyle;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
// Compute content layout (flexDirection, wrap, gap, justifyContent, alignItems).
|
|
225
|
+
getContentContainerStyle() {
|
|
226
|
+
const {
|
|
227
|
+
direction,
|
|
228
|
+
wrap,
|
|
229
|
+
gap,
|
|
230
|
+
alignment,
|
|
231
|
+
columngap
|
|
232
|
+
} = this.props;
|
|
233
|
+
|
|
234
|
+
/* Check if any of the new layout props are provided. If not, return an empty
|
|
235
|
+
style object to maintain backward compatibility. */
|
|
236
|
+
if (!this.isAutoLayout()) {
|
|
237
|
+
return {};
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
// Apply defaults only if the new layout system is active
|
|
241
|
+
const finalDirection = direction !== null && direction !== void 0 ? direction : 'row';
|
|
242
|
+
const finalWrap = wrap !== null && wrap !== void 0 ? wrap : false;
|
|
243
|
+
const finalGap = gap !== null && gap !== void 0 ? gap : 4;
|
|
244
|
+
const finalAlignment = alignment !== null && alignment !== void 0 ? alignment : 'top-left';
|
|
245
|
+
const isRow = finalDirection === 'row';
|
|
246
|
+
const isAutoGap = finalGap === 'auto';
|
|
247
|
+
const isWrap = finalWrap === 'true' || finalWrap === true;
|
|
248
|
+
const layoutStyle = {
|
|
249
|
+
// flexDirection: finalDirection,
|
|
250
|
+
flexWrap: isWrap && isRow ? 'wrap' : 'nowrap'
|
|
251
|
+
};
|
|
252
|
+
if (!isAutoGap) {
|
|
253
|
+
const alignConfig = alignmentMatrixFixed[finalAlignment] || alignmentMatrixFixed['top-left'];
|
|
254
|
+
layoutStyle.justifyContent = isRow ? alignConfig.justifyContent : alignConfig.alignItems;
|
|
255
|
+
layoutStyle.alignItems = isRow ? alignConfig.alignItems : alignConfig.justifyContent;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
// Add columnGap logic for wrapped rows
|
|
259
|
+
if (isWrap && isRow) {
|
|
260
|
+
if (columngap === 'auto') {
|
|
261
|
+
layoutStyle.alignContent = 'space-between';
|
|
262
|
+
} else if (columngap !== undefined) {
|
|
263
|
+
layoutStyle.rowGap = Number(columngap);
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
return {
|
|
267
|
+
...layoutStyle,
|
|
268
|
+
...this.getGapStyle()
|
|
269
|
+
};
|
|
270
|
+
}
|
|
51
271
|
renderSkeleton(props) {
|
|
52
272
|
if (!props.showskeletonchildren) {
|
|
53
|
-
var _this$
|
|
273
|
+
var _this$props2;
|
|
54
274
|
const dimensions = {
|
|
55
275
|
width: this.styles.root.width ? '100%' : undefined,
|
|
56
276
|
height: this.styles.root.height ? '100%' : undefined
|
|
57
277
|
};
|
|
58
|
-
const skeletonStyles = ((_this$
|
|
278
|
+
const skeletonStyles = ((_this$props2 = this.props) === null || _this$props2 === void 0 || (_this$props2 = _this$props2.styles) === null || _this$props2 === void 0 ? void 0 : _this$props2.skeleton) || {
|
|
59
279
|
root: {},
|
|
60
280
|
text: {}
|
|
61
281
|
};
|
|
@@ -99,36 +319,54 @@ export default class WmContainer extends PartialHost {
|
|
|
99
319
|
}
|
|
100
320
|
}
|
|
101
321
|
renderStickyContent(props, dimensions, styles) {
|
|
322
|
+
var _this$props3, _this$props5;
|
|
102
323
|
const {
|
|
103
324
|
stickyContainerVisibility
|
|
104
325
|
} = this.state;
|
|
105
326
|
const {
|
|
106
327
|
positioningStyles
|
|
107
328
|
} = getParentStyles(this);
|
|
329
|
+
const autoLayoutStyle = this.getContentContainerStyle();
|
|
330
|
+
const directionStyle = {};
|
|
331
|
+
if ((_this$props3 = this.props) !== null && _this$props3 !== void 0 && _this$props3.direction) {
|
|
332
|
+
var _this$props4;
|
|
333
|
+
directionStyle.flexDirection = (_this$props4 = this.props) === null || _this$props4 === void 0 ? void 0 : _this$props4.direction;
|
|
334
|
+
}
|
|
335
|
+
const autoLayoutDimensionsInner = this.getDimensionStyle((_this$props5 = this.props) === null || _this$props5 === void 0 ? void 0 : _this$props5.direction, true);
|
|
336
|
+
const isAutoLayout = this.isAutoLayout();
|
|
108
337
|
return /*#__PURE__*/React.createElement(React.Fragment, null, stickyContainerVisibility ? /*#__PURE__*/React.createElement(StickyContainer, {
|
|
109
338
|
component: this,
|
|
110
339
|
theme: this.theme,
|
|
111
340
|
style: [this.styles.sticky, {
|
|
112
341
|
backgroundColor: styles.backgroundColor
|
|
113
|
-
}],
|
|
342
|
+
}, isAutoLayout ? directionStyle : {}],
|
|
114
343
|
positionStyles: positioningStyles,
|
|
115
344
|
show: props.show
|
|
116
345
|
}, /*#__PURE__*/React.createElement(View, {
|
|
117
|
-
style: [dimensions, {
|
|
346
|
+
style: [isAutoLayout ? autoLayoutDimensionsInner : dimensions, {
|
|
118
347
|
backgroundColor: styles.backgroundColor
|
|
119
|
-
}, this.styles.content]
|
|
348
|
+
}, this.styles.content, isAutoLayout ? autoLayoutStyle : {}]
|
|
120
349
|
}, this.renderContent(props))) : /*#__PURE__*/React.createElement(React.Fragment, null), /*#__PURE__*/React.createElement(Animated.View, {
|
|
121
|
-
style: [dimensions, {
|
|
350
|
+
style: [isAutoLayout ? autoLayoutDimensionsInner : dimensions, {
|
|
122
351
|
opacity: this.stickyContainerOpacity
|
|
123
|
-
}, this.styles.content],
|
|
352
|
+
}, this.styles.content, isAutoLayout ? autoLayoutStyle : {}],
|
|
124
353
|
ref: this.containerRef
|
|
125
354
|
}, this.renderContent(props)));
|
|
126
355
|
}
|
|
127
356
|
renderWidget(props) {
|
|
357
|
+
var _this$props6, _this$props8, _this$props9;
|
|
358
|
+
const autoLayoutStyle = this.getContentContainerStyle();
|
|
359
|
+
const directionStyle = {};
|
|
360
|
+
if ((_this$props6 = this.props) !== null && _this$props6 !== void 0 && _this$props6.direction) {
|
|
361
|
+
var _this$props7;
|
|
362
|
+
directionStyle.flexDirection = (_this$props7 = this.props) === null || _this$props7 === void 0 ? void 0 : _this$props7.direction;
|
|
363
|
+
}
|
|
128
364
|
const dimensions = {
|
|
129
365
|
width: this.styles.root.width ? '100%' : undefined,
|
|
130
366
|
height: this.styles.root.height ? '100%' : undefined
|
|
131
367
|
};
|
|
368
|
+
const autoLayoutDimensions = this.getDimensionStyle((_this$props8 = this.props) === null || _this$props8 === void 0 ? void 0 : _this$props8.direction);
|
|
369
|
+
const autoLayoutDimensionsInner = this.getDimensionStyle((_this$props9 = this.props) === null || _this$props9 === void 0 ? void 0 : _this$props9.direction, true);
|
|
132
370
|
const styles = this._showSkeleton ? {
|
|
133
371
|
...this.styles.root,
|
|
134
372
|
...this.styles.skeleton.root
|
|
@@ -136,28 +374,43 @@ export default class WmContainer extends PartialHost {
|
|
|
136
374
|
if (props.sticky) {
|
|
137
375
|
this.isSticky = true;
|
|
138
376
|
}
|
|
377
|
+
const isAutoLayout = this.isAutoLayout();
|
|
139
378
|
return /*#__PURE__*/React.createElement(SafeAreaInsetsContext.Consumer, null, (insets = {
|
|
140
379
|
top: 0,
|
|
141
380
|
bottom: 0,
|
|
142
381
|
left: 0,
|
|
143
382
|
right: 0
|
|
144
383
|
}) => {
|
|
384
|
+
var _this$props0;
|
|
145
385
|
this.insets = insets;
|
|
146
386
|
return /*#__PURE__*/React.createElement(Animatedview, {
|
|
147
387
|
entryanimation: props.animation,
|
|
148
388
|
delay: props.animationdelay,
|
|
149
|
-
style: styles,
|
|
389
|
+
style: [styles, isAutoLayout ? {
|
|
390
|
+
...this.getDimensionStyle((_this$props0 = this.props) === null || _this$props0 === void 0 ? void 0 : _this$props0['parent-direction']),
|
|
391
|
+
...directionStyle
|
|
392
|
+
} : {}],
|
|
150
393
|
onLayout: (event, ref) => {
|
|
151
394
|
this.handleLayout(event, ref);
|
|
152
395
|
}
|
|
153
396
|
}, this.getBackground(), /*#__PURE__*/React.createElement(Tappable, _extends({}, this.getTestPropsForAction(), {
|
|
154
397
|
target: this,
|
|
155
|
-
styles:
|
|
398
|
+
styles: [isAutoLayout ? {
|
|
399
|
+
...autoLayoutDimensionsInner,
|
|
400
|
+
...directionStyle
|
|
401
|
+
} : dimensions],
|
|
156
402
|
disableTouchEffect: this.state.props.disabletoucheffect
|
|
157
403
|
}), props.sticky ? this.renderStickyContent(props, dimensions, styles) : !props.scrollable ? /*#__PURE__*/React.createElement(View, {
|
|
158
|
-
style: [dimensions, this.styles.content
|
|
404
|
+
style: [isAutoLayout ? autoLayoutDimensionsInner : dimensions, this.styles.content, isAutoLayout ? {
|
|
405
|
+
...directionStyle,
|
|
406
|
+
...autoLayoutStyle,
|
|
407
|
+
minWidth: 0
|
|
408
|
+
} : {}]
|
|
159
409
|
}, this.renderContent(props)) : /*#__PURE__*/React.createElement(ScrollView, {
|
|
160
|
-
style: [dimensions, this.styles.content
|
|
410
|
+
style: [isAutoLayout ? autoLayoutDimensionsInner : dimensions, this.styles.content, isAutoLayout ? {
|
|
411
|
+
...directionStyle,
|
|
412
|
+
...autoLayoutStyle
|
|
413
|
+
} : {}],
|
|
161
414
|
onScroll: event => this.notify('scroll', [event]),
|
|
162
415
|
scrollEventThrottle: 48
|
|
163
416
|
}, this.renderContent(props))));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Platform","Animated","WmContainerProps","DEFAULT_CLASS","Tappable","Animatedview","PartialHost","PartialHostState","createSkeleton","ScrollView","StickyWrapperContext","SafeAreaInsetsContext","StickyContainer","getParentStyles","injector","WmContainerState","constructor","args","_defineProperty","WmContainer","props","get","top","bottom","left","right","containerRef","createRef","stickyContainerOpacity","Value","subscribe","_event","sticky","setTimeout","getStickyHeaderTranslateY","getBackground","_showSkeleton","_background","renderSkeleton","showskeletonchildren","_this$props","dimensions","width","styles","root","undefined","height","skeletonStyles","skeleton","text","theme","createElement","style","opacity","_extends","getTestPropsForAction","target","disableTouchEffect","state","disabletoucheffect","content","renderContent","_this$appConfig","_this$containerRef","isEdgeToEdgeApp","appConfig","edgeToEdgeConfig","current","measure","_x","_y","_width","_height","px","py","_this$insets","topInsetsInYposition","OS","insets","context","stickyContainerTranslateY","value","updateState","stickyContainerVisibility","componentDidUpdate","_prevProps","prevState","timing","toValue","delay","useNativeDriver","start","renderStickyContent","positioningStyles","Fragment","component","backgroundColor","positionStyles","show","ref","renderWidget","isSticky","Consumer","entryanimation","animation","animationdelay","onLayout","event","handleLayout","scrollable","onScroll","notify","scrollEventThrottle"],"sources":["container.component.tsx"],"sourcesContent":["import React from 'react';\nimport { LayoutChangeEvent, View, ViewStyle, Platform, Animated } from 'react-native';\nimport WmContainerProps from './container.props';\nimport { DEFAULT_CLASS, WmContainerStyles } from './container.styles';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport { PartialHost, PartialHostState } from './partial-host.component';\nimport { createSkeleton } from '../basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '../basic/skeleton/skeleton.styles';\nimport { ScrollView } from 'react-native-gesture-handler';\nimport { StickyWrapperContextType, StickyWrapperContext } from '@wavemaker/app-rn-runtime/core/sticky-wrapper';\nimport { EdgeInsets, SafeAreaInsetsContext } from 'react-native-safe-area-context';\nimport { StickyContainer } from '@wavemaker/app-rn-runtime/core/components/sticky-container.component';\nimport { getParentStyles } from '@wavemaker/app-rn-runtime/core/components/sticky-container.styles';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\n\nexport class WmContainerState extends PartialHostState<WmContainerProps> {\n isPartialLoaded = false;\n stickyContainerVisibility = false;\n}\n\nexport default class WmContainer extends PartialHost<WmContainerProps, WmContainerState, WmContainerStyles> {\n static contextType = StickyWrapperContext;\n private containerRef: React.RefObject<View | null>;\n private stickyContainerOpacity: Animated.Value;\n private appConfig = injector.get<AppConfig>('APP_CONFIG');\n insets: EdgeInsets | null = {\n top: 0, bottom: 0, left: 0, right: 0\n };\n\n constructor(props: WmContainerProps) {\n super(props, DEFAULT_CLASS, new WmContainerProps(), new WmContainerState());\n this.containerRef = React.createRef();\n this.stickyContainerOpacity = new Animated.Value(1);\n\n this.subscribe('updateStickyHeaders', (_event: any) => {\n if(this.props.sticky){\n setTimeout(()=>{\n this.getStickyHeaderTranslateY();\n }, 500);\n }\n })\n }\n\n getBackground(): React.JSX.Element | null {\n return this._showSkeleton ? null : this._background\n } \n \n public renderSkeleton(props: WmContainerProps): React.ReactNode {\n if(!props.showskeletonchildren) {\n const dimensions = {\n width: this.styles.root.width ? '100%' : undefined,\n height: this.styles.root.height ? '100%' : undefined\n }; \n const skeletonStyles: WmSkeletonStyles = this.props?.styles?.skeleton || { root: {}, text: {} } as WmSkeletonStyles\n return createSkeleton(this.theme, skeletonStyles, {\n ...this.styles.root\n }, (<View style={[this.styles.root, { opacity: 0 }]}>\n <Tappable {...this.getTestPropsForAction()} target={this} styles={dimensions} disableTouchEffect={this.state.props.disabletoucheffect}>\n <View style={[dimensions as ViewStyle, this.styles.content]}>{this.renderContent(props)}</View>\n </Tappable>\n\n </View>))\n }\n return null;\n }\n\n public getStickyHeaderTranslateY(){\n const isEdgeToEdgeApp = !!this.appConfig?.edgeToEdgeConfig?.isEdgeToEdgeApp;\n this.containerRef?.current?.measure((_x = 0, _y = 0, _width = 0, _height = 0, px = 0, py = 0)=>{\n const topInsetsInYposition = (Platform.OS == 'ios' && !isEdgeToEdgeApp) ? (this.insets?.top || 0): 0\n if((this.context) && (this.context as StickyWrapperContextType).stickyContainerTranslateY) {\n (this.context as StickyWrapperContextType).stickyContainerTranslateY.value = py - topInsetsInYposition ;\n this.updateState({ stickyContainerVisibility: true} as WmContainerState); \n }\n })\n }\n\n componentDidUpdate(_prevProps: any, prevState: any) {\n if (prevState.stickyContainerVisibility !== this.state.stickyContainerVisibility) {\n Animated.timing(this.stickyContainerOpacity, {\n toValue: this.state.stickyContainerVisibility ? 0 : 1,\n delay: 500,\n useNativeDriver: true\n }).start();\n }\n }\n\n private renderStickyContent(props: WmContainerProps, dimensions: ViewStyle, styles: ViewStyle) {\n const { stickyContainerVisibility } = this.state;\n const { positioningStyles } = getParentStyles(this);\n\n return (\n <>\n {stickyContainerVisibility ? (\n <StickyContainer\n component={this}\n theme={this.theme}\n style={[\n this.styles.sticky,\n { backgroundColor: styles.backgroundColor }\n ]}\n positionStyles={positioningStyles}\n show={props.show as boolean}\n >\n <View style={[dimensions as ViewStyle, { backgroundColor: styles.backgroundColor }, this.styles.content]}>\n {this.renderContent(props)}\n </View>\n </StickyContainer>\n ) : <></>}\n <Animated.View \n style={[\n dimensions as ViewStyle, \n { opacity: this.stickyContainerOpacity }, \n this.styles.content\n ]} \n ref={this.containerRef}\n >\n {this.renderContent(props)}\n </Animated.View>\n </>\n );\n }\n\n renderWidget(props: WmContainerProps) {\n const dimensions: ViewStyle = {\n width: this.styles.root.width ? '100%' : undefined,\n height: this.styles.root.height ? '100%' : undefined\n };\n\n const styles = this._showSkeleton ? {\n ...this.styles.root,\n ...this.styles.skeleton.root\n } : this.styles.root;\n\n if (props.sticky) {\n this.isSticky = true;\n }\n return (\n <SafeAreaInsetsContext.Consumer>\n {(insets = { top: 0, bottom: 0, left: 0, right: 0 }) => {\n this.insets = insets;\n return (\n <Animatedview \n entryanimation={props.animation} \n delay={props.animationdelay} \n style={styles}\n onLayout={(event: LayoutChangeEvent, ref: React.RefObject<View>) => {\n this.handleLayout(event, ref);\n }}\n >\n {this.getBackground()}\n <Tappable \n {...this.getTestPropsForAction()} \n target={this} \n styles={dimensions} \n disableTouchEffect={this.state.props.disabletoucheffect}\n >\n {props.sticky ? (\n this.renderStickyContent(props, dimensions, styles)\n ) : !props.scrollable ? (\n <View style={[dimensions as ViewStyle, this.styles.content]}>\n {this.renderContent(props)}\n </View>\n ) : (\n <ScrollView \n style={[dimensions as ViewStyle, this.styles.content]}\n onScroll={(event) => this.notify('scroll', [event])}\n scrollEventThrottle={48}\n >\n {this.renderContent(props)}\n </ScrollView>\n )}\n </Tappable>\n </Animatedview>\n );\n }}\n </SafeAreaInsetsContext.Consumer>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","View","Platform","Animated","WmContainerProps","DEFAULT_CLASS","Tappable","Animatedview","PartialHost","PartialHostState","createSkeleton","ScrollView","StickyWrapperContext","SafeAreaInsetsContext","StickyContainer","getParentStyles","injector","alignmentMatrixFixed","justifyContent","alignItems","alignmentMatrixAuto","start","center","end","WmContainerState","constructor","args","_defineProperty","WmContainer","props","get","top","bottom","left","right","containerRef","createRef","stickyContainerOpacity","Value","subscribe","_event","sticky","setTimeout","getStickyHeaderTranslateY","getBackground","_showSkeleton","_background","isAutoLayout","direction","wrap","gap","alignment","columngap","isAutoLayoutPresent","undefined","getDimensionStyle","isInnerView","baseStyle","styles","root","width","height","dimensionStyle","isRow","_this$props","alignSelf","flexGrow","num","endsWith","parseFloat","isNaN","flexShrink","minWidth","getGapStyle","finalGap","finalDirection","finalAlignment","isAutoGap","layoutStyle","alignConfig","columnGap","Number","rowGap","getContentContainerStyle","finalWrap","isWrap","flexWrap","alignContent","renderSkeleton","showskeletonchildren","_this$props2","dimensions","skeletonStyles","skeleton","text","theme","createElement","style","opacity","_extends","getTestPropsForAction","target","disableTouchEffect","state","disabletoucheffect","content","renderContent","_this$appConfig","_this$containerRef","isEdgeToEdgeApp","appConfig","edgeToEdgeConfig","current","measure","_x","_y","_width","_height","px","py","_this$insets","topInsetsInYposition","OS","insets","context","stickyContainerTranslateY","value","updateState","stickyContainerVisibility","componentDidUpdate","_prevProps","prevState","timing","toValue","delay","useNativeDriver","renderStickyContent","_this$props3","_this$props5","positioningStyles","autoLayoutStyle","directionStyle","_this$props4","flexDirection","autoLayoutDimensionsInner","Fragment","component","backgroundColor","positionStyles","show","ref","renderWidget","_this$props6","_this$props8","_this$props9","_this$props7","autoLayoutDimensions","isSticky","Consumer","_this$props0","entryanimation","animation","animationdelay","onLayout","event","handleLayout","scrollable","onScroll","notify","scrollEventThrottle"],"sources":["container.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, LayoutChangeEvent, StyleProp, View, ViewStyle, Platform, Animated } from 'react-native';\nimport WmContainerProps from './container.props';\nimport { DEFAULT_CLASS, WmContainerStyles } from './container.styles';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport { PartialHost, PartialHostState } from './partial-host.component';\nimport { createSkeleton } from '../basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '../basic/skeleton/skeleton.styles';\nimport { ScrollView } from 'react-native-gesture-handler';\nimport { StickyWrapperContextType, StickyWrapperContext } from '@wavemaker/app-rn-runtime/core/sticky-wrapper';\nimport { EdgeInsets, SafeAreaInsetsContext } from 'react-native-safe-area-context';\nimport { StickyContainer } from '@wavemaker/app-rn-runtime/core/components/sticky-container.component';\nimport { getParentStyles } from '@wavemaker/app-rn-runtime/core/components/sticky-container.styles';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\n\n// Alignment matrix for flex properties\nconst alignmentMatrixFixed: Record<\n string,\n { justifyContent: string; alignItems: string }\n> = {\n 'top-left': { justifyContent: 'flex-start', alignItems: 'flex-start' },\n 'top-center': { justifyContent: 'center', alignItems: 'flex-start' },\n 'top-right': { justifyContent: 'flex-end', alignItems: 'flex-start' },\n 'middle-left': { justifyContent: 'flex-start', alignItems: 'center' },\n 'middle-center': { justifyContent: 'center', alignItems: 'center' },\n 'middle-right': { justifyContent: 'flex-end', alignItems: 'center' },\n 'bottom-left': { justifyContent: 'flex-start', alignItems: 'flex-end' },\n 'bottom-center': { justifyContent: 'center', alignItems: 'flex-end' },\n 'bottom-right': { justifyContent: 'flex-end', alignItems: 'flex-end' },\n};\n\nconst alignmentMatrixAuto: Record<\n string,\n { justifyContent: string; alignItems: string }\n> = {\n start: { justifyContent: 'space-between', alignItems: 'flex-start' },\n center: { justifyContent: 'space-between', alignItems: 'center' },\n end: { justifyContent: 'space-between', alignItems: 'flex-end' },\n};\n\nexport class WmContainerState extends PartialHostState<WmContainerProps> {\n isPartialLoaded = false;\n stickyContainerVisibility = false;\n}\n\nexport default class WmContainer extends PartialHost<WmContainerProps, WmContainerState, WmContainerStyles> {\n static contextType = StickyWrapperContext;\n private containerRef: React.RefObject<View | null>;\n private stickyContainerOpacity: Animated.Value;\n private appConfig = injector.get<AppConfig>('APP_CONFIG');\n insets: EdgeInsets | null = {\n top: 0, bottom: 0, left: 0, right: 0\n };\n\n constructor(props: WmContainerProps) {\n super(props, DEFAULT_CLASS, new WmContainerProps(), new WmContainerState());\n this.containerRef = React.createRef();\n this.stickyContainerOpacity = new Animated.Value(1);\n\n this.subscribe('updateStickyHeaders', (_event: any) => {\n if(this.props.sticky){\n setTimeout(()=>{\n this.getStickyHeaderTranslateY();\n }, 500);\n }\n })\n }\n\n getBackground(): React.JSX.Element | null {\n return this._showSkeleton ? null : this._background\n }\n\n private isAutoLayout() {\n const { direction, wrap, gap, alignment, columngap } = this.props;\n\n /* Check if any of the new layout props are provided. If not, return an empty\n style object to maintain backward compatibility. */\n const isAutoLayoutPresent = \n direction !== undefined || \n wrap !== undefined || \n gap !== undefined || \n alignment !== undefined ||\n columngap !== undefined;\n\n return isAutoLayoutPresent;\n }\n\n private getDimensionStyle(direction?: string, isInnerView: boolean = false): ViewStyle {\n const baseStyle = this.styles.root || {};\n const { width, height }: any = baseStyle;\n const dimensionStyle: ViewStyle = {};\n const isRow = direction === \"row\";\n\n if (isInnerView) {\n if (width && width !== 'hug') {\n dimensionStyle.width = '100%';\n }\n\n if (height && height !== 'hug') {\n dimensionStyle.height = '100%';\n }\n return dimensionStyle;\n }\n\n if (height === 'fill') {\n if(!this.props?.['parent-direction']) {\n dimensionStyle.height = '100%';\n } else {\n if (isRow) {\n dimensionStyle.alignSelf = 'stretch'; \n } else {\n dimensionStyle.flexGrow = 1; \n }\n dimensionStyle.height = undefined;\n }\n } \n else if (height === 'hug' || height === undefined) {\n if (isRow) {\n dimensionStyle.alignSelf = 'flex-start'; \n } else {\n dimensionStyle.flexGrow = 0; \n }\n dimensionStyle.height = undefined;\n }\n else if (height) {\n const num = (typeof height === 'string' && height.endsWith('%')) ? height : parseFloat(height);\n dimensionStyle.height = (isNaN(num as number) ? height : num) as DimensionValue;\n }\n\n if (width === 'fill') {\n if (isRow) {\n dimensionStyle.flexGrow = 1;\n dimensionStyle.flexShrink = 1;\n dimensionStyle.minWidth = 0;\n } else {\n dimensionStyle.alignSelf = 'stretch'; \n }\n dimensionStyle.width = undefined;\n } \n else if (width === 'hug') {\n if (isRow) {\n dimensionStyle.flexGrow = 0; \n } else {\n dimensionStyle.alignSelf = 'flex-start'; \n }\n dimensionStyle.width = undefined;\n }\n else if (width === undefined) {\n if (isRow) {\n dimensionStyle.flexGrow = 0; \n } else {\n dimensionStyle.alignSelf = 'stretch'; \n }\n dimensionStyle.width = undefined;\n }\n else if (width) {\n const num = (typeof width === 'string' && width.endsWith('%')) ? width : parseFloat(width);\n dimensionStyle.width = (isNaN(num as number) ? width : num) as DimensionValue;\n }\n\n return dimensionStyle;\n }\n\n private getGapStyle(): ViewStyle {\n const { direction, wrap, gap, alignment, columngap } = this.props;\n\n /* Check if any of the new layout props are provided. If not, return an empty\n style object to maintain backward compatibility. */\n const isAutoLayout = this.isAutoLayout();\n\n if (!isAutoLayout) {\n return {};\n }\n const finalGap = gap ?? 4;\n const finalDirection = direction ?? 'row';\n const finalAlignment = alignment ?? 'top-left';\n\n const isAutoGap = finalGap === 'auto';\n const isRow = finalDirection === 'row';\n\n const layoutStyle: ViewStyle = {};\n\n if (isAutoGap) {\n const alignConfig = alignmentMatrixAuto[finalAlignment] || alignmentMatrixAuto['start'];\n layoutStyle.justifyContent = alignConfig.justifyContent as ViewStyle['justifyContent'];\n layoutStyle.alignItems = alignConfig.alignItems as ViewStyle['alignItems'];\n } else {\n if (isRow) {\n // For a row, the main-axis gap (between items) is columnGap.\n layoutStyle.columnGap = Number(finalGap);\n } else {\n // For a column, the main-axis gap (between items) is rowGap.\n layoutStyle.rowGap = Number(finalGap);\n }\n }\n\n return layoutStyle;\n }\n\n // Compute content layout (flexDirection, wrap, gap, justifyContent, alignItems).\n private getContentContainerStyle(): ViewStyle {\n const { direction, wrap, gap, alignment, columngap } = this.props;\n\n /* Check if any of the new layout props are provided. If not, return an empty\n style object to maintain backward compatibility. */\n if (!this.isAutoLayout()) {\n return {};\n }\n\n // Apply defaults only if the new layout system is active\n const finalDirection = direction ?? 'row';\n const finalWrap = wrap ?? false;\n const finalGap = gap ?? 4;\n const finalAlignment = alignment ?? 'top-left';\n\n const isRow = finalDirection === 'row';\n const isAutoGap = finalGap === 'auto';\n const isWrap = finalWrap === 'true' || finalWrap === true;\n\n const layoutStyle: ViewStyle = {\n // flexDirection: finalDirection,\n flexWrap: isWrap && isRow ? 'wrap' : 'nowrap',\n };\n\n if (!isAutoGap) {\n const alignConfig =\n alignmentMatrixFixed[finalAlignment] || alignmentMatrixFixed['top-left'];\n\n layoutStyle.justifyContent = (\n isRow ? alignConfig.justifyContent : alignConfig.alignItems\n ) as ViewStyle['justifyContent'];\n layoutStyle.alignItems = (\n isRow ? alignConfig.alignItems : alignConfig.justifyContent\n ) as ViewStyle['alignItems'];\n }\n\n // Add columnGap logic for wrapped rows\n if (isWrap && isRow) {\n if (columngap === 'auto') {\n layoutStyle.alignContent = 'space-between';\n } else if (columngap !== undefined) {\n layoutStyle.rowGap = Number(columngap);\n }\n }\n\n return {\n ...layoutStyle,\n ...this.getGapStyle()\n };\n }\n \n public renderSkeleton(props: WmContainerProps): React.ReactNode {\n if(!props.showskeletonchildren) {\n const dimensions = {\n width: this.styles.root.width ? '100%' : undefined,\n height: this.styles.root.height ? '100%' : undefined\n }; \n const skeletonStyles: WmSkeletonStyles = this.props?.styles?.skeleton || { root: {}, text: {} } as WmSkeletonStyles\n return createSkeleton(this.theme, skeletonStyles, {\n ...this.styles.root\n }, (<View style={[this.styles.root, { opacity: 0 }]}>\n <Tappable {...this.getTestPropsForAction()} target={this} styles={dimensions} disableTouchEffect={this.state.props.disabletoucheffect}>\n <View style={[dimensions as ViewStyle, this.styles.content]}>{this.renderContent(props)}</View>\n </Tappable>\n\n </View>))\n }\n return null;\n }\n\n public getStickyHeaderTranslateY(){\n const isEdgeToEdgeApp = !!this.appConfig?.edgeToEdgeConfig?.isEdgeToEdgeApp;\n this.containerRef?.current?.measure((_x = 0, _y = 0, _width = 0, _height = 0, px = 0, py = 0)=>{\n const topInsetsInYposition = (Platform.OS == 'ios' && !isEdgeToEdgeApp) ? (this.insets?.top || 0): 0\n if((this.context) && (this.context as StickyWrapperContextType).stickyContainerTranslateY) {\n (this.context as StickyWrapperContextType).stickyContainerTranslateY.value = py - topInsetsInYposition ;\n this.updateState({ stickyContainerVisibility: true} as WmContainerState); \n }\n })\n }\n\n componentDidUpdate(_prevProps: any, prevState: any) {\n if (prevState.stickyContainerVisibility !== this.state.stickyContainerVisibility) {\n Animated.timing(this.stickyContainerOpacity, {\n toValue: this.state.stickyContainerVisibility ? 0 : 1,\n delay: 500,\n useNativeDriver: true\n }).start();\n }\n }\n\n private renderStickyContent(props: WmContainerProps, dimensions: ViewStyle, styles: ViewStyle) {\n const { stickyContainerVisibility } = this.state;\n const { positioningStyles } = getParentStyles(this);\n const autoLayoutStyle = this.getContentContainerStyle();\n const directionStyle: ViewStyle= {};\n if(this.props?.direction) {\n directionStyle.flexDirection = this.props?.direction;\n }\n const autoLayoutDimensionsInner = this.getDimensionStyle(this.props?.direction, true);\n const isAutoLayout = this.isAutoLayout();\n\n return (\n <>\n {stickyContainerVisibility ? (\n <StickyContainer\n component={this}\n theme={this.theme}\n style={[\n this.styles.sticky,\n { backgroundColor: styles.backgroundColor },\n isAutoLayout ? directionStyle : {}\n ]}\n positionStyles={positioningStyles}\n show={props.show as boolean}\n >\n <View style={[isAutoLayout ? autoLayoutDimensionsInner : dimensions as ViewStyle, { backgroundColor: styles.backgroundColor }, this.styles.content, isAutoLayout ? autoLayoutStyle : {}]}>\n {this.renderContent(props)}\n </View>\n </StickyContainer>\n ) : <></>}\n <Animated.View \n style={[\n isAutoLayout ? autoLayoutDimensionsInner : dimensions as ViewStyle, \n { opacity: this.stickyContainerOpacity }, \n this.styles.content,\n isAutoLayout ? autoLayoutStyle : {}\n ]} \n ref={this.containerRef}\n >\n {this.renderContent(props)}\n </Animated.View>\n </>\n );\n }\n\n renderWidget(props: WmContainerProps) {\n const autoLayoutStyle = this.getContentContainerStyle();\n const directionStyle: ViewStyle= {};\n if(this.props?.direction) {\n directionStyle.flexDirection = this.props?.direction;\n }\n\n const dimensions: ViewStyle = {\n width: this.styles.root.width ? '100%' : undefined,\n height: this.styles.root.height ? '100%' : undefined\n };\n\n const autoLayoutDimensions = this.getDimensionStyle(this.props?.direction);\n const autoLayoutDimensionsInner = this.getDimensionStyle(this.props?.direction, true);\n\n const styles = this._showSkeleton ? {\n ...this.styles.root,\n ...this.styles.skeleton.root\n } : this.styles.root;\n\n if (props.sticky) {\n this.isSticky = true;\n }\n\n const isAutoLayout = this.isAutoLayout();\n return (\n <SafeAreaInsetsContext.Consumer>\n {(insets = { top: 0, bottom: 0, left: 0, right: 0 }) => {\n this.insets = insets;\n return (\n <Animatedview \n entryanimation={props.animation} \n delay={props.animationdelay} \n style={[styles, isAutoLayout ? {...this.getDimensionStyle(this.props?.['parent-direction']), ...directionStyle} : {}]}\n onLayout={(event: LayoutChangeEvent, ref: React.RefObject<View>) => {\n this.handleLayout(event, ref);\n }}\n >\n {this.getBackground()}\n <Tappable \n {...this.getTestPropsForAction()} \n target={this} \n styles={[isAutoLayout ? { ...autoLayoutDimensionsInner, ...directionStyle } : dimensions]} \n disableTouchEffect={this.state.props.disabletoucheffect}\n >\n {props.sticky ? (\n this.renderStickyContent(props, dimensions, styles)\n ) : !props.scrollable ? (\n <View style={[\n isAutoLayout ? autoLayoutDimensionsInner : dimensions, \n this.styles.content,\n isAutoLayout ? { ...directionStyle, ...autoLayoutStyle, minWidth: 0 } : {},\n ]}>\n {this.renderContent(props)}\n </View>\n ) : (\n <ScrollView \n style={[isAutoLayout ? autoLayoutDimensionsInner : dimensions as ViewStyle,\n this.styles.content,\n isAutoLayout ? {...directionStyle, ...autoLayoutStyle } : {} ]}\n onScroll={(event) => this.notify('scroll', [event])}\n scrollEventThrottle={48}\n >\n {this.renderContent(props)}\n </ScrollView>\n )}\n </Tappable>\n </Animatedview>\n );\n }}\n </SafeAreaInsetsContext.Consumer>\n );\n }\n}"],"mappings":"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","ignoreList":[]}
|
|
@@ -12,6 +12,12 @@ export default class WmContainerProps extends PartialHostProps {
|
|
|
12
12
|
_defineProperty(this, "sticky", false);
|
|
13
13
|
_defineProperty(this, "stickyContainerVisibility", false);
|
|
14
14
|
_defineProperty(this, "stickyContainerOpacity", void 0);
|
|
15
|
+
_defineProperty(this, "direction", void 0);
|
|
16
|
+
_defineProperty(this, "wrap", void 0);
|
|
17
|
+
_defineProperty(this, "alignment", void 0);
|
|
18
|
+
_defineProperty(this, "gap", void 0);
|
|
19
|
+
_defineProperty(this, "columngap", void 0);
|
|
20
|
+
_defineProperty(this, "parent-direction", void 0);
|
|
15
21
|
}
|
|
16
22
|
}
|
|
17
23
|
//# sourceMappingURL=container.props.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PartialHostProps","WmContainerProps","constructor","args","_defineProperty"],"sources":["container.props.ts"],"sourcesContent":["import { PartialHostProps } from './partial-host.component';\nimport { Animated } from 'react-native';\n\nexport default class WmContainerProps extends PartialHostProps {\n animation?: string = null as any;\n animationdelay?: number = null as any;\n onLoad?: Function;\n scrollable?: Boolean = false as any;\n sticky?: Boolean = false as boolean;\n stickyContainerVisibility?: Boolean = false;\n stickyContainerOpacity?: Animated.Value;\n
|
|
1
|
+
{"version":3,"names":["PartialHostProps","WmContainerProps","constructor","args","_defineProperty"],"sources":["container.props.ts"],"sourcesContent":["import { PartialHostProps } from './partial-host.component';\nimport { Animated } from 'react-native';\n\nexport default class WmContainerProps extends PartialHostProps {\n animation?: string = null as any;\n animationdelay?: number = null as any;\n onLoad?: Function;\n scrollable?: Boolean = false as any;\n sticky?: Boolean = false as boolean;\n stickyContainerVisibility?: Boolean = false;\n stickyContainerOpacity?: Animated.Value;\n direction?: 'row' | 'column';\n wrap?: boolean | string;\n alignment?: string;\n gap?: number | string | 'auto';\n columngap?: number | string | 'auto';\n \"parent-direction\"?: string;\n}"],"mappings":";;;AAAA,SAASA,gBAAgB,QAAQ,0BAA0B;AAG3D,eAAe,MAAMC,gBAAgB,SAASD,gBAAgB,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBACxC,IAAI;IAAAA,eAAA,yBACC,IAAI;IAAAA,eAAA;IAAAA,eAAA,qBAEP,KAAK;IAAAA,eAAA,iBACT,KAAK;IAAAA,eAAA,oCACc,KAAK;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,OAO3C,kBAAkB;EAAA;AACpB","ignoreList":[]}
|
|
@@ -26,6 +26,7 @@ export class BaseInputComponent extends BaseComponent {
|
|
|
26
26
|
_defineProperty(this, "isTouched", false);
|
|
27
27
|
_defineProperty(this, "cursor", 0);
|
|
28
28
|
_defineProperty(this, "timer", null);
|
|
29
|
+
_defineProperty(this, "_submitEditingTriggered", false);
|
|
29
30
|
_defineProperty(this, "charlength", 0);
|
|
30
31
|
}
|
|
31
32
|
focus() {
|
|
@@ -165,10 +166,12 @@ export class BaseInputComponent extends BaseComponent {
|
|
|
165
166
|
this.props.triggerValidation && this.props.triggerValidation();
|
|
166
167
|
}, 10);
|
|
167
168
|
}
|
|
169
|
+
const skipBlurCallback = this._submitEditingTriggered;
|
|
170
|
+
this._submitEditingTriggered = false;
|
|
168
171
|
if (this.state.props.updateon === 'blur' || this.state.props.updateon === 'default') {
|
|
169
172
|
if (oldVal !== newVal && this.state.props.updateon === 'blur') {
|
|
170
|
-
this.updateDatavalue(newVal, event, 'blur');
|
|
171
|
-
} else {
|
|
173
|
+
this.updateDatavalue(newVal, event, skipBlurCallback ? undefined : 'blur');
|
|
174
|
+
} else if (!skipBlurCallback) {
|
|
172
175
|
this.invokeEventCallback('onBlur', [event, this.proxy]);
|
|
173
176
|
}
|
|
174
177
|
this.setState({
|
|
@@ -197,10 +200,19 @@ export class BaseInputComponent extends BaseComponent {
|
|
|
197
200
|
});
|
|
198
201
|
}
|
|
199
202
|
onKeyPress(event) {
|
|
200
|
-
|
|
203
|
+
var _event$persist, _event$nativeEvent;
|
|
204
|
+
event === null || event === void 0 || (_event$persist = event.persist) === null || _event$persist === void 0 || _event$persist.call(event);
|
|
205
|
+
const key = (_event$nativeEvent = event.nativeEvent) === null || _event$nativeEvent === void 0 ? void 0 : _event$nativeEvent.key;
|
|
206
|
+
this.invokeEventCallback('onKeypress', [event, this.proxy, key]);
|
|
201
207
|
}
|
|
202
208
|
onSubmitEditing(event) {
|
|
203
|
-
|
|
209
|
+
var _event$persist2;
|
|
210
|
+
event === null || event === void 0 || (_event$persist2 = event.persist) === null || _event$persist2 === void 0 || _event$persist2.call(event);
|
|
211
|
+
this._submitEditingTriggered = true;
|
|
212
|
+
this.updateDatavalue(this.state.textValue, null);
|
|
213
|
+
setTimeout(() => {
|
|
214
|
+
this.invokeEventCallback('onSubmitediting', [event, this.proxy]);
|
|
215
|
+
}, 100);
|
|
204
216
|
}
|
|
205
217
|
}
|
|
206
218
|
//# sourceMappingURL=baseinput.component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DEFAULT_CLASS","BaseComponent","BaseComponentState","isString","Platform","validateField","Injector","BaseInputState","constructor","args","_defineProperty","BaseInputComponent","props","defaultClass","defaultProps","defaultState","focus","_this$widgetRef","widgetRef","blur","_this$widgetRef2","_this$widgetRef3","onPropertyChange","name","$new","$old","keyboardType","type","updateState","textValue","isDefault","state","isdefault","skipscripteventtrigger","onFieldChange","bind","onChange","event","updateon","updateDatavalue","target","value","timer","clearTimeout","setTimeout","onChangeText","charlength","length","validate","invokeChange","e","OS","cursor","selectionStart","setState","source","oldValue","datavalue","autotrim","trim","Promise","resolve","hastwowaybinding","setProp","then","invokeEventCallback","proxy","onBlur","FOCUSED_ELEMENT","remove","isTouched","newVal","oldVal","undefined","triggerValidation","isInputFocused","validationObj","isValid","errorType","onFocus","_this$closestTappable","set","closestTappable","triggerTap","onKeyPress","onSubmitEditing"],"sources":["baseinput.component.ts"],"sourcesContent":["import { DEFAULT_CLASS } from '@wavemaker/app-rn-runtime/components/navigation/basenav/basenav.styles';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport BaseInputProps from './baseinput.props';\nimport { isString } from 'lodash';\nimport { BaseInputStyles } from './baseinput.styles';\nimport { Platform, TextInput } from 'react-native';\nimport { validateField } from '@wavemaker/app-rn-runtime/core/utils';\nimport Injector from '@wavemaker/app-rn-runtime/core/injector';\n\nexport class BaseInputState <T extends BaseInputProps> extends BaseComponentState<T> {\n keyboardType: any = 'default';\n isValid: boolean = true;\n isInputFocused: boolean = false;\n textValue: string = '';\n isDefault = false;\n errorType: string = '';\n}\nexport abstract class BaseInputComponent< T extends BaseInputProps, S extends BaseInputState<T>, L extends BaseInputStyles> extends BaseComponent<T, S, L> {\n public widgetRef: TextInput | null = null;\n isTouched: boolean = false;\n private cursor: any = 0;\n private timer: ReturnType<typeof setTimeout> | null = null;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n }\n public charlength:number = 0;\n\n focus() {\n this?.widgetRef?.focus();\n }\n\n blur() {\n this?.widgetRef?.blur && this?.widgetRef?.blur();\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'type':\n let keyboardType;\n if (this.props.type === 'number') {\n keyboardType = 'numeric';\n } else if (this.props.type === 'tel') {\n keyboardType = 'phone-pad';\n } else if (this.props.type === 'email') {\n keyboardType = 'email-address';\n }\n this.updateState({\n keyboardType: keyboardType,\n } as S);\n break;\n case 'datavalue':\n this.updateState({\n textValue: $new\n } as S\n );\n \n const isDefault = this.state.props.isdefault;\n if (isDefault) {\n this.updateState(\n { props: {isdefault: false} } as S, \n !this.state.props.skipscripteventtrigger && this.props.onFieldChange && this.props.onFieldChange.bind(this, 'datavalue', $new, $old, isDefault)\n );\n } \n else {\n !this.state.props.skipscripteventtrigger && this.props.onFieldChange && this.props.onFieldChange('datavalue', $new, $old, isDefault);\n }\n }\n }\n\n onChange(event: any) {\n if (this.state.props.updateon === 'default') {\n this.updateDatavalue(event.target.value, event);\n }else if(this.state.props.updateon === 'lazy') {\n if(this.timer !== null) {\n clearTimeout(this.timer);\n this.timer = null;\n }\n\n this.timer = setTimeout(() => {\n this.updateDatavalue(event.target.value, event);\n }, 300)\n }\n }\n\n onChangeText(value: any) {\n this.charlength = value?.length;\n if(this.state.props.updateon === 'lazy') {\n if(this.timer !== null) {\n clearTimeout(this.timer);\n this.timer = null;\n }\n\n this.timer = setTimeout(() => {\n this.updateState({\n textValue: value\n } as S, () => {\n this.validate(value);\n this.updateDatavalue(value, null);\n }\n );\n }, 300)\n }\n else {\n this.updateState({\n textValue: value\n } as S, () => {\n if (this.state.props.updateon === 'default') {\n this.validate(value);\n this.updateDatavalue(value, null);\n }\n }\n );\n }\n }\n\n invokeChange(e: any) {\n if (Platform.OS === 'web') {\n this.cursor = e.target.selectionStart;\n this.setState({ textValue: e.target.value });\n }\n }\n\n updateDatavalue(value: any, event?: any, source?: any) {\n const props = this.state.props;\n const oldValue = props.datavalue;\n if (value === oldValue) {\n return;\n }\n\n // autotrim\n if (props.autotrim && props.datavalue && isString(props.datavalue)) {\n value = value.trim();\n }\n new Promise((resolve) => {\n if (props.hastwowaybinding) {\n this.setProp(\"datavalue\", value);\n this.updateState({props: { \"datavalue\": value }} as S);\n resolve(true);\n } else {\n this.updateState({\n props: {\n datavalue: value\n }\n } as S, () => resolve(true));\n }\n }).then(() => {\n if(!this.props.onFieldChange && value !== oldValue){\n this.invokeEventCallback('onChange', [event, this.proxy, value, oldValue]);\n }else if(this.state.props.skipscripteventtrigger && this.props.onFieldChange){\n this.props.onFieldChange('datavalue', value, oldValue, false);\n }\n if (source === 'blur') {\n setTimeout(() => {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }, 10);\n }\n })\n }\n\n onBlur(event: any) {\n Injector.FOCUSED_ELEMENT.remove();\n this.isTouched = true;\n let newVal = this.state.textValue || '';\n let oldVal = this.state.props.datavalue || '';\n this.validate(newVal);\n if (newVal === '' || newVal == undefined) {\n setTimeout(() => {\n this.props.triggerValidation && this.props.triggerValidation();\n },10)\n }\n if (this.state.props.updateon === 'blur' || this.state.props.updateon === 'default') {\n if (oldVal !== newVal && this.state.props.updateon === 'blur') {\n this.updateDatavalue(newVal, event, 'blur');\n } else {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }\n this.setState({ isInputFocused: false })\n }\n }\n\n validate(value: any) {\n const validationObj = validateField(this.state.props, value);\n this.setState({\n isValid: validationObj.isValid,\n errorType: validationObj.errorType\n } as S);\n }\n\n onFocus(event: any) {\n // When input widgets are inside list widget and try to focus the field, list is selecting but unable to enter values in input fields\n // because on tap event of list is triggering after 200ms timeout So added 250ms timeout here\n setTimeout(() => {\n Injector.FOCUSED_ELEMENT.set(this);\n this.invokeEventCallback('onFocus', [ event, this.proxy]);\n this.closestTappable?.triggerTap();\n }, 250);\n this.setState({ isInputFocused: true })\n }\n\n onKeyPress(event: any) {\n this.invokeEventCallback('onKeypress', [ event, this.proxy]);\n }\n\n onSubmitEditing(event: any) {\n this.invokeEventCallback('onSubmitediting', [event, this.proxy]);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["DEFAULT_CLASS","BaseComponent","BaseComponentState","isString","Platform","validateField","Injector","BaseInputState","constructor","args","_defineProperty","BaseInputComponent","props","defaultClass","defaultProps","defaultState","focus","_this$widgetRef","widgetRef","blur","_this$widgetRef2","_this$widgetRef3","onPropertyChange","name","$new","$old","keyboardType","type","updateState","textValue","isDefault","state","isdefault","skipscripteventtrigger","onFieldChange","bind","onChange","event","updateon","updateDatavalue","target","value","timer","clearTimeout","setTimeout","onChangeText","charlength","length","validate","invokeChange","e","OS","cursor","selectionStart","setState","source","oldValue","datavalue","autotrim","trim","Promise","resolve","hastwowaybinding","setProp","then","invokeEventCallback","proxy","onBlur","FOCUSED_ELEMENT","remove","isTouched","newVal","oldVal","undefined","triggerValidation","skipBlurCallback","_submitEditingTriggered","isInputFocused","validationObj","isValid","errorType","onFocus","_this$closestTappable","set","closestTappable","triggerTap","onKeyPress","_event$persist","_event$nativeEvent","persist","call","key","nativeEvent","onSubmitEditing","_event$persist2"],"sources":["baseinput.component.ts"],"sourcesContent":["import { DEFAULT_CLASS } from '@wavemaker/app-rn-runtime/components/navigation/basenav/basenav.styles';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport BaseInputProps from './baseinput.props';\nimport { isString } from 'lodash';\nimport { BaseInputStyles } from './baseinput.styles';\nimport { Platform, TextInput } from 'react-native';\nimport { validateField } from '@wavemaker/app-rn-runtime/core/utils';\nimport Injector from '@wavemaker/app-rn-runtime/core/injector';\n\nexport class BaseInputState <T extends BaseInputProps> extends BaseComponentState<T> {\n keyboardType: any = 'default';\n isValid: boolean = true;\n isInputFocused: boolean = false;\n textValue: string = '';\n isDefault = false;\n errorType: string = '';\n}\nexport abstract class BaseInputComponent< T extends BaseInputProps, S extends BaseInputState<T>, L extends BaseInputStyles> extends BaseComponent<T, S, L> {\n public widgetRef: TextInput | null = null;\n isTouched: boolean = false;\n private cursor: any = 0;\n private timer: ReturnType<typeof setTimeout> | null = null;\n private _submitEditingTriggered = false;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n }\n public charlength:number = 0;\n\n focus() {\n this?.widgetRef?.focus();\n }\n\n blur() {\n this?.widgetRef?.blur && this?.widgetRef?.blur();\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'type':\n let keyboardType;\n if (this.props.type === 'number') {\n keyboardType = 'numeric';\n } else if (this.props.type === 'tel') {\n keyboardType = 'phone-pad';\n } else if (this.props.type === 'email') {\n keyboardType = 'email-address';\n }\n this.updateState({\n keyboardType: keyboardType,\n } as S);\n break;\n case 'datavalue':\n this.updateState({\n textValue: $new\n } as S\n );\n \n const isDefault = this.state.props.isdefault;\n if (isDefault) {\n this.updateState(\n { props: {isdefault: false} } as S, \n !this.state.props.skipscripteventtrigger && this.props.onFieldChange && this.props.onFieldChange.bind(this, 'datavalue', $new, $old, isDefault)\n );\n } \n else {\n !this.state.props.skipscripteventtrigger && this.props.onFieldChange && this.props.onFieldChange('datavalue', $new, $old, isDefault);\n }\n }\n }\n\n onChange(event: any) {\n if (this.state.props.updateon === 'default') {\n this.updateDatavalue(event.target.value, event);\n }else if(this.state.props.updateon === 'lazy') {\n if(this.timer !== null) {\n clearTimeout(this.timer);\n this.timer = null;\n }\n\n this.timer = setTimeout(() => {\n this.updateDatavalue(event.target.value, event);\n }, 300)\n }\n }\n\n onChangeText(value: any) {\n this.charlength = value?.length;\n if(this.state.props.updateon === 'lazy') {\n if(this.timer !== null) {\n clearTimeout(this.timer);\n this.timer = null;\n }\n\n this.timer = setTimeout(() => {\n this.updateState({\n textValue: value\n } as S, () => {\n this.validate(value);\n this.updateDatavalue(value, null);\n }\n );\n }, 300)\n }\n else {\n this.updateState({\n textValue: value\n } as S, () => {\n if (this.state.props.updateon === 'default') {\n this.validate(value);\n this.updateDatavalue(value, null);\n }\n }\n );\n }\n }\n\n invokeChange(e: any) {\n if (Platform.OS === 'web') {\n this.cursor = e.target.selectionStart;\n this.setState({ textValue: e.target.value });\n }\n }\n\n updateDatavalue(value: any, event?: any, source?: any) {\n const props = this.state.props;\n const oldValue = props.datavalue;\n if (value === oldValue) {\n return;\n }\n\n // autotrim\n if (props.autotrim && props.datavalue && isString(props.datavalue)) {\n value = value.trim();\n }\n new Promise((resolve) => {\n if (props.hastwowaybinding) {\n this.setProp(\"datavalue\", value);\n this.updateState({props: { \"datavalue\": value }} as S);\n resolve(true);\n } else {\n this.updateState({\n props: {\n datavalue: value\n }\n } as S, () => resolve(true));\n }\n }).then(() => {\n if(!this.props.onFieldChange && value !== oldValue){\n this.invokeEventCallback('onChange', [event, this.proxy, value, oldValue]);\n }else if(this.state.props.skipscripteventtrigger && this.props.onFieldChange){\n this.props.onFieldChange('datavalue', value, oldValue, false);\n }\n if (source === 'blur') {\n setTimeout(() => {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }, 10);\n }\n })\n }\n\n onBlur(event: any) {\n Injector.FOCUSED_ELEMENT.remove();\n this.isTouched = true;\n let newVal = this.state.textValue || '';\n let oldVal = this.state.props.datavalue || '';\n this.validate(newVal);\n if (newVal === '' || newVal == undefined) {\n setTimeout(() => {\n this.props.triggerValidation && this.props.triggerValidation();\n },10)\n }\n\n const skipBlurCallback = this._submitEditingTriggered;\n this._submitEditingTriggered = false;\n\n if (this.state.props.updateon === 'blur' || this.state.props.updateon === 'default') {\n if (oldVal !== newVal && this.state.props.updateon === 'blur') {\n this.updateDatavalue(newVal, event, skipBlurCallback ? undefined : 'blur');\n } else if (!skipBlurCallback) {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }\n this.setState({ isInputFocused: false })\n }\n }\n\n validate(value: any) {\n const validationObj = validateField(this.state.props, value);\n this.setState({\n isValid: validationObj.isValid,\n errorType: validationObj.errorType\n } as S);\n }\n\n onFocus(event: any) {\n // When input widgets are inside list widget and try to focus the field, list is selecting but unable to enter values in input fields\n // because on tap event of list is triggering after 200ms timeout So added 250ms timeout here\n setTimeout(() => {\n Injector.FOCUSED_ELEMENT.set(this);\n this.invokeEventCallback('onFocus', [ event, this.proxy]);\n this.closestTappable?.triggerTap();\n }, 250);\n this.setState({ isInputFocused: true })\n }\n\n onKeyPress(event: any) {\n event?.persist?.();\n const key = event.nativeEvent?.key;\n this.invokeEventCallback('onKeypress', [event, this.proxy, key]);\n }\n\n onSubmitEditing(event: any) {\n event?.persist?.();\n this._submitEditingTriggered = true;\n this.updateDatavalue(this.state.textValue, null);\n setTimeout(() => {\n this.invokeEventCallback('onSubmitediting', [event, this.proxy]);\n }, 100);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|