@shoper/phoenix_design_system 0.12.0 → 0.13.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/build/cjs/packages/phoenix/src/components/accordion/accordion_content.js +1 -1
- package/build/cjs/packages/phoenix/src/components/accordion/accordion_group.js +6 -4
- package/build/cjs/packages/phoenix/src/components/accordion/accordion_group.js.map +1 -1
- package/build/cjs/packages/phoenix/src/controllers/transition_controller/transition_controller.js +25 -16
- package/build/cjs/packages/phoenix/src/controllers/transition_controller/transition_controller.js.map +1 -1
- package/build/cjs/packages/phoenix/src/core/context/context_constants.js +10 -0
- package/build/cjs/packages/phoenix/src/core/context/context_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/core/context/context_consumer_controller.js +32 -28
- package/build/cjs/packages/phoenix/src/core/context/context_consumer_controller.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/accordion/accordion_content.js +1 -1
- package/build/esm/packages/phoenix/src/components/accordion/accordion_group.js +6 -4
- package/build/esm/packages/phoenix/src/components/accordion/accordion_group.js.map +1 -1
- package/build/esm/packages/phoenix/src/controllers/transition_controller/transition_controller.d.ts +2 -2
- package/build/esm/packages/phoenix/src/controllers/transition_controller/transition_controller.js +25 -16
- package/build/esm/packages/phoenix/src/controllers/transition_controller/transition_controller.js.map +1 -1
- package/build/esm/packages/phoenix/src/core/context/context_constants.d.ts +2 -0
- package/build/esm/packages/phoenix/src/core/context/context_constants.js +5 -0
- package/build/esm/packages/phoenix/src/core/context/context_constants.js.map +1 -0
- package/build/esm/packages/phoenix/src/core/context/context_consumer_controller.d.ts +4 -2
- package/build/esm/packages/phoenix/src/core/context/context_consumer_controller.js +32 -28
- package/build/esm/packages/phoenix/src/core/context/context_consumer_controller.js.map +1 -1
- package/build/esm/packages/phoenix/src/core/context/context_controller_types.d.ts +4 -0
- package/package.json +1 -1
|
@@ -31,7 +31,7 @@ exports.HAccordionContent = class HAccordionContent extends phoenix_light_lit_el
|
|
|
31
31
|
this._subscribeObserver();
|
|
32
32
|
}
|
|
33
33
|
_setStylingOptions() {
|
|
34
|
-
this.style.display
|
|
34
|
+
this.style.setProperty('display', 'block', 'important');
|
|
35
35
|
this._originalHeight = `${this.getBoundingClientRect().height}px`;
|
|
36
36
|
this.style.display = '';
|
|
37
37
|
this.style.height = this._originalHeight;
|
|
@@ -82,10 +82,12 @@ exports.HAccordionGroup = class HAccordionGroup extends phoenix_light_lit_elemen
|
|
|
82
82
|
}
|
|
83
83
|
}
|
|
84
84
|
_closeOtherAccordionGroups() {
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
85
|
+
if (!this._isDisabled) {
|
|
86
|
+
const $accordion = this.closest('h-accordion');
|
|
87
|
+
const $accordionGroups = [...$accordion.querySelectorAll('h-accordion-group')];
|
|
88
|
+
const $otherAccordionGroupsWithinAccordion = $accordionGroups.filter(($accordionGroup) => $accordionGroup !== this);
|
|
89
|
+
$otherAccordionGroupsWithinAccordion.forEach(($accordionGroup) => $accordionGroup.hide());
|
|
90
|
+
}
|
|
89
91
|
}
|
|
90
92
|
notify() {
|
|
91
93
|
this._accordionGroupPropsSubject.notify(this._getProps());
|
|
@@ -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;"}
|
|
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;"}
|
package/build/cjs/packages/phoenix/src/controllers/transition_controller/transition_controller.js
CHANGED
|
@@ -14,24 +14,33 @@ class TransitionController {
|
|
|
14
14
|
this._transitionDuration = parseFloat(getComputedStyle(this.host).transitionDuration) * 1000;
|
|
15
15
|
}
|
|
16
16
|
hostDisconnected() { }
|
|
17
|
-
show(callback) {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
callback
|
|
17
|
+
async show(callback) {
|
|
18
|
+
return new Promise((resolve) => {
|
|
19
|
+
this.host.hidden = false;
|
|
20
|
+
this.host.classList.add(`${this._transitionName}-${transition_controller_constants.TRANSITION_CSS_CLASSES.transitionEnd}`);
|
|
21
|
+
requestAnimationFrame(() => {
|
|
22
|
+
this.host.classList.remove(`${this._transitionName}-${transition_controller_constants.TRANSITION_CSS_CLASSES.transitionStart}`);
|
|
23
|
+
if (typeof callback === 'function')
|
|
24
|
+
callback();
|
|
25
|
+
setTimeout(() => {
|
|
26
|
+
this.host.hidden = false;
|
|
27
|
+
resolve();
|
|
28
|
+
}, this._transitionDuration);
|
|
29
|
+
});
|
|
24
30
|
});
|
|
25
31
|
}
|
|
26
|
-
hide(callback) {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
callback
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
async hide(callback) {
|
|
33
|
+
return new Promise((resolve) => {
|
|
34
|
+
requestAnimationFrame(() => {
|
|
35
|
+
if (typeof callback === 'function')
|
|
36
|
+
callback();
|
|
37
|
+
this.host.classList.add(`${this._transitionName}-${transition_controller_constants.TRANSITION_CSS_CLASSES.transitionStart}`);
|
|
38
|
+
this.host.classList.remove(`${this._transitionName}-${transition_controller_constants.TRANSITION_CSS_CLASSES.transitionEnd}`);
|
|
39
|
+
setTimeout(() => {
|
|
40
|
+
this.host.hidden = true;
|
|
41
|
+
resolve();
|
|
42
|
+
}, this._transitionDuration);
|
|
43
|
+
});
|
|
35
44
|
});
|
|
36
45
|
}
|
|
37
46
|
}
|
|
@@ -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;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const CONTEXT_ASYNC_CONSUMER_DEFAULT_INTERVAL_RATE = 50;
|
|
6
|
+
const CONTEXT_ASYNC_CONSUMER_DFAULT_MAX_WAITING_TIME = 2000;
|
|
7
|
+
|
|
8
|
+
exports.CONTEXT_ASYNC_CONSUMER_DEFAULT_INTERVAL_RATE = CONTEXT_ASYNC_CONSUMER_DEFAULT_INTERVAL_RATE;
|
|
9
|
+
exports.CONTEXT_ASYNC_CONSUMER_DFAULT_MAX_WAITING_TIME = CONTEXT_ASYNC_CONSUMER_DFAULT_MAX_WAITING_TIME;
|
|
10
|
+
//# sourceMappingURL=context_constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -5,25 +5,39 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
var tslib_es6 = require('../../../../../external/tslib/tslib.es6.js');
|
|
6
6
|
require('lit');
|
|
7
7
|
var context_consumer_messages_names = require('./context_consumer_messages_names.js');
|
|
8
|
+
var context_constants = require('./context_constants.js');
|
|
8
9
|
|
|
9
|
-
var _ContextConsumerController_host;
|
|
10
|
+
var _ContextConsumerController_host, _ContextConsumerController_asyncConsumerSentinelId, _ContextConsumerController_asyncConsumerIntervalId;
|
|
10
11
|
class ContextConsumerController {
|
|
11
12
|
constructor(host) {
|
|
12
13
|
_ContextConsumerController_host.set(this, void 0);
|
|
14
|
+
_ContextConsumerController_asyncConsumerSentinelId.set(this, void 0);
|
|
15
|
+
_ContextConsumerController_asyncConsumerIntervalId.set(this, void 0);
|
|
13
16
|
tslib_es6.__classPrivateFieldSet(this, _ContextConsumerController_host, host, "f");
|
|
14
17
|
tslib_es6.__classPrivateFieldGet(this, _ContextConsumerController_host, "f").addController(this);
|
|
15
18
|
}
|
|
16
19
|
consume(key) {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
return this._consumeValue(key);
|
|
21
|
+
}
|
|
22
|
+
async consumeAsync(key, { intervalRate = context_constants.CONTEXT_ASYNC_CONSUMER_DEFAULT_INTERVAL_RATE, maxWaitingTime = context_constants.CONTEXT_ASYNC_CONSUMER_DFAULT_MAX_WAITING_TIME } = {}) {
|
|
23
|
+
const value = this._consumeValue(key);
|
|
24
|
+
if (value !== undefined)
|
|
25
|
+
return value;
|
|
26
|
+
return new Promise((resolve, reject) => {
|
|
27
|
+
tslib_es6.__classPrivateFieldSet(this, _ContextConsumerController_asyncConsumerIntervalId, setInterval(() => {
|
|
28
|
+
const value = this._consumeValue(key);
|
|
29
|
+
if (value !== undefined) {
|
|
30
|
+
resolve(value);
|
|
31
|
+
}
|
|
32
|
+
}, intervalRate), "f");
|
|
33
|
+
tslib_es6.__classPrivateFieldSet(this, _ContextConsumerController_asyncConsumerSentinelId, setTimeout(() => {
|
|
34
|
+
reject();
|
|
35
|
+
}, maxWaitingTime), "f");
|
|
36
|
+
}).finally(() => {
|
|
37
|
+
this._clearAsyncConsumerIntervals();
|
|
22
38
|
});
|
|
23
|
-
tslib_es6.__classPrivateFieldGet(this, _ContextConsumerController_host, "f").dispatchEvent(consumeEvent);
|
|
24
|
-
return consumeEvent.detail[key];
|
|
25
39
|
}
|
|
26
|
-
|
|
40
|
+
_consumeValue(key) {
|
|
27
41
|
const consumeEvent = new CustomEvent(context_consumer_messages_names.WEB_COMPONENT_CONTEXT_EVENTS.valueRequested, {
|
|
28
42
|
bubbles: true,
|
|
29
43
|
cancelable: true,
|
|
@@ -31,29 +45,19 @@ class ContextConsumerController {
|
|
|
31
45
|
detail: { key }
|
|
32
46
|
});
|
|
33
47
|
tslib_es6.__classPrivateFieldGet(this, _ContextConsumerController_host, "f").dispatchEvent(consumeEvent);
|
|
34
|
-
|
|
35
|
-
return consumeEvent.detail[key];
|
|
36
|
-
return new Promise((resolve, reject) => {
|
|
37
|
-
const intervalId = setInterval(() => {
|
|
38
|
-
tslib_es6.__classPrivateFieldGet(this, _ContextConsumerController_host, "f").dispatchEvent(consumeEvent);
|
|
39
|
-
const value = consumeEvent.detail[key];
|
|
40
|
-
if (consumeEvent.detail[key] !== undefined) {
|
|
41
|
-
clearInterval(intervalId);
|
|
42
|
-
clearTimeout(timeoutId);
|
|
43
|
-
resolve(value);
|
|
44
|
-
}
|
|
45
|
-
}, 50);
|
|
46
|
-
const timeoutId = setTimeout(() => {
|
|
47
|
-
clearInterval(timeoutId);
|
|
48
|
-
reject();
|
|
49
|
-
}, 2000);
|
|
50
|
-
});
|
|
48
|
+
return consumeEvent.detail[key];
|
|
51
49
|
}
|
|
52
50
|
// Added to fix typescript error
|
|
53
51
|
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
54
|
-
hostConnected() {
|
|
52
|
+
hostConnected() {
|
|
53
|
+
this._clearAsyncConsumerIntervals();
|
|
54
|
+
}
|
|
55
|
+
_clearAsyncConsumerIntervals() {
|
|
56
|
+
tslib_es6.__classPrivateFieldGet(this, _ContextConsumerController_asyncConsumerSentinelId, "f") && window.clearTimeout(tslib_es6.__classPrivateFieldGet(this, _ContextConsumerController_asyncConsumerSentinelId, "f"));
|
|
57
|
+
tslib_es6.__classPrivateFieldGet(this, _ContextConsumerController_asyncConsumerIntervalId, "f") && clearInterval(tslib_es6.__classPrivateFieldGet(this, _ContextConsumerController_asyncConsumerIntervalId, "f"));
|
|
58
|
+
}
|
|
55
59
|
}
|
|
56
|
-
_ContextConsumerController_host = new WeakMap();
|
|
60
|
+
_ContextConsumerController_host = new WeakMap(), _ContextConsumerController_asyncConsumerSentinelId = new WeakMap(), _ContextConsumerController_asyncConsumerIntervalId = new WeakMap();
|
|
57
61
|
|
|
58
62
|
exports.ContextConsumerController = ContextConsumerController;
|
|
59
63
|
//# sourceMappingURL=context_consumer_controller.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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;"}
|
|
@@ -27,7 +27,7 @@ let HAccordionContent = class HAccordionContent extends PhoenixLightLitElement {
|
|
|
27
27
|
this._subscribeObserver();
|
|
28
28
|
}
|
|
29
29
|
_setStylingOptions() {
|
|
30
|
-
this.style.display
|
|
30
|
+
this.style.setProperty('display', 'block', 'important');
|
|
31
31
|
this._originalHeight = `${this.getBoundingClientRect().height}px`;
|
|
32
32
|
this.style.display = '';
|
|
33
33
|
this.style.height = this._originalHeight;
|
|
@@ -78,10 +78,12 @@ let HAccordionGroup = class HAccordionGroup extends PhoenixLightLitElement {
|
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
80
|
_closeOtherAccordionGroups() {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
81
|
+
if (!this._isDisabled) {
|
|
82
|
+
const $accordion = this.closest('h-accordion');
|
|
83
|
+
const $accordionGroups = [...$accordion.querySelectorAll('h-accordion-group')];
|
|
84
|
+
const $otherAccordionGroupsWithinAccordion = $accordionGroups.filter(($accordionGroup) => $accordionGroup !== this);
|
|
85
|
+
$otherAccordionGroupsWithinAccordion.forEach(($accordionGroup) => $accordionGroup.hide());
|
|
86
|
+
}
|
|
85
87
|
}
|
|
86
88
|
notify() {
|
|
87
89
|
this._accordionGroupPropsSubject.notify(this._getProps());
|
|
@@ -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;"}
|
|
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;"}
|
package/build/esm/packages/phoenix/src/controllers/transition_controller/transition_controller.d.ts
CHANGED
|
@@ -6,6 +6,6 @@ export declare class TransitionController implements ReactiveController {
|
|
|
6
6
|
constructor(host: ReactiveControllerHost & HTMLElement, transitionName: string);
|
|
7
7
|
hostConnected(): void;
|
|
8
8
|
hostDisconnected(): void;
|
|
9
|
-
show(callback?: () => void): void
|
|
10
|
-
hide(callback?: () => void): void
|
|
9
|
+
show(callback?: () => void): Promise<void>;
|
|
10
|
+
hide(callback?: () => void): Promise<void>;
|
|
11
11
|
}
|
package/build/esm/packages/phoenix/src/controllers/transition_controller/transition_controller.js
CHANGED
|
@@ -10,24 +10,33 @@ class TransitionController {
|
|
|
10
10
|
this._transitionDuration = parseFloat(getComputedStyle(this.host).transitionDuration) * 1000;
|
|
11
11
|
}
|
|
12
12
|
hostDisconnected() { }
|
|
13
|
-
show(callback) {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
callback
|
|
13
|
+
async show(callback) {
|
|
14
|
+
return new Promise((resolve) => {
|
|
15
|
+
this.host.hidden = false;
|
|
16
|
+
this.host.classList.add(`${this._transitionName}-${TRANSITION_CSS_CLASSES.transitionEnd}`);
|
|
17
|
+
requestAnimationFrame(() => {
|
|
18
|
+
this.host.classList.remove(`${this._transitionName}-${TRANSITION_CSS_CLASSES.transitionStart}`);
|
|
19
|
+
if (typeof callback === 'function')
|
|
20
|
+
callback();
|
|
21
|
+
setTimeout(() => {
|
|
22
|
+
this.host.hidden = false;
|
|
23
|
+
resolve();
|
|
24
|
+
}, this._transitionDuration);
|
|
25
|
+
});
|
|
20
26
|
});
|
|
21
27
|
}
|
|
22
|
-
hide(callback) {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
callback
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
async hide(callback) {
|
|
29
|
+
return new Promise((resolve) => {
|
|
30
|
+
requestAnimationFrame(() => {
|
|
31
|
+
if (typeof callback === 'function')
|
|
32
|
+
callback();
|
|
33
|
+
this.host.classList.add(`${this._transitionName}-${TRANSITION_CSS_CLASSES.transitionStart}`);
|
|
34
|
+
this.host.classList.remove(`${this._transitionName}-${TRANSITION_CSS_CLASSES.transitionEnd}`);
|
|
35
|
+
setTimeout(() => {
|
|
36
|
+
this.host.hidden = true;
|
|
37
|
+
resolve();
|
|
38
|
+
}, this._transitionDuration);
|
|
39
|
+
});
|
|
31
40
|
});
|
|
32
41
|
}
|
|
33
42
|
}
|
|
@@ -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;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
const CONTEXT_ASYNC_CONSUMER_DEFAULT_INTERVAL_RATE = 50;
|
|
2
|
+
const CONTEXT_ASYNC_CONSUMER_DFAULT_MAX_WAITING_TIME = 2000;
|
|
3
|
+
|
|
4
|
+
export { CONTEXT_ASYNC_CONSUMER_DEFAULT_INTERVAL_RATE, CONTEXT_ASYNC_CONSUMER_DFAULT_MAX_WAITING_TIME };
|
|
5
|
+
//# sourceMappingURL=context_constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import { TContextValueKey, TWebComponentsContextControllerHost } from "./context_controller_types";
|
|
1
|
+
import { TAsyncConsumerOptions, TContextValueKey, TWebComponentsContextControllerHost } from "./context_controller_types";
|
|
2
2
|
import { ReactiveController } from 'lit';
|
|
3
3
|
export declare class ContextConsumerController<TValue> implements ReactiveController {
|
|
4
4
|
#private;
|
|
5
5
|
constructor(host: TWebComponentsContextControllerHost);
|
|
6
6
|
consume(key: TContextValueKey): TValue;
|
|
7
|
-
consumeAsync(key: TContextValueKey): Promise<TValue>;
|
|
7
|
+
consumeAsync(key: TContextValueKey, { intervalRate, maxWaitingTime }?: TAsyncConsumerOptions): Promise<TValue>;
|
|
8
|
+
private _consumeValue;
|
|
8
9
|
hostConnected(): void;
|
|
10
|
+
private _clearAsyncConsumerIntervals;
|
|
9
11
|
}
|
|
@@ -1,25 +1,39 @@
|
|
|
1
1
|
import { __classPrivateFieldSet, __classPrivateFieldGet } from '../../../../../external/tslib/tslib.es6.js';
|
|
2
2
|
import 'lit';
|
|
3
3
|
import { WEB_COMPONENT_CONTEXT_EVENTS } from './context_consumer_messages_names.js';
|
|
4
|
+
import { CONTEXT_ASYNC_CONSUMER_DEFAULT_INTERVAL_RATE, CONTEXT_ASYNC_CONSUMER_DFAULT_MAX_WAITING_TIME } from './context_constants.js';
|
|
4
5
|
|
|
5
|
-
var _ContextConsumerController_host;
|
|
6
|
+
var _ContextConsumerController_host, _ContextConsumerController_asyncConsumerSentinelId, _ContextConsumerController_asyncConsumerIntervalId;
|
|
6
7
|
class ContextConsumerController {
|
|
7
8
|
constructor(host) {
|
|
8
9
|
_ContextConsumerController_host.set(this, void 0);
|
|
10
|
+
_ContextConsumerController_asyncConsumerSentinelId.set(this, void 0);
|
|
11
|
+
_ContextConsumerController_asyncConsumerIntervalId.set(this, void 0);
|
|
9
12
|
__classPrivateFieldSet(this, _ContextConsumerController_host, host, "f");
|
|
10
13
|
__classPrivateFieldGet(this, _ContextConsumerController_host, "f").addController(this);
|
|
11
14
|
}
|
|
12
15
|
consume(key) {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
return this._consumeValue(key);
|
|
17
|
+
}
|
|
18
|
+
async consumeAsync(key, { intervalRate = CONTEXT_ASYNC_CONSUMER_DEFAULT_INTERVAL_RATE, maxWaitingTime = CONTEXT_ASYNC_CONSUMER_DFAULT_MAX_WAITING_TIME } = {}) {
|
|
19
|
+
const value = this._consumeValue(key);
|
|
20
|
+
if (value !== undefined)
|
|
21
|
+
return value;
|
|
22
|
+
return new Promise((resolve, reject) => {
|
|
23
|
+
__classPrivateFieldSet(this, _ContextConsumerController_asyncConsumerIntervalId, setInterval(() => {
|
|
24
|
+
const value = this._consumeValue(key);
|
|
25
|
+
if (value !== undefined) {
|
|
26
|
+
resolve(value);
|
|
27
|
+
}
|
|
28
|
+
}, intervalRate), "f");
|
|
29
|
+
__classPrivateFieldSet(this, _ContextConsumerController_asyncConsumerSentinelId, setTimeout(() => {
|
|
30
|
+
reject();
|
|
31
|
+
}, maxWaitingTime), "f");
|
|
32
|
+
}).finally(() => {
|
|
33
|
+
this._clearAsyncConsumerIntervals();
|
|
18
34
|
});
|
|
19
|
-
__classPrivateFieldGet(this, _ContextConsumerController_host, "f").dispatchEvent(consumeEvent);
|
|
20
|
-
return consumeEvent.detail[key];
|
|
21
35
|
}
|
|
22
|
-
|
|
36
|
+
_consumeValue(key) {
|
|
23
37
|
const consumeEvent = new CustomEvent(WEB_COMPONENT_CONTEXT_EVENTS.valueRequested, {
|
|
24
38
|
bubbles: true,
|
|
25
39
|
cancelable: true,
|
|
@@ -27,29 +41,19 @@ class ContextConsumerController {
|
|
|
27
41
|
detail: { key }
|
|
28
42
|
});
|
|
29
43
|
__classPrivateFieldGet(this, _ContextConsumerController_host, "f").dispatchEvent(consumeEvent);
|
|
30
|
-
|
|
31
|
-
return consumeEvent.detail[key];
|
|
32
|
-
return new Promise((resolve, reject) => {
|
|
33
|
-
const intervalId = setInterval(() => {
|
|
34
|
-
__classPrivateFieldGet(this, _ContextConsumerController_host, "f").dispatchEvent(consumeEvent);
|
|
35
|
-
const value = consumeEvent.detail[key];
|
|
36
|
-
if (consumeEvent.detail[key] !== undefined) {
|
|
37
|
-
clearInterval(intervalId);
|
|
38
|
-
clearTimeout(timeoutId);
|
|
39
|
-
resolve(value);
|
|
40
|
-
}
|
|
41
|
-
}, 50);
|
|
42
|
-
const timeoutId = setTimeout(() => {
|
|
43
|
-
clearInterval(timeoutId);
|
|
44
|
-
reject();
|
|
45
|
-
}, 2000);
|
|
46
|
-
});
|
|
44
|
+
return consumeEvent.detail[key];
|
|
47
45
|
}
|
|
48
46
|
// Added to fix typescript error
|
|
49
47
|
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
50
|
-
hostConnected() {
|
|
48
|
+
hostConnected() {
|
|
49
|
+
this._clearAsyncConsumerIntervals();
|
|
50
|
+
}
|
|
51
|
+
_clearAsyncConsumerIntervals() {
|
|
52
|
+
__classPrivateFieldGet(this, _ContextConsumerController_asyncConsumerSentinelId, "f") && window.clearTimeout(__classPrivateFieldGet(this, _ContextConsumerController_asyncConsumerSentinelId, "f"));
|
|
53
|
+
__classPrivateFieldGet(this, _ContextConsumerController_asyncConsumerIntervalId, "f") && clearInterval(__classPrivateFieldGet(this, _ContextConsumerController_asyncConsumerIntervalId, "f"));
|
|
54
|
+
}
|
|
51
55
|
}
|
|
52
|
-
_ContextConsumerController_host = new WeakMap();
|
|
56
|
+
_ContextConsumerController_host = new WeakMap(), _ContextConsumerController_asyncConsumerSentinelId = new WeakMap(), _ContextConsumerController_asyncConsumerIntervalId = new WeakMap();
|
|
53
57
|
|
|
54
58
|
export { ContextConsumerController };
|
|
55
59
|
//# sourceMappingURL=context_consumer_controller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,+DAA+D,4CAAgD;AAC/G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,+DAA+D,4CAAgD;AAC/G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|