@wavemaker/app-rn-runtime 11.14.1-18.6445 → 11.14.1-19.6462
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/basic/bottomsheet/bottomsheet.component.js +0 -12
- package/components/basic/bottomsheet/bottomsheet.component.js.map +1 -1
- package/components/basic/progress-circle/progress-circle.component.js +3 -3
- package/components/basic/progress-circle/progress-circle.component.js.map +1 -1
- package/components/chart/area-chart/area-chart.component.js +9 -26
- package/components/chart/area-chart/area-chart.component.js.map +1 -1
- package/components/chart/bar-chart/bar-chart.component.js +6 -38
- package/components/chart/bar-chart/bar-chart.component.js.map +1 -1
- package/components/chart/bar-chart/bar-chart.props.js +0 -1
- package/components/chart/bar-chart/bar-chart.props.js.map +1 -1
- package/components/chart/basechart.component.js +15 -8
- package/components/chart/basechart.component.js.map +1 -1
- package/components/chart/basechart.props.js +0 -1
- package/components/chart/basechart.props.js.map +1 -1
- package/components/chart/bubble-chart/bubble-chart.component.js +5 -22
- package/components/chart/bubble-chart/bubble-chart.component.js.map +1 -1
- package/components/chart/line-chart/line-chart.component.js +5 -22
- package/components/chart/line-chart/line-chart.component.js.map +1 -1
- package/components/chart/pie-chart/pie-chart.component.js +3 -14
- package/components/chart/pie-chart/pie-chart.component.js.map +1 -1
- package/components/container/wizard/wizard.component.js +1 -1
- package/components/container/wizard/wizard.component.js.map +1 -1
- package/components/container/wizard/wizard.props.js +1 -0
- package/components/container/wizard/wizard.props.js.map +1 -1
- package/components/container/wizard/wizardstep/wizardstep.component.js +2 -2
- package/components/container/wizard/wizardstep/wizardstep.component.js.map +1 -1
- package/components/data/form/form-field/form-field.component.js +0 -1
- package/components/data/form/form-field/form-field.component.js.map +1 -1
- package/components/data/form/form-field/form-field.props.js +0 -1
- package/components/data/form/form-field/form-field.props.js.map +1 -1
- package/components/data/form/form.component.js +1 -4
- package/components/data/form/form.component.js.map +1 -1
- package/components/dialogs/dialogcontent/dialogcontent.component.js +2 -1
- package/components/dialogs/dialogcontent/dialogcontent.component.js.map +1 -1
- package/components/input/baseinput/baseinput.component.js +3 -21
- package/components/input/baseinput/baseinput.component.js.map +1 -1
- package/components/input/baseinput/baseinput.props.js +0 -1
- package/components/input/baseinput/baseinput.props.js.map +1 -1
- package/components/input/basenumber/basenumber.component.js +3 -18
- package/components/input/basenumber/basenumber.component.js.map +1 -1
- package/components/input/basenumber/basenumber.props.js +0 -1
- package/components/input/basenumber/basenumber.props.js.map +1 -1
- package/components/input/checkboxset/checkboxset.component.js +1 -1
- package/components/input/checkboxset/checkboxset.component.js.map +1 -1
- package/components/input/currency/currency.component.js +0 -2
- package/components/input/currency/currency.component.js.map +1 -1
- package/components/input/currency/currency.styles.js +1 -10
- package/components/input/currency/currency.styles.js.map +1 -1
- package/components/input/number/number.component.js +0 -2
- package/components/input/number/number.component.js.map +1 -1
- package/components/input/number/number.styles.js +0 -4
- package/components/input/number/number.styles.js.map +1 -1
- package/components/input/radioset/radioset.component.js +6 -3
- package/components/input/radioset/radioset.component.js.map +1 -1
- package/components/input/text/text.component.js +0 -2
- package/components/input/text/text.component.js.map +1 -1
- package/components/input/text/text.props.js +1 -0
- package/components/input/text/text.props.js.map +1 -1
- package/components/input/text/text.styles.js +0 -17
- package/components/input/text/text.styles.js.map +1 -1
- package/components/input/textarea/textarea.component.js +0 -1
- package/components/input/textarea/textarea.component.js.map +1 -1
- package/components/input/textarea/textarea.styles.js +0 -4
- package/components/input/textarea/textarea.styles.js.map +1 -1
- package/components/navigation/popover/popover.component.js +3 -3
- package/components/navigation/popover/popover.component.js.map +1 -1
- package/core/AppConfig.js.map +1 -1
- package/core/advanced-promise-rejection-tracker.js +207 -0
- package/core/advanced-promise-rejection-tracker.js.map +1 -0
- package/core/base.component.js +5 -0
- package/core/base.component.js.map +1 -1
- package/core/components/error-fallback/error-fallback.component.js +50 -18
- package/core/components/error-fallback/error-fallback.component.js.map +1 -1
- package/core/components/error-fallback/error-fallback.styles.js +4 -1
- package/core/components/error-fallback/error-fallback.styles.js.map +1 -1
- package/core/components/textinput.component.js +2 -6
- package/core/components/textinput.component.js.map +1 -1
- package/core/error-boundary.component.js +46 -2
- package/core/error-boundary.component.js.map +1 -1
- package/core/fixed-view.component.js +2 -19
- package/core/fixed-view.component.js.map +1 -1
- package/core/global-error-handler.service.js +177 -0
- package/core/global-error-handler.service.js.map +1 -0
- package/core/tappable.component.js +1 -1
- package/core/tappable.component.js.map +1 -1
- package/core/viewport.js +8 -13
- package/core/viewport.js.map +1 -1
- package/gestures/carousel-swipe.animation.js +1 -0
- package/gestures/carousel-swipe.animation.js.map +1 -1
- package/npm-shrinkwrap.json +112 -112
- package/package-lock.json +112 -112
- package/package.json +2 -2
- package/runtime/App.js +174 -12
- package/runtime/App.js.map +1 -1
- package/runtime/base-page.component.js +11 -2
- package/runtime/base-page.component.js.map +1 -1
- package/runtime/navigator/stack.navigator.js +6 -0
- package/runtime/navigator/stack.navigator.js.map +1 -1
- package/styles/theme.js +0 -6
- package/styles/theme.js.map +1 -1
|
@@ -24,7 +24,6 @@ export class BaseNumberComponent extends BaseComponent {
|
|
|
24
24
|
_defineProperty(this, "GROUP", void 0);
|
|
25
25
|
_defineProperty(this, "widgetRef", null);
|
|
26
26
|
_defineProperty(this, "cursor", 0);
|
|
27
|
-
_defineProperty(this, "_submitEditingTriggered", false);
|
|
28
27
|
this.DECIMAL = '.';
|
|
29
28
|
this.GROUP = ',';
|
|
30
29
|
}
|
|
@@ -202,13 +201,11 @@ export class BaseNumberComponent extends BaseComponent {
|
|
|
202
201
|
this.props.triggerValidation && this.props.triggerValidation();
|
|
203
202
|
}, 10);
|
|
204
203
|
}
|
|
205
|
-
const skipBlurCallback = this._submitEditingTriggered;
|
|
206
|
-
this._submitEditingTriggered = false;
|
|
207
204
|
if (this.state.props.updateon === 'blur' || this.state.props.updateon === 'default') {
|
|
208
205
|
let oldVal = this.state.props.datavalue || '';
|
|
209
206
|
if (oldVal !== newVal && this.state.props.updateon === 'blur') {
|
|
210
|
-
this.updateDatavalue(newVal, event,
|
|
211
|
-
} else
|
|
207
|
+
this.updateDatavalue(newVal, event, 'blur');
|
|
208
|
+
} else {
|
|
212
209
|
this.invokeEventCallback('onBlur', [event, this.proxy]);
|
|
213
210
|
}
|
|
214
211
|
this.setState({
|
|
@@ -222,15 +219,6 @@ export class BaseNumberComponent extends BaseComponent {
|
|
|
222
219
|
isInputFocused: true
|
|
223
220
|
});
|
|
224
221
|
}
|
|
225
|
-
onSubmitEditing(event) {
|
|
226
|
-
var _event$persist;
|
|
227
|
-
event === null || event === void 0 || (_event$persist = event.persist) === null || _event$persist === void 0 || _event$persist.call(event);
|
|
228
|
-
this._submitEditingTriggered = true;
|
|
229
|
-
this.updateDatavalue(this.state.textValue, null);
|
|
230
|
-
setTimeout(() => {
|
|
231
|
-
this.invokeEventCallback('onSubmitediting', [event, this.proxy]);
|
|
232
|
-
}, 100);
|
|
233
|
-
}
|
|
234
222
|
|
|
235
223
|
/**
|
|
236
224
|
* returns the number of decimal places a number have.
|
|
@@ -245,7 +233,6 @@ export class BaseNumberComponent extends BaseComponent {
|
|
|
245
233
|
return 0;
|
|
246
234
|
}
|
|
247
235
|
validateInputEntry($event) {
|
|
248
|
-
var _$event$persist, _$event$nativeEvent;
|
|
249
236
|
const props = this.state.props;
|
|
250
237
|
|
|
251
238
|
// allow actions if control key is pressed or if backspace is pressed. (for Mozilla).
|
|
@@ -273,9 +260,7 @@ export class BaseNumberComponent extends BaseComponent {
|
|
|
273
260
|
if ((includes(inputValue, '+') || includes(inputValue, '-')) && ($event.key === '+' || $event.key === '-')) {
|
|
274
261
|
$event.preventDefault();
|
|
275
262
|
}
|
|
276
|
-
|
|
277
|
-
const key = (_$event$nativeEvent = $event.nativeEvent) === null || _$event$nativeEvent === void 0 ? void 0 : _$event$nativeEvent.key;
|
|
278
|
-
this.invokeEventCallback('onKeypress', [$event, this.proxy, key]);
|
|
263
|
+
this.invokeEventCallback('onKeypress', [$event, this.proxy]);
|
|
279
264
|
}
|
|
280
265
|
|
|
281
266
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["includes","intersection","isNaN","isFinite","toArray","isNil","BaseComponent","BaseComponentState","DEFAULT_CLASS","Platform","countDecimalDigits","validateField","BaseNumberState","constructor","args","_defineProperty","BaseNumberComponent","props","defaultClass","defaultProps","defaultState","DECIMAL","GROUP","onChange","event","state","updateon","updateDatavalue","target","value","focus","_this$widgetRef","widgetRef","validateOnDevice","type","_value$match","isCurrencyField","isValidText","test","Number","match","length","onChangeText","shouldFormateToNumber","newValue","parseNumber","replace","isValidTextOnDevice","decimalPlacesInNumber","decimalPlaces","updateState","textValue","validate","invokeChange","e","OS","cursor","selectionStart","setState","validationObj","isValid","errorType","handleValidation","regexp","condition","RegExp","val","parts","split","NaN","number","join","decimal","sum","parseFloat","toFixed","Object","is","source","model","toString","oldValue","datavalue","validNumber","isValidNumber","invokeEventCallback","proxy","Promise","resolve","hastwowaybinding","newProps","setImmediate","setProp","then","onFieldChange","skipscripteventtrigger","setTimeout","onBlur","isDisplayValuePresent","textVal","newVal","undefined","triggerValidation","skipBlurCallback","_submitEditingTriggered","oldVal","isInputFocused","onFocus","onSubmitEditing","_event$persist","persist","call","countDecimals","decimalValue","validateInputEntry","$event","_$event$persist","_$event$nativeEvent","ctrlKey","key","validity","inputValue","step","preventDefault","nativeEvent","getValueInRange","minvalue","maxvalue","required","isInteger","resetValidations","onPropertyChange","name","$new","$old","isDefault","isdefault","bind","displayValue"],"sources":["basenumber.component.ts"],"sourcesContent":["import { includes, intersection, isNaN, isFinite, toArray, isNil } from 'lodash';\nimport BaseNumberProps from '@wavemaker/app-rn-runtime/components/input/basenumber/basenumber.props';\nimport { BaseComponent, BaseComponentState } from \"@wavemaker/app-rn-runtime/core/base.component\";\nimport { BaseNumberStyles } from '@wavemaker/app-rn-runtime/components/input/basenumber/basenumber.styles';\nimport { DEFAULT_CLASS } from \"@wavemaker/app-rn-runtime/components/navigation/basenav/basenav.styles\";\nimport { Platform, TextInput } from 'react-native';\nimport { countDecimalDigits, validateField } from '@wavemaker/app-rn-runtime/core/utils';\n\nexport class BaseNumberState <T extends BaseNumberProps> extends BaseComponentState<T> {\n isValid: boolean = true;\n isInputFocused: boolean = false;\n textValue: string = '';\n isDefault = false;\n errorType = '';\n}\n\nexport abstract class BaseNumberComponent< T extends BaseNumberProps, S extends BaseNumberState<T>, L extends BaseNumberStyles> extends BaseComponent<T, S, L> {\n private DECIMAL;\n private GROUP;\n public widgetRef: TextInput | null = null;\n private cursor: any = 0;\n private _submitEditingTriggered = false;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n this.DECIMAL = '.';\n this.GROUP = ',';\n }\n\n onChange(event: any) {\n if (this.state.props.updateon === 'default') {\n this.updateDatavalue(event.target.value, event);\n }\n }\n\n focus() {\n this?.widgetRef?.focus();\n }\n\n validateOnDevice(value: string, type: 'number' | 'currency') {\n const isCurrencyField = type === 'currency';\n let isValidText = true;\n\n // * no alphabets except E, may contain E only once\n if (/[a-df-zA-DF-Z]/.test(value) || !/^[^eE]*[eE]?[^eE]*$/.test(value)) {\n isValidText = false;\n }\n\n // * currency only: check for negative number\n if (isCurrencyField && (Number(value) < 0 || /-/g.test(value))) {\n isValidText = false;\n }\n\n // * number only: not more than one minus and doesn't end with minus (-)\n if (!isCurrencyField && (Number(value.match(/-/g)?.length) > 1) || /\\w-/.test(value)) {\n isValidText = false;\n }\n\n // * check for more than one decimal point\n if (/^\\d*\\.\\d*\\..*$/.test(value)) {\n isValidText = false;\n }\n\n // * check for spaces and comma\n if (/[\\s,]/.test(value)) {\n isValidText = false;\n }\n\n return isValidText;\n }\n\n onChangeText(value: string, type: 'number' | 'currency', shouldFormateToNumber?: boolean) {\n const newValue = shouldFormateToNumber ? `${this.parseNumber(value.replace(/[^0-9.]/g, ''))}` : value;\n const isValidTextOnDevice = this.validateOnDevice(newValue, type);\n if (!isValidTextOnDevice) {\n return;\n }\n\n const decimalPlacesInNumber = countDecimalDigits(newValue);\n\n if (this.props.decimalPlaces < decimalPlacesInNumber) {\n return;\n }\n\n this.updateState({\n textValue: newValue\n } as S, () => {\n if (this.state.props.updateon === 'default') {\n this.validate(newValue);\n this.updateDatavalue(newValue, 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 validate(value: any) {\n const validationObj = validateField(this.state.props, value);\n this.updateState({\n isValid: validationObj.isValid,\n errorType: validationObj.errorType\n } as S);\n\n }\n\n handleValidation(value: any) {\n const props = this.state.props;\n if (props.regexp) {\n const condition = new RegExp(props.regexp, 'g');\n return condition.test(value);\n }\n return true;\n }\n\n /**\n * Method parses the Localized number(string) to a valid number.\n * if the string dose not result to a valid number then returns NaN.\n * @param {string} val Localized number.\n * @returns {number}\n */\n private parseNumber(val: string): any {\n // splits string into two parts. decimal and number.\n const parts = val.split(this.DECIMAL);\n if (!parts.length) {\n return;\n }\n if (parts.length > 2) {\n return NaN;\n }\n // If number have decimal point and not have a decimal value then return.\n if (parts[1] === '') {\n return NaN;\n }\n // replaces all group separators form the number.\n const number = Number(parts[0].split(this.GROUP).join(''));\n const decimal = Number(`0.${parts[1] || 0}`);\n if (Number.isNaN(number) || Number.isNaN(decimal)) {\n return NaN;\n }\n const sum = parts.length > 1 ? parseFloat((number + decimal).toFixed(parts[1].length)) : number + decimal;\n // if the number is negative then calculate the number as number - decimal\n // Ex: number = -123 and decimal = 0.45 then number - decimal = -123-045 = -123.45\n // If entered number is -0.1 to -0.9 then the number is -0 and decimal is 0.1 to 0.9. Now calaculate the number as number-decimal\n // Ex: number = -0 and decimal = 0.1 then number-decimal = -0-0.1 = -0.1\n if (number === 0) {\n return Object.is(0, number) ? sum : number - decimal;\n }\n return number > 0 ? sum : number - decimal;\n }\n\n updateDatavalue(value: any, event?: any, source?: any) {\n const model = value && this.parseNumber(value.toString());\n const props = this.state.props;\n const oldValue = props.datavalue;\n if (value === oldValue) {\n return;\n }\n const validNumber = this.isValidNumber(model) || value === oldValue + '.';\n if (!validNumber) {\n this.invokeEventCallback('onError', [ event, this.proxy, value, oldValue ]);\n return;\n }\n\n new Promise((resolve) => {\n if (props.hastwowaybinding) {\n const newProps: any = {\n props: {\n datavalue: model || Number(value)\n }\n }\n if(this.state.props.updateon === 'blur'){\n newProps.textValue = model || Number(value)\n }\n\n this.updateState({...newProps} as S)\n\n setImmediate(()=> this.setProp(\"datavalue\", value));\n resolve(true);\n } else {\n this.updateState({\n props: {\n datavalue: model || Number(value)\n }\n } as S, () => resolve(true));\n }\n }).then(() => {\n if(!this.props.onFieldChange && value !== oldValue){\n this.invokeEventCallback('onChange', [event, this.proxy, value, oldValue]);\n }else if(this.state.props.skipscripteventtrigger && this.props.onFieldChange){\n this.props.onFieldChange('datavalue', value, oldValue, false);\n }\n\n if (source === 'blur') {\n setTimeout(() => {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }, 10);\n }\n });\n }\n\n onBlur(event: any, isDisplayValuePresent?: boolean) {\n const textVal = this.state.textValue || '';\n let newVal = isDisplayValuePresent ? textVal : event.target.value || textVal;\n this.validate(newVal);\n if (newVal === '' || newVal == undefined) {\n setTimeout(() => {\n this.props.triggerValidation && this.props.triggerValidation();\n },10)\n }\n\n const skipBlurCallback = this._submitEditingTriggered;\n this._submitEditingTriggered = false;\n\n if (this.state.props.updateon === 'blur' || this.state.props.updateon === 'default') {\n let oldVal = this.state.props.datavalue || '';\n if (oldVal !== newVal && this.state.props.updateon === 'blur') {\n this.updateDatavalue(newVal, event, skipBlurCallback ? undefined : 'blur');\n } else if (!skipBlurCallback) {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }\n this.setState({ isInputFocused: false});\n }\n }\n\n onFocus(event: any) {\n this.invokeEventCallback('onFocus', [ event, this.proxy]);\n this.setState({ isInputFocused: true});\n }\n\n onSubmitEditing(event: any) {\n event?.persist?.();\n this._submitEditingTriggered = true;\n this.updateDatavalue(this.state.textValue, null);\n setTimeout(() => {\n this.invokeEventCallback('onSubmitediting', [event, this.proxy]);\n }, 100);\n }\n\n /**\n * returns the number of decimal places a number have.\n * @param value: number\n * @returns {number}\n */\n private countDecimals(value: any) {\n if (value && ((value % 1) !== 0)) {\n const decimalValue = value.toString().split('.')[1];\n return decimalValue && decimalValue.length;\n }\n return 0;\n }\n\n public validateInputEntry($event: any) {\n const props = this.state.props;\n\n // allow actions if control key is pressed or if backspace is pressed. (for Mozilla).\n if ($event.ctrlKey || includes(['Backspace', 'ArrowRight', 'ArrowLeft', 'Tab', 'Enter', 'Delete'], $event.key)) {\n return;\n }\n\n const validity = new RegExp(`^[\\\\d\\\\s-,.e+${this.GROUP}${this.DECIMAL}]$`, 'i');\n const inputValue = $event.target.value;\n // validates entering of decimal values only when user provides decimal limit(i.e step contains decimal values).\n if (inputValue && this.countDecimals(props.step) && (this.countDecimals(inputValue) >= this.countDecimals(props.step))) {\n $event.preventDefault();\n }\n // validates if user entered an invalid character.\n if (!validity.test($event.key)) {\n $event.preventDefault();\n }\n // a decimal value can be entered only once in the input.\n if (includes(inputValue, this.DECIMAL) && $event.key === this.DECIMAL) {\n $event.preventDefault();\n }\n // 'e' can be entered only once in the input.\n if (intersection(toArray(inputValue), ['e', 'E']).length && includes('eE', $event.key)) {\n $event.preventDefault();\n }\n if ((includes(inputValue, '+') || includes(inputValue, '-')) && ($event.key === '+' || $event.key === '-')) {\n $event.preventDefault();\n }\n $event?.persist?.();\n const key = $event.nativeEvent?.key;\n this.invokeEventCallback('onKeypress', [$event, this.proxy, key]);\n }\n\n /**\n * returns a valid number by validating the minimum and maximum values.\n * @param {number} value\n * @returns {number}\n */\n private getValueInRange(value: number): number {\n const props = this.state.props;\n if (props.minvalue && !isNil(value) && !isNaN(props.minvalue) && value < props.minvalue) {\n this.updateState({ errorType: 'minvalue'} as S);\n return props.minvalue;\n }\n if (props.maxvalue && !isNil(value) && !isNaN(props.maxvalue) && value > props.maxvalue) {\n this.updateState({ errorType: 'maxvalue'} as S);\n return props.maxvalue;\n }\n return value;\n }\n\n /**\n * Adds validations for the number before updating the widget model. like validating min and max value for the widget.\n * @param {number} val number to be validated\n * @returns {number}\n */\n private isValidNumber(val: number): boolean {\n const props = this.state.props;\n\n //empty number widget should not show validation error when required is false\n // @ts-ignore\n if (this.state.props.required === false && val === '') {\n return true;\n }\n // id number is infinite then consider it as invalid value\n if (isNaN(val) || !isFinite(val) || (!Number.isInteger(props.step) &&\n this.countDecimals(val) > this.countDecimals(props.step))) {\n this.updateState({\n isValid: false,\n } as S);\n return false;\n }\n if (val !== this.getValueInRange(val)) {\n this.updateState({\n isValid: false,\n } as S);\n return true;\n }\n this.resetValidations();\n return true;\n }\n\n // resets all the flags related to the widget's validation.\n protected resetValidations() {\n this.updateState({\n isValid: true,\n } as S);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'minvalue':\n case 'maxvalue':\n if ($new|| $old) {\n this.isValidNumber($new);\n }\n break;\n case 'datavalue':\n this.updateState({\n textValue: $new,\n } as S);\n const isDefault = this.state.props.isdefault;\n if (isDefault) {\n this.updateState(\n { props: {isdefault: false} } as S, \n !this.state.props.skipscripteventtrigger && this.props.onFieldChange && this.props.onFieldChange.bind(this, 'datavalue', $new, $old, isDefault)\n );\n } \n else {\n if($new === $old || ($new && $old && $new.toString() === $old.toString())) {\n break;\n }\n !this.state.props.skipscripteventtrigger && this.props.onFieldChange && this.props.onFieldChange('datavalue', $new, $old, isDefault);\n }\n break;\n case 'displayValue': \n this.updateState({\n displayValue: $new,\n } as any)\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["includes","intersection","isNaN","isFinite","toArray","isNil","BaseComponent","BaseComponentState","DEFAULT_CLASS","Platform","countDecimalDigits","validateField","BaseNumberState","constructor","args","_defineProperty","BaseNumberComponent","props","defaultClass","defaultProps","defaultState","DECIMAL","GROUP","onChange","event","state","updateon","updateDatavalue","target","value","focus","_this$widgetRef","widgetRef","validateOnDevice","type","_value$match","isCurrencyField","isValidText","test","Number","match","length","onChangeText","shouldFormateToNumber","newValue","parseNumber","replace","isValidTextOnDevice","decimalPlacesInNumber","decimalPlaces","updateState","textValue","validate","invokeChange","e","OS","cursor","selectionStart","setState","validationObj","isValid","errorType","handleValidation","regexp","condition","RegExp","val","parts","split","NaN","number","join","decimal","sum","parseFloat","toFixed","Object","is","source","model","toString","oldValue","datavalue","validNumber","isValidNumber","invokeEventCallback","proxy","Promise","resolve","hastwowaybinding","newProps","setImmediate","setProp","then","onFieldChange","skipscripteventtrigger","setTimeout","onBlur","isDisplayValuePresent","textVal","newVal","undefined","triggerValidation","oldVal","isInputFocused","onFocus","countDecimals","decimalValue","validateInputEntry","$event","ctrlKey","key","validity","inputValue","step","preventDefault","getValueInRange","minvalue","maxvalue","required","isInteger","resetValidations","onPropertyChange","name","$new","$old","isDefault","isdefault","bind","displayValue"],"sources":["basenumber.component.ts"],"sourcesContent":["import { includes, intersection, isNaN, isFinite, toArray, isNil } from 'lodash';\nimport BaseNumberProps from '@wavemaker/app-rn-runtime/components/input/basenumber/basenumber.props';\nimport { BaseComponent, BaseComponentState } from \"@wavemaker/app-rn-runtime/core/base.component\";\nimport { BaseNumberStyles } from '@wavemaker/app-rn-runtime/components/input/basenumber/basenumber.styles';\nimport { DEFAULT_CLASS } from \"@wavemaker/app-rn-runtime/components/navigation/basenav/basenav.styles\";\nimport { Platform, TextInput } from 'react-native';\nimport { countDecimalDigits, validateField } from '@wavemaker/app-rn-runtime/core/utils';\n\nexport class BaseNumberState <T extends BaseNumberProps> extends BaseComponentState<T> {\n isValid: boolean = true;\n isInputFocused: boolean = false;\n textValue: string = '';\n isDefault = false;\n errorType = '';\n}\n\nexport abstract class BaseNumberComponent< T extends BaseNumberProps, S extends BaseNumberState<T>, L extends BaseNumberStyles> extends BaseComponent<T, S, L> {\n private DECIMAL;\n private GROUP;\n public widgetRef: TextInput | null = null;\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 this.DECIMAL = '.';\n this.GROUP = ',';\n }\n\n onChange(event: any) {\n if (this.state.props.updateon === 'default') {\n this.updateDatavalue(event.target.value, event);\n }\n }\n\n focus() {\n this?.widgetRef?.focus();\n }\n\n validateOnDevice(value: string, type: 'number' | 'currency') {\n const isCurrencyField = type === 'currency';\n let isValidText = true;\n\n // * no alphabets except E, may contain E only once\n if (/[a-df-zA-DF-Z]/.test(value) || !/^[^eE]*[eE]?[^eE]*$/.test(value)) {\n isValidText = false;\n }\n\n // * currency only: check for negative number\n if (isCurrencyField && (Number(value) < 0 || /-/g.test(value))) {\n isValidText = false;\n }\n\n // * number only: not more than one minus and doesn't end with minus (-)\n if (!isCurrencyField && (Number(value.match(/-/g)?.length) > 1) || /\\w-/.test(value)) {\n isValidText = false;\n }\n\n // * check for more than one decimal point\n if (/^\\d*\\.\\d*\\..*$/.test(value)) {\n isValidText = false;\n }\n\n // * check for spaces and comma\n if (/[\\s,]/.test(value)) {\n isValidText = false;\n }\n\n return isValidText;\n }\n\n onChangeText(value: string, type: 'number' | 'currency', shouldFormateToNumber?: boolean) {\n const newValue = shouldFormateToNumber ? `${this.parseNumber(value.replace(/[^0-9.]/g, ''))}` : value;\n const isValidTextOnDevice = this.validateOnDevice(newValue, type);\n if (!isValidTextOnDevice) {\n return;\n }\n\n const decimalPlacesInNumber = countDecimalDigits(newValue);\n\n if (this.props.decimalPlaces < decimalPlacesInNumber) {\n return;\n }\n\n this.updateState({\n textValue: newValue\n } as S, () => {\n if (this.state.props.updateon === 'default') {\n this.validate(newValue);\n this.updateDatavalue(newValue, 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 validate(value: any) {\n const validationObj = validateField(this.state.props, value);\n this.updateState({\n isValid: validationObj.isValid,\n errorType: validationObj.errorType\n } as S);\n\n }\n\n handleValidation(value: any) {\n const props = this.state.props;\n if (props.regexp) {\n const condition = new RegExp(props.regexp, 'g');\n return condition.test(value);\n }\n return true;\n }\n\n /**\n * Method parses the Localized number(string) to a valid number.\n * if the string dose not result to a valid number then returns NaN.\n * @param {string} val Localized number.\n * @returns {number}\n */\n private parseNumber(val: string): any {\n // splits string into two parts. decimal and number.\n const parts = val.split(this.DECIMAL);\n if (!parts.length) {\n return;\n }\n if (parts.length > 2) {\n return NaN;\n }\n // If number have decimal point and not have a decimal value then return.\n if (parts[1] === '') {\n return NaN;\n }\n // replaces all group separators form the number.\n const number = Number(parts[0].split(this.GROUP).join(''));\n const decimal = Number(`0.${parts[1] || 0}`);\n if (Number.isNaN(number) || Number.isNaN(decimal)) {\n return NaN;\n }\n const sum = parts.length > 1 ? parseFloat((number + decimal).toFixed(parts[1].length)) : number + decimal;\n // if the number is negative then calculate the number as number - decimal\n // Ex: number = -123 and decimal = 0.45 then number - decimal = -123-045 = -123.45\n // If entered number is -0.1 to -0.9 then the number is -0 and decimal is 0.1 to 0.9. Now calaculate the number as number-decimal\n // Ex: number = -0 and decimal = 0.1 then number-decimal = -0-0.1 = -0.1\n if (number === 0) {\n return Object.is(0, number) ? sum : number - decimal;\n }\n return number > 0 ? sum : number - decimal;\n }\n\n updateDatavalue(value: any, event?: any, source?: any) {\n const model = value && this.parseNumber(value.toString());\n const props = this.state.props;\n const oldValue = props.datavalue;\n if (value === oldValue) {\n return;\n }\n const validNumber = this.isValidNumber(model) || value === oldValue + '.';\n if (!validNumber) {\n this.invokeEventCallback('onError', [ event, this.proxy, value, oldValue ]);\n return;\n }\n\n new Promise((resolve) => {\n if (props.hastwowaybinding) {\n const newProps: any = {\n props: {\n datavalue: model || Number(value)\n }\n }\n if(this.state.props.updateon === 'blur'){\n newProps.textValue = model || Number(value)\n }\n\n this.updateState({...newProps} as S)\n\n setImmediate(()=> this.setProp(\"datavalue\", value));\n resolve(true);\n } else {\n this.updateState({\n props: {\n datavalue: model || Number(value)\n }\n } as S, () => resolve(true));\n }\n }).then(() => {\n if(!this.props.onFieldChange && value !== oldValue){\n this.invokeEventCallback('onChange', [event, this.proxy, value, oldValue]);\n }else if(this.state.props.skipscripteventtrigger && this.props.onFieldChange){\n this.props.onFieldChange('datavalue', value, oldValue, false);\n }\n\n if (source === 'blur') {\n setTimeout(() => {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }, 10);\n }\n });\n }\n\n onBlur(event: any, isDisplayValuePresent?: boolean) {\n const textVal = this.state.textValue || '';\n let newVal = isDisplayValuePresent ? textVal : event.target.value || textVal;\n this.validate(newVal);\n if (newVal === '' || newVal == undefined) {\n setTimeout(() => {\n this.props.triggerValidation && this.props.triggerValidation();\n },10)\n }\n if (this.state.props.updateon === 'blur' || this.state.props.updateon === 'default') {\n let oldVal = this.state.props.datavalue || '';\n if (oldVal !== newVal && this.state.props.updateon === 'blur') {\n this.updateDatavalue(newVal, event, 'blur');\n } else {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }\n this.setState({ isInputFocused: false});\n }\n }\n\n onFocus(event: any) {\n this.invokeEventCallback('onFocus', [ event, this.proxy]);\n this.setState({ isInputFocused: true});\n }\n\n /**\n * returns the number of decimal places a number have.\n * @param value: number\n * @returns {number}\n */\n private countDecimals(value: any) {\n if (value && ((value % 1) !== 0)) {\n const decimalValue = value.toString().split('.')[1];\n return decimalValue && decimalValue.length;\n }\n return 0;\n }\n\n public validateInputEntry($event: any) {\n const props = this.state.props;\n\n // allow actions if control key is pressed or if backspace is pressed. (for Mozilla).\n if ($event.ctrlKey || includes(['Backspace', 'ArrowRight', 'ArrowLeft', 'Tab', 'Enter', 'Delete'], $event.key)) {\n return;\n }\n\n const validity = new RegExp(`^[\\\\d\\\\s-,.e+${this.GROUP}${this.DECIMAL}]$`, 'i');\n const inputValue = $event.target.value;\n // validates entering of decimal values only when user provides decimal limit(i.e step contains decimal values).\n if (inputValue && this.countDecimals(props.step) && (this.countDecimals(inputValue) >= this.countDecimals(props.step))) {\n $event.preventDefault();\n }\n // validates if user entered an invalid character.\n if (!validity.test($event.key)) {\n $event.preventDefault();\n }\n // a decimal value can be entered only once in the input.\n if (includes(inputValue, this.DECIMAL) && $event.key === this.DECIMAL) {\n $event.preventDefault();\n }\n // 'e' can be entered only once in the input.\n if (intersection(toArray(inputValue), ['e', 'E']).length && includes('eE', $event.key)) {\n $event.preventDefault();\n }\n if ((includes(inputValue, '+') || includes(inputValue, '-')) && ($event.key === '+' || $event.key === '-')) {\n $event.preventDefault();\n }\n this.invokeEventCallback('onKeypress', [ $event, this.proxy]);\n }\n\n /**\n * returns a valid number by validating the minimum and maximum values.\n * @param {number} value\n * @returns {number}\n */\n private getValueInRange(value: number): number {\n const props = this.state.props;\n if (props.minvalue && !isNil(value) && !isNaN(props.minvalue) && value < props.minvalue) {\n this.updateState({ errorType: 'minvalue'} as S);\n return props.minvalue;\n }\n if (props.maxvalue && !isNil(value) && !isNaN(props.maxvalue) && value > props.maxvalue) {\n this.updateState({ errorType: 'maxvalue'} as S);\n return props.maxvalue;\n }\n return value;\n }\n\n /**\n * Adds validations for the number before updating the widget model. like validating min and max value for the widget.\n * @param {number} val number to be validated\n * @returns {number}\n */\n private isValidNumber(val: number): boolean {\n const props = this.state.props;\n\n //empty number widget should not show validation error when required is false\n // @ts-ignore\n if (this.state.props.required === false && val === '') {\n return true;\n }\n // id number is infinite then consider it as invalid value\n if (isNaN(val) || !isFinite(val) || (!Number.isInteger(props.step) &&\n this.countDecimals(val) > this.countDecimals(props.step))) {\n this.updateState({\n isValid: false,\n } as S);\n return false;\n }\n if (val !== this.getValueInRange(val)) {\n this.updateState({\n isValid: false,\n } as S);\n return true;\n }\n this.resetValidations();\n return true;\n }\n\n // resets all the flags related to the widget's validation.\n protected resetValidations() {\n this.updateState({\n isValid: true,\n } as S);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'minvalue':\n case 'maxvalue':\n if ($new|| $old) {\n this.isValidNumber($new);\n }\n break;\n case 'datavalue':\n this.updateState({\n textValue: $new,\n } as S);\n const isDefault = this.state.props.isdefault;\n if (isDefault) {\n this.updateState(\n { props: {isdefault: false} } as S, \n !this.state.props.skipscripteventtrigger && this.props.onFieldChange && this.props.onFieldChange.bind(this, 'datavalue', $new, $old, isDefault)\n );\n } \n else {\n if($new === $old || ($new && $old && $new.toString() === $old.toString())) {\n break;\n }\n !this.state.props.skipscripteventtrigger && this.props.onFieldChange && this.props.onFieldChange('datavalue', $new, $old, isDefault);\n }\n break;\n case 'displayValue': \n this.updateState({\n displayValue: $new,\n } as any)\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -17,7 +17,6 @@ export default class BaseNumberProps extends BaseProps {
|
|
|
17
17
|
_defineProperty(this, "required", false);
|
|
18
18
|
_defineProperty(this, "triggerValidation", void 0);
|
|
19
19
|
_defineProperty(this, "decimalPlaces", 2);
|
|
20
|
-
_defineProperty(this, "onSubmitEditing", void 0);
|
|
21
20
|
_defineProperty(this, "accessibilitylabel", undefined);
|
|
22
21
|
_defineProperty(this, "hint", undefined);
|
|
23
22
|
_defineProperty(this, "accessibilityrole", void 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BaseProps","BaseNumberProps","constructor","args","_defineProperty","undefined"],"sources":["basenumber.props.ts"],"sourcesContent":["import {AccessibilityRole} from \"react-native\";\nimport { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class BaseNumberProps extends BaseProps {\n datavalue: any;\n hastwowaybinding = false;\n minvalue: number = null as any;\n maxvalue: number = null as any;\n step: number = 1;\n updateon: string = 'blur' as any;\n readonly: boolean = null as any;\n regexp: string = null as any;\n onFieldChange: any;\n required: boolean = false;\n triggerValidation: any;\n decimalPlaces: number = 2;\n
|
|
1
|
+
{"version":3,"names":["BaseProps","BaseNumberProps","constructor","args","_defineProperty","undefined"],"sources":["basenumber.props.ts"],"sourcesContent":["import {AccessibilityRole} from \"react-native\";\nimport { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class BaseNumberProps extends BaseProps {\n datavalue: any;\n hastwowaybinding = false;\n minvalue: number = null as any;\n maxvalue: number = null as any;\n step: number = 1;\n updateon: string = 'blur' as any;\n readonly: boolean = null as any;\n regexp: string = null as any;\n onFieldChange: any;\n required: boolean = false;\n triggerValidation: any;\n decimalPlaces: number = 2;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole;\n accessibilitylabelledby?: string = undefined;\n displayValue?: string;\n skipscripteventtrigger: boolean = false;\n}\n"],"mappings":";;;AACA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,eAAe,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;IAAAA,eAAA,2BAElC,KAAK;IAAAA,eAAA,mBACL,IAAI;IAAAA,eAAA,mBACJ,IAAI;IAAAA,eAAA,eACR,CAAC;IAAAA,eAAA,mBACG,MAAM;IAAAA,eAAA,mBACL,IAAI;IAAAA,eAAA,iBACP,IAAI;IAAAA,eAAA;IAAAA,eAAA,mBAED,KAAK;IAAAA,eAAA;IAAAA,eAAA,wBAED,CAAC;IAAAA,eAAA,6BACKC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA;IAAAA,eAAA,kCAEUC,SAAS;IAAAD,eAAA;IAAAA,eAAA,iCAEV,KAAK;EAAA;AACzC","ignoreList":[]}
|
|
@@ -72,7 +72,7 @@ export default class WmCheckboxset extends BaseDatasetComponent {
|
|
|
72
72
|
disabled: props.readonly || props.disabled,
|
|
73
73
|
id: this.getTestId('item' + index),
|
|
74
74
|
accessible: false
|
|
75
|
-
}), !isEmpty(this.state.template) && this.props.renderitempartial ? this.props.renderitempartial(item.dataObject, index, this.state.template) : /*#__PURE__*/React.createElement(Text, _extends({}, this.getTestPropsForLabel(
|
|
75
|
+
}), !isEmpty(this.state.template) && this.props.renderitempartial ? this.props.renderitempartial(item.dataObject, index, this.state.template) : /*#__PURE__*/React.createElement(Text, _extends({}, this.getTestPropsForLabel("label" + index), {
|
|
76
76
|
style: [this.styles.text, item.selected ? this.styles.selectedLabel : null],
|
|
77
77
|
importantForAccessibility: "no"
|
|
78
78
|
}), displayText));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Text","View","TouchableOpacity","Platform","ScrollView","find","forEach","isEqual","isEmpty","WmCheckboxsetProps","DEFAULT_CLASS","BaseDatasetComponent","BaseDatasetState","WmIcon","AccessibilityWidgetType","getAccessibilityProps","getNumberOfEmptyObjects","WmLabel","WmCheckboxsetState","constructor","args","_defineProperty","WmCheckboxset","props","onPress","item","state","disabled","readonly","invokeEventCallback","proxy","selected","selectedValue","selectedItem","dataItems","d","key","oldValue","datavalue","push","datafield","validate","updateState","computeDisplayValue","undefined","renderChild","index","colWidth","displayText","displayexp","displayfield","accessibilityProps","accessibilityLabel","accessibilityRole","accessibilityState","createElement","_extends","getTestPropsForAction","style","styles","checkedItem","width","bind","iconclass","checkicon","uncheckicon","id","getTestId","accessible","template","renderitempartial","dataObject","getTestPropsForLabel","text","selectedLabel","importantForAccessibility","displayValue","filter","map","updateDatavalue","value","Promise","resolve","setTemplate","partialName","renderGroupby","groupedData","length","groupObj","groupHeaderTitle","renderCheckboxses","data","items","noOfColumns","itemsperrow","xs","Math","round","flexWrap","flexDirection","CHECKBOXSET","renderSkeleton","_ref","numberofskeletonitems","_","root","renderWidget","onLayout","event","handleLayout","horizontal","isRTL","OS","transform","scaleX","contentContainerStyle","groupby"],"sources":["checkboxset.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View, TouchableOpacity, DimensionValue, Platform, AccessibilityRole } from 'react-native';\nimport { ScrollView } from 'react-native-gesture-handler';\nimport { find, forEach, isEqual, isEmpty } from 'lodash';\nimport WmCheckboxsetProps from './checkboxset.props';\nimport {\n DEFAULT_CLASS,\n\n WmCheckboxsetStyles,\n} from './checkboxset.styles';\nimport {\n BaseDatasetComponent,\n BaseDatasetState,\n} from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\nimport { getNumberOfEmptyObjects } from '@wavemaker/app-rn-runtime/core/utils';\nimport WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.component';\n\nexport class WmCheckboxsetState extends BaseDatasetState<WmCheckboxsetProps> {\n isValid: boolean = true;\n template: string = \"\";\n}\n\nexport default class WmCheckboxset extends BaseDatasetComponent<WmCheckboxsetProps, WmCheckboxsetState, WmCheckboxsetStyles> {\n constructor(props: WmCheckboxsetProps) {\n super(props, DEFAULT_CLASS, new WmCheckboxsetProps());\n }\n\n onPress(item: any) {\n if (this.state.props.disabled || this.state.props.readonly) {\n return;\n }\n this.invokeEventCallback('onTap', [null, this.proxy]);\n item.selected = !item.selected;\n const selectedValue: any = [];\n const selectedItem = find(this.state.dataItems, d => isEqual(d.key, item.key));\n const oldValue = this.state.props.datavalue;\n selectedItem.selected = item.selected;\n forEach(this.state.dataItems, (item) => {\n if (item.selected) {\n selectedValue.push(item.datafield);\n }\n });\n this.validate(selectedValue);\n this.updateState({ props: { datavalue: selectedValue }} as WmCheckboxsetState,\n () => {\n this.computeDisplayValue();\n this.invokeEventCallback('onChange', [ undefined, this.proxy, selectedValue, oldValue ]);\n });\n }\n\n renderChild(item: any, index: any,colWidth: DimensionValue) {\n const props = this.state.props;\n const displayText = item.displayexp || item.displayfield;\n const accessibilityProps = { accessibilityLabel: displayText ,\n accessibilityRole: 'checkbox' as AccessibilityRole,\n accessibilityState: {\n disabled: this.props.readonly || this.props.disabled,\n selected: item.selected,\n }\n }\n return (\n <TouchableOpacity {...this.getTestPropsForAction(index + '')}\n style={[this.styles.item, item.selected ? this.styles.checkedItem : null, {width: colWidth}]}\n onPress={this.onPress.bind(this, item)} key={item.key} {...accessibilityProps}>\n <WmIcon iconclass=\"wi wi-check\" styles={item.selected? this.styles.checkicon : this.styles.uncheckicon} disabled={props.readonly || props.disabled} id={this.getTestId('item'+index)} accessible={false}/>\n {!isEmpty(this.state.template) && this.props.renderitempartial ?\n this.props.renderitempartial(item.dataObject, index, this.state.template) :\n <Text {...this.getTestPropsForLabel(index + '')} style={[this.styles.text, item.selected ? this.styles.selectedLabel: null]} importantForAccessibility='no'>{displayText}</Text>}\n </TouchableOpacity>)\n }\n\n computeDisplayValue() {\n this.updateState({\n props: {\n displayValue: ((this.state.dataItems || [] as any)\n .filter((item: any) => item.selected)\n .map((item: any) => item.displayexp || item.displayfield)) || ''\n }\n } as WmCheckboxsetState);\n }\n\n updateDatavalue(value: any) {\n this.updateState({ props: { datavalue: value }} as WmCheckboxsetState);\n return Promise.resolve();\n }\n\n setTemplate(partialName: any) {\n this.updateState({ template: partialName} as WmCheckboxsetState);\n }\n\n renderGroupby() {\n const groupedData = this.state.groupedData;\n return (\n <View>\n {groupedData && groupedData.length\n ? groupedData.map((groupObj: any, index: any) => {\n return(\n <View key={groupObj.key}>\n <Text style={this.styles.groupHeaderTitle}>{groupObj.key}</Text>\n {this.renderCheckboxses(groupObj.data)}\n </View>)\n })\n : null}\n </View>\n );\n }\n\n renderCheckboxses(items: any) {\n const props = this.state.props;\n const noOfColumns = props.itemsperrow.xs || 1;\n const colWidth = Math.round(100/ noOfColumns) + '%' as DimensionValue;\n return(<View style = {noOfColumns === 1 ? {} : {flexWrap: 'wrap', flexDirection: 'row'}} {...getAccessibilityProps(AccessibilityWidgetType.CHECKBOXSET, props)}>\n {items && items.length\n ? items.map((item: any, index: any) => this.renderChild(item, index, colWidth))\n : null}\n </View>)\n }\n\n public renderSkeleton(props: WmCheckboxsetProps): React.ReactNode {\n const noOfColumns = props.itemsperrow.xs || 1;\n const colWidth = Math.round(100/ noOfColumns) + '%' as DimensionValue;\n\n return [...getNumberOfEmptyObjects(props.numberofskeletonitems as number ?? 3)].map(_ => {\n return <View style={[this.styles.item, {width: colWidth}]}>\n <WmIcon styles={this.styles.checkicon}/>\n <WmLabel styles={{ root: this.styles.text }}/>\n </View>\n })\n }\n\n renderWidget(props: WmCheckboxsetProps) {\n const items = this.state.dataItems;\n return (\n <ScrollView style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n <ScrollView horizontal={true}\n style={this.isRTL && Platform.OS == 'android' ? { transform: [{ scaleX: -1 }] } : {}}\n contentContainerStyle={this.isRTL && Platform.OS == 'android' ? { transform: [{ scaleX: -1 }] } : {}}\n >\n {props.groupby && this.renderGroupby()}\n {!props.groupby && this.renderCheckboxses(items)}\n </ScrollView>\n </ScrollView>\n );\n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,IAAI,EAAEC,gBAAgB,EAAkBC,QAAQ,QAA2B,cAAc;AACxG,SAASC,UAAU,QAAQ,8BAA8B;AACzD,SAASC,IAAI,EAAEC,OAAO,EAAEC,OAAO,EAAGC,OAAO,QAAQ,QAAQ;AACzD,OAAOC,kBAAkB,MAAM,qBAAqB;AACpD,SACEC,aAAa,QAGR,sBAAsB;AAC7B,SACEC,oBAAoB,EACpBC,gBAAgB,QACX,8EAA8E;AACrF,OAAOC,MAAM,MAAM,gEAAgE;AACnF,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,8CAA8C;AAC7G,SAASC,uBAAuB,QAAQ,sCAAsC;AAC9E,OAAOC,OAAO,MAAM,kEAAkE;AAEtF,OAAO,MAAMC,kBAAkB,SAASN,gBAAgB,CAAqB;EAAAO,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,kBACxD,IAAI;IAAAA,eAAA,mBACJ,EAAE;EAAA;AACvB;AAEA,eAAe,MAAMC,aAAa,SAASX,oBAAoB,CAA8D;EAC3HQ,WAAWA,CAACI,KAAyB,EAAE;IACrC,KAAK,CAACA,KAAK,EAAEb,aAAa,EAAE,IAAID,kBAAkB,CAAC,CAAC,CAAC;EACvD;EAEAe,OAAOA,CAACC,IAAS,EAAE;IACjB,IAAI,IAAI,CAACC,KAAK,CAACH,KAAK,CAACI,QAAQ,IAAI,IAAI,CAACD,KAAK,CAACH,KAAK,CAACK,QAAQ,EAAE;MAC1D;IACF;IACA,IAAI,CAACC,mBAAmB,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAACC,KAAK,CAAC,CAAC;IACrDL,IAAI,CAACM,QAAQ,GAAG,CAACN,IAAI,CAACM,QAAQ;IAC9B,MAAMC,aAAkB,GAAG,EAAE;IAC7B,MAAMC,YAAY,GAAG5B,IAAI,CAAC,IAAI,CAACqB,KAAK,CAACQ,SAAS,EAAEC,CAAC,IAAI5B,OAAO,CAAC4B,CAAC,CAACC,GAAG,EAAEX,IAAI,CAACW,GAAG,CAAC,CAAC;IAC9E,MAAMC,QAAQ,GAAG,IAAI,CAACX,KAAK,CAACH,KAAK,CAACe,SAAS;IAC3CL,YAAY,CAACF,QAAQ,GAAGN,IAAI,CAACM,QAAQ;IACrCzB,OAAO,CAAC,IAAI,CAACoB,KAAK,CAACQ,SAAS,EAAGT,IAAI,IAAK;MACpC,IAAIA,IAAI,CAACM,QAAQ,EAAE;QACjBC,aAAa,CAACO,IAAI,CAACd,IAAI,CAACe,SAAS,CAAC;MACpC;IACJ,CAAC,CAAC;IACF,IAAI,CAACC,QAAQ,CAACT,aAAa,CAAC;IAC5B,IAAI,CAACU,WAAW,CAAC;MAAEnB,KAAK,EAAE;QAAEe,SAAS,EAAEN;MAAc;IAAC,CAAC,EACrD,MAAM;MACJ,IAAI,CAACW,mBAAmB,CAAC,CAAC;MAC1B,IAAI,CAACd,mBAAmB,CAAC,UAAU,EAAE,CAAEe,SAAS,EAAE,IAAI,CAACd,KAAK,EAAEE,aAAa,EAAEK,QAAQ,CAAE,CAAC;IAC1F,CAAC,CAAC;EACN;EAEAQ,WAAWA,CAACpB,IAAS,EAAEqB,KAAU,EAACC,QAAwB,EAAE;IAC1D,MAAMxB,KAAK,GAAG,IAAI,CAACG,KAAK,CAACH,KAAK;IAC9B,MAAMyB,WAAW,GAAGvB,IAAI,CAACwB,UAAU,IAAIxB,IAAI,CAACyB,YAAY;IACxD,MAAMC,kBAAkB,GAAG;MAAEC,kBAAkB,EAAEJ,WAAW;MAC1DK,iBAAiB,EAAE,UAA+B;MAClDC,kBAAkB,EAAE;QAClB3B,QAAQ,EAAE,IAAI,CAACJ,KAAK,CAACK,QAAQ,IAAI,IAAI,CAACL,KAAK,CAACI,QAAQ;QACpDI,QAAQ,EAAEN,IAAI,CAACM;MACjB;IACF,CAAC;IACD,oBACEhC,KAAA,CAAAwD,aAAA,CAACrD,gBAAgB,EAAAsD,QAAA,KAAK,IAAI,CAACC,qBAAqB,CAACX,KAAK,GAAG,EAAE,CAAC;MAC1DY,KAAK,EAAE,CAAC,IAAI,CAACC,MAAM,CAAClC,IAAI,EAAEA,IAAI,CAACM,QAAQ,GAAG,IAAI,CAAC4B,MAAM,CAACC,WAAW,GAAG,IAAI,EAAE;QAACC,KAAK,EAAEd;MAAQ,CAAC,CAAE;MAC7FvB,OAAO,EAAE,IAAI,CAACA,OAAO,CAACsC,IAAI,CAAC,IAAI,EAAErC,IAAI,CAAE;MAACW,GAAG,EAAEX,IAAI,CAACW;IAAI,GAAKe,kBAAkB,gBAC7EpD,KAAA,CAAAwD,aAAA,CAAC1C,MAAM;MAACkD,SAAS,EAAC,aAAa;MAACJ,MAAM,EAAElC,IAAI,CAACM,QAAQ,GAAE,IAAI,CAAC4B,MAAM,CAACK,SAAS,GAAG,IAAI,CAACL,MAAM,CAACM,WAAY;MAACtC,QAAQ,EAAEJ,KAAK,CAACK,QAAQ,IAAIL,KAAK,CAACI,QAAS;MAACuC,EAAE,EAAE,IAAI,CAACC,SAAS,CAAC,MAAM,GAACrB,KAAK,CAAE;MAACsB,UAAU,EAAE;IAAM,CAAC,CAAC,EACzM,CAAC5D,OAAO,CAAC,IAAI,CAACkB,KAAK,CAAC2C,QAAQ,CAAC,IAAI,IAAI,CAAC9C,KAAK,CAAC+C,iBAAiB,GAC3D,IAAI,CAAC/C,KAAK,CAAC+C,iBAAiB,CAAC7C,IAAI,CAAC8C,UAAU,EAAEzB,KAAK,EAAE,IAAI,CAACpB,KAAK,CAAC2C,QAAQ,CAAC,gBAC5EtE,KAAA,CAAAwD,aAAA,CAACvD,IAAI,EAAAwD,QAAA,KAAK,IAAI,CAACgB,oBAAoB,CAAC1B,KAAK,GAAG,EAAE,CAAC;MAAEY,KAAK,EAAE,CAAC,IAAI,CAACC,MAAM,CAACc,IAAI,EAAEhD,IAAI,CAACM,QAAQ,GAAG,IAAI,CAAC4B,MAAM,CAACe,aAAa,GAAE,IAAI,CAAE;MAACC,yBAAyB,EAAC;IAAI,IAAE3B,WAAkB,CAC/J,CAAC;EACvB;EAEAL,mBAAmBA,CAAA,EAAG;IACpB,IAAI,CAACD,WAAW,CAAC;MACfnB,KAAK,EAAE;QACLqD,YAAY,EAAG,CAAC,IAAI,CAAClD,KAAK,CAACQ,SAAS,IAAI,EAAS,EAC9C2C,MAAM,CAAEpD,IAAS,IAAKA,IAAI,CAACM,QAAQ,CAAC,CACpC+C,GAAG,CAAErD,IAAS,IAAKA,IAAI,CAACwB,UAAU,IAAIxB,IAAI,CAACyB,YAAY,CAAC,IAAK;MAClE;IACF,CAAuB,CAAC;EAC1B;EAEA6B,eAAeA,CAACC,KAAU,EAAE;IAC1B,IAAI,CAACtC,WAAW,CAAC;MAAEnB,KAAK,EAAE;QAAEe,SAAS,EAAE0C;MAAM;IAAC,CAAuB,CAAC;IACtE,OAAOC,OAAO,CAACC,OAAO,CAAC,CAAC;EAC1B;EAEAC,WAAWA,CAACC,WAAgB,EAAE;IAC5B,IAAI,CAAC1C,WAAW,CAAC;MAAE2B,QAAQ,EAAEe;IAAW,CAAuB,CAAC;EAClE;EAEAC,aAAaA,CAAA,EAAG;IACd,MAAMC,WAAW,GAAG,IAAI,CAAC5D,KAAK,CAAC4D,WAAW;IAC1C,oBACEvF,KAAA,CAAAwD,aAAA,CAACtD,IAAI,QACFqF,WAAW,IAAIA,WAAW,CAACC,MAAM,GAC9BD,WAAW,CAACR,GAAG,CAAC,CAACU,QAAa,EAAE1C,KAAU,KAAK;MAC/C,oBACE/C,KAAA,CAAAwD,aAAA,CAACtD,IAAI;QAACmC,GAAG,EAAEoD,QAAQ,CAACpD;MAAI,gBACtBrC,KAAA,CAAAwD,aAAA,CAACvD,IAAI;QAAC0D,KAAK,EAAE,IAAI,CAACC,MAAM,CAAC8B;MAAiB,GAAED,QAAQ,CAACpD,GAAU,CAAC,EAC/D,IAAI,CAACsD,iBAAiB,CAACF,QAAQ,CAACG,IAAI,CACjC,CAAC;IACX,CAAC,CAAC,GACA,IACA,CAAC;EAEX;EAEAD,iBAAiBA,CAACE,KAAU,EAAE;IAC5B,MAAMrE,KAAK,GAAG,IAAI,CAACG,KAAK,CAACH,KAAK;IAC9B,MAAMsE,WAAW,GAAGtE,KAAK,CAACuE,WAAW,CAACC,EAAE,IAAI,CAAC;IAC7C,MAAMhD,QAAQ,GAAGiD,IAAI,CAACC,KAAK,CAAC,GAAG,GAAEJ,WAAW,CAAC,GAAG,GAAqB;IACrE,oBAAO9F,KAAA,CAAAwD,aAAA,CAACtD,IAAI,EAAAuD,QAAA;MAACE,KAAK,EAAImC,WAAW,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG;QAACK,QAAQ,EAAE,MAAM;QAAEC,aAAa,EAAE;MAAK;IAAE,GAAKpF,qBAAqB,CAACD,uBAAuB,CAACsF,WAAW,EAAE7E,KAAK,CAAC,GAC3JqE,KAAK,IAAIA,KAAK,CAACL,MAAM,GAClBK,KAAK,CAACd,GAAG,CAAC,CAACrD,IAAS,EAAEqB,KAAU,KAAK,IAAI,CAACD,WAAW,CAACpB,IAAI,EAAEqB,KAAK,EAAEC,QAAQ,CAAC,CAAC,GAC7E,IACA,CAAC;EACT;EAEOsD,cAAcA,CAAC9E,KAAyB,EAAmB;IAAA,IAAA+E,IAAA;IAChE,MAAMT,WAAW,GAAGtE,KAAK,CAACuE,WAAW,CAACC,EAAE,IAAI,CAAC;IAC7C,MAAMhD,QAAQ,GAAGiD,IAAI,CAACC,KAAK,CAAC,GAAG,GAAEJ,WAAW,CAAC,GAAG,GAAqB;IAErE,OAAO,CAAC,GAAG7E,uBAAuB,EAAAsF,IAAA,GAAC/E,KAAK,CAACgF,qBAAqB,cAAAD,IAAA,cAAAA,IAAA,GAAc,CAAC,CAAC,CAAC,CAACxB,GAAG,CAAC0B,CAAC,IAAI;MACvF,oBAAOzG,KAAA,CAAAwD,aAAA,CAACtD,IAAI;QAACyD,KAAK,EAAE,CAAC,IAAI,CAACC,MAAM,CAAClC,IAAI,EAAE;UAACoC,KAAK,EAAEd;QAAQ,CAAC;MAAE,gBACxDhD,KAAA,CAAAwD,aAAA,CAAC1C,MAAM;QAAC8C,MAAM,EAAE,IAAI,CAACA,MAAM,CAACK;MAAU,CAAC,CAAC,eACxCjE,KAAA,CAAAwD,aAAA,CAACtC,OAAO;QAAC0C,MAAM,EAAE;UAAE8C,IAAI,EAAE,IAAI,CAAC9C,MAAM,CAACc;QAAK;MAAE,CAAC,CACzC,CAAC;IACT,CAAC,CAAC;EACJ;EAEAiC,YAAYA,CAACnF,KAAyB,EAAE;IACtC,MAAMqE,KAAK,GAAG,IAAI,CAAClE,KAAK,CAACQ,SAAS;IAClC,oBACEnC,KAAA,CAAAwD,aAAA,CAACnD,UAAU;MAACsD,KAAK,EAAE,IAAI,CAACC,MAAM,CAAC8C,IAAK;MAACE,QAAQ,EAAGC,KAAK,IAAK,IAAI,CAACC,YAAY,CAACD,KAAK;IAAE,gBACjF7G,KAAA,CAAAwD,aAAA,CAACnD,UAAU;MAAC0G,UAAU,EAAE,IAAK;MAC3BpD,KAAK,EAAE,IAAI,CAACqD,KAAK,IAAI5G,QAAQ,CAAC6G,EAAE,IAAI,SAAS,GAAG;QAAEC,SAAS,EAAE,CAAC;UAAEC,MAAM,EAAE,CAAC;QAAE,CAAC;MAAE,CAAC,GAAG,CAAC,CAAE;MACrFC,qBAAqB,EAAE,IAAI,CAACJ,KAAK,IAAI5G,QAAQ,CAAC6G,EAAE,IAAI,SAAS,GAAG;QAAEC,SAAS,EAAE,CAAC;UAAEC,MAAM,EAAE,CAAC;QAAE,CAAC;MAAE,CAAC,GAAG,CAAC;IAAE,GAEpG3F,KAAK,CAAC6F,OAAO,IAAI,IAAI,CAAC/B,aAAa,CAAC,CAAC,EACrC,CAAC9D,KAAK,CAAC6F,OAAO,IAAI,IAAI,CAAC1B,iBAAiB,CAACE,KAAK,CACrC,CACF,CAAC;EAEjB;AACF","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","Text","View","TouchableOpacity","Platform","ScrollView","find","forEach","isEqual","isEmpty","WmCheckboxsetProps","DEFAULT_CLASS","BaseDatasetComponent","BaseDatasetState","WmIcon","AccessibilityWidgetType","getAccessibilityProps","getNumberOfEmptyObjects","WmLabel","WmCheckboxsetState","constructor","args","_defineProperty","WmCheckboxset","props","onPress","item","state","disabled","readonly","invokeEventCallback","proxy","selected","selectedValue","selectedItem","dataItems","d","key","oldValue","datavalue","push","datafield","validate","updateState","computeDisplayValue","undefined","renderChild","index","colWidth","displayText","displayexp","displayfield","accessibilityProps","accessibilityLabel","accessibilityRole","accessibilityState","createElement","_extends","getTestPropsForAction","style","styles","checkedItem","width","bind","iconclass","checkicon","uncheckicon","id","getTestId","accessible","template","renderitempartial","dataObject","getTestPropsForLabel","text","selectedLabel","importantForAccessibility","displayValue","filter","map","updateDatavalue","value","Promise","resolve","setTemplate","partialName","renderGroupby","groupedData","length","groupObj","groupHeaderTitle","renderCheckboxses","data","items","noOfColumns","itemsperrow","xs","Math","round","flexWrap","flexDirection","CHECKBOXSET","renderSkeleton","_ref","numberofskeletonitems","_","root","renderWidget","onLayout","event","handleLayout","horizontal","isRTL","OS","transform","scaleX","contentContainerStyle","groupby"],"sources":["checkboxset.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View, TouchableOpacity, DimensionValue, Platform, AccessibilityRole } from 'react-native';\nimport { ScrollView } from 'react-native-gesture-handler';\nimport { find, forEach, isEqual, isEmpty } from 'lodash';\nimport WmCheckboxsetProps from './checkboxset.props';\nimport {\n DEFAULT_CLASS,\n\n WmCheckboxsetStyles,\n} from './checkboxset.styles';\nimport {\n BaseDatasetComponent,\n BaseDatasetState,\n} from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\nimport { getNumberOfEmptyObjects } from '@wavemaker/app-rn-runtime/core/utils';\nimport WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.component';\n\nexport class WmCheckboxsetState extends BaseDatasetState<WmCheckboxsetProps> {\n isValid: boolean = true;\n template: string = \"\";\n}\n\nexport default class WmCheckboxset extends BaseDatasetComponent<WmCheckboxsetProps, WmCheckboxsetState, WmCheckboxsetStyles> {\n constructor(props: WmCheckboxsetProps) {\n super(props, DEFAULT_CLASS, new WmCheckboxsetProps());\n }\n\n onPress(item: any) {\n if (this.state.props.disabled || this.state.props.readonly) {\n return;\n }\n this.invokeEventCallback('onTap', [null, this.proxy]);\n item.selected = !item.selected;\n const selectedValue: any = [];\n const selectedItem = find(this.state.dataItems, d => isEqual(d.key, item.key));\n const oldValue = this.state.props.datavalue;\n selectedItem.selected = item.selected;\n forEach(this.state.dataItems, (item) => {\n if (item.selected) {\n selectedValue.push(item.datafield);\n }\n });\n this.validate(selectedValue);\n this.updateState({ props: { datavalue: selectedValue }} as WmCheckboxsetState,\n () => {\n this.computeDisplayValue();\n this.invokeEventCallback('onChange', [ undefined, this.proxy, selectedValue, oldValue ]);\n });\n }\n\n renderChild(item: any, index: any,colWidth: DimensionValue) {\n const props = this.state.props;\n const displayText = item.displayexp || item.displayfield;\n const accessibilityProps = { accessibilityLabel: displayText ,\n accessibilityRole: 'checkbox' as AccessibilityRole,\n accessibilityState: {\n disabled: this.props.readonly || this.props.disabled,\n selected: item.selected,\n }\n }\n return (\n <TouchableOpacity {...this.getTestPropsForAction(index + '')}\n style={[this.styles.item, item.selected ? this.styles.checkedItem : null, {width: colWidth}]}\n onPress={this.onPress.bind(this, item)} key={item.key} {...accessibilityProps}>\n <WmIcon iconclass=\"wi wi-check\" styles={item.selected? this.styles.checkicon : this.styles.uncheckicon} disabled={props.readonly || props.disabled} id={this.getTestId('item'+index)} accessible={false}/>\n {!isEmpty(this.state.template) && this.props.renderitempartial ?\n this.props.renderitempartial(item.dataObject, index, this.state.template) :\n <Text {...this.getTestPropsForLabel(\"label\"+index)} style={[this.styles.text, item.selected ? this.styles.selectedLabel: null]} importantForAccessibility='no'>{displayText}</Text>}\n </TouchableOpacity>)\n }\n\n computeDisplayValue() {\n this.updateState({\n props: {\n displayValue: ((this.state.dataItems || [] as any)\n .filter((item: any) => item.selected)\n .map((item: any) => item.displayexp || item.displayfield)) || ''\n }\n } as WmCheckboxsetState);\n }\n\n updateDatavalue(value: any) {\n this.updateState({ props: { datavalue: value }} as WmCheckboxsetState);\n return Promise.resolve();\n }\n\n setTemplate(partialName: any) {\n this.updateState({ template: partialName} as WmCheckboxsetState);\n }\n\n renderGroupby() {\n const groupedData = this.state.groupedData;\n return (\n <View>\n {groupedData && groupedData.length\n ? groupedData.map((groupObj: any, index: any) => {\n return(\n <View key={groupObj.key}>\n <Text style={this.styles.groupHeaderTitle}>{groupObj.key}</Text>\n {this.renderCheckboxses(groupObj.data)}\n </View>)\n })\n : null}\n </View>\n );\n }\n\n renderCheckboxses(items: any) {\n const props = this.state.props;\n const noOfColumns = props.itemsperrow.xs || 1;\n const colWidth = Math.round(100/ noOfColumns) + '%' as DimensionValue;\n return(<View style = {noOfColumns === 1 ? {} : {flexWrap: 'wrap', flexDirection: 'row'}} {...getAccessibilityProps(AccessibilityWidgetType.CHECKBOXSET, props)}>\n {items && items.length\n ? items.map((item: any, index: any) => this.renderChild(item, index, colWidth))\n : null}\n </View>)\n }\n\n public renderSkeleton(props: WmCheckboxsetProps): React.ReactNode {\n const noOfColumns = props.itemsperrow.xs || 1;\n const colWidth = Math.round(100/ noOfColumns) + '%' as DimensionValue;\n\n return [...getNumberOfEmptyObjects(props.numberofskeletonitems as number ?? 3)].map(_ => {\n return <View style={[this.styles.item, {width: colWidth}]}>\n <WmIcon styles={this.styles.checkicon}/>\n <WmLabel styles={{ root: this.styles.text }}/>\n </View>\n })\n }\n\n renderWidget(props: WmCheckboxsetProps) {\n const items = this.state.dataItems;\n return (\n <ScrollView style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n <ScrollView horizontal={true}\n style={this.isRTL && Platform.OS == 'android' ? { transform: [{ scaleX: -1 }] } : {}}\n contentContainerStyle={this.isRTL && Platform.OS == 'android' ? { transform: [{ scaleX: -1 }] } : {}}\n >\n {props.groupby && this.renderGroupby()}\n {!props.groupby && this.renderCheckboxses(items)}\n </ScrollView>\n </ScrollView>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -86,14 +86,12 @@ export default class WmCurrency extends BaseNumberComponent {
|
|
|
86
86
|
floatingLabel: props.floatinglabel,
|
|
87
87
|
floatingLabelStyle: this.styles.floatingLabel,
|
|
88
88
|
activeFloatingLabelStyle: this.styles.activeFloatingLabel,
|
|
89
|
-
inactiveFloatingLabelStyle: this.styles.inactiveFloatingLabel,
|
|
90
89
|
editable: props.disabled || props.readonly ? false : true,
|
|
91
90
|
placeholder: props.placeholder,
|
|
92
91
|
background: this._background,
|
|
93
92
|
onBlur: this.onBlur.bind(this),
|
|
94
93
|
onFocus: this.onFocus.bind(this),
|
|
95
94
|
onKeyPress: this.validateInputEntry.bind(this),
|
|
96
|
-
onSubmitEditing: this.onSubmitEditing.bind(this),
|
|
97
95
|
onChangeText: text => {
|
|
98
96
|
const {
|
|
99
97
|
isValidText,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Text","Platform","WmCurrencyProps","CURRENCY_INFO","WMTextInput","DEFAULT_CLASS","BaseNumberComponent","BaseNumberState","isNull","AccessibilityWidgetType","getAccessibilityProps","countDecimalDigits","validateInputOnDevice","createSkeleton","WmCurrencyState","constructor","args","_defineProperty","WmCurrency","props","onPropertyChange","name","$new","$old","updateState","currencySymbol","symbol","getStyleClassName","classes","state","floatinglabel","push","join","renderTextSkeleton","createElement","Fragment","theme","styles","skeleton","root","renderWidget","_this$state$textValue","opts","valueExpr","OS","textValue","toString","style","onLayout","event","handleLayout","_showSkeleton","skeletonLabelWrapper","labelWrapper","accessible","accessibilityLabel","skeletonLabel","label","importantForAccessibility","skeletonTextInputWrapper","flex","_extends","getTestPropsForInput","CURRENCY","ref","widgetRef","selectionStart","selectionEnd","cursor","keyboardType","placeholderTextColor","placeholderText","color","isInputFocused","input","text","isValid","invalid","focused","floatingLabel","floatingLabelStyle","activeFloatingLabelStyle","activeFloatingLabel","inactiveFloatingLabelStyle","inactiveFloatingLabel","editable","disabled","readonly","placeholder","background","_background","onBlur","bind","onFocus","onKeyPress","validateInputEntry","onSubmitEditing","onChangeText","isValidText","validText","decimalPlaces","decimalPlacesInNumber","restrictDecimalRegex","RegExp","updatedCurrencyText","replace","_this$widgetRef","setNativeProps","onChange","invokeChange","allowContentSelection","userSelect"],"sources":["currency.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text, Platform, DimensionValue } from 'react-native';\n\nimport WmCurrencyProps from './currency.props';\nimport { CURRENCY_INFO } from '@wavemaker/app-rn-runtime/core/currency-constants';\nimport { WMTextInput } from '@wavemaker/app-rn-runtime/core/components/textinput.component';\nimport { DEFAULT_CLASS, WmCurrencyStyles } from './currency.styles';\nimport {\n BaseNumberComponent,\n BaseNumberState\n} from '@wavemaker/app-rn-runtime/components/input/basenumber/basenumber.component';\nimport { isNull } from \"lodash\";\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \nimport { countDecimalDigits, validateInputOnDevice } from '@wavemaker/app-rn-runtime/core/utils';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\n\nexport class WmCurrencyState extends BaseNumberState<WmCurrencyProps> {\n currencySymbol: any;\n}\n\nexport default class WmCurrency extends BaseNumberComponent<WmCurrencyProps, WmCurrencyState, WmCurrencyStyles> {\n\n constructor(props: WmCurrencyProps) {\n super(props, DEFAULT_CLASS, new WmCurrencyProps(), new WmCurrencyState());\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n switch (name) {\n case 'currency':\n if ($new) {\n this.updateState({\n currencySymbol: CURRENCY_INFO[$new].symbol,\n } as WmCurrencyState);\n }\n break;\n\n }\n }\n\n public getStyleClassName(): string | undefined {\n const classes = [];\n if (this.state.props.floatinglabel) {\n classes.push('app-currency-with-label'); \n }\n classes.push(super.getStyleClassName());\n return classes.join(' ');\n }\n\n public renderTextSkeleton(props:any): React.ReactNode { \n return this.props.floatinglabel ? <>{createSkeleton(this.theme, {} as WmSkeletonStyles, {...props})}</>\n : <>{createSkeleton(this.theme, {} as WmSkeletonStyles, {\n ...this.styles.skeleton.root,\n })}</>\n }\n\n renderWidget(props: WmCurrencyProps) {\n let opts: any = {};\n const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';\n opts[valueExpr] = this.state.textValue?.toString() || '';\n return (<View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n <View style={ (this._showSkeleton && !this.props.floatinglabel) ? this.styles.skeletonLabelWrapper.root : this.styles.labelWrapper } accessible accessibilityLabel={this.state.currencySymbol}>\n {this._showSkeleton ? <>{this.renderTextSkeleton(this.styles.skeletonLabel.root)}</> :\n <Text style={this.styles.label} importantForAccessibility='no'>{this.state.currencySymbol}</Text>}\n </View>\n {this._showSkeleton ? <>{this.renderTextSkeleton(this.styles.skeletonTextInputWrapper.root)}</> :<View style={{flex: 1}}>\n <WMTextInput\n {...this.getTestPropsForInput()}\n {...getAccessibilityProps(AccessibilityWidgetType.CURRENCY, props)}\n ref={(ref: any) => {\n 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 }}\n keyboardType=\"numeric\"\n placeholderTextColor={this.styles.placeholderText.color as any}\n isInputFocused={ this.state.isInputFocused }\n style={[this.styles.input, this.styles.text, this.state.isValid ? {} : this.styles.invalid, this.state.isInputFocused ? this.styles.focused : {}]}\n {...opts}\n floatingLabel={props.floatinglabel}\n floatingLabelStyle={this.styles.floatingLabel}\n activeFloatingLabelStyle={this.styles.activeFloatingLabel}\n inactiveFloatingLabelStyle={this.styles.inactiveFloatingLabel}\n editable={props.disabled || props.readonly ? false : true}\n placeholder={props.placeholder}\n background={this._background}\n onBlur={this.onBlur.bind(this)}\n onFocus={this.onFocus.bind(this)}\n onKeyPress={this.validateInputEntry.bind(this)}\n onSubmitEditing={this.onSubmitEditing.bind(this)}\n onChangeText={(text) => {\n const {isValidText, validText} = validateInputOnDevice(text, \"currency\");\n const decimalPlaces = props.decimalPlaces;\n const decimalPlacesInNumber = countDecimalDigits(validText);\n const restrictDecimalRegex = new RegExp(`(\\\\.\\\\d{${decimalPlaces}})\\\\d*`);\n const updatedCurrencyText = validText.replace(restrictDecimalRegex, '$1');\n\n if (!isValidText || decimalPlaces < decimalPlacesInNumber) {\n (this.widgetRef as any)?.setNativeProps({ text: updatedCurrencyText });\n }\n\n this.onChangeText.bind(this)(updatedCurrencyText, 'currency');\n }}\n onChange={this.invokeChange.bind(this)}\n allowContentSelection={this.styles.text.userSelect === 'text'}\n />\n </View> }\n </View>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","View","Text","Platform","WmCurrencyProps","CURRENCY_INFO","WMTextInput","DEFAULT_CLASS","BaseNumberComponent","BaseNumberState","isNull","AccessibilityWidgetType","getAccessibilityProps","countDecimalDigits","validateInputOnDevice","createSkeleton","WmCurrencyState","constructor","args","_defineProperty","WmCurrency","props","onPropertyChange","name","$new","$old","updateState","currencySymbol","symbol","getStyleClassName","classes","state","floatinglabel","push","join","renderTextSkeleton","createElement","Fragment","theme","styles","skeleton","root","renderWidget","_this$state$textValue","opts","valueExpr","OS","textValue","toString","style","onLayout","event","handleLayout","_showSkeleton","skeletonLabelWrapper","labelWrapper","accessible","accessibilityLabel","skeletonLabel","label","importantForAccessibility","skeletonTextInputWrapper","flex","_extends","getTestPropsForInput","CURRENCY","ref","widgetRef","selectionStart","selectionEnd","cursor","keyboardType","placeholderTextColor","placeholderText","color","isInputFocused","input","text","isValid","invalid","focused","floatingLabel","floatingLabelStyle","activeFloatingLabelStyle","activeFloatingLabel","editable","disabled","readonly","placeholder","background","_background","onBlur","bind","onFocus","onKeyPress","validateInputEntry","onChangeText","isValidText","validText","decimalPlaces","decimalPlacesInNumber","restrictDecimalRegex","RegExp","updatedCurrencyText","replace","_this$widgetRef","setNativeProps","onChange","invokeChange","allowContentSelection","userSelect"],"sources":["currency.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text, Platform, DimensionValue } from 'react-native';\n\nimport WmCurrencyProps from './currency.props';\nimport { CURRENCY_INFO } from '@wavemaker/app-rn-runtime/core/currency-constants';\nimport { WMTextInput } from '@wavemaker/app-rn-runtime/core/components/textinput.component';\nimport { DEFAULT_CLASS, WmCurrencyStyles } from './currency.styles';\nimport {\n BaseNumberComponent,\n BaseNumberState\n} from '@wavemaker/app-rn-runtime/components/input/basenumber/basenumber.component';\nimport { isNull } from \"lodash\";\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \nimport { countDecimalDigits, validateInputOnDevice } from '@wavemaker/app-rn-runtime/core/utils';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\n\nexport class WmCurrencyState extends BaseNumberState<WmCurrencyProps> {\n currencySymbol: any;\n}\n\nexport default class WmCurrency extends BaseNumberComponent<WmCurrencyProps, WmCurrencyState, WmCurrencyStyles> {\n\n constructor(props: WmCurrencyProps) {\n super(props, DEFAULT_CLASS, new WmCurrencyProps(), new WmCurrencyState());\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n switch (name) {\n case 'currency':\n if ($new) {\n this.updateState({\n currencySymbol: CURRENCY_INFO[$new].symbol,\n } as WmCurrencyState);\n }\n break;\n\n }\n }\n\n public getStyleClassName(): string | undefined {\n const classes = [];\n if (this.state.props.floatinglabel) {\n classes.push('app-currency-with-label'); \n }\n classes.push(super.getStyleClassName());\n return classes.join(' ');\n }\n\n public renderTextSkeleton(props:any): React.ReactNode { \n return this.props.floatinglabel ? <>{createSkeleton(this.theme, {} as WmSkeletonStyles, {...props})}</>\n : <>{createSkeleton(this.theme, {} as WmSkeletonStyles, {\n ...this.styles.skeleton.root,\n })}</>\n }\n\n renderWidget(props: WmCurrencyProps) {\n let opts: any = {};\n const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';\n opts[valueExpr] = this.state.textValue?.toString() || '';\n return (<View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n <View style={ (this._showSkeleton && !this.props.floatinglabel) ? this.styles.skeletonLabelWrapper.root : this.styles.labelWrapper } accessible accessibilityLabel={this.state.currencySymbol}>\n {this._showSkeleton ? <>{this.renderTextSkeleton(this.styles.skeletonLabel.root)}</> :\n <Text style={this.styles.label} importantForAccessibility='no'>{this.state.currencySymbol}</Text>}\n </View>\n {this._showSkeleton ? <>{this.renderTextSkeleton(this.styles.skeletonTextInputWrapper.root)}</> :<View style={{flex: 1}}>\n <WMTextInput\n {...this.getTestPropsForInput()}\n {...getAccessibilityProps(AccessibilityWidgetType.CURRENCY, props)}\n ref={(ref: any) => {\n 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 }}\n keyboardType=\"numeric\"\n placeholderTextColor={this.styles.placeholderText.color as any}\n isInputFocused={ this.state.isInputFocused }\n style={[this.styles.input, this.styles.text, this.state.isValid ? {} : this.styles.invalid, this.state.isInputFocused ? this.styles.focused : {}]}\n {...opts}\n floatingLabel={props.floatinglabel}\n floatingLabelStyle={this.styles.floatingLabel}\n activeFloatingLabelStyle={this.styles.activeFloatingLabel}\n editable={props.disabled || props.readonly ? false : true}\n placeholder={props.placeholder}\n background={this._background}\n onBlur={this.onBlur.bind(this)}\n onFocus={this.onFocus.bind(this)}\n onKeyPress={this.validateInputEntry.bind(this)}\n onChangeText={(text) => {\n const {isValidText, validText} = validateInputOnDevice(text, \"currency\");\n const decimalPlaces = props.decimalPlaces;\n const decimalPlacesInNumber = countDecimalDigits(validText);\n const restrictDecimalRegex = new RegExp(`(\\\\.\\\\d{${decimalPlaces}})\\\\d*`);\n const updatedCurrencyText = validText.replace(restrictDecimalRegex, '$1');\n\n if (!isValidText || decimalPlaces < decimalPlacesInNumber) {\n (this.widgetRef as any)?.setNativeProps({ text: updatedCurrencyText });\n }\n\n this.onChangeText.bind(this)(updatedCurrencyText, 'currency');\n }}\n onChange={this.invokeChange.bind(this)}\n allowContentSelection={this.styles.text.userSelect === 'text'}\n />\n </View> }\n </View>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -96,13 +96,7 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
|
96
96
|
}
|
|
97
97
|
},
|
|
98
98
|
floatingLabel: {},
|
|
99
|
-
activeFloatingLabel: {}
|
|
100
|
-
inactiveFloatingLabel: {},
|
|
101
|
-
inputNoLeftRadius: {
|
|
102
|
-
borderTopLeftRadius: 0,
|
|
103
|
-
borderBottomLeftRadius: 0,
|
|
104
|
-
borderLeftWidth: 0
|
|
105
|
-
}
|
|
99
|
+
activeFloatingLabel: {}
|
|
106
100
|
});
|
|
107
101
|
addStyle(DEFAULT_CLASS, '', defaultStyles);
|
|
108
102
|
|
|
@@ -143,9 +137,6 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
|
143
137
|
},
|
|
144
138
|
activeFloatingLabel: {
|
|
145
139
|
color: themeVariables.activeFloatingLabelColor
|
|
146
|
-
},
|
|
147
|
-
inactiveFloatingLabel: {
|
|
148
|
-
color: themeVariables.floatingLabelColor
|
|
149
140
|
}
|
|
150
141
|
});
|
|
151
142
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BASE_THEME","defineStyles","Platform","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","minHeight","borderWidth","borderStyle","borderColor","inputBorderColor","backgroundColor","inputBackgroundColor","borderRadius","flexDirection","text","fontSize","input","paddingTop","paddingBottom","paddingLeft","paddingRight","flex","transparent","labelWrapper","primaryColor","borderTopLeftRadius","borderBottomLeftRadius","width","display","justifyContent","label","marginVertical","color","primaryContrastColor","textAlignVertical","textAlign","fontWeight","fontFamily","baseFont","invalid","borderBottomColor","inputInvalidBorderColor","focused","inputFocusBorderColor","placeholderText","inputPlaceholderColor","skeleton","height","skeletonLabel","alignItems","skeletonTextInputWrapper","marginLeft","skeletonLabelWrapper","floatingLabel","activeFloatingLabel","
|
|
1
|
+
{"version":3,"names":["BASE_THEME","defineStyles","Platform","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","minHeight","borderWidth","borderStyle","borderColor","inputBorderColor","backgroundColor","inputBackgroundColor","borderRadius","flexDirection","text","fontSize","input","paddingTop","paddingBottom","paddingLeft","paddingRight","flex","transparent","labelWrapper","primaryColor","borderTopLeftRadius","borderBottomLeftRadius","width","display","justifyContent","label","marginVertical","color","primaryContrastColor","textAlignVertical","textAlign","fontWeight","fontFamily","baseFont","invalid","borderBottomColor","inputInvalidBorderColor","focused","inputFocusBorderColor","placeholderText","inputPlaceholderColor","skeleton","height","skeletonLabel","alignItems","skeletonTextInputWrapper","marginLeft","skeletonLabelWrapper","floatingLabel","activeFloatingLabel","minWidth","maxWidth","OS","borderTopRightRadius","borderBottomRightRadius","inputDisabledBgColor","position","top","left","floatingLabelColor","activeFloatingLabelColor"],"sources":["currency.styles.ts"],"sourcesContent":["import BASE_THEME, { AllStyle } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { Platform } from 'react-native';\nimport { WmSkeletonStyles } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.styles';\n\nexport type WmCurrencyStyles = BaseStyles & {\n label: AllStyle;\n invalid: AllStyle;\n focused: AllStyle;\n floatingLabel: AllStyle;\n activeFloatingLabel: AllStyle;\n placeholderText: AllStyle;\n skeleton: WmSkeletonStyles;\n skeletonLabel: WmSkeletonStyles;\n skeletonTextInputWrapper: WmSkeletonStyles;\n skeletonLabelWrapper: WmSkeletonStyles;\n};\n\nexport const DEFAULT_CLASS = 'app-currency';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmCurrencyStyles = defineStyles({\n root: {\n minHeight: 42,\n borderWidth: 1,\n borderStyle: 'solid',\n borderColor: themeVariables.inputBorderColor,\n backgroundColor: themeVariables.inputBackgroundColor,\n borderRadius: 6,\n flexDirection: 'row'\n },\n text: {\n fontSize: 16\n },\n input : {\n minHeight: 42,\n paddingTop: 8,\n paddingBottom: 8,\n paddingLeft: 16,\n paddingRight: 16,\n flex: 1,\n borderWidth: 1,\n borderColor: themeVariables.transparent,\n borderStyle: 'solid'\n },\n labelWrapper: {\n minHeight: 42,\n backgroundColor: themeVariables.primaryColor,\n borderTopLeftRadius: 6,\n borderBottomLeftRadius: 6,\n width: 48,\n paddingTop: 8,\n paddingBottom: 8,\n paddingLeft: 16,\n paddingRight: 16,\n display: 'flex',\n justifyContent: 'center'\n },\n label: {\n marginVertical: 0.7,\n color: themeVariables.primaryContrastColor,\n textAlignVertical: 'center',\n textAlign: 'center',\n fontWeight: 'bold',\n fontFamily: themeVariables.baseFont,\n fontSize: 16\n },\n invalid: {\n borderBottomColor: themeVariables.inputInvalidBorderColor\n },\n focused : {\n borderColor: themeVariables.inputFocusBorderColor,\n },\n placeholderText: {\n color: themeVariables.inputPlaceholderColor\n },\n skeleton: {\n root:{\n borderRadius: 6,\n paddingLeft: 16,\n paddingRight: 16,\n minHeight: 42,\n paddingTop: 8,\n paddingBottom: 8,\n width: '100%',\n height: 40\n },\n } as any as WmSkeletonStyles,\n skeletonLabel: {\n root: {\n width:20,\n height:28,\n borderRadius:4,\n display:'flex',\n justifyContent:'center',\n alignItems:'center'\n }\n } as any as WmSkeletonStyles,\n skeletonTextInputWrapper: {\n root: {\n width:80,\n height:16,\n borderRadius:4,\n marginLeft:16\n }\n } as any as WmSkeletonStyles,\n skeletonLabelWrapper: {\n root: {\n minHeight:42,\n width:'100%',\n borderWidth:0,\n }\n } as any as WmSkeletonStyles,\n floatingLabel: {},\n activeFloatingLabel: {}\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n \n // Add horizontal form input styles for horizontal form field layouts - positioned early to avoid overriding more specific styles\n addStyle('form-currency-input-horizontal', '', {\n root: {\n flex: 1,\n minWidth: 0, // Allow shrinking below intrinsic content size if needed\n maxWidth: '100%' // Prevent overflow\n },\n text: {}\n } as BaseStyles);\n \n addStyle(DEFAULT_CLASS + '-rtl', '', Platform.OS==\"web\"?{\n labelWrapper:{\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderTopRightRadius: 6,\n borderBottomRightRadius: 6,\n }\n }:{});\n addStyle(DEFAULT_CLASS + '-disabled', '', {\n root : {\n backgroundColor: themeVariables.inputDisabledBgColor\n }\n });\n addStyle(DEFAULT_CLASS + '-with-label', '', {\n root: {\n minHeight: 48\n },\n floatingLabel: {\n position: 'absolute',\n top: 12,\n left: 16,\n fontSize: 14,\n textAlign: 'left',\n color: themeVariables.floatingLabelColor\n },\n activeFloatingLabel: {\n color: themeVariables.activeFloatingLabelColor\n }\n });\n});"],"mappings":"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","ignoreList":[]}
|
|
@@ -58,7 +58,6 @@ export default class WmNumber extends BaseNumberComponent {
|
|
|
58
58
|
floatingLabel: props.floatinglabel,
|
|
59
59
|
floatingLabelStyle: this.styles.floatingLabel,
|
|
60
60
|
activeFloatingLabelStyle: this.styles.activeFloatingLabel,
|
|
61
|
-
inactiveFloatingLabelStyle: this.styles.inactiveFloatingLabel,
|
|
62
61
|
isInputFocused: this.state.isInputFocused,
|
|
63
62
|
style: [this.styles.root, this.state.isValid ? {} : this.styles.invalid, this.state.isInputFocused ? this.styles.focused : {}],
|
|
64
63
|
keyboardType: "numeric",
|
|
@@ -72,7 +71,6 @@ export default class WmNumber extends BaseNumberComponent {
|
|
|
72
71
|
},
|
|
73
72
|
onFocus: this.onFocus.bind(this),
|
|
74
73
|
onKeyPress: this.validateInputEntry.bind(this),
|
|
75
|
-
onSubmitEditing: this.onSubmitEditing.bind(this),
|
|
76
74
|
onChangeText: text => {
|
|
77
75
|
this.onChangeText.bind(this)(text, 'number', !!props.displayValue);
|
|
78
76
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Platform","View","isNull","WmNumberProps","DEFAULT_CLASS","WMTextInput","BaseNumberComponent","BaseNumberState","AccessibilityWidgetType","getAccessibilityProps","createSkeleton","WmNumberState","constructor","args","_defineProperty","WmNumber","props","getStyleClassName","classes","state","floatinglabel","push","join","renderTextSkeleton","createElement","style","styles","root","theme","skeletonLabel","Fragment","skeleton","renderWidget","_this$state$textValue","opts","valueExpr","OS","textValue","toString","_showSkeleton","_extends","getTestPropsForInput","NUMBER","ref","widgetRef","selectionStart","selectionEnd","cursor","floatingLabel","floatingLabelStyle","activeFloatingLabelStyle","activeFloatingLabel","
|
|
1
|
+
{"version":3,"names":["React","Platform","View","isNull","WmNumberProps","DEFAULT_CLASS","WMTextInput","BaseNumberComponent","BaseNumberState","AccessibilityWidgetType","getAccessibilityProps","createSkeleton","WmNumberState","constructor","args","_defineProperty","WmNumber","props","getStyleClassName","classes","state","floatinglabel","push","join","renderTextSkeleton","createElement","style","styles","root","theme","skeletonLabel","Fragment","skeleton","renderWidget","_this$state$textValue","opts","valueExpr","OS","textValue","toString","_showSkeleton","_extends","getTestPropsForInput","NUMBER","ref","widgetRef","selectionStart","selectionEnd","cursor","floatingLabel","floatingLabelStyle","activeFloatingLabelStyle","activeFloatingLabel","isInputFocused","isValid","invalid","focused","keyboardType","background","_background","placeholderTextColor","placeholderText","color","autoFocus","autofocus","editable","disabled","readonly","placeholder","onBlur","event","bind","displayValue","onFocus","onKeyPress","validateInputEntry","onChangeText","text","onChange","invokeChange","allowContentSelection","userSelect","customDisplayValue","handleLayout"],"sources":["number.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, LayoutChangeEvent, Platform, View } from 'react-native';\nimport { isNull } from 'lodash';\n\nimport WmNumberProps from './number.props';\nimport { DEFAULT_CLASS, WmNumberStyles } from './number.styles';\nimport { WMTextInput } from '@wavemaker/app-rn-runtime/core/components/textinput.component';\nimport {\n BaseNumberComponent,\n BaseNumberState\n} from '@wavemaker/app-rn-runtime/components/input/basenumber/basenumber.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\n\nexport class WmNumberState extends BaseNumberState<WmNumberProps> {\n keyboardType: any;\n}\n\nexport default class WmNumber extends BaseNumberComponent<WmNumberProps, WmNumberState, WmNumberStyles> {\n\n constructor(props: WmNumberProps) {\n super(props, DEFAULT_CLASS, new WmNumberProps(), new WmNumberState());\n }\n\n public getStyleClassName(): string | undefined {\n const classes = [];\n if (this.state.props.floatinglabel) {\n classes.push('app-number-with-label'); \n }\n classes.push(super.getStyleClassName());\n return classes.join(' ');\n }\n\n public renderTextSkeleton(): React.ReactNode { \n return this.props.floatinglabel ? \n <View style={{...this.styles.root}}>{createSkeleton(this.theme, {} as WmSkeletonStyles, {...this.styles.skeletonLabel.root})}</View>\n :<>{createSkeleton(this.theme, {} as WmSkeletonStyles, {\n ...this.styles.skeleton.root,\n })}</> \n }\n\n renderWidget(props: WmNumberProps) {\n let opts: any = {};\n const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';\n opts[valueExpr] = this.state.textValue?.toString() || '';\n return (this._showSkeleton ? this.renderTextSkeleton() : \n <WMTextInput\n {...this.getTestPropsForInput()}\n {...getAccessibilityProps(AccessibilityWidgetType.NUMBER, props)}\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 isInputFocused={ this.state.isInputFocused }\n style={[this.styles.root, this.state.isValid ? {} : this.styles.invalid, this.state.isInputFocused ? this.styles.focused : {}]}\n keyboardType=\"numeric\"\n background={this._background}\n placeholderTextColor={this.styles.placeholderText.color as any}\n autoFocus={props.autofocus}\n editable={props.disabled || props.readonly ? false : true}\n placeholder={props.placeholder}\n onBlur={(event)=>{this.onBlur.bind(this)(event, !!props.displayValue)}}\n onFocus={this.onFocus.bind(this)}\n onKeyPress={this.validateInputEntry.bind(this)}\n onChangeText={(text) => {\n this.onChangeText.bind(this)(text, 'number', !!props.displayValue);\n }}\n onChange={this.invokeChange.bind(this)}\n allowContentSelection={this.styles.text.userSelect === 'text'}\n customDisplayValue={props.displayValue}\n handleLayout={(event: LayoutChangeEvent) => this.handleLayout(event)}\n />);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -30,7 +30,6 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
|
30
30
|
},
|
|
31
31
|
floatingLabel: {},
|
|
32
32
|
activeFloatingLabel: {},
|
|
33
|
-
inactiveFloatingLabel: {},
|
|
34
33
|
skeleton: {
|
|
35
34
|
root: {
|
|
36
35
|
borderRadius: 6,
|
|
@@ -88,9 +87,6 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
|
88
87
|
},
|
|
89
88
|
activeFloatingLabel: {
|
|
90
89
|
color: themeVariables.activeFloatingLabelColor
|
|
91
|
-
},
|
|
92
|
-
inactiveFloatingLabel: {
|
|
93
|
-
color: themeVariables.floatingLabelColor
|
|
94
90
|
}
|
|
95
91
|
});
|
|
96
92
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","minHeight","paddingTop","paddingBottom","borderWidth","borderStyle","borderColor","inputBorderColor","backgroundColor","inputBackgroundColor","borderRadius","paddingLeft","paddingRight","text","fontSize","textAlign","invalid","borderBottomColor","inputInvalidBorderColor","focused","inputFocusBorderColor","placeholderText","color","inputPlaceholderColor","floatingLabel","activeFloatingLabel","
|
|
1
|
+
{"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","minHeight","paddingTop","paddingBottom","borderWidth","borderStyle","borderColor","inputBorderColor","backgroundColor","inputBackgroundColor","borderRadius","paddingLeft","paddingRight","text","fontSize","textAlign","invalid","borderBottomColor","inputInvalidBorderColor","focused","inputFocusBorderColor","placeholderText","color","inputPlaceholderColor","floatingLabel","activeFloatingLabel","skeleton","width","height","skeletonLabel","bottom","left","flex","minWidth","maxWidth","inputDisabledBgColor","position","top","floatingLabelColor","activeFloatingLabelColor"],"sources":["number.styles.ts"],"sourcesContent":["import BASE_THEME, { AllStyle } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\n\nexport type WmNumberStyles = BaseStyles & {\n invalid: AllStyle;\n focused: AllStyle;\n placeholderText: AllStyle;\n floatingLabel: AllStyle;\n activeFloatingLabel: AllStyle;\n skeleton: WmSkeletonStyles;\n skeletonLabel: WmSkeletonStyles;\n};\n\nexport const DEFAULT_CLASS = 'app-number';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmNumberStyles = defineStyles<WmNumberStyles>({\n root: {\n minHeight: 42,\n paddingTop: 8,\n paddingBottom: 8,\n borderWidth: 1,\n borderStyle: 'solid',\n borderColor: themeVariables.inputBorderColor,\n backgroundColor: themeVariables.inputBackgroundColor,\n borderRadius: 6,\n paddingLeft: 16,\n paddingRight: 16\n },\n text: {\n fontSize: 16,\n textAlign: 'left'\n },\n invalid: {\n borderBottomColor: themeVariables.inputInvalidBorderColor\n },\n focused : {\n borderColor: themeVariables.inputFocusBorderColor,\n },\n placeholderText: {\n color: themeVariables.inputPlaceholderColor\n },\n floatingLabel: {},\n activeFloatingLabel: {},\n skeleton: {\n root:{\n borderRadius: 6,\n paddingLeft: 16,\n paddingRight: 16,\n minHeight: 42,\n paddingTop: 8,\n paddingBottom: 8,\n width: '100%',\n height: 40,\n },\n } as any as WmSkeletonStyles,\n skeletonLabel: {\n root: {\n bottom: 12,\n left: 16,\n width:80,\n height:16,\n borderRadius:4\n }\n } as any as WmSkeletonStyles\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n \n // Add horizontal form input styles for horizontal form field layouts - positioned early to avoid overriding more specific styles\n addStyle('form-number-input-horizontal', '', {\n root: {\n flex: 1,\n minWidth: 0, // Allow shrinking below intrinsic content size if needed\n maxWidth: '100%'\n },\n text: {}\n } as BaseStyles);\n \n addStyle(DEFAULT_CLASS + '-disabled', '', {\n root : {\n backgroundColor: themeVariables.inputDisabledBgColor\n }\n });\n addStyle(DEFAULT_CLASS + '-rtl', '', {\n root : {\n textAlign: 'right'\n }\n });\n addStyle(DEFAULT_CLASS + '-with-label', '', {\n root: {\n minHeight: 48\n },\n floatingLabel: {\n position: 'absolute',\n top: 12,\n left: 16,\n fontSize: 14,\n color: themeVariables.floatingLabelColor\n },\n activeFloatingLabel: {\n color: themeVariables.activeFloatingLabelColor\n }\n });\n});\n\n"],"mappings":"AAAA,OAAOA,UAAU,MAAoB,wCAAwC;AAC7E,SAAqBC,YAAY,QAAQ,+CAA+C;AAaxF,OAAO,MAAMC,aAAa,GAAG,YAAY;AACzCF,UAAU,CAACG,aAAa,CAAC,CAACC,cAAc,EAAEC,QAAQ,KAAK;EACrD,MAAMC,aAA6B,GAAGL,YAAY,CAAiB;IAC/DM,IAAI,EAAE;MACJC,SAAS,EAAE,EAAE;MACbC,UAAU,EAAE,CAAC;MACbC,aAAa,EAAE,CAAC;MAChBC,WAAW,EAAE,CAAC;MACdC,WAAW,EAAE,OAAO;MACpBC,WAAW,EAAET,cAAc,CAACU,gBAAgB;MAC5CC,eAAe,EAAEX,cAAc,CAACY,oBAAoB;MACpDC,YAAY,EAAE,CAAC;MACfC,WAAW,EAAE,EAAE;MACfC,YAAY,EAAE;IAChB,CAAC;IACDC,IAAI,EAAE;MACJC,QAAQ,EAAE,EAAE;MACZC,SAAS,EAAE;IACb,CAAC;IACDC,OAAO,EAAE;MACPC,iBAAiB,EAAEpB,cAAc,CAACqB;IACpC,CAAC;IACDC,OAAO,EAAG;MACRb,WAAW,EAAET,cAAc,CAACuB;IAC9B,CAAC;IACDC,eAAe,EAAE;MACfC,KAAK,EAAEzB,cAAc,CAAC0B;IACxB,CAAC;IACDC,aAAa,EAAE,CAAC,CAAC;IACjBC,mBAAmB,EAAE,CAAC,CAAC;IACvBC,QAAQ,EAAE;MACR1B,IAAI,EAAC;QACHU,YAAY,EAAE,CAAC;QACfC,WAAW,EAAE,EAAE;QACfC,YAAY,EAAE,EAAE;QAChBX,SAAS,EAAE,EAAE;QACbC,UAAU,EAAE,CAAC;QACbC,aAAa,EAAE,CAAC;QAChBwB,KAAK,EAAE,MAAM;QACbC,MAAM,EAAE;MACV;IACF,CAA4B;IAC5BC,aAAa,EAAE;MACb7B,IAAI,EAAE;QACJ8B,MAAM,EAAE,EAAE;QACVC,IAAI,EAAE,EAAE;QACRJ,KAAK,EAAC,EAAE;QACRC,MAAM,EAAC,EAAE;QACTlB,YAAY,EAAC;MACf;IACF;EACJ,CAAC,CAAC;EAEFZ,QAAQ,CAACH,aAAa,EAAE,EAAE,EAAEI,aAAa,CAAC;;EAE1C;EACAD,QAAQ,CAAC,8BAA8B,EAAE,EAAE,EAAE;IAC3CE,IAAI,EAAE;MACJgC,IAAI,EAAE,CAAC;MACPC,QAAQ,EAAE,CAAC;MAAE;MACbC,QAAQ,EAAE;IACZ,CAAC;IACDrB,IAAI,EAAE,CAAC;EACT,CAAe,CAAC;EAEhBf,QAAQ,CAACH,aAAa,GAAG,WAAW,EAAE,EAAE,EAAE;IACtCK,IAAI,EAAG;MACLQ,eAAe,EAAEX,cAAc,CAACsC;IAClC;EACJ,CAAC,CAAC;EACFrC,QAAQ,CAACH,aAAa,GAAG,MAAM,EAAE,EAAE,EAAE;IACjCK,IAAI,EAAG;MACLe,SAAS,EAAE;IACb;EACJ,CAAC,CAAC;EACFjB,QAAQ,CAACH,aAAa,GAAG,aAAa,EAAE,EAAE,EAAE;IAC1CK,IAAI,EAAE;MACJC,SAAS,EAAE;IACb,CAAC;IACDuB,aAAa,EAAE;MACbY,QAAQ,EAAE,UAAU;MACpBC,GAAG,EAAE,EAAE;MACPN,IAAI,EAAE,EAAE;MACRjB,QAAQ,EAAE,EAAE;MACZQ,KAAK,EAAEzB,cAAc,CAACyC;IACxB,CAAC;IACDb,mBAAmB,EAAE;MACnBH,KAAK,EAAEzB,cAAc,CAAC0C;IACxB;EACF,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
|