@wavemaker/app-rn-runtime 11.4.1-next.25739 → 11.4.1-next.25740
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.
- app-rn-runtime/components/advanced/carousel/carousel.component.js +17 -0
- app-rn-runtime/components/advanced/carousel/carousel.component.js.map +1 -1
- app-rn-runtime/components/advanced/carousel/carousel.props.js +1 -0
- app-rn-runtime/components/advanced/carousel/carousel.props.js.map +1 -1
- app-rn-runtime/components/container/wizard/wizard.styles.js +1 -1
- app-rn-runtime/components/container/wizard/wizard.styles.js.map +1 -1
- app-rn-runtime/components/data/list/list.component.js +2 -19
- app-rn-runtime/components/data/list/list.component.js.map +1 -1
- app-rn-runtime/core/key.extractor.js +22 -0
- app-rn-runtime/core/key.extractor.js.map +1 -0
- app-rn-runtime/package.json +3 -3
- app-rn-runtime/variables/http.service.js +1 -1
- app-rn-runtime/variables/http.service.js.map +1 -1
- app-rn-runtime/variables/model-variable.js +2 -2
- app-rn-runtime/variables/model-variable.js.map +1 -1
|
@@ -4,6 +4,7 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
|
|
|
4
4
|
import React from 'react';
|
|
5
5
|
import { View, Text } from 'react-native';
|
|
6
6
|
import Carousel, { Pagination } from 'react-native-snap-carousel';
|
|
7
|
+
import { DefaultKeyExtractor } from '@wavemaker/app-rn-runtime/core/key.extractor';
|
|
7
8
|
import WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';
|
|
8
9
|
import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';
|
|
9
10
|
import WmCarouselProps from './carousel.props';
|
|
@@ -20,6 +21,7 @@ export default class WmCarousel extends BaseComponent {
|
|
|
20
21
|
super(_props, DEFAULT_CLASS, new WmCarouselProps(), new WmCarouselState());
|
|
21
22
|
_defineProperty(this, "carouselRef", null);
|
|
22
23
|
_defineProperty(this, "noOfSlides", 0);
|
|
24
|
+
_defineProperty(this, "keyExtractor", new DefaultKeyExtractor());
|
|
23
25
|
_defineProperty(this, "stopPlay", null);
|
|
24
26
|
_defineProperty(this, "onSlideChange", index => {
|
|
25
27
|
const prevIndex = this.state.activeIndex;
|
|
@@ -70,6 +72,12 @@ export default class WmCarousel extends BaseComponent {
|
|
|
70
72
|
this.stopPlay && this.stopPlay();
|
|
71
73
|
});
|
|
72
74
|
}
|
|
75
|
+
generateItemKey(item, index, props) {
|
|
76
|
+
if (props.itemkey && item && !this._showSkeleton) {
|
|
77
|
+
return props.itemkey(item, index);
|
|
78
|
+
}
|
|
79
|
+
return 'list_item_' + this.keyExtractor.getKey(item, true);
|
|
80
|
+
}
|
|
73
81
|
autoPlay() {
|
|
74
82
|
const props = this.state.props;
|
|
75
83
|
this.stopPlay && this.stopPlay();
|
|
@@ -83,6 +91,12 @@ export default class WmCarousel extends BaseComponent {
|
|
|
83
91
|
onPropertyChange(name, $new, $old) {
|
|
84
92
|
super.onPropertyChange(name, $new, $old);
|
|
85
93
|
switch (name) {
|
|
94
|
+
case 'dataset':
|
|
95
|
+
{
|
|
96
|
+
var _this$keyExtractor;
|
|
97
|
+
(_this$keyExtractor = this.keyExtractor) === null || _this$keyExtractor === void 0 ? void 0 : _this$keyExtractor.clear();
|
|
98
|
+
break;
|
|
99
|
+
}
|
|
86
100
|
case 'animation':
|
|
87
101
|
case 'animationinterval':
|
|
88
102
|
{
|
|
@@ -125,6 +139,9 @@ export default class WmCarousel extends BaseComponent {
|
|
|
125
139
|
loopClonesPerSide: 1,
|
|
126
140
|
autoplay: false,
|
|
127
141
|
activeSlideAlignment: "start",
|
|
142
|
+
keyExtractor: (item, index) => {
|
|
143
|
+
return this.generateItemKey(item, index, props);
|
|
144
|
+
},
|
|
128
145
|
renderItem: this.renderItem,
|
|
129
146
|
sliderWidth: this.state.sliderWidth,
|
|
130
147
|
itemWidth: this.state.sliderWidth,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Text","Carousel","Pagination","WmIcon","BaseComponent","BaseComponentState","WmCarouselProps","DEFAULT_CLASS","WmCarouselState","constructor","arguments","_defineProperty","WmCarousel","props","index","prevIndex","state","activeIndex","updateState","invokeEventCallback","data","type","renderSlide","item","children","e","sliderWidth","nativeEvent","layout","width","_ref","active","createElement","style","styles","activeDotStyle","dotStyle","carouselRef","currentIndex","noOfSlides","_this$carouselRef","snapToNext","_this$carouselRef2","snapToItem","_this$carouselRef3","snapToPrev","_this$carouselRef4","cleanup","push","stopPlay","autoPlay","animation","animationinterval","intervalId","setInterval","next","clearInterval","onPropertyChange","name","$new","$old","renderPagination","dotsLength","activeDotIndex","containerStyle","dotsWrapperStyle","inactiveDotStyle","inactiveDotScale","tappableDots","renderWidget","hasNavs","controls","hasDots","dataset","length","root","onLayout","onLayoutChange","_background","ref","firstItem","height","enableSnap","loopClonesPerSide","autoplay","activeSlideAlignment","renderItem","itemWidth","lockScrollWhileSnapping","scrollEnabled","onSnapToItem","onSlideChange","btnPanel","iconclass","prevBtn","onTap","prev","nextBtn"],"sources":["carousel.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text, LayoutChangeEvent } from 'react-native';\nimport Carousel, { Pagination } from 'react-native-snap-carousel';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmCarouselProps from './carousel.props';\nimport { DEFAULT_CLASS, WmCarouselStyles } from './carousel.styles';\n\nexport class WmCarouselState extends BaseComponentState<WmCarouselProps> {\n activeIndex = 0;\n sliderWidth = 0;\n}\n\nexport default class WmCarousel extends BaseComponent<WmCarouselProps, WmCarouselState, WmCarouselStyles> {\n\n carouselRef: Carousel<unknown> | null = null as any;\n noOfSlides: number = 0;\n stopPlay: Function = null as any;\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 autoPlay() {\n const props = this.state.props;\n this.stopPlay && this.stopPlay();\n if (props.animation && props.animationinterval) {\n const intervalId = setInterval(() => {\n this.next();\n }, props.animationinterval * 1000);\n this.stopPlay = () => clearInterval(intervalId);\n }\n }\n\n onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch (name) {\n case 'animation':\n case 'animationinterval' : {\n this.autoPlay();\n }\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 }\n\n renderItem = (data: any) => {\n const props = this.state.props;\n if (props.type === 'dynamic') {\n return props.renderSlide ? props.renderSlide(data.item, data.index) : null;\n }\n return props.children[data.index];\n }\n\n onLayoutChange = (e: LayoutChangeEvent) => {\n this.updateState({\n sliderWidth: e.nativeEvent.layout.width\n } as WmCarouselState);\n }\n\n getDotElement = ({active, index}: {active: boolean, index: number}) => {\n return (<Text style={active ? this.styles.activeDotStyle: this.styles.dotStyle}>{index}</Text>);\n }\n\n renderPagination(props: WmCarouselProps, styles: WmCarouselStyles) {\n return (\n <Pagination\n carouselRef={this.carouselRef as any}\n dotsLength={this.noOfSlides}\n activeDotIndex={this.state.activeIndex}\n containerStyle={styles.dotsWrapperStyle}\n dotStyle={styles.activeDotStyle}\n inactiveDotStyle={styles.dotStyle}\n inactiveDotScale={0.8}\n tappableDots={true}\n />\n );\n }\n\n next = () => {\n if (this.carouselRef && this.carouselRef.currentIndex < this.noOfSlides - 1) {\n this.carouselRef?.snapToNext();\n } else {\n this.carouselRef?.snapToItem(0);\n }\n }\n\n prev = () => {\n if (this.carouselRef && this.carouselRef.currentIndex > 0) {\n this.carouselRef?.snapToPrev();\n } else {\n this.carouselRef?.snapToItem(this.noOfSlides - 1);\n }\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 const data = props.type === 'dynamic' ? props.dataset : props.children;\n this.noOfSlides = data?.length || 0;\n const autoPlay = props.animation === 'auto';\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} onLayout={this.onLayoutChange}>\n {this._background}\n {this.state.sliderWidth > 0 ?\n (<Carousel\n ref={ref => this.carouselRef = ref}\n data={data || []}\n firstItem={0}\n style={{width: '100%', height: '100%'}}\n enableSnap={true}\n loopClonesPerSide={1}\n autoplay={false}\n activeSlideAlignment='start'\n renderItem={this.renderItem}\n sliderWidth={this.state.sliderWidth}\n itemWidth={this.state.sliderWidth}\n lockScrollWhileSnapping={false}\n scrollEnabled={false}\n onSnapToItem={this.onSlideChange}\n ></Carousel>) : null}\n {hasNavs ? (\n <View style={styles.btnPanel}>\n <WmIcon\n iconclass=\"wi wi-chevron-left fa-2x\"\n styles={styles.prevBtn}\n onTap={this.prev}/>\n <WmIcon\n iconclass=\"wi wi-chevron-right fa-2x\"\n styles={styles.nextBtn}\n onTap={this.next}/>\n </View>): null}\n {this.state.sliderWidth > 0 && hasDots && data ? this.renderPagination(props, styles) : null}\n </View>);\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","View","Text","Carousel","Pagination","DefaultKeyExtractor","WmIcon","BaseComponent","BaseComponentState","WmCarouselProps","DEFAULT_CLASS","WmCarouselState","constructor","arguments","_defineProperty","WmCarousel","props","index","prevIndex","state","activeIndex","updateState","invokeEventCallback","data","type","renderSlide","item","children","e","sliderWidth","nativeEvent","layout","width","_ref","active","createElement","style","styles","activeDotStyle","dotStyle","carouselRef","currentIndex","noOfSlides","_this$carouselRef","snapToNext","_this$carouselRef2","snapToItem","_this$carouselRef3","snapToPrev","_this$carouselRef4","cleanup","push","stopPlay","generateItemKey","itemkey","_showSkeleton","keyExtractor","getKey","autoPlay","animation","animationinterval","intervalId","setInterval","next","clearInterval","onPropertyChange","name","$new","$old","_this$keyExtractor","clear","renderPagination","dotsLength","activeDotIndex","containerStyle","dotsWrapperStyle","inactiveDotStyle","inactiveDotScale","tappableDots","renderWidget","hasNavs","controls","hasDots","dataset","length","root","onLayout","onLayoutChange","_background","ref","firstItem","height","enableSnap","loopClonesPerSide","autoplay","activeSlideAlignment","renderItem","itemWidth","lockScrollWhileSnapping","scrollEnabled","onSnapToItem","onSlideChange","btnPanel","iconclass","prevBtn","onTap","prev","nextBtn"],"sources":["carousel.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text, LayoutChangeEvent } from 'react-native';\nimport Carousel, { Pagination } from 'react-native-snap-carousel';\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';\n\nimport WmCarouselProps from './carousel.props';\nimport { DEFAULT_CLASS, WmCarouselStyles } from './carousel.styles';\n\nexport class WmCarouselState extends BaseComponentState<WmCarouselProps> {\n activeIndex = 0;\n sliderWidth = 0;\n}\n\nexport default class WmCarousel extends BaseComponent<WmCarouselProps, WmCarouselState, WmCarouselStyles> {\n\n carouselRef: Carousel<unknown> | null = null as any;\n noOfSlides: number = 0;\n private keyExtractor = new DefaultKeyExtractor();\n stopPlay: Function = null as any;\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 private generateItemKey(item: any, index: number, props: WmCarouselProps) {\n if (props.itemkey && item && !this._showSkeleton) {\n return props.itemkey(item, index);\n }\n return 'list_item_' + this.keyExtractor.getKey(item, true);\n }\n\n autoPlay() {\n const props = this.state.props;\n this.stopPlay && this.stopPlay();\n if (props.animation && props.animationinterval) {\n const intervalId = setInterval(() => {\n this.next();\n }, props.animationinterval * 1000);\n this.stopPlay = () => clearInterval(intervalId);\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 break;\n }\n case 'animation':\n case 'animationinterval' : {\n this.autoPlay();\n }\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 }\n\n renderItem = (data: any) => {\n const props = this.state.props;\n if (props.type === 'dynamic') {\n return props.renderSlide ? props.renderSlide(data.item, data.index) : null;\n }\n return props.children[data.index];\n }\n\n onLayoutChange = (e: LayoutChangeEvent) => {\n this.updateState({\n sliderWidth: e.nativeEvent.layout.width\n } as WmCarouselState);\n }\n\n getDotElement = ({active, index}: {active: boolean, index: number}) => {\n return (<Text style={active ? this.styles.activeDotStyle: this.styles.dotStyle}>{index}</Text>);\n }\n\n renderPagination(props: WmCarouselProps, styles: WmCarouselStyles) {\n return (\n <Pagination\n carouselRef={this.carouselRef as any}\n dotsLength={this.noOfSlides}\n activeDotIndex={this.state.activeIndex}\n containerStyle={styles.dotsWrapperStyle}\n dotStyle={styles.activeDotStyle}\n inactiveDotStyle={styles.dotStyle}\n inactiveDotScale={0.8}\n tappableDots={true}\n />\n );\n }\n\n next = () => {\n if (this.carouselRef && this.carouselRef.currentIndex < this.noOfSlides - 1) {\n this.carouselRef?.snapToNext();\n } else {\n this.carouselRef?.snapToItem(0);\n }\n }\n\n prev = () => {\n if (this.carouselRef && this.carouselRef.currentIndex > 0) {\n this.carouselRef?.snapToPrev();\n } else {\n this.carouselRef?.snapToItem(this.noOfSlides - 1);\n }\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 const data = props.type === 'dynamic' ? props.dataset : props.children;\n this.noOfSlides = data?.length || 0;\n const autoPlay = props.animation === 'auto';\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} onLayout={this.onLayoutChange}>\n {this._background}\n {this.state.sliderWidth > 0 ?\n (<Carousel\n ref={ref => this.carouselRef = ref}\n data={data || []}\n firstItem={0}\n style={{width: '100%', height: '100%'}}\n enableSnap={true}\n loopClonesPerSide={1}\n autoplay={false}\n activeSlideAlignment='start'\n keyExtractor={(item: any, index: number) => {\n return this.generateItemKey(item, index, props)\n }}\n renderItem={this.renderItem}\n sliderWidth={this.state.sliderWidth}\n itemWidth={this.state.sliderWidth}\n lockScrollWhileSnapping={false}\n scrollEnabled={false}\n onSnapToItem={this.onSlideChange}\n ></Carousel>) : null}\n {hasNavs ? (\n <View style={styles.btnPanel}>\n <WmIcon\n iconclass=\"wi wi-chevron-left fa-2x\"\n styles={styles.prevBtn}\n onTap={this.prev}/>\n <WmIcon\n iconclass=\"wi wi-chevron-right fa-2x\"\n styles={styles.nextBtn}\n onTap={this.next}/>\n </View>): null}\n {this.state.sliderWidth > 0 && hasDots && data ? this.renderPagination(props, styles) : null}\n </View>);\n }\n}\n"],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ export default class WmCarouselProps extends BaseProps {
|
|
|
11
11
|
_defineProperty(this, "animationinterval", 3);
|
|
12
12
|
_defineProperty(this, "controls", 'both');
|
|
13
13
|
_defineProperty(this, "children", null);
|
|
14
|
+
_defineProperty(this, "itemkey", null);
|
|
14
15
|
_defineProperty(this, "renderSlide", void 0);
|
|
15
16
|
}
|
|
16
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BaseProps","WmCarouselProps","constructor","arguments","_defineProperty"],"sources":["carousel.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport React from 'react';\n\nexport default class WmCarouselProps extends BaseProps {\n dataset: any = null;\n type?: 'static' | 'dynamic' = 'static';\n animation?: string = 'auto';\n animationinterval?: number = 3;\n controls?: 'both' | 'none' | 'navs' | 'indicators' = 'both';\n children? = null as any;\n renderSlide?: ($item: any, $index: number) => React.ReactNode;\n}"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAGzE,eAAe,MAAMC,eAAe,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,kBACtC,IAAI;IAAAA,eAAA,eACW,QAAQ;IAAAA,eAAA,oBACjB,MAAM;IAAAA,eAAA,4BACE,CAAC;IAAAA,eAAA,mBACuB,MAAM;IAAAA,eAAA,mBAC/C,IAAI;IAAAA,eAAA;EAAA;
|
|
1
|
+
{"version":3,"names":["BaseProps","WmCarouselProps","constructor","arguments","_defineProperty"],"sources":["carousel.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport React from 'react';\n\nexport default class WmCarouselProps extends BaseProps {\n dataset: any = null;\n type?: 'static' | 'dynamic' = 'static';\n animation?: string = 'auto';\n animationinterval?: number = 3;\n controls?: 'both' | 'none' | 'navs' | 'indicators' = 'both';\n children? = null as any;\n itemkey?: ($item: any, $index: any) => any = null as any;\n renderSlide?: ($item: any, $index: number) => React.ReactNode;\n}"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAGzE,eAAe,MAAMC,eAAe,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,kBACtC,IAAI;IAAAA,eAAA,eACW,QAAQ;IAAAA,eAAA,oBACjB,MAAM;IAAAA,eAAA,4BACE,CAAC;IAAAA,eAAA,mBACuB,MAAM;IAAAA,eAAA,mBAC/C,IAAI;IAAAA,eAAA,kBAC6B,IAAI;IAAAA,eAAA;EAAA;AAEnD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","flexDirection","backgroundColor","wizardBackgroundColor","display","
|
|
1
|
+
{"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","flexDirection","backgroundColor","wizardBackgroundColor","display","minHeight","text","activeStep","wizardStepActiveColor","borderColor","color","wizardActiveStepColor","doneStep","wizardStepDoneColor","wizardDoneStepColor","wizardHeader","padding","alignItems","justifyContent","stepWrapper","zIndex","headerWrapper","flex","wizardBody","alignSelf","paddingTop","width","borderWidth","borderTopWidth","borderBottomWidth","wizardBorderColor","wizardFooter","buttonWrapper","stepTitle","textTransform","fontSize","wizardStepTitleColor","step","height","borderRadius","wizardStepColor","wizardActions","marginRight","nextButton","wizardNextBtnColor","doneButton","wizardDoneBtnColor","icon","stepIcon","wizardStepIconColor","skipLink","stepConnector","wizardStepConnectorColor","position","top","numberTextStepConnector","stepCounter","transform","rotateY"],"sources":["wizard.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 { WmButtonStyles } from '@wavemaker/app-rn-runtime/components/basic/button/button.styles';\nimport { WmIconStyles } from '@wavemaker/app-rn-runtime/components/basic/icon/icon.styles';\nimport { WmAnchorStyles } from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.styles';\n\nexport type WmWizardStyles = BaseStyles & {\n wizardHeader: AllStyle,\n wizardBody: AllStyle,\n wizardFooter: AllStyle,\n wizardActions: WmButtonStyles,\n stepTitle: AllStyle,\n buttonWrapper: AllStyle,\n step: AllStyle,\n nextButton: WmButtonStyles,\n doneButton: WmButtonStyles,\n stepIcon: WmIconStyles,\n skipLink: WmAnchorStyles,\n activeStep: AllStyle,\n doneStep: AllStyle,\n headerWrapper: AllStyle,\n stepWrapper: AllStyle,\n stepConnector: AllStyle,\n numberTextStepConnector: AllStyle,\n stepCounter: AllStyle\n};\n\nexport const DEFAULT_CLASS = 'app-wizard';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmWizardStyles = defineStyles({\n root: {\n flexDirection: 'column',\n backgroundColor: themeVariables.wizardBackgroundColor,\n display: 'flex',\n minHeight: 240\n },\n text: {},\n activeStep:{\n backgroundColor: themeVariables.wizardStepActiveColor,\n borderColor: themeVariables.wizardStepActiveColor,\n color: themeVariables.wizardActiveStepColor\n },\n doneStep: {\n backgroundColor: themeVariables.wizardStepDoneColor,\n color: themeVariables.wizardDoneStepColor,\n borderColor: themeVariables.wizardStepDoneColor\n },\n wizardHeader: {\n padding: 8,\n flexDirection: 'row',\n alignItems: 'flex-start',\n justifyContent: 'center'\n },\n stepWrapper: {\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 20\n },\n headerWrapper: {\n flex: 1\n },\n wizardBody: {\n alignSelf: 'flex-start',\n paddingTop: 10,\n flex: 1,\n width: '100%',\n borderWidth: 0,\n borderTopWidth: 1,\n borderBottomWidth: 1,\n borderColor: themeVariables.wizardBorderColor\n },\n wizardFooter: {\n flexDirection: 'row',\n justifyContent: 'flex-start',\n padding: 12\n },\n buttonWrapper: {\n flexDirection: 'row',\n },\n stepTitle: {\n textTransform: 'capitalize',\n fontSize: 12,\n color: themeVariables.wizardStepTitleColor\n },\n step: {\n alignItems: 'center',\n justifyContent: 'center',\n width: 37,\n backgroundColor: themeVariables.wizardBackgroundColor,\n height: 37,\n borderWidth: 1,\n borderRadius: 18.5,\n color: themeVariables.wizardStepColor,\n borderColor: themeVariables.wizardStepColor\n },\n wizardActions: {\n root: {\n marginRight: 8\n },\n text : {\n textTransform: 'capitalize',\n fontSize: 14\n }\n } as WmButtonStyles,\n nextButton: {\n root: {\n marginRight: 0,\n backgroundColor: themeVariables.wizardNextBtnColor,\n borderColor: themeVariables.wizardNextBtnColor\n }\n } as WmButtonStyles,\n doneButton: {\n root: {\n marginRight: 0,\n backgroundColor: themeVariables.wizardDoneBtnColor\n },\n icon: {\n text: {\n fontSize: 12\n }\n }\n } as WmButtonStyles,\n stepIcon: {\n root: {\n alignSelf: 'center',\n justifyContent: 'center'\n },\n text: {\n color: themeVariables.wizardStepIconColor,\n fontSize: 15\n }\n } as WmIconStyles,\n skipLink: {\n root: {\n padding: 8,\n alignSelf: 'flex-end'\n },\n } as WmAnchorStyles,\n stepConnector: {\n backgroundColor: themeVariables.wizardStepConnectorColor,\n position: 'absolute',\n top: 17.5,\n zIndex: 10,\n height: 2\n },\n numberTextStepConnector: {\n display: 'none'\n },\n stepCounter: {\n fontSize: 15,\n color: themeVariables.wizardStepColor\n }\n } as WmWizardStyles);\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n addStyle('number-text-inline', '', {\n stepConnector: {\n display: 'none'\n },\n numberTextStepConnector: {\n backgroundColor: themeVariables.wizardStepConnectorColor,\n height: 2,\n display: 'flex'\n },\n stepWrapper: {\n flexDirection: 'row'\n },\n wizardHeader: {\n justifyContent: 'flex-start'\n },\n headerWrapper: {\n flex: -1\n },\n stepTitle: {\n padding: 5\n },\n } as WmWizardStyles);\n addStyle(DEFAULT_CLASS + '-rtl', '', {\n wizardActions: {\n icon: {\n root:{\n transform: [{rotateY:'180deg'}]\n }\n },\n },\n nextButton:{\n root: {\n marginRight: 8,\n }\n },\n doneButton:{\n root: {\n marginRight: 8,\n },\n icon:{\n root:{\n transform: [{rotateY:'0deg'}]\n }\n }\n }\n });\n});\n"],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ import { isArray } from 'lodash-es';
|
|
|
8
8
|
import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';
|
|
9
9
|
import { getGroupedData, isDefined } from "@wavemaker/app-rn-runtime/core/utils";
|
|
10
10
|
import { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';
|
|
11
|
+
import { DefaultKeyExtractor } from '@wavemaker/app-rn-runtime/core/key.extractor';
|
|
11
12
|
import WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.component';
|
|
12
13
|
import WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';
|
|
13
14
|
import WmListProps from './list.props';
|
|
@@ -20,24 +21,6 @@ export class WmListState extends BaseComponentState {
|
|
|
20
21
|
_defineProperty(this, "currentPage", 1);
|
|
21
22
|
}
|
|
22
23
|
}
|
|
23
|
-
class DefaultKeyExtractor {
|
|
24
|
-
constructor() {
|
|
25
|
-
_defineProperty(this, "store", new Map());
|
|
26
|
-
_defineProperty(this, "nextKey", 1);
|
|
27
|
-
}
|
|
28
|
-
getKey(o) {
|
|
29
|
-
let create = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
30
|
-
let k = this.store.get(o);
|
|
31
|
-
if (!k && create) {
|
|
32
|
-
k = `key:${Date.now()}:${this.nextKey++}`;
|
|
33
|
-
this.store.set(o, k);
|
|
34
|
-
}
|
|
35
|
-
return k;
|
|
36
|
-
}
|
|
37
|
-
clear() {
|
|
38
|
-
this.store = new Map();
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
24
|
export default class WmList extends BaseComponent {
|
|
42
25
|
constructor(props) {
|
|
43
26
|
super(props, DEFAULT_CLASS, new WmListProps(), new WmListState());
|
|
@@ -257,7 +240,7 @@ export default class WmList extends BaseComponent {
|
|
|
257
240
|
key: '',
|
|
258
241
|
data: [{}, {}, {}]
|
|
259
242
|
}];
|
|
260
|
-
} else if (this.state.groupedData[0] && this.state.groupedData[0]['data'].length) {
|
|
243
|
+
} else if (this.state.groupedData && this.state.groupedData[0] && this.state.groupedData[0]['data'].length) {
|
|
261
244
|
return this.state.groupedData;
|
|
262
245
|
}
|
|
263
246
|
return [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","SectionList","Text","View","FlatList","isArray","BaseComponent","BaseComponentState","getGroupedData","isDefined","Tappable","WmLabel","WmIcon","WmListProps","DEFAULT_CLASS","WmListState","constructor","arguments","_defineProperty","DefaultKeyExtractor","Map","getKey","o","create","length","undefined","k","store","get","Date","now","nextKey","set","clear","WmList","props","isSelected","$item","selectedItem","state","selecteditem","indexOf","onSelect","$index","triggerTapEvent","disableitem","multiselect","index","selectionlimit","push","invokeEventCallback","splice","selectedItemWidgets","itemWidgets","updateState","selectedindex","proxy","selectFirstItem","initialized","dataset","groupby","deselectAll","setGroupData","items","dataItems","groupedData","match","orderby","dateformat","_this$keyExtractor","keyExtractor","onPropertyChange","name","$new","$old","data","direction","key","_this$keyExtractor2","selectfirstitem","pop","componentDidMount","_props$dataset","setTimeout","componentDidUpdate","prevProps","prevState","snapshot","getDefaultStyles","isHorizontal","theme","getStyle","defaultClass","getIndex","item","generateItemKey","itemkey","_showSkeleton","renderItem","createElement","onTap","onLongTap","onDoubleTap","style","styles","itemclass","iconclass","selectedIcon","renderHeader","title","groupHeading","subheading","heading","flex","flexDirection","listIcon","caption","renderEmptyMessage","emptyMessage","nodatamessage","renderLoadingIcon","loadingIcon","loadingicon","loadingdatamsg","renderWithFlatList","root","map","v","i","marginBottom","horizontal","ListEmptyComponent","itemInfo","getSectionListData","renderWithSectionList","onEndReached","_ref","distanceFromEnd","setState","currentPage","contentContainerStyle","onEndReachedThreshold","sections","renderSectionHeader","_ref2","section","renderSectionFooter","loadingdata","renderWidget","_background"],"sources":["list.component.tsx"],"sourcesContent":["import React from 'react';\nimport { SectionList, Text, View, TouchableWithoutFeedback } from 'react-native';\nimport { FlatList } from 'react-native-gesture-handler';\nimport { isArray } from 'lodash-es';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport {getGroupedData, isDefined} from \"@wavemaker/app-rn-runtime/core/utils\";\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\n\nimport WmListProps from './list.props';\nimport { DEFAULT_CLASS, WmListStyles } from './list.styles';\n\n\nexport class WmListState extends BaseComponentState<WmListProps> {\n public selectedindex: any;\n groupedData: Array<any> = [];\n currentPage: number = 1;\n}\n\nclass DefaultKeyExtractor {\n store = new Map<any, string>();\n nextKey = 1;\n\n getKey(o : any, create = false) {\n let k = this.store.get(o);\n if (!k && create) {\n k = `key:${Date.now()}:${this.nextKey++}`;\n this.store.set(o, k)\n }\n return k;\n }\n\n clear() {\n this.store = new Map();\n }\n}\n\nexport default class WmList extends BaseComponent<WmListProps, WmListState, WmListStyles> {\n\n private itemWidgets = [] as any[];\n private selectedItemWidgets = {} as any;\n private keyExtractor = new DefaultKeyExtractor();\n\n constructor(props: WmListProps) {\n super(props, DEFAULT_CLASS, new WmListProps(), new WmListState());\n }\n\n private isSelected($item: any) {\n const selectedItem = this.state.props.selecteditem;\n if (isArray(selectedItem)) {\n return selectedItem.indexOf($item) >= 0;\n }\n return selectedItem === $item;\n }\n\n private onSelect($item: any, $index: number | string, triggerTapEvent = false) {\n const props = this.state.props;\n let selectedItem = null as any;\n if (!props.disableitem($item, $index)) {\n if (props.multiselect) {\n selectedItem = [...(props.selecteditem || [])];\n const index = selectedItem.indexOf($item);\n if (index < 0) {\n if ((!props.selectionlimit)\n || props.selectionlimit < 0\n || selectedItem.length < props.selectionlimit) {\n selectedItem.push($item);\n } else {\n this.invokeEventCallback('onSelectionlimitexceed', [null, this]);\n }\n } else {\n selectedItem.splice(index, 1);\n }\n } else {\n if (props.selecteditem === $item) {\n selectedItem = null;\n } else {\n selectedItem = $item;\n }\n }\n this.selectedItemWidgets = this.itemWidgets[$index as number];\n this.updateState({\n props: { selecteditem: selectedItem },\n selectedindex: $index\n } as WmListState, () => {\n this.invokeEventCallback('onSelect', [this.proxy, $item]);\n triggerTapEvent && this.invokeEventCallback('onTap', [null, this.proxy]);\n });\n }\n }\n\n private selectFirstItem() {\n const props = this.state.props;\n if (this.initialized\n && props.dataset\n && props.dataset.length) {\n const index = props.groupby ? '00': 0;\n this.onSelect(props.dataset[0], index);\n }\n }\n\n private deselectAll() {\n this.updateState({\n props: { selecteditem: null },\n selectedindex: -1\n } as WmListState);\n }\n\n setGroupData(items: any) {\n const dataItems = items;\n const props = this.state.props;\n if (props.groupby) {\n const groupedData = dataItems && getGroupedData(dataItems, props.groupby, props.match, props.orderby, props.dateformat, this);\n this.updateState({\n groupedData: groupedData\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n }\n\n public onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n switch(name) {\n case 'selectfirstitem':\n if ($new) {\n this.selectFirstItem();\n }\n break;\n case 'dataset':\n if (this.state.props.groupby) {\n this.setGroupData($new);\n } else {\n const data = isArray($new) ? $new : (isDefined($new) ? [$new] : []);\n this.updateState({\n groupedData: (data[0] || props.direction === 'horizontal' ? [{\n key: '',\n data: data\n }] : [])\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n this.itemWidgets = [];\n if (props.selectfirstitem) {\n this.selectFirstItem();\n } else {\n this.deselectAll();\n }\n break;\n case 'groupby':\n case 'match':\n this.setGroupData(this.state.props.dataset);\n break;\n case 'multiselect':\n if ($new) {\n if (!isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem ? \n [this.state.props.selecteditem] : [];\n }\n } else if (isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem.pop();\n }\n }\n }\n\n componentDidMount() {\n const props = this.state.props;\n if (this.state.props.selectfirstitem && props.dataset?.length) {\n setTimeout(() => {\n this.onSelect(props.dataset[0], 0);\n });\n }\n super.componentDidMount();\n }\n\n componentDidUpdate(prevProps: WmListProps, prevState: WmListState, snapshot?: any) {\n super.componentDidUpdate && super.componentDidUpdate(prevProps, prevState, snapshot);\n this.invokeEventCallback('onRender', [this, this.state.props.dataset]);\n }\n\n getDefaultStyles() {\n const isHorizontal = this.state.props.direction === 'horizontal';\n return this.theme.getStyle(`${this.defaultClass} ${isHorizontal ? 'app-horizontal-list' : 'app-vertical-list'}`);\n }\n\n getIndex(item: any) {\n return this.state.props.dataset.indexOf(item);\n }\n\n private generateItemKey(item: any, index: number, props: WmListProps) {\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 private renderItem(item: any, index: number, props: WmListProps) {\n return (\n <Tappable\n onTap={() => this.onSelect(item, index, true)}\n onLongTap={() => this.invokeEventCallback('onLongtap', [null, this.proxy])}\n onDoubleTap={() => this.invokeEventCallback('onDoubletap', [null, this.proxy])}>\n <View style={[\n this.styles.item,\n props.itemclass ? this.theme.getStyle(props.itemclass(item, index)) : null,\n this.isSelected(item) ? this.styles.selectedItem : {}]}>\n { props.renderItem(item, index, this)}\n { this.isSelected(item) ? (\n <WmIcon iconclass='wi wi-check-circle' styles={this.styles.selectedIcon} />\n ) : null}\n </View>\n </Tappable>\n );\n }\n\n private renderHeader(props: WmListProps, title: string) {\n return props.groupby ? (\n <Text style={this.styles.groupHeading}>{title}</Text>\n ) : (props.iconclass || props.title || props.subheading) ? (\n <View style={this.styles.heading}>\n <View style={{flex: 1, flexDirection: 'row'}}>\n <WmIcon styles={this.styles.listIcon} iconclass={props.iconclass}></WmIcon>\n <View>\n <WmLabel styles={this.styles.title} caption={props.title}></WmLabel>\n <WmLabel styles={this.styles.subheading} caption={props.subheading}></WmLabel>\n </View>\n </View>\n </View>) : null;\n }\n\n private renderEmptyMessage(isHorizontal: boolean, item: any, index: any, props: WmListProps) {\n return (<WmLabel styles={this.styles.emptyMessage} caption={props.nodatamessage}></WmLabel>);\n }\n\n private renderLoadingIcon(props: WmListProps) {\n return (<WmIcon\n styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\n caption={props.loadingdatamsg}></WmIcon>)\n }\n\n private renderWithFlatList(props: WmListProps, isHorizontal = false) {\n return (\n <View style={this.styles.root}>\n {this.state.groupedData ? this.state.groupedData.map((v: any, i) => ((\n <View style={{marginBottom: 16}} key={v.key || this.keyExtractor.getKey(v, true)}>\n {this.renderHeader(props, v.key)}\n <FlatList\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n horizontal = {isHorizontal}\n data={v.data || []}\n ListEmptyComponent = {(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}>\n </FlatList>\n </View>\n ))) : null\n }\n </View>);\n }\n\n private getSectionListData() {\n if (this._showSkeleton) {\n return [{\n key: '',\n data: [{}, {}, {}]\n }];\n } else if (this.state.groupedData[0] && this.state.groupedData[0]['data'].length) {\n return this.state.groupedData;\n }\n return [];\n }\n\n private renderWithSectionList(props: WmListProps, isHorizontal = false) {\n return (\n <SectionList\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n horizontal = {isHorizontal}\n onEndReached={({distanceFromEnd}) => {\n this.setState({ currentPage: this.state.currentPage + 1 } as WmListState);\n this.invokeEventCallback('onEndReached', [null, this]);\n }}\n contentContainerStyle={this.styles.root}\n onEndReachedThreshold={0.3}\n sections={this.getSectionListData()}\n renderSectionHeader={({ section: {key, data}}) => {\n return this.renderHeader(props, key);\n }}\n renderSectionFooter={() => props.loadingdata ? this.renderLoadingIcon(props) : null}\n ListEmptyComponent = {(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}>\n </SectionList>\n );\n }\n\n renderWidget(props: WmListProps) {\n this.invokeEventCallback('onBeforedatarender', [this, this.state.props.dataset]);\n const isHorizontal = (props.direction === 'horizontal');\n return (\n <View>\n {this._background}\n {(isHorizontal) ?\n this.renderWithFlatList(props, isHorizontal)\n : this.renderWithSectionList(props, isHorizontal)}\n </View>);\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","SectionList","Text","View","FlatList","isArray","BaseComponent","BaseComponentState","getGroupedData","isDefined","Tappable","DefaultKeyExtractor","WmLabel","WmIcon","WmListProps","DEFAULT_CLASS","WmListState","constructor","arguments","_defineProperty","WmList","props","isSelected","$item","selectedItem","state","selecteditem","indexOf","onSelect","$index","triggerTapEvent","length","undefined","disableitem","multiselect","index","selectionlimit","push","invokeEventCallback","splice","selectedItemWidgets","itemWidgets","updateState","selectedindex","proxy","selectFirstItem","initialized","dataset","groupby","deselectAll","setGroupData","items","dataItems","groupedData","match","orderby","dateformat","_this$keyExtractor","keyExtractor","clear","onPropertyChange","name","$new","$old","data","direction","key","_this$keyExtractor2","selectfirstitem","pop","componentDidMount","_props$dataset","setTimeout","componentDidUpdate","prevProps","prevState","snapshot","getDefaultStyles","isHorizontal","theme","getStyle","defaultClass","getIndex","item","generateItemKey","itemkey","_showSkeleton","getKey","renderItem","createElement","onTap","onLongTap","onDoubleTap","style","styles","itemclass","iconclass","selectedIcon","renderHeader","title","groupHeading","subheading","heading","flex","flexDirection","listIcon","caption","renderEmptyMessage","emptyMessage","nodatamessage","renderLoadingIcon","loadingIcon","loadingicon","loadingdatamsg","renderWithFlatList","root","map","v","i","marginBottom","horizontal","ListEmptyComponent","itemInfo","getSectionListData","renderWithSectionList","onEndReached","_ref","distanceFromEnd","setState","currentPage","contentContainerStyle","onEndReachedThreshold","sections","renderSectionHeader","_ref2","section","renderSectionFooter","loadingdata","renderWidget","_background"],"sources":["list.component.tsx"],"sourcesContent":["import React from 'react';\nimport { SectionList, Text, View, TouchableWithoutFeedback } from 'react-native';\nimport { FlatList } from 'react-native-gesture-handler';\nimport { isArray } from 'lodash-es';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport {getGroupedData, isDefined} from \"@wavemaker/app-rn-runtime/core/utils\";\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { DefaultKeyExtractor } from '@wavemaker/app-rn-runtime/core/key.extractor';\nimport WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\n\nimport WmListProps from './list.props';\nimport { DEFAULT_CLASS, WmListStyles } from './list.styles';\n\n\nexport class WmListState extends BaseComponentState<WmListProps> {\n public selectedindex: any;\n groupedData: Array<any> = [];\n currentPage: number = 1;\n}\n\nexport default class WmList extends BaseComponent<WmListProps, WmListState, WmListStyles> {\n\n private itemWidgets = [] as any[];\n private selectedItemWidgets = {} as any;\n private keyExtractor = new DefaultKeyExtractor();\n\n constructor(props: WmListProps) {\n super(props, DEFAULT_CLASS, new WmListProps(), new WmListState());\n }\n\n private isSelected($item: any) {\n const selectedItem = this.state.props.selecteditem;\n if (isArray(selectedItem)) {\n return selectedItem.indexOf($item) >= 0;\n }\n return selectedItem === $item;\n }\n\n private onSelect($item: any, $index: number | string, triggerTapEvent = false) {\n const props = this.state.props;\n let selectedItem = null as any;\n if (!props.disableitem($item, $index)) {\n if (props.multiselect) {\n selectedItem = [...(props.selecteditem || [])];\n const index = selectedItem.indexOf($item);\n if (index < 0) {\n if ((!props.selectionlimit)\n || props.selectionlimit < 0\n || selectedItem.length < props.selectionlimit) {\n selectedItem.push($item);\n } else {\n this.invokeEventCallback('onSelectionlimitexceed', [null, this]);\n }\n } else {\n selectedItem.splice(index, 1);\n }\n } else {\n if (props.selecteditem === $item) {\n selectedItem = null;\n } else {\n selectedItem = $item;\n }\n }\n this.selectedItemWidgets = this.itemWidgets[$index as number];\n this.updateState({\n props: { selecteditem: selectedItem },\n selectedindex: $index\n } as WmListState, () => {\n this.invokeEventCallback('onSelect', [this.proxy, $item]);\n triggerTapEvent && this.invokeEventCallback('onTap', [null, this.proxy]);\n });\n }\n }\n\n private selectFirstItem() {\n const props = this.state.props;\n if (this.initialized\n && props.dataset\n && props.dataset.length) {\n const index = props.groupby ? '00': 0;\n this.onSelect(props.dataset[0], index);\n }\n }\n\n private deselectAll() {\n this.updateState({\n props: { selecteditem: null },\n selectedindex: -1\n } as WmListState);\n }\n\n setGroupData(items: any) {\n const dataItems = items;\n const props = this.state.props;\n if (props.groupby) {\n const groupedData = dataItems && getGroupedData(dataItems, props.groupby, props.match, props.orderby, props.dateformat, this);\n this.updateState({\n groupedData: groupedData\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n }\n\n public onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n switch(name) {\n case 'selectfirstitem':\n if ($new) {\n this.selectFirstItem();\n }\n break;\n case 'dataset':\n if (this.state.props.groupby) {\n this.setGroupData($new);\n } else {\n const data = isArray($new) ? $new : (isDefined($new) ? [$new] : []);\n this.updateState({\n groupedData: (data[0] || props.direction === 'horizontal' ? [{\n key: '',\n data: data\n }] : [])\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n this.itemWidgets = [];\n if (props.selectfirstitem) {\n this.selectFirstItem();\n } else {\n this.deselectAll();\n }\n break;\n case 'groupby':\n case 'match':\n this.setGroupData(this.state.props.dataset);\n break;\n case 'multiselect':\n if ($new) {\n if (!isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem ? \n [this.state.props.selecteditem] : [];\n }\n } else if (isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem.pop();\n }\n }\n }\n\n componentDidMount() {\n const props = this.state.props;\n if (this.state.props.selectfirstitem && props.dataset?.length) {\n setTimeout(() => {\n this.onSelect(props.dataset[0], 0);\n });\n }\n super.componentDidMount();\n }\n\n componentDidUpdate(prevProps: WmListProps, prevState: WmListState, snapshot?: any) {\n super.componentDidUpdate && super.componentDidUpdate(prevProps, prevState, snapshot);\n this.invokeEventCallback('onRender', [this, this.state.props.dataset]);\n }\n\n getDefaultStyles() {\n const isHorizontal = this.state.props.direction === 'horizontal';\n return this.theme.getStyle(`${this.defaultClass} ${isHorizontal ? 'app-horizontal-list' : 'app-vertical-list'}`);\n }\n\n getIndex(item: any) {\n return this.state.props.dataset.indexOf(item);\n }\n\n private generateItemKey(item: any, index: number, props: WmListProps) {\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 private renderItem(item: any, index: number, props: WmListProps) {\n return (\n <Tappable\n onTap={() => this.onSelect(item, index, true)}\n onLongTap={() => this.invokeEventCallback('onLongtap', [null, this.proxy])}\n onDoubleTap={() => this.invokeEventCallback('onDoubletap', [null, this.proxy])}>\n <View style={[\n this.styles.item,\n props.itemclass ? this.theme.getStyle(props.itemclass(item, index)) : null,\n this.isSelected(item) ? this.styles.selectedItem : {}]}>\n { props.renderItem(item, index, this)}\n { this.isSelected(item) ? (\n <WmIcon iconclass='wi wi-check-circle' styles={this.styles.selectedIcon} />\n ) : null}\n </View>\n </Tappable>\n );\n }\n\n private renderHeader(props: WmListProps, title: string) {\n return props.groupby ? (\n <Text style={this.styles.groupHeading}>{title}</Text>\n ) : (props.iconclass || props.title || props.subheading) ? (\n <View style={this.styles.heading}>\n <View style={{flex: 1, flexDirection: 'row'}}>\n <WmIcon styles={this.styles.listIcon} iconclass={props.iconclass}></WmIcon>\n <View>\n <WmLabel styles={this.styles.title} caption={props.title}></WmLabel>\n <WmLabel styles={this.styles.subheading} caption={props.subheading}></WmLabel>\n </View>\n </View>\n </View>) : null;\n }\n\n private renderEmptyMessage(isHorizontal: boolean, item: any, index: any, props: WmListProps) {\n return (<WmLabel styles={this.styles.emptyMessage} caption={props.nodatamessage}></WmLabel>);\n }\n\n private renderLoadingIcon(props: WmListProps) {\n return (<WmIcon\n styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\n caption={props.loadingdatamsg}></WmIcon>)\n }\n\n private renderWithFlatList(props: WmListProps, isHorizontal = false) {\n return (\n <View style={this.styles.root}>\n {this.state.groupedData ? this.state.groupedData.map((v: any, i) => ((\n <View style={{marginBottom: 16}} key={v.key || this.keyExtractor.getKey(v, true)}>\n {this.renderHeader(props, v.key)}\n <FlatList\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n horizontal = {isHorizontal}\n data={v.data || []}\n ListEmptyComponent = {(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}>\n </FlatList>\n </View>\n ))) : null\n }\n </View>);\n }\n\n private getSectionListData() {\n if (this._showSkeleton) {\n return [{\n key: '',\n data: [{}, {}, {}]\n }];\n } else if (this.state.groupedData \n && this.state.groupedData[0] \n && this.state.groupedData[0]['data'].length) {\n return this.state.groupedData;\n }\n return [];\n }\n\n private renderWithSectionList(props: WmListProps, isHorizontal = false) {\n return (\n <SectionList\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n horizontal = {isHorizontal}\n onEndReached={({distanceFromEnd}) => {\n this.setState({ currentPage: this.state.currentPage + 1 } as WmListState);\n this.invokeEventCallback('onEndReached', [null, this]);\n }}\n contentContainerStyle={this.styles.root}\n onEndReachedThreshold={0.3}\n sections={this.getSectionListData()}\n renderSectionHeader={({ section: {key, data}}) => {\n return this.renderHeader(props, key);\n }}\n renderSectionFooter={() => props.loadingdata ? this.renderLoadingIcon(props) : null}\n ListEmptyComponent = {(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}>\n </SectionList>\n );\n }\n\n renderWidget(props: WmListProps) {\n this.invokeEventCallback('onBeforedatarender', [this, this.state.props.dataset]);\n const isHorizontal = (props.direction === 'horizontal');\n return (\n <View>\n {this._background}\n {(isHorizontal) ?\n this.renderWithFlatList(props, isHorizontal)\n : this.renderWithSectionList(props, isHorizontal)}\n </View>);\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
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
|
+
export class DefaultKeyExtractor {
|
|
5
|
+
constructor() {
|
|
6
|
+
_defineProperty(this, "store", new Map());
|
|
7
|
+
_defineProperty(this, "nextKey", 1);
|
|
8
|
+
}
|
|
9
|
+
getKey(o) {
|
|
10
|
+
let create = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
11
|
+
let k = this.store.get(o);
|
|
12
|
+
if (!k && create) {
|
|
13
|
+
k = `key:${Date.now()}:${this.nextKey++}`;
|
|
14
|
+
this.store.set(o, k);
|
|
15
|
+
}
|
|
16
|
+
return k;
|
|
17
|
+
}
|
|
18
|
+
clear() {
|
|
19
|
+
this.store = new Map();
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=key.extractor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["DefaultKeyExtractor","constructor","_defineProperty","Map","getKey","o","create","arguments","length","undefined","k","store","get","Date","now","nextKey","set","clear"],"sources":["key.extractor.ts"],"sourcesContent":["export class DefaultKeyExtractor {\n store = new Map<any, string>();\n nextKey = 1;\n \n getKey(o : any, create = false) {\n let k = this.store.get(o);\n if (!k && create) {\n k = `key:${Date.now()}:${this.nextKey++}`;\n this.store.set(o, k)\n }\n return k;\n }\n \n clear() {\n this.store = new Map();\n }\n}"],"mappings":";;;AAAA,OAAO,MAAMA,mBAAmB,CAAC;EAAAC,YAAA;IAAAC,eAAA,gBACrB,IAAIC,GAAG,CAAc,CAAC;IAAAD,eAAA,kBACpB,CAAC;EAAA;EAEXE,MAAMA,CAACC,CAAO,EAAkB;IAAA,IAAhBC,MAAM,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,KAAK;IAC5B,IAAIG,CAAC,GAAG,IAAI,CAACC,KAAK,CAACC,GAAG,CAACP,CAAC,CAAC;IACzB,IAAI,CAACK,CAAC,IAAIJ,MAAM,EAAE;MAChBI,CAAC,GAAI,OAAMG,IAAI,CAACC,GAAG,CAAC,CAAE,IAAG,IAAI,CAACC,OAAO,EAAG,EAAC;MACzC,IAAI,CAACJ,KAAK,CAACK,GAAG,CAACX,CAAC,EAAEK,CAAC,CAAC;IACtB;IACA,OAAOA,CAAC;EACV;EAEAO,KAAKA,CAAA,EAAG;IACN,IAAI,CAACN,KAAK,GAAG,IAAIR,GAAG,CAAC,CAAC;EACxB;AACJ"}
|
app-rn-runtime/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wavemaker/app-rn-runtime",
|
|
3
|
-
"version": "11.4.1-next.
|
|
3
|
+
"version": "11.4.1-next.25740",
|
|
4
4
|
"description": "''",
|
|
5
5
|
"main": "index",
|
|
6
6
|
"module": "index",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"@react-navigation/native": "6.1.7",
|
|
50
50
|
"@react-navigation/stack": "^6.3.7",
|
|
51
51
|
"@types/lodash-es": "^4.17.6",
|
|
52
|
-
"@wavemaker/variables": "11.4.1-next.
|
|
52
|
+
"@wavemaker/variables": "11.4.1-next.25740",
|
|
53
53
|
"axios": "^1.4.0",
|
|
54
54
|
"color": "4.2.3",
|
|
55
55
|
"cross-env": "^5.2.0",
|
|
@@ -127,7 +127,7 @@
|
|
|
127
127
|
"typescript": "^5.1.3",
|
|
128
128
|
"victory-native": "36.6.11",
|
|
129
129
|
"yargs": "^16.2.0",
|
|
130
|
-
"@wavemaker/variables": "11.4.1-next.
|
|
130
|
+
"@wavemaker/variables": "11.4.1-next.25740"
|
|
131
131
|
},
|
|
132
132
|
"jest": {
|
|
133
133
|
"preset": "react-native",
|
|
@@ -30,7 +30,7 @@ export class HttpService {
|
|
|
30
30
|
const axiosConfig = {
|
|
31
31
|
headers: headers,
|
|
32
32
|
cancelToken: variable.cancelTokenSource.token,
|
|
33
|
-
withCredentials: (options === null || options === void 0 ? void 0 : options.withCredentials) !== false
|
|
33
|
+
withCredentials: !isWebPreviewMode() || (options === null || options === void 0 ? void 0 : options.withCredentials) !== false
|
|
34
34
|
};
|
|
35
35
|
return new Promise((resolve, reject) => {
|
|
36
36
|
// @ts-ignore
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["axios","WS_CONSTANTS","isWebPreviewMode","injector","HttpService","send","options","variable","_variable$serviceInfo","serviceInfo","headers","requestBody","data","url","cancelTokenSource","CancelToken","source","consumes","formData","FormData","parameters","forEach","p","v","params","name","append","category","startsWith","replace","config","baseUrl","methodType","method","toLowerCase","isNonDataMethod","NON_DATA_AXIOS_METHODS","indexOf","toUpperCase","axiosConfig","cancelToken","token","withCredentials","Promise","resolve","reject","apply","then","result","err","response","sendCall","requestParams","getLocale","appConfig","get","appLocale","messages","cancel","uploadFile","event","error","httpService"],"sources":["http.service.ts"],"sourcesContent":["import axios from 'axios';\nimport { HttpClientService } from '@wavemaker/variables/src/types/http-client.service';\nimport { WS_CONSTANTS } from '@wavemaker/app-rn-runtime/variables/utils/variable.constants';\nimport { get, isEmpty } from 'lodash';\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport { isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\n\nexport class HttpService implements HttpClientService {\n\n send(options: any, variable: any) {\n const serviceInfo = variable.serviceInfo;\n let headers: any = options.headers,\n requestBody: any = options.data,\n url: string = options.url;\n variable.cancelTokenSource = axios.CancelToken.source();\n if (!isWebPreviewMode() && (variable?.serviceInfo?.consumes||[])[0] === 'multipart/form-data') {\n headers['Content-Type'] = 'multipart/form-data';\n let formData = new FormData();\n (variable.serviceInfo.parameters||[]).forEach((p: any) => {\n const v = variable.params[p.name];\n if (v) {\n formData.append(p.name, variable.params[p.name]);\n }\n });\n requestBody = formData;\n }\n if (!isWebPreviewMode()\n && variable.category === 'wm.LiveVariable'\n && !(url.startsWith('http://') || url.startsWith(\"https://\"))) {\n options.url = options.url.replace('./', '/');\n url = variable.config.baseUrl + options.url;\n }\n\n const methodType: string = serviceInfo?.methodType || options.method.toLowerCase();\n const isNonDataMethod: boolean = WS_CONSTANTS.NON_DATA_AXIOS_METHODS.indexOf(methodType.toUpperCase()) > -1;\n const axiosConfig = {\n headers: headers,\n cancelToken: variable.cancelTokenSource.token,\n withCredentials: options?.withCredentials !== false\n };\n return new Promise((resolve, reject) => {\n // @ts-ignore\n axios[methodType].apply(variable, ( isNonDataMethod ? [url, axiosConfig] : [url, requestBody || {}, axiosConfig]))\n .then((result: any) => {\n resolve(result);\n }, (err: any) => {\n reject(err.response);\n })\n })\n }\n\n sendCall(requestParams: any, variable: any) {\n return new Promise((resolve, reject) => {\n this.send(requestParams, variable).then((response: any) => {\n resolve(response);\n }, (err: any) => {\n reject(err);\n });\n });\n }\n\n getLocale() {\n const appConfig = injector.get<AppConfig>('APP_CONFIG');\n return appConfig.appLocale.messages;\n }\n\n cancel(variable: any) {\n variable.cancelTokenSource.cancel();\n }\n\n uploadFile(url: any, data: any, variable: any, options?: any) {\n const requestParams = {\n url: url,\n data: data\n }\n return new Promise((resolve, reject) => {\n return this.send(requestParams, variable).then((event: any) => {\n resolve(event.data);\n }, (error: any) => {\n reject(error);\n });\n });\n }\n}\n\nconst httpService = new HttpService();\n\nexport default httpService;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,YAAY,QAAQ,8DAA8D;AAG3F,SAASC,gBAAgB,QAAQ,sCAAsC;AACvE,OAAOC,QAAQ,MAAM,yCAAyC;AAE9D,OAAO,MAAMC,WAAW,CAA8B;EAEpDC,IAAIA,CAACC,OAAY,EAAEC,QAAa,EAAE;IAAA,IAAAC,qBAAA;IAChC,MAAMC,WAAW,GAAGF,QAAQ,CAACE,WAAW;IACxC,IAAIC,OAAY,GAAGJ,OAAO,CAACI,OAAO;MAChCC,WAAgB,GAAGL,OAAO,CAACM,IAAI;MAC/BC,GAAW,GAAGP,OAAO,CAACO,GAAG;IACzBN,QAAQ,CAACO,iBAAiB,GAAGd,KAAK,CAACe,WAAW,CAACC,MAAM,CAAC,CAAC;IACzD,IAAI,CAACd,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAAK,QAAQ,aAARA,QAAQ,gBAAAC,qBAAA,GAARD,QAAQ,CAAEE,WAAW,cAAAD,qBAAA,uBAArBA,qBAAA,CAAuBS,QAAQ,KAAE,EAAE,EAAE,CAAC,CAAC,KAAK,qBAAqB,EAAE;MAC7FP,OAAO,CAAC,cAAc,CAAC,GAAG,qBAAqB;MAC/C,IAAIQ,QAAQ,GAAG,IAAIC,QAAQ,CAAC,CAAC;MAC7B,CAACZ,QAAQ,CAACE,WAAW,CAACW,UAAU,IAAE,EAAE,EAAEC,OAAO,CAAEC,CAAM,IAAK;QACxD,MAAMC,CAAC,GAAGhB,QAAQ,CAACiB,MAAM,CAACF,CAAC,CAACG,IAAI,CAAC;QACjC,IAAIF,CAAC,EAAE;UACLL,QAAQ,CAACQ,MAAM,CAACJ,CAAC,CAACG,IAAI,EAAElB,QAAQ,CAACiB,MAAM,CAACF,CAAC,CAACG,IAAI,CAAC,CAAC;QAClD;MACF,CAAC,CAAC;MACFd,WAAW,GAAGO,QAAQ;IACxB;IACA,IAAI,CAAChB,gBAAgB,CAAC,CAAC,IAClBK,QAAQ,CAACoB,QAAQ,KAAK,iBAAiB,IACvC,EAAEd,GAAG,CAACe,UAAU,CAAC,SAAS,CAAC,IAAIf,GAAG,CAACe,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE;MAC/DtB,OAAO,CAACO,GAAG,GAAGP,OAAO,CAACO,GAAG,CAACgB,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;MAC5ChB,GAAG,GAAGN,QAAQ,CAACuB,MAAM,CAACC,OAAO,GAAGzB,OAAO,CAACO,GAAG;IAC7C;IAEA,MAAMmB,UAAkB,GAAG,CAAAvB,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEuB,UAAU,KAAI1B,OAAO,CAAC2B,MAAM,CAACC,WAAW,CAAC,CAAC;IAClF,MAAMC,eAAwB,GAAGlC,YAAY,CAACmC,sBAAsB,CAACC,OAAO,CAACL,UAAU,CAACM,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC3G,MAAMC,WAAW,GAAG;MAClB7B,OAAO,EAAEA,OAAO;MAChB8B,WAAW,EAAEjC,QAAQ,CAACO,iBAAiB,CAAC2B,KAAK;MAC7CC,eAAe,EAAE,
|
|
1
|
+
{"version":3,"names":["axios","WS_CONSTANTS","isWebPreviewMode","injector","HttpService","send","options","variable","_variable$serviceInfo","serviceInfo","headers","requestBody","data","url","cancelTokenSource","CancelToken","source","consumes","formData","FormData","parameters","forEach","p","v","params","name","append","category","startsWith","replace","config","baseUrl","methodType","method","toLowerCase","isNonDataMethod","NON_DATA_AXIOS_METHODS","indexOf","toUpperCase","axiosConfig","cancelToken","token","withCredentials","Promise","resolve","reject","apply","then","result","err","response","sendCall","requestParams","getLocale","appConfig","get","appLocale","messages","cancel","uploadFile","event","error","httpService"],"sources":["http.service.ts"],"sourcesContent":["import axios from 'axios';\nimport { HttpClientService } from '@wavemaker/variables/src/types/http-client.service';\nimport { WS_CONSTANTS } from '@wavemaker/app-rn-runtime/variables/utils/variable.constants';\nimport { get, isEmpty } from 'lodash';\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport { isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\n\nexport class HttpService implements HttpClientService {\n\n send(options: any, variable: any) {\n const serviceInfo = variable.serviceInfo;\n let headers: any = options.headers,\n requestBody: any = options.data,\n url: string = options.url;\n variable.cancelTokenSource = axios.CancelToken.source();\n if (!isWebPreviewMode() && (variable?.serviceInfo?.consumes||[])[0] === 'multipart/form-data') {\n headers['Content-Type'] = 'multipart/form-data';\n let formData = new FormData();\n (variable.serviceInfo.parameters||[]).forEach((p: any) => {\n const v = variable.params[p.name];\n if (v) {\n formData.append(p.name, variable.params[p.name]);\n }\n });\n requestBody = formData;\n }\n if (!isWebPreviewMode()\n && variable.category === 'wm.LiveVariable'\n && !(url.startsWith('http://') || url.startsWith(\"https://\"))) {\n options.url = options.url.replace('./', '/');\n url = variable.config.baseUrl + options.url;\n }\n\n const methodType: string = serviceInfo?.methodType || options.method.toLowerCase();\n const isNonDataMethod: boolean = WS_CONSTANTS.NON_DATA_AXIOS_METHODS.indexOf(methodType.toUpperCase()) > -1;\n const axiosConfig = {\n headers: headers,\n cancelToken: variable.cancelTokenSource.token,\n withCredentials: !isWebPreviewMode() || options?.withCredentials !== false\n };\n return new Promise((resolve, reject) => {\n // @ts-ignore\n axios[methodType].apply(variable, ( isNonDataMethod ? [url, axiosConfig] : [url, requestBody || {}, axiosConfig]))\n .then((result: any) => {\n resolve(result);\n }, (err: any) => {\n reject(err.response);\n })\n })\n }\n\n sendCall(requestParams: any, variable: any) {\n return new Promise((resolve, reject) => {\n this.send(requestParams, variable).then((response: any) => {\n resolve(response);\n }, (err: any) => {\n reject(err);\n });\n });\n }\n\n getLocale() {\n const appConfig = injector.get<AppConfig>('APP_CONFIG');\n return appConfig.appLocale.messages;\n }\n\n cancel(variable: any) {\n variable.cancelTokenSource.cancel();\n }\n\n uploadFile(url: any, data: any, variable: any, options?: any) {\n const requestParams = {\n url: url,\n data: data\n }\n return new Promise((resolve, reject) => {\n return this.send(requestParams, variable).then((event: any) => {\n resolve(event.data);\n }, (error: any) => {\n reject(error);\n });\n });\n }\n}\n\nconst httpService = new HttpService();\n\nexport default httpService;\n"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
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
2
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
3
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
|
-
import {
|
|
4
|
+
import { clone, isEqual } from 'lodash-es';
|
|
5
5
|
import { VariableEvents } from './base-variable';
|
|
6
6
|
import { ModelVariable as _ModelVariable } from '@wavemaker/variables/src/model/variable/model-variable';
|
|
7
7
|
export class ModelVariable extends _ModelVariable {
|
|
@@ -19,7 +19,7 @@ export class ModelVariable extends _ModelVariable {
|
|
|
19
19
|
}
|
|
20
20
|
invoke(params, onSuccess, onError) {
|
|
21
21
|
let result;
|
|
22
|
-
this.dataSet =
|
|
22
|
+
this.dataSet = this.config.paramProvider();
|
|
23
23
|
this.notify(VariableEvents.BEFORE_INVOKE, [this, this.dataSet]);
|
|
24
24
|
try {
|
|
25
25
|
result = super.execute(params, () => {});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["clone","isEqual","VariableEvents","ModelVariable","_ModelVariable","constructor","config","variable","name","dataSet","paramProvider","isList","_defineProperty","invoke","params","onSuccess","onError","result","notify","BEFORE_INVOKE","execute","SUCCESS","error","ERROR","AFTER_INVOKE","invokeOnParamChange","latest","lastParams","Promise","resolve"],"sources":["model-variable.ts"],"sourcesContent":["import { assignIn, clone, isEqual } from 'lodash-es';\nimport { BaseVariable, VariableConfig, VariableEvents } from './base-variable';\nimport { ModelVariable as _ModelVariable } from '@wavemaker/variables/src/model/variable/model-variable';\n\nexport class ModelVariable extends _ModelVariable {\n config: any;\n lastParams: any;\n\n constructor(config: VariableConfig) {\n const variable = {\n name: config.name,\n dataSet: config.paramProvider(),\n isList: config.isList\n }\n super(variable);\n this.config = config;\n this.invoke();\n }\n\n invoke(params?: any, onSuccess?: Function, onError?: Function) {\n let result;\n this.dataSet = this.config.paramProvider(); \n this.notify(VariableEvents.BEFORE_INVOKE, [this, this.dataSet]);\n try{\n result = super.execute(params, ()=>{});\n this.config.onSuccess && this.config.onSuccess(this, this.dataSet);\n onSuccess && onSuccess(this, this.dataSet);\n this.notify(VariableEvents.SUCCESS, [this, this.dataSet]);\n }\n catch(error){\n this.config.onError && this.config.onError(this, this.dataSet);\n onError && onError(this, this.dataSet);\n this.notify(VariableEvents.ERROR, [this, this.dataSet]);\n }\n\n this.notify(VariableEvents.AFTER_INVOKE, [this, this.dataSet]);\n return result;\n }\n\n invokeOnParamChange() {\n const latest = this.config.paramProvider();\n if (!isEqual(this.lastParams, latest)) {\n this.invoke();\n this.lastParams = clone(latest);\n }\n return Promise.resolve(this);\n }\n}\n"],"mappings":";;;AAAA,SAAmBA,KAAK,EAAEC,OAAO,QAAQ,WAAW;AACpD,SAAuCC,cAAc,QAAQ,iBAAiB;AAC9E,SAASC,aAAa,IAAIC,cAAc,QAAQ,wDAAwD;AAExG,OAAO,MAAMD,aAAa,SAASC,cAAc,CAAC;EAIhDC,WAAWA,CAACC,MAAsB,EAAE;IAClC,MAAMC,QAAQ,GAAG;MACfC,IAAI,EAAEF,MAAM,CAACE,IAAI;MACjBC,OAAO,EAAEH,MAAM,CAACI,aAAa,CAAC,CAAC;MAC/BC,MAAM,EAAEL,MAAM,CAACK;IACjB,CAAC;IACD,KAAK,CAACJ,QAAQ,CAAC;IAACK,eAAA;IAAAA,eAAA;IAChB,IAAI,CAACN,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACO,MAAM,CAAC,CAAC;EACf;EAEAA,MAAMA,CAACC,MAAY,EAAEC,SAAoB,EAAEC,OAAkB,EAAE;IAC7D,IAAIC,MAAM;IACV,IAAI,CAACR,OAAO,GAAG,IAAI,CAACH,MAAM,CAACI,aAAa,CAAC,CAAC;IAC1C,IAAI,CAACQ,MAAM,CAAChB,cAAc,CAACiB,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,CAACV,OAAO,CAAC,CAAC;IAC/D,IAAG;MACDQ,MAAM,GAAG,KAAK,CAACG,OAAO,CAACN,MAAM,EAAE,MAAI,CAAC,CAAC,CAAC;MACtC,IAAI,CAACR,MAAM,CAACS,SAAS,IAAI,IAAI,CAACT,MAAM,CAACS,SAAS,CAAC,IAAI,EAAE,IAAI,CAACN,OAAO,CAAC;MAClEM,SAAS,IAAIA,SAAS,CAAC,IAAI,EAAE,IAAI,CAACN,OAAO,CAAC;MAC1C,IAAI,CAACS,MAAM,CAAChB,cAAc,CAACmB,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAACZ,OAAO,CAAC,CAAC;IAC3D,CAAC,CACD,OAAMa,KAAK,EAAC;MACV,IAAI,CAAChB,MAAM,CAACU,OAAO,IAAI,IAAI,CAACV,MAAM,CAACU,OAAO,CAAC,IAAI,EAAE,IAAI,CAACP,OAAO,CAAC;MAC9DO,OAAO,IAAIA,OAAO,CAAC,IAAI,EAAE,IAAI,CAACP,OAAO,CAAC;MACtC,IAAI,CAACS,MAAM,CAAChB,cAAc,CAACqB,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,CAACd,OAAO,CAAC,CAAC;IACzD;IAEA,IAAI,CAACS,MAAM,CAAChB,cAAc,CAACsB,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,CAACf,OAAO,CAAC,CAAC;IAC9D,OAAOQ,MAAM;EACf;EAEAQ,mBAAmBA,CAAA,EAAG;IACpB,MAAMC,MAAM,GAAG,IAAI,CAACpB,MAAM,CAACI,aAAa,CAAC,CAAC;IAC1C,IAAI,CAACT,OAAO,CAAC,IAAI,CAAC0B,UAAU,EAAED,MAAM,CAAC,EAAE;MACnC,IAAI,CAACb,MAAM,CAAC,CAAC;MACb,IAAI,CAACc,UAAU,GAAG3B,KAAK,CAAC0B,MAAM,CAAC;IACnC;IACA,OAAOE,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;EAC9B;AACF"}
|