@telefonica/mistica 10.28.1 → 10.29.0

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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ # [10.29.0](https://github.com/Telefonica/mistica-web/compare/v10.28.1...v10.29.0) (2022-03-15)
2
+
3
+
4
+ ### Features
5
+
6
+ * **Touchable:** Added loadOnTop prop ([#440](https://github.com/Telefonica/mistica-web/issues/440)) ([884940f](https://github.com/Telefonica/mistica-web/commit/884940fc1b924fef8f398af1c71313068c0e7ad7))
7
+
1
8
  ## [10.28.1](https://github.com/Telefonica/mistica-web/compare/v10.28.0...v10.28.1) (2022-03-09)
2
9
 
3
10
 
package/dist/button.d.ts CHANGED
@@ -36,6 +36,7 @@ export interface OnPressButtonProps extends CommonProps {
36
36
  export interface HrefButtonProps extends CommonProps {
37
37
  href: string;
38
38
  newTab?: boolean;
39
+ loadOnTop?: boolean;
39
40
  submit?: undefined;
40
41
  fake?: undefined;
41
42
  onPress?: undefined;
package/dist/button.js CHANGED
@@ -442,7 +442,8 @@ var Button = function Button(props) {
442
442
  if (props.href || props.href === '') {
443
443
  return(/*#__PURE__*/ (0, _jsxRuntime).jsx(_touchable.default, _objectSpread({}, commonProps, {
444
444
  href: props.href,
445
- newTab: props.newTab
445
+ newTab: props.newTab,
446
+ loadOnTop: props.loadOnTop
446
447
  })));
447
448
  }
448
449
  if (process.env.NODE_ENV !== 'production') {
@@ -41,6 +41,7 @@ export type HrefButtonProps = {
41
41
  ...$Exact<CommonProps>,
42
42
  href: string,
43
43
  newTab?: boolean,
44
+ loadOnTop?: boolean,
44
45
  };
45
46
  export type FakeButtonProps = {
46
47
  ...$Exact<CommonProps>,
@@ -3,5 +3,5 @@ Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
5
  exports.PACKAGE_VERSION = void 0;
6
- var PACKAGE_VERSION = '10.28.1';
6
+ var PACKAGE_VERSION = '10.29.0';
7
7
  exports.PACKAGE_VERSION = PACKAGE_VERSION;
@@ -27,6 +27,7 @@ interface CommonProps {
27
27
  export interface PropsHref extends CommonProps {
28
28
  href: string;
29
29
  newTab?: boolean;
30
+ loadOnTop?: boolean;
30
31
  to?: undefined;
31
32
  onPress?: undefined;
32
33
  }
@@ -47,6 +48,7 @@ export interface PropsMaybeHref extends CommonProps {
47
48
  maybe: true;
48
49
  href?: string;
49
50
  newTab?: boolean;
51
+ loadOnTop?: boolean;
50
52
  to?: undefined;
51
53
  onPress?: undefined;
52
54
  }
package/dist/touchable.js CHANGED
@@ -68,9 +68,11 @@ function _objectSpread(target) {
68
68
  return target;
69
69
  }
70
70
  var redirect = function redirect(url) {
71
- var external = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
71
+ var external = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false, loadOnTop = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;
72
72
  if (external) {
73
73
  window.open(url, '_blank');
74
+ } else if (loadOnTop) {
75
+ window.open(url, '_top');
74
76
  } else {
75
77
  document.location.href = url;
76
78
  }
@@ -141,6 +143,7 @@ var Touchable = /*#__PURE__*/ React.forwardRef(function(props, ref) {
141
143
  }, (0, _dom).getPrefixedDataAttributes(props.dataAttributes));
142
144
  var type = props.type ? props.type : 'button';
143
145
  var openNewTab = !!props.href && !!props.newTab;
146
+ var loadOnTop = !openNewTab && !!props.href && !!props.loadOnTop;
144
147
  var onPress = function onPress(event) {
145
148
  if (props.onPress) {
146
149
  props.onPress(event);
@@ -188,7 +191,7 @@ var Touchable = /*#__PURE__*/ React.forwardRef(function(props, ref) {
188
191
  }
189
192
  event.preventDefault();
190
193
  trackOnce(function() {
191
- return redirect(getHref(), openNewTab);
194
+ return redirect(getHref(), openNewTab, loadOnTop);
192
195
  });
193
196
  };
194
197
  var handleKeyDown = function handleKeyDown(event) {
@@ -204,7 +207,11 @@ var Touchable = /*#__PURE__*/ React.forwardRef(function(props, ref) {
204
207
  onClick: handleHrefClick,
205
208
  onKeyDown: handleKeyDown,
206
209
  href: props.disabled ? undefined : getHref(),
207
- target: openNewTab ? '_blank' : undefined,
210
+ target: function() {
211
+ if (openNewTab) return '_blank';
212
+ if (loadOnTop) return '_top';
213
+ return undefined;
214
+ }(),
208
215
  rel: openNewTab ? 'noopener noreferrer' : undefined,
209
216
  ref: ref,
210
217
  children: [
@@ -36,6 +36,7 @@ export type PropsHref = {
36
36
  ...$Exact<CommonProps>,
37
37
  href: string,
38
38
  newTab?: boolean,
39
+ loadOnTop?: boolean,
39
40
  };
40
41
  export type PropsOnPress = {
41
42
  ...$Exact<CommonProps>,
@@ -53,6 +54,7 @@ export type PropsMaybeHref = {
53
54
  maybe: true,
54
55
  href?: string,
55
56
  newTab?: boolean,
57
+ loadOnTop?: boolean,
56
58
  };
57
59
  export type PropsMaybeTo = {
58
60
  ...$Exact<CommonProps>,
package/dist-es/button.js CHANGED
@@ -409,7 +409,8 @@ var Button = function(props) {
409
409
  if (props.href || props.href === '') {
410
410
  return(/*#__PURE__*/ _jsx(Touchable, _objectSpread({}, commonProps, {
411
411
  href: props.href,
412
- newTab: props.newTab
412
+ newTab: props.newTab,
413
+ loadOnTop: props.loadOnTop
413
414
  })));
414
415
  }
415
416
  if (process.env.NODE_ENV !== 'production') {
@@ -1,2 +1,2 @@
1
1
  // DO NOT EDIT THIS FILE. It's autogenerated by set-version.js
2
- export var PACKAGE_VERSION = '10.28.1';
2
+ export var PACKAGE_VERSION = '10.29.0';
@@ -36,9 +36,11 @@ function _objectSpread(target) {
36
36
  return target;
37
37
  }
38
38
  var redirect = function(url) {
39
- var external = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
39
+ var external = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false, loadOnTop = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;
40
40
  if (external) {
41
41
  window.open(url, '_blank');
42
+ } else if (loadOnTop) {
43
+ window.open(url, '_top');
42
44
  } else {
43
45
  document.location.href = url;
44
46
  }
@@ -109,6 +111,7 @@ var Touchable = /*#__PURE__*/ React.forwardRef(function(props, ref) {
109
111
  }, getPrefixedDataAttributes(props.dataAttributes));
110
112
  var type = props.type ? props.type : 'button';
111
113
  var openNewTab = !!props.href && !!props.newTab;
114
+ var loadOnTop = !openNewTab && !!props.href && !!props.loadOnTop;
112
115
  var onPress = function(event) {
113
116
  if (props.onPress) {
114
117
  props.onPress(event);
@@ -156,7 +159,7 @@ var Touchable = /*#__PURE__*/ React.forwardRef(function(props, ref) {
156
159
  }
157
160
  event.preventDefault();
158
161
  trackOnce(function() {
159
- return redirect(getHref(), openNewTab);
162
+ return redirect(getHref(), openNewTab, loadOnTop);
160
163
  });
161
164
  };
162
165
  var handleKeyDown = function(event) {
@@ -172,7 +175,11 @@ var Touchable = /*#__PURE__*/ React.forwardRef(function(props, ref) {
172
175
  onClick: handleHrefClick,
173
176
  onKeyDown: handleKeyDown,
174
177
  href: props.disabled ? undefined : getHref(),
175
- target: openNewTab ? '_blank' : undefined,
178
+ target: function() {
179
+ if (openNewTab) return '_blank';
180
+ if (loadOnTop) return '_top';
181
+ return undefined;
182
+ }(),
176
183
  rel: openNewTab ? 'noopener noreferrer' : undefined,
177
184
  ref: ref,
178
185
  children: [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telefonica/mistica",
3
- "version": "10.28.1",
3
+ "version": "10.29.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",