@shoper/phoenix_design_system 0.28.0-2 → 0.28.0-3

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 (147) hide show
  1. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox.js +1 -1
  2. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox.js.map +1 -1
  3. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox_content.js +1 -1
  4. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox_control.js +2 -2
  5. package/build/cjs/packages/phoenix/src/components/form/input/input.js +2 -2
  6. package/build/cjs/packages/phoenix/src/components/form/input/input.js.map +1 -1
  7. package/build/cjs/packages/phoenix/src/components/form/radio/radio.js +1 -1
  8. package/build/cjs/packages/phoenix/src/components/form/radio/radio.js.map +1 -1
  9. package/build/cjs/packages/phoenix/src/components/form/select/{control/components → components/option}/select_option.js +3 -3
  10. package/build/cjs/packages/phoenix/src/components/form/select/components/option/select_option_constants.js +12 -0
  11. package/build/{esm/packages/phoenix/src/components/form/select/control/select_control_constants.js.map → cjs/packages/phoenix/src/components/form/select/components/option/select_option_constants.js.map} +1 -1
  12. package/build/cjs/packages/phoenix/src/components/form/select/{control/components → components/search}/select_search.js +16 -9
  13. package/build/cjs/packages/phoenix/src/components/form/select/{control/components → components/search}/select_search.js.map +1 -1
  14. package/build/cjs/packages/phoenix/src/components/form/select/components/search/select_search_constants.js +13 -0
  15. package/build/cjs/packages/phoenix/src/components/form/select/components/search/select_search_constants.js.map +1 -0
  16. package/build/cjs/packages/phoenix/src/components/form/select/{control/components → components}/select_components_constatns.js +1 -1
  17. package/build/cjs/packages/phoenix/src/components/form/select/{control/components → components}/select_options.js +3 -3
  18. package/build/cjs/packages/phoenix/src/components/form/select/{control/components → components}/select_options.js.map +1 -1
  19. package/build/cjs/packages/phoenix/src/components/form/select/{control/components/select_input.js → components/value/select_value.js} +20 -17
  20. package/build/cjs/packages/phoenix/src/components/form/select/{control/components/select_input.js.map → components/value/select_value.js.map} +1 -1
  21. package/build/cjs/packages/phoenix/src/components/form/select/components/value/select_value_constants.js +10 -0
  22. package/build/cjs/packages/phoenix/src/components/form/select/components/value/select_value_constants.js.map +1 -0
  23. package/build/cjs/packages/phoenix/src/components/form/select/{control/controllers → controllers}/base_select_controller.js +2 -2
  24. package/build/cjs/packages/phoenix/src/components/form/select/select.js +194 -36
  25. package/build/cjs/packages/phoenix/src/components/form/select/select.js.map +1 -1
  26. package/build/cjs/packages/phoenix/src/components/form/select/select_constants.js +28 -8
  27. package/build/cjs/packages/phoenix/src/components/form/select/select_constants.js.map +1 -1
  28. package/build/cjs/packages/phoenix/src/components/form/select/{control/select_control_utils.js → select_utils.js} +2 -2
  29. package/build/cjs/packages/phoenix/src/components/form/switch/switch.js +1 -1
  30. package/build/cjs/packages/phoenix/src/components/form/switch/switch.js.map +1 -1
  31. package/build/cjs/packages/phoenix/src/components/form/textarea/textarea.js +1 -1
  32. package/build/cjs/packages/phoenix/src/components/form/textarea/textarea.js.map +1 -1
  33. package/build/cjs/packages/phoenix/src/components/icon/icon.js +1 -1
  34. package/build/cjs/packages/phoenix/src/components/icon/icon.js.map +1 -1
  35. package/build/cjs/packages/phoenix/src/index.js +13 -20
  36. package/build/cjs/packages/phoenix/src/index.js.map +1 -1
  37. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox.js +1 -1
  38. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox.js.map +1 -1
  39. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox_content.js +1 -1
  40. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox_control.js +2 -2
  41. package/build/esm/packages/phoenix/src/components/form/input/input.js +2 -2
  42. package/build/esm/packages/phoenix/src/components/form/input/input.js.map +1 -1
  43. package/build/esm/packages/phoenix/src/components/form/radio/radio.js +1 -1
  44. package/build/esm/packages/phoenix/src/components/form/radio/radio.js.map +1 -1
  45. package/build/esm/packages/phoenix/src/components/form/select/{control/components → components/option}/select_option.js +3 -3
  46. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option_constants.d.ts +4 -0
  47. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option_constants.js +8 -0
  48. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option_constants.js.map +1 -0
  49. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option_content.d.ts +4 -0
  50. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option_content.js +16 -0
  51. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option_content.js.map +1 -0
  52. package/build/esm/packages/phoenix/src/components/form/select/{control/components → components/search}/select_search.js +16 -9
  53. package/build/esm/packages/phoenix/src/components/form/select/{control/components → components/search}/select_search.js.map +1 -1
  54. package/build/esm/packages/phoenix/src/components/form/select/components/search/select_search_constants.d.ts +5 -0
  55. package/build/esm/packages/phoenix/src/components/form/select/components/search/select_search_constants.js +9 -0
  56. package/build/esm/packages/phoenix/src/components/form/select/components/search/select_search_constants.js.map +1 -0
  57. package/build/esm/packages/phoenix/src/components/form/select/{control/components → components}/select_close_btn.d.ts +1 -1
  58. package/build/esm/packages/phoenix/src/components/form/select/{control/components → components}/select_close_btn.js +1 -1
  59. package/build/esm/packages/phoenix/src/components/form/select/components/select_close_btn.js.map +1 -0
  60. package/build/esm/packages/phoenix/src/components/form/select/{control/components → components}/select_components_constatns.d.ts +1 -1
  61. package/build/esm/packages/phoenix/src/components/form/select/{control/components → components}/select_components_constatns.js +1 -1
  62. package/build/esm/packages/phoenix/src/components/form/select/{control/components → components}/select_components_types.d.ts +1 -1
  63. package/build/esm/packages/phoenix/src/components/form/select/components/select_components_types.js +2 -0
  64. package/build/esm/packages/phoenix/src/components/form/select/components/select_components_types.js.map +1 -0
  65. package/build/esm/packages/phoenix/src/components/form/select/{control/components → components}/select_options.d.ts +1 -1
  66. package/build/esm/packages/phoenix/src/components/form/select/{control/components → components}/select_options.js +3 -3
  67. package/build/esm/packages/phoenix/src/components/form/select/{control/components → components}/select_options.js.map +1 -1
  68. package/build/esm/packages/phoenix/src/components/form/select/{control/components/select_input.d.ts → components/value/select_value.d.ts} +2 -2
  69. package/build/esm/packages/phoenix/src/components/form/select/{control/components/select_input.js → components/value/select_value.js} +17 -14
  70. package/build/esm/packages/phoenix/src/components/form/select/{control/components/select_input.js.map → components/value/select_value.js.map} +1 -1
  71. package/build/esm/packages/phoenix/src/components/form/select/components/value/select_value_constants.d.ts +3 -0
  72. package/build/esm/packages/phoenix/src/components/form/select/components/value/select_value_constants.js +6 -0
  73. package/build/esm/packages/phoenix/src/components/form/select/components/value/select_value_constants.js.map +1 -0
  74. package/build/esm/packages/phoenix/src/components/form/select/{control/controllers → controllers}/base_select_controller.d.ts +3 -3
  75. package/build/esm/packages/phoenix/src/components/form/select/{control/controllers → controllers}/base_select_controller.js +2 -2
  76. package/build/esm/packages/phoenix/src/components/form/select/{control/controllers → controllers}/select_controllers_types.d.ts +3 -3
  77. package/build/esm/packages/phoenix/src/components/form/select/controllers/select_controllers_types.js +5 -0
  78. package/build/esm/packages/phoenix/src/components/form/select/controllers/select_controllers_types.js.map +1 -0
  79. package/build/esm/packages/phoenix/src/components/form/select/model/select_option_constants.js.map +1 -0
  80. package/build/esm/packages/phoenix/src/components/form/select/{control/model → model}/select_option_mapper.d.ts +1 -1
  81. package/build/esm/packages/phoenix/src/components/form/select/select.d.ts +31 -6
  82. package/build/esm/packages/phoenix/src/components/form/select/select.js +193 -35
  83. package/build/esm/packages/phoenix/src/components/form/select/select.js.map +1 -1
  84. package/build/esm/packages/phoenix/src/components/form/select/select_constants.d.ts +20 -4
  85. package/build/esm/packages/phoenix/src/components/form/select/select_constants.js +24 -8
  86. package/build/esm/packages/phoenix/src/components/form/select/select_constants.js.map +1 -1
  87. package/build/esm/packages/phoenix/src/components/form/select/{control/select_control_utils.d.ts → select_utils.d.ts} +2 -2
  88. package/build/esm/packages/phoenix/src/components/form/select/{control/select_control_utils.js → select_utils.js} +2 -2
  89. package/build/esm/packages/phoenix/src/components/form/switch/switch.js +1 -1
  90. package/build/esm/packages/phoenix/src/components/form/switch/switch.js.map +1 -1
  91. package/build/esm/packages/phoenix/src/components/form/textarea/textarea.js +1 -1
  92. package/build/esm/packages/phoenix/src/components/form/textarea/textarea.js.map +1 -1
  93. package/build/esm/packages/phoenix/src/components/icon/icon.js +1 -1
  94. package/build/esm/packages/phoenix/src/components/icon/icon.js.map +1 -1
  95. package/build/esm/packages/phoenix/src/index.d.ts +3 -4
  96. package/build/esm/packages/phoenix/src/index.js +5 -6
  97. package/build/esm/packages/phoenix/src/index.js.map +1 -1
  98. package/package.json +1 -1
  99. package/build/cjs/packages/phoenix/src/components/form/select/control/select_control.js +0 -200
  100. package/build/cjs/packages/phoenix/src/components/form/select/control/select_control.js.map +0 -1
  101. package/build/cjs/packages/phoenix/src/components/form/select/control/select_control_constants.js +0 -23
  102. package/build/cjs/packages/phoenix/src/components/form/select/control/select_control_constants.js.map +0 -1
  103. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_close_btn.js.map +0 -1
  104. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_components_types.js +0 -2
  105. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_components_types.js.map +0 -1
  106. package/build/esm/packages/phoenix/src/components/form/select/control/controllers/select_controllers_types.js +0 -5
  107. package/build/esm/packages/phoenix/src/components/form/select/control/controllers/select_controllers_types.js.map +0 -1
  108. package/build/esm/packages/phoenix/src/components/form/select/control/model/select_option_constants.js.map +0 -1
  109. package/build/esm/packages/phoenix/src/components/form/select/control/select_control.d.ts +0 -34
  110. package/build/esm/packages/phoenix/src/components/form/select/control/select_control.js +0 -198
  111. package/build/esm/packages/phoenix/src/components/form/select/control/select_control.js.map +0 -1
  112. package/build/esm/packages/phoenix/src/components/form/select/control/select_control_constants.d.ts +0 -13
  113. package/build/esm/packages/phoenix/src/components/form/select/control/select_control_constants.js +0 -16
  114. package/build/esm/packages/phoenix/src/components/form/select/select_types.d.ts +0 -8
  115. package/build/esm/packages/phoenix/src/components/form/select/select_types.js +0 -3
  116. package/build/esm/packages/phoenix/src/components/form/select/select_types.js.map +0 -1
  117. /package/build/cjs/packages/phoenix/src/components/form/select/{control/components → components/option}/select_option.js.map +0 -0
  118. /package/build/cjs/packages/phoenix/src/components/form/select/{control/components → components}/select_components_constatns.js.map +0 -0
  119. /package/build/cjs/packages/phoenix/src/components/form/select/{control/controllers → controllers}/base_select_controller.js.map +0 -0
  120. /package/build/cjs/packages/phoenix/src/components/form/select/{control/controllers → controllers}/multi_select_controller.js +0 -0
  121. /package/build/cjs/packages/phoenix/src/components/form/select/{control/controllers → controllers}/multi_select_controller.js.map +0 -0
  122. /package/build/cjs/packages/phoenix/src/components/form/select/{control/controllers → controllers}/select_controller.js +0 -0
  123. /package/build/cjs/packages/phoenix/src/components/form/select/{control/controllers → controllers}/select_controller.js.map +0 -0
  124. /package/build/cjs/packages/phoenix/src/components/form/select/{control/model → model}/select_option.js +0 -0
  125. /package/build/cjs/packages/phoenix/src/components/form/select/{control/model → model}/select_option.js.map +0 -0
  126. /package/build/cjs/packages/phoenix/src/components/form/select/{control/model → model}/select_option_mapper.js +0 -0
  127. /package/build/cjs/packages/phoenix/src/components/form/select/{control/model → model}/select_option_mapper.js.map +0 -0
  128. /package/build/cjs/packages/phoenix/src/components/form/select/{control/select_control_utils.js.map → select_utils.js.map} +0 -0
  129. /package/build/esm/packages/phoenix/src/components/form/select/{control/components → components/option}/select_option.d.ts +0 -0
  130. /package/build/esm/packages/phoenix/src/components/form/select/{control/components → components/option}/select_option.js.map +0 -0
  131. /package/build/esm/packages/phoenix/src/components/form/select/{control/components → components/search}/select_search.d.ts +0 -0
  132. /package/build/esm/packages/phoenix/src/components/form/select/{control/components → components}/select_components_constatns.js.map +0 -0
  133. /package/build/esm/packages/phoenix/src/components/form/select/{control/controllers → controllers}/base_select_controller.js.map +0 -0
  134. /package/build/esm/packages/phoenix/src/components/form/select/{control/controllers → controllers}/multi_select_controller.d.ts +0 -0
  135. /package/build/esm/packages/phoenix/src/components/form/select/{control/controllers → controllers}/multi_select_controller.js +0 -0
  136. /package/build/esm/packages/phoenix/src/components/form/select/{control/controllers → controllers}/multi_select_controller.js.map +0 -0
  137. /package/build/esm/packages/phoenix/src/components/form/select/{control/controllers → controllers}/select_controller.d.ts +0 -0
  138. /package/build/esm/packages/phoenix/src/components/form/select/{control/controllers → controllers}/select_controller.js +0 -0
  139. /package/build/esm/packages/phoenix/src/components/form/select/{control/controllers → controllers}/select_controller.js.map +0 -0
  140. /package/build/esm/packages/phoenix/src/components/form/select/{control/model → model}/select_option.d.ts +0 -0
  141. /package/build/esm/packages/phoenix/src/components/form/select/{control/model → model}/select_option.js +0 -0
  142. /package/build/esm/packages/phoenix/src/components/form/select/{control/model → model}/select_option.js.map +0 -0
  143. /package/build/esm/packages/phoenix/src/components/form/select/{control/model → model}/select_option_constants.d.ts +0 -0
  144. /package/build/esm/packages/phoenix/src/components/form/select/{control/model → model}/select_option_constants.js +0 -0
  145. /package/build/esm/packages/phoenix/src/components/form/select/{control/model → model}/select_option_mapper.js +0 -0
  146. /package/build/esm/packages/phoenix/src/components/form/select/{control/model → model}/select_option_mapper.js.map +0 -0
  147. /package/build/esm/packages/phoenix/src/components/form/select/{control/select_control_utils.js.map → select_utils.js.map} +0 -0
@@ -6,10 +6,10 @@ var tslib_es6 = require('../../../../../../external/tslib/tslib.es6.js');
6
6
  var decorators = require('lit/decorators');
7
7
  var phoenix_light_lit_element = require('../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
8
8
  var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
9
+ var index = require('../../../../../../external/classnames/index.js');
9
10
  var control_props_sync_controller_constants = require('../controllers/props_synchronizing/control_props_sync_controller_constants.js');
10
11
  var control_props_sync_provider_controller = require('../controllers/props_synchronizing/control_props_sync_provider_controller.js');
11
12
  var checkbox_constants = require('./checkbox_constants.js');
12
- var index = require('../../../../../../external/classnames/index.js');
13
13
 
14
14
  exports.HCheckbox = class HCheckbox extends phoenix_light_lit_element.PhoenixLightLitElement {
15
15
  constructor() {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,gDAAoD;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;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA,oBAAoB,gDAAoD;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;"}
@@ -7,9 +7,9 @@ var lit = require('lit');
7
7
  var decorators = require('lit/decorators');
8
8
  var phoenix_light_lit_element = require('../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
9
9
  var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
10
- var checkbox_constants = require('./checkbox_constants.js');
11
10
  var control_props_sync_consumer_controller = require('../controllers/props_synchronizing/control_props_sync_consumer_controller.js');
12
11
  var ifDefined_js = require('lit-html/directives/if-defined.js');
12
+ var checkbox_constants = require('./checkbox_constants.js');
13
13
  var label_constants = require('../label/label_constants.js');
14
14
 
15
15
  exports.HCheckboxContent = class HCheckboxContent extends phoenix_light_lit_element.PhoenixLightLitElement {
@@ -7,11 +7,11 @@ var phoenix_light_lit_element = require('../../../core/phoenix_light_lit_element
7
7
  var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
8
8
  var decorators_js = require('@lit/reactive-element/decorators.js');
9
9
  var litHtml = require('lit-html');
10
- var checkbox_constants = require('./checkbox_constants.js');
11
- var index = require('../../../../../../external/classnames/index.js');
12
10
  var ref_js = require('lit-html/directives/ref.js');
11
+ var index = require('../../../../../../external/classnames/index.js');
13
12
  var control_props_sync_consumer_controller = require('../controllers/props_synchronizing/control_props_sync_consumer_controller.js');
14
13
  var ifDefined_js = require('lit-html/directives/if-defined.js');
14
+ var checkbox_constants = require('./checkbox_constants.js');
15
15
 
16
16
  exports.HCheckboxControl = class HCheckboxControl extends phoenix_light_lit_element.PhoenixLightLitElement {
17
17
  constructor() {
@@ -6,10 +6,10 @@ var tslib_es6 = require('../../../../../../external/tslib/tslib.es6.js');
6
6
  var decorators = require('lit/decorators');
7
7
  var phoenix_light_lit_element = require('../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
8
8
  var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
9
- var control_props_sync_controller_constants = require('../controllers/props_synchronizing/control_props_sync_controller_constants.js');
10
- var control_props_sync_provider_controller = require('../controllers/props_synchronizing/control_props_sync_provider_controller.js');
11
9
  var index = require('../../../../../../external/classnames/index.js');
12
10
  var input_constants = require('./input_constants.js');
11
+ var control_props_sync_controller_constants = require('../controllers/props_synchronizing/control_props_sync_controller_constants.js');
12
+ var control_props_sync_provider_controller = require('../controllers/props_synchronizing/control_props_sync_provider_controller.js');
13
13
 
14
14
  exports.HInput = class HInput extends phoenix_light_lit_element.PhoenixLightLitElement {
15
15
  constructor() {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA,oBAAoB,gDAAoD;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;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA,oBAAoB,gDAAoD;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;"}
@@ -6,10 +6,10 @@ var tslib_es6 = require('../../../../../../external/tslib/tslib.es6.js');
6
6
  var decorators = require('lit/decorators');
7
7
  var phoenix_light_lit_element = require('../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
8
8
  var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
9
+ var index = require('../../../../../../external/classnames/index.js');
9
10
  var control_props_sync_controller_constants = require('../controllers/props_synchronizing/control_props_sync_controller_constants.js');
10
11
  var control_props_sync_provider_controller = require('../controllers/props_synchronizing/control_props_sync_provider_controller.js');
11
12
  var checkbox_constants = require('../checkbox/checkbox_constants.js');
12
- var index = require('../../../../../../external/classnames/index.js');
13
13
  var radio_constants = require('./radio_constants.js');
14
14
 
15
15
  exports.HRadio = class HRadio extends phoenix_light_lit_element.PhoenixLightLitElement {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,gDAAoD;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;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA,oBAAoB,gDAAoD;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;"}
@@ -6,14 +6,13 @@ var tslib_es6 = require('../../../../../../../../external/tslib/tslib.es6.js');
6
6
  var phoenix_light_lit_element = require('../../../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
7
7
  var phoenix_custom_element = require('../../../../../core/decorators/phoenix_custom_element.js');
8
8
  var decorators_js = require('@lit/reactive-element/decorators.js');
9
- var select_components_constatns = require('./select_components_constatns.js');
9
+ var select_components_constatns = require('../select_components_constatns.js');
10
10
  var btn_controller = require('../../../../../controllers/btn_controller/btn_controller.js');
11
+ var select_option_constants = require('./select_option_constants.js');
11
12
 
12
13
  exports.HOption = class HOption extends phoenix_light_lit_element.PhoenixLightLitElement {
13
14
  constructor() {
14
15
  super(...arguments);
15
- this.selected = false;
16
- this.disabled = false;
17
16
  this._dispatchClickedEvent = () => {
18
17
  if (this.disabled)
19
18
  return;
@@ -28,6 +27,7 @@ exports.HOption = class HOption extends phoenix_light_lit_element.PhoenixLightLi
28
27
  connectedCallback() {
29
28
  super.connectedCallback();
30
29
  this._btnController = new btn_controller.BtnController(this, this._dispatchClickedEvent);
30
+ this.classList.add(select_option_constants.SELECT_OPTION_CSS_CLASSES.selectOption);
31
31
  this.setAttribute('role', 'option');
32
32
  this._setupEvents();
33
33
  }
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const selectOption = 'select-option';
6
+ const SELECT_OPTION_CSS_CLASSES = {
7
+ selectOption: selectOption,
8
+ selectOptionContent: `${selectOption}__content`
9
+ };
10
+
11
+ exports.SELECT_OPTION_CSS_CLASSES = SELECT_OPTION_CSS_CLASSES;
12
+ //# sourceMappingURL=select_option_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;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -7,8 +7,9 @@ var lit = require('lit');
7
7
  var decorators = require('lit/decorators');
8
8
  var phoenix_light_lit_element = require('../../../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
9
9
  var phoenix_custom_element = require('../../../../../core/decorators/phoenix_custom_element.js');
10
- var select_components_constatns = require('./select_components_constatns.js');
10
+ var select_components_constatns = require('../select_components_constatns.js');
11
11
  var debounce = require('../../../../../../../../external/lodash/debounce.js');
12
+ var select_search_constants = require('./select_search_constants.js');
12
13
 
13
14
  exports.HSelectSearch = class HSelectSearch extends phoenix_light_lit_element.PhoenixLightLitElement {
14
15
  constructor() {
@@ -23,14 +24,20 @@ exports.HSelectSearch = class HSelectSearch extends phoenix_light_lit_element.Ph
23
24
  }, 200);
24
25
  }
25
26
  render() {
26
- return lit.html `<input
27
- type="text"
28
- role="search"
29
- .value=${this.value}
30
- aria-autocomplete="list"
31
- autocomplete="false"
32
- @input=${this._handleInputChange}
33
- />`;
27
+ return lit.html `
28
+ <div class=${select_search_constants.SELECT_SEARCH_CSS_CLASSES.selectSearch}>
29
+ <h-icon icon-name="icon-search" class=${select_search_constants.SELECT_SEARCH_CSS_CLASSES.selectSearchIcon}></h-icon>
30
+ <input
31
+ class=${select_search_constants.SELECT_SEARCH_CSS_CLASSES.selectSearchInput}
32
+ type="text"
33
+ role="search"
34
+ .value=${this.value}
35
+ aria-autocomplete="list"
36
+ autocomplete="false"
37
+ @input=${this._handleInputChange}
38
+ />
39
+ </div>
40
+ `;
34
41
  }
35
42
  };
36
43
  tslib_es6.__decorate([
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,qDAAyD;AACjF;AACA;AACA;AACA;AACA;AACA,uBAAuB,qDAAyD;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;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,qDAAyD;AACjF;AACA;AACA;AACA;AACA;AACA,uBAAuB,qDAAyD;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,13 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const baseClass = 'select-search';
6
+ const SELECT_SEARCH_CSS_CLASSES = {
7
+ selectSearch: baseClass,
8
+ selectSearchIcon: `${baseClass}__icon`,
9
+ selectSearchInput: `${baseClass}__input`
10
+ };
11
+
12
+ exports.SELECT_SEARCH_CSS_CLASSES = SELECT_SEARCH_CSS_CLASSES;
13
+ //# sourceMappingURL=select_search_constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -15,7 +15,7 @@ const SELECT_RELATED_COMPONENTS_NAMES = {
15
15
  option: 'h-option',
16
16
  options: 'h-select-options',
17
17
  optionContent: 'h-option-content',
18
- input: 'h-select-input',
18
+ value: 'h-select-value',
19
19
  closeBtn: 'h-select-close-btn',
20
20
  search: 'h-select-search'
21
21
  };
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib_es6 = require('../../../../../../../../external/tslib/tslib.es6.js');
5
+ var tslib_es6 = require('../../../../../../../external/tslib/tslib.es6.js');
6
6
  var utilities = require('@dreamcommerce/utilities');
7
- var phoenix_light_lit_element = require('../../../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
8
- var phoenix_custom_element = require('../../../../../core/decorators/phoenix_custom_element.js');
7
+ var phoenix_light_lit_element = require('../../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
8
+ var phoenix_custom_element = require('../../../../core/decorators/phoenix_custom_element.js');
9
9
  var select_components_constatns = require('./select_components_constatns.js');
10
10
 
11
11
  exports.HSelectOptions = class HSelectOptions extends phoenix_light_lit_element.PhoenixLightLitElement {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,qDAAyD;AACjF;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,kDAAsD;AAC9E;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,18 +6,19 @@ var tslib_es6 = require('../../../../../../../../external/tslib/tslib.es6.js');
6
6
  var decorators = require('lit/decorators');
7
7
  var phoenix_light_lit_element = require('../../../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
8
8
  var phoenix_custom_element = require('../../../../../core/decorators/phoenix_custom_element.js');
9
- var select_components_constatns = require('./select_components_constatns.js');
10
- var select_control_constants = require('../select_control_constants.js');
9
+ var select_components_constatns = require('../select_components_constatns.js');
11
10
  var litHtml = require('lit-html');
12
11
  var context_consumer_controller = require('../../../../../core/context/context_consumer_controller.js');
12
+ var select_constants = require('../../select_constants.js');
13
13
  var observable_directive = require('../../../../../directives/observable_directive.js');
14
+ var select_value_constants = require('./select_value_constants.js');
14
15
 
15
- exports.HSelectInput = class HSelectInput extends phoenix_light_lit_element.PhoenixLightLitElement {
16
+ exports.HSelectValue = class HSelectValue extends phoenix_light_lit_element.PhoenixLightLitElement {
16
17
  constructor() {
17
18
  super(...arguments);
18
19
  this._contextConsumer = new context_consumer_controller.ContextConsumerController(this);
19
20
  this._dispatchOptionDeselect = (option) => {
20
- this.dispatchEvent(new CustomEvent(select_control_constants.SELECT_EVENT_NAMES.deselectOption, {
21
+ this.dispatchEvent(new CustomEvent(select_constants.SELECT_EVENT_NAMES.deselectOption, {
21
22
  detail: option.value,
22
23
  bubbles: true
23
24
  }));
@@ -25,42 +26,44 @@ exports.HSelectInput = class HSelectInput extends phoenix_light_lit_element.Phoe
25
26
  }
26
27
  connectedCallback() {
27
28
  super.connectedCallback();
28
- this.setAttribute('slot', select_control_constants.SELECT_SLOT_NAMES.input);
29
+ this.setAttribute('slot', select_constants.SELECT_SLOT_NAMES.input);
29
30
  this.setAttribute('role', 'textbox');
30
31
  this._subscribeObserver();
31
32
  }
32
33
  async _subscribeObserver() {
33
- this.isMultiselect = (await this._contextConsumer.consumeAsync(select_control_constants.SELECT_CONTEXTS.isMultiselect));
34
- this.selectedOptions$ = (await this._contextConsumer.consumeAsync(select_control_constants.SELECT_CONTEXTS.selectedOptions$));
34
+ this.isMultiselect = (await this._contextConsumer.consumeAsync(select_constants.SELECT_CONTEXTS.isMultiselect));
35
+ this.selectedOptions$ = (await this._contextConsumer.consumeAsync(select_constants.SELECT_CONTEXTS.selectedOptions$));
35
36
  }
36
37
  render() {
37
38
  if (!this.selectedOptions$)
38
39
  return;
39
40
  return litHtml.html `
40
- ${observable_directive.observe(this.selectedOptions$, (selectOptions) => {
41
+ <div class=${select_value_constants.SELECT_VALUE_CSS_CLASSES.selectValue}>
42
+ ${observable_directive.observe(this.selectedOptions$, (selectOptions) => {
41
43
  var _a;
42
44
  if (!selectOptions.length)
43
45
  return litHtml.html `${(_a = this.getSlot(select_components_constatns.SELECT_INPUT_PLACEHOLDER_SLOT_NAME)) !== null && _a !== void 0 ? _a : 'Select'}`;
44
46
  return this.isMultiselect
45
47
  ? litHtml.html `${selectOptions.map((option) => litHtml.html `<h-tag @tag.remove=${() => this._dispatchOptionDeselect(option)}>
46
- ${option.content}
48
+ ${option.content}
47
49
 
48
- <h-tag-remove-button>x</h-tag-remove-button>
49
- </h-tag>`)}`
50
+ <h-tag-remove-button>x</h-tag-remove-button>
51
+ </h-tag>`)}`
50
52
  : selectOptions[0].content;
51
53
  })}
54
+ </div>
52
55
  `;
53
56
  }
54
57
  };
55
58
  tslib_es6.__decorate([
56
59
  decorators.state(),
57
60
  tslib_es6.__metadata("design:type", Object)
58
- ], exports.HSelectInput.prototype, "selectedOptions$", void 0);
61
+ ], exports.HSelectValue.prototype, "selectedOptions$", void 0);
59
62
  tslib_es6.__decorate([
60
63
  decorators.state(),
61
64
  tslib_es6.__metadata("design:type", Boolean)
62
- ], exports.HSelectInput.prototype, "isMultiselect", void 0);
63
- exports.HSelectInput = tslib_es6.__decorate([
64
- phoenix_custom_element.phoenixCustomElement(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.input)
65
- ], exports.HSelectInput);
66
- //# sourceMappingURL=select_input.js.map
65
+ ], exports.HSelectValue.prototype, "isMultiselect", void 0);
66
+ exports.HSelectValue = tslib_es6.__decorate([
67
+ phoenix_custom_element.phoenixCustomElement(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.value)
68
+ ], exports.HSelectValue);
69
+ //# sourceMappingURL=select_value.js.map
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,qDAAyD;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,qDAAyD;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const SELECT_VALUE_CSS_CLASSES = {
6
+ selectValue: 'select-value'
7
+ };
8
+
9
+ exports.SELECT_VALUE_CSS_CLASSES = SELECT_VALUE_CSS_CLASSES;
10
+ //# sourceMappingURL=select_value_constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -4,8 +4,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('lit');
6
6
  var utilities = require('@dreamcommerce/utilities');
7
- var observer = require('../../../../../core/classes/observer/observer.js');
8
- var behavior_subject = require('../../../../../core/classes/behavior_subject/behavior_subject.js');
7
+ var observer = require('../../../../core/classes/observer/observer.js');
8
+ var behavior_subject = require('../../../../core/classes/behavior_subject/behavior_subject.js');
9
9
 
10
10
  class BaseSelectController {
11
11
  constructor({ host }) {
@@ -3,63 +3,221 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var tslib_es6 = require('../../../../../../external/tslib/tslib.es6.js');
6
+ var lit = require('lit');
6
7
  var decorators = require('lit/decorators');
7
8
  var phoenix_light_lit_element = require('../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
8
9
  var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
9
- var control_props_sync_controller_constants = require('../controllers/props_synchronizing/control_props_sync_controller_constants.js');
10
- var control_props_sync_provider_controller = require('../controllers/props_synchronizing/control_props_sync_provider_controller.js');
11
- var checkbox_constants = require('../checkbox/checkbox_constants.js');
12
- var index = require('../../../../../../external/classnames/index.js');
10
+ var decorators_js = require('@lit/reactive-element/decorators.js');
11
+ var select_components_constatns = require('./components/select_components_constatns.js');
13
12
  var select_constants = require('./select_constants.js');
13
+ var observer = require('../../../core/classes/observer/observer.js');
14
+ var observable_directive = require('../../../directives/observable_directive.js');
15
+ var context_provider_controller = require('../../../core/context/context_provider_controller.js');
16
+ var ref_js = require('lit-html/directives/ref.js');
17
+ var multi_select_controller = require('./controllers/multi_select_controller.js');
18
+ var select_controller = require('./controllers/select_controller.js');
19
+ var select_search = require('./components/search/select_search.js');
20
+ var list_box_keyboard_controller = require('../../../controllers/list_box_controller/list_box_keyboard_controller.js');
21
+ var icon = require('../../icon/icon.js');
22
+ var select_option_mapper = require('./model/select_option_mapper.js');
23
+ var select_utils = require('./select_utils.js');
14
24
 
15
25
  exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLitElement {
16
26
  constructor() {
17
27
  super();
18
- new control_props_sync_provider_controller.ControlPropsSyncProviderController({
19
- host: this,
20
- propsToSync: [...Object.keys(control_props_sync_controller_constants.BASE_FORM_CONTROL_PROPS), checkbox_constants.CHECKBOX_PROPS_TO_SYNC.checked]
21
- });
28
+ this.multiselect = false;
29
+ this.opened = false;
30
+ this._searchValue = '';
31
+ this._$options = {};
32
+ this._$dropdown = ref_js.createRef();
33
+ this._$search = ref_js.createRef();
34
+ this._$optionsList = ref_js.createRef();
35
+ this._$dropdownContent = ref_js.createRef();
36
+ this._selectContext = new context_provider_controller.ContextProviderController(this);
37
+ this._handleOptionDeselect = (event) => {
38
+ const selectedOption = this._selectController.getSelectOption(event.detail);
39
+ if (!selectedOption)
40
+ return;
41
+ this._selectController.deselectOption(selectedOption);
42
+ };
43
+ this._updateOptionsView = (options) => {
44
+ // if (options.length < Object.keys(this._$options).length) this._removeHTMLOptions(options.map((option: SelectOption) => option.value));
45
+ options.forEach((option, index) => {
46
+ const { selected, value } = option;
47
+ const $option = this._$options[value];
48
+ if (!$option) {
49
+ // this._appendNewHTMLOption(option, index + 1);
50
+ return;
51
+ }
52
+ select_utils.SelectControlUtils.syncHTMLOptionWithModel(option, $option);
53
+ if (!selected)
54
+ return;
55
+ $option.setAttribute(this.multiselect ? 'aria-checked' : 'aria-selected', 'true');
56
+ });
57
+ };
58
+ this._handleOptionClicked = (event) => {
59
+ const selectedOption = this._selectController.getSelectOption(event.detail.$option.value);
60
+ if (!selectedOption)
61
+ return;
62
+ this._selectController.toggleOption(selectedOption);
63
+ if (!this.multiselect)
64
+ this._closeSelect();
65
+ };
66
+ this._closeSelect = () => {
67
+ var _a;
68
+ (_a = this._$dropdown.value) === null || _a === void 0 ? void 0 : _a.hide();
69
+ };
70
+ this._clearOptions = () => {
71
+ this._selectController.deselectOptions();
72
+ };
73
+ this._handleDropdownHidden = () => {
74
+ this._searchValue = '';
75
+ this.opened = false;
76
+ };
77
+ const $options = Array.from(this.querySelectorAll(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.option));
78
+ $options.forEach(($option) => $option.setAttribute('slot', select_constants.SELECT_SLOT_NAMES.content));
79
+ }
80
+ updated(changedProperties) {
81
+ super.updated(changedProperties);
82
+ if (changedProperties.has('opened'))
83
+ this.opened ? this.classList.add(select_constants.SELECT_CSS_CLASSES.selectOpened) : this.classList.remove(select_constants.SELECT_CSS_CLASSES.selectOpened);
84
+ if (this._$optionsList.value && !this._listBoxController)
85
+ this._listBoxController = new list_box_keyboard_controller.ListBoxKeyboardController({
86
+ host: this,
87
+ $list: this._$optionsList.value
88
+ });
22
89
  }
23
90
  connectedCallback() {
24
91
  super.connectedCallback();
25
- this.classList.add(select_constants.SELECT_CONTROL_CSS_CLASSES.select);
26
- const cssClasses = index['default']({
27
- [select_constants.SELECT_CONTROL_CSS_CLASSES.selectDisabled]: this.disabled,
28
- [select_constants.SELECT_CONTROL_CSS_CLASSES.selectReadonly]: this.readonly,
29
- [select_constants.SELECT_CONTROL_CSS_CLASSES.selectError]: this.error
30
- });
31
- if (cssClasses)
32
- this.classList.add(cssClasses);
92
+ this.classList.add(select_constants.SELECT_CSS_CLASSES.select);
93
+ this._selectController = this.multiselect ? new multi_select_controller.MultiSelectController({ host: this }) : new select_controller.SelectController({ host: this });
94
+ this._selectContext.provide(select_constants.SELECT_CONTEXTS.selectedOptions$, this._selectController.selectedOptions$);
95
+ this._selectContext.provide(select_constants.SELECT_CONTEXTS.isMultiselect, this.multiselect);
96
+ const $options = Array.from(this.querySelectorAll(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.option));
97
+ this._selectController.options$.subscribe(new observer.Observer((selectedOptions) => this._updateOptionsView(selectedOptions)));
98
+ this._$options = $options.reduce((acc, $option) => {
99
+ if (acc[$option.value] !== undefined)
100
+ throw Error('Select options must hava a unique values.');
101
+ return {
102
+ ...acc,
103
+ [$option.value]: $option
104
+ };
105
+ }, {});
106
+ this._selectController.options$.notify($options.map(select_option_mapper.SelectOptionMapper.toModel));
107
+ this._setupEvents();
108
+ }
109
+ firstUpdated(props) {
110
+ super.firstUpdated(props);
111
+ if (this._$dropdownContent.value)
112
+ this._$dropdownContent.value.style.width = `${this.getBoundingClientRect().width}px`;
113
+ }
114
+ _setupEvents() {
115
+ this.addEventListener(select_constants.SELECT_EVENT_NAMES.deselectOption, this._handleOptionDeselect);
116
+ }
117
+ _appendNewHTMLOption(option, position) {
118
+ const $list = this._$optionsList.value;
119
+ if (!$list)
120
+ return;
121
+ const { value, selected } = option;
122
+ const $option = select_utils.SelectControlUtils.createHTMLOption(option);
123
+ if (selected)
124
+ $option.setAttribute(this.multiselect ? 'aria-checked' : 'aria-selected', 'true');
125
+ this._$options[value] = $option;
126
+ select_utils.SelectControlUtils.appendHTMLOption($option, $list, position);
127
+ }
128
+ _removeHTMLOptions(optionsValues) {
129
+ this._$options = select_utils.SelectControlUtils.removeHTMLOptions(Object.values(this._$options), optionsValues);
130
+ }
131
+ _handleSearch({ detail }) {
132
+ this._searchValue = detail;
133
+ }
134
+ update(changedProperties) {
135
+ super.update(changedProperties);
136
+ if (changedProperties.has('_searchValue'))
137
+ this._selectController.filterOptions(this._searchValue);
138
+ }
139
+ addOption(option, position) {
140
+ this._selectController.addOption(option, position);
141
+ }
142
+ removeOption(optionValue) {
143
+ this._selectController.removeOption(optionValue);
144
+ }
145
+ replaceOptions(options) {
146
+ this._selectController.replaceOptions(options);
147
+ }
148
+ render() {
149
+ var _a;
150
+ const options = (_a = this._selectController.options$.getValue()) !== null && _a !== void 0 ? _a : [];
151
+ return lit.html `
152
+ <h-dropdown
153
+ ${ref_js.ref(this._$dropdown)}
154
+ @dropdown.showed=${() => (this.opened = true)}
155
+ @dropdown.hidden=${this._handleDropdownHidden}
156
+ name=${this.controlName}
157
+ >
158
+ <h-dropdown-toggler name=${this.controlName} class="${select_constants.SELECT_CSS_CLASSES.selectControl}">
159
+ ${this.getSlot(select_constants.SELECT_SLOT_NAMES.input)}
160
+ <h-icon icon-name="icon-chevron-down"></h-icon>
161
+ </h-dropdown-toggler>
162
+
163
+ <h-dropdown-content class=${select_constants.SELECT_CSS_CLASSES.selectContent} ${ref_js.ref(this._$dropdownContent)} name=${this.controlName}>
164
+ <h-select-close-btn @click=${this._closeSelect}></h-select-close-btn>
165
+
166
+ ${options.length > select_constants.MIN_NUMBER_OF_OPTIONS_TO_SHOW_SEARCH
167
+ ? lit.html `<h-select-search
168
+ class=${select_constants.SELECT_CSS_CLASSES.selectSearch}
169
+ ${ref_js.ref(this._$search)}
170
+ .value=${this._searchValue}
171
+ @selectSearch.search=${this._handleSearch}
172
+ ></h-select-search>`
173
+ : lit.nothing}
174
+ ${this.hasSlot(select_constants.SELECT_SLOT_NAMES.content)
175
+ ? lit.html `
176
+ <h-select-options
177
+ class=${select_constants.SELECT_CSS_CLASSES.selectOptions}
178
+ ${ref_js.ref(this._$optionsList)}
179
+ @selectOptions.clicked=${this._handleOptionClicked}
180
+ >
181
+ ${this.getSlot(select_constants.SELECT_SLOT_NAMES.content)}
182
+ </h-select-options>
183
+ `
184
+ : lit.nothing}
185
+ ${!this._selectController.visibleOptionsCount ? lit.html `<p>brak wyników dla ${this._searchValue}</p>` : lit.nothing}
186
+ ${this.multiselect && this._selectController.selectedOptionsCount >= 1
187
+ ? lit.html `
188
+ <section class=${select_constants.SELECT_CSS_CLASSES.selectFooter}>
189
+ <button @click=${this._clearOptions}>clear</button>
190
+ <h-select-close-btn @click=${this._closeSelect}>ok</h-select-close-btn>
191
+ </section>
192
+ `
193
+ : lit.nothing}
194
+ </h-dropdown-content>
195
+ </h-dropdown>
196
+
197
+ ${observable_directive.observe(this._selectController.selectedOptions$, (selectOptions) => selectOptions.map((option) => lit.html `<input type="hidden" name=${this.controlName} value=${option.value} />`))}
198
+ `;
33
199
  }
34
200
  };
201
+ exports.HSelect._components = {
202
+ search: select_search.HSelectSearch,
203
+ icon: icon.HIcon
204
+ };
35
205
  tslib_es6.__decorate([
36
- decorators.property({ type: String }),
37
- tslib_es6.__metadata("design:type", String)
38
- ], exports.HSelect.prototype, "controlId", void 0);
39
- tslib_es6.__decorate([
40
- decorators.property({ type: String }),
206
+ decorators_js.property({ type: String }),
41
207
  tslib_es6.__metadata("design:type", String)
42
208
  ], exports.HSelect.prototype, "controlName", void 0);
43
209
  tslib_es6.__decorate([
44
- decorators.property({ type: Boolean }),
210
+ decorators_js.property({ type: Boolean }),
45
211
  tslib_es6.__metadata("design:type", Boolean)
46
- ], exports.HSelect.prototype, "disabled", void 0);
212
+ ], exports.HSelect.prototype, "multiselect", void 0);
47
213
  tslib_es6.__decorate([
48
- decorators.property({ type: Boolean }),
214
+ decorators_js.property({ type: Boolean }),
49
215
  tslib_es6.__metadata("design:type", Boolean)
50
- ], exports.HSelect.prototype, "required", void 0);
216
+ ], exports.HSelect.prototype, "opened", void 0);
51
217
  tslib_es6.__decorate([
52
- decorators.property({ type: Boolean }),
53
- tslib_es6.__metadata("design:type", Boolean)
54
- ], exports.HSelect.prototype, "hidden", void 0);
55
- tslib_es6.__decorate([
56
- decorators.property({ type: Boolean }),
57
- tslib_es6.__metadata("design:type", Boolean)
58
- ], exports.HSelect.prototype, "readonly", void 0);
59
- tslib_es6.__decorate([
60
- decorators.property({ type: Boolean }),
61
- tslib_es6.__metadata("design:type", Boolean)
62
- ], exports.HSelect.prototype, "error", void 0);
218
+ decorators.state(),
219
+ tslib_es6.__metadata("design:type", String)
220
+ ], exports.HSelect.prototype, "_searchValue", void 0);
63
221
  exports.HSelect = tslib_es6.__decorate([
64
222
  phoenix_custom_element.phoenixCustomElement('h-select'),
65
223
  tslib_es6.__metadata("design:paramtypes", [])
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,gDAAoD;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;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}