@wavemaker/app-rn-runtime 11.7.0-patch.1 → 11.7.0-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.
Files changed (37) hide show
  1. package/components/basic/progress-bar/progress-bar.component.js +23 -1
  2. package/components/basic/progress-bar/progress-bar.component.js.map +1 -1
  3. package/components/basic/search/search.component.js +6 -4
  4. package/components/basic/search/search.component.js.map +1 -1
  5. package/components/container/tabs/tabheader/tabheader.component.js +5 -1
  6. package/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
  7. package/components/container/tabs/tabheader/tabheader.styles.js +1 -1
  8. package/components/container/tabs/tabheader/tabheader.styles.js.map +1 -1
  9. package/components/container/tabs/tabs.component.js +11 -7
  10. package/components/container/tabs/tabs.component.js.map +1 -1
  11. package/components/container/wizard/wizard.component.js +1 -1
  12. package/components/container/wizard/wizard.component.js.map +1 -1
  13. package/components/container/wizard/wizard.props.js +1 -0
  14. package/components/container/wizard/wizard.props.js.map +1 -1
  15. package/components/data/form/form.props.js +1 -0
  16. package/components/data/form/form.props.js.map +1 -1
  17. package/components/data/list/list.component.js +10 -1
  18. package/components/data/list/list.component.js.map +1 -1
  19. package/components/data/list/list.styles.js +2 -0
  20. package/components/data/list/list.styles.js.map +1 -1
  21. package/components/data/liveform/liveform.component.js +2 -2
  22. package/components/data/liveform/liveform.component.js.map +1 -1
  23. package/components/input/checkboxset/checkboxset.component.js +13 -4
  24. package/components/input/checkboxset/checkboxset.component.js.map +1 -1
  25. package/components/input/checkboxset/checkboxset.props.js +6 -0
  26. package/components/input/checkboxset/checkboxset.props.js.map +1 -1
  27. package/components/input/checkboxset/checkboxset.styles.js +1 -0
  28. package/components/input/checkboxset/checkboxset.styles.js.map +1 -1
  29. package/components/input/switch/switch.styles.js +1 -1
  30. package/components/input/switch/switch.styles.js.map +1 -1
  31. package/components/page/tabbar/tabbar.component.js +1 -1
  32. package/components/page/tabbar/tabbar.component.js.map +1 -1
  33. package/core/utils.js +53 -0
  34. package/core/utils.js.map +1 -1
  35. package/package.json +2 -2
  36. package/runtime/App.js +4 -4
  37. package/runtime/App.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["React","Text","View","TouchableOpacity","find","forEach","isEqual","isEmpty","ScrollView","WmCheckboxsetProps","DEFAULT_CLASS","BaseDatasetComponent","BaseDatasetState","WmIcon","AccessibilityWidgetType","getAccessibilityProps","WmCheckboxsetState","constructor","arguments","_defineProperty","WmCheckboxset","props","onPress","item","invokeEventCallback","proxy","state","disabled","readonly","selected","selectedValue","selectedItem","dataItems","d","key","oldValue","datavalue","push","datafield","validate","updateState","computeDisplayValue","undefined","renderChild","index","displayText","displayexp","displayfield","createElement","_extends","getTestPropsForAction","style","styles","bind","CHECKBOX","checked","accessibilityRole","accessibilityLabel","iconclass","checkicon","uncheckicon","template","renderitempartial","dataObject","getTestPropsForLabel","text","displayValue","filter","map","updateDatavalue","value","Promise","resolve","setTemplate","partialName","renderGroupby","groupedData","length","groupObj","groupHeaderTitle","renderCheckboxses","data","items","renderWidget","root","horizontal","groupby"],"sources":["checkboxset.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View, TouchableOpacity } from 'react-native';\nimport { find, forEach, isEqual, isEmpty } from 'lodash';\nimport { Checkbox } from 'react-native-paper';\nimport { ScrollView } from 'react-native-gesture-handler';\nimport WmCheckboxsetProps from './checkboxset.props';\nimport {\n DEFAULT_CLASS,\n \n WmCheckboxsetStyles,\n} from './checkboxset.styles';\nimport {\n BaseDatasetComponent,\n BaseDatasetState,\n} from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \n\nexport class WmCheckboxsetState extends BaseDatasetState<WmCheckboxsetProps> {\n isValid: boolean = true;\n template: string = \"\";\n}\n\nexport default class WmCheckboxset extends BaseDatasetComponent<WmCheckboxsetProps, WmCheckboxsetState, WmCheckboxsetStyles> {\n constructor(props: WmCheckboxsetProps) {\n super(props, DEFAULT_CLASS, new WmCheckboxsetProps());\n }\n\n onPress(item: any) {\n this.invokeEventCallback('onTap', [null, this.proxy]);\n if (this.state.props.disabled || this.state.props.readonly) {\n return;\n }\n item.selected = !item.selected;\n const selectedValue: any = [];\n const selectedItem = find(this.state.dataItems, d => isEqual(d.key, item.key));\n const oldValue = this.state.props.datavalue;\n selectedItem.selected = item.selected;\n forEach(this.state.dataItems, (item) => {\n if (item.selected) {\n selectedValue.push(item.datafield);\n }\n });\n this.validate(selectedValue);\n this.updateState({ props: { datavalue: selectedValue }} as WmCheckboxsetState,\n () => {\n this.computeDisplayValue();\n this.invokeEventCallback('onChange', [ undefined, this.proxy, selectedValue, oldValue ]);\n });\n }\n\n renderChild(item: any, index: any) {\n const props = this.state.props;\n const displayText = item.displayexp || item.displayfield;\n return (\n <TouchableOpacity {...this.getTestPropsForAction(index + '')}\n style={this.styles.item}\n onPress={this.onPress.bind(this, item)} key={item.key} {...getAccessibilityProps(AccessibilityWidgetType.CHECKBOX, {...props, checked: item.selected})} accessibilityRole='checkbox' accessibilityLabel={`Checkbox for ${displayText}`}>\n <WmIcon iconclass=\"wi wi-check\" styles={item.selected? this.styles.checkicon : this.styles.uncheckicon} disabled={props.readonly || props.disabled}/>\n {!isEmpty(this.state.template) && this.props.renderitempartial ?\n this.props.renderitempartial(item.dataObject, index, this.state.template) :\n <Text {...this.getTestPropsForLabel(index + '')} style={this.styles.text}>{displayText}</Text>}\n </TouchableOpacity>)\n }\n\n computeDisplayValue() {\n this.updateState({\n props: {\n displayValue: ((this.state.dataItems || [] as any)\n .filter((item: any) => item.selected)\n .map((item: any) => item.displayexp || item.displayfield)) || ''\n }\n } as WmCheckboxsetState);\n }\n\n updateDatavalue(value: any) {\n this.updateState({ props: { datavalue: value }} as WmCheckboxsetState);\n return Promise.resolve();\n }\n\n setTemplate(partialName: any) {\n this.updateState({ template: partialName} as WmCheckboxsetState);\n }\n\n renderGroupby() {\n const groupedData = this.state.groupedData;\n return (\n <View>\n {groupedData && groupedData.length\n ? groupedData.map((groupObj: any, index: any) => {\n return(\n <View key={groupObj.key}>\n <Text style={this.styles.groupHeaderTitle}>{groupObj.key}</Text>\n {this.renderCheckboxses(groupObj.data)}\n </View>)\n })\n : null}\n </View>\n );\n }\n\n renderCheckboxses(items: any) {\n const props = this.state.props;\n return(<View>\n {items && items.length\n ? items.map((item: any, index: any) => this.renderChild(item, index))\n : null}\n </View>)\n }\n renderWidget(props: WmCheckboxsetProps) {\n const items = this.state.dataItems;\n return (\n <ScrollView style={this.styles.root}>\n <ScrollView horizontal={true}>\n {props.groupby && this.renderGroupby()}\n {!props.groupby && this.renderCheckboxses(items)}\n </ScrollView>\n </ScrollView>\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","Text","View","TouchableOpacity","find","forEach","isEqual","isEmpty","ScrollView","WmCheckboxsetProps","DEFAULT_CLASS","BaseDatasetComponent","BaseDatasetState","WmIcon","AccessibilityWidgetType","getAccessibilityProps","WmCheckboxsetState","constructor","arguments","_defineProperty","WmCheckboxset","props","onPress","item","invokeEventCallback","proxy","state","disabled","readonly","selected","selectedValue","selectedItem","dataItems","d","key","oldValue","datavalue","push","datafield","validate","updateState","computeDisplayValue","undefined","renderChild","index","colWidth","displayText","displayexp","displayfield","createElement","_extends","getTestPropsForAction","style","styles","width","bind","CHECKBOX","checked","accessibilityRole","accessibilityLabel","iconclass","checkicon","uncheckicon","template","renderitempartial","dataObject","getTestPropsForLabel","text","displayValue","filter","map","updateDatavalue","value","Promise","resolve","setTemplate","partialName","renderGroupby","groupedData","length","groupObj","groupHeaderTitle","renderCheckboxses","data","items","noOfColumns","itemsperrow","xs","Math","round","flexWrap","flexDirection","renderWidget","contentContainerStyle","root","horizontal","groupby"],"sources":["checkboxset.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View, TouchableOpacity, DimensionValue } from 'react-native';\nimport { find, forEach, isEqual, isEmpty } from 'lodash';\nimport { Checkbox } from 'react-native-paper';\nimport { ScrollView } from 'react-native-gesture-handler';\nimport WmCheckboxsetProps from './checkboxset.props';\nimport {\n DEFAULT_CLASS,\n \n WmCheckboxsetStyles,\n} from './checkboxset.styles';\nimport {\n BaseDatasetComponent,\n BaseDatasetState,\n} from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \n\nexport class WmCheckboxsetState extends BaseDatasetState<WmCheckboxsetProps> {\n isValid: boolean = true;\n template: string = \"\";\n}\n\nexport default class WmCheckboxset extends BaseDatasetComponent<WmCheckboxsetProps, WmCheckboxsetState, WmCheckboxsetStyles> {\n constructor(props: WmCheckboxsetProps) {\n super(props, DEFAULT_CLASS, new WmCheckboxsetProps());\n }\n\n onPress(item: any) {\n this.invokeEventCallback('onTap', [null, this.proxy]);\n if (this.state.props.disabled || this.state.props.readonly) {\n return;\n }\n item.selected = !item.selected;\n const selectedValue: any = [];\n const selectedItem = find(this.state.dataItems, d => isEqual(d.key, item.key));\n const oldValue = this.state.props.datavalue;\n selectedItem.selected = item.selected;\n forEach(this.state.dataItems, (item) => {\n if (item.selected) {\n selectedValue.push(item.datafield);\n }\n });\n this.validate(selectedValue);\n this.updateState({ props: { datavalue: selectedValue }} as WmCheckboxsetState,\n () => {\n this.computeDisplayValue();\n this.invokeEventCallback('onChange', [ undefined, this.proxy, selectedValue, oldValue ]);\n });\n }\n\n renderChild(item: any, index: any,colWidth: DimensionValue) {\n const props = this.state.props;\n const displayText = item.displayexp || item.displayfield;\n return (\n <TouchableOpacity {...this.getTestPropsForAction(index + '')}\n style={[this.styles.item, {width: colWidth}]}\n onPress={this.onPress.bind(this, item)} key={item.key} {...getAccessibilityProps(AccessibilityWidgetType.CHECKBOX, {...props, checked: item.selected})} accessibilityRole='checkbox' accessibilityLabel={`Checkbox for ${displayText}`}>\n <WmIcon iconclass=\"wi wi-check\" styles={item.selected? this.styles.checkicon : this.styles.uncheckicon} disabled={props.readonly || props.disabled}/>\n {!isEmpty(this.state.template) && this.props.renderitempartial ?\n this.props.renderitempartial(item.dataObject, index, this.state.template) :\n <Text {...this.getTestPropsForLabel(index + '')} style={this.styles.text}>{displayText}</Text>}\n </TouchableOpacity>)\n }\n\n computeDisplayValue() {\n this.updateState({\n props: {\n displayValue: ((this.state.dataItems || [] as any)\n .filter((item: any) => item.selected)\n .map((item: any) => item.displayexp || item.displayfield)) || ''\n }\n } as WmCheckboxsetState);\n }\n\n updateDatavalue(value: any) {\n this.updateState({ props: { datavalue: value }} as WmCheckboxsetState);\n return Promise.resolve();\n }\n\n setTemplate(partialName: any) {\n this.updateState({ template: partialName} as WmCheckboxsetState);\n }\n\n renderGroupby() {\n const groupedData = this.state.groupedData;\n return (\n <View>\n {groupedData && groupedData.length\n ? groupedData.map((groupObj: any, index: any) => {\n return(\n <View key={groupObj.key}>\n <Text style={this.styles.groupHeaderTitle}>{groupObj.key}</Text>\n {this.renderCheckboxses(groupObj.data)}\n </View>)\n })\n : null}\n </View>\n );\n }\n\n renderCheckboxses(items: any) {\n const props = this.state.props;\n const noOfColumns = props.itemsperrow.xs || 1;\n const colWidth = Math.round(100/ noOfColumns) + '%' as DimensionValue;\n return(<View style = {{flexWrap: 'wrap', flexDirection: 'row'}}>\n {items && items.length\n ? items.map((item: any, index: any) => this.renderChild(item, index, colWidth))\n : null}\n </View>)\n }\n renderWidget(props: WmCheckboxsetProps) {\n const items = this.state.dataItems;\n return (\n <ScrollView contentContainerStyle={this.styles.root}>\n <ScrollView horizontal={true}>\n {props.groupby && this.renderGroupby()}\n {!props.groupby && this.renderCheckboxses(items)}\n </ScrollView>\n </ScrollView>\n );\n }\n}\n"],"mappings":"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"}
@@ -8,6 +8,12 @@ export default class WmCheckboxsetProps extends BaseDatasetProps {
8
8
  _defineProperty(this, "dataset", 'Option 1, Option 2, Option 3');
9
9
  _defineProperty(this, "displayValue", '');
10
10
  _defineProperty(this, "required", false);
11
+ _defineProperty(this, "itemsperrow", {
12
+ xs: 1,
13
+ sm: 1,
14
+ md: 1,
15
+ lg: 1
16
+ });
11
17
  _defineProperty(this, "renderitempartial", void 0);
12
18
  }
13
19
  }
@@ -1 +1 @@
1
- {"version":3,"names":["BaseDatasetProps","WmCheckboxsetProps","constructor","arguments","_defineProperty"],"sources":["checkboxset.props.ts"],"sourcesContent":["import BaseDatasetProps from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.props';\n\nexport default class WmCheckboxsetProps extends BaseDatasetProps {\n dataset: any = 'Option 1, Option 2, Option 3';\n displayValue: any = '';\n required: boolean = false;\n renderitempartial?: (item: any, index: number, partialName: string)=> React.ReactNode;\n}\n"],"mappings":";;;AAAA,OAAOA,gBAAgB,MAAM,0EAA0E;AAEvG,eAAe,MAAMC,kBAAkB,SAASD,gBAAgB,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,kBAChD,8BAA8B;IAAAA,eAAA,uBACzB,EAAE;IAAAA,eAAA,mBACF,KAAK;IAAAA,eAAA;EAAA;AAE3B"}
1
+ {"version":3,"names":["BaseDatasetProps","WmCheckboxsetProps","constructor","arguments","_defineProperty","xs","sm","md","lg"],"sources":["checkboxset.props.ts"],"sourcesContent":["import BaseDatasetProps from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.props';\n\nexport default class WmCheckboxsetProps extends BaseDatasetProps {\n dataset: any = 'Option 1, Option 2, Option 3';\n displayValue: any = '';\n required: boolean = false;\n itemsperrow = {\n xs: 1,\n sm: 1,\n md: 1,\n lg: 1,\n };\n renderitempartial?: (item: any, index: number, partialName: string)=> React.ReactNode;\n}\n"],"mappings":";;;AAAA,OAAOA,gBAAgB,MAAM,0EAA0E;AAEvG,eAAe,MAAMC,kBAAkB,SAASD,gBAAgB,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,kBAChD,8BAA8B;IAAAA,eAAA,uBACzB,EAAE;IAAAA,eAAA,mBACF,KAAK;IAAAA,eAAA,sBACV;MACbC,EAAE,EAAE,CAAC;MACLC,EAAE,EAAE,CAAC;MACLC,EAAE,EAAE,CAAC;MACLC,EAAE,EAAE;IACP,CAAC;IAAAJ,eAAA;EAAA;AAEF"}
@@ -22,6 +22,7 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
22
22
  item: {
23
23
  flexDirection: 'row',
24
24
  alignContent: 'center',
25
+ marginRight: -20,
25
26
  marginTop: 8
26
27
  },
27
28
  skeleton: {
@@ -1 +1 @@
1
- {"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","text","alignSelf","fontFamily","baseFont","fontSize","color","labelDefaultColor","marginLeft","groupHeaderTitle","backgroundColor","groupHeadingBgColor","paddingLeft","paddingRight","lineHeight","item","flexDirection","alignContent","marginTop","skeleton","width","height","checkicon","borderRadius","primaryColor","justifyContent","alignItems","borderColor","checkedBorderColor","icon","checkedIconColor","padding","uncheckicon","borderWidth","uncheckedBorderColor","opacity","checkedDisabledColor"],"sources":["checkboxset.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 { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\nimport { WmIconStyles } from '../../basic/icon/icon.styles';\n\nexport type WmCheckboxsetStyles = BaseStyles & {\n groupHeaderTitle: AllStyle;\n item: AllStyle;\n skeleton: WmSkeletonStyles;\n checkicon: WmIconStyles;\n uncheckicon: WmIconStyles;\n};\n\nexport const DEFAULT_CLASS = 'app-checkboxset';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmCheckboxsetStyles = defineStyles({\n root: {},\n text: {\n alignSelf: 'center',\n fontFamily: themeVariables.baseFont,\n fontSize: 16,\n color: themeVariables.labelDefaultColor,\n marginLeft: 8,\n },\n groupHeaderTitle: {\n backgroundColor: themeVariables.groupHeadingBgColor,\n fontSize: 16,\n paddingLeft: 8,\n paddingRight: 8,\n lineHeight: 40,\n fontFamily: themeVariables.baseFont\n } as AllStyle,\n item: {\n flexDirection: 'row',\n alignContent: 'center',\n marginTop: 8\n } as AllStyle,\n skeleton: {\n root: {\n width: '100%',\n height: 16\n }\n } as any as WmSkeletonStyles,\n checkicon : {\n root: {\n width: 20,\n height: 20,\n borderRadius: 4,\n backgroundColor: themeVariables.primaryColor,\n justifyContent: 'center',\n alignItems: 'center',\n borderColor: themeVariables.checkedBorderColor,\n },\n text: {\n fontSize: 18,\n },\n icon : {\n color: themeVariables.checkedIconColor,\n padding: 0\n }\n } as WmIconStyles,\n uncheckicon : {\n root: {\n width: 20,\n height: 20,\n borderWidth: 2,\n borderRadius: 4,\n borderColor: themeVariables.uncheckedBorderColor,\n },\n text: {},\n icon : {\n color: 'transparent',\n }\n } as WmIconStyles,\n });\n\n addStyle(DEFAULT_CLASS + '-disabled', '', {\n root: {\n opacity: 0.8\n },\n text : {\n color: themeVariables.checkedDisabledColor\n }\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n});\n"],"mappings":"AAAA,OAAOA,UAAU,MAAoB,wCAAwC;AAC7E,SAAqBC,YAAY,QAAQ,+CAA+C;AAYxF,OAAO,MAAMC,aAAa,GAAG,iBAAiB;AAC9CF,UAAU,CAACG,aAAa,CAAC,CAACC,cAAc,EAAEC,QAAQ,KAAK;EACrD,MAAMC,aAAkC,GAAGL,YAAY,CAAC;IACpDM,IAAI,EAAE,CAAC,CAAC;IACRC,IAAI,EAAE;MACJC,SAAS,EAAE,QAAQ;MACnBC,UAAU,EAAEN,cAAc,CAACO,QAAQ;MACnCC,QAAQ,EAAE,EAAE;MACZC,KAAK,EAAET,cAAc,CAACU,iBAAiB;MACvCC,UAAU,EAAE;IACd,CAAC;IACHC,gBAAgB,EAAE;MAChBC,eAAe,EAAEb,cAAc,CAACc,mBAAmB;MACnDN,QAAQ,EAAE,EAAE;MACZO,WAAW,EAAE,CAAC;MACdC,YAAY,EAAE,CAAC;MACfC,UAAU,EAAE,EAAE;MACdX,UAAU,EAAEN,cAAc,CAACO;IAC7B,CAAa;IACbW,IAAI,EAAE;MACJC,aAAa,EAAE,KAAK;MACpBC,YAAY,EAAE,QAAQ;MACtBC,SAAS,EAAE;IACb,CAAa;IACbC,QAAQ,EAAE;MACRnB,IAAI,EAAE;QACJoB,KAAK,EAAE,MAAM;QACbC,MAAM,EAAE;MACV;IACF,CAA4B;IAC5BC,SAAS,EAAG;MACVtB,IAAI,EAAE;QACJoB,KAAK,EAAE,EAAE;QACTC,MAAM,EAAE,EAAE;QACVE,YAAY,EAAE,CAAC;QACfb,eAAe,EAAEb,cAAc,CAAC2B,YAAY;QAC5CC,cAAc,EAAE,QAAQ;QACxBC,UAAU,EAAE,QAAQ;QACpBC,WAAW,EAAE9B,cAAc,CAAC+B;MAC9B,CAAC;MACD3B,IAAI,EAAE;QACJI,QAAQ,EAAE;MACZ,CAAC;MACDwB,IAAI,EAAG;QACLvB,KAAK,EAAET,cAAc,CAACiC,gBAAgB;QACtCC,OAAO,EAAE;MACX;IACJ,CAAiB;IACfC,WAAW,EAAG;MACZhC,IAAI,EAAE;QACJoB,KAAK,EAAE,EAAE;QACTC,MAAM,EAAE,EAAE;QACVY,WAAW,EAAE,CAAC;QACdV,YAAY,EAAE,CAAC;QACfI,WAAW,EAAE9B,cAAc,CAACqC;MAC9B,CAAC;MACDjC,IAAI,EAAE,CAAC,CAAC;MACR4B,IAAI,EAAG;QACLvB,KAAK,EAAE;MACT;IACJ;EACA,CAAC,CAAC;EAEFR,QAAQ,CAACH,aAAa,GAAG,WAAW,EAAE,EAAE,EAAE;IACxCK,IAAI,EAAE;MACJmC,OAAO,EAAE;IACX,CAAC;IACDlC,IAAI,EAAG;MACLK,KAAK,EAAET,cAAc,CAACuC;IACxB;EACF,CAAC,CAAC;EAEFtC,QAAQ,CAACH,aAAa,EAAE,EAAE,EAAEI,aAAa,CAAC;AAC5C,CAAC,CAAC"}
1
+ {"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","text","alignSelf","fontFamily","baseFont","fontSize","color","labelDefaultColor","marginLeft","groupHeaderTitle","backgroundColor","groupHeadingBgColor","paddingLeft","paddingRight","lineHeight","item","flexDirection","alignContent","marginRight","marginTop","skeleton","width","height","checkicon","borderRadius","primaryColor","justifyContent","alignItems","borderColor","checkedBorderColor","icon","checkedIconColor","padding","uncheckicon","borderWidth","uncheckedBorderColor","opacity","checkedDisabledColor"],"sources":["checkboxset.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 { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\nimport { WmIconStyles } from '../../basic/icon/icon.styles';\n\nexport type WmCheckboxsetStyles = BaseStyles & {\n groupHeaderTitle: AllStyle;\n item: AllStyle;\n skeleton: WmSkeletonStyles;\n checkicon: WmIconStyles;\n uncheckicon: WmIconStyles;\n};\n\nexport const DEFAULT_CLASS = 'app-checkboxset';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmCheckboxsetStyles = defineStyles({\n root: {},\n text: {\n alignSelf: 'center',\n fontFamily: themeVariables.baseFont,\n fontSize: 16,\n color: themeVariables.labelDefaultColor,\n marginLeft: 8,\n },\n groupHeaderTitle: {\n backgroundColor: themeVariables.groupHeadingBgColor,\n fontSize: 16,\n paddingLeft: 8,\n paddingRight: 8,\n lineHeight: 40,\n fontFamily: themeVariables.baseFont\n } as AllStyle,\n item: {\n flexDirection: 'row',\n alignContent: 'center',\n marginRight: -20,\n marginTop: 8\n } as AllStyle,\n skeleton: {\n root: {\n width: '100%',\n height: 16\n }\n } as any as WmSkeletonStyles,\n checkicon : {\n root: {\n width: 20,\n height: 20,\n borderRadius: 4,\n backgroundColor: themeVariables.primaryColor,\n justifyContent: 'center',\n alignItems: 'center',\n borderColor: themeVariables.checkedBorderColor,\n },\n text: {\n fontSize: 18,\n },\n icon : {\n color: themeVariables.checkedIconColor,\n padding: 0\n }\n } as WmIconStyles,\n uncheckicon : {\n root: {\n width: 20,\n height: 20,\n borderWidth: 2,\n borderRadius: 4,\n borderColor: themeVariables.uncheckedBorderColor,\n },\n text: {},\n icon : {\n color: 'transparent',\n }\n } as WmIconStyles,\n });\n\n addStyle(DEFAULT_CLASS + '-disabled', '', {\n root: {\n opacity: 0.8\n },\n text : {\n color: themeVariables.checkedDisabledColor\n }\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n});\n"],"mappings":"AAAA,OAAOA,UAAU,MAAoB,wCAAwC;AAC7E,SAAqBC,YAAY,QAAQ,+CAA+C;AAYxF,OAAO,MAAMC,aAAa,GAAG,iBAAiB;AAC9CF,UAAU,CAACG,aAAa,CAAC,CAACC,cAAc,EAAEC,QAAQ,KAAK;EACrD,MAAMC,aAAkC,GAAGL,YAAY,CAAC;IACpDM,IAAI,EAAE,CAAC,CAAC;IACRC,IAAI,EAAE;MACJC,SAAS,EAAE,QAAQ;MACnBC,UAAU,EAAEN,cAAc,CAACO,QAAQ;MACnCC,QAAQ,EAAE,EAAE;MACZC,KAAK,EAAET,cAAc,CAACU,iBAAiB;MACvCC,UAAU,EAAE;IACd,CAAC;IACHC,gBAAgB,EAAE;MAChBC,eAAe,EAAEb,cAAc,CAACc,mBAAmB;MACnDN,QAAQ,EAAE,EAAE;MACZO,WAAW,EAAE,CAAC;MACdC,YAAY,EAAE,CAAC;MACfC,UAAU,EAAE,EAAE;MACdX,UAAU,EAAEN,cAAc,CAACO;IAC7B,CAAa;IACbW,IAAI,EAAE;MACJC,aAAa,EAAE,KAAK;MACpBC,YAAY,EAAE,QAAQ;MACtBC,WAAW,EAAE,CAAC,EAAE;MAChBC,SAAS,EAAE;IACb,CAAa;IACbC,QAAQ,EAAE;MACRpB,IAAI,EAAE;QACJqB,KAAK,EAAE,MAAM;QACbC,MAAM,EAAE;MACV;IACF,CAA4B;IAC5BC,SAAS,EAAG;MACVvB,IAAI,EAAE;QACJqB,KAAK,EAAE,EAAE;QACTC,MAAM,EAAE,EAAE;QACVE,YAAY,EAAE,CAAC;QACfd,eAAe,EAAEb,cAAc,CAAC4B,YAAY;QAC5CC,cAAc,EAAE,QAAQ;QACxBC,UAAU,EAAE,QAAQ;QACpBC,WAAW,EAAE/B,cAAc,CAACgC;MAC9B,CAAC;MACD5B,IAAI,EAAE;QACJI,QAAQ,EAAE;MACZ,CAAC;MACDyB,IAAI,EAAG;QACLxB,KAAK,EAAET,cAAc,CAACkC,gBAAgB;QACtCC,OAAO,EAAE;MACX;IACJ,CAAiB;IACfC,WAAW,EAAG;MACZjC,IAAI,EAAE;QACJqB,KAAK,EAAE,EAAE;QACTC,MAAM,EAAE,EAAE;QACVY,WAAW,EAAE,CAAC;QACdV,YAAY,EAAE,CAAC;QACfI,WAAW,EAAE/B,cAAc,CAACsC;MAC9B,CAAC;MACDlC,IAAI,EAAE,CAAC,CAAC;MACR6B,IAAI,EAAG;QACLxB,KAAK,EAAE;MACT;IACJ;EACA,CAAC,CAAC;EAEFR,QAAQ,CAACH,aAAa,GAAG,WAAW,EAAE,EAAE,EAAE;IACxCK,IAAI,EAAE;MACJoC,OAAO,EAAE;IACX,CAAC;IACDnC,IAAI,EAAG;MACLK,KAAK,EAAET,cAAc,CAACwC;IACxB;EACF,CAAC,CAAC;EAEFvC,QAAQ,CAACH,aAAa,EAAE,EAAE,EAAEI,aAAa,CAAC;AAC5C,CAAC,CAAC"}
@@ -30,7 +30,7 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
30
30
  color: themeVariables.switchTextColor,
31
31
  fontSize: 14,
32
32
  minWidth: 64,
33
- minHeight: 40,
33
+ height: 40,
34
34
  paddingLeft: 16,
35
35
  paddingRight: 16,
36
36
  borderTopLeftRadius: 0,
@@ -1 +1 @@
1
- {"version":3,"names":["BASE_THEME","defineStyles","Platform","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","minHeight","padding","flexDirection","text","fontWeight","fontSize","textTransform","loadingIcon","flex","alignSelf","justifyContent","color","listSubTitleColor","button","backgroundColor","switchBgColor","switchTextColor","minWidth","paddingLeft","paddingRight","borderTopLeftRadius","borderBottomLeftRadius","borderBottomRightRadius","borderTopRightRadius","borderColor","switchBorderColor","borderWidth","borderRightWidth","fontFamily","baseFont","alignItems","selectedButton","switchActiveTextColor","switchActiveBgColor","selectedButtonText","firstButton","lastButton","OS","borderLeftWidth"],"sources":["switch.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 \"@wavemaker/app-rn-runtime/components/basic/icon/icon.styles\";\nimport { Platform } from 'react-native';\n\nexport type WmSwitchStyles = BaseStyles & {\n loadingIcon: WmIconStyles,\n button: AllStyle,\n selectedButton: AllStyle,\n selectedButtonText: AllStyle,\n firstButton: AllStyle,\n lastButton: AllStyle\n};\n\nexport const DEFAULT_CLASS = 'app-switch';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmSwitchStyles = defineStyles<WmSwitchStyles>({\n root: {\n minHeight: 24,\n padding: 4,\n flexDirection: 'row'\n },\n text: {\n fontWeight: '500',\n fontSize: 16,\n textTransform: 'uppercase'\n },\n loadingIcon: {\n root: {\n flex: 1,\n alignSelf: 'center',\n justifyContent: 'center',\n fontSize: 16\n },\n text: {\n color: themeVariables.listSubTitleColor\n }\n } as WmIconStyles,\n button: {\n backgroundColor: themeVariables.switchBgColor,\n color: themeVariables.switchTextColor,\n fontSize: 14,\n minWidth: 64,\n minHeight: 40,\n paddingLeft: 16,\n paddingRight: 16,\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n borderTopRightRadius: 0,\n borderColor: themeVariables.switchBorderColor,\n borderWidth: 1,\n borderRightWidth: 0,\n fontWeight: '500',\n fontFamily: themeVariables.baseFont,\n justifyContent: 'center',\n alignItems: 'center'\n } as AllStyle,\n selectedButton: {\n color: themeVariables.switchActiveTextColor,\n backgroundColor: themeVariables.switchActiveBgColor,\n borderColor: themeVariables.switchBorderColor\n } as AllStyle,\n selectedButtonText: {\n fontWeight: '500',\n fontSize: 16,\n textTransform: 'uppercase'\n } as AllStyle,\n firstButton: {\n borderTopLeftRadius: 18,\n borderBottomLeftRadius: 18,\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0\n } as AllStyle,\n lastButton: {\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderTopRightRadius: 18,\n borderBottomRightRadius: 18,\n borderRightWidth: 1\n } as AllStyle\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n addStyle(DEFAULT_CLASS + '-disabled', '', {\n root: {}\n });\n addStyle(DEFAULT_CLASS + '-rtl', '', Platform.OS==\"web\"?{\n firstButton:{\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderTopRightRadius: 6,\n borderBottomRightRadius: 6,\n borderRightWidth: 1,\n borderLeftWidth: 0\n } ,\n lastButton:{\n borderTopLeftRadius: 6,\n borderBottomLeftRadius: 6,\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n borderRightWidth: 0\n }\n }:{});\n addStyle(DEFAULT_CLASS + '1-rtl', '', Platform.OS==\"web\"?{\n firstButton:{\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderTopRightRadius: 500,\n borderBottomRightRadius: 500,\n borderRightWidth: 0,\n borderLeftWidth: 1\n } ,\n lastButton:{\n flex: 1,\n borderTopLeftRadius: 500,\n borderBottomLeftRadius: 500,\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n borderRightWidth: 1\n }\n }:{});\n addStyle(DEFAULT_CLASS + '1', '', {\n firstButton: {\n borderTopLeftRadius: 500,\n borderBottomLeftRadius: 500,\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0\n } as AllStyle,\n lastButton: {\n flex: 1,\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderTopRightRadius: 500,\n borderBottomRightRadius: 500\n } as AllStyle\n } as WmSwitchStyles);\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["BASE_THEME","defineStyles","Platform","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","minHeight","padding","flexDirection","text","fontWeight","fontSize","textTransform","loadingIcon","flex","alignSelf","justifyContent","color","listSubTitleColor","button","backgroundColor","switchBgColor","switchTextColor","minWidth","height","paddingLeft","paddingRight","borderTopLeftRadius","borderBottomLeftRadius","borderBottomRightRadius","borderTopRightRadius","borderColor","switchBorderColor","borderWidth","borderRightWidth","fontFamily","baseFont","alignItems","selectedButton","switchActiveTextColor","switchActiveBgColor","selectedButtonText","firstButton","lastButton","OS","borderLeftWidth"],"sources":["switch.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 \"@wavemaker/app-rn-runtime/components/basic/icon/icon.styles\";\nimport { Platform } from 'react-native';\n\nexport type WmSwitchStyles = BaseStyles & {\n loadingIcon: WmIconStyles,\n button: AllStyle,\n selectedButton: AllStyle,\n selectedButtonText: AllStyle,\n firstButton: AllStyle,\n lastButton: AllStyle\n};\n\nexport const DEFAULT_CLASS = 'app-switch';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmSwitchStyles = defineStyles<WmSwitchStyles>({\n root: {\n minHeight: 24,\n padding: 4,\n flexDirection: 'row'\n },\n text: {\n fontWeight: '500',\n fontSize: 16,\n textTransform: 'uppercase'\n },\n loadingIcon: {\n root: {\n flex: 1,\n alignSelf: 'center',\n justifyContent: 'center',\n fontSize: 16\n },\n text: {\n color: themeVariables.listSubTitleColor\n }\n } as WmIconStyles,\n button: {\n backgroundColor: themeVariables.switchBgColor,\n color: themeVariables.switchTextColor,\n fontSize: 14,\n minWidth: 64,\n height: 40,\n paddingLeft: 16,\n paddingRight: 16,\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n borderTopRightRadius: 0,\n borderColor: themeVariables.switchBorderColor,\n borderWidth: 1,\n borderRightWidth: 0,\n fontWeight: '500',\n fontFamily: themeVariables.baseFont,\n justifyContent: 'center',\n alignItems: 'center'\n } as AllStyle,\n selectedButton: {\n color: themeVariables.switchActiveTextColor,\n backgroundColor: themeVariables.switchActiveBgColor,\n borderColor: themeVariables.switchBorderColor\n } as AllStyle,\n selectedButtonText: {\n fontWeight: '500',\n fontSize: 16,\n textTransform: 'uppercase'\n } as AllStyle,\n firstButton: {\n borderTopLeftRadius: 18,\n borderBottomLeftRadius: 18,\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0\n } as AllStyle,\n lastButton: {\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderTopRightRadius: 18,\n borderBottomRightRadius: 18,\n borderRightWidth: 1\n } as AllStyle\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n addStyle(DEFAULT_CLASS + '-disabled', '', {\n root: {}\n });\n addStyle(DEFAULT_CLASS + '-rtl', '', Platform.OS==\"web\"?{\n firstButton:{\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderTopRightRadius: 6,\n borderBottomRightRadius: 6,\n borderRightWidth: 1,\n borderLeftWidth: 0\n } ,\n lastButton:{\n borderTopLeftRadius: 6,\n borderBottomLeftRadius: 6,\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n borderRightWidth: 0\n }\n }:{});\n addStyle(DEFAULT_CLASS + '1-rtl', '', Platform.OS==\"web\"?{\n firstButton:{\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderTopRightRadius: 500,\n borderBottomRightRadius: 500,\n borderRightWidth: 0,\n borderLeftWidth: 1\n } ,\n lastButton:{\n flex: 1,\n borderTopLeftRadius: 500,\n borderBottomLeftRadius: 500,\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n borderRightWidth: 1\n }\n }:{});\n addStyle(DEFAULT_CLASS + '1', '', {\n firstButton: {\n borderTopLeftRadius: 500,\n borderBottomLeftRadius: 500,\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0\n } as AllStyle,\n lastButton: {\n flex: 1,\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderTopRightRadius: 500,\n borderBottomRightRadius: 500\n } as AllStyle\n } as WmSwitchStyles);\n});\n"],"mappings":"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"}
@@ -71,7 +71,7 @@ export default class WmTabbar extends BaseNavComponent {
71
71
  const tabItems = this.state.dataItems;
72
72
  const tabItemsLength = tabItems.length;
73
73
  const isClippedTabbar = (props.classname || '').indexOf('clipped-tabbar') >= 0 && tabItemsLength % 2 !== 0;
74
- if (tabItemsLength % 2 !== 0) {
74
+ if (isClippedTabbar && tabItemsLength % 2 !== 0) {
75
75
  const middleIndex = Math.floor(tabItemsLength / 2);
76
76
  tabItems[middleIndex]['floating'] = true;
77
77
  tabItems[middleIndex - 1]['indexBeforeMid'] = middleIndex - 1;
@@ -1 +1 @@
1
- {"version":3,"names":["React","Text","View","TouchableOpacity","Dimensions","ThemeProvider","ModalConsumer","WmIcon","NavigationServiceConsumer","BaseNavComponent","BaseNavState","WmTabbarProps","DEFAULT_CLASS","Svg","Path","getPathDown","ThemeVariables","scale","n","WmTabbarState","constructor","arguments","_defineProperty","WmTabbar","props","get","width","renderTabItem","item","testId","onSelect","floating","length","undefined","isActive","getDisplayLabel","getDisplayExpression","label","increasedGap","Number","indexBeforeMid","state","dataItems","classname","indexOf","styles","tabItem","paddingRight","createElement","style","centerHubItem","key","_extends","getTestPropsForAction","onPress","activeTabItem","theme","mergeStyle","tabIcon","centerHubIcon","activeTabIcon","iconclass","icon","tabLabel","centerHubLabel","activeTabLabel","onItemSelect","navigationService","link","openUrl","invokeEventCallback","proxy","prepareModalOptions","content","o","modalOptions","modalStyle","bottom","tabbarHeight","contentStyle","modalContent","renderWidget","max","tabItems","tabItemsLength","isClippedTabbar","middleIndex","Math","floor","returnpathDown","maxWidth","root","height","moreItems","moreItemsCount","ceil","j","i","row","push","zIndex","position","backgroundColor","INSTANCE","transparent","fill","tabbarBackgroundColor","d","Fragment","modalService","showMore","showModal","value","moreMenu","map","a","moreMenuRow","index","hideModal","menu","onLayout","e","nativeEvent","layout","filter","morebuttonlabel","morebuttoniconclass","updateState"],"sources":["tabbar.component.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport { Text, View, TouchableOpacity, Dimensions } from 'react-native';\n\nimport { ThemeProvider } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { ModalConsumer, ModalOptions, ModalService } from '@wavemaker/app-rn-runtime/core/modal.service';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport NavigationService, { NavigationServiceConsumer } from '@wavemaker/app-rn-runtime/core/navigation.service';\nimport { BaseNavProps } from '@wavemaker/app-rn-runtime/components/navigation/basenav/basenav.props';\nimport { BaseNavComponent, BaseNavState, NavigationDataItem } from '@wavemaker/app-rn-runtime/components/navigation/basenav/basenav.component';\n\nimport WmTabbarProps from './tabbar.props';\nimport { DEFAULT_CLASS, WmTabbarStyles } from './tabbar.styles';\nimport Svg, { Path } from 'react-native-svg';\nimport { getPathDown } from './curve';\n// import { scale } from 'react-native-size-scaling';\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\n\ninterface TabDataItem extends NavigationDataItem {\n floating: boolean;\n indexBeforeMid: number;\n}\n\nconst scale = (n: number) => n;\n\nclass WmTabbarState<T extends BaseNavProps> extends BaseNavState<T> {\n showMore = false;\n modalOptions = {} as ModalOptions;\n dataItems: TabDataItem[] = [];\n}\n\nexport default class WmTabbar extends BaseNavComponent<WmTabbarProps, WmTabbarState<WmTabbarProps>, WmTabbarStyles> {\n\n private tabbarHeight = 0;\n\n constructor(props: WmTabbarProps) {\n super(props, DEFAULT_CLASS, new WmTabbarProps(), new WmTabbarState());\n }\n\n private maxWidth = Dimensions.get(\"window\").width; \n private returnpathDown: any;\n\n renderTabItem(item: TabDataItem, testId: string, props: WmTabbarProps, onSelect: Function, floating = false) {\n\n const isActive = props.isActive && props.isActive(item);\n const getDisplayLabel = this.props.getDisplayExpression || ((label: string) => label);\n let increasedGap = Number(testId) === item?.indexBeforeMid && (this.state.dataItems.length % 2!=0) && ((props.classname || '').indexOf('clipped-tabbar') >= 0)\n ? [this.styles.tabItem, { paddingRight: 70 }]\n : [this.styles.tabItem];\n \n return (\n <View style={[increasedGap, floating? this.styles.centerHubItem: {}]} key={`${item.label}_${testId}`}>\n <TouchableOpacity\n {...this.getTestPropsForAction('item' + testId)}\n onPress={() => onSelect && onSelect()}\n key={item.key}\n >\n <View style={[isActive && !floating ? this.styles.activeTabItem : {}]}>\n <WmIcon\n styles={this.theme.mergeStyle({}, this.styles.tabIcon, floating? this.styles.centerHubIcon: {}, isActive ? this.styles.activeTabIcon : {})}\n iconclass={item.icon}\n ></WmIcon>\n </View>\n </TouchableOpacity>\n <Text style={[this.styles.tabLabel, floating? this.styles.centerHubLabel: {}, isActive ? this.styles.activeTabLabel : {}]}>\n {getDisplayLabel(item.label)}\n </Text>\n </View>\n );\n }\n \n onItemSelect(item: NavigationDataItem, navigationService: NavigationService) {\n item.link && navigationService.openUrl(item.link);\n this.invokeEventCallback('onSelect', [null, this.proxy, item]);\n }\n\n prepareModalOptions(content: ReactNode) {\n const o = this.state.modalOptions;\n o.content = content;\n o.modalStyle = {\n bottom: this.tabbarHeight\n };\n o.contentStyle = this.styles.modalContent; \n return o;\n }\n\n renderWidget(props: WmTabbarProps) {\n let max = 5;\n const tabItems = this.state.dataItems;\n const tabItemsLength = tabItems.length;\n const isClippedTabbar = ((props.classname || '').indexOf('clipped-tabbar') >= 0) && (tabItemsLength % 2 !== 0);\n if (tabItemsLength % 2 !== 0) {\n const middleIndex = Math.floor(tabItemsLength / 2);\n tabItems[middleIndex]['floating'] = true;\n tabItems[middleIndex - 1]['indexBeforeMid'] = middleIndex-1;\n }\n this.returnpathDown = getPathDown(this.maxWidth, 65 ,60,this.styles.root.height as number);\n const moreItems = [] as any[][];\n if (tabItems.length > max) {\n const moreItemsCount = Math.ceil((tabItems.length + 1 - max)/ max) * max;\n let j = 0;\n for (let i = max-1; i < moreItemsCount;) {\n const row = [];\n for (let j = 0; j < max; j++) {\n row[j] = tabItems[i++] || {key: 'tabItem' + i} as TabDataItem;\n }\n moreItems.push(row);\n }\n max = max - 1;\n }\n return (\n <NavigationServiceConsumer>\n {(navigationService) =>\n (<View style={this.styles.root}>\n {isClippedTabbar ? (\n <Svg width={this.maxWidth} height={scale(this.styles.root.height as number)} style={{zIndex: -1,position: 'absolute',backgroundColor: ThemeVariables.INSTANCE.transparent}}>\n <Path fill={ThemeVariables.INSTANCE.tabbarBackgroundColor} {...{ d: this.returnpathDown }}/>\n </Svg>\n ): <></>} \n <ModalConsumer>\n {(modalService: ModalService) => {\n if (this.state.showMore) {\n modalService.showModal(this.prepareModalOptions((\n <ThemeProvider value={this.theme} >\n <View style={this.styles.moreMenu}>\n {moreItems.map((a, i) =>\n (<View key={i} style={this.styles.moreMenuRow}>\n {a.map((item, index) => this.renderTabItem(item, i + '', props, () => this.onItemSelect(item, navigationService)))}\n </View>)\n )}\n </View>\n </ThemeProvider>)));\n } else {\n modalService.hideModal(this.state.modalOptions);\n }\n return null;\n }}\n </ModalConsumer>\n <View style={this.styles.menu}\n onLayout={e => { this.tabbarHeight = e.nativeEvent.layout.height}}> \n {tabItems.filter((item, i) => i < max)\n .map((item, i) => this.renderTabItem(item, i + '', props, () => this.onItemSelect(item, navigationService), item.floating))}\n {tabItems.length > max && (\n this.renderTabItem({\n label: props.morebuttonlabel,\n icon: props.morebuttoniconclass\n } as TabDataItem, 6666 +'', props, () => {\n this.updateState({showMore: !this.state.showMore} as WmTabbarState<WmTabbarProps>);\n })\n )}\n </View>\n </View>)}\n </NavigationServiceConsumer>\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","Text","View","TouchableOpacity","Dimensions","ThemeProvider","ModalConsumer","WmIcon","NavigationServiceConsumer","BaseNavComponent","BaseNavState","WmTabbarProps","DEFAULT_CLASS","Svg","Path","getPathDown","ThemeVariables","scale","n","WmTabbarState","constructor","arguments","_defineProperty","WmTabbar","props","get","width","renderTabItem","item","testId","onSelect","floating","length","undefined","isActive","getDisplayLabel","getDisplayExpression","label","increasedGap","Number","indexBeforeMid","state","dataItems","classname","indexOf","styles","tabItem","paddingRight","createElement","style","centerHubItem","key","_extends","getTestPropsForAction","onPress","activeTabItem","theme","mergeStyle","tabIcon","centerHubIcon","activeTabIcon","iconclass","icon","tabLabel","centerHubLabel","activeTabLabel","onItemSelect","navigationService","link","openUrl","invokeEventCallback","proxy","prepareModalOptions","content","o","modalOptions","modalStyle","bottom","tabbarHeight","contentStyle","modalContent","renderWidget","max","tabItems","tabItemsLength","isClippedTabbar","middleIndex","Math","floor","returnpathDown","maxWidth","root","height","moreItems","moreItemsCount","ceil","j","i","row","push","zIndex","position","backgroundColor","INSTANCE","transparent","fill","tabbarBackgroundColor","d","Fragment","modalService","showMore","showModal","value","moreMenu","map","a","moreMenuRow","index","hideModal","menu","onLayout","e","nativeEvent","layout","filter","morebuttonlabel","morebuttoniconclass","updateState"],"sources":["tabbar.component.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport { Text, View, TouchableOpacity, Dimensions } from 'react-native';\n\nimport { ThemeProvider } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { ModalConsumer, ModalOptions, ModalService } from '@wavemaker/app-rn-runtime/core/modal.service';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport NavigationService, { NavigationServiceConsumer } from '@wavemaker/app-rn-runtime/core/navigation.service';\nimport { BaseNavProps } from '@wavemaker/app-rn-runtime/components/navigation/basenav/basenav.props';\nimport { BaseNavComponent, BaseNavState, NavigationDataItem } from '@wavemaker/app-rn-runtime/components/navigation/basenav/basenav.component';\n\nimport WmTabbarProps from './tabbar.props';\nimport { DEFAULT_CLASS, WmTabbarStyles } from './tabbar.styles';\nimport Svg, { Path } from 'react-native-svg';\nimport { getPathDown } from './curve';\n// import { scale } from 'react-native-size-scaling';\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\n\ninterface TabDataItem extends NavigationDataItem {\n floating: boolean;\n indexBeforeMid: number;\n}\n\nconst scale = (n: number) => n;\n\nclass WmTabbarState<T extends BaseNavProps> extends BaseNavState<T> {\n showMore = false;\n modalOptions = {} as ModalOptions;\n dataItems: TabDataItem[] = [];\n}\n\nexport default class WmTabbar extends BaseNavComponent<WmTabbarProps, WmTabbarState<WmTabbarProps>, WmTabbarStyles> {\n\n private tabbarHeight = 0;\n\n constructor(props: WmTabbarProps) {\n super(props, DEFAULT_CLASS, new WmTabbarProps(), new WmTabbarState());\n }\n\n private maxWidth = Dimensions.get(\"window\").width; \n private returnpathDown: any;\n\n renderTabItem(item: TabDataItem, testId: string, props: WmTabbarProps, onSelect: Function, floating = false) {\n\n const isActive = props.isActive && props.isActive(item);\n const getDisplayLabel = this.props.getDisplayExpression || ((label: string) => label);\n let increasedGap = Number(testId) === item?.indexBeforeMid && (this.state.dataItems.length % 2!=0) && ((props.classname || '').indexOf('clipped-tabbar') >= 0)\n ? [this.styles.tabItem, { paddingRight: 70 }]\n : [this.styles.tabItem];\n \n return (\n <View style={[increasedGap, floating? this.styles.centerHubItem: {}]} key={`${item.label}_${testId}`}>\n <TouchableOpacity\n {...this.getTestPropsForAction('item' + testId)}\n onPress={() => onSelect && onSelect()}\n key={item.key}\n >\n <View style={[isActive && !floating ? this.styles.activeTabItem : {}]}>\n <WmIcon\n styles={this.theme.mergeStyle({}, this.styles.tabIcon, floating? this.styles.centerHubIcon: {}, isActive ? this.styles.activeTabIcon : {})}\n iconclass={item.icon}\n ></WmIcon>\n </View>\n </TouchableOpacity>\n <Text style={[this.styles.tabLabel, floating? this.styles.centerHubLabel: {}, isActive ? this.styles.activeTabLabel : {}]}>\n {getDisplayLabel(item.label)}\n </Text>\n </View>\n );\n }\n \n onItemSelect(item: NavigationDataItem, navigationService: NavigationService) {\n item.link && navigationService.openUrl(item.link);\n this.invokeEventCallback('onSelect', [null, this.proxy, item]);\n }\n\n prepareModalOptions(content: ReactNode) {\n const o = this.state.modalOptions;\n o.content = content;\n o.modalStyle = {\n bottom: this.tabbarHeight\n };\n o.contentStyle = this.styles.modalContent; \n return o;\n }\n\n renderWidget(props: WmTabbarProps) {\n let max = 5;\n const tabItems = this.state.dataItems;\n const tabItemsLength = tabItems.length;\n const isClippedTabbar = ((props.classname || '').indexOf('clipped-tabbar') >= 0) && (tabItemsLength % 2 !== 0);\n if (isClippedTabbar && tabItemsLength % 2 !== 0) {\n const middleIndex = Math.floor(tabItemsLength / 2);\n tabItems[middleIndex]['floating'] = true;\n tabItems[middleIndex - 1]['indexBeforeMid'] = middleIndex-1;\n }\n this.returnpathDown = getPathDown(this.maxWidth, 65 ,60,this.styles.root.height as number);\n const moreItems = [] as any[][];\n if (tabItems.length > max) {\n const moreItemsCount = Math.ceil((tabItems.length + 1 - max)/ max) * max;\n let j = 0;\n for (let i = max-1; i < moreItemsCount;) {\n const row = [];\n for (let j = 0; j < max; j++) {\n row[j] = tabItems[i++] || {key: 'tabItem' + i} as TabDataItem;\n }\n moreItems.push(row);\n }\n max = max - 1;\n }\n return (\n <NavigationServiceConsumer>\n {(navigationService) =>\n (<View style={this.styles.root}>\n {isClippedTabbar ? (\n <Svg width={this.maxWidth} height={scale(this.styles.root.height as number)} style={{zIndex: -1,position: 'absolute',backgroundColor: ThemeVariables.INSTANCE.transparent}}>\n <Path fill={ThemeVariables.INSTANCE.tabbarBackgroundColor} {...{ d: this.returnpathDown }}/>\n </Svg>\n ): <></>} \n <ModalConsumer>\n {(modalService: ModalService) => {\n if (this.state.showMore) {\n modalService.showModal(this.prepareModalOptions((\n <ThemeProvider value={this.theme} >\n <View style={this.styles.moreMenu}>\n {moreItems.map((a, i) =>\n (<View key={i} style={this.styles.moreMenuRow}>\n {a.map((item, index) => this.renderTabItem(item, i + '', props, () => this.onItemSelect(item, navigationService)))}\n </View>)\n )}\n </View>\n </ThemeProvider>)));\n } else {\n modalService.hideModal(this.state.modalOptions);\n }\n return null;\n }}\n </ModalConsumer>\n <View style={this.styles.menu}\n onLayout={e => { this.tabbarHeight = e.nativeEvent.layout.height}}> \n {tabItems.filter((item, i) => i < max)\n .map((item, i) => this.renderTabItem(item, i + '', props, () => this.onItemSelect(item, navigationService), item.floating))}\n {tabItems.length > max && (\n this.renderTabItem({\n label: props.morebuttonlabel,\n icon: props.morebuttoniconclass\n } as TabDataItem, 6666 +'', props, () => {\n this.updateState({showMore: !this.state.showMore} as WmTabbarState<WmTabbarProps>);\n })\n )}\n </View>\n </View>)}\n </NavigationServiceConsumer>\n );\n }\n}\n"],"mappings":"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"}
package/core/utils.js CHANGED
@@ -2,6 +2,7 @@ import { Platform } from 'react-native';
2
2
  import moment from "moment";
3
3
  import * as FileSystem from "expo-file-system";
4
4
  import { isFunction, includes, isUndefined, isNull, orderBy, groupBy, toLower, get, forEach, sortBy, cloneDeep, keys, values, isArray, isString, isNumber } from 'lodash';
5
+ import ThemeVariables from '../styles/theme.variables';
5
6
  const GROUP_BY_OPTIONS = {
6
7
  ALPHABET: 'alphabet',
7
8
  WORD: 'word',
@@ -402,4 +403,56 @@ export const getDateTimeObject = (date, month, year, hour, minute) => {
402
403
  // * month is zero-based
403
404
  return new Date(year, month, date, hour, minute);
404
405
  };
406
+ export const getGradientStartEnd = angle => {
407
+ const angleLowerCase = angle === null || angle === void 0 ? void 0 : angle.toLowerCase();
408
+ let start = {
409
+ x: 0,
410
+ y: 1
411
+ };
412
+ let end = {
413
+ x: 1,
414
+ y: 1
415
+ };
416
+ if (angle === '0deg' || angleLowerCase === 'to top') {
417
+ end.x = 0;
418
+ end.y = 0;
419
+ } else if (angle === '90deg' || angleLowerCase === 'to right') {
420
+ start.x = 0;
421
+ } else if (angle === '180deg' || angleLowerCase === 'to bottom') {
422
+ start.y = 0;
423
+ end.x = 0;
424
+ end.y = 1;
425
+ } else if (angle === '270deg' || angleLowerCase === 'to left') {
426
+ start.x = 1;
427
+ end.x = 0;
428
+ } else {
429
+ // other angle
430
+ }
431
+ return {
432
+ start,
433
+ end
434
+ };
435
+ };
436
+ export const parseLinearGradient = gradient => {
437
+ let angle = '',
438
+ color1 = '',
439
+ color2 = '';
440
+ const linearGradientRegex = /linear-gradient\(([^,]+),\s*([^,]+),\s*([^)]+)\)/;
441
+ const hasLinearGradient = linearGradientRegex.test(gradient);
442
+ const matches = gradient === null || gradient === void 0 ? void 0 : gradient.match(linearGradientRegex);
443
+ angle = (matches === null || matches === void 0 ? void 0 : matches[1]) || '90deg';
444
+ const {
445
+ start,
446
+ end
447
+ } = getGradientStartEnd(angle);
448
+ color1 = (matches === null || matches === void 0 ? void 0 : matches[2]) || ThemeVariables.INSTANCE.primaryColor;
449
+ color2 = (matches === null || matches === void 0 ? void 0 : matches[3]) || ThemeVariables.INSTANCE.primaryColor;
450
+ return {
451
+ hasLinearGradient,
452
+ color1,
453
+ color2,
454
+ start,
455
+ end
456
+ };
457
+ };
405
458
  //# sourceMappingURL=utils.js.map
package/core/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","moment","FileSystem","isFunction","includes","isUndefined","isNull","orderBy","groupBy","toLower","get","forEach","sortBy","cloneDeep","keys","values","isArray","isString","isNumber","GROUP_BY_OPTIONS","ALPHABET","WORD","OTHERS","TIME_ROLLUP_OPTIONS","HOUR","DAY","WEEK","MONTH","YEAR","_deepCopy","o1","_len","arguments","length","o2","Array","_key","o","Object","k","v","deepCopy","_len2","objects","_key2","toBoolean","val","undefined","toNumber","parseFloat","e","encodeUrl","url","splits","split","hash","params","map","p","encodeURIComponent","join","encodeURI","isWebPreviewMode","OS","isDevMode","__DEV__","widgetsWithUndefinedValue","isAndroid","test","window","navigator","userAgent","isIos","getGroupKey","fieldDef","groupby","widgetScope","innerItem","apply","proxy","getGroupedData","fieldDefs","match","orderby","dateFormat","groupKey","groupedLiData","concatStr","toString","trim","substr","replace","format","getSortedGroupedData","getOrderedDataset","dataSet","items","fields","directions","obj","item","push","_groupedData","groupkey","index","liData","key","data","_groupIndex","isDefined","unStringify","defaultVal","number","parseInt","isNaN","retryIfFails","fn","interval","maxRetries","onBeforeRetry","Promise","resolve","retryCount","tryFn","reject","errorFn","errArgs","setTimeout","then","retry","getAbortableDefer","_defer","promise","onAbort","isAborted","abort","validateField","props","value","requiredCheck","regexCheck","required","errorType","isValid","regexp","condition","RegExp","maxchars","mindate","Date","datavalue","startOf","toDate","maxdate","endOf","countDecimalDigits","numberString","decimalMatch","decimalDigits","formatCompactNumber","isNegative","formattedNumber","toFixed","toBase64","path","readAsStringAsync","encoding","DATASET_WIDGETS","Set","isDataSetWidget","widget","has","isFullPathUrl","startsWith","removeUndefinedKeys","getDaysInMonth","month","year","getDate","getDates","getFullYear","daysInMonth","dates","from","i","monthNames","getMonths","months","name","substring","getYearRange","startYear","endYear","years","getDateObject","date","getHours","hours","hour","paddedHour","String","padStart","get24Hours","getMinutes","minutes","minute","paddedMinute","getTimeIndicators","getDateTimeObject"],"sources":["utils.ts"],"sourcesContent":["import { Platform } from 'react-native';\nimport moment from \"moment\";\nimport * as FileSystem from \"expo-file-system\";\nimport { isFunction, includes, isUndefined, isNull, orderBy, groupBy, toLower, get, forEach, sortBy, cloneDeep, keys, values, isArray, isString, isNumber} from 'lodash';\n\ndeclare const window: any;\nconst GROUP_BY_OPTIONS = {\n ALPHABET: 'alphabet',\n WORD: 'word',\n OTHERS: 'Others'\n};\nconst TIME_ROLLUP_OPTIONS = {\n HOUR: 'hour',\n DAY: 'day',\n WEEK: 'week',\n MONTH: 'month',\n YEAR: 'year'\n};\n\nconst _deepCopy = (o1: any, ...o2: any) => {\n o2.forEach((o: any) => {\n if (o) {\n Object.keys(o).forEach(k => {\n const v = o[k];\n if (v && !isString(v) && !isArray(v) && typeof v === 'object') {\n o1[k] = _deepCopy(o1[k] || {}, o[k]);\n } else {\n o1[k] = _deepCopy(v);\n }\n });\n }\n });\n return o1;\n};\n\nexport const deepCopy = (...objects: any) => _deepCopy({}, ...objects);\n\nexport const toBoolean = (val: any) => {\n return val === true\n || val === 'true'\n || !(val === false\n || val === null\n || val === undefined\n || val === '');\n};\n\nexport const toNumber = (val: any) => {\n try {\n return parseFloat(val) || 0;\n } catch(e) {\n return 0;\n }\n};\n\n/**\n * this method encodes the url and returns the encoded string\n */\n export const encodeUrl = (url: string): string => {\n let splits = url.split('#');\n const hash = splits[1];\n splits = splits[0].split('?');\n let params = '';\n if (splits.length > 1) {\n params = splits[1].split('&')\n .map(p => p.split('='))\n .map(p => p[0] +'=' + encodeURIComponent(p[1]))\n .join('&');\n }\n return encodeURI(splits[0]) + (params ? '?' + params: '') + (hash ? '#'+ hash : '');\n};\n\nexport const isWebPreviewMode = () => Platform.OS === 'web';\n\nexport const isDevMode = () => isWebPreviewMode() || __DEV__;\n\nexport const widgetsWithUndefinedValue = ['checkbox', 'toggle'];\n\nexport const isAndroid = () => (Platform.OS === 'android' || (Platform.OS === 'web' && /android/i.test(window.navigator.userAgent)));\n\nexport const isIos = () => (Platform.OS === 'ios' || (Platform.OS === 'web' && /iPhone|iPad/i.test(window.navigator.userAgent)));\n\nconst getGroupKey = (fieldDef: any, groupby: string, widgetScope: any, innerItem?: any) => isFunction(groupby) ? groupby.apply(widgetScope.proxy, [innerItem ? fieldDef[innerItem] : fieldDef]) : get(innerItem ? fieldDef[innerItem] : fieldDef, groupby);\n\n/**\n * This method prepares the grouped data.\n *\n * @param fieldDefs array of objects i.e. dataset\n * @param groupby string groupby\n * @param match string match\n * @param orderby string orderby\n * @param dateFormat string date format\n */\nexport const getGroupedData = (fieldDefs: any, groupby: string, match: string, orderby: string, dateFormat: string, widgetScope: any, innerItem?: any) => {\n\n // handling case-in-sensitive scenario\n // ordering the data based on groupby field. If there is innerItem then apply orderby using the innerItem's containing the groupby field.\n fieldDefs = orderBy(fieldDefs, fieldDef => {\n const groupKey = getGroupKey(fieldDef, groupby, widgetScope, innerItem);\n if (groupKey) {\n return toLower(groupKey);\n }\n return '';\n });\n\n // extract the grouped data based on the field obtained from 'groupDataByField'.\n const groupedLiData = groupBy(fieldDefs, function (fieldDef) {\n let concatStr = getGroupKey(fieldDef, groupby, widgetScope, innerItem);\n // by default set the undefined groupKey as 'others'\n if (isUndefined(concatStr) || isNull(concatStr) || concatStr.toString().trim() === '') {\n return GROUP_BY_OPTIONS.OTHERS;\n }\n // if match prop is alphabetic ,get the starting alphabet of the word as key.\n if (match === GROUP_BY_OPTIONS.ALPHABET) {\n concatStr = concatStr.substr(0, 1);\n }\n\n // if match contains the time options then get the concatStr using 'getTimeRolledUpString'\n if (includes(values(TIME_ROLLUP_OPTIONS), match)) {\n dateFormat = dateFormat && dateFormat.replace(/d/g, 'D');\n dateFormat = dateFormat && dateFormat.replace(/y/g, 'Y');\n concatStr = moment(concatStr).format(dateFormat);\n }\n\n return concatStr;\n });\n\n return getSortedGroupedData(groupedLiData, groupby, orderby, innerItem);\n};\n\n/**\n * function to get the ordered dataset based on the given orderby\n */\nexport const getOrderedDataset = (dataSet: any, orderby: string, innerItem?: any) => {\n if (!orderBy) {\n return cloneDeep(dataSet);\n }\n\n // The order by only works when the dataset contains list of objects.\n const items = orderby && orderby.split(','),\n fields: any = [],\n directions: any = [];\n items && items.forEach( obj => {\n const item = obj.split(':');\n fields.push(innerItem ? innerItem + '.' + item[0] : item[0]);\n directions.push(item[1]);\n });\n return orderBy(dataSet, fields, directions);\n};\n\n\n/**\n * This method returns sorted data based to groupkey.\n * Returns a array of objects, each object containing key which is groupKey and data is the sorted data which is sorted by groupby field in the data.\n *\n * @param groupedLiData, grouped data object with key as the groupKey and its value as the array of objects grouped under the groupKey.\n * @param groupBy, string groupby property\n * @returns {any[]}\n */\nexport const getSortedGroupedData = (groupedLiData: any, groupBy: string, orderby: string, innerItem?: any) => {\n const _groupedData: any = [];\n forEach(keys(groupedLiData), (groupkey, index) => {\n const liData = getOrderedDataset(groupedLiData[groupkey], orderby, innerItem);\n _groupedData.push({\n key: groupkey,\n data: sortBy(liData, data => {\n data._groupIndex = index;\n return get(data, groupBy) || get(data[innerItem], groupBy);\n })\n });\n });\n return _groupedData;\n};\n\nexport const isDefined = (v: any) => typeof v !== 'undefined';\n\n// try to convert the chekedvalue and unchecked values to boolean/number\nexport const unStringify = (val: any, defaultVal?: boolean) => {\n if (val === null) {\n return defaultVal;\n }\n\n if (val === true || val === 'true') {\n return true;\n }\n\n if (val === false || val === 'false') {\n return false;\n }\n\n const number = parseInt(val, 10);\n if (!isNaN(number)) {\n return number;\n }\n return val;\n};\n\n/**\n * This function invokes the given the function (fn) until the function successfully executes or the maximum number\n * of retries is reached or onBeforeRetry returns false.\n *\n * @param fn - a function that is needs to be invoked. The function can also return a promise as well.\n * @param interval - minimum time gap between successive retries. This argument should be greater or equal to 0.\n * @param maxRetries - maximum number of retries. This argument should be greater than 0. For all other values,\n * maxRetries is infinity.\n * @param onBeforeRetry - a callback function that will be invoked before re-invoking again. This function can\n * return false or a promise that is resolved to false to stop further retry attempts.\n * @returns {*} a promise that is resolved when fn is success (or) maximum retry attempts reached\n * (or) onBeforeRetry returned false.\n */\nexport const retryIfFails = (fn: Function, interval: number, maxRetries: number, onBeforeRetry = () => Promise.resolve(false)) => {\n let retryCount = 0;\n const tryFn = () => {\n retryCount++;\n if (isFunction(fn)) {\n return fn();\n }\n };\n maxRetries = (isNumber(maxRetries) && maxRetries > 0 ? maxRetries : 0);\n interval = (isNumber(interval) && interval > 0 ? interval : 0);\n return new Promise((resolve, reject) => {\n const errorFn = function () {\n const errArgs = arguments;\n setTimeout(() => {\n Promise.resolve().then(() => onBeforeRetry()).then(function (retry) {\n if (retry !== false && (!maxRetries || retryCount <= maxRetries)) {\n Promise.resolve().then(() => tryFn()).then(resolve, errorFn);\n } else {\n reject(errArgs);\n }\n }, () => reject(errArgs));\n }, interval);\n };\n Promise.resolve().then(() => tryFn()).then(resolve, errorFn);\n });\n};\n\n/**\n * Promise of a defer created using this function, has abort function that will reject the defer when called.\n * @returns {*} angular defer object\n */\nexport const getAbortableDefer = () => {\n const _defer: any = {\n promise: null,\n reject: null,\n resolve: null,\n onAbort: () => { },\n isAborted: false\n };\n _defer.promise = new Promise((resolve, reject) => {\n _defer.resolve = resolve;\n _defer.reject = reject;\n });\n _defer.promise.abort = () => {\n _defer.onAbort && _defer.onAbort();\n _defer.reject('aborted');\n _defer.isAborted = true;\n };\n return _defer;\n};\n\nexport const validateField = (props: any, value: any) => {\n let requiredCheck = true, regexCheck = true;\n if (props.required) {\n if (isArray(value)) {\n requiredCheck = value.length === 0 ? false : true\n } else {\n requiredCheck = !value ? false : true\n }\n if (!requiredCheck) {\n return {\n errorType : 'required',\n isValid: false\n }\n }\n }\n if (value && props.regexp) {\n const condition = new RegExp(\"^\" + props.regexp + \"$\", 'g');\n regexCheck = condition.test(value);\n if (!regexCheck) {\n return {\n errorType : 'regexp',\n isValid: false\n }\n }\n }\n if (value && props.maxchars && value.length > props.maxchars) {\n return {\n errorType : 'maxchars',\n isValid: false\n }\n\n }\n if (value && props.mindate && new Date(props.datavalue) < moment(props.mindate).startOf('day').toDate()) {\n return {\n errorType : 'mindate',\n isValid: false\n }\n }\n if (value && props.maxdate && new Date(props.datavalue) > moment(props.maxdate).endOf('day').toDate()) {\n return {\n errorType : 'maxdate',\n isValid: false\n }\n }\n\n return {\n isValid: true\n }\n};\n\nexport const countDecimalDigits = (number: number | string) => {\n if (!number) return 0;\n\n // * convert the number to a string\n const numberString = number.toString();\n \n // * regular expression to match and count the decimal digits\n const decimalMatch = numberString.match(/\\.(\\d+)/);\n\n if (decimalMatch) {\n const decimalDigits = decimalMatch[1];\n return decimalDigits.length;\n } else {\n return 0; // * no decimal digits found\n }\n}\n\nexport const formatCompactNumber = (number: number) => {\n const isNegative = number < 0;\n number = isNegative ? number * -1 : number;\n let formattedNumber = number + '';\n if (number >= 1000 && number < 1_000_000) {\n formattedNumber = (number / 1000).toFixed(1).replace(/\\.0$/, \"\") + \"K\";\n } else if (number >= 1_000_000 && number < 1_000_000_000) {\n formattedNumber = (number / 1_000_000).toFixed(1).replace(/\\.0$/, \"\") + \"M\";\n } else if (number >= 1_000_000_000 && number < 1_000_000_000_000) {\n formattedNumber = (number / 1_000_000_000).toFixed(1).replace(/\\.0$/, \"\") + \"B\";\n } else if (number >= 1_000_000_000_000 && number < 1_000_000_000_000_000) {\n formattedNumber = (number / 1_000_000_000_000).toFixed(1).replace(/\\.0$/, \"\") + \"T\";\n }\n return (isNegative ? '-' : '') + formattedNumber;\n}\n\nexport const toBase64 = function(path: string) {\n return FileSystem.readAsStringAsync(path, { encoding: 'base64' });\n};\n\nconst DATASET_WIDGETS = new Set([ 'select', 'checkboxset', 'radioset', 'switch', 'autocomplete', 'chips', 'typeahead', 'rating']);\nexport const isDataSetWidget = (widget: any) => {\n return DATASET_WIDGETS.has(widget);\n};\nexport const isFullPathUrl = (url: string) => {\n return isString(url) &&\n (url.startsWith('data:') \n || url.startsWith('http:') \n || url.startsWith('https:') \n || url.startsWith('file:'));\n};\n\nexport function removeUndefinedKeys(obj: any) {\n for (const key in obj) {\n if (obj[key] === undefined) {\n delete obj[key];\n } else if (typeof obj[key] === 'object') {\n // * if the value is an object, recursively call the function\n removeUndefinedKeys(obj[key]);\n }\n }\n\n return obj;\n}\n// * get total number of days in a month of a year\nfunction getDaysInMonth(month: number, year: number) {\n return new Date(year, month, 0).getDate();\n}\n\nexport const getDates = (\n month = 0, // zero-based\n year = new Date().getFullYear(),\n) => {\n const daysInMonth = getDaysInMonth(month, year);\n const dates = Array.from({length: daysInMonth}, (v, i) => i + 1);\n\n return dates;\n};\n\nexport const monthNames = [\n 'January',\n 'February',\n 'March',\n 'April',\n 'May',\n 'June',\n 'July',\n 'August',\n 'September',\n 'October',\n 'November',\n 'December',\n];\n\nexport const getMonths = () => {\n const months = monthNames.map(name => name.substring(0, 3));\n\n return months;\n};\n\nexport const getYearRange = (\n startYear: number = 1950,\n endYear: number = 2060,\n) => {\n const years = [];\n for (let year = startYear; year <= endYear; ++year) {\n years.push(year);\n }\n\n return years;\n};\n\nexport const getDateObject = (date: number, month: number, year: number) => {\n // * month is zero-based\n return new Date(year, month, date);\n};\n\nexport const getHours = () => {\n const hours = [];\n for (let hour = 1; hour <= 12; ++hour) {\n const paddedHour = String(hour).padStart(2, '0');\n hours.push(paddedHour);\n }\n\n return hours;\n}\n\nexport const get24Hours = () => {\n const hours = [];\n for (let hour = 0; hour <= 23; ++hour) {\n const paddedHour = String(hour).padStart(2, '0');\n hours.push(paddedHour);\n }\n\n return hours;\n}\n\nexport const getMinutes = () => {\n const minutes = [];\n for (let minute = 0; minute <= 59; ++minute) {\n const paddedMinute = String(minute).padStart(2, '0');\n minutes.push(paddedMinute);\n }\n\n return minutes;\n}\n\nexport const getTimeIndicators = () => {\n return ['AM', 'PM'];\n}\n\nexport const getDateTimeObject = (date: number, month: number, year: number, hour: number, minute: number) => {\n // * month is zero-based\n return new Date(year, month, date, hour, minute);\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["Platform","moment","FileSystem","isFunction","includes","isUndefined","isNull","orderBy","groupBy","toLower","get","forEach","sortBy","cloneDeep","keys","values","isArray","isString","isNumber","ThemeVariables","GROUP_BY_OPTIONS","ALPHABET","WORD","OTHERS","TIME_ROLLUP_OPTIONS","HOUR","DAY","WEEK","MONTH","YEAR","_deepCopy","o1","_len","arguments","length","o2","Array","_key","o","Object","k","v","deepCopy","_len2","objects","_key2","toBoolean","val","undefined","toNumber","parseFloat","e","encodeUrl","url","splits","split","hash","params","map","p","encodeURIComponent","join","encodeURI","isWebPreviewMode","OS","isDevMode","__DEV__","widgetsWithUndefinedValue","isAndroid","test","window","navigator","userAgent","isIos","getGroupKey","fieldDef","groupby","widgetScope","innerItem","apply","proxy","getGroupedData","fieldDefs","match","orderby","dateFormat","groupKey","groupedLiData","concatStr","toString","trim","substr","replace","format","getSortedGroupedData","getOrderedDataset","dataSet","items","fields","directions","obj","item","push","_groupedData","groupkey","index","liData","key","data","_groupIndex","isDefined","unStringify","defaultVal","number","parseInt","isNaN","retryIfFails","fn","interval","maxRetries","onBeforeRetry","Promise","resolve","retryCount","tryFn","reject","errorFn","errArgs","setTimeout","then","retry","getAbortableDefer","_defer","promise","onAbort","isAborted","abort","validateField","props","value","requiredCheck","regexCheck","required","errorType","isValid","regexp","condition","RegExp","maxchars","mindate","Date","datavalue","startOf","toDate","maxdate","endOf","countDecimalDigits","numberString","decimalMatch","decimalDigits","formatCompactNumber","isNegative","formattedNumber","toFixed","toBase64","path","readAsStringAsync","encoding","DATASET_WIDGETS","Set","isDataSetWidget","widget","has","isFullPathUrl","startsWith","removeUndefinedKeys","getDaysInMonth","month","year","getDate","getDates","getFullYear","daysInMonth","dates","from","i","monthNames","getMonths","months","name","substring","getYearRange","startYear","endYear","years","getDateObject","date","getHours","hours","hour","paddedHour","String","padStart","get24Hours","getMinutes","minutes","minute","paddedMinute","getTimeIndicators","getDateTimeObject","getGradientStartEnd","angle","angleLowerCase","toLowerCase","start","x","y","end","parseLinearGradient","gradient","color1","color2","linearGradientRegex","hasLinearGradient","matches","INSTANCE","primaryColor"],"sources":["utils.ts"],"sourcesContent":["import { Platform } from 'react-native';\nimport moment from \"moment\";\nimport * as FileSystem from \"expo-file-system\";\nimport { isFunction, includes, isUndefined, isNull, orderBy, groupBy, toLower, get, forEach, sortBy, cloneDeep, keys, values, isArray, isString, isNumber} from 'lodash';\nimport ThemeVariables from '../styles/theme.variables';\n\ndeclare const window: any;\nconst GROUP_BY_OPTIONS = {\n ALPHABET: 'alphabet',\n WORD: 'word',\n OTHERS: 'Others'\n};\nconst TIME_ROLLUP_OPTIONS = {\n HOUR: 'hour',\n DAY: 'day',\n WEEK: 'week',\n MONTH: 'month',\n YEAR: 'year'\n};\n\nconst _deepCopy = (o1: any, ...o2: any) => {\n o2.forEach((o: any) => {\n if (o) {\n Object.keys(o).forEach(k => {\n const v = o[k];\n if (v && !isString(v) && !isArray(v) && typeof v === 'object') {\n o1[k] = _deepCopy(o1[k] || {}, o[k]);\n } else {\n o1[k] = _deepCopy(v);\n }\n });\n }\n });\n return o1;\n};\n\nexport const deepCopy = (...objects: any) => _deepCopy({}, ...objects);\n\nexport const toBoolean = (val: any) => {\n return val === true\n || val === 'true'\n || !(val === false\n || val === null\n || val === undefined\n || val === '');\n};\n\nexport const toNumber = (val: any) => {\n try {\n return parseFloat(val) || 0;\n } catch(e) {\n return 0;\n }\n};\n\n/**\n * this method encodes the url and returns the encoded string\n */\n export const encodeUrl = (url: string): string => {\n let splits = url.split('#');\n const hash = splits[1];\n splits = splits[0].split('?');\n let params = '';\n if (splits.length > 1) {\n params = splits[1].split('&')\n .map(p => p.split('='))\n .map(p => p[0] +'=' + encodeURIComponent(p[1]))\n .join('&');\n }\n return encodeURI(splits[0]) + (params ? '?' + params: '') + (hash ? '#'+ hash : '');\n};\n\nexport const isWebPreviewMode = () => Platform.OS === 'web';\n\nexport const isDevMode = () => isWebPreviewMode() || __DEV__;\n\nexport const widgetsWithUndefinedValue = ['checkbox', 'toggle'];\n\nexport const isAndroid = () => (Platform.OS === 'android' || (Platform.OS === 'web' && /android/i.test(window.navigator.userAgent)));\n\nexport const isIos = () => (Platform.OS === 'ios' || (Platform.OS === 'web' && /iPhone|iPad/i.test(window.navigator.userAgent)));\n\nconst getGroupKey = (fieldDef: any, groupby: string, widgetScope: any, innerItem?: any) => isFunction(groupby) ? groupby.apply(widgetScope.proxy, [innerItem ? fieldDef[innerItem] : fieldDef]) : get(innerItem ? fieldDef[innerItem] : fieldDef, groupby);\n\n/**\n * This method prepares the grouped data.\n *\n * @param fieldDefs array of objects i.e. dataset\n * @param groupby string groupby\n * @param match string match\n * @param orderby string orderby\n * @param dateFormat string date format\n */\nexport const getGroupedData = (fieldDefs: any, groupby: string, match: string, orderby: string, dateFormat: string, widgetScope: any, innerItem?: any) => {\n\n // handling case-in-sensitive scenario\n // ordering the data based on groupby field. If there is innerItem then apply orderby using the innerItem's containing the groupby field.\n fieldDefs = orderBy(fieldDefs, fieldDef => {\n const groupKey = getGroupKey(fieldDef, groupby, widgetScope, innerItem);\n if (groupKey) {\n return toLower(groupKey);\n }\n return '';\n });\n\n // extract the grouped data based on the field obtained from 'groupDataByField'.\n const groupedLiData = groupBy(fieldDefs, function (fieldDef) {\n let concatStr = getGroupKey(fieldDef, groupby, widgetScope, innerItem);\n // by default set the undefined groupKey as 'others'\n if (isUndefined(concatStr) || isNull(concatStr) || concatStr.toString().trim() === '') {\n return GROUP_BY_OPTIONS.OTHERS;\n }\n // if match prop is alphabetic ,get the starting alphabet of the word as key.\n if (match === GROUP_BY_OPTIONS.ALPHABET) {\n concatStr = concatStr.substr(0, 1);\n }\n\n // if match contains the time options then get the concatStr using 'getTimeRolledUpString'\n if (includes(values(TIME_ROLLUP_OPTIONS), match)) {\n dateFormat = dateFormat && dateFormat.replace(/d/g, 'D');\n dateFormat = dateFormat && dateFormat.replace(/y/g, 'Y');\n concatStr = moment(concatStr).format(dateFormat);\n }\n\n return concatStr;\n });\n\n return getSortedGroupedData(groupedLiData, groupby, orderby, innerItem);\n};\n\n/**\n * function to get the ordered dataset based on the given orderby\n */\nexport const getOrderedDataset = (dataSet: any, orderby: string, innerItem?: any) => {\n if (!orderBy) {\n return cloneDeep(dataSet);\n }\n\n // The order by only works when the dataset contains list of objects.\n const items = orderby && orderby.split(','),\n fields: any = [],\n directions: any = [];\n items && items.forEach( obj => {\n const item = obj.split(':');\n fields.push(innerItem ? innerItem + '.' + item[0] : item[0]);\n directions.push(item[1]);\n });\n return orderBy(dataSet, fields, directions);\n};\n\n\n/**\n * This method returns sorted data based to groupkey.\n * Returns a array of objects, each object containing key which is groupKey and data is the sorted data which is sorted by groupby field in the data.\n *\n * @param groupedLiData, grouped data object with key as the groupKey and its value as the array of objects grouped under the groupKey.\n * @param groupBy, string groupby property\n * @returns {any[]}\n */\nexport const getSortedGroupedData = (groupedLiData: any, groupBy: string, orderby: string, innerItem?: any) => {\n const _groupedData: any = [];\n forEach(keys(groupedLiData), (groupkey, index) => {\n const liData = getOrderedDataset(groupedLiData[groupkey], orderby, innerItem);\n _groupedData.push({\n key: groupkey,\n data: sortBy(liData, data => {\n data._groupIndex = index;\n return get(data, groupBy) || get(data[innerItem], groupBy);\n })\n });\n });\n return _groupedData;\n};\n\nexport const isDefined = (v: any) => typeof v !== 'undefined';\n\n// try to convert the chekedvalue and unchecked values to boolean/number\nexport const unStringify = (val: any, defaultVal?: boolean) => {\n if (val === null) {\n return defaultVal;\n }\n\n if (val === true || val === 'true') {\n return true;\n }\n\n if (val === false || val === 'false') {\n return false;\n }\n\n const number = parseInt(val, 10);\n if (!isNaN(number)) {\n return number;\n }\n return val;\n};\n\n/**\n * This function invokes the given the function (fn) until the function successfully executes or the maximum number\n * of retries is reached or onBeforeRetry returns false.\n *\n * @param fn - a function that is needs to be invoked. The function can also return a promise as well.\n * @param interval - minimum time gap between successive retries. This argument should be greater or equal to 0.\n * @param maxRetries - maximum number of retries. This argument should be greater than 0. For all other values,\n * maxRetries is infinity.\n * @param onBeforeRetry - a callback function that will be invoked before re-invoking again. This function can\n * return false or a promise that is resolved to false to stop further retry attempts.\n * @returns {*} a promise that is resolved when fn is success (or) maximum retry attempts reached\n * (or) onBeforeRetry returned false.\n */\nexport const retryIfFails = (fn: Function, interval: number, maxRetries: number, onBeforeRetry = () => Promise.resolve(false)) => {\n let retryCount = 0;\n const tryFn = () => {\n retryCount++;\n if (isFunction(fn)) {\n return fn();\n }\n };\n maxRetries = (isNumber(maxRetries) && maxRetries > 0 ? maxRetries : 0);\n interval = (isNumber(interval) && interval > 0 ? interval : 0);\n return new Promise((resolve, reject) => {\n const errorFn = function () {\n const errArgs = arguments;\n setTimeout(() => {\n Promise.resolve().then(() => onBeforeRetry()).then(function (retry) {\n if (retry !== false && (!maxRetries || retryCount <= maxRetries)) {\n Promise.resolve().then(() => tryFn()).then(resolve, errorFn);\n } else {\n reject(errArgs);\n }\n }, () => reject(errArgs));\n }, interval);\n };\n Promise.resolve().then(() => tryFn()).then(resolve, errorFn);\n });\n};\n\n/**\n * Promise of a defer created using this function, has abort function that will reject the defer when called.\n * @returns {*} angular defer object\n */\nexport const getAbortableDefer = () => {\n const _defer: any = {\n promise: null,\n reject: null,\n resolve: null,\n onAbort: () => { },\n isAborted: false\n };\n _defer.promise = new Promise((resolve, reject) => {\n _defer.resolve = resolve;\n _defer.reject = reject;\n });\n _defer.promise.abort = () => {\n _defer.onAbort && _defer.onAbort();\n _defer.reject('aborted');\n _defer.isAborted = true;\n };\n return _defer;\n};\n\nexport const validateField = (props: any, value: any) => {\n let requiredCheck = true, regexCheck = true;\n if (props.required) {\n if (isArray(value)) {\n requiredCheck = value.length === 0 ? false : true\n } else {\n requiredCheck = !value ? false : true\n }\n if (!requiredCheck) {\n return {\n errorType : 'required',\n isValid: false\n }\n }\n }\n if (value && props.regexp) {\n const condition = new RegExp(\"^\" + props.regexp + \"$\", 'g');\n regexCheck = condition.test(value);\n if (!regexCheck) {\n return {\n errorType : 'regexp',\n isValid: false\n }\n }\n }\n if (value && props.maxchars && value.length > props.maxchars) {\n return {\n errorType : 'maxchars',\n isValid: false\n }\n\n }\n if (value && props.mindate && new Date(props.datavalue) < moment(props.mindate).startOf('day').toDate()) {\n return {\n errorType : 'mindate',\n isValid: false\n }\n }\n if (value && props.maxdate && new Date(props.datavalue) > moment(props.maxdate).endOf('day').toDate()) {\n return {\n errorType : 'maxdate',\n isValid: false\n }\n }\n\n return {\n isValid: true\n }\n};\n\nexport const countDecimalDigits = (number: number | string) => {\n if (!number) return 0;\n\n // * convert the number to a string\n const numberString = number.toString();\n \n // * regular expression to match and count the decimal digits\n const decimalMatch = numberString.match(/\\.(\\d+)/);\n\n if (decimalMatch) {\n const decimalDigits = decimalMatch[1];\n return decimalDigits.length;\n } else {\n return 0; // * no decimal digits found\n }\n}\n\nexport const formatCompactNumber = (number: number) => {\n const isNegative = number < 0;\n number = isNegative ? number * -1 : number;\n let formattedNumber = number + '';\n if (number >= 1000 && number < 1_000_000) {\n formattedNumber = (number / 1000).toFixed(1).replace(/\\.0$/, \"\") + \"K\";\n } else if (number >= 1_000_000 && number < 1_000_000_000) {\n formattedNumber = (number / 1_000_000).toFixed(1).replace(/\\.0$/, \"\") + \"M\";\n } else if (number >= 1_000_000_000 && number < 1_000_000_000_000) {\n formattedNumber = (number / 1_000_000_000).toFixed(1).replace(/\\.0$/, \"\") + \"B\";\n } else if (number >= 1_000_000_000_000 && number < 1_000_000_000_000_000) {\n formattedNumber = (number / 1_000_000_000_000).toFixed(1).replace(/\\.0$/, \"\") + \"T\";\n }\n return (isNegative ? '-' : '') + formattedNumber;\n}\n\nexport const toBase64 = function(path: string) {\n return FileSystem.readAsStringAsync(path, { encoding: 'base64' });\n};\n\nconst DATASET_WIDGETS = new Set([ 'select', 'checkboxset', 'radioset', 'switch', 'autocomplete', 'chips', 'typeahead', 'rating']);\nexport const isDataSetWidget = (widget: any) => {\n return DATASET_WIDGETS.has(widget);\n};\nexport const isFullPathUrl = (url: string) => {\n return isString(url) &&\n (url.startsWith('data:') \n || url.startsWith('http:') \n || url.startsWith('https:') \n || url.startsWith('file:'));\n};\n\nexport function removeUndefinedKeys(obj: any) {\n for (const key in obj) {\n if (obj[key] === undefined) {\n delete obj[key];\n } else if (typeof obj[key] === 'object') {\n // * if the value is an object, recursively call the function\n removeUndefinedKeys(obj[key]);\n }\n }\n\n return obj;\n}\n// * get total number of days in a month of a year\nfunction getDaysInMonth(month: number, year: number) {\n return new Date(year, month, 0).getDate();\n}\n\nexport const getDates = (\n month = 0, // zero-based\n year = new Date().getFullYear(),\n) => {\n const daysInMonth = getDaysInMonth(month, year);\n const dates = Array.from({length: daysInMonth}, (v, i) => i + 1);\n\n return dates;\n};\n\nexport const monthNames = [\n 'January',\n 'February',\n 'March',\n 'April',\n 'May',\n 'June',\n 'July',\n 'August',\n 'September',\n 'October',\n 'November',\n 'December',\n];\n\nexport const getMonths = () => {\n const months = monthNames.map(name => name.substring(0, 3));\n\n return months;\n};\n\nexport const getYearRange = (\n startYear: number = 1950,\n endYear: number = 2060,\n) => {\n const years = [];\n for (let year = startYear; year <= endYear; ++year) {\n years.push(year);\n }\n\n return years;\n};\n\nexport const getDateObject = (date: number, month: number, year: number) => {\n // * month is zero-based\n return new Date(year, month, date);\n};\n\nexport const getHours = () => {\n const hours = [];\n for (let hour = 1; hour <= 12; ++hour) {\n const paddedHour = String(hour).padStart(2, '0');\n hours.push(paddedHour);\n }\n\n return hours;\n}\n\nexport const get24Hours = () => {\n const hours = [];\n for (let hour = 0; hour <= 23; ++hour) {\n const paddedHour = String(hour).padStart(2, '0');\n hours.push(paddedHour);\n }\n\n return hours;\n}\n\nexport const getMinutes = () => {\n const minutes = [];\n for (let minute = 0; minute <= 59; ++minute) {\n const paddedMinute = String(minute).padStart(2, '0');\n minutes.push(paddedMinute);\n }\n\n return minutes;\n}\n\nexport const getTimeIndicators = () => {\n return ['AM', 'PM'];\n}\n\nexport const getDateTimeObject = (date: number, month: number, year: number, hour: number, minute: number) => {\n // * month is zero-based\n return new Date(year, month, date, hour, minute);\n};\n\nexport const getGradientStartEnd = (angle: string) => {\n const angleLowerCase = angle?.toLowerCase();\n let start = { x: 0, y: 1 };\n let end = { x: 1, y: 1 };\n\n if (angle === '0deg' || angleLowerCase === 'to top') {\n end.x = 0;\n end.y = 0;\n } else if (angle === '90deg' || angleLowerCase === 'to right') {\n start.x = 0;\n } else if (angle === '180deg' || angleLowerCase === 'to bottom') {\n start.y = 0;\n end.x = 0;\n end.y = 1;\n } else if (angle === '270deg' || angleLowerCase === 'to left') {\n start.x = 1;\n end.x = 0;\n } else {\n // other angle\n }\n\n return {start, end}\n}\n\nexport const parseLinearGradient = (gradient: string) => {\n let angle = '', color1 = '', color2 = '';\n const linearGradientRegex = /linear-gradient\\(([^,]+),\\s*([^,]+),\\s*([^)]+)\\)/;\n const hasLinearGradient = linearGradientRegex.test(gradient);\n\n const matches = gradient?.match(linearGradientRegex);\n angle = matches?.[1] || '90deg';\n const {start, end} = getGradientStartEnd(angle)\n color1 = matches?.[2] || ThemeVariables.INSTANCE.primaryColor;\n color2 = matches?.[3] || ThemeVariables.INSTANCE.primaryColor;\n\n return {hasLinearGradient, color1, color2, start, end};\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wavemaker/app-rn-runtime",
3
- "version": "11.7.0-patch.1",
3
+ "version": "11.7.0-patch.3",
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.7.0-patch.1",
52
+ "@wavemaker/variables": "11.7.0-patch.3",
53
53
  "axios": "^1.4.0",
54
54
  "color": "4.2.3",
55
55
  "cross-env": "^5.2.0",
package/runtime/App.js CHANGED
@@ -450,9 +450,9 @@ export default class BaseApp extends React.Component {
450
450
  style: {
451
451
  flex: 1
452
452
  }
453
- }, /*#__PURE__*/React.createElement(StatusBar, null), /*#__PURE__*/React.createElement(FixedViewContainer, null, /*#__PURE__*/React.createElement(ThemeProvider, {
453
+ }, /*#__PURE__*/React.createElement(StatusBar, null), /*#__PURE__*/React.createElement(ThemeProvider, {
454
454
  value: _this2.appConfig.theme
455
- }, /*#__PURE__*/React.createElement(KeyboardAvoidingView, {
455
+ }, /*#__PURE__*/React.createElement(FixedViewContainer, null, /*#__PURE__*/React.createElement(KeyboardAvoidingView, {
456
456
  behavior: Platform.OS === "ios" ? "padding" : undefined,
457
457
  style: {
458
458
  flex: 1
@@ -466,9 +466,9 @@ export default class BaseApp extends React.Component {
466
466
  hideDrawer: ((_this2$appConfig$draw = _this2.appConfig.drawer) === null || _this2$appConfig$draw === void 0 ? void 0 : _this2$appConfig$draw.getContent()) === null,
467
467
  drawerContent: () => _this2.appConfig.drawer ? _this2.getProviders(_this2.appConfig.drawer.getContent()) : null,
468
468
  drawerAnimation: (_this2$appConfig$draw2 = _this2.appConfig.drawer) === null || _this2$appConfig$draw2 === void 0 ? void 0 : _this2$appConfig$draw2.getAnimation()
469
- }), commonPartial, _this2.renderToasters(), _this2.renderDialogs(), _this2.renderDisplayManager())), _this2.appConfig.url ? /*#__PURE__*/React.createElement(WmNetworkInfoToaster, {
469
+ }), commonPartial)), _this2.appConfig.url ? /*#__PURE__*/React.createElement(WmNetworkInfoToaster, {
470
470
  appLocale: _this2.appConfig.appLocale
471
- }) : null))));
471
+ }) : null), _this2.renderToasters(), _this2.renderDialogs(), _this2.renderDisplayManager())));
472
472
  }))));
473
473
  }
474
474
  }