@wavemaker/app-rn-runtime 11.11.6-rc.6189 → 11.11.7-rc.217

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 (45) hide show
  1. package/components/basic/button/button.component.js +0 -5
  2. package/components/basic/button/button.component.js.map +1 -1
  3. package/components/basic/icon/icon.component.js +5 -5
  4. package/components/basic/icon/icon.component.js.map +1 -1
  5. package/components/basic/icon/icon.props.js +1 -0
  6. package/components/basic/icon/icon.props.js.map +1 -1
  7. package/components/basic/label/label.props.js +1 -1
  8. package/components/basic/label/label.props.js.map +1 -1
  9. package/components/basic/picture/picture.component.js +5 -2
  10. package/components/basic/picture/picture.component.js.map +1 -1
  11. package/components/basic/picture/picture.props.js +1 -0
  12. package/components/basic/picture/picture.props.js.map +1 -1
  13. package/components/chart/basechart.component.js +11 -15
  14. package/components/chart/basechart.component.js.map +1 -1
  15. package/components/data/list/list.component.js +22 -4
  16. package/components/data/list/list.component.js.map +1 -1
  17. package/components/data/list/list.props.js +2 -0
  18. package/components/data/list/list.props.js.map +1 -1
  19. package/components/data/list/list.styles.js +1 -0
  20. package/components/data/list/list.styles.js.map +1 -1
  21. package/components/input/switch/switch.component.js +1 -1
  22. package/components/input/switch/switch.component.js.map +1 -1
  23. package/components/input/switch/switch.styles.js +14 -10
  24. package/components/input/switch/switch.styles.js.map +1 -1
  25. package/components/page/partial-container/partial-container.component.js +5 -1
  26. package/components/page/partial-container/partial-container.component.js.map +1 -1
  27. package/components/page/partial-container/partial-container.props.js +1 -0
  28. package/components/page/partial-container/partial-container.props.js.map +1 -1
  29. package/core/AppConfig.js.map +1 -1
  30. package/core/accessibility.js +15 -1
  31. package/core/accessibility.js.map +1 -1
  32. package/core/partial.service.js.map +1 -1
  33. package/core/responsive.utils.js +48 -0
  34. package/core/responsive.utils.js.map +1 -0
  35. package/core/tappable.component.js +2 -2
  36. package/core/tappable.component.js.map +1 -1
  37. package/core/utils.js +13 -0
  38. package/core/utils.js.map +1 -1
  39. package/npm-shrinkwrap.json +60 -58
  40. package/package-lock.json +60 -58
  41. package/package.json +2 -2
  42. package/runtime/services/partial.service.js +12 -1
  43. package/runtime/services/partial.service.js.map +1 -1
  44. package/styles/theme.js +27 -8
  45. package/styles/theme.js.map +1 -1
@@ -79,10 +79,6 @@ export default class WmButton extends BaseComponent {
79
79
  }, this.styles.root.height == "100%" ? {
80
80
  flex: 1
81
81
  } : {}]
82
- // accessibilityProps={{...getAccessibilityProps(
83
- // AccessibilityWidgetType.BUTTON,
84
- // props
85
- // )}}
86
82
  }, this._background, /*#__PURE__*/React.createElement(Tappable, _extends({
87
83
  disableTouchEffect: this.state.props.disabletoucheffect,
88
84
  styles: {
@@ -108,7 +104,6 @@ export default class WmButton extends BaseComponent {
108
104
  style: this.styles.text
109
105
  }, this.getTestPropsForLabel('caption'), {
110
106
  importantForAccessibility: 'no'
111
- // accessibilityLabel={`${props.caption}`}
112
107
  }), props.caption) : null, props.iconposition === 'right' && this.prepareIcon(props)))), props.badgevalue && this.prepareBadge(props));
113
108
  }
114
109
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","Tappable","Badge","WmButtonProps","DEFAULT_CLASS","WmIcon","Animatedview","createSkeleton","AccessibilityWidgetType","getAccessibilityProps","WmButtonState","WmButton","constructor","props","prepareIcon","iconclass","iconurl","hint","name","iconsize","iconheight","iconmargin","iconwidth","createElement","id","getTestId","styles","icon","prepareBadge","_extends","style","badge","getTestProps","badgevalue","renderSkeleton","prop","skeletonWidth","skeletonHeight","skeletonwidth","_this$styles$root","root","width","skeletonheight","_this$styles$root2","height","theme","skeleton","renderWidget","Fragment","entryanimation","animation","delay","animationdelay","onLayout","event","handleLayout","paddingTop","paddingBottom","paddingLeft","paddingRight","overflow","flexDirection","flex","_background","disableTouchEffect","state","disabletoucheffect","justifyContent","rippleColor","target","getTestPropsForAction","accessibilityProps","BUTTON","content","iconposition","caption","text","getTestPropsForLabel","importantForAccessibility"],"sources":["button.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, LayoutChangeEvent, Text, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { Badge } from 'react-native-paper';\n\nimport WmButtonProps from './button.props';\nimport { DEFAULT_CLASS, WmButtonStyles } from './button.styles';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport { createSkeleton } from '../skeleton/skeleton.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nexport class WmButtonState extends BaseComponentState<WmButtonProps> {\n\n}\n\nexport default class WmButton extends BaseComponent<WmButtonProps, WmButtonState, WmButtonStyles> {\n\n constructor(props: WmButtonProps) {\n super(props, DEFAULT_CLASS, new WmButtonProps());\n }\n\n private prepareIcon({\n iconclass,\n iconurl,\n hint,\n name,\n iconsize,\n iconheight,\n iconmargin,\n iconwidth,\n }: any) {\n return iconclass || iconurl\n ? (<WmIcon\n id={this.getTestId('icon')}\n hint={hint}\n styles={this.styles.icon}\n name={`${name}_icon`}\n iconclass={iconclass}\n iconsize={iconsize}\n iconurl={iconurl}\n iconheight={iconheight}\n iconmargin={iconmargin}\n iconwidth={iconwidth}\n />): null;\n }\n\n private prepareBadge(props: any) {\n //@ts-ignore\n return (<Badge style={this.styles.badge} {...this.getTestProps('badge')}>{props.badgevalue}</Badge>);\n }\n\n public renderSkeleton(prop: WmButtonProps) {\n let skeletonWidth, skeletonHeight;\n if(this.props.skeletonwidth == \"0\") {\n skeletonWidth = 0\n } else {\n skeletonWidth = this.props.skeletonwidth || this.styles.root?.width\n }\n\n if(this.props.skeletonheight == \"0\") {\n skeletonHeight = 0\n } else {\n skeletonHeight = this.props.skeletonheight || this.styles.root?.height;\n }\n \n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: skeletonWidth as DimensionValue,\n height: skeletonHeight as DimensionValue\n });\n }\n\n renderWidget(props: WmButtonProps) {\n return (\n <>\n <Animatedview entryanimation={props.animation} delay={props.animationdelay}\n onLayout={(event: LayoutChangeEvent) => this.handleLayout(event)}\n style={[\n this.styles.root,\n {\n paddingTop: 0,\n paddingBottom: 0,\n paddingLeft: 0,\n paddingRight: 0,\n overflow: 'hidden',\n flexDirection: 'column'\n },\n this.styles.root.height == \"100%\" ? {flex: 1}:{}\n ]}\n // accessibilityProps={{...getAccessibilityProps(\n // AccessibilityWidgetType.BUTTON,\n // props\n // )}}\n >\n {this._background}\n <Tappable\n disableTouchEffect={this.state.props.disabletoucheffect}\n styles={{\n paddingTop: this.styles.root.paddingTop,\n paddingBottom: this.styles.root.paddingBottom,\n paddingLeft: this.styles.root.paddingLeft,\n paddingRight: this.styles.root.paddingRight,\n width: '100%',\n height: this.styles.root.height ? '100%' : null,\n justifyContent: 'center',\n }}\n rippleColor = {this.styles.root.rippleColor}\n target={this}\n {...this.getTestPropsForAction()}\n accessibilityProps={{...getAccessibilityProps(\n AccessibilityWidgetType.BUTTON,\n props\n )}}>\n <View\n style={[\n this.styles.content,\n { flexDirection: props.iconposition === 'top' ? 'column' : 'row' }\n ]}>\n {props.iconposition === 'top' && this.prepareIcon(props)}\n {props.iconposition === 'left' && this.prepareIcon(props)}\n {props.caption ? (\n <Text\n style={this.styles.text}\n {...this.getTestPropsForLabel('caption')}\n importantForAccessibility={'no'}\n // accessibilityLabel={`${props.caption}`}\n >\n {props.caption}\n </Text>\n ) : null}\n {props.iconposition === 'right' && this.prepareIcon(props)}\n </View>\n </Tappable>\n </Animatedview>\n {props.badgevalue && this.prepareBadge(props)}\n </>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","Tappable","Badge","WmButtonProps","DEFAULT_CLASS","WmIcon","Animatedview","createSkeleton","AccessibilityWidgetType","getAccessibilityProps","WmButtonState","WmButton","constructor","props","prepareIcon","iconclass","iconurl","hint","name","iconsize","iconheight","iconmargin","iconwidth","createElement","id","getTestId","styles","icon","prepareBadge","_extends","style","badge","getTestProps","badgevalue","renderSkeleton","prop","skeletonWidth","skeletonHeight","skeletonwidth","_this$styles$root","root","width","skeletonheight","_this$styles$root2","height","theme","skeleton","renderWidget","Fragment","entryanimation","animation","delay","animationdelay","onLayout","event","handleLayout","paddingTop","paddingBottom","paddingLeft","paddingRight","overflow","flexDirection","flex","_background","disableTouchEffect","state","disabletoucheffect","justifyContent","rippleColor","target","getTestPropsForAction","accessibilityProps","BUTTON","content","iconposition","caption","text","getTestPropsForLabel","importantForAccessibility"],"sources":["button.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, LayoutChangeEvent, Text, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { Badge } from 'react-native-paper';\n\nimport WmButtonProps from './button.props';\nimport { DEFAULT_CLASS, WmButtonStyles } from './button.styles';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport { createSkeleton } from '../skeleton/skeleton.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nexport class WmButtonState extends BaseComponentState<WmButtonProps> {\n\n}\n\nexport default class WmButton extends BaseComponent<WmButtonProps, WmButtonState, WmButtonStyles> {\n\n constructor(props: WmButtonProps) {\n super(props, DEFAULT_CLASS, new WmButtonProps());\n }\n\n private prepareIcon({\n iconclass,\n iconurl,\n hint,\n name,\n iconsize,\n iconheight,\n iconmargin,\n iconwidth,\n }: any) {\n return iconclass || iconurl\n ? (<WmIcon\n id={this.getTestId('icon')}\n hint={hint}\n styles={this.styles.icon}\n name={`${name}_icon`}\n iconclass={iconclass}\n iconsize={iconsize}\n iconurl={iconurl}\n iconheight={iconheight}\n iconmargin={iconmargin}\n iconwidth={iconwidth}\n />): null;\n }\n\n private prepareBadge(props: any) {\n //@ts-ignore\n return (<Badge style={this.styles.badge} {...this.getTestProps('badge')}>{props.badgevalue}</Badge>);\n }\n\n public renderSkeleton(prop: WmButtonProps) {\n let skeletonWidth, skeletonHeight;\n if(this.props.skeletonwidth == \"0\") {\n skeletonWidth = 0\n } else {\n skeletonWidth = this.props.skeletonwidth || this.styles.root?.width\n }\n\n if(this.props.skeletonheight == \"0\") {\n skeletonHeight = 0\n } else {\n skeletonHeight = this.props.skeletonheight || this.styles.root?.height;\n }\n \n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: skeletonWidth as DimensionValue,\n height: skeletonHeight as DimensionValue\n });\n }\n\n renderWidget(props: WmButtonProps) {\n return (\n <>\n <Animatedview entryanimation={props.animation} delay={props.animationdelay}\n onLayout={(event: LayoutChangeEvent) => this.handleLayout(event)}\n style={[\n this.styles.root,\n {\n paddingTop: 0,\n paddingBottom: 0,\n paddingLeft: 0,\n paddingRight: 0,\n overflow: 'hidden',\n flexDirection: 'column'\n },\n this.styles.root.height == \"100%\" ? {flex: 1}:{}\n ]}\n >\n {this._background}\n <Tappable\n disableTouchEffect={this.state.props.disabletoucheffect}\n styles={{\n paddingTop: this.styles.root.paddingTop,\n paddingBottom: this.styles.root.paddingBottom,\n paddingLeft: this.styles.root.paddingLeft,\n paddingRight: this.styles.root.paddingRight,\n width: '100%',\n height: this.styles.root.height ? '100%' : null,\n justifyContent: 'center',\n }}\n rippleColor = {this.styles.root.rippleColor}\n target={this}\n {...this.getTestPropsForAction()}\n accessibilityProps={{...getAccessibilityProps(\n AccessibilityWidgetType.BUTTON,\n props\n )}}>\n <View\n style={[\n this.styles.content,\n { flexDirection: props.iconposition === 'top' ? 'column' : 'row' }\n ]}>\n {props.iconposition === 'top' && this.prepareIcon(props)}\n {props.iconposition === 'left' && this.prepareIcon(props)}\n {props.caption ? (\n <Text\n style={this.styles.text}\n {...this.getTestPropsForLabel('caption')}\n importantForAccessibility={'no'}\n >\n {props.caption}\n </Text>\n ) : null}\n {props.iconposition === 'right' && this.prepareIcon(props)}\n </View>\n </Tappable>\n </Animatedview>\n {props.badgevalue && this.prepareBadge(props)}\n </>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -249,19 +249,19 @@ export default class WmIcon extends BaseComponent {
249
249
  target: this,
250
250
  rippleColor: this.styles.root.rippleColor
251
251
  }, this.getTestPropsForAction(), {
252
- accessibilityProps: {
253
- ...getAccessibilityProps(AccessibilityWidgetType.ICON, props)
254
- },
255
252
  disableTouchEffect: this.state.props.disabletoucheffect,
256
253
  onLayout: event => this.handleLayout(event)
257
254
  }), /*#__PURE__*/React.createElement(Animatedview, {
258
255
  entryanimation: props.animation,
259
256
  delay: props.animationdelay,
260
257
  style: this.styles.root,
261
- iterationCount: iterationCount
258
+ iterationCount: iterationCount,
259
+ accessibilityProps: props.accessible ? {
260
+ ...getAccessibilityProps(AccessibilityWidgetType.ICON, props)
261
+ } : {}
262
262
  }, this._background, props.iconposition === 'left' && icon || null, props.caption && /*#__PURE__*/React.createElement(Text, _extends({}, this.getTestPropsForLabel('caption'), {
263
263
  style: this.styles.text,
264
- accessibilityRole: props !== null && props !== void 0 && props.accessibilityrole ? props === null || props === void 0 ? void 0 : props.accessibilityrole : 'text'
264
+ importantForAccessibility: "no"
265
265
  }), props.caption) || null, props.iconposition === 'right' && icon || null));
266
266
  }
267
267
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","Animated","Easing","Text","Image","View","FontAwesome","BaseComponent","BaseComponentState","isFullPathUrl","AccessibilityWidgetType","getAccessibilityProps","WmIconProps","DEFAULT_CLASS","WavIcon","StreamlineLightIcon","StreamlineRegularIcon","Tappable","Animatedview","createSkeleton","ICON_SIZES","Map","ICON_ROTATTION","WmIconState","constructor","args","_defineProperty","WmIcon","props","Value","getIconDef","iconClass","iconDef","rotate","splits","split","isFontAwesome","find","v","isStreamlineLightIcon","isStreamlineRegularIcon","_splits$find","type","startsWith","substring","_splits$find2","_splits$find3","_splits$find4","isWavIcon","indexOf","animation","size","map","get","spin","stopAnimation","spinValue","setValue","timing","toValue","duration","easing","linear","useNativeDriver","start","componentDidMount","componentWillUnmount","onPropertyChange","name","$new","$old","updateState","getCustomIcon","style","_this$theme$getStyle","customIcon","theme","mergeStyle","getStyle","iconclass","icon","styles","customIconContent","content","createElement","fontFamily","decodeURIComponent","renderSkeleton","skeletonWidth","skeletonwidth","iconsize","root","width","skeletonHeight","skeletonheight","height","skeleton","getElementToShow","iconSrc","iconmargin","iconheight","iconwidth","elementToshow","source","uri","testID","getTestId","margin","loadIcon","iconImage","loadAsset","iconImageSrc","renderIcon","iconJsx","_iconSource","iconurl","state","text","color","transform","iconSize","fontSize","show","_extends","getTestProps","_this$styles$icon","WMCustomIcon","interpolate","inputRange","outputRange","opacity","renderWidget","iterationCount","iterationcount","parseInt","undefined","target","rippleColor","getTestPropsForAction","accessibilityProps","ICON","disableTouchEffect","disabletoucheffect","onLayout","event","handleLayout","entryanimation","delay","animationdelay","_background","iconposition","caption","getTestPropsForLabel","accessibilityRole","accessibilityrole"],"sources":["icon.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Animated, DimensionValue, Easing, Text, Image, View, LayoutChangeEvent } from 'react-native';\nimport { FontAwesome } from '@expo/vector-icons';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nimport WmIconProps from './icon.props';\nimport { DEFAULT_CLASS, WmIconStyles } from './icon.styles';\nimport WavIcon from './wavicon/wavicon.component';\nimport StreamlineLightIcon from './streamline-light-icon/streamline-light-icon.component';\nimport StreamlineRegularIcon from './streamline-regular-icon/streamline-regular-icon.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport WmSkeleton, { createSkeleton } from '../skeleton/skeleton.component';\n\ninterface IconDef {\n isFontAwesome: boolean;\n isWavIcon: boolean;\n isStreamlineLightIcon: boolean;\n isStreamlineRegularIcon: boolean;\n type: string;\n rotate: string;\n size: number;\n animation: string;\n}\n\nconst ICON_SIZES = new Map([\n ['fa-lg', 24],\n ['fa-2x', 36],\n ['fa-3x', 48],\n ['fa-4x', 60],\n ['fa-5x', 72]\n]);\n\nconst ICON_ROTATTION = new Map([\n ['fa-rotate-90', '90deg'],\n ['fa-rotate-180', '180deg'],\n ['fa-rotate-270', '270deg']\n]);\n\nexport class WmIconState extends BaseComponentState<WmIconProps> {\n public iconDef = {} as IconDef;\n}\n\nexport default class WmIcon extends BaseComponent<WmIconProps, WmIconState, WmIconStyles> {\n spinValue = new Animated.Value(0);\n pulseValue = new Animated.Value(0);\n public stopAnimation = true;\n private _iconSource = null as any;\n\n constructor(props: WmIconProps) {\n super(props, DEFAULT_CLASS, new WmIconProps());\n }\n\n getIconDef(iconClass: string): IconDef {\n const iconDef = {\n rotate: '0'\n } as IconDef;\n const splits = iconClass.split(' ');\n iconDef.isFontAwesome = !!splits.find(v => v === 'fa');\n iconDef.isStreamlineLightIcon = !!splits.find(v => v === 'wm-sl-l');\n iconDef.isStreamlineRegularIcon = !!splits.find(v => v === 'wm-sl-r');\n if (iconDef.isFontAwesome) {\n iconDef.type = splits.find(v => v.startsWith('fa-'))?.substring(3) || '';\n } else if (iconDef.isStreamlineLightIcon) {\n iconDef.type = splits.find(v => v.startsWith('sl-'))?.substring(3) || '';\n } else if (iconDef.isStreamlineRegularIcon) {\n iconDef.type = splits.find(v => v.startsWith('sl-'))?.substring(3) || '';\n } else {\n iconDef.isWavIcon = !iconDef.isFontAwesome && !!splits.find(v => v === 'wi');\n iconDef.type = (iconDef.isWavIcon && splits.find(v => v.startsWith('wi-'))?.substring(3)) || '';\n }\n if (iconClass.indexOf('fa-spin') >= 0) {\n iconDef.animation = 'spin';\n } else if (iconClass.indexOf('fa-pulse') >= 0) {\n iconDef.animation = 'pulse';\n }\n iconDef.size = splits.map(v => ICON_SIZES.get(v)).find(v => !!v) || 12;\n iconDef.rotate = splits.map(v => ICON_ROTATTION.get(v)).find(v => !!v) || '0deg';\n return iconDef;\n }\n\n private spin () {\n if (this.stopAnimation) {\n return;\n }\n this.spinValue.setValue(0);\n Animated.timing(\n this.spinValue,\n {\n toValue: 1,\n duration: 1000,\n easing: Easing.linear,\n useNativeDriver: true\n }\n ).start(() => this.spin());\n }\n\n componentDidMount() {\n super.componentDidMount();\n this.spin();\n }\n\n componentWillUnmount(): void {\n super.componentWillUnmount();\n this.stopAnimation = true;\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case 'iconclass':\n $new && this.updateState({iconDef: this.getIconDef($new)} as WmIconState);\n break;\n }\n }\n\n private getCustomIcon(props: WmIconProps, style: any) {\n const customIcon = this.theme.mergeStyle({}, this.theme.getStyle(props?.iconclass || '')?.icon || this.styles.icon);\n const customIconContent = customIcon?.content;\n if (customIconContent) {\n delete customIcon.content;\n return (<Text\n style={[style, customIcon.fontFamily ? {fontFamily: customIcon.fontFamily}: null]}>\n {decodeURIComponent(customIconContent)}\n </Text>);\n }\n return null;\n }\n\n public renderSkeleton(props: WmIconProps) {\n let skeletonWidth = (this.props.skeletonwidth || this.props.iconsize || this.styles.root.width) as DimensionValue;\n let skeletonHeight = (this.props.skeletonheight || this.props.iconsize || this.styles.root.height) as DimensionValue\n\n if(this.props.skeletonheight == \"0\") {\n skeletonWidth = 0\n }\n \n if(this.props.skeletonheight == \"0\") {\n skeletonHeight = 0\n }\n \n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: skeletonWidth,\n height: skeletonHeight\n });\n }\n\n getElementToShow(props: WmIconProps, iconSrc: any) {\n\n const { iconmargin, iconheight, iconwidth } = props;\n let width, height;\n let elementToshow, source;\n\n if (iconwidth) width = iconwidth;\n else if (iconheight) width = iconheight;\n else width = 12;\n if (iconheight) height = iconheight;\n else if (iconwidth) height = iconwidth;\n else height = 12;\n\n if (isFullPathUrl(iconSrc)) {\n source = {\n uri: iconSrc\n };\n } else {\n source = iconSrc;\n }\n elementToshow = <Image testID={this.getTestId('icon')}\n style={{\n margin: iconmargin ?? 0,\n height: height,\n width: width\n }}\n source={source}/>;\n return elementToshow;\n }\n\n loadIcon(iconImage: string | undefined) {\n if (!iconImage || !this.loadAsset) {\n return null;\n }\n const iconImageSrc = this.loadAsset(iconImage);\n if (iconImageSrc && typeof iconImageSrc !== 'function') {\n return iconImageSrc;\n }\n return null;\n }\n\n renderIcon(props: WmIconProps) {\n let iconJsx = null;\n this._iconSource = this._iconSource || this.loadIcon(props.iconurl);\n const iconSrc: any = this._iconSource\n if (iconSrc) {\n return this.getElementToShow(props, iconSrc);\n }\n const iconDef = this.state.iconDef;\n if (!iconDef) {\n return null;\n }\n const { root, text, icon } = this.styles;\n const style = [{ color: root.color || text.color },\n icon,\n { transform: [{ rotate: iconDef.rotate }] }];\n\n const customIcon = this.getCustomIcon(props, style);\n const iconSize = props.iconsize || this.styles.root.fontSize || this.styles.text.fontSize || iconDef.size;\n if (props.show && iconDef && iconDef.isFontAwesome) {\n //@ts-ignore type information is not matching\n iconJsx = (<FontAwesome name={customIcon ? '' : iconDef.type}\n style={style}\n size={iconSize}\n {...this.getTestProps('icon')}>\n {customIcon}\n </FontAwesome>);\n } else if (props.show && iconDef) {\n let WMCustomIcon = WavIcon as unknown;\n if (iconDef.isStreamlineLightIcon) {\n WMCustomIcon = StreamlineLightIcon;\n } else if (iconDef.isStreamlineRegularIcon) {\n WMCustomIcon = StreamlineRegularIcon;\n } else if (!iconDef.isWavIcon && !customIcon && !this.styles.icon?.fontFamily) {\n return null;\n }\n //@ts-ignore type information is not matching\n iconJsx = WMCustomIcon ? (<WMCustomIcon name={customIcon ? '' : iconDef.type}\n style={style}\n size={iconSize}\n {...this.getTestProps('icon')}>\n {customIcon}\n </WMCustomIcon>) : null;\n }\n if (iconJsx && iconDef.animation === 'spin') {\n const rotate = this.spinValue.interpolate({ inputRange: [0, 1], outputRange: ['0deg', '360deg']});\n const animation = { transform: [{ rotate }] };\n this.stopAnimation = false;\n return (<Animated.View style={animation}>{iconJsx}</Animated.View>);\n } else if (iconJsx && iconDef.animation === 'pulse') {\n const opacity = this.spinValue.interpolate({ inputRange: [0, 1], outputRange: [0, 1]});\n const animation = { opacity: opacity };\n this.stopAnimation = false;\n return (<Animated.View style={animation}>{iconJsx}</Animated.View>);\n } else {\n this.stopAnimation = true;\n }\n return (\n <View\n // {...getAccessibilityProps(AccessibilityWidgetType.ICON, this.props)}\n >\n {iconJsx}\n </View>\n );\n }\n\n renderWidget(props: WmIconProps) {\n let icon = this.renderIcon(props);\n let iterationCount: any = props.iterationcount ? (props.iterationcount != 'infinite' ? parseInt(props.iterationcount): 'infinite') : undefined;\n return (\n <Tappable \n target={this} \n rippleColor = {this.styles.root.rippleColor} \n {...this.getTestPropsForAction()} \n accessibilityProps={{...getAccessibilityProps(AccessibilityWidgetType.ICON, props)}} \n disableTouchEffect={this.state.props.disabletoucheffect}\n onLayout={(event: LayoutChangeEvent) => this.handleLayout(event)}\n >\n <Animatedview entryanimation={props.animation} delay={props.animationdelay} style={this.styles.root} iterationCount={iterationCount}>\n {this._background}\n {(props.iconposition === 'left' && icon) || null}\n {(props.caption && (<Text {...this.getTestPropsForLabel('caption')}style={this.styles.text} accessibilityRole={props?.accessibilityrole ? props?.accessibilityrole : 'text'}>{props.caption}</Text>)) || null}\n {(props.iconposition === 'right' && icon) || null}\n </Animatedview>\n </Tappable>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Animated","Easing","Text","Image","View","FontAwesome","BaseComponent","BaseComponentState","isFullPathUrl","AccessibilityWidgetType","getAccessibilityProps","WmIconProps","DEFAULT_CLASS","WavIcon","StreamlineLightIcon","StreamlineRegularIcon","Tappable","Animatedview","createSkeleton","ICON_SIZES","Map","ICON_ROTATTION","WmIconState","constructor","args","_defineProperty","WmIcon","props","Value","getIconDef","iconClass","iconDef","rotate","splits","split","isFontAwesome","find","v","isStreamlineLightIcon","isStreamlineRegularIcon","_splits$find","type","startsWith","substring","_splits$find2","_splits$find3","_splits$find4","isWavIcon","indexOf","animation","size","map","get","spin","stopAnimation","spinValue","setValue","timing","toValue","duration","easing","linear","useNativeDriver","start","componentDidMount","componentWillUnmount","onPropertyChange","name","$new","$old","updateState","getCustomIcon","style","_this$theme$getStyle","customIcon","theme","mergeStyle","getStyle","iconclass","icon","styles","customIconContent","content","createElement","fontFamily","decodeURIComponent","renderSkeleton","skeletonWidth","skeletonwidth","iconsize","root","width","skeletonHeight","skeletonheight","height","skeleton","getElementToShow","iconSrc","iconmargin","iconheight","iconwidth","elementToshow","source","uri","testID","getTestId","margin","loadIcon","iconImage","loadAsset","iconImageSrc","renderIcon","iconJsx","_iconSource","iconurl","state","text","color","transform","iconSize","fontSize","show","_extends","getTestProps","_this$styles$icon","WMCustomIcon","interpolate","inputRange","outputRange","opacity","renderWidget","iterationCount","iterationcount","parseInt","undefined","target","rippleColor","getTestPropsForAction","disableTouchEffect","disabletoucheffect","onLayout","event","handleLayout","entryanimation","delay","animationdelay","accessibilityProps","accessible","ICON","_background","iconposition","caption","getTestPropsForLabel","importantForAccessibility"],"sources":["icon.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Animated, DimensionValue, Easing, Text, Image, View, LayoutChangeEvent } from 'react-native';\nimport { FontAwesome } from '@expo/vector-icons';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nimport WmIconProps from './icon.props';\nimport { DEFAULT_CLASS, WmIconStyles } from './icon.styles';\nimport WavIcon from './wavicon/wavicon.component';\nimport StreamlineLightIcon from './streamline-light-icon/streamline-light-icon.component';\nimport StreamlineRegularIcon from './streamline-regular-icon/streamline-regular-icon.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport WmSkeleton, { createSkeleton } from '../skeleton/skeleton.component';\n\ninterface IconDef {\n isFontAwesome: boolean;\n isWavIcon: boolean;\n isStreamlineLightIcon: boolean;\n isStreamlineRegularIcon: boolean;\n type: string;\n rotate: string;\n size: number;\n animation: string;\n}\n\nconst ICON_SIZES = new Map([\n ['fa-lg', 24],\n ['fa-2x', 36],\n ['fa-3x', 48],\n ['fa-4x', 60],\n ['fa-5x', 72]\n]);\n\nconst ICON_ROTATTION = new Map([\n ['fa-rotate-90', '90deg'],\n ['fa-rotate-180', '180deg'],\n ['fa-rotate-270', '270deg']\n]);\n\nexport class WmIconState extends BaseComponentState<WmIconProps> {\n public iconDef = {} as IconDef;\n}\n\nexport default class WmIcon extends BaseComponent<WmIconProps, WmIconState, WmIconStyles> {\n spinValue = new Animated.Value(0);\n pulseValue = new Animated.Value(0);\n public stopAnimation = true;\n private _iconSource = null as any;\n\n constructor(props: WmIconProps) {\n super(props, DEFAULT_CLASS, new WmIconProps());\n }\n\n getIconDef(iconClass: string): IconDef {\n const iconDef = {\n rotate: '0'\n } as IconDef;\n const splits = iconClass.split(' ');\n iconDef.isFontAwesome = !!splits.find(v => v === 'fa');\n iconDef.isStreamlineLightIcon = !!splits.find(v => v === 'wm-sl-l');\n iconDef.isStreamlineRegularIcon = !!splits.find(v => v === 'wm-sl-r');\n if (iconDef.isFontAwesome) {\n iconDef.type = splits.find(v => v.startsWith('fa-'))?.substring(3) || '';\n } else if (iconDef.isStreamlineLightIcon) {\n iconDef.type = splits.find(v => v.startsWith('sl-'))?.substring(3) || '';\n } else if (iconDef.isStreamlineRegularIcon) {\n iconDef.type = splits.find(v => v.startsWith('sl-'))?.substring(3) || '';\n } else {\n iconDef.isWavIcon = !iconDef.isFontAwesome && !!splits.find(v => v === 'wi');\n iconDef.type = (iconDef.isWavIcon && splits.find(v => v.startsWith('wi-'))?.substring(3)) || '';\n }\n if (iconClass.indexOf('fa-spin') >= 0) {\n iconDef.animation = 'spin';\n } else if (iconClass.indexOf('fa-pulse') >= 0) {\n iconDef.animation = 'pulse';\n }\n iconDef.size = splits.map(v => ICON_SIZES.get(v)).find(v => !!v) || 12;\n iconDef.rotate = splits.map(v => ICON_ROTATTION.get(v)).find(v => !!v) || '0deg';\n return iconDef;\n }\n\n private spin () {\n if (this.stopAnimation) {\n return;\n }\n this.spinValue.setValue(0);\n Animated.timing(\n this.spinValue,\n {\n toValue: 1,\n duration: 1000,\n easing: Easing.linear,\n useNativeDriver: true\n }\n ).start(() => this.spin());\n }\n\n componentDidMount() {\n super.componentDidMount();\n this.spin();\n }\n\n componentWillUnmount(): void {\n super.componentWillUnmount();\n this.stopAnimation = true;\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case 'iconclass':\n $new && this.updateState({iconDef: this.getIconDef($new)} as WmIconState);\n break;\n }\n }\n\n private getCustomIcon(props: WmIconProps, style: any) {\n const customIcon = this.theme.mergeStyle({}, this.theme.getStyle(props?.iconclass || '')?.icon || this.styles.icon);\n const customIconContent = customIcon?.content;\n if (customIconContent) {\n delete customIcon.content;\n return (<Text\n style={[style, customIcon.fontFamily ? {fontFamily: customIcon.fontFamily}: null]}>\n {decodeURIComponent(customIconContent)}\n </Text>);\n }\n return null;\n }\n\n public renderSkeleton(props: WmIconProps) {\n let skeletonWidth = (this.props.skeletonwidth || this.props.iconsize || this.styles.root.width) as DimensionValue;\n let skeletonHeight = (this.props.skeletonheight || this.props.iconsize || this.styles.root.height) as DimensionValue\n\n if(this.props.skeletonheight == \"0\") {\n skeletonWidth = 0\n }\n \n if(this.props.skeletonheight == \"0\") {\n skeletonHeight = 0\n }\n \n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: skeletonWidth,\n height: skeletonHeight\n });\n }\n\n getElementToShow(props: WmIconProps, iconSrc: any) {\n\n const { iconmargin, iconheight, iconwidth } = props;\n let width, height;\n let elementToshow, source;\n\n if (iconwidth) width = iconwidth;\n else if (iconheight) width = iconheight;\n else width = 12;\n if (iconheight) height = iconheight;\n else if (iconwidth) height = iconwidth;\n else height = 12;\n\n if (isFullPathUrl(iconSrc)) {\n source = {\n uri: iconSrc\n };\n } else {\n source = iconSrc;\n }\n elementToshow = <Image testID={this.getTestId('icon')}\n style={{\n margin: iconmargin ?? 0,\n height: height,\n width: width\n }}\n source={source}/>;\n return elementToshow;\n }\n\n loadIcon(iconImage: string | undefined) {\n if (!iconImage || !this.loadAsset) {\n return null;\n }\n const iconImageSrc = this.loadAsset(iconImage);\n if (iconImageSrc && typeof iconImageSrc !== 'function') {\n return iconImageSrc;\n }\n return null;\n }\n\n renderIcon(props: WmIconProps) {\n let iconJsx = null;\n this._iconSource = this._iconSource || this.loadIcon(props.iconurl);\n const iconSrc: any = this._iconSource\n if (iconSrc) {\n return this.getElementToShow(props, iconSrc);\n }\n const iconDef = this.state.iconDef;\n if (!iconDef) {\n return null;\n }\n const { root, text, icon } = this.styles;\n const style = [{ color: root.color || text.color },\n icon,\n { transform: [{ rotate: iconDef.rotate }] }];\n\n const customIcon = this.getCustomIcon(props, style);\n const iconSize = props.iconsize || this.styles.root.fontSize || this.styles.text.fontSize || iconDef.size;\n if (props.show && iconDef && iconDef.isFontAwesome) {\n //@ts-ignore type information is not matching\n iconJsx = (<FontAwesome name={customIcon ? '' : iconDef.type}\n style={style}\n size={iconSize}\n {...this.getTestProps('icon')}>\n {customIcon}\n </FontAwesome>);\n } else if (props.show && iconDef) {\n let WMCustomIcon = WavIcon as unknown;\n if (iconDef.isStreamlineLightIcon) {\n WMCustomIcon = StreamlineLightIcon;\n } else if (iconDef.isStreamlineRegularIcon) {\n WMCustomIcon = StreamlineRegularIcon;\n } else if (!iconDef.isWavIcon && !customIcon && !this.styles.icon?.fontFamily) {\n return null;\n }\n //@ts-ignore type information is not matching\n iconJsx = WMCustomIcon ? (<WMCustomIcon name={customIcon ? '' : iconDef.type}\n style={style}\n size={iconSize}\n {...this.getTestProps('icon')}>\n {customIcon}\n </WMCustomIcon>) : null;\n }\n if (iconJsx && iconDef.animation === 'spin') {\n const rotate = this.spinValue.interpolate({ inputRange: [0, 1], outputRange: ['0deg', '360deg']});\n const animation = { transform: [{ rotate }] };\n this.stopAnimation = false;\n return (<Animated.View style={animation}>{iconJsx}</Animated.View>);\n } else if (iconJsx && iconDef.animation === 'pulse') {\n const opacity = this.spinValue.interpolate({ inputRange: [0, 1], outputRange: [0, 1]});\n const animation = { opacity: opacity };\n this.stopAnimation = false;\n return (<Animated.View style={animation}>{iconJsx}</Animated.View>);\n } else {\n this.stopAnimation = true;\n }\n return (\n <View\n // {...getAccessibilityProps(AccessibilityWidgetType.ICON, this.props)}\n >\n {iconJsx}\n </View>\n );\n }\n\n renderWidget(props: WmIconProps) {\n let icon = this.renderIcon(props);\n let iterationCount: any = props.iterationcount ? (props.iterationcount != 'infinite' ? parseInt(props.iterationcount): 'infinite') : undefined;\n return (\n <Tappable \n target={this} \n rippleColor = {this.styles.root.rippleColor} \n {...this.getTestPropsForAction()} \n disableTouchEffect={this.state.props.disabletoucheffect}\n onLayout={(event: LayoutChangeEvent) => this.handleLayout(event)}\n >\n <Animatedview entryanimation={props.animation} delay={props.animationdelay} style={this.styles.root} iterationCount={iterationCount} accessibilityProps={props.accessible ? {...getAccessibilityProps(AccessibilityWidgetType.ICON, props)} : {}}>\n {this._background}\n {(props.iconposition === 'left' && icon) || null}\n {(props.caption && (<Text {...this.getTestPropsForLabel('caption')} style={this.styles.text}\n importantForAccessibility=\"no\">{props.caption}\n </Text>)) || null}\n {(props.iconposition === 'right' && icon) || null}\n </Animatedview>\n </Tappable>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -19,6 +19,7 @@ export default class WmIconProps extends BaseProps {
19
19
  _defineProperty(this, "iconheight", null);
20
20
  _defineProperty(this, "iconwidth", null);
21
21
  _defineProperty(this, "iconmargin", null);
22
+ _defineProperty(this, "accessible", true);
22
23
  _defineProperty(this, "accessibilitylabel", undefined);
23
24
  _defineProperty(this, "hint", undefined);
24
25
  _defineProperty(this, "accessibilityrole", void 0);
@@ -1 +1 @@
1
- {"version":3,"names":["BaseProps","WmIconProps","constructor","args","_defineProperty","undefined"],"sources":["icon.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\nexport default class WmIconProps extends BaseProps {\n animation?: string = null as any;\n animationdelay?: number = null as any;\n iterationcount?: any;\n iconclass?: string = 'wm-sl-l sl-user';\n iconposition? = 'left';\n caption? = '';\n iconsize? = 0;\n onTap?: Function;\n skeletonheight?: string = null as any;\n skeletonwidth?: string = null as any;\n iconurl?: string = null as any;\n iconheight?: number = null as any;\n iconwidth?: number = null as any;\n iconmargin?: number = null as any;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,WAAW,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBAC5B,IAAI;IAAAA,eAAA,yBACC,IAAI;IAAAA,eAAA;IAAAA,eAAA,oBAET,iBAAiB;IAAAA,eAAA,uBACtB,MAAM;IAAAA,eAAA,kBACX,EAAE;IAAAA,eAAA,mBACD,CAAC;IAAAA,eAAA;IAAAA,eAAA,yBAEa,IAAI;IAAAA,eAAA,wBACL,IAAI;IAAAA,eAAA,kBACV,IAAI;IAAAA,eAAA,qBACD,IAAI;IAAAA,eAAA,oBACL,IAAI;IAAAA,eAAA,qBACH,IAAI;IAAAA,eAAA,6BACIC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA;EAAA;AAE3B","ignoreList":[]}
1
+ {"version":3,"names":["BaseProps","WmIconProps","constructor","args","_defineProperty","undefined"],"sources":["icon.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\nexport default class WmIconProps extends BaseProps {\n animation?: string = null as any;\n animationdelay?: number = null as any;\n iterationcount?: any;\n iconclass?: string = 'wm-sl-l sl-user';\n iconposition? = 'left';\n caption? = '';\n iconsize? = 0;\n onTap?: Function;\n skeletonheight?: string = null as any;\n skeletonwidth?: string = null as any;\n iconurl?: string = null as any;\n iconheight?: number = null as any;\n iconwidth?: number = null as any;\n iconmargin?: number = null as any;\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,WAAW,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBAC5B,IAAI;IAAAA,eAAA,yBACC,IAAI;IAAAA,eAAA;IAAAA,eAAA,oBAET,iBAAiB;IAAAA,eAAA,uBACtB,MAAM;IAAAA,eAAA,kBACX,EAAE;IAAAA,eAAA,mBACD,CAAC;IAAAA,eAAA;IAAAA,eAAA,yBAEa,IAAI;IAAAA,eAAA,wBACL,IAAI;IAAAA,eAAA,kBACV,IAAI;IAAAA,eAAA,qBACD,IAAI;IAAAA,eAAA,oBACL,IAAI;IAAAA,eAAA,qBACH,IAAI;IAAAA,eAAA,qBACH,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA;EAAA;AAE3B","ignoreList":[]}
@@ -19,7 +19,7 @@ export default class WmLabelProps extends BaseProps {
19
19
  _defineProperty(this, "hint", undefined);
20
20
  _defineProperty(this, "accessibilityrole", 'text');
21
21
  _defineProperty(this, "onTap", null);
22
- _defineProperty(this, "enableandroidellipsis", true);
22
+ _defineProperty(this, "enableandroidellipsis", false);
23
23
  }
24
24
  }
25
25
  //# sourceMappingURL=label.props.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BaseProps","WmLabelProps","constructor","args","_defineProperty","undefined"],"sources":["label.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\nexport default class WmLabelProps extends BaseProps {\n animation?: string = null as any;\n animationdelay?: number = null as any;\n caption?: string = 'Label';\n required?: boolean = null as any;\n isValid?: boolean = true;\n wrap?: boolean = true;\n nooflines?: any = undefined;\n skeletonheight?: string = null as any;\n skeletonwidth?: string = null as any;\n multilineskeleton?: boolean = false;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = 'text';\n onTap?: Function = null as any;\n enableandroidellipsis?: boolean = true;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,YAAY,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBAC3B,IAAI;IAAAA,eAAA,yBACC,IAAI;IAAAA,eAAA,kBACX,OAAO;IAAAA,eAAA,mBACL,IAAI;IAAAA,eAAA,kBACL,IAAI;IAAAA,eAAA,eACP,IAAI;IAAAA,eAAA,oBACHC,SAAS;IAAAD,eAAA,yBACD,IAAI;IAAAA,eAAA,wBACL,IAAI;IAAAA,eAAA,4BACC,KAAK;IAAAA,eAAA,6BACLC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA,4BACe,MAAM;IAAAA,eAAA,gBAC3B,IAAI;IAAAA,eAAA,gCACW,IAAI;EAAA;AAC1C","ignoreList":[]}
1
+ {"version":3,"names":["BaseProps","WmLabelProps","constructor","args","_defineProperty","undefined"],"sources":["label.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\nexport default class WmLabelProps extends BaseProps {\n animation?: string = null as any;\n animationdelay?: number = null as any;\n caption?: string = 'Label';\n required?: boolean = null as any;\n isValid?: boolean = true;\n wrap?: boolean = true;\n nooflines?: any = undefined;\n skeletonheight?: string = null as any;\n skeletonwidth?: string = null as any;\n multilineskeleton?: boolean = false;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = 'text';\n onTap?: Function = null as any;\n enableandroidellipsis?: boolean = false;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,YAAY,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBAC3B,IAAI;IAAAA,eAAA,yBACC,IAAI;IAAAA,eAAA,kBACX,OAAO;IAAAA,eAAA,mBACL,IAAI;IAAAA,eAAA,kBACL,IAAI;IAAAA,eAAA,eACP,IAAI;IAAAA,eAAA,oBACHC,SAAS;IAAAD,eAAA,yBACD,IAAI;IAAAA,eAAA,wBACL,IAAI;IAAAA,eAAA,4BACC,KAAK;IAAAA,eAAA,6BACLC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA,4BACe,MAAM;IAAAA,eAAA,gBAC3B,IAAI;IAAAA,eAAA,gCACW,KAAK;EAAA;AAC3C","ignoreList":[]}
@@ -175,7 +175,7 @@ export default class WmPicture extends BaseComponent {
175
175
  }],
176
176
  contentFit: props.resizemode,
177
177
  source: source
178
- }, getAccessibilityProps(AccessibilityWidgetType.PICTURE, props)));
178
+ }));
179
179
  }
180
180
  return elementToshow;
181
181
  }
@@ -284,7 +284,10 @@ export default class WmPicture extends BaseComponent {
284
284
  height: imageHeight,
285
285
  width: imageWidth,
286
286
  borderRadius: (_shapeStyles$picture4 = shapeStyles.picture) === null || _shapeStyles$picture4 === void 0 ? void 0 : _shapeStyles$picture4.borderRadius
287
- }]
287
+ }],
288
+ accessibilityProps: props.accessible ? {
289
+ ...getAccessibilityProps(AccessibilityWidgetType.PICTURE, props)
290
+ } : {}
288
291
  }, this.showImage(elementToshow, props))))) : null;
289
292
  }
290
293
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","Image","View","EXPOImage","isNumber","Tappable","BaseComponent","BaseComponentState","ImageSizeEstimator","isFullPathUrl","AccessibilityWidgetType","getAccessibilityProps","WmPictureProps","DEFAULT_CLASS","Animatedview","createSkeleton","WmPictureState","constructor","args","_defineProperty","WmPicture","props","e","_this$styles","_this$styles2","_this$styles3","imageWidth","nativeEvent","layout","width","imageHeight","height","styles","root","includes","state","aspectratio","parseFloat","naturalImageHeight","naturalImageWidth","updateState","originalContainerWidth","originalContainerHeight","imageElement","loadImage","image","loadAsset","imageSrc","default","resolveAssetSource","cancel","getSize","cleanup","splice","indexOf","picturesource","_cleanupTracker","push","componentDidUpdate","prevProps","prevState","snapshot","forEach","func","onPropertyChange","name","$new","$old","_pictureSource","_picturePlaceHolder","createShape","shape","picture","borderRadius","theme","getStyle","getElementToShow","imgSrc","shapeStyles","elementToshow","source","imgStyle","resizemode","createElement","uri","_extends","cachePolicy","getTestProps","style","fastload","opacity","contentFit","PICTURE","renderSkeleton","_this$styles$root","_shapeStyles$root","_shapeStyles$picture","_this$styles$root2","_shapeStyles$root2","_shapeStyles$picture2","_this$styles$root3","_shapeStyles$picture3","_shapeStyles$root3","_this$styles$root4","skeletonWidth","skeletonwidth","skeletonHeight","skeletonheight","skeleton","calculateBasedOnaspectratio","calculateBasedOnNaturalDimensions","widthAndHeightExistsInProps","renderWidget","_shapeStyles$picture4","aspectDimensions","naturalDimensions","dimensions","pictureplaceholder","isSvg","onLayout","event","handleLayout","_background","overflow","onViewLayoutChange","disableTouchEffect","disabletoucheffect","getTestPropsForAction","rippleColor","target","entryanimation","animation","delay","animationdelay","showImage"],"sources":["picture.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, Image, LayoutChangeEvent, View } from 'react-native';\nimport {Image as EXPOImage} from 'expo-image';\nimport { isNumber } from 'lodash-es';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport ImageSizeEstimator from '@wavemaker/app-rn-runtime/core/imageSizeEstimator';\nimport { isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nimport WmPictureProps from './picture.props';\nimport { DEFAULT_CLASS, WmPictureStyles } from './picture.styles';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport WmSkeleton, { createSkeleton } from '../skeleton/skeleton.component';\n\nexport class WmPictureState extends BaseComponentState<WmPictureProps> {\n naturalImageWidth: number = 0;\n naturalImageHeight: number = 0;\n imageWidth: number = 0;\n imageHeight: number = 0;\n originalContainerWidth: number = 0;\n originalContainerHeight: number = 0;\n}\n\nexport default class WmPicture extends BaseComponent<WmPictureProps, WmPictureState, WmPictureStyles> {\n\n private _pictureSource = null as any;\n private _picturePlaceHolder = null as any;\n\n // The below property will be used to track and remove the calculateImageSize listenrs of individual picturesource\n private _cleanupTracker = {} as any\n\n constructor(props: WmPictureProps) {\n super(props, DEFAULT_CLASS, new WmPictureProps());\n }\n\n loadImage(image: string | undefined) {\n if (!image || !this.loadAsset) {\n return null;\n }\n const imageSrc = this.loadAsset(image) as any;\n if (imageSrc && typeof imageSrc === 'object' && typeof imageSrc.default === 'function') {\n return null;\n }\n // if(this.state.props.aspectratio) {\n // return imageSrc;\n // }\n if (isNumber(imageSrc)) {\n const {width, height} = Image.resolveAssetSource(imageSrc);\n this.updateState({\n naturalImageWidth: width,\n naturalImageHeight: height\n } as WmPictureState);\n } else if (imageSrc !== null) {\n const cancel = ImageSizeEstimator.getSize(imageSrc, (width: number, height: number) => {\n this.updateState({\n naturalImageWidth: width,\n naturalImageHeight: height\n } as WmPictureState);\n this.cleanup.splice(this.cleanup.indexOf(cancel), 1);\n });\n if(this.props.picturesource && this._cleanupTracker[this.props.picturesource]) {\n this._cleanupTracker[this.props.picturesource].push(cancel)\n } else if(this.props.picturesource && !this._cleanupTracker[this.props.picturesource]) {\n this._cleanupTracker[this.props.picturesource] = [];\n this._cleanupTracker[this.props.picturesource].push(cancel)\n }\n this.cleanup.push(cancel);\n }\n return imageSrc;\n }\n\n // Check if the image source prop is changed from previous update to remove all listeners\n componentDidUpdate(prevProps: Readonly<WmPictureProps>, prevState: Readonly<WmPictureState>, snapshot?: any): void {\n if(this.state.props.picturesource !== prevProps.picturesource) {\n if(prevProps.picturesource && this._cleanupTracker[prevProps.picturesource]) {\n this._cleanupTracker[prevProps.picturesource].forEach((func: any) => {\n func();\n }); \n this._cleanupTracker[prevProps.picturesource] = []\n delete this._cleanupTracker[prevProps.picturesource] \n }\n }\n super.componentDidUpdate(prevProps, prevState)\n }\n\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch(name) {\n case 'picturesource':\n this._pictureSource = null;\n case 'pictureplaceholder':\n this._picturePlaceHolder = null;\n break;\n }\n }\n\n onViewLayoutChange = (e: LayoutChangeEvent) => {\n let imageWidth = e.nativeEvent.layout.width;\n let imageHeight = e.nativeEvent.layout.height;\n if (!imageWidth && !imageHeight) {\n return;\n }\n if (!this.styles?.root.height\n || (typeof this.styles?.root.height === 'string'\n && !this.styles?.root.height.includes('%'))) {\n imageHeight = 0;\n }\n if(this.state.props.aspectratio && !imageHeight && imageWidth) {\n imageHeight = imageWidth / parseFloat(this.state.props.aspectratio as string)\n } else if (this.state.props.aspectratio && !imageWidth && imageHeight) {\n imageWidth = imageWidth * parseFloat(this.state.props.aspectratio as string)\n } else if (imageWidth && !imageHeight) {\n imageHeight = imageWidth * this.state.naturalImageHeight / this.state.naturalImageWidth;\n } else if (imageHeight && !imageWidth) {\n imageWidth = imageHeight * this.state.naturalImageWidth / this.state.naturalImageHeight;\n }\n this.updateState({\n imageWidth: imageWidth,\n imageHeight: imageHeight,\n originalContainerWidth: this.styles.root.width ? e.nativeEvent.layout.width : 0,\n originalContainerHeight: this.styles.root.height ? e.nativeEvent.layout.height: 0\n } as WmPictureState);\n };\n\n createShape(shape: string | undefined, imageWidth?: number | string): WmPictureStyles {\n if (shape) {\n switch(shape) {\n case 'circle':\n return {\n picture: {\n borderRadius: isNumber(imageWidth) ? imageWidth / 2 : 4\n }\n } as WmPictureStyles;\n case 'rounded' :\n return (this.theme.getStyle('rounded-image') as WmPictureStyles);\n case 'thumbnail' :\n return (this.theme.getStyle('thumbnail-image') as WmPictureStyles);\n }\n }\n return {} as WmPictureStyles;\n }\n\n getElementToShow(props: WmPictureProps, imgSrc: any, shapeStyles: WmPictureStyles) {\n let elementToshow, source;\n if (imgSrc && typeof imgSrc === 'object' && typeof imgSrc?.default === 'function') {\n let imgStyle : any = {};\n if (props.resizemode === 'contain') {\n imgStyle['width'] = '100%';\n imgStyle['height'] = '100%';\n }\n elementToshow = React.createElement(imgSrc?.default, imgStyle);\n //} else if (!isWebPreviewMode() && props.isSvg) {\n // svg from uri\n // elementToshow = <SvgUri testID={this.getTestId('picture')} width={this.styles.root.width as NumberProp} height={this.styles.root.height as NumberProp} uri={imgSrc}/>;\n } else if (isFullPathUrl(imgSrc)) {\n source = {\n uri: imgSrc\n };\n } else {\n source = imgSrc;\n }\n if (this.state.naturalImageWidth || this.state.props.aspectratio) {\n elementToshow = (\n // * INFO: if any issue arises like freezing of application because of \n // * rendering large number of images, check the cache policy.\n <EXPOImage\n cachePolicy='memory' \n {...this.getTestProps('picture')}\n style={[this.styles.picture, shapeStyles.picture, (props.fastload || this.state.imageWidth) ? {opacity: 1} : {opacity: 0} ]}\n contentFit={props.resizemode}\n source={source}\n {...getAccessibilityProps(AccessibilityWidgetType.PICTURE, props)}\n />\n );\n }\n return elementToshow;\n }\n\n public renderSkeleton(props: WmPictureProps){\n const imageWidth = this.state.imageWidth;\n const imageHeight = this.state.imageHeight;\n const shapeStyles = this.createShape(this.props.shape, imageWidth);\n const skeletonWidth = this.props.skeletonwidth || this.styles.root?.width || shapeStyles.root?.width || shapeStyles.picture?.width || imageWidth;\n const skeletonHeight = this.props.skeletonheight || this.styles.root?.height || shapeStyles.root?.height || shapeStyles.picture?.height || imageHeight;\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n borderRadius: this.props.shape == 'circle' && this.styles.root?.width ? 25 : shapeStyles.picture?.borderRadius || shapeStyles.root?.borderRadius || this.styles.root?.borderRadius || 4,\n width: skeletonWidth as DimensionValue,\n height: skeletonHeight as DimensionValue\n });\n }\n\n showImage = (imageElement: any, props: WmPictureProps) => {\n return imageElement;\n }\n\n\n //TODO: remove the re calculation logic later. Keeping it as an extra safety. \n calculateBasedOnaspectratio(): {imageWidth: number, imageHeight: number} | null {\n if(this.state.props.aspectratio) {\n if(this.state.originalContainerWidth) {\n return {\n imageHeight: this.state.originalContainerWidth / parseFloat(this.state.props.aspectratio as string),\n imageWidth: this.state.originalContainerWidth\n }\n } else if(this.state.originalContainerHeight) {\n return {\n imageHeight: this.state.originalContainerHeight, \n imageWidth: this.state.originalContainerHeight * parseFloat(this.state.props.aspectratio as string),\n }\n }\n }\n return null\n }\n \n //TODO: remove the re calculation logic later. Keeping it as an extra safety. \n calculateBasedOnNaturalDimensions(): {imageWidth: number, imageHeight: number} | null {\n // No need to calculate width & height if the user already passign them explicitly from props. \n const widthAndHeightExistsInProps = this.styles.root.width && this.styles.root.height\n if(!this.state.props.aspectratio && !widthAndHeightExistsInProps) {\n if(this.state.originalContainerWidth) {\n return {\n imageHeight: this.state.originalContainerWidth * this.state.naturalImageHeight / this.state.naturalImageWidth,\n imageWidth: this.state.originalContainerWidth\n }\n } else if(this.state.originalContainerHeight) {\n return {\n imageHeight: this.state.originalContainerHeight, \n imageWidth: this.state.originalContainerHeight * this.state.naturalImageWidth / this.state.naturalImageHeight\n }\n }\n }\n return null\n }\n \n\n renderWidget(props: WmPictureProps) {\n let imageWidth = this.state.imageWidth;\n let imageHeight = this.state.imageHeight;\n\n\n //TODO: remove the re calculation logic later. Keeping it as an extra safety. \n const aspectDimensions = this.calculateBasedOnaspectratio();\n const naturalDimensions = this.calculateBasedOnNaturalDimensions();\n if(aspectDimensions) {\n const dimensions = aspectDimensions as {imageWidth: number, imageHeight: number}\n imageWidth = dimensions.imageWidth;\n imageHeight = dimensions.imageHeight\n } else if(naturalDimensions) {\n const dimensions = naturalDimensions as {imageWidth: number, imageHeight: number}\n imageHeight = dimensions.imageHeight\n imageWidth = dimensions.imageWidth\n }\n const shapeStyles = this.createShape(props.shape, imageWidth);\n this._pictureSource = this._pictureSource || this.loadImage(props.picturesource);\n this._picturePlaceHolder = props.fastload ? \n (this._pictureSource || this._picturePlaceHolder || this.loadImage(props.pictureplaceholder)) :\n (this._picturePlaceHolder || this.loadImage(props.pictureplaceholder));\n const imgSrc: any = this._pictureSource || this._picturePlaceHolder;\n let elementToshow;\n if (imgSrc) {\n elementToshow = this.getElementToShow(props, imgSrc, shapeStyles);\n }\n return imgSrc && (this.state.naturalImageWidth || props.isSvg || props.aspectratio) ? (\n <View \n style={[{\n width: imageWidth,\n height: imageHeight\n }, this.styles.root, shapeStyles.root, shapeStyles.picture]}\n onLayout={(event) => this.handleLayout(event)}\n >\n {this._background}\n <View style={[{overflow: 'hidden', width: '100%',\n height: '100%'}]} onLayout={this.onViewLayoutChange}>\n <Tappable\n disableTouchEffect={this.state.props.disabletoucheffect}\n {...this.getTestPropsForAction()}\n rippleColor={this.styles.root.rippleColor}\n target={this} styles={{width: imageWidth ? null : '100%', height: imageHeight ? null : '100%'}}>\n <Animatedview entryanimation={props.animation} delay={props.animationdelay} style={[{\n height: imageHeight,\n width: imageWidth,\n borderRadius: shapeStyles.picture?.borderRadius\n }]}>\n {this.showImage(elementToshow, props)}\n </Animatedview>\n </Tappable>\n </View>\n </View>\n ): null;\n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAA0BC,KAAK,EAAqBC,IAAI,QAAQ,cAAc;AAC9E,SAAQD,KAAK,IAAIE,SAAS,QAAO,YAAY;AAC7C,SAASC,QAAQ,QAAQ,WAAW;AACpC,SAASC,QAAQ,QAAQ,mDAAmD;AAC5E,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AACjG,OAAOC,kBAAkB,MAAM,mDAAmD;AAClF,SAASC,aAAa,QAAQ,sCAAsC;AACpE,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,8CAA8C;AAE7G,OAAOC,cAAc,MAAM,iBAAiB;AAC5C,SAASC,aAAa,QAAyB,kBAAkB;AACjE,SAASC,YAAY,QAAQ,mEAAmE;AAChG,SAAqBC,cAAc,QAAQ,gCAAgC;AAE3E,OAAO,MAAMC,cAAc,SAAST,kBAAkB,CAAiB;EAAAU,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,4BACzC,CAAC;IAAAA,eAAA,6BACA,CAAC;IAAAA,eAAA,qBACT,CAAC;IAAAA,eAAA,sBACA,CAAC;IAAAA,eAAA,iCACU,CAAC;IAAAA,eAAA,kCACA,CAAC;EAAA;AACrC;AAEA,eAAe,MAAMC,SAAS,SAASd,aAAa,CAAkD;EAQpGW,WAAWA,CAACI,KAAqB,EAAE;IACjC,KAAK,CAACA,KAAK,EAAER,aAAa,EAAE,IAAID,cAAc,CAAC,CAAC,CAAC;IAACO,eAAA,yBAP3B,IAAI;IAAAA,eAAA,8BACC,IAAI;IAElC;IAAAA,eAAA,0BAC0B,CAAC,CAAC;IAAAA,eAAA,6BAmENG,CAAoB,IAAK;MAAA,IAAAC,YAAA,EAAAC,aAAA,EAAAC,aAAA;MAC7C,IAAIC,UAAU,GAAGJ,CAAC,CAACK,WAAW,CAACC,MAAM,CAACC,KAAK;MAC3C,IAAIC,WAAW,GAAGR,CAAC,CAACK,WAAW,CAACC,MAAM,CAACG,MAAM;MAC7C,IAAI,CAACL,UAAU,IAAI,CAACI,WAAW,EAAE;QAC/B;MACF;MACA,IAAI,GAAAP,YAAA,GAAC,IAAI,CAACS,MAAM,cAAAT,YAAA,eAAXA,YAAA,CAAaU,IAAI,CAACF,MAAM,KACrB,SAAAP,aAAA,GAAO,IAAI,CAACQ,MAAM,cAAAR,aAAA,uBAAXA,aAAA,CAAaS,IAAI,CAACF,MAAM,MAAK,QAAQ,IAC3C,GAAAN,aAAA,GAAC,IAAI,CAACO,MAAM,cAAAP,aAAA,eAAXA,aAAA,CAAaQ,IAAI,CAACF,MAAM,CAACG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE;QAC/CJ,WAAW,GAAG,CAAC;MACnB;MACA,IAAG,IAAI,CAACK,KAAK,CAACd,KAAK,CAACe,WAAW,IAAI,CAACN,WAAW,IAAIJ,UAAU,EAAE;QAC7DI,WAAW,GAAGJ,UAAU,GAAGW,UAAU,CAAC,IAAI,CAACF,KAAK,CAACd,KAAK,CAACe,WAAqB,CAAC;MAC/E,CAAC,MAAM,IAAI,IAAI,CAACD,KAAK,CAACd,KAAK,CAACe,WAAW,IAAI,CAACV,UAAU,IAAII,WAAW,EAAE;QACrEJ,UAAU,GAAGA,UAAU,GAAGW,UAAU,CAAC,IAAI,CAACF,KAAK,CAACd,KAAK,CAACe,WAAqB,CAAC;MAC9E,CAAC,MAAM,IAAIV,UAAU,IAAI,CAACI,WAAW,EAAE;QACrCA,WAAW,GAAGJ,UAAU,GAAG,IAAI,CAACS,KAAK,CAACG,kBAAkB,GAAG,IAAI,CAACH,KAAK,CAACI,iBAAiB;MACzF,CAAC,MAAM,IAAIT,WAAW,IAAI,CAACJ,UAAU,EAAE;QACrCA,UAAU,GAAGI,WAAW,GAAG,IAAI,CAACK,KAAK,CAACI,iBAAiB,GAAG,IAAI,CAACJ,KAAK,CAACG,kBAAkB;MACzF;MACA,IAAI,CAACE,WAAW,CAAC;QACfd,UAAU,EAAEA,UAAU;QACtBI,WAAW,EAAEA,WAAW;QACxBW,sBAAsB,EAAE,IAAI,CAACT,MAAM,CAACC,IAAI,CAACJ,KAAK,GAAGP,CAAC,CAACK,WAAW,CAACC,MAAM,CAACC,KAAK,GAAG,CAAC;QAC/Ea,uBAAuB,EAAE,IAAI,CAACV,MAAM,CAACC,IAAI,CAACF,MAAM,GAAGT,CAAC,CAACK,WAAW,CAACC,MAAM,CAACG,MAAM,GAAE;MAClF,CAAmB,CAAC;IACtB,CAAC;IAAAZ,eAAA,oBAsEW,CAACwB,YAAiB,EAAEtB,KAAqB,KAAK;MACxD,OAAOsB,YAAY;IACrB,CAAC;EAjKD;EAEAC,SAASA,CAACC,KAAyB,EAAE;IACnC,IAAI,CAACA,KAAK,IAAI,CAAC,IAAI,CAACC,SAAS,EAAE;MAC7B,OAAO,IAAI;IACb;IACA,MAAMC,QAAQ,GAAG,IAAI,CAACD,SAAS,CAACD,KAAK,CAAQ;IAC7C,IAAIE,QAAQ,IAAI,OAAOA,QAAQ,KAAK,QAAQ,IAAI,OAAOA,QAAQ,CAACC,OAAO,KAAK,UAAU,EAAE;MACtF,OAAO,IAAI;IACb;IACA;IACA;IACA;IACA,IAAI5C,QAAQ,CAAC2C,QAAQ,CAAC,EAAE;MACtB,MAAM;QAAClB,KAAK;QAAEE;MAAM,CAAC,GAAG9B,KAAK,CAACgD,kBAAkB,CAACF,QAAQ,CAAC;MAC1D,IAAI,CAACP,WAAW,CAAC;QACfD,iBAAiB,EAAEV,KAAK;QACxBS,kBAAkB,EAAEP;MACtB,CAAmB,CAAC;IACtB,CAAC,MAAM,IAAIgB,QAAQ,KAAK,IAAI,EAAE;MAC5B,MAAMG,MAAM,GAAG1C,kBAAkB,CAAC2C,OAAO,CAACJ,QAAQ,EAAE,CAAClB,KAAa,EAAEE,MAAc,KAAK;QACrF,IAAI,CAACS,WAAW,CAAC;UACfD,iBAAiB,EAAEV,KAAK;UACxBS,kBAAkB,EAAEP;QACtB,CAAmB,CAAC;QACpB,IAAI,CAACqB,OAAO,CAACC,MAAM,CAAC,IAAI,CAACD,OAAO,CAACE,OAAO,CAACJ,MAAM,CAAC,EAAE,CAAC,CAAC;MACtD,CAAC,CAAC;MACF,IAAG,IAAI,CAAC7B,KAAK,CAACkC,aAAa,IAAI,IAAI,CAACC,eAAe,CAAC,IAAI,CAACnC,KAAK,CAACkC,aAAa,CAAC,EAAE;QAC7E,IAAI,CAACC,eAAe,CAAC,IAAI,CAACnC,KAAK,CAACkC,aAAa,CAAC,CAACE,IAAI,CAACP,MAAM,CAAC;MAC7D,CAAC,MAAM,IAAG,IAAI,CAAC7B,KAAK,CAACkC,aAAa,IAAI,CAAC,IAAI,CAACC,eAAe,CAAC,IAAI,CAACnC,KAAK,CAACkC,aAAa,CAAC,EAAE;QACrF,IAAI,CAACC,eAAe,CAAC,IAAI,CAACnC,KAAK,CAACkC,aAAa,CAAC,GAAG,EAAE;QACnD,IAAI,CAACC,eAAe,CAAC,IAAI,CAACnC,KAAK,CAACkC,aAAa,CAAC,CAACE,IAAI,CAACP,MAAM,CAAC;MAC7D;MACA,IAAI,CAACE,OAAO,CAACK,IAAI,CAACP,MAAM,CAAC;IAC3B;IACA,OAAOH,QAAQ;EACjB;;EAEE;EACFW,kBAAkBA,CAACC,SAAmC,EAAEC,SAAmC,EAAEC,QAAc,EAAQ;IACjH,IAAG,IAAI,CAAC1B,KAAK,CAACd,KAAK,CAACkC,aAAa,KAAKI,SAAS,CAACJ,aAAa,EAAE;MAC7D,IAAGI,SAAS,CAACJ,aAAa,IAAI,IAAI,CAACC,eAAe,CAACG,SAAS,CAACJ,aAAa,CAAC,EAAE;QAC3E,IAAI,CAACC,eAAe,CAACG,SAAS,CAACJ,aAAa,CAAC,CAACO,OAAO,CAAEC,IAAS,IAAK;UACnEA,IAAI,CAAC,CAAC;QACR,CAAC,CAAC;QACF,IAAI,CAACP,eAAe,CAACG,SAAS,CAACJ,aAAa,CAAC,GAAG,EAAE;QAClD,OAAO,IAAI,CAACC,eAAe,CAACG,SAAS,CAACJ,aAAa,CAAC;MACtD;IACF;IACA,KAAK,CAACG,kBAAkB,CAACC,SAAS,EAAEC,SAAS,CAAC;EAChD;EAGAI,gBAAgBA,CAACC,IAAY,EAAEC,IAAS,EAAEC,IAAS,EAAE;IACnD,QAAOF,IAAI;MACT,KAAK,eAAe;QAClB,IAAI,CAACG,cAAc,GAAG,IAAI;MAC5B,KAAK,oBAAoB;QACvB,IAAI,CAACC,mBAAmB,GAAG,IAAI;QAC/B;IACJ;EACF;EA8BAC,WAAWA,CAACC,KAAyB,EAAE7C,UAA4B,EAAmB;IACpF,IAAI6C,KAAK,EAAE;MACT,QAAOA,KAAK;QACV,KAAK,QAAQ;UACX,OAAO;YACLC,OAAO,EAAE;cACPC,YAAY,EAAErE,QAAQ,CAACsB,UAAU,CAAC,GAAGA,UAAU,GAAG,CAAC,GAAG;YACxD;UACF,CAAC;QACH,KAAK,SAAS;UACZ,OAAQ,IAAI,CAACgD,KAAK,CAACC,QAAQ,CAAC,eAAe,CAAC;QAC9C,KAAK,WAAW;UACd,OAAQ,IAAI,CAACD,KAAK,CAACC,QAAQ,CAAC,iBAAiB,CAAC;MAClD;IACF;IACA,OAAO,CAAC,CAAC;EACX;EAEAC,gBAAgBA,CAACvD,KAAqB,EAAEwD,MAAW,EAAEC,WAA4B,EAAE;IACjF,IAAIC,aAAa,EAAEC,MAAM;IACzB,IAAIH,MAAM,IAAI,OAAOA,MAAM,KAAK,QAAQ,IAAI,QAAOA,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAE7B,OAAO,MAAK,UAAU,EAAE;MACjF,IAAIiC,QAAc,GAAG,CAAC,CAAC;MACvB,IAAI5D,KAAK,CAAC6D,UAAU,KAAK,SAAS,EAAE;QAClCD,QAAQ,CAAC,OAAO,CAAC,GAAG,MAAM;QAC1BA,QAAQ,CAAC,QAAQ,CAAC,GAAG,MAAM;MAC7B;MACAF,aAAa,gBAAG/E,KAAK,CAACmF,aAAa,CAACN,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAE7B,OAAO,EAAEiC,QAAQ,CAAC;MAChE;MACA;MACA;IACA,CAAC,MAAM,IAAIxE,aAAa,CAACoE,MAAM,CAAC,EAAE;MAChCG,MAAM,GAAG;QACPI,GAAG,EAAEP;MACP,CAAC;IACH,CAAC,MAAM;MACLG,MAAM,GAAGH,MAAM;IACjB;IACA,IAAI,IAAI,CAAC1C,KAAK,CAACI,iBAAiB,IAAI,IAAI,CAACJ,KAAK,CAACd,KAAK,CAACe,WAAW,EAAE;MAChE2C,aAAa;MAAA;MACX;MACA;MACA/E,KAAA,CAAAmF,aAAA,CAAChF,SAAS,EAAAkF,QAAA;QACRC,WAAW,EAAC;MAAQ,GAChB,IAAI,CAACC,YAAY,CAAC,SAAS,CAAC;QAChCC,KAAK,EAAE,CAAC,IAAI,CAACxD,MAAM,CAACwC,OAAO,EAAEM,WAAW,CAACN,OAAO,EAAGnD,KAAK,CAACoE,QAAQ,IAAI,IAAI,CAACtD,KAAK,CAACT,UAAU,GAAI;UAACgE,OAAO,EAAE;QAAC,CAAC,GAAG;UAACA,OAAO,EAAE;QAAC,CAAC,CAAG;QAC5HC,UAAU,EAAEtE,KAAK,CAAC6D,UAAW;QAC7BF,MAAM,EAAEA;MAAO,GACXrE,qBAAqB,CAACD,uBAAuB,CAACkF,OAAO,EAAEvE,KAAK,CAAC,CAClE,CACF;IACH;IACA,OAAO0D,aAAa;EACtB;EAEOc,cAAcA,CAACxE,KAAqB,EAAC;IAAA,IAAAyE,iBAAA,EAAAC,iBAAA,EAAAC,oBAAA,EAAAC,kBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,kBAAA;IAC1C,MAAM7E,UAAU,GAAG,IAAI,CAACS,KAAK,CAACT,UAAU;IACxC,MAAMI,WAAW,GAAG,IAAI,CAACK,KAAK,CAACL,WAAW;IAC1C,MAAMgD,WAAW,GAAG,IAAI,CAACR,WAAW,CAAC,IAAI,CAACjD,KAAK,CAACkD,KAAK,EAAE7C,UAAU,CAAC;IAClE,MAAM8E,aAAa,GAAG,IAAI,CAACnF,KAAK,CAACoF,aAAa,MAAAX,iBAAA,GAAI,IAAI,CAAC9D,MAAM,CAACC,IAAI,cAAA6D,iBAAA,uBAAhBA,iBAAA,CAAkBjE,KAAK,OAAAkE,iBAAA,GAAIjB,WAAW,CAAC7C,IAAI,cAAA8D,iBAAA,uBAAhBA,iBAAA,CAAkBlE,KAAK,OAAAmE,oBAAA,GAAIlB,WAAW,CAACN,OAAO,cAAAwB,oBAAA,uBAAnBA,oBAAA,CAAqBnE,KAAK,KAAIH,UAAU;IAChJ,MAAMgF,cAAc,GAAG,IAAI,CAACrF,KAAK,CAACsF,cAAc,MAAAV,kBAAA,GAAI,IAAI,CAACjE,MAAM,CAACC,IAAI,cAAAgE,kBAAA,uBAAhBA,kBAAA,CAAkBlE,MAAM,OAAAmE,kBAAA,GAAIpB,WAAW,CAAC7C,IAAI,cAAAiE,kBAAA,uBAAhBA,kBAAA,CAAkBnE,MAAM,OAAAoE,qBAAA,GAAIrB,WAAW,CAACN,OAAO,cAAA2B,qBAAA,uBAAnBA,qBAAA,CAAqBpE,MAAM,KAAID,WAAW;IACtJ,OAAOf,cAAc,CAAC,IAAI,CAAC2D,KAAK,EAAE,IAAI,CAAC1C,MAAM,CAAC4E,QAAQ,EAAE;MACtD,GAAG,IAAI,CAAC5E,MAAM,CAACC,IAAI;MACnBwC,YAAY,EAAG,IAAI,CAACpD,KAAK,CAACkD,KAAK,IAAI,QAAQ,KAAA6B,kBAAA,GAAI,IAAI,CAACpE,MAAM,CAACC,IAAI,cAAAmE,kBAAA,eAAhBA,kBAAA,CAAkBvE,KAAK,GAAG,EAAE,GAAG,EAAAwE,qBAAA,GAAAvB,WAAW,CAACN,OAAO,cAAA6B,qBAAA,uBAAnBA,qBAAA,CAAqB5B,YAAY,OAAA6B,kBAAA,GAAIxB,WAAW,CAAC7C,IAAI,cAAAqE,kBAAA,uBAAhBA,kBAAA,CAAkB7B,YAAY,OAAA8B,kBAAA,GAAI,IAAI,CAACvE,MAAM,CAACC,IAAI,cAAAsE,kBAAA,uBAAhBA,kBAAA,CAAkB9B,YAAY,KAAI,CAAC;MACxL5C,KAAK,EAAE2E,aAA+B;MACtCzE,MAAM,EAAE2E;IACV,CAAC,CAAC;EACJ;EAOE;EACAG,2BAA2BA,CAAA,EAAsD;IAC/E,IAAG,IAAI,CAAC1E,KAAK,CAACd,KAAK,CAACe,WAAW,EAAE;MAC/B,IAAG,IAAI,CAACD,KAAK,CAACM,sBAAsB,EAAE;QACpC,OAAO;UACLX,WAAW,EAAE,IAAI,CAACK,KAAK,CAACM,sBAAsB,GAAGJ,UAAU,CAAC,IAAI,CAACF,KAAK,CAACd,KAAK,CAACe,WAAqB,CAAC;UACnGV,UAAU,EAAE,IAAI,CAACS,KAAK,CAACM;QACzB,CAAC;MACH,CAAC,MAAM,IAAG,IAAI,CAACN,KAAK,CAACO,uBAAuB,EAAE;QAC5C,OAAO;UACLZ,WAAW,EAAE,IAAI,CAACK,KAAK,CAACO,uBAAuB;UAC/ChB,UAAU,EAAE,IAAI,CAACS,KAAK,CAACO,uBAAuB,GAAGL,UAAU,CAAC,IAAI,CAACF,KAAK,CAACd,KAAK,CAACe,WAAqB;QACpG,CAAC;MACH;IACF;IACA,OAAO,IAAI;EACb;;EAEA;EACA0E,iCAAiCA,CAAA,EAAqD;IACpF;IACA,MAAMC,2BAA2B,GAAG,IAAI,CAAC/E,MAAM,CAACC,IAAI,CAACJ,KAAK,IAAI,IAAI,CAACG,MAAM,CAACC,IAAI,CAACF,MAAM;IACrF,IAAG,CAAC,IAAI,CAACI,KAAK,CAACd,KAAK,CAACe,WAAW,IAAI,CAAC2E,2BAA2B,EAAE;MAChE,IAAG,IAAI,CAAC5E,KAAK,CAACM,sBAAsB,EAAE;QACpC,OAAO;UACLX,WAAW,EAAE,IAAI,CAACK,KAAK,CAACM,sBAAsB,GAAG,IAAI,CAACN,KAAK,CAACG,kBAAkB,GAAG,IAAI,CAACH,KAAK,CAACI,iBAAiB;UAC7Gb,UAAU,EAAE,IAAI,CAACS,KAAK,CAACM;QACzB,CAAC;MACH,CAAC,MAAM,IAAG,IAAI,CAACN,KAAK,CAACO,uBAAuB,EAAE;QAC5C,OAAO;UACLZ,WAAW,EAAE,IAAI,CAACK,KAAK,CAACO,uBAAuB;UAC/ChB,UAAU,EAAE,IAAI,CAACS,KAAK,CAACO,uBAAuB,GAAG,IAAI,CAACP,KAAK,CAACI,iBAAiB,GAAG,IAAI,CAACJ,KAAK,CAACG;QAC7F,CAAC;MACH;IACF;IACA,OAAO,IAAI;EACb;EAGF0E,YAAYA,CAAC3F,KAAqB,EAAE;IAAA,IAAA4F,qBAAA;IAClC,IAAIvF,UAAU,GAAG,IAAI,CAACS,KAAK,CAACT,UAAU;IACtC,IAAII,WAAW,GAAG,IAAI,CAACK,KAAK,CAACL,WAAW;;IAGxC;IACA,MAAMoF,gBAAgB,GAAG,IAAI,CAACL,2BAA2B,CAAC,CAAC;IAC3D,MAAMM,iBAAiB,GAAG,IAAI,CAACL,iCAAiC,CAAC,CAAC;IAClE,IAAGI,gBAAgB,EAAE;MACnB,MAAME,UAAU,GAAGF,gBAA6D;MAChFxF,UAAU,GAAG0F,UAAU,CAAC1F,UAAU;MAClCI,WAAW,GAAGsF,UAAU,CAACtF,WAAW;IACtC,CAAC,MAAM,IAAGqF,iBAAiB,EAAE;MAC3B,MAAMC,UAAU,GAAGD,iBAA8D;MACjFrF,WAAW,GAAGsF,UAAU,CAACtF,WAAW;MACpCJ,UAAU,GAAG0F,UAAU,CAAC1F,UAAU;IACpC;IACA,MAAMoD,WAAW,GAAG,IAAI,CAACR,WAAW,CAACjD,KAAK,CAACkD,KAAK,EAAE7C,UAAU,CAAC;IAC7D,IAAI,CAAC0C,cAAc,GAAI,IAAI,CAACA,cAAc,IAAI,IAAI,CAACxB,SAAS,CAACvB,KAAK,CAACkC,aAAa,CAAC;IACjF,IAAI,CAACc,mBAAmB,GAAGhD,KAAK,CAACoE,QAAQ,GACtC,IAAI,CAACrB,cAAc,IAAI,IAAI,CAACC,mBAAmB,IAAI,IAAI,CAACzB,SAAS,CAACvB,KAAK,CAACgG,kBAAkB,CAAC,GAC3F,IAAI,CAAChD,mBAAmB,IAAI,IAAI,CAACzB,SAAS,CAACvB,KAAK,CAACgG,kBAAkB,CAAE;IACxE,MAAMxC,MAAW,GAAG,IAAI,CAACT,cAAc,IAAI,IAAI,CAACC,mBAAmB;IACnE,IAAIU,aAAa;IACjB,IAAIF,MAAM,EAAE;MACVE,aAAa,GAAG,IAAI,CAACH,gBAAgB,CAACvD,KAAK,EAAEwD,MAAM,EAAEC,WAAW,CAAC;IACnE;IACA,OAAOD,MAAM,KAAK,IAAI,CAAC1C,KAAK,CAACI,iBAAiB,IAAIlB,KAAK,CAACiG,KAAK,IAAIjG,KAAK,CAACe,WAAW,CAAC,gBACjFpC,KAAA,CAAAmF,aAAA,CAACjF,IAAI;MACLsF,KAAK,EAAE,CAAC;QACN3D,KAAK,EAAEH,UAAU;QACjBK,MAAM,EAAED;MACV,CAAC,EAAE,IAAI,CAACE,MAAM,CAACC,IAAI,EAAE6C,WAAW,CAAC7C,IAAI,EAAE6C,WAAW,CAACN,OAAO,CAAE;MAC5D+C,QAAQ,EAAGC,KAAK,IAAK,IAAI,CAACC,YAAY,CAACD,KAAK;IAAE,GAE3C,IAAI,CAACE,WAAW,eACnB1H,KAAA,CAAAmF,aAAA,CAACjF,IAAI;MAACsF,KAAK,EAAE,CAAC;QAACmC,QAAQ,EAAE,QAAQ;QAAE9F,KAAK,EAAE,MAAM;QAC9CE,MAAM,EAAE;MAAM,CAAC,CAAE;MAACwF,QAAQ,EAAE,IAAI,CAACK;IAAmB,gBACpD5H,KAAA,CAAAmF,aAAA,CAAC9E,QAAQ,EAAAgF,QAAA;MACPwC,kBAAkB,EAAE,IAAI,CAAC1F,KAAK,CAACd,KAAK,CAACyG;IAAmB,GACpD,IAAI,CAACC,qBAAqB,CAAC,CAAC;MAChCC,WAAW,EAAE,IAAI,CAAChG,MAAM,CAACC,IAAI,CAAC+F,WAAY;MAC1CC,MAAM,EAAE,IAAK;MAACjG,MAAM,EAAE;QAACH,KAAK,EAAEH,UAAU,GAAG,IAAI,GAAG,MAAM;QAAEK,MAAM,EAAED,WAAW,GAAG,IAAI,GAAG;MAAM;IAAE,iBAC/F9B,KAAA,CAAAmF,aAAA,CAACrE,YAAY;MAACoH,cAAc,EAAE7G,KAAK,CAAC8G,SAAU;MAACC,KAAK,EAAE/G,KAAK,CAACgH,cAAe;MAAC7C,KAAK,EAAE,CAAC;QAC9EzD,MAAM,EAAED,WAAW;QACnBD,KAAK,EAAEH,UAAU;QACjB+C,YAAY,GAAAwC,qBAAA,GAAEnC,WAAW,CAACN,OAAO,cAAAyC,qBAAA,uBAAnBA,qBAAA,CAAqBxC;MACrC,CAAC;IAAE,GACA,IAAI,CAAC6D,SAAS,CAACvD,aAAa,EAAE1D,KAAK,CAC1B,CACN,CACN,CACF,CAAC,GACN,IAAI;EACT;AACF","ignoreList":[]}
1
+ {"version":3,"names":["React","Image","View","EXPOImage","isNumber","Tappable","BaseComponent","BaseComponentState","ImageSizeEstimator","isFullPathUrl","AccessibilityWidgetType","getAccessibilityProps","WmPictureProps","DEFAULT_CLASS","Animatedview","createSkeleton","WmPictureState","constructor","args","_defineProperty","WmPicture","props","e","_this$styles","_this$styles2","_this$styles3","imageWidth","nativeEvent","layout","width","imageHeight","height","styles","root","includes","state","aspectratio","parseFloat","naturalImageHeight","naturalImageWidth","updateState","originalContainerWidth","originalContainerHeight","imageElement","loadImage","image","loadAsset","imageSrc","default","resolveAssetSource","cancel","getSize","cleanup","splice","indexOf","picturesource","_cleanupTracker","push","componentDidUpdate","prevProps","prevState","snapshot","forEach","func","onPropertyChange","name","$new","$old","_pictureSource","_picturePlaceHolder","createShape","shape","picture","borderRadius","theme","getStyle","getElementToShow","imgSrc","shapeStyles","elementToshow","source","imgStyle","resizemode","createElement","uri","_extends","cachePolicy","getTestProps","style","fastload","opacity","contentFit","renderSkeleton","_this$styles$root","_shapeStyles$root","_shapeStyles$picture","_this$styles$root2","_shapeStyles$root2","_shapeStyles$picture2","_this$styles$root3","_shapeStyles$picture3","_shapeStyles$root3","_this$styles$root4","skeletonWidth","skeletonwidth","skeletonHeight","skeletonheight","skeleton","calculateBasedOnaspectratio","calculateBasedOnNaturalDimensions","widthAndHeightExistsInProps","renderWidget","_shapeStyles$picture4","aspectDimensions","naturalDimensions","dimensions","pictureplaceholder","isSvg","onLayout","event","handleLayout","_background","overflow","onViewLayoutChange","disableTouchEffect","disabletoucheffect","getTestPropsForAction","rippleColor","target","entryanimation","animation","delay","animationdelay","accessibilityProps","accessible","PICTURE","showImage"],"sources":["picture.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, Image, LayoutChangeEvent, View } from 'react-native';\nimport {Image as EXPOImage} from 'expo-image';\nimport { isNumber } from 'lodash-es';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport ImageSizeEstimator from '@wavemaker/app-rn-runtime/core/imageSizeEstimator';\nimport { isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nimport WmPictureProps from './picture.props';\nimport { DEFAULT_CLASS, WmPictureStyles } from './picture.styles';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport WmSkeleton, { createSkeleton } from '../skeleton/skeleton.component';\n\nexport class WmPictureState extends BaseComponentState<WmPictureProps> {\n naturalImageWidth: number = 0;\n naturalImageHeight: number = 0;\n imageWidth: number = 0;\n imageHeight: number = 0;\n originalContainerWidth: number = 0;\n originalContainerHeight: number = 0;\n}\n\nexport default class WmPicture extends BaseComponent<WmPictureProps, WmPictureState, WmPictureStyles> {\n\n private _pictureSource = null as any;\n private _picturePlaceHolder = null as any;\n\n // The below property will be used to track and remove the calculateImageSize listenrs of individual picturesource\n private _cleanupTracker = {} as any\n\n constructor(props: WmPictureProps) {\n super(props, DEFAULT_CLASS, new WmPictureProps());\n }\n\n loadImage(image: string | undefined) {\n if (!image || !this.loadAsset) {\n return null;\n }\n const imageSrc = this.loadAsset(image) as any;\n if (imageSrc && typeof imageSrc === 'object' && typeof imageSrc.default === 'function') {\n return null;\n }\n // if(this.state.props.aspectratio) {\n // return imageSrc;\n // }\n if (isNumber(imageSrc)) {\n const {width, height} = Image.resolveAssetSource(imageSrc);\n this.updateState({\n naturalImageWidth: width,\n naturalImageHeight: height\n } as WmPictureState);\n } else if (imageSrc !== null) {\n const cancel = ImageSizeEstimator.getSize(imageSrc, (width: number, height: number) => {\n this.updateState({\n naturalImageWidth: width,\n naturalImageHeight: height\n } as WmPictureState);\n this.cleanup.splice(this.cleanup.indexOf(cancel), 1);\n });\n if(this.props.picturesource && this._cleanupTracker[this.props.picturesource]) {\n this._cleanupTracker[this.props.picturesource].push(cancel)\n } else if(this.props.picturesource && !this._cleanupTracker[this.props.picturesource]) {\n this._cleanupTracker[this.props.picturesource] = [];\n this._cleanupTracker[this.props.picturesource].push(cancel)\n }\n this.cleanup.push(cancel);\n }\n return imageSrc;\n }\n\n // Check if the image source prop is changed from previous update to remove all listeners\n componentDidUpdate(prevProps: Readonly<WmPictureProps>, prevState: Readonly<WmPictureState>, snapshot?: any): void {\n if(this.state.props.picturesource !== prevProps.picturesource) {\n if(prevProps.picturesource && this._cleanupTracker[prevProps.picturesource]) {\n this._cleanupTracker[prevProps.picturesource].forEach((func: any) => {\n func();\n }); \n this._cleanupTracker[prevProps.picturesource] = []\n delete this._cleanupTracker[prevProps.picturesource] \n }\n }\n super.componentDidUpdate(prevProps, prevState)\n }\n\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch(name) {\n case 'picturesource':\n this._pictureSource = null;\n case 'pictureplaceholder':\n this._picturePlaceHolder = null;\n break;\n }\n }\n\n onViewLayoutChange = (e: LayoutChangeEvent) => {\n let imageWidth = e.nativeEvent.layout.width;\n let imageHeight = e.nativeEvent.layout.height;\n if (!imageWidth && !imageHeight) {\n return;\n }\n if (!this.styles?.root.height\n || (typeof this.styles?.root.height === 'string'\n && !this.styles?.root.height.includes('%'))) {\n imageHeight = 0;\n }\n if(this.state.props.aspectratio && !imageHeight && imageWidth) {\n imageHeight = imageWidth / parseFloat(this.state.props.aspectratio as string)\n } else if (this.state.props.aspectratio && !imageWidth && imageHeight) {\n imageWidth = imageWidth * parseFloat(this.state.props.aspectratio as string)\n } else if (imageWidth && !imageHeight) {\n imageHeight = imageWidth * this.state.naturalImageHeight / this.state.naturalImageWidth;\n } else if (imageHeight && !imageWidth) {\n imageWidth = imageHeight * this.state.naturalImageWidth / this.state.naturalImageHeight;\n }\n this.updateState({\n imageWidth: imageWidth,\n imageHeight: imageHeight,\n originalContainerWidth: this.styles.root.width ? e.nativeEvent.layout.width : 0,\n originalContainerHeight: this.styles.root.height ? e.nativeEvent.layout.height: 0\n } as WmPictureState);\n };\n\n createShape(shape: string | undefined, imageWidth?: number | string): WmPictureStyles {\n if (shape) {\n switch(shape) {\n case 'circle':\n return {\n picture: {\n borderRadius: isNumber(imageWidth) ? imageWidth / 2 : 4\n }\n } as WmPictureStyles;\n case 'rounded' :\n return (this.theme.getStyle('rounded-image') as WmPictureStyles);\n case 'thumbnail' :\n return (this.theme.getStyle('thumbnail-image') as WmPictureStyles);\n }\n }\n return {} as WmPictureStyles;\n }\n\n getElementToShow(props: WmPictureProps, imgSrc: any, shapeStyles: WmPictureStyles) {\n let elementToshow, source;\n if (imgSrc && typeof imgSrc === 'object' && typeof imgSrc?.default === 'function') {\n let imgStyle : any = {};\n if (props.resizemode === 'contain') {\n imgStyle['width'] = '100%';\n imgStyle['height'] = '100%';\n }\n elementToshow = React.createElement(imgSrc?.default, imgStyle);\n //} else if (!isWebPreviewMode() && props.isSvg) {\n // svg from uri\n // elementToshow = <SvgUri testID={this.getTestId('picture')} width={this.styles.root.width as NumberProp} height={this.styles.root.height as NumberProp} uri={imgSrc}/>;\n } else if (isFullPathUrl(imgSrc)) {\n source = {\n uri: imgSrc\n };\n } else {\n source = imgSrc;\n }\n if (this.state.naturalImageWidth || this.state.props.aspectratio) {\n elementToshow = (\n // * INFO: if any issue arises like freezing of application because of \n // * rendering large number of images, check the cache policy.\n <EXPOImage\n cachePolicy='memory' \n {...this.getTestProps('picture')}\n style={[this.styles.picture, shapeStyles.picture, (props.fastload || this.state.imageWidth) ? {opacity: 1} : {opacity: 0} ]}\n contentFit={props.resizemode}\n source={source}\n />\n );\n }\n return elementToshow;\n }\n\n public renderSkeleton(props: WmPictureProps){\n const imageWidth = this.state.imageWidth;\n const imageHeight = this.state.imageHeight;\n const shapeStyles = this.createShape(this.props.shape, imageWidth);\n const skeletonWidth = this.props.skeletonwidth || this.styles.root?.width || shapeStyles.root?.width || shapeStyles.picture?.width || imageWidth;\n const skeletonHeight = this.props.skeletonheight || this.styles.root?.height || shapeStyles.root?.height || shapeStyles.picture?.height || imageHeight;\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n borderRadius: this.props.shape == 'circle' && this.styles.root?.width ? 25 : shapeStyles.picture?.borderRadius || shapeStyles.root?.borderRadius || this.styles.root?.borderRadius || 4,\n width: skeletonWidth as DimensionValue,\n height: skeletonHeight as DimensionValue\n });\n }\n\n showImage = (imageElement: any, props: WmPictureProps) => {\n return imageElement;\n }\n\n\n //TODO: remove the re calculation logic later. Keeping it as an extra safety. \n calculateBasedOnaspectratio(): {imageWidth: number, imageHeight: number} | null {\n if(this.state.props.aspectratio) {\n if(this.state.originalContainerWidth) {\n return {\n imageHeight: this.state.originalContainerWidth / parseFloat(this.state.props.aspectratio as string),\n imageWidth: this.state.originalContainerWidth\n }\n } else if(this.state.originalContainerHeight) {\n return {\n imageHeight: this.state.originalContainerHeight, \n imageWidth: this.state.originalContainerHeight * parseFloat(this.state.props.aspectratio as string),\n }\n }\n }\n return null\n }\n \n //TODO: remove the re calculation logic later. Keeping it as an extra safety. \n calculateBasedOnNaturalDimensions(): {imageWidth: number, imageHeight: number} | null {\n // No need to calculate width & height if the user already passign them explicitly from props. \n const widthAndHeightExistsInProps = this.styles.root.width && this.styles.root.height\n if(!this.state.props.aspectratio && !widthAndHeightExistsInProps) {\n if(this.state.originalContainerWidth) {\n return {\n imageHeight: this.state.originalContainerWidth * this.state.naturalImageHeight / this.state.naturalImageWidth,\n imageWidth: this.state.originalContainerWidth\n }\n } else if(this.state.originalContainerHeight) {\n return {\n imageHeight: this.state.originalContainerHeight, \n imageWidth: this.state.originalContainerHeight * this.state.naturalImageWidth / this.state.naturalImageHeight\n }\n }\n }\n return null\n }\n \n\n renderWidget(props: WmPictureProps) {\n let imageWidth = this.state.imageWidth;\n let imageHeight = this.state.imageHeight;\n\n\n //TODO: remove the re calculation logic later. Keeping it as an extra safety. \n const aspectDimensions = this.calculateBasedOnaspectratio();\n const naturalDimensions = this.calculateBasedOnNaturalDimensions();\n if(aspectDimensions) {\n const dimensions = aspectDimensions as {imageWidth: number, imageHeight: number}\n imageWidth = dimensions.imageWidth;\n imageHeight = dimensions.imageHeight\n } else if(naturalDimensions) {\n const dimensions = naturalDimensions as {imageWidth: number, imageHeight: number}\n imageHeight = dimensions.imageHeight\n imageWidth = dimensions.imageWidth\n }\n const shapeStyles = this.createShape(props.shape, imageWidth);\n this._pictureSource = this._pictureSource || this.loadImage(props.picturesource);\n this._picturePlaceHolder = props.fastload ? \n (this._pictureSource || this._picturePlaceHolder || this.loadImage(props.pictureplaceholder)) :\n (this._picturePlaceHolder || this.loadImage(props.pictureplaceholder));\n const imgSrc: any = this._pictureSource || this._picturePlaceHolder;\n let elementToshow;\n if (imgSrc) {\n elementToshow = this.getElementToShow(props, imgSrc, shapeStyles);\n }\n return imgSrc && (this.state.naturalImageWidth || props.isSvg || props.aspectratio) ? (\n <View \n style={[{\n width: imageWidth,\n height: imageHeight\n }, this.styles.root, shapeStyles.root, shapeStyles.picture]}\n onLayout={(event) => this.handleLayout(event)}\n >\n {this._background}\n <View style={[{overflow: 'hidden', width: '100%',\n height: '100%'}]} onLayout={this.onViewLayoutChange}>\n <Tappable\n disableTouchEffect={this.state.props.disabletoucheffect}\n {...this.getTestPropsForAction()}\n rippleColor={this.styles.root.rippleColor}\n target={this} styles={{width: imageWidth ? null : '100%', height: imageHeight ? null : '100%'}}>\n <Animatedview entryanimation={props.animation} delay={props.animationdelay} style={[{\n height: imageHeight,\n width: imageWidth,\n borderRadius: shapeStyles.picture?.borderRadius\n }]}\n accessibilityProps={props.accessible ? {...getAccessibilityProps(AccessibilityWidgetType.PICTURE, props)} : {}}>\n {this.showImage(elementToshow, props)}\n </Animatedview>\n </Tappable>\n </View>\n </View>\n ): null;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -14,6 +14,7 @@ export default class WmPictureProps extends BaseProps {
14
14
  _defineProperty(this, "resizemode", 'stretch');
15
15
  _defineProperty(this, "skeletonheight", null);
16
16
  _defineProperty(this, "skeletonwidth", null);
17
+ _defineProperty(this, "accessible", true);
17
18
  _defineProperty(this, "accessibilitylabel", undefined);
18
19
  _defineProperty(this, "hint", undefined);
19
20
  _defineProperty(this, "accessibilityrole", 'image');
@@ -1 +1 @@
1
- {"version":3,"names":["BaseProps","WmPictureProps","constructor","args","_defineProperty","undefined"],"sources":["picture.props.ts"],"sourcesContent":["import { AccessibilityRole, ImageResizeMode } from 'react-native';\nimport { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmPictureProps extends BaseProps {\n animation?: string = null as any;\n animationdelay?: number = null as any;\n picturesource?: string = null as any;\n pictureplaceholder?: string = null as any;\n shape?: string = null as any;\n isSvg?: string = null as any;\n resizemode?: ImageResizeMode = 'stretch' as any;\n skeletonheight?: string = null as any;\n skeletonwidth?: string = null as any;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = 'image';\n fastload?: boolean = false;\n aspectratio?: string | number | null = null;\n}\n"],"mappings":";;;AACA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,cAAc,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBAC/B,IAAI;IAAAA,eAAA,yBACC,IAAI;IAAAA,eAAA,wBACL,IAAI;IAAAA,eAAA,6BACC,IAAI;IAAAA,eAAA,gBACjB,IAAI;IAAAA,eAAA,gBACJ,IAAI;IAAAA,eAAA,qBACU,SAAS;IAAAA,eAAA,yBACd,IAAI;IAAAA,eAAA,wBACL,IAAI;IAAAA,eAAA,6BACCC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA,4BACe,OAAO;IAAAA,eAAA,mBAC1B,KAAK;IAAAA,eAAA,sBACa,IAAI;EAAA;AAC7C","ignoreList":[]}
1
+ {"version":3,"names":["BaseProps","WmPictureProps","constructor","args","_defineProperty","undefined"],"sources":["picture.props.ts"],"sourcesContent":["import { AccessibilityRole, ImageResizeMode } from 'react-native';\nimport { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmPictureProps extends BaseProps {\n animation?: string = null as any;\n animationdelay?: number = null as any;\n picturesource?: string = null as any;\n pictureplaceholder?: string = null as any;\n shape?: string = null as any;\n isSvg?: string = null as any;\n resizemode?: any = 'stretch' as any;\n skeletonheight?: string = null as any;\n skeletonwidth?: string = null as any;\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = 'image';\n fastload?: boolean = false;\n aspectratio?: string | number | null = null;\n}\n"],"mappings":";;;AACA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,cAAc,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBAC/B,IAAI;IAAAA,eAAA,yBACC,IAAI;IAAAA,eAAA,wBACL,IAAI;IAAAA,eAAA,6BACC,IAAI;IAAAA,eAAA,gBACjB,IAAI;IAAAA,eAAA,gBACJ,IAAI;IAAAA,eAAA,qBACF,SAAS;IAAAA,eAAA,yBACF,IAAI;IAAAA,eAAA,wBACL,IAAI;IAAAA,eAAA,qBACN,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA,4BACe,OAAO;IAAAA,eAAA,mBAC1B,KAAK;IAAAA,eAAA,sBACa,IAAI;EAAA;AAC7C","ignoreList":[]}
@@ -4,7 +4,7 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
4
4
  import React from "react";
5
5
  import { Dimensions, View, Text } from 'react-native';
6
6
  import moment from "moment";
7
- import { forEach, get, isArray, isEmpty, isObject, maxBy, minBy, set, trim, orderBy } from "lodash-es";
7
+ import { forEach, get, isArray, isEmpty, isObject, maxBy, minBy, set, orderBy } from "lodash-es";
8
8
  import { VictoryAxis, VictoryLegend, VictoryLabel } from "victory-native";
9
9
  import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';
10
10
  import WmIcon from "@wavemaker/app-rn-runtime/components/basic/icon/icon.component";
@@ -454,15 +454,16 @@ export class BaseChartComponent extends BaseComponent {
454
454
  applyTheme(props) {
455
455
  let themeName = props.theme ? props.theme : props.type === 'Pie' ? 'Azure' : 'Terrestrial';
456
456
  let colorsToUse = [];
457
- if (typeof props.customcolors === 'string' && !isEmpty(props.customcolors)) {
458
- colorsToUse = props.customcolors.split(',').map(trim);
457
+ if (props.customcolors) {
458
+ if (typeof props.customcolors === 'string' && props.customcolors.trim() !== '') {
459
+ colorsToUse = props.customcolors.split(',').map(color => color.trim()).filter(color => color !== '');
460
+ } else if (Array.isArray(props.customcolors) && props.customcolors.length > 0) {
461
+ colorsToUse = props.customcolors.filter(color => color && typeof color === 'string');
462
+ }
459
463
  }
460
464
  let themeToUse;
461
465
  if (typeof themeName === 'string') {
462
- if (!colorsToUse.length) {
463
- colorsToUse = props.customcolors;
464
- }
465
- if (props.customcolors === undefined) {
466
+ if (colorsToUse.length === 0) {
466
467
  colorsToUse = ThemeFactory.getColorsObj(themeName);
467
468
  }
468
469
  themeToUse = ThemeFactory.getTheme(themeName, props.styles, colorsToUse);
@@ -627,14 +628,9 @@ export class BaseChartComponent extends BaseComponent {
627
628
  let units = '';
628
629
  switch (name) {
629
630
  case 'customcolors':
630
- if (isEmpty($new)) {
631
- return;
632
- }
633
- if (typeof $new === 'string') {
634
- $new = $new.split(',');
635
- }
636
- this.updateState({
637
- colors: $new
631
+ this.applyTheme({
632
+ ...props,
633
+ customcolors: $new
638
634
  });
639
635
  break;
640
636
  case 'theme':