@leanix/components 0.2.229 → 0.2.230

Sign up to get free protection for your applications and to get access to all the features.
Files changed (347) hide show
  1. package/esm2020/index.mjs +119 -0
  2. package/esm2020/leanix-components.mjs +5 -0
  3. package/esm2020/lib/core-ui/annotations/required.mjs +33 -0
  4. package/esm2020/lib/core-ui/components/badge/badge.component.mjs +25 -0
  5. package/esm2020/lib/core-ui/components/button/button.component.mjs +72 -0
  6. package/esm2020/lib/core-ui/components/button-group/button-group.component.mjs +28 -0
  7. package/esm2020/lib/core-ui/components/card/card.component.mjs +19 -0
  8. package/esm2020/lib/core-ui/components/collapsible/collapsible.component.mjs +53 -0
  9. package/esm2020/lib/core-ui/components/colored-label/colored-label.component.mjs +34 -0
  10. package/esm2020/lib/core-ui/components/ellipsis/ellipsis.component.mjs +70 -0
  11. package/esm2020/lib/core-ui/components/icon-scale/icon-scale.component.mjs +40 -0
  12. package/esm2020/lib/core-ui/components/spinner/spinner.component.mjs +26 -0
  13. package/esm2020/lib/core-ui/components/table/table-header/table-header.component.mjs +55 -0
  14. package/esm2020/lib/core-ui/components/table/table.component.mjs +69 -0
  15. package/esm2020/lib/core-ui/components/tiny-spinner/tiny-spinner.component.mjs +11 -0
  16. package/esm2020/lib/core-ui/core-ui.constants.mjs +13 -0
  17. package/esm2020/lib/core-ui/core-ui.module.mjs +177 -0
  18. package/esm2020/lib/core-ui/directives/after-view-init.directive.mjs +30 -0
  19. package/esm2020/lib/core-ui/directives/autoclose-group.service.mjs +38 -0
  20. package/esm2020/lib/core-ui/directives/autoclose.directive.mjs +40 -0
  21. package/esm2020/lib/core-ui/directives/autofocus.directive.mjs +27 -0
  22. package/esm2020/lib/core-ui/directives/html.directive.mjs +29 -0
  23. package/esm2020/lib/core-ui/functions/core-css.helpers.mjs +35 -0
  24. package/esm2020/lib/core-ui/pipes/br.pipe.mjs +23 -0
  25. package/esm2020/lib/core-ui/pipes/contrast-color.pipe.mjs +20 -0
  26. package/esm2020/lib/core-ui/pipes/custom-date.pipe.mjs +27 -0
  27. package/esm2020/lib/core-ui/pipes/highlight-range.pipe.mjs +21 -0
  28. package/esm2020/lib/core-ui/pipes/highlight-term.pipe.mjs +38 -0
  29. package/esm2020/lib/core-ui/pipes/lx-is-uuid.pipe.mjs +21 -0
  30. package/esm2020/lib/core-ui/pipes/lx-time-ago.pipe.mjs +25 -0
  31. package/esm2020/lib/core-ui/pipes/lx-translate.pipe.mjs +45 -0
  32. package/esm2020/lib/core-ui/pipes/markdown.pipe.mjs +29 -0
  33. package/esm2020/lib/core-ui/pipes/nbsp.pipe.mjs +14 -0
  34. package/esm2020/lib/core-ui/pipes/sort.pipe.mjs +52 -0
  35. package/esm2020/lib/core-ui/pipes/translation-after.pipe.mjs +28 -0
  36. package/esm2020/lib/core-ui/pipes/translation-before.pipe.mjs +53 -0
  37. package/esm2020/lib/core-ui/pipes/translation-between.pipe.mjs +67 -0
  38. package/esm2020/lib/core-ui/pipes/unescape-curly-braces.pipe.mjs +16 -0
  39. package/esm2020/lib/core-ui/tooltip/to-cdk-position.function.mjs +74 -0
  40. package/esm2020/lib/core-ui/tooltip/tooltip-position.interface.mjs +7 -0
  41. package/esm2020/lib/core-ui/tooltip/tooltip.component.mjs +26 -0
  42. package/esm2020/lib/core-ui/tooltip/tooltip.directive.mjs +102 -0
  43. package/esm2020/lib/core-ui/tooltip/tooltip.module.mjs +21 -0
  44. package/esm2020/lib/forms-ui/components/basic-dropdown/basic-dropdown.component.mjs +103 -0
  45. package/esm2020/lib/forms-ui/components/basic-dropdown-item/basic-dropdown-item.component.mjs +33 -0
  46. package/esm2020/lib/forms-ui/components/cdk-options-dropdown/cdk-options-dropdown.component.mjs +216 -0
  47. package/esm2020/lib/forms-ui/components/cdk-options-sub-dropdown/cdk-options-sub-dropdown.component.mjs +136 -0
  48. package/esm2020/lib/forms-ui/components/currency/currency-input.component.mjs +141 -0
  49. package/esm2020/lib/forms-ui/components/currency/currency-symbol-map.constant.mjs +105 -0
  50. package/esm2020/lib/forms-ui/components/currency/currency-symbol.component.mjs +25 -0
  51. package/esm2020/lib/forms-ui/components/date-input/date-input.component.mjs +270 -0
  52. package/esm2020/lib/forms-ui/components/drag-and-drop-list/constants.mjs +5 -0
  53. package/esm2020/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list-item/drag-and-drop-list-item.component.mjs +49 -0
  54. package/esm2020/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.mjs +102 -0
  55. package/esm2020/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.module.mjs +25 -0
  56. package/esm2020/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-item/keyboard-sortable-item.directive.mjs +133 -0
  57. package/esm2020/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-list/keyboard-sortable-list.directive.mjs +37 -0
  58. package/esm2020/lib/forms-ui/components/error-message/error-message.component.mjs +24 -0
  59. package/esm2020/lib/forms-ui/components/form-error/form-error.component.mjs +40 -0
  60. package/esm2020/lib/forms-ui/components/icon/icon.component.mjs +44 -0
  61. package/esm2020/lib/forms-ui/components/input/input.component.mjs +44 -0
  62. package/esm2020/lib/forms-ui/components/keyboard-select.directive.mjs +116 -0
  63. package/esm2020/lib/forms-ui/components/multi-select/multi-select.component.mjs +251 -0
  64. package/esm2020/lib/forms-ui/components/option/option.component.mjs +81 -0
  65. package/esm2020/lib/forms-ui/components/option-group/option-group.component.mjs +29 -0
  66. package/esm2020/lib/forms-ui/components/option-group-dropdown/option-group-dropdown.component.mjs +100 -0
  67. package/esm2020/lib/forms-ui/components/options-dropdown/options-dropdown.component.mjs +163 -0
  68. package/esm2020/lib/forms-ui/components/options-sub-dropdown/options-sub-dropdown.component.mjs +92 -0
  69. package/esm2020/lib/forms-ui/components/picker/picker-trigger.directive.mjs +36 -0
  70. package/esm2020/lib/forms-ui/components/picker/picker.component.mjs +201 -0
  71. package/esm2020/lib/forms-ui/components/picker-option/picker-option.component.mjs +118 -0
  72. package/esm2020/lib/forms-ui/components/pill-item/pill-item.component.mjs +33 -0
  73. package/esm2020/lib/forms-ui/components/pill-list/pill-list.component.mjs +59 -0
  74. package/esm2020/lib/forms-ui/components/responsive-input/responsive-input.component.mjs +97 -0
  75. package/esm2020/lib/forms-ui/components/single-select/single-select.component.mjs +274 -0
  76. package/esm2020/lib/forms-ui/components/slider-toggle/slider-toggle.component.mjs +42 -0
  77. package/esm2020/lib/forms-ui/components/sorting-dropdown/sorting-dropdown.component.mjs +52 -0
  78. package/esm2020/lib/forms-ui/components/sorting-dropdown-trigger/sorting-dropdown-trigger.component.mjs +21 -0
  79. package/esm2020/lib/forms-ui/directives/form-error.directive.mjs +109 -0
  80. package/esm2020/lib/forms-ui/directives/form-submit.directive.mjs +28 -0
  81. package/esm2020/lib/forms-ui/directives/keyboard-action-source.directive.mjs +53 -0
  82. package/esm2020/lib/forms-ui/directives/mark-invalid.directive.mjs +38 -0
  83. package/esm2020/lib/forms-ui/directives/select-dropdown.directive.mjs +31 -0
  84. package/esm2020/lib/forms-ui/directives/selectable-item.directive.mjs +33 -0
  85. package/esm2020/lib/forms-ui/directives/selected-option.directive.mjs +26 -0
  86. package/esm2020/lib/forms-ui/forms-ui.module.mjs +236 -0
  87. package/esm2020/lib/forms-ui/helpers/key-codes.constants.mjs +11 -0
  88. package/esm2020/lib/forms-ui/helpers/keyboard-navigation.helpers.mjs +38 -0
  89. package/esm2020/lib/forms-ui/models/base-select.directive.mjs +148 -0
  90. package/esm2020/lib/forms-ui/models/dropdown-item.interface.mjs +2 -0
  91. package/esm2020/lib/forms-ui/models/single-select-padding.interface.mjs +2 -0
  92. package/esm2020/lib/forms-ui/models/sorting.interface.mjs +7 -0
  93. package/esm2020/lib/forms-ui/pipes/filter-selection.pipe.mjs +30 -0
  94. package/esm2020/lib/forms-ui/pipes/filter-term.pipe.mjs +26 -0
  95. package/esm2020/lib/forms-ui/pipes/format-number.pipe.mjs +65 -0
  96. package/esm2020/lib/forms-ui/validators/date-in-foreseeable-future.validator.mjs +26 -0
  97. package/esm2020/lib/modal-ui/components/modal/modal.component.mjs +205 -0
  98. package/esm2020/lib/modal-ui/components/modal-footer/modal-footer.component.mjs +11 -0
  99. package/esm2020/lib/modal-ui/components/modal-header/modal-header.component.mjs +23 -0
  100. package/esm2020/lib/modal-ui/directives/modal-content.directive.mjs +13 -0
  101. package/esm2020/lib/modal-ui/modal.constants.mjs +3 -0
  102. package/esm2020/lib/modal-ui/modal.module.mjs +26 -0
  103. package/esm2020/lib/popover-ui/components/popover/popover.component.mjs +199 -0
  104. package/esm2020/lib/popover-ui/directives/popover-click.directive.mjs +51 -0
  105. package/esm2020/lib/popover-ui/directives/popover-content.directive.mjs +16 -0
  106. package/esm2020/lib/popover-ui/directives/popover-hover.directive.mjs +87 -0
  107. package/esm2020/lib/popover-ui/popover-ui.module.mjs +22 -0
  108. package/esm2020/lib/shared/date-helpers.mjs +35 -0
  109. package/esm2020/lib/shared/misc-helpers.mjs +34 -0
  110. package/esm2020/lib/shared/observe.mjs +40 -0
  111. package/esm2020/lib/tab-ui/components/tab/tab.component.mjs +70 -0
  112. package/esm2020/lib/tab-ui/components/tab-group/tab-group.component.mjs +71 -0
  113. package/esm2020/lib/tab-ui/tab-ui.module.mjs +22 -0
  114. package/fesm2015/{leanix-components.js → leanix-components.mjs} +436 -633
  115. package/fesm2015/leanix-components.mjs.map +1 -0
  116. package/fesm2020/leanix-components.mjs +6207 -0
  117. package/fesm2020/leanix-components.mjs.map +1 -0
  118. package/package.json +23 -9
  119. package/bundles/leanix-components.umd.js +0 -7364
  120. package/bundles/leanix-components.umd.js.map +0 -1
  121. package/esm2015/index.js +0 -119
  122. package/esm2015/index.js.map +0 -1
  123. package/esm2015/leanix-components.js +0 -5
  124. package/esm2015/leanix-components.js.map +0 -1
  125. package/esm2015/lib/core-ui/annotations/required.js +0 -33
  126. package/esm2015/lib/core-ui/annotations/required.js.map +0 -1
  127. package/esm2015/lib/core-ui/components/badge/badge.component.js +0 -29
  128. package/esm2015/lib/core-ui/components/badge/badge.component.js.map +0 -1
  129. package/esm2015/lib/core-ui/components/button/button.component.js +0 -78
  130. package/esm2015/lib/core-ui/components/button/button.component.js.map +0 -1
  131. package/esm2015/lib/core-ui/components/button-group/button-group.component.js +0 -32
  132. package/esm2015/lib/core-ui/components/button-group/button-group.component.js.map +0 -1
  133. package/esm2015/lib/core-ui/components/card/card.component.js +0 -23
  134. package/esm2015/lib/core-ui/components/card/card.component.js.map +0 -1
  135. package/esm2015/lib/core-ui/components/collapsible/collapsible.component.js +0 -58
  136. package/esm2015/lib/core-ui/components/collapsible/collapsible.component.js.map +0 -1
  137. package/esm2015/lib/core-ui/components/colored-label/colored-label.component.js +0 -39
  138. package/esm2015/lib/core-ui/components/colored-label/colored-label.component.js.map +0 -1
  139. package/esm2015/lib/core-ui/components/ellipsis/ellipsis.component.js +0 -74
  140. package/esm2015/lib/core-ui/components/ellipsis/ellipsis.component.js.map +0 -1
  141. package/esm2015/lib/core-ui/components/icon-scale/icon-scale.component.js +0 -46
  142. package/esm2015/lib/core-ui/components/icon-scale/icon-scale.component.js.map +0 -1
  143. package/esm2015/lib/core-ui/components/spinner/spinner.component.js +0 -30
  144. package/esm2015/lib/core-ui/components/spinner/spinner.component.js.map +0 -1
  145. package/esm2015/lib/core-ui/components/table/table-header/table-header.component.js +0 -60
  146. package/esm2015/lib/core-ui/components/table/table-header/table-header.component.js.map +0 -1
  147. package/esm2015/lib/core-ui/components/table/table.component.js +0 -70
  148. package/esm2015/lib/core-ui/components/table/table.component.js.map +0 -1
  149. package/esm2015/lib/core-ui/components/tiny-spinner/tiny-spinner.component.js +0 -14
  150. package/esm2015/lib/core-ui/components/tiny-spinner/tiny-spinner.component.js.map +0 -1
  151. package/esm2015/lib/core-ui/core-ui.constants.js +0 -13
  152. package/esm2015/lib/core-ui/core-ui.constants.js.map +0 -1
  153. package/esm2015/lib/core-ui/core-ui.module.js +0 -177
  154. package/esm2015/lib/core-ui/core-ui.module.js.map +0 -1
  155. package/esm2015/lib/core-ui/directives/after-view-init.directive.js +0 -30
  156. package/esm2015/lib/core-ui/directives/after-view-init.directive.js.map +0 -1
  157. package/esm2015/lib/core-ui/directives/autoclose-group.service.js +0 -38
  158. package/esm2015/lib/core-ui/directives/autoclose-group.service.js.map +0 -1
  159. package/esm2015/lib/core-ui/directives/autoclose.directive.js +0 -40
  160. package/esm2015/lib/core-ui/directives/autoclose.directive.js.map +0 -1
  161. package/esm2015/lib/core-ui/directives/autofocus.directive.js +0 -27
  162. package/esm2015/lib/core-ui/directives/autofocus.directive.js.map +0 -1
  163. package/esm2015/lib/core-ui/directives/html.directive.js +0 -30
  164. package/esm2015/lib/core-ui/directives/html.directive.js.map +0 -1
  165. package/esm2015/lib/core-ui/functions/core-css.helpers.js +0 -35
  166. package/esm2015/lib/core-ui/functions/core-css.helpers.js.map +0 -1
  167. package/esm2015/lib/core-ui/pipes/br.pipe.js +0 -23
  168. package/esm2015/lib/core-ui/pipes/br.pipe.js.map +0 -1
  169. package/esm2015/lib/core-ui/pipes/contrast-color.pipe.js +0 -20
  170. package/esm2015/lib/core-ui/pipes/contrast-color.pipe.js.map +0 -1
  171. package/esm2015/lib/core-ui/pipes/custom-date.pipe.js +0 -27
  172. package/esm2015/lib/core-ui/pipes/custom-date.pipe.js.map +0 -1
  173. package/esm2015/lib/core-ui/pipes/highlight-range.pipe.js +0 -21
  174. package/esm2015/lib/core-ui/pipes/highlight-range.pipe.js.map +0 -1
  175. package/esm2015/lib/core-ui/pipes/highlight-term.pipe.js +0 -38
  176. package/esm2015/lib/core-ui/pipes/highlight-term.pipe.js.map +0 -1
  177. package/esm2015/lib/core-ui/pipes/lx-is-uuid.pipe.js +0 -21
  178. package/esm2015/lib/core-ui/pipes/lx-is-uuid.pipe.js.map +0 -1
  179. package/esm2015/lib/core-ui/pipes/lx-time-ago.pipe.js +0 -25
  180. package/esm2015/lib/core-ui/pipes/lx-time-ago.pipe.js.map +0 -1
  181. package/esm2015/lib/core-ui/pipes/lx-translate.pipe.js +0 -46
  182. package/esm2015/lib/core-ui/pipes/lx-translate.pipe.js.map +0 -1
  183. package/esm2015/lib/core-ui/pipes/markdown.pipe.js +0 -29
  184. package/esm2015/lib/core-ui/pipes/markdown.pipe.js.map +0 -1
  185. package/esm2015/lib/core-ui/pipes/nbsp.pipe.js +0 -14
  186. package/esm2015/lib/core-ui/pipes/nbsp.pipe.js.map +0 -1
  187. package/esm2015/lib/core-ui/pipes/sort.pipe.js +0 -52
  188. package/esm2015/lib/core-ui/pipes/sort.pipe.js.map +0 -1
  189. package/esm2015/lib/core-ui/pipes/translation-after.pipe.js +0 -28
  190. package/esm2015/lib/core-ui/pipes/translation-after.pipe.js.map +0 -1
  191. package/esm2015/lib/core-ui/pipes/translation-before.pipe.js +0 -53
  192. package/esm2015/lib/core-ui/pipes/translation-before.pipe.js.map +0 -1
  193. package/esm2015/lib/core-ui/pipes/translation-between.pipe.js +0 -67
  194. package/esm2015/lib/core-ui/pipes/translation-between.pipe.js.map +0 -1
  195. package/esm2015/lib/core-ui/pipes/unescape-curly-braces.pipe.js +0 -16
  196. package/esm2015/lib/core-ui/pipes/unescape-curly-braces.pipe.js.map +0 -1
  197. package/esm2015/lib/core-ui/tooltip/to-cdk-position.function.js +0 -74
  198. package/esm2015/lib/core-ui/tooltip/to-cdk-position.function.js.map +0 -1
  199. package/esm2015/lib/core-ui/tooltip/tooltip-position.interface.js +0 -7
  200. package/esm2015/lib/core-ui/tooltip/tooltip-position.interface.js.map +0 -1
  201. package/esm2015/lib/core-ui/tooltip/tooltip.component.js +0 -30
  202. package/esm2015/lib/core-ui/tooltip/tooltip.component.js.map +0 -1
  203. package/esm2015/lib/core-ui/tooltip/tooltip.directive.js +0 -107
  204. package/esm2015/lib/core-ui/tooltip/tooltip.directive.js.map +0 -1
  205. package/esm2015/lib/core-ui/tooltip/tooltip.module.js +0 -21
  206. package/esm2015/lib/core-ui/tooltip/tooltip.module.js.map +0 -1
  207. package/esm2015/lib/forms-ui/components/basic-dropdown/basic-dropdown.component.js +0 -108
  208. package/esm2015/lib/forms-ui/components/basic-dropdown/basic-dropdown.component.js.map +0 -1
  209. package/esm2015/lib/forms-ui/components/basic-dropdown-item/basic-dropdown-item.component.js +0 -38
  210. package/esm2015/lib/forms-ui/components/basic-dropdown-item/basic-dropdown-item.component.js.map +0 -1
  211. package/esm2015/lib/forms-ui/components/cdk-options-dropdown/cdk-options-dropdown.component.js +0 -223
  212. package/esm2015/lib/forms-ui/components/cdk-options-dropdown/cdk-options-dropdown.component.js.map +0 -1
  213. package/esm2015/lib/forms-ui/components/cdk-options-sub-dropdown/cdk-options-sub-dropdown.component.js +0 -140
  214. package/esm2015/lib/forms-ui/components/cdk-options-sub-dropdown/cdk-options-sub-dropdown.component.js.map +0 -1
  215. package/esm2015/lib/forms-ui/components/currency/currency-input.component.js +0 -147
  216. package/esm2015/lib/forms-ui/components/currency/currency-input.component.js.map +0 -1
  217. package/esm2015/lib/forms-ui/components/currency/currency-symbol-map.constant.js +0 -105
  218. package/esm2015/lib/forms-ui/components/currency/currency-symbol-map.constant.js.map +0 -1
  219. package/esm2015/lib/forms-ui/components/currency/currency-symbol.component.js +0 -28
  220. package/esm2015/lib/forms-ui/components/currency/currency-symbol.component.js.map +0 -1
  221. package/esm2015/lib/forms-ui/components/date-input/date-input.component.js +0 -276
  222. package/esm2015/lib/forms-ui/components/date-input/date-input.component.js.map +0 -1
  223. package/esm2015/lib/forms-ui/components/drag-and-drop-list/constants.js +0 -5
  224. package/esm2015/lib/forms-ui/components/drag-and-drop-list/constants.js.map +0 -1
  225. package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list-item/drag-and-drop-list-item.component.js +0 -54
  226. package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list-item/drag-and-drop-list-item.component.js.map +0 -1
  227. package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.js +0 -107
  228. package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.js.map +0 -1
  229. package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.module.js +0 -25
  230. package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.module.js.map +0 -1
  231. package/esm2015/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-item/keyboard-sortable-item.directive.js +0 -133
  232. package/esm2015/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-item/keyboard-sortable-item.directive.js.map +0 -1
  233. package/esm2015/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-list/keyboard-sortable-list.directive.js +0 -37
  234. package/esm2015/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-list/keyboard-sortable-list.directive.js.map +0 -1
  235. package/esm2015/lib/forms-ui/components/error-message/error-message.component.js +0 -29
  236. package/esm2015/lib/forms-ui/components/error-message/error-message.component.js.map +0 -1
  237. package/esm2015/lib/forms-ui/components/form-error/form-error.component.js +0 -44
  238. package/esm2015/lib/forms-ui/components/form-error/form-error.component.js.map +0 -1
  239. package/esm2015/lib/forms-ui/components/icon/icon.component.js +0 -49
  240. package/esm2015/lib/forms-ui/components/icon/icon.component.js.map +0 -1
  241. package/esm2015/lib/forms-ui/components/input/input.component.js +0 -51
  242. package/esm2015/lib/forms-ui/components/input/input.component.js.map +0 -1
  243. package/esm2015/lib/forms-ui/components/keyboard-select.directive.js +0 -117
  244. package/esm2015/lib/forms-ui/components/keyboard-select.directive.js.map +0 -1
  245. package/esm2015/lib/forms-ui/components/multi-select/multi-select.component.js +0 -257
  246. package/esm2015/lib/forms-ui/components/multi-select/multi-select.component.js.map +0 -1
  247. package/esm2015/lib/forms-ui/components/option/option.component.js +0 -85
  248. package/esm2015/lib/forms-ui/components/option/option.component.js.map +0 -1
  249. package/esm2015/lib/forms-ui/components/option-group/option-group.component.js +0 -34
  250. package/esm2015/lib/forms-ui/components/option-group/option-group.component.js.map +0 -1
  251. package/esm2015/lib/forms-ui/components/option-group-dropdown/option-group-dropdown.component.js +0 -105
  252. package/esm2015/lib/forms-ui/components/option-group-dropdown/option-group-dropdown.component.js.map +0 -1
  253. package/esm2015/lib/forms-ui/components/options-dropdown/options-dropdown.component.js +0 -169
  254. package/esm2015/lib/forms-ui/components/options-dropdown/options-dropdown.component.js.map +0 -1
  255. package/esm2015/lib/forms-ui/components/options-sub-dropdown/options-sub-dropdown.component.js +0 -96
  256. package/esm2015/lib/forms-ui/components/options-sub-dropdown/options-sub-dropdown.component.js.map +0 -1
  257. package/esm2015/lib/forms-ui/components/picker/picker-trigger.directive.js +0 -36
  258. package/esm2015/lib/forms-ui/components/picker/picker-trigger.directive.js.map +0 -1
  259. package/esm2015/lib/forms-ui/components/picker/picker.component.js +0 -210
  260. package/esm2015/lib/forms-ui/components/picker/picker.component.js.map +0 -1
  261. package/esm2015/lib/forms-ui/components/picker-option/picker-option.component.js +0 -124
  262. package/esm2015/lib/forms-ui/components/picker-option/picker-option.component.js.map +0 -1
  263. package/esm2015/lib/forms-ui/components/pill-item/pill-item.component.js +0 -37
  264. package/esm2015/lib/forms-ui/components/pill-item/pill-item.component.js.map +0 -1
  265. package/esm2015/lib/forms-ui/components/pill-list/pill-list.component.js +0 -64
  266. package/esm2015/lib/forms-ui/components/pill-list/pill-list.component.js.map +0 -1
  267. package/esm2015/lib/forms-ui/components/responsive-input/responsive-input.component.js +0 -104
  268. package/esm2015/lib/forms-ui/components/responsive-input/responsive-input.component.js.map +0 -1
  269. package/esm2015/lib/forms-ui/components/single-select/single-select.component.js +0 -279
  270. package/esm2015/lib/forms-ui/components/single-select/single-select.component.js.map +0 -1
  271. package/esm2015/lib/forms-ui/components/slider-toggle/slider-toggle.component.js +0 -47
  272. package/esm2015/lib/forms-ui/components/slider-toggle/slider-toggle.component.js.map +0 -1
  273. package/esm2015/lib/forms-ui/components/sorting-dropdown/sorting-dropdown.component.js +0 -56
  274. package/esm2015/lib/forms-ui/components/sorting-dropdown/sorting-dropdown.component.js.map +0 -1
  275. package/esm2015/lib/forms-ui/components/sorting-dropdown-trigger/sorting-dropdown-trigger.component.js +0 -25
  276. package/esm2015/lib/forms-ui/components/sorting-dropdown-trigger/sorting-dropdown-trigger.component.js.map +0 -1
  277. package/esm2015/lib/forms-ui/directives/form-error.directive.js +0 -111
  278. package/esm2015/lib/forms-ui/directives/form-error.directive.js.map +0 -1
  279. package/esm2015/lib/forms-ui/directives/form-submit.directive.js +0 -28
  280. package/esm2015/lib/forms-ui/directives/form-submit.directive.js.map +0 -1
  281. package/esm2015/lib/forms-ui/directives/keyboard-action-source.directive.js +0 -53
  282. package/esm2015/lib/forms-ui/directives/keyboard-action-source.directive.js.map +0 -1
  283. package/esm2015/lib/forms-ui/directives/mark-invalid.directive.js +0 -38
  284. package/esm2015/lib/forms-ui/directives/mark-invalid.directive.js.map +0 -1
  285. package/esm2015/lib/forms-ui/directives/select-dropdown.directive.js +0 -31
  286. package/esm2015/lib/forms-ui/directives/select-dropdown.directive.js.map +0 -1
  287. package/esm2015/lib/forms-ui/directives/selectable-item.directive.js +0 -33
  288. package/esm2015/lib/forms-ui/directives/selectable-item.directive.js.map +0 -1
  289. package/esm2015/lib/forms-ui/directives/selected-option.directive.js +0 -26
  290. package/esm2015/lib/forms-ui/directives/selected-option.directive.js.map +0 -1
  291. package/esm2015/lib/forms-ui/forms-ui.module.js +0 -236
  292. package/esm2015/lib/forms-ui/forms-ui.module.js.map +0 -1
  293. package/esm2015/lib/forms-ui/helpers/key-codes.constants.js +0 -11
  294. package/esm2015/lib/forms-ui/helpers/key-codes.constants.js.map +0 -1
  295. package/esm2015/lib/forms-ui/helpers/keyboard-navigation.helpers.js +0 -38
  296. package/esm2015/lib/forms-ui/helpers/keyboard-navigation.helpers.js.map +0 -1
  297. package/esm2015/lib/forms-ui/models/base-select.directive.js +0 -148
  298. package/esm2015/lib/forms-ui/models/base-select.directive.js.map +0 -1
  299. package/esm2015/lib/forms-ui/models/dropdown-item.interface.js +0 -2
  300. package/esm2015/lib/forms-ui/models/dropdown-item.interface.js.map +0 -1
  301. package/esm2015/lib/forms-ui/models/single-select-padding.interface.js +0 -2
  302. package/esm2015/lib/forms-ui/models/single-select-padding.interface.js.map +0 -1
  303. package/esm2015/lib/forms-ui/models/sorting.interface.js +0 -7
  304. package/esm2015/lib/forms-ui/models/sorting.interface.js.map +0 -1
  305. package/esm2015/lib/forms-ui/pipes/filter-selection.pipe.js +0 -30
  306. package/esm2015/lib/forms-ui/pipes/filter-selection.pipe.js.map +0 -1
  307. package/esm2015/lib/forms-ui/pipes/filter-term.pipe.js +0 -26
  308. package/esm2015/lib/forms-ui/pipes/filter-term.pipe.js.map +0 -1
  309. package/esm2015/lib/forms-ui/pipes/format-number.pipe.js +0 -65
  310. package/esm2015/lib/forms-ui/pipes/format-number.pipe.js.map +0 -1
  311. package/esm2015/lib/forms-ui/validators/date-in-foreseeable-future.validator.js +0 -26
  312. package/esm2015/lib/forms-ui/validators/date-in-foreseeable-future.validator.js.map +0 -1
  313. package/esm2015/lib/modal-ui/components/modal/modal.component.js +0 -214
  314. package/esm2015/lib/modal-ui/components/modal/modal.component.js.map +0 -1
  315. package/esm2015/lib/modal-ui/components/modal-footer/modal-footer.component.js +0 -15
  316. package/esm2015/lib/modal-ui/components/modal-footer/modal-footer.component.js.map +0 -1
  317. package/esm2015/lib/modal-ui/components/modal-header/modal-header.component.js +0 -27
  318. package/esm2015/lib/modal-ui/components/modal-header/modal-header.component.js.map +0 -1
  319. package/esm2015/lib/modal-ui/directives/modal-content.directive.js +0 -13
  320. package/esm2015/lib/modal-ui/directives/modal-content.directive.js.map +0 -1
  321. package/esm2015/lib/modal-ui/modal.constants.js +0 -3
  322. package/esm2015/lib/modal-ui/modal.constants.js.map +0 -1
  323. package/esm2015/lib/modal-ui/modal.module.js +0 -26
  324. package/esm2015/lib/modal-ui/modal.module.js.map +0 -1
  325. package/esm2015/lib/popover-ui/components/popover/popover.component.js +0 -203
  326. package/esm2015/lib/popover-ui/components/popover/popover.component.js.map +0 -1
  327. package/esm2015/lib/popover-ui/directives/popover-click.directive.js +0 -51
  328. package/esm2015/lib/popover-ui/directives/popover-click.directive.js.map +0 -1
  329. package/esm2015/lib/popover-ui/directives/popover-content.directive.js +0 -16
  330. package/esm2015/lib/popover-ui/directives/popover-content.directive.js.map +0 -1
  331. package/esm2015/lib/popover-ui/directives/popover-hover.directive.js +0 -87
  332. package/esm2015/lib/popover-ui/directives/popover-hover.directive.js.map +0 -1
  333. package/esm2015/lib/popover-ui/popover-ui.module.js +0 -22
  334. package/esm2015/lib/popover-ui/popover-ui.module.js.map +0 -1
  335. package/esm2015/lib/shared/date-helpers.js +0 -35
  336. package/esm2015/lib/shared/date-helpers.js.map +0 -1
  337. package/esm2015/lib/shared/misc-helpers.js +0 -34
  338. package/esm2015/lib/shared/misc-helpers.js.map +0 -1
  339. package/esm2015/lib/shared/observe.js +0 -40
  340. package/esm2015/lib/shared/observe.js.map +0 -1
  341. package/esm2015/lib/tab-ui/components/tab/tab.component.js +0 -75
  342. package/esm2015/lib/tab-ui/components/tab/tab.component.js.map +0 -1
  343. package/esm2015/lib/tab-ui/components/tab-group/tab-group.component.js +0 -78
  344. package/esm2015/lib/tab-ui/components/tab-group/tab-group.component.js.map +0 -1
  345. package/esm2015/lib/tab-ui/tab-ui.module.js +0 -22
  346. package/esm2015/lib/tab-ui/tab-ui.module.js.map +0 -1
  347. package/fesm2015/leanix-components.js.map +0 -1
@@ -1,169 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, ContentChild, ContentChildren, Input } from '@angular/core';
2
- import { BehaviorSubject, combineLatest, fromEvent, merge, Subject } from 'rxjs';
3
- import { debounceTime, delay, distinctUntilChanged, filter, map, startWith, switchMap, takeUntil, withLatestFrom } from 'rxjs/operators';
4
- import { KeyboardActionSourceDirective } from '../../directives/keyboard-action-source.directive';
5
- import { KeyboardSelectAction } from '../keyboard-select.directive';
6
- import { OptionComponent } from '../option/option.component';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/common";
9
- import * as i2 from "../../../core-ui/directives/autoclose.directive";
10
- export class OptionsDropdownComponent {
11
- constructor(changeDetection) {
12
- this.changeDetection = changeDetection;
13
- this.NAME = 'OptionsDropdownComponent';
14
- this.align = 'right';
15
- this.closeOnScroll = false;
16
- this.disabled = false;
17
- this.maxHeight = 'none';
18
- this.closeOnSelect = true;
19
- this.highlightedOptionIndex$ = new BehaviorSubject(0);
20
- this._open = false;
21
- this.isSubdropdownExpanded = false;
22
- this.destroyed$ = new Subject();
23
- }
24
- set open(value) {
25
- if (this.disabled) {
26
- return;
27
- }
28
- this._open = value;
29
- if (this.trigger) {
30
- // Don't emit keyboard actions while the dropdown is not open yet.
31
- this.trigger.dontEmit = !this.open;
32
- }
33
- if (this.open) {
34
- this.isSubdropdownExpanded = false;
35
- this.setInitialHighlightingIndex();
36
- }
37
- this.changeDetection.markForCheck();
38
- }
39
- get open() {
40
- return this._open;
41
- }
42
- get options() {
43
- return this._options.toArray();
44
- }
45
- ngAfterViewInit() {
46
- this.trigger.dontEmit = !this.open;
47
- const optionsChanges$ = this._options.changes.pipe(startWith(this._options), map((options) => options.toArray()));
48
- this.trigger.keyboardActions$
49
- .pipe(filter((keyboardSelectAction) => keyboardSelectAction === KeyboardSelectAction.NEXT), withLatestFrom(this.highlightedOptionIndex$, optionsChanges$, (_, index, options) => this.next(index, options)))
50
- .subscribe(this.highlightedOptionIndex$);
51
- this.trigger.keyboardActions$
52
- .pipe(filter((keyboardSelectAction) => keyboardSelectAction === KeyboardSelectAction.PREV), withLatestFrom(this.highlightedOptionIndex$, optionsChanges$, (_, index, options) => this.prev(index, options)))
53
- .subscribe(this.highlightedOptionIndex$);
54
- this.trigger.keyboardActions$
55
- .pipe(filter((keyboardSelectAction) => keyboardSelectAction === KeyboardSelectAction.LEFT), withLatestFrom(this.highlightedOptionIndex$, optionsChanges$, (_, index, options) => this.isSubdropdownExpanded ? this.collapse(index, options) : this.expand(index, options)))
56
- .subscribe(this.highlightedOptionIndex$);
57
- this.trigger.keyboardActions$
58
- .pipe(filter((keyboardSelectAction) => keyboardSelectAction === KeyboardSelectAction.RIGHT), withLatestFrom(this.highlightedOptionIndex$, optionsChanges$, (_, index, options) => this.isSubdropdownExpanded ? this.collapse(index, options) : this.expand(index, options)))
59
- .subscribe(this.highlightedOptionIndex$);
60
- this.trigger.keyboardActions$
61
- .pipe(filter((keyboardSelectAction) => keyboardSelectAction === KeyboardSelectAction.CLOSE))
62
- .subscribe(() => this.closeDropdown());
63
- this.trigger.keyboardActions$
64
- .pipe(filter((keyboardSelectAction) => keyboardSelectAction === KeyboardSelectAction.EXECUTE), withLatestFrom(this.highlightedOptionIndex$, (_, index) => index))
65
- .subscribe((index) => {
66
- var _a;
67
- (_a = this.options[index]) === null || _a === void 0 ? void 0 : _a.selectOption();
68
- });
69
- /** Combined stream of all of the child options' select outputs. */
70
- this._options.changes
71
- .pipe(startWith(this._options), filter(() => this.closeOnSelect), switchMap(() => merge(...this._options.map((option) => option.select), ...this._options.map((option) => option.selectedClick))), delay(0), takeUntil(this.destroyed$))
72
- .subscribe((_value) => {
73
- this.closeDropdown();
74
- });
75
- combineLatest(optionsChanges$, this.highlightedOptionIndex$)
76
- .pipe(delay(0), map(([options, index]) => options[index]), distinctUntilChanged(), takeUntil(this.destroyed$))
77
- .subscribe((optionToBeHighlighted) => {
78
- this.options.forEach((option) => option.setHighlighted(optionToBeHighlighted === option));
79
- this.changeDetection.markForCheck();
80
- });
81
- if (this.closeOnScroll) {
82
- fromEvent(window, 'scroll')
83
- .pipe(debounceTime(100), takeUntil(this.destroyed$))
84
- .subscribe(() => {
85
- this.open = false;
86
- this.trigger.blur();
87
- });
88
- }
89
- }
90
- ngOnDestroy() {
91
- this.destroyed$.next();
92
- }
93
- closeDropdown() {
94
- this.open = false;
95
- }
96
- setInitialHighlightingIndex() {
97
- const firstAvailableIndex = this.options.map((option) => !this.optionIsHighlightable(option)).indexOf(false, 0);
98
- this.highlightedOptionIndex$.next(firstAvailableIndex);
99
- }
100
- prev(currentIndex, items) {
101
- if (currentIndex > 0) {
102
- const prevEnabledIndex = items.map((option) => !this.optionIsHighlightable(option)).lastIndexOf(false, currentIndex - 1);
103
- return prevEnabledIndex !== -1 ? prevEnabledIndex : currentIndex;
104
- }
105
- else {
106
- return currentIndex;
107
- }
108
- }
109
- next(currentIndex, items) {
110
- if (currentIndex < items.length) {
111
- const nextEnabledIndex = items.map((option) => !this.optionIsHighlightable(option)).indexOf(false, currentIndex + 1);
112
- return nextEnabledIndex !== -1 ? nextEnabledIndex : currentIndex;
113
- }
114
- else {
115
- return currentIndex;
116
- }
117
- }
118
- expand(currentIndex, items) {
119
- if (items[currentIndex].hasSubdropdown) {
120
- this.isSubdropdownExpanded = true;
121
- return this.next(currentIndex, items);
122
- }
123
- else {
124
- return currentIndex;
125
- }
126
- }
127
- collapse(currentIndex, items) {
128
- if (this.isSubdropdownExpanded) {
129
- this.isSubdropdownExpanded = false;
130
- return this.prev(currentIndex, items);
131
- }
132
- else {
133
- return currentIndex;
134
- }
135
- }
136
- optionIsHighlightable(option) {
137
- const isToplevelOptionAndAllowed = !option.isSuboption && !this.isSubdropdownExpanded;
138
- const isSecondlevelOptionAndAllowed = option.isSuboption && this.isSubdropdownExpanded;
139
- return !option.disabled && (isToplevelOptionAndAllowed || isSecondlevelOptionAndAllowed);
140
- }
141
- }
142
- OptionsDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: OptionsDropdownComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
143
- OptionsDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: OptionsDropdownComponent, selector: "lx-options-dropdown", inputs: { align: "align", closeOnScroll: "closeOnScroll", disabled: "disabled", maxHeight: "maxHeight", closeOnSelect: "closeOnSelect" }, queries: [{ propertyName: "trigger", first: true, predicate: KeyboardActionSourceDirective, descendants: true }, { propertyName: "_options", predicate: OptionComponent, descendants: true }], ngImport: i0, template: "<div (click)=\"open = !open\" class=\"triggerContainer\">\n <ng-content select=\"[lxKeyboardActionSource]\"></ng-content>\n</div>\n<ul\n *ngIf=\"open\"\n [class.left]=\"align === 'left'\"\n [class.showScrollbar]=\"maxHeight !== 'none'\"\n [style.max-height]=\"maxHeight\"\n lxAutoclose\n (autoclose)=\"closeDropdown()\"\n>\n <ng-content></ng-content>\n</ul>\n", styles: [":host{display:inline-block;position:relative}ul{position:absolute;background-color:#fff;border-radius:3px;box-shadow:0 8px 12px 2px rgba(0,0,0,.15);border:1px solid #e1e5eb;text-align:left;list-style:none;margin:0;padding-left:0;z-index:20;white-space:nowrap}ul::-webkit-scrollbar{width:.5em;height:.5em;background-color:transparent}ul::-webkit-scrollbar-thumb{background-color:#c2c9d6;border-radius:6px}ul::-webkit-scrollbar-track-piece{background-color:transparent}ul.left{right:0;padding-right:0}ul.showScrollbar{overflow-y:auto}.triggerContainer{display:inline-block}"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.AutocloseDirective, selector: "[lxAutoclose]", inputs: ["autocloseGroup"], outputs: ["autoclose"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
144
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: OptionsDropdownComponent, decorators: [{
145
- type: Component,
146
- args: [{
147
- selector: 'lx-options-dropdown',
148
- templateUrl: 'options-dropdown.component.html',
149
- styleUrls: ['options-dropdown.component.scss'],
150
- changeDetection: ChangeDetectionStrategy.OnPush
151
- }]
152
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { align: [{
153
- type: Input
154
- }], closeOnScroll: [{
155
- type: Input
156
- }], disabled: [{
157
- type: Input
158
- }], maxHeight: [{
159
- type: Input
160
- }], closeOnSelect: [{
161
- type: Input
162
- }], trigger: [{
163
- type: ContentChild,
164
- args: [KeyboardActionSourceDirective]
165
- }], _options: [{
166
- type: ContentChildren,
167
- args: [OptionComponent, { descendants: true }]
168
- }] } });
169
- //# sourceMappingURL=../../../../../../../../libs/components/src/lib/forms-ui/components/options-dropdown/options-dropdown.component.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"options-dropdown.component.js","sourceRoot":"","sources":["options-dropdown.component.ts","options-dropdown.component.html"],"names":[],"mappings":"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"}
@@ -1,96 +0,0 @@
1
- import { Component, ContentChildren, HostBinding, HostListener, Input } from '@angular/core';
2
- import { BehaviorSubject, combineLatest, fromEvent, merge, Subject } from 'rxjs';
3
- import { delay, map, startWith, switchMap, takeUntil } from 'rxjs/operators';
4
- import { executeOnNextTick } from '../../../shared/misc-helpers';
5
- import { OptionComponent } from '../option/option.component';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "../../../core-ui/directives/autoclose.directive";
8
- import * as i2 from "@angular/common";
9
- export class OptionsSubDropdownComponent {
10
- constructor(changeDetection) {
11
- this.changeDetection = changeDetection;
12
- this.align = 'right';
13
- this.hidden = true;
14
- this.mouseInside$ = new BehaviorSubject(false);
15
- this.destroyed$ = new Subject();
16
- this.maxHeight$ = new BehaviorSubject('none');
17
- }
18
- mouseenter() {
19
- this.mouseInside$.next(true);
20
- }
21
- mouseleave() {
22
- this.mouseInside$.next(false);
23
- }
24
- ngOnDestroy() {
25
- this.destroyed$.next();
26
- }
27
- ngAfterViewInit() {
28
- // To avoid `Expression has changed after it was checked`
29
- executeOnNextTick(() => {
30
- this.trigger.hasSubdropdown = true;
31
- });
32
- merge(this.showByKeyboard(), this.showByMouse())
33
- .pipe(takeUntil(this.destroyed$))
34
- .subscribe((show) => {
35
- this.hidden = !show;
36
- this.changeDetection.markForCheck();
37
- if (show) {
38
- this.updateMaxHeight(this.trigger.elementRef);
39
- }
40
- });
41
- }
42
- updateMaxHeight(elementRef) {
43
- const marginBottom = 8;
44
- const optionTopPosition = elementRef.nativeElement.getBoundingClientRect().top;
45
- const screenHeight = window.innerHeight;
46
- const maxHeight = `${screenHeight - optionTopPosition - marginBottom}px`;
47
- if (this.maxHeight$.getValue() !== maxHeight) {
48
- this.maxHeight$.next(maxHeight);
49
- }
50
- }
51
- showByKeyboard() {
52
- const optionChange$ = this.options.changes.pipe(startWith(this.options), map((options) => options.toArray()), map((options) => options.map((option) => {
53
- option.isSuboption = true;
54
- return option;
55
- })));
56
- return combineLatest([this.trigger.highlight.asObservable(), optionChange$]).pipe(delay(0), // Need tick delay to get option highlighted and filter it out after
57
- map(([isHighlighted, options]) => isHighlighted || options.some((option) => option.isHighlighted)));
58
- }
59
- showByMouse() {
60
- const mouseEnterTrigger$ = fromEvent(this.trigger.elementRef.nativeElement, 'mouseenter');
61
- const mouseLeaveTrigger$ = fromEvent(this.trigger.elementRef.nativeElement, 'mouseleave');
62
- const showOnEnterMouse$ = mouseEnterTrigger$.pipe(map(() => true));
63
- const showOnEnterSubmenu$ = mouseEnterTrigger$.pipe(switchMap(() => mouseLeaveTrigger$), switchMap(() => this.mouseInside$));
64
- return merge(showOnEnterMouse$, showOnEnterSubmenu$);
65
- }
66
- closeDropdown() {
67
- this.hidden = true;
68
- }
69
- }
70
- OptionsSubDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: OptionsSubDropdownComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
71
- OptionsSubDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: OptionsSubDropdownComponent, selector: "lx-options-sub-dropdown", inputs: { trigger: "trigger", align: "align" }, host: { listeners: { "mouseenter": "mouseenter()", "mouseleave": "mouseleave()" }, properties: { "class.hidden": "this.hidden" } }, queries: [{ propertyName: "options", predicate: OptionComponent, descendants: true }], ngImport: i0, template: "<div #spacingContainer class=\"spacingContainer\" [class.left]=\"align === 'left'\">\n <ul\n #subDropdown\n class=\"sub-dropdown\"\n lxAutoclose\n [class.showScrollbar]=\"(maxHeight$ | async) !== 'none'\"\n [style.max-height]=\"(maxHeight$ | async) ?? 'none'\"\n (autoclose)=\"closeDropdown()\"\n >\n <ng-content></ng-content>\n </ul>\n</div>\n", styles: [":host{display:block}:host.hidden{display:none}.spacingContainer{position:absolute;left:100%;transform:translateY(-32px);padding:0 0 0 4px}.spacingContainer.left{left:auto;right:100%;padding:0 4px 0 0}.sub-dropdown{position:relative;padding:0;background-color:#fff;border:1px solid #e1e5eb;border-radius:3px;box-shadow:0 8px 12px 2px rgba(0,0,0,.15);text-align:left;list-style:none}.sub-dropdown::-webkit-scrollbar{width:.5em;height:.5em;background-color:transparent}.sub-dropdown::-webkit-scrollbar-thumb{background-color:#c2c9d6;border-radius:6px}.sub-dropdown::-webkit-scrollbar-track-piece{background-color:transparent}.sub-dropdown.showScrollbar{overflow-y:auto}"], directives: [{ type: i1.AutocloseDirective, selector: "[lxAutoclose]", inputs: ["autocloseGroup"], outputs: ["autoclose"] }], pipes: { "async": i2.AsyncPipe } });
72
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: OptionsSubDropdownComponent, decorators: [{
73
- type: Component,
74
- args: [{
75
- selector: 'lx-options-sub-dropdown',
76
- templateUrl: 'options-sub-dropdown.component.html',
77
- styleUrls: ['options-sub-dropdown.component.scss']
78
- }]
79
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { trigger: [{
80
- type: Input
81
- }], align: [{
82
- type: Input
83
- }], options: [{
84
- type: ContentChildren,
85
- args: [OptionComponent, { descendants: true }]
86
- }], hidden: [{
87
- type: HostBinding,
88
- args: ['class.hidden']
89
- }], mouseenter: [{
90
- type: HostListener,
91
- args: ['mouseenter']
92
- }], mouseleave: [{
93
- type: HostListener,
94
- args: ['mouseleave']
95
- }] } });
96
- //# sourceMappingURL=../../../../../../../../libs/components/src/lib/forms-ui/components/options-sub-dropdown/options-sub-dropdown.component.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"options-sub-dropdown.component.js","sourceRoot":"","sources":["options-sub-dropdown.component.ts","options-sub-dropdown.component.html"],"names":[],"mappings":"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"}
@@ -1,36 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import { fromEvent, Subject } from 'rxjs';
3
- import { filter, takeUntil } from 'rxjs/operators';
4
- import * as i0 from "@angular/core";
5
- export class PickerTriggerDirective {
6
- constructor(element) {
7
- this.element = element;
8
- this.focused = false;
9
- this.allClickEvents$ = fromEvent(this.element.nativeElement, 'click');
10
- this.focusEvent$ = fromEvent(this.element.nativeElement, 'focus');
11
- this.blurEvent$ = fromEvent(this.element.nativeElement, 'blur');
12
- this.clickEvent$ = this.allClickEvents$.pipe(filter(() => this.focused === true));
13
- this.destroyed$ = new Subject();
14
- this.focusEvent$.pipe(takeUntil(this.destroyed$)).subscribe(() => {
15
- this.focused = true;
16
- });
17
- this.blurEvent$.pipe(takeUntil(this.destroyed$)).subscribe(() => {
18
- this.focused = false;
19
- });
20
- }
21
- get width() {
22
- return this.element.nativeElement.offsetWidth;
23
- }
24
- ngOnDestroy() {
25
- this.destroyed$.next();
26
- }
27
- }
28
- PickerTriggerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: PickerTriggerDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
29
- PickerTriggerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.1.4", type: PickerTriggerDirective, selector: "[lxPickerTrigger]", ngImport: i0 });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: PickerTriggerDirective, decorators: [{
31
- type: Directive,
32
- args: [{
33
- selector: '[lxPickerTrigger]'
34
- }]
35
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
36
- //# sourceMappingURL=../../../../../../../../libs/components/src/lib/forms-ui/components/picker/picker-trigger.directive.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"picker-trigger.directive.js","sourceRoot":"","sources":["picker-trigger.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAyB,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;;AAKnD,MAAM,OAAO,sBAAsB;IAcjC,YAAoB,OAAgC;QAAhC,YAAO,GAAP,OAAO,CAAyB;QAb5C,YAAO,GAAG,KAAK,CAAC;QAChB,oBAAe,GAAG,SAAS,CAAa,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC7E,gBAAW,GAAG,SAAS,CAAa,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QACzE,eAAU,GAAG,SAAS,CAAa,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAExE,gBAAW,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;QAM3E,eAAU,GAAG,IAAI,OAAO,EAAQ,CAAC;QAGxC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE;YAC/D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACtB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE;YAC9D,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;IAbD,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC;IAChD,CAAC;IAaD,WAAW;QACT,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;;mHAzBU,sBAAsB;uGAAtB,sBAAsB;2FAAtB,sBAAsB;kBAHlC,SAAS;mBAAC;oBACT,QAAQ,EAAE,mBAAmB;iBAC9B"}
@@ -1,210 +0,0 @@
1
- import { ActiveDescendantKeyManager } from '@angular/cdk/a11y';
2
- import { ChangeDetectionStrategy, Component, ContentChild, ContentChildren, forwardRef, HostListener, Input } from '@angular/core';
3
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
- import { Subject } from 'rxjs';
5
- import { takeUntil } from 'rxjs/operators';
6
- import { PickerOptionComponent } from '../picker-option/picker-option.component';
7
- import { PickerTriggerDirective } from './picker-trigger.directive';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "@angular/cdk/bidi";
10
- import * as i2 from "@angular/common";
11
- import * as i3 from "../../../core-ui/directives/autoclose.directive";
12
- /**
13
- * How to use:
14
- * Provide the lx-picker with two kinds of ContentChildren:
15
- * 1. A lxPickerTrigger, preferably a button element, which we use to open the dropdown on click or enter.
16
- * 2. A list of <li> elements with an lx-picker-option attribute that own the option template as content children.
17
- *
18
- * You can use this component as part of a FormGroup or wire it up yourself by listening on the (select) output of the options.
19
- *
20
- * Example usage (non FormGroup style):
21
- * <lx-picker listBoxAriaLabel="Awesome picker">
22
- * <button lxPickerTrigger lx-button mode="outline" size="large" [square]="true" aria-label="Awesome picker" title="Awesome picker">
23
- * <lx-icon [name]="selection.label" [color]="selection.value" fontAwsomeStyle="solid"></lx-icon>
24
- * </button>
25
- * <li *ngFor="let option of options" lx-picker-option [value]="option.value" [selected]="selection === option" (select)="selection = option" [optionId]="option.id">
26
- * <lx-icon lx-picker-option [name]="option.label" [color]="option.value" fontAwsomeStyle="solid"></lx-icon>
27
- * </li>
28
- * </lx-picker>
29
- */
30
- export class PickerComponent {
31
- constructor(dir, cdRef) {
32
- this.dir = dir;
33
- this.cdRef = cdRef;
34
- this.openDirection = 'right';
35
- this._isFormControl = false;
36
- this._open = false;
37
- this._lastSelectWasByKeyManager = false;
38
- this.destroyed$ = new Subject();
39
- }
40
- get activeDescendantsId() {
41
- return this._activeDescendantsId;
42
- }
43
- set activeDescendantsId(value) {
44
- this._activeDescendantsId = value;
45
- this.cdRef.markForCheck();
46
- }
47
- get open() {
48
- return this._open;
49
- }
50
- set open(value) {
51
- this._open = value;
52
- this.cdRef.markForCheck();
53
- }
54
- /**
55
- * Returns a negative margin, that is used to move the picker dropdown to the left side of the picker trigger.
56
- */
57
- get leftOffset() {
58
- const dropdownWidth = 185;
59
- return this.openDirection === 'left' ? `-${dropdownWidth - this._trigger.width}px` : '0px';
60
- }
61
- manageKeyboardEvents(event) {
62
- var _a, _b;
63
- if (this.open) {
64
- const activeIndex = this.keyManager.activeItemIndex || 0;
65
- switch (event.key) {
66
- case 'Enter':
67
- setTimeout(() => {
68
- this.closePicker();
69
- });
70
- break;
71
- case 'Escape':
72
- case 'Tab':
73
- this.setActivePickerOption(-1);
74
- this.closePicker();
75
- break;
76
- case 'ArrowDown':
77
- event.preventDefault();
78
- const newDownIndex = this.keyManager.activeItemIndex === -1 ? 0 : activeIndex + 5;
79
- this.setActivePickerOption(newDownIndex < this.options.length ? newDownIndex : activeIndex);
80
- break;
81
- case 'ArrowUp':
82
- event.preventDefault();
83
- const newUpIndex = this.keyManager.activeItemIndex === -1 ? this.options.length - 1 : activeIndex - 5;
84
- this.setActivePickerOption(newUpIndex >= 0 ? newUpIndex : activeIndex);
85
- break;
86
- case 'ArrowLeft':
87
- if (this.keyManager.activeItemIndex === -1) {
88
- this.setActivePickerOption(this.options.length - 1);
89
- }
90
- else {
91
- this.keyManager.onKeydown(event);
92
- this.activeDescendantsId = (_a = this.keyManager.activeItem) === null || _a === void 0 ? void 0 : _a.optionId;
93
- }
94
- break;
95
- case 'Home':
96
- event.preventDefault();
97
- this.setActivePickerOption(0);
98
- break;
99
- case 'End':
100
- event.preventDefault();
101
- this.setActivePickerOption(this.options.length - 1);
102
- break;
103
- default:
104
- // matches ArrowRight
105
- this.keyManager.onKeydown(event);
106
- this.activeDescendantsId = (_b = this.keyManager.activeItem) === null || _b === void 0 ? void 0 : _b.optionId;
107
- }
108
- if (this.keyManager.activeItem) {
109
- this._lastSelectWasByKeyManager = true;
110
- this.propagateChange(this.keyManager.activeItem.value);
111
- if (!this._isFormControl) {
112
- this.keyManager.activeItem.selectOption();
113
- }
114
- }
115
- }
116
- }
117
- ngAfterViewInit() {
118
- this.keyManager = new ActiveDescendantKeyManager(this.options).withHorizontalOrientation(this.dir.value).withVerticalOrientation(true);
119
- this.options.map((item) => {
120
- item.select.pipe(takeUntil(this.destroyed$)).subscribe((value) => {
121
- var _a;
122
- this.propagateChange(value);
123
- if (value !== ((_a = this.keyManager.activeItem) === null || _a === void 0 ? void 0 : _a.value) || !this._lastSelectWasByKeyManager) {
124
- this.closePicker();
125
- }
126
- this._lastSelectWasByKeyManager = false;
127
- });
128
- });
129
- this._trigger.clickEvent$.pipe(takeUntil(this.destroyed$)).subscribe(() => {
130
- this.toggleOpen();
131
- });
132
- }
133
- ngOnDestroy() {
134
- this.destroyed$.next();
135
- }
136
- closePicker() {
137
- this.setActivePickerOption(-1);
138
- this.open = false;
139
- }
140
- toggleOpen() {
141
- this.open = !this.open;
142
- if (this.open) {
143
- this.onTouched();
144
- }
145
- this.setActivePickerOption(this.open === false ? -1 : this.options.toArray().findIndex((option) => option.selected));
146
- }
147
- setActivePickerOption(index) {
148
- this.keyManager.setActiveItem(index);
149
- if (this.keyManager.activeItem) {
150
- this.activeDescendantsId = this.keyManager.activeItem.optionId;
151
- }
152
- else {
153
- this.activeDescendantsId = undefined;
154
- }
155
- }
156
- //#region Angular Forms API. This is only used when using the Picker inside a FormGroup
157
- writeValue(value) {
158
- var _a;
159
- (_a = this.options) === null || _a === void 0 ? void 0 : _a.toArray().forEach((option) => (option.selected = option.value === value));
160
- }
161
- registerOnChange(fn) {
162
- this.propagateChange = fn;
163
- this._isFormControl = true;
164
- }
165
- registerOnTouched(fn) {
166
- this.onTouched = fn;
167
- }
168
- propagateChange(_value) { }
169
- onTouched() { }
170
- }
171
- PickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: PickerComponent, deps: [{ token: i1.Directionality }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
172
- PickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: PickerComponent, selector: "lx-picker", inputs: { listBoxAriaLabel: "listBoxAriaLabel", listBoxAriaLabelledBy: "listBoxAriaLabelledBy", openDirection: "openDirection" }, host: { listeners: { "document:keydown": "manageKeyboardEvents($event)" } }, providers: [
173
- {
174
- provide: NG_VALUE_ACCESSOR,
175
- multi: true,
176
- useExisting: forwardRef(() => PickerComponent)
177
- }
178
- ], queries: [{ propertyName: "_trigger", first: true, predicate: PickerTriggerDirective, descendants: true }, { propertyName: "options", predicate: PickerOptionComponent }], ngImport: i0, template: "<div class=\"pickerContainer\">\n <ng-content select=\"[lxPickerTrigger]\"></ng-content>\n <ul\n class=\"pickerOptions\"\n *ngIf=\"open\"\n lxAutoclose\n (autoclose)=\"closePicker()\"\n role=\"listbox\"\n [style.margin-left]=\"leftOffset\"\n [attr.aria-activedescendant]=\"activeDescendantsId\"\n [attr.aria-label]=\"listBoxAriaLabel\"\n [attr.aria-labelledby]=\"listBoxAriaLabelledBy\"\n >\n <ng-content></ng-content>\n </ul>\n</div>\n", styles: [":host{display:inline-block;width:100%;position:relative}.pickerOptions{position:absolute;background-color:#fff;border-radius:3px;box-shadow:0 8px 12px 2px rgba(0,0,0,.15);border:1px solid #e1e5eb;padding:4px;z-index:20;width:185px}"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.AutocloseDirective, selector: "[lxAutoclose]", inputs: ["autocloseGroup"], outputs: ["autoclose"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
179
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: PickerComponent, decorators: [{
180
- type: Component,
181
- args: [{
182
- selector: 'lx-picker',
183
- templateUrl: 'picker.component.html',
184
- styleUrls: ['picker.component.scss'],
185
- providers: [
186
- {
187
- provide: NG_VALUE_ACCESSOR,
188
- multi: true,
189
- useExisting: forwardRef(() => PickerComponent)
190
- }
191
- ],
192
- changeDetection: ChangeDetectionStrategy.OnPush
193
- }]
194
- }], ctorParameters: function () { return [{ type: i1.Directionality }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { listBoxAriaLabel: [{
195
- type: Input
196
- }], listBoxAriaLabelledBy: [{
197
- type: Input
198
- }], openDirection: [{
199
- type: Input
200
- }], options: [{
201
- type: ContentChildren,
202
- args: [PickerOptionComponent]
203
- }], _trigger: [{
204
- type: ContentChild,
205
- args: [PickerTriggerDirective]
206
- }], manageKeyboardEvents: [{
207
- type: HostListener,
208
- args: ['document:keydown', ['$event']]
209
- }] } });
210
- //# sourceMappingURL=../../../../../../../../libs/components/src/lib/forms-ui/components/picker/picker.component.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"picker.component.js","sourceRoot":"","sources":["picker.component.ts","picker.component.html"],"names":[],"mappings":"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"}