@shoper/phoenix_design_system 0.8.1 → 0.9.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 (64) hide show
  1. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js +18 -87
  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 -11
  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 +27 -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 +27 -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/cjs/packages/phoenix/src/components/form_controls/form_controls_constatns.js.map +1 -0
  19. package/build/cjs/packages/phoenix/src/index.js +35 -0
  20. package/build/cjs/packages/phoenix/src/index.js.map +1 -1
  21. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.d.ts +3 -7
  22. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js +19 -88
  23. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -1
  24. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.d.ts +0 -6
  25. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.js +2 -7
  26. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.js.map +1 -1
  27. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.js +1 -2
  28. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.js.map +1 -1
  29. package/build/esm/packages/phoenix/src/components/form_controls/control.d.ts +4 -0
  30. package/build/esm/packages/phoenix/src/components/form_controls/control.js +17 -0
  31. package/build/esm/packages/phoenix/src/components/form_controls/control.js.map +1 -0
  32. package/build/esm/packages/phoenix/src/components/form_controls/control_additional_content.d.ts +6 -0
  33. package/build/esm/packages/phoenix/src/components/form_controls/control_additional_content.js +25 -0
  34. package/build/esm/packages/phoenix/src/components/form_controls/control_additional_content.js.map +1 -0
  35. package/build/esm/packages/phoenix/src/components/form_controls/control_content.d.ts +6 -0
  36. package/build/esm/packages/phoenix/src/components/form_controls/control_content.js +25 -0
  37. package/build/esm/packages/phoenix/src/components/form_controls/control_content.js.map +1 -0
  38. package/build/esm/packages/phoenix/src/components/form_controls/control_element.d.ts +4 -0
  39. package/build/esm/packages/phoenix/src/components/form_controls/control_element.js +17 -0
  40. package/build/esm/packages/phoenix/src/components/form_controls/control_element.js.map +1 -0
  41. package/build/esm/packages/phoenix/src/components/form_controls/control_errors.d.ts +4 -0
  42. package/build/esm/packages/phoenix/src/components/form_controls/control_errors.js +15 -0
  43. package/build/esm/packages/phoenix/src/components/form_controls/control_errors.js.map +1 -0
  44. package/build/esm/packages/phoenix/src/components/form_controls/control_label.d.ts +4 -0
  45. package/build/esm/packages/phoenix/src/components/form_controls/control_label.js +17 -0
  46. package/build/esm/packages/phoenix/src/components/form_controls/control_label.js.map +1 -0
  47. package/build/esm/packages/phoenix/src/components/form_controls/form_controls_constatns.d.ts +21 -0
  48. package/build/esm/packages/phoenix/src/components/form_controls/form_controls_constatns.js +25 -0
  49. package/build/esm/packages/phoenix/src/components/form_controls/form_controls_constatns.js.map +1 -0
  50. package/build/esm/packages/phoenix/src/components/form_controls/form_controls_types.d.ts +4 -0
  51. package/build/esm/packages/phoenix/src/components/form_controls/form_controls_types.js +3 -0
  52. package/build/esm/packages/phoenix/src/components/form_controls/form_controls_types.js.map +1 -0
  53. package/build/esm/packages/phoenix/src/index.d.ts +5 -0
  54. package/build/esm/packages/phoenix/src/index.js +5 -0
  55. package/build/esm/packages/phoenix/src/index.js.map +1 -1
  56. package/package.json +1 -1
  57. package/build/cjs/packages/phoenix/src/global_constants.js +0 -8
  58. package/build/cjs/packages/phoenix/src/global_constants.js.map +0 -1
  59. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_backdrop.d.ts +0 -11
  60. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_backdrop.js +0 -54
  61. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_backdrop.js.map +0 -1
  62. package/build/esm/packages/phoenix/src/global_constants.d.ts +0 -1
  63. package/build/esm/packages/phoenix/src/global_constants.js +0 -4
  64. package/build/esm/packages/phoenix/src/global_constants.js.map +0 -1
@@ -12,7 +12,6 @@ var dropdown_constants = require('./dropdown_constants.js');
12
12
  var click_outside_controller_messages = require('../../controllers/click_outside_controller/click_outside_controller_messages.js');
13
13
  var click_outside_controller = require('../../controllers/click_outside_controller/click_outside_controller.js');
14
14
  var relative_position_controller_constants = require('../../controllers/relative_position_controller/relative_position_controller_constants.js');
15
- var global_constants = require('../../global_constants.js');
16
15
  var relative_position_controller = require('../../controllers/relative_position_controller/relative_position_controller.js');
17
16
 
18
17
  exports.HDropdown = class HDropdown extends phoenix_light_lit_element.PhoenixLightLitElement {
@@ -22,81 +21,23 @@ exports.HDropdown = class HDropdown extends phoenix_light_lit_element.PhoenixLig
22
21
  this.direction = relative_position_controller_constants.DIRECTIONS.bottomCenter;
23
22
  this.toggleOnHover = false;
24
23
  this.name = '';
25
- this.transition = 'direction';
26
24
  this.portalTarget = dropdown_constants.DEFAULT_DROPDOWN_PORTAL_NAME;
27
25
  this.toggle = () => {
28
26
  this.opened ? this.hide() : this.show();
29
27
  };
30
- this.show = async () => {
28
+ this.show = () => {
29
+ this.opened = true;
31
30
  const showDropdownEvent = new Event(dropdown_constants.DROPDOWN_EVENTS.show, {
32
31
  bubbles: true
33
32
  });
34
33
  this.dispatchEvent(showDropdownEvent);
35
- return new Promise((resolve) => {
36
- var _a;
37
- (_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`);
38
- window.requestAnimationFrame(() => {
39
- setTimeout(() => {
40
- var _a;
41
- (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.add(`${dropdown_constants.DROPDOWN_CONTENT_SHOW}-${this.transition}-end`);
42
- }, 0);
43
- const transitionDuration = parseFloat(getComputedStyle(this.$dropdownContent || this).transitionDuration) * 1000;
44
- setTimeout(() => {
45
- var _a;
46
- this.opened = true;
47
- this.dispatchEvent(showDropdownEvent);
48
- (_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`);
49
- resolve();
50
- }, transitionDuration);
51
- });
52
- });
53
34
  };
54
- this.hide = async () => {
35
+ this.hide = () => {
36
+ this.opened = false;
55
37
  const hideDropdownEvent = new Event(dropdown_constants.DROPDOWN_EVENTS.hide, {
56
38
  bubbles: true
57
39
  });
58
- return new Promise((resolve) => {
59
- const transitionDuration = parseFloat(getComputedStyle(this.$dropdownContent || this).transitionDuration) * 1000;
60
- window.requestAnimationFrame(() => {
61
- var _a, _b;
62
- (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.remove(`${dropdown_constants.DROPDOWN_CONTENT_HIDE}-${this.transition}-start`);
63
- (_b = this.$dropdownContent) === null || _b === void 0 ? void 0 : _b.classList.add(`${dropdown_constants.DROPDOWN_CONTENT_HIDE}-${this.transition}-end`);
64
- setTimeout(() => {
65
- var _a;
66
- (_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`);
67
- this.opened = false;
68
- this.dispatchEvent(hideDropdownEvent);
69
- resolve();
70
- }, transitionDuration);
71
- });
72
- });
73
- };
74
- this._hoverToggle = async (ev) => {
75
- if (!ev.target) {
76
- await this.hide();
77
- return;
78
- }
79
- const isHoveredWithinDropdown = this._isDescendantOfParent(this, ev.target) ||
80
- (this.$dropdownContent && this._isDescendantOfParent(this.$dropdownContent, ev.target)) ||
81
- ev.target === this ||
82
- ev.target === this.$dropdownContent;
83
- if (isHoveredWithinDropdown && !this.opened) {
84
- await this.show();
85
- return;
86
- }
87
- if (!isHoveredWithinDropdown && this.opened) {
88
- await this.hide();
89
- return;
90
- }
91
- };
92
- this._isDescendantOfParent = function (parent, child) {
93
- let parentNode = child.parentNode;
94
- while (parentNode) {
95
- if (parentNode === parent)
96
- return true;
97
- parentNode = parentNode.parentNode;
98
- }
99
- return false;
40
+ this.dispatchEvent(hideDropdownEvent);
100
41
  };
101
42
  this._positionDropdownContent = () => {
102
43
  requestAnimationFrame(() => {
@@ -107,7 +48,6 @@ exports.HDropdown = class HDropdown extends phoenix_light_lit_element.PhoenixLig
107
48
  connectedCallback() {
108
49
  super.connectedCallback();
109
50
  this._appendDropdownPortal();
110
- this._appendDropdownBackdrop();
111
51
  if (!this.$dropdownContent)
112
52
  this.$dropdownContent = this.querySelector(dropdown_constants.DROPDOWN_CONTENT_NAME);
113
53
  if (!this.$dropdownToggler)
@@ -127,6 +67,15 @@ exports.HDropdown = class HDropdown extends phoenix_light_lit_element.PhoenixLig
127
67
  });
128
68
  this._setupListeners();
129
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
+ }
130
79
  _appendDropdownPortal() {
131
80
  const $dropdownPortalTarget = document.querySelector(`[name="${dropdown_constants.DEFAULT_DROPDOWN_PORTAL_NAME}"]`);
132
81
  if (!$dropdownPortalTarget) {
@@ -135,21 +84,6 @@ exports.HDropdown = class HDropdown extends phoenix_light_lit_element.PhoenixLig
135
84
  document.body.appendChild($portalTarget);
136
85
  }
137
86
  }
138
- _appendDropdownBackdrop() {
139
- const $dropdownBackdrop = document.querySelector(dropdown_constants.DROPDOWN_BACKDROP_NAME);
140
- if (!$dropdownBackdrop) {
141
- const $backdrop = document.createElement(dropdown_constants.DROPDOWN_BACKDROP_NAME);
142
- document.body.appendChild($backdrop);
143
- }
144
- }
145
- _setupListeners() {
146
- var _a;
147
- this.addEventListener(click_outside_controller_messages.CLICK_OUTSIDE_CONTROLLER_MESSAGES.clickedOutside, this._handleClickOutside);
148
- (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.addEventListener('toggle', this.toggle);
149
- if (this.toggleOnHover && window.innerWidth > global_constants.MOBILE_SCREEN_WIDTH) {
150
- document.addEventListener('mouseover', this._hoverToggle);
151
- }
152
- }
153
87
  _handleClickOutside() {
154
88
  var _a;
155
89
  if (!this.opened)
@@ -158,11 +92,12 @@ exports.HDropdown = class HDropdown extends phoenix_light_lit_element.PhoenixLig
158
92
  (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-expanded', 'false');
159
93
  }
160
94
  disconnectedCallback() {
161
- var _a;
95
+ var _a, _b, _c;
162
96
  super.disconnectedCallback();
163
97
  (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.removeEventListener('toggle', this.toggle);
164
- if (this.toggleOnHover && window.innerWidth > global_constants.MOBILE_SCREEN_WIDTH) {
165
- document.removeEventListener('mouseover', this._hoverToggle);
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);
166
101
  }
167
102
  this.opened = false;
168
103
  }
@@ -192,10 +127,6 @@ tslib_es6.__decorate([
192
127
  decorators.property({ type: String }),
193
128
  tslib_es6.__metadata("design:type", Object)
194
129
  ], exports.HDropdown.prototype, "name", void 0);
195
- tslib_es6.__decorate([
196
- decorators.property({ type: String }),
197
- tslib_es6.__metadata("design:type", Object)
198
- ], exports.HDropdown.prototype, "transition", void 0);
199
130
  tslib_es6.__decorate([
200
131
  decorators.property({ type: String }),
201
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;"}
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;"}
@@ -6,7 +6,6 @@ const DROPDOWN_NAME = 'dropdown';
6
6
  const DROPDOWN_CONTAINER_NAME = `h-${DROPDOWN_NAME}`;
7
7
  const DROPDOWN_TOGGLER_NAME = `${DROPDOWN_CONTAINER_NAME}-toggler`;
8
8
  const DROPDOWN_CONTENT_NAME = `${DROPDOWN_CONTAINER_NAME}-content`;
9
- const DROPDOWN_BACKDROP_NAME = `${DROPDOWN_CONTAINER_NAME}-backdrop`;
10
9
  const DEFAULT_DROPDOWN_PORTAL_NAME = 'dropdown-portal';
11
10
  const DROPDOWN_EVENT = 'dropdown';
12
11
  const DROPDOWN_EVENTS = {
@@ -15,24 +14,15 @@ const DROPDOWN_EVENTS = {
15
14
  };
16
15
  const DROPDOWN_OPENED_ATTRIBUTE_NAME = 'opened';
17
16
  const DROPDOWN_CLASS = 'dropdown';
18
- const DROPDOWN_CONTENT_CLASS = `${DROPDOWN_CLASS}__content`;
19
- const DROPDOWN_TOGGLER_CLASS = `${DROPDOWN_CLASS}__toggler`;
20
- const DROPDOWN_CONTENT_VISIBLE_CLASS = `${DROPDOWN_CONTENT_CLASS}_visible`;
21
- const DROPDOWN_CONTENT_SHOW = `${DROPDOWN_CONTENT_CLASS}_show`;
22
- const DROPDOWN_CONTENT_HIDE = `${DROPDOWN_CONTENT_CLASS}_hide`;
17
+ const DROPDOWN_CONTENT_CLASS = `${DROPDOWN_CLASS}__content`;
23
18
 
24
19
  exports.DEFAULT_DROPDOWN_PORTAL_NAME = DEFAULT_DROPDOWN_PORTAL_NAME;
25
- exports.DROPDOWN_BACKDROP_NAME = DROPDOWN_BACKDROP_NAME;
26
20
  exports.DROPDOWN_CLASS = DROPDOWN_CLASS;
27
21
  exports.DROPDOWN_CONTAINER_NAME = DROPDOWN_CONTAINER_NAME;
28
22
  exports.DROPDOWN_CONTENT_CLASS = DROPDOWN_CONTENT_CLASS;
29
- exports.DROPDOWN_CONTENT_HIDE = DROPDOWN_CONTENT_HIDE;
30
23
  exports.DROPDOWN_CONTENT_NAME = DROPDOWN_CONTENT_NAME;
31
- exports.DROPDOWN_CONTENT_SHOW = DROPDOWN_CONTENT_SHOW;
32
- exports.DROPDOWN_CONTENT_VISIBLE_CLASS = DROPDOWN_CONTENT_VISIBLE_CLASS;
33
24
  exports.DROPDOWN_EVENTS = DROPDOWN_EVENTS;
34
25
  exports.DROPDOWN_NAME = DROPDOWN_NAME;
35
26
  exports.DROPDOWN_OPENED_ATTRIBUTE_NAME = DROPDOWN_OPENED_ATTRIBUTE_NAME;
36
- exports.DROPDOWN_TOGGLER_CLASS = DROPDOWN_TOGGLER_CLASS;
37
27
  exports.DROPDOWN_TOGGLER_NAME = DROPDOWN_TOGGLER_NAME;
38
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;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 decorators = require('lit/decorators');
7
+ var phoenix_light_lit_element = require('../../core/phoenix_light_lit_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
+ decorators.customElement('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,27 @@
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 form_controls_constatns = require('./form_controls_constatns.js');
9
+
10
+ exports.HControlAdditionalContent = class HControlAdditionalContent extends phoenix_light_lit_element.PhoenixLightLitElement {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.type = form_controls_constatns.CONTROL_ADDITIONAL_CONTENT_TYPES.text;
14
+ }
15
+ connectedCallback() {
16
+ super.connectedCallback();
17
+ this.classList.add(form_controls_constatns.FORM_CONTROLS_CSS_CLASSES.additionalContent, form_controls_constatns.ADDITIONAL_CONTENT_TYPE_TO_CSS_CLASSES_MAP[this.type]);
18
+ }
19
+ };
20
+ tslib_es6.__decorate([
21
+ decorators.property({ type: String }),
22
+ tslib_es6.__metadata("design:type", String)
23
+ ], exports.HControlAdditionalContent.prototype, "type", void 0);
24
+ exports.HControlAdditionalContent = tslib_es6.__decorate([
25
+ decorators.customElement('h-control-additional-content')
26
+ ], exports.HControlAdditionalContent);
27
+ //# 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;"}
@@ -0,0 +1,27 @@
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 form_controls_constatns = require('./form_controls_constatns.js');
9
+
10
+ exports.HControlContent = class HControlContent extends phoenix_light_lit_element.PhoenixLightLitElement {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.size = form_controls_constatns.CONTROL_CONTENT_SIZES.full;
14
+ }
15
+ connectedCallback() {
16
+ super.connectedCallback();
17
+ this.classList.add(form_controls_constatns.FORM_CONTROLS_CSS_CLASSES.control);
18
+ }
19
+ };
20
+ tslib_es6.__decorate([
21
+ decorators.property({ type: String }),
22
+ tslib_es6.__metadata("design:type", String)
23
+ ], exports.HControlContent.prototype, "size", void 0);
24
+ exports.HControlContent = tslib_es6.__decorate([
25
+ decorators.customElement('h-control-content')
26
+ ], exports.HControlContent);
27
+ //# 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;"}
@@ -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 decorators = require('lit/decorators');
7
+ var phoenix_light_lit_element = require('../../core/phoenix_light_lit_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
+ decorators.customElement('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 decorators = require('lit/decorators');
7
+ var phoenix_light_lit_element = require('../../core/phoenix_light_lit_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
+ decorators.customElement('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
@@ -0,0 +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;"}
@@ -15,6 +15,11 @@ var modal_body = require('./components/modal/modal_body.js');
15
15
  var modal_footer = require('./components/modal/modal_footer.js');
16
16
  var modal_header = require('./components/modal/modal_header.js');
17
17
  var modal_close = require('./components/modal/modal_close.js');
18
+ var control = require('./components/form_controls/control.js');
19
+ var control_content = require('./components/form_controls/control_content.js');
20
+ var control_element = require('./components/form_controls/control_element.js');
21
+ var control_label = require('./components/form_controls/control_label.js');
22
+ var control_additional_content = require('./components/form_controls/control_additional_content.js');
18
23
  var keystrokes_controller = require('./controllers/keystrokes_controller/keystrokes_controller.js');
19
24
  var btn_controller = require('./controllers/btn_controller.js');
20
25
  var click_outside_controller = require('./controllers/click_outside_controller/click_outside_controller.js');
@@ -89,6 +94,36 @@ Object.defineProperty(exports, 'HModalClose', {
89
94
  return modal_close.HModalClose;
90
95
  }
91
96
  });
97
+ Object.defineProperty(exports, 'HControl', {
98
+ enumerable: true,
99
+ get: function () {
100
+ return control.HControl;
101
+ }
102
+ });
103
+ Object.defineProperty(exports, 'HControlContent', {
104
+ enumerable: true,
105
+ get: function () {
106
+ return control_content.HControlContent;
107
+ }
108
+ });
109
+ Object.defineProperty(exports, 'HControlElement', {
110
+ enumerable: true,
111
+ get: function () {
112
+ return control_element.HControlElement;
113
+ }
114
+ });
115
+ Object.defineProperty(exports, 'HControlLabel', {
116
+ enumerable: true,
117
+ get: function () {
118
+ return control_label.HControlLabel;
119
+ }
120
+ });
121
+ Object.defineProperty(exports, 'HControlAdditionalContent', {
122
+ enumerable: true,
123
+ get: function () {
124
+ return control_additional_content.HControlAdditionalContent;
125
+ }
126
+ });
92
127
  exports.KeystrokesController = keystrokes_controller.KeystrokesController;
93
128
  exports.BtnController = btn_controller.BtnController;
94
129
  exports.ClickOutsideController = click_outside_controller.ClickOutsideController;
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -6,22 +6,18 @@ export declare class HDropdown extends PhoenixLightLitElement implements IDropdo
6
6
  direction: "bottom-center";
7
7
  toggleOnHover: boolean;
8
8
  name: string;
9
- transition: string;
10
9
  portalTarget: string;
11
10
  $dropdownToggler: HTMLElement | null;
12
11
  $dropdownContent: HTMLElement | null;
13
12
  private _positionController;
14
13
  private _clickOutsideController;
15
14
  connectedCallback(): void;
16
- private _appendDropdownPortal;
17
- private _appendDropdownBackdrop;
18
15
  private _setupListeners;
16
+ private _appendDropdownPortal;
19
17
  private _handleClickOutside;
20
18
  toggle: () => void;
21
- show: () => Promise<void>;
22
- hide: () => Promise<void>;
23
- private _hoverToggle;
24
- private _isDescendantOfParent;
19
+ show: () => void;
20
+ hide: () => void;
25
21
  private _positionDropdownContent;
26
22
  disconnectedCallback(): void;
27
23
  render(): TemplateResult;
@@ -4,11 +4,10 @@ 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 { DEFAULT_DROPDOWN_PORTAL_NAME, DROPDOWN_EVENTS, DROPDOWN_CONTENT_NAME, DROPDOWN_TOGGLER_NAME } from './dropdown_constants.js';
8
8
  import { CLICK_OUTSIDE_CONTROLLER_MESSAGES } from '../../controllers/click_outside_controller/click_outside_controller_messages.js';
9
9
  import { ClickOutsideController } from '../../controllers/click_outside_controller/click_outside_controller.js';
10
10
  import { DIRECTIONS } from '../../controllers/relative_position_controller/relative_position_controller_constants.js';
11
- import { MOBILE_SCREEN_WIDTH } from '../../global_constants.js';
12
11
  import { RelativePositionController } from '../../controllers/relative_position_controller/relative_position_controller.js';
13
12
 
14
13
  let HDropdown = class HDropdown extends PhoenixLightLitElement {
@@ -18,81 +17,23 @@ let HDropdown = class HDropdown extends PhoenixLightLitElement {
18
17
  this.direction = DIRECTIONS.bottomCenter;
19
18
  this.toggleOnHover = false;
20
19
  this.name = '';
21
- this.transition = 'direction';
22
20
  this.portalTarget = DEFAULT_DROPDOWN_PORTAL_NAME;
23
21
  this.toggle = () => {
24
22
  this.opened ? this.hide() : this.show();
25
23
  };
26
- this.show = async () => {
24
+ this.show = () => {
25
+ this.opened = true;
27
26
  const showDropdownEvent = new Event(DROPDOWN_EVENTS.show, {
28
27
  bubbles: true
29
28
  });
30
29
  this.dispatchEvent(showDropdownEvent);
31
- return new Promise((resolve) => {
32
- var _a;
33
- (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.add(DROPDOWN_CONTENT_VISIBLE_CLASS, `${DROPDOWN_CONTENT_SHOW}-${this.transition}-start`);
34
- window.requestAnimationFrame(() => {
35
- setTimeout(() => {
36
- var _a;
37
- (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.add(`${DROPDOWN_CONTENT_SHOW}-${this.transition}-end`);
38
- }, 0);
39
- const transitionDuration = parseFloat(getComputedStyle(this.$dropdownContent || this).transitionDuration) * 1000;
40
- setTimeout(() => {
41
- var _a;
42
- this.opened = true;
43
- this.dispatchEvent(showDropdownEvent);
44
- (_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
- resolve();
46
- }, transitionDuration);
47
- });
48
- });
49
30
  };
50
- this.hide = async () => {
31
+ this.hide = () => {
32
+ this.opened = false;
51
33
  const hideDropdownEvent = new Event(DROPDOWN_EVENTS.hide, {
52
34
  bubbles: true
53
35
  });
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
- });
68
- });
69
- };
70
- this._hoverToggle = async (ev) => {
71
- if (!ev.target) {
72
- await this.hide();
73
- return;
74
- }
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;
79
- if (isHoveredWithinDropdown && !this.opened) {
80
- await this.show();
81
- return;
82
- }
83
- if (!isHoveredWithinDropdown && this.opened) {
84
- await this.hide();
85
- return;
86
- }
87
- };
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;
36
+ this.dispatchEvent(hideDropdownEvent);
96
37
  };
97
38
  this._positionDropdownContent = () => {
98
39
  requestAnimationFrame(() => {
@@ -103,7 +44,6 @@ let HDropdown = class HDropdown extends PhoenixLightLitElement {
103
44
  connectedCallback() {
104
45
  super.connectedCallback();
105
46
  this._appendDropdownPortal();
106
- this._appendDropdownBackdrop();
107
47
  if (!this.$dropdownContent)
108
48
  this.$dropdownContent = this.querySelector(DROPDOWN_CONTENT_NAME);
109
49
  if (!this.$dropdownToggler)
@@ -123,6 +63,15 @@ let HDropdown = class HDropdown extends PhoenixLightLitElement {
123
63
  });
124
64
  this._setupListeners();
125
65
  }
66
+ _setupListeners() {
67
+ var _a, _b, _c;
68
+ this.addEventListener(CLICK_OUTSIDE_CONTROLLER_MESSAGES.clickedOutside, this._handleClickOutside);
69
+ (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.addEventListener('toggle', this.toggle);
70
+ if (this.toggleOnHover) {
71
+ (_b = this.$dropdownToggler) === null || _b === void 0 ? void 0 : _b.addEventListener('mouseenter', this.show);
72
+ (_c = this.$dropdownToggler) === null || _c === void 0 ? void 0 : _c.addEventListener('mouseleave', this.hide);
73
+ }
74
+ }
126
75
  _appendDropdownPortal() {
127
76
  const $dropdownPortalTarget = document.querySelector(`[name="${DEFAULT_DROPDOWN_PORTAL_NAME}"]`);
128
77
  if (!$dropdownPortalTarget) {
@@ -131,21 +80,6 @@ let HDropdown = class HDropdown extends PhoenixLightLitElement {
131
80
  document.body.appendChild($portalTarget);
132
81
  }
133
82
  }
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
- _setupListeners() {
142
- var _a;
143
- this.addEventListener(CLICK_OUTSIDE_CONTROLLER_MESSAGES.clickedOutside, this._handleClickOutside);
144
- (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.addEventListener('toggle', this.toggle);
145
- if (this.toggleOnHover && window.innerWidth > MOBILE_SCREEN_WIDTH) {
146
- document.addEventListener('mouseover', this._hoverToggle);
147
- }
148
- }
149
83
  _handleClickOutside() {
150
84
  var _a;
151
85
  if (!this.opened)
@@ -154,11 +88,12 @@ let HDropdown = class HDropdown extends PhoenixLightLitElement {
154
88
  (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-expanded', 'false');
155
89
  }
156
90
  disconnectedCallback() {
157
- var _a;
91
+ var _a, _b, _c;
158
92
  super.disconnectedCallback();
159
93
  (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.removeEventListener('toggle', this.toggle);
160
- if (this.toggleOnHover && window.innerWidth > MOBILE_SCREEN_WIDTH) {
161
- document.removeEventListener('mouseover', this._hoverToggle);
94
+ if (this.toggleOnHover) {
95
+ (_b = this.$dropdownToggler) === null || _b === void 0 ? void 0 : _b.removeEventListener('mouseenter', this.show);
96
+ (_c = this.$dropdownToggler) === null || _c === void 0 ? void 0 : _c.removeEventListener('mouseleave', this.hide);
162
97
  }
163
98
  this.opened = false;
164
99
  }
@@ -188,10 +123,6 @@ __decorate([
188
123
  property({ type: String }),
189
124
  __metadata("design:type", Object)
190
125
  ], HDropdown.prototype, "name", void 0);
191
- __decorate([
192
- property({ type: String }),
193
- __metadata("design:type", Object)
194
- ], HDropdown.prototype, "transition", void 0);
195
126
  __decorate([
196
127
  property({ type: String }),
197
128
  __metadata("design:type", Object)
@@ -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;"}
@@ -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";
@@ -11,8 +10,3 @@ export declare const DROPDOWN_EVENTS: {
11
10
  export declare const DROPDOWN_OPENED_ATTRIBUTE_NAME = "opened";
12
11
  export declare const DROPDOWN_CLASS = "dropdown";
13
12
  export declare const DROPDOWN_CONTENT_CLASS: string;
14
- export declare const DROPDOWN_TOGGLER_CLASS: string;
15
- export declare const DROPDOWN_BACKDROP_CLASS: string;
16
- export declare const DROPDOWN_CONTENT_VISIBLE_CLASS: string;
17
- export declare const DROPDOWN_CONTENT_SHOW: string;
18
- export declare const DROPDOWN_CONTENT_HIDE: string;
@@ -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 = {
@@ -11,11 +10,7 @@ const DROPDOWN_EVENTS = {
11
10
  };
12
11
  const DROPDOWN_OPENED_ATTRIBUTE_NAME = 'opened';
13
12
  const DROPDOWN_CLASS = 'dropdown';
14
- const DROPDOWN_CONTENT_CLASS = `${DROPDOWN_CLASS}__content`;
15
- const DROPDOWN_TOGGLER_CLASS = `${DROPDOWN_CLASS}__toggler`;
16
- const DROPDOWN_CONTENT_VISIBLE_CLASS = `${DROPDOWN_CONTENT_CLASS}_visible`;
17
- const DROPDOWN_CONTENT_SHOW = `${DROPDOWN_CONTENT_CLASS}_show`;
18
- const DROPDOWN_CONTENT_HIDE = `${DROPDOWN_CONTENT_CLASS}_hide`;
13
+ const DROPDOWN_CONTENT_CLASS = `${DROPDOWN_CLASS}__content`;
19
14
 
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 };
15
+ export { DEFAULT_DROPDOWN_PORTAL_NAME, DROPDOWN_CLASS, DROPDOWN_CONTAINER_NAME, DROPDOWN_CONTENT_CLASS, DROPDOWN_CONTENT_NAME, DROPDOWN_EVENTS, DROPDOWN_NAME, DROPDOWN_OPENED_ATTRIBUTE_NAME, DROPDOWN_TOGGLER_NAME };
21
16
  //# 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;"}
@@ -3,7 +3,7 @@ import { property, state } from 'lit/decorators';
3
3
  import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element.js';
4
4
  import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
5
5
  import { BtnController } from '../../controllers/btn_controller.js';
6
- import { DROPDOWN_TOGGLER_CLASS, DROPDOWN_OPENED_ATTRIBUTE_NAME } from './dropdown_constants.js';
6
+ import { DROPDOWN_OPENED_ATTRIBUTE_NAME } from './dropdown_constants.js';
7
7
  import { ToggleElementAriaController } from '../../controllers/toggle_element_aria_controller/toggle_element_aria_controller.js';
8
8
 
9
9
  let HDropdownToggler = class HDropdownToggler extends PhoenixLightLitElement {
@@ -19,7 +19,6 @@ let HDropdownToggler = class HDropdownToggler extends PhoenixLightLitElement {
19
19
  this._toggleElementAriaController.toggleAriaExpandedAttribute();
20
20
  };
21
21
  this.slot = this.hasAttribute('slot') ? this.slot : 'toggler';
22
- this.className = `${DROPDOWN_TOGGLER_CLASS} ${this.className}`;
23
22
  }
24
23
  connectedCallback() {
25
24
  super.connectedCallback();
@@ -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;"}
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;"}
@@ -0,0 +1,4 @@
1
+ import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element";
2
+ export declare class HControl extends PhoenixLightLitElement {
3
+ connectedCallback(): void;
4
+ }
@@ -0,0 +1,17 @@
1
+ import { __decorate } from '../../../../../external/tslib/tslib.es6.js';
2
+ import { customElement } from 'lit/decorators';
3
+ import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element.js';
4
+ import { FORM_CONTROLS_CSS_CLASSES } from './form_controls_constatns.js';
5
+
6
+ let HControl = class HControl extends PhoenixLightLitElement {
7
+ connectedCallback() {
8
+ super.connectedCallback();
9
+ this.classList.add(FORM_CONTROLS_CSS_CLASSES.control);
10
+ }
11
+ };
12
+ HControl = __decorate([
13
+ customElement('h-control')
14
+ ], HControl);
15
+
16
+ export { HControl };
17
+ //# sourceMappingURL=control.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,2BAA2B,4CAAgD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,6 @@
1
+ import type { TControlAdditionalContentType } from "./form_controls_types";
2
+ import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element";
3
+ export declare class HControlAdditionalContent extends PhoenixLightLitElement {
4
+ type: TControlAdditionalContentType;
5
+ connectedCallback(): void;
6
+ }
@@ -0,0 +1,25 @@
1
+ import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.js';
2
+ import { property, customElement } from 'lit/decorators';
3
+ import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element.js';
4
+ import { CONTROL_ADDITIONAL_CONTENT_TYPES, FORM_CONTROLS_CSS_CLASSES, ADDITIONAL_CONTENT_TYPE_TO_CSS_CLASSES_MAP } from './form_controls_constatns.js';
5
+
6
+ let HControlAdditionalContent = class HControlAdditionalContent extends PhoenixLightLitElement {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.type = CONTROL_ADDITIONAL_CONTENT_TYPES.text;
10
+ }
11
+ connectedCallback() {
12
+ super.connectedCallback();
13
+ this.classList.add(FORM_CONTROLS_CSS_CLASSES.additionalContent, ADDITIONAL_CONTENT_TYPE_TO_CSS_CLASSES_MAP[this.type]);
14
+ }
15
+ };
16
+ __decorate([
17
+ property({ type: String }),
18
+ __metadata("design:type", String)
19
+ ], HControlAdditionalContent.prototype, "type", void 0);
20
+ HControlAdditionalContent = __decorate([
21
+ customElement('h-control-additional-content')
22
+ ], HControlAdditionalContent);
23
+
24
+ export { HControlAdditionalContent };
25
+ //# sourceMappingURL=control_additional_content.js.map
@@ -0,0 +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;"}
@@ -0,0 +1,6 @@
1
+ import type { TControlContentSize } from "./form_controls_types";
2
+ import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element";
3
+ export declare class HControlContent extends PhoenixLightLitElement {
4
+ size: TControlContentSize;
5
+ connectedCallback(): void;
6
+ }
@@ -0,0 +1,25 @@
1
+ import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.js';
2
+ import { property, customElement } from 'lit/decorators';
3
+ import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element.js';
4
+ import { CONTROL_CONTENT_SIZES, FORM_CONTROLS_CSS_CLASSES } from './form_controls_constatns.js';
5
+
6
+ let HControlContent = class HControlContent extends PhoenixLightLitElement {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.size = CONTROL_CONTENT_SIZES.full;
10
+ }
11
+ connectedCallback() {
12
+ super.connectedCallback();
13
+ this.classList.add(FORM_CONTROLS_CSS_CLASSES.control);
14
+ }
15
+ };
16
+ __decorate([
17
+ property({ type: String }),
18
+ __metadata("design:type", String)
19
+ ], HControlContent.prototype, "size", void 0);
20
+ HControlContent = __decorate([
21
+ customElement('h-control-content')
22
+ ], HControlContent);
23
+
24
+ export { HControlContent };
25
+ //# sourceMappingURL=control_content.js.map
@@ -0,0 +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;"}
@@ -0,0 +1,4 @@
1
+ import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element";
2
+ export declare class HControlElement extends PhoenixLightLitElement {
3
+ connectedCallback(): void;
4
+ }
@@ -0,0 +1,17 @@
1
+ import { __decorate } from '../../../../../external/tslib/tslib.es6.js';
2
+ import { customElement } from 'lit/decorators';
3
+ import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element.js';
4
+ import { FORM_CONTROLS_CSS_CLASSES } from './form_controls_constatns.js';
5
+
6
+ let HControlElement = class HControlElement extends PhoenixLightLitElement {
7
+ connectedCallback() {
8
+ super.connectedCallback();
9
+ this.classList.add(FORM_CONTROLS_CSS_CLASSES.controlElement);
10
+ }
11
+ };
12
+ HControlElement = __decorate([
13
+ customElement('h-control-element')
14
+ ], HControlElement);
15
+
16
+ export { HControlElement };
17
+ //# sourceMappingURL=control_element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,2BAA2B,4CAAgD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,4 @@
1
+ import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element";
2
+ export declare class HControlErrors extends PhoenixLightLitElement {
3
+ connectedCallback(): void;
4
+ }
@@ -0,0 +1,15 @@
1
+ import { __decorate } from "tslib";
2
+ import { customElement } from 'lit/decorators';
3
+ import { PhoenixLightLitElement } from '@phoenixRoot/core/phoenix_light_lit_element';
4
+ import { FORM_CONTROLS_CSS_CLASSES } from '@phoenixRoot/components/form_controls/form_controls_constatns';
5
+ let HControlErrors = class HControlErrors extends PhoenixLightLitElement {
6
+ connectedCallback() {
7
+ super.connectedCallback();
8
+ this.classList.add(FORM_CONTROLS_CSS_CLASSES.controlErrors);
9
+ }
10
+ };
11
+ HControlErrors = __decorate([
12
+ customElement('h-control-errors')
13
+ ], HControlErrors);
14
+ export { HControlErrors };
15
+ //# sourceMappingURL=control_errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"control_errors.js","sourceRoot":"","sources":["../../../../../../../src/components/form_controls/control_errors.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,yBAAyB,EAAE,MAAM,+DAA+D,CAAC;AAG1G,IAAa,cAAc,GAA3B,MAAa,cAAe,SAAQ,sBAAsB;IAC/C,iBAAiB;QACpB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAE1B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC;IAChE,CAAC;CACJ,CAAA;AANY,cAAc;IAD1B,aAAa,CAAC,kBAAkB,CAAC;GACrB,cAAc,CAM1B;SANY,cAAc"}
@@ -0,0 +1,4 @@
1
+ import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element";
2
+ export declare class HControlLabel extends PhoenixLightLitElement {
3
+ connectedCallback(): void;
4
+ }
@@ -0,0 +1,17 @@
1
+ import { __decorate } from '../../../../../external/tslib/tslib.es6.js';
2
+ import { customElement } from 'lit/decorators';
3
+ import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element.js';
4
+ import { FORM_CONTROLS_CSS_CLASSES } from './form_controls_constatns.js';
5
+
6
+ let HControlLabel = class HControlLabel extends PhoenixLightLitElement {
7
+ connectedCallback() {
8
+ super.connectedCallback();
9
+ this.classList.add(FORM_CONTROLS_CSS_CLASSES.controlLabel);
10
+ }
11
+ };
12
+ HControlLabel = __decorate([
13
+ customElement('h-control-label')
14
+ ], HControlLabel);
15
+
16
+ export { HControlLabel };
17
+ //# sourceMappingURL=control_label.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,2BAA2B,4CAAgD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,21 @@
1
+ export declare const CONTROL_CONTENT_SIZES: {
2
+ readonly auto: "auto";
3
+ readonly full: "full";
4
+ readonly half: "half";
5
+ readonly quarter: "quarter";
6
+ readonly threeQuarters: "three-quarters";
7
+ };
8
+ export declare const FORM_CONTROLS_CSS_CLASSES: {
9
+ readonly control: "control";
10
+ readonly controlContent: "control__content";
11
+ readonly controlElement: "control__element";
12
+ readonly controlLabel: "control__label";
13
+ readonly controlErrors: "control__errors";
14
+ readonly additionalContent: "control__additional-content";
15
+ };
16
+ export declare const CONTROL_ADDITIONAL_CONTENT_TYPES: {
17
+ readonly text: "text";
18
+ };
19
+ export declare const ADDITIONAL_CONTENT_TYPE_TO_CSS_CLASSES_MAP: {
20
+ readonly text: "control__additional-content_type-text";
21
+ };
@@ -0,0 +1,25 @@
1
+ const CONTROL_CONTENT_SIZES = {
2
+ auto: 'auto',
3
+ full: 'full',
4
+ half: 'half',
5
+ quarter: 'quarter',
6
+ threeQuarters: 'three-quarters'
7
+ };
8
+ const baseControlClass = 'control';
9
+ const FORM_CONTROLS_CSS_CLASSES = {
10
+ control: baseControlClass,
11
+ controlContent: `${baseControlClass}__content`,
12
+ controlElement: `${baseControlClass}__element`,
13
+ controlLabel: `${baseControlClass}__label`,
14
+ controlErrors: `${baseControlClass}__errors`,
15
+ additionalContent: `${baseControlClass}__additional-content`
16
+ };
17
+ const CONTROL_ADDITIONAL_CONTENT_TYPES = {
18
+ text: 'text'
19
+ };
20
+ const ADDITIONAL_CONTENT_TYPE_TO_CSS_CLASSES_MAP = {
21
+ [CONTROL_ADDITIONAL_CONTENT_TYPES.text]: `${FORM_CONTROLS_CSS_CLASSES.additionalContent}_type-text`
22
+ };
23
+
24
+ export { ADDITIONAL_CONTENT_TYPE_TO_CSS_CLASSES_MAP, CONTROL_ADDITIONAL_CONTENT_TYPES, CONTROL_CONTENT_SIZES, FORM_CONTROLS_CSS_CLASSES };
25
+ //# sourceMappingURL=form_controls_constatns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,4 @@
1
+ import { Any } from 'ts-toolbelt';
2
+ import { CONTROL_ADDITIONAL_CONTENT_TYPES, CONTROL_CONTENT_SIZES } from "./form_controls_constatns";
3
+ export declare type TControlAdditionalContentType = Any.Keys<typeof CONTROL_ADDITIONAL_CONTENT_TYPES>;
4
+ export declare type TControlContentSize = Any.Keys<typeof CONTROL_CONTENT_SIZES>;
@@ -0,0 +1,3 @@
1
+ import 'ts-toolbelt';
2
+ import '@phoenixRoot/components/form_controls/form_controls_constatns';
3
+ //# sourceMappingURL=form_controls_types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form_controls_types.js","sourceRoot":"","sources":["../../../../../../../src/components/form_controls/form_controls_types.ts"],"names":[],"mappings":"AAAA,OAAoB,aAAa,CAAC;AAClC,OAAwE,+DAA+D,CAAC"}
@@ -12,6 +12,11 @@ export { HModalBody } from './components/modal/modal_body';
12
12
  export { HModalFooter } from './components/modal/modal_footer';
13
13
  export { HModalHeader } from './components/modal/modal_header';
14
14
  export { HModalClose } from './components/modal/modal_close';
15
+ export { HControl } from './components/form_controls/control';
16
+ export { HControlContent } from './components/form_controls/control_content';
17
+ export { HControlElement } from './components/form_controls/control_element';
18
+ export { HControlLabel } from './components/form_controls/control_label';
19
+ export { HControlAdditionalContent } from './components/form_controls/control_additional_content';
15
20
  export { BtnController } from './controllers/btn_controller';
16
21
  export { HDropdown } from './components/dropdown/dropdown';
17
22
  export { HDropdownToggler } from './components/dropdown/dropdown_toggler';
@@ -11,6 +11,11 @@ export { HModalBody } from './components/modal/modal_body.js';
11
11
  export { HModalFooter } from './components/modal/modal_footer.js';
12
12
  export { HModalHeader } from './components/modal/modal_header.js';
13
13
  export { HModalClose } from './components/modal/modal_close.js';
14
+ export { HControl } from './components/form_controls/control.js';
15
+ export { HControlContent } from './components/form_controls/control_content.js';
16
+ export { HControlElement } from './components/form_controls/control_element.js';
17
+ export { HControlLabel } from './components/form_controls/control_label.js';
18
+ export { HControlAdditionalContent } from './components/form_controls/control_additional_content.js';
14
19
  export { KeystrokesController } from './controllers/keystrokes_controller/keystrokes_controller.js';
15
20
  export { BtnController } from './controllers/btn_controller.js';
16
21
  export { ClickOutsideController } from './controllers/click_outside_controller/click_outside_controller.js';
@@ -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;"}
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;"}
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.9.0",
6
6
  "description": "phoenix design system",
7
7
  "author": "zefirek",
8
8
  "license": "MIT",
@@ -1,8 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const MOBILE_SCREEN_WIDTH = 575;
6
-
7
- exports.MOBILE_SCREEN_WIDTH = MOBILE_SCREEN_WIDTH;
8
- //# sourceMappingURL=global_constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -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 +0,0 @@
1
- export declare const MOBILE_SCREEN_WIDTH = 575;
@@ -1,4 +0,0 @@
1
- const MOBILE_SCREEN_WIDTH = 575;
2
-
3
- export { MOBILE_SCREEN_WIDTH };
4
- //# sourceMappingURL=global_constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;"}