@wavemaker/app-rn-runtime 11.14.1-rc.6311 → 11.14.2-1.6423

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 (111) hide show
  1. package/components/advanced/carousel/carousel.component.js +2 -3
  2. package/components/advanced/carousel/carousel.component.js.map +1 -1
  3. package/components/advanced/carousel/carousel.styles.js +3 -0
  4. package/components/advanced/carousel/carousel.styles.js.map +1 -1
  5. package/components/advanced/customwidgetcontainer/customwidgetcontainer.component.js +14 -0
  6. package/components/advanced/customwidgetcontainer/customwidgetcontainer.component.js.map +1 -0
  7. package/components/advanced/customwidgetcontainer/customwidgetcontainer.props.js +11 -0
  8. package/components/advanced/customwidgetcontainer/customwidgetcontainer.props.js.map +1 -0
  9. package/components/advanced/customwidgetcontainer/customwidgetcontainer.styles.js +14 -0
  10. package/components/advanced/customwidgetcontainer/customwidgetcontainer.styles.js.map +1 -0
  11. package/components/basic/anchor/anchor.styles.js +5 -0
  12. package/components/basic/anchor/anchor.styles.js.map +1 -1
  13. package/components/basic/bottomsheet/bottomsheet.component.js +30 -0
  14. package/components/basic/bottomsheet/bottomsheet.component.js.map +1 -1
  15. package/components/basic/icon/icon.component.js +5 -3
  16. package/components/basic/icon/icon.component.js.map +1 -1
  17. package/components/basic/icon/icon.styles.js +5 -0
  18. package/components/basic/icon/icon.styles.js.map +1 -1
  19. package/components/basic/message/message.component.js.map +1 -1
  20. package/components/basic/picture/picture.component.js +42 -15
  21. package/components/basic/picture/picture.component.js.map +1 -1
  22. package/components/basic/progress-circle/progress-circle.component.js +3 -3
  23. package/components/basic/progress-circle/progress-circle.component.js.map +1 -1
  24. package/components/basic/search/search.component.js +4 -3
  25. package/components/basic/search/search.component.js.map +1 -1
  26. package/components/container/accordion/accordion.component.js +3 -3
  27. package/components/container/accordion/accordion.component.js.map +1 -1
  28. package/components/container/accordion/accordion.styles.js +4 -1
  29. package/components/container/accordion/accordion.styles.js.map +1 -1
  30. package/components/container/container.component.js +182 -11
  31. package/components/container/container.component.js.map +1 -1
  32. package/components/container/container.props.js +5 -0
  33. package/components/container/container.props.js.map +1 -1
  34. package/components/container/linearlayout/linearlayout.component.js +1 -1
  35. package/components/container/linearlayout/linearlayout.component.js.map +1 -1
  36. package/components/container/tabs/tabheader/tabheader.component.js +23 -17
  37. package/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
  38. package/components/container/tabs/tabs.component.js +5 -4
  39. package/components/container/tabs/tabs.component.js.map +1 -1
  40. package/components/container/tabs/tabs.styles.js +4 -0
  41. package/components/container/tabs/tabs.styles.js.map +1 -1
  42. package/components/container/wizard/wizard.component.js +1 -1
  43. package/components/container/wizard/wizard.component.js.map +1 -1
  44. package/components/container/wizard/wizard.props.js +1 -0
  45. package/components/container/wizard/wizard.props.js.map +1 -1
  46. package/components/container/wizard/wizard.styles.js +1 -3
  47. package/components/container/wizard/wizard.styles.js.map +1 -1
  48. package/components/container/wizard/wizardstep/wizardstep.component.js +2 -2
  49. package/components/container/wizard/wizardstep/wizardstep.component.js.map +1 -1
  50. package/components/data/form/form-body/form-body.component.js +2 -1
  51. package/components/data/form/form-body/form-body.component.js.map +1 -1
  52. package/components/data/form/form-footer/form-footer.component.js +2 -1
  53. package/components/data/form/form-footer/form-footer.component.js.map +1 -1
  54. package/components/data/form/form.styles.js +8 -0
  55. package/components/data/form/form.styles.js.map +1 -1
  56. package/components/input/chips/chips.component.js +66 -20
  57. package/components/input/chips/chips.component.js.map +1 -1
  58. package/components/input/chips/chips.styles.js +43 -0
  59. package/components/input/chips/chips.styles.js.map +1 -1
  60. package/components/input/currency/currency.component.js +2 -1
  61. package/components/input/currency/currency.component.js.map +1 -1
  62. package/components/input/currency/currency.styles.js +6 -1
  63. package/components/input/currency/currency.styles.js.map +1 -1
  64. package/components/input/epoch/base-datetime.component.js.map +1 -1
  65. package/components/input/epoch/datetime/datetime.styles.js.map +1 -1
  66. package/components/input/number/number.component.js +2 -1
  67. package/components/input/number/number.component.js.map +1 -1
  68. package/components/input/radioset/radioset.component.js +6 -3
  69. package/components/input/radioset/radioset.component.js.map +1 -1
  70. package/components/input/radioset/radioset.styles.js.map +1 -1
  71. package/components/input/select/select.component.js +2 -1
  72. package/components/input/select/select.component.js.map +1 -1
  73. package/components/input/slider/slider.component.js +18 -21
  74. package/components/input/slider/slider.component.js.map +1 -1
  75. package/components/input/text/text.component.js +2 -1
  76. package/components/input/text/text.component.js.map +1 -1
  77. package/components/input/text/text.styles.js +12 -0
  78. package/components/input/text/text.styles.js.map +1 -1
  79. package/components/input/textarea/textarea.component.js +2 -1
  80. package/components/input/textarea/textarea.component.js.map +1 -1
  81. package/components/input/toggle/toggle.component.js +26 -1
  82. package/components/input/toggle/toggle.component.js.map +1 -1
  83. package/components/input/toggle/toggle.props.js +2 -0
  84. package/components/input/toggle/toggle.props.js.map +1 -1
  85. package/components/input/toggle/toggle.styles.js +27 -1
  86. package/components/input/toggle/toggle.styles.js.map +1 -1
  87. package/components/navigation/popover/popover.component.js +4 -4
  88. package/components/navigation/popover/popover.component.js.map +1 -1
  89. package/components/navigation/popover/popover.props.js +1 -0
  90. package/components/navigation/popover/popover.props.js.map +1 -1
  91. package/components/navigation/popover/popover.styles.js +13 -0
  92. package/components/navigation/popover/popover.styles.js.map +1 -1
  93. package/core/base.component.js +76 -10
  94. package/core/base.component.js.map +1 -1
  95. package/core/components/textinput.component.js +5 -1
  96. package/core/components/textinput.component.js.map +1 -1
  97. package/core/tappable.component.js +1 -1
  98. package/core/tappable.component.js.map +1 -1
  99. package/npm-shrinkwrap.json +1664 -1831
  100. package/package-lock.json +1664 -1831
  101. package/package.json +3 -2
  102. package/runtime/base-customwidget.component.js +52 -0
  103. package/runtime/base-customwidget.component.js.map +1 -0
  104. package/styles/background.component.js +2 -2
  105. package/styles/background.component.js.map +1 -1
  106. package/styles/calc.js +165 -0
  107. package/styles/calc.js.map +1 -0
  108. package/styles/color-mix.js +82 -0
  109. package/styles/color-mix.js.map +1 -0
  110. package/styles/theme.js +104 -23
  111. package/styles/theme.js.map +1 -1
@@ -18,6 +18,8 @@ export default class WmToggleProps extends BaseProps {
18
18
  _defineProperty(this, "invokeEvent", void 0);
19
19
  _defineProperty(this, "skeletonheight", null);
20
20
  _defineProperty(this, "skeletonwidth", null);
21
+ _defineProperty(this, "toggleIcon", false);
22
+ _defineProperty(this, "showCheckIcon", false);
21
23
  }
22
24
  }
23
25
  //# sourceMappingURL=toggle.props.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BaseProps","WmToggleProps","constructor","args","_defineProperty","undefined"],"sources":["toggle.props.ts"],"sourcesContent":["import {AccessibilityRole} from 'react-native';\nimport { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmToggleProps extends BaseProps {\n checkedvalue: any = true;\n uncheckedvalue: any = false;\n datavalue: any;\n readonly? = false;\n onFieldChange: any;\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = \"togglebutton\";\n accessibilitylabelledby?: string = undefined;\n invokeEvent?: Function;\n skeletonheight?: string = null as any;\n skeletonwidth?: string = null as any;\n}\n"],"mappings":";;;AACA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,aAAa,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,uBAC/B,IAAI;IAAAA,eAAA,yBACF,KAAK;IAAAA,eAAA;IAAAA,eAAA,mBAEf,KAAK;IAAAA,eAAA;IAAAA,eAAA,qBAEM,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA,4BACe,cAAc;IAAAA,eAAA,kCACnBC,SAAS;IAAAD,eAAA;IAAAA,eAAA,yBAElB,IAAI;IAAAA,eAAA,wBACL,IAAI;EAAA;AAC/B","ignoreList":[]}
1
+ {"version":3,"names":["BaseProps","WmToggleProps","constructor","args","_defineProperty","undefined"],"sources":["toggle.props.ts"],"sourcesContent":["import {AccessibilityRole} from 'react-native';\nimport { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmToggleProps extends BaseProps {\n checkedvalue: any = true;\n uncheckedvalue: any = false;\n datavalue: any;\n readonly? = false;\n onFieldChange: any;\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = \"togglebutton\";\n accessibilitylabelledby?: string = undefined;\n invokeEvent?: Function;\n skeletonheight?: string = null as any;\n skeletonwidth?: string = null as any;\n toggleIcon?:boolean = false;\n showCheckIcon?:boolean = false;\n}\n"],"mappings":";;;AACA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,aAAa,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,uBAC/B,IAAI;IAAAA,eAAA,yBACF,KAAK;IAAAA,eAAA;IAAAA,eAAA,mBAEf,KAAK;IAAAA,eAAA;IAAAA,eAAA,qBAEM,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA,4BACe,cAAc;IAAAA,eAAA,kCACnBC,SAAS;IAAAD,eAAA;IAAAA,eAAA,yBAElB,IAAI;IAAAA,eAAA,wBACL,IAAI;IAAAA,eAAA,qBACP,KAAK;IAAAA,eAAA,wBACF,KAAK;EAAA;AAChC","ignoreList":[]}
@@ -20,6 +20,26 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
20
20
  backgroundSize: '100% 100%',
21
21
  backgroundPosition: 'center'
22
22
  },
23
+ checkicon: {
24
+ root: {},
25
+ text: {
26
+ fontSize: 16
27
+ },
28
+ icon: {
29
+ color: themeVariables.toggleOnColor,
30
+ padding: 0
31
+ }
32
+ },
33
+ uncheckicon: {
34
+ root: {},
35
+ text: {
36
+ fontSize: 16
37
+ },
38
+ icon: {
39
+ color: themeVariables.toggleOffColor,
40
+ padding: 0
41
+ }
42
+ },
23
43
  skeleton: {
24
44
  root: {
25
45
  width: 52,
@@ -57,7 +77,13 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
57
77
  });
58
78
  addStyle(DEFAULT_CLASS + '-rtl', '', {});
59
79
  addStyle(DEFAULT_CLASS + '-disabled', '', {
60
- root: {}
80
+ root: {
81
+ opacity: 0.5
82
+ },
83
+ handle: {
84
+ backgroundColor: themeVariables.toggleHandleDisableColor,
85
+ opacity: 1
86
+ }
61
87
  });
62
88
  });
63
89
  //# sourceMappingURL=toggle.styles.js.map
@@ -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","skeleton","minWidth","backgroundColor","toggleOnColor","toggleHandleColor","toggleOffColor","borderColor","toggleOffBorderColor","borderWidth","toggleHandleDisableColor"],"sources":["toggle.styles.ts"],"sourcesContent":["import BASE_THEME from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { ViewStyle } from 'react-native';\nimport { WmSkeletonStyles } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.styles';\n\nexport type WmToggleStyles = BaseStyles & {\n handle: ViewStyle,\n skeleton: WmSkeletonStyles\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 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 });\n});\n"],"mappings":"AAAA,OAAOA,UAAU,MAAM,wCAAwC;AAC/D,SAAqBC,YAAY,QAAQ,+CAA+C;AASxF,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,QAAQ,EAAE;MACRZ,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;MACLc,eAAe,EAAEjB,cAAc,CAACkB;IAClC,CAAC;IACDR,MAAM,EAAE;MACNO,eAAe,EAAEjB,cAAc,CAACmB;IAClC;EACF,CAAmB,CAAC;EACpBlB,QAAQ,CAACH,aAAa,GAAG,MAAM,EAAE,EAAE,EAAE;IACnCK,IAAI,EAAG;MACLc,eAAe,EAAEjB,cAAc,CAACoB,cAAc;MAC9CC,WAAW,EAAErB,cAAc,CAACsB,oBAAoB;MAChDC,WAAW,EAAE;IACf,CAAC;IACDb,MAAM,EAAE;MACNO,eAAe,EAAEjB,cAAc,CAACwB;IAClC;EACF,CAAmB,CAAC;EACpBvB,QAAQ,CAACH,aAAa,GAAG,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;EACxCG,QAAQ,CAACH,aAAa,GAAG,WAAW,EAAE,EAAE,EAAE;IACtCK,IAAI,EAAG,CAAC;EACZ,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/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { ViewStyle } from 'react-native';\nimport { WmSkeletonStyles } from '@wavemaker/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,wCAAwC;AAC/D,SAAqBC,YAAY,QAAQ,+CAA+C;AAYxF,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 @@ import { ModalConsumer } from '@wavemaker/app-rn-runtime/core/modal.service';
10
10
  import WmAnchor from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.component';
11
11
  import WmPopoverProps from './popover.props';
12
12
  import { DEFAULT_CLASS } from './popover.styles';
13
- import WmContainer from '../../container/container.component';
13
+ import WmContainer from '@wavemaker/app-rn-runtime/components/container/container.component';
14
14
  import { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';
15
15
  import { ScrollView, GestureHandlerRootView } from 'react-native-gesture-handler';
16
16
  import { SafeAreaInsetsContext } from 'react-native-safe-area-context';
@@ -70,10 +70,10 @@ export default class WmPopover extends BaseComponent {
70
70
  }
71
71
  this.isRTL ? position.right = x : position.left = x;
72
72
  if (x + popoverwidth > windowDimensions.width) {
73
- this.isRTL ? position.right = x + width - popoverwidth : position.left = x;
73
+ this.isRTL ? position.right = x + width - popoverwidth : position.left = x + width - popoverwidth;
74
74
  }
75
- const yOffset = Platform.OS == 'ios' ? 0 : (this === null || this === void 0 || (_this$insets = this.insets) === null || _this$insets === void 0 ? void 0 : _this$insets.top) || 0;
76
- position.top = y + height + yOffset;
75
+ const yOffset = Platform.OS == 'ios' ? (this === null || this === void 0 || (_this$insets = this.insets) === null || _this$insets === void 0 ? void 0 : _this$insets.top) || 0 : 0;
76
+ position.top = y + height - yOffset;
77
77
  this.updateState({
78
78
  position: position
79
79
  }, callback);
@@ -1 +1 @@
1
- {"version":3,"names":["React","isString","TouchableOpacity","Text","View","Dimensions","Animated","PanResponder","Platform","BaseComponent","BaseComponentState","ModalConsumer","WmAnchor","WmPopoverProps","DEFAULT_CLASS","WmContainer","AccessibilityWidgetType","getAccessibilityProps","ScrollView","GestureHandlerRootView","SafeAreaInsetsContext","WmPopoverState","constructor","args","_defineProperty","WmPopover","props","Value","top","bottom","left","right","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderMove","_","gestureState","dy","Number","styles","popover","minHeight","dragY","setValue","onPanResponderRelease","timing","toValue","maxHeight","duration","useNativeDriver","start","callback","position","state","type","windowDimensions","get","view","measureInWindow","x","y","width","height","_this$insets","popoverwidth","parseInt","isRTL","yOffset","OS","insets","updateState","e","computePosition","isOpened","invokeEventCallback","stopPropagation","autoopen","showPopover","getDefaultStyles","isActionSheet","theme","getStyle","defaultClass","renderPopoverContent","dimensions","createElement","style","mergeStyle","onScroll","event","notify","scrollEventThrottle","accessible","accessibilityViewIsModal","title","_extends","getTestPropsForAction","activeOpacity","onPress","autoclose","hide","popoverContent","root","onLoad","renderPartial","p","children","onPropertyChange","name","$new","$old","prepareModalOptions","content","modalService","o","modalOptions","modalStyle","modal","contentStyle","modalContent","isModal","centered","animation","contentanimation","onClose","setState","isPartialLoaded","hideModal","renderWidget","popoverheight","Consumer","onLayout","handleLayout","ref","POVOVER","_background","id","getTestId","caption","badgevalue","iconclass","iconposition","iconheight","iconwidth","iconmargin","iconurl","link","onTap","showModal","panResponder","panHandlers"],"sources":["popover.component.tsx"],"sourcesContent":["import React from 'react';\nimport { isString } from 'lodash-es';\nimport { LayoutChangeEvent, TouchableOpacity, Text, View, Dimensions, Animated, PanResponder, Platform } from 'react-native';\nimport { BaseComponent, BaseComponentState, BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport { SyntheticEvent } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { ModalConsumer, ModalOptions, ModalService } from '@wavemaker/app-rn-runtime/core/modal.service';\nimport WmAnchor from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.component';\n\nimport WmPopoverProps from './popover.props';\nimport { DEFAULT_CLASS, WmPopoverStyles } from './popover.styles';\nimport WmContainer from '../../container/container.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \nimport { ScrollView, GestureHandlerRootView } from 'react-native-gesture-handler';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { SafeAreaInsetsContext, EdgeInsets } from 'react-native-safe-area-context';\n\n\nexport class WmPopoverState extends BaseComponentState<WmPopoverProps> {\n isOpened: boolean = false;\n modalOptions = {} as ModalOptions;\n position = {} as PopoverPosition;\n isPartialLoaded = false;\n}\n\nexport interface PopoverPosition {\n top?: number;\n bottom?: number;\n left?: number;\n right?: number;\n}\n\nexport default class WmPopover extends BaseComponent<WmPopoverProps, WmPopoverState, WmPopoverStyles> {\n\n view: View = null as any;\n dragY = new Animated.Value(0);\n insets: EdgeInsets | null = {\n top: 0, bottom: 0, left: 0, right: 0\n };\n\n constructor(props: WmPopoverProps) {\n super(props, DEFAULT_CLASS, new WmPopoverProps(), new WmPopoverState());\n\n if (this.state.props.autoopen) {\n this.showPopover(); \n }\n }\n\n public panResponder = PanResponder.create({\n onStartShouldSetPanResponder: () => true,\n onMoveShouldSetPanResponder: () => true,\n onPanResponderMove: (_, gestureState) => {\n if (gestureState.dy > 0 && gestureState.dy < Number(this.styles.popover.minHeight)) {\n this.dragY.setValue(Number(this.styles.popover.minHeight) - gestureState.dy);\n }\n },\n onPanResponderRelease: (_, gestureState) => {\n if (gestureState.dy < -50) {\n Animated.timing(this.dragY, {\n toValue: Number(this.styles.popover.maxHeight),\n duration: 500,\n useNativeDriver: false,\n }).start();\n } else {\n Animated.timing(this.dragY, {\n toValue: Number(this.styles.popover.minHeight),\n duration: 500,\n useNativeDriver: false,\n }).start();\n }\n },\n });\n \n getDefaultStyles() {\n const isActionSheet = this.state.props.type === 'action-sheet';\n return this.theme.getStyle(`${this.defaultClass} ${isActionSheet ? 'app-popover-action-sheet' : ''}`);\n }\n\n private computePosition = (callback?: () => void) => {\n const position = {} as PopoverPosition;\n if (this.state.props.type === 'dropdown') {\n const windowDimensions = Dimensions.get('window');\n this.view.measureInWindow((x, y, width, height) => {\n let popoverwidth = this.state.props.popoverwidth as any;\n if (popoverwidth && isString(popoverwidth)) {\n popoverwidth = parseInt(popoverwidth);\n }\n \n this.isRTL ? position.right = x : position.left = x;\n \n if (x + popoverwidth > windowDimensions.width) {\n this.isRTL\n ? (position.right = x + width - popoverwidth)\n : (position.left = x);\n }\n const yOffset = Platform.OS == 'ios' ? 0 : (this?.insets?.top || 0);\n position.top = y + height + yOffset;\n this.updateState({position: position} as WmPopoverState, callback);\n });\n } else if (callback) {\n callback();\n }\n\n };\n\n public renderPopoverContent (props : WmPopoverProps , styles : WmPopoverStyles, dimensions: any) {\n return (\n <ScrollView style={props.type === \"action-sheet\" ? {dimensions} : this.theme.mergeStyle(styles.popover, dimensions)} \n onScroll={(event) => {this.notify('scroll', [event])}}\n scrollEventThrottle={48}\n accessible={props.type !== \"dropdown\"} accessibilityViewIsModal>\n {props.title ? (<Text style={styles.title}>{props.title}</Text>): null}\n <TouchableOpacity \n {...this.getTestPropsForAction('outercontent')}\n activeOpacity={1} onPress={() => {\n props.autoclose === 'always' && this.hide()\n }} style={styles.popoverContent.root}>\n <WmContainer\n styles={styles.popoverContent}\n onLoad={() => this.invokeEventCallback('onLoad', [this])}\n {...props.renderPartial ? {\n renderPartial: (p: any, onLoad: Function) => {\n return props.renderPartial && props.renderPartial(props, onLoad);\n }\n } : {}}>\n {props.renderPartial ? null : props.children}\n </WmContainer>\n </TouchableOpacity>\n </ScrollView>\n )}\n\n public showPopover = (e?: SyntheticEvent) => {\n this.computePosition(() => {\n this.updateState({ isOpened: true } as WmPopoverState);\n this.invokeEventCallback('onShow', [e, this]);\n });\n e?.stopPropagation();\n };\n\n public onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case \"autoopen\":\n if($new){\n this.showPopover && this.showPopover()\n }\n else{\n this.hide && this.hide()\n }\n }\n }\n\n\n public hide = () => {};\n\n prepareModalOptions(content: React.ReactNode, styles: WmPopoverStyles, modalService: ModalService) {\n const o = this.state.modalOptions;\n o.modalStyle = styles.modal;\n o.contentStyle = {...styles.modalContent, ...this.state.position};\n o.content = content;\n o.isModal = this.state.props.autoclose !== 'disabled';\n o.centered = true;\n o.animation = this.state.props.contentanimation || 'slideInUp';\n o.onClose = () => {\n this.hide = () => {};\n this.setState({ isOpened: false, isPartialLoaded: false, modalOptions: {} as ModalOptions });\n this.invokeEventCallback('onHide', [null, this]);\n };\n this.hide = () => modalService.hideModal(this.state.modalOptions);\n return o;\n }\n\n renderWidget(props: WmPopoverProps) {\n let dimensions = {} as any;\n const styles = this.theme.mergeStyle(this.theme.getStyle('popover-' + props.type), this.styles);\n if (props.type === 'dropdown') {\n if (props.popoverwidth) {\n dimensions.width = props.popoverwidth;\n styles.modalContent.width = props.popoverwidth;\n }\n if (props.popoverheight) {\n dimensions.height = props.popoverheight;\n }\n }\n return (\n <SafeAreaInsetsContext.Consumer>\n {(insets = {top: 0, bottom: 0, left: 0, right: 0})=>{\n this.insets = insets;\n return (\n <View style={styles.root} onLayout={(e: LayoutChangeEvent)=>this.handleLayout(e)} ref={ref => {this.view = ref as View}} {...getAccessibilityProps(AccessibilityWidgetType.POVOVER, props)}>\n {this._background}\n <WmAnchor\n id={this.getTestId('trigger')}\n animation={props.animation}\n caption={props.caption}\n badgevalue={props.badgevalue}\n iconclass={props.iconclass}\n iconposition={props.iconposition}\n iconheight={props.iconheight}\n iconwidth={props.iconwidth}\n iconmargin={props.iconmargin}\n iconurl={props.iconurl}\n styles={styles.link}\n onTap={this.showPopover}\n accessible={false}/>\n {this.state.isOpened ? (\n <ModalConsumer>\n {(modalService: ModalService) => {\n modalService.showModal(this.prepareModalOptions(props.type === 'action-sheet' ? (\n <Animated.View style= {[styles.popover,{ height: this.dragY }]} {...this.panResponder.panHandlers}>\n <GestureHandlerRootView>\n {this.renderPopoverContent(props, styles, dimensions)}\n </GestureHandlerRootView>\n </Animated.View>\n ): (this.renderPopoverContent(props, styles, dimensions)), styles, modalService));\n return null;\n }}\n </ModalConsumer>) : null}\n </View>\n )\n }}\n </SafeAreaInsetsContext.Consumer>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","isString","TouchableOpacity","Text","View","Dimensions","Animated","PanResponder","Platform","BaseComponent","BaseComponentState","ModalConsumer","WmAnchor","WmPopoverProps","DEFAULT_CLASS","WmContainer","AccessibilityWidgetType","getAccessibilityProps","ScrollView","GestureHandlerRootView","SafeAreaInsetsContext","WmPopoverState","constructor","args","_defineProperty","WmPopover","props","Value","top","bottom","left","right","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderMove","_","gestureState","dy","Number","styles","popover","minHeight","dragY","setValue","onPanResponderRelease","timing","toValue","maxHeight","duration","useNativeDriver","start","callback","position","state","type","windowDimensions","get","view","measureInWindow","x","y","width","height","_this$insets","popoverwidth","parseInt","isRTL","yOffset","OS","insets","updateState","e","computePosition","isOpened","invokeEventCallback","stopPropagation","autoopen","showPopover","getDefaultStyles","isActionSheet","theme","getStyle","defaultClass","renderPopoverContent","dimensions","createElement","style","mergeStyle","onScroll","event","notify","scrollEventThrottle","accessible","accessibilityViewIsModal","title","_extends","getTestPropsForAction","activeOpacity","onPress","autoclose","hide","popoverContent","root","onLoad","renderPartial","p","children","onPropertyChange","name","$new","$old","prepareModalOptions","content","modalService","o","modalOptions","modalStyle","modal","contentStyle","modalContent","isModal","centered","animation","contentanimation","onClose","setState","isPartialLoaded","hideModal","renderWidget","popoverheight","Consumer","onLayout","handleLayout","ref","POVOVER","_background","id","getTestId","caption","badgevalue","iconclass","iconposition","iconheight","iconwidth","iconmargin","iconurl","link","onTap","showModal","panResponder","panHandlers"],"sources":["popover.component.tsx"],"sourcesContent":["import React from 'react';\nimport { isString } from 'lodash-es';\nimport { LayoutChangeEvent, TouchableOpacity, Text, View, Dimensions, Animated, PanResponder, Platform } from 'react-native';\nimport { BaseComponent, BaseComponentState, BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport { SyntheticEvent } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { ModalConsumer, ModalOptions, ModalService } from '@wavemaker/app-rn-runtime/core/modal.service';\nimport WmAnchor from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.component';\n\nimport WmPopoverProps from './popover.props';\nimport { DEFAULT_CLASS, WmPopoverStyles } from './popover.styles';\nimport WmContainer from '@wavemaker/app-rn-runtime/components/container/container.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\nimport { ScrollView, GestureHandlerRootView } from 'react-native-gesture-handler';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { SafeAreaInsetsContext, EdgeInsets } from 'react-native-safe-area-context';\n\n\nexport class WmPopoverState extends BaseComponentState<WmPopoverProps> {\n isOpened: boolean = false;\n modalOptions = {} as ModalOptions;\n position = {} as PopoverPosition;\n isPartialLoaded = false;\n}\n\nexport interface PopoverPosition {\n top?: number;\n bottom?: number;\n left?: number;\n right?: number;\n}\n\nexport default class WmPopover extends BaseComponent<WmPopoverProps, WmPopoverState, WmPopoverStyles> {\n\n view: View = null as any;\n dragY = new Animated.Value(0);\n insets: EdgeInsets | null = {\n top: 0, bottom: 0, left: 0, right: 0\n };\n\n constructor(props: WmPopoverProps) {\n super(props, DEFAULT_CLASS, new WmPopoverProps(), new WmPopoverState());\n\n if (this.state.props.autoopen) {\n this.showPopover();\n }\n }\n\n public panResponder = PanResponder.create({\n onStartShouldSetPanResponder: () => true,\n onMoveShouldSetPanResponder: () => true,\n onPanResponderMove: (_, gestureState) => {\n if (gestureState.dy > 0 && gestureState.dy < Number(this.styles.popover.minHeight)) {\n this.dragY.setValue(Number(this.styles.popover.minHeight) - gestureState.dy);\n }\n },\n onPanResponderRelease: (_, gestureState) => {\n if (gestureState.dy < -50) {\n Animated.timing(this.dragY, {\n toValue: Number(this.styles.popover.maxHeight),\n duration: 500,\n useNativeDriver: false,\n }).start();\n } else {\n Animated.timing(this.dragY, {\n toValue: Number(this.styles.popover.minHeight),\n duration: 500,\n useNativeDriver: false,\n }).start();\n }\n },\n });\n\n getDefaultStyles() {\n const isActionSheet = this.state.props.type === 'action-sheet';\n return this.theme.getStyle(`${this.defaultClass} ${isActionSheet ? 'app-popover-action-sheet' : ''}`);\n }\n\n private computePosition = (callback?: () => void) => {\n const position = {} as PopoverPosition;\n if (this.state.props.type === 'dropdown') {\n const windowDimensions = Dimensions.get('window');\n this.view.measureInWindow((x, y, width, height) => {\n let popoverwidth = this.state.props.popoverwidth as any;\n if (popoverwidth && isString(popoverwidth)) {\n popoverwidth = parseInt(popoverwidth);\n }\n\n this.isRTL ? position.right = x : position.left = x;\n\n if (x + popoverwidth > windowDimensions.width) {\n this.isRTL\n ? (position.right = x + width - popoverwidth)\n : (position.left = x + width - popoverwidth);\n }\n const yOffset = Platform.OS == 'ios' ? (this?.insets?.top || 0) : 0;\n position.top = y + height - yOffset;\n this.updateState({position: position} as WmPopoverState, callback);\n });\n } else if (callback) {\n callback();\n }\n\n };\n\n public renderPopoverContent (props : WmPopoverProps , styles : WmPopoverStyles, dimensions: any) {\n return (\n <ScrollView style={props.type === \"action-sheet\" ? {dimensions} : this.theme.mergeStyle(styles.popover, dimensions)}\n onScroll={(event) => {this.notify('scroll', [event])}}\n scrollEventThrottle={48}\n accessible={props.type !== \"dropdown\"} accessibilityViewIsModal>\n {props.title ? (<Text style={styles.title}>{props.title}</Text>): null}\n <TouchableOpacity\n {...this.getTestPropsForAction('outercontent')}\n activeOpacity={1} onPress={() => {\n props.autoclose === 'always' && this.hide()\n }} style={styles.popoverContent.root}>\n <WmContainer\n styles={styles.popoverContent}\n onLoad={() => this.invokeEventCallback('onLoad', [this])}\n {...props.renderPartial ? {\n renderPartial: (p: any, onLoad: Function) => {\n return props.renderPartial && props.renderPartial(props, onLoad);\n }\n } : {}}>\n {props.renderPartial ? null : props.children}\n </WmContainer>\n </TouchableOpacity>\n </ScrollView>\n )}\n\n public showPopover = (e?: SyntheticEvent) => {\n this.computePosition(() => {\n this.updateState({ isOpened: true } as WmPopoverState);\n this.invokeEventCallback('onShow', [e, this]);\n });\n e?.stopPropagation();\n };\n\n public onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case \"autoopen\":\n if($new){\n this.showPopover && this.showPopover()\n }\n else{\n this.hide && this.hide()\n }\n }\n }\n\n\n public hide = () => {};\n\n prepareModalOptions(content: React.ReactNode, styles: WmPopoverStyles, modalService: ModalService) {\n const o = this.state.modalOptions;\n o.modalStyle = styles.modal;\n o.contentStyle = {...styles.modalContent, ...this.state.position};\n o.content = content;\n o.isModal = this.state.props.autoclose !== 'disabled';\n o.centered = true;\n o.animation = this.state.props.contentanimation || 'slideInUp';\n o.onClose = () => {\n this.hide = () => {};\n this.setState({ isOpened: false, isPartialLoaded: false, modalOptions: {} as ModalOptions });\n this.invokeEventCallback('onHide', [null, this]);\n };\n this.hide = () => modalService.hideModal(this.state.modalOptions);\n return o;\n }\n\n renderWidget(props: WmPopoverProps) {\n let dimensions = {} as any;\n const styles = this.theme.mergeStyle(this.theme.getStyle('popover-' + props.type), this.styles);\n if (props.type === 'dropdown') {\n if (props.popoverwidth) {\n dimensions.width = props.popoverwidth;\n styles.modalContent.width = props.popoverwidth;\n }\n if (props.popoverheight) {\n dimensions.height = props.popoverheight;\n }\n }\n return (\n <SafeAreaInsetsContext.Consumer>\n {(insets = {top: 0, bottom: 0, left: 0, right: 0})=>{\n this.insets = insets;\n return (\n <View style={styles.root} onLayout={(e: LayoutChangeEvent)=>this.handleLayout(e)} ref={ref => {this.view = ref as View}} {...getAccessibilityProps(AccessibilityWidgetType.POVOVER, props)}>\n {this._background}\n <WmAnchor\n id={this.getTestId('trigger')}\n animation={props.animation}\n caption={props.caption}\n badgevalue={props.badgevalue}\n iconclass={props.iconclass}\n iconposition={props.iconposition}\n iconheight={props.iconheight}\n iconwidth={props.iconwidth}\n iconmargin={props.iconmargin}\n iconurl={props.iconurl}\n styles={styles.link}\n onTap={this.showPopover}\n accessible={false}/>\n {this.state.isOpened ? (\n <ModalConsumer>\n {(modalService: ModalService) => {\n modalService.showModal(this.prepareModalOptions(props.type === 'action-sheet' ? (\n <Animated.View style= {[styles.popover,{ height: this.dragY }]} {...this.panResponder.panHandlers}>\n <GestureHandlerRootView>\n {this.renderPopoverContent(props, styles, dimensions)}\n </GestureHandlerRootView>\n </Animated.View>\n ): (this.renderPopoverContent(props, styles, dimensions)), styles, modalService));\n return null;\n }}\n </ModalConsumer>) : null}\n </View>\n )\n }}\n </SafeAreaInsetsContext.Consumer>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -26,6 +26,7 @@ export default class WmPopoverProps extends BaseProps {
26
26
  _defineProperty(this, "accessible", true);
27
27
  _defineProperty(this, "accessibilitylabel", undefined);
28
28
  _defineProperty(this, "hint", undefined);
29
+ _defineProperty(this, "draghandle", false);
29
30
  _defineProperty(this, "accessibilityrole", 'button');
30
31
  }
31
32
  }
@@ -1 +1 @@
1
- {"version":3,"names":["BaseProps","WmPopoverProps","constructor","args","_defineProperty","undefined"],"sources":["popover.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport React from 'react';\nimport { AccessibilityRole } from 'react-native';\n\nexport default class WmPopoverProps extends BaseProps {\n animation?: string = null as any;\n badgevalue? = null as any;\n caption? = 'Link';\n contentanimation?: string = null as any;\n iconclass? = null as any;\n iconposition? = 'left' as any;\n popoverwidth?: string | number | null = 240;\n popoverheight?: string | number | null = 360;\n autoclose?: 'outsideClick' | 'disabled' | 'always' = 'outsideClick';\n autoopen?: boolean = false;\n children? = [] as any;\n renderPartial?: Function = null as any;\n title?: string = null as any;\n type?: 'action-sheet' | 'dropdown' = 'action-sheet';\n iconurl?: string = null as any;\n iconheight?: number = null as any;\n iconwidth?: number = null as any;\n iconmargin?: number = null as any;\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = 'button';\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAIzE,eAAe,MAAMC,cAAc,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBAC/B,IAAI;IAAAA,eAAA,qBACX,IAAI;IAAAA,eAAA,kBACP,MAAM;IAAAA,eAAA,2BACW,IAAI;IAAAA,eAAA,oBACnB,IAAI;IAAAA,eAAA,uBACD,MAAM;IAAAA,eAAA,uBACkB,GAAG;IAAAA,eAAA,wBACF,GAAG;IAAAA,eAAA,oBACS,cAAc;IAAAA,eAAA,mBAC9C,KAAK;IAAAA,eAAA,mBACd,EAAE;IAAAA,eAAA,wBACa,IAAI;IAAAA,eAAA,gBACd,IAAI;IAAAA,eAAA,eACgB,cAAc;IAAAA,eAAA,kBAChC,IAAI;IAAAA,eAAA,qBACD,IAAI;IAAAA,eAAA,oBACL,IAAI;IAAAA,eAAA,qBACH,IAAI;IAAAA,eAAA,qBACH,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA,4BACe,QAAQ;EAAA;AAClD","ignoreList":[]}
1
+ {"version":3,"names":["BaseProps","WmPopoverProps","constructor","args","_defineProperty","undefined"],"sources":["popover.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport React from 'react';\nimport { AccessibilityRole } from 'react-native';\n\nexport default class WmPopoverProps extends BaseProps {\n animation?: string = null as any;\n badgevalue? = null as any;\n caption? = 'Link';\n contentanimation?: string = null as any;\n iconclass? = null as any;\n iconposition? = 'left' as any;\n popoverwidth?: string | number | null = 240;\n popoverheight?: string | number | null = 360;\n autoclose?: 'outsideClick' | 'disabled' | 'always' = 'outsideClick';\n autoopen?: boolean = false;\n children? = [] as any;\n renderPartial?: Function = null as any;\n title?: string = null as any;\n type?: 'action-sheet' | 'dropdown' = 'action-sheet';\n iconurl?: string = null as any;\n iconheight?: number = null as any;\n iconwidth?: number = null as any;\n iconmargin?: number = null as any;\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n draghandle?: boolean = false;\n accessibilityrole?: AccessibilityRole = 'button';\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAIzE,eAAe,MAAMC,cAAc,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBAC/B,IAAI;IAAAA,eAAA,qBACX,IAAI;IAAAA,eAAA,kBACP,MAAM;IAAAA,eAAA,2BACW,IAAI;IAAAA,eAAA,oBACnB,IAAI;IAAAA,eAAA,uBACD,MAAM;IAAAA,eAAA,uBACkB,GAAG;IAAAA,eAAA,wBACF,GAAG;IAAAA,eAAA,oBACS,cAAc;IAAAA,eAAA,mBAC9C,KAAK;IAAAA,eAAA,mBACd,EAAE;IAAAA,eAAA,wBACa,IAAI;IAAAA,eAAA,gBACd,IAAI;IAAAA,eAAA,eACgB,cAAc;IAAAA,eAAA,kBAChC,IAAI;IAAAA,eAAA,qBACD,IAAI;IAAAA,eAAA,oBACL,IAAI;IAAAA,eAAA,qBACH,IAAI;IAAAA,eAAA,qBACH,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA,qBACF,KAAK;IAAAA,eAAA,4BACY,QAAQ;EAAA;AAClD","ignoreList":[]}
@@ -37,6 +37,19 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
37
37
  modalContent: {
38
38
  borderTopLeftRadius: 28,
39
39
  borderTopRightRadius: 28
40
+ },
41
+ draghandleicon: {
42
+ root: {
43
+ alignSelf: 'center'
44
+ },
45
+ text: {
46
+ fontSize: 32
47
+ },
48
+ icon: {
49
+ color: 'var(--wm-color-surface-variant-black)',
50
+ padding: 0,
51
+ opacity: 0.4
52
+ }
40
53
  }
41
54
  });
42
55
  addStyle(DEFAULT_CLASS, '', defaultStyles);
@@ -1 +1 @@
1
- {"version":3,"names":["BASE_THEME","defineStyles","Dimensions","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","padding","alignSelf","text","title","backgroundColor","popoverTitleBackgroundColor","color","popoverTitleColor","fontSize","fontFamily","baseFont","link","paddingRight","popover","popoverBackgroundColor","maxWidth","borderTopLeftRadius","borderTopRightRadius","popoverContent","flex","modal","modalContent","position","bottom","left","right","width","minHeight","elevation","maxHeight","get","height","boxShadow","justifyContent","transparent","borderRadius"],"sources":["popover.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 { WmAnchorStyles } from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.styles';\nimport { WmContainerStyles } from '@wavemaker/app-rn-runtime/components/container/container.styles';\nimport { Dimensions } from 'react-native';\n\nexport type WmPopoverStyles = BaseStyles & {\n link: WmAnchorStyles,\n popover: AllStyle,\n popoverContent : WmContainerStyles,\n modal: AllStyle,\n modalContent: AllStyle,\n title: AllStyle\n};\n\nexport const DEFAULT_CLASS = 'app-popover';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmPopoverStyles = defineStyles({\n root: {\n padding: 8,\n alignSelf: 'flex-start'\n },\n text: {},\n title: {\n backgroundColor: themeVariables.popoverTitleBackgroundColor,\n padding: 12,\n color: themeVariables.popoverTitleColor,\n fontSize: 16,\n fontFamily: themeVariables.baseFont\n },\n link: {\n root:{\n },\n text:{\n paddingRight: 8\n }\n } as WmAnchorStyles,\n popover: {\n backgroundColor: themeVariables.popoverBackgroundColor,\n maxWidth: 640,\n borderTopLeftRadius: 28,\n borderTopRightRadius: 28 \n },\n popoverContent : {\n root: {\n flex: 1\n }\n } as WmContainerStyles,\n modal: {},\n modalContent: {\n borderTopLeftRadius: 28,\n borderTopRightRadius: 28\n }\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n addStyle('app-popover-action-sheet', '', {\n modal: {\n backgroundColor: 'rgba(0, 0, 0, 0.3)',\n },\n popover: {\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n width: '100%',\n minHeight: 240,\n elevation: 4,\n maxHeight: Dimensions.get('window').height - 120\n },\n modalContent: {\n position: 'absolute',\n bottom: 0,\n width: '100%',\n boxShadow: '0px 0px 10px rgba(0, 0, 0, 0.6)',\n justifyContent: 'flex-end'\n }\n } as any as WmPopoverStyles);\n addStyle('popover-dropdown', '', {\n modal: {\n backgroundColor: 'transparent',\n },\n popover: {\n backgroundColor: themeVariables.transparent\n },\n modalContent: {\n borderRadius: 6,\n position: 'absolute',\n boxShadow: `4px 4px 8px rgba(0, 0, 0, 0.27)`,\n }\n } as WmPopoverStyles);\n});"],"mappings":"AAAA,OAAOA,UAAU,MAAoB,wCAAwC;AAC7E,SAAqBC,YAAY,QAAQ,+CAA+C;AAGxF,SAASC,UAAU,QAAQ,cAAc;AAWzC,OAAO,MAAMC,aAAa,GAAG,aAAa;AAC1CH,UAAU,CAACI,aAAa,CAAC,CAACC,cAAc,EAAEC,QAAQ,KAAK;EACnD,MAAMC,aAA8B,GAAGN,YAAY,CAAC;IAChDO,IAAI,EAAE;MACFC,OAAO,EAAE,CAAC;MACVC,SAAS,EAAE;IACf,CAAC;IACDC,IAAI,EAAE,CAAC,CAAC;IACRC,KAAK,EAAE;MACHC,eAAe,EAAER,cAAc,CAACS,2BAA2B;MAC3DL,OAAO,EAAE,EAAE;MACXM,KAAK,EAAEV,cAAc,CAACW,iBAAiB;MACvCC,QAAQ,EAAE,EAAE;MACZC,UAAU,EAAEb,cAAc,CAACc;IAC/B,CAAC;IACDC,IAAI,EAAE;MACFZ,IAAI,EAAC,CACL,CAAC;MACDG,IAAI,EAAC;QACDU,YAAY,EAAE;MAClB;IACJ,CAAmB;IACnBC,OAAO,EAAE;MACLT,eAAe,EAAER,cAAc,CAACkB,sBAAsB;MACtDC,QAAQ,EAAE,GAAG;MACbC,mBAAmB,EAAE,EAAE;MACvBC,oBAAoB,EAAE;IAC1B,CAAC;IACDC,cAAc,EAAG;MACbnB,IAAI,EAAE;QACFoB,IAAI,EAAE;MACV;IACJ,CAAsB;IACtBC,KAAK,EAAE,CAAC,CAAC;IACTC,YAAY,EAAE;MACVL,mBAAmB,EAAE,EAAE;MACvBC,oBAAoB,EAAE;IAC1B;EACJ,CAAC,CAAC;EAEFpB,QAAQ,CAACH,aAAa,EAAE,EAAE,EAAEI,aAAa,CAAC;EAC1CD,QAAQ,CAAC,0BAA0B,EAAE,EAAE,EAAE;IACrCuB,KAAK,EAAE;MACHhB,eAAe,EAAE;IACrB,CAAC;IACDS,OAAO,EAAE;MACLS,QAAQ,EAAE,UAAU;MACpBC,MAAM,EAAE,CAAC;MACTC,IAAI,EAAE,CAAC;MACPC,KAAK,EAAE,CAAC;MACRC,KAAK,EAAE,MAAM;MACbC,SAAS,EAAE,GAAG;MACdC,SAAS,EAAE,CAAC;MACZC,SAAS,EAAEpC,UAAU,CAACqC,GAAG,CAAC,QAAQ,CAAC,CAACC,MAAM,GAAG;IACjD,CAAC;IACDV,YAAY,EAAE;MACVC,QAAQ,EAAE,UAAU;MACpBC,MAAM,EAAE,CAAC;MACTG,KAAK,EAAE,MAAM;MACbM,SAAS,EAAE,iCAAiC;MAC5CC,cAAc,EAAE;IACpB;EACJ,CAA2B,CAAC;EAC5BpC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,EAAE;IAC7BuB,KAAK,EAAE;MACHhB,eAAe,EAAE;IACrB,CAAC;IACDS,OAAO,EAAE;MACLT,eAAe,EAAER,cAAc,CAACsC;IACpC,CAAC;IACDb,YAAY,EAAE;MACVc,YAAY,EAAE,CAAC;MACfb,QAAQ,EAAE,UAAU;MACpBU,SAAS,EAAE;IACf;EACJ,CAAoB,CAAC;AACzB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["BASE_THEME","defineStyles","Dimensions","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","padding","alignSelf","text","title","backgroundColor","popoverTitleBackgroundColor","color","popoverTitleColor","fontSize","fontFamily","baseFont","link","paddingRight","popover","popoverBackgroundColor","maxWidth","borderTopLeftRadius","borderTopRightRadius","popoverContent","flex","modal","modalContent","draghandleicon","icon","opacity","position","bottom","left","right","width","minHeight","elevation","maxHeight","get","height","boxShadow","justifyContent","transparent","borderRadius"],"sources":["popover.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 { WmAnchorStyles } from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.styles';\nimport { WmContainerStyles } from '@wavemaker/app-rn-runtime/components/container/container.styles';\nimport { Dimensions } from 'react-native';\nimport { WmIconStyles } from '../../basic/icon/icon.styles';\n\nexport type WmPopoverStyles = BaseStyles & {\n link: WmAnchorStyles,\n popover: AllStyle,\n popoverContent : WmContainerStyles,\n modal: AllStyle,\n modalContent: AllStyle,\n title: AllStyle,\n draghandleicon:WmIconStyles\n};\n\nexport const DEFAULT_CLASS = 'app-popover';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmPopoverStyles = defineStyles({\n root: {\n padding: 8,\n alignSelf: 'flex-start'\n },\n text: {},\n title: {\n backgroundColor: themeVariables.popoverTitleBackgroundColor,\n padding: 12,\n color: themeVariables.popoverTitleColor,\n fontSize: 16,\n fontFamily: themeVariables.baseFont\n },\n link: {\n root:{\n },\n text:{\n paddingRight: 8\n }\n } as WmAnchorStyles,\n popover: {\n backgroundColor: themeVariables.popoverBackgroundColor,\n maxWidth: 640,\n borderTopLeftRadius: 28,\n borderTopRightRadius: 28 \n },\n popoverContent : {\n root: {\n flex: 1\n }\n } as WmContainerStyles,\n modal: {},\n modalContent: {\n borderTopLeftRadius: 28,\n borderTopRightRadius: 28\n },\n draghandleicon : {\n root: {alignSelf:'center',},\n text: {\n fontSize: 32\n },\n icon : {\n color: 'var(--wm-color-surface-variant-black)',\n padding: 0,\n opacity:0.4\n }\n } as WmIconStyles,\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n addStyle('app-popover-action-sheet', '', {\n modal: {\n backgroundColor: 'rgba(0, 0, 0, 0.3)',\n },\n popover: {\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n width: '100%',\n minHeight: 240,\n elevation: 4,\n maxHeight: Dimensions.get('window').height - 120\n },\n modalContent: {\n position: 'absolute',\n bottom: 0,\n width: '100%',\n boxShadow: '0px 0px 10px rgba(0, 0, 0, 0.6)',\n justifyContent: 'flex-end'\n }\n } as any as WmPopoverStyles);\n addStyle('popover-dropdown', '', {\n modal: {\n backgroundColor: 'transparent',\n },\n popover: {\n backgroundColor: themeVariables.transparent\n },\n modalContent: {\n borderRadius: 6,\n position: 'absolute',\n boxShadow: `4px 4px 8px rgba(0, 0, 0, 0.27)`,\n }\n } as WmPopoverStyles);\n});"],"mappings":"AAAA,OAAOA,UAAU,MAAoB,wCAAwC;AAC7E,SAAqBC,YAAY,QAAQ,+CAA+C;AAGxF,SAASC,UAAU,QAAQ,cAAc;AAazC,OAAO,MAAMC,aAAa,GAAG,aAAa;AAC1CH,UAAU,CAACI,aAAa,CAAC,CAACC,cAAc,EAAEC,QAAQ,KAAK;EACnD,MAAMC,aAA8B,GAAGN,YAAY,CAAC;IAChDO,IAAI,EAAE;MACFC,OAAO,EAAE,CAAC;MACVC,SAAS,EAAE;IACf,CAAC;IACDC,IAAI,EAAE,CAAC,CAAC;IACRC,KAAK,EAAE;MACHC,eAAe,EAAER,cAAc,CAACS,2BAA2B;MAC3DL,OAAO,EAAE,EAAE;MACXM,KAAK,EAAEV,cAAc,CAACW,iBAAiB;MACvCC,QAAQ,EAAE,EAAE;MACZC,UAAU,EAAEb,cAAc,CAACc;IAC/B,CAAC;IACDC,IAAI,EAAE;MACFZ,IAAI,EAAC,CACL,CAAC;MACDG,IAAI,EAAC;QACDU,YAAY,EAAE;MAClB;IACJ,CAAmB;IACnBC,OAAO,EAAE;MACLT,eAAe,EAAER,cAAc,CAACkB,sBAAsB;MACtDC,QAAQ,EAAE,GAAG;MACbC,mBAAmB,EAAE,EAAE;MACvBC,oBAAoB,EAAE;IAC1B,CAAC;IACDC,cAAc,EAAG;MACbnB,IAAI,EAAE;QACFoB,IAAI,EAAE;MACV;IACJ,CAAsB;IACtBC,KAAK,EAAE,CAAC,CAAC;IACTC,YAAY,EAAE;MACVL,mBAAmB,EAAE,EAAE;MACvBC,oBAAoB,EAAE;IAC1B,CAAC;IACDK,cAAc,EAAG;MACbvB,IAAI,EAAE;QAACE,SAAS,EAAC;MAAS,CAAC;MAC3BC,IAAI,EAAE;QACNM,QAAQ,EAAE;MACV,CAAC;MACDe,IAAI,EAAG;QACHjB,KAAK,EAAE,uCAAuC;QAC9CN,OAAO,EAAE,CAAC;QACVwB,OAAO,EAAC;MACZ;IACA;EACR,CAAC,CAAC;EAEF3B,QAAQ,CAACH,aAAa,EAAE,EAAE,EAAEI,aAAa,CAAC;EAC1CD,QAAQ,CAAC,0BAA0B,EAAE,EAAE,EAAE;IACrCuB,KAAK,EAAE;MACHhB,eAAe,EAAE;IACrB,CAAC;IACDS,OAAO,EAAE;MACLY,QAAQ,EAAE,UAAU;MACpBC,MAAM,EAAE,CAAC;MACTC,IAAI,EAAE,CAAC;MACPC,KAAK,EAAE,CAAC;MACRC,KAAK,EAAE,MAAM;MACbC,SAAS,EAAE,GAAG;MACdC,SAAS,EAAE,CAAC;MACZC,SAAS,EAAEvC,UAAU,CAACwC,GAAG,CAAC,QAAQ,CAAC,CAACC,MAAM,GAAG;IACjD,CAAC;IACDb,YAAY,EAAE;MACVI,QAAQ,EAAE,UAAU;MACpBC,MAAM,EAAE,CAAC;MACTG,KAAK,EAAE,MAAM;MACbM,SAAS,EAAE,iCAAiC;MAC5CC,cAAc,EAAE;IACpB;EACJ,CAA2B,CAAC;EAC5BvC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,EAAE;IAC7BuB,KAAK,EAAE;MACHhB,eAAe,EAAE;IACrB,CAAC;IACDS,OAAO,EAAE;MACLT,eAAe,EAAER,cAAc,CAACyC;IACpC,CAAC;IACDhB,YAAY,EAAE;MACViB,YAAY,EAAE,CAAC;MACfb,QAAQ,EAAE,UAAU;MACpBU,SAAS,EAAE;IACf;EACJ,CAAoB,CAAC;AACzB,CAAC,CAAC","ignoreList":[]}
@@ -2,11 +2,12 @@ function _extends() { return _extends = Object.assign ? Object.assign.bind() : f
2
2
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
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
- import { assign, isUndefined, isNil } from 'lodash';
5
+ import { assign, isUndefined, isNil, isObject, isArray, isString, isEqual } from 'lodash';
6
6
  import React from 'react';
7
- import { AccessibilityInfo, Platform, StyleSheet, View, InteractionManager } from 'react-native';
7
+ import { AccessibilityInfo, Dimensions, InteractionManager, Platform, StyleSheet, View } from 'react-native';
8
8
  import * as Animatable from 'react-native-animatable';
9
9
  import ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';
10
+ import { CalcExpression } from '@wavemaker/app-rn-runtime/styles/calc';
10
11
  import { StyleProps, getStyleName } from '@wavemaker/app-rn-runtime/styles/style-props';
11
12
  import { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';
12
13
  import injector from '@wavemaker/app-rn-runtime/core/injector';
@@ -65,6 +66,7 @@ export class BaseComponent extends React.Component {
65
66
  constructor(markupProps, defaultClass, defaultProps, defaultState) {
66
67
  super(markupProps);
67
68
  this.defaultClass = defaultClass;
69
+ _defineProperty(this, "calcStyles", null);
68
70
  _defineProperty(this, "styles", null);
69
71
  _defineProperty(this, "hideMode", HideMode.ADD_TO_DOM);
70
72
  _defineProperty(this, "propertyProvider", void 0);
@@ -98,6 +100,10 @@ export class BaseComponent extends React.Component {
98
100
  py: 0
99
101
  });
100
102
  _defineProperty(this, "baseView", View);
103
+ _defineProperty(this, "vw", Dimensions.get('window').width);
104
+ _defineProperty(this, "vh", Dimensions.get('window').height);
105
+ _defineProperty(this, "hasStyleCalcExpression", false);
106
+ _defineProperty(this, "dimensions", {});
101
107
  _defineProperty(this, "childComponentStyleKeys", []);
102
108
  _defineProperty(this, "hideSkeletonInPageContentWhenDisabledInPage", () => {
103
109
  var _this$parent$state;
@@ -169,6 +175,11 @@ export class BaseComponent extends React.Component {
169
175
  this.updateStateTimeouts.forEach(v => clearTimeout(v));
170
176
  });
171
177
  this.cleanup.push(this.theme.subscribe(ThemeEvent.CHANGE, () => {
178
+ this.vw = Dimensions.get('window').width;
179
+ this.vh = Dimensions.get('window').height;
180
+ if (this.reestimateDimensions) {
181
+ this.reestimateDimensions();
182
+ }
172
183
  this.forceUpdate();
173
184
  }));
174
185
  this.cleanup.push(AccessibilityInfo.addEventListener('screenReaderChanged', () => {
@@ -180,6 +191,23 @@ export class BaseComponent extends React.Component {
180
191
  this.destroyParentListeners();
181
192
  });
182
193
  }
194
+ reestimateDimensions() {
195
+ var _this$parent, _this$parent2, _this$layout, _this$layout2;
196
+ const d = {
197
+ vw: this.vw,
198
+ vh: this.vh,
199
+ pw: (_this$parent = this.parent) === null || _this$parent === void 0 || (_this$parent = _this$parent.layout) === null || _this$parent === void 0 ? void 0 : _this$parent.width,
200
+ ph: (_this$parent2 = this.parent) === null || _this$parent2 === void 0 || (_this$parent2 = _this$parent2.layout) === null || _this$parent2 === void 0 ? void 0 : _this$parent2.height,
201
+ w: (_this$layout = this.layout) === null || _this$layout === void 0 ? void 0 : _this$layout.width,
202
+ h: (_this$layout2 = this.layout) === null || _this$layout2 === void 0 ? void 0 : _this$layout2.height
203
+ };
204
+ if (!isEqual(this.dimensions, d)) {
205
+ this.dimensions = d;
206
+ this.notify('layoutChange', []);
207
+ return true;
208
+ }
209
+ return false;
210
+ }
183
211
  subscribe(event, fn) {
184
212
  return this.notifier.subscribe(event, fn);
185
213
  }
@@ -278,13 +306,13 @@ export class BaseComponent extends React.Component {
278
306
  }
279
307
  }
280
308
  componentWillUnmount() {
281
- var _this$parent;
309
+ var _this$parent3;
282
310
  this.destroyed = true;
283
311
  if (this.props.listener && this.props.listener.onComponentDestroy) {
284
312
  this.props.listener.onComponentDestroy(this.proxy);
285
313
  }
286
314
  this.cleanup.forEach(f => f && f());
287
- (_this$parent = this.parent) === null || _this$parent === void 0 || (_this$parent = _this$parent.componentNode) === null || _this$parent === void 0 || _this$parent.remove(this.componentNode);
315
+ (_this$parent3 = this.parent) === null || _this$parent3 === void 0 || (_this$parent3 = _this$parent3.componentNode) === null || _this$parent3 === void 0 || _this$parent3.remove(this.componentNode);
288
316
  this.notifier.destroy();
289
317
  this.notifier.notify('destroy', []);
290
318
  }
@@ -329,8 +357,14 @@ export class BaseComponent extends React.Component {
329
357
  this.parent = parent;
330
358
  this.parent.componentNode.add(this.componentNode);
331
359
  this.notifier.setParent(parent.notifier);
360
+ this.destroyParentListeners();
332
361
  this.parentListenerDestroyers = [this.parent.subscribe('forceUpdate', () => {
333
362
  this.forceUpdate();
363
+ }), this.parent.subscribe('layoutChange', () => {
364
+ if (this.reestimateDimensions && this.reestimateDimensions() && this.hasStyleCalcExpression) {
365
+ this.forceUpdate();
366
+ }
367
+ return false;
334
368
  }), this.parent.subscribe('destroy', () => {
335
369
  this.destroyParentListeners();
336
370
  })];
@@ -363,6 +397,9 @@ export class BaseComponent extends React.Component {
363
397
  px,
364
398
  py
365
399
  };
400
+ if (this.reestimateDimensions && this.reestimateDimensions() && this.hasStyleCalcExpression) {
401
+ this.forceUpdate();
402
+ }
366
403
  });
367
404
  };
368
405
  updateLayout();
@@ -370,6 +407,12 @@ export class BaseComponent extends React.Component {
370
407
  requestAnimationFrame(updateLayout);
371
408
  });
372
409
  }
410
+ } else {
411
+ var _event$nativeEvent;
412
+ this.layout = (_event$nativeEvent = event.nativeEvent) === null || _event$nativeEvent === void 0 ? void 0 : _event$nativeEvent.layout;
413
+ if (this.reestimateDimensions && this.reestimateDimensions() && this.hasStyleCalcExpression) {
414
+ this.forceUpdate();
415
+ }
373
416
  }
374
417
  }
375
418
  copyStyles(property, from, to) {
@@ -503,6 +546,28 @@ export class BaseComponent extends React.Component {
503
546
  y: positionY
504
547
  }]);
505
548
  }
549
+ evaluateCalcStyles(styles) {
550
+ const result = {};
551
+ Object.keys(styles).forEach(k => {
552
+ const value = styles[k];
553
+ if (isArray(value)) {
554
+ result[k] = value.map((v, i) => {
555
+ return this.evaluateCalcStyles(v);
556
+ });
557
+ } else if (isObject(value)) {
558
+ result[k] = this.evaluateCalcStyles(value);
559
+ } else if (isString(value) && value.startsWith('calc(')) {
560
+ result[k] = new CalcExpression(value, {
561
+ vw: this.dimensions.vw || 0,
562
+ vh: this.dimensions.vh || 0,
563
+ p: (k === 'height' ? this.dimensions.ph : this.dimensions.pw) || 0
564
+ }).evaluate();
565
+ } else {
566
+ result[k] = value;
567
+ }
568
+ });
569
+ return result;
570
+ }
506
571
  getDependenciesFromContext(fn) {
507
572
  return /*#__PURE__*/React.createElement(TappableContext.Consumer, null, tappable => {
508
573
  this.closestTappable = tappable;
@@ -511,9 +576,9 @@ export class BaseComponent extends React.Component {
511
576
  return /*#__PURE__*/React.createElement(AssetConsumer, null, loadAsset => {
512
577
  this.loadAsset = loadAsset;
513
578
  return /*#__PURE__*/React.createElement(ParentContext.Consumer, null, parent => {
514
- var _this$parent2;
579
+ var _this$parent4;
515
580
  this.setParent(parent);
516
- this._showSkeleton = this.state.props.showskeleton !== false && (((_this$parent2 = this.parent) === null || _this$parent2 === void 0 ? void 0 : _this$parent2._showSkeleton) || this.state.props.showskeleton === true) && this.hideSkeletonInPageContentWhenDisabledInPage() === undefined;
581
+ this._showSkeleton = this.state.props.showskeleton !== false && (((_this$parent4 = this.parent) === null || _this$parent4 === void 0 ? void 0 : _this$parent4._showSkeleton) || this.state.props.showskeleton === true) && this.hideSkeletonInPageContentWhenDisabledInPage() === undefined;
517
582
  return /*#__PURE__*/React.createElement(ParentContext.Provider, {
518
583
  value: this
519
584
  }, /*#__PURE__*/React.createElement(ThemeConsumer, null, theme => {
@@ -536,15 +601,14 @@ export class BaseComponent extends React.Component {
536
601
  }
537
602
  this.isFixed = false;
538
603
  const classname = this.getStyleClassName();
539
- this.styles = this.theme.mergeStyle(this.getDefaultStyles(), {
604
+ this.calcStyles = this.theme.mergeStyle(this.getDefaultStyles(), {
540
605
  text: this.theme.getStyle('app-' + selectedLocale)
541
606
  }, {
542
607
  text: this.theme.getStyle(this.defaultClass + '-' + selectedLocale)
543
- }, props.disabled ? this.theme.getStyle(this.defaultClass + '-disabled') : null, this.isRTL ? this.theme.getStyle(this.defaultClass + '-rtl') : null, classname && this.theme.getStyle(classname), this.isRTL && classname ? this.theme.getStyle(classname + '-rtl') : null, props.showindevice && this.theme.getStyle('d-all-none ' + props.showindevice.map(d => `d-${d}-flex`).join(' ')), this.theme.cleanseStyleProperties(this.props.styles), this.theme.cleanseStyleProperties({
608
+ }, props.disabled ? this.theme.getStyle(this.defaultClass + '-disabled') : null, this.isRTL ? this.theme.getStyle(this.defaultClass + '-rtl') : null, classname && this.theme.getStyle(classname), this.isRTL && classname ? this.theme.getStyle(classname + '-rtl') : null, props.showindevice && this.theme.getStyle('d-all-none ' + props.showindevice.map(d => `d-${d}-flex`).join(' ')), this.props.styles, {
544
609
  root: this.styleOverrides,
545
610
  text: this.styleOverrides
546
- }));
547
-
611
+ });
548
612
  // Merge child component styles from custom classes
549
613
  if (classname && this.childComponentStyleKeys.length > 0) {
550
614
  const customStyles = this.theme.getStyle(classname);
@@ -554,6 +618,8 @@ export class BaseComponent extends React.Component {
554
618
  }
555
619
  });
556
620
  }
621
+ this.hasStyleCalcExpression = false;
622
+ this.styles = this.evaluateCalcStyles(this.calcStyles);
557
623
  if (this.styles.root.hasOwnProperty('_background')) {
558
624
  delete this.styles.root.backgroundColor;
559
625
  }