@wavemaker/app-rn-runtime 11.7.0-next.139417 → 11.7.0-next.139419
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.
- app-rn-runtime/components/chart/stack-chart/stack-chart.component.js +17 -10
- app-rn-runtime/components/chart/stack-chart/stack-chart.component.js.map +1 -1
- app-rn-runtime/components/data/form/form-field/form-field.component.js +2 -0
- app-rn-runtime/components/data/form/form-field/form-field.component.js.map +1 -1
- app-rn-runtime/components/data/form/form-field/form-field.props.js +2 -0
- app-rn-runtime/components/data/form/form-field/form-field.props.js.map +1 -1
- app-rn-runtime/components/dialogs/dialogcontent/dialogcontent.component.js +4 -0
- app-rn-runtime/components/dialogs/dialogcontent/dialogcontent.component.js.map +1 -1
- app-rn-runtime/components/input/baseinput/baseinput.component.js +1 -1
- app-rn-runtime/components/input/baseinput/baseinput.component.js.map +1 -1
- app-rn-runtime/components/input/baseinput/baseinput.props.js +2 -0
- app-rn-runtime/components/input/baseinput/baseinput.props.js.map +1 -1
- app-rn-runtime/components/input/text/text.component.js +4 -2
- app-rn-runtime/components/input/text/text.component.js.map +1 -1
- app-rn-runtime/components/navigation/popover/popover.component.js +4 -0
- app-rn-runtime/components/navigation/popover/popover.component.js.map +1 -1
- app-rn-runtime/components/page/left-panel/left-panel.component.js +4 -0
- app-rn-runtime/components/page/left-panel/left-panel.component.js.map +1 -1
- app-rn-runtime/core/components/textinput.component.js +147 -14
- app-rn-runtime/core/components/textinput.component.js.map +1 -1
- app-rn-runtime/package.json +4 -3
|
@@ -51,7 +51,6 @@ export default class WmStackChart extends BaseChartComponent {
|
|
|
51
51
|
return this.state.colors[0];
|
|
52
52
|
} else {
|
|
53
53
|
let colorCodes = cloneDeep(this.state.colors);
|
|
54
|
-
;
|
|
55
54
|
if (this.state.data.length > 0) {
|
|
56
55
|
const orderedData = this.getData();
|
|
57
56
|
this.state.data[0].map((d, i) => {
|
|
@@ -67,20 +66,28 @@ export default class WmStackChart extends BaseChartComponent {
|
|
|
67
66
|
const negativeValues = cloneDeep(this.getNegativeValuesArray());
|
|
68
67
|
const data = this.getData();
|
|
69
68
|
let currentValue = 0;
|
|
69
|
+
let cornerRadius;
|
|
70
70
|
return data.map((d, i) => {
|
|
71
71
|
let d1 = [];
|
|
72
72
|
d.x = 0;
|
|
73
73
|
d.y = d.y - currentValue;
|
|
74
74
|
d1.push(d);
|
|
75
75
|
currentValue = d.y < 0 && i === negativeValues.length - 1 ? 0 : d.y + currentValue;
|
|
76
|
+
if (i === 0) {
|
|
77
|
+
cornerRadius = {
|
|
78
|
+
top: 0,
|
|
79
|
+
bottom: -5
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
if (i === data.length - 1) {
|
|
83
|
+
cornerRadius = {
|
|
84
|
+
top: -5,
|
|
85
|
+
bottom: -5
|
|
86
|
+
};
|
|
87
|
+
}
|
|
76
88
|
return /*#__PURE__*/React.createElement(VictoryBar, {
|
|
77
89
|
key: props.name + '_' + i,
|
|
78
|
-
cornerRadius:
|
|
79
|
-
bottomLeft: 1,
|
|
80
|
-
bottomRight: 1,
|
|
81
|
-
topLeft: 1,
|
|
82
|
-
topRight: 1
|
|
83
|
-
},
|
|
90
|
+
cornerRadius: cornerRadius,
|
|
84
91
|
data: d1
|
|
85
92
|
});
|
|
86
93
|
});
|
|
@@ -157,8 +164,8 @@ export default class WmStackChart extends BaseChartComponent {
|
|
|
157
164
|
let ticks = [];
|
|
158
165
|
if (this.state.data[0].length) {
|
|
159
166
|
let data = cloneDeep(this.state.data[0]);
|
|
160
|
-
const maxValue = Math.max(...data.map(o => o.y));
|
|
161
|
-
const minValue = Math.min(...data.map(o => o.y));
|
|
167
|
+
const maxValue = Math.max(...data.map(o => o.y ? o.y : 0));
|
|
168
|
+
const minValue = Math.min(...data.map(o => o.y ? o.y : 0));
|
|
162
169
|
const scale = Scale.getBaseScale({}, 'x');
|
|
163
170
|
scale.domain([minValue > 0 ? 0 : minValue, maxValue]);
|
|
164
171
|
ticks = Axis.getTicks({}, scale);
|
|
@@ -203,7 +210,7 @@ export default class WmStackChart extends BaseChartComponent {
|
|
|
203
210
|
theme: this.state.theme,
|
|
204
211
|
minDomain: mindomain,
|
|
205
212
|
height: this.styles.root.height,
|
|
206
|
-
width: this.styles.root.width || this.state.chartWidth,
|
|
213
|
+
width: this.styles.root.width || this.state.chartWidth || 200,
|
|
207
214
|
padding: {
|
|
208
215
|
top: props.offsettop,
|
|
209
216
|
bottom: props.offsetbottom,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Platform","Svg","VictoryStack","VictoryBar","VictoryChart","VictoryPie","VictoryLegend","VictoryAxis","Axis","Scale","orderBy","cloneDeep","findIndex","isString","AccessibilityWidgetType","getAccessibilityProps","WmStackChartProps","DEFAULT_CLASS","BaseChartComponent","BaseChartComponentState","WmStackChartState","constructor","arguments","_defineProperty","WmStackChart","props","e","viewWidth","nativeEvent","layout","width","updateState","chartWidth","componentDidMount","setHeightWidthOnChart","getNegativeValuesArray","negativeValuesArray","state","data","filter","d","y","getPositiveValuesArray","positiveValuesArray","getData","negativeValues","concat","updateColors","colors","length","colorCodes","orderedData","map","i","index","getBarChart","currentValue","d1","x","push","createElement","key","name","cornerRadius","bottomLeft","bottomRight","topLeft","topRight","getColorCodes","reverse","getArcChart","colorScaleArray","maxValue","Math","max","o","radius","min","chartHeight","colorScale","startAngle","endAngle","standalone","origin","innerRadius","thickness","labels","getArcAxis","ticks","getTickValues","axisData","forEach","yunits","style","fontSize","paddingLeft","paddingRight","labelRadius","minValue","scale","getBaseScale","domain","getTicks","unshift","minvalue","onSelect","event","value","label","xaxisDatakeyArr","datum","selectedItem","dataset","selectedChartItem","series","_dataObj","invokeEventCallback","proxy","renderWidget","mindomain","xdomain","chartMinX","undefined","ydomain","chartMinY","_extends","LINECHART","styles","root","onLayout","onViewLayoutChange","viewtype","theme","minDomain","height","padding","top","offsettop","bottom","offsetbottom","left","offsetleft","right","offsetright","containerComponent","getTooltip","title","fontFamily","subheading","orientation","gutter","getLegendView","crossAxis","tickLabels","fill","showyaxis","axisLabel","grid","stroke","tickValues","tickFormat","t","abbreviateNumber","dependentAxis","horizontal","strokeWidth","events","target","eventHandlers","OS","onClick","bind","onPress"],"sources":["stack-chart.component.tsx"],"sourcesContent":["import React from 'react';\nimport { LayoutChangeEvent, View, Platform } from 'react-native';\nimport { Svg } from 'react-native-svg';\nimport { VictoryStack, VictoryBar, VictoryChart, VictoryPie, VictoryLegend, VictoryAxis } from 'victory-native';\nimport { Axis, Scale } from 'victory-core';\nimport { orderBy, cloneDeep, findIndex, isString} from 'lodash';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \nimport WmStackChartProps from './stack-chart.props';\nimport { DEFAULT_CLASS, WmStackChartStyles } from './stack-chart.styles';\nimport {\n BaseChartComponent,\n BaseChartComponentState\n} from '@wavemaker/app-rn-runtime/components/chart/basechart.component';\n\nexport class WmStackChartState extends BaseChartComponentState<WmStackChartProps> {\n chartWidth = 0;\n}\n\nexport default class WmStackChart extends BaseChartComponent<WmStackChartProps, WmStackChartState, WmStackChartStyles> {\n constructor(props: WmStackChartProps) {\n super(props, DEFAULT_CLASS, new WmStackChartProps(), new WmStackChartState());\n }\n\n componentDidMount() {\n super.componentDidMount();\n this.setHeightWidthOnChart();\n }\n\n getNegativeValuesArray() {\n let negativeValuesArray = cloneDeep(this.state.data[0]).filter((d: any) => d.y < 0);\n negativeValuesArray = orderBy(negativeValuesArray, 'y', 'desc');\n return negativeValuesArray;\n }\n\n getPositiveValuesArray() {\n let positiveValuesArray = cloneDeep(this.state.data[0]).filter((d: any) => d.y > 0);\n positiveValuesArray = orderBy(positiveValuesArray, 'y', 'asc');\n return positiveValuesArray;\n }\n\n getData() {\n const negativeValues = cloneDeep(this.getNegativeValuesArray());\n return negativeValues.concat(cloneDeep(this.getPositiveValuesArray()));\n }\n\n updateColors() {\n if (this.state.colors.length === 1 ) {\n return this.state.colors[0];\n } else {\n let colorCodes = cloneDeep(this.state.colors);;\n if ( this.state.data.length > 0 ) {\n const orderedData = this.getData();\n this.state.data[0].map((d: any, i: number) => {\n let index = findIndex(orderedData, d);\n colorCodes[index] = this.state.colors[i];\n })\n return colorCodes;\n }\n }\n }\n\n getBarChart(props: WmStackChartProps) {\n if ( this.state.data.length > 0 ) {\n const negativeValues = cloneDeep(this.getNegativeValuesArray());\n const data = this.getData();\n let currentValue = 0;\n\n return data.map((d: any, i: number) => {\n let d1: any = [];\n d.x = 0;\n d.y = d.y - currentValue;\n d1.push(d);\n currentValue = d.y < 0 && i === negativeValues.length -1 ? 0 : d.y + currentValue;\n return <VictoryBar key={props.name + '_' + i}\n cornerRadius={{bottomLeft:(1), bottomRight:(1), topLeft:(1), topRight:(1)}}\n data={d1}/>\n });\n }\n }\n\n private getColorCodes() {\n const colors = cloneDeep(this.updateColors());\n return isString(colors) ? [colors] : colors.reverse();\n }\n\n getArcChart(props: WmStackChartProps) {\n if ( this.state.data.length > 0 ) {\n let data = cloneDeep(this.state.data[0]);\n const colorScaleArray = this.getColorCodes();\n const maxValue = Math.max(...data.map((o: any) => o.y));\n data = orderBy(data, 'y', 'desc');\n const radius = Math.min(this.state.chartWidth/2, this.state.chartHeight - 50);\n return data.map((d: any, i: number) => {\n let d1: any = [];\n d1.push(d);\n d1.push({x: d.x, y: maxValue - d.y})\n return <VictoryPie key={props.name + '_' + i}\n radius={radius}\n colorScale={[colorScaleArray[i], '#fff0']}\n startAngle={-80}\n endAngle={80}\n cornerRadius={100}\n standalone={false}\n origin={{x: (this.state.chartWidth/2), y: (this.state.chartHeight - 50)}}\n innerRadius={radius - this.state.props.thickness}\n labels={[]}\n data={d1}/>\n });\n }\n }\n\n getArcAxis() {\n const ticks = this.getTickValues();\n const radius = Math.min(this.state.chartWidth/2, this.state.chartHeight-50);\n const axisData: any = [];\n ticks.forEach((d: any, i: any) => {\n axisData.push({x: `${this.state.props.yunits}${d}`, y: 1})\n });\n return <VictoryPie\n style={{\n labels: {\n fontSize: 12, paddingLeft: 50, paddingRight: 80\n }}\n }\n startAngle={-90}\n endAngle={90}\n standalone={false}\n colorScale={['#fff0']}\n origin={{x: (this.state.chartWidth/2 - 5), y: (this.state.chartHeight - 50)}}\n labelRadius={radius - this.state.props.thickness - 20}\n data={axisData}\n />\n }\n\n onViewLayoutChange = (e: LayoutChangeEvent) => {\n let viewWidth = e.nativeEvent.layout.width;\n this.updateState({\n chartWidth: viewWidth\n } as WmStackChartState);\n }\n\n getTickValues() {\n let ticks: any = [];\n if (this.state.data[0].length) {\n let data = cloneDeep(this.state.data[0]);\n const maxValue = Math.max(...data.map((o: any) => o.y));\n const minValue = Math.min(...data.map((o: any) => o.y));\n const scale = Scale.getBaseScale({}, 'x');\n scale.domain([minValue > 0 ? 0 : minValue, maxValue]);\n ticks = Axis.getTicks({}, scale);\n ticks[ticks.length -1] = maxValue;\n if ( minValue < 0 ) {\n if (ticks[0] === 0) {\n ticks.unshift(minValue);\n } else {\n ticks[0] = minValue;\n }\n } else {\n ticks[0] = this.state.props.minvalue;\n }\n }\n return ticks;\n }\n\n onSelect(event: any, data: any){\n let value = data.data[data.index].y;\n let label = this.state.xaxisDatakeyArr[data.datum.x];\n let selectedItem = this.props.dataset[data.index];\n let selectedChartItem = [{series: 0, x: data.index, y: value,_dataObj: selectedItem},data.index];\n this.invokeEventCallback('onSelect', [event.nativeEvent, this.proxy, selectedItem, selectedChartItem ]);\n }\n\n renderWidget(props: WmStackChartProps) {\n this.invokeEventCallback('onBeforerender', [this.proxy, null]);\n if (!this.state.data.length) {\n return null;\n }\n let mindomain={x: this.props.xdomain === 'Min' ? this.state.chartMinX: undefined, y: this.props.ydomain === 'Min' ? this.state.chartMinY: undefined};\n return (\n <View\n {...getAccessibilityProps(AccessibilityWidgetType.LINECHART, props)}\n style={this.styles.root} onLayout={this.onViewLayoutChange}\n >{\n props.viewtype === 'Bar' ?\n <VictoryChart\n theme={this.state.theme}\n minDomain={mindomain}\n height={this.styles.root.height as number}\n width={this.styles.root.width as number || this.state.chartWidth}\n padding={{\n top: props.offsettop,\n bottom: props.offsetbottom,\n left: props.offsetleft,\n right: props.offsetright\n }}\n containerComponent={\n this.getTooltip(props)\n }\n >\n <VictoryLegend\n name={'legend'}\n containerComponent={<Svg />}\n style={{title: {\n fontFamily: \"'Helvetica Neue', 'Helvetica', sans-serif\",\n fontSize: 18\n }\n }}\n title={[props.title, props.subheading]}\n orientation=\"horizontal\"\n gutter={20}\n data={[]}\n theme={this.state.theme}\n />\n {this.getLegendView(this.updateColors())}\n <VictoryAxis crossAxis\n style={{\n tickLabels: { fill: this.state.props.showyaxis === false ? 'transparent' : '#000000', fontSize: 12, padding: this.state.props.thickness/2 + 5},\n axisLabel: { padding: (15 + this.state.props.thickness/2) },\n grid: {stroke: 'none'}\n }}\n theme={this.state.theme}\n tickValues={this.getTickValues()}\n tickFormat={(t) => this.state.props.yunits ? `${this.abbreviateNumber(t)}${this.state.props.yunits}` : `${this.abbreviateNumber(t)}`} dependentAxis />\n <VictoryStack\n colorScale={this.updateColors()}\n horizontal={true}\n style={{\n data: { strokeWidth: this.state.props.thickness }\n }}\n events={[{\n target: 'data',\n eventHandlers: Platform.OS == \"web\" ? {\n onClick: this.onSelect.bind(this)\n }:{\n onPress: this.onSelect.bind(this)\n }\n }]}\n >\n {\n this.getBarChart(props)\n }\n </VictoryStack>\n </VictoryChart> :\n <Svg width={this.state.chartWidth} height={this.state.chartHeight}>\n <VictoryLegend\n name={'legend'}\n containerComponent={<Svg />}\n title={[props.title, props.subheading]}\n orientation=\"horizontal\"\n gutter={20}\n data={[]}\n theme={this.state.theme}\n />\n {this.getArcChart(props)}\n {this.getArcAxis()}\n </Svg>\n }\n </View>\n );\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","View","Platform","Svg","VictoryStack","VictoryBar","VictoryChart","VictoryPie","VictoryLegend","VictoryAxis","Axis","Scale","orderBy","cloneDeep","findIndex","isString","AccessibilityWidgetType","getAccessibilityProps","WmStackChartProps","DEFAULT_CLASS","BaseChartComponent","BaseChartComponentState","WmStackChartState","constructor","arguments","_defineProperty","WmStackChart","props","e","viewWidth","nativeEvent","layout","width","updateState","chartWidth","componentDidMount","setHeightWidthOnChart","getNegativeValuesArray","negativeValuesArray","state","data","filter","d","y","getPositiveValuesArray","positiveValuesArray","getData","negativeValues","concat","updateColors","colors","length","colorCodes","orderedData","map","i","index","getBarChart","currentValue","cornerRadius","d1","x","push","top","bottom","createElement","key","name","getColorCodes","reverse","getArcChart","colorScaleArray","maxValue","Math","max","o","radius","min","chartHeight","colorScale","startAngle","endAngle","standalone","origin","innerRadius","thickness","labels","getArcAxis","ticks","getTickValues","axisData","forEach","yunits","style","fontSize","paddingLeft","paddingRight","labelRadius","minValue","scale","getBaseScale","domain","getTicks","unshift","minvalue","onSelect","event","value","label","xaxisDatakeyArr","datum","selectedItem","dataset","selectedChartItem","series","_dataObj","invokeEventCallback","proxy","renderWidget","mindomain","xdomain","chartMinX","undefined","ydomain","chartMinY","_extends","LINECHART","styles","root","onLayout","onViewLayoutChange","viewtype","theme","minDomain","height","padding","offsettop","offsetbottom","left","offsetleft","right","offsetright","containerComponent","getTooltip","title","fontFamily","subheading","orientation","gutter","getLegendView","crossAxis","tickLabels","fill","showyaxis","axisLabel","grid","stroke","tickValues","tickFormat","t","abbreviateNumber","dependentAxis","horizontal","strokeWidth","events","target","eventHandlers","OS","onClick","bind","onPress"],"sources":["stack-chart.component.tsx"],"sourcesContent":["import React from 'react';\nimport { LayoutChangeEvent, View, Platform } from 'react-native';\nimport { Svg } from 'react-native-svg';\nimport { VictoryStack, VictoryBar, VictoryChart, VictoryPie, VictoryLegend, VictoryAxis } from 'victory-native';\nimport { Axis, Scale } from 'victory-core';\nimport { orderBy, cloneDeep, findIndex, isString} from 'lodash';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\nimport WmStackChartProps from './stack-chart.props';\nimport { DEFAULT_CLASS, WmStackChartStyles } from './stack-chart.styles';\nimport {\n BaseChartComponent,\n BaseChartComponentState\n} from '@wavemaker/app-rn-runtime/components/chart/basechart.component';\n\nexport class WmStackChartState extends BaseChartComponentState<WmStackChartProps> {\n chartWidth = 0;\n}\n\nexport default class WmStackChart extends BaseChartComponent<WmStackChartProps, WmStackChartState, WmStackChartStyles> {\n constructor(props: WmStackChartProps) {\n super(props, DEFAULT_CLASS, new WmStackChartProps(), new WmStackChartState());\n }\n\n componentDidMount() {\n super.componentDidMount();\n this.setHeightWidthOnChart();\n }\n\n getNegativeValuesArray() {\n let negativeValuesArray = cloneDeep(this.state.data[0]).filter((d: any) => d.y < 0);\n negativeValuesArray = orderBy(negativeValuesArray, 'y', 'desc');\n return negativeValuesArray;\n }\n\n getPositiveValuesArray() {\n let positiveValuesArray = cloneDeep(this.state.data[0]).filter((d: any) => d.y > 0);\n positiveValuesArray = orderBy(positiveValuesArray, 'y', 'asc');\n return positiveValuesArray;\n }\n\n getData() {\n const negativeValues = cloneDeep(this.getNegativeValuesArray());\n return negativeValues.concat(cloneDeep(this.getPositiveValuesArray()));\n }\n\n updateColors() {\n if (this.state.colors.length === 1 ) {\n return this.state.colors[0];\n } else {\n let colorCodes = cloneDeep(this.state.colors);\n if ( this.state.data.length > 0 ) {\n const orderedData = this.getData();\n this.state.data[0].map((d: any, i: number) => {\n let index = findIndex(orderedData, d);\n colorCodes[index] = this.state.colors[i];\n })\n return colorCodes;\n }\n }\n }\n\n getBarChart(props: WmStackChartProps) {\n if ( this.state.data.length > 0 ) {\n const negativeValues = cloneDeep(this.getNegativeValuesArray());\n const data = this.getData();\n let currentValue = 0;\n let cornerRadius: any;\n\n return data.map((d: any, i: number) => {\n let d1: any = [];\n d.x = 0;\n d.y = d.y - currentValue;\n d1.push(d);\n currentValue = d.y < 0 && i === negativeValues.length -1 ? 0 : d.y + currentValue;\n if (i === 0) {\n cornerRadius = {top: 0, bottom: -5};\n }\n if (i === data.length - 1) {\n cornerRadius = {top: -5, bottom: -5};\n }\n return <VictoryBar key={props.name + '_' + i}\n cornerRadius={cornerRadius}\n data={d1}/>\n });\n }\n }\n\n private getColorCodes() {\n const colors = cloneDeep(this.updateColors());\n return isString(colors) ? [colors] : colors.reverse();\n }\n\n getArcChart(props: WmStackChartProps) {\n if ( this.state.data.length > 0 ) {\n let data = cloneDeep(this.state.data[0]);\n const colorScaleArray = this.getColorCodes();\n const maxValue = Math.max(...data.map((o: any) => o.y));\n data = orderBy(data, 'y', 'desc');\n const radius = Math.min(this.state.chartWidth/2, this.state.chartHeight - 50);\n return data.map((d: any, i: number) => {\n let d1: any = [];\n d1.push(d);\n d1.push({x: d.x, y: maxValue - d.y})\n return <VictoryPie key={props.name + '_' + i}\n radius={radius}\n colorScale={[colorScaleArray[i], '#fff0']}\n startAngle={-80}\n endAngle={80}\n cornerRadius={100}\n standalone={false}\n origin={{x: (this.state.chartWidth/2), y: (this.state.chartHeight - 50)}}\n innerRadius={radius - this.state.props.thickness}\n labels={[]}\n data={d1}/>\n });\n }\n }\n\n getArcAxis() {\n const ticks = this.getTickValues();\n const radius = Math.min(this.state.chartWidth/2, this.state.chartHeight-50);\n const axisData: any = [];\n ticks.forEach((d: any, i: any) => {\n axisData.push({x: `${this.state.props.yunits}${d}`, y: 1})\n });\n return <VictoryPie\n style={{\n labels: {\n fontSize: 12, paddingLeft: 50, paddingRight: 80\n }}\n }\n startAngle={-90}\n endAngle={90}\n standalone={false}\n colorScale={['#fff0']}\n origin={{x: (this.state.chartWidth/2 - 5), y: (this.state.chartHeight - 50)}}\n labelRadius={radius - this.state.props.thickness - 20}\n data={axisData}\n />\n }\n\n onViewLayoutChange = (e: LayoutChangeEvent) => {\n let viewWidth = e.nativeEvent.layout.width;\n this.updateState({\n chartWidth: viewWidth\n } as WmStackChartState);\n }\n\n getTickValues() {\n let ticks: any = [];\n if (this.state.data[0].length) {\n let data = cloneDeep(this.state.data[0]);\n const maxValue = Math.max(...data.map((o: any) => o.y ? o.y : 0));\n const minValue = Math.min(...data.map((o: any) => o.y ? o.y : 0));\n const scale = Scale.getBaseScale({}, 'x');\n scale.domain([minValue > 0 ? 0 : minValue, maxValue]);\n ticks = Axis.getTicks({}, scale);\n ticks[ticks.length -1] = maxValue;\n if ( minValue < 0 ) {\n if (ticks[0] === 0) {\n ticks.unshift(minValue);\n } else {\n ticks[0] = minValue;\n }\n } else {\n ticks[0] = this.state.props.minvalue;\n }\n }\n return ticks;\n }\n\n onSelect(event: any, data: any){\n let value = data.data[data.index].y;\n let label = this.state.xaxisDatakeyArr[data.datum.x];\n let selectedItem = this.props.dataset[data.index];\n let selectedChartItem = [{series: 0, x: data.index, y: value,_dataObj: selectedItem},data.index];\n this.invokeEventCallback('onSelect', [event.nativeEvent, this.proxy, selectedItem, selectedChartItem ]);\n }\n\n renderWidget(props: WmStackChartProps) {\n this.invokeEventCallback('onBeforerender', [this.proxy, null]);\n if (!this.state.data.length) {\n return null;\n }\n let mindomain={x: this.props.xdomain === 'Min' ? this.state.chartMinX: undefined, y: this.props.ydomain === 'Min' ? this.state.chartMinY: undefined};\n return (\n <View\n {...getAccessibilityProps(AccessibilityWidgetType.LINECHART, props)}\n style={this.styles.root} onLayout={this.onViewLayoutChange}\n >{\n props.viewtype === 'Bar' ?\n <VictoryChart\n theme={this.state.theme}\n minDomain={mindomain}\n height={this.styles.root.height as number}\n width={this.styles.root.width as number || this.state.chartWidth || 200}\n padding={{\n top: props.offsettop,\n bottom: props.offsetbottom,\n left: props.offsetleft,\n right: props.offsetright\n }}\n containerComponent={\n this.getTooltip(props)\n }\n >\n <VictoryLegend\n name={'legend'}\n containerComponent={<Svg />}\n style={{title: {\n fontFamily: \"'Helvetica Neue', 'Helvetica', sans-serif\",\n fontSize: 18\n }\n }}\n title={[props.title, props.subheading]}\n orientation=\"horizontal\"\n gutter={20}\n data={[]}\n theme={this.state.theme}\n />\n {this.getLegendView(this.updateColors())}\n <VictoryAxis crossAxis\n style={{\n tickLabels: { fill: this.state.props.showyaxis === false ? 'transparent' : '#000000', fontSize: 12, padding: this.state.props.thickness/2 + 5},\n axisLabel: { padding: (15 + this.state.props.thickness/2) },\n grid: {stroke: 'none'}\n }}\n theme={this.state.theme}\n tickValues={this.getTickValues()}\n tickFormat={(t) => this.state.props.yunits ? `${this.abbreviateNumber(t)}${this.state.props.yunits}` : `${this.abbreviateNumber(t)}`} dependentAxis />\n <VictoryStack\n colorScale={this.updateColors()}\n horizontal={true}\n style={{\n data: { strokeWidth: this.state.props.thickness }\n }}\n events={[{\n target: 'data',\n eventHandlers: Platform.OS == \"web\" ? {\n onClick: this.onSelect.bind(this)\n }:{\n onPress: this.onSelect.bind(this)\n }\n }]}\n >\n {\n this.getBarChart(props)\n }\n </VictoryStack>\n </VictoryChart> :\n <Svg width={this.state.chartWidth} height={this.state.chartHeight}>\n <VictoryLegend\n name={'legend'}\n containerComponent={<Svg />}\n title={[props.title, props.subheading]}\n orientation=\"horizontal\"\n gutter={20}\n data={[]}\n theme={this.state.theme}\n />\n {this.getArcChart(props)}\n {this.getArcAxis()}\n </Svg>\n }\n </View>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -224,6 +224,8 @@ export default class WmFormField extends BaseComponent {
|
|
|
224
224
|
datavalue: props.datavalue,
|
|
225
225
|
value: this.value,
|
|
226
226
|
isValid: this.state.isValid,
|
|
227
|
+
maskchar: props.maskchar,
|
|
228
|
+
displayformat: props.displayformat,
|
|
227
229
|
invokeEvent: this.invokeEventCallback.bind(this),
|
|
228
230
|
triggerValidation: this.validateFormField.bind(this),
|
|
229
231
|
onFieldChange: this.onFieldChangeEvt.bind(this),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","isEqual","get","find","cloneDeep","forEach","keys","WmFormFieldProps","DEFAULT_CLASS","PERFORMANCE_LOGGER","WmFormFieldState","constructor","arguments","_defineProperty","WmFormField","props","form","formScope","componentDidMount","_this$form","_this$form2","_this$form3","formwidget","formKey","formWidgets","name","registerFormFields","formFields","onFieldChangeEvt","$new","$old","isDefault","notifyChanges","updateState","datavalue","invokeEventCallback","undefined","validateFormField","updateDataOutput","call","observeOn","fields","field","formfield","f","proxy","notifyForFields","push","validate","setTimeout","getPromiseList","validators","arr","fn","promise","Function","bind","Promise","setAsyncValidators","_asyncValidatorFn","all","then","err","validationMsg","hasOwnProperty","messageKeys","toString","setInvalidState","setValidators","_cloneValidators","_syncValidators","obj","index","key","defaultValidatorMessages","value","propsObj","updateFormWidgetDataset","res","displayField","dataset","data","datafield","displayfield","state","msg","isValid","validationmessage","onPropertyChange","debug","applyDefaultValue","setPrimaryKey","setReadOnlyState","updateMode","_this$formwidget","readonly","_this$formwidget2","_this$_syncValidators","_this$formwidget3","errorType","errormsg","errorMessage","renderWidget","childrenWithProps","Children","map","renderFormFields","children","child","cloneElement","invokeEvent","triggerValidation","onFieldChange","formRef","createElement","style","styles","root","_background","_extends","getTestPropsForLabel","errorMsg"],"sources":["form-field.component.tsx"],"sourcesContent":["import React from 'react';\nimport {Text, View} from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { widgetsWithUndefinedValue } from '@wavemaker/app-rn-runtime/core/utils';\nimport { isEqual, get, find, cloneDeep, forEach, keys } from 'lodash';\n\nimport WmFormFieldProps from './form-field.props';\nimport { DEFAULT_CLASS, WmFormFieldStyles } from './form-field.styles';\nimport {PERFORMANCE_LOGGER} from \"@wavemaker/app-rn-runtime/core/logger\";\n\nexport class WmFormFieldState extends BaseComponentState<WmFormFieldProps> {\n isValid = true;\n}\n\nexport default class WmFormField extends BaseComponent<WmFormFieldProps, WmFormFieldState, WmFormFieldStyles> {\n public form: any;\n public formwidget: any;\n public _syncValidators: any;\n public defaultValidatorMessages: any = [];\n private notifyForFields: any = [];\n private _asyncValidatorFn: any;\n constructor(props: WmFormFieldProps) {\n super(props, DEFAULT_CLASS, new WmFormFieldProps(), new WmFormFieldState());\n if (!this.form) {\n this.form = props.formScope && props.formScope();\n }\n }\n\n componentDidMount() {\n super.componentDidMount();\n this.formwidget = (this.props.formKey && this.form?.formWidgets[this.props.formKey])\n || (this.props.name && this.form?.formWidgets[this.props.name]);\n this.form?.registerFormFields(this.form.formFields, this.form.formWidgets);\n }\n\n onFieldChangeEvt(name: string, $new: any, $old: any, isDefault: boolean) {\n this.notifyChanges();\n if (!isEqual($old, $new)) {\n this.updateState({ props: { datavalue: $new }} as WmFormFieldState, () => {\n !isDefault && this.invokeEventCallback('onChange', [undefined, this, $new, $old]);\n this.validateFormField();\n });\n if (this.form) {\n this.form.updateDataOutput.call(this.form, get(this.props, 'formKey', this.props.name), $new);\n }\n }\n }\n\n // Registers observer of validation fields\n observeOn(fields: any) {\n forEach(fields, (field) => {\n const formfield = find(this.form.formFields, (f) => f.proxy.name === field);\n if (formfield) {\n formfield.notifyForFields.push(this);\n }\n });\n }\n\n // Notifies changes to observing validation fields\n notifyChanges() {\n forEach(this.notifyForFields, (field) => {\n field.formwidget.validate(field.formwidget.datavalue);\n setTimeout(() => field.validateFormField());\n });\n }\n\n getPromiseList(validators: any) {\n const arr: any = [];\n forEach(validators, (fn) => {\n let promise = fn;\n if (fn instanceof Function && fn.bind) {\n promise = fn(this.formwidget.proxy, this.form);\n }\n if (promise instanceof Promise) {\n arr.push(promise);\n }\n });\n return arr;\n }\n\n // this method sets the asyncValidation on the form field. Assigns validationmessages from the returned response\n setAsyncValidators(validators: any) {\n this._asyncValidatorFn = () => {\n return Promise.all(this.getPromiseList(validators)).then(() => {\n return null;\n }, err => {\n let validationMsg: string;\n // if err obj has validationMessage key, then set validationMessage using this value\n // else return the value of the first key in the err object as validation message.\n if (err.hasOwnProperty('errorMessage')) {\n validationMsg = get(err, 'errorMessage');\n } else {\n const messageKeys = keys(err);\n validationMsg = (err[messageKeys[0]]).toString();\n }\n this.setInvalidState(validationMsg);\n return err;\n })\n };\n }\n\n // sets the default validation on the form field\n setValidators(validators: any) {\n let _cloneValidators = cloneDeep(validators);\n this._syncValidators = [];\n forEach(_cloneValidators, (obj, index) => {\n // custom validation is bound to function.\n if (obj && obj instanceof Function) {\n // passing formwidget and form as arguments to the obj (i.e. validator function)\n _cloneValidators[index] = obj.bind(undefined, this.formwidget.proxy, this.form);\n this._syncValidators.push(_cloneValidators[index]);\n } else {\n // checks for default validator like required, maxchars etc.\n const key = get(obj, 'type');\n this.defaultValidatorMessages[key] = get(obj, 'errorMessage');\n const value = get(obj, 'validator');\n let propsObj: any = {\n props: {}\n };\n propsObj.props[key] = value;\n key === 'required' && this.updateState(propsObj as WmFormFieldState);\n this.formwidget.updateState(propsObj as WmFormFieldState);\n }\n });\n }\n\n updateFormWidgetDataset(res: any, displayField: string) {\n this.formwidget.updateState({\n props: {\n dataset: res.data,\n datafield: 'All Fields',\n displayfield: this.formwidget.state.props.displayfield || displayField,\n }\n } as WmFormFieldState);\n }\n\n setInvalidState(msg: string) {\n this.updateState({\n isValid: false,\n props: {\n validationmessage: msg\n }\n } as WmFormFieldState)\n this.formwidget.updateState({\n isValid: false,\n props: {\n validationmessage: msg\n }\n } as WmFormFieldState);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'datavalue':\n if (!isEqual($old, $new)) {\n PERFORMANCE_LOGGER.debug(`form field ${this.props.name} changed from ${$old} to ${$new}`);\n }\n break;\n case 'defaultvalue':\n if (!isEqual($old, $new)) {\n get(this, 'form') && this.form.applyDefaultValue(this);\n }\n break;\n case 'primary-key':\n if ($new) {\n this.form.setPrimaryKey(this.props.name);\n }\n break;\n }\n }\n\n setReadOnlyState(updateMode: any) {\n this.formwidget?.updateState({\n props: {\n readonly: !updateMode,\n }\n } as WmFormFieldState);\n }\n\n validateFormField() {\n if (this.formwidget?.state.isValid === false) {\n const errorType = this.formwidget?.state?.errorType;\n let validationMsg = get(this.defaultValidatorMessages, errorType);\n if (validationMsg) {\n if (validationMsg instanceof Function) {\n // passing formwidget and form as arguments to the errorMessage function.\n validationMsg = validationMsg(this.formwidget.proxy, this.form);\n }\n this.updateState({ props: {\n validationmessage: validationMsg\n }} as WmFormFieldState);\n }\n this.updateState({ isValid: false} as WmFormFieldState);\n } else {\n this.updateState({ isValid: true } as WmFormFieldState);\n }\n\n this._syncValidators?.forEach((fn: any) => {\n const errormsg = fn();\n let validationMsg = errormsg?.errorMessage;\n if (validationMsg) {\n if (validationMsg instanceof Function) {\n // passing formwidget and form as arguments to the errorMessage function.\n validationMsg = validationMsg(this.formwidget.proxy, this.form);\n }\n this.setInvalidState(validationMsg);\n }\n })\n\n this._asyncValidatorFn && this._asyncValidatorFn();\n\n }\n\n get value(){\n return this.state.props.datavalue;\n }\n\n renderWidget(props: WmFormFieldProps) {\n var childrenWithProps = React.Children.map(props.renderFormFields(this.proxy).props.children, (child) => {\n return React.cloneElement(child, {\n datavalue: props.datavalue,\n value: this.value,\n isValid: this.state.isValid,\n invokeEvent: this.invokeEventCallback.bind(this),\n triggerValidation: this.validateFormField.bind(this),\n onFieldChange: this.onFieldChangeEvt.bind(this),\n formRef: props.formRef });\n });\n return (\n <View style={this.styles.root}>{this._background}{childrenWithProps}\n {this.state.isValid === false && <Text {...this.getTestPropsForLabel('error_msg')} style={this.styles.errorMsg}>{props.validationmessage}</Text>}\n </View>\n );\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","isEqual","get","find","cloneDeep","forEach","keys","WmFormFieldProps","DEFAULT_CLASS","PERFORMANCE_LOGGER","WmFormFieldState","constructor","arguments","_defineProperty","WmFormField","props","form","formScope","componentDidMount","_this$form","_this$form2","_this$form3","formwidget","formKey","formWidgets","name","registerFormFields","formFields","onFieldChangeEvt","$new","$old","isDefault","notifyChanges","updateState","datavalue","invokeEventCallback","undefined","validateFormField","updateDataOutput","call","observeOn","fields","field","formfield","f","proxy","notifyForFields","push","validate","setTimeout","getPromiseList","validators","arr","fn","promise","Function","bind","Promise","setAsyncValidators","_asyncValidatorFn","all","then","err","validationMsg","hasOwnProperty","messageKeys","toString","setInvalidState","setValidators","_cloneValidators","_syncValidators","obj","index","key","defaultValidatorMessages","value","propsObj","updateFormWidgetDataset","res","displayField","dataset","data","datafield","displayfield","state","msg","isValid","validationmessage","onPropertyChange","debug","applyDefaultValue","setPrimaryKey","setReadOnlyState","updateMode","_this$formwidget","readonly","_this$formwidget2","_this$_syncValidators","_this$formwidget3","errorType","errormsg","errorMessage","renderWidget","childrenWithProps","Children","map","renderFormFields","children","child","cloneElement","maskchar","displayformat","invokeEvent","triggerValidation","onFieldChange","formRef","createElement","style","styles","root","_background","_extends","getTestPropsForLabel","errorMsg"],"sources":["form-field.component.tsx"],"sourcesContent":["import React from 'react';\nimport {Text, View} from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { widgetsWithUndefinedValue } from '@wavemaker/app-rn-runtime/core/utils';\nimport { isEqual, get, find, cloneDeep, forEach, keys } from 'lodash';\n\nimport WmFormFieldProps from './form-field.props';\nimport { DEFAULT_CLASS, WmFormFieldStyles } from './form-field.styles';\nimport {PERFORMANCE_LOGGER} from \"@wavemaker/app-rn-runtime/core/logger\";\n\nexport class WmFormFieldState extends BaseComponentState<WmFormFieldProps> {\n isValid = true;\n}\n\nexport default class WmFormField extends BaseComponent<WmFormFieldProps, WmFormFieldState, WmFormFieldStyles> {\n public form: any;\n public formwidget: any;\n public _syncValidators: any;\n public defaultValidatorMessages: any = [];\n private notifyForFields: any = [];\n private _asyncValidatorFn: any;\n constructor(props: WmFormFieldProps) {\n super(props, DEFAULT_CLASS, new WmFormFieldProps(), new WmFormFieldState());\n if (!this.form) {\n this.form = props.formScope && props.formScope();\n }\n }\n\n componentDidMount() {\n super.componentDidMount();\n this.formwidget = (this.props.formKey && this.form?.formWidgets[this.props.formKey])\n || (this.props.name && this.form?.formWidgets[this.props.name]);\n this.form?.registerFormFields(this.form.formFields, this.form.formWidgets);\n }\n\n onFieldChangeEvt(name: string, $new: any, $old: any, isDefault: boolean) {\n this.notifyChanges();\n if (!isEqual($old, $new)) {\n this.updateState({ props: { datavalue: $new }} as WmFormFieldState, () => {\n !isDefault && this.invokeEventCallback('onChange', [undefined, this, $new, $old]);\n this.validateFormField();\n });\n if (this.form) {\n this.form.updateDataOutput.call(this.form, get(this.props, 'formKey', this.props.name), $new);\n }\n }\n }\n\n // Registers observer of validation fields\n observeOn(fields: any) {\n forEach(fields, (field) => {\n const formfield = find(this.form.formFields, (f) => f.proxy.name === field);\n if (formfield) {\n formfield.notifyForFields.push(this);\n }\n });\n }\n\n // Notifies changes to observing validation fields\n notifyChanges() {\n forEach(this.notifyForFields, (field) => {\n field.formwidget.validate(field.formwidget.datavalue);\n setTimeout(() => field.validateFormField());\n });\n }\n\n getPromiseList(validators: any) {\n const arr: any = [];\n forEach(validators, (fn) => {\n let promise = fn;\n if (fn instanceof Function && fn.bind) {\n promise = fn(this.formwidget.proxy, this.form);\n }\n if (promise instanceof Promise) {\n arr.push(promise);\n }\n });\n return arr;\n }\n\n // this method sets the asyncValidation on the form field. Assigns validationmessages from the returned response\n setAsyncValidators(validators: any) {\n this._asyncValidatorFn = () => {\n return Promise.all(this.getPromiseList(validators)).then(() => {\n return null;\n }, err => {\n let validationMsg: string;\n // if err obj has validationMessage key, then set validationMessage using this value\n // else return the value of the first key in the err object as validation message.\n if (err.hasOwnProperty('errorMessage')) {\n validationMsg = get(err, 'errorMessage');\n } else {\n const messageKeys = keys(err);\n validationMsg = (err[messageKeys[0]]).toString();\n }\n this.setInvalidState(validationMsg);\n return err;\n })\n };\n }\n\n // sets the default validation on the form field\n setValidators(validators: any) {\n let _cloneValidators = cloneDeep(validators);\n this._syncValidators = [];\n forEach(_cloneValidators, (obj, index) => {\n // custom validation is bound to function.\n if (obj && obj instanceof Function) {\n // passing formwidget and form as arguments to the obj (i.e. validator function)\n _cloneValidators[index] = obj.bind(undefined, this.formwidget.proxy, this.form);\n this._syncValidators.push(_cloneValidators[index]);\n } else {\n // checks for default validator like required, maxchars etc.\n const key = get(obj, 'type');\n this.defaultValidatorMessages[key] = get(obj, 'errorMessage');\n const value = get(obj, 'validator');\n let propsObj: any = {\n props: {}\n };\n propsObj.props[key] = value;\n key === 'required' && this.updateState(propsObj as WmFormFieldState);\n this.formwidget.updateState(propsObj as WmFormFieldState);\n }\n });\n }\n\n updateFormWidgetDataset(res: any, displayField: string) {\n this.formwidget.updateState({\n props: {\n dataset: res.data,\n datafield: 'All Fields',\n displayfield: this.formwidget.state.props.displayfield || displayField,\n }\n } as WmFormFieldState);\n }\n\n setInvalidState(msg: string) {\n this.updateState({\n isValid: false,\n props: {\n validationmessage: msg\n }\n } as WmFormFieldState)\n this.formwidget.updateState({\n isValid: false,\n props: {\n validationmessage: msg\n }\n } as WmFormFieldState);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'datavalue':\n if (!isEqual($old, $new)) {\n PERFORMANCE_LOGGER.debug(`form field ${this.props.name} changed from ${$old} to ${$new}`);\n }\n break;\n case 'defaultvalue':\n if (!isEqual($old, $new)) {\n get(this, 'form') && this.form.applyDefaultValue(this);\n }\n break;\n case 'primary-key':\n if ($new) {\n this.form.setPrimaryKey(this.props.name);\n }\n break;\n }\n }\n\n setReadOnlyState(updateMode: any) {\n this.formwidget?.updateState({\n props: {\n readonly: !updateMode,\n }\n } as WmFormFieldState);\n }\n\n validateFormField() {\n if (this.formwidget?.state.isValid === false) {\n const errorType = this.formwidget?.state?.errorType;\n let validationMsg = get(this.defaultValidatorMessages, errorType);\n if (validationMsg) {\n if (validationMsg instanceof Function) {\n // passing formwidget and form as arguments to the errorMessage function.\n validationMsg = validationMsg(this.formwidget.proxy, this.form);\n }\n this.updateState({ props: {\n validationmessage: validationMsg\n }} as WmFormFieldState);\n }\n this.updateState({ isValid: false} as WmFormFieldState);\n } else {\n this.updateState({ isValid: true } as WmFormFieldState);\n }\n\n this._syncValidators?.forEach((fn: any) => {\n const errormsg = fn();\n let validationMsg = errormsg?.errorMessage;\n if (validationMsg) {\n if (validationMsg instanceof Function) {\n // passing formwidget and form as arguments to the errorMessage function.\n validationMsg = validationMsg(this.formwidget.proxy, this.form);\n }\n this.setInvalidState(validationMsg);\n }\n })\n\n this._asyncValidatorFn && this._asyncValidatorFn();\n\n }\n\n get value(){\n return this.state.props.datavalue;\n }\n\n renderWidget(props: WmFormFieldProps) {\n var childrenWithProps = React.Children.map(props.renderFormFields(this.proxy).props.children, (child) => {\n return React.cloneElement(child, {\n datavalue: props.datavalue,\n value: this.value,\n isValid: this.state.isValid,\n maskchar: props.maskchar,\n displayformat: props.displayformat,\n invokeEvent: this.invokeEventCallback.bind(this),\n triggerValidation: this.validateFormField.bind(this),\n onFieldChange: this.onFieldChangeEvt.bind(this),\n formRef: props.formRef });\n });\n return (\n <View style={this.styles.root}>{this._background}{childrenWithProps}\n {this.state.isValid === false && <Text {...this.getTestPropsForLabel('error_msg')} style={this.styles.errorMsg}>{props.validationmessage}</Text>}\n </View>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -26,6 +26,8 @@ export default class WmFormFieldProps extends BaseProps {
|
|
|
26
26
|
_defineProperty(this, "readonly", false);
|
|
27
27
|
_defineProperty(this, "onValidate", void 0);
|
|
28
28
|
_defineProperty(this, "formScope", () => {});
|
|
29
|
+
_defineProperty(this, "maskchar", null);
|
|
30
|
+
_defineProperty(this, "displayformat", null);
|
|
29
31
|
}
|
|
30
32
|
}
|
|
31
33
|
//# sourceMappingURL=form-field.props.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BaseProps","WmFormFieldProps","constructor","arguments","_defineProperty"],"sources":["form-field.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmFormFieldProps extends BaseProps {\n children: any;\n formRef: any;\n defaultvalue: any;\n generator: string = '';\n datavalue: any;\n onChange: any;\n renderFormFields: any;\n validationmessage: any;\n required: Boolean = false;\n primaryKey: Boolean = false;\n isRelated: any;\n widget: any;\n onFieldChange: any;\n formKey: string = '';\n dataset: any;\n displayfield: any;\n datafield: string = '';\n isDataSetBound: boolean = false;\n readonly: boolean = false;\n onValidate?: Function;\n formScope?: Function = () => {};\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,gBAAgB,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,oBAIlC,EAAE;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,mBAKF,KAAK;IAAAA,eAAA,qBACH,KAAK;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,kBAIT,EAAE;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,oBAGA,EAAE;IAAAA,eAAA,yBACI,KAAK;IAAAA,eAAA,mBACX,KAAK;IAAAA,eAAA;IAAAA,eAAA,oBAEF,MAAM,CAAC,CAAC;EAAA;
|
|
1
|
+
{"version":3,"names":["BaseProps","WmFormFieldProps","constructor","arguments","_defineProperty"],"sources":["form-field.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmFormFieldProps extends BaseProps {\n children: any;\n formRef: any;\n defaultvalue: any;\n generator: string = '';\n datavalue: any;\n onChange: any;\n renderFormFields: any;\n validationmessage: any;\n required: Boolean = false;\n primaryKey: Boolean = false;\n isRelated: any;\n widget: any;\n onFieldChange: any;\n formKey: string = '';\n dataset: any;\n displayfield: any;\n datafield: string = '';\n isDataSetBound: boolean = false;\n readonly: boolean = false;\n onValidate?: Function;\n formScope?: Function = () => {};\n maskchar: string = null as any;\n displayformat: string = null as any;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,gBAAgB,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,oBAIlC,EAAE;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,mBAKF,KAAK;IAAAA,eAAA,qBACH,KAAK;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,kBAIT,EAAE;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,oBAGA,EAAE;IAAAA,eAAA,yBACI,KAAK;IAAAA,eAAA,mBACX,KAAK;IAAAA,eAAA;IAAAA,eAAA,oBAEF,MAAM,CAAC,CAAC;IAAAA,eAAA,mBACZ,IAAI;IAAAA,eAAA,wBACC,IAAI;EAAA;AAC9B"}
|
|
@@ -13,6 +13,10 @@ export default class WmDialogcontent extends BaseComponent {
|
|
|
13
13
|
contentContainerStyle: [this.styles.root, {
|
|
14
14
|
maxHeight: undefined
|
|
15
15
|
}],
|
|
16
|
+
onScroll: event => {
|
|
17
|
+
this.notify('scroll', [event]);
|
|
18
|
+
},
|
|
19
|
+
scrollEventThrottle: 48,
|
|
16
20
|
style: {
|
|
17
21
|
maxHeight: this.styles.root.maxHeight
|
|
18
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","ScrollView","BaseComponent","BaseComponentState","WmDialogcontentProps","DEFAULT_CLASS","WmDialogcontentState","WmDialogcontent","constructor","props","renderWidget","createElement","contentContainerStyle","styles","root","maxHeight","undefined","style","_background","children"],"sources":["dialogcontent.component.tsx"],"sourcesContent":["import React from 'react';\nimport { ScrollView } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmDialogcontentProps from './dialogcontent.props';\nimport { DEFAULT_CLASS, WmDialogcontentStyles } from './dialogcontent.styles';\n\nexport class WmDialogcontentState extends BaseComponentState<WmDialogcontentProps> {}\n\nexport default class WmDialogcontent extends BaseComponent<WmDialogcontentProps, WmDialogcontentState, WmDialogcontentStyles> {\n\n constructor(props: WmDialogcontentProps) {\n super(props, DEFAULT_CLASS, new WmDialogcontentProps());\n }\n\n renderWidget(props: WmDialogcontentProps) {\n return (<ScrollView\n contentContainerStyle={[this.styles.root, {maxHeight: undefined}]}\n style={{maxHeight: this.styles.root.maxHeight}}>\n {this._background}\n {props.children}\n </ScrollView>);\n }\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AAEjG,OAAOC,oBAAoB,MAAM,uBAAuB;AACxD,SAASC,aAAa,QAA+B,wBAAwB;AAE7E,OAAO,MAAMC,oBAAoB,SAASH,kBAAkB,CAAuB;AAEnF,eAAe,MAAMI,eAAe,SAASL,aAAa,CAAoE;EAE5HM,WAAWA,CAACC,KAA2B,EAAE;IACvC,KAAK,CAACA,KAAK,EAAEJ,aAAa,EAAE,IAAID,oBAAoB,CAAC,CAAC,CAAC;EACzD;EAEAM,YAAYA,CAACD,KAA2B,EAAE;IACxC,oBAAQT,KAAA,CAAAW,aAAA,CAACV,UAAU;MACjBW,qBAAqB,EAAE,CAAC,IAAI,CAACC,MAAM,CAACC,IAAI,EAAE;QAACC,SAAS,EAAEC;MAAS,CAAC,CAAE;MAClEC,KAAK,EAAE;
|
|
1
|
+
{"version":3,"names":["React","ScrollView","BaseComponent","BaseComponentState","WmDialogcontentProps","DEFAULT_CLASS","WmDialogcontentState","WmDialogcontent","constructor","props","renderWidget","createElement","contentContainerStyle","styles","root","maxHeight","undefined","onScroll","event","notify","scrollEventThrottle","style","_background","children"],"sources":["dialogcontent.component.tsx"],"sourcesContent":["import React from 'react';\nimport { ScrollView } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmDialogcontentProps from './dialogcontent.props';\nimport { DEFAULT_CLASS, WmDialogcontentStyles } from './dialogcontent.styles';\n\nexport class WmDialogcontentState extends BaseComponentState<WmDialogcontentProps> {}\n\nexport default class WmDialogcontent extends BaseComponent<WmDialogcontentProps, WmDialogcontentState, WmDialogcontentStyles> {\n\n constructor(props: WmDialogcontentProps) {\n super(props, DEFAULT_CLASS, new WmDialogcontentProps());\n }\n\n renderWidget(props: WmDialogcontentProps) {\n return (<ScrollView\n contentContainerStyle={[this.styles.root, {maxHeight: undefined}]}\n onScroll={(event) => {this.notify('scroll', [event])}}\n scrollEventThrottle={48}\n style={{maxHeight: this.styles.root.maxHeight}}>\n {this._background}\n {props.children}\n </ScrollView>);\n }\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AAEjG,OAAOC,oBAAoB,MAAM,uBAAuB;AACxD,SAASC,aAAa,QAA+B,wBAAwB;AAE7E,OAAO,MAAMC,oBAAoB,SAASH,kBAAkB,CAAuB;AAEnF,eAAe,MAAMI,eAAe,SAASL,aAAa,CAAoE;EAE5HM,WAAWA,CAACC,KAA2B,EAAE;IACvC,KAAK,CAACA,KAAK,EAAEJ,aAAa,EAAE,IAAID,oBAAoB,CAAC,CAAC,CAAC;EACzD;EAEAM,YAAYA,CAACD,KAA2B,EAAE;IACxC,oBAAQT,KAAA,CAAAW,aAAA,CAACV,UAAU;MACjBW,qBAAqB,EAAE,CAAC,IAAI,CAACC,MAAM,CAACC,IAAI,EAAE;QAACC,SAAS,EAAEC;MAAS,CAAC,CAAE;MAClEC,QAAQ,EAAGC,KAAK,IAAK;QAAC,IAAI,CAACC,MAAM,CAAC,QAAQ,EAAE,CAACD,KAAK,CAAC,CAAC;MAAA,CAAE;MACtDE,mBAAmB,EAAE,EAAG;MACxBC,KAAK,EAAE;QAACN,SAAS,EAAE,IAAI,CAACF,MAAM,CAACC,IAAI,CAACC;MAAS;IAAE,GAC5C,IAAI,CAACO,WAAW,EAChBb,KAAK,CAACc,QACC,CAAC;EACf;AACF"}
|
|
@@ -113,7 +113,7 @@ export class BaseInputComponent extends BaseComponent {
|
|
|
113
113
|
onBlur(event) {
|
|
114
114
|
Injector.FOCUSED_ELEMENT.remove();
|
|
115
115
|
this.isTouched = true;
|
|
116
|
-
let newVal =
|
|
116
|
+
let newVal = this.state.textValue;
|
|
117
117
|
let oldVal = this.state.props.datavalue || '';
|
|
118
118
|
this.validate(newVal);
|
|
119
119
|
if (newVal === '' || newVal == undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DEFAULT_CLASS","BaseComponent","BaseComponentState","isString","Platform","validateField","Injector","BaseInputState","constructor","arguments","_defineProperty","BaseInputComponent","props","defaultClass","length","undefined","defaultProps","defaultState","focus","_this$widgetRef","widgetRef","blur","_this$widgetRef2","_this$widgetRef3","onPropertyChange","name","$new","$old","keyboardType","type","updateState","textValue","isDefault","state","onFieldChange","bind","onChange","event","updateon","updateDatavalue","target","value","onChangeText","validate","invokeChange","e","OS","cursor","selectionStart","setState","source","oldValue","datavalue","autotrim","trim","invokeEventCallback","proxy","onBlur","FOCUSED_ELEMENT","remove","isTouched","newVal","oldVal","setTimeout","triggerValidation","validationObj","isValid","errorType","onFocus","set","onKeyPress"],"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 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 constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n }\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 const isDefault = this.state.isDefault;\n if (isDefault) {\n this.updateState({ isDefault: false } as S, this.props.onFieldChange && this.props.onFieldChange.bind(this, 'datavalue', $new, $old, isDefault));\n } else {\n 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 }\n }\n\n onChangeText(value: any) {\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 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\n this.updateState({\n props: {\n datavalue: value\n }\n } as S, () => {\n !this.props.onFieldChange && value !== oldValue && this.invokeEventCallback('onChange', [event, this.proxy, value, oldValue]);\n if (source === 'blur') {\n this.invokeEventCallback('onBlur', [ event, this.proxy]);\n }\n })\n\n }\n\n onBlur(event: any) {\n Injector.FOCUSED_ELEMENT.remove();\n this.isTouched = true;\n let newVal = event.target.value || 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') {\n if (oldVal !== newVal) {\n this.updateDatavalue(newVal, event, 'blur');\n } else {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }\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 }, 250);\n\n }\n\n onKeyPress(event: any) {\n this.invokeEventCallback('onKeypress', [ event, this.proxy]);\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["DEFAULT_CLASS","BaseComponent","BaseComponentState","isString","Platform","validateField","Injector","BaseInputState","constructor","arguments","_defineProperty","BaseInputComponent","props","defaultClass","length","undefined","defaultProps","defaultState","focus","_this$widgetRef","widgetRef","blur","_this$widgetRef2","_this$widgetRef3","onPropertyChange","name","$new","$old","keyboardType","type","updateState","textValue","isDefault","state","onFieldChange","bind","onChange","event","updateon","updateDatavalue","target","value","onChangeText","validate","invokeChange","e","OS","cursor","selectionStart","setState","source","oldValue","datavalue","autotrim","trim","invokeEventCallback","proxy","onBlur","FOCUSED_ELEMENT","remove","isTouched","newVal","oldVal","setTimeout","triggerValidation","validationObj","isValid","errorType","onFocus","set","onKeyPress"],"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 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 constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n }\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 const isDefault = this.state.isDefault;\n if (isDefault) {\n this.updateState({ isDefault: false } as S, this.props.onFieldChange && this.props.onFieldChange.bind(this, 'datavalue', $new, $old, isDefault));\n } else {\n 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 }\n }\n\n onChangeText(value: any) {\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 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\n this.updateState({\n props: {\n datavalue: value\n }\n } as S, () => {\n !this.props.onFieldChange && value !== oldValue && this.invokeEventCallback('onChange', [event, this.proxy, value, oldValue]);\n if (source === 'blur') {\n this.invokeEventCallback('onBlur', [ event, this.proxy]);\n }\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') {\n if (oldVal !== newVal) {\n this.updateDatavalue(newVal, event, 'blur');\n } else {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }\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 }, 250);\n\n }\n\n onKeyPress(event: any) {\n this.invokeEventCallback('onKeypress', [ event, this.proxy]);\n }\n}\n"],"mappings":"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"}
|
|
@@ -22,6 +22,8 @@ export default class BaseInputProps extends BaseProps {
|
|
|
22
22
|
_defineProperty(this, "hint", undefined);
|
|
23
23
|
_defineProperty(this, "accessibilityrole", "none");
|
|
24
24
|
_defineProperty(this, "accessibilitylabelledby", undefined);
|
|
25
|
+
_defineProperty(this, "maskchar", null);
|
|
26
|
+
_defineProperty(this, "displayformat", null);
|
|
25
27
|
}
|
|
26
28
|
}
|
|
27
29
|
//# sourceMappingURL=baseinput.props.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BaseProps","BaseInputProps","constructor","arguments","_defineProperty","undefined"],"sources":["baseinput.props.ts"],"sourcesContent":["import {AccessibilityRole} from \"react-native\";\nimport { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class BaseInputProps extends BaseProps {\n autofocus: boolean = null as any;\n autocomplete: boolean = true;\n autotrim: boolean = true;\n datavalue: any;\n maxchars: number = null as any;\n readonly: boolean = null as any;\n regexp: string = null as any;\n type: string = 'text';\n updateon: string = 'blur' as any;\n required?: boolean = false as any;\n checkFormField?: any;\n onFieldChange?: any;\n triggerValidation?: any;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = \"none\";\n accessibilitylabelledby?: string = undefined;\n}\n"],"mappings":";;;AACA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,cAAc,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,oBAC/B,IAAI;IAAAA,eAAA,uBACD,IAAI;IAAAA,eAAA,mBACR,IAAI;IAAAA,eAAA;IAAAA,eAAA,mBAEL,IAAI;IAAAA,eAAA,mBACH,IAAI;IAAAA,eAAA,iBACP,IAAI;IAAAA,eAAA,eACN,MAAM;IAAAA,eAAA,mBACF,MAAM;IAAAA,eAAA,mBACJ,KAAK;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,6BAIIC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA,4BACe,MAAM;IAAAA,eAAA,kCACXC,SAAS;EAAA;
|
|
1
|
+
{"version":3,"names":["BaseProps","BaseInputProps","constructor","arguments","_defineProperty","undefined"],"sources":["baseinput.props.ts"],"sourcesContent":["import {AccessibilityRole} from \"react-native\";\nimport { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class BaseInputProps extends BaseProps {\n autofocus: boolean = null as any;\n autocomplete: boolean = true;\n autotrim: boolean = true;\n datavalue: any;\n maxchars: number = null as any;\n readonly: boolean = null as any;\n regexp: string = null as any;\n type: string = 'text';\n updateon: string = 'blur' as any;\n required?: boolean = false as any;\n checkFormField?: any;\n onFieldChange?: any;\n triggerValidation?: any;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = \"none\";\n accessibilitylabelledby?: string = undefined;\n maskchar: string = null as any;\n displayformat: string = null as any;\n}\n"],"mappings":";;;AACA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,cAAc,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,oBAC/B,IAAI;IAAAA,eAAA,uBACD,IAAI;IAAAA,eAAA,mBACR,IAAI;IAAAA,eAAA;IAAAA,eAAA,mBAEL,IAAI;IAAAA,eAAA,mBACH,IAAI;IAAAA,eAAA,iBACP,IAAI;IAAAA,eAAA,eACN,MAAM;IAAAA,eAAA,mBACF,MAAM;IAAAA,eAAA,mBACJ,KAAK;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,6BAIIC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA,4BACe,MAAM;IAAAA,eAAA,kCACXC,SAAS;IAAAD,eAAA,mBACzB,IAAI;IAAAA,eAAA,wBACC,IAAI;EAAA;AAC9B"}
|
|
@@ -39,12 +39,14 @@ export default class WmText extends BaseInputComponent {
|
|
|
39
39
|
floatingLabelStyle: this.styles.floatingLabel,
|
|
40
40
|
activeFloatingLabelStyle: this.styles.activeFloatingLabel,
|
|
41
41
|
placeholderTextColor: this.styles.placeholderText.color,
|
|
42
|
-
style: [this.styles.root, this.state.isValid ? {} : this.styles.invalid],
|
|
42
|
+
style: [this.styles.root, this.styles.text, this.state.isValid ? {} : this.styles.invalid],
|
|
43
43
|
keyboardType: this.state.keyboardType,
|
|
44
44
|
autoComplete: props.autocomplete ? 'username' : 'off',
|
|
45
45
|
autoFocus: props.autofocus,
|
|
46
46
|
editable: props.disabled || props.readonly ? false : true,
|
|
47
|
-
secureTextEntry: props.type === 'password' ? true : false,
|
|
47
|
+
secureTextEntry: props.type === 'password' && !props.maskchar ? true : false,
|
|
48
|
+
displayformat: props.displayformat,
|
|
49
|
+
maskchar: props.maskchar,
|
|
48
50
|
maxLength: props.maxchars,
|
|
49
51
|
placeholder: props.placeholder,
|
|
50
52
|
onBlur: this.onBlur.bind(this),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Platform","WmTextProps","DEFAULT_CLASS","WMTextInput","BaseInputComponent","BaseInputState","isNull","AccessibilityWidgetType","getAccessibilityProps","WmTextState","WmText","constructor","props","getStyleClassName","classes","state","floatinglabel","push","join","renderWidget","_this$state$textValue","opts","valueExpr","OS","textValue","toString","createElement","_extends","getTestPropsForInput","TEXT","ref","widgetRef","selectionStart","selectionEnd","cursor","floatingLabel","floatingLabelStyle","styles","activeFloatingLabelStyle","activeFloatingLabel","placeholderTextColor","placeholderText","color","style","root","isValid","invalid","keyboardType","autoComplete","autocomplete","autoFocus","autofocus","editable","disabled","readonly","secureTextEntry","type","maxLength","maxchars","placeholder","onBlur","bind","onFocus","onKeyPress","onChangeText","onChange","invokeChange","allowContentSelection","
|
|
1
|
+
{"version":3,"names":["React","Platform","WmTextProps","DEFAULT_CLASS","WMTextInput","BaseInputComponent","BaseInputState","isNull","AccessibilityWidgetType","getAccessibilityProps","WmTextState","WmText","constructor","props","getStyleClassName","classes","state","floatinglabel","push","join","renderWidget","_this$state$textValue","opts","valueExpr","OS","textValue","toString","createElement","_extends","getTestPropsForInput","TEXT","ref","widgetRef","selectionStart","selectionEnd","cursor","floatingLabel","floatingLabelStyle","styles","activeFloatingLabelStyle","activeFloatingLabel","placeholderTextColor","placeholderText","color","style","root","text","isValid","invalid","keyboardType","autoComplete","autocomplete","autoFocus","autofocus","editable","disabled","readonly","secureTextEntry","type","maskchar","displayformat","maxLength","maxchars","placeholder","onBlur","bind","onFocus","onKeyPress","onChangeText","onChange","invokeChange","allowContentSelection","userSelect"],"sources":["text.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Platform } from 'react-native';\n\nimport WmTextProps from './text.props';\nimport { DEFAULT_CLASS, WmTextStyles } from './text.styles';\nimport { WMTextInput } from '@wavemaker/app-rn-runtime/core/components/textinput.component';\nimport { BaseInputComponent, BaseInputState } from \"@wavemaker/app-rn-runtime/components/input/baseinput/baseinput.component\";\nimport { isNull } from 'lodash';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \n\nexport class WmTextState extends BaseInputState<WmTextProps> {\n}\n\nexport default class WmText extends BaseInputComponent<WmTextProps, WmTextState, WmTextStyles> {\n\n constructor(props: WmTextProps) {\n super(props, DEFAULT_CLASS, new WmTextProps(), new WmTextState());\n }\n\n public getStyleClassName(): string | undefined {\n const classes = [];\n if (this.state.props.floatinglabel) {\n classes.push('app-text-with-label'); \n }\n classes.push(super.getStyleClassName());\n return classes.join(' ');\n }\n\n renderWidget(props: WmTextProps) {\n let opts: any = {};\n const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';\n opts[valueExpr] = this.state.textValue?.toString() || '';\n return (\n <WMTextInput\n {...this.getTestPropsForInput()}\n {...getAccessibilityProps(\n AccessibilityWidgetType.TEXT,\n props\n )}\n ref={(ref: any) => {this.widgetRef = ref;\n // @ts-ignore\n if (ref && !isNull(ref.selectionStart) && !isNull(ref.selectionEnd)) {\n // @ts-ignore\n ref.selectionStart = ref.selectionEnd = this.cursor;\n }}}\n {...opts}\n floatingLabel={props.floatinglabel}\n floatingLabelStyle={this.styles.floatingLabel}\n activeFloatingLabelStyle={this.styles.activeFloatingLabel}\n placeholderTextColor={this.styles.placeholderText.color as any}\n style={[this.styles.root, this.styles.text, this.state.isValid ? {} : this.styles.invalid]}\n keyboardType={this.state.keyboardType}\n autoComplete={props.autocomplete ? 'username' : 'off'}\n autoFocus={props.autofocus}\n editable={props.disabled || props.readonly ? false : true}\n secureTextEntry={props.type === 'password' && !props.maskchar ? true : false}\n displayformat={props.displayformat}\n maskchar={props.maskchar}\n maxLength={props.maxchars}\n placeholder={props.placeholder}\n onBlur={this.onBlur.bind(this)}\n onFocus={this.onFocus.bind(this)}\n onKeyPress={this.onKeyPress.bind(this)}\n onChangeText={this.onChangeText.bind(this)}\n onChange={this.invokeChange.bind(this)}\n allowContentSelection={this.styles.text.userSelect === 'text'}\n />\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -111,6 +111,10 @@ export default class WmPopover extends BaseComponent {
|
|
|
111
111
|
}), this.state.isOpened ? /*#__PURE__*/React.createElement(ModalConsumer, null, modalService => {
|
|
112
112
|
modalService.showModal(this.prepareModalOptions( /*#__PURE__*/React.createElement(ScrollView, {
|
|
113
113
|
style: this.theme.mergeStyle(styles.popover, dimensions),
|
|
114
|
+
onScroll: event => {
|
|
115
|
+
this.notify('scroll', [event]);
|
|
116
|
+
},
|
|
117
|
+
scrollEventThrottle: 48,
|
|
114
118
|
accessible: props.type !== "dropdown",
|
|
115
119
|
accessibilityViewIsModal: true
|
|
116
120
|
}, props.title ? /*#__PURE__*/React.createElement(Text, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","isString","TouchableOpacity","Text","View","ScrollView","Dimensions","BaseComponent","BaseComponentState","ModalConsumer","WmAnchor","WmPopoverProps","DEFAULT_CLASS","WmContainer","AccessibilityWidgetType","getAccessibilityProps","WmPopoverState","constructor","arguments","_defineProperty","WmPopover","props","e","position","state","type","windowDimensions","get","view","measure","x","y","width","height","px","py","popoverwidth","parseInt","left","top","updateState","setState","isOpened","invokeEventCallback","stopPropagation","prepareModalOptions","content","styles","modalService","o","modalOptions","modalStyle","modal","contentStyle","modalContent","isModal","autoclose","centered","animation","contentanimation","onClose","hide","isPartialLoaded","hideModal","renderWidget","dimensions","theme","mergeStyle","getStyle","popoverheight","createElement","_extends","style","root","onLayout","computePosition","ref","POVOVER","_background","id","getTestId","caption","badgevalue","iconclass","iconposition","iconheight","iconwidth","iconmargin","iconurl","link","onTap","showPopover","showModal","popover","accessible","accessibilityViewIsModal","title","getTestPropsForAction","activeOpacity","onPress","popoverContent","onLoad","renderPartial","p","children"],"sources":["popover.component.tsx"],"sourcesContent":["import React from 'react';\nimport { isString } from 'lodash-es';\nimport { LayoutChangeEvent, TouchableOpacity, Text, View, ScrollView, Dimensions } from 'react-native';\nimport { BaseComponent, BaseComponentState, BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport { TapEvent } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { ModalConsumer, ModalOptions, ModalService } from '@wavemaker/app-rn-runtime/core/modal.service';\nimport WmAnchor from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.component';\n\nimport WmPopoverProps from './popover.props';\nimport { DEFAULT_CLASS, WmPopoverStyles } from './popover.styles';\nimport WmContainer from '../../container/container.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \n\nexport class WmPopoverState extends BaseComponentState<WmPopoverProps> {\n isOpened: boolean = false;\n modalOptions = {} as ModalOptions;\n position = {} as PopoverPosition;\n isPartialLoaded = false;\n}\n\nexport interface PopoverPosition {\n top?: number;\n bottom?: number;\n left?: number;\n right?: number;\n}\n\nexport default class WmPopover extends BaseComponent<WmPopoverProps, WmPopoverState, WmPopoverStyles> {\n\n view: View = null as any;\n\n constructor(props: WmPopoverProps) {\n super(props, DEFAULT_CLASS, new WmPopoverProps(), new WmPopoverState());\n }\n\n private computePosition = (e: LayoutChangeEvent) => {\n const position = {} as PopoverPosition;\n if (this.state.props.type === 'dropdown') {\n const windowDimensions = Dimensions.get('window');\n this.view.measure((x, y, width, height, px, py) => {\n let popoverwidth = this.state.props.popoverwidth as any;\n if (popoverwidth && isString(popoverwidth)) {\n popoverwidth = parseInt(popoverwidth);\n }\n position.left = px;\n if (px + popoverwidth > windowDimensions.width) {\n position.left = px + width - popoverwidth;\n }\n position.top = py + height;\n this.updateState({position: position} as WmPopoverState);\n });\n }\n };\n\n public showPopover = (e?: TapEvent) => {\n this.setState({ isOpened: true });\n this.invokeEventCallback('onShow', [e, this]);\n e?.stopPropagation();\n };\n\n public hide = () => {};\n\n prepareModalOptions(content: React.ReactNode, styles: WmPopoverStyles, modalService: ModalService) {\n const o = this.state.modalOptions;\n o.modalStyle = styles.modal;\n o.contentStyle = {...styles.modalContent, ...this.state.position};\n o.content = content;\n o.isModal = this.state.props.autoclose !== 'disabled';\n o.centered = true;\n o.animation = this.state.props.contentanimation || 'slideInUp';\n o.onClose = () => {\n this.hide = () => {};\n this.setState({ isOpened: false, isPartialLoaded: false, modalOptions: {} as ModalOptions });\n this.invokeEventCallback('onHide', [null, this]);\n };\n this.hide = () => modalService.hideModal(this.state.modalOptions);\n return o;\n }\n\n renderWidget(props: WmPopoverProps) {\n let dimensions = {} as any;\n const styles = this.theme.mergeStyle(this.theme.getStyle('popover-' + props.type), this.styles);\n if (props.type === 'dropdown') {\n if (props.popoverwidth) {\n dimensions.width = props.popoverwidth;\n styles.modalContent.width = props.popoverwidth;\n }\n if (props.popoverheight) {\n dimensions.height = props.popoverheight;\n }\n }\n return (\n <View style={styles.root} onLayout={this.computePosition} ref={ref => {this.view = ref as View}} {...getAccessibilityProps(AccessibilityWidgetType.POVOVER, props)}>\n {this._background}\n <WmAnchor\n id={this.getTestId('trigger')}\n animation={props.animation}\n caption={props.caption}\n badgevalue={props.badgevalue}\n iconclass={props.iconclass}\n iconposition={props.iconposition}\n iconheight={props.iconheight}\n iconwidth={props.iconwidth}\n iconmargin={props.iconmargin}\n iconurl={props.iconurl}\n styles={styles.link}\n onTap={this.showPopover}/>\n {this.state.isOpened ? (\n <ModalConsumer>\n {(modalService: ModalService) => {\n modalService.showModal(this.prepareModalOptions((\n <ScrollView style={this.theme.mergeStyle(styles.popover, dimensions)} accessible={props.type !== \"dropdown\"} accessibilityViewIsModal>\n {props.title ? (<Text style={styles.title}>{props.title}</Text>): null}\n <TouchableOpacity \n {...this.getTestPropsForAction('outercontent')}\n activeOpacity={1} onPress={() => {\n props.autoclose === 'always' && this.hide()\n }} style={styles.popoverContent.root}>\n <WmContainer\n styles={styles.popoverContent}\n onLoad={() => this.invokeEventCallback('onLoad', [this])}\n {... props.renderPartial ? {\n renderPartial : (p: any, onLoad: Function) => {\n return props.renderPartial && props.renderPartial(props, onLoad);\n }\n } : {}}>\n {props.renderPartial ? null : props.children}\n </WmContainer>\n </TouchableOpacity>\n </ScrollView>\n ), styles, modalService));\n return null;\n }}\n </ModalConsumer>) : null}\n </View>);\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","isString","TouchableOpacity","Text","View","ScrollView","Dimensions","BaseComponent","BaseComponentState","ModalConsumer","WmAnchor","WmPopoverProps","DEFAULT_CLASS","WmContainer","AccessibilityWidgetType","getAccessibilityProps","WmPopoverState","constructor","arguments","_defineProperty","WmPopover","props","e","position","state","type","windowDimensions","get","view","measure","x","y","width","height","px","py","popoverwidth","parseInt","left","top","updateState","setState","isOpened","invokeEventCallback","stopPropagation","prepareModalOptions","content","styles","modalService","o","modalOptions","modalStyle","modal","contentStyle","modalContent","isModal","autoclose","centered","animation","contentanimation","onClose","hide","isPartialLoaded","hideModal","renderWidget","dimensions","theme","mergeStyle","getStyle","popoverheight","createElement","_extends","style","root","onLayout","computePosition","ref","POVOVER","_background","id","getTestId","caption","badgevalue","iconclass","iconposition","iconheight","iconwidth","iconmargin","iconurl","link","onTap","showPopover","showModal","popover","onScroll","event","notify","scrollEventThrottle","accessible","accessibilityViewIsModal","title","getTestPropsForAction","activeOpacity","onPress","popoverContent","onLoad","renderPartial","p","children"],"sources":["popover.component.tsx"],"sourcesContent":["import React from 'react';\nimport { isString } from 'lodash-es';\nimport { LayoutChangeEvent, TouchableOpacity, Text, View, ScrollView, Dimensions } from 'react-native';\nimport { BaseComponent, BaseComponentState, BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport { TapEvent } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { ModalConsumer, ModalOptions, ModalService } from '@wavemaker/app-rn-runtime/core/modal.service';\nimport WmAnchor from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.component';\n\nimport WmPopoverProps from './popover.props';\nimport { DEFAULT_CLASS, WmPopoverStyles } from './popover.styles';\nimport WmContainer from '../../container/container.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \n\nexport class WmPopoverState extends BaseComponentState<WmPopoverProps> {\n isOpened: boolean = false;\n modalOptions = {} as ModalOptions;\n position = {} as PopoverPosition;\n isPartialLoaded = false;\n}\n\nexport interface PopoverPosition {\n top?: number;\n bottom?: number;\n left?: number;\n right?: number;\n}\n\nexport default class WmPopover extends BaseComponent<WmPopoverProps, WmPopoverState, WmPopoverStyles> {\n\n view: View = null as any;\n\n constructor(props: WmPopoverProps) {\n super(props, DEFAULT_CLASS, new WmPopoverProps(), new WmPopoverState());\n }\n\n private computePosition = (e: LayoutChangeEvent) => {\n const position = {} as PopoverPosition;\n if (this.state.props.type === 'dropdown') {\n const windowDimensions = Dimensions.get('window');\n this.view.measure((x, y, width, height, px, py) => {\n let popoverwidth = this.state.props.popoverwidth as any;\n if (popoverwidth && isString(popoverwidth)) {\n popoverwidth = parseInt(popoverwidth);\n }\n position.left = px;\n if (px + popoverwidth > windowDimensions.width) {\n position.left = px + width - popoverwidth;\n }\n position.top = py + height;\n this.updateState({position: position} as WmPopoverState);\n });\n }\n };\n\n public showPopover = (e?: TapEvent) => {\n this.setState({ isOpened: true });\n this.invokeEventCallback('onShow', [e, this]);\n e?.stopPropagation();\n };\n\n public hide = () => {};\n\n prepareModalOptions(content: React.ReactNode, styles: WmPopoverStyles, modalService: ModalService) {\n const o = this.state.modalOptions;\n o.modalStyle = styles.modal;\n o.contentStyle = {...styles.modalContent, ...this.state.position};\n o.content = content;\n o.isModal = this.state.props.autoclose !== 'disabled';\n o.centered = true;\n o.animation = this.state.props.contentanimation || 'slideInUp';\n o.onClose = () => {\n this.hide = () => {};\n this.setState({ isOpened: false, isPartialLoaded: false, modalOptions: {} as ModalOptions });\n this.invokeEventCallback('onHide', [null, this]);\n };\n this.hide = () => modalService.hideModal(this.state.modalOptions);\n return o;\n }\n\n renderWidget(props: WmPopoverProps) {\n let dimensions = {} as any;\n const styles = this.theme.mergeStyle(this.theme.getStyle('popover-' + props.type), this.styles);\n if (props.type === 'dropdown') {\n if (props.popoverwidth) {\n dimensions.width = props.popoverwidth;\n styles.modalContent.width = props.popoverwidth;\n }\n if (props.popoverheight) {\n dimensions.height = props.popoverheight;\n }\n }\n return (\n <View style={styles.root} onLayout={this.computePosition} ref={ref => {this.view = ref as View}} {...getAccessibilityProps(AccessibilityWidgetType.POVOVER, props)}>\n {this._background}\n <WmAnchor\n id={this.getTestId('trigger')}\n animation={props.animation}\n caption={props.caption}\n badgevalue={props.badgevalue}\n iconclass={props.iconclass}\n iconposition={props.iconposition}\n iconheight={props.iconheight}\n iconwidth={props.iconwidth}\n iconmargin={props.iconmargin}\n iconurl={props.iconurl}\n styles={styles.link}\n onTap={this.showPopover}/>\n {this.state.isOpened ? (\n <ModalConsumer>\n {(modalService: ModalService) => {\n modalService.showModal(this.prepareModalOptions((\n <ScrollView style={this.theme.mergeStyle(styles.popover, dimensions)} \n onScroll={(event) => {this.notify('scroll', [event])}}\n scrollEventThrottle={48}\n accessible={props.type !== \"dropdown\"} accessibilityViewIsModal>\n {props.title ? (<Text style={styles.title}>{props.title}</Text>): null}\n <TouchableOpacity \n {...this.getTestPropsForAction('outercontent')}\n activeOpacity={1} onPress={() => {\n props.autoclose === 'always' && this.hide()\n }} style={styles.popoverContent.root}>\n <WmContainer\n styles={styles.popoverContent}\n onLoad={() => this.invokeEventCallback('onLoad', [this])}\n {... props.renderPartial ? {\n renderPartial : (p: any, onLoad: Function) => {\n return props.renderPartial && props.renderPartial(props, onLoad);\n }\n } : {}}>\n {props.renderPartial ? null : props.children}\n </WmContainer>\n </TouchableOpacity>\n </ScrollView>\n ), styles, modalService));\n return null;\n }}\n </ModalConsumer>) : null}\n </View>);\n }\n}\n"],"mappings":"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"}
|
|
@@ -34,6 +34,10 @@ export default class WmLeftPanel extends BaseComponent {
|
|
|
34
34
|
}
|
|
35
35
|
renderWidget(props) {
|
|
36
36
|
return /*#__PURE__*/React.createElement(ScrollView, {
|
|
37
|
+
onScroll: event => {
|
|
38
|
+
this.notify('scroll', [event]);
|
|
39
|
+
},
|
|
40
|
+
scrollEventThrottle: 48,
|
|
37
41
|
contentContainerStyle: this.styles.root
|
|
38
42
|
}, this._background, this.renderContent(props));
|
|
39
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","BaseComponent","BaseComponentState","WmLeftPanelProps","DEFAULT_CLASS","ScrollView","WmLeftPanelState","constructor","arguments","_defineProperty","WmLeftPanel","props","onPartialLoad","invokeEventCallback","renderContent","renderPartial","state","isPartialLoaded","setTimeout","updateState","bind","children","renderWidget","createElement","contentContainerStyle","styles","root","_background"],"sources":["left-panel.component.tsx"],"sourcesContent":["import React from 'react';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmLeftPanelProps from './left-panel.props';\nimport { DEFAULT_CLASS, WmLeftPanelStyles } from './left-panel.styles';\nimport { ScrollView } from 'react-native';\n\nexport class WmLeftPanelState extends BaseComponentState<WmLeftPanelProps> {\n isPartialLoaded = false;\n}\n\nexport default class WmLeftPanel extends BaseComponent<WmLeftPanelProps, WmLeftPanelState, WmLeftPanelStyles> {\n\n constructor(props: WmLeftPanelProps) {\n super(props, DEFAULT_CLASS, new WmLeftPanelProps());\n }\n\n onPartialLoad() {\n this.invokeEventCallback('onLoad', [null, this]);\n }\n\n renderContent(props: WmLeftPanelProps) {\n if (props.renderPartial) {\n if (!this.state.isPartialLoaded) {\n setTimeout(() => {\n this.updateState({\n isPartialLoaded: true\n } as WmLeftPanelState);\n });\n }\n return props.renderPartial(props, this.onPartialLoad.bind(this));\n }\n return props.children;\n }\n\n renderWidget(props: WmLeftPanelProps) {\n return (\n <ScrollView contentContainerStyle={this.styles.root}>\n {this._background}\n {this.renderContent(props)}\n </ScrollView>\n );\n }\n}\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AAEjG,OAAOC,gBAAgB,MAAM,oBAAoB;AACjD,SAASC,aAAa,QAA2B,qBAAqB;AACtE,SAASC,UAAU,QAAQ,cAAc;AAEzC,OAAO,MAAMC,gBAAgB,SAASJ,kBAAkB,CAAmB;EAAAK,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,0BACvD,KAAK;EAAA;AACzB;AAEA,eAAe,MAAMC,WAAW,SAAST,aAAa,CAAwD;EAE5GM,WAAWA,CAACI,KAAuB,EAAE;IACnC,KAAK,CAACA,KAAK,EAAEP,aAAa,EAAE,IAAID,gBAAgB,CAAC,CAAC,CAAC;EACrD;EAEAS,aAAaA,CAAA,EAAG;IACd,IAAI,CAACC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;EAClD;EAEAC,aAAaA,CAACH,KAAuB,EAAE;IACrC,IAAIA,KAAK,CAACI,aAAa,EAAE;MACvB,IAAI,CAAC,IAAI,CAACC,KAAK,CAACC,eAAe,EAAE;QAC/BC,UAAU,CAAC,MAAM;UACf,IAAI,CAACC,WAAW,CAAC;YACfF,eAAe,EAAE;UACnB,CAAqB,CAAC;QACxB,CAAC,CAAC;MACJ;MACA,OAAON,KAAK,CAACI,aAAa,CAACJ,KAAK,EAAE,IAAI,CAACC,aAAa,CAACQ,IAAI,CAAC,IAAI,CAAC,CAAC;IAClE;IACA,OAAOT,KAAK,CAACU,QAAQ;EACvB;EAEAC,YAAYA,CAACX,KAAuB,EAAE;IACpC,oBACEX,KAAA,CAAAuB,aAAA,CAAClB,UAAU;
|
|
1
|
+
{"version":3,"names":["React","BaseComponent","BaseComponentState","WmLeftPanelProps","DEFAULT_CLASS","ScrollView","WmLeftPanelState","constructor","arguments","_defineProperty","WmLeftPanel","props","onPartialLoad","invokeEventCallback","renderContent","renderPartial","state","isPartialLoaded","setTimeout","updateState","bind","children","renderWidget","createElement","onScroll","event","notify","scrollEventThrottle","contentContainerStyle","styles","root","_background"],"sources":["left-panel.component.tsx"],"sourcesContent":["import React from 'react';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmLeftPanelProps from './left-panel.props';\nimport { DEFAULT_CLASS, WmLeftPanelStyles } from './left-panel.styles';\nimport { ScrollView } from 'react-native';\n\nexport class WmLeftPanelState extends BaseComponentState<WmLeftPanelProps> {\n isPartialLoaded = false;\n}\n\nexport default class WmLeftPanel extends BaseComponent<WmLeftPanelProps, WmLeftPanelState, WmLeftPanelStyles> {\n\n constructor(props: WmLeftPanelProps) {\n super(props, DEFAULT_CLASS, new WmLeftPanelProps());\n }\n\n onPartialLoad() {\n this.invokeEventCallback('onLoad', [null, this]);\n }\n\n renderContent(props: WmLeftPanelProps) {\n if (props.renderPartial) {\n if (!this.state.isPartialLoaded) {\n setTimeout(() => {\n this.updateState({\n isPartialLoaded: true\n } as WmLeftPanelState);\n });\n }\n return props.renderPartial(props, this.onPartialLoad.bind(this));\n }\n return props.children;\n }\n\n renderWidget(props: WmLeftPanelProps) {\n return (\n <ScrollView \n onScroll={(event) => {this.notify('scroll', [event])}}\n scrollEventThrottle={48}\n contentContainerStyle={this.styles.root}>\n {this._background}\n {this.renderContent(props)}\n </ScrollView>\n );\n }\n}\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AAEjG,OAAOC,gBAAgB,MAAM,oBAAoB;AACjD,SAASC,aAAa,QAA2B,qBAAqB;AACtE,SAASC,UAAU,QAAQ,cAAc;AAEzC,OAAO,MAAMC,gBAAgB,SAASJ,kBAAkB,CAAmB;EAAAK,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,0BACvD,KAAK;EAAA;AACzB;AAEA,eAAe,MAAMC,WAAW,SAAST,aAAa,CAAwD;EAE5GM,WAAWA,CAACI,KAAuB,EAAE;IACnC,KAAK,CAACA,KAAK,EAAEP,aAAa,EAAE,IAAID,gBAAgB,CAAC,CAAC,CAAC;EACrD;EAEAS,aAAaA,CAAA,EAAG;IACd,IAAI,CAACC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;EAClD;EAEAC,aAAaA,CAACH,KAAuB,EAAE;IACrC,IAAIA,KAAK,CAACI,aAAa,EAAE;MACvB,IAAI,CAAC,IAAI,CAACC,KAAK,CAACC,eAAe,EAAE;QAC/BC,UAAU,CAAC,MAAM;UACf,IAAI,CAACC,WAAW,CAAC;YACfF,eAAe,EAAE;UACnB,CAAqB,CAAC;QACxB,CAAC,CAAC;MACJ;MACA,OAAON,KAAK,CAACI,aAAa,CAACJ,KAAK,EAAE,IAAI,CAACC,aAAa,CAACQ,IAAI,CAAC,IAAI,CAAC,CAAC;IAClE;IACA,OAAOT,KAAK,CAACU,QAAQ;EACvB;EAEAC,YAAYA,CAACX,KAAuB,EAAE;IACpC,oBACEX,KAAA,CAAAuB,aAAA,CAAClB,UAAU;MACTmB,QAAQ,EAAGC,KAAK,IAAK;QAAC,IAAI,CAACC,MAAM,CAAC,QAAQ,EAAE,CAACD,KAAK,CAAC,CAAC;MAAA,CAAE;MACtDE,mBAAmB,EAAE,EAAG;MACxBC,qBAAqB,EAAE,IAAI,CAACC,MAAM,CAACC;IAAK,GACvC,IAAI,CAACC,WAAW,EAChB,IAAI,CAACjB,aAAa,CAACH,KAAK,CACf,CAAC;EAEjB;AACF"}
|
|
@@ -1,13 +1,82 @@
|
|
|
1
1
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
-
import React, { useCallback, useRef, useState } from 'react';
|
|
3
|
-
import { Platform, TextInput } from 'react-native';
|
|
2
|
+
import React, { useCallback, useEffect, useRef, useState } from 'react';
|
|
3
|
+
import { Animated, Platform, Text, TextInput, View } from 'react-native';
|
|
4
|
+
import { isArray } from 'lodash';
|
|
5
|
+
import IMask from 'imask';
|
|
4
6
|
import { FloatingLabel } from './floatinglabel.component';
|
|
7
|
+
const WmCursor = /*#__PURE__*/React.memo(props => {
|
|
8
|
+
const opacityAnimation = useRef(new Animated.Value(0.5)).current;
|
|
9
|
+
const runAnimation = useCallback(() => {
|
|
10
|
+
Animated.timing(opacityAnimation, {
|
|
11
|
+
toValue: 0.2,
|
|
12
|
+
duration: 500,
|
|
13
|
+
useNativeDriver: true
|
|
14
|
+
}).start(() => {
|
|
15
|
+
Animated.timing(opacityAnimation, {
|
|
16
|
+
toValue: 0.6,
|
|
17
|
+
duration: 500,
|
|
18
|
+
useNativeDriver: true
|
|
19
|
+
}).start(runAnimation);
|
|
20
|
+
});
|
|
21
|
+
}, []);
|
|
22
|
+
useEffect(() => {
|
|
23
|
+
runAnimation();
|
|
24
|
+
}, []);
|
|
25
|
+
return /*#__PURE__*/React.createElement(Animated.View, {
|
|
26
|
+
style: {
|
|
27
|
+
backgroundColor: props.color,
|
|
28
|
+
width: 2,
|
|
29
|
+
marginHorizontal: 1,
|
|
30
|
+
height: props.height,
|
|
31
|
+
opacity: opacityAnimation
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
});
|
|
5
35
|
export const WMTextInput = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
6
|
-
var _props$value, _props$defaultValue;
|
|
7
36
|
const [selectRange, setSelectRange] = useState(null);
|
|
8
37
|
const [isInputFocused, setIsInputFocused] = useState(false);
|
|
38
|
+
const [iMask, setIMask] = useState(null);
|
|
39
|
+
const [displayCursor, setDisplayCursor] = useState(false);
|
|
9
40
|
const value = useRef(props.value || '');
|
|
10
|
-
const
|
|
41
|
+
const [x, forceUpdate] = useState(1);
|
|
42
|
+
const [displayValue, setDisplayValue] = useState('');
|
|
43
|
+
const element = useRef(null);
|
|
44
|
+
// iMask initialization
|
|
45
|
+
useEffect(() => {
|
|
46
|
+
const iMask = props.displayformat ? new IMask.MaskedPattern({
|
|
47
|
+
mask: props.displayformat,
|
|
48
|
+
skipInvalid: true,
|
|
49
|
+
lazy: false,
|
|
50
|
+
definitions: {
|
|
51
|
+
'9': /\d/,
|
|
52
|
+
'A': /[a-zA-Z]/,
|
|
53
|
+
'a': /[a-z]/,
|
|
54
|
+
'*': /\w/
|
|
55
|
+
}
|
|
56
|
+
}) : null;
|
|
57
|
+
if (iMask) {
|
|
58
|
+
iMask.typedValue = value;
|
|
59
|
+
setDisplayValue(iMask.displayValue);
|
|
60
|
+
setIMask(iMask);
|
|
61
|
+
}
|
|
62
|
+
}, [props.displayformat]);
|
|
63
|
+
// set default value
|
|
64
|
+
useEffect(() => {
|
|
65
|
+
const defaultValue = props.defaultValue || props.value || '';
|
|
66
|
+
if (!value.current) {
|
|
67
|
+
value.current = defaultValue;
|
|
68
|
+
onChangeText(defaultValue);
|
|
69
|
+
}
|
|
70
|
+
}, [props.defaultValue, props.value]);
|
|
71
|
+
// set cursor position in windows
|
|
72
|
+
useEffect(() => {
|
|
73
|
+
setTimeout(() => {
|
|
74
|
+
if (Platform.OS === 'web' && (props.displayformat || props.maskchar)) {
|
|
75
|
+
var _element$current;
|
|
76
|
+
element === null || element === void 0 || (_element$current = element.current) === null || _element$current === void 0 ? void 0 : _element$current.setSelectionRange(value.current.length, value.current.length);
|
|
77
|
+
}
|
|
78
|
+
}, 100);
|
|
79
|
+
}, [value.current, props]);
|
|
11
80
|
const onSelectionChange = useCallback(e => {
|
|
12
81
|
var _e$nativeEvent;
|
|
13
82
|
if (Platform.OS !== 'android') {
|
|
@@ -22,39 +91,103 @@ export const WMTextInput = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
22
91
|
} else if (selectRange && selectRange.end > 0) {
|
|
23
92
|
setSelectRange(null);
|
|
24
93
|
}
|
|
25
|
-
}, [props.allowContentSelection, value
|
|
94
|
+
}, [props.allowContentSelection, value]);
|
|
95
|
+
// when text changes
|
|
26
96
|
const onChangeText = useCallback(text => {
|
|
27
|
-
|
|
28
|
-
|
|
97
|
+
if (!(iMask || props.maskchar)) {
|
|
98
|
+
value.current = text;
|
|
99
|
+
props.onChangeText && props.onChangeText(text);
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
let _value = value.current || '';
|
|
103
|
+
if (value.current.length - text.length > 0) {
|
|
104
|
+
_value = _value.substring(0, _value.length - (value.current.length - text.length));
|
|
105
|
+
} else if (text.length - value.current.length > 0) {
|
|
106
|
+
_value += text.slice(-1 * (text.length - value.current.length));
|
|
107
|
+
}
|
|
108
|
+
let formattedValue = _value;
|
|
109
|
+
if (props.maskchar) {
|
|
110
|
+
formattedValue = _value.replace(/./g, props.maskchar);
|
|
111
|
+
}
|
|
112
|
+
if (iMask) {
|
|
113
|
+
iMask.typedValue = _value;
|
|
114
|
+
formattedValue = iMask.displayValue;
|
|
115
|
+
}
|
|
116
|
+
if (formattedValue !== displayValue) {
|
|
117
|
+
value.current = _value;
|
|
118
|
+
props.onChangeText && props.onChangeText(_value);
|
|
119
|
+
}
|
|
120
|
+
forceUpdate(x + 1);
|
|
121
|
+
setDisplayValue(formattedValue);
|
|
122
|
+
}, [iMask, value, displayValue, props.onChangeText]);
|
|
123
|
+
const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';
|
|
124
|
+
const opts = {};
|
|
125
|
+
opts[valueExpr] = value.current;
|
|
126
|
+
const textStyle = Object.assign({}, ...(isArray(props.style) ? props.style : [props.style]));
|
|
127
|
+
const hideInput = props.displayformat || props.maskchar;
|
|
29
128
|
return /*#__PURE__*/React.createElement(React.Fragment, null, props.floatingLabel ? /*#__PURE__*/React.createElement(FloatingLabel, {
|
|
30
|
-
moveUp: !!(value.current || isInputFocused),
|
|
129
|
+
moveUp: !!(value.current || isInputFocused || displayValue),
|
|
31
130
|
label: props.floatingLabel ?? props.placeholder,
|
|
32
131
|
style: {
|
|
33
132
|
...(props.floatingLabelStyle || []),
|
|
34
133
|
...(isInputFocused ? props.activeFloatingLabelStyle || {} : {})
|
|
35
134
|
}
|
|
36
|
-
}) : null, /*#__PURE__*/React.createElement(TextInput, _extends({}, props, {
|
|
37
|
-
placeholder: props.floatingLabel ? '' : props.placeholder,
|
|
38
|
-
style: props.style,
|
|
135
|
+
}) : null, /*#__PURE__*/React.createElement(TextInput, _extends({}, props, hideInput ? opts : {}, {
|
|
136
|
+
placeholder: props.floatingLabel || displayValue ? '' : props.placeholder,
|
|
137
|
+
style: [props.style, hideInput ? {
|
|
138
|
+
color: 'transparent',
|
|
139
|
+
backgroundColor: 'transparent',
|
|
140
|
+
borderColor: 'transparent',
|
|
141
|
+
zIndex: 1
|
|
142
|
+
} : {}],
|
|
39
143
|
onFocus: e => {
|
|
40
144
|
var _props$onFocus;
|
|
41
145
|
(_props$onFocus = props.onFocus) === null || _props$onFocus === void 0 ? void 0 : _props$onFocus.call(props, e);
|
|
42
146
|
setIsInputFocused(true);
|
|
147
|
+
setDisplayCursor(true);
|
|
148
|
+
element.current = e.target;
|
|
43
149
|
},
|
|
44
150
|
onBlur: e => {
|
|
45
151
|
var _props$onBlur;
|
|
46
152
|
props === null || props === void 0 || (_props$onBlur = props.onBlur) === null || _props$onBlur === void 0 ? void 0 : _props$onBlur.call(props, e);
|
|
47
153
|
setIsInputFocused(false);
|
|
154
|
+
setDisplayCursor(false);
|
|
48
155
|
},
|
|
49
156
|
ref: ref,
|
|
50
157
|
selection: selectRange,
|
|
51
158
|
onSelectionChange: onSelectionChange,
|
|
52
159
|
caretHidden: !!(selectRange !== null && selectRange !== void 0 && selectRange.end),
|
|
53
160
|
onChangeText: text => {
|
|
54
|
-
props.onChangeText && props.onChangeText(text);
|
|
55
161
|
onChangeText(text);
|
|
56
|
-
}
|
|
162
|
+
}
|
|
163
|
+
}, hideInput ? {
|
|
164
|
+
selectionColor: 'transparent',
|
|
165
|
+
cursorColor: 'transparent',
|
|
166
|
+
onChange: () => {}
|
|
167
|
+
} : {}, {
|
|
57
168
|
contextMenuHidden: !props.allowContentSelection
|
|
58
|
-
}))
|
|
169
|
+
})), hideInput ? /*#__PURE__*/React.createElement(View, {
|
|
170
|
+
style: [props.style, {
|
|
171
|
+
display: 'flex',
|
|
172
|
+
flexDirection: 'row',
|
|
173
|
+
alignItems: 'center',
|
|
174
|
+
marginTop: -1 * (textStyle.height || textStyle.minHeight || 0) + (textStyle.marginTop || 0)
|
|
175
|
+
}]
|
|
176
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
177
|
+
style: {
|
|
178
|
+
width: undefined,
|
|
179
|
+
backgroundColor: 'transparent',
|
|
180
|
+
borderColor: 'transparent',
|
|
181
|
+
padding: 0,
|
|
182
|
+
display: 'flex',
|
|
183
|
+
color: textStyle.color,
|
|
184
|
+
fontFamily: textStyle.fontFamily,
|
|
185
|
+
fontSize: textStyle.fontSize,
|
|
186
|
+
fontWeight: textStyle.fontWeight
|
|
187
|
+
}
|
|
188
|
+
}, displayValue), displayCursor && !props.displayformat ? /*#__PURE__*/React.createElement(WmCursor, {
|
|
189
|
+
color: textStyle.color || '#000000',
|
|
190
|
+
height: textStyle.fontSize || 14
|
|
191
|
+
}) : null) : null);
|
|
59
192
|
});
|
|
60
193
|
//# sourceMappingURL=textinput.component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useRef","useState","Platform","TextInput","FloatingLabel","WMTextInput","forwardRef","props","ref","_props$value","_props$defaultValue","selectRange","setSelectRange","isInputFocused","setIsInputFocused","value","animateLabelText","floatingLabel","OS","Number","length","defaultValue","onSelectionChange","e","_e$nativeEvent","selection","nativeEvent","allowContentSelection","end","start","current","onChangeText","text","createElement","Fragment","moveUp","label","placeholder","style","floatingLabelStyle","activeFloatingLabelStyle","_extends","onFocus","_props$onFocus","call","onBlur","_props$onBlur","caretHidden","contextMenuHidden"],"sources":["textinput.component.tsx"],"sourcesContent":["import React, { ForwardedRef, useCallback, useRef, useState } from 'react';\nimport { Platform, TextInput, TextInputProps, TextStyle } from 'react-native';\nimport { FloatingLabel } from './floatinglabel.component';\n\ninterface SelectRange {\n start: number,\n end: number\n}\n\nexport const WMTextInput = React.forwardRef((props: (TextInputProps & \n {allowContentSelection: boolean, \n floatingLabel: string\n floatingLabelStyle: TextStyle,\n activeFloatingLabelStyle: TextStyle\n }), \n ref: ForwardedRef<TextInput>) => {\n const [selectRange, setSelectRange] = useState<SelectRange>(null as any);\n const [isInputFocused, setIsInputFocused] = useState(false);\n const value = useRef(props.value || '');\n \n const animateLabelText = props.floatingLabel && ( Platform.OS === 'web' ? Number(props.value?.length) > 0 : Number(props.defaultValue?.length) > 0);\n\n const onSelectionChange = useCallback((e: any) => {\n if (Platform.OS !== 'android') {\n return;\n }\n const selection = e?.nativeEvent?.selection;\n if (!props.allowContentSelection\n && selection\n && selection.end - selection.start > 0) {\n setSelectRange({\n start: value.current.length + 2,\n end: value.current.length + 2\n });\n } else if (selectRange && selectRange.end > 0){\n setSelectRange(null as any);\n }\n }, [props.allowContentSelection, value.current]);\n const onChangeText = useCallback((text: string) => {\n value.current = text;\n }, []);\n\n return (\n <>\n {props.floatingLabel ? (\n <FloatingLabel\n moveUp={!!(value.current || isInputFocused)}\n label={props.floatingLabel ?? props.placeholder} \n style={{\n ...(props.floatingLabelStyle || []),\n ...(isInputFocused ? (props.activeFloatingLabelStyle || {}) : {})\n }}/>\n ) : null}\n <TextInput\n {...props}\n placeholder={props.floatingLabel ? '' : props.placeholder }\n style={props.style}\n onFocus={(e) => {\n props.onFocus?.(e);\n setIsInputFocused(true);\n }}\n onBlur={(e) => {\n props?.onBlur?.(e);\n setIsInputFocused(false);\n }}\n ref={ref}\n selection={selectRange}\n onSelectionChange={onSelectionChange}\n caretHidden={!!selectRange?.end}\n onChangeText={(text) => {\n props.onChangeText && props.onChangeText(text);\n onChangeText(text);\n }}\n contextMenuHidden={!props.allowContentSelection}\n ></TextInput>\n </>\n );\n});"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","useCallback","useEffect","useRef","useState","Animated","Platform","Text","TextInput","View","isArray","IMask","FloatingLabel","WmCursor","memo","props","opacityAnimation","Value","current","runAnimation","timing","toValue","duration","useNativeDriver","start","createElement","style","backgroundColor","color","width","marginHorizontal","height","opacity","WMTextInput","forwardRef","ref","selectRange","setSelectRange","isInputFocused","setIsInputFocused","iMask","setIMask","displayCursor","setDisplayCursor","value","x","forceUpdate","displayValue","setDisplayValue","element","displayformat","MaskedPattern","mask","skipInvalid","lazy","definitions","typedValue","defaultValue","onChangeText","setTimeout","OS","maskchar","_element$current","setSelectionRange","length","onSelectionChange","e","_e$nativeEvent","selection","nativeEvent","allowContentSelection","end","text","_value","substring","slice","formattedValue","replace","valueExpr","opts","textStyle","Object","assign","hideInput","Fragment","floatingLabel","moveUp","label","placeholder","floatingLabelStyle","activeFloatingLabelStyle","_extends","borderColor","zIndex","onFocus","_props$onFocus","call","target","onBlur","_props$onBlur","caretHidden","selectionColor","cursorColor","onChange","contextMenuHidden","display","flexDirection","alignItems","marginTop","minHeight","undefined","padding","fontFamily","fontSize","fontWeight"],"sources":["textinput.component.tsx"],"sourcesContent":["import React, { ForwardedRef, useCallback, useEffect, useRef, useState } from 'react';\nimport { Animated, Platform, Text, TextInput, TextInputProps, TextStyle, View } from 'react-native';\nimport { isArray } from 'lodash';\nimport IMask from 'imask';\nimport { FloatingLabel } from './floatinglabel.component';\n\ninterface SelectRange {\n start: number,\n end: number\n}\n\nconst WmCursor = React.memo((props: {\n color: string,\n height: number\n}) => {\n const opacityAnimation = useRef(new Animated.Value(0.5)).current;\n const runAnimation = useCallback(() => {\n Animated.timing(opacityAnimation, {\n toValue: 0.2,\n duration: 500,\n useNativeDriver: true\n }).start(() => {\n Animated.timing(opacityAnimation, {\n toValue: 0.6,\n duration: 500,\n useNativeDriver: true\n }).start(runAnimation);\n });\n }, []);\n useEffect(() => {\n runAnimation();\n }, []);\n return (\n <Animated.View style={{\n backgroundColor: props.color,\n width: 2,\n marginHorizontal: 1,\n height: props.height,\n opacity: opacityAnimation\n }}></Animated.View>\n );\n});\n\nexport const WMTextInput = React.forwardRef((props: (TextInputProps & \n {allowContentSelection: boolean,\n displayformat: string,\n maskchar: string,\n floatingLabel: string\n floatingLabelStyle: TextStyle,\n activeFloatingLabelStyle: TextStyle\n }), \n ref: ForwardedRef<TextInput>) => {\n const [selectRange, setSelectRange] = useState<SelectRange>(null as any);\n const [isInputFocused, setIsInputFocused] = useState(false);\n const [iMask, setIMask] = useState(null as any);\n const [displayCursor, setDisplayCursor] = useState(false);\n const value = useRef(props.value || '');\n const [x, forceUpdate] = useState(1);\n const [displayValue, setDisplayValue] = useState('');\n const element = useRef(null as any);\n // iMask initialization\n useEffect(() => {\n const iMask: any = props.displayformat ? new IMask.MaskedPattern({\n mask: props.displayformat,\n skipInvalid: true,\n lazy: false,\n definitions: {\n '9': /\\d/,\n 'A': /[a-zA-Z]/,\n 'a': /[a-z]/,\n '*': /\\w/\n }\n }) : null;\n if (iMask) {\n iMask.typedValue = value;\n setDisplayValue(iMask.displayValue)\n setIMask(iMask);\n }\n },[props.displayformat]);\n // set default value\n useEffect(() => {\n const defaultValue = props.defaultValue || props.value || '';\n if (!value.current) {\n value.current = defaultValue;\n onChangeText(defaultValue);\n }\n },[props.defaultValue, props.value]);\n // set cursor position in windows\n useEffect(() => {\n setTimeout(() => {\n if (Platform.OS === 'web' && (props.displayformat || props.maskchar)) {\n element?.current?.setSelectionRange(value.current.length, value.current.length);\n }\n }, 100);\n }, [value.current, props]);\n const onSelectionChange = useCallback((e: any) => {\n if (Platform.OS !== 'android') {\n return;\n }\n const selection = e?.nativeEvent?.selection;\n if (!props.allowContentSelection\n && selection\n && selection.end - selection.start > 0) {\n setSelectRange({\n start: value.current.length + 2,\n end: value.current.length + 2\n });\n } else if (selectRange && selectRange.end > 0){\n setSelectRange(null as any);\n }\n }, [props.allowContentSelection, value]);\n // when text changes\n const onChangeText = useCallback((text: string) => {\n if (!(iMask || props.maskchar)) {\n value.current = text;\n props.onChangeText && props.onChangeText(text);\n return;\n }\n let _value = value.current || '';\n if (value.current.length - text.length > 0) {\n _value = _value.substring(0, _value.length - (value.current.length - text.length));\n } else if (text.length - value.current.length > 0) {\n _value += text.slice(-1 * (text.length - value.current.length));\n }\n let formattedValue = _value;\n if(props.maskchar) {\n formattedValue = (_value.replace(/./g, props.maskchar));\n }\n if (iMask) {\n iMask.typedValue = _value;\n formattedValue = iMask.displayValue;\n }\n if (formattedValue !== displayValue) {\n value.current = _value;\n props.onChangeText && props.onChangeText(_value);\n }\n forceUpdate(x+ 1);\n setDisplayValue(formattedValue);\n }, [iMask, value, displayValue, props.onChangeText]);\n const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';\n const opts = {} as any;\n opts[valueExpr] = value.current;\n const textStyle = Object.assign({}, ...isArray(props.style) ? props.style: [props.style]);\n const hideInput = props.displayformat || props.maskchar;\n return (\n <>\n {props.floatingLabel ? (\n <FloatingLabel\n moveUp={!!(value.current || isInputFocused || displayValue)}\n label={props.floatingLabel ?? props.placeholder} \n style={{\n ...(props.floatingLabelStyle || []),\n ...(isInputFocused ? (props.activeFloatingLabelStyle || {}) : {})\n }}/>\n ) : null}\n <TextInput\n {...props}\n {...hideInput ? opts: {}}\n placeholder={props.floatingLabel || displayValue ? '' : props.placeholder }\n style={[props.style, hideInput ? {\n color: 'transparent', \n backgroundColor: 'transparent',\n borderColor: 'transparent',\n zIndex: 1\n } : {}]}\n onFocus={(e) => {\n props.onFocus?.(e);\n setIsInputFocused(true);\n setDisplayCursor(true);\n element.current = e.target;\n }}\n onBlur={(e) => {\n props?.onBlur?.(e);\n setIsInputFocused(false);\n setDisplayCursor(false);\n }}\n ref={ref}\n selection={selectRange}\n onSelectionChange={onSelectionChange}\n caretHidden={!!selectRange?.end}\n onChangeText={(text) => {\n onChangeText(text);\n }}\n {...hideInput ? {\n selectionColor: 'transparent',\n cursorColor: 'transparent',\n onChange : () => {}\n }: {}}\n contextMenuHidden={!props.allowContentSelection}\n ></TextInput>\n {\n hideInput ? (\n <View style={[props.style, {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n marginTop: -1 * (textStyle.height || textStyle.minHeight || 0)\n + (textStyle.marginTop || 0)}]}>\n <Text style={{ \n width: undefined,\n backgroundColor: 'transparent', \n borderColor: 'transparent',\n padding: 0,\n display: 'flex',\n color: textStyle.color,\n fontFamily: textStyle.fontFamily,\n fontSize: textStyle.fontSize,\n fontWeight: textStyle.fontWeight\n }}>\n {displayValue}\n </Text>\n {\n (displayCursor && !props.displayformat) ? React.createElement(WmCursor, {\n color: textStyle.color || '#000000',\n height: textStyle.fontSize || 14\n }) : null\n }\n </View>\n ) : null\n }\n </>\n );\n});"],"mappings":"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"}
|
app-rn-runtime/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wavemaker/app-rn-runtime",
|
|
3
|
-
"version": "11.7.0-next.
|
|
3
|
+
"version": "11.7.0-next.139419",
|
|
4
4
|
"description": "''",
|
|
5
5
|
"main": "index",
|
|
6
6
|
"module": "index",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"@react-navigation/native": "6.1.7",
|
|
50
50
|
"@react-navigation/stack": "^6.3.7",
|
|
51
51
|
"@types/lodash-es": "^4.17.6",
|
|
52
|
-
"@wavemaker/variables": "11.7.0-next.
|
|
52
|
+
"@wavemaker/variables": "11.7.0-next.139419",
|
|
53
53
|
"axios": "^1.4.0",
|
|
54
54
|
"color": "4.2.3",
|
|
55
55
|
"cross-env": "^5.2.0",
|
|
@@ -60,6 +60,7 @@
|
|
|
60
60
|
"expo-linear-gradient": "12.3.0",
|
|
61
61
|
"expo-modules-core": "~1.1.0",
|
|
62
62
|
"fast-xml-parser": "^3.17.6",
|
|
63
|
+
"imask": "^7.5.0",
|
|
63
64
|
"lodash-es": "^4.17.21",
|
|
64
65
|
"lottie-react-native": "5.1.6",
|
|
65
66
|
"moment": "^2.29.1",
|
|
@@ -130,7 +131,7 @@
|
|
|
130
131
|
"typescript": "^5.1.3",
|
|
131
132
|
"victory-native": "36.6.11",
|
|
132
133
|
"yargs": "^16.2.0",
|
|
133
|
-
"@wavemaker/variables": "11.7.0-next.
|
|
134
|
+
"@wavemaker/variables": "11.7.0-next.139419"
|
|
134
135
|
},
|
|
135
136
|
"jest": {
|
|
136
137
|
"preset": "react-native",
|