@shoper/phoenix_design_system 1.0.3 → 1.1.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 (244) hide show
  1. package/build/cjs/{packages/phoenix/external → external}/classnames/index.js +10 -16
  2. package/build/{esm/packages/phoenix → cjs}/external/classnames/index.js.map +1 -1
  3. package/build/cjs/external/lit/external/lit-html/async-directive.js +18 -0
  4. package/build/cjs/external/lit/external/lit-html/async-directive.js.map +1 -0
  5. package/build/cjs/external/lit/external/lit-html/directive-helpers.js +14 -0
  6. package/build/cjs/external/lit/external/lit-html/directive-helpers.js.map +1 -0
  7. package/build/cjs/external/lit/external/lit-html/directive.js +2 -1
  8. package/build/cjs/external/lit/external/lit-html/directive.js.map +1 -1
  9. package/build/cjs/packages/phoenix/src/components/accordion/accordion.js +1 -1
  10. package/build/cjs/packages/phoenix/src/components/accordion/accordion_content.js +1 -1
  11. package/build/cjs/packages/phoenix/src/components/accordion/accordion_group.js +2 -2
  12. package/build/cjs/packages/phoenix/src/components/accordion/accordion_toggler.js +2 -2
  13. package/build/cjs/packages/phoenix/src/components/color_swatches/color_item/color_item.js +1 -1
  14. package/build/cjs/packages/phoenix/src/components/color_swatches/show-more/show_more.js +1 -1
  15. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js +43 -26
  16. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -1
  17. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_content.js +1 -4
  18. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_content.js.map +1 -1
  19. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_toggler.js +6 -3
  20. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_toggler.js.map +1 -1
  21. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox.js +1 -1
  22. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox.js.map +1 -1
  23. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox_control.js +2 -2
  24. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox_control.js.map +1 -1
  25. package/build/cjs/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js +11 -13
  26. package/build/cjs/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js.map +1 -1
  27. package/build/cjs/packages/phoenix/src/components/form/controllers/props_synchronizing/control_props_sync_consumer_controller.js +1 -1
  28. package/build/cjs/packages/phoenix/src/components/form/controllers/props_synchronizing/control_props_sync_provider_controller.js +1 -1
  29. package/build/cjs/packages/phoenix/src/components/form/input/input.js +1 -1
  30. package/build/cjs/packages/phoenix/src/components/form/input/input.js.map +1 -1
  31. package/build/cjs/packages/phoenix/src/components/form/input/input_icon.js +1 -1
  32. package/build/cjs/packages/phoenix/src/components/form/radio/radio.js +1 -1
  33. package/build/cjs/packages/phoenix/src/components/form/radio/radio.js.map +1 -1
  34. package/build/cjs/packages/phoenix/src/components/form/select/components/option/select_option.js +57 -0
  35. package/build/cjs/packages/phoenix/src/components/form/select/components/option/select_option.js.map +1 -0
  36. package/build/cjs/packages/phoenix/src/components/form/select/components/option/select_option_constants.js +12 -0
  37. package/build/cjs/packages/phoenix/src/components/form/select/components/option/select_option_constants.js.map +1 -0
  38. package/build/cjs/packages/phoenix/src/components/form/select/components/search/select_search.js +50 -0
  39. package/build/cjs/packages/phoenix/src/components/form/select/components/search/select_search.js.map +1 -0
  40. package/build/cjs/packages/phoenix/src/components/form/select/components/search/select_search_constants.js +13 -0
  41. package/build/cjs/packages/phoenix/src/components/form/select/components/search/select_search_constants.js.map +1 -0
  42. package/build/cjs/packages/phoenix/src/components/form/select/components/select_components_constatns.js +29 -0
  43. package/build/cjs/packages/phoenix/src/components/form/select/components/select_components_constatns.js.map +1 -0
  44. package/build/cjs/packages/phoenix/src/components/form/select/components/select_options.js +31 -0
  45. package/build/cjs/packages/phoenix/src/components/form/select/components/select_options.js.map +1 -0
  46. package/build/cjs/packages/phoenix/src/components/form/select/components/value/select_value.js +69 -0
  47. package/build/cjs/packages/phoenix/src/components/form/select/components/value/select_value.js.map +1 -0
  48. package/build/cjs/packages/phoenix/src/components/form/select/components/value/select_value_constants.js +10 -0
  49. package/build/cjs/packages/phoenix/src/components/form/select/components/value/select_value_constants.js.map +1 -0
  50. package/build/cjs/packages/phoenix/src/components/form/select/controllers/base_select_controller.js +93 -0
  51. package/build/cjs/packages/phoenix/src/components/form/select/controllers/base_select_controller.js.map +1 -0
  52. package/build/cjs/packages/phoenix/src/components/form/select/controllers/multi_select_controller.js +22 -0
  53. package/build/cjs/packages/phoenix/src/components/form/select/controllers/multi_select_controller.js.map +1 -0
  54. package/build/cjs/packages/phoenix/src/components/form/select/controllers/select_controller.js +19 -0
  55. package/build/cjs/packages/phoenix/src/components/form/select/controllers/select_controller.js.map +1 -0
  56. package/build/cjs/packages/phoenix/src/components/form/select/model/select_option.js +19 -0
  57. package/build/cjs/packages/phoenix/src/components/form/select/model/select_option.js.map +1 -0
  58. package/build/cjs/packages/phoenix/src/components/form/select/model/select_option_mapper.js +24 -0
  59. package/build/cjs/packages/phoenix/src/components/form/select/model/select_option_mapper.js.map +1 -0
  60. package/build/cjs/packages/phoenix/src/components/form/select/select.js +225 -0
  61. package/build/cjs/packages/phoenix/src/components/form/select/select.js.map +1 -0
  62. package/build/cjs/packages/phoenix/src/components/form/select/select_constants.js +35 -0
  63. package/build/cjs/packages/phoenix/src/components/form/select/select_constants.js.map +1 -0
  64. package/build/cjs/packages/phoenix/src/components/form/select/select_utils.js +52 -0
  65. package/build/cjs/packages/phoenix/src/components/form/select/select_utils.js.map +1 -0
  66. package/build/cjs/packages/phoenix/src/components/form/switch/switch.js +1 -1
  67. package/build/cjs/packages/phoenix/src/components/form/switch/switch.js.map +1 -1
  68. package/build/cjs/packages/phoenix/src/components/form/textarea/textarea.js +1 -1
  69. package/build/cjs/packages/phoenix/src/components/form/textarea/textarea.js.map +1 -1
  70. package/build/cjs/packages/phoenix/src/components/icon/icon.js +1 -1
  71. package/build/cjs/packages/phoenix/src/components/icon/icon.js.map +1 -1
  72. package/build/cjs/packages/phoenix/src/components/messages/base_message.js +1 -1
  73. package/build/cjs/packages/phoenix/src/components/modal/modal.js +4 -4
  74. package/build/cjs/packages/phoenix/src/components/portal/portal.js +1 -1
  75. package/build/cjs/packages/phoenix/src/components/portal/portal.js.map +1 -1
  76. package/build/cjs/packages/phoenix/src/components/portal/portal_target.js +1 -1
  77. package/build/cjs/packages/phoenix/src/components/scroll_to/scroll_to.js +1 -1
  78. package/build/cjs/packages/phoenix/src/components/tabs/tab/tab.js +1 -1
  79. package/build/cjs/packages/phoenix/src/components/tag/tag.js +3 -2
  80. package/build/cjs/packages/phoenix/src/components/tag/tag.js.map +1 -1
  81. package/build/cjs/packages/phoenix/src/controllers/{btn_controller.js → btn_controller/btn_controller.js} +4 -3
  82. package/build/cjs/packages/phoenix/src/controllers/btn_controller/btn_controller.js.map +1 -0
  83. package/build/cjs/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller.js +4 -4
  84. package/build/cjs/packages/phoenix/src/controllers/list_box_controller/list_box_controller_constants.js +11 -0
  85. package/build/cjs/packages/phoenix/src/controllers/list_box_controller/list_box_controller_constants.js.map +1 -0
  86. package/build/cjs/packages/phoenix/src/controllers/list_box_controller/list_box_keyboard_controller.js +84 -0
  87. package/build/cjs/packages/phoenix/src/controllers/list_box_controller/list_box_keyboard_controller.js.map +1 -0
  88. package/build/cjs/packages/phoenix/src/core/classes/behavior_subject/behavior_subject.js +2 -7
  89. package/build/cjs/packages/phoenix/src/core/classes/behavior_subject/behavior_subject.js.map +1 -1
  90. package/build/cjs/packages/phoenix/src/core/classes/subject/subject.js +8 -1
  91. package/build/cjs/packages/phoenix/src/core/classes/subject/subject.js.map +1 -1
  92. package/build/cjs/packages/phoenix/src/core/context/context_consumer_controller.js +1 -1
  93. package/build/cjs/packages/phoenix/src/core/phoenix_light_lit_element/phoenix_light_lit_element.js +10 -5
  94. package/build/cjs/packages/phoenix/src/core/phoenix_light_lit_element/phoenix_light_lit_element.js.map +1 -1
  95. package/build/cjs/packages/phoenix/src/directives/observable_directive.js +40 -0
  96. package/build/cjs/packages/phoenix/src/directives/observable_directive.js.map +1 -0
  97. package/build/cjs/packages/phoenix/src/index.js +73 -45
  98. package/build/cjs/packages/phoenix/src/index.js.map +1 -1
  99. package/build/esm/{packages/phoenix/external → external}/classnames/index.js +10 -16
  100. package/build/{cjs/packages/phoenix → esm}/external/classnames/index.js.map +1 -1
  101. package/build/esm/external/lit/external/lit-html/async-directive.js +12 -0
  102. package/build/esm/external/lit/external/lit-html/async-directive.js.map +1 -0
  103. package/build/esm/external/lit/external/lit-html/directive-helpers.js +10 -0
  104. package/build/esm/external/lit/external/lit-html/directive-helpers.js.map +1 -0
  105. package/build/esm/external/lit/external/lit-html/directive.js +2 -2
  106. package/build/esm/packages/phoenix/src/components/accordion/accordion.js +1 -1
  107. package/build/esm/packages/phoenix/src/components/accordion/accordion_content.js +1 -1
  108. package/build/esm/packages/phoenix/src/components/accordion/accordion_group.js +2 -2
  109. package/build/esm/packages/phoenix/src/components/accordion/accordion_toggler.js +2 -2
  110. package/build/esm/packages/phoenix/src/components/color_swatches/color_item/color_item.js +1 -1
  111. package/build/esm/packages/phoenix/src/components/color_swatches/show-more/show_more.js +1 -1
  112. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.d.ts +1 -0
  113. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js +44 -27
  114. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -1
  115. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_content.js +1 -4
  116. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_content.js.map +1 -1
  117. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.d.ts +1 -0
  118. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.js +6 -3
  119. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.js.map +1 -1
  120. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox.js +1 -1
  121. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox.js.map +1 -1
  122. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox_control.js +2 -2
  123. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox_control.js.map +1 -1
  124. package/build/esm/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.d.ts +2 -3
  125. package/build/esm/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js +11 -13
  126. package/build/esm/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js.map +1 -1
  127. package/build/esm/packages/phoenix/src/components/form/controllers/props_synchronizing/control_props_sync_consumer_controller.js +1 -1
  128. package/build/esm/packages/phoenix/src/components/form/controllers/props_synchronizing/control_props_sync_provider_controller.js +1 -1
  129. package/build/esm/packages/phoenix/src/components/form/input/input.js +1 -1
  130. package/build/esm/packages/phoenix/src/components/form/input/input.js.map +1 -1
  131. package/build/esm/packages/phoenix/src/components/form/input/input_icon.js +1 -1
  132. package/build/esm/packages/phoenix/src/components/form/radio/radio.js +1 -1
  133. package/build/esm/packages/phoenix/src/components/form/radio/radio.js.map +1 -1
  134. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option.d.ts +11 -0
  135. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option.js +55 -0
  136. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option.js.map +1 -0
  137. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option_constants.d.ts +4 -0
  138. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option_constants.js +8 -0
  139. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option_constants.js.map +1 -0
  140. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option_content.d.ts +4 -0
  141. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option_content.js +16 -0
  142. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option_content.js.map +1 -0
  143. package/build/esm/packages/phoenix/src/components/form/select/components/search/select_search.d.ts +7 -0
  144. package/build/esm/packages/phoenix/src/components/form/select/components/search/select_search.js +48 -0
  145. package/build/esm/packages/phoenix/src/components/form/select/components/search/select_search.js.map +1 -0
  146. package/build/esm/packages/phoenix/src/components/form/select/components/search/select_search_constants.d.ts +5 -0
  147. package/build/esm/packages/phoenix/src/components/form/select/components/search/select_search_constants.js +9 -0
  148. package/build/esm/packages/phoenix/src/components/form/select/components/search/select_search_constants.js.map +1 -0
  149. package/build/esm/packages/phoenix/src/components/form/select/components/select_close_btn.d.ts +6 -0
  150. package/build/esm/packages/phoenix/src/components/form/select/components/select_close_btn.js +23 -0
  151. package/build/esm/packages/phoenix/src/components/form/select/components/select_close_btn.js.map +1 -0
  152. package/build/esm/packages/phoenix/src/components/form/select/components/select_components_constatns.d.ts +19 -0
  153. package/build/esm/packages/phoenix/src/components/form/select/components/select_components_constatns.js +21 -0
  154. package/build/esm/packages/phoenix/src/components/form/select/components/select_components_types.d.ts +4 -0
  155. package/build/esm/packages/phoenix/src/components/form/select/components/select_components_types.js +2 -0
  156. package/build/esm/packages/phoenix/src/components/form/select/components/select_components_types.js.map +1 -0
  157. package/build/esm/packages/phoenix/src/components/form/select/components/select_options.d.ts +5 -0
  158. package/build/esm/packages/phoenix/src/components/form/select/components/select_options.js +29 -0
  159. package/build/esm/packages/phoenix/src/components/form/select/components/select_options.js.map +1 -0
  160. package/build/esm/packages/phoenix/src/components/form/select/components/value/select_value.d.ts +13 -0
  161. package/build/esm/packages/phoenix/src/components/form/select/components/value/select_value.js +67 -0
  162. package/build/esm/packages/phoenix/src/components/form/select/components/value/select_value.js.map +1 -0
  163. package/build/esm/packages/phoenix/src/components/form/select/components/value/select_value_constants.d.ts +3 -0
  164. package/build/esm/packages/phoenix/src/components/form/select/components/value/select_value_constants.js +6 -0
  165. package/build/esm/packages/phoenix/src/components/form/select/components/value/select_value_constants.js.map +1 -0
  166. package/build/esm/packages/phoenix/src/components/form/select/controllers/base_select_controller.d.ts +27 -0
  167. package/build/esm/packages/phoenix/src/components/form/select/controllers/base_select_controller.js +89 -0
  168. package/build/esm/packages/phoenix/src/components/form/select/controllers/base_select_controller.js.map +1 -0
  169. package/build/esm/packages/phoenix/src/components/form/select/controllers/multi_select_controller.d.ts +7 -0
  170. package/build/esm/packages/phoenix/src/components/form/select/controllers/multi_select_controller.js +18 -0
  171. package/build/esm/packages/phoenix/src/components/form/select/controllers/multi_select_controller.js.map +1 -0
  172. package/build/esm/packages/phoenix/src/components/form/select/controllers/select_controller.d.ts +5 -0
  173. package/build/esm/packages/phoenix/src/components/form/select/controllers/select_controller.js +15 -0
  174. package/build/esm/packages/phoenix/src/components/form/select/controllers/select_controller.js.map +1 -0
  175. package/build/esm/packages/phoenix/src/components/form/select/controllers/select_controllers_types.d.ts +22 -0
  176. package/build/esm/packages/phoenix/src/components/form/select/controllers/select_controllers_types.js +5 -0
  177. package/build/esm/packages/phoenix/src/components/form/select/controllers/select_controllers_types.js.map +1 -0
  178. package/build/esm/packages/phoenix/src/components/form/select/model/select_option.d.ts +10 -0
  179. package/build/esm/packages/phoenix/src/components/form/select/model/select_option.js +15 -0
  180. package/build/esm/packages/phoenix/src/components/form/select/model/select_option.js.map +1 -0
  181. package/build/esm/packages/phoenix/src/components/form/select/model/select_option_constants.d.ts +7 -0
  182. package/build/esm/packages/phoenix/src/components/form/select/model/select_option_constants.js +2 -0
  183. package/build/esm/packages/phoenix/src/components/form/select/model/select_option_constants.js.map +1 -0
  184. package/build/esm/packages/phoenix/src/components/form/select/model/select_option_mapper.d.ts +5 -0
  185. package/build/esm/packages/phoenix/src/components/form/select/model/select_option_mapper.js +20 -0
  186. package/build/esm/packages/phoenix/src/components/form/select/model/select_option_mapper.js.map +1 -0
  187. package/build/esm/packages/phoenix/src/components/form/select/select.d.ts +37 -0
  188. package/build/esm/packages/phoenix/src/components/form/select/select.js +223 -0
  189. package/build/esm/packages/phoenix/src/components/form/select/select.js.map +1 -0
  190. package/build/esm/packages/phoenix/src/components/form/select/select_constants.d.ts +23 -0
  191. package/build/esm/packages/phoenix/src/components/form/select/select_constants.js +27 -0
  192. package/build/esm/packages/phoenix/src/components/form/select/select_constants.js.map +1 -0
  193. package/build/esm/packages/phoenix/src/components/form/select/select_utils.d.ts +9 -0
  194. package/build/esm/packages/phoenix/src/components/form/select/select_utils.js +48 -0
  195. package/build/esm/packages/phoenix/src/components/form/select/select_utils.js.map +1 -0
  196. package/build/esm/packages/phoenix/src/components/form/switch/switch.js +1 -1
  197. package/build/esm/packages/phoenix/src/components/form/switch/switch.js.map +1 -1
  198. package/build/esm/packages/phoenix/src/components/form/textarea/textarea.js +1 -1
  199. package/build/esm/packages/phoenix/src/components/form/textarea/textarea.js.map +1 -1
  200. package/build/esm/packages/phoenix/src/components/icon/icon.js +1 -1
  201. package/build/esm/packages/phoenix/src/components/icon/icon.js.map +1 -1
  202. package/build/esm/packages/phoenix/src/components/messages/base_message.js +1 -1
  203. package/build/esm/packages/phoenix/src/components/modal/modal.js +4 -4
  204. package/build/esm/packages/phoenix/src/components/portal/portal.js +1 -1
  205. package/build/esm/packages/phoenix/src/components/portal/portal.js.map +1 -1
  206. package/build/esm/packages/phoenix/src/components/portal/portal_target.js +1 -1
  207. package/build/esm/packages/phoenix/src/components/scroll_to/scroll_to.js +1 -1
  208. package/build/esm/packages/phoenix/src/components/tabs/tab/tab.js +1 -1
  209. package/build/esm/packages/phoenix/src/components/tag/tag.js +3 -2
  210. package/build/esm/packages/phoenix/src/components/tag/tag.js.map +1 -1
  211. package/build/esm/packages/phoenix/src/controllers/{btn_controller.d.ts → btn_controller/btn_controller.d.ts} +2 -1
  212. package/build/esm/packages/phoenix/src/controllers/{btn_controller.js → btn_controller/btn_controller.js} +4 -3
  213. package/build/{cjs/packages/phoenix/src/controllers → esm/packages/phoenix/src/controllers/btn_controller}/btn_controller.js.map +1 -1
  214. package/build/esm/packages/phoenix/src/controllers/btn_controller/btn_controller_types.d.ts +3 -0
  215. package/build/esm/packages/phoenix/src/controllers/btn_controller/btn_controller_types.js +2 -0
  216. package/build/esm/packages/phoenix/src/controllers/btn_controller/btn_controller_types.js.map +1 -0
  217. package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller.js +4 -4
  218. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_controller_constants.d.ts +4 -0
  219. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_controller_constants.js +7 -0
  220. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_controller_constants.js.map +1 -0
  221. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_controller_types.d.ts +10 -0
  222. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_controller_types.js +4 -0
  223. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_controller_types.js.map +1 -0
  224. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_keyboard_controller.d.ts +10 -0
  225. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_keyboard_controller.js +80 -0
  226. package/build/esm/packages/phoenix/src/controllers/list_box_controller/list_box_keyboard_controller.js.map +1 -0
  227. package/build/esm/packages/phoenix/src/core/classes/behavior_subject/behavior_subject.d.ts +0 -2
  228. package/build/esm/packages/phoenix/src/core/classes/behavior_subject/behavior_subject.js +2 -7
  229. package/build/esm/packages/phoenix/src/core/classes/behavior_subject/behavior_subject.js.map +1 -1
  230. package/build/esm/packages/phoenix/src/core/classes/subject/subject.d.ts +4 -2
  231. package/build/esm/packages/phoenix/src/core/classes/subject/subject.js +8 -1
  232. package/build/esm/packages/phoenix/src/core/classes/subject/subject.js.map +1 -1
  233. package/build/esm/packages/phoenix/src/core/classes/subject/subject_types.d.ts +2 -1
  234. package/build/esm/packages/phoenix/src/core/context/context_consumer_controller.js +1 -1
  235. package/build/esm/packages/phoenix/src/core/phoenix_light_lit_element/phoenix_light_lit_element.js +10 -5
  236. package/build/esm/packages/phoenix/src/core/phoenix_light_lit_element/phoenix_light_lit_element.js.map +1 -1
  237. package/build/esm/packages/phoenix/src/directives/observable_directive.d.ts +1 -0
  238. package/build/esm/packages/phoenix/src/directives/observable_directive.js +35 -31
  239. package/build/esm/packages/phoenix/src/directives/observable_directive.js.map +1 -1
  240. package/build/esm/packages/phoenix/src/index.d.ts +5 -1
  241. package/build/esm/packages/phoenix/src/index.js +16 -12
  242. package/build/esm/packages/phoenix/src/index.js.map +1 -1
  243. package/package.json +2 -2
  244. /package/build/esm/packages/phoenix/src/{controllers/btn_controller.js.map → components/form/select/components/select_components_constatns.js.map} +0 -0
@@ -0,0 +1,223 @@
1
+ import { __decorate, __metadata } from '../../../../../../external/tslib/tslib.es6.js';
2
+ import { html, nothing } from 'lit';
3
+ import { state } from 'lit/decorators';
4
+ import { PhoenixLightLitElement } from '../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
5
+ import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
6
+ import { property } from '@lit/reactive-element/decorators.js';
7
+ import { SELECT_RELATED_COMPONENTS_NAMES } from './components/select_components_constatns.js';
8
+ import { SELECT_SLOT_NAMES, SELECT_CSS_CLASSES, SELECT_CONTEXTS, SELECT_EVENT_NAMES, MIN_NUMBER_OF_OPTIONS_TO_SHOW_SEARCH } from './select_constants.js';
9
+ import { Observer } from '../../../core/classes/observer/observer.js';
10
+ import { observe } from '../../../directives/observable_directive.js';
11
+ import { ContextProviderController } from '../../../core/context/context_provider_controller.js';
12
+ import { createRef, ref } from 'lit-html/directives/ref.js';
13
+ import { MultiSelectController } from './controllers/multi_select_controller.js';
14
+ import { SelectController } from './controllers/select_controller.js';
15
+ import { HSelectSearch } from './components/search/select_search.js';
16
+ import { ListBoxKeyboardController } from '../../../controllers/list_box_controller/list_box_keyboard_controller.js';
17
+ import { HIcon } from '../../icon/icon.js';
18
+ import { SelectOptionMapper } from './model/select_option_mapper.js';
19
+ import { SelectControlUtils } from './select_utils.js';
20
+
21
+ let HSelect = class HSelect extends PhoenixLightLitElement {
22
+ constructor() {
23
+ super();
24
+ this.multiselect = false;
25
+ this.opened = false;
26
+ this._searchValue = '';
27
+ this._$options = {};
28
+ this._$dropdown = createRef();
29
+ this._$search = createRef();
30
+ this._$optionsList = createRef();
31
+ this._$dropdownContent = createRef();
32
+ this._selectContext = new ContextProviderController(this);
33
+ this._handleOptionDeselect = (event) => {
34
+ const selectedOption = this._selectController.getSelectOption(event.detail);
35
+ if (!selectedOption)
36
+ return;
37
+ this._selectController.deselectOption(selectedOption);
38
+ };
39
+ this._updateOptionsView = (options) => {
40
+ // if (options.length < Object.keys(this._$options).length) this._removeHTMLOptions(options.map((option: SelectOption) => option.value));
41
+ options.forEach((option, index) => {
42
+ const { selected, value } = option;
43
+ const $option = this._$options[value];
44
+ if (!$option) {
45
+ // this._appendNewHTMLOption(option, index + 1);
46
+ return;
47
+ }
48
+ SelectControlUtils.syncHTMLOptionWithModel(option, $option);
49
+ if (!selected)
50
+ return;
51
+ $option.setAttribute(this.multiselect ? 'aria-checked' : 'aria-selected', 'true');
52
+ });
53
+ };
54
+ this._handleOptionClicked = (event) => {
55
+ const selectedOption = this._selectController.getSelectOption(event.detail.$option.value);
56
+ if (!selectedOption)
57
+ return;
58
+ this._selectController.toggleOption(selectedOption);
59
+ if (!this.multiselect)
60
+ this._closeSelect();
61
+ };
62
+ this._closeSelect = () => {
63
+ var _a;
64
+ (_a = this._$dropdown.value) === null || _a === void 0 ? void 0 : _a.hide();
65
+ };
66
+ this._clearOptions = () => {
67
+ this._selectController.deselectOptions();
68
+ };
69
+ this._handleDropdownHidden = () => {
70
+ this._searchValue = '';
71
+ this.opened = false;
72
+ };
73
+ const $options = Array.from(this.querySelectorAll(SELECT_RELATED_COMPONENTS_NAMES.option));
74
+ $options.forEach(($option) => $option.setAttribute('slot', SELECT_SLOT_NAMES.content));
75
+ }
76
+ updated(changedProperties) {
77
+ super.updated(changedProperties);
78
+ if (changedProperties.has('opened'))
79
+ this.opened ? this.classList.add(SELECT_CSS_CLASSES.selectOpened) : this.classList.remove(SELECT_CSS_CLASSES.selectOpened);
80
+ if (this._$optionsList.value && !this._listBoxController)
81
+ this._listBoxController = new ListBoxKeyboardController({
82
+ host: this,
83
+ $list: this._$optionsList.value
84
+ });
85
+ }
86
+ connectedCallback() {
87
+ super.connectedCallback();
88
+ this.classList.add(SELECT_CSS_CLASSES.select);
89
+ this._selectController = this.multiselect ? new MultiSelectController({ host: this }) : new SelectController({ host: this });
90
+ this._selectContext.provide(SELECT_CONTEXTS.selectedOptions$, this._selectController.selectedOptions$);
91
+ this._selectContext.provide(SELECT_CONTEXTS.isMultiselect, this.multiselect);
92
+ const $options = Array.from(this.querySelectorAll(SELECT_RELATED_COMPONENTS_NAMES.option));
93
+ this._selectController.options$.subscribe(new Observer((selectedOptions) => this._updateOptionsView(selectedOptions)));
94
+ this._$options = $options.reduce((acc, $option) => {
95
+ if (acc[$option.value] !== undefined)
96
+ throw Error('Select options must hava a unique values.');
97
+ return {
98
+ ...acc,
99
+ [$option.value]: $option
100
+ };
101
+ }, {});
102
+ this._selectController.options$.notify($options.map(SelectOptionMapper.toModel));
103
+ this._setupEvents();
104
+ }
105
+ firstUpdated(props) {
106
+ super.firstUpdated(props);
107
+ if (this._$dropdownContent.value)
108
+ this._$dropdownContent.value.style.width = `${this.getBoundingClientRect().width}px`;
109
+ }
110
+ _setupEvents() {
111
+ this.addEventListener(SELECT_EVENT_NAMES.deselectOption, this._handleOptionDeselect);
112
+ }
113
+ _appendNewHTMLOption(option, position) {
114
+ const $list = this._$optionsList.value;
115
+ if (!$list)
116
+ return;
117
+ const { value, selected } = option;
118
+ const $option = SelectControlUtils.createHTMLOption(option);
119
+ if (selected)
120
+ $option.setAttribute(this.multiselect ? 'aria-checked' : 'aria-selected', 'true');
121
+ this._$options[value] = $option;
122
+ SelectControlUtils.appendHTMLOption($option, $list, position);
123
+ }
124
+ _removeHTMLOptions(optionsValues) {
125
+ this._$options = SelectControlUtils.removeHTMLOptions(Object.values(this._$options), optionsValues);
126
+ }
127
+ _handleSearch({ detail }) {
128
+ this._searchValue = detail;
129
+ }
130
+ update(changedProperties) {
131
+ super.update(changedProperties);
132
+ if (changedProperties.has('_searchValue'))
133
+ this._selectController.filterOptions(this._searchValue);
134
+ }
135
+ addOption(option, position) {
136
+ this._selectController.addOption(option, position);
137
+ }
138
+ removeOption(optionValue) {
139
+ this._selectController.removeOption(optionValue);
140
+ }
141
+ replaceOptions(options) {
142
+ this._selectController.replaceOptions(options);
143
+ }
144
+ render() {
145
+ var _a;
146
+ const options = (_a = this._selectController.options$.getValue()) !== null && _a !== void 0 ? _a : [];
147
+ return html `
148
+ <h-dropdown
149
+ ${ref(this._$dropdown)}
150
+ @dropdown.showed=${() => (this.opened = true)}
151
+ @dropdown.hidden=${this._handleDropdownHidden}
152
+ name=${this.controlName}
153
+ >
154
+ <h-dropdown-toggler name=${this.controlName} class="${SELECT_CSS_CLASSES.selectControl}">
155
+ ${this.getSlot(SELECT_SLOT_NAMES.input)}
156
+ <h-icon icon-name="icon-chevron-down"></h-icon>
157
+ </h-dropdown-toggler>
158
+
159
+ <h-dropdown-content class=${SELECT_CSS_CLASSES.selectContent} ${ref(this._$dropdownContent)} name=${this.controlName}>
160
+ <h-select-close-btn @click=${this._closeSelect}></h-select-close-btn>
161
+
162
+ ${options.length > MIN_NUMBER_OF_OPTIONS_TO_SHOW_SEARCH
163
+ ? html `<h-select-search
164
+ class=${SELECT_CSS_CLASSES.selectSearch}
165
+ ${ref(this._$search)}
166
+ .value=${this._searchValue}
167
+ @selectSearch.search=${this._handleSearch}
168
+ ></h-select-search>`
169
+ : nothing}
170
+ ${this.hasSlot(SELECT_SLOT_NAMES.content)
171
+ ? html `
172
+ <h-select-options
173
+ class=${SELECT_CSS_CLASSES.selectOptions}
174
+ ${ref(this._$optionsList)}
175
+ @selectOptions.clicked=${this._handleOptionClicked}
176
+ >
177
+ ${this.getSlot(SELECT_SLOT_NAMES.content)}
178
+ </h-select-options>
179
+ `
180
+ : nothing}
181
+ ${!this._selectController.visibleOptionsCount ? html `<p>brak wyników dla ${this._searchValue}</p>` : nothing}
182
+ ${this.multiselect && this._selectController.selectedOptionsCount >= 1
183
+ ? html `
184
+ <section class=${SELECT_CSS_CLASSES.selectFooter}>
185
+ <button @click=${this._clearOptions}>clear</button>
186
+ <h-select-close-btn @click=${this._closeSelect}>ok</h-select-close-btn>
187
+ </section>
188
+ `
189
+ : nothing}
190
+ </h-dropdown-content>
191
+ </h-dropdown>
192
+
193
+ ${observe(this._selectController.selectedOptions$, (selectOptions) => selectOptions.map((option) => html `<input type="hidden" name=${this.controlName} value=${option.value} />`))}
194
+ `;
195
+ }
196
+ };
197
+ HSelect._components = {
198
+ search: HSelectSearch,
199
+ icon: HIcon
200
+ };
201
+ __decorate([
202
+ property({ type: String }),
203
+ __metadata("design:type", String)
204
+ ], HSelect.prototype, "controlName", void 0);
205
+ __decorate([
206
+ property({ type: Boolean }),
207
+ __metadata("design:type", Boolean)
208
+ ], HSelect.prototype, "multiselect", void 0);
209
+ __decorate([
210
+ property({ type: Boolean }),
211
+ __metadata("design:type", Boolean)
212
+ ], HSelect.prototype, "opened", void 0);
213
+ __decorate([
214
+ state(),
215
+ __metadata("design:type", String)
216
+ ], HSelect.prototype, "_searchValue", void 0);
217
+ HSelect = __decorate([
218
+ phoenixCustomElement('h-select'),
219
+ __metadata("design:paramtypes", [])
220
+ ], HSelect);
221
+
222
+ export { HSelect };
223
+ //# sourceMappingURL=select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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
+ export declare const SELECT_CONTEXTS: {
2
+ readonly isMultiselect: "isMultiselect";
3
+ readonly selectedOptions$: "selectedOptions$";
4
+ };
5
+ export declare const SELECT_SLOT_NAMES: {
6
+ readonly content: "content";
7
+ readonly input: "input";
8
+ };
9
+ export declare const SELECT_EVENT_NAMES: {
10
+ readonly selectOption: "selectOption.select";
11
+ readonly deselectOption: "selectOption.deselect";
12
+ };
13
+ export declare const MIN_NUMBER_OF_OPTIONS_TO_SHOW_SEARCH = 6;
14
+ export declare const SELECT_CSS_CLASSES: {
15
+ readonly select: "select";
16
+ readonly selectOpened: "select_opened";
17
+ readonly selectControl: "select__control";
18
+ readonly selectInput: "select__value";
19
+ readonly selectSearch: "select__search";
20
+ readonly selectOptions: "select__options";
21
+ readonly selectContent: "select__content";
22
+ readonly selectFooter: "select__footer";
23
+ };
@@ -0,0 +1,27 @@
1
+ const SELECT_CONTEXTS = {
2
+ isMultiselect: 'isMultiselect',
3
+ selectedOptions$: 'selectedOptions$'
4
+ };
5
+ const SELECT_SLOT_NAMES = {
6
+ content: 'content',
7
+ input: 'input'
8
+ };
9
+ const SELECT_EVENT_NAMES = {
10
+ selectOption: 'selectOption.select',
11
+ deselectOption: 'selectOption.deselect'
12
+ };
13
+ const MIN_NUMBER_OF_OPTIONS_TO_SHOW_SEARCH = 6;
14
+ const baseSelectClass = 'select';
15
+ const SELECT_CSS_CLASSES = {
16
+ select: baseSelectClass,
17
+ selectOpened: `${baseSelectClass}_opened`,
18
+ selectControl: `${baseSelectClass}__control`,
19
+ selectInput: `${baseSelectClass}__value`,
20
+ selectSearch: `${baseSelectClass}__search`,
21
+ selectOptions: `${baseSelectClass}__options`,
22
+ selectContent: `${baseSelectClass}__content`,
23
+ selectFooter: `${baseSelectClass}__footer`
24
+ };
25
+
26
+ export { MIN_NUMBER_OF_OPTIONS_TO_SHOW_SEARCH, SELECT_CONTEXTS, SELECT_CSS_CLASSES, SELECT_EVENT_NAMES, SELECT_SLOT_NAMES };
27
+ //# 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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,9 @@
1
+ import { SelectOption } from "./model/select_option";
2
+ import { HOption } from "./components/option/select_option";
3
+ import { HSelectOptions } from "./components/select_options";
4
+ export declare class SelectControlUtils {
5
+ static createHTMLOption(option: SelectOption): HOption;
6
+ static syncHTMLOptionWithModel(option: SelectOption, $option: HOption): void;
7
+ static removeHTMLOptions($options: HOption[], optionsValuesThatExists: string[]): Record<string, HOption>;
8
+ static appendHTMLOption($option: HOption, $list: HSelectOptions, position?: number): void;
9
+ }
@@ -0,0 +1,48 @@
1
+ import { SELECT_RELATED_COMPONENTS_NAMES } from './components/select_components_constatns.js';
2
+
3
+ class SelectControlUtils {
4
+ static createHTMLOption(option) {
5
+ const { selected, value, disabled, hidden, content } = option;
6
+ const $option = document.createElement(SELECT_RELATED_COMPONENTS_NAMES.option);
7
+ $option.setAttribute('value', String(value));
8
+ const $optionContent = document.createElement(SELECT_RELATED_COMPONENTS_NAMES.optionContent);
9
+ $optionContent.innerText = content;
10
+ $option.append($optionContent);
11
+ if (selected)
12
+ $option.setAttribute('selected', '');
13
+ if (disabled)
14
+ $option.setAttribute('disabled', '');
15
+ if (hidden)
16
+ $option.setAttribute('hidden', '');
17
+ return $option;
18
+ }
19
+ static syncHTMLOptionWithModel(option, $option) {
20
+ const { selected, value, disabled, hidden } = option;
21
+ $option.selected = selected;
22
+ $option.value = value;
23
+ $option.disabled = disabled;
24
+ $option.hidden = hidden;
25
+ }
26
+ static removeHTMLOptions($options, optionsValuesThatExists) {
27
+ return $options.reduce((acc, $option) => {
28
+ if (optionsValuesThatExists.includes($option.value))
29
+ return {
30
+ ...acc,
31
+ [$option.value]: $option
32
+ };
33
+ $option.remove();
34
+ return acc;
35
+ }, {});
36
+ }
37
+ static appendHTMLOption($option, $list, position) {
38
+ if (position !== undefined) {
39
+ const $nextOption = $list.querySelector(`${SELECT_RELATED_COMPONENTS_NAMES.option}:nth-child(${position})`);
40
+ $nextOption ? $nextOption.insertAdjacentElement('beforebegin', $option) : $list.append($option);
41
+ return;
42
+ }
43
+ $list.append($option);
44
+ }
45
+ }
46
+
47
+ export { SelectControlUtils };
48
+ //# sourceMappingURL=select_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;"}
@@ -2,9 +2,9 @@ import { __decorate, __metadata } from '../../../../../../external/tslib/tslib.e
2
2
  import { property } from 'lit/decorators';
3
3
  import { PhoenixLightLitElement } from '../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
4
4
  import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
5
+ import classnames from '../../../../../../external/classnames/index.js';
5
6
  import { BASE_FORM_CONTROL_PROPS } from '../controllers/props_synchronizing/control_props_sync_controller_constants.js';
6
7
  import { ControlPropsSyncProviderController } from '../controllers/props_synchronizing/control_props_sync_provider_controller.js';
7
- import classnames from '../../../../external/classnames/index.js';
8
8
  import { CHECKBOX_PROPS_TO_SYNC } from '../checkbox/checkbox_constants.js';
9
9
  import { SWITCH_CONTROL_CSS_CLASSES } from './switch_constants.js';
10
10
 
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA,uBAAuB,0CAA8C;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA,uBAAuB,gDAAoD;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;"}
@@ -2,9 +2,9 @@ import { __decorate, __metadata } from '../../../../../../external/tslib/tslib.e
2
2
  import { property } from 'lit/decorators';
3
3
  import { PhoenixLightLitElement } from '../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
4
4
  import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
5
+ import classnames from '../../../../../../external/classnames/index.js';
5
6
  import { BASE_FORM_CONTROL_PROPS } from '../controllers/props_synchronizing/control_props_sync_controller_constants.js';
6
7
  import { ControlPropsSyncProviderController } from '../controllers/props_synchronizing/control_props_sync_provider_controller.js';
7
- import classnames from '../../../../external/classnames/index.js';
8
8
  import { TEXTAREA_PROPS_TO_SYNC, TEXTAREA_CONTROL_CSS_CLASSES } from './textarea_constants.js';
9
9
 
10
10
  let HTextarea = class HTextarea extends PhoenixLightLitElement {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA,uBAAuB,0CAA8C;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA,uBAAuB,gDAAoD;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;"}
@@ -3,8 +3,8 @@ import { html } from 'lit';
3
3
  import { property } from 'lit/decorators';
4
4
  import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
5
5
  import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
6
- import classnames from '../../../external/classnames/index.js';
7
6
  import { ICON_CSS_CLASSES, ICON_SIZES_CSS_CLASS_MAP } from './icon_constants.js';
7
+ import classnames from '../../../../../external/classnames/index.js';
8
8
  import { namespacedAttribute } from '../../directives/namespaced_attribure_directive.js';
9
9
 
10
10
  var HIcon_1;
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA,uBAAuB,uCAA2C;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA,uBAAuB,6CAAiD;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;"}
@@ -2,9 +2,9 @@ import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.
2
2
  import { property } from 'lit/decorators';
3
3
  import { UiDomUtils } from '@dreamcommerce/utilities';
4
4
  import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
5
- import { PORTAL_TARGET_COMPONENT_NAME, PORTAL_TARGET_NAME_PROP, PORTAL_TARGET_ATTRIBUTE_NAME } from '../portal/portal_constants.js';
6
5
  import { KeystrokesController } from '../../controllers/keystrokes_controller/keystrokes_controller.js';
7
6
  import { DIRECTIONS } from '../../controllers/relative_position_controller/relative_position_controller_constants.js';
7
+ import { PORTAL_TARGET_COMPONENT_NAME, PORTAL_TARGET_NAME_PROP, PORTAL_TARGET_ATTRIBUTE_NAME } from '../portal/portal_constants.js';
8
8
  import { ClickOutsideController } from '../../controllers/click_outside_controller/click_outside_controller.js';
9
9
  import { RelativePositionController } from '../../controllers/relative_position_controller/relative_position_controller.js';
10
10
  import { DEFAULT_MESSAGE_PORTAL_NAME, DEFAULT_MESSAGE_OFFSET, MESSAGE_SHOW_DELAY_IN_MS, MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS, MESSAGE_REMOVED_CLASS_NAME, MESSAGE_CLOSE_DELAY_IN_MS, MESSAGE_CONTENT_ELEMENTS, MESSAGE_ELEMENTS } from './base_message_constants.js';
@@ -1,13 +1,13 @@
1
1
  import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.js';
2
2
  import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
3
3
  import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
4
- import { PORTAL_TARGET_NAME_PROP } from '../portal/portal_constants.js';
5
- import { MODAL_OPENED_PROP, FOCUSABLE_ELEMENTS_WITHIN_MODAL, MODALS_PORTAL_NAME, MODAL_EVENTS } from './modal_constants.js';
6
- import { html } from 'lit-html';
7
- import { BackdropController } from '../backdrop/controller/backdrop_controller.js';
8
4
  import { property, state } from '@lit/reactive-element/decorators.js';
5
+ import { html } from 'lit-html';
9
6
  import { createRef, ref } from 'lit-html/directives/ref.js';
7
+ import { PORTAL_TARGET_NAME_PROP } from '../portal/portal_constants.js';
8
+ import { BackdropController } from '../backdrop/controller/backdrop_controller.js';
10
9
  import '@lit/reactive-element';
10
+ import { MODAL_OPENED_PROP, FOCUSABLE_ELEMENTS_WITHIN_MODAL, MODALS_PORTAL_NAME, MODAL_EVENTS } from './modal_constants.js';
11
11
 
12
12
  var HModal_1;
13
13
  let HModal = HModal_1 = class HModal extends PhoenixLightLitElement {
@@ -3,8 +3,8 @@ import 'lit';
3
3
  import { state, property } from 'lit/decorators';
4
4
  import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
5
5
  import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
6
- import { PORTAL_EVENTS } from './portal_constants.js';
7
6
  import v4 from '../../../../../external/uuid/dist/esm-browser/v4.js';
7
+ import { PORTAL_EVENTS } from './portal_constants.js';
8
8
 
9
9
  let HPortal = class HPortal extends PhoenixLightLitElement {
10
10
  constructor() {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA,eAAe,qDAAyD;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,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA,eAAe,qDAAyD;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;"}
@@ -1,8 +1,8 @@
1
1
  import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.js';
2
2
  import { property, state } from 'lit/decorators';
3
3
  import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
4
- import { PortalTargetError } from './portal_target_error.js';
5
4
  import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
5
+ import { PortalTargetError } from './portal_target_error.js';
6
6
  import { PORTAL_EVENTS, PORTAL_TARGET_NAME_PROP } from './portal_constants.js';
7
7
 
8
8
  var HPortalTarget_1;
@@ -2,7 +2,7 @@ import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.
2
2
  import { property } from 'lit/decorators';
3
3
  import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
4
4
  import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
5
- import { BtnController } from '../../controllers/btn_controller.js';
5
+ import { BtnController } from '../../controllers/btn_controller/btn_controller.js';
6
6
 
7
7
  let HScrollTo = class HScrollTo extends PhoenixLightLitElement {
8
8
  constructor() {
@@ -3,7 +3,7 @@ import { property } from 'lit/decorators';
3
3
  import { UiDomUtils } from '@dreamcommerce/utilities';
4
4
  import { PhoenixLightLitElement } from '../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
5
5
  import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
6
- import { BtnController } from '../../../controllers/btn_controller.js';
6
+ import { BtnController } from '../../../controllers/btn_controller/btn_controller.js';
7
7
  import { TAB_EVENT_NAMES, TAB_SELECTED_ATTRIBUTE_NAME } from './tab_constants.js';
8
8
 
9
9
  let HTab = class HTab extends PhoenixLightLitElement {
@@ -2,7 +2,7 @@ import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.
2
2
  import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
3
3
  import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
4
4
  import { property } from '@lit/reactive-element/decorators.js';
5
- import { BtnController } from '../../controllers/btn_controller.js';
5
+ import { BtnController } from '../../controllers/btn_controller/btn_controller.js';
6
6
  import { TAG_EVENT_NAMES, TAG_CSS_CLASSES } from './tag_constants.js';
7
7
 
8
8
  let HTag = class HTag extends PhoenixLightLitElement {
@@ -10,7 +10,8 @@ let HTag = class HTag extends PhoenixLightLitElement {
10
10
  super(...arguments);
11
11
  this.clickable = false;
12
12
  this.removable = false;
13
- this._handleClick = () => {
13
+ this._handleClick = (event) => {
14
+ event.stopPropagation();
14
15
  /**
15
16
  * TODO do zrobienia in fiuczer, jak jest tag klikalny i mamy remove, to klik remove działa na button remove
16
17
  * a nie na cały tag
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -1,8 +1,9 @@
1
1
  import { ReactiveController, ReactiveControllerHost } from 'lit';
2
+ import { TBtnControllerOption } from "./btn_controller_types";
2
3
  export declare class BtnController implements ReactiveController {
3
4
  host: ReactiveControllerHost & HTMLElement;
4
5
  private _keystrokesController;
5
- constructor(host: ReactiveControllerHost & HTMLElement, callback: (ev: Event) => void);
6
+ constructor(host: ReactiveControllerHost & HTMLElement, callback: (ev: Event) => void, { isNavigable }?: TBtnControllerOption);
6
7
  hostConnected(): void;
7
8
  hostDisconnected(): void;
8
9
  }
@@ -1,10 +1,11 @@
1
1
  import 'lit';
2
- import { KeystrokesController } from './keystrokes_controller/keystrokes_controller.js';
2
+ import { UiDomUtils } from '@dreamcommerce/utilities';
3
+ import { KeystrokesController } from '../keystrokes_controller/keystrokes_controller.js';
3
4
 
4
5
  class BtnController {
5
- constructor(host, callback) {
6
+ constructor(host, callback, { isNavigable = true } = {}) {
6
7
  (this.host = host).addController(this);
7
- this.host.tabIndex = 0;
8
+ isNavigable ? UiDomUtils.makeNavigable(this.host) : UiDomUtils.makeUnnavigable(this.host);
8
9
  this.host.setAttribute('role', 'button');
9
10
  this._keystrokesController = new KeystrokesController({
10
11
  host,
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
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,3 @@
1
+ export declare type TBtnControllerOption = {
2
+ isNavigable?: boolean;
3
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=btn_controller_types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"btn_controller_types.js","sourceRoot":"","sources":["../../../../../../../src/controllers/btn_controller/btn_controller_types.ts"],"names":[],"mappings":""}
@@ -72,16 +72,16 @@ class KeystrokesController {
72
72
  this._keys = keys;
73
73
  this._callback = callback;
74
74
  __classPrivateFieldGet(this, _KeystrokesController_host, "f").addController(this);
75
- __classPrivateFieldGet(this, _KeystrokesController_target, "f").addEventListener('keydown', this._saveKey);
76
- __classPrivateFieldGet(this, _KeystrokesController_target, "f").addEventListener('keyup', this._removeKey);
77
75
  }
78
76
  hostConnected() {
79
77
  __classPrivateFieldGet(this, _KeystrokesController_host, "f").addEventListener('focusout', this._clearBuffer);
78
+ __classPrivateFieldGet(this, _KeystrokesController_target, "f").addEventListener('keydown', this._saveKey);
79
+ __classPrivateFieldGet(this, _KeystrokesController_target, "f").addEventListener('keyup', this._removeKey);
80
80
  }
81
81
  hostDisconnected() {
82
82
  __classPrivateFieldGet(this, _KeystrokesController_host, "f").removeEventListener('focusout', this._clearBuffer);
83
- __classPrivateFieldGet(this, _KeystrokesController_target, "f").addEventListener('keydown', this._saveKey);
84
- __classPrivateFieldGet(this, _KeystrokesController_target, "f").addEventListener('keyup', this._removeKey);
83
+ __classPrivateFieldGet(this, _KeystrokesController_target, "f").removeEventListener('keydown', this._saveKey);
84
+ __classPrivateFieldGet(this, _KeystrokesController_target, "f").removeEventListener('keyup', this._removeKey);
85
85
  }
86
86
  }
87
87
  _KeystrokesController_host = new WeakMap(), _KeystrokesController_target = new WeakMap();
@@ -0,0 +1,4 @@
1
+ export declare const LIST_BOX_KEYBOARD_NAVIGATION_DIRECTIONS: {
2
+ readonly horizontal: "horizontal";
3
+ readonly vertical: "vertical";
4
+ };
@@ -0,0 +1,7 @@
1
+ const LIST_BOX_KEYBOARD_NAVIGATION_DIRECTIONS = {
2
+ horizontal: 'horizontal',
3
+ vertical: 'vertical'
4
+ };
5
+
6
+ export { LIST_BOX_KEYBOARD_NAVIGATION_DIRECTIONS };
7
+ //# sourceMappingURL=list_box_controller_constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,10 @@
1
+ import { Any } from 'ts-toolbelt';
2
+ import { ReactiveControllerHost } from 'lit';
3
+ import { LIST_BOX_KEYBOARD_NAVIGATION_DIRECTIONS } from "./list_box_controller_constants";
4
+ export declare type TListBoxKeyboardNavigationDirection = Any.Keys<typeof LIST_BOX_KEYBOARD_NAVIGATION_DIRECTIONS>;
5
+ export declare type TListBoxKeyboardControllerConstructorOptions = {
6
+ host: ReactiveControllerHost & HTMLElement;
7
+ $list: HTMLElement;
8
+ listItemSelector?: string;
9
+ orientation?: TListBoxKeyboardNavigationDirection;
10
+ };
@@ -0,0 +1,4 @@
1
+ import 'ts-toolbelt';
2
+ import 'lit';
3
+ import '@phoenixRoot/controllers/list_box_controller/list_box_controller_constants';
4
+ //# sourceMappingURL=list_box_controller_types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list_box_controller_types.js","sourceRoot":"","sources":["../../../../../../../src/controllers/list_box_controller/list_box_controller_types.ts"],"names":[],"mappings":"AAAA,OAAoB,aAAa,CAAC;AAClC,OAAuC,KAAK,CAAC;AAC7C,OAAwD,4EAA4E,CAAC"}