@wavemaker-ai/app-rn-runtime 1.0.0-rc.324 → 1.0.0-rc.326

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 (95) hide show
  1. package/components/basic/bottomsheet/bottomsheet.component.js +156 -14
  2. package/components/basic/bottomsheet/bottomsheet.component.js.map +1 -1
  3. package/components/basic/bottomsheet/bottomsheet.styles.js +0 -3
  4. package/components/basic/bottomsheet/bottomsheet.styles.js.map +1 -1
  5. package/components/basic/progress-circle/progress-circle.component.js +3 -1
  6. package/components/basic/progress-circle/progress-circle.component.js.map +1 -1
  7. package/components/container/container.component.js +24 -1
  8. package/components/container/container.component.js.map +1 -1
  9. package/components/container/container.props.js +7 -0
  10. package/components/container/container.props.js.map +1 -1
  11. package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js +25 -1
  12. package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js.map +1 -1
  13. package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.props.js +1 -0
  14. package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.props.js.map +1 -1
  15. package/components/container/tabs/tabheader/tabheader.component.js +5 -14
  16. package/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
  17. package/components/container/tabs/tabheader/tabheader.props.js +0 -2
  18. package/components/container/tabs/tabheader/tabheader.props.js.map +1 -1
  19. package/components/container/tabs/tabheader/tabheader.styles.js +1 -43
  20. package/components/container/tabs/tabheader/tabheader.styles.js.map +1 -1
  21. package/components/container/tabs/tabs.component.js +2 -6
  22. package/components/container/tabs/tabs.component.js.map +1 -1
  23. package/components/container/tabs/tabs.props.js +0 -2
  24. package/components/container/tabs/tabs.props.js.map +1 -1
  25. package/components/container/wizard/wizardstep/wizardstep.component.js +22 -3
  26. package/components/container/wizard/wizardstep/wizardstep.component.js.map +1 -1
  27. package/components/container/wizard/wizardstep/wizardstep.props.js +2 -0
  28. package/components/container/wizard/wizardstep/wizardstep.props.js.map +1 -1
  29. package/components/data/form/form-field/form-field.component.js +1 -0
  30. package/components/data/form/form-field/form-field.component.js.map +1 -1
  31. package/components/data/form/form-field/form-field.props.js +1 -0
  32. package/components/data/form/form-field/form-field.props.js.map +1 -1
  33. package/components/input/baseinput/baseinput.component.js +7 -0
  34. package/components/input/baseinput/baseinput.component.js.map +1 -1
  35. package/components/input/calendar/calendar.component.js +4 -0
  36. package/components/input/calendar/calendar.component.js.map +1 -1
  37. package/components/input/calendar/views/month-view.js +8 -1
  38. package/components/input/calendar/views/month-view.js.map +1 -1
  39. package/components/input/checkboxset/checkboxset.component.js.map +1 -1
  40. package/components/input/checkboxset/checkboxset.styles.js.map +1 -1
  41. package/components/input/chips/chips.component.js +3 -4
  42. package/components/input/chips/chips.component.js.map +1 -1
  43. package/components/input/chips/chips.styles.js +1 -2
  44. package/components/input/chips/chips.styles.js.map +1 -1
  45. package/components/input/currency/currency.component.js +1 -0
  46. package/components/input/currency/currency.component.js.map +1 -1
  47. package/components/input/number/number.component.js +1 -0
  48. package/components/input/number/number.component.js.map +1 -1
  49. package/components/input/switch/switch.component.js +2 -16
  50. package/components/input/switch/switch.component.js.map +1 -1
  51. package/components/input/switch/switch.props.js +0 -1
  52. package/components/input/switch/switch.props.js.map +1 -1
  53. package/components/input/switch/switch.styles.js +0 -19
  54. package/components/input/switch/switch.styles.js.map +1 -1
  55. package/components/input/text/text.component.js +14 -3
  56. package/components/input/text/text.component.js.map +1 -1
  57. package/components/input/text/text.props.js +1 -0
  58. package/components/input/text/text.props.js.map +1 -1
  59. package/components/input/text/text.styles.js +3 -1
  60. package/components/input/text/text.styles.js.map +1 -1
  61. package/components/input/textarea/textarea.component.js +3 -2
  62. package/components/input/textarea/textarea.component.js.map +1 -1
  63. package/components/input/toggle/toggle.component.js +4 -13
  64. package/components/input/toggle/toggle.component.js.map +1 -1
  65. package/components/input/toggle/toggle.props.js +1 -3
  66. package/components/input/toggle/toggle.props.js.map +1 -1
  67. package/components/input/toggle/toggle.styles.js +4 -12
  68. package/components/input/toggle/toggle.styles.js.map +1 -1
  69. package/components/navigation/appnavbar/appnavbar.props.js +1 -1
  70. package/components/navigation/appnavbar/appnavbar.props.js.map +1 -1
  71. package/core/AppConfig.js.map +1 -1
  72. package/core/auto-layout-host.component.js +8 -2
  73. package/core/auto-layout-host.component.js.map +1 -1
  74. package/core/components/floatinglabel.component.js +5 -2
  75. package/core/components/floatinglabel.component.js.map +1 -1
  76. package/core/components/textinput.component.js +3 -0
  77. package/core/components/textinput.component.js.map +1 -1
  78. package/core/tappable.component.js +109 -15
  79. package/core/tappable.component.js.map +1 -1
  80. package/npm-shrinkwrap.json +3932 -6123
  81. package/package-lock.json +3932 -6123
  82. package/package.json +17 -15
  83. package/runtime/navigator/drawer.navigator.js +1 -0
  84. package/runtime/navigator/drawer.navigator.js.map +1 -1
  85. package/runtime/navigator/stack.navigator.js +16 -1
  86. package/runtime/navigator/stack.navigator.js.map +1 -1
  87. package/runtime/services/device/scan-service.js +12 -34
  88. package/runtime/services/device/scan-service.js.map +1 -1
  89. package/styles/theme.variables.js.map +1 -1
  90. package/components-prism/basic/search/search.component.js +0 -210
  91. package/components-prism/basic/search/search.component.js.map +0 -1
  92. package/components-prism/basic/search/search.props.js +0 -14
  93. package/components-prism/basic/search/search.props.js.map +0 -1
  94. package/components-prism/basic/search/search.styles.js +0 -92
  95. package/components-prism/basic/search/search.styles.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","width","height","flexDirection","alignItems","borderRadius","text","handle","marginLeft","marginRight","backgroundSize","backgroundPosition","checkicon","minWidth","alignSelf","fontSize","icon","color","toggleOnColor","padding","uncheckicon","toggleOffColor","skeleton","backgroundColor","toggleHandleColor","borderColor","toggleOffBorderColor","borderWidth","toggleHandleDisableColor","opacity"],"sources":["toggle.styles.ts"],"sourcesContent":["import BASE_THEME from '@wavemaker-ai/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport { ViewStyle } from 'react-native';\nimport { WmSkeletonStyles } from '@wavemaker-ai/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport { WmIconStyles } from '../../basic/icon/icon.styles';\n\nexport type WmToggleStyles = BaseStyles & {\n handle: ViewStyle,\n skeleton: WmSkeletonStyles,\n checkicon: WmIconStyles,\n uncheckicon: WmIconStyles\n};\n\nexport const DEFAULT_CLASS = 'app-toggle';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmToggleStyles = defineStyles({\n root: {\n width: 52,\n height: 32,\n flexDirection: 'row',\n alignItems: 'center',\n borderRadius: 18\n },\n text: {},\n handle: {\n width: 16,\n height: 16,\n borderRadius: 18,\n marginLeft : 8,\n marginRight: 0,\n backgroundSize: '100% 100%',\n backgroundPosition: 'center'\n },\n checkicon : {\n root: {\n minWidth: 0,\n alignSelf: 'center'\n },\n text: {\n fontSize: 16\n },\n icon : {\n color: themeVariables.toggleOnColor,\n padding: 0,\n width: 'auto'\n }\n } as WmIconStyles,\n uncheckicon : {\n root: {\n minWidth: 0,\n alignSelf: 'center'\n },\n text: {\n fontSize: 16\n },\n icon : {\n color: themeVariables.toggleOffColor,\n padding: 0,\n width: 'auto'\n }\n } as WmIconStyles,\n skeleton: {\n root: {\n width: 52,\n height: 32,\n borderRadius: 18,\n }\n } as WmSkeletonStyles\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n\n // Add horizontal form input styles for horizontal form field layouts - positioned early to avoid overriding more specific styles\n addStyle('form-toggle-input-horizontal', '', {\n root: {\n minWidth: 0,\n },\n text: {}\n } as BaseStyles);\n\n addStyle(DEFAULT_CLASS + '-on', '', {\n root : {\n backgroundColor: themeVariables.toggleOnColor,\n },\n handle: {\n backgroundColor: themeVariables.toggleHandleColor,\n }\n } as WmToggleStyles);\n addStyle(DEFAULT_CLASS + '-off', '', {\n root : {\n backgroundColor: themeVariables.toggleOffColor,\n borderColor: themeVariables.toggleOffBorderColor,\n borderWidth: 2\n },\n handle: {\n backgroundColor: themeVariables.toggleHandleDisableColor,\n }\n } as WmToggleStyles);\n addStyle(DEFAULT_CLASS + '-rtl', '', {});\n addStyle(DEFAULT_CLASS + '-disabled', '', {\n root : {\n opacity:0.5\n },\n handle: {\n backgroundColor: themeVariables.toggleHandleDisableColor,\n opacity:1\n }\n });\n});\n"],"mappings":"AAAA,OAAOA,UAAU,MAAM,2CAA2C;AAClE,SAAqBC,YAAY,QAAQ,kDAAkD;AAY3F,OAAO,MAAMC,aAAa,GAAG,YAAY;AACzCF,UAAU,CAACG,aAAa,CAAC,CAACC,cAAc,EAAEC,QAAQ,KAAK;EACrD,MAAMC,aAA6B,GAAGL,YAAY,CAAC;IAC/CM,IAAI,EAAE;MACJC,KAAK,EAAE,EAAE;MACTC,MAAM,EAAE,EAAE;MACVC,aAAa,EAAE,KAAK;MACpBC,UAAU,EAAE,QAAQ;MACpBC,YAAY,EAAE;IAChB,CAAC;IACDC,IAAI,EAAE,CAAC,CAAC;IACRC,MAAM,EAAE;MACNN,KAAK,EAAE,EAAE;MACTC,MAAM,EAAE,EAAE;MACVG,YAAY,EAAE,EAAE;MAChBG,UAAU,EAAG,CAAC;MACdC,WAAW,EAAE,CAAC;MACdC,cAAc,EAAE,WAAW;MAC3BC,kBAAkB,EAAE;IACtB,CAAC;IACDC,SAAS,EAAG;MACVZ,IAAI,EAAE;QACJa,QAAQ,EAAE,CAAC;QACXC,SAAS,EAAE;MACb,CAAC;MACDR,IAAI,EAAE;QACJS,QAAQ,EAAE;MACZ,CAAC;MACDC,IAAI,EAAG;QACLC,KAAK,EAAEpB,cAAc,CAACqB,aAAa;QACnCC,OAAO,EAAE,CAAC;QACVlB,KAAK,EAAE;MACT;IACJ,CAAiB;IACfmB,WAAW,EAAG;MACZpB,IAAI,EAAE;QACJa,QAAQ,EAAE,CAAC;QACXC,SAAS,EAAE;MACb,CAAC;MACDR,IAAI,EAAE;QACJS,QAAQ,EAAE;MACZ,CAAC;MACDC,IAAI,EAAG;QACLC,KAAK,EAAEpB,cAAc,CAACwB,cAAc;QACpCF,OAAO,EAAE,CAAC;QACVlB,KAAK,EAAE;MACT;IACJ,CAAiB;IACfqB,QAAQ,EAAE;MACRtB,IAAI,EAAE;QACJC,KAAK,EAAE,EAAE;QACTC,MAAM,EAAE,EAAE;QACVG,YAAY,EAAE;MAChB;IACF;EACJ,CAAC,CAAC;EAEFP,QAAQ,CAACH,aAAa,EAAE,EAAE,EAAEI,aAAa,CAAC;;EAE1C;EACAD,QAAQ,CAAC,8BAA8B,EAAE,EAAE,EAAE;IAC3CE,IAAI,EAAE;MACJa,QAAQ,EAAE;IACZ,CAAC;IACDP,IAAI,EAAE,CAAC;EACT,CAAe,CAAC;EAEhBR,QAAQ,CAACH,aAAa,GAAG,KAAK,EAAE,EAAE,EAAE;IAClCK,IAAI,EAAG;MACLuB,eAAe,EAAE1B,cAAc,CAACqB;IAClC,CAAC;IACDX,MAAM,EAAE;MACNgB,eAAe,EAAE1B,cAAc,CAAC2B;IAClC;EACF,CAAmB,CAAC;EACpB1B,QAAQ,CAACH,aAAa,GAAG,MAAM,EAAE,EAAE,EAAE;IACnCK,IAAI,EAAG;MACLuB,eAAe,EAAE1B,cAAc,CAACwB,cAAc;MAC9CI,WAAW,EAAE5B,cAAc,CAAC6B,oBAAoB;MAChDC,WAAW,EAAE;IACf,CAAC;IACDpB,MAAM,EAAE;MACNgB,eAAe,EAAE1B,cAAc,CAAC+B;IAClC;EACF,CAAmB,CAAC;EACpB9B,QAAQ,CAACH,aAAa,GAAG,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;EACxCG,QAAQ,CAACH,aAAa,GAAG,WAAW,EAAE,EAAE,EAAE;IACtCK,IAAI,EAAG;MACL6B,OAAO,EAAC;IACV,CAAC;IACDtB,MAAM,EAAE;MACNgB,eAAe,EAAE1B,cAAc,CAAC+B,wBAAwB;MACxDC,OAAO,EAAC;IACV;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","width","height","flexDirection","alignItems","borderRadius","text","handle","marginLeft","marginRight","backgroundSize","backgroundPosition","checkicon","fontSize","icon","color","toggleOnColor","padding","uncheckicon","toggleOffColor","skeleton","minWidth","backgroundColor","toggleHandleColor","borderColor","toggleOffBorderColor","borderWidth","toggleHandleDisableColor","opacity"],"sources":["toggle.styles.ts"],"sourcesContent":["import BASE_THEME from '@wavemaker-ai/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport { ViewStyle } from 'react-native';\nimport { WmSkeletonStyles } from '@wavemaker-ai/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport { WmIconStyles } from '../../basic/icon/icon.styles';\n\nexport type WmToggleStyles = BaseStyles & {\n handle: ViewStyle,\n skeleton: WmSkeletonStyles,\n checkicon: WmIconStyles,\n uncheckicon: WmIconStyles\n};\n\nexport const DEFAULT_CLASS = 'app-toggle';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmToggleStyles = defineStyles({\n root: {\n width: 52,\n height: 32,\n flexDirection: 'row',\n alignItems: 'center',\n borderRadius: 18\n },\n text: {},\n handle: {\n width: 16,\n height: 16,\n borderRadius: 18,\n marginLeft : 8,\n marginRight: 0,\n backgroundSize: '100% 100%',\n backgroundPosition: 'center'\n },\n checkicon : {\n root: {},\n text: {\n fontSize: 16\n },\n icon : {\n color: themeVariables.toggleOnColor,\n padding: 0\n }\n } as WmIconStyles,\n uncheckicon : {\n root: {},\n text: {\n fontSize: 16\n },\n icon : {\n color: themeVariables.toggleOffColor,\n padding: 0\n }\n } as WmIconStyles,\n skeleton: {\n root: {\n width: 52,\n height: 32,\n borderRadius: 18,\n }\n } as WmSkeletonStyles\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n\n // Add horizontal form input styles for horizontal form field layouts - positioned early to avoid overriding more specific styles\n addStyle('form-toggle-input-horizontal', '', {\n root: {\n minWidth: 0,\n },\n text: {}\n } as BaseStyles);\n\n addStyle(DEFAULT_CLASS + '-on', '', {\n root : {\n backgroundColor: themeVariables.toggleOnColor,\n },\n handle: {\n backgroundColor: themeVariables.toggleHandleColor,\n }\n } as WmToggleStyles);\n addStyle(DEFAULT_CLASS + '-off', '', {\n root : {\n backgroundColor: themeVariables.toggleOffColor,\n borderColor: themeVariables.toggleOffBorderColor,\n borderWidth: 2\n },\n handle: {\n backgroundColor: themeVariables.toggleHandleDisableColor,\n }\n } as WmToggleStyles);\n addStyle(DEFAULT_CLASS + '-rtl', '', {});\n addStyle(DEFAULT_CLASS + '-disabled', '', {\n root : {\n opacity:0.5\n },\n handle: {\n backgroundColor: themeVariables.toggleHandleDisableColor,\n opacity:1\n }\n });\n});\n"],"mappings":"AAAA,OAAOA,UAAU,MAAM,2CAA2C;AAClE,SAAqBC,YAAY,QAAQ,kDAAkD;AAY3F,OAAO,MAAMC,aAAa,GAAG,YAAY;AACzCF,UAAU,CAACG,aAAa,CAAC,CAACC,cAAc,EAAEC,QAAQ,KAAK;EACrD,MAAMC,aAA6B,GAAGL,YAAY,CAAC;IAC/CM,IAAI,EAAE;MACJC,KAAK,EAAE,EAAE;MACTC,MAAM,EAAE,EAAE;MACVC,aAAa,EAAE,KAAK;MACpBC,UAAU,EAAE,QAAQ;MACpBC,YAAY,EAAE;IAChB,CAAC;IACDC,IAAI,EAAE,CAAC,CAAC;IACRC,MAAM,EAAE;MACNN,KAAK,EAAE,EAAE;MACTC,MAAM,EAAE,EAAE;MACVG,YAAY,EAAE,EAAE;MAChBG,UAAU,EAAG,CAAC;MACdC,WAAW,EAAE,CAAC;MACdC,cAAc,EAAE,WAAW;MAC3BC,kBAAkB,EAAE;IACtB,CAAC;IACDC,SAAS,EAAG;MACVZ,IAAI,EAAE,CAAC,CAAC;MACRM,IAAI,EAAE;QACJO,QAAQ,EAAE;MACZ,CAAC;MACDC,IAAI,EAAG;QACLC,KAAK,EAAElB,cAAc,CAACmB,aAAa;QACnCC,OAAO,EAAE;MACX;IACJ,CAAiB;IACfC,WAAW,EAAG;MACZlB,IAAI,EAAE,CAAC,CAAC;MACRM,IAAI,EAAE;QACJO,QAAQ,EAAE;MACZ,CAAC;MACDC,IAAI,EAAG;QACLC,KAAK,EAAElB,cAAc,CAACsB,cAAc;QACpCF,OAAO,EAAE;MACX;IACJ,CAAiB;IACfG,QAAQ,EAAE;MACRpB,IAAI,EAAE;QACJC,KAAK,EAAE,EAAE;QACTC,MAAM,EAAE,EAAE;QACVG,YAAY,EAAE;MAChB;IACF;EACJ,CAAC,CAAC;EAEFP,QAAQ,CAACH,aAAa,EAAE,EAAE,EAAEI,aAAa,CAAC;;EAE1C;EACAD,QAAQ,CAAC,8BAA8B,EAAE,EAAE,EAAE;IAC3CE,IAAI,EAAE;MACJqB,QAAQ,EAAE;IACZ,CAAC;IACDf,IAAI,EAAE,CAAC;EACT,CAAe,CAAC;EAEhBR,QAAQ,CAACH,aAAa,GAAG,KAAK,EAAE,EAAE,EAAE;IAClCK,IAAI,EAAG;MACLsB,eAAe,EAAEzB,cAAc,CAACmB;IAClC,CAAC;IACDT,MAAM,EAAE;MACNe,eAAe,EAAEzB,cAAc,CAAC0B;IAClC;EACF,CAAmB,CAAC;EACpBzB,QAAQ,CAACH,aAAa,GAAG,MAAM,EAAE,EAAE,EAAE;IACnCK,IAAI,EAAG;MACLsB,eAAe,EAAEzB,cAAc,CAACsB,cAAc;MAC9CK,WAAW,EAAE3B,cAAc,CAAC4B,oBAAoB;MAChDC,WAAW,EAAE;IACf,CAAC;IACDnB,MAAM,EAAE;MACNe,eAAe,EAAEzB,cAAc,CAAC8B;IAClC;EACF,CAAmB,CAAC;EACpB7B,QAAQ,CAACH,aAAa,GAAG,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;EACxCG,QAAQ,CAACH,aAAa,GAAG,WAAW,EAAE,EAAE,EAAE;IACtCK,IAAI,EAAG;MACL4B,OAAO,EAAC;IACV,CAAC;IACDrB,MAAM,EAAE;MACNe,eAAe,EAAEzB,cAAc,CAAC8B,wBAAwB;MACxDC,OAAO,EAAC;IACV;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -10,7 +10,7 @@ export default class WmAppNavbarProps extends BaseProps {
10
10
  _defineProperty(this, "backbutton", true);
11
11
  _defineProperty(this, "backbuttonlabel", '');
12
12
  _defineProperty(this, "showDrawerButton", false);
13
- _defineProperty(this, "leftnavpaneliconclass", '');
13
+ _defineProperty(this, "leftnavpaneliconclass", 'wm-sl-l sl-hamburger-menu');
14
14
  _defineProperty(this, "backbuttoniconclass", 'wi wi-back');
15
15
  _defineProperty(this, "imgsrc", null);
16
16
  _defineProperty(this, "searchbutton", false);
@@ -1 +1 @@
1
- {"version":3,"names":["BaseProps","WmAppNavbarProps","constructor","args","_defineProperty"],"sources":["appnavbar.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker-ai/app-rn-runtime/core/base.component';\n\nexport default class WmAppNavbarProps extends BaseProps {\n children?: any;\n title: string = '';\n backbutton = true;\n backbuttonlabel = '';\n showDrawerButton = false;\n leftnavpaneliconclass = '';\n backbuttoniconclass = 'wi wi-back';\n imgsrc = null as any;\n searchbutton = false;\n searchbuttoniconclass = 'wm-sl-l sl-search';\n badgevalue?: string;\n hideonscroll?: boolean = false;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,kDAAkD;AAE5E,eAAe,MAAMC,gBAAgB,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;IAAAA,eAAA,gBAEpC,EAAE;IAAAA,eAAA,qBACL,IAAI;IAAAA,eAAA,0BACC,EAAE;IAAAA,eAAA,2BACD,KAAK;IAAAA,eAAA,gCACA,EAAE;IAAAA,eAAA,8BACJ,YAAY;IAAAA,eAAA,iBACzB,IAAI;IAAAA,eAAA,uBACE,KAAK;IAAAA,eAAA,gCACI,mBAAmB;IAAAA,eAAA;IAAAA,eAAA,uBAElB,KAAK;EAAA;AAClC","ignoreList":[]}
1
+ {"version":3,"names":["BaseProps","WmAppNavbarProps","constructor","args","_defineProperty"],"sources":["appnavbar.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker-ai/app-rn-runtime/core/base.component';\n\nexport default class WmAppNavbarProps extends BaseProps {\n children?: any;\n title: string = '';\n backbutton = true;\n backbuttonlabel = '';\n showDrawerButton = false;\n leftnavpaneliconclass = 'wm-sl-l sl-hamburger-menu';\n backbuttoniconclass = 'wi wi-back';\n imgsrc = null as any;\n searchbutton = false;\n searchbuttoniconclass = 'wm-sl-l sl-search';\n badgevalue?: string;\n hideonscroll?: boolean = false;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,kDAAkD;AAE5E,eAAe,MAAMC,gBAAgB,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;IAAAA,eAAA,gBAEpC,EAAE;IAAAA,eAAA,qBACL,IAAI;IAAAA,eAAA,0BACC,EAAE;IAAAA,eAAA,2BACD,KAAK;IAAAA,eAAA,gCACA,2BAA2B;IAAAA,eAAA,8BAC7B,YAAY;IAAAA,eAAA,iBACzB,IAAI;IAAAA,eAAA,uBACE,KAAK;IAAAA,eAAA,gCACI,mBAAmB;IAAAA,eAAA;IAAAA,eAAA,uBAElB,KAAK;EAAA;AAClC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["AppConfig.ts"],"sourcesContent":["export interface Drawer {\n setContent: (c: React.ReactNode) => void;\n getContent: () => React.ReactNode;\n setAnimation: (animation: string) => void;\n getAnimation: () => string;\n}\n\nexport default interface AppConfig {\n appId: string;\n assets: any;\n appProperties: any;\n appLocale: any;\n url: string;\n leftNavWidth: any;\n loadApp: boolean;\n refresh: (complete?: boolean) => void,\n currentPage?: any;\n pages?: any[];\n landingPage: string;\n partials?: any[];\n drawer: Drawer;\n app: any;\n spinner: any;\n setDrawerContent: any;\n theme: any;\n drawerType: any;\n /**\n * Application preferences that can include:\n * - enableGlobalErrorHandler (boolean): Master switch for all error handling. Default: false (disabled)\n * - enableRenderErrors (boolean): Enable React ErrorBoundary for component errors. Default: true\n * - enableJsSyncErrors (boolean): Enable synchronous JavaScript error handling. Default: true\n * - enableJsAsyncErrors (boolean): Enable asynchronous/promise rejection error handling. Default: true\n * - showDefaultErrorFallback (boolean): Show default error fallback UI when errors occur. Default: true\n * - Other app-specific preferences...\n */\n preferences:any;\n getServiceDefinitions: any;\n loggedInUser: any;\n selectedLocale: string;\n revertLayoutToExpo50: boolean,\n diagnostics: {\n appStartTime: number,\n appReadyTime: number,\n pageStartTime: number,\n pageReadyTime: number\n }, \n edgeToEdgeConfig:any;\n prefabs?: {\n partials?: any[]\n },\n screenCaptureProtection: {\n enabled: boolean\n },\n disableNavigationAnimation:boolean,\n}"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["AppConfig.ts"],"sourcesContent":["export interface Drawer {\n setContent: (c: React.ReactNode) => void;\n getContent: () => React.ReactNode;\n setAnimation: (animation: string) => void;\n getAnimation: () => string;\n}\n\nexport default interface AppConfig {\n appId: string;\n assets: any;\n appProperties: any;\n appLocale: any;\n url: string;\n leftNavWidth: any;\n loadApp: boolean;\n refresh: (complete?: boolean) => void,\n currentPage?: any;\n pages?: any[];\n landingPage: string;\n partials?: any[];\n drawer: Drawer;\n app: any;\n spinner: any;\n setDrawerContent: any;\n theme: any;\n drawerType: any;\n /**\n * Application preferences that can include:\n * - enableGlobalErrorHandler (boolean): Master switch for all error handling. Default: false (disabled)\n * - enableRenderErrors (boolean): Enable React ErrorBoundary for component errors. Default: true\n * - enableJsSyncErrors (boolean): Enable synchronous JavaScript error handling. Default: true\n * - enableJsAsyncErrors (boolean): Enable asynchronous/promise rejection error handling. Default: true\n * - showDefaultErrorFallback (boolean): Show default error fallback UI when errors occur. Default: true\n * - Other app-specific preferences...\n */\n preferences:any;\n getServiceDefinitions: any;\n loggedInUser: any;\n selectedLocale: string;\n revertLayoutToExpo50: boolean,\n diagnostics: {\n appStartTime: number,\n appReadyTime: number,\n pageStartTime: number,\n pageReadyTime: number\n }, \n edgeToEdgeConfig:any;\n prefabs?: {\n partials?: any[]\n },\n screenCaptureProtection: {\n enabled: boolean\n },\n disableNavigationAnimation:boolean,\n detachInactiveScreens:boolean,\n isLegacyTappable: boolean,\n}"],"mappings":"","ignoreList":[]}
@@ -9,7 +9,10 @@ export function AutoLayoutHost({
9
9
  onLayout,
10
10
  onScroll,
11
11
  scrollEventThrottle = 48,
12
- children
12
+ children,
13
+ ref,
14
+ onScrollEndDrag,
15
+ onMomentumScrollEnd
13
16
  }) {
14
17
  const enableScroll = shouldScroll !== null && shouldScroll !== void 0 ? shouldScroll : autoLayoutProps.overflow === 'scroll';
15
18
  const isHorizontal = autoLayoutProps.direction === 'row';
@@ -25,7 +28,10 @@ export function AutoLayoutHost({
25
28
  contentContainerStyle: contentStyle,
26
29
  onLayout: onLayout,
27
30
  onScroll: onScroll,
28
- scrollEventThrottle: scrollEventThrottle
31
+ scrollEventThrottle: scrollEventThrottle,
32
+ ref: ref,
33
+ onScrollEndDrag: onScrollEndDrag,
34
+ onMomentumScrollEnd: onMomentumScrollEnd
29
35
  }, children);
30
36
  }
31
37
  //# sourceMappingURL=auto-layout-host.component.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","ScrollView","AutoLayoutHost","autoLayoutProps","shouldScroll","containerStyle","contentStyle","onLayout","onScroll","scrollEventThrottle","children","enableScroll","overflow","isHorizontal","direction","createElement","style","horizontal","contentContainerStyle"],"sources":["auto-layout-host.component.tsx"],"sourcesContent":["import React from 'react';\nimport { LayoutChangeEvent, NativeScrollEvent, NativeSyntheticEvent, View, ViewStyle, StyleProp } from 'react-native';\nimport { ScrollView } from 'react-native-gesture-handler';\nimport { AutoLayoutProps } from './auto-layout.utils';\n\ninterface AutoLayoutHostProps {\n autoLayoutProps: AutoLayoutProps;\n shouldScroll?: boolean;\n containerStyle?: StyleProp<ViewStyle>;\n contentStyle?: StyleProp<ViewStyle>;\n onLayout?: (event: LayoutChangeEvent) => void;\n onScroll?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;\n scrollEventThrottle?: number;\n children?: React.ReactNode;\n}\n\nexport function AutoLayoutHost({\n autoLayoutProps,\n shouldScroll,\n containerStyle,\n contentStyle,\n onLayout,\n onScroll,\n scrollEventThrottle = 48,\n children,\n}: AutoLayoutHostProps) {\n const enableScroll = shouldScroll ?? (autoLayoutProps.overflow === 'scroll');\n const isHorizontal = autoLayoutProps.direction === 'row';\n\n if (!enableScroll) {\n return (\n <View style={[containerStyle, contentStyle]} onLayout={onLayout}>\n {children}\n </View>\n );\n }\n\n return (\n <ScrollView\n horizontal={isHorizontal}\n style={containerStyle}\n contentContainerStyle={contentStyle}\n onLayout={onLayout}\n onScroll={onScroll}\n scrollEventThrottle={scrollEventThrottle}\n >\n {children}\n </ScrollView>\n );\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAqEC,IAAI,QAA8B,cAAc;AACrH,SAASC,UAAU,QAAQ,8BAA8B;AAczD,OAAO,SAASC,cAAcA,CAAC;EAC7BC,eAAe;EACfC,YAAY;EACZC,cAAc;EACdC,YAAY;EACZC,QAAQ;EACRC,QAAQ;EACRC,mBAAmB,GAAG,EAAE;EACxBC;AACmB,CAAC,EAAE;EACtB,MAAMC,YAAY,GAAGP,YAAY,aAAZA,YAAY,cAAZA,YAAY,GAAKD,eAAe,CAACS,QAAQ,KAAK,QAAS;EAC5E,MAAMC,YAAY,GAAGV,eAAe,CAACW,SAAS,KAAK,KAAK;EAExD,IAAI,CAACH,YAAY,EAAE;IACjB,oBACEZ,KAAA,CAAAgB,aAAA,CAACf,IAAI;MAACgB,KAAK,EAAE,CAACX,cAAc,EAAEC,YAAY,CAAE;MAACC,QAAQ,EAAEA;IAAS,GAC7DG,QACG,CAAC;EAEX;EAEA,oBACEX,KAAA,CAAAgB,aAAA,CAACd,UAAU;IACTgB,UAAU,EAAEJ,YAAa;IACzBG,KAAK,EAAEX,cAAe;IACtBa,qBAAqB,EAAEZ,YAAa;IACpCC,QAAQ,EAAEA,QAAS;IACnBC,QAAQ,EAAEA,QAAS;IACnBC,mBAAmB,EAAEA;EAAoB,GAExCC,QACS,CAAC;AAEjB","ignoreList":[]}
1
+ {"version":3,"names":["React","View","ScrollView","AutoLayoutHost","autoLayoutProps","shouldScroll","containerStyle","contentStyle","onLayout","onScroll","scrollEventThrottle","children","ref","onScrollEndDrag","onMomentumScrollEnd","enableScroll","overflow","isHorizontal","direction","createElement","style","horizontal","contentContainerStyle"],"sources":["auto-layout-host.component.tsx"],"sourcesContent":["import React from 'react';\nimport { LayoutChangeEvent, NativeScrollEvent, NativeSyntheticEvent, View, ViewStyle, StyleProp } from 'react-native';\nimport { ScrollView } from 'react-native-gesture-handler';\nimport { AutoLayoutProps } from './auto-layout.utils';\n\ninterface AutoLayoutHostProps {\n autoLayoutProps: AutoLayoutProps;\n shouldScroll?: boolean;\n containerStyle?: StyleProp<ViewStyle>;\n contentStyle?: StyleProp<ViewStyle>;\n onLayout?: (event: LayoutChangeEvent) => void;\n onScroll?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;\n scrollEventThrottle?: number;\n children?: React.ReactNode;\n ref?: React.RefObject<ScrollView | null>;\n onScrollEndDrag?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;\n onMomentumScrollEnd?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;\n}\n\nexport function AutoLayoutHost({\n autoLayoutProps,\n shouldScroll,\n containerStyle,\n contentStyle,\n onLayout,\n onScroll,\n scrollEventThrottle = 48,\n children,\n ref,\n onScrollEndDrag,\n onMomentumScrollEnd\n}: AutoLayoutHostProps) {\n const enableScroll = shouldScroll ?? (autoLayoutProps.overflow === 'scroll');\n const isHorizontal = autoLayoutProps.direction === 'row';\n\n if (!enableScroll) {\n return (\n <View style={[containerStyle, contentStyle]} onLayout={onLayout}>\n {children}\n </View>\n );\n }\n\n return (\n <ScrollView\n horizontal={isHorizontal}\n style={containerStyle}\n contentContainerStyle={contentStyle}\n onLayout={onLayout}\n onScroll={onScroll}\n scrollEventThrottle={scrollEventThrottle}\n ref={ref}\n onScrollEndDrag={onScrollEndDrag}\n onMomentumScrollEnd={onMomentumScrollEnd}\n >\n {children}\n </ScrollView>\n );\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAqEC,IAAI,QAA8B,cAAc;AACrH,SAASC,UAAU,QAAQ,8BAA8B;AAiBzD,OAAO,SAASC,cAAcA,CAAC;EAC7BC,eAAe;EACfC,YAAY;EACZC,cAAc;EACdC,YAAY;EACZC,QAAQ;EACRC,QAAQ;EACRC,mBAAmB,GAAG,EAAE;EACxBC,QAAQ;EACRC,GAAG;EACHC,eAAe;EACfC;AACmB,CAAC,EAAE;EACtB,MAAMC,YAAY,GAAGV,YAAY,aAAZA,YAAY,cAAZA,YAAY,GAAKD,eAAe,CAACY,QAAQ,KAAK,QAAS;EAC5E,MAAMC,YAAY,GAAGb,eAAe,CAACc,SAAS,KAAK,KAAK;EAExD,IAAI,CAACH,YAAY,EAAE;IACjB,oBACEf,KAAA,CAAAmB,aAAA,CAAClB,IAAI;MAACmB,KAAK,EAAE,CAACd,cAAc,EAAEC,YAAY,CAAE;MAACC,QAAQ,EAAEA;IAAS,GAC7DG,QACG,CAAC;EAEX;EAEA,oBACEX,KAAA,CAAAmB,aAAA,CAACjB,UAAU;IACTmB,UAAU,EAAEJ,YAAa;IACzBG,KAAK,EAAEd,cAAe;IACtBgB,qBAAqB,EAAEf,YAAa;IACpCC,QAAQ,EAAEA,QAAS;IACnBC,QAAQ,EAAEA,QAAS;IACnBC,mBAAmB,EAAEA,mBAAoB;IACzCE,GAAG,EAAEA,GAAI;IACTC,eAAe,EAAEA,eAAgB;IACjCC,mBAAmB,EAAEA;EAAoB,GAExCH,QACS,CAAC;AAEjB","ignoreList":[]}
@@ -3,7 +3,10 @@ import { Animated, Text } from 'react-native';
3
3
  import { Theme } from '@wavemaker-ai/app-rn-runtime/styles/theme';
4
4
  export const FloatingLabel = props => {
5
5
  var _props$style;
6
- const fontSize = ((_props$style = props.style) === null || _props$style === void 0 ? void 0 : _props$style.fontSize) || 16;
6
+ const toNumber = (value, fallback) => {
7
+ return typeof value === 'number' ? value : fallback;
8
+ };
9
+ const fontSize = toNumber((_props$style = props.style) === null || _props$style === void 0 ? void 0 : _props$style.fontSize, 16);
7
10
  const getAnimationValues = moveUp => {
8
11
  const hasLeading = !!props.leadingiconclass;
9
12
  if (!moveUp) {
@@ -54,7 +57,7 @@ export const FloatingLabel = props => {
54
57
  useNativeDriver: true
55
58
  })]).start();
56
59
  }, [props.moveUp]);
57
- const outlinedNotchStyle = props.variant === 'outlined' && props.moveUp ? {
60
+ const outlinedNotchStyle = props.variant != 'filled' && props.moveUp ? {
58
61
  backgroundColor: props.labelBackground || 'transparent',
59
62
  paddingLeft: 4,
60
63
  paddingRight: 4
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useState","Animated","Text","Theme","FloatingLabel","props","_props$style","fontSize","style","getAnimationValues","moveUp","hasLeading","leadingiconclass","x","y","scale","variant","initial","labelPositionX","Value","labelPositionY","labelScale","values","parallel","timing","toValue","duration","useNativeDriver","start","outlinedNotchStyle","backgroundColor","labelBackground","paddingLeft","paddingRight","filledWithLeadingIconStyle","createElement","View","position","zIndex","alignSelf","pointerEvents","transform","translateY","translateX","BASE","getTextStyle","ellipsizeMode","label"],"sources":["floatinglabel.component.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { Animated, TextStyle, Text, ViewStyle} from 'react-native';\n\nimport { Theme } from '@wavemaker-ai/app-rn-runtime/styles/theme';\n\nexport const FloatingLabel = (props: {\n label?: string,\n style?: TextStyle & ViewStyle,\n moveUp: boolean,\n variant?: 'filled' | 'outlined',\n labelBackground?: string;\n leadingiconclass?: string;\n }) => {\n \n const fontSize = (props.style?.fontSize || 16);\n\n const getAnimationValues = (moveUp: boolean) => {\n const hasLeading = !!props.leadingiconclass;\n\n if (!moveUp) {\n return { x: hasLeading ? 28 : 0, y: 0, scale: 1 };\n }\n\n switch (props.variant) {\n case 'filled':\n return { x: hasLeading ? 28 : 0, y: -1 * fontSize * 1, scale: 0.8 };\n case 'outlined':\n return { x: 0, y: -1 * (fontSize + 14), scale: 0.8 }; \n default:\n return { x: 0, y: -1 * (fontSize + 14), scale: 0.8 };\n }\n };\n const initial = getAnimationValues(props.moveUp);\n const [labelPositionX] = useState(new Animated.Value(initial.x));\n const [labelPositionY] = useState(new Animated.Value(initial.y));\n const [labelScale] = useState(new Animated.Value(initial.scale));\n\n useEffect(() => {\n const values = getAnimationValues(props.moveUp);\n Animated.parallel([\n Animated.timing(labelPositionX, {\n toValue: values.x,\n duration: 200,\n useNativeDriver: true,\n }),\n Animated.timing(labelPositionY, {\n toValue: values.y,\n duration: 200,\n useNativeDriver: true,\n }),\n Animated.timing(labelScale, {\n toValue: values.scale,\n duration: 200,\n useNativeDriver: true,\n })\n ]).start();\n }, [props.moveUp]);\n\n const outlinedNotchStyle = (props.variant === 'outlined' && props.moveUp) ? {\n backgroundColor: props.labelBackground || 'transparent',\n paddingLeft: 4,\n paddingRight: 4\n } : {};\n\n const filledWithLeadingIconStyle = (props.variant === 'filled' && props.leadingiconclass) ? {\n paddingLeft: 8\n } : {};\n\n return (\n <Animated.View style={[{\n position: 'absolute',\n zIndex: 1,\n alignSelf: 'flex-start',\n pointerEvents: 'none',\n transform: [\n {translateY: labelPositionY},\n {translateX: labelPositionX},\n {scale: labelScale}\n ]},\n props.style,\n outlinedNotchStyle,\n filledWithLeadingIconStyle,\n { pointerEvents: 'none' }\n ]}\n pointerEvents=\"none\">\n <Text\n style={[Theme.BASE.getTextStyle(props.style), { pointerEvents: 'none' }]}\n ellipsizeMode=\"tail\">\n {props.label}\n </Text>\n </Animated.View>\n );\n };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useEffect","useState","Animated","Text","Theme","FloatingLabel","props","_props$style","toNumber","value","fallback","fontSize","style","getAnimationValues","moveUp","hasLeading","leadingiconclass","x","y","scale","variant","initial","labelPositionX","Value","labelPositionY","labelScale","values","parallel","timing","toValue","duration","useNativeDriver","start","outlinedNotchStyle","backgroundColor","labelBackground","paddingLeft","paddingRight","filledWithLeadingIconStyle","createElement","View","position","zIndex","alignSelf","pointerEvents","transform","translateY","translateX","BASE","getTextStyle","ellipsizeMode","label"],"sources":["floatinglabel.component.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { Animated, TextStyle, Text, ViewStyle} from 'react-native';\n\nimport { Theme } from '@wavemaker-ai/app-rn-runtime/styles/theme';\n\nexport const FloatingLabel = (props: {\n label?: string,\n style?: TextStyle & ViewStyle,\n moveUp: boolean,\n variant?: 'filled' | 'outlined',\n labelBackground?: string;\n leadingiconclass?: string;\n inputHeight?: number;\n }) => {\n const toNumber = (value: unknown, fallback: number) => {\n return typeof value === 'number' ? value : fallback;\n };\n const fontSize = toNumber(props.style?.fontSize, 16);\n\n const getAnimationValues = (moveUp: boolean) => {\n const hasLeading = !!props.leadingiconclass;\n if (!moveUp) {\n return { x: hasLeading ? 28 : 0, y: 0, scale: 1 };\n }\n\n switch (props.variant) {\n case 'filled':\n return { x: hasLeading ? 28 : 0, y: -1 * fontSize * 1, scale: 0.8 };\n case 'outlined':\n return { x: 0, y: -1 * (fontSize + 14), scale: 0.8 }; \n default:\n return { x: 0, y: -1 * (fontSize + 14), scale: 0.8 };\n }\n };\n\n\n\n const initial = getAnimationValues(props.moveUp);\n const [labelPositionX] = useState(new Animated.Value(initial.x));\n const [labelPositionY] = useState(new Animated.Value( initial.y));\n const [labelScale] = useState(new Animated.Value(initial.scale));\n\n useEffect(() => {\n const values = getAnimationValues(props.moveUp);\n Animated.parallel([\n Animated.timing(labelPositionX, {\n toValue: values.x,\n duration: 200,\n useNativeDriver: true,\n }),\n Animated.timing(labelPositionY, {\n toValue: values.y,\n duration: 200,\n useNativeDriver: true,\n }),\n Animated.timing(labelScale, {\n toValue: values.scale,\n duration: 200,\n useNativeDriver: true,\n })\n ]).start();\n }, [props.moveUp]);\n\n const outlinedNotchStyle = (props.variant != 'filled' && props.moveUp) ? {\n backgroundColor: props.labelBackground || 'transparent',\n paddingLeft: 4,\n paddingRight: 4\n } : {};\n\n const filledWithLeadingIconStyle = (props.variant === 'filled' && props.leadingiconclass) ? {\n paddingLeft: 8\n } : {};\n\n return (\n <Animated.View style={[{\n position: 'absolute',\n zIndex: 1,\n alignSelf: 'flex-start',\n pointerEvents: 'none',\n transform: [\n {translateY: labelPositionY},\n {translateX: labelPositionX},\n {scale: labelScale}\n ]},\n props.style,\n outlinedNotchStyle,\n filledWithLeadingIconStyle,\n { pointerEvents: 'none' }\n ]}\n pointerEvents=\"none\">\n <Text\n style={[Theme.BASE.getTextStyle(props.style), { pointerEvents: 'none' }]}\n ellipsizeMode=\"tail\">\n {props.label}\n </Text>\n </Animated.View>\n );\n };\n"],"mappings":"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","ignoreList":[]}
@@ -181,6 +181,9 @@ export const WMTextInput = /*#__PURE__*/React.forwardRef((props, ref) => {
181
181
  placeholderTextColor: props.floatingLabel ? props.isInputFocused ? props.placeholderTextColor : 'transparent' : props.placeholderTextColor,
182
182
  style: [props.style, hideInput ? {
183
183
  color: 'transparent',
184
+ ...(Platform.OS === 'android' && {
185
+ opacity: 0
186
+ }),
184
187
  backgroundColor: 'transparent',
185
188
  borderColor: 'transparent',
186
189
  zIndex: 1
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useRef","useState","Animated","Platform","Text","TextInput","View","isArray","IMask","FloatingLabel","WmCursor","memo","props","opacityAnimation","Value","current","runAnimation","timing","toValue","duration","useNativeDriver","start","createElement","testID","style","backgroundColor","color","width","marginHorizontal","height","opacity","applyAutoCapitalize","text","mode","toUpperCase","replace","c","WMTextInput","forwardRef","ref","_props$customDisplayV","_props$floatingLabel","selectRange","setSelectRange","iMask","setIMask","displayCursor","setDisplayCursor","value","x","forceUpdate","displayValue","setDisplayValue","element","displayformat","MaskedPattern","mask","skipInvalid","lazy","definitions","typedValue","defaultValue","onChangeText","setTimeout","OS","maskchar","_element$current","setSelectionRange","length","onSelectionChange","e","_e$nativeEvent","selection","nativeEvent","allowContentSelection","end","_value","substring","slice","formattedValue","valueExpr","opts","customDisplayValue","textStyle","Object","assign","hideInput","Fragment","background","floatingLabel","moveUp","isInputFocused","label","placeholder","variant","labelBackground","leadingiconclass","floatingLabelStyle","activeFloatingLabelStyle","inactiveFloatingLabelStyle","editable","_extends","borderColor","zIndex","autoCapitalize","textTransform","placeholderTextColor","selectable","disabled","multiline","numberOfLines","maxLength","undefined","onFocus","_props$onFocus","call","target","onBlur","_props$onBlur","caretHidden","selectionColor","cursorColor","onChange","contextMenuHidden","onLayout","handleLayout","display","flexDirection","alignItems","marginTop","minHeight","padding","fontFamily","fontSize","fontWeight"],"sources":["textinput.component.tsx"],"sourcesContent":["import React, { ForwardedRef, useCallback, useEffect, useRef, useState } from 'react';\nimport { Animated, Platform, Text, TextInput, TextInputProps, TextStyle, View, ViewStyle } from 'react-native';\nimport { isArray } from 'lodash';\nimport IMask from 'imask';\nimport { FloatingLabel } from './floatinglabel.component';\n\ninterface SelectRange {\n start: number,\n end: number\n}\n\nconst WmCursor = React.memo((props: {\n color: string,\n height: number\n}) => {\n const opacityAnimation = useRef(new Animated.Value(0.5)).current;\n const runAnimation = useCallback(() => {\n Animated.timing(opacityAnimation, {\n toValue: 0.2,\n duration: 500,\n useNativeDriver: true\n }).start(() => {\n Animated.timing(opacityAnimation, {\n toValue: 0.6,\n duration: 500,\n useNativeDriver: true\n }).start(runAnimation);\n });\n }, []);\n useEffect(() => {\n runAnimation();\n }, []);\n return (\n <Animated.View \n testID=\"wm-custom-cursor\"\n style={{\n backgroundColor: props.color,\n width: 2,\n marginHorizontal: 1,\n height: props.height,\n opacity: opacityAnimation\n }}></Animated.View>\n );\n});\n\n// TODO: Monika WMS-31071 - Consider these improvements:\n// 1. 'words' mode: Use full Title Case regex: text.replace(/\\b\\w+/g, word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())\n// 2. 'sentences' mode: Add newline handling with regex: /(^|\\.\\s+|\\!\\s+|\\?\\s+|\\n\\s*)(\\w)/g\n// 3. Add TypeScript type for mode: type AutoCapitalizeMode = 'none' | 'sentences' | 'words' | 'characters'\nconst applyAutoCapitalize = (text: string, mode: string): string => {\n switch (mode) {\n case 'characters':\n return text.toUpperCase();\n case 'words':\n return text.replace(/\\b\\w/g, c => c.toUpperCase());\n case 'sentences':\n return text.replace(/(^\\w|[.!?]\\s+\\w)/g, c => c.toUpperCase());\n default:\n return text;\n }\n};\n\nexport const WMTextInput = React.forwardRef((props: (TextInputProps & \n {allowContentSelection: boolean,\n displayformat: string,\n maskchar: string,\n floatingLabel: string\n floatingLabelStyle: TextStyle & ViewStyle,\n activeFloatingLabelStyle: TextStyle & ViewStyle,\n inactiveFloatingLabelStyle?: TextStyle & ViewStyle,\n customDisplayValue?: string,\n isInputFocused: boolean,\n autoCapitalize?: string,\n background?: React.ReactNode,\n handleLayout?: any,\n style?: ViewStyle,\n variant?: 'filled' | 'outlined',\n labelBackground?: string,\n leadingiconclass?: string\n }), \n ref: ForwardedRef<TextInput>) => {\n const [selectRange, setSelectRange] = useState<SelectRange>(null as any);\n const [iMask, setIMask] = useState(null as any);\n const [displayCursor, setDisplayCursor] = useState(false);\n const value = useRef(props.value || '');\n const [x, forceUpdate] = useState(1);\n const [displayValue, setDisplayValue] = useState('');\n const element = useRef(null as any);\n // iMask initialization\n useEffect(() => {\n const iMask: any = props.displayformat ? new IMask.MaskedPattern({\n mask: props.displayformat,\n skipInvalid: true,\n lazy: false,\n definitions: {\n '9': /\\d/,\n 'A': /[a-zA-Z]/,\n 'a': /[a-z]/,\n '*': /\\w/\n }\n }) : null;\n if (iMask) {\n iMask.typedValue = value;\n setDisplayValue(iMask.displayValue)\n setIMask(iMask);\n }\n },[props.displayformat]);\n // set default value\n useEffect(() => {\n const defaultValue = props.defaultValue || props.value || '';\n if (defaultValue && !value.current) {\n value.current = defaultValue;\n onChangeText(defaultValue);\n }\n },[props.defaultValue, props.value]);\n // set cursor position in windows\n useEffect(() => {\n setTimeout(() => {\n if (Platform.OS === 'web' && (props.displayformat || props.maskchar)) {\n element?.current?.setSelectionRange(value.current.length, value.current.length);\n }\n }, 100);\n }, [value.current, props]);\n const onSelectionChange = useCallback((e: any) => {\n if (Platform.OS !== 'android') {\n return;\n }\n const selection = e?.nativeEvent?.selection;\n if (!props.allowContentSelection\n && selection\n && selection.end - selection.start > 0) {\n setSelectRange({\n start: value.current.length + 2,\n end: value.current.length + 2\n });\n } else if (selectRange && selectRange.end > 0){\n setSelectRange(null as any);\n }\n }, [props.allowContentSelection, value]);\n // when text changes\n const onChangeText = useCallback((text: string) => {\n if (!(iMask || props.maskchar)) {\n value.current = text;\n props.onChangeText && props.onChangeText(text);\n return;\n }\n let _value = value.current || '';\n if (value.current.length - text.length > 0) {\n _value = _value.substring(0, _value.length - (value.current.length - text.length));\n } else if (text.length - value.current.length > 0) {\n _value += text.slice(-1 * (text.length - value.current.length));\n }\n let formattedValue = _value;\n if(props.maskchar) {\n formattedValue = (_value.replace(/./g, props.maskchar));\n }\n if (iMask) {\n iMask.typedValue = _value;\n formattedValue = iMask.displayValue;\n }\n if (formattedValue !== displayValue) {\n value.current = _value;\n props.onChangeText && props.onChangeText(_value);\n }\n forceUpdate(x+ 1);\n setDisplayValue(formattedValue);\n }, [iMask, value, displayValue, props.onChangeText]);\n const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';\n const opts = {} as any;\n opts[valueExpr] = props.customDisplayValue ?? value.current;\n const textStyle = Object.assign({}, ...isArray(props.style) ? props.style: [props.style]);\n const hideInput = props.displayformat || props.maskchar;\n return (\n <>\n {props.background}\n {props.floatingLabel ? (\n <FloatingLabel\n moveUp={!!(value.current || props.isInputFocused || displayValue)}\n label={props.floatingLabel ?? props.placeholder} \n variant={props.variant}\n labelBackground={props.labelBackground}\n leadingiconclass={props.leadingiconclass}\n style={{\n ...(props.floatingLabelStyle || []),\n ...(props.isInputFocused \n ? (props.activeFloatingLabelStyle || {}) \n : (value.current || displayValue) \n ? (props.inactiveFloatingLabelStyle || {}) \n : {}\n )\n }}/>\n ) : null}\n {(Platform.OS === 'android' && !props.editable) ? (\n <Text \n style={[\n props.style, hideInput ? {\n color: 'transparent', \n backgroundColor: 'transparent',\n borderColor: 'transparent',\n zIndex: 1\n } : {},\n props.autoCapitalize ? {textTransform: 'capitalize'} : {},\n (!props.defaultValue && props.placeholder) ? (props.floatingLabel ? (props.isInputFocused ? {color: props.placeholderTextColor} : {color: 'transparent'}) : {color: props.placeholderTextColor}) : {}\n ]}\n selectable={false}\n disabled={true}\n {...(props.multiline) ? {numberOfLines: props.numberOfLines} : {}}\n >{props.defaultValue || props.placeholder}</Text>\n ) :\n (<TextInput\n {...props}\n {...hideInput || props.customDisplayValue ? opts: {}}\n {...((props.maxLength !== null) ? { maxLength: props.maxLength } : { maxLength: undefined })}\n placeholder={displayValue ? '' : props.placeholder }\n placeholderTextColor={props.floatingLabel ? (props.isInputFocused ? props.placeholderTextColor : 'transparent') : props.placeholderTextColor }\n style={[props.style, hideInput ? {\n color: 'transparent', \n backgroundColor: 'transparent',\n borderColor: 'transparent',\n zIndex: 1\n } : {}]}\n onFocus={(e) => {\n props.onFocus?.(e);\n setDisplayCursor(true);\n element.current = e.target;\n }}\n onBlur={(e) => {\n props?.onBlur?.(e);\n setDisplayCursor(false);\n }}\n ref={ref}\n selection={selectRange}\n onSelectionChange={onSelectionChange}\n caretHidden={!!selectRange?.end}\n onChangeText={(text) => {\n if(Platform.OS === 'web' && props.autoCapitalize && props.autoCapitalize !== 'none') {\n onChangeText(applyAutoCapitalize(text, props.autoCapitalize));\n return;\n }\n onChangeText(text);\n }}\n {...hideInput ? {\n selectionColor: 'transparent',\n cursorColor: 'transparent',\n onChange : () => {}\n }: {}}\n contextMenuHidden={!props.allowContentSelection}\n autoCapitalize={props.autoCapitalize}\n onLayout={props.handleLayout}\n numberOfLines={1}\n >\n </TextInput>)\n }\n {\n hideInput ? (\n <View style={[props.style, {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n marginTop: -1 * (textStyle.height || textStyle.minHeight || 0)\n + (textStyle.marginTop || 0)}]}>\n <Text style={{ \n width: undefined,\n backgroundColor: 'transparent', \n borderColor: 'transparent',\n padding: 0,\n display: 'flex',\n color: textStyle.color,\n fontFamily: textStyle.fontFamily,\n fontSize: textStyle.fontSize,\n fontWeight: textStyle.fontWeight\n }}>\n {displayValue}\n </Text>\n {\n (displayCursor && !props.displayformat) ? React.createElement(WmCursor, {\n color: textStyle.color || '#000000',\n height: textStyle.fontSize || 14\n }) : null\n }\n </View>\n ) : null\n }\n </>\n );\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useCallback","useEffect","useRef","useState","Animated","Platform","Text","TextInput","View","isArray","IMask","FloatingLabel","WmCursor","memo","props","opacityAnimation","Value","current","runAnimation","timing","toValue","duration","useNativeDriver","start","createElement","testID","style","backgroundColor","color","width","marginHorizontal","height","opacity","applyAutoCapitalize","text","mode","toUpperCase","replace","c","WMTextInput","forwardRef","ref","_props$customDisplayV","_props$floatingLabel","selectRange","setSelectRange","iMask","setIMask","displayCursor","setDisplayCursor","value","x","forceUpdate","displayValue","setDisplayValue","element","displayformat","MaskedPattern","mask","skipInvalid","lazy","definitions","typedValue","defaultValue","onChangeText","setTimeout","OS","maskchar","_element$current","setSelectionRange","length","onSelectionChange","e","_e$nativeEvent","selection","nativeEvent","allowContentSelection","end","_value","substring","slice","formattedValue","valueExpr","opts","customDisplayValue","textStyle","Object","assign","hideInput","Fragment","background","floatingLabel","moveUp","isInputFocused","label","placeholder","variant","labelBackground","leadingiconclass","floatingLabelStyle","activeFloatingLabelStyle","inactiveFloatingLabelStyle","editable","_extends","borderColor","zIndex","autoCapitalize","textTransform","placeholderTextColor","selectable","disabled","multiline","numberOfLines","maxLength","undefined","onFocus","_props$onFocus","call","target","onBlur","_props$onBlur","caretHidden","selectionColor","cursorColor","onChange","contextMenuHidden","onLayout","handleLayout","display","flexDirection","alignItems","marginTop","minHeight","padding","fontFamily","fontSize","fontWeight"],"sources":["textinput.component.tsx"],"sourcesContent":["import React, { ForwardedRef, useCallback, useEffect, useRef, useState } from 'react';\nimport { Animated, Platform, Text, TextInput, TextInputProps, TextStyle, View, ViewStyle } from 'react-native';\nimport { isArray } from 'lodash';\nimport IMask from 'imask';\nimport { FloatingLabel } from './floatinglabel.component';\n\ninterface SelectRange {\n start: number,\n end: number\n}\n\nconst WmCursor = React.memo((props: {\n color: string,\n height: number\n}) => {\n const opacityAnimation = useRef(new Animated.Value(0.5)).current;\n const runAnimation = useCallback(() => {\n Animated.timing(opacityAnimation, {\n toValue: 0.2,\n duration: 500,\n useNativeDriver: true\n }).start(() => {\n Animated.timing(opacityAnimation, {\n toValue: 0.6,\n duration: 500,\n useNativeDriver: true\n }).start(runAnimation);\n });\n }, []);\n useEffect(() => {\n runAnimation();\n }, []);\n return (\n <Animated.View \n testID=\"wm-custom-cursor\"\n style={{\n backgroundColor: props.color,\n width: 2,\n marginHorizontal: 1,\n height: props.height,\n opacity: opacityAnimation\n }}></Animated.View>\n );\n});\n\n// TODO: Monika WMS-31071 - Consider these improvements:\n// 1. 'words' mode: Use full Title Case regex: text.replace(/\\b\\w+/g, word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())\n// 2. 'sentences' mode: Add newline handling with regex: /(^|\\.\\s+|\\!\\s+|\\?\\s+|\\n\\s*)(\\w)/g\n// 3. Add TypeScript type for mode: type AutoCapitalizeMode = 'none' | 'sentences' | 'words' | 'characters'\nconst applyAutoCapitalize = (text: string, mode: string): string => {\n switch (mode) {\n case 'characters':\n return text.toUpperCase();\n case 'words':\n return text.replace(/\\b\\w/g, c => c.toUpperCase());\n case 'sentences':\n return text.replace(/(^\\w|[.!?]\\s+\\w)/g, c => c.toUpperCase());\n default:\n return text;\n }\n};\n\nexport const WMTextInput = React.forwardRef((props: (TextInputProps & \n {allowContentSelection: boolean,\n displayformat: string,\n maskchar: string,\n floatingLabel: string\n floatingLabelStyle: TextStyle & ViewStyle,\n activeFloatingLabelStyle: TextStyle & ViewStyle,\n inactiveFloatingLabelStyle?: TextStyle & ViewStyle,\n customDisplayValue?: string,\n isInputFocused: boolean,\n autoCapitalize?: string,\n background?: React.ReactNode,\n handleLayout?: any,\n style?: ViewStyle,\n variant?: 'filled' | 'outlined',\n labelBackground?: string,\n leadingiconclass?: string\n }), \n ref: ForwardedRef<TextInput>) => {\n const [selectRange, setSelectRange] = useState<SelectRange>(null as any);\n const [iMask, setIMask] = useState(null as any);\n const [displayCursor, setDisplayCursor] = useState(false);\n const value = useRef(props.value || '');\n const [x, forceUpdate] = useState(1);\n const [displayValue, setDisplayValue] = useState('');\n const element = useRef(null as any);\n // iMask initialization\n useEffect(() => {\n const iMask: any = props.displayformat ? new IMask.MaskedPattern({\n mask: props.displayformat,\n skipInvalid: true,\n lazy: false,\n definitions: {\n '9': /\\d/,\n 'A': /[a-zA-Z]/,\n 'a': /[a-z]/,\n '*': /\\w/\n }\n }) : null;\n if (iMask) {\n iMask.typedValue = value;\n setDisplayValue(iMask.displayValue)\n setIMask(iMask);\n }\n },[props.displayformat]);\n // set default value\n useEffect(() => {\n const defaultValue = props.defaultValue || props.value || '';\n if (defaultValue && !value.current) {\n value.current = defaultValue;\n onChangeText(defaultValue);\n }\n },[props.defaultValue, props.value]);\n // set cursor position in windows\n useEffect(() => {\n setTimeout(() => {\n if (Platform.OS === 'web' && (props.displayformat || props.maskchar)) {\n element?.current?.setSelectionRange(value.current.length, value.current.length);\n }\n }, 100);\n }, [value.current, props]);\n const onSelectionChange = useCallback((e: any) => {\n if (Platform.OS !== 'android') {\n return;\n }\n const selection = e?.nativeEvent?.selection;\n if (!props.allowContentSelection\n && selection\n && selection.end - selection.start > 0) {\n setSelectRange({\n start: value.current.length + 2,\n end: value.current.length + 2\n });\n } else if (selectRange && selectRange.end > 0){\n setSelectRange(null as any);\n }\n }, [props.allowContentSelection, value]);\n // when text changes\n const onChangeText = useCallback((text: string) => {\n if (!(iMask || props.maskchar)) {\n value.current = text;\n props.onChangeText && props.onChangeText(text);\n return;\n }\n let _value = value.current || '';\n if (value.current.length - text.length > 0) {\n _value = _value.substring(0, _value.length - (value.current.length - text.length));\n } else if (text.length - value.current.length > 0) {\n _value += text.slice(-1 * (text.length - value.current.length));\n }\n let formattedValue = _value;\n if(props.maskchar) {\n formattedValue = (_value.replace(/./g, props.maskchar));\n }\n if (iMask) {\n iMask.typedValue = _value;\n formattedValue = iMask.displayValue;\n }\n if (formattedValue !== displayValue) {\n value.current = _value;\n props.onChangeText && props.onChangeText(_value);\n }\n forceUpdate(x+ 1);\n setDisplayValue(formattedValue);\n }, [iMask, value, displayValue, props.onChangeText]);\n const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';\n const opts = {} as any;\n opts[valueExpr] = props.customDisplayValue ?? value.current;\n const textStyle = Object.assign({}, ...isArray(props.style) ? props.style: [props.style]);\n const hideInput = props.displayformat || props.maskchar;\n return (\n <>\n {props.background}\n {props.floatingLabel ? (\n <FloatingLabel\n moveUp={!!(value.current || props.isInputFocused || displayValue)}\n label={props.floatingLabel ?? props.placeholder} \n variant={props.variant}\n labelBackground={props.labelBackground}\n leadingiconclass={props.leadingiconclass}\n style={{\n ...(props.floatingLabelStyle || []),\n ...(props.isInputFocused \n ? (props.activeFloatingLabelStyle || {}) \n : (value.current || displayValue) \n ? (props.inactiveFloatingLabelStyle || {}) \n : {}\n )\n }}/>\n ) : null}\n {(Platform.OS === 'android' && !props.editable) ? (\n <Text \n style={[\n props.style, hideInput ? {\n color: 'transparent', \n backgroundColor: 'transparent',\n borderColor: 'transparent',\n zIndex: 1\n } : {},\n props.autoCapitalize ? {textTransform: 'capitalize'} : {},\n (!props.defaultValue && props.placeholder) ? (props.floatingLabel ? (props.isInputFocused ? {color: props.placeholderTextColor} : {color: 'transparent'}) : {color: props.placeholderTextColor}) : {}\n ]}\n selectable={false}\n disabled={true}\n {...(props.multiline) ? {numberOfLines: props.numberOfLines} : {}}\n >{props.defaultValue || props.placeholder}</Text>\n ) :\n (<TextInput\n {...props}\n {...hideInput || props.customDisplayValue ? opts: {}}\n {...((props.maxLength !== null) ? { maxLength: props.maxLength } : { maxLength: undefined })}\n placeholder={displayValue ? '' : props.placeholder }\n placeholderTextColor={props.floatingLabel ? (props.isInputFocused ? props.placeholderTextColor : 'transparent') : props.placeholderTextColor }\n style={[props.style, hideInput ? {\n color: 'transparent', \n ...(Platform.OS === 'android' && {\n opacity: 0,\n }),\n backgroundColor: 'transparent',\n borderColor: 'transparent',\n zIndex: 1\n } : {}]}\n onFocus={(e) => {\n props.onFocus?.(e);\n setDisplayCursor(true);\n element.current = e.target;\n }}\n onBlur={(e) => {\n props?.onBlur?.(e);\n setDisplayCursor(false);\n }}\n ref={ref}\n selection={selectRange}\n onSelectionChange={onSelectionChange}\n caretHidden={!!selectRange?.end}\n onChangeText={(text) => {\n if(Platform.OS === 'web' && props.autoCapitalize && props.autoCapitalize !== 'none') {\n onChangeText(applyAutoCapitalize(text, props.autoCapitalize));\n return;\n }\n onChangeText(text);\n }}\n {...hideInput ? {\n selectionColor: 'transparent',\n cursorColor: 'transparent',\n onChange : () => {}\n }: {}}\n contextMenuHidden={!props.allowContentSelection}\n autoCapitalize={props.autoCapitalize}\n onLayout={props.handleLayout}\n numberOfLines={1}\n >\n </TextInput>)\n }\n {\n hideInput ? (\n <View style={[props.style, {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n marginTop: -1 * (textStyle.height || textStyle.minHeight || 0)\n + (textStyle.marginTop || 0)}]}>\n <Text style={{ \n width: undefined,\n backgroundColor: 'transparent', \n borderColor: 'transparent',\n padding: 0,\n display: 'flex',\n color: textStyle.color,\n fontFamily: textStyle.fontFamily,\n fontSize: textStyle.fontSize,\n fontWeight: textStyle.fontWeight\n }}>\n {displayValue}\n </Text>\n {\n (displayCursor && !props.displayformat) ? React.createElement(WmCursor, {\n color: textStyle.color || '#000000',\n height: textStyle.fontSize || 14\n }) : null\n }\n </View>\n ) : null\n }\n </>\n );\n});\n"],"mappings":"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","ignoreList":[]}
@@ -3,12 +3,16 @@ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object
3
3
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
4
4
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
5
5
  import React from "react";
6
- import { Platform, View, TouchableOpacity } from "react-native";
7
- import { get } from "lodash";
6
+ import { Platform, View, TouchableOpacity as RNTouchableOpacity } from "react-native";
7
+ import { Pressable, TouchableNativeFeedback, TouchableOpacity } from "react-native-gesture-handler";
8
+ import Constants, { ExecutionEnvironment } from 'expo-constants';
9
+ import { cloneDeep, get } from "lodash";
8
10
  import injector from "./injector";
9
11
  import { TouchableRipple } from "react-native-paper";
12
+ import { deepCopy } from "./utils";
10
13
  export const TappableContext = /*#__PURE__*/React.createContext(null);
11
14
  import { UIPreferencesConsumer } from "./ui-preferences.context";
15
+ const isExpoGo = Constants.executionEnvironment === ExecutionEnvironment.StoreClient;
12
16
  export const ParentTappableContext = /*#__PURE__*/React.createContext(null);
13
17
  export class SyntheticEvent {
14
18
  constructor() {
@@ -21,12 +25,113 @@ export class SyntheticEvent {
21
25
  }
22
26
  export class Tappable extends React.Component {
23
27
  constructor(props) {
28
+ var _this$appConfig$isLeg, _this$appConfig;
24
29
  super(props);
25
30
  _defineProperty(this, "lastPress", 0);
26
31
  _defineProperty(this, "lastTap", 0);
27
32
  _defineProperty(this, "lastDoubleTap", 0);
28
33
  _defineProperty(this, "isLongTap", false);
29
34
  _defineProperty(this, "parent", null);
35
+ _defineProperty(this, "appConfig", injector.get('APP_CONFIG'));
36
+ _defineProperty(this, "isLegacyTappable", void 0);
37
+ _defineProperty(this, "getContainerStyles", commonStyles => {
38
+ var _inner, _inner2, _inner3, _inner4, _inner5, _inner6, _inner7;
39
+ let inner = {};
40
+ if (Array.isArray(commonStyles)) {
41
+ commonStyles.forEach(style => {
42
+ if (style) {
43
+ Object.keys(style).forEach(key => {
44
+ inner[key] = style[key];
45
+ });
46
+ }
47
+ });
48
+ } else {
49
+ inner = cloneDeep(commonStyles);
50
+ }
51
+ const outer = deepCopy(inner);
52
+ outer === null || outer === void 0 || delete outer["padding"];
53
+ outer === null || outer === void 0 || delete outer["paddingHorizontal"];
54
+ outer === null || outer === void 0 || delete outer["paddingVertical"];
55
+ outer === null || outer === void 0 || delete outer["paddingTop"];
56
+ outer === null || outer === void 0 || delete outer["paddingBottom"];
57
+ outer === null || outer === void 0 || delete outer["paddingLeft"];
58
+ outer === null || outer === void 0 || delete outer["paddingRight"];
59
+ (_inner = inner) === null || _inner === void 0 || delete _inner["margin"];
60
+ (_inner2 = inner) === null || _inner2 === void 0 || delete _inner2["marginHorizontal"];
61
+ (_inner3 = inner) === null || _inner3 === void 0 || delete _inner3["marginVertical"];
62
+ (_inner4 = inner) === null || _inner4 === void 0 || delete _inner4["marginLeft"];
63
+ (_inner5 = inner) === null || _inner5 === void 0 || delete _inner5["marginRight"];
64
+ (_inner6 = inner) === null || _inner6 === void 0 || delete _inner6["marginTop"];
65
+ (_inner7 = inner) === null || _inner7 === void 0 || delete _inner7["marginBottom"];
66
+ return {
67
+ outer,
68
+ inner
69
+ };
70
+ });
71
+ /*
72
+ TODO: Remove TouchableNativeFeedback and TouchableOpacity, and use Pressable only,
73
+ When the issue with Pressable not working in Expo GO is fixed from Expo. (this happens only in Android with Expo Go)
74
+ */
75
+ _defineProperty(this, "getTouchableRipple", (rippleColor, commonProps) => {
76
+ if (this.isLegacyTappable || Platform.OS === 'ios') {
77
+ return /*#__PURE__*/React.createElement(TouchableRipple, _extends({
78
+ rippleColor: rippleColor,
79
+ borderless: true
80
+ }, commonProps, {
81
+ onLayout: this.props.onLayout
82
+ }), /*#__PURE__*/React.createElement(React.Fragment, null, this.props.children));
83
+ }
84
+ if (isExpoGo) {
85
+ const containerStyle = this.getContainerStyles(commonProps.style);
86
+ delete commonProps["style"];
87
+ return /*#__PURE__*/React.createElement(TouchableNativeFeedback, _extends({}, rippleColor && {
88
+ background: TouchableNativeFeedback.Ripple(rippleColor, true)
89
+ }, {
90
+ onLayout: this.props.onLayout
91
+ }, commonProps, {
92
+ style: containerStyle.outer
93
+ }), /*#__PURE__*/React.createElement(View, {
94
+ style: containerStyle.inner
95
+ }, this.props.children));
96
+ }
97
+ return /*#__PURE__*/React.createElement(Pressable, _extends({
98
+ android_ripple: {
99
+ color: rippleColor,
100
+ borderless: true
101
+ },
102
+ onLayout: this.props.onLayout
103
+ }, commonProps), this.props.children);
104
+ });
105
+ _defineProperty(this, "getTouchable", commonProps => {
106
+ if (this.isLegacyTappable || Platform.OS === 'ios') {
107
+ return /*#__PURE__*/React.createElement(RNTouchableOpacity, _extends({
108
+ activeOpacity: this.props.disableTouchEffect ? 1 : 0.2,
109
+ onLayout: this.props.onLayout
110
+ }, commonProps), /*#__PURE__*/React.createElement(React.Fragment, null, this.props.children));
111
+ }
112
+ if (isExpoGo) {
113
+ const containerStyle = this.getContainerStyles(commonProps.style);
114
+ delete commonProps["style"];
115
+ return /*#__PURE__*/React.createElement(TouchableOpacity, _extends({
116
+ activeOpacity: this.props.disableTouchEffect ? 1 : 0.2,
117
+ onLayout: this.props.onLayout
118
+ }, commonProps, {
119
+ style: containerStyle.outer
120
+ }), /*#__PURE__*/React.createElement(View, {
121
+ style: containerStyle.inner
122
+ }, this.props.children));
123
+ }
124
+ return /*#__PURE__*/React.createElement(Pressable, _extends({
125
+ onLayout: this.props.onLayout
126
+ }, commonProps, {
127
+ style: ({
128
+ pressed
129
+ }) => [commonProps.style, {
130
+ opacity: !this.props.disableTouchEffect && pressed ? 0.2 : 1
131
+ }]
132
+ }), this.props.children);
133
+ });
134
+ this.isLegacyTappable = (_this$appConfig$isLeg = (_this$appConfig = this.appConfig) === null || _this$appConfig === void 0 ? void 0 : _this$appConfig.isLegacyTappable) !== null && _this$appConfig$isLeg !== void 0 ? _this$appConfig$isLeg : true;
30
135
  }
31
136
  async triggerTap(e = new SyntheticEvent()) {
32
137
  var _this$parent;
@@ -139,19 +244,8 @@ export class Tappable extends React.Component {
139
244
  this.setParent(parent);
140
245
  return /*#__PURE__*/React.createElement(ParentTappableContext.Provider, {
141
246
  value: this
142
- }, /*#__PURE__*/React.createElement(TouchableRipple, _extends({
143
- rippleColor: this.props.disableTouchEffect ? "transparent" : this.props.rippleColor,
144
- borderless: true
145
- }, commonProps, {
146
- onLayout: this.props.onLayout
147
- }), /*#__PURE__*/React.createElement(React.Fragment, null, this.props.children)));
148
- }) :
149
- /*#__PURE__*/
150
- //default value is 0.2
151
- React.createElement(TouchableOpacity, _extends({
152
- activeOpacity: this.props.disableTouchEffect ? 1 : 0.2,
153
- onLayout: this.props.onLayout
154
- }, commonProps), /*#__PURE__*/React.createElement(React.Fragment, null, this.props.children));
247
+ }, this.getTouchableRipple(this.props.disableTouchEffect ? "transparent" : this.props.rippleColor, commonProps));
248
+ }) : /*#__PURE__*/React.createElement(React.Fragment, null, this.getTouchable(commonProps));
155
249
  });
156
250
  }
157
251
  return /*#__PURE__*/React.createElement(View, _extends({
@@ -1 +1 @@
1
- {"version":3,"names":["React","Platform","View","TouchableOpacity","get","injector","TouchableRipple","TappableContext","createContext","UIPreferencesConsumer","ParentTappableContext","SyntheticEvent","constructor","_defineProperty","stopPropagation","propagationEnabled","Tappable","Component","props","triggerTap","e","_this$parent","target","onTap","invokeEventCallback","parent","onPressIn","_this$props$target","onTouchStart","onPress","lastPress","Date","now","currentTime","tapDelta","lastTap","isLongTap","_injector$FOCUSED_ELE","FOCUSED_ELEMENT","blur","lastDoubleTap","onDoubleTap","setTimeout","_this$parent2","onLongTap","_this$props$target2","_this$parent3","onPressOut","onTouchEnd","_this$props$target3","_this$parent4","setParent","render","commonProps","OS","accessibilityLabel","testID","accessible","accessibilityProps","disabled","proxy","style","styles","_e$target","tagName","onLongPress","onLongtap","onDoubletap","onTouchstart","onTouchend","createElement","preferences","enableRipple","Consumer","Provider","value","_extends","rippleColor","disableTouchEffect","borderless","onLayout","Fragment","children","activeOpacity"],"sources":["tappable.component.tsx"],"sourcesContent":["import { BaseComponent } from \"@wavemaker-ai/app-rn-runtime/core/base.component\";\nimport React from \"react\";\nimport { GestureResponderEvent, Platform, View, TouchableOpacity } from \"react-native\";\nimport { get } from \"lodash\";\nimport injector from \"./injector\";\nimport { TouchableRipple } from \"react-native-paper\";\nimport ThemeVariables from \"../styles/theme.variables\";\nimport { isDefined } from \"./utils\";\n\nexport const TappableContext = React.createContext<Tappable>(null as any);\nimport { UIPreferencesConsumer, UI_PREFERENCES } from \"./ui-preferences.context\";\n\nexport const ParentTappableContext = React.createContext<Tappable>(null as any);\ninterface TappableProps {\n testID?: string;\n children?: any\n styles?: any;\n target?: BaseComponent<any, any, any>;\n onTap?: (e: any) => void;\n onLongTap?: (e: any) => void;\n onDoubleTap?: (e: any) => void;\n onTouchStart? : (e: any) => void;\n onTouchEnd? : (e: any) => void;\n rippleColor?: string;\n accessibilityProps?: any;\n disableTouchEffect?:boolean;\n onLayout?: any;\n}\n\nexport class SyntheticEvent {\n // as the event is being used in onPress, onPressOut and onLongTap the TapEvent is renamed to SyntheticEvent\n propagationEnabled = true;\n\n constructor() {\n\n }\n\n stopPropagation() {\n this.propagationEnabled = false;\n }\n}\n\nexport class Tappable extends React.Component<TappableProps, any> {\n private lastPress = 0;\n private lastTap = 0;\n private lastDoubleTap = 0;\n private isLongTap = false;\n private parent:Tappable = null as any;\n\n constructor(props: any) {\n super(props);\n }\n\n async triggerTap(e = new SyntheticEvent()) {\n if (!e.propagationEnabled) {\n return;\n }\n const target = this.props.target;\n if (this.props.onTap) {\n await this.props.onTap(e);\n } else {\n await target?.invokeEventCallback('onTap', [e, target]);\n }\n this.parent?.triggerTap(e);\n }\n\n onPressIn(e: SyntheticEvent): void {\n this.props.onTouchStart && this.props.onTouchStart(e);\n this.props.target?.invokeEventCallback('onTouchstart', [e, this.props.target]);\n }\n\n onPress(e: SyntheticEvent): void {\n this.lastPress = Date.now();\n const target = this.props.target;\n const currentTime = Date.now();\n const tapDelta = currentTime - this.lastTap;\n if (this.isLongTap) {\n this.isLongTap = false;\n return;\n }\n if (e.propagationEnabled) {\n injector.FOCUSED_ELEMENT.get()?.blur();\n if(this.lastDoubleTap !== this.lastTap\n && tapDelta < 500) {\n this.props.onDoubleTap && this.props.onDoubleTap(e);\n setTimeout(() => {\n target?.invokeEventCallback('onDoubletap', [e, target]);\n }, 200);\n this.lastDoubleTap = currentTime;\n }\n setTimeout(() => {\n if (!e.propagationEnabled) {\n return;\n }\n if (this.props.onTap) {\n this.props.onTap(e);\n } else {\n target?.invokeEventCallback('onTap', [e, target]);\n }\n this.parent?.onPress(e);\n }, 200);\n this.lastTap = currentTime;\n }\n }\n\n onLongTap(e: SyntheticEvent): void {\n if(!e.propagationEnabled){\n return;\n }\n this.props.onLongTap && this.props.onLongTap(e);\n setTimeout(() => {\n this.props.target?.invokeEventCallback('onLongtap', [e, this.props.target]);\n this.parent?.onPressOut(e);\n }, 200);\n this.isLongTap = true;\n }\n\n onPressOut(e: SyntheticEvent): void {\n if(!e.propagationEnabled){\n return;\n }\n this.props.onTouchEnd && this.props.onTouchEnd(e);\n setTimeout(() => {\n this.props.target?.invokeEventCallback('onTouchend', [e, this.props.target]);\n this.parent?.onPressOut(e);\n }, 200);\n this.isLongTap = false;\n }\n private setParent(parent: Tappable) {\n if (parent && this.parent !== parent) {\n this.parent = parent;\n }\n }\n\n render() {\n const target = this.props.target;\n const commonProps = {\n ...(Platform.OS === 'android' || Platform.OS === 'web') ? {\n accessibilityLabel: this.props.testID,\n testID: this.props.testID\n }: {\n accessible: false,\n testID: this.props.testID\n },\n ...this.props.accessibilityProps,\n disabled:get(target?.proxy, 'disabled'),\n style:this.props.styles,\n onPressIn:(e?: GestureResponderEvent) => this.onPressIn(new SyntheticEvent()),\n onPress:(e?: GestureResponderEvent) => {\n if ((e?.target as any)?.tagName === 'INPUT') {\n return;\n }\n this.onPress(new SyntheticEvent())\n },\n onLongPress:(e?: GestureResponderEvent) => this.onLongTap(new SyntheticEvent()),\n onPressOut:(e?: GestureResponderEvent) => this.onPressOut(new SyntheticEvent())\n };\n if (target?.props.onTap\n || target?.props.onLongtap\n || target?.props.onDoubletap\n || target?.props.onTouchstart\n || target?.props.onTouchend\n || this.props.onTap\n || this.props.onLongTap\n || this.props.onDoubleTap\n || this.props.onTouchStart\n || this.props.onTouchEnd) {\n return (\n <UIPreferencesConsumer>\n {(preferences: UI_PREFERENCES) => {\n return preferences.enableRipple != false ? (\n <ParentTappableContext.Consumer>{(parent) => {\n this.setParent(parent);\n return(\n <ParentTappableContext.Provider value={this}>\n <TouchableRipple\n rippleColor={this.props.disableTouchEffect ? \"transparent\" : this.props.rippleColor}\n borderless={true}\n {...commonProps}\n onLayout={this.props.onLayout}\n >\n <>{this.props.children}</>\n </TouchableRipple>\n </ParentTappableContext.Provider>\n )\n }}</ParentTappableContext.Consumer>): (\n //default value is 0.2\n <TouchableOpacity\n activeOpacity={this.props.disableTouchEffect ? 1 : 0.2}\n onLayout={this.props.onLayout}\n {...commonProps}\n >\n <>{this.props.children}</>\n </TouchableOpacity>);\n }}\n </UIPreferencesConsumer>\n );\n }\n return (\n <View\n style={this.props.styles}\n onLayout={this.props.onLayout}\n {...this.props.accessibilityProps}\n >\n {this.props.children}\n </View>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Platform","View","TouchableOpacity","RNTouchableOpacity","Pressable","TouchableNativeFeedback","Constants","ExecutionEnvironment","cloneDeep","get","injector","TouchableRipple","deepCopy","TappableContext","createContext","UIPreferencesConsumer","isExpoGo","executionEnvironment","StoreClient","ParentTappableContext","SyntheticEvent","constructor","_defineProperty","stopPropagation","propagationEnabled","Tappable","Component","props","_this$appConfig$isLeg","_this$appConfig","commonStyles","_inner","_inner2","_inner3","_inner4","_inner5","_inner6","_inner7","inner","Array","isArray","forEach","style","Object","keys","key","outer","rippleColor","commonProps","isLegacyTappable","OS","createElement","_extends","borderless","onLayout","Fragment","children","containerStyle","getContainerStyles","background","Ripple","android_ripple","color","activeOpacity","disableTouchEffect","pressed","opacity","appConfig","triggerTap","e","_this$parent","target","onTap","invokeEventCallback","parent","onPressIn","_this$props$target","onTouchStart","onPress","lastPress","Date","now","currentTime","tapDelta","lastTap","isLongTap","_injector$FOCUSED_ELE","FOCUSED_ELEMENT","blur","lastDoubleTap","onDoubleTap","setTimeout","_this$parent2","onLongTap","_this$props$target2","_this$parent3","onPressOut","onTouchEnd","_this$props$target3","_this$parent4","setParent","render","accessibilityLabel","testID","accessible","accessibilityProps","disabled","proxy","styles","_e$target","tagName","onLongPress","onLongtap","onDoubletap","onTouchstart","onTouchend","preferences","enableRipple","Consumer","Provider","value","getTouchableRipple","getTouchable"],"sources":["tappable.component.tsx"],"sourcesContent":["import { BaseComponent } from \"@wavemaker-ai/app-rn-runtime/core/base.component\";\nimport React from \"react\";\nimport { GestureResponderEvent, Platform, View, TouchableOpacity as RNTouchableOpacity } from \"react-native\";\nimport { Pressable, TouchableNativeFeedback, TouchableOpacity } from \"react-native-gesture-handler\";\nimport Constants, { ExecutionEnvironment } from 'expo-constants';\nimport { cloneDeep, get } from \"lodash\";\nimport injector from \"./injector\";\nimport { TouchableRipple } from \"react-native-paper\";\nimport ThemeVariables from \"../styles/theme.variables\";\nimport { deepCopy, isDefined } from \"./utils\";\nimport AppConfig from '@wavemaker-ai/app-rn-runtime/core/AppConfig';\n\nexport const TappableContext = React.createContext<Tappable>(null as any);\nimport { UIPreferencesConsumer, UI_PREFERENCES } from \"./ui-preferences.context\";\n\nconst isExpoGo = Constants.executionEnvironment === ExecutionEnvironment.StoreClient;\n\nexport const ParentTappableContext = React.createContext<Tappable>(null as any);\ninterface TappableProps {\n testID?: string;\n children?: any\n styles?: any;\n target?: BaseComponent<any, any, any>;\n onTap?: (e: any) => void;\n onLongTap?: (e: any) => void;\n onDoubleTap?: (e: any) => void;\n onTouchStart? : (e: any) => void;\n onTouchEnd? : (e: any) => void;\n rippleColor?: string;\n accessibilityProps?: any;\n disableTouchEffect?:boolean;\n onLayout?: any;\n}\n\nexport class SyntheticEvent {\n // as the event is being used in onPress, onPressOut and onLongTap the TapEvent is renamed to SyntheticEvent\n propagationEnabled = true;\n\n constructor() {\n\n }\n\n stopPropagation() {\n this.propagationEnabled = false;\n }\n}\n\nexport class Tappable extends React.Component<TappableProps, any> {\n private lastPress = 0;\n private lastTap = 0;\n private lastDoubleTap = 0;\n private isLongTap = false;\n private parent:Tappable = null as any;\n private appConfig: any = injector.get<AppConfig>('APP_CONFIG');;\n private isLegacyTappable: boolean\n\n constructor(props: any) {\n super(props);\n this.isLegacyTappable = this.appConfig?.isLegacyTappable ?? true;\n }\n\n async triggerTap(e = new SyntheticEvent()) {\n if (!e.propagationEnabled) {\n return;\n }\n const target = this.props.target;\n if (this.props.onTap) {\n await this.props.onTap(e);\n } else {\n await target?.invokeEventCallback('onTap', [e, target]);\n }\n this.parent?.triggerTap(e);\n }\n\n onPressIn(e: SyntheticEvent): void {\n this.props.onTouchStart && this.props.onTouchStart(e);\n this.props.target?.invokeEventCallback('onTouchstart', [e, this.props.target]);\n }\n\n onPress(e: SyntheticEvent): void {\n this.lastPress = Date.now();\n const target = this.props.target;\n const currentTime = Date.now();\n const tapDelta = currentTime - this.lastTap;\n if (this.isLongTap) {\n this.isLongTap = false;\n return;\n }\n if (e.propagationEnabled) {\n injector.FOCUSED_ELEMENT.get()?.blur();\n if(this.lastDoubleTap !== this.lastTap\n && tapDelta < 500) {\n this.props.onDoubleTap && this.props.onDoubleTap(e);\n setTimeout(() => {\n target?.invokeEventCallback('onDoubletap', [e, target]);\n }, 200);\n this.lastDoubleTap = currentTime;\n }\n setTimeout(() => {\n if (!e.propagationEnabled) {\n return;\n }\n if (this.props.onTap) {\n this.props.onTap(e);\n } else {\n target?.invokeEventCallback('onTap', [e, target]);\n }\n this.parent?.onPress(e);\n }, 200);\n this.lastTap = currentTime;\n }\n }\n\n onLongTap(e: SyntheticEvent): void {\n if(!e.propagationEnabled){\n return;\n }\n this.props.onLongTap && this.props.onLongTap(e);\n setTimeout(() => {\n this.props.target?.invokeEventCallback('onLongtap', [e, this.props.target]);\n this.parent?.onPressOut(e);\n }, 200);\n this.isLongTap = true;\n }\n\n onPressOut(e: SyntheticEvent): void {\n if(!e.propagationEnabled){\n return;\n }\n this.props.onTouchEnd && this.props.onTouchEnd(e);\n setTimeout(() => {\n this.props.target?.invokeEventCallback('onTouchend', [e, this.props.target]);\n this.parent?.onPressOut(e);\n }, 200);\n this.isLongTap = false;\n }\n private setParent(parent: Tappable) {\n if (parent && this.parent !== parent) {\n this.parent = parent;\n }\n }\n\n\n private getContainerStyles = (commonStyles: any) => {\n let inner: any = {}\n if(Array.isArray(commonStyles)) {\n commonStyles.forEach((style: any) => {\n if(style) {\n Object.keys(style).forEach(key => {\n inner[key] = style[key];\n })\n }\n })\n } else {\n inner = cloneDeep(commonStyles)\n }\n const outer: any = deepCopy(inner);\n\n delete outer?.[\"padding\"];\n delete outer?.[\"paddingHorizontal\"];\n delete outer?.[\"paddingVertical\"];\n delete outer?.[\"paddingTop\"];\n delete outer?.[\"paddingBottom\"];\n delete outer?.[\"paddingLeft\"];\n delete outer?.[\"paddingRight\"];\n\n delete inner?.[\"margin\"];\n delete inner?.[\"marginHorizontal\"];\n delete inner?.[\"marginVertical\"];\n delete inner?.[\"marginLeft\"];\n delete inner?.[\"marginRight\"];\n delete inner?.[\"marginTop\"];\n delete inner?.[\"marginBottom\"];\n\n return {\n outer,\n inner\n }\n }\n\n /*\n TODO: Remove TouchableNativeFeedback and TouchableOpacity, and use Pressable only,\n When the issue with Pressable not working in Expo GO is fixed from Expo. (this happens only in Android with Expo Go)\n */\n getTouchableRipple = (rippleColor: string | undefined, commonProps: any) => {\n if(this.isLegacyTappable || Platform.OS === 'ios') {\n return (\n <TouchableRipple \n rippleColor={rippleColor} \n borderless={true} \n {...commonProps}\n onLayout={this.props.onLayout}\n >\n <>{this.props.children}</>\n </TouchableRipple>\n )\n }\n\n if(isExpoGo) {\n const containerStyle = this.getContainerStyles(commonProps.style);\n delete commonProps[\"style\"];\n \n return (\n <TouchableNativeFeedback\n {...rippleColor && {background: TouchableNativeFeedback.Ripple(rippleColor, true)}}\n onLayout={this.props.onLayout}\n {...commonProps}\n style={containerStyle.outer}\n >\n <View style={containerStyle.inner}>\n {this.props.children}\n </View>\n </TouchableNativeFeedback>\n )\n }\n\n return (\n <Pressable\n android_ripple={{\n color: rippleColor,\n borderless: true\n }}\n onLayout={this.props.onLayout}\n {...commonProps}\n >\n {this.props.children}\n </Pressable>\n )\n }\n \n\n getTouchable = (commonProps: any) => {\n if(this.isLegacyTappable || Platform.OS === 'ios') {\n return (\n <RNTouchableOpacity \n activeOpacity={this.props.disableTouchEffect ? 1 : 0.2} \n onLayout={this.props.onLayout}\n {...commonProps}\n >\n <>{this.props.children}</>\n </RNTouchableOpacity>\n )\n }\n\n if(isExpoGo) {\n const containerStyle = this.getContainerStyles(commonProps.style);\n delete commonProps[\"style\"];\n\n return (\n <TouchableOpacity\n activeOpacity={this.props.disableTouchEffect ? 1 : 0.2}\n onLayout={this.props.onLayout}\n {...commonProps}\n style={containerStyle.outer}\n\n >\n <View style={containerStyle.inner}>\n {this.props.children}\n </View>\n </TouchableOpacity>\n )\n }\n\n return (\n <Pressable\n onLayout={this.props.onLayout}\n {...commonProps}\n style={({pressed}) => [\n commonProps.style, \n { opacity: !this.props.disableTouchEffect && pressed ? 0.2 : 1}\n ]}\n >\n {this.props.children}\n </Pressable>\n )\n }\n\n render() {\n const target = this.props.target;\n const commonProps = {\n ...(Platform.OS === 'android' || Platform.OS === 'web') ? {\n accessibilityLabel: this.props.testID,\n testID: this.props.testID\n }: {\n accessible: false,\n testID: this.props.testID\n },\n ...this.props.accessibilityProps,\n disabled:get(target?.proxy, 'disabled'),\n style:this.props.styles,\n onPressIn:(e?: GestureResponderEvent) => this.onPressIn(new SyntheticEvent()),\n onPress:(e?: GestureResponderEvent) => {\n if ((e?.target as any)?.tagName === 'INPUT') {\n return;\n }\n this.onPress(new SyntheticEvent())\n },\n onLongPress:(e?: GestureResponderEvent) => this.onLongTap(new SyntheticEvent()),\n onPressOut:(e?: GestureResponderEvent) => this.onPressOut(new SyntheticEvent())\n };\n if (target?.props.onTap\n || target?.props.onLongtap\n || target?.props.onDoubletap\n || target?.props.onTouchstart\n || target?.props.onTouchend\n || this.props.onTap\n || this.props.onLongTap\n || this.props.onDoubleTap\n || this.props.onTouchStart\n || this.props.onTouchEnd) {\n return (\n <UIPreferencesConsumer>\n {(preferences: UI_PREFERENCES) => {\n return preferences.enableRipple != false ? (\n <ParentTappableContext.Consumer>{(parent) => {\n this.setParent(parent);\n return(\n <ParentTappableContext.Provider value={this}>\n {this.getTouchableRipple(\n this.props.disableTouchEffect ? \"transparent\" : this.props.rippleColor, \n commonProps\n )}\n </ParentTappableContext.Provider>\n )\n }}</ParentTappableContext.Consumer>): (\n <>\n {this.getTouchable(commonProps)}\n </>\n )\n }}\n </UIPreferencesConsumer>\n );\n }\n return (\n <View\n style={this.props.styles}\n onLayout={this.props.onLayout}\n {...this.props.accessibilityProps}\n >\n {this.props.children}\n </View>);\n }\n}\n"],"mappings":"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","ignoreList":[]}