@shoper/phoenix_design_system 1.18.9 → 1.18.10-1
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.js +14 -5
- package/build/cjs/packages/phoenix/src/components/accordion/accordion.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/accordion/accordion_constants.js +9 -2
- package/build/cjs/packages/phoenix/src/components/accordion/accordion_constants.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/accordion/accordion_content.js +35 -17
- package/build/cjs/packages/phoenix/src/components/accordion/accordion_content.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/accordion/accordion_group.js +169 -28
- package/build/cjs/packages/phoenix/src/components/accordion/accordion_group.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/accordion/accordion_toggler.js +16 -7
- package/build/cjs/packages/phoenix/src/components/accordion/accordion_toggler.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/form/select/select.js +2 -1
- package/build/cjs/packages/phoenix/src/components/form/select/select.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/messages/base_message.js +1 -1
- package/build/cjs/packages/phoenix/src/index.js +2 -0
- package/build/cjs/packages/phoenix/src/index.js.map +1 -1
- package/build/cjs/packages/utilities/build/esm/packages/utilities/src/feature_flag_utils.js +26 -0
- package/build/cjs/packages/utilities/build/esm/packages/utilities/src/feature_flag_utils.js.map +1 -0
- package/build/cjs/packages/utilities/build/esm/packages/utilities/src/json_utils.js +25 -0
- package/build/cjs/packages/utilities/build/esm/packages/utilities/src/json_utils.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/accordion/accordion.d.ts +1 -0
- package/build/esm/packages/phoenix/src/components/accordion/accordion.js +15 -6
- package/build/esm/packages/phoenix/src/components/accordion/accordion.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/accordion/accordion_constants.d.ts +7 -2
- package/build/esm/packages/phoenix/src/components/accordion/accordion_constants.js +8 -3
- package/build/esm/packages/phoenix/src/components/accordion/accordion_constants.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/accordion/accordion_content.d.ts +1 -0
- package/build/esm/packages/phoenix/src/components/accordion/accordion_content.js +35 -17
- package/build/esm/packages/phoenix/src/components/accordion/accordion_content.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/accordion/accordion_group.d.ts +12 -0
- package/build/esm/packages/phoenix/src/components/accordion/accordion_group.js +170 -29
- package/build/esm/packages/phoenix/src/components/accordion/accordion_group.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/accordion/accordion_toggler.d.ts +1 -0
- package/build/esm/packages/phoenix/src/components/accordion/accordion_toggler.js +16 -7
- package/build/esm/packages/phoenix/src/components/accordion/accordion_toggler.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/form/select/select.js +2 -1
- package/build/esm/packages/phoenix/src/components/form/select/select.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/messages/base_message.js +1 -1
- package/build/esm/packages/phoenix/src/index.js +1 -1
- package/build/esm/packages/utilities/build/esm/packages/utilities/src/feature_flag_utils.js +22 -0
- package/build/esm/packages/utilities/build/esm/packages/utilities/src/feature_flag_utils.js.map +1 -0
- package/build/esm/packages/utilities/build/esm/packages/utilities/src/json_utils.js +21 -0
- package/build/esm/packages/utilities/build/esm/packages/utilities/src/json_utils.js.map +1 -0
- package/package.json +2 -2
|
@@ -4,17 +4,21 @@ import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/pho
|
|
|
4
4
|
import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
|
|
5
5
|
import { BehaviorSubject } from '../../core/classes/behavior_subject/behavior_subject.js';
|
|
6
6
|
import { ContextProviderController } from '../../core/context/context_provider_controller.js';
|
|
7
|
-
import { ACCORDION_MODE, ACCORDION_CONTEXTS } from './accordion_constants.js';
|
|
7
|
+
import { ACCORDION_MODE, ACCORDION_CONTEXTS, ACCORDION_EVENTS } from './accordion_constants.js';
|
|
8
|
+
import { FeatureFlagUtils } from '../../../../utilities/build/esm/packages/utilities/src/feature_flag_utils.js';
|
|
8
9
|
|
|
9
10
|
let HAccordion = class HAccordion extends PhoenixLightLitElement {
|
|
10
11
|
constructor() {
|
|
11
12
|
super();
|
|
12
13
|
this.disabled = false;
|
|
13
14
|
this.mode = ACCORDION_MODE.multi;
|
|
14
|
-
this.
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
this._isDevAccordionOptimizationFlagEnabled = FeatureFlagUtils.isEnabled('dev_accordion_optimization');
|
|
16
|
+
if (!this._isDevAccordionOptimizationFlagEnabled) {
|
|
17
|
+
this._accordionSubject = new BehaviorSubject(this._getProps());
|
|
18
|
+
this._accordionContext = new ContextProviderController(this);
|
|
19
|
+
this._accordionContext.provide(ACCORDION_CONTEXTS.accordionProps, this._accordionSubject);
|
|
20
|
+
this.setAttribute('role', 'none');
|
|
21
|
+
}
|
|
18
22
|
}
|
|
19
23
|
enable() {
|
|
20
24
|
this.disabled = false;
|
|
@@ -26,7 +30,12 @@ let HAccordion = class HAccordion extends PhoenixLightLitElement {
|
|
|
26
30
|
this.notify();
|
|
27
31
|
}
|
|
28
32
|
notify() {
|
|
29
|
-
|
|
33
|
+
if (this._isDevAccordionOptimizationFlagEnabled) {
|
|
34
|
+
this.dispatchEvent(new Event(ACCORDION_EVENTS.update));
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
this._accordionSubject.notify(this._getProps());
|
|
38
|
+
}
|
|
30
39
|
}
|
|
31
40
|
_getProps() {
|
|
32
41
|
return {
|
|
@@ -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;"}
|
|
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;"}
|
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
export declare const ACCORDION_EVENTS: {
|
|
2
2
|
readonly toggle: "toggle";
|
|
3
|
+
readonly update: "updateAccordion";
|
|
3
4
|
};
|
|
4
5
|
export declare const ACCORDION_CONTEXTS: {
|
|
5
|
-
|
|
6
|
-
|
|
6
|
+
accordionProps: string;
|
|
7
|
+
accordionGroupProps: string;
|
|
8
|
+
};
|
|
9
|
+
export declare const ACCORDION_CSS_CLASSES: {
|
|
10
|
+
readonly open: "accordion__details_open";
|
|
7
11
|
};
|
|
8
12
|
export declare const ACCORDION_MODE: {
|
|
9
13
|
readonly single: "single";
|
|
10
14
|
readonly multi: "multi";
|
|
11
15
|
};
|
|
16
|
+
export declare const ACCORDION_ANIMATION_DURATION = 400;
|
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
const ACCORDION_EVENTS = {
|
|
2
|
-
toggle: 'toggle'
|
|
2
|
+
toggle: 'toggle',
|
|
3
|
+
update: 'updateAccordion'
|
|
3
4
|
};
|
|
4
5
|
const ACCORDION_CONTEXTS = {
|
|
5
6
|
accordionProps: 'accordionPropsSubject',
|
|
6
7
|
accordionGroupProps: 'accordionGroupPropsSubject'
|
|
7
8
|
};
|
|
9
|
+
const ACCORDION_CSS_CLASSES = {
|
|
10
|
+
open: 'accordion__details_open'
|
|
11
|
+
};
|
|
8
12
|
const ACCORDION_MODE = {
|
|
9
13
|
single: 'single',
|
|
10
14
|
multi: 'multi'
|
|
11
|
-
};
|
|
15
|
+
};
|
|
16
|
+
const ACCORDION_ANIMATION_DURATION = 400;
|
|
12
17
|
|
|
13
|
-
export { ACCORDION_CONTEXTS, ACCORDION_EVENTS, ACCORDION_MODE };
|
|
18
|
+
export { ACCORDION_ANIMATION_DURATION, ACCORDION_CONTEXTS, ACCORDION_CSS_CLASSES, ACCORDION_EVENTS, ACCORDION_MODE };
|
|
14
19
|
//# sourceMappingURL=accordion_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;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -11,6 +11,7 @@ export declare class HAccordionContent extends PhoenixLightLitElement {
|
|
|
11
11
|
private _mutationDebounceTimer;
|
|
12
12
|
private _mutationObserver;
|
|
13
13
|
private _boundHandleTransitionEnd;
|
|
14
|
+
private _isDevAccordionOptimizationFlagEnabled;
|
|
14
15
|
constructor();
|
|
15
16
|
connectedCallback(): void;
|
|
16
17
|
firstUpdated(props: PropertyValues): void;
|
|
@@ -6,6 +6,7 @@ import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_eleme
|
|
|
6
6
|
import { Observer } from '../../core/classes/observer/observer.js';
|
|
7
7
|
import { ContextConsumerController } from '../../core/context/context_consumer_controller.js';
|
|
8
8
|
import { ACCORDION_CONTEXTS } from './accordion_constants.js';
|
|
9
|
+
import { FeatureFlagUtils } from '../../../../utilities/build/esm/packages/utilities/src/feature_flag_utils.js';
|
|
9
10
|
import { TransitionController } from '../../controllers/transition_controller/transition_controller.js';
|
|
10
11
|
|
|
11
12
|
const RESIZE_DEBOUNCE_MS = 150;
|
|
@@ -68,6 +69,8 @@ let HAccordionContent = class HAccordionContent extends PhoenixLightLitElement {
|
|
|
68
69
|
this._setHeight(this._originalHeight);
|
|
69
70
|
};
|
|
70
71
|
this._handleTransitionEnd = (e) => {
|
|
72
|
+
if (this._isDevAccordionOptimizationFlagEnabled)
|
|
73
|
+
return;
|
|
71
74
|
if (e.propertyName !== 'height' || e.target !== this) {
|
|
72
75
|
return;
|
|
73
76
|
}
|
|
@@ -84,20 +87,33 @@ let HAccordionContent = class HAccordionContent extends PhoenixLightLitElement {
|
|
|
84
87
|
});
|
|
85
88
|
});
|
|
86
89
|
};
|
|
87
|
-
this.
|
|
88
|
-
|
|
90
|
+
this._isDevAccordionOptimizationFlagEnabled = FeatureFlagUtils.isEnabled('dev_accordion_optimization');
|
|
91
|
+
if (this._isDevAccordionOptimizationFlagEnabled) {
|
|
92
|
+
this.slot = this.hasAttribute('slot') ? this.slot : 'content';
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
this.setAttribute('role', 'region');
|
|
96
|
+
this._boundHandleTransitionEnd = this._handleTransitionEnd.bind(this);
|
|
97
|
+
}
|
|
89
98
|
}
|
|
90
99
|
connectedCallback() {
|
|
91
100
|
super.connectedCallback();
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
101
|
+
if (!this._isDevAccordionOptimizationFlagEnabled) {
|
|
102
|
+
this._contextConsumer = new ContextConsumerController(this);
|
|
103
|
+
this._transitionController = new TransitionController(this, this.transitionName);
|
|
104
|
+
this._subscribeObserver();
|
|
105
|
+
window.addEventListener('resize', this._handleResize, { passive: true });
|
|
106
|
+
this.addEventListener('transitionend', this._boundHandleTransitionEnd);
|
|
107
|
+
}
|
|
108
|
+
if (this._isDevAccordionOptimizationFlagEnabled) {
|
|
109
|
+
this.classList.add('accordion-content');
|
|
110
|
+
}
|
|
97
111
|
}
|
|
98
112
|
firstUpdated(props) {
|
|
99
113
|
super.firstUpdated(props);
|
|
100
|
-
this.
|
|
114
|
+
if (!this._isDevAccordionOptimizationFlagEnabled) {
|
|
115
|
+
this._setStylingOptions();
|
|
116
|
+
}
|
|
101
117
|
}
|
|
102
118
|
async _subscribeObserver() {
|
|
103
119
|
this._accordionGroupProps = await this._contextConsumer.consumeAsync(ACCORDION_CONTEXTS.accordionGroupProps);
|
|
@@ -119,15 +135,17 @@ let HAccordionContent = class HAccordionContent extends PhoenixLightLitElement {
|
|
|
119
135
|
disconnectedCallback() {
|
|
120
136
|
var _a, _b;
|
|
121
137
|
super.disconnectedCallback();
|
|
122
|
-
(
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
138
|
+
if (!this._isDevAccordionOptimizationFlagEnabled) {
|
|
139
|
+
(_a = this._accordionGroupProps) === null || _a === void 0 ? void 0 : _a.unsubscribe(this._accordionGroupPropsObserver);
|
|
140
|
+
(_b = this._mutationObserver) === null || _b === void 0 ? void 0 : _b.disconnect();
|
|
141
|
+
window.removeEventListener('resize', this._handleResize);
|
|
142
|
+
this.removeEventListener('transitionend', this._boundHandleTransitionEnd);
|
|
143
|
+
if (this._resizeDebounceTimer !== null) {
|
|
144
|
+
window.cancelAnimationFrame(this._resizeDebounceTimer);
|
|
145
|
+
}
|
|
146
|
+
if (this._mutationDebounceTimer !== null) {
|
|
147
|
+
window.clearTimeout(this._mutationDebounceTimer);
|
|
148
|
+
}
|
|
131
149
|
}
|
|
132
150
|
}
|
|
133
151
|
};
|
|
@@ -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;"}
|
|
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;AACA;AACA;AACA;"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { IAccordion, IAccordionGroup } from './accordion_types';
|
|
2
2
|
import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element/phoenix_light_lit_element";
|
|
3
|
+
import { PropertyValues } from 'lit';
|
|
3
4
|
export declare class HAccordionGroup extends PhoenixLightLitElement implements IAccordionGroup, IAccordion {
|
|
4
5
|
opened: boolean;
|
|
5
6
|
private _isDisabled;
|
|
@@ -11,13 +12,22 @@ export declare class HAccordionGroup extends PhoenixLightLitElement implements I
|
|
|
11
12
|
private _accordionContextConsumer;
|
|
12
13
|
private _accordionProps;
|
|
13
14
|
private _accordionPropsObserver;
|
|
15
|
+
private _$parentAccordion;
|
|
16
|
+
private _detailsRef;
|
|
17
|
+
private _togglerId;
|
|
18
|
+
private _isDevAccordionOptimizationFlagEnabled;
|
|
14
19
|
constructor();
|
|
15
20
|
connectedCallback(): void;
|
|
21
|
+
firstUpdated(props: PropertyValues): void;
|
|
16
22
|
private _subscribeObserver;
|
|
17
23
|
disconnectedCallback(): void;
|
|
24
|
+
private _syncWithParentAccordion;
|
|
18
25
|
show(): void;
|
|
19
26
|
hide(): void;
|
|
27
|
+
private _dispatchToggleEvent;
|
|
20
28
|
toggle(): void;
|
|
29
|
+
private _handleSingleModeConstraint;
|
|
30
|
+
private _hideOtherDetailsGroups;
|
|
21
31
|
enable(): void;
|
|
22
32
|
disable(): void;
|
|
23
33
|
private _accordionToggle;
|
|
@@ -25,4 +35,6 @@ export declare class HAccordionGroup extends PhoenixLightLitElement implements I
|
|
|
25
35
|
notify(): void;
|
|
26
36
|
protected updated(_changedProperties: Map<string, unknown>): void;
|
|
27
37
|
private _getProps;
|
|
38
|
+
private _summaryClickHandler;
|
|
39
|
+
protected render(): unknown;
|
|
28
40
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.js';
|
|
2
|
+
import { html } from 'lit';
|
|
2
3
|
import { property, state } from 'lit/decorators';
|
|
3
4
|
import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
|
|
4
5
|
import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
|
|
@@ -6,7 +7,11 @@ import { Observer } from '../../core/classes/observer/observer.js';
|
|
|
6
7
|
import { ContextConsumerController } from '../../core/context/context_consumer_controller.js';
|
|
7
8
|
import { BehaviorSubject } from '../../core/classes/behavior_subject/behavior_subject.js';
|
|
8
9
|
import { ContextProviderController } from '../../core/context/context_provider_controller.js';
|
|
9
|
-
import
|
|
10
|
+
import v4 from '../../../../../external/uuid/dist/esm-browser/v4.js';
|
|
11
|
+
import { ACCORDION_MODE, ACCORDION_CONTEXTS, ACCORDION_EVENTS, ACCORDION_CSS_CLASSES, ACCORDION_ANIMATION_DURATION } from './accordion_constants.js';
|
|
12
|
+
import { FeatureFlagUtils } from '../../../../utilities/build/esm/packages/utilities/src/feature_flag_utils.js';
|
|
13
|
+
import { createRef, ref } from 'lit/directives/ref';
|
|
14
|
+
import { when } from 'lit/directives/when';
|
|
10
15
|
|
|
11
16
|
let HAccordionGroup = class HAccordionGroup extends PhoenixLightLitElement {
|
|
12
17
|
constructor() {
|
|
@@ -16,19 +21,63 @@ let HAccordionGroup = class HAccordionGroup extends PhoenixLightLitElement {
|
|
|
16
21
|
this._regionId = typeof self.crypto.randomUUID === 'function' ? self.crypto.randomUUID() : (Math.random() + 1).toString(36).substring(3);
|
|
17
22
|
this._controlsId = typeof self.crypto.randomUUID === 'function' ? self.crypto.randomUUID() : (Math.random() + 1).toString(36).substring(3);
|
|
18
23
|
this._mode = ACCORDION_MODE.multi;
|
|
24
|
+
this._$parentAccordion = null;
|
|
25
|
+
this._detailsRef = createRef();
|
|
26
|
+
this._togglerId = v4();
|
|
27
|
+
this._syncWithParentAccordion = () => {
|
|
28
|
+
if (!this._$parentAccordion)
|
|
29
|
+
return;
|
|
30
|
+
this._mode = this._$parentAccordion.mode;
|
|
31
|
+
const shouldBeDisabled = this._$parentAccordion.disabled;
|
|
32
|
+
const hasDisabledStateChanged = shouldBeDisabled !== this._isDisabled;
|
|
33
|
+
if (hasDisabledStateChanged) {
|
|
34
|
+
shouldBeDisabled ? this.disable() : this.enable();
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
this._hideOtherDetailsGroups = () => {
|
|
38
|
+
var _a;
|
|
39
|
+
if (this._isDisabled)
|
|
40
|
+
return;
|
|
41
|
+
(_a = this._$parentAccordion) === null || _a === void 0 ? void 0 : _a.querySelectorAll('h-accordion-group').forEach(($accordionGroup) => {
|
|
42
|
+
if ($accordionGroup === this)
|
|
43
|
+
return;
|
|
44
|
+
$accordionGroup.hide();
|
|
45
|
+
});
|
|
46
|
+
};
|
|
19
47
|
this._accordionToggle = () => {
|
|
20
48
|
this.toggle();
|
|
21
49
|
};
|
|
22
|
-
this.
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
50
|
+
this._summaryClickHandler = (ev) => {
|
|
51
|
+
ev.preventDefault();
|
|
52
|
+
if (!this._isDisabled)
|
|
53
|
+
this.toggle();
|
|
54
|
+
};
|
|
55
|
+
this._isDevAccordionOptimizationFlagEnabled = FeatureFlagUtils.isEnabled('dev_accordion_optimization');
|
|
56
|
+
if (!this._isDevAccordionOptimizationFlagEnabled) {
|
|
57
|
+
this._accordionGroupPropsSubject = new BehaviorSubject(this._getProps());
|
|
58
|
+
this._accordionGroupContext = new ContextProviderController(this);
|
|
59
|
+
this._accordionGroupContext.provide(ACCORDION_CONTEXTS.accordionGroupProps, this._accordionGroupPropsSubject);
|
|
60
|
+
this.setAttribute('role', 'none');
|
|
61
|
+
}
|
|
26
62
|
}
|
|
27
63
|
connectedCallback() {
|
|
64
|
+
var _a;
|
|
28
65
|
super.connectedCallback();
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
66
|
+
if (this._isDevAccordionOptimizationFlagEnabled) {
|
|
67
|
+
this._$parentAccordion = this.closest('h-accordion');
|
|
68
|
+
(_a = this._$parentAccordion) === null || _a === void 0 ? void 0 : _a.addEventListener(ACCORDION_EVENTS.update, this._syncWithParentAccordion);
|
|
69
|
+
this._syncWithParentAccordion();
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
this._accordionContextConsumer = new ContextConsumerController(this);
|
|
73
|
+
this._subscribeObserver();
|
|
74
|
+
this.addEventListener(ACCORDION_EVENTS.toggle, this._accordionToggle);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
firstUpdated(props) {
|
|
78
|
+
super.firstUpdated(props);
|
|
79
|
+
if (this.opened && this._isDevAccordionOptimizationFlagEnabled)
|
|
80
|
+
this.show();
|
|
32
81
|
}
|
|
33
82
|
async _subscribeObserver() {
|
|
34
83
|
this._accordionProps = await this._accordionContextConsumer.consumeAsync(ACCORDION_CONTEXTS.accordionProps);
|
|
@@ -48,34 +97,102 @@ let HAccordionGroup = class HAccordionGroup extends PhoenixLightLitElement {
|
|
|
48
97
|
this._accordionProps.subscribe(this._accordionPropsObserver);
|
|
49
98
|
}
|
|
50
99
|
disconnectedCallback() {
|
|
51
|
-
|
|
52
|
-
|
|
100
|
+
var _a;
|
|
101
|
+
super.disconnectedCallback();
|
|
102
|
+
if (this._isDevAccordionOptimizationFlagEnabled) {
|
|
103
|
+
(_a = this._$parentAccordion) === null || _a === void 0 ? void 0 : _a.removeEventListener(ACCORDION_EVENTS.update, this._syncWithParentAccordion);
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
this._accordionProps.unsubscribe(this._accordionPropsObserver);
|
|
107
|
+
this.removeEventListener(ACCORDION_EVENTS.toggle, this._accordionToggle);
|
|
108
|
+
}
|
|
53
109
|
}
|
|
54
110
|
show() {
|
|
55
|
-
if (this.
|
|
56
|
-
this.
|
|
57
|
-
|
|
111
|
+
if (this._isDevAccordionOptimizationFlagEnabled) {
|
|
112
|
+
this._handleSingleModeConstraint();
|
|
113
|
+
const $details = this._detailsRef.value;
|
|
114
|
+
if (!$details)
|
|
115
|
+
return;
|
|
116
|
+
$details.setAttribute('open', '');
|
|
117
|
+
requestAnimationFrame(() => {
|
|
118
|
+
$details.classList.add(ACCORDION_CSS_CLASSES.open);
|
|
119
|
+
});
|
|
120
|
+
this._dispatchToggleEvent($details, true);
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
if (this._mode === ACCORDION_MODE.single)
|
|
124
|
+
this._closeOtherAccordionGroups();
|
|
125
|
+
this.opened = true;
|
|
126
|
+
}
|
|
58
127
|
}
|
|
59
128
|
hide() {
|
|
60
|
-
this.
|
|
129
|
+
if (this._isDevAccordionOptimizationFlagEnabled) {
|
|
130
|
+
const $details = this._detailsRef.value;
|
|
131
|
+
if (!$details)
|
|
132
|
+
return;
|
|
133
|
+
$details.classList.remove(ACCORDION_CSS_CLASSES.open);
|
|
134
|
+
setTimeout(() => {
|
|
135
|
+
$details.removeAttribute('open');
|
|
136
|
+
}, ACCORDION_ANIMATION_DURATION);
|
|
137
|
+
this._dispatchToggleEvent($details, false);
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
this.opened = false;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
_dispatchToggleEvent($details, open) {
|
|
144
|
+
this.emitCustomEvent(ACCORDION_EVENTS.toggle, {
|
|
145
|
+
detail: { open, target: $details }
|
|
146
|
+
});
|
|
61
147
|
}
|
|
62
148
|
toggle() {
|
|
63
|
-
if (this.
|
|
64
|
-
this.
|
|
65
|
-
|
|
149
|
+
if (this._isDevAccordionOptimizationFlagEnabled) {
|
|
150
|
+
this._handleSingleModeConstraint();
|
|
151
|
+
const $details = this._detailsRef.value;
|
|
152
|
+
if (!$details)
|
|
153
|
+
return;
|
|
154
|
+
const isOpen = $details.hasAttribute('open');
|
|
155
|
+
isOpen ? this.hide() : this.show();
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
if (this._mode === ACCORDION_MODE.single)
|
|
159
|
+
this._closeOtherAccordionGroups();
|
|
160
|
+
this.opened = !this.opened;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
_handleSingleModeConstraint() {
|
|
164
|
+
if (this._mode === ACCORDION_MODE.single) {
|
|
165
|
+
this._hideOtherDetailsGroups();
|
|
166
|
+
}
|
|
66
167
|
}
|
|
67
168
|
enable() {
|
|
68
|
-
if (this.
|
|
69
|
-
|
|
70
|
-
|
|
169
|
+
if (this._isDevAccordionOptimizationFlagEnabled) {
|
|
170
|
+
if (!this._isDisabled)
|
|
171
|
+
return;
|
|
71
172
|
this._isDisabled = false;
|
|
173
|
+
this.hide();
|
|
174
|
+
}
|
|
175
|
+
else {
|
|
176
|
+
if (this._isDisabled) {
|
|
177
|
+
this.addEventListener(ACCORDION_EVENTS.toggle, this._accordionToggle);
|
|
178
|
+
this.hide();
|
|
179
|
+
this._isDisabled = false;
|
|
180
|
+
}
|
|
72
181
|
}
|
|
73
182
|
}
|
|
74
183
|
disable() {
|
|
75
|
-
if (
|
|
76
|
-
|
|
77
|
-
|
|
184
|
+
if (this._isDevAccordionOptimizationFlagEnabled) {
|
|
185
|
+
if (this._isDisabled)
|
|
186
|
+
return;
|
|
78
187
|
this._isDisabled = true;
|
|
188
|
+
this.show();
|
|
189
|
+
}
|
|
190
|
+
else {
|
|
191
|
+
if (!this._isDisabled) {
|
|
192
|
+
this.removeEventListener(ACCORDION_EVENTS.toggle, this._accordionToggle);
|
|
193
|
+
this.show();
|
|
194
|
+
this._isDisabled = true;
|
|
195
|
+
}
|
|
79
196
|
}
|
|
80
197
|
}
|
|
81
198
|
_closeOtherAccordionGroups() {
|
|
@@ -87,14 +204,18 @@ let HAccordionGroup = class HAccordionGroup extends PhoenixLightLitElement {
|
|
|
87
204
|
}
|
|
88
205
|
}
|
|
89
206
|
notify() {
|
|
90
|
-
|
|
207
|
+
if (!this._isDevAccordionOptimizationFlagEnabled) {
|
|
208
|
+
this._accordionGroupPropsSubject.notify(this._getProps());
|
|
209
|
+
}
|
|
91
210
|
}
|
|
92
211
|
updated(_changedProperties) {
|
|
93
|
-
if (
|
|
94
|
-
_changedProperties.has('
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
212
|
+
if (!this._isDevAccordionOptimizationFlagEnabled) {
|
|
213
|
+
if (_changedProperties.has('opened') ||
|
|
214
|
+
_changedProperties.has('_isDisabled') ||
|
|
215
|
+
_changedProperties.has('_regionId') ||
|
|
216
|
+
_changedProperties.has('_controlsId')) {
|
|
217
|
+
this.notify();
|
|
218
|
+
}
|
|
98
219
|
}
|
|
99
220
|
}
|
|
100
221
|
_getProps() {
|
|
@@ -105,6 +226,26 @@ let HAccordionGroup = class HAccordionGroup extends PhoenixLightLitElement {
|
|
|
105
226
|
controlsId: this._controlsId
|
|
106
227
|
};
|
|
107
228
|
}
|
|
229
|
+
render() {
|
|
230
|
+
return when(this._isDevAccordionOptimizationFlagEnabled, () => html `
|
|
231
|
+
<details
|
|
232
|
+
${ref(this._detailsRef)}
|
|
233
|
+
class="accordion__details ${this._isDisabled ? 'accordion__details_disabled' : ''}"
|
|
234
|
+
aria-disabled="${this._isDisabled ? 'true' : 'false'}"
|
|
235
|
+
aria-labelledby="${this._togglerId}"
|
|
236
|
+
>
|
|
237
|
+
<summary
|
|
238
|
+
class="accordion__summary"
|
|
239
|
+
id="${this._togglerId}"
|
|
240
|
+
@click=${this._summaryClickHandler}
|
|
241
|
+
>
|
|
242
|
+
${this.getSlot('toggler')}
|
|
243
|
+
</summary>
|
|
244
|
+
|
|
245
|
+
${this.getSlot('content')}
|
|
246
|
+
</details>
|
|
247
|
+
`);
|
|
248
|
+
}
|
|
108
249
|
};
|
|
109
250
|
__decorate([
|
|
110
251
|
property({ type: Boolean, reflect: true }),
|
|
@@ -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;"}
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,qDAAyD;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,6 +3,7 @@ export declare class HAccordionToggler extends PhoenixLightLitElement {
|
|
|
3
3
|
private _contextConsumer;
|
|
4
4
|
private _accordionGroupProps;
|
|
5
5
|
private _accordionGroupPropsObserver;
|
|
6
|
+
private _isDevAccordionOptimizationFlagEnabled;
|
|
6
7
|
constructor();
|
|
7
8
|
connectedCallback(): Promise<void>;
|
|
8
9
|
private _setAttributes;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.js';
|
|
2
|
+
import { FeatureFlagUtils } from '@dreamcommerce/utilities';
|
|
2
3
|
import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
|
|
3
4
|
import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
|
|
4
5
|
import { Observer } from '../../core/classes/observer/observer.js';
|
|
@@ -18,15 +19,23 @@ let HAccordionToggler = class HAccordionToggler extends PhoenixLightLitElement {
|
|
|
18
19
|
this._emitTogglerClicked = () => {
|
|
19
20
|
this.emitCustomEvent(ACCORDION_EVENTS.toggle);
|
|
20
21
|
};
|
|
21
|
-
this.
|
|
22
|
+
this._isDevAccordionOptimizationFlagEnabled = FeatureFlagUtils.isEnabled('dev_accordion_optimization');
|
|
23
|
+
if (this._isDevAccordionOptimizationFlagEnabled) {
|
|
24
|
+
this.slot = this.hasAttribute('slot') ? this.slot : 'toggler';
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
this._contextConsumer = new ContextConsumerController(this);
|
|
28
|
+
}
|
|
22
29
|
}
|
|
23
30
|
async connectedCallback() {
|
|
24
31
|
super.connectedCallback();
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
32
|
+
if (!this._isDevAccordionOptimizationFlagEnabled) {
|
|
33
|
+
this._accordionGroupProps = await this._contextConsumer.consumeAsync(ACCORDION_CONTEXTS.accordionGroupProps);
|
|
34
|
+
this._accordionGroupPropsObserver = new Observer((accordionProps) => this._setAttributes(accordionProps));
|
|
35
|
+
this._accordionGroupProps.subscribe(this._accordionGroupPropsObserver);
|
|
36
|
+
this.addEventListener('click', this._emitTogglerClicked);
|
|
37
|
+
this.addEventListener('keydown', this._emitTogglerClickedWithKeyboard);
|
|
38
|
+
}
|
|
30
39
|
}
|
|
31
40
|
_setAttributes({ regionId, opened, controlsId, disabled }) {
|
|
32
41
|
this.setAttribute('id', regionId);
|
|
@@ -43,7 +52,7 @@ let HAccordionToggler = class HAccordionToggler extends PhoenixLightLitElement {
|
|
|
43
52
|
}
|
|
44
53
|
}
|
|
45
54
|
disconnectedCallback() {
|
|
46
|
-
if (this._accordionGroupProps) {
|
|
55
|
+
if (this._accordionGroupProps && !this._isDevAccordionOptimizationFlagEnabled) {
|
|
47
56
|
this._accordionGroupProps.unsubscribe(this._accordionGroupPropsObserver);
|
|
48
57
|
}
|
|
49
58
|
}
|
|
@@ -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;"}
|
|
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;"}
|
|
@@ -180,7 +180,8 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
|
|
|
180
180
|
};
|
|
181
181
|
const $options = Array.from(this.querySelectorAll(SELECT_RELATED_COMPONENTS_NAMES.option));
|
|
182
182
|
$options.forEach(($option) => $option.setAttribute('slot', SELECT_SLOT_NAMES.content));
|
|
183
|
-
|
|
183
|
+
const $placeholderEl = this.querySelector(`[slot="${SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
|
|
184
|
+
this.$placeholder = ($placeholderEl && ((_a = $placeholderEl.textContent) === null || _a === void 0 ? void 0 : _a.trim())) ? $placeholderEl : 'Select';
|
|
184
185
|
if (this.multiple)
|
|
185
186
|
this.type = SELECT_TYPES.multiple;
|
|
186
187
|
}
|
|
@@ -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,eAAe,wDAA4D;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,wDAA4D;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -7,8 +7,8 @@ import v4 from '../../../../../external/uuid/dist/esm-browser/v4.js';
|
|
|
7
7
|
import { PORTAL_TARGET_COMPONENT_NAME, PORTAL_TARGET_NAME_PROP, PORTAL_TARGET_ATTRIBUTE_NAME } from '../portal/portal_constants.js';
|
|
8
8
|
import { ClickOutsideController } from '../../controllers/click_outside_controller/click_outside_controller.js';
|
|
9
9
|
import { RelativePositionController } from '../../controllers/relative_position_controller/relative_position_controller.js';
|
|
10
|
-
import { DEFAULT_MESSAGE_PORTAL_NAME, DEFAULT_MESSAGE_OFFSET, LIST_OF_MESSAGE_CHILDREN, MESSAGE_SHOW_DELAY_IN_MS, MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS, MESSAGE_REMOVED_CLASS_NAME, MESSAGE_CLOSE_DELAY_IN_MS, MESSAGE_CONTENT_ELEMENTS, SCREEN_READER_ONLY_CLASS_NAME, MESSAGE_CONTENT_SLOT_NAME } from './base_message_constants.js';
|
|
11
10
|
import { createRef, ref } from 'lit/directives/ref';
|
|
11
|
+
import { DEFAULT_MESSAGE_PORTAL_NAME, DEFAULT_MESSAGE_OFFSET, LIST_OF_MESSAGE_CHILDREN, MESSAGE_SHOW_DELAY_IN_MS, MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS, MESSAGE_REMOVED_CLASS_NAME, MESSAGE_CLOSE_DELAY_IN_MS, MESSAGE_CONTENT_ELEMENTS, SCREEN_READER_ONLY_CLASS_NAME, MESSAGE_CONTENT_SLOT_NAME } from './base_message_constants.js';
|
|
12
12
|
|
|
13
13
|
class BaseMessage extends PhoenixLightLitElement {
|
|
14
14
|
constructor() {
|
|
@@ -71,7 +71,7 @@ export { HRadioControl } from './components/form/radio/radio_control.js';
|
|
|
71
71
|
export { TEXTAREA_CONTROL_CSS_CLASSES, TEXTAREA_CONTROL_EVENTS, TEXTAREA_PROPS_TO_SYNC, TEXTAREA_SLOTS } from './components/form/textarea/textarea_constants.js';
|
|
72
72
|
export { HTextarea } from './components/form/textarea/textarea.js';
|
|
73
73
|
export { HTextareaControl } from './components/form/textarea/textarea_control.js';
|
|
74
|
-
export { ACCORDION_CONTEXTS, ACCORDION_EVENTS, ACCORDION_MODE } from './components/accordion/accordion_constants.js';
|
|
74
|
+
export { ACCORDION_ANIMATION_DURATION, ACCORDION_CONTEXTS, ACCORDION_CSS_CLASSES, ACCORDION_EVENTS, ACCORDION_MODE } from './components/accordion/accordion_constants.js';
|
|
75
75
|
export { HAccordion } from './components/accordion/accordion.js';
|
|
76
76
|
export { HAccordionGroup } from './components/accordion/accordion_group.js';
|
|
77
77
|
export { HAccordionContent } from './components/accordion/accordion_content.js';
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { JsonUtils } from './json_utils.js';
|
|
2
|
+
|
|
3
|
+
class FeatureFlagUtils {
|
|
4
|
+
static _initialize() {
|
|
5
|
+
if (this._flags !== null)
|
|
6
|
+
return;
|
|
7
|
+
const $script = document.getElementById('featureFlags');
|
|
8
|
+
this._flags = $script ? this._toObjectFromJsonScriptTag($script) : null;
|
|
9
|
+
}
|
|
10
|
+
static _toObjectFromJsonScriptTag(scriptTag) {
|
|
11
|
+
const scriptContent = scriptTag.textContent;
|
|
12
|
+
return JsonUtils.fromJson(scriptContent) || {};
|
|
13
|
+
}
|
|
14
|
+
static isEnabled(flagName) {
|
|
15
|
+
this._initialize();
|
|
16
|
+
return !!this._flags[flagName];
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
FeatureFlagUtils._flags = null;
|
|
20
|
+
|
|
21
|
+
export { FeatureFlagUtils };
|
|
22
|
+
//# sourceMappingURL=feature_flag_utils.js.map
|