@wavemaker/app-rn-runtime 12.0.0-next.140495 → 12.0.0-next.140498
Sign up to get free protection for your applications and to get access to all the features.
- app-rn-runtime/components/advanced/carousel/carousel.component.js +5 -3
- app-rn-runtime/components/advanced/carousel/carousel.component.js.map +1 -1
- app-rn-runtime/components/basic/progress-circle/progress-circle.component.js +3 -3
- app-rn-runtime/components/basic/progress-circle/progress-circle.component.js.map +1 -1
- app-rn-runtime/components/chart/basechart.component.js +1 -0
- app-rn-runtime/components/chart/basechart.component.js.map +1 -1
- app-rn-runtime/components/container/accordion/accordion.component.js +2 -1
- app-rn-runtime/components/container/accordion/accordion.component.js.map +1 -1
- app-rn-runtime/components/container/accordion/accordion.styles.js +1 -0
- app-rn-runtime/components/container/accordion/accordion.styles.js.map +1 -1
- app-rn-runtime/components/container/tabs/tabheader/tabheader.component.js +2 -4
- app-rn-runtime/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
- app-rn-runtime/components/container/wizard/wizard.component.js +2 -2
- app-rn-runtime/components/container/wizard/wizard.component.js.map +1 -1
- app-rn-runtime/components/data/form/form-field/form-field.component.js +0 -1
- app-rn-runtime/components/data/form/form-field/form-field.component.js.map +1 -1
- app-rn-runtime/components/input/basenumber/basenumber.component.js +14 -8
- app-rn-runtime/components/input/basenumber/basenumber.component.js.map +1 -1
- app-rn-runtime/components/input/basenumber/basenumber.props.js +1 -0
- app-rn-runtime/components/input/basenumber/basenumber.props.js.map +1 -1
- app-rn-runtime/components/input/checkbox/checkbox.component.js +2 -1
- app-rn-runtime/components/input/checkbox/checkbox.component.js.map +1 -1
- app-rn-runtime/components/input/checkboxset/checkboxset.component.js +2 -1
- app-rn-runtime/components/input/checkboxset/checkboxset.component.js.map +1 -1
- app-rn-runtime/components/input/chips/chips.component.js +1 -1
- app-rn-runtime/components/input/chips/chips.component.js.map +1 -1
- app-rn-runtime/components/input/number/number.component.js +6 -3
- app-rn-runtime/components/input/number/number.component.js.map +1 -1
- app-rn-runtime/components/input/radioset/radioset.component.js +5 -5
- app-rn-runtime/components/input/radioset/radioset.component.js.map +1 -1
- app-rn-runtime/components/input/select/select.component.js +10 -7
- app-rn-runtime/components/input/select/select.component.js.map +1 -1
- app-rn-runtime/components/input/switch/switch.component.js +2 -2
- app-rn-runtime/components/input/switch/switch.component.js.map +1 -1
- app-rn-runtime/components/navigation/navitem/navitem.component.js +2 -3
- app-rn-runtime/components/navigation/navitem/navitem.component.js.map +1 -1
- app-rn-runtime/core/base.component.js +1 -0
- app-rn-runtime/core/base.component.js.map +1 -1
- app-rn-runtime/core/components/textinput.component.js +3 -3
- app-rn-runtime/core/components/textinput.component.js.map +1 -1
- app-rn-runtime/core/props.provider.js +4 -1
- app-rn-runtime/core/props.provider.js.map +1 -1
- app-rn-runtime/package.json +3 -3
- app-rn-runtime/runtime/base-fragment.component.js +15 -0
- app-rn-runtime/runtime/base-fragment.component.js.map +1 -1
@@ -1,3 +1,4 @@
|
|
1
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
1
2
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
2
3
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
3
4
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
@@ -194,10 +195,11 @@ export default class WmCarousel extends BaseComponent {
|
|
194
195
|
flexDirection: this.isRTL ? 'row-reverse' : 'row'
|
195
196
|
}
|
196
197
|
}, data.map((item, index) => {
|
197
|
-
return index >= minIndex && index <= maxIndex ? /*#__PURE__*/React.createElement(View, {
|
198
|
-
key: 'dots_' + this.generateItemKey(item, index, this.state.props)
|
198
|
+
return index >= minIndex && index <= maxIndex ? /*#__PURE__*/React.createElement(View, _extends({
|
199
|
+
key: 'dots_' + this.generateItemKey(item, index, this.state.props)
|
200
|
+
}, this.getTestPropsForAction('indicator' + index), {
|
199
201
|
style: [this.styles.dotStyle]
|
200
|
-
}) : null;
|
202
|
+
})) : null;
|
201
203
|
}), /*#__PURE__*/React.createElement(Animated.View, {
|
202
204
|
style: [this.styles.dotStyle, this.styles.activeDotStyle, {
|
203
205
|
width: undefined,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","isArray","isUndefined","Animated","Easing","View","DefaultKeyExtractor","WmIcon","BaseComponent","BaseComponentState","SwipeAnimation","Tappable","WmCarouselProps","DEFAULT_CLASS","WmCarouselState","constructor","args","_defineProperty","WmCarousel","props","Value","bounds","e","_this$slidesLayout","_this$slidesLayout$ac","activeTabIndex","state","activeIndex","lower","slidesLayout","filter","l","i","reduce","s","width","center","upper","computePhase","value","_this$slidesLayout$ac2","w","Math","abs","onLower","onSlideChange","onUpper","noOfSlides","_this$animationView","animationView","setPosition","index","prevIndex","updateState","invokeEventCallback","animatePagination","item","type","renderSlide","children","data","dataset","length","_this$animationView2","_this$animationView3","goToUpper","_this$animationView4","goToLower","cleanup","push","stopPlay","addSlideLayout","nativeEvent","layout","forceUpdate","generateItemKey","itemkey","_showSkeleton","keyExtractor","getKey","autoPlay","animation","animationinterval","intervalId","setInterval","next","clearInterval","setTimeout","_this$animationView5","onPropertyChange","name","$new","$old","_this$keyExtractor","clear","min","_this$styles$dotStyle","_this$styles$dotStyle2","_this$styles$dotStyle3","margin","styles","dotStyle","marginLeft","marginRight","size","position","max","scale","options","useNativeDriver","duration","easing","out","linear","sequence","timing","dotScale","toValue","parallel","dotPosition","isRTL","start","renderPagination","maxNoOfDots","maxnoofdots","minIndex","maxIndex","createElement","style","dotsWrapperStyle","flexDirection","map","key","activeDotStyle","undefined","height","transform","translateX","right","left","renderWidget","_data","_this$styles$slide","hasNavs","controls","hasDots","slideScale","slideTranslateX","slide","_this$styles$slide2","_this$styles$slide3","find","o","root","_background","enableGestures","enablegestures","flex","direction","ref","r","handlers","animationHandlers","slideMinWidth","_this$animationView6","_this$animationView7","isActive","animationPhase","interpolate","inputRange","outputRange","onLayout","bind","firstSlide","lastSlide","activeSlide","onTap","_this$animationView8","rippleColor","renderItem","btnPanel","id","getTestId","iconclass","prevBtn","prev","accessibilitylabel","nextBtn"],"sources":["carousel.component.tsx"],"sourcesContent":["import React from 'react';\nimport { isArray, isUndefined } from 'lodash-es';\nimport { Animated, Easing, View, LayoutChangeEvent, LayoutRectangle } from 'react-native';\nimport { DefaultKeyExtractor } from '@wavemaker/app-rn-runtime/core/key.extractor';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport * as SwipeAnimation from '@wavemaker/app-rn-runtime/gestures/swipe.animation';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\n\nimport WmCarouselProps from './carousel.props';\nimport { DEFAULT_CLASS, WmCarouselStyles } from './carousel.styles';\n\nexport class WmCarouselState extends BaseComponentState<WmCarouselProps> {\n activeIndex = 1;\n}\n\nexport default class WmCarousel extends BaseComponent<WmCarouselProps, WmCarouselState, WmCarouselStyles> {\n\n noOfSlides: number = 0;\n private slidesLayout: LayoutRectangle[] = [];\n private keyExtractor = new DefaultKeyExtractor();\n stopPlay: Function = null as any;\n private dotScale = new Animated.Value(0);\n private dotPosition = new Animated.Value(0);\n private animationView: SwipeAnimation.View | null = null as any;\n private animationHandlers = {\n bounds: (e) => {\n const activeTabIndex = this.state.activeIndex - 1;\n let lower = 0;\n if (activeTabIndex > 0) {\n lower = this.slidesLayout\n .filter((l , i) => i < activeTabIndex - 1)\n .reduce((s, l) => s + l.width, 0);\n }\n let center = lower + (this.slidesLayout[activeTabIndex - 1]?.width || 0);\n let upper = center + (this.slidesLayout[activeTabIndex]?.width || 0);\n return {\n lower: -1 * lower,\n center: -1 * center,\n upper: -1 * upper\n };\n },\n computePhase: (value) => {\n const activeTabIndex = this.state.activeIndex - 1;\n const w = this.slidesLayout[activeTabIndex]?.width || 0;\n return w && Math.abs(value / w);\n },\n onLower: (e) => {\n this.onSlideChange(this.state.activeIndex - 1);\n },\n onUpper: (e) => {\n if(this.noOfSlides < this.state.activeIndex + 1){\n this.onSlideChange(1);\n this.animationView?.setPosition(0);\n }\n else{\n this.onSlideChange(this.state.activeIndex + 1);\n }\n }\n } as SwipeAnimation.Handlers;\n\n constructor(props: WmCarouselProps) {\n super(props, DEFAULT_CLASS, new WmCarouselProps(), new WmCarouselState());\n this.cleanup.push(() => {\n this.stopPlay && this.stopPlay();\n })\n }\n\n addSlideLayout(index: number, nativeEvent: LayoutChangeEvent) {\n this.slidesLayout[index] = nativeEvent.nativeEvent.layout;\n if (index === this.state.activeIndex) {\n this.forceUpdate();\n }\n }\n\n private generateItemKey(item: any, index: number, props: WmCarouselProps) {\n if (props.itemkey && item && !this._showSkeleton) {\n return props.itemkey(item, index);\n }\n return 'list_item_' + this.keyExtractor.getKey(item, true);\n }\n\n autoPlay() {\n const props = this.state.props;\n this.stopPlay && this.stopPlay();\n if (props.animation === 'auto' && props.animationinterval) {\n const intervalId = setInterval(() => {\n this.next();\n }, props.animationinterval * 1000);\n this.stopPlay = () => clearInterval(intervalId);\n } else {\n setTimeout(() => {\n this.onSlideChange(1);\n this.animationView?.setPosition(0);\n }, 1000);\n }\n }\n\n onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch (name) {\n case 'dataset': {\n this.keyExtractor?.clear();\n this.updateState({\n activeIndex: Math.min(this.state.activeIndex, $new?.length || 1)\n } as WmCarouselState);\n break;\n }\n case 'animation':\n case 'animationinterval' : {\n this.autoPlay();\n }\n }\n }\n\n animatePagination(index: number) {\n const prevIndex = this.state.activeIndex;\n const margin = ((this.styles.dotStyle?.marginLeft as number)|| 0) + \n ((this.styles.dotStyle?.marginRight as number)|| 0)\n const width = (this.styles.dotStyle?.width as number)|| 2;\n const size = margin + width;\n const position = Math.max(index - 1, 0) * size;\n const scale = Math.abs(index - prevIndex) * size;\n const options = {\n useNativeDriver: true,\n duration: 200,\n easing: Easing.out(Easing.linear)\n };\n if (prevIndex < index) {\n Animated.sequence([\n Animated.timing(this.dotScale, {\n toValue: scale,\n ...options\n }),\n Animated.parallel([\n Animated.timing(this.dotScale, {\n toValue: 0,\n ...options\n }),\n Animated.timing(this.dotPosition, {\n toValue: (this.isRTL ? -1: 1) * position,\n ...options\n })\n ])\n ]).start();\n } else if (prevIndex > index) {\n Animated.sequence([\n Animated.parallel([\n Animated.timing(this.dotScale, {\n toValue: scale,\n ...options\n }),\n Animated.timing(this.dotPosition, {\n toValue: (this.isRTL ? -1: 1) * position,\n ...options\n })\n ]),\n Animated.timing(this.dotScale, {\n toValue: 0,\n ...options\n }),\n ]).start();\n } \n }\n\n onSlideChange = (index: number) => {\n const prevIndex = this.state.activeIndex;\n this.updateState({\n activeIndex: index\n } as WmCarouselState,\n () => this.invokeEventCallback('onChange', [this, index, prevIndex]));\n this.animatePagination(index);\n }\n\n renderItem = (item: any, index: number) => {\n const props = this.state.props;\n if (props.type === 'dynamic') {\n return props.renderSlide ? props.renderSlide(item, index, this) : null;\n }\n return props.children[index];\n }\n\n next = () => {\n const props = this.state.props;\n const data = props.type === 'dynamic' ? props.dataset : props.children;\n if (this.state.activeIndex >= data?.length || 0) {\n this.onSlideChange(1);\n this.animationView?.setPosition(0);\n } else {\n this.animationView?.goToUpper();\n }\n }\n\n prev = () => {\n this.animationView?.goToLower();\n }\n\n renderPagination(data: any) {\n const maxNoOfDots = this.state.props.maxnoofdots;\n let minIndex = Math.max(this.state.activeIndex - maxNoOfDots + 1, 0);\n let maxIndex = Math.min(minIndex + maxNoOfDots - 1, data.length);\n if (maxIndex === data.length) {\n minIndex = maxIndex - maxNoOfDots;\n }\n return (<View style={this.styles.dotsWrapperStyle}>\n <View style={{flexDirection: this.isRTL ? 'row-reverse' : 'row'}}>\n {\n data.map((item: any, index: number) => {\n return index >= minIndex && index <= maxIndex ? (\n <View key={'dots_' + this.generateItemKey(item, index, this.state.props)} \n style={[this.styles.dotStyle]}>\n </View>) : null;\n })\n }\n <Animated.View style={[\n this.styles.dotStyle,\n this.styles.activeDotStyle, {\n width: undefined,\n height: undefined,\n transform: [{\n translateX: this.dotPosition\n }]\n }, this.isRTL ? { right: 0 } : { left: 0}]}>\n <Animated.View style={[{\n width: 1,\n height: 1\n }, {\n // This is failing in Android\n // minWidth: this.dotScale\n }]}>\n </Animated.View>\n </Animated.View>\n </View>\n </View>);\n }\n\n renderWidget(props: WmCarouselProps) {\n const hasNavs = props.controls === 'both' || props.controls ==='navs';\n const hasDots = props.controls === 'both' || props.controls ==='indicators';\n let styles = this.styles;\n let data = props.type === 'dynamic' ? props.dataset : props.children;\n data = isArray(data) ? data : [];\n this.noOfSlides = data?.length || 0;\n let slideScale = undefined as any;\n let slideTranslateX = undefined as any;\n if (isArray(this.styles.slide?.transform)) {\n slideScale = (this.styles.slide?.transform?.find(o => !isUndefined((o as any).scale)) as any)?.scale;\n slideTranslateX = (this.styles.slide?.transform?.find(o => !isUndefined((o as any).translateX)) as any)?.translateX;\n }\n // TODO: loop prop on Carousel is not working Refer: https://github.com/meliorence/react-native-snap-carousel/issues/608\n return (\n <View style={styles.root}>\n {this._background}\n <SwipeAnimation.View \n enableGestures={props.enablegestures && this.noOfSlides > 1}\n style={{\n flex: 1\n }}\n direction='horizontal'\n ref={(r) => {this.animationView = r}}\n handlers = {this.animationHandlers}\n slideMinWidth={this.styles.slide.width}\n >\n {data.map((item: any, index: number) => {\n const isActive = index === this.state.activeIndex - 1;\n let scale = this.animationView?.animationPhase.interpolate({\n inputRange: [-2000, index - 1, index, index + 1, 2000],\n outputRange: [slideScale, slideScale, 1, slideScale, slideScale]\n });\n let translateX = this.animationView?.animationPhase.interpolate({\n inputRange: [-2000, index - 1, index, index + 1, 2000],\n outputRange: [-56, -56, 0, 56, 56]\n });\n return (\n <Animated.View key={this.generateItemKey(item, index, props)}\n onLayout={this.addSlideLayout.bind(this, index)}\n style={[\n {height: props.type === 'dynamic' ? undefined : '100%'},\n this.styles.slide,\n index === 0 ? this.styles.firstSlide : null,\n index === data.length - 1 ? this.styles.lastSlide: null,\n isActive ? this.styles.activeSlide: null,\n translateX && scale ? {\n transform: [\n {\n translateX: !isUndefined(slideTranslateX) ? slideTranslateX : translateX\n }, {\n scale: scale\n }\n ]\n } : null]}>\n <Tappable onTap={() => {\n this.onSlideChange(index + 1);\n const position = this.slidesLayout\n .filter((l , i) => i < index)\n .reduce((s, l) => s + l.width, 0);\n this.animationView?.setPosition(-1 * position);\n }} rippleColor={this.styles.root.rippleColor} styles={{height: \"100%\"}}>\n {this.renderItem(item, index)}\n </Tappable>\n </Animated.View>\n );\n })}\n </SwipeAnimation.View>\n {hasNavs ? (\n <View style={styles.btnPanel}>\n <WmIcon\n id={this.getTestId('prev_icon')}\n iconclass=\"wi wi-chevron-left fa-2x\"\n styles={styles.prevBtn}\n onTap={this.prev}\n accessibilitylabel='back'/>\n <WmIcon\n id={this.getTestId('next_icon')}\n iconclass=\"wi wi-chevron-right fa-2x\"\n styles={styles.nextBtn}\n onTap={this.next}\n accessibilitylabel='next'/>\n </View>): null}\n {hasDots && data ? this.renderPagination(data) : null}\n </View>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","isArray","isUndefined","Animated","Easing","View","DefaultKeyExtractor","WmIcon","BaseComponent","BaseComponentState","SwipeAnimation","Tappable","WmCarouselProps","DEFAULT_CLASS","WmCarouselState","constructor","args","_defineProperty","WmCarousel","props","Value","bounds","e","_this$slidesLayout","_this$slidesLayout$ac","activeTabIndex","state","activeIndex","lower","slidesLayout","filter","l","i","reduce","s","width","center","upper","computePhase","value","_this$slidesLayout$ac2","w","Math","abs","onLower","onSlideChange","onUpper","noOfSlides","_this$animationView","animationView","setPosition","index","prevIndex","updateState","invokeEventCallback","animatePagination","item","type","renderSlide","children","data","dataset","length","_this$animationView2","_this$animationView3","goToUpper","_this$animationView4","goToLower","cleanup","push","stopPlay","addSlideLayout","nativeEvent","layout","forceUpdate","generateItemKey","itemkey","_showSkeleton","keyExtractor","getKey","autoPlay","animation","animationinterval","intervalId","setInterval","next","clearInterval","setTimeout","_this$animationView5","onPropertyChange","name","$new","$old","_this$keyExtractor","clear","min","_this$styles$dotStyle","_this$styles$dotStyle2","_this$styles$dotStyle3","margin","styles","dotStyle","marginLeft","marginRight","size","position","max","scale","options","useNativeDriver","duration","easing","out","linear","sequence","timing","dotScale","toValue","parallel","dotPosition","isRTL","start","renderPagination","maxNoOfDots","maxnoofdots","minIndex","maxIndex","createElement","style","dotsWrapperStyle","flexDirection","map","_extends","key","getTestPropsForAction","activeDotStyle","undefined","height","transform","translateX","right","left","renderWidget","_data","_this$styles$slide","hasNavs","controls","hasDots","slideScale","slideTranslateX","slide","_this$styles$slide2","_this$styles$slide3","find","o","root","_background","enableGestures","enablegestures","flex","direction","ref","r","handlers","animationHandlers","slideMinWidth","_this$animationView6","_this$animationView7","isActive","animationPhase","interpolate","inputRange","outputRange","onLayout","bind","firstSlide","lastSlide","activeSlide","onTap","_this$animationView8","rippleColor","renderItem","btnPanel","id","getTestId","iconclass","prevBtn","prev","accessibilitylabel","nextBtn"],"sources":["carousel.component.tsx"],"sourcesContent":["import React from 'react';\nimport { isArray, isUndefined } from 'lodash-es';\nimport { Animated, Easing, View, LayoutChangeEvent, LayoutRectangle } from 'react-native';\nimport { DefaultKeyExtractor } from '@wavemaker/app-rn-runtime/core/key.extractor';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport * as SwipeAnimation from '@wavemaker/app-rn-runtime/gestures/swipe.animation';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\n\nimport WmCarouselProps from './carousel.props';\nimport { DEFAULT_CLASS, WmCarouselStyles } from './carousel.styles';\n\nexport class WmCarouselState extends BaseComponentState<WmCarouselProps> {\n activeIndex = 1;\n}\n\nexport default class WmCarousel extends BaseComponent<WmCarouselProps, WmCarouselState, WmCarouselStyles> {\n\n noOfSlides: number = 0;\n private slidesLayout: LayoutRectangle[] = [];\n private keyExtractor = new DefaultKeyExtractor();\n stopPlay: Function = null as any;\n private dotScale = new Animated.Value(0);\n private dotPosition = new Animated.Value(0);\n private animationView: SwipeAnimation.View | null = null as any;\n private animationHandlers = {\n bounds: (e) => {\n const activeTabIndex = this.state.activeIndex - 1;\n let lower = 0;\n if (activeTabIndex > 0) {\n lower = this.slidesLayout\n .filter((l , i) => i < activeTabIndex - 1)\n .reduce((s, l) => s + l.width, 0);\n }\n let center = lower + (this.slidesLayout[activeTabIndex - 1]?.width || 0);\n let upper = center + (this.slidesLayout[activeTabIndex]?.width || 0);\n return {\n lower: -1 * lower,\n center: -1 * center,\n upper: -1 * upper\n };\n },\n computePhase: (value) => {\n const activeTabIndex = this.state.activeIndex - 1;\n const w = this.slidesLayout[activeTabIndex]?.width || 0;\n return w && Math.abs(value / w);\n },\n onLower: (e) => {\n this.onSlideChange(this.state.activeIndex - 1);\n },\n onUpper: (e) => {\n if(this.noOfSlides < this.state.activeIndex + 1){\n this.onSlideChange(1);\n this.animationView?.setPosition(0);\n }\n else{\n this.onSlideChange(this.state.activeIndex + 1);\n }\n }\n } as SwipeAnimation.Handlers;\n\n constructor(props: WmCarouselProps) {\n super(props, DEFAULT_CLASS, new WmCarouselProps(), new WmCarouselState());\n this.cleanup.push(() => {\n this.stopPlay && this.stopPlay();\n })\n }\n\n addSlideLayout(index: number, nativeEvent: LayoutChangeEvent) {\n this.slidesLayout[index] = nativeEvent.nativeEvent.layout;\n if (index === this.state.activeIndex) {\n this.forceUpdate();\n }\n }\n\n private generateItemKey(item: any, index: number, props: WmCarouselProps) {\n if (props.itemkey && item && !this._showSkeleton) {\n return props.itemkey(item, index);\n }\n return 'list_item_' + this.keyExtractor.getKey(item, true);\n }\n\n autoPlay() {\n const props = this.state.props;\n this.stopPlay && this.stopPlay();\n if (props.animation === 'auto' && props.animationinterval) {\n const intervalId = setInterval(() => {\n this.next();\n }, props.animationinterval * 1000);\n this.stopPlay = () => clearInterval(intervalId);\n } else {\n setTimeout(() => {\n this.onSlideChange(1);\n this.animationView?.setPosition(0);\n }, 1000);\n }\n }\n\n onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch (name) {\n case 'dataset': {\n this.keyExtractor?.clear();\n this.updateState({\n activeIndex: Math.min(this.state.activeIndex, $new?.length || 1)\n } as WmCarouselState);\n break;\n }\n case 'animation':\n case 'animationinterval' : {\n this.autoPlay();\n }\n }\n }\n\n animatePagination(index: number) {\n const prevIndex = this.state.activeIndex;\n const margin = ((this.styles.dotStyle?.marginLeft as number)|| 0) + \n ((this.styles.dotStyle?.marginRight as number)|| 0)\n const width = (this.styles.dotStyle?.width as number)|| 2;\n const size = margin + width;\n const position = Math.max(index - 1, 0) * size;\n const scale = Math.abs(index - prevIndex) * size;\n const options = {\n useNativeDriver: true,\n duration: 200,\n easing: Easing.out(Easing.linear)\n };\n if (prevIndex < index) {\n Animated.sequence([\n Animated.timing(this.dotScale, {\n toValue: scale,\n ...options\n }),\n Animated.parallel([\n Animated.timing(this.dotScale, {\n toValue: 0,\n ...options\n }),\n Animated.timing(this.dotPosition, {\n toValue: (this.isRTL ? -1: 1) * position,\n ...options\n })\n ])\n ]).start();\n } else if (prevIndex > index) {\n Animated.sequence([\n Animated.parallel([\n Animated.timing(this.dotScale, {\n toValue: scale,\n ...options\n }),\n Animated.timing(this.dotPosition, {\n toValue: (this.isRTL ? -1: 1) * position,\n ...options\n })\n ]),\n Animated.timing(this.dotScale, {\n toValue: 0,\n ...options\n }),\n ]).start();\n } \n }\n\n onSlideChange = (index: number) => {\n const prevIndex = this.state.activeIndex;\n this.updateState({\n activeIndex: index\n } as WmCarouselState,\n () => this.invokeEventCallback('onChange', [this, index, prevIndex]));\n this.animatePagination(index);\n }\n\n renderItem = (item: any, index: number) => {\n const props = this.state.props;\n if (props.type === 'dynamic') {\n return props.renderSlide ? props.renderSlide(item, index, this) : null;\n }\n return props.children[index];\n }\n\n next = () => {\n const props = this.state.props;\n const data = props.type === 'dynamic' ? props.dataset : props.children;\n if (this.state.activeIndex >= data?.length || 0) {\n this.onSlideChange(1);\n this.animationView?.setPosition(0);\n } else {\n this.animationView?.goToUpper();\n }\n }\n\n prev = () => {\n this.animationView?.goToLower();\n }\n\n renderPagination(data: any) {\n const maxNoOfDots = this.state.props.maxnoofdots;\n let minIndex = Math.max(this.state.activeIndex - maxNoOfDots + 1, 0);\n let maxIndex = Math.min(minIndex + maxNoOfDots - 1, data.length);\n if (maxIndex === data.length) {\n minIndex = maxIndex - maxNoOfDots;\n }\n return (<View style={this.styles.dotsWrapperStyle}>\n <View style={{flexDirection: this.isRTL ? 'row-reverse' : 'row'}}>\n {\n data.map((item: any, index: number) => {\n return index >= minIndex && index <= maxIndex ? (\n <View key={'dots_' + this.generateItemKey(item, index, this.state.props)} {...this.getTestPropsForAction('indicator'+index)}\n style={[this.styles.dotStyle]}>\n </View>) : null;\n })\n }\n <Animated.View style={[\n this.styles.dotStyle,\n this.styles.activeDotStyle, {\n width: undefined,\n height: undefined,\n transform: [{\n translateX: this.dotPosition\n }]\n }, this.isRTL ? { right: 0 } : { left: 0}]}>\n <Animated.View style={[{\n width: 1,\n height: 1\n }, {\n // This is failing in Android\n // minWidth: this.dotScale\n }]}>\n </Animated.View>\n </Animated.View>\n </View>\n </View>);\n }\n\n renderWidget(props: WmCarouselProps) {\n const hasNavs = props.controls === 'both' || props.controls ==='navs';\n const hasDots = props.controls === 'both' || props.controls ==='indicators';\n let styles = this.styles;\n let data = props.type === 'dynamic' ? props.dataset : props.children;\n data = isArray(data) ? data : [];\n this.noOfSlides = data?.length || 0;\n let slideScale = undefined as any;\n let slideTranslateX = undefined as any;\n if (isArray(this.styles.slide?.transform)) {\n slideScale = (this.styles.slide?.transform?.find(o => !isUndefined((o as any).scale)) as any)?.scale;\n slideTranslateX = (this.styles.slide?.transform?.find(o => !isUndefined((o as any).translateX)) as any)?.translateX;\n }\n // TODO: loop prop on Carousel is not working Refer: https://github.com/meliorence/react-native-snap-carousel/issues/608\n return (\n <View style={styles.root}>\n {this._background}\n <SwipeAnimation.View \n enableGestures={props.enablegestures && this.noOfSlides > 1}\n style={{\n flex: 1\n }}\n direction='horizontal'\n ref={(r) => {this.animationView = r}}\n handlers = {this.animationHandlers}\n slideMinWidth={this.styles.slide.width}\n >\n {data.map((item: any, index: number) => {\n const isActive = index === this.state.activeIndex - 1;\n let scale = this.animationView?.animationPhase.interpolate({\n inputRange: [-2000, index - 1, index, index + 1, 2000],\n outputRange: [slideScale, slideScale, 1, slideScale, slideScale]\n });\n let translateX = this.animationView?.animationPhase.interpolate({\n inputRange: [-2000, index - 1, index, index + 1, 2000],\n outputRange: [-56, -56, 0, 56, 56]\n });\n return (\n <Animated.View key={this.generateItemKey(item, index, props)}\n onLayout={this.addSlideLayout.bind(this, index)}\n style={[\n {height: props.type === 'dynamic' ? undefined : '100%'},\n this.styles.slide,\n index === 0 ? this.styles.firstSlide : null,\n index === data.length - 1 ? this.styles.lastSlide: null,\n isActive ? this.styles.activeSlide: null,\n translateX && scale ? {\n transform: [\n {\n translateX: !isUndefined(slideTranslateX) ? slideTranslateX : translateX\n }, {\n scale: scale\n }\n ]\n } : null]}>\n <Tappable onTap={() => {\n this.onSlideChange(index + 1);\n const position = this.slidesLayout\n .filter((l , i) => i < index)\n .reduce((s, l) => s + l.width, 0);\n this.animationView?.setPosition(-1 * position);\n }} rippleColor={this.styles.root.rippleColor} styles={{height: \"100%\"}}>\n {this.renderItem(item, index)}\n </Tappable>\n </Animated.View>\n );\n })}\n </SwipeAnimation.View>\n {hasNavs ? (\n <View style={styles.btnPanel}>\n <WmIcon\n id={this.getTestId('prev_icon')}\n iconclass=\"wi wi-chevron-left fa-2x\"\n styles={styles.prevBtn}\n onTap={this.prev}\n accessibilitylabel='back'/>\n <WmIcon\n id={this.getTestId('next_icon')}\n iconclass=\"wi wi-chevron-right fa-2x\"\n styles={styles.nextBtn}\n onTap={this.next}\n accessibilitylabel='next'/>\n </View>): null}\n {hasDots && data ? this.renderPagination(data) : null}\n </View>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -46,7 +46,7 @@ export default class WmProgressCircle extends BaseComponent {
|
|
46
46
|
return /*#__PURE__*/React.createElement(View, _extends({
|
47
47
|
style: styles.root,
|
48
48
|
onLayout: this.onLayout.bind(this)
|
49
|
-
}, getAccessibilityProps(AccessibilityWidgetType.PROGRESSCIRCLE, props)), this._background, /*#__PURE__*/React.createElement(Tappable, {
|
49
|
+
}, getAccessibilityProps(AccessibilityWidgetType.PROGRESSCIRCLE, props), this.getTestPropsForAction('progresscircle')), this._background, /*#__PURE__*/React.createElement(Tappable, {
|
50
50
|
target: this,
|
51
51
|
styles: {
|
52
52
|
root: {
|
@@ -54,7 +54,7 @@ export default class WmProgressCircle extends BaseComponent {
|
|
54
54
|
height: '100%'
|
55
55
|
}
|
56
56
|
}
|
57
|
-
}, /*#__PURE__*/React.createElement(AnimatedCircularProgress,
|
57
|
+
}, /*#__PURE__*/React.createElement(AnimatedCircularProgress, {
|
58
58
|
fill: value,
|
59
59
|
width: styles.progressValue.height,
|
60
60
|
backgroundWidth: styles.progressValue.height,
|
@@ -63,7 +63,7 @@ export default class WmProgressCircle extends BaseComponent {
|
|
63
63
|
lineCap: styles.progressValue.buttStyle || "butt",
|
64
64
|
backgroundColor: styles.progressCircle.backgroundColor,
|
65
65
|
size: this.state.radius
|
66
|
-
}
|
66
|
+
}, fill => /*#__PURE__*/React.createElement(View, {
|
67
67
|
style: {
|
68
68
|
alignItems: 'center'
|
69
69
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","View","Text","isNumber","AnimatedCircularProgress","Tappable","BaseComponent","BaseComponentState","AccessibilityWidgetType","getAccessibilityProps","WmProgressCircleProps","DEFAULT_CLASS","WmProgressCircleState","constructor","args","_defineProperty","WmProgressCircle","props","onLayout","e","width","nativeEvent","layout","height","radius","state","Math","min","updateState","renderWidget","value","datavalue","minvalue","maxvalue","styles","theme","mergeStyle","getStyle","type","showText","captionplacement","createElement","_extends","style","root","bind","PROGRESSCIRCLE","
|
1
|
+
{"version":3,"names":["React","View","Text","isNumber","AnimatedCircularProgress","Tappable","BaseComponent","BaseComponentState","AccessibilityWidgetType","getAccessibilityProps","WmProgressCircleProps","DEFAULT_CLASS","WmProgressCircleState","constructor","args","_defineProperty","WmProgressCircle","props","onLayout","e","width","nativeEvent","layout","height","radius","state","Math","min","updateState","renderWidget","value","datavalue","minvalue","maxvalue","styles","theme","mergeStyle","getStyle","type","showText","captionplacement","createElement","_extends","style","root","bind","PROGRESSCIRCLE","getTestPropsForAction","_background","target","fill","progressValue","backgroundWidth","rotation","tintColor","backgroundColor","lineCap","buttStyle","progressCircle","size","alignItems","text","getTestPropsForLabel","title","subtitle","subTitle"],"sources":["progress-circle.component.tsx"],"sourcesContent":["import React from 'react';\nimport { LayoutChangeEvent, View, Text } from 'react-native';\nimport { isNumber } from 'lodash';\nimport { AnimatedCircularProgress } from 'react-native-circular-progress';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nimport WmProgressCircleProps from './progress-circle.props';\nimport { DEFAULT_CLASS, WmProgressCircleStyles } from './progress-circle.styles';\n\n\nexport class WmProgressCircleState extends BaseComponentState<WmProgressCircleProps> {\n radius = 10;\n}\n\nexport default class WmProgressCircle extends BaseComponent<WmProgressCircleProps, WmProgressCircleState, WmProgressCircleStyles> {\n\n constructor(props: WmProgressCircleProps) {\n super(props, DEFAULT_CLASS, new WmProgressCircleProps(), new WmProgressCircleState());\n }\n\n onLayout(e: LayoutChangeEvent) {\n const width = e.nativeEvent.layout.width;\n const height = e.nativeEvent.layout.height;\n let radius = this.state.radius;\n if (!width) {\n radius = height;\n } else if (!height) {\n radius = width;\n } else {\n radius = Math.min(width, height);\n }\n this.updateState({\n radius: radius\n } as WmProgressCircleState);\n }\n\n renderWidget(props: WmProgressCircleProps) {\n let value = 0;\n if (isNumber(props.datavalue) && isNumber(props.minvalue) && isNumber(props.maxvalue)) {\n value = (+props.datavalue - (+props.minvalue)) / (+props.maxvalue - (+props.minvalue)) * 100;\n }\n const styles = this.theme.mergeStyle(this.theme.getStyle(`app-${props.type}-progress-circle`), this.styles);\n const showText = props.captionplacement !== 'hidden';\n return (\n <View style={styles.root} onLayout={this.onLayout.bind(this)} {...getAccessibilityProps(AccessibilityWidgetType.PROGRESSCIRCLE, props)} {...this.getTestPropsForAction('progresscircle')}>\n {this._background}\n <Tappable target={this} styles={{root:{width: '100%', height: '100%'}}}>\n <AnimatedCircularProgress\n fill={value}\n width={styles.progressValue.height}\n backgroundWidth={styles.progressValue.height}\n rotation={0}\n tintColor={styles.progressValue.backgroundColor}\n lineCap={styles.progressValue.buttStyle || \"butt\"}\n backgroundColor={styles.progressCircle.backgroundColor}\n size={this.state.radius}>\n {(fill) => (<View style={{alignItems: 'center'}}>\n <Text style={styles.text} {...this.getTestPropsForLabel('title')}>{ showText ? props.title || value : '' }</Text>\n {showText && props.subtitle ? (<Text style={styles.subTitle} {...this.getTestPropsForLabel('subtitle')}>{ props.subtitle }</Text>) : null}\n </View>)} \n </AnimatedCircularProgress>\n </Tappable>\n </View>); \n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -582,6 +582,7 @@ export class BaseChartComponent extends BaseComponent {
|
|
582
582
|
renderLoadingIcon() {
|
583
583
|
const props = this.state.props;
|
584
584
|
return /*#__PURE__*/React.createElement(WmIcon, {
|
585
|
+
id: this.getTestId('loadericon'),
|
585
586
|
styles: this.styles.loadingIcon,
|
586
587
|
iconclass: props.loadingicon,
|
587
588
|
caption: props.loadingdatamsg
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Dimensions","View","Text","moment","forEach","get","isArray","isEmpty","isObject","maxBy","minBy","set","trim","orderBy","VictoryAxis","VictoryLegend","VictoryLabel","BaseComponent","BaseComponentState","WmIcon","ThemeFactory","DEFAULT_CLASS","constructSampleData","getChartType","isWebPreviewMode","BaseChartComponentState","constructor","args","_defineProperty","undefined","screenWidth","width","shapes","SI_SYMBOL","BaseChartComponent","props","defaultClass","defaultProps","defaultState","theme","applyTheme","subscribe","event","updateState","isTooltipOpen","componentDidMount","onViewLayoutChange","e","viewWidth","nativeEvent","layout","viewHeight","height","state","chartWidth","Number","totalHeight","abbreviateNumber","number","tier","Math","log10","abs","suffix","scale","pow","scaled","toFixed","getLegendView","colorScale","showlegend","top","parseInt","styles","root","orientation","createElement","name","gutter","data","legendData","style","border","stroke","borderPadding","left","y","getYScaleMinValue","value","_min","floor","setYAxisFormat","yVal","ynumberformat","matchFixed","match","matchExponential","toExponential","toLocaleString","getXaxis","minIndex","maxIndex","xaxisDatakeyArr","length","getTickValueLabel","xtickexpr","yaxislabeldistance","crossAxis","label","xaxislabel","xaxisdatakey","xunits","axisLabel","mergeStyle","yAxisLabel","grid","hidegridxaxis","xGrid","axis","showxaxis","xAxis","ticks","xTicks","tickLabels","xTickLabels","fixLabelOverlap","autoadjustlabels","axisLabelComponent","tickLabelComponent","offsetyaxis","angle","labelangle","tickCount","invertAxis","isRTL","tickFormat","d","i","getYAxis","showyaxis","ytickexpr","xaxislabeldistance","yaxislabel","yaxisdatakey","yunits","hidegridyaxis","yGrid","yAxis","yTicks","yTickLabels","x","offsetxaxis","dependentAxis","setTooltipTemplate","partialName","template","setTooltipPosition","xCoordinate","offsetX","locationX","yCoordinate","offsetY","locationY","tooltipXPosition","tooltipoffsetx","tooltipYPosition","tooltipoffsety","setTooltipPartialLayout","tooltipLayout","renderPointer","transform","rotate","bottom","tooltipPointer","borderBottomWidth","getTooltip","yAxisData","tooltipYaxis","renderitempartial","onLayout","bind","position","zIndex","selectedItem","index","tooltipContainer","fontSize","fontWeight","tooltipXText","tooltipXaxis","isAxisDomainSupported","type","isAxisDomainValid","areMinMaxValuesValid","values","isFinite","min","max","setDomainValues","xDomainValues","yDomainValues","getXMinMaxValues","getYMinMaxValues","chartMinX","chartMaxX","yMin","chartMinY","chartMaxY","datum","xValues","dataObject","yValues","minValues","maxValues","push","setHeightWidthOnChart","cb","chartHeight","themeName","colorsToUse","customcolors","split","map","themeToUse","getColorsObj","getTheme","colors","prepareLegendData","ldata","prepareEvents","_","idx","childName","target","eventKey","String","eventHandlers","onClick","mutation","onMouseOver","onMouseOut","getxAxisVal","dataObj","xKey","isValid","isNaN","replace","prepareDataItems","dataset","xaxis","yaxis","datasets","_yaxis","shape","yPts","o","xindex","xVal","parseFloat","bubblesize","invokeEventCallback","proxy","setTimeout","endAngle","updateData","renderLoadingIcon","loadingIcon","iconclass","loadingicon","caption","loadingdatamsg","labeltype","setTotal","ydomain","xdomain","loading","total","onPropertyChange","$new","$old","units","xLabel","yLabel","getDataType","widgetContext","Error"],"sources":["basechart.component.tsx"],"sourcesContent":["import React from \"react\";\nimport { Dimensions, View, Text, LayoutChangeEvent, LayoutRectangle} from 'react-native';\nimport moment from \"moment\";\nimport {forEach, get, isArray, isEmpty, isObject, maxBy, minBy, set, trim, orderBy} from \"lodash-es\";\nimport { ScatterSymbolType } from \"victory-core\";\nimport {VictoryAxis, VictoryLegend, VictoryLabel, VictoryVoronoiContainer, VictoryTooltip} from \"victory-native\";\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport WmIcon from \"@wavemaker/app-rn-runtime/components/basic/icon/icon.component\";\nimport ThemeFactory from \"@wavemaker/app-rn-runtime/components/chart/theme/chart.theme\";\n\nimport BaseChartComponentProps from \"./basechart.props\";\nimport { DEFAULT_CLASS, BaseChartComponentStyles} from \"./basechart.styles\";\nimport _ from \"lodash\";\nimport { constructSampleData, getChartType } from \"./staticdata\";\nimport { isWebPreviewMode } from \"@wavemaker/app-rn-runtime/core/utils\";\n\nexport class BaseChartComponentState <T extends BaseChartComponentProps> extends BaseComponentState<T> {\n data: any = [];\n content: any = null;\n yAxis: Array<string> = [];\n xaxisDatakeyArr: Array<any> = [];\n legendData: any = [];\n theme: any;\n colors: any;\n xLabel: string = '';\n yLabel: string = '';\n total: number = 0;\n endAngle: number = 0;\n loading: boolean = true;\n chartHeight: number = 0;\n chartWidth: number = 0;\n totalHeight: number = 0;\n chartMinY: number | undefined = undefined;\n chartMinX: number | undefined = undefined;\n chartMaxY: number | undefined = undefined;\n chartMaxX: number | undefined = undefined;\n tooltipXPosition = 0;\n tooltipYPosition = 0;\n tooltipXaxis = 0;\n tooltipYaxis = 0;\n tooltipoffsetx: number = 50;\n tooltipoffsety: number = 60;\n isTooltipOpen: boolean = false;\n selectedItem: any = {}\n template: string = \"\";\n}\n\nconst screenWidth = Dimensions.get(\"window\").width;\n\nconst shapes: {[key: string]: any} = {\n 'circle': 'circle',\n 'cross': 'cross',\n 'diamond': 'diamond',\n 'plus': 'plus',\n 'minus': 'minus',\n 'square': 'square',\n 'star': 'star',\n 'triangle-down': 'triangleDown',\n 'triangle-up': 'triangleUp',\n};\n\nconst SI_SYMBOL = [\"\", \"k\", \"M\", \"G\", \"T\", \"P\", \"E\"];\n\nexport abstract class BaseChartComponent<T extends BaseChartComponentProps, S extends BaseChartComponentState<T>, L extends BaseChartComponentStyles> extends BaseComponent<T, S, L> {\n protected screenWidth: number = screenWidth;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n if (!props.theme) {\n this.applyTheme(props);\n }\n this.subscribe('globaltouch', (event: any) => {\n this.updateState({\n isTooltipOpen: false\n } as any)\n });\n }\n\n componentDidMount() {\n super.componentDidMount();\n }\n\n onViewLayoutChange(e: LayoutChangeEvent){\n let viewWidth = e.nativeEvent.layout.width;\n let viewHeight = e.nativeEvent.layout.height;\n if (this?.state && viewWidth !== this.state.chartWidth) {\n this.updateState({\n chartWidth: Number(viewWidth),\n totalHeight: Number(viewHeight)\n } as any)\n }\n }\n\n\n abbreviateNumber(number: any) {\n if (typeof number !== 'number') {\n return number;\n }\n const tier = Math.log10(Math.abs(number)) / 3 | 0;\n\n if (tier == 0) {\n return number;\n }\n\n // get suffix and determine scale\n const suffix = SI_SYMBOL[tier];\n const scale = Math.pow(10, tier * 3);\n\n // scale the number\n var scaled = number / scale;\n\n // format number and add suffix\n return scaled.toFixed(1) + suffix;\n }\n\n getLegendView(colorScale?: any) {\n if (this.state.props.showlegend === 'hide') {\n return null;\n }\n const props = this.state.props;\n let top = props.showlegend === 'bottom' ? parseInt(this.styles.root.height as string) : 0;\n if (top) {\n top = top - (50); // remove legendHeight\n }\n const orientation = (props.showlegend === 'right' || props.showlegend === 'left') ? 'vertical' : 'horizontal';\n return <VictoryLegend\n colorScale={colorScale}\n name={'legendData'}\n orientation={orientation}\n gutter={20}\n data={this.state.legendData}\n style={{ border: { stroke: 'none' } }}\n borderPadding={{top: 30, left: 50}}\n y={top}\n />\n }\n\n getYScaleMinValue(value: number) {\n const _min = Math.floor(value);\n return Math.abs(value) - _min > 0 ? value - .1 : _min - 1;\n };\n\n setYAxisFormat(yVal: any, ynumberformat: string){\n const matchFixed = ynumberformat.match(/\\.([0-9])f/);\n const matchExponential = ynumberformat.match(/\\.([0-9])g/);\n if (matchFixed) {\n return yVal.toFixed(parseInt(matchFixed[1], 10));\n } else if (matchExponential) {\n return yVal.toExponential(parseInt(matchExponential[1], 10));\n }\n switch (ynumberformat) {\n case '%':\n return (yVal * 100).toFixed(0) + '%';\n case 'Billion':\n return (yVal / 1e9).toFixed(1) + 'B';\n case 'Million':\n return (yVal / 1e6).toFixed(1) + 'M';\n case 'Thousand':\n return (yVal / 1e3).toFixed(1) + 'K';\n case ',r':\n return yVal.toLocaleString();\n }\n }\n\n // x axis with vertical lines having grid stroke colors\n getXaxis() {\n const minIndex = 0;\n const maxIndex = this.state.xaxisDatakeyArr.length - 1;\n const props = this.state.props;\n const getTickValueLabel = props.xtickexpr as any;\n let height = this.styles.root.height || 250;\n let yaxislabeldistance = props.yaxislabeldistance ? props.yaxislabeldistance : height as number - 20;\n if (height && typeof height === 'string') {\n height = parseInt(height);\n }\n return <VictoryAxis crossAxis={false} label={(props.xaxislabel || props.xaxisdatakey || \"name\") + (props.xunits ? `(${props.xunits})` : '')}\n style={{\n axisLabel: this.theme.mergeStyle(this.styles.axisLabel, this.styles.yAxisLabel),\n grid: props.hidegridxaxis ?\n { stroke: null } : this.theme.mergeStyle(this.styles.grid, this.styles.xGrid),\n axis: props.showxaxis === false ?\n { stroke: 'none' } : this.theme.mergeStyle(this.styles.axis, this.styles.xAxis),\n ticks: this.theme.mergeStyle(this.styles.ticks, this.styles.xTicks),\n tickLabels: this.theme.mergeStyle(this.styles.tickLabels, this.styles.xTickLabels)\n }}\n fixLabelOverlap= {props.autoadjustlabels?true:false}\n axisLabelComponent={<VictoryLabel y={yaxislabeldistance}/>}\n tickLabelComponent={<VictoryLabel y={props.offsetyaxis ? props.offsetyaxis : height as number - 30} angle={props.labelangle || 0}/>} theme={this.state.theme}\n tickCount={this.state.xaxisDatakeyArr.length} \n invertAxis={this.isRTL}\n tickFormat= {(d: number, i: number, ticks: any) => {\n if (getTickValueLabel) {\n return getTickValueLabel(this.state.xaxisDatakeyArr[d], i, (ticks || []).length);\n } else if (this.state.xaxisDatakeyArr) {\n return this.state.xaxisDatakeyArr[d];\n }\n return '';\n }}\n />; \n} \n\n\n /* y axis with horizontal lines having grid stroke colors*/\n getYAxis() {\n const props = this.state.props;\n if (props.showyaxis === false) {\n return null;\n }\n const getTickValueLabel = props.ytickexpr as any;\n const ynumberformat = props.ynumberformat;\n let xaxislabeldistance = props.xaxislabeldistance ? props.xaxislabeldistance : 20\n return <VictoryAxis crossAxis={false} label={(props.yaxislabel || props.yaxisdatakey) + (props.yunits ? `(${props.yunits})` : '')}\n style={{\n axisLabel: this.theme.mergeStyle(this.styles.axisLabel, this.styles.yAxisLabel),\n grid: props.hidegridyaxis ? { stroke: null } : this.theme.mergeStyle(this.styles.grid, this.styles.yGrid),\n axis: props.showxaxis === false ?\n { stroke: 'none' } : this.theme.mergeStyle(this.styles.axis, this.styles.yAxis),\n ticks: this.theme.mergeStyle(this.styles.ticks, this.styles.yTicks),\n tickLabels: this.theme.mergeStyle(this.styles.tickLabels, this.styles.yTickLabels)\n }}\n fixLabelOverlap= {props.autoadjustlabels?true:false}\n axisLabelComponent={<VictoryLabel x={xaxislabeldistance}/>}\n tickLabelComponent={<VictoryLabel x={props.offsetxaxis ? props.offsetxaxis : 50}/>} \n theme={this.state.theme}\n tickFormat= {(d: number, i: number, ticks: any) => {\n if (getTickValueLabel) {\n return getTickValueLabel(d, i, (ticks || []).length);\n }\n if (ynumberformat) {\n return this.setYAxisFormat(d, ynumberformat);\n }\n return this.abbreviateNumber(d);\n }}\n orientation={this.isRTL?\"right\":\"left\"}\n dependentAxis />;\n }\n \n setTooltipTemplate(partialName: any) {\n this.updateState({ template: partialName} as any);\n }\n\n setTooltipPosition(nativeEvent: any){\n let xCoordinate = isWebPreviewMode() ? nativeEvent.offsetX : nativeEvent.locationX;\n let yCoordinate = isWebPreviewMode() ? nativeEvent.offsetY : nativeEvent.locationY;\n this.updateState({\n tooltipXPosition: xCoordinate - this.state.tooltipoffsetx,\n tooltipYPosition: yCoordinate - this.state.tooltipoffsety,\n } as any)\n }\n\n setTooltipPartialLayout(event: LayoutChangeEvent){\n let tooltipLayout = event.nativeEvent.layout;\n this.updateState({\n tooltipoffsetx: tooltipLayout.width/2,\n tooltipoffsety: tooltipLayout.height\n } as any)\n }\n \n renderPointer(){\n return (\n <View \n style={[\n {\n transform: [\n { rotate: '180deg' }\n ],\n bottom: -10,\n left: this.state.tooltipoffsetx - this.styles.tooltipPointer.borderBottomWidth/2\n },\n this.styles.tooltipPointer\n ]}\n />\n )\n }\n\n getTooltip() {\n const ynumberformat = this.state.props.ynumberformat;\n let yAxisData = ynumberformat ? this.setYAxisFormat(this.state.tooltipYaxis, ynumberformat) : this.state.tooltipYaxis;\n return this.state.isTooltipOpen ? (\n !isEmpty(this.state.template) && this.props.renderitempartial ?\n <View onLayout={this.setTooltipPartialLayout.bind(this)} style={{ position: \"absolute\", top: this.state.tooltipYPosition as number, left: this.state.tooltipXPosition as number , zIndex: 99}}>\n {this.props.renderitempartial(this.state.selectedItem, this.state.selectedItem.index, this.state.template)}\n {this.renderPointer()}\n </View> : (\n <View style={[\n { position: \"absolute\", top: this.state.tooltipYPosition as number, left: this.state.tooltipXPosition as number},\n this.styles.tooltipContainer\n ]}>\n <Text style={[{ fontSize: 16, fontWeight: 'bold' },this.styles.tooltipXText]}>{this.state.tooltipXaxis}</Text>\n <Text style={this.styles.tooltipXText}>{yAxisData}</Text>\n {this.renderPointer()}\n </View>)\n ) : null;\n } \n\n // X/Y Domain properties are supported only for Column and Area charts\n isAxisDomainSupported(type: string) {\n return type === 'Column'|| type === 'Area';\n }\n\n // Check whether X/Y Domain was set to Min and is supported for the present chart\n isAxisDomainValid(axis: string) {\n const props = this.state.props;\n if (get(props, axis + 'domain') === 'Min' && (this.isAxisDomainSupported(props.type))) {\n return true;\n }\n return false;\n };\n\n// Check whether min and max values are finite or not\n areMinMaxValuesValid(values: any) {\n if (isFinite(values.min) && isFinite(values.max)) {\n return true;\n }\n return false;\n };\n\n setDomainValues() {\n let xDomainValues, yDomainValues;\n if (this.state.data.length > 0) {\n if (this.isAxisDomainValid('x') && typeof this.state.data[0].x === 'number') {\n xDomainValues = this.getXMinMaxValues(this.state.data[0]);\n }\n if (this.isAxisDomainValid('y')) {\n yDomainValues = this.getYMinMaxValues(this.state.data);\n }\n if (xDomainValues) {\n this.updateState({\n chartMinX: yDomainValues.min.x,\n chartMaxX: yDomainValues.max.x\n } as S)\n }\n let yMin;\n if (yDomainValues) {\n if (this.areMinMaxValuesValid({max: yDomainValues.max.y, min: yDomainValues.min.y})) {\n yMin = this.getYScaleMinValue(yDomainValues.min.y);\n }\n this.updateState({\n chartMinY: yMin ? yMin : yDomainValues.min.y,\n chartMaxY: yDomainValues.max.y\n } as S);\n }\n }\n }\n\n // Getting the min and max values among all the x values\n getXMinMaxValues(datum: Array<{x: number, y: any}>) {\n if (!datum) {\n return;\n }\n const xValues: any = {};\n /*\n compute the min x valuex\n eg: When data has objects\n input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]\n min x: 1\n eg: When data has arrays\n input: [[10, 20], [20, 30], [30, 40]];\n min x: 10\n */\n xValues.min = minBy(datum, (dataObject: {x: any, y: any}) => dataObject.x) || {x: undefined};\n /*\n compute the max x value\n eg: When data has objects\n input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]\n max x: 3\n eg: When data has arrays\n input: [[10, 20], [20, 30], [30, 40]];\n max x: 30\n */\n xValues.max = maxBy(datum, (dataObject: {x: any, y: any}) => dataObject.x)|| {x: undefined};\n return xValues;\n }\n\n // Getting the min and max values among all the y values\n getYMinMaxValues(datum: Array<Array<{x: any, y: number}>>) {\n const yValues: any = {},\n minValues: any = [],\n maxValues: any = [];\n if (!datum) {\n return;\n }\n\n /*\n Getting the min and max y values among all the series of data\n compute the min y value\n eg: When data has objects\n input: [[{x:1, y:2}, {x:2, y:3}, {x:3, y:4}], [{x:2, y:3}, {x:3, y:4}, {x:4, y:5}]]\n min y values : '2'(among first set) & '3'(among second set)\n max y values : '4'(among first set) & '5'(among second set)\n\n eg: When data has arrays\n input: [[[10, 20], [20, 30], [30, 40]], [[20, 30], [30, 40], [40, 50]]]\n min y values : '20'(among first set) & '30'(among second set)\n max y values : '40'(among first set) & '50'(among second set)\n */\n\n forEach(datum, data => {\n if (data && !isEmpty(data)) {\n minValues.push(minBy(data, (dataObject: {x: any, y: any}) => { return dataObject.y }));\n maxValues.push(maxBy(data, (dataObject: {x: any, y: any}) => { return dataObject.y }));\n }\n });\n // Gets the least and highest values among all the min and max values of respective series of data\n yValues.min = minBy(minValues, (dataObject: {x: any, y: any}) => dataObject.y) || {y: undefined};\n yValues.max = maxBy(maxValues, (dataObject: {x: any, y: any}) => dataObject.y) || {y: undefined};\n return yValues;\n }\n\n setHeightWidthOnChart(cb?: () => void) {\n let height = this.styles.root.height || 250;\n let width = this.styles.root.width || screenWidth;\n if (height && typeof height === 'string') {\n height = parseInt(height);\n }\n if (width && typeof width === 'string') {\n width = parseInt(width);\n }\n this.updateState({\n chartHeight: height,\n chartWidth: width\n } as S, cb);\n }\n\n applyTheme(props: BaseChartComponentProps) {\n let themeName = props.theme ? props.theme : (props.type === 'Pie' ? 'Azure' : 'Terrestrial');\n let colorsToUse = [];\n if (typeof props.customcolors === 'string' && !isEmpty(props.customcolors)) {\n colorsToUse = props.customcolors.split(',').map(trim);\n }\n let themeToUse;\n if (typeof themeName === 'string') {\n if (!colorsToUse.length) {\n colorsToUse = props.customcolors as string[];\n }\n if(props.customcolors===undefined) {\n colorsToUse = ThemeFactory.getColorsObj(themeName);\n }\n themeToUse = ThemeFactory.getTheme(themeName, props.styles, colorsToUse);\n } else if (typeof themeName === 'object') {\n // if theme is passed as an object then use that custom theme.\n themeToUse = props.theme;\n }\n this.updateState({\n colors: colorsToUse,\n theme: themeToUse\n } as S);\n }\n\n prepareLegendData() {\n const props = this.state.props;\n if (this.state.yAxis) {\n let ldata: any;\n if (props.type === 'Stack') {\n const data = orderBy(this.state.data[0], 'y', 'asc');\n ldata = data.map((d: any) => {\n return {\n name: this.state.xaxisDatakeyArr[d.x]\n }\n });\n } else {\n ldata = this.state.yAxis.map((d: string) => {\n return {\n name: d\n }\n });\n }\n\n this.updateState({\n legendData: ldata\n } as S);\n }\n }\n\n prepareEvents(name: string) {\n return this.state.legendData.map((_: any, idx: number) => {\n return {\n childName: ['legend'],\n target: 'data',\n eventKey: String(idx),\n eventHandlers: {\n onClick: () => {\n return [\n {\n childName: [name + '_' + idx],\n target: 'data',\n eventKey: 'all',\n mutation: (props: any) => {\n return null;\n }\n }\n ];\n },\n onMouseOver: () => {\n },\n onMouseOut: () => {\n }\n }\n };\n });\n }\n\n // If date string is bound to xaxis then we are pushing the x values as indexes.\n getxAxisVal(dataObj: {[key: string] : any}, xKey: string, index: number, xaxisDatakeyArr: Array<any>) {\n const value: any = get(dataObj, xKey);\n if (moment(value).isValid() || isNaN(value) || typeof value === 'string' || typeof value === 'number') {\n if (typeof value === \"string\"){\n xaxisDatakeyArr.push(value.replace(\"\\\\n\",\"\\n\"));\n }\n else{\n xaxisDatakeyArr.push(value);\n }\n return index;\n }\n return value;\n }\n\n prepareDataItems(dataset: any) {\n const props = this.state.props;\n let xaxis = props.xaxisdatakey;\n let yaxis = props.yaxisdatakey;\n let xaxisDatakeyArr: Array<any> = [];\n let datasets: any = [];\n if (dataset.length === 0) {\n dataset = constructSampleData(getChartType(this.props), yaxis?.split(','), this.props.shape);\n xaxis = \"x\";\n yaxis = \"y\";\n }\n if (xaxis && yaxis) {\n let yPts = yaxis.split(',');\n yPts.forEach((y: any) => {\n if (xaxis !== y) {\n datasets.push(dataset.map((o: {[key: string] : any}, xindex: number) => {\n const xVal = this.getxAxisVal(o, xaxis, xindex, xaxisDatakeyArr);\n let yVal: string | number = get(o, y);\n if (typeof yVal === 'string') {\n yVal = parseFloat(yVal) || yVal;\n }\n let dataObj = {\n x: xVal,\n y: yVal,\n };\n if (props.bubblesize) {\n set(dataObj, 'size', get(o, props.bubblesize, 5));\n }\n if (props.shape) {\n set(dataObj, 'symbol', shapes[props.shape]);\n }\n return dataObj;\n }));\n }\n });\n // chartTransform\n this.invokeEventCallback('onTransform', [undefined, this.proxy]);\n if (props.type == 'Pie' || props.type === 'Donut') {\n // for animation effect\n setTimeout(() => {\n this.updateState({\n endAngle: 360,\n } as S);\n }, 500);\n }\n this.updateData(datasets, yPts, xaxisDatakeyArr);\n }\n }\n\n\n protected renderLoadingIcon() {\n const props = this.state.props;\n return (<WmIcon styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\n caption={props.loadingdatamsg}></WmIcon>);\n }\n\n updateData(datasets: any, yPts: any, xaxisDatakeyArr: Array<any>) {\n const props = this.state.props;\n this.updateState({\n data: datasets as any,\n yAxis: yPts,\n xaxisDatakeyArr: xaxisDatakeyArr\n } as S, () => {\n this.prepareLegendData();\n if (!props.labeltype || props.labeltype === 'percent') {\n this.setTotal(this.state.data[0]);\n }\n if (this.isAxisDomainSupported(props.type) && (props.ydomain || props.xdomain)) {\n this.setDomainValues();\n }\n this.updateState({\n loading: false\n } as S);\n });\n }\n\n setTotal(data: Array<{x: any, y: number}>) {\n let total = 0;\n data.forEach((d: {x: any, y: any}) => {\n total += d.y as number;\n });\n this.updateState({\n total: total\n } as S);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n let units = '';\n switch(name) {\n case 'customcolors':\n if (isEmpty($new)) {\n return;\n }\n if (typeof $new === 'string') {\n $new = $new.split(',');\n }\n this.updateState({\n colors: $new\n } as S);\n break;\n case 'theme':\n this.applyTheme(props);\n break;\n case 'dataset':\n if (!isArray($new)) {\n if (isObject($new) && !isEmpty($new)) {\n $new = [$new];\n } else {\n $new = [];\n }\n }\n $new && this.prepareDataItems($new);\n break;\n case 'xaxislabel':\n if (props.xunits) {\n units = ' (' + props.xunits + ')';\n }\n this.updateState({\n xLabel: $new + units\n } as S);\n break;\n case 'yaxislabel':\n if (props.yunits) {\n units = ' (' + props.yunits + ')';\n }\n this.updateState({\n yLabel: $new + units\n } as S);\n break;\n }\n }\n}\nfunction getDataType(widgetContext: { yaxisdatakey: string | null | undefined; shape: any; }): any {\n throw new Error(\"Function not implemented.\");\n}\n\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","Dimensions","View","Text","moment","forEach","get","isArray","isEmpty","isObject","maxBy","minBy","set","trim","orderBy","VictoryAxis","VictoryLegend","VictoryLabel","BaseComponent","BaseComponentState","WmIcon","ThemeFactory","DEFAULT_CLASS","constructSampleData","getChartType","isWebPreviewMode","BaseChartComponentState","constructor","args","_defineProperty","undefined","screenWidth","width","shapes","SI_SYMBOL","BaseChartComponent","props","defaultClass","defaultProps","defaultState","theme","applyTheme","subscribe","event","updateState","isTooltipOpen","componentDidMount","onViewLayoutChange","e","viewWidth","nativeEvent","layout","viewHeight","height","state","chartWidth","Number","totalHeight","abbreviateNumber","number","tier","Math","log10","abs","suffix","scale","pow","scaled","toFixed","getLegendView","colorScale","showlegend","top","parseInt","styles","root","orientation","createElement","name","gutter","data","legendData","style","border","stroke","borderPadding","left","y","getYScaleMinValue","value","_min","floor","setYAxisFormat","yVal","ynumberformat","matchFixed","match","matchExponential","toExponential","toLocaleString","getXaxis","minIndex","maxIndex","xaxisDatakeyArr","length","getTickValueLabel","xtickexpr","yaxislabeldistance","crossAxis","label","xaxislabel","xaxisdatakey","xunits","axisLabel","mergeStyle","yAxisLabel","grid","hidegridxaxis","xGrid","axis","showxaxis","xAxis","ticks","xTicks","tickLabels","xTickLabels","fixLabelOverlap","autoadjustlabels","axisLabelComponent","tickLabelComponent","offsetyaxis","angle","labelangle","tickCount","invertAxis","isRTL","tickFormat","d","i","getYAxis","showyaxis","ytickexpr","xaxislabeldistance","yaxislabel","yaxisdatakey","yunits","hidegridyaxis","yGrid","yAxis","yTicks","yTickLabels","x","offsetxaxis","dependentAxis","setTooltipTemplate","partialName","template","setTooltipPosition","xCoordinate","offsetX","locationX","yCoordinate","offsetY","locationY","tooltipXPosition","tooltipoffsetx","tooltipYPosition","tooltipoffsety","setTooltipPartialLayout","tooltipLayout","renderPointer","transform","rotate","bottom","tooltipPointer","borderBottomWidth","getTooltip","yAxisData","tooltipYaxis","renderitempartial","onLayout","bind","position","zIndex","selectedItem","index","tooltipContainer","fontSize","fontWeight","tooltipXText","tooltipXaxis","isAxisDomainSupported","type","isAxisDomainValid","areMinMaxValuesValid","values","isFinite","min","max","setDomainValues","xDomainValues","yDomainValues","getXMinMaxValues","getYMinMaxValues","chartMinX","chartMaxX","yMin","chartMinY","chartMaxY","datum","xValues","dataObject","yValues","minValues","maxValues","push","setHeightWidthOnChart","cb","chartHeight","themeName","colorsToUse","customcolors","split","map","themeToUse","getColorsObj","getTheme","colors","prepareLegendData","ldata","prepareEvents","_","idx","childName","target","eventKey","String","eventHandlers","onClick","mutation","onMouseOver","onMouseOut","getxAxisVal","dataObj","xKey","isValid","isNaN","replace","prepareDataItems","dataset","xaxis","yaxis","datasets","_yaxis","shape","yPts","o","xindex","xVal","parseFloat","bubblesize","invokeEventCallback","proxy","setTimeout","endAngle","updateData","renderLoadingIcon","id","getTestId","loadingIcon","iconclass","loadingicon","caption","loadingdatamsg","labeltype","setTotal","ydomain","xdomain","loading","total","onPropertyChange","$new","$old","units","xLabel","yLabel","getDataType","widgetContext","Error"],"sources":["basechart.component.tsx"],"sourcesContent":["import React from \"react\";\nimport { Dimensions, View, Text, LayoutChangeEvent, LayoutRectangle} from 'react-native';\nimport moment from \"moment\";\nimport {forEach, get, isArray, isEmpty, isObject, maxBy, minBy, set, trim, orderBy} from \"lodash-es\";\nimport { ScatterSymbolType } from \"victory-core\";\nimport {VictoryAxis, VictoryLegend, VictoryLabel, VictoryVoronoiContainer, VictoryTooltip} from \"victory-native\";\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport WmIcon from \"@wavemaker/app-rn-runtime/components/basic/icon/icon.component\";\nimport ThemeFactory from \"@wavemaker/app-rn-runtime/components/chart/theme/chart.theme\";\n\nimport BaseChartComponentProps from \"./basechart.props\";\nimport { DEFAULT_CLASS, BaseChartComponentStyles} from \"./basechart.styles\";\nimport _ from \"lodash\";\nimport { constructSampleData, getChartType } from \"./staticdata\";\nimport { isWebPreviewMode } from \"@wavemaker/app-rn-runtime/core/utils\";\n\nexport class BaseChartComponentState <T extends BaseChartComponentProps> extends BaseComponentState<T> {\n data: any = [];\n content: any = null;\n yAxis: Array<string> = [];\n xaxisDatakeyArr: Array<any> = [];\n legendData: any = [];\n theme: any;\n colors: any;\n xLabel: string = '';\n yLabel: string = '';\n total: number = 0;\n endAngle: number = 0;\n loading: boolean = true;\n chartHeight: number = 0;\n chartWidth: number = 0;\n totalHeight: number = 0;\n chartMinY: number | undefined = undefined;\n chartMinX: number | undefined = undefined;\n chartMaxY: number | undefined = undefined;\n chartMaxX: number | undefined = undefined;\n tooltipXPosition = 0;\n tooltipYPosition = 0;\n tooltipXaxis = 0;\n tooltipYaxis = 0;\n tooltipoffsetx: number = 50;\n tooltipoffsety: number = 60;\n isTooltipOpen: boolean = false;\n selectedItem: any = {}\n template: string = \"\";\n}\n\nconst screenWidth = Dimensions.get(\"window\").width;\n\nconst shapes: {[key: string]: any} = {\n 'circle': 'circle',\n 'cross': 'cross',\n 'diamond': 'diamond',\n 'plus': 'plus',\n 'minus': 'minus',\n 'square': 'square',\n 'star': 'star',\n 'triangle-down': 'triangleDown',\n 'triangle-up': 'triangleUp',\n};\n\nconst SI_SYMBOL = [\"\", \"k\", \"M\", \"G\", \"T\", \"P\", \"E\"];\n\nexport abstract class BaseChartComponent<T extends BaseChartComponentProps, S extends BaseChartComponentState<T>, L extends BaseChartComponentStyles> extends BaseComponent<T, S, L> {\n protected screenWidth: number = screenWidth;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n if (!props.theme) {\n this.applyTheme(props);\n }\n this.subscribe('globaltouch', (event: any) => {\n this.updateState({\n isTooltipOpen: false\n } as any)\n });\n }\n\n componentDidMount() {\n super.componentDidMount();\n }\n\n onViewLayoutChange(e: LayoutChangeEvent){\n let viewWidth = e.nativeEvent.layout.width;\n let viewHeight = e.nativeEvent.layout.height;\n if (this?.state && viewWidth !== this.state.chartWidth) {\n this.updateState({\n chartWidth: Number(viewWidth),\n totalHeight: Number(viewHeight)\n } as any)\n }\n }\n\n\n abbreviateNumber(number: any) {\n if (typeof number !== 'number') {\n return number;\n }\n const tier = Math.log10(Math.abs(number)) / 3 | 0;\n\n if (tier == 0) {\n return number;\n }\n\n // get suffix and determine scale\n const suffix = SI_SYMBOL[tier];\n const scale = Math.pow(10, tier * 3);\n\n // scale the number\n var scaled = number / scale;\n\n // format number and add suffix\n return scaled.toFixed(1) + suffix;\n }\n\n getLegendView(colorScale?: any) {\n if (this.state.props.showlegend === 'hide') {\n return null;\n }\n const props = this.state.props;\n let top = props.showlegend === 'bottom' ? parseInt(this.styles.root.height as string) : 0;\n if (top) {\n top = top - (50); // remove legendHeight\n }\n const orientation = (props.showlegend === 'right' || props.showlegend === 'left') ? 'vertical' : 'horizontal';\n return <VictoryLegend\n colorScale={colorScale}\n name={'legendData'}\n orientation={orientation}\n gutter={20}\n data={this.state.legendData}\n style={{ border: { stroke: 'none' } }}\n borderPadding={{top: 30, left: 50}}\n y={top}\n />\n }\n\n getYScaleMinValue(value: number) {\n const _min = Math.floor(value);\n return Math.abs(value) - _min > 0 ? value - .1 : _min - 1;\n };\n\n setYAxisFormat(yVal: any, ynumberformat: string){\n const matchFixed = ynumberformat.match(/\\.([0-9])f/);\n const matchExponential = ynumberformat.match(/\\.([0-9])g/);\n if (matchFixed) {\n return yVal.toFixed(parseInt(matchFixed[1], 10));\n } else if (matchExponential) {\n return yVal.toExponential(parseInt(matchExponential[1], 10));\n }\n switch (ynumberformat) {\n case '%':\n return (yVal * 100).toFixed(0) + '%';\n case 'Billion':\n return (yVal / 1e9).toFixed(1) + 'B';\n case 'Million':\n return (yVal / 1e6).toFixed(1) + 'M';\n case 'Thousand':\n return (yVal / 1e3).toFixed(1) + 'K';\n case ',r':\n return yVal.toLocaleString();\n }\n }\n\n // x axis with vertical lines having grid stroke colors\n getXaxis() {\n const minIndex = 0;\n const maxIndex = this.state.xaxisDatakeyArr.length - 1;\n const props = this.state.props;\n const getTickValueLabel = props.xtickexpr as any;\n let height = this.styles.root.height || 250;\n let yaxislabeldistance = props.yaxislabeldistance ? props.yaxislabeldistance : height as number - 20;\n if (height && typeof height === 'string') {\n height = parseInt(height);\n }\n return <VictoryAxis crossAxis={false} label={(props.xaxislabel || props.xaxisdatakey || \"name\") + (props.xunits ? `(${props.xunits})` : '')}\n style={{\n axisLabel: this.theme.mergeStyle(this.styles.axisLabel, this.styles.yAxisLabel),\n grid: props.hidegridxaxis ?\n { stroke: null } : this.theme.mergeStyle(this.styles.grid, this.styles.xGrid),\n axis: props.showxaxis === false ?\n { stroke: 'none' } : this.theme.mergeStyle(this.styles.axis, this.styles.xAxis),\n ticks: this.theme.mergeStyle(this.styles.ticks, this.styles.xTicks),\n tickLabels: this.theme.mergeStyle(this.styles.tickLabels, this.styles.xTickLabels)\n }}\n fixLabelOverlap= {props.autoadjustlabels?true:false}\n axisLabelComponent={<VictoryLabel y={yaxislabeldistance}/>}\n tickLabelComponent={<VictoryLabel y={props.offsetyaxis ? props.offsetyaxis : height as number - 30} angle={props.labelangle || 0}/>} theme={this.state.theme}\n tickCount={this.state.xaxisDatakeyArr.length} \n invertAxis={this.isRTL}\n tickFormat= {(d: number, i: number, ticks: any) => {\n if (getTickValueLabel) {\n return getTickValueLabel(this.state.xaxisDatakeyArr[d], i, (ticks || []).length);\n } else if (this.state.xaxisDatakeyArr) {\n return this.state.xaxisDatakeyArr[d];\n }\n return '';\n }}\n />; \n} \n\n\n /* y axis with horizontal lines having grid stroke colors*/\n getYAxis() {\n const props = this.state.props;\n if (props.showyaxis === false) {\n return null;\n }\n const getTickValueLabel = props.ytickexpr as any;\n const ynumberformat = props.ynumberformat;\n let xaxislabeldistance = props.xaxislabeldistance ? props.xaxislabeldistance : 20\n return <VictoryAxis crossAxis={false} label={(props.yaxislabel || props.yaxisdatakey) + (props.yunits ? `(${props.yunits})` : '')}\n style={{\n axisLabel: this.theme.mergeStyle(this.styles.axisLabel, this.styles.yAxisLabel),\n grid: props.hidegridyaxis ? { stroke: null } : this.theme.mergeStyle(this.styles.grid, this.styles.yGrid),\n axis: props.showxaxis === false ?\n { stroke: 'none' } : this.theme.mergeStyle(this.styles.axis, this.styles.yAxis),\n ticks: this.theme.mergeStyle(this.styles.ticks, this.styles.yTicks),\n tickLabels: this.theme.mergeStyle(this.styles.tickLabels, this.styles.yTickLabels)\n }}\n fixLabelOverlap= {props.autoadjustlabels?true:false}\n axisLabelComponent={<VictoryLabel x={xaxislabeldistance}/>}\n tickLabelComponent={<VictoryLabel x={props.offsetxaxis ? props.offsetxaxis : 50}/>} \n theme={this.state.theme}\n tickFormat= {(d: number, i: number, ticks: any) => {\n if (getTickValueLabel) {\n return getTickValueLabel(d, i, (ticks || []).length);\n }\n if (ynumberformat) {\n return this.setYAxisFormat(d, ynumberformat);\n }\n return this.abbreviateNumber(d);\n }}\n orientation={this.isRTL?\"right\":\"left\"}\n dependentAxis />;\n }\n \n setTooltipTemplate(partialName: any) {\n this.updateState({ template: partialName} as any);\n }\n\n setTooltipPosition(nativeEvent: any){\n let xCoordinate = isWebPreviewMode() ? nativeEvent.offsetX : nativeEvent.locationX;\n let yCoordinate = isWebPreviewMode() ? nativeEvent.offsetY : nativeEvent.locationY;\n this.updateState({\n tooltipXPosition: xCoordinate - this.state.tooltipoffsetx,\n tooltipYPosition: yCoordinate - this.state.tooltipoffsety,\n } as any)\n }\n\n setTooltipPartialLayout(event: LayoutChangeEvent){\n let tooltipLayout = event.nativeEvent.layout;\n this.updateState({\n tooltipoffsetx: tooltipLayout.width/2,\n tooltipoffsety: tooltipLayout.height\n } as any)\n }\n \n renderPointer(){\n return (\n <View \n style={[\n {\n transform: [\n { rotate: '180deg' }\n ],\n bottom: -10,\n left: this.state.tooltipoffsetx - this.styles.tooltipPointer.borderBottomWidth/2\n },\n this.styles.tooltipPointer\n ]}\n />\n )\n }\n\n getTooltip() {\n const ynumberformat = this.state.props.ynumberformat;\n let yAxisData = ynumberformat ? this.setYAxisFormat(this.state.tooltipYaxis, ynumberformat) : this.state.tooltipYaxis;\n return this.state.isTooltipOpen ? (\n !isEmpty(this.state.template) && this.props.renderitempartial ?\n <View onLayout={this.setTooltipPartialLayout.bind(this)} style={{ position: \"absolute\", top: this.state.tooltipYPosition as number, left: this.state.tooltipXPosition as number , zIndex: 99}}>\n {this.props.renderitempartial(this.state.selectedItem, this.state.selectedItem.index, this.state.template)}\n {this.renderPointer()}\n </View> : (\n <View style={[\n { position: \"absolute\", top: this.state.tooltipYPosition as number, left: this.state.tooltipXPosition as number},\n this.styles.tooltipContainer\n ]}>\n <Text style={[{ fontSize: 16, fontWeight: 'bold' },this.styles.tooltipXText]}>{this.state.tooltipXaxis}</Text>\n <Text style={this.styles.tooltipXText}>{yAxisData}</Text>\n {this.renderPointer()}\n </View>)\n ) : null;\n } \n\n // X/Y Domain properties are supported only for Column and Area charts\n isAxisDomainSupported(type: string) {\n return type === 'Column'|| type === 'Area';\n }\n\n // Check whether X/Y Domain was set to Min and is supported for the present chart\n isAxisDomainValid(axis: string) {\n const props = this.state.props;\n if (get(props, axis + 'domain') === 'Min' && (this.isAxisDomainSupported(props.type))) {\n return true;\n }\n return false;\n };\n\n// Check whether min and max values are finite or not\n areMinMaxValuesValid(values: any) {\n if (isFinite(values.min) && isFinite(values.max)) {\n return true;\n }\n return false;\n };\n\n setDomainValues() {\n let xDomainValues, yDomainValues;\n if (this.state.data.length > 0) {\n if (this.isAxisDomainValid('x') && typeof this.state.data[0].x === 'number') {\n xDomainValues = this.getXMinMaxValues(this.state.data[0]);\n }\n if (this.isAxisDomainValid('y')) {\n yDomainValues = this.getYMinMaxValues(this.state.data);\n }\n if (xDomainValues) {\n this.updateState({\n chartMinX: yDomainValues.min.x,\n chartMaxX: yDomainValues.max.x\n } as S)\n }\n let yMin;\n if (yDomainValues) {\n if (this.areMinMaxValuesValid({max: yDomainValues.max.y, min: yDomainValues.min.y})) {\n yMin = this.getYScaleMinValue(yDomainValues.min.y);\n }\n this.updateState({\n chartMinY: yMin ? yMin : yDomainValues.min.y,\n chartMaxY: yDomainValues.max.y\n } as S);\n }\n }\n }\n\n // Getting the min and max values among all the x values\n getXMinMaxValues(datum: Array<{x: number, y: any}>) {\n if (!datum) {\n return;\n }\n const xValues: any = {};\n /*\n compute the min x valuex\n eg: When data has objects\n input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]\n min x: 1\n eg: When data has arrays\n input: [[10, 20], [20, 30], [30, 40]];\n min x: 10\n */\n xValues.min = minBy(datum, (dataObject: {x: any, y: any}) => dataObject.x) || {x: undefined};\n /*\n compute the max x value\n eg: When data has objects\n input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]\n max x: 3\n eg: When data has arrays\n input: [[10, 20], [20, 30], [30, 40]];\n max x: 30\n */\n xValues.max = maxBy(datum, (dataObject: {x: any, y: any}) => dataObject.x)|| {x: undefined};\n return xValues;\n }\n\n // Getting the min and max values among all the y values\n getYMinMaxValues(datum: Array<Array<{x: any, y: number}>>) {\n const yValues: any = {},\n minValues: any = [],\n maxValues: any = [];\n if (!datum) {\n return;\n }\n\n /*\n Getting the min and max y values among all the series of data\n compute the min y value\n eg: When data has objects\n input: [[{x:1, y:2}, {x:2, y:3}, {x:3, y:4}], [{x:2, y:3}, {x:3, y:4}, {x:4, y:5}]]\n min y values : '2'(among first set) & '3'(among second set)\n max y values : '4'(among first set) & '5'(among second set)\n\n eg: When data has arrays\n input: [[[10, 20], [20, 30], [30, 40]], [[20, 30], [30, 40], [40, 50]]]\n min y values : '20'(among first set) & '30'(among second set)\n max y values : '40'(among first set) & '50'(among second set)\n */\n\n forEach(datum, data => {\n if (data && !isEmpty(data)) {\n minValues.push(minBy(data, (dataObject: {x: any, y: any}) => { return dataObject.y }));\n maxValues.push(maxBy(data, (dataObject: {x: any, y: any}) => { return dataObject.y }));\n }\n });\n // Gets the least and highest values among all the min and max values of respective series of data\n yValues.min = minBy(minValues, (dataObject: {x: any, y: any}) => dataObject.y) || {y: undefined};\n yValues.max = maxBy(maxValues, (dataObject: {x: any, y: any}) => dataObject.y) || {y: undefined};\n return yValues;\n }\n\n setHeightWidthOnChart(cb?: () => void) {\n let height = this.styles.root.height || 250;\n let width = this.styles.root.width || screenWidth;\n if (height && typeof height === 'string') {\n height = parseInt(height);\n }\n if (width && typeof width === 'string') {\n width = parseInt(width);\n }\n this.updateState({\n chartHeight: height,\n chartWidth: width\n } as S, cb);\n }\n\n applyTheme(props: BaseChartComponentProps) {\n let themeName = props.theme ? props.theme : (props.type === 'Pie' ? 'Azure' : 'Terrestrial');\n let colorsToUse = [];\n if (typeof props.customcolors === 'string' && !isEmpty(props.customcolors)) {\n colorsToUse = props.customcolors.split(',').map(trim);\n }\n let themeToUse;\n if (typeof themeName === 'string') {\n if (!colorsToUse.length) {\n colorsToUse = props.customcolors as string[];\n }\n if(props.customcolors===undefined) {\n colorsToUse = ThemeFactory.getColorsObj(themeName);\n }\n themeToUse = ThemeFactory.getTheme(themeName, props.styles, colorsToUse);\n } else if (typeof themeName === 'object') {\n // if theme is passed as an object then use that custom theme.\n themeToUse = props.theme;\n }\n this.updateState({\n colors: colorsToUse,\n theme: themeToUse\n } as S);\n }\n\n prepareLegendData() {\n const props = this.state.props;\n if (this.state.yAxis) {\n let ldata: any;\n if (props.type === 'Stack') {\n const data = orderBy(this.state.data[0], 'y', 'asc');\n ldata = data.map((d: any) => {\n return {\n name: this.state.xaxisDatakeyArr[d.x]\n }\n });\n } else {\n ldata = this.state.yAxis.map((d: string) => {\n return {\n name: d\n }\n });\n }\n\n this.updateState({\n legendData: ldata\n } as S);\n }\n }\n\n prepareEvents(name: string) {\n return this.state.legendData.map((_: any, idx: number) => {\n return {\n childName: ['legend'],\n target: 'data',\n eventKey: String(idx),\n eventHandlers: {\n onClick: () => {\n return [\n {\n childName: [name + '_' + idx],\n target: 'data',\n eventKey: 'all',\n mutation: (props: any) => {\n return null;\n }\n }\n ];\n },\n onMouseOver: () => {\n },\n onMouseOut: () => {\n }\n }\n };\n });\n }\n\n // If date string is bound to xaxis then we are pushing the x values as indexes.\n getxAxisVal(dataObj: {[key: string] : any}, xKey: string, index: number, xaxisDatakeyArr: Array<any>) {\n const value: any = get(dataObj, xKey);\n if (moment(value).isValid() || isNaN(value) || typeof value === 'string' || typeof value === 'number') {\n if (typeof value === \"string\"){\n xaxisDatakeyArr.push(value.replace(\"\\\\n\",\"\\n\"));\n }\n else{\n xaxisDatakeyArr.push(value);\n }\n return index;\n }\n return value;\n }\n\n prepareDataItems(dataset: any) {\n const props = this.state.props;\n let xaxis = props.xaxisdatakey;\n let yaxis = props.yaxisdatakey;\n let xaxisDatakeyArr: Array<any> = [];\n let datasets: any = [];\n if (dataset.length === 0) {\n dataset = constructSampleData(getChartType(this.props), yaxis?.split(','), this.props.shape);\n xaxis = \"x\";\n yaxis = \"y\";\n }\n if (xaxis && yaxis) {\n let yPts = yaxis.split(',');\n yPts.forEach((y: any) => {\n if (xaxis !== y) {\n datasets.push(dataset.map((o: {[key: string] : any}, xindex: number) => {\n const xVal = this.getxAxisVal(o, xaxis, xindex, xaxisDatakeyArr);\n let yVal: string | number = get(o, y);\n if (typeof yVal === 'string') {\n yVal = parseFloat(yVal) || yVal;\n }\n let dataObj = {\n x: xVal,\n y: yVal,\n };\n if (props.bubblesize) {\n set(dataObj, 'size', get(o, props.bubblesize, 5));\n }\n if (props.shape) {\n set(dataObj, 'symbol', shapes[props.shape]);\n }\n return dataObj;\n }));\n }\n });\n // chartTransform\n this.invokeEventCallback('onTransform', [undefined, this.proxy]);\n if (props.type == 'Pie' || props.type === 'Donut') {\n // for animation effect\n setTimeout(() => {\n this.updateState({\n endAngle: 360,\n } as S);\n }, 500);\n }\n this.updateData(datasets, yPts, xaxisDatakeyArr);\n }\n }\n\n\n protected renderLoadingIcon() {\n const props = this.state.props;\n return (<WmIcon id={this.getTestId('loadericon')} styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\n caption={props.loadingdatamsg}></WmIcon>);\n }\n\n updateData(datasets: any, yPts: any, xaxisDatakeyArr: Array<any>) {\n const props = this.state.props;\n this.updateState({\n data: datasets as any,\n yAxis: yPts,\n xaxisDatakeyArr: xaxisDatakeyArr\n } as S, () => {\n this.prepareLegendData();\n if (!props.labeltype || props.labeltype === 'percent') {\n this.setTotal(this.state.data[0]);\n }\n if (this.isAxisDomainSupported(props.type) && (props.ydomain || props.xdomain)) {\n this.setDomainValues();\n }\n this.updateState({\n loading: false\n } as S);\n });\n }\n\n setTotal(data: Array<{x: any, y: number}>) {\n let total = 0;\n data.forEach((d: {x: any, y: any}) => {\n total += d.y as number;\n });\n this.updateState({\n total: total\n } as S);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n let units = '';\n switch(name) {\n case 'customcolors':\n if (isEmpty($new)) {\n return;\n }\n if (typeof $new === 'string') {\n $new = $new.split(',');\n }\n this.updateState({\n colors: $new\n } as S);\n break;\n case 'theme':\n this.applyTheme(props);\n break;\n case 'dataset':\n if (!isArray($new)) {\n if (isObject($new) && !isEmpty($new)) {\n $new = [$new];\n } else {\n $new = [];\n }\n }\n $new && this.prepareDataItems($new);\n break;\n case 'xaxislabel':\n if (props.xunits) {\n units = ' (' + props.xunits + ')';\n }\n this.updateState({\n xLabel: $new + units\n } as S);\n break;\n case 'yaxislabel':\n if (props.yunits) {\n units = ' (' + props.yunits + ')';\n }\n this.updateState({\n yLabel: $new + units\n } as S);\n break;\n }\n }\n}\nfunction getDataType(widgetContext: { yaxisdatakey: string | null | undefined; shape: any; }): any {\n throw new Error(\"Function not implemented.\");\n}\n\n"],"mappings":"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","ignoreList":[]}
|
@@ -70,6 +70,7 @@ export default class WmAccordion extends BaseComponent {
|
|
70
70
|
renderAccordionpane(item, index, accordionpanes = []) {
|
71
71
|
const showIconOnLeft = this.styles.leftToggleIcon.root.width !== undefined;
|
72
72
|
const isExpanded = this.state.isExpanded[index];
|
73
|
+
const titleIconStyles = this.theme.mergeStyle(this.styles.icon, this.styles.titleIcon);
|
73
74
|
return item.props.show != false ? /*#__PURE__*/React.createElement(View, {
|
74
75
|
style: this.styles.pane,
|
75
76
|
key: item.props.title
|
@@ -80,7 +81,7 @@ export default class WmAccordion extends BaseComponent {
|
|
80
81
|
onPress: this.toggle.bind(this, index + 1, !isExpanded)
|
81
82
|
}), this.expandCollapseIcon(item, index, false, showIconOnLeft, true, isExpanded), item.props.iconclass ? /*#__PURE__*/React.createElement(WmIcon, {
|
82
83
|
id: this.getTestId('icon'),
|
83
|
-
styles:
|
84
|
+
styles: titleIconStyles,
|
84
85
|
name: item.props.name + '_icon',
|
85
86
|
iconclass: item.props.iconclass
|
86
87
|
}) : null, /*#__PURE__*/React.createElement(View, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Text","TouchableOpacity","View","Badge","isArray","BaseComponent","BaseComponentState","WmAccordionProps","DEFAULT_CLASS","WmIcon","isDefined","WmAccordionState","constructor","args","_defineProperty","WmAccordion","props","addAccordionPane","accordionPane","_this$state$isExpande","i","accordionPanes","findIndex","t","title","newIndex","state","isExpanded","find","v","toggle","defaultpaneindex","expand","accordionName","name","collapse","expandCollapseIcon","item","index","showBadge","showIcon","useChevron","widgetProps","badge","badgevalue","undefined","createElement","_extends","style","styles","activeBadge","badgetype","getTestProps","iconclass","flexDirection","id","getTestId","theme","mergeStyle","icon","activeIcon","renderAccordionpane","accordionpanes","showIconOnLeft","leftToggleIcon","root","width","show","pane","key","getTestPropsForAction","header","firstHeader","length","lastHeader","activeHeader","onPress","bind","flex","justifyContent","text","heading","activeHeaderTitle","accessibilityRole","description","subheading","expandedId","collapseId","closeothers","lastExpandedIndex","collapsedPane","hide","Promise","resolve","then","expandedPane","setState","invokeEventCallback","proxy","componentDidMount","renderWidget","children","_background","map"],"sources":["accordion.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, TouchableOpacity, View } from 'react-native';\nimport { Badge } from 'react-native-paper';\nimport { isArray } from 'lodash';\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport WmAccordionProps from './accordion.props';\nimport { DEFAULT_CLASS, WmAccordionStyles } from './accordion.styles';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport WmAccordionpane from './accordionpane/accordionpane.component';\nimport { isDefined } from '@wavemaker/app-rn-runtime/core/utils';\n\nexport class WmAccordionState extends BaseComponentState<WmAccordionProps> {\n lastExpandedIndex = -1;\n isExpanded = [] as boolean[];\n}\n\nexport default class WmAccordion extends BaseComponent<WmAccordionProps, WmAccordionState, WmAccordionStyles> {\n public accordionPanes = [] as WmAccordionpane[];\n private newIndex = 0;\n\n constructor(props: WmAccordionProps) {\n super(props, DEFAULT_CLASS, new WmAccordionProps(), new WmAccordionState());\n }\n\n addAccordionPane(accordionPane: WmAccordionpane) {\n const i = this.accordionPanes.findIndex(t => t.props.title === accordionPane.props.title);\n if (i >= 0) {\n this.accordionPanes[i] = accordionPane;\n } else {\n this.accordionPanes[this.newIndex++] = accordionPane;\n }\n if (!(this.state.isExpanded?.find((v) => v))) {\n this.toggle(this.state.props.defaultpaneindex + 1);\n }\n }\n\n expand(accordionName: string) {\n const i = this.accordionPanes.findIndex(t => t.props.name === accordionName);\n this.toggle(i + 1, true);\n }\n\n collapse(accordionName: string) {\n const i = this.accordionPanes.findIndex(t => t.props.name === accordionName);\n this.toggle(i + 1, false);\n }\n\n expandCollapseIcon(item: any, index: number, showBadge = true, showIcon = true, useChevron = true, isExpanded = false) {\n const widgetProps = item.props;\n //@ts-ignore\n const badge = showBadge && widgetProps.badgevalue != undefined ? (\n <Badge style={[\n this.styles.badge,\n isExpanded ? this.styles.activeBadge: null,\n this.styles[widgetProps.badgetype || 'default']]}\n {...this.getTestProps('badge'+index)}>\n {widgetProps.badgevalue}\n </Badge>): null;\n let iconclass = null;\n if (useChevron) {\n iconclass = isExpanded ? 'wi wi-chevron-down' : 'wi wi-chevron-up';\n } else {\n iconclass = isExpanded ? 'wi wi-minus' : 'wi wi-plus';\n }\n return (<View style={{flexDirection: 'row'}}>\n {badge}\n {showIcon ? (\n <WmIcon\n id={this.getTestId('icon' + index)}\n styles={this.theme.mergeStyle({}, this.styles.icon, isExpanded ? this.styles.activeIcon : null)}\n name={'expand_collapse_icon'}\n iconclass={iconclass}></WmIcon>): null}\n </View>);\n }\n\n renderAccordionpane(item: any, index: any, accordionpanes: any[] = []) {\n const showIconOnLeft = this.styles.leftToggleIcon.root.width !== undefined;\n const isExpanded = this.state.isExpanded[index];\n return item.props.show != false ? (\n <View style={this.styles.pane} key={item.props.title}>\n <TouchableOpacity key={'accordionpane_' + (index + 1)}\n {...this.getTestPropsForAction(`header${index}`)}\n style={[this.styles.header,\n index === 0 ? this.styles.firstHeader: null,\n index === accordionpanes.length - 1 && !isExpanded ? this.styles.lastHeader: null,\n isExpanded ? this.styles.activeHeader : {}]}\n onPress={this.toggle.bind(this, index + 1, !isExpanded)}>\n {this.expandCollapseIcon(item, index, false, showIconOnLeft, true, isExpanded)}\n {item.props.iconclass ? <WmIcon id={this.getTestId('icon')} styles={this.styles.icon} name={item.props.name + '_icon'} iconclass={item.props.iconclass}></WmIcon>: null}\n <View style={{flexDirection: 'column', flex: 1, justifyContent: 'center'}}>\n <Text style={[\n this.styles.text,\n this.styles.heading,\n isExpanded ? this.styles.activeHeaderTitle : {}]}\n {...this.getTestPropsForAction(`header${index}_title`)}\n accessibilityRole='header'>\n {isDefined(item.props.title) ? item.props.title : 'Title'}\n </Text>\n {item.props.description ? \n (<Text style={this.styles.subheading}\n {...this.getTestPropsForAction(`header${index}_description`)}>{item.props.description}</Text>) : null }\n </View>\n {this.expandCollapseIcon(item, index, true, !showIconOnLeft, true, isExpanded)}\n </TouchableOpacity>\n {item}\n </View>\n ): null;\n }\n\n toggle(index: number, expand = true) {\n let expandedId = expand ? index : -1;\n let collapseId = expand ? -1 : index;\n if (expand && this.state.isExpanded[expandedId - 1]\n || !expand && this.state.isExpanded[collapseId - 1] === false) {\n return;\n }\n if (collapseId < 0 && this.state.props.closeothers) {\n collapseId = this.state.lastExpandedIndex;\n }\n const collapsedPane = this.accordionPanes[collapseId -1];\n collapsedPane?.hide();\n Promise.resolve().then(() => {\n const expandedPane = expandedId ? this.accordionPanes[expandedId - 1]: null;\n expandedPane?.show();\n this.setState((state) => {\n if (collapseId > 0 && collapsedPane) {\n state.isExpanded[collapseId - 1] = false;\n }\n if (expandedId > 0 && expandedPane) {\n state.isExpanded[expandedId - 1] = true;\n }\n return {\n lastExpandedIndex: expandedId,\n isExpanded: [...state.isExpanded]\n };\n }, () => {\n this.invokeEventCallback('onChange', [{},\n this.proxy,\n expandedId - 1,\n collapseId ? collapseId - 1 : null,\n expandedPane && expandedPane.props.name,\n collapsedPane && collapsedPane.props.name]);\n });\n }, () => {});\n }\n\n public componentDidMount(): void {\n super.componentDidMount();\n this.toggle(this.state.props.defaultpaneindex + 1);\n }\n\n renderWidget(props: WmAccordionProps) {\n const accordionpanes = props.children;\n const expandedId = this.state.lastExpandedIndex || 0;\n return (\n <View style={this.styles.root}>\n {this._background}\n {accordionpanes\n ? isArray(accordionpanes) && accordionpanes.length\n ? accordionpanes.map((item: any, index: any) => this.renderAccordionpane(item, index, accordionpanes))\n : this.renderAccordionpane(accordionpanes, 0)\n : null}\n </View>\n );\n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,gBAAgB,EAAEC,IAAI,QAAQ,cAAc;AAC3D,SAASC,KAAK,QAAQ,oBAAoB;AAC1C,SAASC,OAAO,QAAQ,QAAQ;AAEhC,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AACjG,OAAOC,gBAAgB,MAAM,mBAAmB;AAChD,SAASC,aAAa,QAA2B,oBAAoB;AACrE,OAAOC,MAAM,MAAM,gEAAgE;AAEnF,SAASC,SAAS,QAAQ,sCAAsC;AAEhE,OAAO,MAAMC,gBAAgB,SAASL,kBAAkB,CAAmB;EAAAM,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,4BACrD,CAAC,CAAC;IAAAA,eAAA,qBACT,EAAE;EAAA;AACjB;AAEA,eAAe,MAAMC,WAAW,SAASV,aAAa,CAAwD;EAI5GO,WAAWA,CAACI,KAAuB,EAAE;IACnC,KAAK,CAACA,KAAK,EAAER,aAAa,EAAE,IAAID,gBAAgB,CAAC,CAAC,EAAE,IAAII,gBAAgB,CAAC,CAAC,CAAC;IAACG,eAAA,yBAJtD,EAAE;IAAAA,eAAA,mBACP,CAAC;EAIpB;EAEAG,gBAAgBA,CAACC,aAA8B,EAAE;IAAA,IAAAC,qBAAA;IAC/C,MAAMC,CAAC,GAAG,IAAI,CAACC,cAAc,CAACC,SAAS,CAACC,CAAC,IAAIA,CAAC,CAACP,KAAK,CAACQ,KAAK,KAAKN,aAAa,CAACF,KAAK,CAACQ,KAAK,CAAC;IACzF,IAAIJ,CAAC,IAAI,CAAC,EAAE;MACV,IAAI,CAACC,cAAc,CAACD,CAAC,CAAC,GAAGF,aAAa;IACxC,CAAC,MAAM;MACL,IAAI,CAACG,cAAc,CAAC,IAAI,CAACI,QAAQ,EAAE,CAAC,GAAGP,aAAa;IACtD;IACA,IAAI,GAAAC,qBAAA,GAAE,IAAI,CAACO,KAAK,CAACC,UAAU,cAAAR,qBAAA,eAArBA,qBAAA,CAAuBS,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAAC,CAAC,EAAE;MAC5C,IAAI,CAACC,MAAM,CAAC,IAAI,CAACJ,KAAK,CAACV,KAAK,CAACe,gBAAgB,GAAG,CAAC,CAAC;IACpD;EACF;EAEAC,MAAMA,CAACC,aAAqB,EAAE;IAC5B,MAAMb,CAAC,GAAG,IAAI,CAACC,cAAc,CAACC,SAAS,CAACC,CAAC,IAAIA,CAAC,CAACP,KAAK,CAACkB,IAAI,KAAKD,aAAa,CAAC;IAC5E,IAAI,CAACH,MAAM,CAACV,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;EAC1B;EAEAe,QAAQA,CAACF,aAAqB,EAAE;IAC9B,MAAMb,CAAC,GAAG,IAAI,CAACC,cAAc,CAACC,SAAS,CAACC,CAAC,IAAIA,CAAC,CAACP,KAAK,CAACkB,IAAI,KAAKD,aAAa,CAAC;IAC5E,IAAI,CAACH,MAAM,CAACV,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC;EAC3B;EAEAgB,kBAAkBA,CAACC,IAAS,EAAEC,KAAa,EAAEC,SAAS,GAAG,IAAI,EAAEC,QAAQ,GAAG,IAAI,EAAEC,UAAU,GAAG,IAAI,EAAEd,UAAU,GAAG,KAAK,EAAE;IACrH,MAAMe,WAAW,GAAGL,IAAI,CAACrB,KAAK;IAC9B;IACA,MAAM2B,KAAK,GAAGJ,SAAS,IAAIG,WAAW,CAACE,UAAU,IAAIC,SAAS,gBAC5D9C,KAAA,CAAA+C,aAAA,CAAC3C,KAAK,EAAA4C,QAAA;MAACC,KAAK,EAAE,CACZ,IAAI,CAACC,MAAM,CAACN,KAAK,EACjBhB,UAAU,GAAG,IAAI,CAACsB,MAAM,CAACC,WAAW,GAAE,IAAI,EAC1C,IAAI,CAACD,MAAM,CAACP,WAAW,CAACS,SAAS,IAAI,SAAS,CAAC;IAAE,GAC7C,IAAI,CAACC,YAAY,CAAC,OAAO,GAACd,KAAK,CAAC,GACnCI,WAAW,CAACE,UACR,CAAC,GAAG,IAAI;IACjB,IAAIS,SAAS,GAAG,IAAI;IACpB,IAAIZ,UAAU,EAAE;MACdY,SAAS,GAAG1B,UAAU,GAAG,oBAAoB,GAAG,kBAAkB;IACpE,CAAC,MAAM;MACL0B,SAAS,GAAG1B,UAAU,GAAG,aAAa,GAAG,YAAY;IACvD;IACA,oBAAQ5B,KAAA,CAAA+C,aAAA,CAAC5C,IAAI;MAAC8C,KAAK,EAAE;QAACM,aAAa,EAAE;MAAK;IAAE,GACnCX,KAAK,EACLH,QAAQ,gBACPzC,KAAA,CAAA+C,aAAA,CAACrC,MAAM;MACP8C,EAAE,EAAE,IAAI,CAACC,SAAS,CAAC,MAAM,GAAGlB,KAAK,CAAE;MACnCW,MAAM,EAAE,IAAI,CAACQ,KAAK,CAACC,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,CAACT,MAAM,CAACU,IAAI,EAAEhC,UAAU,GAAG,IAAI,CAACsB,MAAM,CAACW,UAAU,GAAG,IAAI,CAAE;MAChG1B,IAAI,EAAE,sBAAuB;MAC7BmB,SAAS,EAAEA;IAAU,CAAS,CAAC,GAAG,IAChC,CAAC;EACf;EAEAQ,mBAAmBA,CAACxB,IAAS,EAAEC,KAAU,EAAEwB,cAAqB,GAAG,EAAE,EAAE;IACrE,MAAMC,cAAc,GAAG,IAAI,CAACd,MAAM,CAACe,cAAc,CAACC,IAAI,CAACC,KAAK,KAAKrB,SAAS;IAC1E,MAAMlB,UAAU,GAAG,IAAI,CAACD,KAAK,CAACC,UAAU,CAACW,KAAK,CAAC;IAC/C,OAAOD,IAAI,CAACrB,KAAK,CAACmD,IAAI,IAAI,KAAK,gBAC7BpE,KAAA,CAAA+C,aAAA,CAAC5C,IAAI;MAAC8C,KAAK,EAAE,IAAI,CAACC,MAAM,CAACmB,IAAK;MAACC,GAAG,EAAEhC,IAAI,CAACrB,KAAK,CAACQ;IAAM,gBACnDzB,KAAA,CAAA+C,aAAA,CAAC7C,gBAAgB,EAAA8C,QAAA;MAACsB,GAAG,EAAE,gBAAgB,IAAI/B,KAAK,GAAG,CAAC;IAAE,GAC5C,IAAI,CAACgC,qBAAqB,CAAC,SAAShC,KAAK,EAAE,CAAC;MAChDU,KAAK,EAAE,CAAC,IAAI,CAACC,MAAM,CAACsB,MAAM,EACxBjC,KAAK,KAAK,CAAC,GAAG,IAAI,CAACW,MAAM,CAACuB,WAAW,GAAE,IAAI,EAC3ClC,KAAK,KAAKwB,cAAc,CAACW,MAAM,GAAG,CAAC,IAAI,CAAC9C,UAAU,GAAG,IAAI,CAACsB,MAAM,CAACyB,UAAU,GAAE,IAAI,EACjF/C,UAAU,GAAG,IAAI,CAACsB,MAAM,CAAC0B,YAAY,GAAG,CAAC,CAAC,CAAE;MAC5CC,OAAO,EAAE,IAAI,CAAC9C,MAAM,CAAC+C,IAAI,CAAC,IAAI,EAAEvC,KAAK,GAAG,CAAC,EAAE,CAACX,UAAU;IAAE,IAC7D,IAAI,CAACS,kBAAkB,CAACC,IAAI,EAAEC,KAAK,EAAE,KAAK,EAAEyB,cAAc,EAAE,IAAI,EAAEpC,UAAU,CAAC,EAC7EU,IAAI,CAACrB,KAAK,CAACqC,SAAS,gBAAGtD,KAAA,CAAA+C,aAAA,CAACrC,MAAM;MAAC8C,EAAE,EAAE,IAAI,CAACC,SAAS,CAAC,MAAM,CAAE;MAACP,MAAM,EAAE,IAAI,CAACA,MAAM,CAACU,IAAK;MAACzB,IAAI,EAAEG,IAAI,CAACrB,KAAK,CAACkB,IAAI,GAAG,OAAQ;MAACmB,SAAS,EAAEhB,IAAI,CAACrB,KAAK,CAACqC;IAAU,CAAS,CAAC,GAAE,IAAI,eACvKtD,KAAA,CAAA+C,aAAA,CAAC5C,IAAI;MAAC8C,KAAK,EAAE;QAACM,aAAa,EAAE,QAAQ;QAAEwB,IAAI,EAAE,CAAC;QAAEC,cAAc,EAAE;MAAQ;IAAE,gBACxEhF,KAAA,CAAA+C,aAAA,CAAC9C,IAAI,EAAA+C,QAAA;MAACC,KAAK,EAAE,CACX,IAAI,CAACC,MAAM,CAAC+B,IAAI,EAChB,IAAI,CAAC/B,MAAM,CAACgC,OAAO,EACnBtD,UAAU,GAAG,IAAI,CAACsB,MAAM,CAACiC,iBAAiB,GAAG,CAAC,CAAC;IAAE,GAC7C,IAAI,CAACZ,qBAAqB,CAAC,SAAShC,KAAK,QAAQ,CAAC;MACtD6C,iBAAiB,EAAC;IAAQ,IACvBzE,SAAS,CAAC2B,IAAI,CAACrB,KAAK,CAACQ,KAAK,CAAC,GAAGa,IAAI,CAACrB,KAAK,CAACQ,KAAK,GAAG,OAChD,CAAC,EACNa,IAAI,CAACrB,KAAK,CAACoE,WAAW,gBACpBrF,KAAA,CAAA+C,aAAA,CAAC9C,IAAI,EAAA+C,QAAA;MAACC,KAAK,EAAE,IAAI,CAACC,MAAM,CAACoC;IAAW,GAC/B,IAAI,CAACf,qBAAqB,CAAC,SAAShC,KAAK,cAAc,CAAC,GAAGD,IAAI,CAACrB,KAAK,CAACoE,WAAkB,CAAC,GAAI,IACjG,CAAC,EACN,IAAI,CAAChD,kBAAkB,CAACC,IAAI,EAAEC,KAAK,EAAE,IAAI,EAAE,CAACyB,cAAc,EAAE,IAAI,EAAEpC,UAAU,CAC7D,CAAC,EAClBU,IACG,CAAC,GACN,IAAI;EACT;EAEAP,MAAMA,CAACQ,KAAa,EAAEN,MAAM,GAAG,IAAI,EAAE;IACnC,IAAIsD,UAAU,GAAGtD,MAAM,GAAGM,KAAK,GAAG,CAAC,CAAC;IACpC,IAAIiD,UAAU,GAAGvD,MAAM,GAAG,CAAC,CAAC,GAAGM,KAAK;IACpC,IAAIN,MAAM,IAAI,IAAI,CAACN,KAAK,CAACC,UAAU,CAAC2D,UAAU,GAAG,CAAC,CAAC,IAC5C,CAACtD,MAAM,IAAI,IAAI,CAACN,KAAK,CAACC,UAAU,CAAC4D,UAAU,GAAG,CAAC,CAAC,KAAK,KAAK,EAAE;MAC/D;IACJ;IACA,IAAIA,UAAU,GAAG,CAAC,IAAI,IAAI,CAAC7D,KAAK,CAACV,KAAK,CAACwE,WAAW,EAAE;MAClDD,UAAU,GAAG,IAAI,CAAC7D,KAAK,CAAC+D,iBAAiB;IAC3C;IACA,MAAMC,aAAa,GAAG,IAAI,CAACrE,cAAc,CAACkE,UAAU,GAAE,CAAC,CAAC;IACxDG,aAAa,aAAbA,aAAa,eAAbA,aAAa,CAAEC,IAAI,CAAC,CAAC;IACrBC,OAAO,CAACC,OAAO,CAAC,CAAC,CAACC,IAAI,CAAC,MAAM;MAC3B,MAAMC,YAAY,GAAGT,UAAU,GAAG,IAAI,CAACjE,cAAc,CAACiE,UAAU,GAAG,CAAC,CAAC,GAAE,IAAI;MAC3ES,YAAY,aAAZA,YAAY,eAAZA,YAAY,CAAE5B,IAAI,CAAC,CAAC;MACpB,IAAI,CAAC6B,QAAQ,CAAEtE,KAAK,IAAK;QACvB,IAAI6D,UAAU,GAAG,CAAC,IAAIG,aAAa,EAAE;UACnChE,KAAK,CAACC,UAAU,CAAC4D,UAAU,GAAG,CAAC,CAAC,GAAG,KAAK;QAC1C;QACA,IAAID,UAAU,GAAG,CAAC,IAAIS,YAAY,EAAE;UAClCrE,KAAK,CAACC,UAAU,CAAC2D,UAAU,GAAG,CAAC,CAAC,GAAG,IAAI;QACzC;QACA,OAAO;UACLG,iBAAiB,EAAEH,UAAU;UAC7B3D,UAAU,EAAE,CAAC,GAAGD,KAAK,CAACC,UAAU;QAClC,CAAC;MACH,CAAC,EAAE,MAAM;QACP,IAAI,CAACsE,mBAAmB,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EACtC,IAAI,CAACC,KAAK,EACVZ,UAAU,GAAG,CAAC,EACdC,UAAU,GAAGA,UAAU,GAAG,CAAC,GAAG,IAAI,EAClCQ,YAAY,IAAIA,YAAY,CAAC/E,KAAK,CAACkB,IAAI,EACvCwD,aAAa,IAAIA,aAAa,CAAC1E,KAAK,CAACkB,IAAI,CAAC,CAAC;MAC7C,CAAC,CAAC;IACN,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;EACd;EAEOiE,iBAAiBA,CAAA,EAAS;IAC7B,KAAK,CAACA,iBAAiB,CAAC,CAAC;IACzB,IAAI,CAACrE,MAAM,CAAC,IAAI,CAACJ,KAAK,CAACV,KAAK,CAACe,gBAAgB,GAAG,CAAC,CAAC;EACtD;EAEAqE,YAAYA,CAACpF,KAAuB,EAAE;IACpC,MAAM8C,cAAc,GAAG9C,KAAK,CAACqF,QAAQ;IACrC,MAAMf,UAAU,GAAG,IAAI,CAAC5D,KAAK,CAAC+D,iBAAiB,IAAI,CAAC;IACpD,oBACI1F,KAAA,CAAA+C,aAAA,CAAC5C,IAAI;MAAC8C,KAAK,EAAE,IAAI,CAACC,MAAM,CAACgB;IAAK,GAC3B,IAAI,CAACqC,WAAW,EACdxC,cAAc,GACX1D,OAAO,CAAC0D,cAAc,CAAC,IAAIA,cAAc,CAACW,MAAM,GAC9CX,cAAc,CAACyC,GAAG,CAAC,CAAClE,IAAS,EAAEC,KAAU,KAAK,IAAI,CAACuB,mBAAmB,CAACxB,IAAI,EAAEC,KAAK,EAAEwB,cAAc,CAAC,CAAC,GACpG,IAAI,CAACD,mBAAmB,CAACC,cAAc,EAAE,CAAC,CAAC,GAC7C,IACF,CAAC;EAEb;AACF","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","Text","TouchableOpacity","View","Badge","isArray","BaseComponent","BaseComponentState","WmAccordionProps","DEFAULT_CLASS","WmIcon","isDefined","WmAccordionState","constructor","args","_defineProperty","WmAccordion","props","addAccordionPane","accordionPane","_this$state$isExpande","i","accordionPanes","findIndex","t","title","newIndex","state","isExpanded","find","v","toggle","defaultpaneindex","expand","accordionName","name","collapse","expandCollapseIcon","item","index","showBadge","showIcon","useChevron","widgetProps","badge","badgevalue","undefined","createElement","_extends","style","styles","activeBadge","badgetype","getTestProps","iconclass","flexDirection","id","getTestId","theme","mergeStyle","icon","activeIcon","renderAccordionpane","accordionpanes","showIconOnLeft","leftToggleIcon","root","width","titleIconStyles","titleIcon","show","pane","key","getTestPropsForAction","header","firstHeader","length","lastHeader","activeHeader","onPress","bind","flex","justifyContent","text","heading","activeHeaderTitle","accessibilityRole","description","subheading","expandedId","collapseId","closeothers","lastExpandedIndex","collapsedPane","hide","Promise","resolve","then","expandedPane","setState","invokeEventCallback","proxy","componentDidMount","renderWidget","children","_background","map"],"sources":["accordion.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, TouchableOpacity, View } from 'react-native';\nimport { Badge } from 'react-native-paper';\nimport { isArray } from 'lodash';\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport WmAccordionProps from './accordion.props';\nimport { DEFAULT_CLASS, WmAccordionStyles } from './accordion.styles';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport WmAccordionpane from './accordionpane/accordionpane.component';\nimport { isDefined } from '@wavemaker/app-rn-runtime/core/utils';\n\nexport class WmAccordionState extends BaseComponentState<WmAccordionProps> {\n lastExpandedIndex = -1;\n isExpanded = [] as boolean[];\n}\n\nexport default class WmAccordion extends BaseComponent<WmAccordionProps, WmAccordionState, WmAccordionStyles> {\n public accordionPanes = [] as WmAccordionpane[];\n private newIndex = 0;\n\n constructor(props: WmAccordionProps) {\n super(props, DEFAULT_CLASS, new WmAccordionProps(), new WmAccordionState());\n }\n\n addAccordionPane(accordionPane: WmAccordionpane) {\n const i = this.accordionPanes.findIndex(t => t.props.title === accordionPane.props.title);\n if (i >= 0) {\n this.accordionPanes[i] = accordionPane;\n } else {\n this.accordionPanes[this.newIndex++] = accordionPane;\n }\n if (!(this.state.isExpanded?.find((v) => v))) {\n this.toggle(this.state.props.defaultpaneindex + 1);\n }\n }\n\n expand(accordionName: string) {\n const i = this.accordionPanes.findIndex(t => t.props.name === accordionName);\n this.toggle(i + 1, true);\n }\n\n collapse(accordionName: string) {\n const i = this.accordionPanes.findIndex(t => t.props.name === accordionName);\n this.toggle(i + 1, false);\n }\n\n expandCollapseIcon(item: any, index: number, showBadge = true, showIcon = true, useChevron = true, isExpanded = false) {\n const widgetProps = item.props;\n //@ts-ignore\n const badge = showBadge && widgetProps.badgevalue != undefined ? (\n <Badge style={[\n this.styles.badge,\n isExpanded ? this.styles.activeBadge: null,\n this.styles[widgetProps.badgetype || 'default']]}\n {...this.getTestProps('badge'+index)}>\n {widgetProps.badgevalue}\n </Badge>): null;\n let iconclass = null;\n if (useChevron) {\n iconclass = isExpanded ? 'wi wi-chevron-down' : 'wi wi-chevron-up';\n } else {\n iconclass = isExpanded ? 'wi wi-minus' : 'wi wi-plus';\n }\n return (<View style={{flexDirection: 'row'}}>\n {badge}\n {showIcon ? (\n <WmIcon\n id={this.getTestId('icon' + index)}\n styles={this.theme.mergeStyle({}, this.styles.icon, isExpanded ? this.styles.activeIcon : null)}\n name={'expand_collapse_icon'}\n iconclass={iconclass}></WmIcon>): null}\n </View>);\n }\n\n renderAccordionpane(item: any, index: any, accordionpanes: any[] = []) {\n const showIconOnLeft = this.styles.leftToggleIcon.root.width !== undefined;\n const isExpanded = this.state.isExpanded[index];\n const titleIconStyles = this.theme.mergeStyle(this.styles.icon, this.styles.titleIcon)\n return item.props.show != false ? (\n <View style={this.styles.pane} key={item.props.title}>\n <TouchableOpacity key={'accordionpane_' + (index + 1)}\n {...this.getTestPropsForAction(`header${index}`)}\n style={[this.styles.header,\n index === 0 ? this.styles.firstHeader: null,\n index === accordionpanes.length - 1 && !isExpanded ? this.styles.lastHeader: null,\n isExpanded ? this.styles.activeHeader : {}]}\n onPress={this.toggle.bind(this, index + 1, !isExpanded)}>\n {this.expandCollapseIcon(item, index, false, showIconOnLeft, true, isExpanded)}\n {item.props.iconclass ? <WmIcon id={this.getTestId('icon')} styles={titleIconStyles} name={item.props.name + '_icon'} iconclass={item.props.iconclass}></WmIcon>: null}\n <View style={{flexDirection: 'column', flex: 1, justifyContent: 'center'}}>\n <Text style={[\n this.styles.text,\n this.styles.heading,\n isExpanded ? this.styles.activeHeaderTitle : {}]}\n {...this.getTestPropsForAction(`header${index}_title`)}\n accessibilityRole='header'>\n {isDefined(item.props.title) ? item.props.title : 'Title'}\n </Text>\n {item.props.description ? \n (<Text style={this.styles.subheading}\n {...this.getTestPropsForAction(`header${index}_description`)}>{item.props.description}</Text>) : null }\n </View>\n {this.expandCollapseIcon(item, index, true, !showIconOnLeft, true, isExpanded)}\n </TouchableOpacity>\n {item}\n </View>\n ): null;\n }\n\n toggle(index: number, expand = true) {\n let expandedId = expand ? index : -1;\n let collapseId = expand ? -1 : index;\n if (expand && this.state.isExpanded[expandedId - 1]\n || !expand && this.state.isExpanded[collapseId - 1] === false) {\n return;\n }\n if (collapseId < 0 && this.state.props.closeothers) {\n collapseId = this.state.lastExpandedIndex;\n }\n const collapsedPane = this.accordionPanes[collapseId -1];\n collapsedPane?.hide();\n Promise.resolve().then(() => {\n const expandedPane = expandedId ? this.accordionPanes[expandedId - 1]: null;\n expandedPane?.show();\n this.setState((state) => {\n if (collapseId > 0 && collapsedPane) {\n state.isExpanded[collapseId - 1] = false;\n }\n if (expandedId > 0 && expandedPane) {\n state.isExpanded[expandedId - 1] = true;\n }\n return {\n lastExpandedIndex: expandedId,\n isExpanded: [...state.isExpanded]\n };\n }, () => {\n this.invokeEventCallback('onChange', [{},\n this.proxy,\n expandedId - 1,\n collapseId ? collapseId - 1 : null,\n expandedPane && expandedPane.props.name,\n collapsedPane && collapsedPane.props.name]);\n });\n }, () => {});\n }\n\n public componentDidMount(): void {\n super.componentDidMount();\n this.toggle(this.state.props.defaultpaneindex + 1);\n }\n\n renderWidget(props: WmAccordionProps) {\n const accordionpanes = props.children;\n const expandedId = this.state.lastExpandedIndex || 0;\n return (\n <View style={this.styles.root}>\n {this._background}\n {accordionpanes\n ? isArray(accordionpanes) && accordionpanes.length\n ? accordionpanes.map((item: any, index: any) => this.renderAccordionpane(item, index, accordionpanes))\n : this.renderAccordionpane(accordionpanes, 0)\n : null}\n </View>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|