@shoper/phoenix_design_system 0.27.0 → 0.28.0-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/build/cjs/external/lit/external/lit-html/async-directive.js +18 -0
  2. package/build/cjs/external/lit/external/lit-html/async-directive.js.map +1 -0
  3. package/build/cjs/external/lit/external/lit-html/directive-helpers.js +14 -0
  4. package/build/cjs/external/lit/external/lit-html/directive-helpers.js.map +1 -0
  5. package/build/cjs/external/lit/external/lit-html/directive.js +2 -1
  6. package/build/cjs/external/lit/external/lit-html/directive.js.map +1 -1
  7. package/build/cjs/packages/phoenix/src/components/accordion/accordion.js +1 -1
  8. package/build/cjs/packages/phoenix/src/components/accordion/accordion_content.js +1 -1
  9. package/build/cjs/packages/phoenix/src/components/accordion/accordion_group.js +2 -2
  10. package/build/cjs/packages/phoenix/src/components/accordion/accordion_toggler.js +2 -2
  11. package/build/cjs/packages/phoenix/src/components/color_swatches/color_item/color_item.js +1 -1
  12. package/build/cjs/packages/phoenix/src/components/color_swatches/show-more/show_more.js +1 -1
  13. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js +3 -3
  14. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_toggler.js +1 -1
  15. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox.js +1 -1
  16. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox.js.map +1 -1
  17. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox_content.js +1 -1
  18. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox_control.js +3 -3
  19. package/build/cjs/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js +11 -13
  20. package/build/cjs/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js.map +1 -1
  21. package/build/cjs/packages/phoenix/src/components/form/controllers/props_synchronizing/control_props_sync_consumer_controller.js +1 -1
  22. package/build/cjs/packages/phoenix/src/components/form/controllers/props_synchronizing/control_props_sync_provider_controller.js +1 -1
  23. package/build/cjs/packages/phoenix/src/components/form/input/input.js +1 -1
  24. package/build/cjs/packages/phoenix/src/components/form/input/input.js.map +1 -1
  25. package/build/cjs/packages/phoenix/src/components/form/input/input_icon.js +1 -1
  26. package/build/cjs/packages/phoenix/src/components/form/radio/radio.js +1 -1
  27. package/build/cjs/packages/phoenix/src/components/form/radio/radio.js.map +1 -1
  28. package/build/cjs/packages/phoenix/src/components/form/select/control/components/select_components_constatns.js +29 -0
  29. package/build/cjs/packages/phoenix/src/components/form/select/control/components/select_components_constatns.js.map +1 -0
  30. package/build/cjs/packages/phoenix/src/components/form/select/control/components/select_input.js +66 -0
  31. package/build/cjs/packages/phoenix/src/components/form/select/control/components/select_input.js.map +1 -0
  32. package/build/cjs/packages/phoenix/src/components/form/select/control/components/select_option.js +57 -0
  33. package/build/cjs/packages/phoenix/src/components/form/select/control/components/select_option.js.map +1 -0
  34. package/build/cjs/packages/phoenix/src/components/form/select/control/components/select_options.js +31 -0
  35. package/build/cjs/packages/phoenix/src/components/form/select/control/components/select_options.js.map +1 -0
  36. package/build/cjs/packages/phoenix/src/components/form/select/control/components/select_search.js +43 -0
  37. package/build/cjs/packages/phoenix/src/components/form/select/control/components/select_search.js.map +1 -0
  38. package/build/cjs/packages/phoenix/src/components/form/select/control/controllers/base_select_controller.js +93 -0
  39. package/build/cjs/packages/phoenix/src/components/form/select/control/controllers/base_select_controller.js.map +1 -0
  40. package/build/cjs/packages/phoenix/src/components/form/select/control/controllers/multi_select_controller.js +22 -0
  41. package/build/cjs/packages/phoenix/src/components/form/select/control/controllers/multi_select_controller.js.map +1 -0
  42. package/build/cjs/packages/phoenix/src/components/form/select/control/controllers/select_controller.js +19 -0
  43. package/build/cjs/packages/phoenix/src/components/form/select/control/controllers/select_controller.js.map +1 -0
  44. package/build/cjs/packages/phoenix/src/components/form/select/control/model/select_option.js +19 -0
  45. package/build/cjs/packages/phoenix/src/components/form/select/control/model/select_option.js.map +1 -0
  46. package/build/cjs/packages/phoenix/src/components/form/select/control/model/select_option_mapper.js +24 -0
  47. package/build/cjs/packages/phoenix/src/components/form/select/control/model/select_option_mapper.js.map +1 -0
  48. package/build/cjs/packages/phoenix/src/components/form/select/control/select_control.js +200 -0
  49. package/build/cjs/packages/phoenix/src/components/form/select/control/select_control.js.map +1 -0
  50. package/build/cjs/packages/phoenix/src/components/form/select/control/select_control_constants.js +23 -0
  51. package/build/cjs/packages/phoenix/src/components/form/select/control/select_control_constants.js.map +1 -0
  52. package/build/cjs/packages/phoenix/src/components/form/select/control/select_control_utils.js +52 -0
  53. package/build/cjs/packages/phoenix/src/components/form/select/control/select_control_utils.js.map +1 -0
  54. package/build/cjs/packages/phoenix/src/components/form/select/select.js +67 -0
  55. package/build/cjs/packages/phoenix/src/components/form/select/select.js.map +1 -0
  56. package/build/cjs/packages/phoenix/src/components/form/select/select_constants.js +15 -0
  57. package/build/cjs/packages/phoenix/src/components/form/select/select_constants.js.map +1 -0
  58. package/build/cjs/packages/phoenix/src/components/form/switch/switch.js +1 -1
  59. package/build/cjs/packages/phoenix/src/components/form/switch/switch.js.map +1 -1
  60. package/build/cjs/packages/phoenix/src/components/messages/base_message.js +1 -1
  61. package/build/cjs/packages/phoenix/src/components/modal/modal.js +4 -4
  62. package/build/cjs/packages/phoenix/src/components/portal/portal.js +1 -1
  63. package/build/cjs/packages/phoenix/src/components/portal/portal.js.map +1 -1
  64. package/build/cjs/packages/phoenix/src/components/portal/portal_target.js +1 -1
  65. package/build/cjs/packages/phoenix/src/components/scroll_to/scroll_to.js +1 -1
  66. package/build/cjs/packages/phoenix/src/components/tabs/tab/tab.js +1 -1
  67. package/build/cjs/packages/phoenix/src/components/tag/tag.js +7 -2
  68. package/build/cjs/packages/phoenix/src/components/tag/tag.js.map +1 -1
  69. package/build/cjs/packages/phoenix/src/controllers/{btn_controller.js → btn_controller/btn_controller.js} +4 -3
  70. package/build/cjs/packages/phoenix/src/controllers/btn_controller/btn_controller.js.map +1 -0
  71. package/build/cjs/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller.js +4 -4
  72. package/build/cjs/packages/phoenix/src/controllers/list_box_controller/list_box_controller_constants.js +11 -0
  73. package/build/cjs/packages/phoenix/src/controllers/list_box_controller/list_box_controller_constants.js.map +1 -0
  74. package/build/cjs/packages/phoenix/src/controllers/list_box_controller/list_box_keyboard_controller.js +84 -0
  75. package/build/cjs/packages/phoenix/src/controllers/list_box_controller/list_box_keyboard_controller.js.map +1 -0
  76. package/build/cjs/packages/phoenix/src/core/classes/behavior_subject/behavior_subject.js +2 -7
  77. package/build/cjs/packages/phoenix/src/core/classes/behavior_subject/behavior_subject.js.map +1 -1
  78. package/build/cjs/packages/phoenix/src/core/classes/subject/subject.js +8 -1
  79. package/build/cjs/packages/phoenix/src/core/classes/subject/subject.js.map +1 -1
  80. package/build/cjs/packages/phoenix/src/core/context/context_consumer_controller.js +1 -1
  81. package/build/cjs/packages/phoenix/src/core/phoenix_light_lit_element/phoenix_light_lit_element.js +10 -5
  82. package/build/cjs/packages/phoenix/src/core/phoenix_light_lit_element/phoenix_light_lit_element.js.map +1 -1
  83. package/build/cjs/packages/phoenix/src/directives/observable_directive.js +40 -0
  84. package/build/cjs/packages/phoenix/src/directives/observable_directive.js.map +1 -0
  85. package/build/cjs/packages/phoenix/src/index.js +85 -50
  86. package/build/cjs/packages/phoenix/src/index.js.map +1 -1
  87. package/build/esm/external/lit/external/lit-html/async-directive.js +12 -0
  88. package/build/esm/external/lit/external/lit-html/async-directive.js.map +1 -0
  89. package/build/esm/external/lit/external/lit-html/directive-helpers.js +10 -0
  90. package/build/esm/external/lit/external/lit-html/directive-helpers.js.map +1 -0
  91. package/build/esm/external/lit/external/lit-html/directive.js +2 -2
  92. package/build/esm/packages/phoenix/src/components/accordion/accordion.js +1 -1
  93. package/build/esm/packages/phoenix/src/components/accordion/accordion_content.js +1 -1
  94. package/build/esm/packages/phoenix/src/components/accordion/accordion_group.js +2 -2
  95. package/build/esm/packages/phoenix/src/components/accordion/accordion_toggler.js +2 -2
  96. package/build/esm/packages/phoenix/src/components/color_swatches/color_item/color_item.js +1 -1
  97. package/build/esm/packages/phoenix/src/components/color_swatches/show-more/show_more.js +1 -1
  98. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js +3 -3
  99. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.js +1 -1
  100. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox.js +1 -1
  101. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox.js.map +1 -1
  102. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox_content.js +1 -1
  103. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox_control.js +3 -3
  104. package/build/esm/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.d.ts +2 -3
  105. package/build/esm/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js +11 -13
  106. package/build/esm/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js.map +1 -1
  107. package/build/esm/packages/phoenix/src/components/form/controllers/props_synchronizing/control_props_sync_consumer_controller.js +1 -1
  108. package/build/esm/packages/phoenix/src/components/form/controllers/props_synchronizing/control_props_sync_provider_controller.js +1 -1
  109. package/build/esm/packages/phoenix/src/components/form/input/input.js +1 -1
  110. package/build/esm/packages/phoenix/src/components/form/input/input.js.map +1 -1
  111. package/build/esm/packages/phoenix/src/components/form/input/input_icon.js +1 -1
  112. package/build/esm/packages/phoenix/src/components/form/radio/radio.js +1 -1
  113. package/build/esm/packages/phoenix/src/components/form/radio/radio.js.map +1 -1
  114. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_close_btn.d.ts +6 -0
  115. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_close_btn.js +23 -0
  116. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_close_btn.js.map +1 -0
  117. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_components_constatns.d.ts +19 -0
  118. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_components_constatns.js +21 -0
  119. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_components_types.d.ts +4 -0
  120. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_components_types.js +2 -0
  121. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_components_types.js.map +1 -0
  122. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_input.d.ts +13 -0
  123. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_input.js +64 -0
  124. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_input.js.map +1 -0
  125. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_option.d.ts +11 -0
  126. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_option.js +55 -0
  127. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_option.js.map +1 -0
  128. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_options.d.ts +5 -0
  129. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_options.js +29 -0
  130. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_options.js.map +1 -0
  131. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_search.d.ts +7 -0
  132. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_search.js +41 -0
  133. package/build/esm/packages/phoenix/src/components/form/select/control/components/select_search.js.map +1 -0
  134. package/build/esm/packages/phoenix/src/components/form/select/control/controllers/base_select_controller.d.ts +27 -0
  135. package/build/esm/packages/phoenix/src/components/form/select/control/controllers/base_select_controller.js +89 -0
  136. package/build/esm/packages/phoenix/src/components/form/select/control/controllers/base_select_controller.js.map +1 -0
  137. package/build/esm/packages/phoenix/src/components/form/select/control/controllers/multi_select_controller.d.ts +7 -0
  138. package/build/esm/packages/phoenix/src/components/form/select/control/controllers/multi_select_controller.js +18 -0
  139. package/build/esm/packages/phoenix/src/components/form/select/control/controllers/multi_select_controller.js.map +1 -0
  140. package/build/esm/packages/phoenix/src/components/form/select/control/controllers/select_controller.d.ts +5 -0
  141. package/build/esm/packages/phoenix/src/components/form/select/control/controllers/select_controller.js +15 -0
  142. package/build/esm/packages/phoenix/src/components/form/select/control/controllers/select_controller.js.map +1 -0
  143. package/build/esm/packages/phoenix/src/components/form/select/control/controllers/select_controllers_types.d.ts +22 -0
  144. package/build/esm/packages/phoenix/src/components/form/select/control/controllers/select_controllers_types.js +5 -0
  145. package/build/esm/packages/phoenix/src/components/form/select/control/controllers/select_controllers_types.js.map +1 -0
  146. package/build/esm/packages/phoenix/src/components/form/select/control/model/select_option.d.ts +10 -0
  147. package/build/esm/packages/phoenix/src/components/form/select/control/model/select_option.js +15 -0
  148. package/build/esm/packages/phoenix/src/components/form/select/control/model/select_option.js.map +1 -0
  149. package/build/esm/packages/phoenix/src/components/form/select/control/model/select_option_constants.d.ts +7 -0
  150. package/build/esm/packages/phoenix/src/components/form/select/control/model/select_option_constants.js +2 -0
  151. package/build/esm/packages/phoenix/src/components/form/select/control/model/select_option_constants.js.map +1 -0
  152. package/build/esm/packages/phoenix/src/components/form/select/control/model/select_option_mapper.d.ts +5 -0
  153. package/build/esm/packages/phoenix/src/components/form/select/control/model/select_option_mapper.js +20 -0
  154. package/build/esm/packages/phoenix/src/components/form/select/control/model/select_option_mapper.js.map +1 -0
  155. package/build/esm/packages/phoenix/src/components/form/select/control/select_control.d.ts +34 -0
  156. package/build/esm/packages/phoenix/src/components/form/select/control/select_control.js +198 -0
  157. package/build/esm/packages/phoenix/src/components/form/select/control/select_control.js.map +1 -0
  158. package/build/esm/packages/phoenix/src/components/form/select/control/select_control_constants.d.ts +13 -0
  159. package/build/esm/packages/phoenix/src/components/form/select/control/select_control_constants.js +16 -0
  160. package/build/esm/packages/phoenix/src/components/form/select/control/select_control_constants.js.map +1 -0
  161. package/build/esm/packages/phoenix/src/components/form/select/control/select_control_utils.d.ts +9 -0
  162. package/build/esm/packages/phoenix/src/components/form/select/control/select_control_utils.js +48 -0
  163. package/build/esm/packages/phoenix/src/components/form/select/control/select_control_utils.js.map +1 -0
  164. package/build/esm/packages/phoenix/src/components/{select/components/select_option.d.ts → form/select/select.d.ts} +5 -4
  165. package/build/esm/packages/phoenix/src/components/form/select/select.js +65 -0
  166. package/build/esm/packages/phoenix/src/components/form/select/select.js.map +1 -0
  167. package/build/esm/packages/phoenix/src/components/form/select/select_constants.d.ts +7 -0
  168. package/build/esm/packages/phoenix/src/components/form/select/select_constants.js +11 -0
  169. package/build/esm/packages/phoenix/src/components/form/select/select_constants.js.map +1 -0
  170. package/build/esm/packages/phoenix/src/components/form/select/select_types.d.ts +8 -0
  171. package/build/esm/packages/phoenix/src/components/form/select/select_types.js +3 -0
  172. package/build/esm/packages/phoenix/src/components/form/select/select_types.js.map +1 -0
  173. package/build/esm/packages/phoenix/src/components/form/switch/switch.js +1 -1
  174. package/build/esm/packages/phoenix/src/components/form/switch/switch.js.map +1 -1
  175. package/build/esm/packages/phoenix/src/components/messages/base_message.js +1 -1
  176. package/build/esm/packages/phoenix/src/components/modal/modal.js +4 -4
  177. package/build/esm/packages/phoenix/src/components/portal/portal.js +1 -1
  178. package/build/esm/packages/phoenix/src/components/portal/portal.js.map +1 -1
  179. package/build/esm/packages/phoenix/src/components/portal/portal_target.js +1 -1
  180. package/build/esm/packages/phoenix/src/components/scroll_to/scroll_to.js +1 -1
  181. package/build/esm/packages/phoenix/src/components/tabs/tab/tab.js +1 -1
  182. package/build/esm/packages/phoenix/src/components/tag/tag.js +7 -2
  183. package/build/esm/packages/phoenix/src/components/tag/tag.js.map +1 -1
  184. package/build/esm/packages/phoenix/src/controllers/{btn_controller.d.ts → btn_controller/btn_controller.d.ts} +2 -1
  185. package/build/esm/packages/phoenix/src/controllers/{btn_controller.js → btn_controller/btn_controller.js} +4 -3
  186. package/build/{cjs/packages/phoenix/src/controllers → esm/packages/phoenix/src/controllers/btn_controller}/btn_controller.js.map +1 -1
  187. package/build/esm/packages/phoenix/src/controllers/btn_controller/btn_controller_types.d.ts +3 -0
  188. package/build/esm/packages/phoenix/src/controllers/btn_controller/btn_controller_types.js +2 -0
  189. package/build/esm/packages/phoenix/src/controllers/btn_controller/btn_controller_types.js.map +1 -0
  190. package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller.js +4 -4
  191. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_controller_constants.d.ts +4 -0
  192. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_controller_constants.js +7 -0
  193. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_controller_constants.js.map +1 -0
  194. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_controller_types.d.ts +10 -0
  195. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_controller_types.js +4 -0
  196. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_controller_types.js.map +1 -0
  197. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_keyboard_controller.d.ts +10 -0
  198. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_keyboard_controller.js +80 -0
  199. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_keyboard_controller.js.map +1 -0
  200. package/build/esm/packages/phoenix/src/core/classes/behavior_subject/behavior_subject.d.ts +0 -2
  201. package/build/esm/packages/phoenix/src/core/classes/behavior_subject/behavior_subject.js +2 -7
  202. package/build/esm/packages/phoenix/src/core/classes/behavior_subject/behavior_subject.js.map +1 -1
  203. package/build/esm/packages/phoenix/src/core/classes/subject/subject.d.ts +4 -2
  204. package/build/esm/packages/phoenix/src/core/classes/subject/subject.js +8 -1
  205. package/build/esm/packages/phoenix/src/core/classes/subject/subject.js.map +1 -1
  206. package/build/esm/packages/phoenix/src/core/classes/subject/subject_types.d.ts +2 -1
  207. package/build/esm/packages/phoenix/src/core/context/context_consumer_controller.js +1 -1
  208. package/build/esm/packages/phoenix/src/core/phoenix_light_lit_element/phoenix_light_lit_element.js +10 -5
  209. package/build/esm/packages/phoenix/src/core/phoenix_light_lit_element/phoenix_light_lit_element.js.map +1 -1
  210. package/build/esm/packages/phoenix/src/directives/observable_directive.d.ts +1 -0
  211. package/build/esm/packages/phoenix/src/directives/observable_directive.js +35 -31
  212. package/build/esm/packages/phoenix/src/directives/observable_directive.js.map +1 -1
  213. package/build/esm/packages/phoenix/src/index.d.ts +6 -1
  214. package/build/esm/packages/phoenix/src/index.js +18 -13
  215. package/build/esm/packages/phoenix/src/index.js.map +1 -1
  216. package/package.json +3 -3
  217. package/build/esm/packages/phoenix/src/components/select/components/select_option.js +0 -54
  218. package/build/esm/packages/phoenix/src/components/select/components/select_option.js.map +0 -1
  219. package/build/esm/packages/phoenix/src/components/select/components/select_options.d.ts +0 -4
  220. package/build/esm/packages/phoenix/src/components/select/components/select_options.js +0 -15
  221. package/build/esm/packages/phoenix/src/components/select/components/select_options.js.map +0 -1
  222. package/build/esm/packages/phoenix/src/components/select/components/select_search.d.ts +0 -1
  223. package/build/esm/packages/phoenix/src/components/select/components/select_search.js +0 -2
  224. package/build/esm/packages/phoenix/src/components/select/components/select_search.js.map +0 -1
  225. package/build/esm/packages/phoenix/src/components/select/controlers/multi_select_controler.d.ts +0 -1
  226. package/build/esm/packages/phoenix/src/components/select/controlers/multi_select_controler.js +0 -2
  227. package/build/esm/packages/phoenix/src/components/select/controlers/multi_select_controler.js.map +0 -1
  228. package/build/esm/packages/phoenix/src/components/select/controlers/select_controler.d.ts +0 -11
  229. package/build/esm/packages/phoenix/src/components/select/controlers/select_controler.js +0 -14
  230. package/build/esm/packages/phoenix/src/components/select/controlers/select_controler.js.map +0 -1
  231. package/build/esm/packages/phoenix/src/components/select/model/option.d.ts +0 -2
  232. package/build/esm/packages/phoenix/src/components/select/model/option.js +0 -3
  233. package/build/esm/packages/phoenix/src/components/select/model/option.js.map +0 -1
  234. package/build/esm/packages/phoenix/src/components/select/select.d.ts +0 -12
  235. package/build/esm/packages/phoenix/src/components/select/select.js +0 -62
  236. package/build/esm/packages/phoenix/src/components/select/select.js.map +0 -1
  237. /package/build/esm/packages/phoenix/src/{controllers/btn_controller.js.map → components/form/select/control/components/select_components_constatns.js.map} +0 -0
@@ -0,0 +1,93 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ require('lit');
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');
9
+
10
+ class BaseSelectController {
11
+ constructor({ host }) {
12
+ this.options$ = new behavior_subject.BehaviorSubject([]);
13
+ this.selectedOptions$ = new behavior_subject.BehaviorSubject([]);
14
+ this._calculateValuesRelatedToOptions = (selectOptions) => {
15
+ const { visibleCount, selectedCount } = selectOptions.reduce((acc, option) => {
16
+ return {
17
+ visibleCount: !option.hidden ? acc.visibleCount + 1 : acc.visibleCount,
18
+ selectedCount: option.selected ? acc.selectedCount + 1 : acc.selectedCount
19
+ };
20
+ }, { visibleCount: 0, selectedCount: 0 });
21
+ this.visibleOptionsCount = visibleCount;
22
+ this.selectedOptionsCount = selectedCount;
23
+ this.selectedOptions$.notify(selectOptions.filter((option) => option.selected));
24
+ };
25
+ this.host = host;
26
+ this.host.addController(this);
27
+ this._setupComputedStateObserver();
28
+ }
29
+ _setupComputedStateObserver() {
30
+ this._optionsObserver = new observer.Observer(this._calculateValuesRelatedToOptions);
31
+ this.options$.subscribe(this._optionsObserver);
32
+ }
33
+ toggleOption(option) {
34
+ option.selected ? this.deselectOption(option) : this.selectOption(option);
35
+ }
36
+ removeOption(optionValue) {
37
+ const options = this.options$.getValue();
38
+ if (!options)
39
+ return;
40
+ this.options$.notify(options.filter((option) => option.value !== optionValue));
41
+ }
42
+ addOption(option, position) {
43
+ var _a;
44
+ const options = (_a = this.options$.getValue()) !== null && _a !== void 0 ? _a : [];
45
+ if (position === undefined) {
46
+ options.push(option);
47
+ this.options$.notify(options);
48
+ return;
49
+ }
50
+ this.options$.notify([...options.slice(0, position - 1), option, ...options.slice(position - 1)]);
51
+ }
52
+ replaceOptions(options) {
53
+ this.options$.notify(options);
54
+ }
55
+ deselectOptions() {
56
+ var _a;
57
+ (_a = this.options$.getValue()) === null || _a === void 0 ? void 0 : _a.forEach((option) => (option.selected = false));
58
+ this.requestOptionsUpdate();
59
+ }
60
+ deselectOption(option) {
61
+ var _a;
62
+ (_a = this.options$.getValue()) === null || _a === void 0 ? void 0 : _a.forEach((option) => (option.selected = false));
63
+ this.requestOptionsUpdate();
64
+ }
65
+ filterOptions(value) {
66
+ const selectOptions = this.options$.getValue();
67
+ if (!selectOptions)
68
+ return;
69
+ const filtered = utilities.SearchingUtils.fuzzySearch(value, selectOptions, 'content');
70
+ selectOptions.forEach((option) => (option.hidden = true));
71
+ filtered.forEach((option) => {
72
+ option.hidden = false;
73
+ });
74
+ this.requestOptionsUpdate();
75
+ }
76
+ requestOptionsUpdate() {
77
+ const selectOptions = this.options$.getValue();
78
+ if (!selectOptions)
79
+ return;
80
+ this.options$.notify([...selectOptions]);
81
+ this.host.requestUpdate();
82
+ }
83
+ getSelectOption(selectValue) {
84
+ var _a;
85
+ return (_a = this.options$.getValue()) === null || _a === void 0 ? void 0 : _a.find((option) => option.value === selectValue);
86
+ }
87
+ hostConnected() {
88
+ this.options$.unsubscribe(this._optionsObserver);
89
+ }
90
+ }
91
+
92
+ exports.BaseSelectController = BaseSelectController;
93
+ //# sourceMappingURL=base_select_controller.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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,22 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var base_select_controller = require('./base_select_controller.js');
6
+
7
+ class MultiSelectController extends base_select_controller.BaseSelectController {
8
+ toggleOption(option) {
9
+ option.selected ? this.deselectOption(option) : this.selectOption(option);
10
+ }
11
+ selectOption(option) {
12
+ option.selected = true;
13
+ this.requestOptionsUpdate();
14
+ }
15
+ deselectOption(option) {
16
+ option.selected = false;
17
+ this.requestOptionsUpdate();
18
+ }
19
+ }
20
+
21
+ exports.MultiSelectController = MultiSelectController;
22
+ //# sourceMappingURL=multi_select_controller.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;"}
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var base_select_controller = require('./base_select_controller.js');
6
+
7
+ class SelectController extends base_select_controller.BaseSelectController {
8
+ selectOption(option) {
9
+ var _a;
10
+ const selectedOptions = (_a = this.options$.getValue()) !== null && _a !== void 0 ? _a : [];
11
+ selectedOptions.forEach((option) => (option.selected = false));
12
+ option.selected = true;
13
+ this.selectedOptions$.notify([option]);
14
+ this.requestOptionsUpdate();
15
+ }
16
+ }
17
+
18
+ exports.SelectController = SelectController;
19
+ //# sourceMappingURL=select_controller.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;"}
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ class SelectOption {
6
+ constructor({ selected = false, hidden = false, disabled = false, value, content }) {
7
+ this.value = value;
8
+ this.selected = selected;
9
+ this.hidden = hidden;
10
+ this.disabled = disabled;
11
+ this.content = content;
12
+ }
13
+ static create(options) {
14
+ return new SelectOption(options);
15
+ }
16
+ }
17
+
18
+ exports.SelectOption = SelectOption;
19
+ //# sourceMappingURL=select_option.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;"}
@@ -0,0 +1,24 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var select_components_constatns = require('../components/select_components_constatns.js');
6
+ var select_option = require('./select_option.js');
7
+
8
+ class SelectOptionMapper {
9
+ static toModel($option) {
10
+ var _a;
11
+ const optionContent = (_a = $option.querySelector(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.optionContent)) === null || _a === void 0 ? void 0 : _a.textContent;
12
+ if (!optionContent)
13
+ throw new Error('h-options must contains a h-option-content element inside');
14
+ return select_option.SelectOption.create({
15
+ value: $option.value,
16
+ disabled: $option.disabled,
17
+ hidden: $option.hidden,
18
+ content: optionContent
19
+ });
20
+ }
21
+ }
22
+
23
+ exports.SelectOptionMapper = SelectOptionMapper;
24
+ //# sourceMappingURL=select_option_mapper.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;"}
@@ -0,0 +1,200 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib_es6 = require('../../../../../../../external/tslib/tslib.es6.js');
6
+ var lit = require('lit');
7
+ var decorators = require('lit/decorators');
8
+ var phoenix_light_lit_element = require('../../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
9
+ var phoenix_custom_element = require('../../../../core/decorators/phoenix_custom_element.js');
10
+ var decorators_js = require('@lit/reactive-element/decorators.js');
11
+ var select_components_constatns = require('./components/select_components_constatns.js');
12
+ var select_control_constants = require('./select_control_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/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_control_utils = require('./select_control_utils.js');
24
+
25
+ exports.HSelectControl = class HSelectControl extends phoenix_light_lit_element.PhoenixLightLitElement {
26
+ constructor() {
27
+ super();
28
+ this.multiselect = false;
29
+ this._searchValue = '';
30
+ this._$options = {};
31
+ this._$dropdown = ref_js.createRef();
32
+ this._$search = ref_js.createRef();
33
+ this._$optionsList = ref_js.createRef();
34
+ this._selectContext = new context_provider_controller.ContextProviderController(this);
35
+ this._handleOptionDeselect = (event) => {
36
+ const selectedOption = this._selectController.getSelectOption(event.detail);
37
+ if (!selectedOption)
38
+ return;
39
+ this._selectController.deselectOption(selectedOption);
40
+ };
41
+ this._updateOptionsView = (options) => {
42
+ if (options.length < Object.keys(this._$options).length)
43
+ this._removeHTMLOptions(options.map((option) => option.value));
44
+ options.forEach((option, index) => {
45
+ const { selected, value } = option;
46
+ const $option = this._$options[value];
47
+ if (!$option) {
48
+ this._appendNewHTMLOption(option, index + 1);
49
+ return;
50
+ }
51
+ select_control_utils.SelectControlUtils.syncHTMLOptionWithModel(option, $option);
52
+ if (!selected)
53
+ return;
54
+ $option.setAttribute(this.multiselect ? 'aria-checked' : 'aria-selected', 'true');
55
+ });
56
+ };
57
+ this._handleOptionClicked = (event) => {
58
+ const selectedOption = this._selectController.getSelectOption(event.detail.$option.value);
59
+ if (!selectedOption)
60
+ return;
61
+ this._selectController.toggleOption(selectedOption);
62
+ if (!this.multiselect)
63
+ this._closeSelect();
64
+ };
65
+ this._closeSelect = () => {
66
+ var _a;
67
+ (_a = this._$dropdown.value) === null || _a === void 0 ? void 0 : _a.hide();
68
+ };
69
+ this._clearOptions = () => {
70
+ this._selectController.deselectOptions();
71
+ };
72
+ this._handleDropdownHidden = () => {
73
+ this._searchValue = '';
74
+ };
75
+ const $options = Array.from(this.querySelectorAll(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.option));
76
+ $options.forEach(($option) => $option.setAttribute('slot', select_control_constants.SELECT_SLOT_NAMES.content));
77
+ }
78
+ updated(props) {
79
+ super.updated(props);
80
+ if (this._$optionsList.value && !this._listBoxController)
81
+ this._listBoxController = new list_box_keyboard_controller.ListBoxKeyboardController({
82
+ host: this,
83
+ $list: this._$optionsList.value
84
+ });
85
+ }
86
+ connectedCallback() {
87
+ super.connectedCallback();
88
+ this._selectController = this.multiselect ? new multi_select_controller.MultiSelectController({ host: this }) : new select_controller.SelectController({ host: this });
89
+ this._selectContext.provide(select_control_constants.SELECT_CONTEXTS.selectedOptions$, this._selectController.selectedOptions$);
90
+ this._selectContext.provide(select_control_constants.SELECT_CONTEXTS.isMultiselect, this.multiselect);
91
+ const $options = Array.from(this.querySelectorAll(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.option));
92
+ this._selectController.options$.subscribe(new observer.Observer((selectedOptions) => this._updateOptionsView(selectedOptions)));
93
+ this._$options = $options.reduce((acc, $option) => {
94
+ if (acc[$option.value] !== undefined)
95
+ throw Error('Select options must hava a unique values.');
96
+ return {
97
+ ...acc,
98
+ [$option.value]: $option
99
+ };
100
+ }, {});
101
+ this._selectController.options$.notify($options.map(select_option_mapper.SelectOptionMapper.toModel));
102
+ this._setupEvents();
103
+ }
104
+ _setupEvents() {
105
+ this.addEventListener(select_control_constants.SELECT_EVENT_NAMES.deselectOption, this._handleOptionDeselect);
106
+ }
107
+ _appendNewHTMLOption(option, position) {
108
+ const $list = this._$optionsList.value;
109
+ if (!$list)
110
+ return;
111
+ const { value, selected } = option;
112
+ const $option = select_control_utils.SelectControlUtils.createHTMLOption(option);
113
+ if (selected)
114
+ $option.setAttribute(this.multiselect ? 'aria-checked' : 'aria-selected', 'true');
115
+ this._$options[value] = $option;
116
+ select_control_utils.SelectControlUtils.appendHTMLOption($option, $list, position);
117
+ }
118
+ _removeHTMLOptions(optionsValues) {
119
+ this._$options = select_control_utils.SelectControlUtils.removeHTMLOption(Object.values(this._$options), optionsValues);
120
+ }
121
+ _handleSearch({ detail }) {
122
+ this._searchValue = detail;
123
+ }
124
+ update(changedProperties) {
125
+ super.update(changedProperties);
126
+ if (changedProperties.has('_searchValue'))
127
+ this._selectController.filterOptions(this._searchValue);
128
+ }
129
+ addOption(option, position) {
130
+ this._selectController.addOption(option, position);
131
+ }
132
+ removeOption(optionValue) {
133
+ this._selectController.removeOption(optionValue);
134
+ }
135
+ replaceOptions(options) {
136
+ this._selectController.replaceOptions(options);
137
+ }
138
+ render() {
139
+ var _a;
140
+ const options = (_a = this._selectController.options$.getValue()) !== null && _a !== void 0 ? _a : [];
141
+ return lit.html `
142
+ <div>
143
+ <h-dropdown ${ref_js.ref(this._$dropdown)} @dropdown.hidden=${this._handleDropdownHidden} name=${this.controlName}>
144
+ <h-dropdown-toggler name=${this.controlName}> ${this.getSlot(select_control_constants.SELECT_SLOT_NAMES.input)} </h-dropdown-toggler>
145
+
146
+ <h-dropdown-content name=${this.controlName}>
147
+ <h-select-close-btn @click=${this._closeSelect}></h-select-close-btn>
148
+
149
+ ${options.length > select_control_constants.MIN_NUMBER_OF_OPTIONS_TO_SHOW_SEARCH
150
+ ? lit.html `<h-select-search
151
+ ${ref_js.ref(this._$search)}
152
+ .value=${this._searchValue}
153
+ @selectSearch.search=${this._handleSearch}
154
+ ></h-select-search>`
155
+ : lit.nothing}
156
+ ${this.hasSlot(select_control_constants.SELECT_SLOT_NAMES.content)
157
+ ? lit.html `
158
+ <h-select-options ${ref_js.ref(this._$optionsList)} @selectOptions.clicked=${this._handleOptionClicked}>
159
+ ${this.getSlot(select_control_constants.SELECT_SLOT_NAMES.content)}
160
+ </h-select-options>
161
+ `
162
+ : lit.nothing}
163
+ ${!this._selectController.visibleOptionsCount ? lit.html `<p>brak wyników dla ${this._searchValue}</p>` : lit.nothing}
164
+ ${this.multiselect && this._selectController.selectedOptionsCount >= 1
165
+ ? lit.html `
166
+ <section>
167
+ <button @click=${this._clearOptions}>clear</button>
168
+ <h-select-close-btn @click=${this._closeSelect}>ok</h-select-close-btn>
169
+ </section>
170
+ `
171
+ : lit.nothing}
172
+ </h-dropdown-content>
173
+ </h-dropdown>
174
+
175
+ ${observable_directive.observe(this._selectController.selectedOptions$, (selectOptions) => selectOptions.map((option) => lit.html `<input type="hidden" name=${this.controlName} value=${option.value} />`))}
176
+ </div>
177
+ `;
178
+ }
179
+ };
180
+ exports.HSelectControl._components = {
181
+ search: select_search.HSelectSearch,
182
+ icon: icon.HIcon
183
+ };
184
+ tslib_es6.__decorate([
185
+ decorators_js.property({ type: String }),
186
+ tslib_es6.__metadata("design:type", String)
187
+ ], exports.HSelectControl.prototype, "controlName", void 0);
188
+ tslib_es6.__decorate([
189
+ decorators_js.property({ type: Boolean }),
190
+ tslib_es6.__metadata("design:type", Boolean)
191
+ ], exports.HSelectControl.prototype, "multiselect", void 0);
192
+ tslib_es6.__decorate([
193
+ decorators.state(),
194
+ tslib_es6.__metadata("design:type", String)
195
+ ], exports.HSelectControl.prototype, "_searchValue", void 0);
196
+ exports.HSelectControl = tslib_es6.__decorate([
197
+ phoenix_custom_element.phoenixCustomElement('h-select-control'),
198
+ tslib_es6.__metadata("design:paramtypes", [])
199
+ ], exports.HSelectControl);
200
+ //# sourceMappingURL=select_control.js.map
@@ -0,0 +1 @@
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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,23 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const SELECT_CONTEXTS = {
6
+ isMultiselect: 'isMultiselect',
7
+ selectedOptions$: 'selectedOptions$'
8
+ };
9
+ const SELECT_SLOT_NAMES = {
10
+ content: 'content',
11
+ input: 'input'
12
+ };
13
+ const SELECT_EVENT_NAMES = {
14
+ selectOption: 'selectOption.select',
15
+ deselectOption: 'selectOption.deselect'
16
+ };
17
+ const MIN_NUMBER_OF_OPTIONS_TO_SHOW_SEARCH = 6;
18
+
19
+ exports.MIN_NUMBER_OF_OPTIONS_TO_SHOW_SEARCH = MIN_NUMBER_OF_OPTIONS_TO_SHOW_SEARCH;
20
+ exports.SELECT_CONTEXTS = SELECT_CONTEXTS;
21
+ exports.SELECT_EVENT_NAMES = SELECT_EVENT_NAMES;
22
+ exports.SELECT_SLOT_NAMES = SELECT_SLOT_NAMES;
23
+ //# sourceMappingURL=select_control_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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,52 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var select_components_constatns = require('./components/select_components_constatns.js');
6
+
7
+ class SelectControlUtils {
8
+ static createHTMLOption(option) {
9
+ const { selected, value, disabled, hidden, content } = option;
10
+ const $option = document.createElement(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.option);
11
+ $option.setAttribute('value', String(value));
12
+ const $optionContent = document.createElement(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.optionContent);
13
+ $optionContent.innerText = content;
14
+ $option.append($optionContent);
15
+ if (selected)
16
+ $option.setAttribute('selected', '');
17
+ if (disabled)
18
+ $option.setAttribute('disabled', '');
19
+ if (hidden)
20
+ $option.setAttribute('hidden', '');
21
+ return $option;
22
+ }
23
+ static syncHTMLOptionWithModel(option, $option) {
24
+ const { selected, value, disabled, hidden } = option;
25
+ $option.selected = selected;
26
+ $option.value = value;
27
+ $option.disabled = disabled;
28
+ $option.hidden = hidden;
29
+ }
30
+ static removeHTMLOption($options, optionsValuesThatExists) {
31
+ return $options.reduce((acc, $option) => {
32
+ if (optionsValuesThatExists.includes($option.value))
33
+ return {
34
+ ...acc,
35
+ [$option.value]: $option
36
+ };
37
+ $option.remove();
38
+ return acc;
39
+ }, {});
40
+ }
41
+ static appendHTMLOption($option, $list, position) {
42
+ if (position !== undefined) {
43
+ const $nextOption = $list.querySelector(`${select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.option}:nth-child(${position})`);
44
+ $nextOption ? $nextOption.insertAdjacentElement('beforebegin', $option) : $list.append($option);
45
+ return;
46
+ }
47
+ $list.append($option);
48
+ }
49
+ }
50
+
51
+ exports.SelectControlUtils = SelectControlUtils;
52
+ //# sourceMappingURL=select_control_utils.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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,67 @@
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/phoenix_light_lit_element.js');
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
+ var checkbox_constants = require('../checkbox/checkbox_constants.js');
12
+ var index = require('../../../../../../external/classnames/index.js');
13
+ var select_constants = require('./select_constants.js');
14
+
15
+ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLitElement {
16
+ constructor() {
17
+ 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
+ });
22
+ }
23
+ connectedCallback() {
24
+ 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);
33
+ }
34
+ };
35
+ 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 }),
41
+ tslib_es6.__metadata("design:type", String)
42
+ ], exports.HSelect.prototype, "controlName", void 0);
43
+ tslib_es6.__decorate([
44
+ decorators.property({ type: Boolean }),
45
+ tslib_es6.__metadata("design:type", Boolean)
46
+ ], exports.HSelect.prototype, "disabled", void 0);
47
+ tslib_es6.__decorate([
48
+ decorators.property({ type: Boolean }),
49
+ tslib_es6.__metadata("design:type", Boolean)
50
+ ], exports.HSelect.prototype, "required", void 0);
51
+ 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);
63
+ exports.HSelect = tslib_es6.__decorate([
64
+ phoenix_custom_element.phoenixCustomElement('h-select'),
65
+ tslib_es6.__metadata("design:paramtypes", [])
66
+ ], exports.HSelect);
67
+ //# sourceMappingURL=select.js.map
@@ -0,0 +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;"}
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const baseSelectControlClass = 'select';
6
+ const SELECT_CONTROL_CSS_CLASSES = {
7
+ select: baseSelectControlClass,
8
+ selectError: `${baseSelectControlClass}_error`,
9
+ selectDisabled: `${baseSelectControlClass}_disabled`,
10
+ selectReadonly: `${baseSelectControlClass}_readonly`,
11
+ selectControl: `${baseSelectControlClass}__control`
12
+ };
13
+
14
+ exports.SELECT_CONTROL_CSS_CLASSES = SELECT_CONTROL_CSS_CLASSES;
15
+ //# sourceMappingURL=select_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;AACA;AACA;"}
@@ -8,8 +8,8 @@ var phoenix_light_lit_element = require('../../../core/phoenix_light_lit_element
8
8
  var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
9
9
  var control_props_sync_controller_constants = require('../controllers/props_synchronizing/control_props_sync_controller_constants.js');
10
10
  var control_props_sync_provider_controller = require('../controllers/props_synchronizing/control_props_sync_provider_controller.js');
11
- var index = require('../../../../../../external/classnames/index.js');
12
11
  var checkbox_constants = require('../checkbox/checkbox_constants.js');
12
+ var index = require('../../../../../../external/classnames/index.js');
13
13
  var switch_constants = require('./switch_constants.js');
14
14
 
15
15
  exports.HSwitch = class HSwitch 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,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;"}
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;"}
@@ -6,9 +6,9 @@ var tslib_es6 = require('../../../../../external/tslib/tslib.es6.js');
6
6
  var decorators = require('lit/decorators');
7
7
  var utilities = require('@dreamcommerce/utilities');
8
8
  var phoenix_light_lit_element = require('../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
9
- var portal_constants = require('../portal/portal_constants.js');
10
9
  var keystrokes_controller = require('../../controllers/keystrokes_controller/keystrokes_controller.js');
11
10
  var relative_position_controller_constants = require('../../controllers/relative_position_controller/relative_position_controller_constants.js');
11
+ var portal_constants = require('../portal/portal_constants.js');
12
12
  var click_outside_controller = require('../../controllers/click_outside_controller/click_outside_controller.js');
13
13
  var relative_position_controller = require('../../controllers/relative_position_controller/relative_position_controller.js');
14
14
  var base_message_constants = require('./base_message_constants.js');
@@ -5,13 +5,13 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  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
- var portal_constants = require('../portal/portal_constants.js');
9
- var modal_constants = require('./modal_constants.js');
10
- var litHtml = require('lit-html');
11
- var backdrop_controller = require('../backdrop/controller/backdrop_controller.js');
12
8
  var decorators_js = require('@lit/reactive-element/decorators.js');
9
+ var litHtml = require('lit-html');
13
10
  var ref_js = require('lit-html/directives/ref.js');
11
+ var portal_constants = require('../portal/portal_constants.js');
12
+ var backdrop_controller = require('../backdrop/controller/backdrop_controller.js');
14
13
  require('@lit/reactive-element');
14
+ var modal_constants = require('./modal_constants.js');
15
15
 
16
16
  var HModal_1;
17
17
  exports.HModal = HModal_1 = class HModal extends phoenix_light_lit_element.PhoenixLightLitElement {
@@ -7,8 +7,8 @@ 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 portal_constants = require('./portal_constants.js');
11
10
  var v4 = require('../../../../../external/uuid/dist/esm-browser/v4.js');
11
+ var portal_constants = require('./portal_constants.js');
12
12
 
13
13
  exports.HPortal = class HPortal extends phoenix_light_lit_element.PhoenixLightLitElement {
14
14
  constructor() {
@@ -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,iBAAiB,qDAAyD;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,4CAAgD;AACxE;AACA;AACA;AACA;AACA,iBAAiB,qDAAyD;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}