@wavemaker/app-rn-runtime 11.4.3-patch.2 → 11.4.3-patch.3
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 +4 -12
- package/components/advanced/carousel/carousel.component.js.map +1 -1
- package/components/advanced/login/login.component.js +2 -3
- package/components/advanced/login/login.component.js.map +1 -1
- package/components/advanced/network-info-toaster/network-info-toaster.component.js +16 -17
- package/components/advanced/network-info-toaster/network-info-toaster.component.js.map +1 -1
- package/components/advanced/webview/webview.component.js +0 -1
- package/components/advanced/webview/webview.component.js.map +1 -1
- package/components/basic/anchor/anchor.component.js +5 -7
- package/components/basic/anchor/anchor.component.js.map +1 -1
- package/components/basic/audio/audio.component.js +0 -5
- package/components/basic/audio/audio.component.js.map +1 -1
- package/components/basic/button/button.component.js +6 -7
- package/components/basic/button/button.component.js.map +1 -1
- package/components/basic/button/button.styles.js +4 -14
- package/components/basic/button/button.styles.js.map +1 -1
- package/components/basic/buttongroup/buttongroup.styles.js +1 -2
- package/components/basic/buttongroup/buttongroup.styles.js.map +1 -1
- package/components/basic/icon/icon.component.js +5 -6
- package/components/basic/icon/icon.component.js.map +1 -1
- package/components/basic/label/label.component.js +3 -60
- package/components/basic/label/label.component.js.map +1 -1
- package/components/basic/label/label.styles.js +1 -2
- package/components/basic/label/label.styles.js.map +1 -1
- package/components/basic/message/message.component.js +3 -6
- package/components/basic/message/message.component.js.map +1 -1
- package/components/basic/picture/picture.component.js +5 -7
- package/components/basic/picture/picture.component.js.map +1 -1
- package/components/basic/progress-bar/progress-bar.component.js +2 -4
- package/components/basic/progress-bar/progress-bar.component.js.map +1 -1
- package/components/basic/progress-bar/progress-bar.styles.js +1 -1
- package/components/basic/progress-bar/progress-bar.styles.js.map +1 -1
- package/components/basic/progress-circle/progress-circle.component.js +2 -3
- package/components/basic/progress-circle/progress-circle.component.js.map +1 -1
- package/components/basic/search/search.component.js +5 -9
- package/components/basic/search/search.component.js.map +1 -1
- package/components/basic/search/search.styles.js +10 -11
- package/components/basic/search/search.styles.js.map +1 -1
- package/components/basic/spinner/spinner.component.js +2 -6
- package/components/basic/spinner/spinner.component.js.map +1 -1
- package/components/basic/spinner/spinner.styles.js +2 -3
- package/components/basic/spinner/spinner.styles.js.map +1 -1
- package/components/basic/video/video.component.js +1 -2
- package/components/basic/video/video.component.js.map +1 -1
- package/components/chart/pie-chart/pie-chart.component.js +10 -7
- package/components/chart/pie-chart/pie-chart.component.js.map +1 -1
- package/components/container/accordion/accordion.component.js +13 -16
- package/components/container/accordion/accordion.component.js.map +1 -1
- package/components/container/accordion/accordionpane/accordionpane.component.js +22 -3
- package/components/container/accordion/accordionpane/accordionpane.component.js.map +1 -1
- package/components/container/container.component.js +2 -3
- package/components/container/container.component.js.map +1 -1
- package/components/container/panel/panel.component.js +66 -43
- package/components/container/panel/panel.component.js.map +1 -1
- package/components/container/panel/panel.styles.js +2 -9
- package/components/container/panel/panel.styles.js.map +1 -1
- package/components/container/tabs/tabheader/tabheader.component.js +5 -7
- package/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
- package/components/container/tabs/tabheader/tabheader.styles.js +5 -9
- package/components/container/tabs/tabheader/tabheader.styles.js.map +1 -1
- package/components/container/tabs/tabs.component.js +0 -1
- package/components/container/tabs/tabs.component.js.map +1 -1
- package/components/container/tile/tile.component.js +2 -3
- package/components/container/tile/tile.component.js.map +1 -1
- package/components/container/wizard/wizard.component.js +2 -7
- package/components/container/wizard/wizard.component.js.map +1 -1
- package/components/container/wizard/wizard.styles.js +4 -15
- package/components/container/wizard/wizard.styles.js.map +1 -1
- package/components/data/card/card.component.js +2 -3
- package/components/data/card/card.component.js.map +1 -1
- package/components/data/form/form-action/form-action.component.js +0 -1
- package/components/data/form/form-action/form-action.component.js.map +1 -1
- package/components/data/form/form-field/form-field.component.js +2 -3
- package/components/data/form/form-field/form-field.component.js.map +1 -1
- package/components/data/form/form.component.js +0 -3
- package/components/data/form/form.component.js.map +1 -1
- package/components/data/list/list-template/list-template.styles.js +1 -5
- package/components/data/list/list-template/list-template.styles.js.map +1 -1
- package/components/data/list/list.component.js +2 -8
- package/components/data/list/list.component.js.map +1 -1
- package/components/data/list/list.styles.js +5 -12
- package/components/data/list/list.styles.js.map +1 -1
- package/components/device/barcodescanner/barcodescanner.component.js +0 -1
- package/components/device/barcodescanner/barcodescanner.component.js.map +1 -1
- package/components/device/barcodescanner/barcodescanner.styles.js +1 -2
- package/components/device/barcodescanner/barcodescanner.styles.js.map +1 -1
- package/components/device/camera/camera.component.js +0 -1
- package/components/device/camera/camera.component.js.map +1 -1
- package/components/device/camera/camera.styles.js +1 -2
- package/components/device/camera/camera.styles.js.map +1 -1
- package/components/dialogs/alertdialog/alertdialog.component.js +1 -4
- package/components/dialogs/alertdialog/alertdialog.component.js.map +1 -1
- package/components/dialogs/alertdialog/alertdialog.styles.js +3 -9
- package/components/dialogs/alertdialog/alertdialog.styles.js.map +1 -1
- package/components/dialogs/confirmdialog/confirmdialog.component.js +2 -6
- package/components/dialogs/confirmdialog/confirmdialog.component.js.map +1 -1
- package/components/dialogs/confirmdialog/confirmdialog.styles.js +10 -10
- package/components/dialogs/confirmdialog/confirmdialog.styles.js.map +1 -1
- package/components/dialogs/dialog/dialog.component.js +0 -2
- package/components/dialogs/dialog/dialog.component.js.map +1 -1
- package/components/dialogs/dialog/dialog.styles.js +8 -17
- package/components/dialogs/dialog/dialog.styles.js.map +1 -1
- package/components/input/calendar/calendar.component.js +0 -4
- package/components/input/calendar/calendar.component.js.map +1 -1
- package/components/input/calendar/calendar.styles.js +11 -22
- package/components/input/calendar/calendar.styles.js.map +1 -1
- package/components/input/calendar/views/month-view.js +0 -4
- package/components/input/calendar/views/month-view.js.map +1 -1
- package/components/input/checkbox/checkbox.component.js +6 -6
- package/components/input/checkbox/checkbox.component.js.map +1 -1
- package/components/input/checkboxset/checkboxset.component.js +4 -5
- package/components/input/checkboxset/checkboxset.component.js.map +1 -1
- package/components/input/chips/chips.component.js +4 -8
- package/components/input/chips/chips.component.js.map +1 -1
- package/components/input/chips/chips.styles.js +12 -20
- package/components/input/chips/chips.styles.js.map +1 -1
- package/components/input/currency/currency.component.js +1 -1
- package/components/input/currency/currency.component.js.map +1 -1
- package/components/input/currency/currency.styles.js +4 -12
- package/components/input/currency/currency.styles.js.map +1 -1
- package/components/input/epoch/base-datetime.component.js +4 -6
- package/components/input/epoch/base-datetime.component.js.map +1 -1
- package/components/input/fileupload/fileupload.component.js +0 -1
- package/components/input/fileupload/fileupload.component.js.map +1 -1
- package/components/input/number/number.component.js +1 -1
- package/components/input/number/number.component.js.map +1 -1
- package/components/input/number/number.styles.js +2 -6
- package/components/input/number/number.styles.js.map +1 -1
- package/components/input/radioset/radioset.component.js +2 -3
- package/components/input/radioset/radioset.component.js.map +1 -1
- package/components/input/rating/rating.component.js +0 -2
- package/components/input/rating/rating.component.js.map +1 -1
- package/components/input/select/select.component.js +10 -13
- package/components/input/select/select.component.js.map +1 -1
- package/components/input/select/select.styles.js +2 -3
- package/components/input/select/select.styles.js.map +1 -1
- package/components/input/slider/slider.component.js +23 -94
- package/components/input/slider/slider.component.js.map +1 -1
- package/components/input/slider/slider.styles.js +2 -27
- package/components/input/slider/slider.styles.js.map +1 -1
- package/components/input/switch/switch.component.js +4 -6
- package/components/input/switch/switch.component.js.map +1 -1
- package/components/input/switch/switch.styles.js +3 -5
- package/components/input/switch/switch.styles.js.map +1 -1
- package/components/input/text/text.component.js +1 -1
- package/components/input/text/text.component.js.map +1 -1
- package/components/input/text/text.styles.js +1 -5
- package/components/input/text/text.styles.js.map +1 -1
- package/components/input/textarea/textarea.component.js +1 -1
- package/components/input/textarea/textarea.component.js.map +1 -1
- package/components/input/toggle/toggle.component.js +2 -3
- package/components/input/toggle/toggle.component.js.map +1 -1
- package/components/input/toggle/toggle.styles.js +9 -21
- package/components/input/toggle/toggle.styles.js.map +1 -1
- package/components/navigation/appnavbar/appnavbar.component.js +2 -7
- package/components/navigation/appnavbar/appnavbar.component.js.map +1 -1
- package/components/navigation/appnavbar/appnavbar.styles.js +1 -1
- package/components/navigation/appnavbar/appnavbar.styles.js.map +1 -1
- package/components/navigation/menu/menu.component.js +3 -5
- package/components/navigation/menu/menu.component.js.map +1 -1
- package/components/navigation/menu/menu.styles.js +6 -10
- package/components/navigation/menu/menu.styles.js.map +1 -1
- package/components/navigation/navbar/navbar.component.js +4 -7
- package/components/navigation/navbar/navbar.component.js.map +1 -1
- package/components/navigation/navitem/navitem.component.js +0 -4
- package/components/navigation/navitem/navitem.component.js.map +1 -1
- package/components/navigation/navitem/navitem.styles.js +10 -14
- package/components/navigation/navitem/navitem.styles.js.map +1 -1
- package/components/navigation/popover/popover.component.js +4 -7
- package/components/navigation/popover/popover.component.js.map +1 -1
- package/components/navigation/popover/popover.styles.js +2 -8
- package/components/navigation/popover/popover.styles.js.map +1 -1
- package/components/page/left-panel/left-panel.styles.js +1 -6
- package/components/page/left-panel/left-panel.styles.js.map +1 -1
- package/components/page/tabbar/tabbar.component.js +6 -7
- package/components/page/tabbar/tabbar.component.js.map +1 -1
- package/core/base.component.js +37 -80
- package/core/base.component.js.map +1 -1
- package/core/formatters.js +2 -9
- package/core/formatters.js.map +1 -1
- package/core/tappable.component.js +5 -15
- package/core/tappable.component.js.map +1 -1
- package/package.json +2 -3
- package/runtime/App.js +0 -15
- package/runtime/App.js.map +1 -1
- package/runtime/base-fragment.component.js +3 -13
- package/runtime/base-fragment.component.js.map +1 -1
- package/runtime/services/device/camera-service.js +9 -26
- package/runtime/services/device/camera-service.js.map +1 -1
- package/runtime/services/device/scan-service.js +2 -16
- package/runtime/services/device/scan-service.js.map +1 -1
- package/styles/theme.variables.js +3 -14
- package/styles/theme.variables.js.map +1 -1
- package/components/container/panel/collapsible-pane.component.js +0 -26
- package/components/container/panel/collapsible-pane.component.js.map +0 -1
- package/core/testid.provider.js +0 -5
- package/core/testid.provider.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Platform","Text","View","Slider","isString","Audio","BaseComponent","BaseComponentState","WmAudioProps","DEFAULT_CLASS","WmIcon","isWebPreviewMode","WmAudioState","constructor","arguments","_defineProperty","WmAudio","props","onPropertyChange","name","$new","$old","initialized","Promise","resolve","then","_this$sound","sound","unloadAsync","onSeekChange","state","playing","autoplay","play","getSource","source","loadAsset","mp3format","uri","addPadding","str","maxLen","pad","length","undefined","formatTime","v","t","mins","Math","floor","seconds","round","setTimer","cancelTimer","timer","setInterval","currentTime","totalTime","loop","replay","stop","setState","max","offsetTime","clearInterval","_this$sound2","pause","updateState","replayAsync","loading","playAsync","Sound","createAsync","isMuted","muted","res","getStatusAsync","status","catch","_this$sound3","pauseAsync","mute","setStatusAsync","unmute","time","_this$sound4","setPositionAsync","componentDidMount","setTimeout","componentWillUnmount","renderWidget","controls","createElement","style","styles","root","_background","id","getTestId","playIcon","iconclass","onTap","pauseIcon","text","testID","step","flex","value","disabled","onValueChange","bind","minimumValue","inverted","isRTL","OS","maximumValue","thumbTintColor","slider","thumb","backgroundColor","minimumTrackTintColor","minimumTrack","maximumTrackTintColor","maximumTrack","muteIcon","unmuteIcon"],"sources":["audio.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Platform, Text, View } from 'react-native';\nimport Slider from '@react-native-community/slider';\nimport { isString } from 'lodash-es';\nimport { Audio } from 'expo-av';\nimport { Sound } from 'expo-av/build/Audio';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmAudioProps from './audio.props';\nimport { DEFAULT_CLASS, WmAudioStyles } from './audio.styles';\nimport WmIcon from '../icon/icon.component';\nimport { isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\n\nexport class WmAudioState extends BaseComponentState<WmAudioProps> {\n playing = false;\n currentTime = 0;\n totalTime = 0;\n}\n\nexport default class WmAudio extends BaseComponent<WmAudioProps, WmAudioState, WmAudioStyles> {\n\n private loading = false;\n private sound: Sound = null as any;\n private timer: any;\n private offsetTime = 0;\n\n constructor(props: WmAudioProps) {\n super(props, DEFAULT_CLASS, new WmAudioProps(), new WmAudioState());\n }\n\n onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case 'mp3format': {\n if (this.initialized) {\n Promise.resolve()\n .then(() => this.sound?.unloadAsync())\n .then(() => {\n this.sound = null as any;\n this.onSeekChange(0);\n if (this.state.playing \n || this.state.props.autoplay) {\n this.play();\n }\n });\n }\n }\n break;\n case 'autoplay':\n if (this.initialized && $new) {\n this.play();\n }\n }\n }\n\n getSource() {\n const source = this.loadAsset \n && this.state.props.mp3format\n && this.loadAsset(this.state.props.mp3format as string);\n if (isString(source)) {\n return {\n uri: source\n };\n }\n return source;\n }\n\n addPadding(str: string, maxLen: number, pad = '0'): string {\n if (str.length < maxLen) {\n return this.addPadding(pad + str, maxLen, pad);\n }\n return str;\n }\n\n formatTime(v: number) {\n const t = v/60;\n const mins = Math.floor(t);\n const seconds = Math.round((t - mins) * 60);\n return this.addPadding(mins+ '', 2) + ':' + this.addPadding(seconds+ '', 2);\n }\n\n setTimer() {\n this.cancelTimer();\n this.timer = setInterval(() => {\n if (this.state.currentTime >= this.state.totalTime) {\n if (this.state.props.loop) {\n this.replay();\n } else {\n this.stop();\n }\n return;\n }\n this.setState({\n currentTime: Math.max(this.offsetTime + this.state.currentTime + 1, 0)\n } as WmAudioState);\n this.offsetTime = 0;\n }, 1000);\n }\n\n cancelTimer() {\n clearInterval(this.timer);\n }\n\n stop() {\n this.pause();\n this.sound?.unloadAsync();\n this.sound = null as any;\n this.cancelTimer();\n this.offsetTime = 0;\n this.updateState({\n currentTime: 0\n } as WmAudioState);\n }\n\n replay() {\n this.updateState({\n currentTime: 0\n } as WmAudioState, () => {\n this.sound.replayAsync();\n });\n }\n\n play() {\n if (isWebPreviewMode() \n || this.loading\n || (this.state.playing && this.sound)) {\n return;\n }\n if (this.sound) {\n this.sound.playAsync();\n this.setTimer();\n this.updateState({\n playing: true\n } as WmAudioState);\n } else {\n this.loading = true;\n const source = this.getSource();\n source && Audio.Sound.createAsync(source, {\n isMuted: this.state.props.muted\n })\n .then((res) => {\n this.sound = res.sound;\n this.sound.playAsync();\n this.sound.getStatusAsync().then((status: any) => {\n this.updateState({\n currentTime: 0,\n totalTime: Math.round(status['durationMillis']/1000)\n } as WmAudioState, () => this.setTimer());\n });\n this.updateState({\n playing: true\n } as WmAudioState);\n }).catch(() => {}).then(() => {\n this.loading = false;\n });\n }\n }\n\n pause() {\n this.cancelTimer();\n this.sound?.pauseAsync().then(() => {\n this.updateState({\n playing: false\n } as WmAudioState);\n })\n }\n\n mute() {\n this.sound.setStatusAsync({\n isMuted: true\n }).then(() => {\n this.updateState({\n props: {\n muted: true\n }\n } as WmAudioState);\n });\n }\n\n unmute() {\n this.sound.setStatusAsync({\n isMuted: false\n }).then(() => {\n this.updateState({\n props: {\n muted: false\n }\n } as WmAudioState);\n });\n }\n\n onSeekChange(time: number) {\n if (time !== this.state.currentTime) {\n this.offsetTime = time - this.state.currentTime;\n this.sound?.setPositionAsync(time * 1000);\n }\n }\n\n componentDidMount(): void {\n super.componentDidMount();\n //without settimeout, app is crashing with errors\n setTimeout(() => {\n if (this.state.props.autoplay) {\n this.play();\n }\n }, 1000);\n }\n\n componentWillUnmount(): void {\n super.componentWillUnmount();\n this.stop();\n }\n\n renderWidget(props: WmAudioProps) {\n return props.controls ? (\n <View style={this.styles.root}>\n {this._background}\n {!this.state.playing ? (<WmIcon \n id={this.getTestId('play')}\n name={props.name + \"_play\"}\n styles={this.styles.playIcon}\n iconclass=\"wi wi-play-arrow fa-2x\"\n onTap={() => this.play()}></WmIcon>) : (\n <WmIcon name={props.name + \"_pause\"}\n id={this.getTestId('pause')}\n iconclass=\"wi wi-pause fa-2x\"\n styles={this.styles.pauseIcon}\n onTap={() => this.pause()}></WmIcon>)}\n <Text style={this.styles.text}>\n {`${this.formatTime(this.state.currentTime)} / ${this.formatTime(this.state.totalTime)}`}\n </Text>\n <Slider\n testID={this.getTestId('slider')}\n step={1}\n style={{flex: 1}}\n value={this.state.currentTime}\n disabled={isWebPreviewMode()}\n onValueChange={this.onSeekChange.bind(this)}\n minimumValue={0}\n inverted={this.isRTL && (Platform.OS==\"android\" || Platform.OS==\"web\")}\n maximumValue={this.state.totalTime || 1}\n thumbTintColor={this.styles.slider.thumb.backgroundColor as string}\n minimumTrackTintColor={this.styles.slider.minimumTrack.backgroundColor as string}\n maximumTrackTintColor={this.styles.slider.maximumTrack.backgroundColor as string}\n />\n {!props.muted ? (<WmIcon name={props.name + \"_mute\"}\n id={this.getTestId('mute')}\n iconclass=\"wi wi-volume-up fa-2x\"\n styles={this.styles.muteIcon}\n onTap={() => this.mute()}></WmIcon>) :\n (<WmIcon name={props.name + \"_unmute\"}\n id={this.getTestId('unmute')}\n iconclass=\"wi wi-volume-off fa-2x\"\n styles={this.styles.unmuteIcon}\n onTap={() => this.unmute()}></WmIcon>)}\n </View>) : null; \n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","Platform","Text","View","Slider","isString","Audio","BaseComponent","BaseComponentState","WmAudioProps","DEFAULT_CLASS","WmIcon","isWebPreviewMode","WmAudioState","constructor","arguments","_defineProperty","WmAudio","props","onPropertyChange","name","$new","$old","initialized","Promise","resolve","then","_this$sound","sound","unloadAsync","onSeekChange","state","playing","autoplay","play","getSource","source","loadAsset","mp3format","uri","addPadding","str","maxLen","pad","length","undefined","formatTime","v","t","mins","Math","floor","seconds","round","setTimer","cancelTimer","timer","setInterval","currentTime","totalTime","loop","replay","stop","setState","max","offsetTime","clearInterval","_this$sound2","pause","updateState","replayAsync","loading","playAsync","Sound","createAsync","isMuted","muted","res","getStatusAsync","status","catch","_this$sound3","pauseAsync","mute","setStatusAsync","unmute","time","_this$sound4","setPositionAsync","componentDidMount","setTimeout","componentWillUnmount","renderWidget","controls","createElement","style","styles","root","_background","playIcon","iconclass","onTap","pauseIcon","text","step","flex","value","disabled","onValueChange","bind","minimumValue","inverted","isRTL","OS","maximumValue","thumbTintColor","slider","thumb","backgroundColor","minimumTrackTintColor","minimumTrack","maximumTrackTintColor","maximumTrack","muteIcon","unmuteIcon"],"sources":["audio.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Platform, Text, View } from 'react-native';\nimport Slider from '@react-native-community/slider';\nimport { isString } from 'lodash-es';\nimport { Audio } from 'expo-av';\nimport { Sound } from 'expo-av/build/Audio';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmAudioProps from './audio.props';\nimport { DEFAULT_CLASS, WmAudioStyles } from './audio.styles';\nimport WmIcon from '../icon/icon.component';\nimport { isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\n\nexport class WmAudioState extends BaseComponentState<WmAudioProps> {\n playing = false;\n currentTime = 0;\n totalTime = 0;\n}\n\nexport default class WmAudio extends BaseComponent<WmAudioProps, WmAudioState, WmAudioStyles> {\n\n private loading = false;\n private sound: Sound = null as any;\n private timer: any;\n private offsetTime = 0;\n\n constructor(props: WmAudioProps) {\n super(props, DEFAULT_CLASS, new WmAudioProps(), new WmAudioState());\n }\n\n onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case 'mp3format': {\n if (this.initialized) {\n Promise.resolve()\n .then(() => this.sound?.unloadAsync())\n .then(() => {\n this.sound = null as any;\n this.onSeekChange(0);\n if (this.state.playing \n || this.state.props.autoplay) {\n this.play();\n }\n });\n }\n }\n break;\n case 'autoplay':\n if (this.initialized && $new) {\n this.play();\n }\n }\n }\n\n getSource() {\n const source = this.loadAsset \n && this.state.props.mp3format\n && this.loadAsset(this.state.props.mp3format as string);\n if (isString(source)) {\n return {\n uri: source\n };\n }\n return source;\n }\n\n addPadding(str: string, maxLen: number, pad = '0'): string {\n if (str.length < maxLen) {\n return this.addPadding(pad + str, maxLen, pad);\n }\n return str;\n }\n\n formatTime(v: number) {\n const t = v/60;\n const mins = Math.floor(t);\n const seconds = Math.round((t - mins) * 60);\n return this.addPadding(mins+ '', 2) + ':' + this.addPadding(seconds+ '', 2);\n }\n\n setTimer() {\n this.cancelTimer();\n this.timer = setInterval(() => {\n if (this.state.currentTime >= this.state.totalTime) {\n if (this.state.props.loop) {\n this.replay();\n } else {\n this.stop();\n }\n return;\n }\n this.setState({\n currentTime: Math.max(this.offsetTime + this.state.currentTime + 1, 0)\n } as WmAudioState);\n this.offsetTime = 0;\n }, 1000);\n }\n\n cancelTimer() {\n clearInterval(this.timer);\n }\n\n stop() {\n this.pause();\n this.sound?.unloadAsync();\n this.sound = null as any;\n this.cancelTimer();\n this.offsetTime = 0;\n this.updateState({\n currentTime: 0\n } as WmAudioState);\n }\n\n replay() {\n this.updateState({\n currentTime: 0\n } as WmAudioState, () => {\n this.sound.replayAsync();\n });\n }\n\n play() {\n if (isWebPreviewMode() \n || this.loading\n || (this.state.playing && this.sound)) {\n return;\n }\n if (this.sound) {\n this.sound.playAsync();\n this.setTimer();\n this.updateState({\n playing: true\n } as WmAudioState);\n } else {\n this.loading = true;\n const source = this.getSource();\n source && Audio.Sound.createAsync(source, {\n isMuted: this.state.props.muted\n })\n .then((res) => {\n this.sound = res.sound;\n this.sound.playAsync();\n this.sound.getStatusAsync().then((status: any) => {\n this.updateState({\n currentTime: 0,\n totalTime: Math.round(status['durationMillis']/1000)\n } as WmAudioState, () => this.setTimer());\n });\n this.updateState({\n playing: true\n } as WmAudioState);\n }).catch(() => {}).then(() => {\n this.loading = false;\n });\n }\n }\n\n pause() {\n this.cancelTimer();\n this.sound?.pauseAsync().then(() => {\n this.updateState({\n playing: false\n } as WmAudioState);\n })\n }\n\n mute() {\n this.sound.setStatusAsync({\n isMuted: true\n }).then(() => {\n this.updateState({\n props: {\n muted: true\n }\n } as WmAudioState);\n });\n }\n\n unmute() {\n this.sound.setStatusAsync({\n isMuted: false\n }).then(() => {\n this.updateState({\n props: {\n muted: false\n }\n } as WmAudioState);\n });\n }\n\n onSeekChange(time: number) {\n if (time !== this.state.currentTime) {\n this.offsetTime = time - this.state.currentTime;\n this.sound?.setPositionAsync(time * 1000);\n }\n }\n\n componentDidMount(): void {\n super.componentDidMount();\n //without settimeout, app is crashing with errors\n setTimeout(() => {\n if (this.state.props.autoplay) {\n this.play();\n }\n }, 1000);\n }\n\n componentWillUnmount(): void {\n super.componentWillUnmount();\n this.stop();\n }\n\n renderWidget(props: WmAudioProps) {\n return props.controls ? (\n <View style={this.styles.root}>\n {this._background}\n {!this.state.playing ? (<WmIcon \n name={props.name + \"_play\"}\n styles={this.styles.playIcon}\n iconclass=\"wi wi-play-arrow fa-2x\"\n onTap={() => this.play()}></WmIcon>) : (\n <WmIcon name={props.name + \"_pause\"}\n iconclass=\"wi wi-pause fa-2x\"\n styles={this.styles.pauseIcon}\n onTap={() => this.pause()}></WmIcon>)}\n <Text style={this.styles.text}>\n {`${this.formatTime(this.state.currentTime)} / ${this.formatTime(this.state.totalTime)}`}\n </Text>\n <Slider\n step={1}\n style={{flex: 1}}\n value={this.state.currentTime}\n disabled={isWebPreviewMode()}\n onValueChange={this.onSeekChange.bind(this)}\n minimumValue={0}\n inverted={this.isRTL && (Platform.OS==\"android\" || Platform.OS==\"web\")}\n maximumValue={this.state.totalTime || 1}\n thumbTintColor={this.styles.slider.thumb.backgroundColor as string}\n minimumTrackTintColor={this.styles.slider.minimumTrack.backgroundColor as string}\n maximumTrackTintColor={this.styles.slider.maximumTrack.backgroundColor as string}\n />\n {!props.muted ? (<WmIcon name={props.name + \"_mute\"}\n iconclass=\"wi wi-volume-up fa-2x\"\n styles={this.styles.muteIcon}\n onTap={() => this.mute()}></WmIcon>) :\n (<WmIcon name={props.name + \"_unmute\"}\n iconclass=\"wi wi-volume-off fa-2x\"\n styles={this.styles.unmuteIcon}\n onTap={() => this.unmute()}></WmIcon>)}\n </View>) : null; \n }\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
1
|
import React from 'react';
|
|
3
2
|
import { Text, View } from 'react-native';
|
|
4
3
|
import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';
|
|
@@ -15,12 +14,12 @@ export default class WmButton extends BaseComponent {
|
|
|
15
14
|
super(props, DEFAULT_CLASS, new WmButtonProps());
|
|
16
15
|
}
|
|
17
16
|
prepareIcon(props) {
|
|
18
|
-
return
|
|
17
|
+
return /*#__PURE__*/React.createElement(WmIcon, {
|
|
19
18
|
styles: this.styles.icon,
|
|
20
19
|
name: props.name + '_icon',
|
|
21
20
|
iconclass: props.iconclass,
|
|
22
21
|
iconsize: props.iconsize
|
|
23
|
-
})
|
|
22
|
+
});
|
|
24
23
|
}
|
|
25
24
|
prepareBadge(props) {
|
|
26
25
|
//@ts-ignore
|
|
@@ -39,15 +38,15 @@ export default class WmButton extends BaseComponent {
|
|
|
39
38
|
return /*#__PURE__*/React.createElement(Animatedview, {
|
|
40
39
|
entryanimation: props.animation,
|
|
41
40
|
style: this.styles.root
|
|
42
|
-
}, this._background, /*#__PURE__*/React.createElement(Tappable,
|
|
41
|
+
}, this._background, /*#__PURE__*/React.createElement(Tappable, {
|
|
43
42
|
target: this
|
|
44
|
-
},
|
|
43
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
45
44
|
style: [this.styles.content, {
|
|
46
45
|
flexDirection: props.iconposition === 'top' ? 'column' : 'row'
|
|
47
46
|
}]
|
|
48
|
-
}, props.iconposition === 'top' && this.prepareIcon(props), props.iconposition === 'left' && this.prepareIcon(props), props.caption ? /*#__PURE__*/React.createElement(Text,
|
|
47
|
+
}, props.iconposition === 'top' && this.prepareIcon(props), props.iconposition === 'left' && this.prepareIcon(props), props.caption ? /*#__PURE__*/React.createElement(Text, {
|
|
49
48
|
style: this.styles.text
|
|
50
|
-
},
|
|
49
|
+
}, props.caption) : null, props.iconposition === 'right' && this.prepareIcon(props), props.badgevalue && this.prepareBadge(props))));
|
|
51
50
|
}
|
|
52
51
|
}
|
|
53
52
|
//# sourceMappingURL=button.component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","Tappable","Badge","WmButtonProps","DEFAULT_CLASS","WmIcon","Animatedview","createSkeleton","WmButtonState","WmButton","constructor","props","prepareIcon","
|
|
1
|
+
{"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","Tappable","Badge","WmButtonProps","DEFAULT_CLASS","WmIcon","Animatedview","createSkeleton","WmButtonState","WmButton","constructor","props","prepareIcon","createElement","styles","icon","name","iconclass","iconsize","prepareBadge","style","badge","badgevalue","renderSkeleton","prop","theme","skeleton","root","width","skeletonwidth","height","skeletonheight","renderWidget","entryanimation","animation","_background","target","content","flexDirection","iconposition","caption","text"],"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';\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(props: any) {\n return (<WmIcon\n styles={this.styles.icon} name={props.name + '_icon'} iconclass={props.iconclass} iconsize={props.iconsize}></WmIcon>);\n }\n\n private prepareBadge(props: any) {\n //@ts-ignore\n return (<Badge style={this.styles.badge}>{props.badgevalue}</Badge>);\n }\n\n public renderSkeleton(prop: WmButtonProps) {\n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: (this.props.skeletonwidth || this.styles.root.width)as DimensionValue,\n height: (this.props.skeletonheight || this.styles.root.height) as DimensionValue\n });\n }\n\n renderWidget(props: WmButtonProps) {\n return (\n <Animatedview entryanimation={props.animation} style={this.styles.root}>\n {this._background}\n <Tappable target={this}>\n <View style={[this.styles.content, {flexDirection: props.iconposition === 'top' ? 'column': 'row'}]}>\n {props.iconposition === 'top' && this.prepareIcon(props)}\n {props.iconposition === 'left' && this.prepareIcon(props)}\n {props.caption ? (<Text style={this.styles.text}>{props.caption}</Text>): null}\n {props.iconposition === 'right' && this.prepareIcon(props)}\n {props.badgevalue && this.prepareBadge(props)}\n </View>\n </Tappable>\n </Animatedview>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -4,12 +4,8 @@ export const DEFAULT_CLASS = 'app-button';
|
|
|
4
4
|
BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
5
5
|
const defaultStyles = defineStyles({
|
|
6
6
|
root: {
|
|
7
|
-
|
|
7
|
+
padding: 12,
|
|
8
8
|
borderRadius: 6,
|
|
9
|
-
paddingTop: 11,
|
|
10
|
-
paddingBottom: 11,
|
|
11
|
-
paddingLeft: 24,
|
|
12
|
-
paddingRight: 24,
|
|
13
9
|
alignSelf: 'flex-start'
|
|
14
10
|
},
|
|
15
11
|
content: {
|
|
@@ -18,8 +14,7 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
|
18
14
|
justifyContent: 'center'
|
|
19
15
|
},
|
|
20
16
|
text: {
|
|
21
|
-
fontSize:
|
|
22
|
-
fontFamily: themeVariables.baseFont,
|
|
17
|
+
fontSize: 16,
|
|
23
18
|
fontWeight: '500',
|
|
24
19
|
textAlign: 'center',
|
|
25
20
|
textTransform: 'capitalize',
|
|
@@ -30,17 +25,14 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
|
30
25
|
color: themeVariables.buttonBadgeTextColor,
|
|
31
26
|
alignSelf: 'flex-start',
|
|
32
27
|
position: 'relative',
|
|
33
|
-
|
|
34
|
-
top: -20,
|
|
28
|
+
top: -16,
|
|
35
29
|
marginLeft: -16,
|
|
36
30
|
borderWidth: 1,
|
|
37
31
|
borderStyle: 'solid'
|
|
38
32
|
},
|
|
39
33
|
icon: {
|
|
40
34
|
root: {
|
|
41
|
-
alignSelf: 'auto'
|
|
42
|
-
paddingLeft: -8,
|
|
43
|
-
paddingRight: -8
|
|
35
|
+
alignSelf: 'auto'
|
|
44
36
|
},
|
|
45
37
|
text: {
|
|
46
38
|
paddingRight: themeVariables.buttonTextPadding,
|
|
@@ -86,7 +78,6 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
|
86
78
|
};
|
|
87
79
|
};
|
|
88
80
|
const linkBtnStyle = getButtonStyles(themeVariables.buttonLinkColor, themeVariables.buttonLinkTextColor);
|
|
89
|
-
const buttonWithOnlyLabel = getButtonStyles(themeVariables.buttonLinkColor, themeVariables.buttonLinkTextColor);
|
|
90
81
|
linkBtnStyle.root.paddingVertical = 4;
|
|
91
82
|
linkBtnStyle.text.textDecorationColor = themeVariables.buttonLinkTextColor;
|
|
92
83
|
linkBtnStyle.text.textDecorationLine = 'underline';
|
|
@@ -99,7 +90,6 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
|
99
90
|
addStyle('btn-success', '', getButtonStyles(themeVariables.buttonSuccessColor, themeVariables.buttonSuccessTextColor));
|
|
100
91
|
addStyle('btn-warning', '', getButtonStyles(themeVariables.buttonWarningColor, themeVariables.buttonWarningTextColor));
|
|
101
92
|
addStyle('btn-link', '', linkBtnStyle);
|
|
102
|
-
addStyle('btn-only-label', '', buttonWithOnlyLabel);
|
|
103
93
|
addStyle('btn-dark', '', getButtonStyles(themeVariables.buttonDarkColor, themeVariables.buttonDarkTextColor));
|
|
104
94
|
addStyle('btn-light', '', getButtonStyles(themeVariables.buttonLightColor, themeVariables.buttonLightTextColor));
|
|
105
95
|
addStyle('fab-btn', 'btn-primary', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","minHeight","borderRadius","paddingTop","paddingBottom","paddingLeft","paddingRight","alignSelf","content","flexDirection","alignItems","justifyContent","text","fontSize","fontFamily","baseFont","fontWeight","textAlign","textTransform","marginHorizontal","badge","backgroundColor","buttonBadgeBackgroundColor","color","buttonBadgeTextColor","position","top","marginLeft","borderWidth","borderStyle","icon","buttonTextPadding","skeleton","width","height","opacity","getButtonStyles","bgColor","borderColor","arguments","length","undefined","linkBtnStyle","buttonLinkColor","buttonLinkTextColor","buttonWithOnlyLabel","paddingVertical","textDecorationColor","textDecorationLine","textDecorationStyle","buttonDefaultColor","buttonDefaultTextColor","buttonBorderColor","buttonInfoColor","buttonInfoTextColor","buttonPrimaryColor","buttonPrimaryTextColor","buttonSecondaryColor","buttonSecondaryTextColor","buttonDangerColor","buttonDangerTextColor","buttonSuccessColor","buttonSuccessTextColor","buttonWarningColor","buttonWarningTextColor","buttonDarkColor","buttonDarkTextColor","buttonLightColor","buttonLightTextColor","getStyle","bottom","right","marginRight"],"sources":["button.styles.ts"],"sourcesContent":["import BASE_THEME, { AllStyle } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { WmIconStyles } from '../icon/icon.styles';\nimport { WmSkeletonStyles } from '../skeleton/skeleton.styles';\n\nexport type WmButtonStyles = BaseStyles & {\n content: AllStyle,\n badge: AllStyle,\n icon: WmIconStyles,\n skeleton: WmSkeletonStyles\n};\n\nexport const DEFAULT_CLASS = 'app-button';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmButtonStyles = defineStyles<WmButtonStyles>({\n root: {\n minHeight: 40,\n borderRadius: 6,\n paddingTop: 11,\n paddingBottom: 11,\n paddingLeft: 24,\n paddingRight: 24,\n alignSelf: 'flex-start'\n },\n content: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center'\n },\n text: {\n fontSize: 14,\n fontFamily: themeVariables.baseFont,\n fontWeight: '500',\n textAlign: 'center',\n textTransform: 'capitalize',\n marginHorizontal: 4\n },\n badge: {\n backgroundColor: themeVariables.buttonBadgeBackgroundColor,\n color: themeVariables.buttonBadgeTextColor,\n alignSelf: 'flex-start',\n position: 'relative',\n minHeight: 6,\n top: -20,\n marginLeft: -16,\n borderWidth: 1,\n borderStyle: 'solid'\n },\n icon: {\n root : {\n alignSelf: 'auto',\n paddingLeft: -8,\n paddingRight: -8\n },\n text: {\n paddingRight: themeVariables.buttonTextPadding,\n fontSize: 16\n }\n } as WmIconStyles,\n skeleton: {\n root: {\n width: 96,\n height: 48,\n borderRadius: 4\n }\n } as WmSkeletonStyles\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n addStyle(DEFAULT_CLASS + '-disabled', '', {\n root : {\n opacity: 0.5\n }\n });\n\n const getButtonStyles = (bgColor: string, color: string, borderColor = bgColor) => {\n return {\n root: {\n borderWidth: 1,\n borderColor: borderColor,\n borderStyle: 'solid',\n backgroundColor: bgColor\n },\n text: {\n color: color\n },\n badge: {\n backgroundColor: color,\n color: bgColor,\n borderColor: bgColor\n },\n icon: {\n text: {\n color: color\n }\n }\n } as WmButtonStyles;\n }\n\n const linkBtnStyle = getButtonStyles(themeVariables.buttonLinkColor, themeVariables.buttonLinkTextColor );\nconst buttonWithOnlyLabel = getButtonStyles(themeVariables.buttonLinkColor, themeVariables.buttonLinkTextColor );\n\n linkBtnStyle.root.paddingVertical = 4;\n linkBtnStyle.text.textDecorationColor = themeVariables.buttonLinkTextColor;\n linkBtnStyle.text.textDecorationLine = 'underline';\n linkBtnStyle.text.textDecorationStyle = 'solid';\n\n addStyle('btn-default', '', getButtonStyles(themeVariables.buttonDefaultColor, themeVariables.buttonDefaultTextColor, themeVariables.buttonBorderColor));\n addStyle('btn-info', '', getButtonStyles(themeVariables.buttonInfoColor, themeVariables.buttonInfoTextColor));\n addStyle('btn-primary', '', getButtonStyles(themeVariables.buttonPrimaryColor, themeVariables.buttonPrimaryTextColor));\n addStyle('btn-secondary', '', getButtonStyles(themeVariables.buttonSecondaryColor, themeVariables.buttonSecondaryTextColor, themeVariables.buttonSecondaryTextColor));\n addStyle('btn-danger', '', getButtonStyles(themeVariables.buttonDangerColor, themeVariables.buttonDangerTextColor));\n addStyle('btn-success', '', getButtonStyles(themeVariables.buttonSuccessColor, themeVariables.buttonSuccessTextColor));\n addStyle('btn-warning', '', getButtonStyles(themeVariables.buttonWarningColor, themeVariables.buttonWarningTextColor));\n addStyle('btn-link', '', linkBtnStyle);\n addStyle('btn-only-label', '', buttonWithOnlyLabel);\n addStyle('btn-dark', '', getButtonStyles(themeVariables.buttonDarkColor, themeVariables.buttonDarkTextColor));\n addStyle('btn-light', '', getButtonStyles(themeVariables.buttonLightColor, themeVariables.buttonLightTextColor));\n addStyle('fab-btn', 'btn-primary', {\n root : {\n ...BASE_THEME.getStyle('elevate2').root,\n position: 'fixed' as any,\n bottom: 160,\n right: 48,\n width: 56,\n height: 56,\n borderRadius: 56,\n justifyContent: 'center',\n alignItems: 'center'\n },\n text: {\n marginLeft: 0,\n marginRight: 0\n },\n icon: {\n icon: {\n fontSize: 24\n }\n } as WmIconStyles\n } as WmButtonStyles);\n addStyle('mini-fab-btn', 'fab-btn', {\n root : {\n width: 40,\n height: 40\n }\n } as WmButtonStyles);\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","padding","borderRadius","alignSelf","content","flexDirection","alignItems","justifyContent","text","fontSize","fontWeight","textAlign","textTransform","marginHorizontal","badge","backgroundColor","buttonBadgeBackgroundColor","color","buttonBadgeTextColor","position","top","marginLeft","borderWidth","borderStyle","icon","paddingRight","buttonTextPadding","skeleton","width","height","opacity","getButtonStyles","bgColor","borderColor","arguments","length","undefined","linkBtnStyle","buttonLinkColor","buttonLinkTextColor","paddingVertical","textDecorationColor","textDecorationLine","textDecorationStyle","buttonDefaultColor","buttonDefaultTextColor","buttonBorderColor","buttonInfoColor","buttonInfoTextColor","buttonPrimaryColor","buttonPrimaryTextColor","buttonSecondaryColor","buttonSecondaryTextColor","buttonDangerColor","buttonDangerTextColor","buttonSuccessColor","buttonSuccessTextColor","buttonWarningColor","buttonWarningTextColor","buttonDarkColor","buttonDarkTextColor","buttonLightColor","buttonLightTextColor","getStyle","bottom","right","marginRight"],"sources":["button.styles.ts"],"sourcesContent":["import BASE_THEME, { AllStyle } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { WmIconStyles } from '../icon/icon.styles';\nimport { WmSkeletonStyles } from '../skeleton/skeleton.styles';\n\nexport type WmButtonStyles = BaseStyles & {\n content: AllStyle,\n badge: AllStyle,\n icon: WmIconStyles,\n skeleton: WmSkeletonStyles\n};\n\nexport const DEFAULT_CLASS = 'app-button';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmButtonStyles = defineStyles<WmButtonStyles>({\n root: {\n padding: 12,\n borderRadius: 6,\n alignSelf: 'flex-start'\n },\n content: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center'\n },\n text: {\n fontSize: 16,\n fontWeight: '500',\n textAlign: 'center',\n textTransform: 'capitalize',\n marginHorizontal: 4\n },\n badge: {\n backgroundColor: themeVariables.buttonBadgeBackgroundColor,\n color: themeVariables.buttonBadgeTextColor,\n alignSelf: 'flex-start',\n position: 'relative',\n top: -16,\n marginLeft: -16,\n borderWidth: 1,\n borderStyle: 'solid'\n },\n icon: {\n root : {\n alignSelf: 'auto'\n },\n text: {\n paddingRight: themeVariables.buttonTextPadding,\n fontSize: 16\n }\n } as WmIconStyles,\n skeleton: {\n root: {\n width: 96,\n height: 48,\n borderRadius: 4\n }\n } as WmSkeletonStyles\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n addStyle(DEFAULT_CLASS + '-disabled', '', {\n root : {\n opacity: 0.5\n }\n });\n\n const getButtonStyles = (bgColor: string, color: string, borderColor = bgColor) => {\n return {\n root: {\n borderWidth: 1,\n borderColor: borderColor,\n borderStyle: 'solid',\n backgroundColor: bgColor\n },\n text: {\n color: color\n },\n badge: {\n backgroundColor: color,\n color: bgColor,\n borderColor: bgColor\n },\n icon: {\n text: {\n color: color\n }\n }\n } as WmButtonStyles;\n }\n\n const linkBtnStyle = getButtonStyles(themeVariables.buttonLinkColor, themeVariables.buttonLinkTextColor);\n linkBtnStyle.root.paddingVertical = 4;\n linkBtnStyle.text.textDecorationColor = themeVariables.buttonLinkTextColor;\n linkBtnStyle.text.textDecorationLine = 'underline';\n linkBtnStyle.text.textDecorationStyle = 'solid';\n\n addStyle('btn-default', '', getButtonStyles(themeVariables.buttonDefaultColor, themeVariables.buttonDefaultTextColor, themeVariables.buttonBorderColor));\n addStyle('btn-info', '', getButtonStyles(themeVariables.buttonInfoColor, themeVariables.buttonInfoTextColor));\n addStyle('btn-primary', '', getButtonStyles(themeVariables.buttonPrimaryColor, themeVariables.buttonPrimaryTextColor));\n addStyle('btn-secondary', '', getButtonStyles(themeVariables.buttonSecondaryColor, themeVariables.buttonSecondaryTextColor, themeVariables.buttonSecondaryTextColor));\n addStyle('btn-danger', '', getButtonStyles(themeVariables.buttonDangerColor, themeVariables.buttonDangerTextColor));\n addStyle('btn-success', '', getButtonStyles(themeVariables.buttonSuccessColor, themeVariables.buttonSuccessTextColor));\n addStyle('btn-warning', '', getButtonStyles(themeVariables.buttonWarningColor, themeVariables.buttonWarningTextColor));\n addStyle('btn-link', '', linkBtnStyle);\n addStyle('btn-dark', '', getButtonStyles(themeVariables.buttonDarkColor, themeVariables.buttonDarkTextColor));\n addStyle('btn-light', '', getButtonStyles(themeVariables.buttonLightColor, themeVariables.buttonLightTextColor));\n addStyle('fab-btn', 'btn-primary', {\n root : {\n ...BASE_THEME.getStyle('elevate2').root,\n position: 'fixed' as any,\n bottom: 160,\n right: 48,\n width: 56,\n height: 56,\n borderRadius: 56,\n justifyContent: 'center',\n alignItems: 'center'\n },\n text: {\n marginLeft: 0,\n marginRight: 0\n },\n icon: {\n icon: {\n fontSize: 24\n }\n } as WmIconStyles\n } as WmButtonStyles);\n addStyle('mini-fab-btn', 'fab-btn', {\n root : {\n width: 40,\n height: 40\n }\n } as WmButtonStyles);\n});\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","flexDirection","alignSelf","alignItems","borderRadius","borderWidth","borderStyle","borderColor","buttonGrpBorderColor","backgroundColor","buttonGrpBgColor","text","skeleton","width","height","borderTopWidth","borderBottomWidth","borderLeftWidth","borderRightWidth","flex","color","defaultColor9"],"sources":["buttongroup.styles.ts"],"sourcesContent":["import BASE_THEME from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { WmButtonStyles } from '../button/button.styles';\nimport { WmSkeletonStyles } from '../skeleton/skeleton.styles';\n\nexport type WmButtongroupStyles = BaseStyles & {\n skeleton: WmSkeletonStyles\n};\n\nexport const DEFAULT_CLASS = 'app-buttongroup';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmButtongroupStyles = defineStyles({\n root: {\n flexDirection: 'row',\n alignSelf: 'flex-start',\n alignItems: 'center',\n borderRadius: 100,\n borderWidth: 1,\n borderStyle: 'solid',\n borderColor: themeVariables.buttonGrpBorderColor,\n backgroundColor: themeVariables.buttonGrpBgColor\n }, \n text: {},\n skeleton: {\n root : {\n width: '100%',\n height: 48,\n borderRadius: 4
|
|
1
|
+
{"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","flexDirection","alignSelf","alignItems","borderRadius","borderWidth","borderStyle","borderColor","buttonGrpBorderColor","backgroundColor","buttonGrpBgColor","text","skeleton","width","height","borderTopWidth","borderBottomWidth","borderLeftWidth","borderRightWidth","flex","color","defaultColor9"],"sources":["buttongroup.styles.ts"],"sourcesContent":["import BASE_THEME from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { WmButtonStyles } from '../button/button.styles';\nimport { WmSkeletonStyles } from '../skeleton/skeleton.styles';\n\nexport type WmButtongroupStyles = BaseStyles & {\n skeleton: WmSkeletonStyles\n};\n\nexport const DEFAULT_CLASS = 'app-buttongroup';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmButtongroupStyles = defineStyles({\n root: {\n flexDirection: 'row',\n alignSelf: 'flex-start',\n alignItems: 'center',\n borderRadius: 100,\n borderWidth: 1,\n borderStyle: 'solid',\n borderColor: themeVariables.buttonGrpBorderColor,\n backgroundColor: themeVariables.buttonGrpBgColor\n }, \n text: {},\n skeleton: {\n root : {\n width: '100%',\n height: 48,\n borderRadius: 4\n }\n } as any as WmSkeletonStyles\n });\n\n\n addStyle('btn-group-child', '', {\n root: {\n borderTopWidth: 0,\n borderBottomWidth: 0,\n borderLeftWidth: 1,\n borderRightWidth: 0,\n borderRadius: 0,\n backgroundColor: 'transparent',\n flex: 1,\n borderColor: themeVariables.buttonGrpBorderColor,\n },\n text: {\n color: themeVariables.defaultColor9,\n }\n } as WmButtonStyles);\n addStyle('btn-group-first-child', '', {\n root: {\n borderLeftWidth: 0,\n borderRadius: 0,\n backgroundColor: 'transparent',\n borderColor: themeVariables.buttonGrpBorderColor\n }\n } as WmButtonStyles);\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n});\n"],"mappings":"AAAA,OAAOA,UAAU,MAAM,wCAAwC;AAC/D,SAAqBC,YAAY,QAAQ,+CAA+C;AAQxF,OAAO,MAAMC,aAAa,GAAG,iBAAiB;AAC9CF,UAAU,CAACG,aAAa,CAAC,CAACC,cAAc,EAAEC,QAAQ,KAAK;EACrD,MAAMC,aAAkC,GAAGL,YAAY,CAAC;IACpDM,IAAI,EAAE;MACJC,aAAa,EAAE,KAAK;MACpBC,SAAS,EAAE,YAAY;MACvBC,UAAU,EAAE,QAAQ;MACpBC,YAAY,EAAE,GAAG;MACjBC,WAAW,EAAE,CAAC;MACdC,WAAW,EAAE,OAAO;MACpBC,WAAW,EAAEV,cAAc,CAACW,oBAAoB;MAChDC,eAAe,EAAEZ,cAAc,CAACa;IAClC,CAAC;IACDC,IAAI,EAAE,CAAC,CAAC;IACRC,QAAQ,EAAE;MACRZ,IAAI,EAAG;QACLa,KAAK,EAAE,MAAM;QACbC,MAAM,EAAE,EAAE;QACVV,YAAY,EAAE;MAChB;IACF;EACJ,CAAC,CAAC;EAGFN,QAAQ,CAAC,iBAAiB,EAAE,EAAE,EAAE;IAC9BE,IAAI,EAAE;MACJe,cAAc,EAAE,CAAC;MACjBC,iBAAiB,EAAE,CAAC;MACpBC,eAAe,EAAE,CAAC;MAClBC,gBAAgB,EAAE,CAAC;MACnBd,YAAY,EAAE,CAAC;MACfK,eAAe,EAAE,aAAa;MAC9BU,IAAI,EAAE,CAAC;MACPZ,WAAW,EAAEV,cAAc,CAACW;IAC9B,CAAC;IACDG,IAAI,EAAE;MACJS,KAAK,EAAEvB,cAAc,CAACwB;IACxB;EACF,CAAmB,CAAC;EACpBvB,QAAQ,CAAC,uBAAuB,EAAE,EAAE,EAAE;IACpCE,IAAI,EAAE;MACJiB,eAAe,EAAE,CAAC;MAClBb,YAAY,EAAE,CAAC;MACfK,eAAe,EAAE,aAAa;MAC9BF,WAAW,EAAEV,cAAc,CAACW;IAC9B;EACF,CAAmB,CAAC;EACpBV,QAAQ,CAACH,aAAa,EAAE,EAAE,EAAEI,aAAa,CAAC;AAC5C,CAAC,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
1
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
3
2
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
4
3
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
@@ -140,7 +139,7 @@ export default class WmIcon extends BaseComponent {
|
|
|
140
139
|
WMCustomIcon = StreamlineLightIcon;
|
|
141
140
|
} else if (iconDef.isStreamlineRegularIcon) {
|
|
142
141
|
WMCustomIcon = StreamlineRegularIcon;
|
|
143
|
-
} else if (!iconDef.isWavIcon && !
|
|
142
|
+
} else if (!iconDef.isWavIcon && !((_this$styles$icon = this.styles.icon) !== null && _this$styles$icon !== void 0 && _this$styles$icon.fontFamily)) {
|
|
144
143
|
return null;
|
|
145
144
|
}
|
|
146
145
|
//@ts-ignore type information is not matching
|
|
@@ -184,15 +183,15 @@ export default class WmIcon extends BaseComponent {
|
|
|
184
183
|
renderWidget(props) {
|
|
185
184
|
let icon = this.renderIcon(props);
|
|
186
185
|
let iterationCount = props.iterationcount ? props.iterationcount != 'infinite' ? parseInt(props.iterationcount) : 'infinite' : undefined;
|
|
187
|
-
return /*#__PURE__*/React.createElement(Tappable,
|
|
186
|
+
return /*#__PURE__*/React.createElement(Tappable, {
|
|
188
187
|
target: this
|
|
189
|
-
},
|
|
188
|
+
}, /*#__PURE__*/React.createElement(Animatedview, {
|
|
190
189
|
entryanimation: props.animation,
|
|
191
190
|
style: this.styles.root,
|
|
192
191
|
iterationCount: iterationCount
|
|
193
|
-
}, this._background, props.iconposition === 'left' && icon || null, props.caption && /*#__PURE__*/React.createElement(Text,
|
|
192
|
+
}, this._background, props.iconposition === 'left' && icon || null, props.caption && /*#__PURE__*/React.createElement(Text, {
|
|
194
193
|
style: this.styles.text
|
|
195
|
-
}
|
|
194
|
+
}, props.caption) || null, props.iconposition === 'right' && icon || null));
|
|
196
195
|
}
|
|
197
196
|
}
|
|
198
197
|
//# sourceMappingURL=icon.component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Animated","Easing","Text","FontAwesome","BaseComponent","BaseComponentState","WmIconProps","DEFAULT_CLASS","WavIcon","StreamlineLightIcon","StreamlineRegularIcon","Tappable","Animatedview","createSkeleton","ICON_SIZES","Map","ICON_ROTATTION","WmIconState","constructor","arguments","_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","skeleton","root","width","skeletonwidth","iconsize","height","skeletonheight","renderIcon","state","color","text","transform","iconSize","fontSize","show","_this$styles$icon","WMCustomIcon","interpolate","inputRange","outputRange","View","opacity","renderWidget","iterationCount","iterationcount","parseInt","undefined","_extends","target","getTestPropsForAction","entryanimation","_background","iconposition","caption","getTestPropsForLabel"],"sources":["icon.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Animated, DimensionValue, Easing, Text } from 'react-native';\nimport { FontAwesome } from '@expo/vector-icons';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\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\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 return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: (this.props.skeletonwidth || this.props.iconsize || this.styles.root.width) as DimensionValue,\n height: (this.props.skeletonheight || this.props.iconsize || this.styles.root.height) as DimensionValue\n });\n }\n\n renderIcon(props: WmIconProps) {\n const iconDef = this.state.iconDef;\n if (!iconDef) {\n return null;\n }\n let icon = null;\n const style = [{\n color: this.styles.root.color || this.styles.text.color\n }, this.styles.icon, {transform: [{rotate: iconDef.rotate}]}];\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 icon = (<FontAwesome name={customIcon ? '' : iconDef.type}\n style={style}\n size={iconSize}>\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 icon = WMCustomIcon ? (<WMCustomIcon name={customIcon ? '' : iconDef.type}\n style={style}\n size={iconSize}>\n {customIcon}\n </WMCustomIcon>) : null;\n }\n if (icon && 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}>{icon}</Animated.View>);\n } else if (icon && 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}>{icon}</Animated.View>);\n } else {\n this.stopAnimation = true;\n }\n return icon;\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} {...this.getTestPropsForAction()}>\n <Animatedview entryanimation={props.animation} 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}>{props.caption}</Text>)) || null}\n {(props.iconposition === 'right' && icon) || null}\n </Animatedview>\n </Tappable>\n );\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","Animated","Easing","Text","FontAwesome","BaseComponent","BaseComponentState","WmIconProps","DEFAULT_CLASS","WavIcon","StreamlineLightIcon","StreamlineRegularIcon","Tappable","Animatedview","createSkeleton","ICON_SIZES","Map","ICON_ROTATTION","WmIconState","constructor","arguments","_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","skeleton","root","width","skeletonwidth","iconsize","height","skeletonheight","renderIcon","state","color","text","transform","iconSize","fontSize","show","_this$styles$icon","WMCustomIcon","interpolate","inputRange","outputRange","View","opacity","renderWidget","iterationCount","iterationcount","parseInt","undefined","target","entryanimation","_background","iconposition","caption"],"sources":["icon.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Animated, DimensionValue, Easing, Text } from 'react-native';\nimport { FontAwesome } from '@expo/vector-icons';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\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\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 return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.root,\n width: (this.props.skeletonwidth || this.props.iconsize || this.styles.root.width) as DimensionValue,\n height: (this.props.skeletonheight || this.props.iconsize || this.styles.root.height) as DimensionValue\n });\n }\n\n renderIcon(props: WmIconProps) {\n const iconDef = this.state.iconDef;\n if (!iconDef) {\n return null;\n }\n let icon = null;\n const style = [{\n color: this.styles.root.color || this.styles.text.color\n }, this.styles.icon, {transform: [{rotate: iconDef.rotate}]}];\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 icon = (<FontAwesome name={customIcon ? '' : iconDef.type}\n style={style}\n size={iconSize}>\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 && !this.styles.icon?.fontFamily) {\n return null;\n }\n //@ts-ignore type information is not matching\n icon = WMCustomIcon ? (<WMCustomIcon name={customIcon ? '' : iconDef.type}\n style={style}\n size={iconSize}>\n {customIcon}\n </WMCustomIcon>) : null;\n }\n if (icon && 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}>{icon}</Animated.View>);\n } else if (icon && 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}>{icon}</Animated.View>);\n } else {\n this.stopAnimation = true;\n }\n return icon;\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}>\n <Animatedview entryanimation={props.animation} style={this.styles.root} iterationCount={iterationCount}>\n {this._background}\n {(props.iconposition === 'left' && icon) || null}\n {(props.caption && (<Text style={this.styles.text}>{props.caption}</Text>)) || null}\n {(props.iconposition === 'right' && icon) || null}\n </Animatedview>\n </Tappable>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
-
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
3
|
-
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
4
1
|
import React from 'react';
|
|
5
2
|
import { Text, View } from 'react-native';
|
|
6
3
|
import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';
|
|
@@ -10,32 +7,16 @@ import { DEFAULT_CLASS } from './label.styles';
|
|
|
10
7
|
import { isNil, toString } from 'lodash-es';
|
|
11
8
|
import { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';
|
|
12
9
|
import { createSkeleton } from '../skeleton/skeleton.component';
|
|
13
|
-
|
|
14
|
-
export class WmLabelState extends BaseComponentState {
|
|
15
|
-
constructor() {
|
|
16
|
-
super(...arguments);
|
|
17
|
-
_defineProperty(this, "parts", []);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
10
|
+
export class WmLabelState extends BaseComponentState {}
|
|
20
11
|
export default class WmLabel extends BaseComponent {
|
|
21
12
|
constructor(props) {
|
|
22
|
-
super(props, DEFAULT_CLASS, new WmLabelProps()
|
|
13
|
+
super(props, DEFAULT_CLASS, new WmLabelProps());
|
|
23
14
|
}
|
|
24
15
|
getAsterisk() {
|
|
25
16
|
return /*#__PURE__*/React.createElement(Text, {
|
|
26
17
|
style: this.styles.asterisk
|
|
27
18
|
}, "*");
|
|
28
19
|
}
|
|
29
|
-
onPropertyChange(name, $new, $old) {
|
|
30
|
-
super.onPropertyChange(name, $new, $old);
|
|
31
|
-
switch (name) {
|
|
32
|
-
case "caption":
|
|
33
|
-
this.updateState({
|
|
34
|
-
parts: this.parseCaption($new)
|
|
35
|
-
});
|
|
36
|
-
break;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
20
|
getMultilineSkeleton(width, height) {
|
|
40
21
|
const styles = {
|
|
41
22
|
borderRadius: 4,
|
|
@@ -48,32 +29,6 @@ export default class WmLabel extends BaseComponent {
|
|
|
48
29
|
height: height
|
|
49
30
|
});
|
|
50
31
|
}
|
|
51
|
-
parseCaption(caption) {
|
|
52
|
-
if (!caption) {
|
|
53
|
-
return [];
|
|
54
|
-
}
|
|
55
|
-
caption += '';
|
|
56
|
-
const pattern = /\[([^\]]+)\]\((http.*?[^)])\)/g;
|
|
57
|
-
const linkRegex = /^(http|https):\/\/[^ "]+$/;
|
|
58
|
-
const captionSplit = caption.split(pattern);
|
|
59
|
-
let parts = [];
|
|
60
|
-
for (let i = 0; i < captionSplit.length; i++) {
|
|
61
|
-
const isLink = linkRegex.test(captionSplit[i]);
|
|
62
|
-
let part = {};
|
|
63
|
-
const isNextTextALink = linkRegex.test(captionSplit[i + 1]) || false;
|
|
64
|
-
if (isLink) {
|
|
65
|
-
part.text = captionSplit[i - 1] ?? '';
|
|
66
|
-
part.link = captionSplit[i];
|
|
67
|
-
} else {
|
|
68
|
-
part.text = isNextTextALink ? "" : captionSplit[i];
|
|
69
|
-
}
|
|
70
|
-
;
|
|
71
|
-
if (part.text) {
|
|
72
|
-
parts.push(part);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
return parts;
|
|
76
|
-
}
|
|
77
32
|
renderSkeleton(props) {
|
|
78
33
|
var _this$styles$root, _this$styles$root2;
|
|
79
34
|
const skeletonWidth = this.props.skeletonwidth || ((_this$styles$root = this.styles.root) === null || _this$styles$root === void 0 ? void 0 : _this$styles$root.width);
|
|
@@ -93,30 +48,18 @@ export default class WmLabel extends BaseComponent {
|
|
|
93
48
|
}
|
|
94
49
|
}
|
|
95
50
|
renderWidget(props) {
|
|
96
|
-
var _this$state$parts;
|
|
97
51
|
return !isNil(props.caption) ? /*#__PURE__*/React.createElement(Animatedview, {
|
|
98
52
|
entryanimation: props.animation,
|
|
99
53
|
style: this.styles.root
|
|
100
54
|
}, this._background, /*#__PURE__*/React.createElement(Tappable, {
|
|
101
55
|
target: this
|
|
102
56
|
}, /*#__PURE__*/React.createElement(Text, {
|
|
103
|
-
style: {
|
|
104
|
-
flex: 1,
|
|
105
|
-
flexWrap: "wrap"
|
|
106
|
-
}
|
|
107
|
-
}, (_this$state$parts = this.state.parts) === null || _this$state$parts === void 0 ? void 0 : _this$state$parts.map((part, index) => /*#__PURE__*/React.createElement(React.Fragment, {
|
|
108
|
-
key: `part_${index}`
|
|
109
|
-
}, part.link ? /*#__PURE__*/React.createElement(WmAnchor, {
|
|
110
|
-
styles: this.styles.link,
|
|
111
|
-
caption: part.text,
|
|
112
|
-
hyperlink: part.link
|
|
113
|
-
}) : /*#__PURE__*/React.createElement(Text, {
|
|
114
57
|
style: [this.styles.text, {
|
|
115
58
|
color: props.isValid === false ? 'red' : this.styles.text.color
|
|
116
59
|
}],
|
|
117
60
|
numberOfLines: props.wrap ? undefined : 1,
|
|
118
61
|
selectable: this.styles.text.userSelect === 'text'
|
|
119
|
-
}, toString(
|
|
62
|
+
}, toString(props.caption), props.required && this.getAsterisk()))) : null;
|
|
120
63
|
}
|
|
121
64
|
}
|
|
122
65
|
//# sourceMappingURL=label.component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","Tappable","WmLabelProps","DEFAULT_CLASS","isNil","toString","Animatedview","createSkeleton","WmAnchor","WmLabelState","constructor","arguments","_defineProperty","WmLabel","props","getAsterisk","createElement","style","styles","asterisk","onPropertyChange","name","$new","$old","updateState","parts","parseCaption","getMultilineSkeleton","width","height","borderRadius","marginBottom","theme","skeleton","caption","pattern","linkRegex","captionSplit","split","i","length","isLink","test","part","isNextTextALink","text","link","push","renderSkeleton","_this$styles$root","_this$styles$root2","skeletonWidth","skeletonwidth","root","skeletonHeight","skeletonheight","fontSize","multilineskeleton","renderWidget","_this$state$parts","entryanimation","animation","_background","target","flex","flexWrap","state","map","index","Fragment","key","hyperlink","color","isValid","numberOfLines","wrap","undefined","selectable","userSelect","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';\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';\nimport { totalMonths } from 'react-native-paper-dates/lib/typescript/Date/dateUtils';\nimport WmAnchor from '../anchor/anchor.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($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 const pattern = /\\[([^\\]]+)\\]\\((http.*?[^)])\\)/g;\n const linkRegex = /^(http|https):\\/\\/[^ \"]+$/;\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]) || false;\n if (isLink) {\n part.text = captionSplit[i - 1] ?? '';\n part.link = 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 const skeletonWidth = this.props.skeletonwidth || this.styles.root?.width;\n const skeletonHeight = this.props.skeletonheight || this.styles.root?.height || this.styles.text.fontSize;\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 return !isNil(props.caption) ? (\n <Animatedview entryanimation={props.animation} style={this.styles.root}>\n {this._background}\n <Tappable target={this}>\n <Text style={{flex: 1, flexWrap: \"wrap\"}}>\n {this.state.parts?.map((part, index) => (\n <React.Fragment key={`part_${index}`}>\n {part.link ? (\n <WmAnchor styles={this.styles.link} caption={part.text} hyperlink={part.link} />\n ) : (\n <Text\n style={[\n this.styles.text,\n {\n color:\n props.isValid === false\n ? 'red'\n : this.styles.text.color,\n },\n ]}\n numberOfLines={props.wrap ? undefined : 1}\n selectable={this.styles.text.userSelect === 'text'}\n >\n {toString(part.text)}\n {props.required && this.getAsterisk()}\n </Text>\n )}\n </React.Fragment>\n ))}\n </Text>\n </Tappable>\n </Animatedview>\n ) : null;\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","Tappable","WmLabelProps","DEFAULT_CLASS","isNil","toString","Animatedview","createSkeleton","WmLabelState","WmLabel","constructor","props","getAsterisk","createElement","style","styles","asterisk","getMultilineSkeleton","width","height","borderRadius","marginBottom","theme","skeleton","renderSkeleton","_this$styles$root","_this$styles$root2","skeletonWidth","skeletonwidth","root","skeletonHeight","skeletonheight","text","fontSize","multilineskeleton","renderWidget","caption","entryanimation","animation","_background","target","color","isValid","numberOfLines","wrap","undefined","selectable","userSelect","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';\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';\nimport { totalMonths } from 'react-native-paper-dates/lib/typescript/Date/dateUtils';\n\nexport class WmLabelState extends BaseComponentState<WmLabelProps> {\n\n}\n\nexport default class WmLabel extends BaseComponent<WmLabelProps, WmLabelState, WmLabelStyles> {\n\n constructor(props: WmLabelProps) {\n super(props, DEFAULT_CLASS, new WmLabelProps());\n }\n\n private getAsterisk () {\n return <Text style={this.styles.asterisk}>*</Text>;\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 public renderSkeleton(props: WmLabelProps){\n const skeletonWidth = this.props.skeletonwidth || this.styles.root?.width;\n const skeletonHeight = this.props.skeletonheight || this.styles.root?.height || this.styles.text.fontSize;\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 return !isNil(props.caption)? (\n <Animatedview entryanimation={props.animation} style={this.styles.root}>\n {this._background}\n <Tappable target={this}>\n <Text\n style={[this.styles.text, \n {color: props.isValid === false ? 'red' : this.styles.text.color}]}\n numberOfLines={props.wrap ? undefined : 1}\n selectable={this.styles.text.userSelect === 'text'}>\n {toString(props.caption)}\n {props.required && this.getAsterisk()}\n </Text>\n </Tappable>\n </Animatedview>\n ): null;\n }\n}\n"],"mappings":"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"}
|