@wavemaker/app-rn-runtime 11.10.0-rc.198 → 11.10.2-next.27738
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/advanced/carousel/carousel.component.js +2 -1
- package/components/advanced/carousel/carousel.component.js.map +1 -1
- package/components/basic/anchor/anchor.component.js +2 -1
- package/components/basic/anchor/anchor.component.js.map +1 -1
- package/components/basic/button/button.component.js +1 -0
- package/components/basic/button/button.component.js.map +1 -1
- package/components/basic/icon/icon.component.js +2 -1
- package/components/basic/icon/icon.component.js.map +1 -1
- package/components/basic/label/label.component.js +2 -1
- package/components/basic/label/label.component.js.map +1 -1
- package/components/basic/picture/picture.component.js +86 -8
- package/components/basic/picture/picture.component.js.map +1 -1
- package/components/basic/picture/picture.props.js +1 -0
- package/components/basic/picture/picture.props.js.map +1 -1
- package/components/basic/progress-bar/progress-bar.component.js +2 -1
- package/components/basic/progress-bar/progress-bar.component.js.map +1 -1
- package/components/basic/progress-circle/progress-circle.component.js +2 -1
- package/components/basic/progress-circle/progress-circle.component.js.map +1 -1
- package/components/basic/search/search.component.js +3 -1
- package/components/basic/search/search.component.js.map +1 -1
- package/components/basic/video/video.component.js +34 -4
- package/components/basic/video/video.component.js.map +1 -1
- package/components/basic/video/video.props.js +1 -0
- package/components/basic/video/video.props.js.map +1 -1
- package/components/basic/video/video.styles.js +13 -0
- package/components/basic/video/video.styles.js.map +1 -1
- package/components/container/container.component.js +4 -2
- package/components/container/container.component.js.map +1 -1
- package/components/container/tabs/tabheader/tabheader.component.js +3 -1
- package/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
- package/components/container/tabs/tabheader/tabheader.props.js +1 -0
- package/components/container/tabs/tabheader/tabheader.props.js.map +1 -1
- package/components/container/tabs/tabs.component.js +2 -1
- package/components/container/tabs/tabs.component.js.map +1 -1
- package/components/container/tile/tile.component.js +2 -1
- package/components/container/tile/tile.component.js.map +1 -1
- package/components/data/card/card.component.js +2 -1
- package/components/data/card/card.component.js.map +1 -1
- package/components/data/list/list.component.js +1 -0
- package/components/data/list/list.component.js.map +1 -1
- package/components/input/select/select.component.js +2 -1
- package/components/input/select/select.component.js.map +1 -1
- package/components/input/switch/switch.component.js +3 -1
- package/components/input/switch/switch.component.js.map +1 -1
- package/components/page/page-content/page-content.component.js +4 -3
- package/components/page/page-content/page-content.component.js.map +1 -1
- package/core/base.component.js +1 -0
- package/core/base.component.js.map +1 -1
- package/core/fixed-view.component.js +5 -3
- package/core/fixed-view.component.js.map +1 -1
- package/core/tappable.component.js +7 -2
- package/core/tappable.component.js.map +1 -1
- package/npm-shrinkwrap.json +179 -228
- package/package-lock.json +179 -228
- package/package.json +2 -2
- package/runtime/App.js +2 -3
- package/runtime/App.js.map +1 -1
- package/variables/device/file/upload-file.operation.js +15 -8
- package/variables/device/file/upload-file.operation.js.map +1 -1
@@ -324,7 +324,8 @@ export default class WmCarousel extends BaseComponent {
|
|
324
324
|
rippleColor: this.styles.root.rippleColor,
|
325
325
|
styles: {
|
326
326
|
height: "100%"
|
327
|
-
}
|
327
|
+
},
|
328
|
+
disableTouchEffect: this.state.props.disabletoucheffect
|
328
329
|
}, this.renderItem(item, index)));
|
329
330
|
})), hasNavs ? /*#__PURE__*/React.createElement(View, {
|
330
331
|
style: styles.btnPanel
|
@@ -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","initialized","animation","animationinterval","intervalId","setInterval","next","clearInterval","setTimeout","_this$animationView5","stopAnimation","startAnimation","onPropertyChange","name","$new","$old","_this$keyExtractor","clear","min","_this$styles$dotStyle","_this$styles$dotStyle2","_this$styles$dotStyle3","maxNoOfDots","maxnoofdots","margin","styles","dotStyle","marginLeft","marginRight","size","multiplier","isRTL","options","useNativeDriver","duration","easing","out","linear","shouldAnimate","newTranslateX","timing","wrapperPosition","toValue","start","dotPosition","max","renderPagination","_this$styles$dotStyle4","_this$styles$dotStyle5","dotMargin","wrapperWidth","minIndex","maxIndex","dotSkeleton","root","createElement","style","justifyContent","alignItems","dotsWrapperStyle","flexDirection","transform","translateX","map","isActive","scale","animatedScale","ease","_extends","key","getTestPropsForAction","activeDotStyle","renderSkeleton","skeleton","renderItem","componentDidMount","renderWidget","_data","_this$styles$slide","hasNavs","controls","hasDots","slideScale","undefined","slideTranslateX","slide","_this$styles$slide2","_this$styles$slide3","find","o","_background","enableGestures","enablegestures","flex","direction","ref","r","handlers","animationHandlers","slideMinWidth","_this$animationView6","_this$animationView7","animationPhase","interpolate","inputRange","outputRange","onLayout","bind","testID","height","firstSlide","lastSlide","activeSlide","onTap","_this$animationView8","position","rippleColor","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';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\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 dotPosition = new Animated.Value(0);\n private wrapperPosition = 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 if(!this.initialized){\n return;\n }\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 stopAnimation(){ \n this.stopPlay();\n }\n startAnimation() {\n this.autoPlay();\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 props = this.state.props;\n const maxNoOfDots = this.state.props.maxnoofdots;\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 multiplier = this.isRTL ? -1 : 1;\n const options = {\n useNativeDriver: true,\n duration: 100,\n easing: Easing.out(Easing.linear),\n };\n let data = props.type === 'dynamic' ? props.dataset : props.children;\n const shouldAnimate = !(maxNoOfDots >= data?.length) && index > 3 && index <= data?.length - 2;\n if (shouldAnimate) {\n const newTranslateX = multiplier * -(index - 3) * (width + margin);\n Animated.timing(this.wrapperPosition, {\n toValue: newTranslateX,\n ...options,\n }).start();\n }\n if (index == 1 && prevIndex == data?.length) {\n Animated.timing(this.wrapperPosition, {\n toValue: 0,\n ...options,\n }).start();\n } \n if (prevIndex < index || prevIndex > index) {\n Animated.timing(this.dotPosition, {\n toValue: multiplier * size * Math.max(index - 1, 0),\n ...options,\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 = data.length > 5 ? this.state.props.maxnoofdots : data.length;\n const activeIndex = this.state.activeIndex - 1;\n const dotMargin = ((this.styles.dotStyle?.marginLeft as number)|| 0) + \n ((this.styles.dotStyle?.marginRight as number)|| 0);\n const wrapperWidth = (this.styles.dotStyle.width as any * maxNoOfDots) + (dotMargin * 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 const dotStyle = this._showSkeleton ? {\n ...this.styles.dotStyle,\n ...this.styles.dotSkeleton.root\n } : this.styles.dotStyle\n return (<View style={{ width: '100%', justifyContent: 'center', alignItems: 'center' }}>\n <View style={[this.styles.dotsWrapperStyle, { width: wrapperWidth }]}>\n <Animated.View\n style={{\n flexDirection: this.isRTL ? 'row-reverse' : 'row',\n alignItems: 'center',\n transform: [{ translateX: this.wrapperPosition }],\n }}\n >\n {data.map((item: any, index: number) => {\n const isActive = index === activeIndex;\n let scale = 1;\n if (activeIndex <= 2) {\n scale = index <= 2 ? 1 : 1 - 0.1 * (index - 2);\n } else if (activeIndex >= data.length - 3) {\n scale = index >= data.length - 3 ? 1 : 1 - 0.1 * ((data.length - 3) - index);\n } else {\n scale = index === activeIndex ? 1 : (Math.abs(index - activeIndex) === 1 ? 0.9 : 0.8);\n }\n const animatedScale = new Animated.Value(scale);\n Animated.timing(animatedScale, {\n toValue: scale,\n duration: 100,\n easing: Easing.out(Easing.ease),\n useNativeDriver: true,\n }).start();\n return (\n <Animated.View\n key={'dots_' + this.generateItemKey(item, index, this.state.props)}\n {...this.getTestPropsForAction('indicator' + index)}\n style={[dotStyle,\n isActive && this.styles.activeDotStyle,\n { \n transform: [{scale: animatedScale}]\n },\n ]}\n />\n );\n })}\n </Animated.View>\n </View>\n </View>);\n }\n\n public renderSkeleton(props: WmCarouselProps): React.ReactNode | null {\n return <View style={[this.styles.root, {...this.styles.skeleton.root}]}>\n {this.renderItem({}, 0)}\n {this.renderPagination([{}, {}, {}])}\n </View>\n }\n\n componentDidMount(): void {\n super.componentDidMount();\n this.autoPlay();\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 testID={`carousel_item_${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","initialized","animation","animationinterval","intervalId","setInterval","next","clearInterval","setTimeout","_this$animationView5","stopAnimation","startAnimation","onPropertyChange","name","$new","$old","_this$keyExtractor","clear","min","_this$styles$dotStyle","_this$styles$dotStyle2","_this$styles$dotStyle3","maxNoOfDots","maxnoofdots","margin","styles","dotStyle","marginLeft","marginRight","size","multiplier","isRTL","options","useNativeDriver","duration","easing","out","linear","shouldAnimate","newTranslateX","timing","wrapperPosition","toValue","start","dotPosition","max","renderPagination","_this$styles$dotStyle4","_this$styles$dotStyle5","dotMargin","wrapperWidth","minIndex","maxIndex","dotSkeleton","root","createElement","style","justifyContent","alignItems","dotsWrapperStyle","flexDirection","transform","translateX","map","isActive","scale","animatedScale","ease","_extends","key","getTestPropsForAction","activeDotStyle","renderSkeleton","skeleton","renderItem","componentDidMount","renderWidget","_data","_this$styles$slide","hasNavs","controls","hasDots","slideScale","undefined","slideTranslateX","slide","_this$styles$slide2","_this$styles$slide3","find","o","_background","enableGestures","enablegestures","flex","direction","ref","r","handlers","animationHandlers","slideMinWidth","_this$animationView6","_this$animationView7","animationPhase","interpolate","inputRange","outputRange","onLayout","bind","testID","height","firstSlide","lastSlide","activeSlide","onTap","_this$animationView8","position","rippleColor","disableTouchEffect","disabletoucheffect","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';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\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 dotPosition = new Animated.Value(0);\n private wrapperPosition = 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 if(!this.initialized){\n return;\n }\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 stopAnimation(){ \n this.stopPlay();\n }\n startAnimation() {\n this.autoPlay();\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 props = this.state.props;\n const maxNoOfDots = this.state.props.maxnoofdots;\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 multiplier = this.isRTL ? -1 : 1;\n const options = {\n useNativeDriver: true,\n duration: 100,\n easing: Easing.out(Easing.linear),\n };\n let data = props.type === 'dynamic' ? props.dataset : props.children;\n const shouldAnimate = !(maxNoOfDots >= data?.length) && index > 3 && index <= data?.length - 2;\n if (shouldAnimate) {\n const newTranslateX = multiplier * -(index - 3) * (width + margin);\n Animated.timing(this.wrapperPosition, {\n toValue: newTranslateX,\n ...options,\n }).start();\n }\n if (index == 1 && prevIndex == data?.length) {\n Animated.timing(this.wrapperPosition, {\n toValue: 0,\n ...options,\n }).start();\n } \n if (prevIndex < index || prevIndex > index) {\n Animated.timing(this.dotPosition, {\n toValue: multiplier * size * Math.max(index - 1, 0),\n ...options,\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 = data.length > 5 ? this.state.props.maxnoofdots : data.length;\n const activeIndex = this.state.activeIndex - 1;\n const dotMargin = ((this.styles.dotStyle?.marginLeft as number)|| 0) + \n ((this.styles.dotStyle?.marginRight as number)|| 0);\n const wrapperWidth = (this.styles.dotStyle.width as any * maxNoOfDots) + (dotMargin * 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 const dotStyle = this._showSkeleton ? {\n ...this.styles.dotStyle,\n ...this.styles.dotSkeleton.root\n } : this.styles.dotStyle\n return (<View style={{ width: '100%', justifyContent: 'center', alignItems: 'center' }}>\n <View style={[this.styles.dotsWrapperStyle, { width: wrapperWidth }]}>\n <Animated.View\n style={{\n flexDirection: this.isRTL ? 'row-reverse' : 'row',\n alignItems: 'center',\n transform: [{ translateX: this.wrapperPosition }],\n }}\n >\n {data.map((item: any, index: number) => {\n const isActive = index === activeIndex;\n let scale = 1;\n if (activeIndex <= 2) {\n scale = index <= 2 ? 1 : 1 - 0.1 * (index - 2);\n } else if (activeIndex >= data.length - 3) {\n scale = index >= data.length - 3 ? 1 : 1 - 0.1 * ((data.length - 3) - index);\n } else {\n scale = index === activeIndex ? 1 : (Math.abs(index - activeIndex) === 1 ? 0.9 : 0.8);\n }\n const animatedScale = new Animated.Value(scale);\n Animated.timing(animatedScale, {\n toValue: scale,\n duration: 100,\n easing: Easing.out(Easing.ease),\n useNativeDriver: true,\n }).start();\n return (\n <Animated.View\n key={'dots_' + this.generateItemKey(item, index, this.state.props)}\n {...this.getTestPropsForAction('indicator' + index)}\n style={[dotStyle,\n isActive && this.styles.activeDotStyle,\n { \n transform: [{scale: animatedScale}]\n },\n ]}\n />\n );\n })}\n </Animated.View>\n </View>\n </View>);\n }\n\n public renderSkeleton(props: WmCarouselProps): React.ReactNode | null {\n return <View style={[this.styles.root, {...this.styles.skeleton.root}]}>\n {this.renderItem({}, 0)}\n {this.renderPagination([{}, {}, {}])}\n </View>\n }\n\n componentDidMount(): void {\n super.componentDidMount();\n this.autoPlay();\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 testID={`carousel_item_${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 disableTouchEffect={this.state.props.disabletoucheffect}>\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":[]}
|
@@ -88,7 +88,8 @@ export default class WmAnchor extends BaseComponent {
|
|
88
88
|
} : null, {
|
89
89
|
flexDirection: props.iconposition === 'top' ? 'column' : 'row'
|
90
90
|
}],
|
91
|
-
onTap: props.hyperlink || props.onTap ? e => this.onTap(navigationService, e) : undefined
|
91
|
+
onTap: props.hyperlink || props.onTap ? e => this.onTap(navigationService, e) : undefined,
|
92
|
+
disableTouchEffect: this.state.props.disabletoucheffect
|
92
93
|
}), this._background, props.iconposition === 'top' && icon, props.iconposition === 'left' && icon, props.caption ? /*#__PURE__*/React.createElement(Text, _extends({
|
93
94
|
style: this.styles.text
|
94
95
|
}, this.getTestPropsForLabel('caption'), getAccessibilityProps(AccessibilityWidgetType.ANCHOR, props), {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Text","Badge","BaseComponent","BaseComponentState","Tappable","WmIcon","encodeUrl","AccessibilityWidgetType","getAccessibilityProps","NavigationServiceConsumer","WmAnchorProps","DEFAULT_CLASS","Animatedview","createSkeleton","WmAnchorState","WmAnchor","constructor","props","onTap","navigationService","e","state","hyperlink","link","encodeurl","openUrl","target","invokeEventCallback","proxy","renderSkeleton","theme","styles","skeleton","root","width","skeletonwidth","height","skeletonheight","renderBadge","badgevalue","_showSkeleton","badgeSkeleton","badge","undefined","createElement","style","renderWidget","iconclass","iconurl","name","iconheight","iconmargin","iconwidth","icon","text","color","id","getTestId","hint","entryanimation","animation","delay","animationdelay","justifyContent","_extends","getTestPropsForAction","flexDirection","iconposition","_background","caption","getTestPropsForLabel","ANCHOR","numberOfLines","nooflines"],"sources":["anchor.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text } from 'react-native';\nimport { Badge } from 'react-native-paper';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { SyntheticEvent, Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { encodeUrl } from '@wavemaker/app-rn-runtime/core/utils';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\nimport NavigationService, { NavigationServiceConsumer } from '@wavemaker/app-rn-runtime/core/navigation.service';\n\nimport WmAnchorProps from './anchor.props';\nimport { DEFAULT_CLASS, WmAnchorStyles } from './anchor.styles';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport { createSkeleton } from '../skeleton/skeleton.component';\n\nexport class WmAnchorState extends BaseComponentState<WmAnchorProps> {\n\n}\n\nexport default class WmAnchor extends BaseComponent<WmAnchorProps, WmAnchorState, WmAnchorStyles> {\n\n constructor(props: WmAnchorProps) {\n super(props, DEFAULT_CLASS, new WmAnchorProps());\n }\n\n onTap(navigationService: NavigationService, e: SyntheticEvent) {\n const props = this.state.props;\n if (props.hyperlink) {\n const link = props.encodeurl ? encodeUrl(props.hyperlink) : props.hyperlink;\n navigationService.openUrl(link, {\n target: this.state.props.target\n });\n }\n this.invokeEventCallback('onTap', [e, this.proxy]);\n }\n\n public renderSkeleton(props: WmAnchorProps){\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: this.props.skeletonwidth || this.styles.root.width,\n height: this.props.skeletonheight || this.styles.root.height\n });\n }\n \n renderBadge() {\n const { badgevalue } = this.props;\n if(this._showSkeleton) {\n return createSkeleton(this.theme, this.styles.badgeSkeleton, {\n ...this.styles.badge,\n // marginTop: -50\n })\n }\n return badgevalue != undefined ? (<Badge style={this.styles.badge}>{badgevalue}</Badge>): null;\n }\n\n renderWidget(props: WmAnchorProps) {\n const {\n iconclass,\n iconurl,\n name,\n iconheight,\n iconmargin,\n iconwidth,\n badgevalue,\n } = props;\n\n if (this.styles.icon && this.styles.icon.text) {\n this.styles.icon.text.color = this.styles.text.color;\n }\n\n const icon = (iconclass || iconurl) && (\n <WmIcon\n id={this.getTestId('icon')}\n styles={this.styles.icon}\n hint={props?.hint}\n name={name + '_icon'}\n iconclass={iconclass}\n iconurl={iconurl}\n iconheight={iconheight}\n iconmargin={iconmargin}\n iconwidth={iconwidth}\n />\n );\n return (\n <NavigationServiceConsumer>\n {(navigationService: NavigationService) =>\n (<Animatedview entryanimation={props.animation} delay={props.animationdelay} style={{width: this.styles.root.width, height: this.styles.root.height, justifyContent: 'center'}}>\n <Tappable {...this.getTestPropsForAction()} target={this} styles={[this.styles.root, this.styles.root.width && this.styles.root.height ? { width: '100%', height: '100%'} : null, {flexDirection: props.iconposition === 'top' ? 'column': 'row'}]}\n onTap={props.hyperlink || props.onTap ? (e: SyntheticEvent) => this.onTap(navigationService, e) : undefined}>\n {this._background}\n {props.iconposition === 'top' && icon}\n {props.iconposition === 'left' && icon}\n {props.caption ? (<Text style={this.styles.text}\n {...this.getTestPropsForLabel('caption')}\n {...getAccessibilityProps(AccessibilityWidgetType.ANCHOR, props)}\n numberOfLines={props.nooflines}>{props.caption}</Text>) : null}\n {props.iconposition === 'right' && icon}\n {this.renderBadge()}\n </Tappable>\n </Animatedview>)\n }\n </NavigationServiceConsumer>\n );\n }\n}\n"],"mappings":"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
|
1
|
+
{"version":3,"names":["React","Text","Badge","BaseComponent","BaseComponentState","Tappable","WmIcon","encodeUrl","AccessibilityWidgetType","getAccessibilityProps","NavigationServiceConsumer","WmAnchorProps","DEFAULT_CLASS","Animatedview","createSkeleton","WmAnchorState","WmAnchor","constructor","props","onTap","navigationService","e","state","hyperlink","link","encodeurl","openUrl","target","invokeEventCallback","proxy","renderSkeleton","theme","styles","skeleton","root","width","skeletonwidth","height","skeletonheight","renderBadge","badgevalue","_showSkeleton","badgeSkeleton","badge","undefined","createElement","style","renderWidget","iconclass","iconurl","name","iconheight","iconmargin","iconwidth","icon","text","color","id","getTestId","hint","entryanimation","animation","delay","animationdelay","justifyContent","_extends","getTestPropsForAction","flexDirection","iconposition","disableTouchEffect","disabletoucheffect","_background","caption","getTestPropsForLabel","ANCHOR","numberOfLines","nooflines"],"sources":["anchor.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text } from 'react-native';\nimport { Badge } from 'react-native-paper';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { SyntheticEvent, Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { encodeUrl } from '@wavemaker/app-rn-runtime/core/utils';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\nimport NavigationService, { NavigationServiceConsumer } from '@wavemaker/app-rn-runtime/core/navigation.service';\n\nimport WmAnchorProps from './anchor.props';\nimport { DEFAULT_CLASS, WmAnchorStyles } from './anchor.styles';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport { createSkeleton } from '../skeleton/skeleton.component';\n\nexport class WmAnchorState extends BaseComponentState<WmAnchorProps> {\n\n}\n\nexport default class WmAnchor extends BaseComponent<WmAnchorProps, WmAnchorState, WmAnchorStyles> {\n\n constructor(props: WmAnchorProps) {\n super(props, DEFAULT_CLASS, new WmAnchorProps());\n }\n\n onTap(navigationService: NavigationService, e: SyntheticEvent) {\n const props = this.state.props;\n if (props.hyperlink) {\n const link = props.encodeurl ? encodeUrl(props.hyperlink) : props.hyperlink;\n navigationService.openUrl(link, {\n target: this.state.props.target\n });\n }\n this.invokeEventCallback('onTap', [e, this.proxy]);\n }\n\n public renderSkeleton(props: WmAnchorProps){\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: this.props.skeletonwidth || this.styles.root.width,\n height: this.props.skeletonheight || this.styles.root.height\n });\n }\n \n renderBadge() {\n const { badgevalue } = this.props;\n if(this._showSkeleton) {\n return createSkeleton(this.theme, this.styles.badgeSkeleton, {\n ...this.styles.badge,\n // marginTop: -50\n })\n }\n return badgevalue != undefined ? (<Badge style={this.styles.badge}>{badgevalue}</Badge>): null;\n }\n\n renderWidget(props: WmAnchorProps) {\n const {\n iconclass,\n iconurl,\n name,\n iconheight,\n iconmargin,\n iconwidth,\n badgevalue,\n } = props;\n\n if (this.styles.icon && this.styles.icon.text) {\n this.styles.icon.text.color = this.styles.text.color;\n }\n\n const icon = (iconclass || iconurl) && (\n <WmIcon\n id={this.getTestId('icon')}\n styles={this.styles.icon}\n hint={props?.hint}\n name={name + '_icon'}\n iconclass={iconclass}\n iconurl={iconurl}\n iconheight={iconheight}\n iconmargin={iconmargin}\n iconwidth={iconwidth}\n />\n );\n return (\n <NavigationServiceConsumer>\n {(navigationService: NavigationService) =>\n (<Animatedview entryanimation={props.animation} delay={props.animationdelay} style={{width: this.styles.root.width, height: this.styles.root.height, justifyContent: 'center'}}>\n <Tappable {...this.getTestPropsForAction()} target={this} styles={[this.styles.root, this.styles.root.width && this.styles.root.height ? { width: '100%', height: '100%'} : null, {flexDirection: props.iconposition === 'top' ? 'column': 'row'}]}\n onTap={props.hyperlink || props.onTap ? (e: SyntheticEvent) => this.onTap(navigationService, e) : undefined}\n disableTouchEffect={this.state.props.disabletoucheffect}>\n {this._background}\n {props.iconposition === 'top' && icon}\n {props.iconposition === 'left' && icon}\n {props.caption ? (<Text style={this.styles.text}\n {...this.getTestPropsForLabel('caption')}\n {...getAccessibilityProps(AccessibilityWidgetType.ANCHOR, props)}\n numberOfLines={props.nooflines}>{props.caption}</Text>) : null}\n {props.iconposition === 'right' && icon}\n {this.renderBadge()}\n </Tappable>\n </Animatedview>)\n }\n </NavigationServiceConsumer>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -83,6 +83,7 @@ export default class WmButton extends BaseComponent {
|
|
83
83
|
// props
|
84
84
|
// )}}
|
85
85
|
}, this._background, /*#__PURE__*/React.createElement(Tappable, _extends({
|
86
|
+
disableTouchEffect: this.state.props.disabletoucheffect,
|
86
87
|
styles: {
|
87
88
|
paddingTop: this.styles.root.paddingTop,
|
88
89
|
paddingBottom: this.styles.root.paddingBottom,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","Tappable","Badge","WmButtonProps","DEFAULT_CLASS","WmIcon","Animatedview","createSkeleton","AccessibilityWidgetType","getAccessibilityProps","WmButtonState","WmButton","constructor","props","prepareIcon","iconclass","iconurl","hint","name","iconsize","iconheight","iconmargin","iconwidth","createElement","id","getTestId","styles","icon","prepareBadge","_extends","style","badge","getTestProps","badgevalue","renderSkeleton","prop","skeletonWidth","skeletonHeight","skeletonwidth","_this$styles$root","root","width","skeletonheight","_this$styles$root2","height","theme","skeleton","renderWidget","Fragment","entryanimation","animation","delay","animationdelay","paddingTop","paddingBottom","paddingLeft","paddingRight","overflow","flexDirection","flex","_background","justifyContent","rippleColor","target","getTestPropsForAction","accessibilityProps","BUTTON","content","iconposition","caption","text","getTestPropsForLabel","importantForAccessibility"],"sources":["button.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, Text, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { Badge } from 'react-native-paper';\n\nimport WmButtonProps from './button.props';\nimport { DEFAULT_CLASS, WmButtonStyles } from './button.styles';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport { createSkeleton } from '../skeleton/skeleton.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nexport class WmButtonState extends BaseComponentState<WmButtonProps> {\n\n}\n\nexport default class WmButton extends BaseComponent<WmButtonProps, WmButtonState, WmButtonStyles> {\n\n constructor(props: WmButtonProps) {\n super(props, DEFAULT_CLASS, new WmButtonProps());\n }\n\n private prepareIcon({\n iconclass,\n iconurl,\n hint,\n name,\n iconsize,\n iconheight,\n iconmargin,\n iconwidth,\n }: any) {\n return iconclass || iconurl\n ? (<WmIcon\n id={this.getTestId('icon')}\n hint={hint}\n styles={this.styles.icon}\n name={`${name}_icon`}\n iconclass={iconclass}\n iconsize={iconsize}\n iconurl={iconurl}\n iconheight={iconheight}\n iconmargin={iconmargin}\n iconwidth={iconwidth}\n />): null;\n }\n\n private prepareBadge(props: any) {\n //@ts-ignore\n return (<Badge style={this.styles.badge} {...this.getTestProps('badge')}>{props.badgevalue}</Badge>);\n }\n\n public renderSkeleton(prop: WmButtonProps) {\n let skeletonWidth, skeletonHeight;\n if(this.props.skeletonwidth == \"0\") {\n skeletonWidth = 0\n } else {\n skeletonWidth = this.props.skeletonwidth || this.styles.root?.width\n }\n\n if(this.props.skeletonheight == \"0\") {\n skeletonHeight = 0\n } else {\n skeletonHeight = this.props.skeletonheight || this.styles.root?.height;\n }\n \n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: skeletonWidth as DimensionValue,\n height: skeletonHeight as DimensionValue\n });\n }\n\n renderWidget(props: WmButtonProps) {\n return (\n <>\n <Animatedview entryanimation={props.animation} delay={props.animationdelay}\n style={[\n this.styles.root,\n {\n paddingTop: 0,\n paddingBottom: 0,\n paddingLeft: 0,\n paddingRight: 0,\n overflow: 'hidden',\n flexDirection: 'column'\n },\n this.styles.root.height == \"100%\" ? {flex: 1}:{}\n ]}\n // accessibilityProps={{...getAccessibilityProps(\n // AccessibilityWidgetType.BUTTON,\n // props\n // )}}\n >\n {this._background}\n <Tappable\n styles={{\n paddingTop: this.styles.root.paddingTop,\n paddingBottom: this.styles.root.paddingBottom,\n paddingLeft: this.styles.root.paddingLeft,\n paddingRight: this.styles.root.paddingRight,\n width: '100%',\n height: this.styles.root.height ? '100%' : null,\n justifyContent: 'center',\n }}\n rippleColor = {this.styles.root.rippleColor}\n target={this}\n {...this.getTestPropsForAction()}\n accessibilityProps={{...getAccessibilityProps(\n AccessibilityWidgetType.BUTTON,\n props\n )}}>\n <View\n style={[\n this.styles.content,\n { flexDirection: props.iconposition === 'top' ? 'column' : 'row' }\n ]}>\n {props.iconposition === 'top' && this.prepareIcon(props)}\n {props.iconposition === 'left' && this.prepareIcon(props)}\n {props.caption ? (\n <Text\n style={this.styles.text}\n {...this.getTestPropsForLabel('caption')}\n importantForAccessibility={'no'}\n // accessibilityLabel={`${props.caption}`}\n >\n {props.caption}\n </Text>\n ) : null}\n {props.iconposition === 'right' && this.prepareIcon(props)}\n </View>\n </Tappable>\n </Animatedview>\n {props.badgevalue && this.prepareBadge(props)}\n </>\n );\n }\n}\n"],"mappings":"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
|
1
|
+
{"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","Tappable","Badge","WmButtonProps","DEFAULT_CLASS","WmIcon","Animatedview","createSkeleton","AccessibilityWidgetType","getAccessibilityProps","WmButtonState","WmButton","constructor","props","prepareIcon","iconclass","iconurl","hint","name","iconsize","iconheight","iconmargin","iconwidth","createElement","id","getTestId","styles","icon","prepareBadge","_extends","style","badge","getTestProps","badgevalue","renderSkeleton","prop","skeletonWidth","skeletonHeight","skeletonwidth","_this$styles$root","root","width","skeletonheight","_this$styles$root2","height","theme","skeleton","renderWidget","Fragment","entryanimation","animation","delay","animationdelay","paddingTop","paddingBottom","paddingLeft","paddingRight","overflow","flexDirection","flex","_background","disableTouchEffect","state","disabletoucheffect","justifyContent","rippleColor","target","getTestPropsForAction","accessibilityProps","BUTTON","content","iconposition","caption","text","getTestPropsForLabel","importantForAccessibility"],"sources":["button.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, Text, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { Badge } from 'react-native-paper';\n\nimport WmButtonProps from './button.props';\nimport { DEFAULT_CLASS, WmButtonStyles } from './button.styles';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport { createSkeleton } from '../skeleton/skeleton.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nexport class WmButtonState extends BaseComponentState<WmButtonProps> {\n\n}\n\nexport default class WmButton extends BaseComponent<WmButtonProps, WmButtonState, WmButtonStyles> {\n\n constructor(props: WmButtonProps) {\n super(props, DEFAULT_CLASS, new WmButtonProps());\n }\n\n private prepareIcon({\n iconclass,\n iconurl,\n hint,\n name,\n iconsize,\n iconheight,\n iconmargin,\n iconwidth,\n }: any) {\n return iconclass || iconurl\n ? (<WmIcon\n id={this.getTestId('icon')}\n hint={hint}\n styles={this.styles.icon}\n name={`${name}_icon`}\n iconclass={iconclass}\n iconsize={iconsize}\n iconurl={iconurl}\n iconheight={iconheight}\n iconmargin={iconmargin}\n iconwidth={iconwidth}\n />): null;\n }\n\n private prepareBadge(props: any) {\n //@ts-ignore\n return (<Badge style={this.styles.badge} {...this.getTestProps('badge')}>{props.badgevalue}</Badge>);\n }\n\n public renderSkeleton(prop: WmButtonProps) {\n let skeletonWidth, skeletonHeight;\n if(this.props.skeletonwidth == \"0\") {\n skeletonWidth = 0\n } else {\n skeletonWidth = this.props.skeletonwidth || this.styles.root?.width\n }\n\n if(this.props.skeletonheight == \"0\") {\n skeletonHeight = 0\n } else {\n skeletonHeight = this.props.skeletonheight || this.styles.root?.height;\n }\n \n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: skeletonWidth as DimensionValue,\n height: skeletonHeight as DimensionValue\n });\n }\n\n renderWidget(props: WmButtonProps) {\n return (\n <>\n <Animatedview entryanimation={props.animation} delay={props.animationdelay}\n style={[\n this.styles.root,\n {\n paddingTop: 0,\n paddingBottom: 0,\n paddingLeft: 0,\n paddingRight: 0,\n overflow: 'hidden',\n flexDirection: 'column'\n },\n this.styles.root.height == \"100%\" ? {flex: 1}:{}\n ]}\n // accessibilityProps={{...getAccessibilityProps(\n // AccessibilityWidgetType.BUTTON,\n // props\n // )}}\n >\n {this._background}\n <Tappable\n disableTouchEffect={this.state.props.disabletoucheffect}\n styles={{\n paddingTop: this.styles.root.paddingTop,\n paddingBottom: this.styles.root.paddingBottom,\n paddingLeft: this.styles.root.paddingLeft,\n paddingRight: this.styles.root.paddingRight,\n width: '100%',\n height: this.styles.root.height ? '100%' : null,\n justifyContent: 'center',\n }}\n rippleColor = {this.styles.root.rippleColor}\n target={this}\n {...this.getTestPropsForAction()}\n accessibilityProps={{...getAccessibilityProps(\n AccessibilityWidgetType.BUTTON,\n props\n )}}>\n <View\n style={[\n this.styles.content,\n { flexDirection: props.iconposition === 'top' ? 'column' : 'row' }\n ]}>\n {props.iconposition === 'top' && this.prepareIcon(props)}\n {props.iconposition === 'left' && this.prepareIcon(props)}\n {props.caption ? (\n <Text\n style={this.styles.text}\n {...this.getTestPropsForLabel('caption')}\n importantForAccessibility={'no'}\n // accessibilityLabel={`${props.caption}`}\n >\n {props.caption}\n </Text>\n ) : null}\n {props.iconposition === 'right' && this.prepareIcon(props)}\n </View>\n </Tappable>\n </Animatedview>\n {props.badgevalue && this.prepareBadge(props)}\n </>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -251,7 +251,8 @@ export default class WmIcon extends BaseComponent {
|
|
251
251
|
}, this.getTestPropsForAction(), {
|
252
252
|
accessibilityProps: {
|
253
253
|
...getAccessibilityProps(AccessibilityWidgetType.ICON, props)
|
254
|
-
}
|
254
|
+
},
|
255
|
+
disableTouchEffect: this.state.props.disabletoucheffect
|
255
256
|
}), /*#__PURE__*/React.createElement(Animatedview, {
|
256
257
|
entryanimation: props.animation,
|
257
258
|
delay: props.animationdelay,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Animated","Easing","Text","Image","View","FontAwesome","BaseComponent","BaseComponentState","isFullPathUrl","AccessibilityWidgetType","getAccessibilityProps","WmIconProps","DEFAULT_CLASS","WavIcon","StreamlineLightIcon","StreamlineRegularIcon","Tappable","Animatedview","createSkeleton","ICON_SIZES","Map","ICON_ROTATTION","WmIconState","constructor","args","_defineProperty","WmIcon","props","Value","getIconDef","iconClass","iconDef","rotate","splits","split","isFontAwesome","find","v","isStreamlineLightIcon","isStreamlineRegularIcon","_splits$find","type","startsWith","substring","_splits$find2","_splits$find3","_splits$find4","isWavIcon","indexOf","animation","size","map","get","spin","stopAnimation","spinValue","setValue","timing","toValue","duration","easing","linear","useNativeDriver","start","componentDidMount","componentWillUnmount","onPropertyChange","name","$new","$old","updateState","getCustomIcon","style","_this$theme$getStyle","customIcon","theme","mergeStyle","getStyle","iconclass","icon","styles","customIconContent","content","createElement","fontFamily","decodeURIComponent","renderSkeleton","skeletonWidth","skeletonwidth","iconsize","root","width","skeletonHeight","skeletonheight","height","skeleton","getElementToShow","iconSrc","iconmargin","iconheight","iconwidth","elementToshow","source","uri","testID","getTestId","margin","loadIcon","iconImage","loadAsset","iconImageSrc","renderIcon","iconJsx","_iconSource","iconurl","state","text","color","transform","iconSize","fontSize","show","_extends","getTestProps","_this$styles$icon","WMCustomIcon","interpolate","inputRange","outputRange","opacity","renderWidget","iterationCount","iterationcount","parseInt","undefined","target","rippleColor","getTestPropsForAction","accessibilityProps","ICON","entryanimation","delay","animationdelay","_background","iconposition","caption","getTestPropsForLabel","accessibilityRole","accessibilityrole"],"sources":["icon.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Animated, DimensionValue, Easing, Text, Image, View } from 'react-native';\nimport { FontAwesome } from '@expo/vector-icons';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nimport WmIconProps from './icon.props';\nimport { DEFAULT_CLASS, WmIconStyles } from './icon.styles';\nimport WavIcon from './wavicon/wavicon.component';\nimport StreamlineLightIcon from './streamline-light-icon/streamline-light-icon.component';\nimport StreamlineRegularIcon from './streamline-regular-icon/streamline-regular-icon.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport WmSkeleton, { createSkeleton } from '../skeleton/skeleton.component';\n\ninterface IconDef {\n isFontAwesome: boolean;\n isWavIcon: boolean;\n isStreamlineLightIcon: boolean;\n isStreamlineRegularIcon: boolean;\n type: string;\n rotate: string;\n size: number;\n animation: string;\n}\n\nconst ICON_SIZES = new Map([\n ['fa-lg', 24],\n ['fa-2x', 36],\n ['fa-3x', 48],\n ['fa-4x', 60],\n ['fa-5x', 72]\n]);\n\nconst ICON_ROTATTION = new Map([\n ['fa-rotate-90', '90deg'],\n ['fa-rotate-180', '180deg'],\n ['fa-rotate-270', '270deg']\n]);\n\nexport class WmIconState extends BaseComponentState<WmIconProps> {\n public iconDef = {} as IconDef;\n}\n\nexport default class WmIcon extends BaseComponent<WmIconProps, WmIconState, WmIconStyles> {\n spinValue = new Animated.Value(0);\n pulseValue = new Animated.Value(0);\n public stopAnimation = true;\n private _iconSource = null as any;\n\n constructor(props: WmIconProps) {\n super(props, DEFAULT_CLASS, new WmIconProps());\n }\n\n getIconDef(iconClass: string): IconDef {\n const iconDef = {\n rotate: '0'\n } as IconDef;\n const splits = iconClass.split(' ');\n iconDef.isFontAwesome = !!splits.find(v => v === 'fa');\n iconDef.isStreamlineLightIcon = !!splits.find(v => v === 'wm-sl-l');\n iconDef.isStreamlineRegularIcon = !!splits.find(v => v === 'wm-sl-r');\n if (iconDef.isFontAwesome) {\n iconDef.type = splits.find(v => v.startsWith('fa-'))?.substring(3) || '';\n } else if (iconDef.isStreamlineLightIcon) {\n iconDef.type = splits.find(v => v.startsWith('sl-'))?.substring(3) || '';\n } else if (iconDef.isStreamlineRegularIcon) {\n iconDef.type = splits.find(v => v.startsWith('sl-'))?.substring(3) || '';\n } else {\n iconDef.isWavIcon = !iconDef.isFontAwesome && !!splits.find(v => v === 'wi');\n iconDef.type = (iconDef.isWavIcon && splits.find(v => v.startsWith('wi-'))?.substring(3)) || '';\n }\n if (iconClass.indexOf('fa-spin') >= 0) {\n iconDef.animation = 'spin';\n } else if (iconClass.indexOf('fa-pulse') >= 0) {\n iconDef.animation = 'pulse';\n }\n iconDef.size = splits.map(v => ICON_SIZES.get(v)).find(v => !!v) || 12;\n iconDef.rotate = splits.map(v => ICON_ROTATTION.get(v)).find(v => !!v) || '0deg';\n return iconDef;\n }\n\n private spin () {\n if (this.stopAnimation) {\n return;\n }\n this.spinValue.setValue(0);\n Animated.timing(\n this.spinValue,\n {\n toValue: 1,\n duration: 1000,\n easing: Easing.linear,\n useNativeDriver: true\n }\n ).start(() => this.spin());\n }\n\n componentDidMount() {\n super.componentDidMount();\n this.spin();\n }\n\n componentWillUnmount(): void {\n super.componentWillUnmount();\n this.stopAnimation = true;\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case 'iconclass':\n $new && this.updateState({iconDef: this.getIconDef($new)} as WmIconState);\n break;\n }\n }\n\n private getCustomIcon(props: WmIconProps, style: any) {\n const customIcon = this.theme.mergeStyle({}, this.theme.getStyle(props?.iconclass || '')?.icon || this.styles.icon);\n const customIconContent = customIcon?.content;\n if (customIconContent) {\n delete customIcon.content;\n return (<Text\n style={[style, customIcon.fontFamily ? {fontFamily: customIcon.fontFamily}: null]}>\n {decodeURIComponent(customIconContent)}\n </Text>);\n }\n return null;\n }\n\n public renderSkeleton(props: WmIconProps) {\n let skeletonWidth = (this.props.skeletonwidth || this.props.iconsize || this.styles.root.width) as DimensionValue;\n let skeletonHeight = (this.props.skeletonheight || this.props.iconsize || this.styles.root.height) as DimensionValue\n\n if(this.props.skeletonheight == \"0\") {\n skeletonWidth = 0\n }\n \n if(this.props.skeletonheight == \"0\") {\n skeletonHeight = 0\n }\n \n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: skeletonWidth,\n height: skeletonHeight\n });\n }\n\n getElementToShow(props: WmIconProps, iconSrc: any) {\n\n const { iconmargin, iconheight, iconwidth } = props;\n let width, height;\n let elementToshow, source;\n\n if (iconwidth) width = iconwidth;\n else if (iconheight) width = iconheight;\n else width = 12;\n if (iconheight) height = iconheight;\n else if (iconwidth) height = iconwidth;\n else height = 12;\n\n if (isFullPathUrl(iconSrc)) {\n source = {\n uri: iconSrc\n };\n } else {\n source = iconSrc;\n }\n elementToshow = <Image testID={this.getTestId('icon')}\n style={{\n margin: iconmargin ?? 0,\n height: height,\n width: width\n }}\n source={source}/>;\n return elementToshow;\n }\n\n loadIcon(iconImage: string | undefined) {\n if (!iconImage || !this.loadAsset) {\n return null;\n }\n const iconImageSrc = this.loadAsset(iconImage);\n if (iconImageSrc && typeof iconImageSrc !== 'function') {\n return iconImageSrc;\n }\n return null;\n }\n\n renderIcon(props: WmIconProps) {\n let iconJsx = null;\n this._iconSource = this._iconSource || this.loadIcon(props.iconurl);\n const iconSrc: any = this._iconSource\n if (iconSrc) {\n return this.getElementToShow(props, iconSrc);\n }\n const iconDef = this.state.iconDef;\n if (!iconDef) {\n return null;\n }\n const { root, text, icon } = this.styles;\n const style = [{ color: root.color || text.color },\n icon,\n { transform: [{ rotate: iconDef.rotate }] }];\n\n const customIcon = this.getCustomIcon(props, style);\n const iconSize = props.iconsize || this.styles.root.fontSize || this.styles.text.fontSize || iconDef.size;\n if (props.show && iconDef && iconDef.isFontAwesome) {\n //@ts-ignore type information is not matching\n iconJsx = (<FontAwesome name={customIcon ? '' : iconDef.type}\n style={style}\n size={iconSize}\n {...this.getTestProps('icon')}>\n {customIcon}\n </FontAwesome>);\n } else if (props.show && iconDef) {\n let WMCustomIcon = WavIcon as unknown;\n if (iconDef.isStreamlineLightIcon) {\n WMCustomIcon = StreamlineLightIcon;\n } else if (iconDef.isStreamlineRegularIcon) {\n WMCustomIcon = StreamlineRegularIcon;\n } else if (!iconDef.isWavIcon && !customIcon && !this.styles.icon?.fontFamily) {\n return null;\n }\n //@ts-ignore type information is not matching\n iconJsx = WMCustomIcon ? (<WMCustomIcon name={customIcon ? '' : iconDef.type}\n style={style}\n size={iconSize}\n {...this.getTestProps('icon')}>\n {customIcon}\n </WMCustomIcon>) : null;\n }\n if (iconJsx && iconDef.animation === 'spin') {\n const rotate = this.spinValue.interpolate({ inputRange: [0, 1], outputRange: ['0deg', '360deg']});\n const animation = { transform: [{ rotate }] };\n this.stopAnimation = false;\n return (<Animated.View style={animation}>{iconJsx}</Animated.View>);\n } else if (iconJsx && iconDef.animation === 'pulse') {\n const opacity = this.spinValue.interpolate({ inputRange: [0, 1], outputRange: [0, 1]});\n const animation = { opacity: opacity };\n this.stopAnimation = false;\n return (<Animated.View style={animation}>{iconJsx}</Animated.View>);\n } else {\n this.stopAnimation = true;\n }\n return (\n <View\n // {...getAccessibilityProps(AccessibilityWidgetType.ICON, this.props)}\n >\n {iconJsx}\n </View>\n );\n }\n\n renderWidget(props: WmIconProps) {\n let icon = this.renderIcon(props);\n let iterationCount: any = props.iterationcount ? (props.iterationcount != 'infinite' ? parseInt(props.iterationcount): 'infinite') : undefined;\n return (\n <Tappable target={this} rippleColor = {this.styles.root.rippleColor} {...this.getTestPropsForAction()} accessibilityProps={{...getAccessibilityProps(AccessibilityWidgetType.ICON, props)}}>\n <Animatedview entryanimation={props.animation} delay={props.animationdelay} style={this.styles.root} iterationCount={iterationCount}>\n {this._background}\n {(props.iconposition === 'left' && icon) || null}\n {(props.caption && (<Text {...this.getTestPropsForLabel('caption')}style={this.styles.text} accessibilityRole={props?.accessibilityrole ? props?.accessibilityrole : 'text'}>{props.caption}</Text>)) || null}\n {(props.iconposition === 'right' && icon) || null}\n </Animatedview>\n </Tappable>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","Animated","Easing","Text","Image","View","FontAwesome","BaseComponent","BaseComponentState","isFullPathUrl","AccessibilityWidgetType","getAccessibilityProps","WmIconProps","DEFAULT_CLASS","WavIcon","StreamlineLightIcon","StreamlineRegularIcon","Tappable","Animatedview","createSkeleton","ICON_SIZES","Map","ICON_ROTATTION","WmIconState","constructor","args","_defineProperty","WmIcon","props","Value","getIconDef","iconClass","iconDef","rotate","splits","split","isFontAwesome","find","v","isStreamlineLightIcon","isStreamlineRegularIcon","_splits$find","type","startsWith","substring","_splits$find2","_splits$find3","_splits$find4","isWavIcon","indexOf","animation","size","map","get","spin","stopAnimation","spinValue","setValue","timing","toValue","duration","easing","linear","useNativeDriver","start","componentDidMount","componentWillUnmount","onPropertyChange","name","$new","$old","updateState","getCustomIcon","style","_this$theme$getStyle","customIcon","theme","mergeStyle","getStyle","iconclass","icon","styles","customIconContent","content","createElement","fontFamily","decodeURIComponent","renderSkeleton","skeletonWidth","skeletonwidth","iconsize","root","width","skeletonHeight","skeletonheight","height","skeleton","getElementToShow","iconSrc","iconmargin","iconheight","iconwidth","elementToshow","source","uri","testID","getTestId","margin","loadIcon","iconImage","loadAsset","iconImageSrc","renderIcon","iconJsx","_iconSource","iconurl","state","text","color","transform","iconSize","fontSize","show","_extends","getTestProps","_this$styles$icon","WMCustomIcon","interpolate","inputRange","outputRange","opacity","renderWidget","iterationCount","iterationcount","parseInt","undefined","target","rippleColor","getTestPropsForAction","accessibilityProps","ICON","disableTouchEffect","disabletoucheffect","entryanimation","delay","animationdelay","_background","iconposition","caption","getTestPropsForLabel","accessibilityRole","accessibilityrole"],"sources":["icon.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Animated, DimensionValue, Easing, Text, Image, View } from 'react-native';\nimport { FontAwesome } from '@expo/vector-icons';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nimport WmIconProps from './icon.props';\nimport { DEFAULT_CLASS, WmIconStyles } from './icon.styles';\nimport WavIcon from './wavicon/wavicon.component';\nimport StreamlineLightIcon from './streamline-light-icon/streamline-light-icon.component';\nimport StreamlineRegularIcon from './streamline-regular-icon/streamline-regular-icon.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport WmSkeleton, { createSkeleton } from '../skeleton/skeleton.component';\n\ninterface IconDef {\n isFontAwesome: boolean;\n isWavIcon: boolean;\n isStreamlineLightIcon: boolean;\n isStreamlineRegularIcon: boolean;\n type: string;\n rotate: string;\n size: number;\n animation: string;\n}\n\nconst ICON_SIZES = new Map([\n ['fa-lg', 24],\n ['fa-2x', 36],\n ['fa-3x', 48],\n ['fa-4x', 60],\n ['fa-5x', 72]\n]);\n\nconst ICON_ROTATTION = new Map([\n ['fa-rotate-90', '90deg'],\n ['fa-rotate-180', '180deg'],\n ['fa-rotate-270', '270deg']\n]);\n\nexport class WmIconState extends BaseComponentState<WmIconProps> {\n public iconDef = {} as IconDef;\n}\n\nexport default class WmIcon extends BaseComponent<WmIconProps, WmIconState, WmIconStyles> {\n spinValue = new Animated.Value(0);\n pulseValue = new Animated.Value(0);\n public stopAnimation = true;\n private _iconSource = null as any;\n\n constructor(props: WmIconProps) {\n super(props, DEFAULT_CLASS, new WmIconProps());\n }\n\n getIconDef(iconClass: string): IconDef {\n const iconDef = {\n rotate: '0'\n } as IconDef;\n const splits = iconClass.split(' ');\n iconDef.isFontAwesome = !!splits.find(v => v === 'fa');\n iconDef.isStreamlineLightIcon = !!splits.find(v => v === 'wm-sl-l');\n iconDef.isStreamlineRegularIcon = !!splits.find(v => v === 'wm-sl-r');\n if (iconDef.isFontAwesome) {\n iconDef.type = splits.find(v => v.startsWith('fa-'))?.substring(3) || '';\n } else if (iconDef.isStreamlineLightIcon) {\n iconDef.type = splits.find(v => v.startsWith('sl-'))?.substring(3) || '';\n } else if (iconDef.isStreamlineRegularIcon) {\n iconDef.type = splits.find(v => v.startsWith('sl-'))?.substring(3) || '';\n } else {\n iconDef.isWavIcon = !iconDef.isFontAwesome && !!splits.find(v => v === 'wi');\n iconDef.type = (iconDef.isWavIcon && splits.find(v => v.startsWith('wi-'))?.substring(3)) || '';\n }\n if (iconClass.indexOf('fa-spin') >= 0) {\n iconDef.animation = 'spin';\n } else if (iconClass.indexOf('fa-pulse') >= 0) {\n iconDef.animation = 'pulse';\n }\n iconDef.size = splits.map(v => ICON_SIZES.get(v)).find(v => !!v) || 12;\n iconDef.rotate = splits.map(v => ICON_ROTATTION.get(v)).find(v => !!v) || '0deg';\n return iconDef;\n }\n\n private spin () {\n if (this.stopAnimation) {\n return;\n }\n this.spinValue.setValue(0);\n Animated.timing(\n this.spinValue,\n {\n toValue: 1,\n duration: 1000,\n easing: Easing.linear,\n useNativeDriver: true\n }\n ).start(() => this.spin());\n }\n\n componentDidMount() {\n super.componentDidMount();\n this.spin();\n }\n\n componentWillUnmount(): void {\n super.componentWillUnmount();\n this.stopAnimation = true;\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case 'iconclass':\n $new && this.updateState({iconDef: this.getIconDef($new)} as WmIconState);\n break;\n }\n }\n\n private getCustomIcon(props: WmIconProps, style: any) {\n const customIcon = this.theme.mergeStyle({}, this.theme.getStyle(props?.iconclass || '')?.icon || this.styles.icon);\n const customIconContent = customIcon?.content;\n if (customIconContent) {\n delete customIcon.content;\n return (<Text\n style={[style, customIcon.fontFamily ? {fontFamily: customIcon.fontFamily}: null]}>\n {decodeURIComponent(customIconContent)}\n </Text>);\n }\n return null;\n }\n\n public renderSkeleton(props: WmIconProps) {\n let skeletonWidth = (this.props.skeletonwidth || this.props.iconsize || this.styles.root.width) as DimensionValue;\n let skeletonHeight = (this.props.skeletonheight || this.props.iconsize || this.styles.root.height) as DimensionValue\n\n if(this.props.skeletonheight == \"0\") {\n skeletonWidth = 0\n }\n \n if(this.props.skeletonheight == \"0\") {\n skeletonHeight = 0\n }\n \n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: skeletonWidth,\n height: skeletonHeight\n });\n }\n\n getElementToShow(props: WmIconProps, iconSrc: any) {\n\n const { iconmargin, iconheight, iconwidth } = props;\n let width, height;\n let elementToshow, source;\n\n if (iconwidth) width = iconwidth;\n else if (iconheight) width = iconheight;\n else width = 12;\n if (iconheight) height = iconheight;\n else if (iconwidth) height = iconwidth;\n else height = 12;\n\n if (isFullPathUrl(iconSrc)) {\n source = {\n uri: iconSrc\n };\n } else {\n source = iconSrc;\n }\n elementToshow = <Image testID={this.getTestId('icon')}\n style={{\n margin: iconmargin ?? 0,\n height: height,\n width: width\n }}\n source={source}/>;\n return elementToshow;\n }\n\n loadIcon(iconImage: string | undefined) {\n if (!iconImage || !this.loadAsset) {\n return null;\n }\n const iconImageSrc = this.loadAsset(iconImage);\n if (iconImageSrc && typeof iconImageSrc !== 'function') {\n return iconImageSrc;\n }\n return null;\n }\n\n renderIcon(props: WmIconProps) {\n let iconJsx = null;\n this._iconSource = this._iconSource || this.loadIcon(props.iconurl);\n const iconSrc: any = this._iconSource\n if (iconSrc) {\n return this.getElementToShow(props, iconSrc);\n }\n const iconDef = this.state.iconDef;\n if (!iconDef) {\n return null;\n }\n const { root, text, icon } = this.styles;\n const style = [{ color: root.color || text.color },\n icon,\n { transform: [{ rotate: iconDef.rotate }] }];\n\n const customIcon = this.getCustomIcon(props, style);\n const iconSize = props.iconsize || this.styles.root.fontSize || this.styles.text.fontSize || iconDef.size;\n if (props.show && iconDef && iconDef.isFontAwesome) {\n //@ts-ignore type information is not matching\n iconJsx = (<FontAwesome name={customIcon ? '' : iconDef.type}\n style={style}\n size={iconSize}\n {...this.getTestProps('icon')}>\n {customIcon}\n </FontAwesome>);\n } else if (props.show && iconDef) {\n let WMCustomIcon = WavIcon as unknown;\n if (iconDef.isStreamlineLightIcon) {\n WMCustomIcon = StreamlineLightIcon;\n } else if (iconDef.isStreamlineRegularIcon) {\n WMCustomIcon = StreamlineRegularIcon;\n } else if (!iconDef.isWavIcon && !customIcon && !this.styles.icon?.fontFamily) {\n return null;\n }\n //@ts-ignore type information is not matching\n iconJsx = WMCustomIcon ? (<WMCustomIcon name={customIcon ? '' : iconDef.type}\n style={style}\n size={iconSize}\n {...this.getTestProps('icon')}>\n {customIcon}\n </WMCustomIcon>) : null;\n }\n if (iconJsx && iconDef.animation === 'spin') {\n const rotate = this.spinValue.interpolate({ inputRange: [0, 1], outputRange: ['0deg', '360deg']});\n const animation = { transform: [{ rotate }] };\n this.stopAnimation = false;\n return (<Animated.View style={animation}>{iconJsx}</Animated.View>);\n } else if (iconJsx && iconDef.animation === 'pulse') {\n const opacity = this.spinValue.interpolate({ inputRange: [0, 1], outputRange: [0, 1]});\n const animation = { opacity: opacity };\n this.stopAnimation = false;\n return (<Animated.View style={animation}>{iconJsx}</Animated.View>);\n } else {\n this.stopAnimation = true;\n }\n return (\n <View\n // {...getAccessibilityProps(AccessibilityWidgetType.ICON, this.props)}\n >\n {iconJsx}\n </View>\n );\n }\n\n renderWidget(props: WmIconProps) {\n let icon = this.renderIcon(props);\n let iterationCount: any = props.iterationcount ? (props.iterationcount != 'infinite' ? parseInt(props.iterationcount): 'infinite') : undefined;\n return (\n <Tappable target={this} rippleColor = {this.styles.root.rippleColor} {...this.getTestPropsForAction()} accessibilityProps={{...getAccessibilityProps(AccessibilityWidgetType.ICON, props)}} disableTouchEffect={this.state.props.disabletoucheffect}>\n <Animatedview entryanimation={props.animation} delay={props.animationdelay} style={this.styles.root} iterationCount={iterationCount}>\n {this._background}\n {(props.iconposition === 'left' && icon) || null}\n {(props.caption && (<Text {...this.getTestPropsForLabel('caption')}style={this.styles.text} accessibilityRole={props?.accessibilityrole ? props?.accessibilityrole : 'text'}>{props.caption}</Text>)) || null}\n {(props.iconposition === 'right' && icon) || null}\n </Animatedview>\n </Tappable>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -118,7 +118,8 @@ export default class WmLabel extends BaseComponent {
|
|
118
118
|
}, this._background, /*#__PURE__*/React.createElement(NavigationServiceConsumer, null, navigationService => {
|
119
119
|
var _this$state$parts, _this$state$parts2;
|
120
120
|
return /*#__PURE__*/React.createElement(Tappable, {
|
121
|
-
target: this
|
121
|
+
target: this,
|
122
|
+
disableTouchEffect: this.state.props.disabletoucheffect
|
122
123
|
}, /*#__PURE__*/React.createElement(Text, _extends({
|
123
124
|
style: this.state.parts.length <= 1 ? this.styles.text : {
|
124
125
|
flexWrap: "wrap",
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","Tappable","NavigationServiceConsumer","AccessibilityWidgetType","getAccessibilityProps","WmLabelProps","DEFAULT_CLASS","isNil","toString","Animatedview","createSkeleton","WmLabelState","constructor","args","_defineProperty","WmLabel","props","getAsterisk","createElement","style","styles","asterisk","onPropertyChange","name","$new","$old","updateState","parts","parseCaption","String","getMultilineSkeleton","width","height","borderRadius","marginBottom","theme","skeleton","caption","replace","pattern","linkRegex","captionSplit","split","i","length","isLink","test","part","isNextTextALink","_captionSplit","text","link","push","renderSkeleton","skeletonWidth","skeletonHeight","skeletonwidth","_this$styles$root","root","skeletonheight","_this$styles$root2","fontSize","multilineskeleton","renderWidget","linkStyles","mergeStyle","entryanimation","animation","delay","animationdelay","_background","navigationService","_this$state$parts","_this$state$parts2","target","_extends","state","flexWrap","textAlign","getTestPropsForLabel","LABEL","numberOfLines","nooflines","ellipsizeMode","map","index","key","isValid","color","selectable","userSelect","onPress","startsWith","openUrl","eventName","substring","invokeEventCallback","proxy","required"],"sources":["label.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, Text, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport NavigationService, { NavigationServiceConsumer } from '@wavemaker/app-rn-runtime/core/navigation.service';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nimport WmLabelProps from './label.props';\nimport { DEFAULT_CLASS, WmLabelStyles } from './label.styles';\nimport { isNil, toString } from 'lodash-es';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport WmSkeleton, { createSkeleton } from '../skeleton/skeleton.component';\n\ntype PartType = {\n text?: string,\n link?: string,\n};\n\nexport class WmLabelState extends BaseComponentState<WmLabelProps> {\n parts: PartType[] = []\n}\n\nexport default class WmLabel extends BaseComponent<WmLabelProps, WmLabelState, WmLabelStyles> {\n\n constructor(props: WmLabelProps) {\n super(props, DEFAULT_CLASS, new WmLabelProps(), new WmLabelState());\n }\n\n private getAsterisk () {\n return <Text style={this.styles.asterisk}>*</Text>;\n }\n\n public onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n\n switch(name) {\n case \"caption\":\n this.updateState({\n parts: this.parseCaption(String($new))\n } as WmLabelState);\n break;\n }\n }\n private getMultilineSkeleton(width: any, height: any) {\n const styles = {\n borderRadius:4,\n marginBottom: 10,\n height: height\n };\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...styles,\n width: width,\n height: height\n });\n }\n\n parseCaption(caption: string) {\n if (!caption) {\n return [];\n }\n caption += '';\n caption = caption.replace(/\\s*\\(\\s*\\$event,\\s*\\$widget\\s*\\)\\s*/, '');\n caption = caption.replace(/\\(\\s*\\)/, '(#/__EMPTY__)');\n const pattern = /\\[([^\\]]+)\\]\\(([^)]*)\\)/g;\n const linkRegex = /^(((http|https):\\/\\/)|javascript:|#).+$/;\n const captionSplit = caption.split(pattern);\n\n let parts = [];\n\n for (let i = 0; i < captionSplit.length; i++) {\n const isLink = linkRegex.test(captionSplit[i]);\n let part: PartType = {};\n\n const isNextTextALink = linkRegex.test(captionSplit[i + 1]);\n if (isLink) {\n part.text = captionSplit[i - 1] ?? '';\n part.link = captionSplit[i] === '#/__EMPTY__' ? '' : captionSplit[i];\n } else {\n part.text = isNextTextALink ? \"\" : captionSplit[i];\n };\n\n if (part.text) {\n parts.push(part);\n }\n }\n\n return parts;\n }\n\n public renderSkeleton(props: WmLabelProps){\n\n let skeletonWidth, skeletonHeight;\n if(this.props.skeletonwidth == \"0\") {\n skeletonWidth = 0\n } else {\n skeletonWidth = this.props.skeletonwidth || this.styles.root?.width\n }\n\n if(this.props.skeletonheight == \"0\") {\n skeletonHeight = 0\n } else {\n skeletonHeight = this.props.skeletonheight || this.styles.root?.height || this.styles.text.fontSize;\n }\n \n if(this.props.multilineskeleton) {\n return (<View style={{\n width: skeletonWidth as DimensionValue\n }}>\n {this.getMultilineSkeleton('100%', skeletonHeight)}\n {this.getMultilineSkeleton('70%', skeletonHeight)}\n {this.getMultilineSkeleton('40%', skeletonHeight)}\n </View>)\n }\n else{\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: skeletonWidth as DimensionValue,\n height: skeletonHeight as DimensionValue\n });\n }\n }\n\n renderWidget(props: WmLabelProps) {\n const linkStyles = this.theme.mergeStyle({text: this.styles.text}, this.styles.link);\n return !isNil(props.caption) ? (\n <Animatedview entryanimation={props.animation} delay={props.animationdelay} style={this.styles.root}>\n {this._background}\n <NavigationServiceConsumer>\n {(navigationService: NavigationService) => {\n return (<Tappable target={this}>\n <Text style={ this.state.parts.length <= 1 ? this.styles.text : {flexWrap: \"wrap\", textAlign: this.styles.text.textAlign}}\n {...this.state.parts.length <= 1 ? this.getTestPropsForLabel('caption') : {}}\n {...getAccessibilityProps(AccessibilityWidgetType.LABEL, props)}\n numberOfLines={props.nooflines} ellipsizeMode=\"tail\">\n {this.state.parts?.length === 1 ? toString(this.state.props.caption) : this.state.parts?.map((part, index) => {\n const isLink = !isNil(part.link);\n return (\n <Text\n key={`part_${index}`}\n style={[\n this.styles.text,\n isLink ? this.styles.link.text : null,\n props.isValid ? null : { color: 'red'}\n ]}\n {...this.getTestPropsForLabel(isLink ? `link_${index}` : `caption_${index}`)}\n selectable={this.styles.text.userSelect === 'text'}\n onPress={() => {\n if (part.link) {\n if (part.link.startsWith('http:')\n || part.link.startsWith('https:')\n || part.link.startsWith('#')) {\n navigationService.openUrl(part.link, '_blank');\n } else if (part.link.startsWith('javascript:')) {\n const eventName = part.link.substring(11);\n this.invokeEventCallback(eventName, [null, this.proxy]);\n }\n }\n this.invokeEventCallback('onTap', [null, this.proxy]);\n }}\n // {...getAccessibilityProps(AccessibilityWidgetType.LABEL, props)}\n >\n {toString(part.text)}\n </Text>\n );\n })}\n {props.required && this.getAsterisk()}\n </Text>\n </Tappable>)}}\n </NavigationServiceConsumer>\n </Animatedview>\n ) : null;\n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAyBC,IAAI,EAAEC,IAAI,QAAQ,cAAc;AACzD,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AACjG,SAASC,QAAQ,QAAQ,mDAAmD;AAC5E,SAA4BC,yBAAyB,QAAQ,mDAAmD;AAChH,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,8CAA8C;AAE7G,OAAOC,YAAY,MAAM,eAAe;AACxC,SAASC,aAAa,QAAuB,gBAAgB;AAC7D,SAASC,KAAK,EAAEC,QAAQ,QAAQ,WAAW;AAC3C,SAASC,YAAY,QAAQ,mEAAmE;AAChG,SAAqBC,cAAc,QAAQ,gCAAgC;AAO3E,OAAO,MAAMC,YAAY,SAASX,kBAAkB,CAAe;EAAAY,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,gBAC7C,EAAE;EAAA;AACxB;AAEA,eAAe,MAAMC,OAAO,SAAShB,aAAa,CAA4C;EAE5Fa,WAAWA,CAACI,KAAmB,EAAE;IAC/B,KAAK,CAACA,KAAK,EAAEV,aAAa,EAAE,IAAID,YAAY,CAAC,CAAC,EAAE,IAAIM,YAAY,CAAC,CAAC,CAAC;EACrE;EAEQM,WAAWA,CAAA,EAAI;IACrB,oBAAOrB,KAAA,CAAAsB,aAAA,CAACrB,IAAI;MAACsB,KAAK,EAAE,IAAI,CAACC,MAAM,CAACC;IAAS,GAAC,GAAO,CAAC;EACpD;EAEOC,gBAAgBA,CAACC,IAAY,EAAEC,IAAS,EAAEC,IAAS,EAAQ;IAChE,KAAK,CAACH,gBAAgB,CAACC,IAAI,EAAEC,IAAI,EAAEC,IAAI,CAAC;IAExC,QAAOF,IAAI;MACT,KAAK,SAAS;QACZ,IAAI,CAACG,WAAW,CAAC;UACfC,KAAK,EAAE,IAAI,CAACC,YAAY,CAACC,MAAM,CAACL,IAAI,CAAC;QACvC,CAAiB,CAAC;QAClB;IACJ;EACF;EACQM,oBAAoBA,CAACC,KAAU,EAAEC,MAAW,EAAE;IACpD,MAAMZ,MAAM,GAAG;MACba,YAAY,EAAC,CAAC;MACdC,YAAY,EAAE,EAAE;MAChBF,MAAM,EAAEA;IACV,CAAC;IACD,OAAOtB,cAAc,CAAC,IAAI,CAACyB,KAAK,EAAE,IAAI,CAACf,MAAM,CAACgB,QAAQ,EAAE;MACtD,GAAGhB,MAAM;MACTW,KAAK,EAAEA,KAAK;MACZC,MAAM,EAAEA;IACV,CAAC,CAAC;EACJ;EAEAJ,YAAYA,CAACS,OAAe,EAAE;IAC5B,IAAI,CAACA,OAAO,EAAE;MACZ,OAAO,EAAE;IACX;IACAA,OAAO,IAAI,EAAE;IACbA,OAAO,GAAGA,OAAO,CAACC,OAAO,CAAC,qCAAqC,EAAE,EAAE,CAAC;IACpED,OAAO,GAAGA,OAAO,CAACC,OAAO,CAAC,SAAS,EAAE,eAAe,CAAC;IACrD,MAAMC,OAAO,GAAG,0BAA0B;IAC1C,MAAMC,SAAS,GAAG,yCAAyC;IAC3D,MAAMC,YAAY,GAAGJ,OAAO,CAACK,KAAK,CAACH,OAAO,CAAC;IAE3C,IAAIZ,KAAK,GAAG,EAAE;IAEd,KAAK,IAAIgB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,YAAY,CAACG,MAAM,EAAED,CAAC,EAAE,EAAE;MAC5C,MAAME,MAAM,GAAGL,SAAS,CAACM,IAAI,CAACL,YAAY,CAACE,CAAC,CAAC,CAAC;MAC9C,IAAII,IAAc,GAAG,CAAC,CAAC;MAEvB,MAAMC,eAAe,GAAGR,SAAS,CAACM,IAAI,CAACL,YAAY,CAACE,CAAC,GAAG,CAAC,CAAC,CAAC;MAC3D,IAAIE,MAAM,EAAE;QAAA,IAAAI,aAAA;QACVF,IAAI,CAACG,IAAI,IAAAD,aAAA,GAAGR,YAAY,CAACE,CAAC,GAAG,CAAC,CAAC,cAAAM,aAAA,cAAAA,aAAA,GAAI,EAAE;QACrCF,IAAI,CAACI,IAAI,GAAGV,YAAY,CAACE,CAAC,CAAC,KAAK,aAAa,GAAG,EAAE,GAAGF,YAAY,CAACE,CAAC,CAAC;MACtE,CAAC,MAAM;QACLI,IAAI,CAACG,IAAI,GAAGF,eAAe,GAAG,EAAE,GAAGP,YAAY,CAACE,CAAC,CAAC;MACpD;MAAC;MAED,IAAII,IAAI,CAACG,IAAI,EAAE;QACbvB,KAAK,CAACyB,IAAI,CAACL,IAAI,CAAC;MAClB;IACF;IAEA,OAAOpB,KAAK;EACd;EAEO0B,cAAcA,CAACrC,KAAmB,EAAC;IAExC,IAAIsC,aAAa,EAAEC,cAAc;IACjC,IAAG,IAAI,CAACvC,KAAK,CAACwC,aAAa,IAAI,GAAG,EAAE;MAClCF,aAAa,GAAG,CAAC;IACnB,CAAC,MAAM;MAAA,IAAAG,iBAAA;MACLH,aAAa,GAAG,IAAI,CAACtC,KAAK,CAACwC,aAAa,MAAAC,iBAAA,GAAI,IAAI,CAACrC,MAAM,CAACsC,IAAI,cAAAD,iBAAA,uBAAhBA,iBAAA,CAAkB1B,KAAK;IACrE;IAEA,IAAG,IAAI,CAACf,KAAK,CAAC2C,cAAc,IAAI,GAAG,EAAE;MACnCJ,cAAc,GAAG,CAAC;IACpB,CAAC,MAAM;MAAA,IAAAK,kBAAA;MACLL,cAAc,GAAG,IAAI,CAACvC,KAAK,CAAC2C,cAAc,MAAAC,kBAAA,GAAI,IAAI,CAACxC,MAAM,CAACsC,IAAI,cAAAE,kBAAA,uBAAhBA,kBAAA,CAAkB5B,MAAM,KAAI,IAAI,CAACZ,MAAM,CAAC8B,IAAI,CAACW,QAAQ;IACrG;IAEA,IAAG,IAAI,CAAC7C,KAAK,CAAC8C,iBAAiB,EAAE;MAC/B,oBAAQlE,KAAA,CAAAsB,aAAA,CAACpB,IAAI;QAACqB,KAAK,EAAE;UACnBY,KAAK,EAAEuB;QACT;MAAE,GACC,IAAI,CAACxB,oBAAoB,CAAC,MAAM,EAAEyB,cAAc,CAAC,EACjD,IAAI,CAACzB,oBAAoB,CAAC,KAAK,EAAEyB,cAAc,CAAC,EAChD,IAAI,CAACzB,oBAAoB,CAAC,KAAK,EAAEyB,cAAc,CAC5C,CAAC;IACT,CAAC,MACG;MACF,OAAO7C,cAAc,CAAC,IAAI,CAACyB,KAAK,EAAE,IAAI,CAACf,MAAM,CAACgB,QAAQ,EAAE;QACtD,GAAG,IAAI,CAAChB,MAAM,CAACsC,IAAI;QACnB3B,KAAK,EAAEuB,aAA+B;QACtCtB,MAAM,EAAEuB;MACV,CAAC,CAAC;IACJ;EACF;EAEAQ,YAAYA,CAAC/C,KAAmB,EAAE;IAChC,MAAMgD,UAAU,GAAG,IAAI,CAAC7B,KAAK,CAAC8B,UAAU,CAAC;MAACf,IAAI,EAAE,IAAI,CAAC9B,MAAM,CAAC8B;IAAI,CAAC,EAAE,IAAI,CAAC9B,MAAM,CAAC+B,IAAI,CAAC;IACpF,OAAO,CAAC5C,KAAK,CAACS,KAAK,CAACqB,OAAO,CAAC,gBAC1BzC,KAAA,CAAAsB,aAAA,CAACT,YAAY;MAACyD,cAAc,EAAElD,KAAK,CAACmD,SAAU;MAACC,KAAK,EAAEpD,KAAK,CAACqD,cAAe;MAAClD,KAAK,EAAE,IAAI,CAACC,MAAM,CAACsC;IAAK,GACjG,IAAI,CAACY,WAAW,eACjB1E,KAAA,CAAAsB,aAAA,CAAChB,yBAAyB,QACxBqE,iBAAoC,IAAK;MAAA,IAAAC,iBAAA,EAAAC,kBAAA;MACzC,oBAAQ7E,KAAA,CAAAsB,aAAA,CAACjB,QAAQ;QAACyE,MAAM,EAAE;MAAK,gBAC7B9E,KAAA,CAAAsB,aAAA,CAACrB,IAAI,EAAA8E,QAAA;QAACxD,KAAK,EAAG,IAAI,CAACyD,KAAK,CAACjD,KAAK,CAACiB,MAAM,IAAI,CAAC,GAAG,IAAI,CAACxB,MAAM,CAAC8B,IAAI,GAAG;UAAC2B,QAAQ,EAAE,MAAM;UAAEC,SAAS,EAAE,IAAI,CAAC1D,MAAM,CAAC8B,IAAI,CAAC4B;QAAS;MAAE,GACpH,IAAI,CAACF,KAAK,CAACjD,KAAK,CAACiB,MAAM,IAAI,CAAC,GAAG,IAAI,CAACmC,oBAAoB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EACxE3E,qBAAqB,CAACD,uBAAuB,CAAC6E,KAAK,EAAEhE,KAAK,CAAC;QAC/DiE,aAAa,EAAEjE,KAAK,CAACkE,SAAU;QAACC,aAAa,EAAC;MAAM,IACnD,EAAAX,iBAAA,OAAI,CAACI,KAAK,CAACjD,KAAK,cAAA6C,iBAAA,uBAAhBA,iBAAA,CAAkB5B,MAAM,MAAK,CAAC,GAAGpC,QAAQ,CAAC,IAAI,CAACoE,KAAK,CAAC5D,KAAK,CAACqB,OAAO,CAAC,IAAAoC,kBAAA,GAAG,IAAI,CAACG,KAAK,CAACjD,KAAK,cAAA8C,kBAAA,uBAAhBA,kBAAA,CAAkBW,GAAG,CAAC,CAACrC,IAAI,EAAEsC,KAAK,KAAK;QAC5G,MAAMxC,MAAM,GAAG,CAACtC,KAAK,CAACwC,IAAI,CAACI,IAAI,CAAC;QAChC,oBACEvD,KAAA,CAAAsB,aAAA,CAACrB,IAAI,EAAA8E,QAAA;UACHW,GAAG,EAAE,QAAQD,KAAK,EAAG;UACrBlE,KAAK,EAAE,CACL,IAAI,CAACC,MAAM,CAAC8B,IAAI,EAChBL,MAAM,GAAG,IAAI,CAACzB,MAAM,CAAC+B,IAAI,CAACD,IAAI,GAAG,IAAI,EACrClC,KAAK,CAACuE,OAAO,GAAG,IAAI,GAAG;YAAEC,KAAK,EAAE;UAAK,CAAC;QACtC,GACE,IAAI,CAACT,oBAAoB,CAAClC,MAAM,GAAG,QAAQwC,KAAK,EAAE,GAAG,WAAWA,KAAK,EAAE,CAAC;UAC5EI,UAAU,EAAE,IAAI,CAACrE,MAAM,CAAC8B,IAAI,CAACwC,UAAU,KAAK,MAAO;UACnDC,OAAO,EAAEA,CAAA,KAAM;YACb,IAAI5C,IAAI,CAACI,IAAI,EAAE;cACb,IAAIJ,IAAI,CAACI,IAAI,CAACyC,UAAU,CAAC,OAAO,CAAC,IAC5B7C,IAAI,CAACI,IAAI,CAACyC,UAAU,CAAC,QAAQ,CAAC,IAC9B7C,IAAI,CAACI,IAAI,CAACyC,UAAU,CAAC,GAAG,CAAC,EAAE;gBAC9BrB,iBAAiB,CAACsB,OAAO,CAAC9C,IAAI,CAACI,IAAI,EAAE,QAAQ,CAAC;cAChD,CAAC,MAAM,IAAIJ,IAAI,CAACI,IAAI,CAACyC,UAAU,CAAC,aAAa,CAAC,EAAE;gBAC9C,MAAME,SAAS,GAAG/C,IAAI,CAACI,IAAI,CAAC4C,SAAS,CAAC,EAAE,CAAC;gBACzC,IAAI,CAACC,mBAAmB,CAACF,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,CAACG,KAAK,CAAC,CAAC;cACzD;YACF;YACA,IAAI,CAACD,mBAAmB,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAACC,KAAK,CAAC,CAAC;UACvD;UACA;QAAA,IAECzF,QAAQ,CAACuC,IAAI,CAACG,IAAI,CACf,CAAC;MAEX,CAAC,CAAC,EACAlC,KAAK,CAACkF,QAAQ,IAAI,IAAI,CAACjF,WAAW,CAAC,CACjC,CACE,CAAC;IAAC,CACa,CACf,CAAC,GACb,IAAI;EACV;AACF","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","Tappable","NavigationServiceConsumer","AccessibilityWidgetType","getAccessibilityProps","WmLabelProps","DEFAULT_CLASS","isNil","toString","Animatedview","createSkeleton","WmLabelState","constructor","args","_defineProperty","WmLabel","props","getAsterisk","createElement","style","styles","asterisk","onPropertyChange","name","$new","$old","updateState","parts","parseCaption","String","getMultilineSkeleton","width","height","borderRadius","marginBottom","theme","skeleton","caption","replace","pattern","linkRegex","captionSplit","split","i","length","isLink","test","part","isNextTextALink","_captionSplit","text","link","push","renderSkeleton","skeletonWidth","skeletonHeight","skeletonwidth","_this$styles$root","root","skeletonheight","_this$styles$root2","fontSize","multilineskeleton","renderWidget","linkStyles","mergeStyle","entryanimation","animation","delay","animationdelay","_background","navigationService","_this$state$parts","_this$state$parts2","target","disableTouchEffect","state","disabletoucheffect","_extends","flexWrap","textAlign","getTestPropsForLabel","LABEL","numberOfLines","nooflines","ellipsizeMode","map","index","key","isValid","color","selectable","userSelect","onPress","startsWith","openUrl","eventName","substring","invokeEventCallback","proxy","required"],"sources":["label.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, Text, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport NavigationService, { NavigationServiceConsumer } from '@wavemaker/app-rn-runtime/core/navigation.service';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nimport WmLabelProps from './label.props';\nimport { DEFAULT_CLASS, WmLabelStyles } from './label.styles';\nimport { isNil, toString } from 'lodash-es';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport WmSkeleton, { createSkeleton } from '../skeleton/skeleton.component';\n\ntype PartType = {\n text?: string,\n link?: string,\n};\n\nexport class WmLabelState extends BaseComponentState<WmLabelProps> {\n parts: PartType[] = []\n}\n\nexport default class WmLabel extends BaseComponent<WmLabelProps, WmLabelState, WmLabelStyles> {\n\n constructor(props: WmLabelProps) {\n super(props, DEFAULT_CLASS, new WmLabelProps(), new WmLabelState());\n }\n\n private getAsterisk () {\n return <Text style={this.styles.asterisk}>*</Text>;\n }\n\n public onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n\n switch(name) {\n case \"caption\":\n this.updateState({\n parts: this.parseCaption(String($new))\n } as WmLabelState);\n break;\n }\n }\n private getMultilineSkeleton(width: any, height: any) {\n const styles = {\n borderRadius:4,\n marginBottom: 10,\n height: height\n };\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...styles,\n width: width,\n height: height\n });\n }\n\n parseCaption(caption: string) {\n if (!caption) {\n return [];\n }\n caption += '';\n caption = caption.replace(/\\s*\\(\\s*\\$event,\\s*\\$widget\\s*\\)\\s*/, '');\n caption = caption.replace(/\\(\\s*\\)/, '(#/__EMPTY__)');\n const pattern = /\\[([^\\]]+)\\]\\(([^)]*)\\)/g;\n const linkRegex = /^(((http|https):\\/\\/)|javascript:|#).+$/;\n const captionSplit = caption.split(pattern);\n\n let parts = [];\n\n for (let i = 0; i < captionSplit.length; i++) {\n const isLink = linkRegex.test(captionSplit[i]);\n let part: PartType = {};\n\n const isNextTextALink = linkRegex.test(captionSplit[i + 1]);\n if (isLink) {\n part.text = captionSplit[i - 1] ?? '';\n part.link = captionSplit[i] === '#/__EMPTY__' ? '' : captionSplit[i];\n } else {\n part.text = isNextTextALink ? \"\" : captionSplit[i];\n };\n\n if (part.text) {\n parts.push(part);\n }\n }\n\n return parts;\n }\n\n public renderSkeleton(props: WmLabelProps){\n\n let skeletonWidth, skeletonHeight;\n if(this.props.skeletonwidth == \"0\") {\n skeletonWidth = 0\n } else {\n skeletonWidth = this.props.skeletonwidth || this.styles.root?.width\n }\n\n if(this.props.skeletonheight == \"0\") {\n skeletonHeight = 0\n } else {\n skeletonHeight = this.props.skeletonheight || this.styles.root?.height || this.styles.text.fontSize;\n }\n \n if(this.props.multilineskeleton) {\n return (<View style={{\n width: skeletonWidth as DimensionValue\n }}>\n {this.getMultilineSkeleton('100%', skeletonHeight)}\n {this.getMultilineSkeleton('70%', skeletonHeight)}\n {this.getMultilineSkeleton('40%', skeletonHeight)}\n </View>)\n }\n else{\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: skeletonWidth as DimensionValue,\n height: skeletonHeight as DimensionValue\n });\n }\n }\n\n renderWidget(props: WmLabelProps) {\n const linkStyles = this.theme.mergeStyle({text: this.styles.text}, this.styles.link);\n return !isNil(props.caption) ? (\n <Animatedview entryanimation={props.animation} delay={props.animationdelay} style={this.styles.root}>\n {this._background}\n <NavigationServiceConsumer>\n {(navigationService: NavigationService) => {\n return (<Tappable target={this} disableTouchEffect={this.state.props.disabletoucheffect} >\n <Text style={ this.state.parts.length <= 1 ? this.styles.text : {flexWrap: \"wrap\", textAlign: this.styles.text.textAlign}}\n {...this.state.parts.length <= 1 ? this.getTestPropsForLabel('caption') : {}}\n {...getAccessibilityProps(AccessibilityWidgetType.LABEL, props)}\n numberOfLines={props.nooflines} ellipsizeMode=\"tail\">\n {this.state.parts?.length === 1 ? toString(this.state.props.caption) : this.state.parts?.map((part, index) => {\n const isLink = !isNil(part.link);\n return (\n <Text\n key={`part_${index}`}\n style={[\n this.styles.text,\n isLink ? this.styles.link.text : null,\n props.isValid ? null : { color: 'red'}\n ]}\n {...this.getTestPropsForLabel(isLink ? `link_${index}` : `caption_${index}`)}\n selectable={this.styles.text.userSelect === 'text'}\n onPress={() => {\n if (part.link) {\n if (part.link.startsWith('http:')\n || part.link.startsWith('https:')\n || part.link.startsWith('#')) {\n navigationService.openUrl(part.link, '_blank');\n } else if (part.link.startsWith('javascript:')) {\n const eventName = part.link.substring(11);\n this.invokeEventCallback(eventName, [null, this.proxy]);\n }\n }\n this.invokeEventCallback('onTap', [null, this.proxy]);\n }}\n // {...getAccessibilityProps(AccessibilityWidgetType.LABEL, props)}\n >\n {toString(part.text)}\n </Text>\n );\n })}\n {props.required && this.getAsterisk()}\n </Text>\n </Tappable>)}}\n </NavigationServiceConsumer>\n </Animatedview>\n ) : null;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|