@shoper/phoenix_design_system 1.17.5-0 → 1.17.6
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/build/cjs/packages/phoenix/src/components/messages/base_message.js +1 -54
- package/build/cjs/packages/phoenix/src/components/messages/base_message.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/messages/base_message_constants.js +1 -6
- package/build/cjs/packages/phoenix/src/components/messages/base_message_constants.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/messages/hints/hint.js +10 -0
- package/build/cjs/packages/phoenix/src/components/messages/hints/hint.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/messages/tooltips/tooltip.js +10 -0
- package/build/cjs/packages/phoenix/src/components/messages/tooltips/tooltip.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/portal/portal_constants.js +0 -2
- package/build/cjs/packages/phoenix/src/components/portal/portal_constants.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/tabs/tab_panel.js +8 -0
- package/build/cjs/packages/phoenix/src/components/tabs/tab_panel.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/tabs/tabs.js +5 -10
- package/build/cjs/packages/phoenix/src/components/tabs/tabs.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/messages/base_message.d.ts +0 -10
- package/build/esm/packages/phoenix/src/components/messages/base_message.js +3 -56
- package/build/esm/packages/phoenix/src/components/messages/base_message.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/messages/base_message_constants.d.ts +0 -2
- package/build/esm/packages/phoenix/src/components/messages/base_message_constants.js +2 -5
- package/build/esm/packages/phoenix/src/components/messages/base_message_constants.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/messages/hints/hint.d.ts +2 -0
- package/build/esm/packages/phoenix/src/components/messages/hints/hint.js +10 -0
- package/build/esm/packages/phoenix/src/components/messages/hints/hint.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/messages/tooltips/tooltip.d.ts +2 -0
- package/build/esm/packages/phoenix/src/components/messages/tooltips/tooltip.js +10 -0
- package/build/esm/packages/phoenix/src/components/messages/tooltips/tooltip.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/portal/portal_constants.js +1 -2
- package/build/esm/packages/phoenix/src/components/portal/portal_constants.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/tabs/tab_panel.d.ts +1 -0
- package/build/esm/packages/phoenix/src/components/tabs/tab_panel.js +8 -0
- package/build/esm/packages/phoenix/src/components/tabs/tab_panel.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/tabs/tabs.js +5 -10
- package/build/esm/packages/phoenix/src/components/tabs/tabs.js.map +1 -1
- package/package.json +2 -2
|
@@ -3,16 +3,13 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var tslib_es6 = require('../../../../../external/tslib/tslib.es6.js');
|
|
6
|
-
var lit = require('lit');
|
|
7
6
|
var decorators = require('lit/decorators');
|
|
8
7
|
var utilities = require('@dreamcommerce/utilities');
|
|
9
8
|
var phoenix_light_lit_element = require('../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
|
|
10
|
-
var v4 = require('../../../../../external/uuid/dist/esm-browser/v4.js');
|
|
11
9
|
var portal_constants = require('../portal/portal_constants.js');
|
|
12
10
|
var click_outside_controller = require('../../controllers/click_outside_controller/click_outside_controller.js');
|
|
13
11
|
var relative_position_controller = require('../../controllers/relative_position_controller/relative_position_controller.js');
|
|
14
12
|
var base_message_constants = require('./base_message_constants.js');
|
|
15
|
-
var ref = require('lit/directives/ref');
|
|
16
13
|
|
|
17
14
|
class BaseMessage extends phoenix_light_lit_element.PhoenixLightLitElement {
|
|
18
15
|
constructor() {
|
|
@@ -23,24 +20,9 @@ class BaseMessage extends phoenix_light_lit_element.PhoenixLightLitElement {
|
|
|
23
20
|
this.offset = base_message_constants.DEFAULT_MESSAGE_OFFSET;
|
|
24
21
|
this.mouseonly = false;
|
|
25
22
|
this.tabindex = '-1';
|
|
26
|
-
this.useAsLabel = false;
|
|
27
|
-
this._messageId = v4['default']();
|
|
28
|
-
this._tooltipRef = ref.createRef();
|
|
29
|
-
this._handleChildrenAriaAttributes = () => {
|
|
30
|
-
[...this.children].forEach((child) => {
|
|
31
|
-
if (base_message_constants.LIST_OF_MESSAGE_CHILDREN.includes(child.tagName.toLowerCase()) || this._tooltipRef.value === child)
|
|
32
|
-
return;
|
|
33
|
-
const attributeName = this.useAsLabel ? 'aria-labelledby' : 'aria-describedby';
|
|
34
|
-
child.setAttribute(attributeName, `${child.getAttribute(attributeName) || ''} ${this._messageId}`);
|
|
35
|
-
});
|
|
36
|
-
};
|
|
37
23
|
this._setupEventListeners = () => {
|
|
38
|
-
var _a, _b;
|
|
39
24
|
this.addEventListener('mouseenter', this.open);
|
|
40
25
|
this.addEventListener('mouseleave', this.close);
|
|
41
|
-
this.addEventListener('keydown', this._closeFromKeyboard);
|
|
42
|
-
(_a = this._$baseMessageContent) === null || _a === void 0 ? void 0 : _a.addEventListener('mouseenter', this.open);
|
|
43
|
-
(_b = this._$baseMessageContent) === null || _b === void 0 ? void 0 : _b.addEventListener('mouseleave', this.close);
|
|
44
26
|
if (!this.mouseonly) {
|
|
45
27
|
this.addEventListener('focusin', this.open);
|
|
46
28
|
this.addEventListener('focusout', this.close);
|
|
@@ -61,13 +43,6 @@ class BaseMessage extends phoenix_light_lit_element.PhoenixLightLitElement {
|
|
|
61
43
|
this.opened = true;
|
|
62
44
|
}, base_message_constants.MESSAGE_SHOW_DELAY_IN_MS);
|
|
63
45
|
};
|
|
64
|
-
this._closeFromKeyboard = (ev) => {
|
|
65
|
-
if (ev.key !== 'Escape' || !this.opened)
|
|
66
|
-
return;
|
|
67
|
-
ev.preventDefault();
|
|
68
|
-
ev.stopPropagation();
|
|
69
|
-
this.close();
|
|
70
|
-
};
|
|
71
46
|
this.close = () => {
|
|
72
47
|
this._shouldDelayClosing = Date.now() - this._tooltipOpenTime > base_message_constants.MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS;
|
|
73
48
|
clearTimeout(this._openTimeout);
|
|
@@ -108,14 +83,8 @@ class BaseMessage extends phoenix_light_lit_element.PhoenixLightLitElement {
|
|
|
108
83
|
offset: this.offset
|
|
109
84
|
});
|
|
110
85
|
this.setAttribute('tabindex', this.tabindex);
|
|
111
|
-
if (!this._$baseMessageContent)
|
|
112
|
-
this._$baseMessageContent = [...this.children].find((child) => base_message_constants.MESSAGE_CONTENT_ELEMENTS.includes(child.tagName.toLowerCase()));
|
|
113
86
|
this._setupEventListeners();
|
|
114
87
|
}
|
|
115
|
-
firstUpdated(props) {
|
|
116
|
-
super.firstUpdated(props);
|
|
117
|
-
this._handleChildrenAriaAttributes();
|
|
118
|
-
}
|
|
119
88
|
static _appendMessagePortal() {
|
|
120
89
|
const $messagePortalTarget = document.querySelector(`[name="${base_message_constants.DEFAULT_MESSAGE_PORTAL_NAME}"]`);
|
|
121
90
|
if ($messagePortalTarget)
|
|
@@ -124,24 +93,6 @@ class BaseMessage extends phoenix_light_lit_element.PhoenixLightLitElement {
|
|
|
124
93
|
$portalTarget.setAttribute(portal_constants.PORTAL_TARGET_NAME_PROP, base_message_constants.DEFAULT_MESSAGE_PORTAL_NAME);
|
|
125
94
|
document.body.appendChild($portalTarget);
|
|
126
95
|
}
|
|
127
|
-
disconnectedCallback() {
|
|
128
|
-
var _a, _b;
|
|
129
|
-
super.disconnectedCallback();
|
|
130
|
-
(_a = this._$baseMessageContent) === null || _a === void 0 ? void 0 : _a.removeEventListener('mouseenter', this.open);
|
|
131
|
-
(_b = this._$baseMessageContent) === null || _b === void 0 ? void 0 : _b.removeEventListener('mouseleave', this.close);
|
|
132
|
-
}
|
|
133
|
-
render() {
|
|
134
|
-
var _a;
|
|
135
|
-
super.render();
|
|
136
|
-
return lit.html `
|
|
137
|
-
<span ${ref.ref(this._tooltipRef)} id="${this._messageId}" class="${base_message_constants.SCREEN_READER_ONLY_CLASS_NAME}" role="tooltip">
|
|
138
|
-
${utilities.DomUtils.stripHTMLTags(((_a = this._$baseMessageContent) === null || _a === void 0 ? void 0 : _a.innerHTML) || '')}
|
|
139
|
-
</span>
|
|
140
|
-
<h-portal ?disabled="${!this.opened}" @open="${this._positionMessage}" to="${this.portalTarget}" hidden>
|
|
141
|
-
${this.getSlot(base_message_constants.MESSAGE_CONTENT_SLOT_NAME)}
|
|
142
|
-
</h-portal>
|
|
143
|
-
`;
|
|
144
|
-
}
|
|
145
96
|
}
|
|
146
97
|
tslib_es6.__decorate([
|
|
147
98
|
decorators.property({ type: Boolean, reflect: true }),
|
|
@@ -166,11 +117,7 @@ tslib_es6.__decorate([
|
|
|
166
117
|
tslib_es6.__decorate([
|
|
167
118
|
decorators.property({ type: String }),
|
|
168
119
|
tslib_es6.__metadata("design:type", String)
|
|
169
|
-
], BaseMessage.prototype, "tabindex", void 0);
|
|
170
|
-
tslib_es6.__decorate([
|
|
171
|
-
decorators.property({ type: Boolean, attribute: 'use-as-label' }),
|
|
172
|
-
tslib_es6.__metadata("design:type", Boolean)
|
|
173
|
-
], BaseMessage.prototype, "useAsLabel", void 0);
|
|
120
|
+
], BaseMessage.prototype, "tabindex", void 0);
|
|
174
121
|
|
|
175
122
|
exports.BaseMessage = BaseMessage;
|
|
176
123
|
//# sourceMappingURL=base_message.js.map
|
|
@@ -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
|
|
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;"}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var portal_constants = require('../portal/portal_constants.js');
|
|
6
5
|
var hint_constants = require('./hints/hint_constants.js');
|
|
7
6
|
var tooltip_constants = require('./tooltips/tooltip_constants.js');
|
|
8
7
|
|
|
@@ -11,20 +10,16 @@ const MESSAGE_CONTENT_SLOT_NAME = 'message-content';
|
|
|
11
10
|
const MESSAGE_REMOVED_CLASS_NAME = `removed`;
|
|
12
11
|
const DEFAULT_MESSAGE_OFFSET = 10;
|
|
13
12
|
const MESSAGE_CONTENT_ELEMENTS = [tooltip_constants.TOOLTIP_CONTENT_ELEMENT_NAME, hint_constants.HINT_CONTENT_ELEMENT_NAME];
|
|
14
|
-
const LIST_OF_MESSAGE_CHILDREN = [...MESSAGE_CONTENT_ELEMENTS, portal_constants.PORTAL_COMPONENT_NAME];
|
|
15
13
|
const MESSAGE_SHOW_DELAY_IN_MS = 100;
|
|
16
14
|
const MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS = 500;
|
|
17
|
-
const MESSAGE_CLOSE_DELAY_IN_MS = 500;
|
|
18
|
-
const SCREEN_READER_ONLY_CLASS_NAME = 'sr-only';
|
|
15
|
+
const MESSAGE_CLOSE_DELAY_IN_MS = 500;
|
|
19
16
|
|
|
20
17
|
exports.DEFAULT_MESSAGE_OFFSET = DEFAULT_MESSAGE_OFFSET;
|
|
21
18
|
exports.DEFAULT_MESSAGE_PORTAL_NAME = DEFAULT_MESSAGE_PORTAL_NAME;
|
|
22
|
-
exports.LIST_OF_MESSAGE_CHILDREN = LIST_OF_MESSAGE_CHILDREN;
|
|
23
19
|
exports.MESSAGE_CLOSE_DELAY_IN_MS = MESSAGE_CLOSE_DELAY_IN_MS;
|
|
24
20
|
exports.MESSAGE_CONTENT_ELEMENTS = MESSAGE_CONTENT_ELEMENTS;
|
|
25
21
|
exports.MESSAGE_CONTENT_SLOT_NAME = MESSAGE_CONTENT_SLOT_NAME;
|
|
26
22
|
exports.MESSAGE_REMOVED_CLASS_NAME = MESSAGE_REMOVED_CLASS_NAME;
|
|
27
23
|
exports.MESSAGE_SHOW_DELAY_IN_MS = MESSAGE_SHOW_DELAY_IN_MS;
|
|
28
24
|
exports.MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS = MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS;
|
|
29
|
-
exports.SCREEN_READER_ONLY_CLASS_NAME = SCREEN_READER_ONLY_CLASS_NAME;
|
|
30
25
|
//# sourceMappingURL=base_message_constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -4,7 +4,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var tslib_es6 = require('../../../../../../external/tslib/tslib.es6.js');
|
|
6
6
|
var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
|
|
7
|
+
var litHtml = require('lit-html');
|
|
7
8
|
var hint_constants = require('./hint_constants.js');
|
|
9
|
+
var base_message_constants = require('../base_message_constants.js');
|
|
8
10
|
var base_message = require('../base_message.js');
|
|
9
11
|
|
|
10
12
|
exports.HHint = class HHint extends base_message.BaseMessage {
|
|
@@ -16,6 +18,14 @@ exports.HHint = class HHint extends base_message.BaseMessage {
|
|
|
16
18
|
super.connectedCallback(hint_constants.HINT_CLASS_NAME);
|
|
17
19
|
this.classList.add(hint_constants.HINT_CLASS_NAME);
|
|
18
20
|
}
|
|
21
|
+
render() {
|
|
22
|
+
super.render();
|
|
23
|
+
return litHtml.html `
|
|
24
|
+
<h-portal ?disabled="${!this.opened}" @open="${this._positionMessage}" to="${this.portalTarget}" hidden>
|
|
25
|
+
${this.getSlot(base_message_constants.MESSAGE_CONTENT_SLOT_NAME)}
|
|
26
|
+
</h-portal>
|
|
27
|
+
`;
|
|
28
|
+
}
|
|
19
29
|
};
|
|
20
30
|
exports.HHint = tslib_es6.__decorate([
|
|
21
31
|
phoenix_custom_element.phoenixCustomElement(hint_constants.HINT_ELEMENT_NAME),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;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,+CAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -4,7 +4,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var tslib_es6 = require('../../../../../../external/tslib/tslib.es6.js');
|
|
6
6
|
var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
|
|
7
|
+
var litHtml = require('lit-html');
|
|
7
8
|
var tooltip_constants = require('./tooltip_constants.js');
|
|
9
|
+
var base_message_constants = require('../base_message_constants.js');
|
|
8
10
|
var base_message = require('../base_message.js');
|
|
9
11
|
|
|
10
12
|
exports.HTooltip = class HTooltip extends base_message.BaseMessage {
|
|
@@ -12,6 +14,14 @@ exports.HTooltip = class HTooltip extends base_message.BaseMessage {
|
|
|
12
14
|
super.connectedCallback(tooltip_constants.TOOLTIP_CLASS_NAME);
|
|
13
15
|
this.classList.add(tooltip_constants.TOOLTIP_CLASS_NAME);
|
|
14
16
|
}
|
|
17
|
+
render() {
|
|
18
|
+
super.render();
|
|
19
|
+
return litHtml.html `
|
|
20
|
+
<h-portal ?disabled="${!this.opened}" @open="${this._positionMessage}" to="${this.portalTarget}" hidden>
|
|
21
|
+
${this.getSlot(base_message_constants.MESSAGE_CONTENT_SLOT_NAME)}
|
|
22
|
+
</h-portal>
|
|
23
|
+
`;
|
|
24
|
+
}
|
|
15
25
|
};
|
|
16
26
|
exports.HTooltip = tslib_es6.__decorate([
|
|
17
27
|
phoenix_custom_element.phoenixCustomElement(tooltip_constants.TOOLTIP_ELEMENT_NAME)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;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,+CAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -7,11 +7,9 @@ const PORTAL_EVENTS = {
|
|
|
7
7
|
close: 'close'
|
|
8
8
|
};
|
|
9
9
|
const PORTAL_TARGET_NAME_PROP = 'name';
|
|
10
|
-
const PORTAL_COMPONENT_NAME = 'h-portal';
|
|
11
10
|
const PORTAL_TARGET_COMPONENT_NAME = 'h-portal-target';
|
|
12
11
|
const PORTAL_TARGET_ATTRIBUTE_NAME = 'portal-target';
|
|
13
12
|
|
|
14
|
-
exports.PORTAL_COMPONENT_NAME = PORTAL_COMPONENT_NAME;
|
|
15
13
|
exports.PORTAL_EVENTS = PORTAL_EVENTS;
|
|
16
14
|
exports.PORTAL_TARGET_ATTRIBUTE_NAME = PORTAL_TARGET_ATTRIBUTE_NAME;
|
|
17
15
|
exports.PORTAL_TARGET_COMPONENT_NAME = PORTAL_TARGET_COMPONENT_NAME;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -12,6 +12,14 @@ exports.HTabPanel = class HTabPanel extends phoenix_light_lit_element.PhoenixLig
|
|
|
12
12
|
constructor() {
|
|
13
13
|
super();
|
|
14
14
|
this._visibilityController = new visibility_controller.VisibilityController(this);
|
|
15
|
+
this.setAttribute('role', 'tabpanel');
|
|
16
|
+
}
|
|
17
|
+
connectedCallback() {
|
|
18
|
+
super.connectedCallback();
|
|
19
|
+
const $tab = document.querySelector(`[panel-name="${this.name}"]`);
|
|
20
|
+
if ($tab && $tab.id) {
|
|
21
|
+
this.setAttribute('aria-labelledby', $tab.id);
|
|
22
|
+
}
|
|
15
23
|
}
|
|
16
24
|
show() {
|
|
17
25
|
this._visibilityController.show();
|
|
@@ -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;"}
|
|
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;"}
|
|
@@ -16,13 +16,12 @@ exports.HTabs = class HTabs extends phoenix_light_lit_element.PhoenixLightLitEle
|
|
|
16
16
|
constructor() {
|
|
17
17
|
super(...arguments);
|
|
18
18
|
this.watchChildrenRendered = true;
|
|
19
|
-
this._handleArrowNavigation = (
|
|
19
|
+
this._handleArrowNavigation = (ev) => {
|
|
20
|
+
ev.preventDefault();
|
|
20
21
|
const currentTabIndex = this._getFocusedTabIndex();
|
|
21
22
|
if (currentTabIndex === undefined)
|
|
22
23
|
return;
|
|
23
|
-
const newTabIndex = key === 'ArrowLeft' ? this._getPrevTabIndex(currentTabIndex) : this._getNextTabIndex(currentTabIndex);
|
|
24
|
-
if (newTabIndex === undefined)
|
|
25
|
-
return;
|
|
24
|
+
const newTabIndex = ev.key === 'ArrowLeft' ? this._getPrevTabIndex(currentTabIndex) : this._getNextTabIndex(currentTabIndex);
|
|
26
25
|
utilities.UiDomUtils.makeUnnavigable(this._$tabs[currentTabIndex]);
|
|
27
26
|
utilities.UiDomUtils.makeNavigable(this._$tabs[newTabIndex]);
|
|
28
27
|
this._$tabs[newTabIndex].focus();
|
|
@@ -59,14 +58,10 @@ exports.HTabs = class HTabs extends phoenix_light_lit_element.PhoenixLightLitEle
|
|
|
59
58
|
return this._$tabs.findIndex(($tab) => $tab === focusedElement);
|
|
60
59
|
}
|
|
61
60
|
_getNextTabIndex(currentTabIndex) {
|
|
62
|
-
|
|
63
|
-
return;
|
|
64
|
-
return currentTabIndex + 1;
|
|
61
|
+
return (currentTabIndex + 1) % this._$tabs.length;
|
|
65
62
|
}
|
|
66
63
|
_getPrevTabIndex(currentTabIndex) {
|
|
67
|
-
|
|
68
|
-
return;
|
|
69
|
-
return currentTabIndex - 1;
|
|
64
|
+
return (currentTabIndex - 1 + this._$tabs.length) % this._$tabs.length;
|
|
70
65
|
}
|
|
71
66
|
_setupEvents() {
|
|
72
67
|
document.addEventListener(tab_constants.TAB_EVENT_NAMES.selected, this._handleTabSelected);
|
|
@@ -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;
|
|
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;"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { IBaseMessage } from './base_message_types';
|
|
2
2
|
import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element/phoenix_light_lit_element";
|
|
3
3
|
import type { TDirection } from '@dreamcommerce/utilities';
|
|
4
|
-
import { PropertyValues, TemplateResult } from 'lit';
|
|
5
4
|
export declare class BaseMessage extends PhoenixLightLitElement implements IBaseMessage {
|
|
6
5
|
opened: boolean;
|
|
7
6
|
portalTarget: string;
|
|
@@ -9,8 +8,6 @@ export declare class BaseMessage extends PhoenixLightLitElement implements IBase
|
|
|
9
8
|
offset: number;
|
|
10
9
|
mouseonly: boolean;
|
|
11
10
|
tabindex: string;
|
|
12
|
-
useAsLabel: boolean;
|
|
13
|
-
private _messageId;
|
|
14
11
|
private _positionController;
|
|
15
12
|
private _clickOutsideController;
|
|
16
13
|
private _$messageContent;
|
|
@@ -19,18 +16,11 @@ export declare class BaseMessage extends PhoenixLightLitElement implements IBase
|
|
|
19
16
|
private _shouldDelayClosing;
|
|
20
17
|
private _closeTimeout;
|
|
21
18
|
private _messageComponentName;
|
|
22
|
-
private _$baseMessageContent?;
|
|
23
|
-
private _tooltipRef;
|
|
24
19
|
constructor();
|
|
25
20
|
connectedCallback(messageComponentName?: string): void;
|
|
26
|
-
firstUpdated(props: PropertyValues): void;
|
|
27
|
-
private _handleChildrenAriaAttributes;
|
|
28
21
|
private static _appendMessagePortal;
|
|
29
22
|
private _setupEventListeners;
|
|
30
23
|
protected _positionMessage: () => void;
|
|
31
24
|
open: () => void;
|
|
32
|
-
private _closeFromKeyboard;
|
|
33
25
|
close: () => void;
|
|
34
|
-
disconnectedCallback(): void;
|
|
35
|
-
protected render(): TemplateResult;
|
|
36
26
|
}
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.js';
|
|
2
|
-
import { html } from 'lit';
|
|
3
2
|
import { property } from 'lit/decorators';
|
|
4
|
-
import { DIRECTIONS
|
|
3
|
+
import { DIRECTIONS } from '@dreamcommerce/utilities';
|
|
5
4
|
import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
|
|
6
|
-
import v4 from '../../../../../external/uuid/dist/esm-browser/v4.js';
|
|
7
5
|
import { PORTAL_TARGET_COMPONENT_NAME, PORTAL_TARGET_NAME_PROP, PORTAL_TARGET_ATTRIBUTE_NAME } from '../portal/portal_constants.js';
|
|
8
6
|
import { ClickOutsideController } from '../../controllers/click_outside_controller/click_outside_controller.js';
|
|
9
7
|
import { RelativePositionController } from '../../controllers/relative_position_controller/relative_position_controller.js';
|
|
10
|
-
import { DEFAULT_MESSAGE_PORTAL_NAME, DEFAULT_MESSAGE_OFFSET,
|
|
11
|
-
import { createRef, ref } from 'lit/directives/ref';
|
|
8
|
+
import { DEFAULT_MESSAGE_PORTAL_NAME, DEFAULT_MESSAGE_OFFSET, MESSAGE_SHOW_DELAY_IN_MS, MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS, MESSAGE_REMOVED_CLASS_NAME, MESSAGE_CLOSE_DELAY_IN_MS, MESSAGE_CONTENT_ELEMENTS } from './base_message_constants.js';
|
|
12
9
|
|
|
13
10
|
class BaseMessage extends PhoenixLightLitElement {
|
|
14
11
|
constructor() {
|
|
@@ -19,24 +16,9 @@ class BaseMessage extends PhoenixLightLitElement {
|
|
|
19
16
|
this.offset = DEFAULT_MESSAGE_OFFSET;
|
|
20
17
|
this.mouseonly = false;
|
|
21
18
|
this.tabindex = '-1';
|
|
22
|
-
this.useAsLabel = false;
|
|
23
|
-
this._messageId = v4();
|
|
24
|
-
this._tooltipRef = createRef();
|
|
25
|
-
this._handleChildrenAriaAttributes = () => {
|
|
26
|
-
[...this.children].forEach((child) => {
|
|
27
|
-
if (LIST_OF_MESSAGE_CHILDREN.includes(child.tagName.toLowerCase()) || this._tooltipRef.value === child)
|
|
28
|
-
return;
|
|
29
|
-
const attributeName = this.useAsLabel ? 'aria-labelledby' : 'aria-describedby';
|
|
30
|
-
child.setAttribute(attributeName, `${child.getAttribute(attributeName) || ''} ${this._messageId}`);
|
|
31
|
-
});
|
|
32
|
-
};
|
|
33
19
|
this._setupEventListeners = () => {
|
|
34
|
-
var _a, _b;
|
|
35
20
|
this.addEventListener('mouseenter', this.open);
|
|
36
21
|
this.addEventListener('mouseleave', this.close);
|
|
37
|
-
this.addEventListener('keydown', this._closeFromKeyboard);
|
|
38
|
-
(_a = this._$baseMessageContent) === null || _a === void 0 ? void 0 : _a.addEventListener('mouseenter', this.open);
|
|
39
|
-
(_b = this._$baseMessageContent) === null || _b === void 0 ? void 0 : _b.addEventListener('mouseleave', this.close);
|
|
40
22
|
if (!this.mouseonly) {
|
|
41
23
|
this.addEventListener('focusin', this.open);
|
|
42
24
|
this.addEventListener('focusout', this.close);
|
|
@@ -57,13 +39,6 @@ class BaseMessage extends PhoenixLightLitElement {
|
|
|
57
39
|
this.opened = true;
|
|
58
40
|
}, MESSAGE_SHOW_DELAY_IN_MS);
|
|
59
41
|
};
|
|
60
|
-
this._closeFromKeyboard = (ev) => {
|
|
61
|
-
if (ev.key !== 'Escape' || !this.opened)
|
|
62
|
-
return;
|
|
63
|
-
ev.preventDefault();
|
|
64
|
-
ev.stopPropagation();
|
|
65
|
-
this.close();
|
|
66
|
-
};
|
|
67
42
|
this.close = () => {
|
|
68
43
|
this._shouldDelayClosing = Date.now() - this._tooltipOpenTime > MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS;
|
|
69
44
|
clearTimeout(this._openTimeout);
|
|
@@ -104,14 +79,8 @@ class BaseMessage extends PhoenixLightLitElement {
|
|
|
104
79
|
offset: this.offset
|
|
105
80
|
});
|
|
106
81
|
this.setAttribute('tabindex', this.tabindex);
|
|
107
|
-
if (!this._$baseMessageContent)
|
|
108
|
-
this._$baseMessageContent = [...this.children].find((child) => MESSAGE_CONTENT_ELEMENTS.includes(child.tagName.toLowerCase()));
|
|
109
82
|
this._setupEventListeners();
|
|
110
83
|
}
|
|
111
|
-
firstUpdated(props) {
|
|
112
|
-
super.firstUpdated(props);
|
|
113
|
-
this._handleChildrenAriaAttributes();
|
|
114
|
-
}
|
|
115
84
|
static _appendMessagePortal() {
|
|
116
85
|
const $messagePortalTarget = document.querySelector(`[name="${DEFAULT_MESSAGE_PORTAL_NAME}"]`);
|
|
117
86
|
if ($messagePortalTarget)
|
|
@@ -120,24 +89,6 @@ class BaseMessage extends PhoenixLightLitElement {
|
|
|
120
89
|
$portalTarget.setAttribute(PORTAL_TARGET_NAME_PROP, DEFAULT_MESSAGE_PORTAL_NAME);
|
|
121
90
|
document.body.appendChild($portalTarget);
|
|
122
91
|
}
|
|
123
|
-
disconnectedCallback() {
|
|
124
|
-
var _a, _b;
|
|
125
|
-
super.disconnectedCallback();
|
|
126
|
-
(_a = this._$baseMessageContent) === null || _a === void 0 ? void 0 : _a.removeEventListener('mouseenter', this.open);
|
|
127
|
-
(_b = this._$baseMessageContent) === null || _b === void 0 ? void 0 : _b.removeEventListener('mouseleave', this.close);
|
|
128
|
-
}
|
|
129
|
-
render() {
|
|
130
|
-
var _a;
|
|
131
|
-
super.render();
|
|
132
|
-
return html `
|
|
133
|
-
<span ${ref(this._tooltipRef)} id="${this._messageId}" class="${SCREEN_READER_ONLY_CLASS_NAME}" role="tooltip">
|
|
134
|
-
${DomUtils.stripHTMLTags(((_a = this._$baseMessageContent) === null || _a === void 0 ? void 0 : _a.innerHTML) || '')}
|
|
135
|
-
</span>
|
|
136
|
-
<h-portal ?disabled="${!this.opened}" @open="${this._positionMessage}" to="${this.portalTarget}" hidden>
|
|
137
|
-
${this.getSlot(MESSAGE_CONTENT_SLOT_NAME)}
|
|
138
|
-
</h-portal>
|
|
139
|
-
`;
|
|
140
|
-
}
|
|
141
92
|
}
|
|
142
93
|
__decorate([
|
|
143
94
|
property({ type: Boolean, reflect: true }),
|
|
@@ -162,11 +113,7 @@ __decorate([
|
|
|
162
113
|
__decorate([
|
|
163
114
|
property({ type: String }),
|
|
164
115
|
__metadata("design:type", String)
|
|
165
|
-
], BaseMessage.prototype, "tabindex", void 0);
|
|
166
|
-
__decorate([
|
|
167
|
-
property({ type: Boolean, attribute: 'use-as-label' }),
|
|
168
|
-
__metadata("design:type", Boolean)
|
|
169
|
-
], BaseMessage.prototype, "useAsLabel", void 0);
|
|
116
|
+
], BaseMessage.prototype, "tabindex", void 0);
|
|
170
117
|
|
|
171
118
|
export { BaseMessage };
|
|
172
119
|
//# sourceMappingURL=base_message.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;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;"}
|
|
@@ -4,8 +4,6 @@ export declare const MESSAGE_REMOVED_CLASS_NAME = "removed";
|
|
|
4
4
|
export declare const DEFAULT_MESSAGE_OFFSET = 10;
|
|
5
5
|
export declare const MESSAGE_ELEMENTS: string[];
|
|
6
6
|
export declare const MESSAGE_CONTENT_ELEMENTS: string[];
|
|
7
|
-
export declare const LIST_OF_MESSAGE_CHILDREN: string[];
|
|
8
7
|
export declare const MESSAGE_SHOW_DELAY_IN_MS = 100;
|
|
9
8
|
export declare const MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS = 500;
|
|
10
9
|
export declare const MESSAGE_CLOSE_DELAY_IN_MS = 500;
|
|
11
|
-
export declare const SCREEN_READER_ONLY_CLASS_NAME = "sr-only";
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { PORTAL_COMPONENT_NAME } from '../portal/portal_constants.js';
|
|
2
1
|
import { HINT_CONTENT_ELEMENT_NAME } from './hints/hint_constants.js';
|
|
3
2
|
import { TOOLTIP_CONTENT_ELEMENT_NAME } from './tooltips/tooltip_constants.js';
|
|
4
3
|
|
|
@@ -7,11 +6,9 @@ const MESSAGE_CONTENT_SLOT_NAME = 'message-content';
|
|
|
7
6
|
const MESSAGE_REMOVED_CLASS_NAME = `removed`;
|
|
8
7
|
const DEFAULT_MESSAGE_OFFSET = 10;
|
|
9
8
|
const MESSAGE_CONTENT_ELEMENTS = [TOOLTIP_CONTENT_ELEMENT_NAME, HINT_CONTENT_ELEMENT_NAME];
|
|
10
|
-
const LIST_OF_MESSAGE_CHILDREN = [...MESSAGE_CONTENT_ELEMENTS, PORTAL_COMPONENT_NAME];
|
|
11
9
|
const MESSAGE_SHOW_DELAY_IN_MS = 100;
|
|
12
10
|
const MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS = 500;
|
|
13
|
-
const MESSAGE_CLOSE_DELAY_IN_MS = 500;
|
|
14
|
-
const SCREEN_READER_ONLY_CLASS_NAME = 'sr-only';
|
|
11
|
+
const MESSAGE_CLOSE_DELAY_IN_MS = 500;
|
|
15
12
|
|
|
16
|
-
export { DEFAULT_MESSAGE_OFFSET, DEFAULT_MESSAGE_PORTAL_NAME,
|
|
13
|
+
export { DEFAULT_MESSAGE_OFFSET, DEFAULT_MESSAGE_PORTAL_NAME, MESSAGE_CLOSE_DELAY_IN_MS, MESSAGE_CONTENT_ELEMENTS, MESSAGE_CONTENT_SLOT_NAME, MESSAGE_REMOVED_CLASS_NAME, MESSAGE_SHOW_DELAY_IN_MS, MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS };
|
|
17
14
|
//# sourceMappingURL=base_message_constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { __decorate, __metadata } from '../../../../../../external/tslib/tslib.es6.js';
|
|
2
2
|
import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
|
|
3
|
+
import { html } from 'lit-html';
|
|
3
4
|
import { HINT_DEFAULT_OFFSET, HINT_CLASS_NAME, HINT_ELEMENT_NAME } from './hint_constants.js';
|
|
5
|
+
import { MESSAGE_CONTENT_SLOT_NAME } from '../base_message_constants.js';
|
|
4
6
|
import { BaseMessage } from '../base_message.js';
|
|
5
7
|
|
|
6
8
|
let HHint = class HHint extends BaseMessage {
|
|
@@ -12,6 +14,14 @@ let HHint = class HHint extends BaseMessage {
|
|
|
12
14
|
super.connectedCallback(HINT_CLASS_NAME);
|
|
13
15
|
this.classList.add(HINT_CLASS_NAME);
|
|
14
16
|
}
|
|
17
|
+
render() {
|
|
18
|
+
super.render();
|
|
19
|
+
return html `
|
|
20
|
+
<h-portal ?disabled="${!this.opened}" @open="${this._positionMessage}" to="${this.portalTarget}" hidden>
|
|
21
|
+
${this.getSlot(MESSAGE_CONTENT_SLOT_NAME)}
|
|
22
|
+
</h-portal>
|
|
23
|
+
`;
|
|
24
|
+
}
|
|
15
25
|
};
|
|
16
26
|
HHint = __decorate([
|
|
17
27
|
phoenixCustomElement(HINT_ELEMENT_NAME),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;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,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA;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,6 +1,8 @@
|
|
|
1
1
|
import { __decorate } from '../../../../../../external/tslib/tslib.es6.js';
|
|
2
2
|
import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
|
|
3
|
+
import { html } from 'lit-html';
|
|
3
4
|
import { TOOLTIP_CLASS_NAME, TOOLTIP_ELEMENT_NAME } from './tooltip_constants.js';
|
|
5
|
+
import { MESSAGE_CONTENT_SLOT_NAME } from '../base_message_constants.js';
|
|
4
6
|
import { BaseMessage } from '../base_message.js';
|
|
5
7
|
|
|
6
8
|
let HTooltip = class HTooltip extends BaseMessage {
|
|
@@ -8,6 +10,14 @@ let HTooltip = class HTooltip extends BaseMessage {
|
|
|
8
10
|
super.connectedCallback(TOOLTIP_CLASS_NAME);
|
|
9
11
|
this.classList.add(TOOLTIP_CLASS_NAME);
|
|
10
12
|
}
|
|
13
|
+
render() {
|
|
14
|
+
super.render();
|
|
15
|
+
return html `
|
|
16
|
+
<h-portal ?disabled="${!this.opened}" @open="${this._positionMessage}" to="${this.portalTarget}" hidden>
|
|
17
|
+
${this.getSlot(MESSAGE_CONTENT_SLOT_NAME)}
|
|
18
|
+
</h-portal>
|
|
19
|
+
`;
|
|
20
|
+
}
|
|
11
21
|
};
|
|
12
22
|
HTooltip = __decorate([
|
|
13
23
|
phoenixCustomElement(TOOLTIP_ELEMENT_NAME)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,2BAA2B,+CAAmD;AAC9E;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,2BAA2B,+CAAmD;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -3,9 +3,8 @@ const PORTAL_EVENTS = {
|
|
|
3
3
|
close: 'close'
|
|
4
4
|
};
|
|
5
5
|
const PORTAL_TARGET_NAME_PROP = 'name';
|
|
6
|
-
const PORTAL_COMPONENT_NAME = 'h-portal';
|
|
7
6
|
const PORTAL_TARGET_COMPONENT_NAME = 'h-portal-target';
|
|
8
7
|
const PORTAL_TARGET_ATTRIBUTE_NAME = 'portal-target';
|
|
9
8
|
|
|
10
|
-
export {
|
|
9
|
+
export { PORTAL_EVENTS, PORTAL_TARGET_ATTRIBUTE_NAME, PORTAL_TARGET_COMPONENT_NAME, PORTAL_TARGET_NAME_PROP };
|
|
11
10
|
//# sourceMappingURL=portal_constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -8,6 +8,14 @@ let HTabPanel = class HTabPanel extends PhoenixLightLitElement {
|
|
|
8
8
|
constructor() {
|
|
9
9
|
super();
|
|
10
10
|
this._visibilityController = new VisibilityController(this);
|
|
11
|
+
this.setAttribute('role', 'tabpanel');
|
|
12
|
+
}
|
|
13
|
+
connectedCallback() {
|
|
14
|
+
super.connectedCallback();
|
|
15
|
+
const $tab = document.querySelector(`[panel-name="${this.name}"]`);
|
|
16
|
+
if ($tab && $tab.id) {
|
|
17
|
+
this.setAttribute('aria-labelledby', $tab.id);
|
|
18
|
+
}
|
|
11
19
|
}
|
|
12
20
|
show() {
|
|
13
21
|
this._visibilityController.show();
|
|
@@ -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;"}
|
|
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;"}
|
|
@@ -12,13 +12,12 @@ let HTabs = class HTabs extends PhoenixLightLitElement {
|
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments);
|
|
14
14
|
this.watchChildrenRendered = true;
|
|
15
|
-
this._handleArrowNavigation = (
|
|
15
|
+
this._handleArrowNavigation = (ev) => {
|
|
16
|
+
ev.preventDefault();
|
|
16
17
|
const currentTabIndex = this._getFocusedTabIndex();
|
|
17
18
|
if (currentTabIndex === undefined)
|
|
18
19
|
return;
|
|
19
|
-
const newTabIndex = key === 'ArrowLeft' ? this._getPrevTabIndex(currentTabIndex) : this._getNextTabIndex(currentTabIndex);
|
|
20
|
-
if (newTabIndex === undefined)
|
|
21
|
-
return;
|
|
20
|
+
const newTabIndex = ev.key === 'ArrowLeft' ? this._getPrevTabIndex(currentTabIndex) : this._getNextTabIndex(currentTabIndex);
|
|
22
21
|
UiDomUtils.makeUnnavigable(this._$tabs[currentTabIndex]);
|
|
23
22
|
UiDomUtils.makeNavigable(this._$tabs[newTabIndex]);
|
|
24
23
|
this._$tabs[newTabIndex].focus();
|
|
@@ -55,14 +54,10 @@ let HTabs = class HTabs extends PhoenixLightLitElement {
|
|
|
55
54
|
return this._$tabs.findIndex(($tab) => $tab === focusedElement);
|
|
56
55
|
}
|
|
57
56
|
_getNextTabIndex(currentTabIndex) {
|
|
58
|
-
|
|
59
|
-
return;
|
|
60
|
-
return currentTabIndex + 1;
|
|
57
|
+
return (currentTabIndex + 1) % this._$tabs.length;
|
|
61
58
|
}
|
|
62
59
|
_getPrevTabIndex(currentTabIndex) {
|
|
63
|
-
|
|
64
|
-
return;
|
|
65
|
-
return currentTabIndex - 1;
|
|
60
|
+
return (currentTabIndex - 1 + this._$tabs.length) % this._$tabs.length;
|
|
66
61
|
}
|
|
67
62
|
_setupEvents() {
|
|
68
63
|
document.addEventListener(TAB_EVENT_NAMES.selected, this._handleTabSelected);
|
|
@@ -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;
|
|
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;"}
|
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.17.
|
|
5
|
+
"version": "1.17.6",
|
|
6
6
|
"description": "phoenix design system",
|
|
7
7
|
"author": "zefirek",
|
|
8
8
|
"license": "MIT",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"@splidejs/splide-extension-auto-scroll": "^0.5.3"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"@dreamcommerce/utilities": "^1.20.1-
|
|
34
|
+
"@dreamcommerce/utilities": "^1.20.1-0",
|
|
35
35
|
"@shoper/jest_config": "^0.0.0",
|
|
36
36
|
"@shoper/tsconfig": "^0.0.0",
|
|
37
37
|
"@splidejs/splide": "4.0.7",
|