@shoper/phoenix_design_system 0.8.3-0 → 0.9.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.
Files changed (86) hide show
  1. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js +21 -102
  2. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -1
  3. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_constants.js +1 -9
  4. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_constants.js.map +1 -1
  5. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_toggler.js +0 -1
  6. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_toggler.js.map +1 -1
  7. package/build/cjs/packages/phoenix/src/components/form_controls/control.js +19 -0
  8. package/build/cjs/packages/phoenix/src/components/form_controls/control.js.map +1 -0
  9. package/build/cjs/packages/phoenix/src/components/form_controls/control_additional_content.js +28 -0
  10. package/build/cjs/packages/phoenix/src/components/form_controls/control_additional_content.js.map +1 -0
  11. package/build/cjs/packages/phoenix/src/components/form_controls/control_content.js +28 -0
  12. package/build/cjs/packages/phoenix/src/components/form_controls/control_content.js.map +1 -0
  13. package/build/cjs/packages/phoenix/src/components/form_controls/control_element.js +19 -0
  14. package/build/cjs/packages/phoenix/src/components/form_controls/control_element.js.map +1 -0
  15. package/build/cjs/packages/phoenix/src/components/form_controls/control_label.js +19 -0
  16. package/build/cjs/packages/phoenix/src/components/form_controls/control_label.js.map +1 -0
  17. package/build/cjs/packages/phoenix/src/components/form_controls/form_controls_constatns.js +32 -0
  18. package/build/{esm/packages/phoenix/src/components/backdrop/backdrop_constants.js.map → cjs/packages/phoenix/src/components/form_controls/form_controls_constatns.js.map} +1 -1
  19. package/build/cjs/packages/phoenix/src/components/modal/modal.js +10 -13
  20. package/build/cjs/packages/phoenix/src/components/modal/modal.js.map +1 -1
  21. package/build/cjs/packages/phoenix/src/components/modal/modal_backdrop.js +66 -0
  22. package/build/cjs/packages/phoenix/src/components/{backdrop/backdrop.js.map → modal/modal_backdrop.js.map} +1 -1
  23. package/build/cjs/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller.js +2 -4
  24. package/build/cjs/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller.js.map +1 -1
  25. package/build/cjs/packages/phoenix/src/index.js +42 -7
  26. package/build/cjs/packages/phoenix/src/index.js.map +1 -1
  27. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.d.ts +3 -9
  28. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js +22 -103
  29. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -1
  30. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.d.ts +0 -5
  31. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.js +2 -6
  32. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.js.map +1 -1
  33. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_content.d.ts +1 -1
  34. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.js +1 -2
  35. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.js.map +1 -1
  36. package/build/esm/packages/phoenix/src/components/form_controls/control.d.ts +4 -0
  37. package/build/esm/packages/phoenix/src/components/form_controls/control.js +17 -0
  38. package/build/esm/packages/phoenix/src/components/form_controls/control.js.map +1 -0
  39. package/build/esm/packages/phoenix/src/components/form_controls/control_additional_content.d.ts +6 -0
  40. package/build/esm/packages/phoenix/src/components/form_controls/control_additional_content.js +26 -0
  41. package/build/esm/packages/phoenix/src/components/form_controls/control_additional_content.js.map +1 -0
  42. package/build/esm/packages/phoenix/src/components/form_controls/control_content.d.ts +6 -0
  43. package/build/esm/packages/phoenix/src/components/form_controls/control_content.js +26 -0
  44. package/build/esm/packages/phoenix/src/components/form_controls/control_content.js.map +1 -0
  45. package/build/esm/packages/phoenix/src/components/form_controls/control_element.d.ts +4 -0
  46. package/build/esm/packages/phoenix/src/components/form_controls/control_element.js +17 -0
  47. package/build/esm/packages/phoenix/src/components/form_controls/control_element.js.map +1 -0
  48. package/build/esm/packages/phoenix/src/components/form_controls/control_errors.d.ts +4 -0
  49. package/build/esm/packages/phoenix/src/components/form_controls/control_errors.js +15 -0
  50. package/build/esm/packages/phoenix/src/components/form_controls/control_errors.js.map +1 -0
  51. package/build/esm/packages/phoenix/src/components/form_controls/control_label.d.ts +4 -0
  52. package/build/esm/packages/phoenix/src/components/form_controls/control_label.js +17 -0
  53. package/build/esm/packages/phoenix/src/components/form_controls/control_label.js.map +1 -0
  54. package/build/esm/packages/phoenix/src/components/form_controls/form_controls_constatns.d.ts +21 -0
  55. package/build/esm/packages/phoenix/src/components/form_controls/form_controls_constatns.js +25 -0
  56. package/build/{cjs/packages/phoenix/src/global_constants.js.map → esm/packages/phoenix/src/components/form_controls/form_controls_constatns.js.map} +1 -1
  57. package/build/esm/packages/phoenix/src/components/form_controls/form_controls_types.d.ts +4 -0
  58. package/build/esm/packages/phoenix/src/components/form_controls/form_controls_types.js +3 -0
  59. package/build/esm/packages/phoenix/src/components/form_controls/form_controls_types.js.map +1 -0
  60. package/build/esm/packages/phoenix/src/components/modal/modal.d.ts +2 -1
  61. package/build/esm/packages/phoenix/src/components/modal/modal.js +10 -13
  62. package/build/esm/packages/phoenix/src/components/modal/modal.js.map +1 -1
  63. package/build/esm/packages/phoenix/src/components/modal/modal_backdrop.d.ts +12 -0
  64. package/build/esm/packages/phoenix/src/components/modal/modal_backdrop.js +64 -0
  65. package/build/esm/packages/phoenix/src/components/{backdrop/backdrop.js.map → modal/modal_backdrop.js.map} +1 -1
  66. package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller.js +2 -4
  67. package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller.js.map +1 -1
  68. package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller_types.d.ts +0 -4
  69. package/build/esm/packages/phoenix/src/index.d.ts +6 -1
  70. package/build/esm/packages/phoenix/src/index.js +6 -1
  71. package/build/esm/packages/phoenix/src/index.js.map +1 -1
  72. package/package.json +1 -1
  73. package/build/cjs/packages/phoenix/src/components/backdrop/backdrop.js +0 -91
  74. package/build/cjs/packages/phoenix/src/components/backdrop/backdrop_constants.js +0 -17
  75. package/build/cjs/packages/phoenix/src/components/backdrop/backdrop_constants.js.map +0 -1
  76. package/build/cjs/packages/phoenix/src/global_constants.js +0 -15
  77. package/build/esm/packages/phoenix/src/components/backdrop/backdrop.d.ts +0 -17
  78. package/build/esm/packages/phoenix/src/components/backdrop/backdrop.js +0 -89
  79. package/build/esm/packages/phoenix/src/components/backdrop/backdrop_constants.d.ts +0 -7
  80. package/build/esm/packages/phoenix/src/components/backdrop/backdrop_constants.js +0 -11
  81. package/build/esm/packages/phoenix/src/components/backdrop/backdrop_types.d.ts +0 -3
  82. package/build/esm/packages/phoenix/src/components/backdrop/backdrop_types.js +0 -2
  83. package/build/esm/packages/phoenix/src/components/backdrop/backdrop_types.js.map +0 -1
  84. package/build/esm/packages/phoenix/src/global_constants.d.ts +0 -8
  85. package/build/esm/packages/phoenix/src/global_constants.js +0 -11
  86. package/build/esm/packages/phoenix/src/global_constants.js.map +0 -1
@@ -8,9 +8,7 @@ var decorators = require('lit/decorators');
8
8
  var phoenix_light_lit_element = require('../../core/phoenix_light_lit_element.js');
9
9
  var phoenix_custom_element = require('../../core/decorators/phoenix_custom_element.js');
10
10
  var portal_constants = require('../portal/portal_constants.js');
11
- var backdrop_constants = require('../backdrop/backdrop_constants.js');
12
11
  var dropdown_constants = require('./dropdown_constants.js');
13
- var global_constants = require('../../global_constants.js');
14
12
  var click_outside_controller_messages = require('../../controllers/click_outside_controller/click_outside_controller_messages.js');
15
13
  var click_outside_controller = require('../../controllers/click_outside_controller/click_outside_controller.js');
16
14
  var relative_position_controller_constants = require('../../controllers/relative_position_controller/relative_position_controller_constants.js');
@@ -23,86 +21,23 @@ exports.HDropdown = class HDropdown extends phoenix_light_lit_element.PhoenixLig
23
21
  this.direction = relative_position_controller_constants.DIRECTIONS.bottomCenter;
24
22
  this.toggleOnHover = false;
25
23
  this.name = '';
26
- this.transition = 'direction';
27
24
  this.portalTarget = dropdown_constants.DEFAULT_DROPDOWN_PORTAL_NAME;
28
25
  this.toggle = () => {
29
26
  this.opened ? this.hide() : this.show();
30
27
  };
31
- this.show = async () => {
32
- return new Promise((resolve) => {
33
- var _a;
34
- (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.add(dropdown_constants.DROPDOWN_CONTENT_VISIBLE_CLASS, `${dropdown_constants.DROPDOWN_CONTENT_SHOW}-${this.transition}-start`);
35
- window.requestAnimationFrame(() => {
36
- setTimeout(() => {
37
- var _a;
38
- (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.add(`${dropdown_constants.DROPDOWN_CONTENT_SHOW}-${this.transition}-end`);
39
- }, 0);
40
- const transitionDuration = parseFloat(getComputedStyle(this.$dropdownContent || this).transitionDuration) * 1000;
41
- setTimeout(() => {
42
- var _a;
43
- this.opened = true;
44
- this._dispatchShowDropdownEvent();
45
- (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.remove(`${dropdown_constants.DROPDOWN_CONTENT_SHOW}-${this.transition}-start`, `${dropdown_constants.DROPDOWN_CONTENT_SHOW}-${this.transition}-end`);
46
- resolve();
47
- }, transitionDuration);
48
- });
49
- });
50
- };
51
- this._dispatchShowDropdownEvent = () => {
28
+ this.show = () => {
29
+ this.opened = true;
52
30
  const showDropdownEvent = new Event(dropdown_constants.DROPDOWN_EVENTS.show, {
53
31
  bubbles: true
54
32
  });
55
33
  this.dispatchEvent(showDropdownEvent);
56
- if (window.innerWidth >= global_constants.BREAKPOINTS.xs)
57
- return;
58
- const showBackdropEvent = new Event(backdrop_constants.BACKDROP_EVENTS.show, {
59
- bubbles: true
60
- });
61
- document.dispatchEvent(showBackdropEvent);
62
34
  };
63
- this.hide = async () => new Promise((resolve) => {
64
- const transitionDuration = parseFloat(getComputedStyle(this.$dropdownContent || this).transitionDuration) * 1000;
65
- window.requestAnimationFrame(() => {
66
- var _a, _b;
67
- (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.remove(`${dropdown_constants.DROPDOWN_CONTENT_HIDE}-${this.transition}-start`);
68
- (_b = this.$dropdownContent) === null || _b === void 0 ? void 0 : _b.classList.add(`${dropdown_constants.DROPDOWN_CONTENT_HIDE}-${this.transition}-end`);
69
- setTimeout(() => {
70
- var _a;
71
- (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.remove(`${dropdown_constants.DROPDOWN_CONTENT_HIDE}-${this.transition}-start`, `${dropdown_constants.DROPDOWN_CONTENT_HIDE}-${this.transition}-end`);
72
- this.opened = false;
73
- this._dispatchHideDropdownEvent();
74
- resolve();
75
- }, transitionDuration);
76
- });
77
- });
78
- this._dispatchHideDropdownEvent = () => {
35
+ this.hide = () => {
36
+ this.opened = false;
79
37
  const hideDropdownEvent = new Event(dropdown_constants.DROPDOWN_EVENTS.hide, {
80
38
  bubbles: true
81
39
  });
82
40
  this.dispatchEvent(hideDropdownEvent);
83
- if (window.innerWidth >= global_constants.BREAKPOINTS.xs)
84
- return;
85
- const hideBackdropEvent = new Event(backdrop_constants.BACKDROP_EVENTS.hide, {
86
- bubbles: true
87
- });
88
- document.dispatchEvent(hideBackdropEvent);
89
- };
90
- this._hoverToggle = async (ev) => {
91
- if (window.innerWidth < global_constants.BREAKPOINTS.xs)
92
- return;
93
- if (!ev.target) {
94
- await this.hide();
95
- return;
96
- }
97
- const isHoveredWithinDropdown = this._isHoveredWithinDropdown(ev.target);
98
- if (isHoveredWithinDropdown && !this.opened) {
99
- await this.show();
100
- return;
101
- }
102
- if (!isHoveredWithinDropdown && this.opened) {
103
- await this.hide();
104
- return;
105
- }
106
41
  };
107
42
  this._positionDropdownContent = () => {
108
43
  requestAnimationFrame(() => {
@@ -117,9 +52,6 @@ exports.HDropdown = class HDropdown extends phoenix_light_lit_element.PhoenixLig
117
52
  this.$dropdownContent = this.querySelector(dropdown_constants.DROPDOWN_CONTENT_NAME);
118
53
  if (!this.$dropdownToggler)
119
54
  this.$dropdownToggler = this.querySelector(dropdown_constants.DROPDOWN_TOGGLER_NAME);
120
- const nestedDropdown = this.$dropdownContent.querySelector(dropdown_constants.DROPDOWN_CONTAINER_NAME);
121
- if (nestedDropdown)
122
- this.$nestedDropdownContent = nestedDropdown.querySelector(dropdown_constants.DROPDOWN_CONTENT_NAME);
123
55
  if (!this._positionController)
124
56
  this._positionController = new relative_position_controller.RelativePositionController({
125
57
  host: this,
@@ -135,6 +67,15 @@ exports.HDropdown = class HDropdown extends phoenix_light_lit_element.PhoenixLig
135
67
  });
136
68
  this._setupListeners();
137
69
  }
70
+ _setupListeners() {
71
+ var _a, _b, _c;
72
+ this.addEventListener(click_outside_controller_messages.CLICK_OUTSIDE_CONTROLLER_MESSAGES.clickedOutside, this._handleClickOutside);
73
+ (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.addEventListener('toggle', this.toggle);
74
+ if (this.toggleOnHover) {
75
+ (_b = this.$dropdownToggler) === null || _b === void 0 ? void 0 : _b.addEventListener('mouseenter', this.show);
76
+ (_c = this.$dropdownToggler) === null || _c === void 0 ? void 0 : _c.addEventListener('mouseleave', this.hide);
77
+ }
78
+ }
138
79
  _appendDropdownPortal() {
139
80
  const $dropdownPortalTarget = document.querySelector(`[name="${dropdown_constants.DEFAULT_DROPDOWN_PORTAL_NAME}"]`);
140
81
  if (!$dropdownPortalTarget) {
@@ -143,40 +84,22 @@ exports.HDropdown = class HDropdown extends phoenix_light_lit_element.PhoenixLig
143
84
  document.body.appendChild($portalTarget);
144
85
  }
145
86
  }
146
- _setupListeners() {
87
+ _handleClickOutside() {
147
88
  var _a;
148
- this.addEventListener(click_outside_controller_messages.CLICK_OUTSIDE_CONTROLLER_MESSAGES.clickedOutside, this._handleClickOutside);
149
- (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.addEventListener('toggle', this.toggle);
150
- if (this.toggleOnHover)
151
- document.addEventListener('mouseover', this._hoverToggle);
152
- }
153
- _handleClickOutside(ev) {
154
- var _a, _b;
155
89
  if (!this.opened)
156
90
  return;
157
- const target = ev.detail.target;
158
- const clickedWithinNestedDropdown = this.$nestedDropdownContent && this.$nestedDropdownContent.contains(target);
159
- const shouldHideElements = !((_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.contains(target)) && !this.contains(target) && !clickedWithinNestedDropdown;
160
- if (shouldHideElements) {
161
- this.hide();
162
- (_b = this.$dropdownToggler) === null || _b === void 0 ? void 0 : _b.setAttribute('aria-expanded', 'false');
163
- }
164
- }
165
- _isHoveredWithinDropdown(element) {
166
- const isDescendantOfDropdown = element.closest(`${dropdown_constants.DROPDOWN_CONTAINER_NAME}[name="${this.name}"]`) !== null;
167
- const isDescendantOfContent = this.$dropdownContent && element.closest(`${dropdown_constants.DROPDOWN_CONTENT_NAME}[name="${this.name}"]`) !== null;
168
- return isDescendantOfDropdown || isDescendantOfContent || element === this || element === this.$dropdownContent;
91
+ this.hide();
92
+ (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-expanded', 'false');
169
93
  }
170
94
  disconnectedCallback() {
171
- var _a;
95
+ var _a, _b, _c;
172
96
  super.disconnectedCallback();
173
97
  (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.removeEventListener('toggle', this.toggle);
174
- if (this.toggleOnHover)
175
- document.removeEventListener('mouseover', this._hoverToggle);
176
- if (this.opened) {
177
- this.opened = false;
178
- this._dispatchHideDropdownEvent();
98
+ if (this.toggleOnHover) {
99
+ (_b = this.$dropdownToggler) === null || _b === void 0 ? void 0 : _b.removeEventListener('mouseenter', this.show);
100
+ (_c = this.$dropdownToggler) === null || _c === void 0 ? void 0 : _c.removeEventListener('mouseleave', this.hide);
179
101
  }
102
+ this.opened = false;
180
103
  }
181
104
  render() {
182
105
  super.render();
@@ -204,10 +127,6 @@ tslib_es6.__decorate([
204
127
  decorators.property({ type: String }),
205
128
  tslib_es6.__metadata("design:type", Object)
206
129
  ], exports.HDropdown.prototype, "name", void 0);
207
- tslib_es6.__decorate([
208
- decorators.property({ type: String }),
209
- tslib_es6.__metadata("design:type", Object)
210
- ], exports.HDropdown.prototype, "transition", void 0);
211
130
  tslib_es6.__decorate([
212
131
  decorators.property({ type: String }),
213
132
  tslib_es6.__metadata("design:type", Object)
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,4CAAgD;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,4CAAgD;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -14,23 +14,15 @@ const DROPDOWN_EVENTS = {
14
14
  };
15
15
  const DROPDOWN_OPENED_ATTRIBUTE_NAME = 'opened';
16
16
  const DROPDOWN_CLASS = 'dropdown';
17
- const DROPDOWN_CONTENT_CLASS = `${DROPDOWN_CLASS}__content`;
18
- const DROPDOWN_TOGGLER_CLASS = `${DROPDOWN_CLASS}__toggler`;
19
- const DROPDOWN_CONTENT_VISIBLE_CLASS = `${DROPDOWN_CONTENT_CLASS}_visible`;
20
- const DROPDOWN_CONTENT_SHOW = `${DROPDOWN_CONTENT_CLASS}_show`;
21
- const DROPDOWN_CONTENT_HIDE = `${DROPDOWN_CONTENT_CLASS}_hide`;
17
+ const DROPDOWN_CONTENT_CLASS = `${DROPDOWN_CLASS}__content`;
22
18
 
23
19
  exports.DEFAULT_DROPDOWN_PORTAL_NAME = DEFAULT_DROPDOWN_PORTAL_NAME;
24
20
  exports.DROPDOWN_CLASS = DROPDOWN_CLASS;
25
21
  exports.DROPDOWN_CONTAINER_NAME = DROPDOWN_CONTAINER_NAME;
26
22
  exports.DROPDOWN_CONTENT_CLASS = DROPDOWN_CONTENT_CLASS;
27
- exports.DROPDOWN_CONTENT_HIDE = DROPDOWN_CONTENT_HIDE;
28
23
  exports.DROPDOWN_CONTENT_NAME = DROPDOWN_CONTENT_NAME;
29
- exports.DROPDOWN_CONTENT_SHOW = DROPDOWN_CONTENT_SHOW;
30
- exports.DROPDOWN_CONTENT_VISIBLE_CLASS = DROPDOWN_CONTENT_VISIBLE_CLASS;
31
24
  exports.DROPDOWN_EVENTS = DROPDOWN_EVENTS;
32
25
  exports.DROPDOWN_NAME = DROPDOWN_NAME;
33
26
  exports.DROPDOWN_OPENED_ATTRIBUTE_NAME = DROPDOWN_OPENED_ATTRIBUTE_NAME;
34
- exports.DROPDOWN_TOGGLER_CLASS = DROPDOWN_TOGGLER_CLASS;
35
27
  exports.DROPDOWN_TOGGLER_NAME = DROPDOWN_TOGGLER_NAME;
36
28
  //# 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;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;"}
@@ -23,7 +23,6 @@ exports.HDropdownToggler = class HDropdownToggler extends phoenix_light_lit_elem
23
23
  this._toggleElementAriaController.toggleAriaExpandedAttribute();
24
24
  };
25
25
  this.slot = this.hasAttribute('slot') ? this.slot : 'toggler';
26
- this.className = `${dropdown_constants.DROPDOWN_TOGGLER_CLASS} ${this.className}`;
27
26
  }
28
27
  connectedCallback() {
29
28
  super.connectedCallback();
@@ -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;"}
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;"}
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib_es6 = require('../../../../../external/tslib/tslib.es6.js');
6
+ var phoenix_light_lit_element = require('../../core/phoenix_light_lit_element.js');
7
+ var phoenix_custom_element = require('../../core/decorators/phoenix_custom_element.js');
8
+ var form_controls_constatns = require('./form_controls_constatns.js');
9
+
10
+ exports.HControl = class HControl extends phoenix_light_lit_element.PhoenixLightLitElement {
11
+ connectedCallback() {
12
+ super.connectedCallback();
13
+ this.classList.add(form_controls_constatns.FORM_CONTROLS_CSS_CLASSES.control);
14
+ }
15
+ };
16
+ exports.HControl = tslib_es6.__decorate([
17
+ phoenix_custom_element.phoenixCustomElement('h-control')
18
+ ], exports.HControl);
19
+ //# sourceMappingURL=control.js.map
@@ -0,0 +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;"}
@@ -0,0 +1,28 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib_es6 = require('../../../../../external/tslib/tslib.es6.js');
6
+ var decorators = require('lit/decorators');
7
+ var phoenix_light_lit_element = require('../../core/phoenix_light_lit_element.js');
8
+ var phoenix_custom_element = require('../../core/decorators/phoenix_custom_element.js');
9
+ var form_controls_constatns = require('./form_controls_constatns.js');
10
+
11
+ exports.HControlAdditionalContent = class HControlAdditionalContent extends phoenix_light_lit_element.PhoenixLightLitElement {
12
+ constructor() {
13
+ super(...arguments);
14
+ this.type = form_controls_constatns.CONTROL_ADDITIONAL_CONTENT_TYPES.text;
15
+ }
16
+ connectedCallback() {
17
+ super.connectedCallback();
18
+ this.classList.add(form_controls_constatns.FORM_CONTROLS_CSS_CLASSES.additionalContent, form_controls_constatns.ADDITIONAL_CONTENT_TYPE_TO_CSS_CLASSES_MAP[this.type]);
19
+ }
20
+ };
21
+ tslib_es6.__decorate([
22
+ decorators.property({ type: String }),
23
+ tslib_es6.__metadata("design:type", String)
24
+ ], exports.HControlAdditionalContent.prototype, "type", void 0);
25
+ exports.HControlAdditionalContent = tslib_es6.__decorate([
26
+ phoenix_custom_element.phoenixCustomElement('h-control-additional-content')
27
+ ], exports.HControlAdditionalContent);
28
+ //# sourceMappingURL=control_additional_content.js.map
@@ -0,0 +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;"}
@@ -0,0 +1,28 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib_es6 = require('../../../../../external/tslib/tslib.es6.js');
6
+ var decorators = require('lit/decorators');
7
+ var phoenix_light_lit_element = require('../../core/phoenix_light_lit_element.js');
8
+ var phoenix_custom_element = require('../../core/decorators/phoenix_custom_element.js');
9
+ var form_controls_constatns = require('./form_controls_constatns.js');
10
+
11
+ exports.HControlContent = class HControlContent extends phoenix_light_lit_element.PhoenixLightLitElement {
12
+ constructor() {
13
+ super(...arguments);
14
+ this.size = form_controls_constatns.CONTROL_CONTENT_SIZES.full;
15
+ }
16
+ connectedCallback() {
17
+ super.connectedCallback();
18
+ this.classList.add(form_controls_constatns.FORM_CONTROLS_CSS_CLASSES.control);
19
+ }
20
+ };
21
+ tslib_es6.__decorate([
22
+ decorators.property({ type: String }),
23
+ tslib_es6.__metadata("design:type", String)
24
+ ], exports.HControlContent.prototype, "size", void 0);
25
+ exports.HControlContent = tslib_es6.__decorate([
26
+ phoenix_custom_element.phoenixCustomElement('h-control-content')
27
+ ], exports.HControlContent);
28
+ //# sourceMappingURL=control_content.js.map
@@ -0,0 +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;"}
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib_es6 = require('../../../../../external/tslib/tslib.es6.js');
6
+ var phoenix_light_lit_element = require('../../core/phoenix_light_lit_element.js');
7
+ var phoenix_custom_element = require('../../core/decorators/phoenix_custom_element.js');
8
+ var form_controls_constatns = require('./form_controls_constatns.js');
9
+
10
+ exports.HControlElement = class HControlElement extends phoenix_light_lit_element.PhoenixLightLitElement {
11
+ connectedCallback() {
12
+ super.connectedCallback();
13
+ this.classList.add(form_controls_constatns.FORM_CONTROLS_CSS_CLASSES.controlElement);
14
+ }
15
+ };
16
+ exports.HControlElement = tslib_es6.__decorate([
17
+ phoenix_custom_element.phoenixCustomElement('h-control-element')
18
+ ], exports.HControlElement);
19
+ //# sourceMappingURL=control_element.js.map
@@ -0,0 +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;"}
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib_es6 = require('../../../../../external/tslib/tslib.es6.js');
6
+ var phoenix_light_lit_element = require('../../core/phoenix_light_lit_element.js');
7
+ var phoenix_custom_element = require('../../core/decorators/phoenix_custom_element.js');
8
+ var form_controls_constatns = require('./form_controls_constatns.js');
9
+
10
+ exports.HControlLabel = class HControlLabel extends phoenix_light_lit_element.PhoenixLightLitElement {
11
+ connectedCallback() {
12
+ super.connectedCallback();
13
+ this.classList.add(form_controls_constatns.FORM_CONTROLS_CSS_CLASSES.controlLabel);
14
+ }
15
+ };
16
+ exports.HControlLabel = tslib_es6.__decorate([
17
+ phoenix_custom_element.phoenixCustomElement('h-control-label')
18
+ ], exports.HControlLabel);
19
+ //# sourceMappingURL=control_label.js.map
@@ -0,0 +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;"}
@@ -0,0 +1,32 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const CONTROL_CONTENT_SIZES = {
6
+ auto: 'auto',
7
+ full: 'full',
8
+ half: 'half',
9
+ quarter: 'quarter',
10
+ threeQuarters: 'three-quarters'
11
+ };
12
+ const baseControlClass = 'control';
13
+ const FORM_CONTROLS_CSS_CLASSES = {
14
+ control: baseControlClass,
15
+ controlContent: `${baseControlClass}__content`,
16
+ controlElement: `${baseControlClass}__element`,
17
+ controlLabel: `${baseControlClass}__label`,
18
+ controlErrors: `${baseControlClass}__errors`,
19
+ additionalContent: `${baseControlClass}__additional-content`
20
+ };
21
+ const CONTROL_ADDITIONAL_CONTENT_TYPES = {
22
+ text: 'text'
23
+ };
24
+ const ADDITIONAL_CONTENT_TYPE_TO_CSS_CLASSES_MAP = {
25
+ [CONTROL_ADDITIONAL_CONTENT_TYPES.text]: `${FORM_CONTROLS_CSS_CLASSES.additionalContent}_type-text`
26
+ };
27
+
28
+ exports.ADDITIONAL_CONTENT_TYPE_TO_CSS_CLASSES_MAP = ADDITIONAL_CONTENT_TYPE_TO_CSS_CLASSES_MAP;
29
+ exports.CONTROL_ADDITIONAL_CONTENT_TYPES = CONTROL_ADDITIONAL_CONTENT_TYPES;
30
+ exports.CONTROL_CONTENT_SIZES = CONTROL_CONTENT_SIZES;
31
+ exports.FORM_CONTROLS_CSS_CLASSES = FORM_CONTROLS_CSS_CLASSES;
32
+ //# sourceMappingURL=form_controls_constatns.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;"}
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;"}
@@ -10,7 +10,6 @@ var phoenix_custom_element = require('../../core/decorators/phoenix_custom_eleme
10
10
  var portal_constants = require('../portal/portal_constants.js');
11
11
  var modal_constants = require('./modal_constants.js');
12
12
  var ref = require('../../../../../external/lit-html/directives/ref.js');
13
- var backdrop_constants = require('../backdrop/backdrop_constants.js');
14
13
 
15
14
  var HModal_1;
16
15
  exports.HModal = HModal_1 = class HModal extends phoenix_light_lit_element.PhoenixLightLitElement {
@@ -94,21 +93,26 @@ exports.HModal = HModal_1 = class HModal extends phoenix_light_lit_element.Phoen
94
93
  document.body.appendChild($portalTarget);
95
94
  }
96
95
  }
96
+ static _appendModalsBackdrop() {
97
+ const $modalsBackdrop = document.querySelector('h-modal-backdrop');
98
+ if (!$modalsBackdrop) {
99
+ const $backdrop = document.createElement('h-modal-backdrop');
100
+ document.body.appendChild($backdrop);
101
+ }
102
+ }
97
103
  static isSomeModalOpen() {
98
104
  return HModal_1.openModals.some((modal) => modal.opened);
99
105
  }
100
106
  connectedCallback() {
101
107
  super.connectedCallback();
102
108
  HModal_1._appendModalsPortal();
109
+ HModal_1._appendModalsBackdrop();
103
110
  document.addEventListener('keydown', this._keepFocusWithinModal);
104
111
  document.addEventListener(modal_constants.MODAL_EVENTS.close, this._handleCloseFromCloseComponent);
105
112
  }
106
113
  disconnectedCallback() {
107
114
  super.disconnectedCallback();
108
- if (this[modal_constants.MODAL_OPENED_PROP]) {
109
- this[modal_constants.MODAL_OPENED_PROP] = false;
110
- this._dispatchModalClosedEvent();
111
- }
115
+ this[modal_constants.MODAL_OPENED_PROP] = false;
112
116
  document.removeEventListener(modal_constants.MODAL_EVENTS.close, this._handleCloseFromCloseComponent);
113
117
  document.removeEventListener('keydown', this._bindCloseOnEsc);
114
118
  }
@@ -135,6 +139,7 @@ exports.HModal = HModal_1 = class HModal extends phoenix_light_lit_element.Phoen
135
139
  setTimeout(() => {
136
140
  var _a;
137
141
  this[modal_constants.MODAL_OPENED_PROP] = true;
142
+ this._dispatchModalOpenedEvent();
138
143
  (_a = this._contentRef.value) === null || _a === void 0 ? void 0 : _a.classList.remove(`modal_show-${this.transition}-start`, `modal_show-${this.transition}-end`);
139
144
  resolve();
140
145
  }, transitionDuration);
@@ -146,10 +151,6 @@ exports.HModal = HModal_1 = class HModal extends phoenix_light_lit_element.Phoen
146
151
  bubbles: true
147
152
  });
148
153
  this.dispatchEvent(openModalEvent);
149
- const openBackdropEvent = new CustomEvent(backdrop_constants.BACKDROP_EVENTS.show, {
150
- bubbles: true
151
- });
152
- document.dispatchEvent(openBackdropEvent);
153
154
  }
154
155
  async close() {
155
156
  return new Promise((resolve) => {
@@ -173,10 +174,6 @@ exports.HModal = HModal_1 = class HModal extends phoenix_light_lit_element.Phoen
173
174
  bubbles: true
174
175
  });
175
176
  this.dispatchEvent(closeModalEvent);
176
- const closeBackdropEvent = new CustomEvent(backdrop_constants.BACKDROP_EVENTS.hide, {
177
- bubbles: true
178
- });
179
- document.dispatchEvent(closeBackdropEvent);
180
177
  }
181
178
  render() {
182
179
  return lit.html `
@@ -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,kBAAkB,oDAAwD;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,kBAAkB,oDAAwD;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,66 @@
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 +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;"}
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;"}
@@ -19,10 +19,8 @@ class ClickOutsideController {
19
19
  name: this._name
20
20
  }
21
21
  });
22
- const target = ev.target;
23
- const isContainerWithinTarget = target.contains(tslib_es6.__classPrivateFieldGet(this, _ClickOutsideController_container, "f")) && target !== tslib_es6.__classPrivateFieldGet(this, _ClickOutsideController_container, "f");
24
- const isTargetWithinContainer = tslib_es6.__classPrivateFieldGet(this, _ClickOutsideController_container, "f").contains(target);
25
- if (isContainerWithinTarget || !isTargetWithinContainer) {
22
+ const { target } = ev;
23
+ if (target.contains(tslib_es6.__classPrivateFieldGet(this, _ClickOutsideController_container, "f"))) {
26
24
  tslib_es6.__classPrivateFieldGet(this, _ClickOutsideController_host, "f").dispatchEvent(clickedOutsideEvent);
27
25
  }
28
26
  };
@@ -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;"}
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;"}