@shoper/phoenix_design_system 1.15.11-25 → 1.15.11-26

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.
@@ -25,18 +25,22 @@ class BaseMessage extends phoenix_light_lit_element.PhoenixLightLitElement {
25
25
  if (!this._$baseMessageContent)
26
26
  return;
27
27
  [...this.children].forEach((child) => {
28
- var _a;
29
28
  if (base_message_constants.LIST_OF_MESSAGE_CHILDREN.includes(child.tagName.toLowerCase()))
30
29
  return;
31
- child.setAttribute('aria-describedby', (_a = this._$baseMessageContent) === null || _a === void 0 ? void 0 : _a.messageId);
30
+ if (this._$baseMessageContent)
31
+ child.setAttribute('aria-describedby', this._$baseMessageContent.messageId);
32
32
  });
33
33
  };
34
34
  this._setupEventListeners = () => {
35
- document.addEventListener('mouseover', this._toggleTooltipFromEvent);
36
- document.addEventListener('keydown', this._closeFromKeyboard);
35
+ var _a, _b;
36
+ this.addEventListener('mouseenter', this.open);
37
+ this.addEventListener('mouseleave', this._closeFromEvent);
38
+ this.addEventListener('keydown', this._closeFromKeyboard);
39
+ (_a = this._$baseMessageContent) === null || _a === void 0 ? void 0 : _a.addEventListener('mouseenter', this.open);
40
+ (_b = this._$baseMessageContent) === null || _b === void 0 ? void 0 : _b.addEventListener('mouseleave', this._closeFromEvent);
37
41
  if (!this.mouseonly) {
38
42
  this.addEventListener('focusin', this.open);
39
- this.addEventListener('focusout', this.close);
43
+ this.addEventListener('focusout', this._closeFromEvent);
40
44
  }
41
45
  };
42
46
  this._positionMessage = () => {
@@ -45,19 +49,6 @@ class BaseMessage extends phoenix_light_lit_element.PhoenixLightLitElement {
45
49
  (_a = this._$messageContent) === null || _a === void 0 ? void 0 : _a.setAttribute('direction', this._positionController.position(true));
46
50
  });
47
51
  };
48
- this._toggleTooltipFromEvent = (ev) => {
49
- var _a;
50
- if (!ev.target)
51
- return;
52
- const $target = ev.target;
53
- const isInsideMessageContent = $target.closest && $target.closest(`[id="${(_a = this._$baseMessageContent) === null || _a === void 0 ? void 0 : _a.id}"]`);
54
- const isInsideMessageContainer = !!this.contains($target);
55
- if (!isInsideMessageContent && !isInsideMessageContainer) {
56
- this.close();
57
- return;
58
- }
59
- this.open();
60
- };
61
52
  this.open = () => {
62
53
  this._tooltipOpenTime = Date.now();
63
54
  clearTimeout(this._closeTimeout);
@@ -68,13 +59,16 @@ class BaseMessage extends phoenix_light_lit_element.PhoenixLightLitElement {
68
59
  }, base_message_constants.MESSAGE_SHOW_DELAY_IN_MS);
69
60
  };
70
61
  this._closeFromKeyboard = (ev) => {
71
- if (ev.key !== 'Escape')
62
+ if (ev.key !== 'Escape' || !this.opened)
72
63
  return;
73
64
  ev.preventDefault();
65
+ this.close(true);
66
+ };
67
+ this._closeFromEvent = () => {
74
68
  this.close();
75
69
  };
76
- this.close = () => {
77
- this._shouldDelayClosing = Date.now() - this._tooltipOpenTime > base_message_constants.MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS;
70
+ this.close = (shouldCloseImmediately = false) => {
71
+ this._shouldDelayClosing = !shouldCloseImmediately && Date.now() - this._tooltipOpenTime > base_message_constants.MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS;
78
72
  clearTimeout(this._openTimeout);
79
73
  if (!this.opened)
80
74
  return;
@@ -95,7 +89,7 @@ class BaseMessage extends phoenix_light_lit_element.PhoenixLightLitElement {
95
89
  this._clickOutsideController = new click_outside_controller.ClickOutsideController({
96
90
  host: this,
97
91
  container: this,
98
- action: this.close
92
+ action: this._closeFromEvent
99
93
  });
100
94
  }
101
95
  connectedCallback(messageComponentName = '') {
@@ -113,9 +107,9 @@ class BaseMessage extends phoenix_light_lit_element.PhoenixLightLitElement {
113
107
  offset: this.offset
114
108
  });
115
109
  this.setAttribute('tabindex', this.tabindex);
116
- this._setupEventListeners();
117
110
  if (!this._$baseMessageContent)
118
111
  this._$baseMessageContent = [...this.children].find((child) => base_message_constants.LIST_OF_MESSAGE_CONTENT_ELEMENTS.includes(child.tagName.toLowerCase()));
112
+ this._setupEventListeners();
119
113
  }
120
114
  firstUpdated(props) {
121
115
  super.firstUpdated(props);
@@ -130,8 +124,10 @@ class BaseMessage extends phoenix_light_lit_element.PhoenixLightLitElement {
130
124
  document.body.appendChild($portalTarget);
131
125
  }
132
126
  disconnectedCallback() {
127
+ var _a, _b;
133
128
  super.disconnectedCallback();
134
- document.removeEventListener('mouseover', this._toggleTooltipFromEvent);
129
+ (_a = this._$baseMessageContent) === null || _a === void 0 ? void 0 : _a.removeEventListener('mouseenter', this.open);
130
+ (_b = this._$baseMessageContent) === null || _b === void 0 ? void 0 : _b.removeEventListener('mouseleave', this._closeFromEvent);
135
131
  }
136
132
  }
137
133
  tslib_es6.__decorate([
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,4CAAgD;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,4CAAgD;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -29,7 +29,7 @@ tslib_es6.__decorate([
29
29
  tslib_es6.__metadata("design:type", Object)
30
30
  ], BaseMessageContent.prototype, "portalTarget", void 0);
31
31
  tslib_es6.__decorate([
32
- decorators.property({ type: String }),
32
+ decorators.property({ type: String, attribute: 'message-id' }),
33
33
  tslib_es6.__metadata("design:type", Object)
34
34
  ], BaseMessageContent.prototype, "messageId", void 0);
35
35
 
@@ -25,9 +25,9 @@ export declare class BaseMessage extends PhoenixLightLitElement implements IBase
25
25
  private static _appendMessagePortal;
26
26
  private _setupEventListeners;
27
27
  protected _positionMessage: () => void;
28
- private _toggleTooltipFromEvent;
29
28
  open: () => void;
30
29
  private _closeFromKeyboard;
31
- close: () => void;
30
+ private _closeFromEvent;
31
+ close: (shouldCloseImmediately?: boolean) => void;
32
32
  disconnectedCallback(): void;
33
33
  }
@@ -21,18 +21,22 @@ class BaseMessage extends PhoenixLightLitElement {
21
21
  if (!this._$baseMessageContent)
22
22
  return;
23
23
  [...this.children].forEach((child) => {
24
- var _a;
25
24
  if (LIST_OF_MESSAGE_CHILDREN.includes(child.tagName.toLowerCase()))
26
25
  return;
27
- child.setAttribute('aria-describedby', (_a = this._$baseMessageContent) === null || _a === void 0 ? void 0 : _a.messageId);
26
+ if (this._$baseMessageContent)
27
+ child.setAttribute('aria-describedby', this._$baseMessageContent.messageId);
28
28
  });
29
29
  };
30
30
  this._setupEventListeners = () => {
31
- document.addEventListener('mouseover', this._toggleTooltipFromEvent);
32
- document.addEventListener('keydown', this._closeFromKeyboard);
31
+ var _a, _b;
32
+ this.addEventListener('mouseenter', this.open);
33
+ this.addEventListener('mouseleave', this._closeFromEvent);
34
+ this.addEventListener('keydown', this._closeFromKeyboard);
35
+ (_a = this._$baseMessageContent) === null || _a === void 0 ? void 0 : _a.addEventListener('mouseenter', this.open);
36
+ (_b = this._$baseMessageContent) === null || _b === void 0 ? void 0 : _b.addEventListener('mouseleave', this._closeFromEvent);
33
37
  if (!this.mouseonly) {
34
38
  this.addEventListener('focusin', this.open);
35
- this.addEventListener('focusout', this.close);
39
+ this.addEventListener('focusout', this._closeFromEvent);
36
40
  }
37
41
  };
38
42
  this._positionMessage = () => {
@@ -41,19 +45,6 @@ class BaseMessage extends PhoenixLightLitElement {
41
45
  (_a = this._$messageContent) === null || _a === void 0 ? void 0 : _a.setAttribute('direction', this._positionController.position(true));
42
46
  });
43
47
  };
44
- this._toggleTooltipFromEvent = (ev) => {
45
- var _a;
46
- if (!ev.target)
47
- return;
48
- const $target = ev.target;
49
- const isInsideMessageContent = $target.closest && $target.closest(`[id="${(_a = this._$baseMessageContent) === null || _a === void 0 ? void 0 : _a.id}"]`);
50
- const isInsideMessageContainer = !!this.contains($target);
51
- if (!isInsideMessageContent && !isInsideMessageContainer) {
52
- this.close();
53
- return;
54
- }
55
- this.open();
56
- };
57
48
  this.open = () => {
58
49
  this._tooltipOpenTime = Date.now();
59
50
  clearTimeout(this._closeTimeout);
@@ -64,13 +55,16 @@ class BaseMessage extends PhoenixLightLitElement {
64
55
  }, MESSAGE_SHOW_DELAY_IN_MS);
65
56
  };
66
57
  this._closeFromKeyboard = (ev) => {
67
- if (ev.key !== 'Escape')
58
+ if (ev.key !== 'Escape' || !this.opened)
68
59
  return;
69
60
  ev.preventDefault();
61
+ this.close(true);
62
+ };
63
+ this._closeFromEvent = () => {
70
64
  this.close();
71
65
  };
72
- this.close = () => {
73
- this._shouldDelayClosing = Date.now() - this._tooltipOpenTime > MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS;
66
+ this.close = (shouldCloseImmediately = false) => {
67
+ this._shouldDelayClosing = !shouldCloseImmediately && Date.now() - this._tooltipOpenTime > MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS;
74
68
  clearTimeout(this._openTimeout);
75
69
  if (!this.opened)
76
70
  return;
@@ -91,7 +85,7 @@ class BaseMessage extends PhoenixLightLitElement {
91
85
  this._clickOutsideController = new ClickOutsideController({
92
86
  host: this,
93
87
  container: this,
94
- action: this.close
88
+ action: this._closeFromEvent
95
89
  });
96
90
  }
97
91
  connectedCallback(messageComponentName = '') {
@@ -109,9 +103,9 @@ class BaseMessage extends PhoenixLightLitElement {
109
103
  offset: this.offset
110
104
  });
111
105
  this.setAttribute('tabindex', this.tabindex);
112
- this._setupEventListeners();
113
106
  if (!this._$baseMessageContent)
114
107
  this._$baseMessageContent = [...this.children].find((child) => LIST_OF_MESSAGE_CONTENT_ELEMENTS.includes(child.tagName.toLowerCase()));
108
+ this._setupEventListeners();
115
109
  }
116
110
  firstUpdated(props) {
117
111
  super.firstUpdated(props);
@@ -126,8 +120,10 @@ class BaseMessage extends PhoenixLightLitElement {
126
120
  document.body.appendChild($portalTarget);
127
121
  }
128
122
  disconnectedCallback() {
123
+ var _a, _b;
129
124
  super.disconnectedCallback();
130
- document.removeEventListener('mouseover', this._toggleTooltipFromEvent);
125
+ (_a = this._$baseMessageContent) === null || _a === void 0 ? void 0 : _a.removeEventListener('mouseenter', this.open);
126
+ (_b = this._$baseMessageContent) === null || _b === void 0 ? void 0 : _b.removeEventListener('mouseleave', this._closeFromEvent);
131
127
  }
132
128
  }
133
129
  __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -25,7 +25,7 @@ __decorate([
25
25
  __metadata("design:type", Object)
26
26
  ], BaseMessageContent.prototype, "portalTarget", void 0);
27
27
  __decorate([
28
- property({ type: String }),
28
+ property({ type: String, attribute: 'message-id' }),
29
29
  __metadata("design:type", Object)
30
30
  ], BaseMessageContent.prototype, "messageId", void 0);
31
31
 
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@shoper/phoenix_design_system",
3
3
  "packageManager": "yarn@3.2.0",
4
4
  "sideEffects": false,
5
- "version": "1.15.11-25",
5
+ "version": "1.15.11-26",
6
6
  "description": "phoenix design system",
7
7
  "author": "zefirek",
8
8
  "license": "MIT",