@wavemaker/app-rn-runtime 11.7.0-rc.5562 → 11.7.0-rc.5570

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 (25) hide show
  1. app-rn-runtime/components/basic/anchor/anchor.component.js.map +1 -1
  2. app-rn-runtime/components/container/container.component.js +3 -1
  3. app-rn-runtime/components/container/container.component.js.map +1 -1
  4. app-rn-runtime/components/container/panel/panel.component.js +1 -1
  5. app-rn-runtime/components/container/panel/panel.component.js.map +1 -1
  6. app-rn-runtime/components/data/form/form-action/form-action.component.js.map +1 -1
  7. app-rn-runtime/components/data/list/list.component.js +25 -18
  8. app-rn-runtime/components/data/list/list.component.js.map +1 -1
  9. app-rn-runtime/components/data/list/list.styles.js +0 -2
  10. app-rn-runtime/components/data/list/list.styles.js.map +1 -1
  11. app-rn-runtime/components/input/baseinput/baseinput.component.js +2 -0
  12. app-rn-runtime/components/input/baseinput/baseinput.component.js.map +1 -1
  13. app-rn-runtime/components/navigation/navbar/navbar.props.js.map +1 -1
  14. app-rn-runtime/components/navigation/navitem/navitem.component.js.map +1 -1
  15. app-rn-runtime/components/navigation/navitem/navitem.props.js.map +1 -1
  16. app-rn-runtime/components/navigation/popover/popover.component.js.map +1 -1
  17. app-rn-runtime/core/base.component.js +21 -15
  18. app-rn-runtime/core/base.component.js.map +1 -1
  19. app-rn-runtime/core/event-notifier.js +13 -4
  20. app-rn-runtime/core/event-notifier.js.map +1 -1
  21. app-rn-runtime/core/tappable.component.js +75 -39
  22. app-rn-runtime/core/tappable.component.js.map +1 -1
  23. app-rn-runtime/package.json +3 -3
  24. app-rn-runtime/runtime/base-partial.component.js +10 -5
  25. app-rn-runtime/runtime/base-partial.component.js.map +1 -1
@@ -7,8 +7,10 @@ import { Platform, View } from "react-native";
7
7
  import { get } from "lodash";
8
8
  import injector from "./injector";
9
9
  import { TouchableRipple } from "react-native-paper";
10
- export class TapEvent {
10
+ export const TappableContext = /*#__PURE__*/React.createContext(null);
11
+ export class SyntheticEvent {
11
12
  constructor() {
13
+ // as the event is being used in onPress, onPressOut and onLongTap the TapEvent is renamed to SyntheticEvent
12
14
  _defineProperty(this, "propagationEnabled", true);
13
15
  }
14
16
  stopPropagation() {
@@ -22,88 +24,122 @@ export class Tappable extends React.Component {
22
24
  _defineProperty(this, "lastTap", 0);
23
25
  _defineProperty(this, "lastDoubleTap", 0);
24
26
  _defineProperty(this, "isLongTap", false);
27
+ _defineProperty(this, "parent", null);
28
+ }
29
+ async triggerTap() {
30
+ var _this$parent;
31
+ let e = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : new SyntheticEvent();
32
+ if (!e.propagationEnabled) {
33
+ return;
34
+ }
35
+ const target = this.props.target;
36
+ if (this.props.onTap) {
37
+ await this.props.onTap(e);
38
+ } else {
39
+ await (target === null || target === void 0 ? void 0 : target.invokeEventCallback('onTap', [e, target]));
40
+ }
41
+ (_this$parent = this.parent) === null || _this$parent === void 0 ? void 0 : _this$parent.triggerTap(e);
25
42
  }
26
43
  onPress(e) {
27
44
  var _this$props$target;
28
45
  this.lastPress = Date.now();
29
46
  const target = this.props.target;
30
- if (!Tappable.CURRENT_EVENT) {
31
- Tappable.CURRENT_EVENT = new TapEvent();
32
- setTimeout(() => {
33
- Tappable.CURRENT_EVENT = null;
34
- }, 10);
35
- }
36
- const syntheticEvent = Tappable.CURRENT_EVENT;
37
- this.props.onTouchStart && this.props.onTouchStart(e || syntheticEvent);
38
- (_this$props$target = this.props.target) === null || _this$props$target === void 0 ? void 0 : _this$props$target.invokeEventCallback('onTouchstart', [syntheticEvent, this.props.target]);
47
+ this.props.onTouchStart && this.props.onTouchStart(e);
48
+ (_this$props$target = this.props.target) === null || _this$props$target === void 0 ? void 0 : _this$props$target.invokeEventCallback('onTouchstart', [e, this.props.target]);
39
49
  const currentTime = Date.now();
40
50
  const tapDelta = currentTime - this.lastTap;
41
51
  if (this.isLongTap) {
42
52
  this.isLongTap = false;
43
53
  return;
44
54
  }
45
- if (syntheticEvent.propagationEnabled) {
55
+ if (e.propagationEnabled) {
46
56
  var _injector$FOCUSED_ELE;
47
57
  (_injector$FOCUSED_ELE = injector.FOCUSED_ELEMENT.get()) === null || _injector$FOCUSED_ELE === void 0 ? void 0 : _injector$FOCUSED_ELE.blur();
48
58
  if (this.lastDoubleTap !== this.lastTap && tapDelta < 500) {
49
59
  this.props.onDoubleTap && this.props.onDoubleTap(e);
50
60
  setTimeout(() => {
51
- target === null || target === void 0 ? void 0 : target.invokeEventCallback('onDoubletap', [syntheticEvent, target]);
61
+ target === null || target === void 0 ? void 0 : target.invokeEventCallback('onDoubletap', [e, target]);
52
62
  }, 200);
53
63
  this.lastDoubleTap = currentTime;
54
64
  }
55
65
  setTimeout(() => {
66
+ var _this$parent2;
67
+ if (!e.propagationEnabled) {
68
+ return;
69
+ }
56
70
  if (this.props.onTap) {
57
- this.props.onTap(e || syntheticEvent);
71
+ this.props.onTap(e);
58
72
  } else {
59
- target === null || target === void 0 ? void 0 : target.invokeEventCallback('onTap', [syntheticEvent, target]);
73
+ target === null || target === void 0 ? void 0 : target.invokeEventCallback('onTap', [e, target]);
60
74
  }
75
+ (_this$parent2 = this.parent) === null || _this$parent2 === void 0 ? void 0 : _this$parent2.onPress(e);
61
76
  }, 200);
62
77
  this.lastTap = currentTime;
63
78
  }
64
79
  }
65
80
  onLongTap(e) {
66
- const syntheticEvent = Tappable.CURRENT_EVENT;
67
- this.props.onLongTap && this.props.onLongTap(e || syntheticEvent);
81
+ if (!e.propagationEnabled) {
82
+ return;
83
+ }
84
+ this.props.onLongTap && this.props.onLongTap(e);
68
85
  setTimeout(() => {
69
- var _this$props$target2;
70
- (_this$props$target2 = this.props.target) === null || _this$props$target2 === void 0 ? void 0 : _this$props$target2.invokeEventCallback('onLongtap', [syntheticEvent, this.props.target]);
86
+ var _this$props$target2, _this$parent3;
87
+ (_this$props$target2 = this.props.target) === null || _this$props$target2 === void 0 ? void 0 : _this$props$target2.invokeEventCallback('onLongtap', [e, this.props.target]);
88
+ (_this$parent3 = this.parent) === null || _this$parent3 === void 0 ? void 0 : _this$parent3.onPressOut(e);
71
89
  }, 200);
72
90
  this.isLongTap = true;
73
91
  }
74
92
  onPressOut(e) {
75
- const syntheticEvent = Tappable.CURRENT_EVENT;
76
- this.props.onTouchEnd && this.props.onTouchEnd(e || syntheticEvent);
93
+ if (!e.propagationEnabled) {
94
+ return;
95
+ }
96
+ this.props.onTouchEnd && this.props.onTouchEnd(e);
77
97
  setTimeout(() => {
78
- var _this$props$target3;
79
- (_this$props$target3 = this.props.target) === null || _this$props$target3 === void 0 ? void 0 : _this$props$target3.invokeEventCallback('onTouchend', [syntheticEvent, this.props.target]);
98
+ var _this$props$target3, _this$parent4;
99
+ (_this$props$target3 = this.props.target) === null || _this$props$target3 === void 0 ? void 0 : _this$props$target3.invokeEventCallback('onTouchend', [e, this.props.target]);
100
+ (_this$parent4 = this.parent) === null || _this$parent4 === void 0 ? void 0 : _this$parent4.onPressOut(e);
80
101
  }, 200);
81
102
  this.isLongTap = false;
82
103
  }
104
+ setParent(parent) {
105
+ if (parent && this.parent !== parent) {
106
+ this.parent = parent;
107
+ }
108
+ }
83
109
  render() {
84
110
  const target = this.props.target;
85
111
  if (target !== null && target !== void 0 && target.props.onTap || target !== null && target !== void 0 && target.props.onLongtap || target !== null && target !== void 0 && target.props.onDoubletap || this.props.onTap || this.props.onLongTap || this.props.onDoubleTap) {
86
- return /*#__PURE__*/React.createElement(TouchableRipple, _extends({
87
- rippleColor: this.props.rippleColor,
88
- borderless: true
89
- }, Platform.OS === 'android' || Platform.OS === 'web' ? {
90
- accessibilityLabel: this.props.testID,
91
- testID: this.props.testID
92
- } : {
93
- // accessible: false,
94
- testID: this.props.testID
95
- }, {
96
- disabled: get(target === null || target === void 0 ? void 0 : target.proxy, 'disabled'),
97
- style: this.props.styles,
98
- onPress: () => this.onPress(),
99
- onLongPress: () => this.onLongTap(),
100
- onPressOut: () => this.onPressOut()
101
- }), /*#__PURE__*/React.createElement(React.Fragment, null, this.props.children));
112
+ return /*#__PURE__*/React.createElement(TappableContext.Consumer, null, parent => {
113
+ this.setParent(parent);
114
+ return /*#__PURE__*/React.createElement(TappableContext.Provider, {
115
+ value: this
116
+ }, /*#__PURE__*/React.createElement(TouchableRipple, _extends({
117
+ rippleColor: this.props.rippleColor,
118
+ borderless: true
119
+ }, Platform.OS === 'android' || Platform.OS === 'web' ? {
120
+ accessibilityLabel: this.props.testID,
121
+ testID: this.props.testID
122
+ } : {
123
+ // accessible: false,
124
+ testID: this.props.testID
125
+ }, {
126
+ disabled: get(target === null || target === void 0 ? void 0 : target.proxy, 'disabled'),
127
+ style: this.props.styles,
128
+ onPress: e => {
129
+ var _e$target;
130
+ if ((e === null || e === void 0 || (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.tagName) === 'INPUT') {
131
+ return;
132
+ }
133
+ this.onPress(new SyntheticEvent());
134
+ },
135
+ onLongPress: e => this.onLongTap(new SyntheticEvent()),
136
+ onPressOut: e => this.onPressOut(new SyntheticEvent())
137
+ }), /*#__PURE__*/React.createElement(React.Fragment, null, this.props.children)));
138
+ });
102
139
  }
103
140
  return /*#__PURE__*/React.createElement(View, {
104
141
  style: this.props.styles
105
142
  }, this.props.children);
106
143
  }
107
144
  }
108
- _defineProperty(Tappable, "CURRENT_EVENT", null);
109
145
  //# sourceMappingURL=tappable.component.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","Platform","View","get","injector","TouchableRipple","TapEvent","constructor","_defineProperty","stopPropagation","propagationEnabled","Tappable","Component","props","onPress","e","_this$props$target","lastPress","Date","now","target","CURRENT_EVENT","setTimeout","syntheticEvent","onTouchStart","invokeEventCallback","currentTime","tapDelta","lastTap","isLongTap","_injector$FOCUSED_ELE","FOCUSED_ELEMENT","blur","lastDoubleTap","onDoubleTap","onTap","onLongTap","_this$props$target2","onPressOut","onTouchEnd","_this$props$target3","render","onLongtap","onDoubletap","createElement","_extends","rippleColor","borderless","OS","accessibilityLabel","testID","disabled","proxy","style","styles","onLongPress","Fragment","children"],"sources":["tappable.component.tsx"],"sourcesContent":["import { BaseComponent } from \"@wavemaker/app-rn-runtime/core/base.component\";\nimport React from \"react\";\nimport { GestureResponderEvent, Platform, View } from \"react-native\";\nimport { get } from \"lodash\";\nimport injector from \"./injector\";\nimport { TouchableRipple } from \"react-native-paper\";\nimport ThemeVariables from \"../styles/theme.variables\";\n\n\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}\n\nexport class TapEvent {\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\n static CURRENT_EVENT: TapEvent = null as any;\n \n constructor(props: any) {\n super(props);\n }\n\n onPress(e?: GestureResponderEvent): void { \n this.lastPress = Date.now();\n const target = this.props.target;\n if (!Tappable.CURRENT_EVENT) {\n Tappable.CURRENT_EVENT = new TapEvent();\n setTimeout(() => {\n Tappable.CURRENT_EVENT = null as any;\n }, 10);\n }\n const syntheticEvent = Tappable.CURRENT_EVENT;\n this.props.onTouchStart && this.props.onTouchStart(e || syntheticEvent);\n this.props.target?.invokeEventCallback('onTouchstart', [syntheticEvent, 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 (syntheticEvent.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', [syntheticEvent, target]);\n }, 200);\n this.lastDoubleTap = currentTime;\n }\n setTimeout(() => {\n if (this.props.onTap) {\n this.props.onTap(e || syntheticEvent);\n } else {\n target?.invokeEventCallback('onTap', [syntheticEvent, target]);\n }\n }, 200);\n this.lastTap = currentTime;\n }\n }\n\n onLongTap(e?: GestureResponderEvent): void {\n const syntheticEvent = Tappable.CURRENT_EVENT;\n this.props.onLongTap && this.props.onLongTap(e || syntheticEvent);\n setTimeout(() => {\n this.props.target?.invokeEventCallback('onLongtap', [syntheticEvent, this.props.target]);\n }, 200);\n this.isLongTap = true;\n }\n \n onPressOut(e?: GestureResponderEvent): void {\n const syntheticEvent = Tappable.CURRENT_EVENT;\n this.props.onTouchEnd && this.props.onTouchEnd(e || syntheticEvent);\n setTimeout(() => {\n this.props.target?.invokeEventCallback('onTouchend', [syntheticEvent, this.props.target]);\n }, 200);\n this.isLongTap = false;\n }\n\n render() {\n const target = this.props.target;\n if (target?.props.onTap \n || target?.props.onLongtap \n || target?.props.onDoubletap \n || this.props.onTap \n || this.props.onLongTap \n || this.props.onDoubleTap) {\n return (\n <TouchableRipple\n rippleColor={this.props.rippleColor}\n borderless = {true}\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 disabled={get(target?.proxy, 'disabled')}\n style={this.props.styles}\n onPress={() => this.onPress()}\n onLongPress={() => this.onLongTap()}\n onPressOut={() => this.onPressOut()}>\n <>{this.props.children}</>\n </TouchableRipple>\n );\n }\n return (<View style={this.props.styles}>{this.props.children}</View>);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","Platform","View","get","injector","TouchableRipple","TappableContext","createContext","SyntheticEvent","constructor","_defineProperty","stopPropagation","propagationEnabled","Tappable","Component","props","triggerTap","_this$parent","e","arguments","length","undefined","target","onTap","invokeEventCallback","parent","onPress","_this$props$target","lastPress","Date","now","onTouchStart","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","onLongtap","onDoubletap","createElement","Consumer","Provider","value","_extends","rippleColor","borderless","OS","accessibilityLabel","testID","disabled","proxy","style","styles","_e$target","tagName","onLongPress","Fragment","children"],"sources":["tappable.component.tsx"],"sourcesContent":["import { BaseComponent } from \"@wavemaker/app-rn-runtime/core/base.component\";\nimport React from \"react\";\nimport { GestureResponderEvent, Platform, View } 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);\n\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}\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 onPress(e: SyntheticEvent): void { \n this.lastPress = Date.now();\n const target = this.props.target;\n this.props.onTouchStart && this.props.onTouchStart(e);\n this.props.target?.invokeEventCallback('onTouchstart', [e, 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 if (target?.props.onTap \n || target?.props.onLongtap \n || target?.props.onDoubletap \n || this.props.onTap \n || this.props.onLongTap \n || this.props.onDoubleTap) {\n return (\n <TappableContext.Consumer>{(parent) => {\n this.setParent(parent);\n return( <TappableContext.Provider value={this}>\n <TouchableRipple\n rippleColor={this.props.rippleColor}\n borderless = {true}\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 disabled={get(target?.proxy, 'disabled')}\n style={this.props.styles}\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 <>{this.props.children}</>\n </TouchableRipple>\n </TappableContext.Provider>)}}</TappableContext.Consumer>\n \n );\n }\n return (<View style={this.props.styles}>{this.props.children}</View>);\n }\n}\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wavemaker/app-rn-runtime",
3
- "version": "11.7.0-rc.5562",
3
+ "version": "11.7.0-rc.5570",
4
4
  "description": "''",
5
5
  "main": "index",
6
6
  "module": "index",
@@ -49,7 +49,7 @@
49
49
  "@react-navigation/native": "6.1.7",
50
50
  "@react-navigation/stack": "^6.3.7",
51
51
  "@types/lodash-es": "^4.17.6",
52
- "@wavemaker/variables": "11.7.0-rc.5562",
52
+ "@wavemaker/variables": "11.7.0-rc.5570",
53
53
  "axios": "^1.4.0",
54
54
  "color": "4.2.3",
55
55
  "cross-env": "^5.2.0",
@@ -131,7 +131,7 @@
131
131
  "typescript": "^5.1.3",
132
132
  "victory-native": "36.6.11",
133
133
  "yargs": "^16.2.0",
134
- "@wavemaker/variables": "11.7.0-rc.5562"
134
+ "@wavemaker/variables": "11.7.0-rc.5570"
135
135
  },
136
136
  "jest": {
137
137
  "preset": "react-native",
@@ -22,11 +22,6 @@ export default class BasePartial extends BaseFragment {
22
22
  onFragmentReady() {
23
23
  return super.onFragmentReady().then(() => {
24
24
  this.onContentReady();
25
- const parent = this.props.parent;
26
- if (parent) {
27
- parent.Widgets = this.Widgets;
28
- parent.Variables = this.fragmentVariables;
29
- }
30
25
  this.invokeEventCallback('onLoad', [this]);
31
26
  });
32
27
  }
@@ -48,6 +43,16 @@ export default class BasePartial extends BaseFragment {
48
43
  delete parent.Variables;
49
44
  }
50
45
  }
46
+ componentDidUpdate(prevProps, prevState, snapshot) {
47
+ super.componentDidUpdate(prevProps, prevState, snapshot);
48
+ const parent = this.props.parent;
49
+ if (parent) {
50
+ parent.pageParams = this.pageParams;
51
+ parent.partialParams = this.pageParams;
52
+ parent.Widgets = this.Widgets;
53
+ parent.Variables = this.fragmentVariables;
54
+ }
55
+ }
51
56
  renderWidget(props) {
52
57
  return this.renderPartial();
53
58
  }
@@ -1 +1 @@
1
- {"version":3,"names":["WmPartial","BaseFragment","BasePartial","constructor","props","_defineProperty","isPartOfPrefab","prefab","App","appConfig","app","Actions","Object","assign","Variables","serviceDefinitions","Prefab","baseUrl","watcher","parentWatcher","create","onFragmentReady","then","onContentReady","parent","Widgets","fragmentVariables","invokeEventCallback","prefabname","_this$Prefab","onComponentInit","w","targetWidget","onComponentDestroy","renderWidget","renderPartial"],"sources":["base-partial.component.tsx"],"sourcesContent":["import { BaseComponent } from '@wavemaker/app-rn-runtime/core/base.component';\nimport WmPartial from '@wavemaker/app-rn-runtime/components/page/partial/partial.component';\nimport BaseFragment, { FragmentProps, FragmentState } from './base-fragment.component';\nimport { ReactNode } from 'react';\nimport BasePrefab from './base-prefab.component';\nimport { Watcher } from './watcher';\nexport interface PartialProps extends FragmentProps {\n serviceDefinitions: any;\n prefab: any;\n parent: any;\n onLoad?: Function;\n parentWatcher: Watcher;\n}\n\nexport interface PartialState extends FragmentState<PartialProps> {}\n\nexport default abstract class BasePartial extends BaseFragment<PartialProps, PartialState> {\n private partialParams: any = {};\n Prefab: BasePrefab = null as any;\n\n constructor(props: PartialProps) {\n super(props);\n const isPartOfPrefab = !!this.props.prefab;\n this.App = this.appConfig.app;\n this.Actions = Object.assign({}, isPartOfPrefab ? {} : this.App.Actions);\n this.Variables = Object.assign({}, isPartOfPrefab ? {} : this.App.Variables);\n this.serviceDefinitions = this.props.serviceDefinitions;\n if (isPartOfPrefab) {\n this.Prefab = this.props.prefab;\n this.baseUrl =this.Prefab.baseUrl;\n }\n this.watcher = props.parentWatcher.create();\n }\n\n onFragmentReady() {\n return super.onFragmentReady().then(() => {\n this.onContentReady();\n const parent: any = this.props.parent;\n if (parent) {\n parent.Widgets = this.Widgets;\n parent.Variables = this.fragmentVariables;\n }\n this.invokeEventCallback('onLoad', [this]);\n });\n }\n\n get prefabname() {\n return this.Prefab?.props.prefabname;\n }\n\n onComponentInit(w: BaseComponent<any, any, any>) {\n super.onComponentInit(w);\n if (w instanceof WmPartial) {\n this.targetWidget = w;\n }\n }\n\n onComponentDestroy(w: BaseComponent<any, any, any>): void {\n super.onComponentDestroy(w);\n const parent: any = this.props.parent;\n if (parent) {\n delete (parent as any).Widgets;\n delete (parent as any).Variables;\n }\n }\n\n abstract renderPartial(): ReactNode;\n\n renderWidget(props: PartialProps) {\n return this.renderPartial();\n }\n}\n"],"mappings":";;;AACA,OAAOA,SAAS,MAAM,qEAAqE;AAC3F,OAAOC,YAAY,MAAwC,2BAA2B;AActF,eAAe,MAAeC,WAAW,SAASD,YAAY,CAA6B;EAIvFE,WAAWA,CAACC,KAAmB,EAAE;IAC7B,KAAK,CAACA,KAAK,CAAC;IAACC,eAAA,wBAJY,CAAC,CAAC;IAAAA,eAAA,iBACV,IAAI;IAIrB,MAAMC,cAAc,GAAG,CAAC,CAAC,IAAI,CAACF,KAAK,CAACG,MAAM;IAC1C,IAAI,CAACC,GAAG,GAAG,IAAI,CAACC,SAAS,CAACC,GAAG;IAC7B,IAAI,CAACC,OAAO,GAAGC,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAEP,cAAc,GAAG,CAAC,CAAC,GAAG,IAAI,CAACE,GAAG,CAACG,OAAO,CAAC;IACxE,IAAI,CAACG,SAAS,GAAGF,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAEP,cAAc,GAAG,CAAC,CAAC,GAAG,IAAI,CAACE,GAAG,CAACM,SAAS,CAAC;IAC5E,IAAI,CAACC,kBAAkB,GAAG,IAAI,CAACX,KAAK,CAACW,kBAAkB;IACvD,IAAIT,cAAc,EAAE;MAClB,IAAI,CAACU,MAAM,GAAG,IAAI,CAACZ,KAAK,CAACG,MAAM;MAC/B,IAAI,CAACU,OAAO,GAAE,IAAI,CAACD,MAAM,CAACC,OAAO;IACnC;IACA,IAAI,CAACC,OAAO,GAAGd,KAAK,CAACe,aAAa,CAACC,MAAM,CAAC,CAAC;EAC/C;EAEAC,eAAeA,CAAA,EAAG;IAChB,OAAO,KAAK,CAACA,eAAe,CAAC,CAAC,CAACC,IAAI,CAAC,MAAM;MACxC,IAAI,CAACC,cAAc,CAAC,CAAC;MACrB,MAAMC,MAAW,GAAG,IAAI,CAACpB,KAAK,CAACoB,MAAM;MACrC,IAAIA,MAAM,EAAE;QACVA,MAAM,CAACC,OAAO,GAAG,IAAI,CAACA,OAAO;QAC7BD,MAAM,CAACV,SAAS,GAAG,IAAI,CAACY,iBAAiB;MAC3C;MACA,IAAI,CAACC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC,CAAC;EACJ;EAEA,IAAIC,UAAUA,CAAA,EAAG;IAAA,IAAAC,YAAA;IACf,QAAAA,YAAA,GAAO,IAAI,CAACb,MAAM,cAAAa,YAAA,uBAAXA,YAAA,CAAazB,KAAK,CAACwB,UAAU;EACtC;EAEAE,eAAeA,CAACC,CAA+B,EAAE;IAC/C,KAAK,CAACD,eAAe,CAACC,CAAC,CAAC;IACxB,IAAIA,CAAC,YAAY/B,SAAS,EAAE;MAC1B,IAAI,CAACgC,YAAY,GAAGD,CAAC;IACvB;EACF;EAEAE,kBAAkBA,CAACF,CAA+B,EAAQ;IACxD,KAAK,CAACE,kBAAkB,CAACF,CAAC,CAAC;IAC3B,MAAMP,MAAW,GAAG,IAAI,CAACpB,KAAK,CAACoB,MAAM;IACrC,IAAIA,MAAM,EAAE;MACV,OAAQA,MAAM,CAASC,OAAO;MAC9B,OAAQD,MAAM,CAASV,SAAS;IAClC;EACF;EAIAoB,YAAYA,CAAC9B,KAAmB,EAAE;IAChC,OAAO,IAAI,CAAC+B,aAAa,CAAC,CAAC;EAC7B;AACJ"}
1
+ {"version":3,"names":["WmPartial","BaseFragment","BasePartial","constructor","props","_defineProperty","isPartOfPrefab","prefab","App","appConfig","app","Actions","Object","assign","Variables","serviceDefinitions","Prefab","baseUrl","watcher","parentWatcher","create","onFragmentReady","then","onContentReady","invokeEventCallback","prefabname","_this$Prefab","onComponentInit","w","targetWidget","onComponentDestroy","parent","Widgets","componentDidUpdate","prevProps","prevState","snapshot","pageParams","partialParams","fragmentVariables","renderWidget","renderPartial"],"sources":["base-partial.component.tsx"],"sourcesContent":["import { BaseComponent } from '@wavemaker/app-rn-runtime/core/base.component';\nimport WmPartial from '@wavemaker/app-rn-runtime/components/page/partial/partial.component';\nimport BaseFragment, { FragmentProps, FragmentState } from './base-fragment.component';\nimport { ReactNode } from 'react';\nimport BasePrefab from './base-prefab.component';\nimport { Watcher } from './watcher';\nexport interface PartialProps extends FragmentProps {\n serviceDefinitions: any;\n prefab: any;\n parent: any;\n onLoad?: Function;\n parentWatcher: Watcher;\n}\n\nexport interface PartialState extends FragmentState<PartialProps> {}\n\nexport default abstract class BasePartial extends BaseFragment<PartialProps, PartialState> {\n private partialParams: any = {};\n Prefab: BasePrefab = null as any;\n\n constructor(props: PartialProps) {\n super(props);\n const isPartOfPrefab = !!this.props.prefab;\n this.App = this.appConfig.app;\n this.Actions = Object.assign({}, isPartOfPrefab ? {} : this.App.Actions);\n this.Variables = Object.assign({}, isPartOfPrefab ? {} : this.App.Variables);\n this.serviceDefinitions = this.props.serviceDefinitions;\n if (isPartOfPrefab) {\n this.Prefab = this.props.prefab;\n this.baseUrl =this.Prefab.baseUrl;\n }\n this.watcher = props.parentWatcher.create();\n }\n\n onFragmentReady() {\n return super.onFragmentReady().then(() => {\n this.onContentReady();\n this.invokeEventCallback('onLoad', [this]);\n });\n }\n\n get prefabname() {\n return this.Prefab?.props.prefabname;\n }\n\n onComponentInit(w: BaseComponent<any, any, any>) {\n super.onComponentInit(w);\n if (w instanceof WmPartial) {\n this.targetWidget = w;\n }\n }\n\n onComponentDestroy(w: BaseComponent<any, any, any>): void {\n super.onComponentDestroy(w);\n const parent: any = this.props.parent;\n if (parent) {\n delete (parent as any).Widgets;\n delete (parent as any).Variables;\n }\n }\n\n componentDidUpdate(prevProps: Readonly<PartialProps>, prevState: Readonly<PartialState>, snapshot?: any): void {\n super.componentDidUpdate(prevProps, prevState, snapshot);\n const parent: any = this.props.parent;\n if (parent) {\n parent.pageParams = (this as any).pageParams;\n parent.partialParams = (this as any).pageParams;\n parent.Widgets = this.Widgets;\n parent.Variables = this.fragmentVariables;\n }\n }\n\n abstract renderPartial(): ReactNode;\n\n renderWidget(props: PartialProps) {\n return this.renderPartial();\n }\n}\n"],"mappings":";;;AACA,OAAOA,SAAS,MAAM,qEAAqE;AAC3F,OAAOC,YAAY,MAAwC,2BAA2B;AActF,eAAe,MAAeC,WAAW,SAASD,YAAY,CAA6B;EAIvFE,WAAWA,CAACC,KAAmB,EAAE;IAC7B,KAAK,CAACA,KAAK,CAAC;IAACC,eAAA,wBAJY,CAAC,CAAC;IAAAA,eAAA,iBACV,IAAI;IAIrB,MAAMC,cAAc,GAAG,CAAC,CAAC,IAAI,CAACF,KAAK,CAACG,MAAM;IAC1C,IAAI,CAACC,GAAG,GAAG,IAAI,CAACC,SAAS,CAACC,GAAG;IAC7B,IAAI,CAACC,OAAO,GAAGC,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAEP,cAAc,GAAG,CAAC,CAAC,GAAG,IAAI,CAACE,GAAG,CAACG,OAAO,CAAC;IACxE,IAAI,CAACG,SAAS,GAAGF,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAEP,cAAc,GAAG,CAAC,CAAC,GAAG,IAAI,CAACE,GAAG,CAACM,SAAS,CAAC;IAC5E,IAAI,CAACC,kBAAkB,GAAG,IAAI,CAACX,KAAK,CAACW,kBAAkB;IACvD,IAAIT,cAAc,EAAE;MAClB,IAAI,CAACU,MAAM,GAAG,IAAI,CAACZ,KAAK,CAACG,MAAM;MAC/B,IAAI,CAACU,OAAO,GAAE,IAAI,CAACD,MAAM,CAACC,OAAO;IACnC;IACA,IAAI,CAACC,OAAO,GAAGd,KAAK,CAACe,aAAa,CAACC,MAAM,CAAC,CAAC;EAC/C;EAEAC,eAAeA,CAAA,EAAG;IAChB,OAAO,KAAK,CAACA,eAAe,CAAC,CAAC,CAACC,IAAI,CAAC,MAAM;MACxC,IAAI,CAACC,cAAc,CAAC,CAAC;MACrB,IAAI,CAACC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC,CAAC;EACJ;EAEA,IAAIC,UAAUA,CAAA,EAAG;IAAA,IAAAC,YAAA;IACf,QAAAA,YAAA,GAAO,IAAI,CAACV,MAAM,cAAAU,YAAA,uBAAXA,YAAA,CAAatB,KAAK,CAACqB,UAAU;EACtC;EAEAE,eAAeA,CAACC,CAA+B,EAAE;IAC/C,KAAK,CAACD,eAAe,CAACC,CAAC,CAAC;IACxB,IAAIA,CAAC,YAAY5B,SAAS,EAAE;MAC1B,IAAI,CAAC6B,YAAY,GAAGD,CAAC;IACvB;EACF;EAEAE,kBAAkBA,CAACF,CAA+B,EAAQ;IACxD,KAAK,CAACE,kBAAkB,CAACF,CAAC,CAAC;IAC3B,MAAMG,MAAW,GAAG,IAAI,CAAC3B,KAAK,CAAC2B,MAAM;IACrC,IAAIA,MAAM,EAAE;MACV,OAAQA,MAAM,CAASC,OAAO;MAC9B,OAAQD,MAAM,CAASjB,SAAS;IAClC;EACF;EAEAmB,kBAAkBA,CAACC,SAAiC,EAAEC,SAAiC,EAAEC,QAAc,EAAQ;IAC7G,KAAK,CAACH,kBAAkB,CAACC,SAAS,EAAEC,SAAS,EAAEC,QAAQ,CAAC;IACxD,MAAML,MAAW,GAAG,IAAI,CAAC3B,KAAK,CAAC2B,MAAM;IACrC,IAAIA,MAAM,EAAE;MACVA,MAAM,CAACM,UAAU,GAAI,IAAI,CAASA,UAAU;MAC5CN,MAAM,CAACO,aAAa,GAAK,IAAI,CAASD,UAAU;MAChDN,MAAM,CAACC,OAAO,GAAG,IAAI,CAACA,OAAO;MAC7BD,MAAM,CAACjB,SAAS,GAAG,IAAI,CAACyB,iBAAiB;IAC3C;EACF;EAIAC,YAAYA,CAACpC,KAAmB,EAAE;IAChC,OAAO,IAAI,CAACqC,aAAa,CAAC,CAAC;EAC7B;AACJ"}