@shoper/phoenix_design_system 0.8.1 → 0.8.3-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.
Files changed (49) hide show
  1. package/build/cjs/packages/phoenix/src/components/backdrop/backdrop.js +91 -0
  2. package/build/cjs/packages/phoenix/src/components/{modal/modal_backdrop.js.map → backdrop/backdrop.js.map} +1 -1
  3. package/build/cjs/packages/phoenix/src/components/backdrop/backdrop_constants.js +17 -0
  4. package/build/cjs/packages/phoenix/src/components/backdrop/backdrop_constants.js.map +1 -0
  5. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js +62 -50
  6. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -1
  7. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_constants.js +0 -2
  8. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_constants.js.map +1 -1
  9. package/build/cjs/packages/phoenix/src/components/modal/modal.js +13 -10
  10. package/build/cjs/packages/phoenix/src/components/modal/modal.js.map +1 -1
  11. package/build/cjs/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller.js +4 -2
  12. package/build/cjs/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller.js.map +1 -1
  13. package/build/cjs/packages/phoenix/src/global_constants.js +9 -2
  14. package/build/cjs/packages/phoenix/src/global_constants.js.map +1 -1
  15. package/build/cjs/packages/phoenix/src/index.js +7 -7
  16. package/build/esm/packages/phoenix/src/components/backdrop/backdrop.d.ts +17 -0
  17. package/build/esm/packages/phoenix/src/components/backdrop/backdrop.js +89 -0
  18. package/build/esm/packages/phoenix/src/components/{modal/modal_backdrop.js.map → backdrop/backdrop.js.map} +1 -1
  19. package/build/esm/packages/phoenix/src/components/backdrop/backdrop_constants.d.ts +7 -0
  20. package/build/esm/packages/phoenix/src/components/backdrop/backdrop_constants.js +11 -0
  21. package/build/esm/packages/phoenix/src/components/backdrop/backdrop_constants.js.map +1 -0
  22. package/build/esm/packages/phoenix/src/components/backdrop/backdrop_types.d.ts +3 -0
  23. package/build/esm/packages/phoenix/src/components/backdrop/backdrop_types.js +2 -0
  24. package/build/esm/packages/phoenix/src/components/backdrop/backdrop_types.js.map +1 -0
  25. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.d.ts +4 -2
  26. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js +63 -51
  27. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -1
  28. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.d.ts +0 -1
  29. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.js +1 -2
  30. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.js.map +1 -1
  31. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_content.d.ts +1 -1
  32. package/build/esm/packages/phoenix/src/components/modal/modal.d.ts +1 -2
  33. package/build/esm/packages/phoenix/src/components/modal/modal.js +13 -10
  34. package/build/esm/packages/phoenix/src/components/modal/modal.js.map +1 -1
  35. package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller.js +4 -2
  36. package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller.js.map +1 -1
  37. package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller_types.d.ts +4 -0
  38. package/build/esm/packages/phoenix/src/global_constants.d.ts +8 -1
  39. package/build/esm/packages/phoenix/src/global_constants.js +9 -2
  40. package/build/esm/packages/phoenix/src/global_constants.js.map +1 -1
  41. package/build/esm/packages/phoenix/src/index.d.ts +1 -1
  42. package/build/esm/packages/phoenix/src/index.js +1 -1
  43. package/package.json +1 -1
  44. package/build/cjs/packages/phoenix/src/components/modal/modal_backdrop.js +0 -66
  45. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_backdrop.d.ts +0 -11
  46. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_backdrop.js +0 -54
  47. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_backdrop.js.map +0 -1
  48. package/build/esm/packages/phoenix/src/components/modal/modal_backdrop.d.ts +0 -12
  49. package/build/esm/packages/phoenix/src/components/modal/modal_backdrop.js +0 -64
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backdrop_types.js","sourceRoot":"","sources":["../../../../../../../src/components/backdrop/backdrop_types.ts"],"names":[],"mappings":""}
@@ -10,18 +10,20 @@ export declare class HDropdown extends PhoenixLightLitElement implements IDropdo
10
10
  portalTarget: string;
11
11
  $dropdownToggler: HTMLElement | null;
12
12
  $dropdownContent: HTMLElement | null;
13
+ $nestedDropdownContent: HTMLElement | null;
13
14
  private _positionController;
14
15
  private _clickOutsideController;
15
16
  connectedCallback(): void;
16
17
  private _appendDropdownPortal;
17
- private _appendDropdownBackdrop;
18
18
  private _setupListeners;
19
19
  private _handleClickOutside;
20
20
  toggle: () => void;
21
21
  show: () => Promise<void>;
22
+ private _dispatchShowDropdownEvent;
22
23
  hide: () => Promise<void>;
24
+ private _dispatchHideDropdownEvent;
23
25
  private _hoverToggle;
24
- private _isDescendantOfParent;
26
+ private _isHoveredWithinDropdown;
25
27
  private _positionDropdownContent;
26
28
  disconnectedCallback(): void;
27
29
  render(): TemplateResult;
@@ -4,11 +4,12 @@ import { property } from 'lit/decorators';
4
4
  import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element.js';
5
5
  import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
6
6
  import { PORTAL_TARGET_COMPONENT_NAME, PORTAL_TARGET_NAME_PROP } from '../portal/portal_constants.js';
7
- import { DEFAULT_DROPDOWN_PORTAL_NAME, DROPDOWN_EVENTS, DROPDOWN_CONTENT_VISIBLE_CLASS, DROPDOWN_CONTENT_SHOW, DROPDOWN_CONTENT_HIDE, DROPDOWN_CONTENT_NAME, DROPDOWN_TOGGLER_NAME, DROPDOWN_BACKDROP_NAME } from './dropdown_constants.js';
7
+ import { BACKDROP_EVENTS } from '../backdrop/backdrop_constants.js';
8
+ import { DEFAULT_DROPDOWN_PORTAL_NAME, DROPDOWN_CONTENT_VISIBLE_CLASS, DROPDOWN_CONTENT_SHOW, DROPDOWN_EVENTS, DROPDOWN_CONTENT_HIDE, DROPDOWN_CONTENT_NAME, DROPDOWN_TOGGLER_NAME, DROPDOWN_CONTAINER_NAME } from './dropdown_constants.js';
9
+ import { BREAKPOINTS } from '../../global_constants.js';
8
10
  import { CLICK_OUTSIDE_CONTROLLER_MESSAGES } from '../../controllers/click_outside_controller/click_outside_controller_messages.js';
9
11
  import { ClickOutsideController } from '../../controllers/click_outside_controller/click_outside_controller.js';
10
12
  import { DIRECTIONS } from '../../controllers/relative_position_controller/relative_position_controller_constants.js';
11
- import { MOBILE_SCREEN_WIDTH } from '../../global_constants.js';
12
13
  import { RelativePositionController } from '../../controllers/relative_position_controller/relative_position_controller.js';
13
14
 
14
15
  let HDropdown = class HDropdown extends PhoenixLightLitElement {
@@ -24,10 +25,6 @@ let HDropdown = class HDropdown extends PhoenixLightLitElement {
24
25
  this.opened ? this.hide() : this.show();
25
26
  };
26
27
  this.show = async () => {
27
- const showDropdownEvent = new Event(DROPDOWN_EVENTS.show, {
28
- bubbles: true
29
- });
30
- this.dispatchEvent(showDropdownEvent);
31
28
  return new Promise((resolve) => {
32
29
  var _a;
33
30
  (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.add(DROPDOWN_CONTENT_VISIBLE_CLASS, `${DROPDOWN_CONTENT_SHOW}-${this.transition}-start`);
@@ -40,42 +37,60 @@ let HDropdown = class HDropdown extends PhoenixLightLitElement {
40
37
  setTimeout(() => {
41
38
  var _a;
42
39
  this.opened = true;
43
- this.dispatchEvent(showDropdownEvent);
40
+ this._dispatchShowDropdownEvent();
44
41
  (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.remove(`${DROPDOWN_CONTENT_SHOW}-${this.transition}-start`, `${DROPDOWN_CONTENT_SHOW}-${this.transition}-end`);
45
42
  resolve();
46
43
  }, transitionDuration);
47
44
  });
48
45
  });
49
46
  };
50
- this.hide = async () => {
47
+ this._dispatchShowDropdownEvent = () => {
48
+ const showDropdownEvent = new Event(DROPDOWN_EVENTS.show, {
49
+ bubbles: true
50
+ });
51
+ this.dispatchEvent(showDropdownEvent);
52
+ if (window.innerWidth >= BREAKPOINTS.xs)
53
+ return;
54
+ const showBackdropEvent = new Event(BACKDROP_EVENTS.show, {
55
+ bubbles: true
56
+ });
57
+ document.dispatchEvent(showBackdropEvent);
58
+ };
59
+ this.hide = async () => new Promise((resolve) => {
60
+ const transitionDuration = parseFloat(getComputedStyle(this.$dropdownContent || this).transitionDuration) * 1000;
61
+ window.requestAnimationFrame(() => {
62
+ var _a, _b;
63
+ (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.remove(`${DROPDOWN_CONTENT_HIDE}-${this.transition}-start`);
64
+ (_b = this.$dropdownContent) === null || _b === void 0 ? void 0 : _b.classList.add(`${DROPDOWN_CONTENT_HIDE}-${this.transition}-end`);
65
+ setTimeout(() => {
66
+ var _a;
67
+ (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.remove(`${DROPDOWN_CONTENT_HIDE}-${this.transition}-start`, `${DROPDOWN_CONTENT_HIDE}-${this.transition}-end`);
68
+ this.opened = false;
69
+ this._dispatchHideDropdownEvent();
70
+ resolve();
71
+ }, transitionDuration);
72
+ });
73
+ });
74
+ this._dispatchHideDropdownEvent = () => {
51
75
  const hideDropdownEvent = new Event(DROPDOWN_EVENTS.hide, {
52
76
  bubbles: true
53
77
  });
54
- return new Promise((resolve) => {
55
- const transitionDuration = parseFloat(getComputedStyle(this.$dropdownContent || this).transitionDuration) * 1000;
56
- window.requestAnimationFrame(() => {
57
- var _a, _b;
58
- (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.remove(`${DROPDOWN_CONTENT_HIDE}-${this.transition}-start`);
59
- (_b = this.$dropdownContent) === null || _b === void 0 ? void 0 : _b.classList.add(`${DROPDOWN_CONTENT_HIDE}-${this.transition}-end`);
60
- setTimeout(() => {
61
- var _a;
62
- (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.remove(`${DROPDOWN_CONTENT_HIDE}-${this.transition}-start`, `${DROPDOWN_CONTENT_HIDE}-${this.transition}-end`);
63
- this.opened = false;
64
- this.dispatchEvent(hideDropdownEvent);
65
- resolve();
66
- }, transitionDuration);
67
- });
78
+ this.dispatchEvent(hideDropdownEvent);
79
+ if (window.innerWidth >= BREAKPOINTS.xs)
80
+ return;
81
+ const hideBackdropEvent = new Event(BACKDROP_EVENTS.hide, {
82
+ bubbles: true
68
83
  });
84
+ document.dispatchEvent(hideBackdropEvent);
69
85
  };
70
86
  this._hoverToggle = async (ev) => {
87
+ if (window.innerWidth < BREAKPOINTS.xs)
88
+ return;
71
89
  if (!ev.target) {
72
90
  await this.hide();
73
91
  return;
74
92
  }
75
- const isHoveredWithinDropdown = this._isDescendantOfParent(this, ev.target) ||
76
- (this.$dropdownContent && this._isDescendantOfParent(this.$dropdownContent, ev.target)) ||
77
- ev.target === this ||
78
- ev.target === this.$dropdownContent;
93
+ const isHoveredWithinDropdown = this._isHoveredWithinDropdown(ev.target);
79
94
  if (isHoveredWithinDropdown && !this.opened) {
80
95
  await this.show();
81
96
  return;
@@ -85,15 +100,6 @@ let HDropdown = class HDropdown extends PhoenixLightLitElement {
85
100
  return;
86
101
  }
87
102
  };
88
- this._isDescendantOfParent = function (parent, child) {
89
- let parentNode = child.parentNode;
90
- while (parentNode) {
91
- if (parentNode === parent)
92
- return true;
93
- parentNode = parentNode.parentNode;
94
- }
95
- return false;
96
- };
97
103
  this._positionDropdownContent = () => {
98
104
  requestAnimationFrame(() => {
99
105
  this.opened && this._positionController.position();
@@ -103,11 +109,13 @@ let HDropdown = class HDropdown extends PhoenixLightLitElement {
103
109
  connectedCallback() {
104
110
  super.connectedCallback();
105
111
  this._appendDropdownPortal();
106
- this._appendDropdownBackdrop();
107
112
  if (!this.$dropdownContent)
108
113
  this.$dropdownContent = this.querySelector(DROPDOWN_CONTENT_NAME);
109
114
  if (!this.$dropdownToggler)
110
115
  this.$dropdownToggler = this.querySelector(DROPDOWN_TOGGLER_NAME);
116
+ const nestedDropdown = this.$dropdownContent.querySelector(DROPDOWN_CONTAINER_NAME);
117
+ if (nestedDropdown)
118
+ this.$nestedDropdownContent = nestedDropdown.querySelector(DROPDOWN_CONTENT_NAME);
111
119
  if (!this._positionController)
112
120
  this._positionController = new RelativePositionController({
113
121
  host: this,
@@ -131,36 +139,40 @@ let HDropdown = class HDropdown extends PhoenixLightLitElement {
131
139
  document.body.appendChild($portalTarget);
132
140
  }
133
141
  }
134
- _appendDropdownBackdrop() {
135
- const $dropdownBackdrop = document.querySelector(DROPDOWN_BACKDROP_NAME);
136
- if (!$dropdownBackdrop) {
137
- const $backdrop = document.createElement(DROPDOWN_BACKDROP_NAME);
138
- document.body.appendChild($backdrop);
139
- }
140
- }
141
142
  _setupListeners() {
142
143
  var _a;
143
144
  this.addEventListener(CLICK_OUTSIDE_CONTROLLER_MESSAGES.clickedOutside, this._handleClickOutside);
144
145
  (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.addEventListener('toggle', this.toggle);
145
- if (this.toggleOnHover && window.innerWidth > MOBILE_SCREEN_WIDTH) {
146
+ if (this.toggleOnHover)
146
147
  document.addEventListener('mouseover', this._hoverToggle);
147
- }
148
148
  }
149
- _handleClickOutside() {
150
- var _a;
149
+ _handleClickOutside(ev) {
150
+ var _a, _b;
151
151
  if (!this.opened)
152
152
  return;
153
- this.hide();
154
- (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-expanded', 'false');
153
+ const target = ev.detail.target;
154
+ const clickedWithinNestedDropdown = this.$nestedDropdownContent && this.$nestedDropdownContent.contains(target);
155
+ const shouldHideElements = !((_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.contains(target)) && !this.contains(target) && !clickedWithinNestedDropdown;
156
+ if (shouldHideElements) {
157
+ this.hide();
158
+ (_b = this.$dropdownToggler) === null || _b === void 0 ? void 0 : _b.setAttribute('aria-expanded', 'false');
159
+ }
160
+ }
161
+ _isHoveredWithinDropdown(element) {
162
+ const isDescendantOfDropdown = element.closest(`${DROPDOWN_CONTAINER_NAME}[name="${this.name}"]`) !== null;
163
+ const isDescendantOfContent = this.$dropdownContent && element.closest(`${DROPDOWN_CONTENT_NAME}[name="${this.name}"]`) !== null;
164
+ return isDescendantOfDropdown || isDescendantOfContent || element === this || element === this.$dropdownContent;
155
165
  }
156
166
  disconnectedCallback() {
157
167
  var _a;
158
168
  super.disconnectedCallback();
159
169
  (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.removeEventListener('toggle', this.toggle);
160
- if (this.toggleOnHover && window.innerWidth > MOBILE_SCREEN_WIDTH) {
170
+ if (this.toggleOnHover)
161
171
  document.removeEventListener('mouseover', this._hoverToggle);
172
+ if (this.opened) {
173
+ this.opened = false;
174
+ this._dispatchHideDropdownEvent();
162
175
  }
163
- this.opened = false;
164
176
  }
165
177
  render() {
166
178
  super.render();
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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 @@ export declare const DROPDOWN_NAME = "dropdown";
2
2
  export declare const DROPDOWN_CONTAINER_NAME: string;
3
3
  export declare const DROPDOWN_TOGGLER_NAME: string;
4
4
  export declare const DROPDOWN_CONTENT_NAME: string;
5
- export declare const DROPDOWN_BACKDROP_NAME: string;
6
5
  export declare const DEFAULT_DROPDOWN_PORTAL_NAME = "dropdown-portal";
7
6
  export declare const DROPDOWN_EVENTS: {
8
7
  readonly show: "dropdown.show";
@@ -2,7 +2,6 @@ const DROPDOWN_NAME = 'dropdown';
2
2
  const DROPDOWN_CONTAINER_NAME = `h-${DROPDOWN_NAME}`;
3
3
  const DROPDOWN_TOGGLER_NAME = `${DROPDOWN_CONTAINER_NAME}-toggler`;
4
4
  const DROPDOWN_CONTENT_NAME = `${DROPDOWN_CONTAINER_NAME}-content`;
5
- const DROPDOWN_BACKDROP_NAME = `${DROPDOWN_CONTAINER_NAME}-backdrop`;
6
5
  const DEFAULT_DROPDOWN_PORTAL_NAME = 'dropdown-portal';
7
6
  const DROPDOWN_EVENT = 'dropdown';
8
7
  const DROPDOWN_EVENTS = {
@@ -17,5 +16,5 @@ const DROPDOWN_CONTENT_VISIBLE_CLASS = `${DROPDOWN_CONTENT_CLASS}_visible`;
17
16
  const DROPDOWN_CONTENT_SHOW = `${DROPDOWN_CONTENT_CLASS}_show`;
18
17
  const DROPDOWN_CONTENT_HIDE = `${DROPDOWN_CONTENT_CLASS}_hide`;
19
18
 
20
- export { DEFAULT_DROPDOWN_PORTAL_NAME, DROPDOWN_BACKDROP_NAME, DROPDOWN_CLASS, DROPDOWN_CONTAINER_NAME, DROPDOWN_CONTENT_CLASS, DROPDOWN_CONTENT_HIDE, DROPDOWN_CONTENT_NAME, DROPDOWN_CONTENT_SHOW, DROPDOWN_CONTENT_VISIBLE_CLASS, DROPDOWN_EVENTS, DROPDOWN_NAME, DROPDOWN_OPENED_ATTRIBUTE_NAME, DROPDOWN_TOGGLER_CLASS, DROPDOWN_TOGGLER_NAME };
19
+ export { DEFAULT_DROPDOWN_PORTAL_NAME, DROPDOWN_CLASS, DROPDOWN_CONTAINER_NAME, DROPDOWN_CONTENT_CLASS, DROPDOWN_CONTENT_HIDE, DROPDOWN_CONTENT_NAME, DROPDOWN_CONTENT_SHOW, DROPDOWN_CONTENT_VISIBLE_CLASS, DROPDOWN_EVENTS, DROPDOWN_NAME, DROPDOWN_OPENED_ATTRIBUTE_NAME, DROPDOWN_TOGGLER_CLASS, DROPDOWN_TOGGLER_NAME };
21
20
  //# sourceMappingURL=dropdown_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;"}
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;"}
@@ -1,5 +1,5 @@
1
- import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element";
2
1
  import { TemplateResult } from 'lit';
2
+ import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element";
3
3
  export declare class HDropdownContent extends PhoenixLightLitElement {
4
4
  constructor();
5
5
  protected render(): TemplateResult;
@@ -1,4 +1,4 @@
1
- import { TemplateResult, PropertyValues } from 'lit';
1
+ import { PropertyValues, TemplateResult } from 'lit';
2
2
  import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element";
3
3
  export declare class HModal extends PhoenixLightLitElement {
4
4
  opened: boolean;
@@ -13,7 +13,6 @@ export declare class HModal extends PhoenixLightLitElement {
13
13
  private _propsChangeStrategies;
14
14
  private static openModals;
15
15
  private static _appendModalsPortal;
16
- private static _appendModalsBackdrop;
17
16
  static isSomeModalOpen(): boolean;
18
17
  constructor();
19
18
  connectedCallback(): void;
@@ -6,6 +6,7 @@ import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_eleme
6
6
  import { PORTAL_TARGET_NAME_PROP } from '../portal/portal_constants.js';
7
7
  import { MODAL_OPENED_PROP, FOCUSABLE_ELEMENTS_WITHIN_MODAL, MODALS_PORTAL_NAME, MODAL_EVENTS } from './modal_constants.js';
8
8
  import { createRef as e, ref as n } from '../../../../../external/lit-html/directives/ref.js';
9
+ import { BACKDROP_EVENTS } from '../backdrop/backdrop_constants.js';
9
10
 
10
11
  var HModal_1;
11
12
  let HModal = HModal_1 = class HModal extends PhoenixLightLitElement {
@@ -89,26 +90,21 @@ let HModal = HModal_1 = class HModal extends PhoenixLightLitElement {
89
90
  document.body.appendChild($portalTarget);
90
91
  }
91
92
  }
92
- static _appendModalsBackdrop() {
93
- const $modalsBackdrop = document.querySelector('h-modal-backdrop');
94
- if (!$modalsBackdrop) {
95
- const $backdrop = document.createElement('h-modal-backdrop');
96
- document.body.appendChild($backdrop);
97
- }
98
- }
99
93
  static isSomeModalOpen() {
100
94
  return HModal_1.openModals.some((modal) => modal.opened);
101
95
  }
102
96
  connectedCallback() {
103
97
  super.connectedCallback();
104
98
  HModal_1._appendModalsPortal();
105
- HModal_1._appendModalsBackdrop();
106
99
  document.addEventListener('keydown', this._keepFocusWithinModal);
107
100
  document.addEventListener(MODAL_EVENTS.close, this._handleCloseFromCloseComponent);
108
101
  }
109
102
  disconnectedCallback() {
110
103
  super.disconnectedCallback();
111
- this[MODAL_OPENED_PROP] = false;
104
+ if (this[MODAL_OPENED_PROP]) {
105
+ this[MODAL_OPENED_PROP] = false;
106
+ this._dispatchModalClosedEvent();
107
+ }
112
108
  document.removeEventListener(MODAL_EVENTS.close, this._handleCloseFromCloseComponent);
113
109
  document.removeEventListener('keydown', this._bindCloseOnEsc);
114
110
  }
@@ -135,7 +131,6 @@ let HModal = HModal_1 = class HModal extends PhoenixLightLitElement {
135
131
  setTimeout(() => {
136
132
  var _a;
137
133
  this[MODAL_OPENED_PROP] = true;
138
- this._dispatchModalOpenedEvent();
139
134
  (_a = this._contentRef.value) === null || _a === void 0 ? void 0 : _a.classList.remove(`modal_show-${this.transition}-start`, `modal_show-${this.transition}-end`);
140
135
  resolve();
141
136
  }, transitionDuration);
@@ -147,6 +142,10 @@ let HModal = HModal_1 = class HModal extends PhoenixLightLitElement {
147
142
  bubbles: true
148
143
  });
149
144
  this.dispatchEvent(openModalEvent);
145
+ const openBackdropEvent = new CustomEvent(BACKDROP_EVENTS.show, {
146
+ bubbles: true
147
+ });
148
+ document.dispatchEvent(openBackdropEvent);
150
149
  }
151
150
  async close() {
152
151
  return new Promise((resolve) => {
@@ -170,6 +169,10 @@ let HModal = HModal_1 = class HModal extends PhoenixLightLitElement {
170
169
  bubbles: true
171
170
  });
172
171
  this.dispatchEvent(closeModalEvent);
172
+ const closeBackdropEvent = new CustomEvent(BACKDROP_EVENTS.hide, {
173
+ bubbles: true
174
+ });
175
+ document.dispatchEvent(closeBackdropEvent);
173
176
  }
174
177
  render() {
175
178
  return html `
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,oDAAwD;AACjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,yCAAyC,oDAAwD;AACjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -15,8 +15,10 @@ class ClickOutsideController {
15
15
  name: this._name
16
16
  }
17
17
  });
18
- const { target } = ev;
19
- if (target.contains(__classPrivateFieldGet(this, _ClickOutsideController_container, "f"))) {
18
+ const target = ev.target;
19
+ const isContainerWithinTarget = target.contains(__classPrivateFieldGet(this, _ClickOutsideController_container, "f")) && target !== __classPrivateFieldGet(this, _ClickOutsideController_container, "f");
20
+ const isTargetWithinContainer = __classPrivateFieldGet(this, _ClickOutsideController_container, "f").contains(target);
21
+ if (isContainerWithinTarget || !isTargetWithinContainer) {
20
22
  __classPrivateFieldGet(this, _ClickOutsideController_host, "f").dispatchEvent(clickedOutsideEvent);
21
23
  }
22
24
  };
@@ -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;"}
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;"}
@@ -4,3 +4,7 @@ export declare type TClickOutsideControllerProps = {
4
4
  container: HTMLElement;
5
5
  name?: string;
6
6
  };
7
+ export declare type TClickOutsideEvent = {
8
+ target: EventTarget | null;
9
+ name?: string;
10
+ };
@@ -1 +1,8 @@
1
- export declare const MOBILE_SCREEN_WIDTH = 575;
1
+ export declare const BREAKPOINTS: {
2
+ xs: number;
3
+ sm: number;
4
+ md: number;
5
+ lg: number;
6
+ xl: number;
7
+ xxl: number;
8
+ };
@@ -1,4 +1,11 @@
1
- const MOBILE_SCREEN_WIDTH = 575;
1
+ const BREAKPOINTS = {
2
+ xs: 576,
3
+ sm: 768,
4
+ md: 1000,
5
+ lg: 1200,
6
+ xl: 1440,
7
+ xxl: 1920
8
+ };
2
9
 
3
- export { MOBILE_SCREEN_WIDTH };
10
+ export { BREAKPOINTS };
4
11
  //# sourceMappingURL=global_constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -7,7 +7,6 @@ export { HPortal } from './components/portal/portal';
7
7
  export { HPortalTarget } from './components/portal/portal_target';
8
8
  export { HModal } from './components/modal/modal';
9
9
  export { HModalOpener } from './components/modal/modal_opener';
10
- export { HModalBackdrop } from './components/modal/modal_backdrop';
11
10
  export { HModalBody } from './components/modal/modal_body';
12
11
  export { HModalFooter } from './components/modal/modal_footer';
13
12
  export { HModalHeader } from './components/modal/modal_header';
@@ -20,3 +19,4 @@ export { ClickOutsideController } from './controllers/click_outside_controller/c
20
19
  export { KeystrokesController } from './controllers/keystrokes_controller/keystrokes_controller';
21
20
  export { RelativePositionController } from './controllers/relative_position_controller/relative_position_controller';
22
21
  export { ToggleElementAriaController } from './controllers/toggle_element_aria_controller/toggle_element_aria_controller';
22
+ export { HBackdrop } from './components/backdrop/backdrop';
@@ -6,7 +6,6 @@ export { HPortalTarget } from './components/portal/portal_target.js';
6
6
  export { HPortal } from './components/portal/portal.js';
7
7
  export { HModal } from './components/modal/modal.js';
8
8
  export { HModalOpener } from './components/modal/modal_opener.js';
9
- export { HModalBackdrop } from './components/modal/modal_backdrop.js';
10
9
  export { HModalBody } from './components/modal/modal_body.js';
11
10
  export { HModalFooter } from './components/modal/modal_footer.js';
12
11
  export { HModalHeader } from './components/modal/modal_header.js';
@@ -19,4 +18,5 @@ export { HDropdown } from './components/dropdown/dropdown.js';
19
18
  export { ToggleElementAriaController } from './controllers/toggle_element_aria_controller/toggle_element_aria_controller.js';
20
19
  export { HDropdownToggler } from './components/dropdown/dropdown_toggler.js';
21
20
  export { HDropdownContent } from './components/dropdown/dropdown_content.js';
21
+ export { HBackdrop } from './components/backdrop/backdrop.js';
22
22
  //# sourceMappingURL=index.js.map
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": "0.8.1",
5
+ "version": "0.8.3-0",
6
6
  "description": "phoenix design system",
7
7
  "author": "zefirek",
8
8
  "license": "MIT",
@@ -1,66 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var tslib_es6 = require('../../../../../external/tslib/tslib.es6.js');
6
- var lit = require('lit');
7
- var decorators = require('lit/decorators');
8
- var phoenix_light_lit_element = require('../../core/phoenix_light_lit_element.js');
9
- var phoenix_custom_element = require('../../core/decorators/phoenix_custom_element.js');
10
- var modal_constants = require('./modal_constants.js');
11
- var modal = require('./modal.js');
12
-
13
- exports.HModalBackdrop = class HModalBackdrop extends phoenix_light_lit_element.PhoenixLightLitElement {
14
- constructor() {
15
- super(...arguments);
16
- this.visible = false;
17
- this._show = () => {
18
- if (!this.visible) {
19
- this.visible = true;
20
- }
21
- };
22
- this._hide = () => {
23
- if (!modal.HModal.isSomeModalOpen()) {
24
- this.visible = false;
25
- }
26
- };
27
- }
28
- connectedCallback() {
29
- super.connectedCallback();
30
- document.addEventListener(modal_constants.MODAL_EVENTS.opened, this._show);
31
- document.addEventListener(modal_constants.MODAL_EVENTS.closed, this._hide);
32
- }
33
- disconnectedCallback() {
34
- super.disconnectedCallback();
35
- document.removeEventListener(modal_constants.MODAL_EVENTS.opened, this._show);
36
- document.removeEventListener(modal_constants.MODAL_EVENTS.closed, this._hide);
37
- }
38
- updated() {
39
- if (modal.HModal.isSomeModalOpen()) {
40
- this.visible = true;
41
- this._disableScrolling();
42
- }
43
- else {
44
- this._enableScrolling();
45
- }
46
- }
47
- _disableScrolling() {
48
- document.body.style.overflow = 'hidden';
49
- document.body.style.paddingRight = '15px';
50
- }
51
- _enableScrolling() {
52
- document.body.style.removeProperty('overflow');
53
- document.body.style.removeProperty('padding-right');
54
- }
55
- render() {
56
- return lit.html ` <div aria-hidden="true" ?hidden="${!this.visible}" class="modal-backdrop"></div>`;
57
- }
58
- };
59
- tslib_es6.__decorate([
60
- decorators.property({ type: Boolean }),
61
- tslib_es6.__metadata("design:type", Object)
62
- ], exports.HModalBackdrop.prototype, "visible", void 0);
63
- exports.HModalBackdrop = tslib_es6.__decorate([
64
- phoenix_custom_element.phoenixCustomElement('h-modal-backdrop')
65
- ], exports.HModalBackdrop);
66
- //# sourceMappingURL=modal_backdrop.js.map
@@ -1,11 +0,0 @@
1
- import { TemplateResult } from 'lit';
2
- import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element";
3
- export declare class HDropdownBackdrop extends PhoenixLightLitElement {
4
- visible: boolean;
5
- connectedCallback(): void;
6
- disconnectedCallback(): void;
7
- private _show;
8
- private _hide;
9
- private _closeDropdown;
10
- protected render(): TemplateResult;
11
- }
@@ -1,54 +0,0 @@
1
- import { __decorate, __metadata } from "tslib";
2
- import { DROPDOWN_BACKDROP_CLASS, DROPDOWN_CONTAINER_NAME, DROPDOWN_EVENTS } from '@phoenixRoot/components/dropdown/dropdown_constants';
3
- import { html } from 'lit';
4
- import './dropdown_types';
5
- import { PhoenixLightLitElement } from '@phoenixRoot/core/phoenix_light_lit_element';
6
- import { phoenixCustomElement } from '@phoenixRoot/core/decorators/phoenix_custom_element';
7
- import { property } from 'lit/decorators';
8
- let HDropdownBackdrop = class HDropdownBackdrop extends PhoenixLightLitElement {
9
- constructor() {
10
- super(...arguments);
11
- this.visible = false;
12
- this._show = () => {
13
- this.visible = true;
14
- };
15
- this._hide = () => {
16
- this.visible = false;
17
- };
18
- this._closeDropdown = () => {
19
- const dropdowns = document.querySelectorAll(DROPDOWN_CONTAINER_NAME);
20
- dropdowns.forEach((dropdown) => {
21
- const opened = dropdown.getAttribute('opened');
22
- if (opened !== null)
23
- dropdown.hide();
24
- });
25
- };
26
- }
27
- connectedCallback() {
28
- super.connectedCallback();
29
- document.addEventListener(DROPDOWN_EVENTS.show, this._show);
30
- document.addEventListener(DROPDOWN_EVENTS.hide, this._hide);
31
- }
32
- disconnectedCallback() {
33
- super.disconnectedCallback();
34
- document.removeEventListener(DROPDOWN_EVENTS.show, this._show);
35
- document.removeEventListener(DROPDOWN_EVENTS.hide, this._hide);
36
- }
37
- render() {
38
- return html ` <div
39
- aria-hidden="true"
40
- ?hidden="${!this.visible}"
41
- @click="${this._closeDropdown}"
42
- class="${DROPDOWN_BACKDROP_CLASS}"
43
- ></div>`;
44
- }
45
- };
46
- __decorate([
47
- property({ type: Boolean }),
48
- __metadata("design:type", Object)
49
- ], HDropdownBackdrop.prototype, "visible", void 0);
50
- HDropdownBackdrop = __decorate([
51
- phoenixCustomElement('h-dropdown-backdrop')
52
- ], HDropdownBackdrop);
53
- export { HDropdownBackdrop };
54
- //# sourceMappingURL=dropdown_backdrop.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dropdown_backdrop.js","sourceRoot":"","sources":["../../../../../../../src/components/dropdown/dropdown_backdrop.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,qDAAqD,CAAC;AACxI,OAAO,EAAkB,IAAI,EAAE,MAAM,KAAK,CAAC;AAE3C,OAA0B,kBAAkB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAC;AAC3F,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C,IAAa,iBAAiB,GAA9B,MAAa,iBAAkB,SAAQ,sBAAsB;IAA7D;;QAEI,YAAO,GAAG,KAAK,CAAC;QAgBR,UAAK,GAAG,GAAG,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACxB,CAAC,CAAC;QAEM,UAAK,GAAG,GAAG,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACzB,CAAC,CAAC;QAEM,mBAAc,GAAG,GAAG,EAAE;YAC1B,MAAM,SAAS,GAAG,QAAQ,CAAC,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;YAErE,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAC3B,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;gBAC/C,IAAI,MAAM,KAAK,IAAI;oBAAG,QAAiC,CAAC,IAAI,EAAE,CAAC;YACnE,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;IAUN,CAAC;IAvCU,iBAAiB;QACpB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAE1B,QAAQ,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5D,QAAQ,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAChE,CAAC;IAEM,oBAAoB;QACvB,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAE7B,QAAQ,CAAC,mBAAmB,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/D,QAAQ,CAAC,mBAAmB,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACnE,CAAC;IAmBS,MAAM;QACZ,OAAO,IAAI,CAAA;;uBAEI,CAAC,IAAI,CAAC,OAAO;sBACd,IAAI,CAAC,cAAc;qBACpB,uBAAuB;gBAC5B,CAAC;IACb,CAAC;CACJ,CAAA;AAzCG;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;;kDACZ;AAFP,iBAAiB;IAD7B,oBAAoB,CAAC,qBAAqB,CAAC;GAC/B,iBAAiB,CA2C7B;SA3CY,iBAAiB"}
@@ -1,12 +0,0 @@
1
- import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element";
2
- export declare class HModalBackdrop extends PhoenixLightLitElement {
3
- visible: boolean;
4
- connectedCallback(): void;
5
- disconnectedCallback(): void;
6
- private _show;
7
- private _hide;
8
- protected updated(): void;
9
- private _disableScrolling;
10
- private _enableScrolling;
11
- render(): import("lit-html").TemplateResult<1>;
12
- }