@wavemaker/app-rn-runtime 11.5.2-next.141017 → 11.5.2-next.141021

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 (144) hide show
  1. app-rn-runtime/components/advanced/carousel/carousel.component.js +4 -2
  2. app-rn-runtime/components/advanced/carousel/carousel.component.js.map +1 -1
  3. app-rn-runtime/components/advanced/webview/webview.component.js +6 -3
  4. app-rn-runtime/components/advanced/webview/webview.component.js.map +1 -1
  5. app-rn-runtime/components/advanced/webview/webview.props.js +3 -0
  6. app-rn-runtime/components/advanced/webview/webview.props.js.map +1 -1
  7. app-rn-runtime/components/basic/anchor/anchor.component.js +3 -2
  8. app-rn-runtime/components/basic/anchor/anchor.component.js.map +1 -1
  9. app-rn-runtime/components/basic/anchor/anchor.props.js +3 -0
  10. app-rn-runtime/components/basic/anchor/anchor.props.js.map +1 -1
  11. app-rn-runtime/components/basic/animatedview.component.js +5 -3
  12. app-rn-runtime/components/basic/animatedview.component.js.map +1 -1
  13. app-rn-runtime/components/basic/button/button.component.js +9 -2
  14. app-rn-runtime/components/basic/button/button.component.js.map +1 -1
  15. app-rn-runtime/components/basic/button/button.props.js +3 -0
  16. app-rn-runtime/components/basic/button/button.props.js.map +1 -1
  17. app-rn-runtime/components/basic/icon/icon.component.js +3 -2
  18. app-rn-runtime/components/basic/icon/icon.component.js.map +1 -1
  19. app-rn-runtime/components/basic/icon/icon.props.js +3 -0
  20. app-rn-runtime/components/basic/icon/icon.props.js.map +1 -1
  21. app-rn-runtime/components/basic/label/label.component.js +7 -5
  22. app-rn-runtime/components/basic/label/label.component.js.map +1 -1
  23. app-rn-runtime/components/basic/label/label.props.js +3 -0
  24. app-rn-runtime/components/basic/label/label.props.js.map +1 -1
  25. app-rn-runtime/components/basic/message/message.component.js +3 -2
  26. app-rn-runtime/components/basic/message/message.component.js.map +1 -1
  27. app-rn-runtime/components/basic/message/message.props.js +3 -0
  28. app-rn-runtime/components/basic/message/message.props.js.map +1 -1
  29. app-rn-runtime/components/basic/picture/picture.component.js +3 -2
  30. app-rn-runtime/components/basic/picture/picture.component.js.map +1 -1
  31. app-rn-runtime/components/basic/picture/picture.props.js +3 -0
  32. app-rn-runtime/components/basic/picture/picture.props.js.map +1 -1
  33. app-rn-runtime/components/basic/progress-bar/progress-bar.component.js +3 -3
  34. app-rn-runtime/components/basic/progress-bar/progress-bar.component.js.map +1 -1
  35. app-rn-runtime/components/basic/progress-bar/progress-bar.props.js +2 -0
  36. app-rn-runtime/components/basic/progress-bar/progress-bar.props.js.map +1 -1
  37. app-rn-runtime/components/basic/progress-circle/progress-circle.component.js +3 -2
  38. app-rn-runtime/components/basic/progress-circle/progress-circle.component.js.map +1 -1
  39. app-rn-runtime/components/basic/progress-circle/progress-circle.props.js +2 -0
  40. app-rn-runtime/components/basic/progress-circle/progress-circle.props.js.map +1 -1
  41. app-rn-runtime/components/basic/search/search.component.js +2 -1
  42. app-rn-runtime/components/basic/search/search.component.js.map +1 -1
  43. app-rn-runtime/components/basic/search/search.props.js +3 -0
  44. app-rn-runtime/components/basic/search/search.props.js.map +1 -1
  45. app-rn-runtime/components/basic/video/video.component.js +4 -2
  46. app-rn-runtime/components/basic/video/video.component.js.map +1 -1
  47. app-rn-runtime/components/basic/video/video.props.js +3 -0
  48. app-rn-runtime/components/basic/video/video.props.js.map +1 -1
  49. app-rn-runtime/components/chart/area-chart/area-chart.component.js +4 -2
  50. app-rn-runtime/components/chart/area-chart/area-chart.component.js.map +1 -1
  51. app-rn-runtime/components/chart/bar-chart/bar-chart.component.js +4 -2
  52. app-rn-runtime/components/chart/bar-chart/bar-chart.component.js.map +1 -1
  53. app-rn-runtime/components/chart/basechart.props.js +3 -0
  54. app-rn-runtime/components/chart/basechart.props.js.map +1 -1
  55. app-rn-runtime/components/chart/bubble-chart/bubble-chart.component.js +4 -2
  56. app-rn-runtime/components/chart/bubble-chart/bubble-chart.component.js.map +1 -1
  57. app-rn-runtime/components/chart/line-chart/line-chart.component.js +4 -2
  58. app-rn-runtime/components/chart/line-chart/line-chart.component.js.map +1 -1
  59. app-rn-runtime/components/chart/line-chart/line-chart.props.js.map +1 -1
  60. app-rn-runtime/components/chart/pie-chart/pie-chart.component.js +6 -3
  61. app-rn-runtime/components/chart/pie-chart/pie-chart.component.js.map +1 -1
  62. app-rn-runtime/components/chart/stack-chart/stack-chart.component.js +5 -3
  63. app-rn-runtime/components/chart/stack-chart/stack-chart.component.js.map +1 -1
  64. app-rn-runtime/components/container/wizard/wizard.component.js +3 -3
  65. app-rn-runtime/components/container/wizard/wizard.component.js.map +1 -1
  66. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.props.js +3 -0
  67. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.props.js.map +1 -1
  68. app-rn-runtime/components/data/form/form-field/form-field.component.js +5 -1
  69. app-rn-runtime/components/data/form/form-field/form-field.component.js.map +1 -1
  70. app-rn-runtime/components/device/barcodescanner/barcodescanner.component.js +4 -1
  71. app-rn-runtime/components/device/barcodescanner/barcodescanner.component.js.map +1 -1
  72. app-rn-runtime/components/device/barcodescanner/barcodescanner.props.js +3 -0
  73. app-rn-runtime/components/device/barcodescanner/barcodescanner.props.js.map +1 -1
  74. app-rn-runtime/components/device/camera/camera.component.js +4 -1
  75. app-rn-runtime/components/device/camera/camera.component.js.map +1 -1
  76. app-rn-runtime/components/device/camera/camera.props.js +3 -0
  77. app-rn-runtime/components/device/camera/camera.props.js.map +1 -1
  78. app-rn-runtime/components/input/basedataset/basedataset.props.js +4 -0
  79. app-rn-runtime/components/input/basedataset/basedataset.props.js.map +1 -1
  80. app-rn-runtime/components/input/baseinput/baseinput.component.js +2 -2
  81. app-rn-runtime/components/input/baseinput/baseinput.component.js.map +1 -1
  82. app-rn-runtime/components/input/baseinput/baseinput.props.js +4 -0
  83. app-rn-runtime/components/input/baseinput/baseinput.props.js.map +1 -1
  84. app-rn-runtime/components/input/basenumber/basenumber.component.js +6 -6
  85. app-rn-runtime/components/input/basenumber/basenumber.component.js.map +1 -1
  86. app-rn-runtime/components/input/basenumber/basenumber.props.js +4 -0
  87. app-rn-runtime/components/input/basenumber/basenumber.props.js.map +1 -1
  88. app-rn-runtime/components/input/checkbox/checkbox.component.js +8 -1
  89. app-rn-runtime/components/input/checkbox/checkbox.component.js.map +1 -1
  90. app-rn-runtime/components/input/checkboxset/checkboxset.component.js +8 -1
  91. app-rn-runtime/components/input/checkboxset/checkboxset.component.js.map +1 -1
  92. app-rn-runtime/components/input/chips/chips.component.js +5 -1
  93. app-rn-runtime/components/input/chips/chips.component.js.map +1 -1
  94. app-rn-runtime/components/input/currency/currency.component.js +2 -1
  95. app-rn-runtime/components/input/currency/currency.component.js.map +1 -1
  96. app-rn-runtime/components/input/epoch/base-datetime.component.js +7 -3
  97. app-rn-runtime/components/input/epoch/base-datetime.component.js.map +1 -1
  98. app-rn-runtime/components/input/epoch/datetime/datetime.props.js +4 -0
  99. app-rn-runtime/components/input/epoch/datetime/datetime.props.js.map +1 -1
  100. app-rn-runtime/components/input/fileupload/fileupload.component.js +2 -0
  101. app-rn-runtime/components/input/fileupload/fileupload.component.js.map +1 -1
  102. app-rn-runtime/components/input/fileupload/fileupload.props.js +2 -0
  103. app-rn-runtime/components/input/fileupload/fileupload.props.js.map +1 -1
  104. app-rn-runtime/components/input/number/number.component.js +2 -1
  105. app-rn-runtime/components/input/number/number.component.js.map +1 -1
  106. app-rn-runtime/components/input/radioset/radioset.component.js +7 -2
  107. app-rn-runtime/components/input/radioset/radioset.component.js.map +1 -1
  108. app-rn-runtime/components/input/select/select.component.js +7 -3
  109. app-rn-runtime/components/input/select/select.component.js.map +1 -1
  110. app-rn-runtime/components/input/switch/switch.component.js +5 -1
  111. app-rn-runtime/components/input/switch/switch.component.js.map +1 -1
  112. app-rn-runtime/components/input/text/text.component.js +2 -1
  113. app-rn-runtime/components/input/text/text.component.js.map +1 -1
  114. app-rn-runtime/components/input/textarea/textarea.component.js +2 -1
  115. app-rn-runtime/components/input/textarea/textarea.component.js.map +1 -1
  116. app-rn-runtime/components/input/toggle/toggle.component.js +6 -1
  117. app-rn-runtime/components/input/toggle/toggle.component.js.map +1 -1
  118. app-rn-runtime/components/input/toggle/toggle.props.js +4 -0
  119. app-rn-runtime/components/input/toggle/toggle.props.js.map +1 -1
  120. app-rn-runtime/components/navigation/navitem/navitem.component.js +8 -5
  121. app-rn-runtime/components/navigation/navitem/navitem.component.js.map +1 -1
  122. app-rn-runtime/components/navigation/navitem/navitem.props.js +3 -0
  123. app-rn-runtime/components/navigation/navitem/navitem.props.js.map +1 -1
  124. app-rn-runtime/components/navigation/popover/popover.component.js +6 -3
  125. app-rn-runtime/components/navigation/popover/popover.component.js.map +1 -1
  126. app-rn-runtime/components/navigation/popover/popover.props.js +3 -0
  127. app-rn-runtime/components/navigation/popover/popover.props.js.map +1 -1
  128. app-rn-runtime/core/accessibility.js +149 -0
  129. app-rn-runtime/core/accessibility.js.map +1 -0
  130. app-rn-runtime/core/base.component.js +10 -1
  131. app-rn-runtime/core/base.component.js.map +1 -1
  132. app-rn-runtime/core/tappable.component.js +1 -1
  133. app-rn-runtime/core/tappable.component.js.map +1 -1
  134. app-rn-runtime/core/utils.js +11 -0
  135. app-rn-runtime/core/utils.js.map +1 -1
  136. app-rn-runtime/gestures/swipe.animation.js +34 -1
  137. app-rn-runtime/gestures/swipe.animation.js.map +1 -1
  138. app-rn-runtime/package.json +3 -3
  139. app-rn-runtime/runtime/App.js +4 -0
  140. app-rn-runtime/runtime/App.js.map +1 -1
  141. app-rn-runtime/runtime/base-page.component.js +1 -1
  142. app-rn-runtime/runtime/base-page.component.js.map +1 -1
  143. app-rn-runtime/runtime/services/app-security.service.js +2 -1
  144. app-rn-runtime/runtime/services/app-security.service.js.map +1 -1
@@ -8,7 +8,8 @@ import { find, forEach, isEqual } from 'lodash';
8
8
  import WmCheckboxsetProps from './checkboxset.props';
9
9
  import { DEFAULT_CLASS } from './checkboxset.styles';
10
10
  import { BaseDatasetComponent, BaseDatasetState } from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';
11
- import WmIcon from '../../basic/icon/icon.component';
11
+ import WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';
12
+ import { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';
12
13
  export class WmCheckboxsetState extends BaseDatasetState {
13
14
  constructor() {
14
15
  super(...arguments);
@@ -51,6 +52,12 @@ export default class WmCheckboxset extends BaseDatasetComponent {
51
52
  style: this.styles.item,
52
53
  onPress: this.onPress.bind(this, item),
53
54
  key: item.key
55
+ }, getAccessibilityProps(AccessibilityWidgetType.CHECKBOX, {
56
+ ...props,
57
+ checked: item.selected
58
+ }), {
59
+ accessibilityRole: "checkbox",
60
+ accessibilityLabel: `Checkbox for ${displayText}`
54
61
  }), /*#__PURE__*/React.createElement(WmIcon, {
55
62
  iconclass: "wi wi-check",
56
63
  styles: item.selected ? this.styles.checkicon : this.styles.uncheckicon,
@@ -1 +1 @@
1
- {"version":3,"names":["React","Text","View","TouchableOpacity","find","forEach","isEqual","WmCheckboxsetProps","DEFAULT_CLASS","BaseDatasetComponent","BaseDatasetState","WmIcon","WmCheckboxsetState","constructor","arguments","_defineProperty","WmCheckboxset","props","onPress","item","invokeEventCallback","proxy","state","disabled","readonly","selected","selectedValue","selectedItem","dataItems","d","key","oldValue","datavalue","push","datafield","validate","updateState","computeDisplayValue","undefined","renderChild","index","displayText","displayexp","displayfield","createElement","_extends","getTestPropsForAction","style","styles","bind","iconclass","checkicon","uncheckicon","getTestPropsForLabel","text","displayValue","filter","map","updateDatavalue","value","Promise","resolve","renderGroupby","groupedData","length","groupObj","groupHeaderTitle","renderCheckboxses","data","items","renderWidget","root","groupby"],"sources":["checkboxset.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View, TouchableOpacity } from 'react-native';\nimport { find, forEach, isEqual } from 'lodash';\nimport { Checkbox } from 'react-native-paper';\n\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 WmSkeleton, { createSkeleton } from '../../basic/skeleton/skeleton.component';\nimport WmIcon from '../../basic/icon/icon.component';\n\nexport class WmCheckboxsetState extends BaseDatasetState<WmCheckboxsetProps> {\n isValid: boolean = true;\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 this.invokeEventCallback('onTap', [null, this.proxy]);\n if (this.state.props.disabled || this.state.props.readonly) {\n return;\n }\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) {\n const props = this.state.props;\n const displayText = item.displayexp || item.displayfield;\n return (\n <TouchableOpacity {...this.getTestPropsForAction(index + '')}\n style={this.styles.item}\n onPress={this.onPress.bind(this, item)} key={item.key}>\n <WmIcon iconclass=\"wi wi-check\" styles={item.selected? this.styles.checkicon : this.styles.uncheckicon} disabled={props.readonly || props.disabled}/>\n <Text {...this.getTestPropsForLabel(index + '')} style={this.styles.text}>{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 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 return(<View>\n {items && items.length\n ? items.map((item: any, index: any) => this.renderChild(item, index))\n : null}\n </View>)\n }\n renderWidget(props: WmCheckboxsetProps) {\n const items = this.state.dataItems;\n return (\n <View style={this.styles.root}>\n {props.groupby && this.renderGroupby()}\n {!props.groupby && this.renderCheckboxses(items)}\n </View>\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","Text","View","TouchableOpacity","find","forEach","isEqual","WmCheckboxsetProps","DEFAULT_CLASS","BaseDatasetComponent","BaseDatasetState","WmIcon","AccessibilityWidgetType","getAccessibilityProps","WmCheckboxsetState","constructor","arguments","_defineProperty","WmCheckboxset","props","onPress","item","invokeEventCallback","proxy","state","disabled","readonly","selected","selectedValue","selectedItem","dataItems","d","key","oldValue","datavalue","push","datafield","validate","updateState","computeDisplayValue","undefined","renderChild","index","displayText","displayexp","displayfield","createElement","_extends","getTestPropsForAction","style","styles","bind","CHECKBOX","checked","accessibilityRole","accessibilityLabel","iconclass","checkicon","uncheckicon","getTestPropsForLabel","text","displayValue","filter","map","updateDatavalue","value","Promise","resolve","renderGroupby","groupedData","length","groupObj","groupHeaderTitle","renderCheckboxses","data","items","renderWidget","root","groupby"],"sources":["checkboxset.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View, TouchableOpacity } from 'react-native';\nimport { find, forEach, isEqual } from 'lodash';\nimport { Checkbox } from 'react-native-paper';\n\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'; \n\nexport class WmCheckboxsetState extends BaseDatasetState<WmCheckboxsetProps> {\n isValid: boolean = true;\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 this.invokeEventCallback('onTap', [null, this.proxy]);\n if (this.state.props.disabled || this.state.props.readonly) {\n return;\n }\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) {\n const props = this.state.props;\n const displayText = item.displayexp || item.displayfield;\n return (\n <TouchableOpacity {...this.getTestPropsForAction(index + '')}\n style={this.styles.item}\n onPress={this.onPress.bind(this, item)} key={item.key} {...getAccessibilityProps(AccessibilityWidgetType.CHECKBOX, {...props, checked: item.selected})} accessibilityRole='checkbox' accessibilityLabel={`Checkbox for ${displayText}`}>\n <WmIcon iconclass=\"wi wi-check\" styles={item.selected? this.styles.checkicon : this.styles.uncheckicon} disabled={props.readonly || props.disabled}/>\n <Text {...this.getTestPropsForLabel(index + '')} style={this.styles.text}>{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 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 return(<View>\n {items && items.length\n ? items.map((item: any, index: any) => this.renderChild(item, index))\n : null}\n </View>)\n }\n renderWidget(props: WmCheckboxsetProps) {\n const items = this.state.dataItems;\n return (\n <View style={this.styles.root}>\n {props.groupby && this.renderGroupby()}\n {!props.groupby && this.renderCheckboxses(items)}\n </View>\n );\n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,IAAI,EAAEC,gBAAgB,QAAQ,cAAc;AAC3D,SAASC,IAAI,EAAEC,OAAO,EAAEC,OAAO,QAAQ,QAAQ;AAG/C,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;AAE7G,OAAO,MAAMC,kBAAkB,SAASJ,gBAAgB,CAAqB;EAAAK,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,kBACxD,IAAI;EAAA;AACzB;AAEA,eAAe,MAAMC,aAAa,SAAST,oBAAoB,CAA8D;EAC3HM,WAAWA,CAACI,KAAyB,EAAE;IACrC,KAAK,CAACA,KAAK,EAAEX,aAAa,EAAE,IAAID,kBAAkB,CAAC,CAAC,CAAC;EACvD;EAEAa,OAAOA,CAACC,IAAS,EAAE;IACjB,IAAI,CAACC,mBAAmB,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAACC,KAAK,CAAC,CAAC;IACrD,IAAI,IAAI,CAACC,KAAK,CAACL,KAAK,CAACM,QAAQ,IAAI,IAAI,CAACD,KAAK,CAACL,KAAK,CAACO,QAAQ,EAAE;MAC1D;IACF;IACAL,IAAI,CAACM,QAAQ,GAAG,CAACN,IAAI,CAACM,QAAQ;IAC9B,MAAMC,aAAkB,GAAG,EAAE;IAC7B,MAAMC,YAAY,GAAGzB,IAAI,CAAC,IAAI,CAACoB,KAAK,CAACM,SAAS,EAAEC,CAAC,IAAIzB,OAAO,CAACyB,CAAC,CAACC,GAAG,EAAEX,IAAI,CAACW,GAAG,CAAC,CAAC;IAC9E,MAAMC,QAAQ,GAAG,IAAI,CAACT,KAAK,CAACL,KAAK,CAACe,SAAS;IAC3CL,YAAY,CAACF,QAAQ,GAAGN,IAAI,CAACM,QAAQ;IACrCtB,OAAO,CAAC,IAAI,CAACmB,KAAK,CAACM,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,CAACjB,mBAAmB,CAAC,UAAU,EAAE,CAAEkB,SAAS,EAAE,IAAI,CAACjB,KAAK,EAAEK,aAAa,EAAEK,QAAQ,CAAE,CAAC;IAC1F,CAAC,CAAC;EACN;EAEAQ,WAAWA,CAACpB,IAAS,EAAEqB,KAAU,EAAE;IACjC,MAAMvB,KAAK,GAAG,IAAI,CAACK,KAAK,CAACL,KAAK;IAC9B,MAAMwB,WAAW,GAAGtB,IAAI,CAACuB,UAAU,IAAIvB,IAAI,CAACwB,YAAY;IACxD,oBACE7C,KAAA,CAAA8C,aAAA,CAAC3C,gBAAgB,EAAA4C,QAAA,KAAK,IAAI,CAACC,qBAAqB,CAACN,KAAK,GAAG,EAAE,CAAC;MAC1DO,KAAK,EAAE,IAAI,CAACC,MAAM,CAAC7B,IAAK;MACxBD,OAAO,EAAE,IAAI,CAACA,OAAO,CAAC+B,IAAI,CAAC,IAAI,EAAE9B,IAAI,CAAE;MAACW,GAAG,EAAEX,IAAI,CAACW;IAAI,GAAKnB,qBAAqB,CAACD,uBAAuB,CAACwC,QAAQ,EAAE;MAAC,GAAGjC,KAAK;MAAEkC,OAAO,EAAEhC,IAAI,CAACM;IAAQ,CAAC,CAAC;MAAE2B,iBAAiB,EAAC,UAAU;MAACC,kBAAkB,EAAG,gBAAeZ,WAAY;IAAE,iBACvO3C,KAAA,CAAA8C,aAAA,CAACnC,MAAM;MAAC6C,SAAS,EAAC,aAAa;MAACN,MAAM,EAAE7B,IAAI,CAACM,QAAQ,GAAE,IAAI,CAACuB,MAAM,CAACO,SAAS,GAAG,IAAI,CAACP,MAAM,CAACQ,WAAY;MAACjC,QAAQ,EAAEN,KAAK,CAACO,QAAQ,IAAIP,KAAK,CAACM;IAAS,CAAC,CAAC,eACrJzB,KAAA,CAAA8C,aAAA,CAAC7C,IAAI,EAAA8C,QAAA,KAAK,IAAI,CAACY,oBAAoB,CAACjB,KAAK,GAAG,EAAE,CAAC;MAAEO,KAAK,EAAE,IAAI,CAACC,MAAM,CAACU;IAAK,IAAEjB,WAAkB,CAC7E,CAAC;EACvB;EAEAJ,mBAAmBA,CAAA,EAAG;IACpB,IAAI,CAACD,WAAW,CAAC;MACfnB,KAAK,EAAE;QACL0C,YAAY,EAAG,CAAC,IAAI,CAACrC,KAAK,CAACM,SAAS,IAAI,EAAS,EAC9CgC,MAAM,CAAEzC,IAAS,IAAKA,IAAI,CAACM,QAAQ,CAAC,CACpCoC,GAAG,CAAE1C,IAAS,IAAKA,IAAI,CAACuB,UAAU,IAAIvB,IAAI,CAACwB,YAAY,CAAC,IAAK;MAClE;IACF,CAAuB,CAAC;EAC1B;EAEAmB,eAAeA,CAACC,KAAU,EAAE;IAC1B,IAAI,CAAC3B,WAAW,CAAC;MAAEnB,KAAK,EAAE;QAAEe,SAAS,EAAE+B;MAAM;IAAC,CAAuB,CAAC;IACtE,OAAOC,OAAO,CAACC,OAAO,CAAC,CAAC;EAC1B;EAEAC,aAAaA,CAAA,EAAG;IACd,MAAMC,WAAW,GAAG,IAAI,CAAC7C,KAAK,CAAC6C,WAAW;IAC1C,oBACErE,KAAA,CAAA8C,aAAA,CAAC5C,IAAI,QACFmE,WAAW,IAAIA,WAAW,CAACC,MAAM,GAC9BD,WAAW,CAACN,GAAG,CAAC,CAACQ,QAAa,EAAE7B,KAAU,KAAK;MAC/C,oBACE1C,KAAA,CAAA8C,aAAA,CAAC5C,IAAI;QAAC8B,GAAG,EAAEuC,QAAQ,CAACvC;MAAI,gBACtBhC,KAAA,CAAA8C,aAAA,CAAC7C,IAAI;QAACgD,KAAK,EAAE,IAAI,CAACC,MAAM,CAACsB;MAAiB,GAAED,QAAQ,CAACvC,GAAU,CAAC,EAC/D,IAAI,CAACyC,iBAAiB,CAACF,QAAQ,CAACG,IAAI,CACjC,CAAC;IACX,CAAC,CAAC,GACA,IACA,CAAC;EAEX;EAEAD,iBAAiBA,CAACE,KAAU,EAAE;IAC5B,MAAMxD,KAAK,GAAG,IAAI,CAACK,KAAK,CAACL,KAAK;IAC9B,oBAAOnB,KAAA,CAAA8C,aAAA,CAAC5C,IAAI,QACTyE,KAAK,IAAIA,KAAK,CAACL,MAAM,GAClBK,KAAK,CAACZ,GAAG,CAAC,CAAC1C,IAAS,EAAEqB,KAAU,KAAK,IAAI,CAACD,WAAW,CAACpB,IAAI,EAAEqB,KAAK,CAAC,CAAC,GACnE,IACA,CAAC;EACT;EACAkC,YAAYA,CAACzD,KAAyB,EAAE;IACtC,MAAMwD,KAAK,GAAG,IAAI,CAACnD,KAAK,CAACM,SAAS;IAClC,oBACE9B,KAAA,CAAA8C,aAAA,CAAC5C,IAAI;MAAC+C,KAAK,EAAE,IAAI,CAACC,MAAM,CAAC2B;IAAK,GAC3B1D,KAAK,CAAC2D,OAAO,IAAI,IAAI,CAACV,aAAa,CAAC,CAAC,EACrC,CAACjD,KAAK,CAAC2D,OAAO,IAAI,IAAI,CAACL,iBAAiB,CAACE,KAAK,CAC3C,CAAC;EAEX;AACF"}
@@ -11,6 +11,7 @@ import WmSearch from '@wavemaker/app-rn-runtime/components/basic/search/search.c
11
11
  import { BaseDatasetComponent, BaseDatasetState } from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';
12
12
  import WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';
13
13
  import WmPicture from '@wavemaker/app-rn-runtime/components/basic/picture/picture.component';
14
+ import { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';
14
15
  export class WmChipsState extends BaseDatasetState {
15
16
  constructor() {
16
17
  super(...arguments);
@@ -165,7 +166,10 @@ export default class WmChips extends BaseDatasetComponent {
165
166
  }
166
167
  renderChip(item, index) {
167
168
  const isSelected = this.isDefaultView() ? item.selected : true;
168
- return /*#__PURE__*/React.createElement(TouchableOpacity, _extends({}, this.getTestPropsForAction('chip' + index), {
169
+ return /*#__PURE__*/React.createElement(TouchableOpacity, _extends({}, this.getTestPropsForAction('chip' + index), getAccessibilityProps(AccessibilityWidgetType.CHIPS, {
170
+ ...this.state.props,
171
+ selected: isSelected
172
+ }), {
169
173
  style: [this.styles.chip, isSelected ? this.styles.activeChip : null],
170
174
  key: 'chipitem_' + index,
171
175
  onPress: () => {
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","TouchableOpacity","Text","clone","findIndex","get","isUndefined","pull","forEach","filter","find","isEqual","merge","WmChipsProps","DEFAULT_CLASS","WmSearch","BaseDatasetComponent","BaseDatasetState","WmIcon","WmPicture","WmChipsState","constructor","arguments","_defineProperty","WmChips","props","onComponentInit","c","searchRef","val","onPropertyChange","name","$new","$old","length","updateState","chipsList","reset","_this$searchRef","state","query","onDataItemsUpdate","isDefaultQuery","updateDefaultQueryModel","addItem","$event","widget","_this$props","_this$props2","newChipList","allowAdd","push","queryModel","isFormFieldWidget","isDuplicate","resetSearchModel","invokeEvent","invokeEventCallback","toBoolean","setDatavalue","computeDisplayValue","displayValue","dataItems","item","selected","map","displayexp","displayfield","selectChip","chipItem","maxsize","selectedItem","d","key","dataValue","datafield","updateDatavalue","updateMaxSize","prevDatavalue","createCustomDataModel","dataObject","isCustom","clearSearch","chipListLength","saturate","removeItem","index","allowRemove","isDefaultView","_this$state$dataItems","searchable","renderChip","isSelected","createElement","_extends","getTestPropsForAction","style","styles","chip","activeChip","onPress","disabled","iconclass","iconsize","doneIcon","icon","color","activeChipLabel","id","getTestId","imageStyles","picturesource","imgSrc","shape","chipLabel","clearIcon","onTap","selectedItems","componentDidMount","componentDidUpdate","prevProps","prevState","_this$searchRef2","computePosition","renderWidget","chips","root","chipsWrapper","searchContainer","flexDirection","inputposition","search","placeholder","maxSizeReached","listener","dataset","searchkey","minchars","autofocus","readonly","displayexpression","getDisplayExpression","displayimagesrc","onSubmit","bind","onChange","_this$props$listener","_this$props$listener2","onComponentChange","showSearchIcon","showclear","type","flexWrap"],"sources":["chips.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, TouchableOpacity, Text } from 'react-native';\nimport { LifecycleListener } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { clone, findIndex, get, isUndefined, pull, forEach, filter, find, isEqual, merge } from 'lodash';\nimport WmChipsProps from './chips.props';\nimport { DEFAULT_CLASS, WmChipsStyles } from './chips.styles';\nimport WmSearch from '@wavemaker/app-rn-runtime/components/basic/search/search.component';\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 WmPicture from '@wavemaker/app-rn-runtime/components/basic/picture/picture.component';\n\nexport class WmChipsState extends BaseDatasetState<WmChipsProps> {\n chipsList: any = [];\n saturate: any;\n}\n\nexport default class WmChips extends BaseDatasetComponent<WmChipsProps, WmChipsState, WmChipsStyles> {\n constructor(props: WmChipsProps) {\n super(props, DEFAULT_CLASS, new WmChipsProps(), new WmChipsState());\n }\n\n private searchRef: WmSearch = null as any;\n private maxSizeReached = 'Max size reached';\n private isDefaultQuery: boolean = true;\n private prevDatavalue: any;\n\n private listener: LifecycleListener = {\n onComponentInit: (c) => {\n if (c instanceof WmSearch) {\n this.searchRef = c;\n }\n }\n };\n\n onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case 'datavalue':\n if (!$new || $new.length === 0) {\n this.updateState({\n chipsList : []\n } as WmChipsState);\n }\n }\n }\n\n reset() {\n if (this.searchRef?.state.props.query) {\n this.searchRef.reset();\n }\n }\n\n onDataItemsUpdate() {\n super.onDataItemsUpdate();\n this.isDefaultQuery = true;\n this.updateDefaultQueryModel();\n }\n\n addItem($event: any, widget: any) {\n let newChipList = clone(this.state.chipsList),\n allowAdd;\n newChipList.push(widget.queryModel);\n const isFormFieldWidget = get(this.props, 'formfield');\n if (this.isDuplicate(widget.queryModel)) {\n this.resetSearchModel();\n return;\n }\n\n // @ts-ignore\n allowAdd = isFormFieldWidget ? this.props?.invokeEvent('onBeforeadd', [null, this, widget.queryModel]) : this.invokeEventCallback('onBeforeadd', [null, this, widget.queryModel]);\n\n if (!isUndefined(allowAdd) && !this.toBoolean(allowAdd)) {\n return;\n }\n\n this.updateState({\n chipsList: newChipList\n } as WmChipsState);\n\n this.setDatavalue(newChipList);\n\n // @ts-ignore\n isFormFieldWidget ? this.props?.invokeEvent('onAdd', [null, this, widget.queryModel]) : this.invokeEventCallback('onAdd', [null, this, widget.queryModel]);\n this.resetSearchModel();\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 WmChipsState);\n }\n\n selectChip(chipItem: any) {\n if (!chipItem.selected && this.state.props.maxsize > 0 && (this.state.chipsList.length === this.state.props.maxsize)) {\n return;\n }\n chipItem.selected = !chipItem.selected;\n const newChipList: any = [];\n const selectedItem = find(this.state.dataItems, d => isEqual(d.key, chipItem.key));\n selectedItem.selected = chipItem.selected;\n forEach(this.state.dataItems, (item) => {\n if (item.selected) {\n newChipList.push(item);\n }\n });\n this.updateState({\n chipsList: newChipList\n } as WmChipsState);\n\n this.setDatavalue(newChipList);\n }\n\n setDatavalue(newChipList: any) {\n const dataValue = newChipList.map((item: any) => item.datafield);\n this.updateDatavalue(dataValue);\n this.updateMaxSize(newChipList.length);\n if (!this.props.invokeEvent) {\n this.invokeEventCallback('onChange', [null, this, dataValue, this.prevDatavalue])\n }\n this.prevDatavalue = dataValue;\n }\n\n toBoolean = (val: any) => ((val && val !== 'false') ? true : false);\n\n // Prepare datavalue object from a string(junk) value when datafield is allFields.\n createCustomDataModel(val: string) {\n return {\n key: `${this.state.props.name}_item${this.state.chipsList.length}`,\n dataObject: val,\n displayfield: val,\n datafield: val,\n isCustom: true\n }\n }\n\n resetSearchModel() {\n (this as any).searchRef.isDefaultQuery = false;\n this.searchRef.clearSearch();\n }\n\n isDuplicate(item: any) {\n return findIndex(this.state.chipsList, {datafield: item.datafield}) > -1;\n }\n\n // Check if max size is reached\n private updateMaxSize(chipListLength: number) {\n const saturate = this.state.props.maxsize > 0 && (chipListLength || this.state.chipsList.length) === this.state.props.maxsize;\n this.updateState({\n saturate: saturate\n } as WmChipsState);\n }\n\n removeItem(item: any, index: any) {\n let newChipList = clone(this.state.chipsList);\n const isFormFieldWidget = get(this.props, 'formfield');\n newChipList = pull(newChipList, item);\n // prevent deletion if the before-remove event callback returns false\n // @ts-ignore\n const allowRemove = isFormFieldWidget ? this.props.invokeEvent('onBeforeremove',[null, this, item]) : this.invokeEventCallback('onBeforeremove',[null, this, item]);\n if (!isUndefined(allowRemove) && !this.toBoolean(allowRemove)) {\n return;\n }\n this.updateState({\n chipsList: newChipList\n } as WmChipsState);\n this.setDatavalue(newChipList);\n // @ts-ignore\n isFormFieldWidget ? this.props.invokeEvent('onRemove', [null, this, item]) : this.invokeEventCallback('onRemove', [null, this, item]);\n }\n\n private isDefaultView() {\n return !this.state.props.searchable && this.state.dataItems?.length <= 10;\n }\n\n renderChip(item: any, index: any) {\n const isSelected = this.isDefaultView() ? item.selected : true;\n return (\n <TouchableOpacity\n {...this.getTestPropsForAction('chip'+ index)}\n style={[this.styles.chip, isSelected ? this.styles.activeChip : null]}\n key={'chipitem_'+ index}\n onPress={() => {\n if (this.state.props.disabled) {\n return;\n }\n if (this.isDefaultView()) {\n this.selectChip(item);\n }\n if (get(this.props, 'formfield')) {\n // @ts-ignore\n this.props.invokeEvent('onChipclick', [null, this, item]);\n // @ts-ignore\n this.props.invokeEvent('onChipselect', [null, this, item]);\n } else {\n this.invokeEventCallback('onChipclick', [null, this, item]);\n this.invokeEventCallback('onChipselect', [null, this, item]);\n }\n }}>\n {isSelected && this.isDefaultView() ? <WmIcon iconclass={'wm-sl-l sl-check'} iconsize={16} styles={merge({}, this.styles.doneIcon, {icon: {color: isSelected ? this.styles.activeChipLabel.color : null}})}></WmIcon> : null}\n <WmPicture id={this.getTestId('picture')} styles={this.styles.imageStyles} picturesource={item.imgSrc} shape='circle'></WmPicture>\n <Text {...this.getTestPropsForAction('chip'+ index+'label')}style={[this.styles.chipLabel, isSelected ? this.styles.activeChipLabel : null]}>{item.displayexp || item.displayfield}</Text>\n {!this.isDefaultView() && !this.state.props.disabled ? <WmIcon id={this.getTestId('clearbtn')} iconclass={'wi wi-clear'} iconsize={16} styles={this.styles.clearIcon} onTap={() => this.removeItem(item, index)}></WmIcon> : null}\n </TouchableOpacity>\n )\n }\n\n updateDefaultQueryModel() {\n if (this.state.dataItems && this.state.dataItems.length && this.isDefaultQuery) {\n const selectedItems = filter(this.state.dataItems, (item) => item.selected);\n if (selectedItems.length) {\n this.updateState({\n chipsList: selectedItems\n } as WmChipsState);\n }\n this.isDefaultQuery = false;\n }\n }\n\n componentDidMount(): void {\n super.componentDidMount();\n this.updateDefaultQueryModel();\n }\n\n componentDidUpdate(prevProps: WmChipsProps, prevState: WmChipsState) {\n super.componentDidUpdate(prevProps, prevState);\n if (prevState.chipsList !== this.state.chipsList) {\n this.searchRef?.computePosition();\n }\n }\n\n renderWidget(props: WmChipsProps) {\n const chips = this.state.chipsList;\n return (<View style={this.styles.root}>\n\n <View style={this.styles.chipsWrapper}>\n {\n this.isDefaultView() ? this.state.dataItems.map((item: any, index: any) => this.renderChip(item, index)) : null\n }\n { props.searchable || !this.isDefaultView() ?\n <View style={[this.styles.searchContainer, {flexDirection: props.inputposition === 'first' ? 'column' : 'column-reverse'}]}>\n <WmSearch\n id={this.getTestId('search')}\n name=\"app-chip-search\"\n styles={this.styles.search}\n placeholder={this.state.saturate ? this.maxSizeReached : props.placeholder}\n listener={this.listener}\n dataset={props.dataset}\n searchkey={props.searchkey}\n minchars={props.minchars}\n autofocus={props.autofocus}\n disabled={props.disabled || props.readonly || this.state.saturate}\n readonly={props.readonly}\n displayexpression={props.displayexpression}\n getDisplayExpression={props.getDisplayExpression}\n displayimagesrc={props.displayimagesrc}\n displayfield={props.displayfield}\n datafield={props.datafield}\n onSubmit={this.addItem.bind(this)}\n onChange={() => {\n this.isDefaultQuery = false;\n this.props.listener?.onComponentChange && this.props.listener?.onComponentChange(this)\n }}\n showSearchIcon={false}\n showclear={false}\n type={props.minchars === 0 ? 'autocomplete' : 'search'}/>\n <View style={{ flexDirection: 'row', flexWrap: 'wrap'}}>\n {chips && chips.length ?\n chips.map((item: any, index: any) => this.renderChip(item, index))\n : null}\n </View>\n </View>\n : null }\n </View>\n </View>);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","View","TouchableOpacity","Text","clone","findIndex","get","isUndefined","pull","forEach","filter","find","isEqual","merge","WmChipsProps","DEFAULT_CLASS","WmSearch","BaseDatasetComponent","BaseDatasetState","WmIcon","WmPicture","AccessibilityWidgetType","getAccessibilityProps","WmChipsState","constructor","arguments","_defineProperty","WmChips","props","onComponentInit","c","searchRef","val","onPropertyChange","name","$new","$old","length","updateState","chipsList","reset","_this$searchRef","state","query","onDataItemsUpdate","isDefaultQuery","updateDefaultQueryModel","addItem","$event","widget","_this$props","_this$props2","newChipList","allowAdd","push","queryModel","isFormFieldWidget","isDuplicate","resetSearchModel","invokeEvent","invokeEventCallback","toBoolean","setDatavalue","computeDisplayValue","displayValue","dataItems","item","selected","map","displayexp","displayfield","selectChip","chipItem","maxsize","selectedItem","d","key","dataValue","datafield","updateDatavalue","updateMaxSize","prevDatavalue","createCustomDataModel","dataObject","isCustom","clearSearch","chipListLength","saturate","removeItem","index","allowRemove","isDefaultView","_this$state$dataItems","searchable","renderChip","isSelected","createElement","_extends","getTestPropsForAction","CHIPS","style","styles","chip","activeChip","onPress","disabled","iconclass","iconsize","doneIcon","icon","color","activeChipLabel","id","getTestId","imageStyles","picturesource","imgSrc","shape","chipLabel","clearIcon","onTap","selectedItems","componentDidMount","componentDidUpdate","prevProps","prevState","_this$searchRef2","computePosition","renderWidget","chips","root","chipsWrapper","searchContainer","flexDirection","inputposition","search","placeholder","maxSizeReached","listener","dataset","searchkey","minchars","autofocus","readonly","displayexpression","getDisplayExpression","displayimagesrc","onSubmit","bind","onChange","_this$props$listener","_this$props$listener2","onComponentChange","showSearchIcon","showclear","type","flexWrap"],"sources":["chips.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, TouchableOpacity, Text } from 'react-native';\nimport { LifecycleListener } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { clone, findIndex, get, isUndefined, pull, forEach, filter, find, isEqual, merge } from 'lodash';\nimport WmChipsProps from './chips.props';\nimport { DEFAULT_CLASS, WmChipsStyles } from './chips.styles';\nimport WmSearch from '@wavemaker/app-rn-runtime/components/basic/search/search.component';\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 WmPicture from '@wavemaker/app-rn-runtime/components/basic/picture/picture.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \n\nexport class WmChipsState extends BaseDatasetState<WmChipsProps> {\n chipsList: any = [];\n saturate: any;\n}\n\nexport default class WmChips extends BaseDatasetComponent<WmChipsProps, WmChipsState, WmChipsStyles> {\n constructor(props: WmChipsProps) {\n super(props, DEFAULT_CLASS, new WmChipsProps(), new WmChipsState());\n }\n\n private searchRef: WmSearch = null as any;\n private maxSizeReached = 'Max size reached';\n private isDefaultQuery: boolean = true;\n private prevDatavalue: any;\n\n private listener: LifecycleListener = {\n onComponentInit: (c) => {\n if (c instanceof WmSearch) {\n this.searchRef = c;\n }\n }\n };\n\n onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case 'datavalue':\n if (!$new || $new.length === 0) {\n this.updateState({\n chipsList : []\n } as WmChipsState);\n }\n }\n }\n\n reset() {\n if (this.searchRef?.state.props.query) {\n this.searchRef.reset();\n }\n }\n\n onDataItemsUpdate() {\n super.onDataItemsUpdate();\n this.isDefaultQuery = true;\n this.updateDefaultQueryModel();\n }\n\n addItem($event: any, widget: any) {\n let newChipList = clone(this.state.chipsList),\n allowAdd;\n newChipList.push(widget.queryModel);\n const isFormFieldWidget = get(this.props, 'formfield');\n if (this.isDuplicate(widget.queryModel)) {\n this.resetSearchModel();\n return;\n }\n\n // @ts-ignore\n allowAdd = isFormFieldWidget ? this.props?.invokeEvent('onBeforeadd', [null, this, widget.queryModel]) : this.invokeEventCallback('onBeforeadd', [null, this, widget.queryModel]);\n\n if (!isUndefined(allowAdd) && !this.toBoolean(allowAdd)) {\n return;\n }\n\n this.updateState({\n chipsList: newChipList\n } as WmChipsState);\n\n this.setDatavalue(newChipList);\n\n // @ts-ignore\n isFormFieldWidget ? this.props?.invokeEvent('onAdd', [null, this, widget.queryModel]) : this.invokeEventCallback('onAdd', [null, this, widget.queryModel]);\n this.resetSearchModel();\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 WmChipsState);\n }\n\n selectChip(chipItem: any) {\n if (!chipItem.selected && this.state.props.maxsize > 0 && (this.state.chipsList.length === this.state.props.maxsize)) {\n return;\n }\n chipItem.selected = !chipItem.selected;\n const newChipList: any = [];\n const selectedItem = find(this.state.dataItems, d => isEqual(d.key, chipItem.key));\n selectedItem.selected = chipItem.selected;\n forEach(this.state.dataItems, (item) => {\n if (item.selected) {\n newChipList.push(item);\n }\n });\n this.updateState({\n chipsList: newChipList\n } as WmChipsState);\n\n this.setDatavalue(newChipList);\n }\n\n setDatavalue(newChipList: any) {\n const dataValue = newChipList.map((item: any) => item.datafield);\n this.updateDatavalue(dataValue);\n this.updateMaxSize(newChipList.length);\n if (!this.props.invokeEvent) {\n this.invokeEventCallback('onChange', [null, this, dataValue, this.prevDatavalue])\n }\n this.prevDatavalue = dataValue;\n }\n\n toBoolean = (val: any) => ((val && val !== 'false') ? true : false);\n\n // Prepare datavalue object from a string(junk) value when datafield is allFields.\n createCustomDataModel(val: string) {\n return {\n key: `${this.state.props.name}_item${this.state.chipsList.length}`,\n dataObject: val,\n displayfield: val,\n datafield: val,\n isCustom: true\n }\n }\n\n resetSearchModel() {\n (this as any).searchRef.isDefaultQuery = false;\n this.searchRef.clearSearch();\n }\n\n isDuplicate(item: any) {\n return findIndex(this.state.chipsList, {datafield: item.datafield}) > -1;\n }\n\n // Check if max size is reached\n private updateMaxSize(chipListLength: number) {\n const saturate = this.state.props.maxsize > 0 && (chipListLength || this.state.chipsList.length) === this.state.props.maxsize;\n this.updateState({\n saturate: saturate\n } as WmChipsState);\n }\n\n removeItem(item: any, index: any) {\n let newChipList = clone(this.state.chipsList);\n const isFormFieldWidget = get(this.props, 'formfield');\n newChipList = pull(newChipList, item);\n // prevent deletion if the before-remove event callback returns false\n // @ts-ignore\n const allowRemove = isFormFieldWidget ? this.props.invokeEvent('onBeforeremove',[null, this, item]) : this.invokeEventCallback('onBeforeremove',[null, this, item]);\n if (!isUndefined(allowRemove) && !this.toBoolean(allowRemove)) {\n return;\n }\n this.updateState({\n chipsList: newChipList\n } as WmChipsState);\n this.setDatavalue(newChipList);\n // @ts-ignore\n isFormFieldWidget ? this.props.invokeEvent('onRemove', [null, this, item]) : this.invokeEventCallback('onRemove', [null, this, item]);\n }\n\n private isDefaultView() {\n return !this.state.props.searchable && this.state.dataItems?.length <= 10;\n }\n\n renderChip(item: any, index: any) {\n const isSelected = this.isDefaultView() ? item.selected : true;\n return (\n <TouchableOpacity\n {...this.getTestPropsForAction('chip'+ index)}\n {...getAccessibilityProps(AccessibilityWidgetType.CHIPS, {...this.state.props, selected: isSelected})}\n style={[this.styles.chip, isSelected ? this.styles.activeChip : null]}\n key={'chipitem_'+ index}\n onPress={() => {\n if (this.state.props.disabled) {\n return;\n }\n if (this.isDefaultView()) {\n this.selectChip(item);\n }\n if (get(this.props, 'formfield')) {\n // @ts-ignore\n this.props.invokeEvent('onChipclick', [null, this, item]);\n // @ts-ignore\n this.props.invokeEvent('onChipselect', [null, this, item]);\n } else {\n this.invokeEventCallback('onChipclick', [null, this, item]);\n this.invokeEventCallback('onChipselect', [null, this, item]);\n }\n }}>\n {isSelected && this.isDefaultView() ? <WmIcon iconclass={'wm-sl-l sl-check'} iconsize={16} styles={merge({}, this.styles.doneIcon, {icon: {color: isSelected ? this.styles.activeChipLabel.color : null}})}></WmIcon> : null}\n <WmPicture id={this.getTestId('picture')} styles={this.styles.imageStyles} picturesource={item.imgSrc} shape='circle'></WmPicture>\n <Text {...this.getTestPropsForAction('chip'+ index+'label')}style={[this.styles.chipLabel, isSelected ? this.styles.activeChipLabel : null]}>{item.displayexp || item.displayfield}</Text>\n {!this.isDefaultView() && !this.state.props.disabled ? <WmIcon id={this.getTestId('clearbtn')} iconclass={'wi wi-clear'} iconsize={16} styles={this.styles.clearIcon} onTap={() => this.removeItem(item, index)}></WmIcon> : null}\n </TouchableOpacity>\n )\n }\n\n updateDefaultQueryModel() {\n if (this.state.dataItems && this.state.dataItems.length && this.isDefaultQuery) {\n const selectedItems = filter(this.state.dataItems, (item) => item.selected);\n if (selectedItems.length) {\n this.updateState({\n chipsList: selectedItems\n } as WmChipsState);\n }\n this.isDefaultQuery = false;\n }\n }\n\n componentDidMount(): void {\n super.componentDidMount();\n this.updateDefaultQueryModel();\n }\n\n componentDidUpdate(prevProps: WmChipsProps, prevState: WmChipsState) {\n super.componentDidUpdate(prevProps, prevState);\n if (prevState.chipsList !== this.state.chipsList) {\n this.searchRef?.computePosition();\n }\n }\n\n renderWidget(props: WmChipsProps) {\n const chips = this.state.chipsList;\n return (<View style={this.styles.root}>\n\n <View style={this.styles.chipsWrapper}>\n {\n this.isDefaultView() ? this.state.dataItems.map((item: any, index: any) => this.renderChip(item, index)) : null\n }\n { props.searchable || !this.isDefaultView() ?\n <View style={[this.styles.searchContainer, {flexDirection: props.inputposition === 'first' ? 'column' : 'column-reverse'}]}>\n <WmSearch\n id={this.getTestId('search')}\n name=\"app-chip-search\"\n styles={this.styles.search}\n placeholder={this.state.saturate ? this.maxSizeReached : props.placeholder}\n listener={this.listener}\n dataset={props.dataset}\n searchkey={props.searchkey}\n minchars={props.minchars}\n autofocus={props.autofocus}\n disabled={props.disabled || props.readonly || this.state.saturate}\n readonly={props.readonly}\n displayexpression={props.displayexpression}\n getDisplayExpression={props.getDisplayExpression}\n displayimagesrc={props.displayimagesrc}\n displayfield={props.displayfield}\n datafield={props.datafield}\n onSubmit={this.addItem.bind(this)}\n onChange={() => {\n this.isDefaultQuery = false;\n this.props.listener?.onComponentChange && this.props.listener?.onComponentChange(this)\n }}\n showSearchIcon={false}\n showclear={false}\n type={props.minchars === 0 ? 'autocomplete' : 'search'}/>\n <View style={{ flexDirection: 'row', flexWrap: 'wrap'}}>\n {chips && chips.length ?\n chips.map((item: any, index: any) => this.renderChip(item, index))\n : null}\n </View>\n </View>\n : null }\n </View>\n </View>);\n }\n}\n"],"mappings":"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"}
@@ -10,6 +10,7 @@ import { WMTextInput } from '@wavemaker/app-rn-runtime/core/components/textinput
10
10
  import { DEFAULT_CLASS } from './currency.styles';
11
11
  import { BaseNumberComponent, BaseNumberState } from '@wavemaker/app-rn-runtime/components/input/basenumber/basenumber.component';
12
12
  import { isNull } from "lodash";
13
+ import { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';
13
14
  export class WmCurrencyState extends BaseNumberState {
14
15
  constructor() {
15
16
  super(...arguments);
@@ -55,7 +56,7 @@ export default class WmCurrency extends BaseNumberComponent {
55
56
  style: {
56
57
  flex: 1
57
58
  }
58
- }, /*#__PURE__*/React.createElement(WMTextInput, _extends({}, this.getTestPropsForInput(), {
59
+ }, /*#__PURE__*/React.createElement(WMTextInput, _extends({}, this.getTestPropsForInput(), getAccessibilityProps(AccessibilityWidgetType.CURRENCY, props), {
59
60
  ref: ref => {
60
61
  this.widgetRef = ref;
61
62
  // @ts-ignore
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Text","Platform","WmCurrencyProps","CURRENCY_INFO","WMTextInput","DEFAULT_CLASS","BaseNumberComponent","BaseNumberState","isNull","WmCurrencyState","constructor","arguments","_defineProperty","WmCurrency","props","onPropertyChange","name","$new","$old","updateState","currencySymbol","symbol","getStyleClassName","classes","state","floatinglabel","push","join","renderWidget","_this$state$textValue","opts","valueExpr","OS","textValue","toString","createElement","style","styles","root","labelWrapper","label","flex","_extends","getTestPropsForInput","ref","widgetRef","selectionStart","selectionEnd","cursor","keyboardType","placeholderTextColor","placeholderText","color","input","text","isValid","invalid","floatingLabel","floatingLabelStyle","activeFloatingLabelStyle","activeFloatingLabel","editable","disabled","readonly","placeholder","value","onBlur","bind","onFocus","onKeyPress","validateInputEntry","onChangeText","onChange","invokeChange","allowContentSelection","userSelect"],"sources":["currency.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text, Platform } 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\";\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 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}>\n <View style={this.styles.labelWrapper}>\n <Text style={this.styles.label}>{this.state.currencySymbol}</Text>\n </View>\n <View style={{flex: 1}}>\n <WMTextInput\n {...this.getTestPropsForInput()}\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 style={[this.styles.input, this.styles.text, this.state.isValid ? {} : this.styles.invalid]}\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 value={this.state.textValue}\n onBlur={this.onBlur.bind(this)}\n onFocus={this.onFocus.bind(this)}\n onKeyPress={this.validateInputEntry.bind(this)}\n onChangeText={(text) => {\n this.onChangeText.bind(this)(text, '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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"}
1
+ {"version":3,"names":["React","View","Text","Platform","WmCurrencyProps","CURRENCY_INFO","WMTextInput","DEFAULT_CLASS","BaseNumberComponent","BaseNumberState","isNull","AccessibilityWidgetType","getAccessibilityProps","WmCurrencyState","constructor","arguments","_defineProperty","WmCurrency","props","onPropertyChange","name","$new","$old","updateState","currencySymbol","symbol","getStyleClassName","classes","state","floatinglabel","push","join","renderWidget","_this$state$textValue","opts","valueExpr","OS","textValue","toString","createElement","style","styles","root","labelWrapper","label","flex","_extends","getTestPropsForInput","CURRENCY","ref","widgetRef","selectionStart","selectionEnd","cursor","keyboardType","placeholderTextColor","placeholderText","color","input","text","isValid","invalid","floatingLabel","floatingLabelStyle","activeFloatingLabelStyle","activeFloatingLabel","editable","disabled","readonly","placeholder","value","onBlur","bind","onFocus","onKeyPress","validateInputEntry","onChangeText","onChange","invokeChange","allowContentSelection","userSelect"],"sources":["currency.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text, Platform } 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'; \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 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}>\n <View style={this.styles.labelWrapper}>\n <Text style={this.styles.label}>{this.state.currencySymbol}</Text>\n </View>\n <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 style={[this.styles.input, this.styles.text, this.state.isValid ? {} : this.styles.invalid]}\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 value={this.state.textValue}\n onBlur={this.onBlur.bind(this)}\n onFocus={this.onFocus.bind(this)}\n onKeyPress={this.validateInputEntry.bind(this)}\n onChangeText={(text) => {\n this.onChangeText.bind(this)(text, '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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"}
@@ -14,6 +14,7 @@ import WebDatePicker from './date-picker.component';
14
14
  import { isNumber, isString } from 'lodash-es';
15
15
  import { ModalConsumer } from '@wavemaker/app-rn-runtime/core/modal.service';
16
16
  import { validateField } from '@wavemaker/app-rn-runtime/core/utils';
17
+ import { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';
17
18
  import { FloatingLabel } from '@wavemaker/app-rn-runtime/core/components/floatinglabel.component';
18
19
  import AppI18nService from '@wavemaker/app-rn-runtime/runtime/services/app-i18n.service';
19
20
  import WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';
@@ -207,8 +208,11 @@ export default class BaseDatetime extends BaseComponent {
207
208
  });
208
209
  }
209
210
  renderNativeWidget(props, onDismiss) {
210
- return /*#__PURE__*/React.createElement(DateTimePicker, {
211
- mode: this.modes[0],
211
+ return /*#__PURE__*/React.createElement(DateTimePicker, _extends({
212
+ mode: this.modes[0]
213
+ }, getAccessibilityProps(AccessibilityWidgetType.DATE, {
214
+ ...this.state.props
215
+ }), {
212
216
  value: this.state.dateValue || new Date(),
213
217
  is24Hour: true,
214
218
  display: "default",
@@ -225,7 +229,7 @@ export default class BaseDatetime extends BaseComponent {
225
229
  },
226
230
  minimumDate: props.mindate,
227
231
  maximumDate: props.maxdate
228
- });
232
+ }));
229
233
  }
230
234
  renderNativeIOSWidget(props, onDismiss) {
231
235
  let date_change = undefined;
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Text","Platform","TouchableOpacity","moment","DateTimePicker","BaseComponent","BaseComponentState","WmIcon","WmDatetimeProps","DEFAULT_CLASS","WebDatePicker","isNumber","isString","ModalConsumer","validateField","FloatingLabel","AppI18nService","WmButton","BaseDatetimeState","constructor","arguments","_defineProperty","CURRENT_DATE","CURRENT_TIME","BaseDatetime","props","defaultClass","length","undefined","defaultProps","defaultState","format","date","Date","getTime","parse","parseInt","toDate","monitorAndUpdateCurrentTime","stopCurrentTimeMonitor","timerId","setInterval","updateState","readonly","datavalue","now","state","clearInterval","convertTimezone","timezone","getTimezone","parsedDateString","toLocaleString","locale","timeZone","onPropertyChange","name","$new","$old","invokeEventCallback","prevDatavalue","outputformat","datepattern","dateValue","displayValue","onFieldChange","minDateVal","mindate","maxDateVal","maxdate","disabled","onDateChange","$event","validate","modes","shift","isFocused","showDatePicker","timestamp","onBlur","OS","setTimeout","triggerValidation","onFocus","mode","value","validationObj","setState","isValid","errorType","componentWillUnmount","renderWebWidget","createElement","onDismiss","minimumDate","maximumDate","renderNativeWidget","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","_extends","getTestPropsForAction","onPress","getIcon","renderWidget","root","invalid","focused","_background","floatinglabel","moveUp","label","placeholder","floatingLabel","activeFloatingLabel","container","text","placeholderText","getTestPropsForLabel","flex","isRTL","flexDirection","textAlign","iconclass","color","clearIcon","id","getTestId","clearBtnClicked","calendarIcon"],"sources":["base-datetime.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text, Platform, TouchableOpacity, ViewStyle } from 'react-native';\nimport moment from 'moment';\nimport DateTimePicker, { DateTimePickerEvent } from '@react-native-community/datetimepicker';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport WmIcon from '@wavemaker/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 { isNumber, isString } from 'lodash-es';\nimport { ModalConsumer, ModalOptions, ModalService } from '@wavemaker/app-rn-runtime/core/modal.service';\nimport { validateField } from '@wavemaker/app-rn-runtime/core/utils';\nimport { FloatingLabel } from '@wavemaker/app-rn-runtime/core/components/floatinglabel.component';\nimport AppI18nService from '@wavemaker/app-rn-runtime/runtime/services/app-i18n.service';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\n\nexport class BaseDatetimeState extends BaseComponentState<WmDatetimeProps> {\n showDatePicker = 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 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 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.invokeEventCallback('onChange', [null, this, $new, $old]);\n this.prevDatavalue = $old;\n if (props.datavalue === CURRENT_TIME) {\n this.monitorAndUpdateCurrentTime();\n }\n case 'datepattern':\n case 'outputformat':\n if (props.datavalue && props.outputformat && props.datepattern) {\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, props.outputformat) : datavalue;\n datavalue = this.convertTimezone(datavalue);\n this.updateState({\n dateValue : date,\n displayValue: this.format(datavalue?datavalue:date as any, props.datepattern)\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 this.updateState({\n props: {\n mindate: moment(minDateVal, props.datepattern).toDate()\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 this.updateState({\n props: {\n maxdate: moment(maxDateVal, props.datepattern).toDate()\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: DateTimePickerEvent, date?: Date) {\n this.validate(date);\n this.modes.shift();\n this.updateState({\n isFocused: false,\n showDatePicker: !!this.modes.length,\n props: {\n datavalue: this.format(date, this.state.props.outputformat as string),\n timestamp: this.format(date, 'timestamp')\n }\n } as BaseDatetimeState);\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 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 value={this.state.dateValue || new Date()}\n is24Hour={true}\n display='default'\n onChange={(event: DateTimePickerEvent, 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: DateTimePickerEvent, 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.ReactNode, styles?: any) : React.ReactNode{\n return (\n <TouchableOpacity \n {...this.getTestPropsForAction()} \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 renderWidget(props: WmDatetimeProps) {\n return ( \n this.addTouchableOpacity(props, (\n <View style={[this.styles.root, this.state.isValid ? {} : this.styles.invalid, this.state.isFocused ? this.styles.focused : null]}>\n {this._background}\n {props.floatinglabel ? (\n <FloatingLabel\n moveUp={!!(props.datavalue || this.state.isFocused)}\n label={props.floatinglabel ?? props.placeholder} \n style={{\n ...(this.styles.floatingLabel || []),\n ...(this.state.isFocused ? (this.styles.activeFloatingLabel || {}) : {})\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 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}}/>\n ))}\n </View>\n {\n this.state.showDatePicker\n && ((Platform.OS === 'web' && this.renderWebWidget(props))\n || (Platform.OS === 'android' && this.renderNativeWidget(props))\n || (Platform.OS === 'ios' && this.renderNativeIOSWidgetWithModal(props)))\n }\n </View>\n ))\n );\n }\n}\n\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","View","Text","Platform","TouchableOpacity","moment","DateTimePicker","BaseComponent","BaseComponentState","WmIcon","WmDatetimeProps","DEFAULT_CLASS","WebDatePicker","isNumber","isString","ModalConsumer","validateField","AccessibilityWidgetType","getAccessibilityProps","FloatingLabel","AppI18nService","WmButton","BaseDatetimeState","constructor","arguments","_defineProperty","CURRENT_DATE","CURRENT_TIME","BaseDatetime","props","defaultClass","length","undefined","defaultProps","defaultState","format","date","Date","getTime","parse","parseInt","toDate","monitorAndUpdateCurrentTime","stopCurrentTimeMonitor","timerId","setInterval","updateState","readonly","datavalue","now","state","clearInterval","convertTimezone","timezone","getTimezone","parsedDateString","toLocaleString","locale","timeZone","onPropertyChange","name","$new","$old","invokeEventCallback","prevDatavalue","outputformat","datepattern","dateValue","displayValue","onFieldChange","minDateVal","mindate","maxDateVal","maxdate","disabled","onDateChange","$event","validate","modes","shift","isFocused","showDatePicker","timestamp","onBlur","OS","setTimeout","triggerValidation","onFocus","mode","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","getTestPropsForAction","onPress","getIcon","renderWidget","root","invalid","focused","_background","floatinglabel","moveUp","label","placeholder","floatingLabel","activeFloatingLabel","container","text","placeholderText","getTestPropsForLabel","flex","isRTL","flexDirection","textAlign","iconclass","color","clearIcon","id","getTestId","clearBtnClicked","calendarIcon"],"sources":["base-datetime.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text, Platform, TouchableOpacity, ViewStyle } from 'react-native';\nimport moment from 'moment';\nimport DateTimePicker, { DateTimePickerEvent } from '@react-native-community/datetimepicker';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport WmIcon from '@wavemaker/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 { isNumber, isString } from 'lodash-es';\nimport { ModalConsumer, ModalOptions, ModalService } from '@wavemaker/app-rn-runtime/core/modal.service';\nimport { validateField } from '@wavemaker/app-rn-runtime/core/utils';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \nimport { FloatingLabel } from '@wavemaker/app-rn-runtime/core/components/floatinglabel.component';\nimport AppI18nService from '@wavemaker/app-rn-runtime/runtime/services/app-i18n.service';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\n\nexport class BaseDatetimeState extends BaseComponentState<WmDatetimeProps> {\n showDatePicker = 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 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 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.invokeEventCallback('onChange', [null, this, $new, $old]);\n this.prevDatavalue = $old;\n if (props.datavalue === CURRENT_TIME) {\n this.monitorAndUpdateCurrentTime();\n }\n case 'datepattern':\n case 'outputformat':\n if (props.datavalue && props.outputformat && props.datepattern) {\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, props.outputformat) : datavalue;\n datavalue = this.convertTimezone(datavalue);\n this.updateState({\n dateValue : date,\n displayValue: this.format(datavalue?datavalue:date as any, props.datepattern)\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 this.updateState({\n props: {\n mindate: moment(minDateVal, props.datepattern).toDate()\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 this.updateState({\n props: {\n maxdate: moment(maxDateVal, props.datepattern).toDate()\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: DateTimePickerEvent, date?: Date) {\n this.validate(date);\n this.modes.shift();\n this.updateState({\n isFocused: false,\n showDatePicker: !!this.modes.length,\n props: {\n datavalue: this.format(date, this.state.props.outputformat as string),\n timestamp: this.format(date, 'timestamp')\n }\n } as BaseDatetimeState);\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 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: DateTimePickerEvent, 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: DateTimePickerEvent, 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.ReactNode, styles?: any) : React.ReactNode{\n return (\n <TouchableOpacity \n {...this.getTestPropsForAction()} \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 renderWidget(props: WmDatetimeProps) {\n return ( \n this.addTouchableOpacity(props, (\n <View style={[this.styles.root, this.state.isValid ? {} : this.styles.invalid, this.state.isFocused ? this.styles.focused : null]}>\n {this._background}\n {props.floatinglabel ? (\n <FloatingLabel\n moveUp={!!(props.datavalue || this.state.isFocused)}\n label={props.floatinglabel ?? props.placeholder} \n style={{\n ...(this.styles.floatingLabel || []),\n ...(this.state.isFocused ? (this.styles.activeFloatingLabel || {}) : {})\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 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}}/>\n ))}\n </View>\n {\n this.state.showDatePicker\n && ((Platform.OS === 'web' && this.renderWebWidget(props))\n || (Platform.OS === 'android' && this.renderNativeWidget(props))\n || (Platform.OS === 'ios' && this.renderNativeIOSWidgetWithModal(props)))\n }\n </View>\n ))\n );\n }\n}\n\n"],"mappings":"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"}
@@ -18,6 +18,10 @@ export default class WmDatetimeProps extends BaseProps {
18
18
  _defineProperty(this, "timestamp", void 0);
19
19
  _defineProperty(this, "triggerValidation", void 0);
20
20
  _defineProperty(this, "floatinglabel", void 0);
21
+ _defineProperty(this, "accessibilitylabel", undefined);
22
+ _defineProperty(this, "hint", undefined);
23
+ _defineProperty(this, "accessibilityrole", "none");
24
+ _defineProperty(this, "accessibilitylabelledby", undefined);
21
25
  }
22
26
  }
23
27
  //# sourceMappingURL=datetime.props.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BaseProps","WmDatetimeProps","constructor","arguments","_defineProperty","undefined"],"sources":["datetime.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmDatetimeProps extends BaseProps {\n mode = 'datetime';\n datavalue?: string | Date | number = undefined as any;\n datepattern?: string = '';\n outputformat?: string = 'timestamp';\n mindate?: string | Date = undefined as any;\n maxdate?: string | Date = undefined as any;\n placeholder? = 'Select date time';\n readonly? = false;\n onFieldChange?: any;\n locale: string = '';\n timestamp?: any;\n triggerValidation?: any;\n floatinglabel?: string;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,eAAe,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,eAC9C,UAAU;IAAAA,eAAA,oBACoBC,SAAS;IAAAD,eAAA,sBACvB,EAAE;IAAAA,eAAA,uBACD,WAAW;IAAAA,eAAA,kBACTC,SAAS;IAAAD,eAAA,kBACTC,SAAS;IAAAD,eAAA,sBACpB,kBAAkB;IAAAA,eAAA,mBACrB,KAAK;IAAAA,eAAA;IAAAA,eAAA,iBAEA,EAAE;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;EAAA;AAIrB"}
1
+ {"version":3,"names":["BaseProps","WmDatetimeProps","constructor","arguments","_defineProperty","undefined"],"sources":["datetime.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\n\nexport default class WmDatetimeProps extends BaseProps {\n mode = 'datetime';\n datavalue?: string | Date | number = undefined as any;\n datepattern?: string = '';\n outputformat?: string = 'timestamp';\n mindate?: string | Date = undefined as any;\n maxdate?: string | Date = undefined as any;\n placeholder? = 'Select date time';\n readonly? = false;\n onFieldChange?: any;\n locale: string = '';\n timestamp?: any;\n triggerValidation?: any;\n floatinglabel?: string;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = \"none\";\n accessibilitylabelledby?: string = undefined;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAGzE,eAAe,MAAMC,eAAe,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,eAC9C,UAAU;IAAAA,eAAA,oBACoBC,SAAS;IAAAD,eAAA,sBACvB,EAAE;IAAAA,eAAA,uBACD,WAAW;IAAAA,eAAA,kBACTC,SAAS;IAAAD,eAAA,kBACTC,SAAS;IAAAD,eAAA,sBACpB,kBAAkB;IAAAA,eAAA,mBACrB,KAAK;IAAAA,eAAA;IAAAA,eAAA,iBAEA,EAAE;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,6BAIWC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA,4BACe,MAAM;IAAAA,eAAA,kCACXC,SAAS;EAAA;AAC9C"}
@@ -44,6 +44,8 @@ export default class WmFileupload extends BaseComponent {
44
44
  return /*#__PURE__*/React.createElement(View, {
45
45
  style: this.styles.root
46
46
  }, this._background, /*#__PURE__*/React.createElement(WmButton, {
47
+ accessibilitylabel: props.accessibilitylabel || props.caption,
48
+ hint: props.hint,
47
49
  id: this.getTestId(),
48
50
  iconclass: props.iconclass,
49
51
  caption: props.caption,
@@ -1 +1 @@
1
- {"version":3,"names":["React","Platform","View","DocumentPicker","BaseComponent","BaseComponentState","WmFileuploadProps","DEFAULT_CLASS","WmButton","WmFileuploadState","constructor","arguments","_defineProperty","namedParameters","copyToCacheDirectory","multiple","type","WmFileupload","props","onTap","getDocumentAsync","then","response","selectedFile","OS","mimeType","file","invokeEventCallback","proxy","updateState","selectedFiles","bind","renderWidget","createElement","style","styles","root","_background","id","getTestId","iconclass","caption","button","iconsize"],"sources":["fileupload.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Platform, View } from 'react-native';\nimport * as DocumentPicker from 'expo-document-picker';\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmFileuploadProps from './fileupload.props';\nimport { DEFAULT_CLASS, WmFileuploadStyles } from './fileupload.styles';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\n\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\nconst namedParameters = {\n copyToCacheDirectory: false,\n multiple: false,\n type: '*/*'\n};\n\nexport default class WmFileupload extends BaseComponent<WmFileuploadProps, WmFileuploadState, WmFileuploadStyles> {\n\n constructor(props: WmFileuploadProps) {\n super(props, DEFAULT_CLASS, new WmFileuploadProps());\n }\n\n onTap() {\n DocumentPicker.getDocumentAsync(namedParameters).then((response: any) => {\n let selectedFile;\n if (Platform.OS !== 'web') {\n selectedFile = response;\n selectedFile.type = selectedFile.mimeType;\n } else {\n selectedFile = response.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 return <View style={this.styles.root}>\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)}></WmButton>\n </View>\n }\n}\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,EAAEC,IAAI,QAAQ,cAAc;AAC7C,OAAO,KAAKC,cAAc,MAAM,sBAAsB;AAEtD,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AAEjG,OAAOC,iBAAiB,MAAM,oBAAoB;AAClD,SAASC,aAAa,QAA4B,qBAAqB;AACvE,OAAOC,QAAQ,MAAM,oEAAoE;AAWzF,OAAO,MAAMC,iBAAiB,SAASJ,kBAAkB,CAAoB;EAAAK,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA;EAAA;AAE7E;AAEA,MAAMC,eAAe,GAAG;EACtBC,oBAAoB,EAAE,KAAK;EAC3BC,QAAQ,EAAE,KAAK;EACfC,IAAI,EAAE;AACR,CAAC;AAED,eAAe,MAAMC,YAAY,SAASb,aAAa,CAA2D;EAEhHM,WAAWA,CAACQ,KAAwB,EAAE;IACpC,KAAK,CAACA,KAAK,EAAEX,aAAa,EAAE,IAAID,iBAAiB,CAAC,CAAC,CAAC;EACtD;EAEAa,KAAKA,CAAA,EAAG;IACNhB,cAAc,CAACiB,gBAAgB,CAACP,eAAe,CAAC,CAACQ,IAAI,CAAEC,QAAa,IAAK;MACvE,IAAIC,YAAY;MAChB,IAAItB,QAAQ,CAACuB,EAAE,KAAK,KAAK,EAAE;QACzBD,YAAY,GAAGD,QAAQ;QACvBC,YAAY,CAACP,IAAI,GAAGO,YAAY,CAACE,QAAQ;MAC3C,CAAC,MAAM;QACLF,YAAY,GAAGD,QAAQ,CAACI,IAAI;MAC9B;MACA,IAAI,CAACC,mBAAmB,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE,IAAI,CAACC,KAAK,EAAEL,YAAY,CAAC,CAAC;MAE5E,IAAI,CAACM,WAAW,CAAC;QACbX,KAAK,EAAE;UACPY,aAAa,EAAEP;QACjB;MACF,CAAC,EAAuB,IAAI,CAACI,mBAAmB,CAACI,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,CAACH,KAAK,EAAEL,YAAY,CAAC,CAAC,CAAC;IAC5G,CAAC,CAAC;EACJ;EAEAS,YAAYA,CAACd,KAAwB,EAAE;IACrC,oBAAOlB,KAAA,CAAAiC,aAAA,CAAC/B,IAAI;MAACgC,KAAK,EAAE,IAAI,CAACC,MAAM,CAACC;IAAK,GAClC,IAAI,CAACC,WAAW,eACjBrC,KAAA,CAAAiC,aAAA,CAACzB,QAAQ;MAAC8B,EAAE,EAAE,IAAI,CAACC,SAAS,CAAC,CAAE;MAACC,SAAS,EAAEtB,KAAK,CAACsB,SAAU;MAACC,OAAO,EAAEvB,KAAK,CAACuB,OAAQ;MAACN,MAAM,EAAE,IAAI,CAACA,MAAM,CAACO,MAAO;MAACC,QAAQ,EAAEzB,KAAK,CAACyB,QAAS;MAACxB,KAAK,EAAE,IAAI,CAACA,KAAK,CAACY,IAAI,CAAC,IAAI;IAAE,CAAW,CAC9K,CAAC;EACT;AACF"}
1
+ {"version":3,"names":["React","Platform","View","DocumentPicker","BaseComponent","BaseComponentState","WmFileuploadProps","DEFAULT_CLASS","WmButton","WmFileuploadState","constructor","arguments","_defineProperty","namedParameters","copyToCacheDirectory","multiple","type","WmFileupload","props","onTap","getDocumentAsync","then","response","selectedFile","OS","mimeType","file","invokeEventCallback","proxy","updateState","selectedFiles","bind","renderWidget","createElement","style","styles","root","_background","accessibilitylabel","caption","hint","id","getTestId","iconclass","button","iconsize"],"sources":["fileupload.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Platform, View } from 'react-native';\nimport * as DocumentPicker from 'expo-document-picker';\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmFileuploadProps from './fileupload.props';\nimport { DEFAULT_CLASS, WmFileuploadStyles } from './fileupload.styles';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\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\nconst namedParameters = {\n copyToCacheDirectory: false,\n multiple: false,\n type: '*/*'\n};\n\nexport default class WmFileupload extends BaseComponent<WmFileuploadProps, WmFileuploadState, WmFileuploadStyles> {\n\n constructor(props: WmFileuploadProps) {\n super(props, DEFAULT_CLASS, new WmFileuploadProps());\n }\n\n onTap() {\n DocumentPicker.getDocumentAsync(namedParameters).then((response: any) => {\n let selectedFile;\n if (Platform.OS !== 'web') {\n selectedFile = response;\n selectedFile.type = selectedFile.mimeType;\n } else {\n selectedFile = response.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 return <View style={this.styles.root}>\n {this._background}\n <WmButton accessibilitylabel={props.accessibilitylabel || props.caption} hint = {props.hint} id={this.getTestId()} iconclass={props.iconclass} caption={props.caption} styles={this.styles.button} iconsize={props.iconsize} onTap={this.onTap.bind(this)}></WmButton>\n </View>\n }\n}\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,EAAEC,IAAI,QAAQ,cAAc;AAC7C,OAAO,KAAKC,cAAc,MAAM,sBAAsB;AAEtD,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AAEjG,OAAOC,iBAAiB,MAAM,oBAAoB;AAClD,SAASC,aAAa,QAA4B,qBAAqB;AACvE,OAAOC,QAAQ,MAAM,oEAAoE;AAUzF,OAAO,MAAMC,iBAAiB,SAASJ,kBAAkB,CAAoB;EAAAK,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA;EAAA;AAE7E;AAEA,MAAMC,eAAe,GAAG;EACtBC,oBAAoB,EAAE,KAAK;EAC3BC,QAAQ,EAAE,KAAK;EACfC,IAAI,EAAE;AACR,CAAC;AAED,eAAe,MAAMC,YAAY,SAASb,aAAa,CAA2D;EAEhHM,WAAWA,CAACQ,KAAwB,EAAE;IACpC,KAAK,CAACA,KAAK,EAAEX,aAAa,EAAE,IAAID,iBAAiB,CAAC,CAAC,CAAC;EACtD;EAEAa,KAAKA,CAAA,EAAG;IACNhB,cAAc,CAACiB,gBAAgB,CAACP,eAAe,CAAC,CAACQ,IAAI,CAAEC,QAAa,IAAK;MACvE,IAAIC,YAAY;MAChB,IAAItB,QAAQ,CAACuB,EAAE,KAAK,KAAK,EAAE;QACzBD,YAAY,GAAGD,QAAQ;QACvBC,YAAY,CAACP,IAAI,GAAGO,YAAY,CAACE,QAAQ;MAC3C,CAAC,MAAM;QACLF,YAAY,GAAGD,QAAQ,CAACI,IAAI;MAC9B;MACA,IAAI,CAACC,mBAAmB,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE,IAAI,CAACC,KAAK,EAAEL,YAAY,CAAC,CAAC;MAE5E,IAAI,CAACM,WAAW,CAAC;QACbX,KAAK,EAAE;UACPY,aAAa,EAAEP;QACjB;MACF,CAAC,EAAuB,IAAI,CAACI,mBAAmB,CAACI,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,CAACH,KAAK,EAAEL,YAAY,CAAC,CAAC,CAAC;IAC5G,CAAC,CAAC;EACJ;EAEAS,YAAYA,CAACd,KAAwB,EAAE;IACrC,oBAAOlB,KAAA,CAAAiC,aAAA,CAAC/B,IAAI;MAACgC,KAAK,EAAE,IAAI,CAACC,MAAM,CAACC;IAAK,GAClC,IAAI,CAACC,WAAW,eACjBrC,KAAA,CAAAiC,aAAA,CAACzB,QAAQ;MAAC8B,kBAAkB,EAAEpB,KAAK,CAACoB,kBAAkB,IAAIpB,KAAK,CAACqB,OAAQ;MAACC,IAAI,EAAItB,KAAK,CAACsB,IAAK;MAACC,EAAE,EAAE,IAAI,CAACC,SAAS,CAAC,CAAE;MAACC,SAAS,EAAEzB,KAAK,CAACyB,SAAU;MAACJ,OAAO,EAAErB,KAAK,CAACqB,OAAQ;MAACJ,MAAM,EAAE,IAAI,CAACA,MAAM,CAACS,MAAO;MAACC,QAAQ,EAAE3B,KAAK,CAAC2B,QAAS;MAAC1B,KAAK,EAAE,IAAI,CAACA,KAAK,CAACY,IAAI,CAAC,IAAI;IAAE,CAAW,CACjQ,CAAC;EACT;AACF"}
@@ -9,6 +9,8 @@ export default class WmFileuploadProps extends BaseProps {
9
9
  _defineProperty(this, "iconsize", 16);
10
10
  _defineProperty(this, "caption", 'Upload');
11
11
  _defineProperty(this, "selectedFiles", void 0);
12
+ _defineProperty(this, "accessibilitylabel", undefined);
13
+ _defineProperty(this, "hint", undefined);
12
14
  }
13
15
  }
14
16
  //# sourceMappingURL=fileupload.props.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BaseProps","WmFileuploadProps","constructor","arguments","_defineProperty"],"sources":["fileupload.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\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}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,iBAAiB,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,oBACnC,yBAAyB;IAAAA,eAAA,mBAC1B,EAAE;IAAAA,eAAA,kBACH,QAAQ;IAAAA,eAAA;EAAA;AAE5B"}
1
+ {"version":3,"names":["BaseProps","WmFileuploadProps","constructor","arguments","_defineProperty","undefined"],"sources":["fileupload.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/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 accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAGzE,eAAe,MAAMC,iBAAiB,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,oBACnC,yBAAyB;IAAAA,eAAA,mBAC1B,EAAE;IAAAA,eAAA,kBACH,QAAQ;IAAAA,eAAA;IAAAA,eAAA,6BAEIC,SAAS;IAAAD,eAAA,eACvBC,SAAS;EAAA;AAC3B"}
@@ -9,6 +9,7 @@ import WmNumberProps from './number.props';
9
9
  import { DEFAULT_CLASS } from './number.styles';
10
10
  import { WMTextInput } from '@wavemaker/app-rn-runtime/core/components/textinput.component';
11
11
  import { BaseNumberComponent, BaseNumberState } from '@wavemaker/app-rn-runtime/components/input/basenumber/basenumber.component';
12
+ import { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';
12
13
  export class WmNumberState extends BaseNumberState {
13
14
  constructor() {
14
15
  super(...arguments);
@@ -32,7 +33,7 @@ export default class WmNumber extends BaseNumberComponent {
32
33
  let opts = {};
33
34
  const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';
34
35
  opts[valueExpr] = ((_this$state$textValue = this.state.textValue) === null || _this$state$textValue === void 0 ? void 0 : _this$state$textValue.toString()) || '';
35
- return /*#__PURE__*/React.createElement(WMTextInput, _extends({}, this.getTestPropsForInput(), {
36
+ return /*#__PURE__*/React.createElement(WMTextInput, _extends({}, this.getTestPropsForInput(), getAccessibilityProps(AccessibilityWidgetType.NUMBER, props), {
36
37
  ref: ref => {
37
38
  this.widgetRef = ref;
38
39
  // @ts-ignore