@wavemaker-ai/app-rn-runtime 1.0.0-rc.330 → 1.0.0-rc.334

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/components/basic/anchor/anchor.component.js +4 -4
  2. package/components/basic/anchor/anchor.component.js.map +1 -1
  3. package/components/basic/anchor/anchor.props.js +1 -0
  4. package/components/basic/anchor/anchor.props.js.map +1 -1
  5. package/components/basic/icon/icon.component.js +31 -4
  6. package/components/basic/icon/icon.component.js.map +1 -1
  7. package/components/basic/icon/svg-url-icon.component.js +80 -0
  8. package/components/basic/icon/svg-url-icon.component.js.map +1 -0
  9. package/components/basic/search/search.component.js +8 -2
  10. package/components/basic/search/search.component.js.map +1 -1
  11. package/components/basic/search/search.props.js +3 -0
  12. package/components/basic/search/search.props.js.map +1 -1
  13. package/components/basic/spinner/spinner.component.js +1 -0
  14. package/components/basic/spinner/spinner.component.js.map +1 -1
  15. package/components/basic/spinner/spinner.props.js +1 -0
  16. package/components/basic/spinner/spinner.props.js.map +1 -1
  17. package/components/chart/area-chart/area-chart.component.js +12 -6
  18. package/components/chart/area-chart/area-chart.component.js.map +1 -1
  19. package/components/chart/bar-chart/bar-chart.component.js +14 -7
  20. package/components/chart/bar-chart/bar-chart.component.js.map +1 -1
  21. package/components/chart/basechart.props.js +1 -0
  22. package/components/chart/basechart.props.js.map +1 -1
  23. package/components/chart/basechart.styles.js +0 -1
  24. package/components/chart/basechart.styles.js.map +1 -1
  25. package/components/chart/bubble-chart/bubble-chart.component.js +25 -6
  26. package/components/chart/bubble-chart/bubble-chart.component.js.map +1 -1
  27. package/components/chart/line-chart/line-chart.component.js +12 -6
  28. package/components/chart/line-chart/line-chart.component.js.map +1 -1
  29. package/components/chart/pie-chart/pie-chart.component.js +24 -4
  30. package/components/chart/pie-chart/pie-chart.component.js.map +1 -1
  31. package/components/chart/pie-chart/pie-chart.props.js +1 -1
  32. package/components/chart/pie-chart/pie-chart.props.js.map +1 -1
  33. package/components/container/accordion/accordion.component.js +11 -3
  34. package/components/container/accordion/accordion.component.js.map +1 -1
  35. package/components/container/accordion/accordion.props.js +2 -0
  36. package/components/container/accordion/accordion.props.js.map +1 -1
  37. package/components/container/accordion/accordionpane/accordionpane.props.js +1 -0
  38. package/components/container/accordion/accordionpane/accordionpane.props.js.map +1 -1
  39. package/components/container/panel/panel.component.js +3 -1
  40. package/components/container/panel/panel.component.js.map +1 -1
  41. package/components/container/panel/panel.props.js +2 -0
  42. package/components/container/panel/panel.props.js.map +1 -1
  43. package/components/container/wizard/wizard.component.js +7 -3
  44. package/components/container/wizard/wizard.component.js.map +1 -1
  45. package/components/container/wizard/wizard.props.js +1 -0
  46. package/components/container/wizard/wizard.props.js.map +1 -1
  47. package/components/container/wizard/wizardstep/wizardstep.props.js +3 -0
  48. package/components/container/wizard/wizardstep/wizardstep.props.js.map +1 -1
  49. package/components/data/form/form-field/form-field.component.js +37 -17
  50. package/components/data/form/form-field/form-field.component.js.map +1 -1
  51. package/components/data/form/form.component.js +3 -2
  52. package/components/data/form/form.component.js.map +1 -1
  53. package/components/data/form/form.props.js +1 -0
  54. package/components/data/form/form.props.js.map +1 -1
  55. package/components/data/list/list.component.js +5 -3
  56. package/components/data/list/list.component.js.map +1 -1
  57. package/components/data/list/list.props.js +2 -0
  58. package/components/data/list/list.props.js.map +1 -1
  59. package/components/input/basedataset/basedataset.component.js +2 -1
  60. package/components/input/basedataset/basedataset.component.js.map +1 -1
  61. package/components/input/basedataset/basedataset.props.js +1 -0
  62. package/components/input/basedataset/basedataset.props.js.map +1 -1
  63. package/components/input/epoch/base-datetime.component.js +4 -1
  64. package/components/input/epoch/base-datetime.component.js.map +1 -1
  65. package/components/input/fileupload/fileupload.component.js +1 -0
  66. package/components/input/fileupload/fileupload.component.js.map +1 -1
  67. package/components/input/fileupload/fileupload.props.js +1 -0
  68. package/components/input/fileupload/fileupload.props.js.map +1 -1
  69. package/components/input/rating/rating.component.js +4 -2
  70. package/components/input/rating/rating.component.js.map +1 -1
  71. package/components/input/rating/rating.props.js +4 -0
  72. package/components/input/rating/rating.props.js.map +1 -1
  73. package/components/input/select/select.component.js +9 -2
  74. package/components/input/select/select.component.js.map +1 -1
  75. package/components/input/switch/switch.component.js +2 -1
  76. package/components/input/switch/switch.component.js.map +1 -1
  77. package/components/input/text/text.component.js +24 -4
  78. package/components/input/text/text.component.js.map +1 -1
  79. package/components/input/text/text.props.js +2 -0
  80. package/components/input/text/text.props.js.map +1 -1
  81. package/components/navigation/basenav/basenav.component.js +2 -0
  82. package/components/navigation/basenav/basenav.component.js.map +1 -1
  83. package/components/navigation/basenav/basenav.props.js +1 -0
  84. package/components/navigation/basenav/basenav.props.js.map +1 -1
  85. package/components/navigation/menu/menu.component.js +3 -0
  86. package/components/navigation/menu/menu.component.js.map +1 -1
  87. package/components/navigation/menu/menu.props.js +2 -0
  88. package/components/navigation/menu/menu.props.js.map +1 -1
  89. package/components/navigation/popover/popover.component.js +1 -0
  90. package/components/navigation/popover/popover.component.js.map +1 -1
  91. package/components/navigation/popover/popover.props.js +1 -0
  92. package/components/navigation/popover/popover.props.js.map +1 -1
  93. package/components/page/tabbar/tabbar.component.js +2 -1
  94. package/components/page/tabbar/tabbar.component.js.map +1 -1
  95. package/components-prism/basic/search/search.component.js +6 -4
  96. package/components-prism/basic/search/search.component.js.map +1 -1
  97. package/components-prism/basic/search/search.props.js +2 -0
  98. package/components-prism/basic/search/search.props.js.map +1 -1
  99. package/core/components/floatinglabel.component.js +2 -2
  100. package/core/components/floatinglabel.component.js.map +1 -1
  101. package/core/components/textinput.component.js +1 -0
  102. package/core/components/textinput.component.js.map +1 -1
  103. package/core/utils.js +16 -0
  104. package/core/utils.js.map +1 -1
  105. package/npm-shrinkwrap.json +446 -400
  106. package/package-lock.json +446 -400
  107. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Text","Platform","TouchableOpacity","moment","DateTimePicker","BaseComponent","BaseComponentState","WmIcon","WmDatetimeProps","DEFAULT_CLASS","WebDatePicker","isNumber","isString","ModalConsumer","isDateFormatAsPerPattern","validateField","splitBorderColorInPlace","AccessibilityWidgetType","getAccessibilityProps","FloatingLabel","AppI18nService","WmButton","WmDatePickerModal","WmTimePickerModal","createSkeleton","BaseDatetimeState","constructor","args","_defineProperty","CURRENT_DATE","CURRENT_TIME","BaseDatetime","props","defaultClass","defaultProps","defaultState","format","date","_this$props$locale","Date","getTime","locale","parse","parseInt","toDate","monitorAndUpdateCurrentTime","stopCurrentTimeMonitor","timerId","setInterval","updateState","readonly","datavalue","now","state","clearInterval","convertTimezone","timezone","getTimezone","parsedDateString","toLocaleString","timeZone","rtlSanityCheck","text","replace","momentPattern","pattern","removeSpecialMarks","replaceAll","onPropertyChange","name","$new","$old","prevDatavalue","outputformat","datepattern","dateValue","displayValue","onFieldChange","minDateVal","mindate","isMinMatchingPattern","minDatePatternFormatted","formattedMinDate","maxDateVal","maxdate","isMaxMatchingPattern","maxDatePatternFormatted","formattedMaxDate","disabled","onDateChange","$event","prevDate","undefined","modes","shift","newDate","isFocused","showDatePicker","length","timestamp","validate","invokeEventCallback","onBlur","OS","setTimeout","triggerValidation","onFocus","mode","showDatePickerModal","showTimePickerModal","value","validationObj","setState","isValid","errorType","componentWillUnmount","renderWebWidget","createElement","onDismiss","minimumDate","maximumDate","renderNativeWidget","_extends","DATE","is24Hour","display","onChange","event","dateSelected","set","getMonth","getFullYear","getDate","renderNativeIOSWidget","date_change","style","styles","dialog","actionWrapper","selectBtn","caption","onTap","cancelBtn","renderNativeIOSWidgetWithModal","modalService","nativeModalOptions","content","Fragment","hideModal","centered","onClose","showModal","renderNativeWidgetWithModal","addTouchableOpacity","children","handleLayout","getTestPropsForAction","onLayout","importantForAccessibility","onPress","getIcon","renderSkeleton","floatinglabel","placeholder","container","root","theme","skeleton","icon","renderWidget","_this$theme$getStyle","_this$theme$getStyle2","_props$floatinglabel","_this$styles$root","is12HourFormat","test","is24hour","rootStyles","updatedRootStyles","foundationStyle","getStyle","classname","split","pop","activeFloatingLabelStyleKey","activeFloatingLabelStyle","mergeStyle","activeFloatingLabel","focused","invalid","accessible","accessibilityLabel","accessibilitylabel","accessibilityRole","accessibilityrole","accessibilityHint","hint","_background","moveUp","label","variant","labelBackground","backgroundColor","floatingLabel","placeholderText","getTestPropsForLabel","flex","isRTL","flexDirection","textAlign","iconclass","color","clearIcon","id","getTestId","clearBtnClicked","calendarIcon","iswheelpicker","isVisible","minDate","maxDate","selectedDate","onSelect","onCancel","dateheadertitle","dateconfirmationtitle","datecanceltitle","selectedDateTime","time","timeheadertitle","timeconfirmationtitle","timecanceltitle","rootWrapper"],"sources":["base-datetime.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text, Platform, TouchableOpacity, ViewStyle, DimensionValue, LayoutChangeEvent } from 'react-native';\nimport moment from 'moment';\nimport DateTimePicker from '@react-native-community/datetimepicker';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport WmIcon from '@wavemaker-ai/app-rn-runtime/components/basic/icon/icon.component';\n\nimport WmDatetimeProps from './datetime/datetime.props';\nimport { DEFAULT_CLASS, WmDatetimeStyles } from './datetime/datetime.styles';\nimport WebDatePicker from './date-picker.component';\nimport { isEqual, isNumber, isString } from 'lodash-es';\nimport { ModalConsumer, ModalOptions, ModalService } from '@wavemaker-ai/app-rn-runtime/core/modal.service';\nimport { isDateFormatAsPerPattern, validateField ,splitBorderColorInPlace} from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker-ai/app-rn-runtime/core/accessibility';\nimport { FloatingLabel } from '@wavemaker-ai/app-rn-runtime/core/components/floatinglabel.component';\nimport AppI18nService from '@wavemaker-ai/app-rn-runtime/runtime/services/app-i18n.service';\nimport WmButton from '@wavemaker-ai/app-rn-runtime/components/basic/button/button.component';\nimport WmDatePickerModal from './wheelpickermodal/date/date-picker-modal.component';\nimport WmTimePickerModal from './wheelpickermodal/time/time-picker-modal.component';\nimport { createSkeleton } from '@wavemaker-ai/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\n\nexport class BaseDatetimeState extends BaseComponentState<WmDatetimeProps> {\n showDatePicker = false;\n showDatePickerModal = false;\n showTimePickerModal = false;\n dateValue: Date = null as any;\n displayValue: string = null as any;\n isFocused = false;\n timerId: NodeJS.Timer = null as any;\n isValid: boolean = true;\n errorType = '';\n}\n\nconst CURRENT_DATE = 'CURRENT_DATE';\nconst CURRENT_TIME = 'CURRENT_TIME';\n\nexport default abstract class BaseDatetime extends BaseComponent<WmDatetimeProps, BaseDatetimeState, WmDatetimeStyles> {\n clearBtnClicked = false;\n modes = [] as string[];\n nativeModalOptions: ModalOptions = {} as any;\n prevDatavalue: any;\n\n constructor(props: WmDatetimeProps, defaultClass = DEFAULT_CLASS, defaultProps = new WmDatetimeProps(), defaultState= new BaseDatetimeState()) {\n super(props, defaultClass, defaultProps, defaultState);\n }\n\n format(date: Date | number | undefined, format: string) {\n if (format === 'timestamp') {\n return date instanceof Date ? '' + date.getTime() : date;\n }\n\n // Convert moment formatting with respect to the current local.\n moment.locale(this.props.locale ?? 'en');\n return date && moment(date).format(format);\n }\n\n parse(date: string | number, format: string) {\n if (format === 'timestamp') {\n if (isString(date)) {\n return new Date(parseInt(date));\n }\n if (isNumber(date)) {\n return new Date(date);\n }\n }\n return date && moment(date, format).toDate();\n }\n\n private monitorAndUpdateCurrentTime() {\n this.stopCurrentTimeMonitor();\n const timerId = setInterval(() => {\n this.updateState({\n props: {\n readonly: true,\n datavalue: Date.now()\n },\n timerId: timerId\n } as any as BaseDatetimeState);\n }, 1000);\n }\n\n private stopCurrentTimeMonitor() {\n if (this.state.timerId) {\n clearInterval(this.state.timerId as any);\n }\n }\n\n convertTimezone(date: any){\n const timezone = AppI18nService.getTimezone();\n if (timezone) {\n const parsedDateString = new Date(date).toLocaleString(this.props.locale ? this.props.locale : 'en-us', { timeZone: timezone });\n return moment(parsedDateString, 'M/D/YYYY, h:mm:ss A');\n }\n else {\n return null;\n }\n }\n\n rtlSanityCheck(text: any) {\n return text?.replace(/[\\u200E\\u200F\\u202B\\u202C]/g, '');\n }\n\n momentPattern(pattern : String) {\n const removeSpecialMarks = this.rtlSanityCheck(pattern);\n return removeSpecialMarks?.replaceAll('y', 'Y').replaceAll('d', 'D');\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n switch(name) {\n //@ts-ignore\n case 'datavalue':\n this.prevDatavalue = $old;\n if (props.datavalue === CURRENT_TIME) {\n this.monitorAndUpdateCurrentTime();\n }\n case 'datepattern':\n case 'outputformat':\n if (props.datavalue && this.momentPattern(props.outputformat as String) && this.momentPattern(props.datepattern as String)) {\n let datavalue: any = props.datavalue;\n if (datavalue === CURRENT_DATE || datavalue === CURRENT_TIME) {\n datavalue = new Date() as any;\n }\n const date = isString(datavalue) ? this.parse(datavalue as string, this.momentPattern(props.outputformat as String)) : datavalue;\n datavalue = this.convertTimezone(datavalue);\n\n this.updateState({\n dateValue : date,\n displayValue: this.format(datavalue?datavalue:date as any, this.momentPattern(props.datepattern as String))\n } as BaseDatetimeState);\n } else {\n this.updateState({\n dateValue : null as any,\n displayValue: null as any\n } as BaseDatetimeState);\n }\n this.props.onFieldChange && this.props.onFieldChange('datavalue', props.datavalue, this.prevDatavalue);\n break;\n case 'mindate':\n if (isString($new)) {\n const minDateVal = ($new === CURRENT_DATE || $new === CURRENT_TIME) ? new Date() : props.mindate;\n // * check if supplied mindate is as per datepattern\n const isMinMatchingPattern = minDateVal\n ? isDateFormatAsPerPattern(this.momentPattern(props.datepattern as String), minDateVal)\n : false;\n // * min date formatted as per datepattern\n const minDatePatternFormatted = minDateVal && isMinMatchingPattern ? moment(\n moment(\n minDateVal,\n this.momentPattern(props.datepattern as String)\n ).format('YYYY-MM-DD')\n ) : null;\n // * min date formatted as per ISO, if mindate supplied is not as per datepattern\n const formattedMinDate = minDatePatternFormatted && isMinMatchingPattern\n ? minDatePatternFormatted.toDate()\n : moment(minDateVal).toDate();\n this.updateState({\n props: {\n mindate: formattedMinDate\n }\n } as BaseDatetimeState);\n }\n break;\n case 'maxdate':\n if (isString($new)) {\n const maxDateVal = ($new === CURRENT_DATE || $new === CURRENT_TIME) ? new Date() : props.maxdate;\n // * check if supplied maxdate is as per datepattern\n const isMaxMatchingPattern = maxDateVal\n ? isDateFormatAsPerPattern(this.momentPattern(props.datepattern as String), maxDateVal)\n : false;\n // * max date formatted as per datepattern\n const maxDatePatternFormatted = maxDateVal && isMaxMatchingPattern ? moment(\n moment(\n maxDateVal,\n this.momentPattern(props.datepattern as String)\n ).format('YYYY-MM-DD')\n ) : null;\n // * max date formatted as per ISO, if maxdate supplied is not as per datepattern\n const formattedMaxDate = maxDatePatternFormatted && isMaxMatchingPattern\n ? maxDatePatternFormatted.toDate()\n : moment(maxDateVal).toDate();\n\n this.updateState({\n props: {\n maxdate: formattedMaxDate,\n },\n } as BaseDatetimeState);\n }\n break;\n case 'readonly':\n this.updateState({\n props: {\n disabled: $new\n }\n } as BaseDatetimeState)\n break;\n }\n }\n\n onDateChange($event: any, date?: Date) {\n const prevDate = this.format(this.state.dateValue, this.momentPattern(this.state.props.outputformat as String) as string) || undefined;\n this.modes.shift();\n const newDate = this.format(date, this.momentPattern(this.state.props.outputformat as String) as string)\n this.updateState({\n isFocused: false,\n showDatePicker: !!this.modes.length,\n props: {\n datavalue: newDate,\n timestamp: this.format(date, 'timestamp')\n }\n } as BaseDatetimeState, () => {\n this.validate(date);\n this.invokeEventCallback('onChange', [null, this, newDate, prevDate])\n });\n }\n\n onBlur() {\n if (Platform.OS === 'web') {\n this.validate(this.state.props.datavalue);\n setTimeout(() => this.props.triggerValidation && this.props.triggerValidation());\n }\n this.invokeEventCallback('onBlur', [null, this]);\n }\n\n onFocus() {\n if (!this.state.props.readonly) {\n if (Platform.OS !== 'web' && this.state.props.mode === 'datetime') {\n this.modes = ['date', 'time'];\n } else {\n this.modes = [this.state.props.mode];\n }\n this.updateState({showDatePicker: true, isFocused: true} as BaseDatetimeState);\n if (this.state.props.mode === 'date') {\n this.updateState({showDatePickerModal: true} as BaseDatetimeState);\n }\n if (this.state.props.mode === 'time') {\n this.updateState({showTimePickerModal: true} as BaseDatetimeState);\n }\n if (this.state.props.mode === 'datetime') {\n this.updateState({showDatePickerModal: true} as BaseDatetimeState);\n }\n this.invokeEventCallback('onFocus', [null, this]);\n }\n }\n\n validate(value: any) {\n const validationObj = validateField(this.state.props, value);\n this.setState({\n isValid: validationObj.isValid,\n errorType: validationObj.errorType\n } as BaseDatetimeState)\n }\n\n componentWillUnmount() {\n super.componentWillUnmount();\n this.stopCurrentTimeMonitor();\n }\n\n renderWebWidget(props: WmDatetimeProps) {\n return (<WebDatePicker\n mode={this.state.props.mode}\n locale={props.locale}\n value={this.state.dateValue || new Date()}\n onDateChange={(date: Date) => this.onDateChange(null as any, date)}\n onDismiss={() =>\n this.updateState({\n isFocused: false,\n showDatePicker: false\n } as BaseDatetimeState, () => this.onBlur())}\n minimumDate={props.mindate as Date}\n maximumDate={props.maxdate as Date}/>);\n }\n\n renderNativeWidget(props: WmDatetimeProps, onDismiss?: Function) {\n return (<DateTimePicker\n mode={this.modes[0] as any}\n {...getAccessibilityProps(AccessibilityWidgetType.DATE, {...this.state.props})}\n value={this.state.dateValue || new Date()}\n is24Hour={true}\n display='default'\n onChange={(event: any, date?: Date) => {\n if (date && this.state.props.mode === 'datetime' && this.modes[0] === 'time') {\n const dateSelected = this.state.dateValue;\n date = moment(date)\n .set('month', dateSelected.getMonth())\n .set('year', dateSelected.getFullYear())\n .set('date', dateSelected.getDate())\n .toDate();\n }\n this.onDateChange(event, date || this.state.dateValue);\n if (this.modes.length <= 1) {\n this.onBlur();\n onDismiss && onDismiss();\n }\n }}\n minimumDate={props.mindate as Date}\n maximumDate={props.maxdate as Date}\n />\n );\n }\n\n renderNativeIOSWidget(props: WmDatetimeProps, onDismiss?: Function) {\n let date_change : any = undefined;\n return (<View style={this.styles.dialog}>\n <DateTimePicker\n mode={this.modes[0] as any}\n value={this.state.dateValue || new Date()}\n is24Hour={true}\n display='spinner'\n onChange={(event: any, date?: Date) => {\n if (date && this.state.props.mode === 'datetime' && this.modes[0] === 'time') {\n const dateSelected = this.state.dateValue;\n date = moment(date)\n .set('month', dateSelected.getMonth())\n .set('year', dateSelected.getFullYear())\n .set('date', dateSelected.getDate())\n .toDate();\n }\n date_change = date;\n }}\n minimumDate={props.mindate as Date}\n maximumDate={props.maxdate as Date}\n />\n <View style={this.styles.actionWrapper}>\n <WmButton styles={this.styles.selectBtn} caption='Select' onTap={() => {\n this.onDateChange(null as any, date_change || this.state.dateValue || new Date());\n if (this.modes.length <= 1) {\n this.onBlur();\n onDismiss && onDismiss();\n }\n }} />\n <WmButton styles={this.styles.cancelBtn} caption='Cancel' onTap={() => {\n this.modes.shift();\n this.onDateChange(null as any, this.state.dateValue || undefined);\n this.onBlur();\n onDismiss && onDismiss();\n }} />\n </View>\n </View>\n );\n }\n\n renderNativeIOSWidgetWithModal(props: WmDatetimeProps) {\n return (<ModalConsumer>{(modalService: ModalService) => {\n this.nativeModalOptions.content = (<>\n {this.renderNativeIOSWidget(props, () => modalService.hideModal(this.nativeModalOptions))}\n </>);\n this.nativeModalOptions.centered = true;\n this.nativeModalOptions.onClose = () => {\n this.onBlur();\n };\n modalService.showModal(this.nativeModalOptions);\n return null;\n }}</ModalConsumer>);\n }\n\n renderNativeWidgetWithModal(props: WmDatetimeProps) {\n return (<ModalConsumer>{(modalService: ModalService) => {\n this.nativeModalOptions.content = (<>\n {this.renderNativeWidget(props, () => modalService.hideModal(this.nativeModalOptions))}\n </>);\n this.nativeModalOptions.centered = true;\n this.nativeModalOptions.onClose = () => {\n this.onBlur();\n };\n modalService.showModal(this.nativeModalOptions);\n return null;\n }}</ModalConsumer>);\n }\n\n addTouchableOpacity(props: WmDatetimeProps, children: React.JSX.Element, styles?: any, handleLayout?: any) : React.ReactNode{\n return (\n <TouchableOpacity\n {...this.getTestPropsForAction()}\n onLayout={handleLayout}\n importantForAccessibility='no'\n style={styles} onPress={() => {\n if (!props.readonly) {\n this.onFocus();\n }\n this.invokeEventCallback('onTap', [null, this]);\n }}>\n {children}\n </TouchableOpacity>\n );\n }\n\n getIcon() {\n if (this.state.props.mode === 'time') {\n return 'wm-sl-l sl-time'\n }\n return 'wm-sl-l sl-calendar';\n }\n\n public renderSkeleton(props: WmDatetimeProps): React.ReactNode {\n return (\n this.state.props.floatinglabel || this.state.displayValue || this.state.props.placeholder ?\n <View style={{display:'flex',...this.styles.container,...this.styles.root}}>\n {createSkeleton(this.theme, {} as WmSkeletonStyles, {\n ...this.styles.skeleton.root\n })}\n {createSkeleton(this.theme, {} as WmSkeletonStyles, {\n ...this.styles.skeleton.icon\n })}\n </View> : null\n )}\n\n renderWidget(props: WmDatetimeProps) {\n const is12HourFormat = props?.datepattern && /hh:mm(:ss|:sss)? a/.test(props.datepattern);\n const is24Hour = is12HourFormat ? false : props.is24hour;\n let rootStyles=this.styles.root;\n let updatedRootStyles = splitBorderColorInPlace(rootStyles);\n const foundationStyle = this.theme.getStyle('app-input');\n const classname = this.state.props.classname ? this.state.props.classname.split(\" \").pop() : '';\n const activeFloatingLabelStyleKey =\n props.mode === 'time' ? 'app-time-with-label'\n : props.mode === 'date' ? 'app-date-with-label'\n : 'app-datetime-with-label';\n const activeFloatingLabelStyle = this.theme.mergeStyle(\n this.styles.activeFloatingLabel,\n this.theme.getStyle(activeFloatingLabelStyleKey)?.activeFloatingLabel,\n this.theme.getStyle(`${classname}`)?.focused\n );\n return (\n this.addTouchableOpacity(props, (\n <View style={[updatedRootStyles, this.state.isValid ? {} : this.styles.invalid, this.state.isFocused ? this.styles.focused : null, this.state.props.disabled ? this.theme.mergeStyle(this.styles.root, foundationStyle?.disabled, this.theme.getStyle(`${classname}`).disabled) : {}]} accessible={props.accessible} accessibilityLabel={props.accessibilitylabel || `Select ${props?.mode}`} accessibilityRole={props.accessibilityrole || 'button'} accessibilityHint={props.hint}>\n {this._background}\n {props.floatinglabel ? (\n <FloatingLabel\n moveUp={!!(props.datavalue || this.state.isFocused)}\n label={props.floatinglabel ?? props.placeholder}\n variant={props.variant as 'filled' | 'outlined' | undefined}\n labelBackground={props.variant === 'outlined' ? (this.styles.root?.backgroundColor as string) : undefined}\n style={{\n ...(this.styles.floatingLabel || []),\n ...(this.state.isFocused ? (activeFloatingLabelStyle || {}) : {})\n }}\n />\n ) : null}\n <View style={this.styles.container}>\n {this.addTouchableOpacity(props, (\n <Text style={[\n this.styles.text,\n this.state.displayValue ? {} : this.styles.placeholderText\n ]}\n {...this.getTestPropsForLabel()}>\n {this.state.displayValue\n || (props.floatinglabel ? '' : this.state.props.placeholder)}\n </Text>\n ), [{ flex: 1}, this.isRTL?{flexDirection:'row', textAlign:'right'}:{}] )}\n {(!props.readonly && props.datavalue &&\n (<WmIcon iconclass=\"wi wi-clear\"\n styles={{color: this.styles.text.color, ...this.styles.clearIcon}}\n id={this.getTestId('clearicon')}\n accessibilitylabel={`clear ${props?.mode}`}\n onTap={() => {\n this.onDateChange(null as any, null as any);\n this.clearBtnClicked = true;\n }}/>)) || null}\n {this.addTouchableOpacity(props, (\n <WmIcon iconclass={this.getIcon()} styles={{color: this.styles.text.color, ...this.styles.calendarIcon}} hint={props?.hint} id={this.getTestId('calendericon')} accessible={false}/>\n ))}\n </View>\n {\n this.state.showDatePicker\n && ((Platform.OS === 'web' && this.renderWebWidget(props))\n || (!props.iswheelpicker && Platform.OS === 'android' && this.renderNativeWidget(props))\n || (!props.iswheelpicker && Platform.OS === 'ios' && this.renderNativeIOSWidgetWithModal(props)))\n }\n {(Platform.OS !== 'web' && props.iswheelpicker && this.state.showDatePickerModal) && (\n <WmDatePickerModal\n isVisible={this.state.showDatePickerModal}\n onClose={() => this.updateState({showDatePickerModal: false} as BaseDatetimeState)}\n minDate={props.mindate}\n maxDate={props.maxdate}\n selectedDate={this.state.dateValue}\n onSelect={(date: Date) => {\n this.onDateChange(null as any, date);\n this.updateState({\n isFocused: false,\n showDatePickerModal: false\n } as BaseDatetimeState, () => {\n setTimeout(() => {\n this.onBlur();\n }, 10);\n\n // * showing time picker after selecting date in datetime mode\n if (this.state.props.mode === \"datetime\") {\n this.setState({\n showTimePickerModal: true,\n })\n }\n });\n }}\n onCancel={() => {\n // this.onDateChange(null as any, this.state.dateValue || undefined);\n this.updateState({\n isFocused: false,\n showDatePickerModal: false\n } as BaseDatetimeState, () => this.onBlur());\n }}\n dateheadertitle={props.dateheadertitle}\n dateconfirmationtitle={props.dateconfirmationtitle}\n datecanceltitle={props.datecanceltitle}\n />\n )}\n {(Platform.OS !== 'web' && props.iswheelpicker && this.state.showTimePickerModal) && (\n <WmTimePickerModal\n selectedDateTime={this.state.dateValue}\n is24Hour={is24Hour}\n isVisible={this.state.showTimePickerModal}\n onClose={() => this.updateState({isFocused: false, showTimePickerModal: false} as BaseDatetimeState)}\n onSelect={(time: Date) => {\n this.onDateChange(null as any, time);\n this.updateState({\n isFocused: false,\n showTimePickerModal: false\n } as BaseDatetimeState, () => {\n setTimeout(() => {\n this.onBlur()\n }, 10);\n });\n }}\n onCancel={() => {\n // this.onDateChange(null as any, this.state.dateValue || undefined);\n this.updateState({\n isFocused: false,\n showTimePickerModal: false\n } as BaseDatetimeState, () => {\n this.onBlur();\n this.modes.shift();\n });\n }}\n timeheadertitle={props.timeheadertitle}\n timeconfirmationtitle={props.timeconfirmationtitle}\n timecanceltitle={props.timecanceltitle}\n />\n )}\n </View>\n ), this.styles.rootWrapper , this.handleLayout)\n );\n }\n}\n\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","View","Text","Platform","TouchableOpacity","moment","DateTimePicker","BaseComponent","BaseComponentState","WmIcon","WmDatetimeProps","DEFAULT_CLASS","WebDatePicker","isNumber","isString","ModalConsumer","isDateFormatAsPerPattern","validateField","splitBorderColorInPlace","AccessibilityWidgetType","getAccessibilityProps","FloatingLabel","AppI18nService","WmButton","WmDatePickerModal","WmTimePickerModal","createSkeleton","BaseDatetimeState","constructor","args","_defineProperty","CURRENT_DATE","CURRENT_TIME","BaseDatetime","props","defaultClass","defaultProps","defaultState","format","date","_this$props$locale","Date","getTime","locale","parse","parseInt","toDate","monitorAndUpdateCurrentTime","stopCurrentTimeMonitor","timerId","setInterval","updateState","readonly","datavalue","now","state","clearInterval","convertTimezone","timezone","getTimezone","parsedDateString","toLocaleString","timeZone","rtlSanityCheck","text","replace","momentPattern","pattern","removeSpecialMarks","replaceAll","onPropertyChange","name","$new","$old","prevDatavalue","outputformat","datepattern","dateValue","displayValue","onFieldChange","minDateVal","mindate","isMinMatchingPattern","minDatePatternFormatted","formattedMinDate","maxDateVal","maxdate","isMaxMatchingPattern","maxDatePatternFormatted","formattedMaxDate","disabled","onDateChange","$event","prevDate","undefined","modes","shift","newDate","isFocused","showDatePicker","length","timestamp","validate","invokeEventCallback","onBlur","OS","setTimeout","triggerValidation","onFocus","mode","showDatePickerModal","showTimePickerModal","value","validationObj","setState","isValid","errorType","componentWillUnmount","renderWebWidget","createElement","onDismiss","minimumDate","maximumDate","renderNativeWidget","_extends","DATE","is24Hour","display","onChange","event","dateSelected","set","getMonth","getFullYear","getDate","renderNativeIOSWidget","date_change","style","styles","dialog","actionWrapper","selectBtn","caption","onTap","cancelBtn","renderNativeIOSWidgetWithModal","modalService","nativeModalOptions","content","Fragment","hideModal","centered","onClose","showModal","renderNativeWidgetWithModal","addTouchableOpacity","children","handleLayout","getTestPropsForAction","onLayout","importantForAccessibility","onPress","getIcon","renderSkeleton","floatinglabel","placeholder","container","root","theme","skeleton","icon","renderWidget","_this$theme$getStyle","_this$theme$getStyle2","_props$floatinglabel","_this$styles$root","is12HourFormat","test","is24hour","rootStyles","updatedRootStyles","foundationStyle","getStyle","classname","split","pop","activeFloatingLabelStyleKey","activeFloatingLabelStyle","mergeStyle","activeFloatingLabel","focused","invalid","accessible","accessibilityLabel","accessibilitylabel","accessibilityRole","accessibilityrole","accessibilityHint","hint","_background","moveUp","label","variant","labelBackground","backgroundColor","floatingLabel","placeholderText","getTestPropsForLabel","flex","isRTL","flexDirection","textAlign","iconclass","color","clearIcon","id","getTestId","clearBtnClicked","calendarIcon","iswheelpicker","isVisible","minDate","maxDate","selectedDate","onSelect","onCancel","dateheadertitle","dateconfirmationtitle","datecanceltitle","selectedDateTime","time","timeheadertitle","timeconfirmationtitle","timecanceltitle","rootWrapper"],"sources":["base-datetime.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text, Platform, TouchableOpacity, ViewStyle, DimensionValue, LayoutChangeEvent } from 'react-native';\nimport moment from 'moment';\nimport DateTimePicker from '@react-native-community/datetimepicker';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport WmIcon from '@wavemaker-ai/app-rn-runtime/components/basic/icon/icon.component';\n\nimport WmDatetimeProps from './datetime/datetime.props';\nimport { DEFAULT_CLASS, WmDatetimeStyles } from './datetime/datetime.styles';\nimport WebDatePicker from './date-picker.component';\nimport { isEqual, isNumber, isString } from 'lodash-es';\nimport { ModalConsumer, ModalOptions, ModalService } from '@wavemaker-ai/app-rn-runtime/core/modal.service';\nimport { isDateFormatAsPerPattern, validateField ,splitBorderColorInPlace} from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker-ai/app-rn-runtime/core/accessibility';\nimport { FloatingLabel } from '@wavemaker-ai/app-rn-runtime/core/components/floatinglabel.component';\nimport AppI18nService from '@wavemaker-ai/app-rn-runtime/runtime/services/app-i18n.service';\nimport WmButton from '@wavemaker-ai/app-rn-runtime/components/basic/button/button.component';\nimport WmDatePickerModal from './wheelpickermodal/date/date-picker-modal.component';\nimport WmTimePickerModal from './wheelpickermodal/time/time-picker-modal.component';\nimport { createSkeleton } from '@wavemaker-ai/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\n\nexport class BaseDatetimeState extends BaseComponentState<WmDatetimeProps> {\n showDatePicker = false;\n showDatePickerModal = false;\n showTimePickerModal = false;\n dateValue: Date = null as any;\n displayValue: string = null as any;\n isFocused = false;\n timerId: NodeJS.Timer = null as any;\n isValid: boolean = true;\n errorType = '';\n}\n\nconst CURRENT_DATE = 'CURRENT_DATE';\nconst CURRENT_TIME = 'CURRENT_TIME';\n\nexport default abstract class BaseDatetime extends BaseComponent<WmDatetimeProps, BaseDatetimeState, WmDatetimeStyles> {\n clearBtnClicked = false;\n modes = [] as string[];\n nativeModalOptions: ModalOptions = {} as any;\n prevDatavalue: any;\n\n constructor(props: WmDatetimeProps, defaultClass = DEFAULT_CLASS, defaultProps = new WmDatetimeProps(), defaultState= new BaseDatetimeState()) {\n super(props, defaultClass, defaultProps, defaultState);\n }\n\n format(date: Date | number | undefined, format: string) {\n if (format === 'timestamp') {\n return date instanceof Date ? '' + date.getTime() : date;\n }\n\n // Convert moment formatting with respect to the current local.\n moment.locale(this.props.locale ?? 'en');\n return date && moment(date).format(format);\n }\n\n parse(date: string | number, format: string) {\n if (format === 'timestamp') {\n if (isString(date)) {\n return new Date(parseInt(date));\n }\n if (isNumber(date)) {\n return new Date(date);\n }\n }\n return date && moment(date, format).toDate();\n }\n\n private monitorAndUpdateCurrentTime() {\n this.stopCurrentTimeMonitor();\n const timerId = setInterval(() => {\n this.updateState({\n props: {\n readonly: true,\n datavalue: Date.now()\n },\n timerId: timerId\n } as any as BaseDatetimeState);\n }, 1000);\n }\n\n private stopCurrentTimeMonitor() {\n if (this.state.timerId) {\n clearInterval(this.state.timerId as any);\n }\n }\n\n convertTimezone(date: any){\n const timezone = AppI18nService.getTimezone();\n if (timezone) {\n const parsedDateString = new Date(date).toLocaleString(this.props.locale ? this.props.locale : 'en-us', { timeZone: timezone });\n return moment(parsedDateString, 'M/D/YYYY, h:mm:ss A');\n }\n else {\n return null;\n }\n }\n\n rtlSanityCheck(text: any) {\n return text?.replace(/[\\u200E\\u200F\\u202B\\u202C]/g, '');\n }\n\n momentPattern(pattern : String) {\n const removeSpecialMarks = this.rtlSanityCheck(pattern);\n return removeSpecialMarks?.replaceAll('y', 'Y').replaceAll('d', 'D');\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n switch(name) {\n //@ts-ignore\n case 'datavalue':\n this.prevDatavalue = $old;\n if (props.datavalue === CURRENT_TIME) {\n this.monitorAndUpdateCurrentTime();\n }\n case 'datepattern':\n case 'outputformat':\n if (props.datavalue && this.momentPattern(props.outputformat as String) && this.momentPattern(props.datepattern as String)) {\n let datavalue: any = props.datavalue;\n if (datavalue === CURRENT_DATE || datavalue === CURRENT_TIME) {\n datavalue = new Date() as any;\n }\n const date = isString(datavalue) ? this.parse(datavalue as string, this.momentPattern(props.outputformat as String)) : datavalue;\n datavalue = this.convertTimezone(datavalue);\n\n this.updateState({\n dateValue : date,\n displayValue: this.format(datavalue?datavalue:date as any, this.momentPattern(props.datepattern as String))\n } as BaseDatetimeState);\n } else {\n this.updateState({\n dateValue : null as any,\n displayValue: null as any\n } as BaseDatetimeState);\n }\n this.props.onFieldChange && this.props.onFieldChange('datavalue', props.datavalue, this.prevDatavalue);\n break;\n case 'mindate':\n if (isString($new)) {\n const minDateVal = ($new === CURRENT_DATE || $new === CURRENT_TIME) ? new Date() : props.mindate;\n // * check if supplied mindate is as per datepattern\n const isMinMatchingPattern = minDateVal\n ? isDateFormatAsPerPattern(this.momentPattern(props.datepattern as String), minDateVal)\n : false;\n // * min date formatted as per datepattern\n const minDatePatternFormatted = minDateVal && isMinMatchingPattern ? moment(\n moment(\n minDateVal,\n this.momentPattern(props.datepattern as String)\n ).format('YYYY-MM-DD')\n ) : null;\n // * min date formatted as per ISO, if mindate supplied is not as per datepattern\n const formattedMinDate = minDatePatternFormatted && isMinMatchingPattern\n ? minDatePatternFormatted.toDate()\n : moment(minDateVal).toDate();\n this.updateState({\n props: {\n mindate: formattedMinDate\n }\n } as BaseDatetimeState);\n }\n break;\n case 'maxdate':\n if (isString($new)) {\n const maxDateVal = ($new === CURRENT_DATE || $new === CURRENT_TIME) ? new Date() : props.maxdate;\n // * check if supplied maxdate is as per datepattern\n const isMaxMatchingPattern = maxDateVal\n ? isDateFormatAsPerPattern(this.momentPattern(props.datepattern as String), maxDateVal)\n : false;\n // * max date formatted as per datepattern\n const maxDatePatternFormatted = maxDateVal && isMaxMatchingPattern ? moment(\n moment(\n maxDateVal,\n this.momentPattern(props.datepattern as String)\n ).format('YYYY-MM-DD')\n ) : null;\n // * max date formatted as per ISO, if maxdate supplied is not as per datepattern\n const formattedMaxDate = maxDatePatternFormatted && isMaxMatchingPattern\n ? maxDatePatternFormatted.toDate()\n : moment(maxDateVal).toDate();\n\n this.updateState({\n props: {\n maxdate: formattedMaxDate,\n },\n } as BaseDatetimeState);\n }\n break;\n case 'readonly':\n this.updateState({\n props: {\n disabled: $new\n }\n } as BaseDatetimeState)\n break;\n }\n }\n\n onDateChange($event: any, date?: Date) {\n const prevDate = this.format(this.state.dateValue, this.momentPattern(this.state.props.outputformat as String) as string) || undefined;\n this.modes.shift();\n const newDate = this.format(date, this.momentPattern(this.state.props.outputformat as String) as string)\n this.updateState({\n isFocused: false,\n showDatePicker: !!this.modes.length,\n props: {\n datavalue: newDate,\n timestamp: this.format(date, 'timestamp')\n }\n } as BaseDatetimeState, () => {\n this.validate(date);\n this.invokeEventCallback('onChange', [null, this, newDate, prevDate])\n });\n }\n\n onBlur() {\n if (Platform.OS === 'web') {\n this.validate(this.state.props.datavalue);\n setTimeout(() => this.props.triggerValidation && this.props.triggerValidation());\n }\n this.invokeEventCallback('onBlur', [null, this]);\n }\n\n onFocus() {\n if (!this.state.props.readonly) {\n if (Platform.OS !== 'web' && this.state.props.mode === 'datetime') {\n this.modes = ['date', 'time'];\n } else {\n this.modes = [this.state.props.mode];\n }\n this.updateState({showDatePicker: true, isFocused: true} as BaseDatetimeState);\n if (this.state.props.mode === 'date') {\n this.updateState({showDatePickerModal: true} as BaseDatetimeState);\n }\n if (this.state.props.mode === 'time') {\n this.updateState({showTimePickerModal: true} as BaseDatetimeState);\n }\n if (this.state.props.mode === 'datetime') {\n this.updateState({showDatePickerModal: true} as BaseDatetimeState);\n }\n this.invokeEventCallback('onFocus', [null, this]);\n }\n }\n\n validate(value: any) {\n const validationObj = validateField(this.state.props, value);\n this.setState({\n isValid: validationObj.isValid,\n errorType: validationObj.errorType\n } as BaseDatetimeState)\n }\n\n componentWillUnmount() {\n super.componentWillUnmount();\n this.stopCurrentTimeMonitor();\n }\n\n renderWebWidget(props: WmDatetimeProps) {\n return (<WebDatePicker\n mode={this.state.props.mode}\n locale={props.locale}\n value={this.state.dateValue || new Date()}\n onDateChange={(date: Date) => this.onDateChange(null as any, date)}\n onDismiss={() =>\n this.updateState({\n isFocused: false,\n showDatePicker: false\n } as BaseDatetimeState, () => this.onBlur())}\n minimumDate={props.mindate as Date}\n maximumDate={props.maxdate as Date}/>);\n }\n\n renderNativeWidget(props: WmDatetimeProps, onDismiss?: Function) {\n return (<DateTimePicker\n mode={this.modes[0] as any}\n {...getAccessibilityProps(AccessibilityWidgetType.DATE, {...this.state.props})}\n value={this.state.dateValue || new Date()}\n is24Hour={true}\n display='default'\n onChange={(event: any, date?: Date) => {\n if (date && this.state.props.mode === 'datetime' && this.modes[0] === 'time') {\n const dateSelected = this.state.dateValue;\n date = moment(date)\n .set('month', dateSelected.getMonth())\n .set('year', dateSelected.getFullYear())\n .set('date', dateSelected.getDate())\n .toDate();\n }\n this.onDateChange(event, date || this.state.dateValue);\n if (this.modes.length <= 1) {\n this.onBlur();\n onDismiss && onDismiss();\n }\n }}\n minimumDate={props.mindate as Date}\n maximumDate={props.maxdate as Date}\n />\n );\n }\n\n renderNativeIOSWidget(props: WmDatetimeProps, onDismiss?: Function) {\n let date_change : any = undefined;\n return (<View style={this.styles.dialog}>\n <DateTimePicker\n mode={this.modes[0] as any}\n value={this.state.dateValue || new Date()}\n is24Hour={true}\n display='spinner'\n onChange={(event: any, date?: Date) => {\n if (date && this.state.props.mode === 'datetime' && this.modes[0] === 'time') {\n const dateSelected = this.state.dateValue;\n date = moment(date)\n .set('month', dateSelected.getMonth())\n .set('year', dateSelected.getFullYear())\n .set('date', dateSelected.getDate())\n .toDate();\n }\n date_change = date;\n }}\n minimumDate={props.mindate as Date}\n maximumDate={props.maxdate as Date}\n />\n <View style={this.styles.actionWrapper}>\n <WmButton styles={this.styles.selectBtn} caption='Select' onTap={() => {\n this.onDateChange(null as any, date_change || this.state.dateValue || new Date());\n if (this.modes.length <= 1) {\n this.onBlur();\n onDismiss && onDismiss();\n }\n }} />\n <WmButton styles={this.styles.cancelBtn} caption='Cancel' onTap={() => {\n this.modes.shift();\n this.onDateChange(null as any, this.state.dateValue || undefined);\n this.onBlur();\n onDismiss && onDismiss();\n }} />\n </View>\n </View>\n );\n }\n\n renderNativeIOSWidgetWithModal(props: WmDatetimeProps) {\n return (<ModalConsumer>{(modalService: ModalService) => {\n this.nativeModalOptions.content = (<>\n {this.renderNativeIOSWidget(props, () => modalService.hideModal(this.nativeModalOptions))}\n </>);\n this.nativeModalOptions.centered = true;\n this.nativeModalOptions.onClose = () => {\n this.onBlur();\n };\n modalService.showModal(this.nativeModalOptions);\n return null;\n }}</ModalConsumer>);\n }\n\n renderNativeWidgetWithModal(props: WmDatetimeProps) {\n return (<ModalConsumer>{(modalService: ModalService) => {\n this.nativeModalOptions.content = (<>\n {this.renderNativeWidget(props, () => modalService.hideModal(this.nativeModalOptions))}\n </>);\n this.nativeModalOptions.centered = true;\n this.nativeModalOptions.onClose = () => {\n this.onBlur();\n };\n modalService.showModal(this.nativeModalOptions);\n return null;\n }}</ModalConsumer>);\n }\n\n addTouchableOpacity(props: WmDatetimeProps, children: React.JSX.Element, styles?: any, handleLayout?: any) : React.ReactNode{\n return (\n <TouchableOpacity\n {...this.getTestPropsForAction()}\n onLayout={handleLayout}\n importantForAccessibility='no'\n style={styles} onPress={() => {\n if (!props.readonly) {\n this.onFocus();\n }\n this.invokeEventCallback('onTap', [null, this]);\n }}>\n {children}\n </TouchableOpacity>\n );\n }\n\n getIcon() {\n if (this.state.props.mode === 'time') {\n return 'wm-sl-l sl-time'\n }\n return 'wm-sl-l sl-calendar';\n }\n\n public renderSkeleton(props: WmDatetimeProps): React.ReactNode {\n return (\n this.state.props.floatinglabel || this.state.displayValue || this.state.props.placeholder ?\n <View style={{display:'flex',...this.styles.container,...this.styles.root}}>\n {createSkeleton(this.theme, {} as WmSkeletonStyles, {\n ...this.styles.skeleton.root\n })}\n {createSkeleton(this.theme, {} as WmSkeletonStyles, {\n ...this.styles.skeleton.icon\n })}\n </View> : null\n )}\n\n renderWidget(props: WmDatetimeProps) {\n const is12HourFormat = props?.datepattern && /hh:mm(:ss|:sss)? a/.test(props.datepattern);\n const is24Hour = is12HourFormat ? false : props.is24hour;\n let rootStyles=this.styles.root;\n let updatedRootStyles = splitBorderColorInPlace(rootStyles);\n const foundationStyle = this.theme.getStyle('app-input');\n const classname = this.state.props.classname ? this.state.props.classname.split(\" \").pop() : '';\n const activeFloatingLabelStyleKey =\n props.mode === 'time' ? 'app-time-with-label'\n : props.mode === 'date' ? 'app-date-with-label'\n : 'app-datetime-with-label';\n const activeFloatingLabelStyle = this.theme.mergeStyle(\n this.styles.activeFloatingLabel,\n this.theme.getStyle(activeFloatingLabelStyleKey)?.activeFloatingLabel,\n this.theme.getStyle(`${classname}`)?.focused\n );\n return (\n this.addTouchableOpacity(props, (\n <View style={[updatedRootStyles, this.state.isValid ? {} : this.styles.invalid, this.state.isFocused ? this.styles.focused : null, this.state.props.disabled ? this.theme.mergeStyle(this.styles.root, foundationStyle?.disabled, this.theme.getStyle(`${classname}`).disabled) : {}]} accessible={props.accessible} accessibilityLabel={props.accessibilitylabel || `Select ${props?.mode}`} accessibilityRole={props.accessibilityrole || 'button'} accessibilityHint={props.hint}>\n {this._background}\n {props.floatinglabel ? (\n <FloatingLabel\n moveUp={!!(props.datavalue || this.state.isFocused)}\n label={props.floatinglabel ?? props.placeholder}\n variant={props.variant as 'filled' | 'outlined' | undefined}\n labelBackground={props.variant === 'outlined' ? (this.styles.root?.backgroundColor as string) : undefined}\n style={{\n ...(this.styles.floatingLabel || []),\n ...(this.state.isFocused ? (activeFloatingLabelStyle || {}) : {})\n }}\n />\n ) : null}\n <View style={this.styles.container}>\n {this.addTouchableOpacity(props, (\n <Text style={[\n this.styles.text,\n this.state.displayValue ? {} : this.styles.placeholderText\n ]}\n {...this.getTestPropsForLabel()}>\n {this.state.displayValue\n || (props.floatinglabel ? '' : this.state.props.placeholder)}\n </Text>\n ), [{ flex: 1}, this.isRTL?{flexDirection:'row', textAlign:'right'}:{}] )}\n {(!props.readonly && props.datavalue &&\n (<WmIcon iconclass=\"wi wi-clear\"\n styles={{color: this.styles.text.color, ...this.styles.clearIcon}}\n id={this.getTestId('clearicon')}\n accessibilitylabel={`clear ${props?.mode}`}\n onTap={() => {\n this.onDateChange(null as any, null as any);\n this.clearBtnClicked = true;\n }}/>)) || null}\n {this.addTouchableOpacity(props, (\n <WmIcon iconclass={this.getIcon()} styles={{color: this.styles.text.color, ...this.styles.calendarIcon}} hint={props?.hint} id={this.getTestId('calendericon')} accessible={false}/>\n ))}\n </View>\n {\n this.state.showDatePicker\n && ((Platform.OS === 'web' && this.renderWebWidget(props))\n || (!props.iswheelpicker && Platform.OS === 'android' && this.renderNativeWidget(props))\n || (!props.iswheelpicker && Platform.OS === 'ios' && this.renderNativeIOSWidgetWithModal(props)))\n }\n {(Platform.OS !== 'web' && props.iswheelpicker && this.state.showDatePickerModal) && (\n <WmDatePickerModal\n isVisible={this.state.showDatePickerModal}\n onClose={() => this.updateState({showDatePickerModal: false} as BaseDatetimeState)}\n minDate={props.mindate}\n maxDate={props.maxdate}\n selectedDate={this.state.dateValue}\n onSelect={(date: Date) => {\n this.onDateChange(null as any, date);\n this.updateState({\n isFocused: false,\n showDatePickerModal: false\n } as BaseDatetimeState, () => {\n setTimeout(() => {\n this.onBlur();\n }, 10);\n\n // * showing time picker after selecting date in datetime mode\n if (this.state.props.mode === \"datetime\") {\n this.setState({\n showTimePickerModal: true,\n })\n }\n });\n }}\n onCancel={() => {\n // this.onDateChange(null as any, this.state.dateValue || undefined);\n this.updateState({\n isFocused: false,\n showDatePickerModal: false\n } as BaseDatetimeState, () => this.onBlur());\n }}\n dateheadertitle={props.dateheadertitle}\n dateconfirmationtitle={props.dateconfirmationtitle}\n datecanceltitle={props.datecanceltitle}\n />\n )}\n {(Platform.OS !== 'web' && props.iswheelpicker && this.state.showTimePickerModal) && (\n <WmTimePickerModal\n selectedDateTime={this.state.dateValue}\n is24Hour={is24Hour}\n isVisible={this.state.showTimePickerModal}\n onClose={() => this.updateState({isFocused: false, showTimePickerModal: false} as BaseDatetimeState)}\n onSelect={(time: Date) => {\n this.onDateChange(null as any, time);\n this.updateState({\n isFocused: false,\n showTimePickerModal: false\n } as BaseDatetimeState, () => {\n setTimeout(() => {\n this.onBlur()\n }, 10);\n });\n }}\n onCancel={() => {\n // this.onDateChange(null as any, this.state.dateValue || undefined);\n this.updateState({\n isFocused: false,\n showTimePickerModal: false\n } as BaseDatetimeState, () => {\n this.onBlur();\n this.modes.shift();\n });\n }}\n timeheadertitle={props.timeheadertitle}\n timeconfirmationtitle={props.timeconfirmationtitle}\n timecanceltitle={props.timecanceltitle}\n />\n )}\n </View>\n ), {flex: 1,...this.styles.rootWrapper} , this.handleLayout)\n );\n }\n}\n\n"],"mappings":"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","ignoreList":[]}
@@ -59,6 +59,7 @@ export default class WmFileupload extends BaseComponent {
59
59
  }, this._background, /*#__PURE__*/React.createElement(WmButton, _extends({
60
60
  id: this.getTestId(),
61
61
  iconclass: props.iconclass,
62
+ iconurl: props.iconurl,
62
63
  caption: props.caption,
63
64
  styles: this.styles.button,
64
65
  iconsize: props.iconsize,
@@ -1 +1 @@
1
- {"version":3,"names":["React","Platform","View","BaseComponent","BaseComponentState","WmFileuploadProps","DEFAULT_CLASS","WmButton","getMimeType","FileUploadPluginConsumer","WmFileuploadState","constructor","args","_defineProperty","namedParameters","copyToCacheDirectory","multiple","type","WmFileupload","props","onTap","contenttype","fileUploadService","getDocumentAsync","then","response","selectedFile","OS","assets","mimeType","file","invokeEventCallback","proxy","updateState","selectedFiles","bind","renderWidget","accessibilityProps","accessible","accessibilitylabel","hint","accessibilityrole","createElement","fileUploadPluginService","style","styles","root","onLayout","event","handleLayout","_background","_extends","id","getTestId","iconclass","caption","button","iconsize"],"sources":["fileupload.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Platform, View } from 'react-native';\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\n\nimport WmFileuploadProps from './fileupload.props';\nimport { DEFAULT_CLASS, WmFileuploadStyles } from './fileupload.styles';\nimport WmButton from '@wavemaker-ai/app-rn-runtime/components/basic/button/button.component';\nimport { getMimeType } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport { FileUploadPluginConsumer, FileUploadPluginService } from '@wavemaker-ai/app-rn-runtime/core/device/fileupload-service';\n\nexport interface SelectFileOutput {\n mimeType: string;\n name: string;\n size: number;\n type: 'cancel' | 'success';\n uri: string;\n}\n\nexport class WmFileuploadState extends BaseComponentState<WmFileuploadProps> {\n selectedFiles: any;\n}\n\ntype NamedParametersType = {\n copyToCacheDirectory: boolean,\n multiple: boolean,\n type: string | string[]\n};\n\nconst namedParameters: NamedParametersType = {\n copyToCacheDirectory: false,\n multiple: false,\n type: '*/*'\n};\n\nexport default class WmFileupload extends BaseComponent<WmFileuploadProps, WmFileuploadState, WmFileuploadStyles> {\n public fileUploadService: any = null as any;\n\n constructor(props: WmFileuploadProps) {\n super(props, DEFAULT_CLASS, new WmFileuploadProps());\n }\n\n onTap(props: WmFileuploadProps) {\n namedParameters.type = getMimeType(props.contenttype);\n this.fileUploadService.getDocumentAsync(namedParameters).then((response: any) => {\n let selectedFile;\n if (Platform.OS !== 'web') {\n selectedFile = response.assets[0];\n selectedFile.type = selectedFile.mimeType;\n } else {\n selectedFile = [response.assets[0].file];\n }\n this.invokeEventCallback('onBeforeselect', [null, this.proxy, selectedFile]);\n\n this.updateState({\n props: {\n selectedFiles: selectedFile\n }\n } as WmFileuploadState, this.invokeEventCallback.bind(this, 'onSelect', [null, this.proxy, selectedFile]));\n });\n }\n\n renderWidget(props: WmFileuploadProps) {\n const accessibilityProps = {\n accessible: props.accessible,\n accessibilitylabel: props.accessibilitylabel,\n hint: props.hint,\n accessibilityrole: props.accessibilityrole,\n };\n\n return (\n <FileUploadPluginConsumer>\n {(fileUploadPluginService: FileUploadPluginService) => {\n this.fileUploadService = fileUploadPluginService;\n return (\n <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n {this._background}\n <WmButton id={this.getTestId()} iconclass={props.iconclass} caption={props.caption} styles={this.styles.button} iconsize={props.iconsize} onTap={() => this.onTap.bind(this)(props)} {...accessibilityProps}></WmButton>\n </View>\n )}}\n </FileUploadPluginConsumer>\n )\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Platform","View","BaseComponent","BaseComponentState","WmFileuploadProps","DEFAULT_CLASS","WmButton","getMimeType","FileUploadPluginConsumer","WmFileuploadState","constructor","args","_defineProperty","namedParameters","copyToCacheDirectory","multiple","type","WmFileupload","props","onTap","contenttype","fileUploadService","getDocumentAsync","then","response","selectedFile","OS","assets","mimeType","file","invokeEventCallback","proxy","updateState","selectedFiles","bind","renderWidget","accessibilityProps","accessible","accessibilitylabel","hint","accessibilityrole","createElement","fileUploadPluginService","style","styles","root","onLayout","event","handleLayout","_background","_extends","id","getTestId","iconclass","iconurl","caption","button","iconsize"],"sources":["fileupload.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Platform, View } from 'react-native';\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\n\nimport WmFileuploadProps from './fileupload.props';\nimport { DEFAULT_CLASS, WmFileuploadStyles } from './fileupload.styles';\nimport WmButton from '@wavemaker-ai/app-rn-runtime/components/basic/button/button.component';\nimport { getMimeType } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport { FileUploadPluginConsumer, FileUploadPluginService } from '@wavemaker-ai/app-rn-runtime/core/device/fileupload-service';\n\nexport interface SelectFileOutput {\n mimeType: string;\n name: string;\n size: number;\n type: 'cancel' | 'success';\n uri: string;\n}\n\nexport class WmFileuploadState extends BaseComponentState<WmFileuploadProps> {\n selectedFiles: any;\n}\n\ntype NamedParametersType = {\n copyToCacheDirectory: boolean,\n multiple: boolean,\n type: string | string[]\n};\n\nconst namedParameters: NamedParametersType = {\n copyToCacheDirectory: false,\n multiple: false,\n type: '*/*'\n};\n\nexport default class WmFileupload extends BaseComponent<WmFileuploadProps, WmFileuploadState, WmFileuploadStyles> {\n public fileUploadService: any = null as any;\n\n constructor(props: WmFileuploadProps) {\n super(props, DEFAULT_CLASS, new WmFileuploadProps());\n }\n\n onTap(props: WmFileuploadProps) {\n namedParameters.type = getMimeType(props.contenttype);\n this.fileUploadService.getDocumentAsync(namedParameters).then((response: any) => {\n let selectedFile;\n if (Platform.OS !== 'web') {\n selectedFile = response.assets[0];\n selectedFile.type = selectedFile.mimeType;\n } else {\n selectedFile = [response.assets[0].file];\n }\n this.invokeEventCallback('onBeforeselect', [null, this.proxy, selectedFile]);\n\n this.updateState({\n props: {\n selectedFiles: selectedFile\n }\n } as WmFileuploadState, this.invokeEventCallback.bind(this, 'onSelect', [null, this.proxy, selectedFile]));\n });\n }\n\n renderWidget(props: WmFileuploadProps) {\n const accessibilityProps = {\n accessible: props.accessible,\n accessibilitylabel: props.accessibilitylabel,\n hint: props.hint,\n accessibilityrole: props.accessibilityrole,\n };\n\n return (\n <FileUploadPluginConsumer>\n {(fileUploadPluginService: FileUploadPluginService) => {\n this.fileUploadService = fileUploadPluginService;\n return (\n <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n {this._background}\n <WmButton id={this.getTestId()} iconclass={props.iconclass} iconurl={props.iconurl} caption={props.caption} styles={this.styles.button} iconsize={props.iconsize} onTap={() => this.onTap.bind(this)(props)} {...accessibilityProps}></WmButton>\n </View>\n )}}\n </FileUploadPluginConsumer>\n )\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -6,6 +6,7 @@ export default class WmFileuploadProps extends BaseProps {
6
6
  constructor(...args) {
7
7
  super(...args);
8
8
  _defineProperty(this, "iconclass", 'wm-sl-l sl-cloud-upload');
9
+ _defineProperty(this, "iconurl", null);
9
10
  _defineProperty(this, "iconsize", 16);
10
11
  _defineProperty(this, "caption", 'Upload');
11
12
  _defineProperty(this, "selectedFiles", void 0);
@@ -1 +1 @@
1
- {"version":3,"names":["BaseProps","WmFileuploadProps","constructor","args","_defineProperty","undefined"],"sources":["fileupload.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport {AccessibilityRole} from 'react-native';\n\nexport default class WmFileuploadProps extends BaseProps {\n iconclass: string = 'wm-sl-l sl-cloud-upload';\n iconsize: number = 16;\n caption: string = 'Upload';\n selectedFiles?: any;\n contenttype?: string;\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n accessibilityrole?: AccessibilityRole = 'button';\n hint?: string = undefined;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,kDAAkD;AAG5E,eAAe,MAAMC,iBAAiB,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBACnC,yBAAyB;IAAAA,eAAA,mBAC1B,EAAE;IAAAA,eAAA,kBACH,QAAQ;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,qBAGH,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,4BACC,QAAQ;IAAAA,eAAA,eAChCC,SAAS;EAAA;AAC3B","ignoreList":[]}
1
+ {"version":3,"names":["BaseProps","WmFileuploadProps","constructor","args","_defineProperty","undefined"],"sources":["fileupload.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport {AccessibilityRole} from 'react-native';\n\nexport default class WmFileuploadProps extends BaseProps {\n iconclass: string = 'wm-sl-l sl-cloud-upload';\n iconurl?: string = null as any;\n iconsize: number = 16;\n caption: string = 'Upload';\n selectedFiles?: any;\n contenttype?: string;\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n accessibilityrole?: AccessibilityRole = 'button';\n hint?: string = undefined;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,kDAAkD;AAG5E,eAAe,MAAMC,iBAAiB,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBACnC,yBAAyB;IAAAA,eAAA,kBAC1B,IAAI;IAAAA,eAAA,mBACJ,EAAE;IAAAA,eAAA,kBACH,QAAQ;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,qBAGH,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,4BACC,QAAQ;IAAAA,eAAA,eAChCC,SAAS;EAAA;AAC3B","ignoreList":[]}
@@ -128,7 +128,8 @@ export default class WmRating extends BaseComponent {
128
128
  }, this._background, arr.map((v, i) => this.state.selectedIndex > -1 && i <= this.state.selectedIndex ? /*#__PURE__*/React.createElement(WmIcon, {
129
129
  id: this.getTestId('star' + i),
130
130
  key: i,
131
- iconclass: "wi wi-star",
131
+ iconclass: props.activeiconclass,
132
+ iconurl: props.activeiconurl,
132
133
  iconsize: props.iconsize,
133
134
  styles: selectedIconStyles,
134
135
  onTap: () => {
@@ -139,7 +140,8 @@ export default class WmRating extends BaseComponent {
139
140
  }) : null), arr.map((v, i) => this.state.selectedIndex === -1 || i > this.state.selectedIndex ? /*#__PURE__*/React.createElement(WmIcon, {
140
141
  id: this.getTestId('star' + i),
141
142
  key: i,
142
- iconclass: "wi wi-star-border",
143
+ iconclass: props.inactiveiconclass,
144
+ iconurl: props.inactiveiconurl,
143
145
  iconsize: props.iconsize,
144
146
  styles: this.styles.icon,
145
147
  onTap: () => {
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Text","BaseComponent","BaseComponentState","WmIcon","WmRatingProps","DEFAULT_CLASS","cloneDeep","isArray","isNumber","isString","WmRatingState","constructor","args","_defineProperty","WmRating","props","caption","state","prepareItems","items","dataset","maxvalue","Array","from","keys","map","v","split","Object","i","key","value","selectedIndex","datavalue","undefined","findIndex","item","k","datafield","showcaptions","selectedItem","getDisplayExpression","displayfield","updateState","onPropertyChange","name","$new","$old","isDefault","isdefault","onFieldChange","bind","disabled","changeValue","oldValue","readonly","invokeEventCallback","proxy","renderWidget","maxValue","arr","selectedIconStyles","styles","selectedIcon","iconcolor","text","color","createElement","style","root","onLayout","event","handleLayout","accessible","accessibilityHint","hint","accessibilityRole","accessibilityrole","accessibilityLabel","accessibilitylabel","_background","id","getTestId","iconclass","iconsize","onTap","icon"],"sources":["rating.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport WmIcon from '@wavemaker-ai/app-rn-runtime/components/basic/icon/icon.component';\n\nimport WmRatingProps from './rating.props';\nimport { DEFAULT_CLASS, WmRatingStyles } from './rating.styles';\nimport { cloneDeep, isArray, isEmpty, isNumber, isString } from 'lodash-es';\n\nexport class WmRatingState extends BaseComponentState<WmRatingProps> {\n items: any[] = null as any;\n caption: any = null as any;\n selectedIndex = -1;\n isDefault = false;\n}\n\nexport default class WmRating extends BaseComponent<WmRatingProps, WmRatingState, WmRatingStyles> {\n\n constructor(props: WmRatingProps) {\n super(props, DEFAULT_CLASS, new WmRatingProps());\n }\n\n get caption() {\n return this.state.caption;\n }\n\n prepareItems(props: WmRatingProps) {\n let items: any[] = [];\n if (!props.dataset && props.maxvalue) {\n items = Array.from(Array(+props.maxvalue).keys());\n items = items.map(v => v + 1);\n } else if (isString(props.dataset)) {\n items = props.dataset.split(',');\n } else {\n items = props.dataset as any[] || [];\n }\n if (isArray(items) && items[0] !== Object(items[0])) {\n items = items.map((v, i) => ({\n key: i + 1,\n value: v\n }));\n }\n let selectedIndex = -1;\n if (props.datavalue !== undefined && props.datavalue !== null) {\n selectedIndex = items.findIndex((item: any, k) => item[props.datafield as string] == props.datavalue);\n if (selectedIndex === -1 && isNumber(props.datavalue)) {\n selectedIndex = props.datavalue;\n }\n }\n let caption: any = '';\n if (selectedIndex > -1 && props.showcaptions) {\n const selectedItem = items[selectedIndex];\n if (selectedItem) {\n if (props.getDisplayExpression) {\n caption = props.getDisplayExpression(selectedItem);\n } else {\n caption = selectedItem[props.displayfield as string];\n }\n } else {\n caption = selectedIndex + 1;\n }\n }\n this.updateState({\n items: items,\n selectedIndex: selectedIndex,\n caption: caption\n } as WmRatingState);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch(name) {\n case 'dataset' :\n case 'datafield' :\n case 'displayfield' :\n case 'maxvalue':\n case 'datavalue' :\n this.prepareItems(this.state.props);\n if (name === 'datavalue') {\n const isDefault = this.state.props.isdefault;\n if (isDefault) {\n this.updateState({ props: {isdefault: false} } as WmRatingState, this.props.onFieldChange && this.props.onFieldChange.bind(this, 'datavalue', $new, $old, isDefault));\n } else {\n this.props.onFieldChange && this.props.onFieldChange('datavalue', $new, $old, isDefault);\n }\n }\n break;\n case 'readonly' :\n this.updateState({\n props: {\n disabled: $new\n }\n } as WmRatingState);\n break;\n }\n }\n\n changeValue(i: number) {\n const props = this.state.props;\n const oldValue = props.datavalue;\n if (!props.readonly) {\n let value = this.state.items[i] ? this.state.items[i][props.datafield || '']: i;\n this.updateState({\n props: {\n datavalue: value\n }\n } as WmRatingState, () => {\n !this.props.onFieldChange && value !== oldValue && this.invokeEventCallback('onChange', [undefined, this.proxy, value, oldValue]);\n });\n }\n }\n\n renderWidget(props: WmRatingProps) {\n const maxValue = props.maxvalue ? +props.maxvalue : 5;\n const arr = Array.from(Array(maxValue).keys());\n\n let selectedIconStyles = this.styles.selectedIcon;\n if (props.iconcolor) {\n selectedIconStyles = cloneDeep(this.styles.selectedIcon);\n selectedIconStyles.text.color = props.iconcolor;\n }\n return (\n <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}\n accessible={props.accessible}\n accessibilityHint={props.hint}\n accessibilityRole={props.accessibilityrole || \"radiogroup\"}\n accessibilityLabel={props.accessibilitylabel || `Rating component, ${this.state.selectedIndex + 1} stars selected ${maxValue} stars maximum`}\n >\n {this._background}\n {arr.map((v, i) => (\n (this.state.selectedIndex > -1 && i <= this.state.selectedIndex) ? <WmIcon\n id={this.getTestId('star' + i)}\n key={i}\n iconclass=\"wi wi-star\"\n iconsize={props.iconsize}\n styles={selectedIconStyles}\n onTap={() => { this.changeValue(i)}}\n accessibilityrole=\"button\"\n hint={`Tap to set rating to ${i + 1} stars`}\n ></WmIcon> : null\n ))}\n {arr.map((v, i) => (\n (this.state.selectedIndex === -1 || i > this.state.selectedIndex) ? <WmIcon\n id={this.getTestId('star' + i)}\n key={i}\n iconclass=\"wi wi-star-border\"\n iconsize={props.iconsize}\n styles={this.styles.icon}\n onTap={() => { this.changeValue(i)}}\n accessibilityrole=\"button\"\n hint={`Tap to set rating to ${i + 1} stars`}\n ></WmIcon> : null\n ))}\n { !!props.showcaptions ? (<Text style={this.styles.text}>{this.state.caption}</Text>) : null }\n </View>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","View","Text","BaseComponent","BaseComponentState","WmIcon","WmRatingProps","DEFAULT_CLASS","cloneDeep","isArray","isNumber","isString","WmRatingState","constructor","args","_defineProperty","WmRating","props","caption","state","prepareItems","items","dataset","maxvalue","Array","from","keys","map","v","split","Object","i","key","value","selectedIndex","datavalue","undefined","findIndex","item","k","datafield","showcaptions","selectedItem","getDisplayExpression","displayfield","updateState","onPropertyChange","name","$new","$old","isDefault","isdefault","onFieldChange","bind","disabled","changeValue","oldValue","readonly","invokeEventCallback","proxy","renderWidget","maxValue","arr","selectedIconStyles","styles","selectedIcon","iconcolor","text","color","createElement","style","root","onLayout","event","handleLayout","accessible","accessibilityHint","hint","accessibilityRole","accessibilityrole","accessibilityLabel","accessibilitylabel","_background","id","getTestId","iconclass","activeiconclass","iconurl","activeiconurl","iconsize","onTap","inactiveiconclass","inactiveiconurl","icon"],"sources":["rating.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport WmIcon from '@wavemaker-ai/app-rn-runtime/components/basic/icon/icon.component';\n\nimport WmRatingProps from './rating.props';\nimport { DEFAULT_CLASS, WmRatingStyles } from './rating.styles';\nimport { cloneDeep, isArray, isEmpty, isNumber, isString } from 'lodash-es';\n\nexport class WmRatingState extends BaseComponentState<WmRatingProps> {\n items: any[] = null as any;\n caption: any = null as any;\n selectedIndex = -1;\n isDefault = false;\n}\n\nexport default class WmRating extends BaseComponent<WmRatingProps, WmRatingState, WmRatingStyles> {\n\n constructor(props: WmRatingProps) {\n super(props, DEFAULT_CLASS, new WmRatingProps());\n }\n\n get caption() {\n return this.state.caption;\n }\n\n prepareItems(props: WmRatingProps) {\n let items: any[] = [];\n if (!props.dataset && props.maxvalue) {\n items = Array.from(Array(+props.maxvalue).keys());\n items = items.map(v => v + 1);\n } else if (isString(props.dataset)) {\n items = props.dataset.split(',');\n } else {\n items = props.dataset as any[] || [];\n }\n if (isArray(items) && items[0] !== Object(items[0])) {\n items = items.map((v, i) => ({\n key: i + 1,\n value: v\n }));\n }\n let selectedIndex = -1;\n if (props.datavalue !== undefined && props.datavalue !== null) {\n selectedIndex = items.findIndex((item: any, k) => item[props.datafield as string] == props.datavalue);\n if (selectedIndex === -1 && isNumber(props.datavalue)) {\n selectedIndex = props.datavalue;\n }\n }\n let caption: any = '';\n if (selectedIndex > -1 && props.showcaptions) {\n const selectedItem = items[selectedIndex];\n if (selectedItem) {\n if (props.getDisplayExpression) {\n caption = props.getDisplayExpression(selectedItem);\n } else {\n caption = selectedItem[props.displayfield as string];\n }\n } else {\n caption = selectedIndex + 1;\n }\n }\n this.updateState({\n items: items,\n selectedIndex: selectedIndex,\n caption: caption\n } as WmRatingState);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch(name) {\n case 'dataset' :\n case 'datafield' :\n case 'displayfield' :\n case 'maxvalue':\n case 'datavalue' :\n this.prepareItems(this.state.props);\n if (name === 'datavalue') {\n const isDefault = this.state.props.isdefault;\n if (isDefault) {\n this.updateState({ props: {isdefault: false} } as WmRatingState, this.props.onFieldChange && this.props.onFieldChange.bind(this, 'datavalue', $new, $old, isDefault));\n } else {\n this.props.onFieldChange && this.props.onFieldChange('datavalue', $new, $old, isDefault);\n }\n }\n break;\n case 'readonly' :\n this.updateState({\n props: {\n disabled: $new\n }\n } as WmRatingState);\n break;\n }\n }\n\n changeValue(i: number) {\n const props = this.state.props;\n const oldValue = props.datavalue;\n if (!props.readonly) {\n let value = this.state.items[i] ? this.state.items[i][props.datafield || '']: i;\n this.updateState({\n props: {\n datavalue: value\n }\n } as WmRatingState, () => {\n !this.props.onFieldChange && value !== oldValue && this.invokeEventCallback('onChange', [undefined, this.proxy, value, oldValue]);\n });\n }\n }\n\n renderWidget(props: WmRatingProps) {\n const maxValue = props.maxvalue ? +props.maxvalue : 5;\n const arr = Array.from(Array(maxValue).keys());\n\n let selectedIconStyles = this.styles.selectedIcon;\n if (props.iconcolor) {\n selectedIconStyles = cloneDeep(this.styles.selectedIcon);\n selectedIconStyles.text.color = props.iconcolor;\n }\n return (\n <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}\n accessible={props.accessible}\n accessibilityHint={props.hint}\n accessibilityRole={props.accessibilityrole || \"radiogroup\"}\n accessibilityLabel={props.accessibilitylabel || `Rating component, ${this.state.selectedIndex + 1} stars selected ${maxValue} stars maximum`}\n >\n {this._background}\n {arr.map((v, i) => (\n (this.state.selectedIndex > -1 && i <= this.state.selectedIndex) ? <WmIcon\n id={this.getTestId('star' + i)}\n key={i}\n iconclass={props.activeiconclass}\n iconurl={props.activeiconurl}\n iconsize={props.iconsize}\n styles={selectedIconStyles}\n onTap={() => { this.changeValue(i)}}\n accessibilityrole=\"button\"\n hint={`Tap to set rating to ${i + 1} stars`}\n ></WmIcon> : null\n ))}\n {arr.map((v, i) => (\n (this.state.selectedIndex === -1 || i > this.state.selectedIndex) ? <WmIcon\n id={this.getTestId('star' + i)}\n key={i}\n iconclass={props.inactiveiconclass}\n iconurl={props.inactiveiconurl}\n iconsize={props.iconsize}\n styles={this.styles.icon}\n onTap={() => { this.changeValue(i)}}\n accessibilityrole=\"button\"\n hint={`Tap to set rating to ${i + 1} stars`}\n ></WmIcon> : null\n ))}\n { !!props.showcaptions ? (<Text style={this.styles.text}>{this.state.caption}</Text>) : null }\n </View>);\n }\n}\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,IAAI,QAAQ,cAAc;AACzC,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,kDAAkD;AACpG,OAAOC,MAAM,MAAM,mEAAmE;AAEtF,OAAOC,aAAa,MAAM,gBAAgB;AAC1C,SAASC,aAAa,QAAwB,iBAAiB;AAC/D,SAASC,SAAS,EAAEC,OAAO,EAAWC,QAAQ,EAAEC,QAAQ,QAAQ,WAAW;AAE3E,OAAO,MAAMC,aAAa,SAASR,kBAAkB,CAAgB;EAAAS,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,gBACpD,IAAI;IAAAA,eAAA,kBACJ,IAAI;IAAAA,eAAA,wBACH,CAAC,CAAC;IAAAA,eAAA,oBACN,KAAK;EAAA;AACnB;AAEA,eAAe,MAAMC,QAAQ,SAASb,aAAa,CAA+C;EAEhGU,WAAWA,CAACI,KAAoB,EAAE;IAChC,KAAK,CAACA,KAAK,EAAEV,aAAa,EAAE,IAAID,aAAa,CAAC,CAAC,CAAC;EAClD;EAEA,IAAIY,OAAOA,CAAA,EAAG;IACZ,OAAO,IAAI,CAACC,KAAK,CAACD,OAAO;EAC3B;EAEAE,YAAYA,CAACH,KAAoB,EAAE;IACjC,IAAII,KAAY,GAAG,EAAE;IACrB,IAAI,CAACJ,KAAK,CAACK,OAAO,IAAIL,KAAK,CAACM,QAAQ,EAAE;MACpCF,KAAK,GAAGG,KAAK,CAACC,IAAI,CAACD,KAAK,CAAC,CAACP,KAAK,CAACM,QAAQ,CAAC,CAACG,IAAI,CAAC,CAAC,CAAC;MACjDL,KAAK,GAAGA,KAAK,CAACM,GAAG,CAACC,CAAC,IAAIA,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC,MAAM,IAAIjB,QAAQ,CAACM,KAAK,CAACK,OAAO,CAAC,EAAE;MAClCD,KAAK,GAAGJ,KAAK,CAACK,OAAO,CAACO,KAAK,CAAC,GAAG,CAAC;IAClC,CAAC,MAAM;MACLR,KAAK,GAAGJ,KAAK,CAACK,OAAO,IAAa,EAAE;IACtC;IACA,IAAIb,OAAO,CAACY,KAAK,CAAC,IAAIA,KAAK,CAAC,CAAC,CAAC,KAAKS,MAAM,CAACT,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;MACnDA,KAAK,GAAGA,KAAK,CAACM,GAAG,CAAC,CAACC,CAAC,EAAEG,CAAC,MAAM;QAC3BC,GAAG,EAAED,CAAC,GAAG,CAAC;QACVE,KAAK,EAAEL;MACT,CAAC,CAAC,CAAC;IACL;IACA,IAAIM,aAAa,GAAG,CAAC,CAAC;IACtB,IAAIjB,KAAK,CAACkB,SAAS,KAAKC,SAAS,IAAInB,KAAK,CAACkB,SAAS,KAAK,IAAI,EAAE;MAC7DD,aAAa,GAAGb,KAAK,CAACgB,SAAS,CAAC,CAACC,IAAS,EAAEC,CAAC,KAAKD,IAAI,CAACrB,KAAK,CAACuB,SAAS,CAAW,IAAIvB,KAAK,CAACkB,SAAS,CAAC;MACrG,IAAID,aAAa,KAAK,CAAC,CAAC,IAAIxB,QAAQ,CAACO,KAAK,CAACkB,SAAS,CAAC,EAAE;QACrDD,aAAa,GAAGjB,KAAK,CAACkB,SAAS;MACjC;IACF;IACA,IAAIjB,OAAY,GAAG,EAAE;IACrB,IAAIgB,aAAa,GAAG,CAAC,CAAC,IAAIjB,KAAK,CAACwB,YAAY,EAAE;MAC5C,MAAMC,YAAY,GAAGrB,KAAK,CAACa,aAAa,CAAC;MACzC,IAAIQ,YAAY,EAAE;QAChB,IAAIzB,KAAK,CAAC0B,oBAAoB,EAAE;UAC9BzB,OAAO,GAAGD,KAAK,CAAC0B,oBAAoB,CAACD,YAAY,CAAC;QACpD,CAAC,MAAM;UACLxB,OAAO,GAAGwB,YAAY,CAACzB,KAAK,CAAC2B,YAAY,CAAW;QACtD;MACF,CAAC,MAAM;QACL1B,OAAO,GAAGgB,aAAa,GAAG,CAAC;MAC7B;IACF;IACA,IAAI,CAACW,WAAW,CAAC;MACfxB,KAAK,EAAEA,KAAK;MACZa,aAAa,EAAEA,aAAa;MAC5BhB,OAAO,EAAEA;IACX,CAAkB,CAAC;EACrB;EAEA4B,gBAAgBA,CAACC,IAAY,EAAEC,IAAS,EAAEC,IAAS,EAAE;IACnD,QAAOF,IAAI;MACT,KAAK,SAAS;MACd,KAAK,WAAW;MAChB,KAAK,cAAc;MACnB,KAAK,UAAU;MACf,KAAK,WAAW;QACd,IAAI,CAAC3B,YAAY,CAAC,IAAI,CAACD,KAAK,CAACF,KAAK,CAAC;QACnC,IAAI8B,IAAI,KAAK,WAAW,EAAE;UACxB,MAAMG,SAAS,GAAG,IAAI,CAAC/B,KAAK,CAACF,KAAK,CAACkC,SAAS;UAC5C,IAAID,SAAS,EAAE;YACb,IAAI,CAACL,WAAW,CAAC;cAAE5B,KAAK,EAAE;gBAACkC,SAAS,EAAE;cAAK;YAAE,CAAC,EAAmB,IAAI,CAAClC,KAAK,CAACmC,aAAa,IAAI,IAAI,CAACnC,KAAK,CAACmC,aAAa,CAACC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAEL,IAAI,EAAEC,IAAI,EAAEC,SAAS,CAAC,CAAC;UACvK,CAAC,MAAM;YACL,IAAI,CAACjC,KAAK,CAACmC,aAAa,IAAI,IAAI,CAACnC,KAAK,CAACmC,aAAa,CAAC,WAAW,EAAEJ,IAAI,EAAEC,IAAI,EAAEC,SAAS,CAAC;UAC1F;QACF;QACA;MACF,KAAK,UAAU;QACb,IAAI,CAACL,WAAW,CAAC;UACf5B,KAAK,EAAE;YACLqC,QAAQ,EAAEN;UACZ;QACF,CAAkB,CAAC;QACnB;IACJ;EACF;EAEAO,WAAWA,CAACxB,CAAS,EAAE;IACrB,MAAMd,KAAK,GAAG,IAAI,CAACE,KAAK,CAACF,KAAK;IAC9B,MAAMuC,QAAQ,GAAGvC,KAAK,CAACkB,SAAS;IAChC,IAAI,CAAClB,KAAK,CAACwC,QAAQ,EAAE;MACnB,IAAIxB,KAAK,GAAG,IAAI,CAACd,KAAK,CAACE,KAAK,CAACU,CAAC,CAAC,GAAG,IAAI,CAACZ,KAAK,CAACE,KAAK,CAACU,CAAC,CAAC,CAACd,KAAK,CAACuB,SAAS,IAAI,EAAE,CAAC,GAAET,CAAC;MAC/E,IAAI,CAACc,WAAW,CAAC;QACf5B,KAAK,EAAE;UACLkB,SAAS,EAAGF;QACd;MACF,CAAC,EAAmB,MAAM;QACxB,CAAC,IAAI,CAAChB,KAAK,CAACmC,aAAa,IAAInB,KAAK,KAAKuB,QAAQ,IAAI,IAAI,CAACE,mBAAmB,CAAC,UAAU,EAAE,CAACtB,SAAS,EAAE,IAAI,CAACuB,KAAK,EAAE1B,KAAK,EAAEuB,QAAQ,CAAC,CAAC;MACnI,CAAC,CAAC;IACJ;EACF;EAEAI,YAAYA,CAAC3C,KAAoB,EAAE;IACjC,MAAM4C,QAAQ,GAAG5C,KAAK,CAACM,QAAQ,GAAG,CAACN,KAAK,CAACM,QAAQ,GAAG,CAAC;IACrD,MAAMuC,GAAG,GAAGtC,KAAK,CAACC,IAAI,CAACD,KAAK,CAACqC,QAAQ,CAAC,CAACnC,IAAI,CAAC,CAAC,CAAC;IAE9C,IAAIqC,kBAAkB,GAAG,IAAI,CAACC,MAAM,CAACC,YAAY;IACjD,IAAIhD,KAAK,CAACiD,SAAS,EAAE;MACnBH,kBAAkB,GAAGvD,SAAS,CAAC,IAAI,CAACwD,MAAM,CAACC,YAAY,CAAC;MACxDF,kBAAkB,CAACI,IAAI,CAACC,KAAK,GAAGnD,KAAK,CAACiD,SAAS;IACjD;IACA,oBACAlE,KAAA,CAAAqE,aAAA,CAACpE,IAAI;MAACqE,KAAK,EAAE,IAAI,CAACN,MAAM,CAACO,IAAK;MAACC,QAAQ,EAAGC,KAAK,IAAK,IAAI,CAACC,YAAY,CAACD,KAAK,CAAE;MAC3EE,UAAU,EAAE1D,KAAK,CAAC0D,UAAW;MAC7BC,iBAAiB,EAAE3D,KAAK,CAAC4D,IAAK;MAC9BC,iBAAiB,EAAE7D,KAAK,CAAC8D,iBAAiB,IAAI,YAAa;MAC3DC,kBAAkB,EAAE/D,KAAK,CAACgE,kBAAkB,IAAI,qBAAqB,IAAI,CAAC9D,KAAK,CAACe,aAAa,GAAG,CAAC,mBAAmB2B,QAAQ;IAAiB,GAE5I,IAAI,CAACqB,WAAW,EAChBpB,GAAG,CAACnC,GAAG,CAAC,CAACC,CAAC,EAAEG,CAAC,KACX,IAAI,CAACZ,KAAK,CAACe,aAAa,GAAG,CAAC,CAAC,IAAIH,CAAC,IAAI,IAAI,CAACZ,KAAK,CAACe,aAAa,gBAAIlC,KAAA,CAAAqE,aAAA,CAAChE,MAAM;MACxE8E,EAAE,EAAE,IAAI,CAACC,SAAS,CAAC,MAAM,GAAGrD,CAAC,CAAE;MAC/BC,GAAG,EAAED,CAAE;MACPsD,SAAS,EAAEpE,KAAK,CAACqE,eAAgB;MACjCC,OAAO,EAAEtE,KAAK,CAACuE,aAAc;MAC7BC,QAAQ,EAAExE,KAAK,CAACwE,QAAS;MACzBzB,MAAM,EAAED,kBAAmB;MAC3B2B,KAAK,EAAEA,CAAA,KAAM;QAAE,IAAI,CAACnC,WAAW,CAACxB,CAAC,CAAC;MAAA,CAAE;MACpCgD,iBAAiB,EAAC,QAAQ;MAC1BF,IAAI,EAAE,wBAAwB9C,CAAC,GAAG,CAAC;IAAS,CACrC,CAAC,GAAG,IACd,CAAC,EACD+B,GAAG,CAACnC,GAAG,CAAC,CAACC,CAAC,EAAEG,CAAC,KACX,IAAI,CAACZ,KAAK,CAACe,aAAa,KAAK,CAAC,CAAC,IAAIH,CAAC,GAAG,IAAI,CAACZ,KAAK,CAACe,aAAa,gBAAIlC,KAAA,CAAAqE,aAAA,CAAChE,MAAM;MACzE8E,EAAE,EAAE,IAAI,CAACC,SAAS,CAAC,MAAM,GAAGrD,CAAC,CAAE;MAC/BC,GAAG,EAAED,CAAE;MACPsD,SAAS,EAAEpE,KAAK,CAAC0E,iBAAkB;MACnCJ,OAAO,EAAEtE,KAAK,CAAC2E,eAAgB;MAC/BH,QAAQ,EAAExE,KAAK,CAACwE,QAAS;MACzBzB,MAAM,EAAE,IAAI,CAACA,MAAM,CAAC6B,IAAK;MACzBH,KAAK,EAAEA,CAAA,KAAM;QAAE,IAAI,CAACnC,WAAW,CAACxB,CAAC,CAAC;MAAA,CAAE;MACpCgD,iBAAiB,EAAC,QAAQ;MAC1BF,IAAI,EAAE,wBAAwB9C,CAAC,GAAG,CAAC;IAAS,CACrC,CAAC,GAAG,IACd,CAAC,EACA,CAAC,CAACd,KAAK,CAACwB,YAAY,gBAAIzC,KAAA,CAAAqE,aAAA,CAACnE,IAAI;MAACoE,KAAK,EAAE,IAAI,CAACN,MAAM,CAACG;IAAK,GAAE,IAAI,CAAChD,KAAK,CAACD,OAAc,CAAC,GAAI,IACpF,CAAC;EACT;AACF","ignoreList":[]}
@@ -14,6 +14,10 @@ export default class WmRatingProps extends BaseProps {
14
14
  _defineProperty(this, "readonly", false);
15
15
  _defineProperty(this, "iconcolor", null);
16
16
  _defineProperty(this, "iconsize", null);
17
+ _defineProperty(this, "activeiconclass", 'wi wi-star');
18
+ _defineProperty(this, "inactiveiconclass", 'wi wi-star-border');
19
+ _defineProperty(this, "activeiconurl", null);
20
+ _defineProperty(this, "inactiveiconurl", null);
17
21
  _defineProperty(this, "showcaptions", true);
18
22
  _defineProperty(this, "onFieldChange", void 0);
19
23
  _defineProperty(this, "accessible", true);
@@ -1 +1 @@
1
- {"version":3,"names":["BaseProps","WmRatingProps","constructor","args","_defineProperty","undefined"],"sources":["rating.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\n\nexport default class WmRatingProps extends BaseProps {\n dataset?: any[] = null as any;\n datafield?: string = 'key';\n displayfield?: string = 'value';\n getDisplayExpression: Function = null as any;\n datavalue?: number = null as any;\n maxvalue: number = 5;\n readonly? = false;\n iconcolor?: string = null as any;\n iconsize?: number = null as any;\n showcaptions? = true;\n onFieldChange: any;\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n accessibilityrole?: AccessibilityRole = 'radiogroup';\n hint?: string = undefined;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,kDAAkD;AAG5E,eAAe,MAAMC,aAAa,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,kBAC/B,IAAI;IAAAA,eAAA,oBACD,KAAK;IAAAA,eAAA,uBACF,OAAO;IAAAA,eAAA,+BACE,IAAI;IAAAA,eAAA,oBAChB,IAAI;IAAAA,eAAA,mBACN,CAAC;IAAAA,eAAA,mBACR,KAAK;IAAAA,eAAA,oBACI,IAAI;IAAAA,eAAA,mBACL,IAAI;IAAAA,eAAA,uBACR,IAAI;IAAAA,eAAA;IAAAA,eAAA,qBAEG,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,4BACC,YAAY;IAAAA,eAAA,eACpCC,SAAS;EAAA;AAC7B","ignoreList":[]}
1
+ {"version":3,"names":["BaseProps","WmRatingProps","constructor","args","_defineProperty","undefined"],"sources":["rating.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\n\nexport default class WmRatingProps extends BaseProps {\n dataset?: any[] = null as any;\n datafield?: string = 'key';\n displayfield?: string = 'value';\n getDisplayExpression: Function = null as any;\n datavalue?: number = null as any;\n maxvalue: number = 5;\n readonly? = false;\n iconcolor?: string = null as any;\n iconsize?: number = null as any;\n activeiconclass?: string = 'wi wi-star';\n inactiveiconclass?: string = 'wi wi-star-border';\n activeiconurl?: string = null as any;\n inactiveiconurl?: string = null as any;\n showcaptions? = true;\n onFieldChange: any;\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n accessibilityrole?: AccessibilityRole = 'radiogroup';\n hint?: string = undefined;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,kDAAkD;AAG5E,eAAe,MAAMC,aAAa,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,kBAC/B,IAAI;IAAAA,eAAA,oBACD,KAAK;IAAAA,eAAA,uBACF,OAAO;IAAAA,eAAA,+BACE,IAAI;IAAAA,eAAA,oBAChB,IAAI;IAAAA,eAAA,mBACN,CAAC;IAAAA,eAAA,mBACR,KAAK;IAAAA,eAAA,oBACI,IAAI;IAAAA,eAAA,mBACL,IAAI;IAAAA,eAAA,0BACG,YAAY;IAAAA,eAAA,4BACV,mBAAmB;IAAAA,eAAA,wBACvB,IAAI;IAAAA,eAAA,0BACF,IAAI;IAAAA,eAAA,uBACf,IAAI;IAAAA,eAAA;IAAAA,eAAA,qBAEG,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,4BACC,YAAY;IAAAA,eAAA,eACpCC,SAAS;EAAA;AAC7B","ignoreList":[]}
@@ -157,6 +157,7 @@ export default class WmSelect extends BaseDatasetComponent {
157
157
  });
158
158
  }
159
159
  renderSelect() {
160
+ var _this$styles$root;
160
161
  const props = this.state.props;
161
162
  const select = this.styles.root;
162
163
  const foundationStyle = this.theme.getStyle('app-input');
@@ -172,7 +173,9 @@ export default class WmSelect extends BaseDatasetComponent {
172
173
  backgroundColor: props.disabled ? this.styles.disabledText.backgroundColor : this.styles.root.backgroundColor
173
174
  }, this._showSkeleton ? {
174
175
  justifyContent: 'space-between'
175
- } : {}, props.disabled ? this.theme.mergeStyle(this.styles.root, foundationStyle === null || foundationStyle === void 0 ? void 0 : foundationStyle.disabled, this.theme.getStyle(`${classname}`).disabled) : {}, this.state.isinputFocused ? this.theme.mergeStyle(this.styles.root, foundationStyle === null || foundationStyle === void 0 ? void 0 : foundationStyle.focused, this.theme.getStyle(`${classname}`).focused) : {}],
176
+ } : {}, props.disabled ? this.theme.mergeStyle(this.styles.root, foundationStyle === null || foundationStyle === void 0 ? void 0 : foundationStyle.disabled, this.theme.getStyle(`${classname}`).disabled) : {}, this.state.isinputFocused ? this.theme.mergeStyle(this.styles.root, foundationStyle === null || foundationStyle === void 0 ? void 0 : foundationStyle.focused, this.theme.getStyle(`${classname}`).focused) : {}, ((_this$styles$root = this.styles.root) === null || _this$styles$root === void 0 ? void 0 : _this$styles$root.minHeight) !== undefined ? {
177
+ minHeight: this.styles.root.minHeight
178
+ } : {}],
176
179
  ref: ref => {
177
180
  this.view = ref;
178
181
  },
@@ -271,6 +274,7 @@ export default class WmSelect extends BaseDatasetComponent {
271
274
  styles.modalContent.width = this.styles.dropdown.width || this.state.selectWidth;
272
275
  }
273
276
  return /*#__PURE__*/React.createElement(SafeAreaInsetsContext.Consumer, null, insets => {
277
+ var _this$styles$root2, _this$styles$root3;
274
278
  if (insets) {
275
279
  this.safeAreaInsets = insets;
276
280
  }
@@ -278,7 +282,10 @@ export default class WmSelect extends BaseDatasetComponent {
278
282
  onLayout: event => {
279
283
  this.handleLayout(event);
280
284
  },
281
- style: [this.styles.rootWrapper]
285
+ style: [this.styles.rootWrapper, {
286
+ flexGrow: (_this$styles$root2 = this.styles.root) === null || _this$styles$root2 === void 0 ? void 0 : _this$styles$root2.flexGrow,
287
+ flexShrink: (_this$styles$root3 = this.styles.root) === null || _this$styles$root3 === void 0 ? void 0 : _this$styles$root3.flexShrink
288
+ }]
282
289
  }, this._background, this.renderSelect(), this.state.isOpened && (isDropdown ? this.state.positionReady : true) ? /*#__PURE__*/React.createElement(ModalConsumer, null, modalService => {
283
290
  const items = this.state.dataItems;
284
291
  modalService.showModal(this.prepareModalOptions(/*#__PURE__*/React.createElement(ScrollView, {