@festo-ui/angular 3.1.0 → 3.2.1-pre-20220624.2

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 (292) hide show
  1. package/README.md +5 -1
  2. package/css/bundle.css +1 -0
  3. package/css/image-gallery.css +1 -0
  4. package/css/popover.css +1 -0
  5. package/esm2020/festo-ui-angular.mjs +5 -0
  6. package/esm2020/index.mjs +20 -0
  7. package/esm2020/lib/components/accordion/accordion-header/accordion-header.component.mjs +11 -0
  8. package/esm2020/lib/components/accordion/accordion-item/accordion-item-body/accordion-item-body.component.mjs +15 -0
  9. package/esm2020/lib/components/accordion/accordion-item/accordion-item-header/accordion-item-header.component.mjs +28 -0
  10. package/esm2020/lib/components/accordion/accordion-item/accordion-item.component.mjs +143 -0
  11. package/esm2020/lib/components/accordion/accordion.component.mjs +59 -0
  12. package/esm2020/lib/components/accordion/index.mjs +6 -0
  13. package/esm2020/lib/components/breadcrumb/breadcrumb.component.mjs +23 -0
  14. package/esm2020/lib/components/buttons/button/button.component.mjs +41 -0
  15. package/esm2020/lib/components/buttons/link-button/link-button.component.mjs +33 -0
  16. package/esm2020/lib/components/chips/chip/chip.component.mjs +37 -0
  17. package/esm2020/lib/components/chips/chip-container/chip-container.component.mjs +16 -0
  18. package/esm2020/lib/components/click-outside.directive.mjs +28 -0
  19. package/esm2020/lib/components/components.module.mjs +223 -0
  20. package/esm2020/lib/components/image-gallery/image-gallery.component.mjs +58 -0
  21. package/esm2020/lib/components/image-gallery/image-gallery.module.mjs +21 -0
  22. package/esm2020/lib/components/loading-indicator/loading-indicator.component.mjs +16 -0
  23. package/esm2020/lib/components/mobile-flyout/mobile-flyout-item/mobile-flyout-item.component.mjs +38 -0
  24. package/esm2020/lib/components/mobile-flyout/mobile-flyout-page/mobile-flyout-page.component.mjs +64 -0
  25. package/esm2020/lib/components/mobile-flyout/mobile-flyout.component.mjs +68 -0
  26. package/esm2020/lib/components/modals/alert/alert.component.mjs +52 -0
  27. package/esm2020/lib/components/modals/confirm/confirm.component.mjs +53 -0
  28. package/esm2020/lib/components/modals/custom-modal/custom-modal.component.mjs +70 -0
  29. package/esm2020/lib/components/modals/index.mjs +2 -0
  30. package/esm2020/lib/components/modals/modal.service.mjs +121 -0
  31. package/esm2020/lib/components/modals/modals.module.mjs +31 -0
  32. package/esm2020/lib/components/modals/prompt/prompt.component.mjs +102 -0
  33. package/esm2020/lib/components/pagination/pagination.component.mjs +55 -0
  34. package/esm2020/lib/components/popovers/legend/legend.component.mjs +42 -0
  35. package/esm2020/lib/components/popovers/legend/legend.directive.mjs +31 -0
  36. package/esm2020/lib/components/popovers/popover/popover.component.mjs +31 -0
  37. package/esm2020/lib/components/popovers/popover-content/popover-content.component.mjs +82 -0
  38. package/esm2020/lib/components/popovers/popover-content/popover-content.directive.mjs +39 -0
  39. package/esm2020/lib/components/popovers/popover-menu/popover-menu.component.mjs +68 -0
  40. package/esm2020/lib/components/popovers/popover-ref.mjs +25 -0
  41. package/esm2020/lib/components/popovers/popover.defaults.mjs +60 -0
  42. package/esm2020/lib/components/popovers/popover.models.mjs +23 -0
  43. package/esm2020/lib/components/popovers/popover.service.mjs +123 -0
  44. package/esm2020/lib/components/popovers/tooltip/tooltip.directive.mjs +100 -0
  45. package/esm2020/lib/components/progress/progress.component.mjs +20 -0
  46. package/esm2020/lib/components/scroll/index.mjs +2 -0
  47. package/esm2020/lib/components/scroll/scrollable.directive.mjs +72 -0
  48. package/esm2020/lib/components/search-input/safe-html.pipe.mjs +21 -0
  49. package/esm2020/lib/components/search-input/search-input.component.mjs +172 -0
  50. package/esm2020/lib/components/snackbar/snackbar-container.component.mjs +21 -0
  51. package/esm2020/lib/components/snackbar/snackbar-container.directive.mjs +83 -0
  52. package/esm2020/lib/components/snackbar/snackbar.component.mjs +79 -0
  53. package/esm2020/lib/components/snackbar/snackbar.models.mjs +2 -0
  54. package/esm2020/lib/components/snackbar/snackbar.module.mjs +26 -0
  55. package/esm2020/lib/components/snackbar/snackbar.service.mjs +23 -0
  56. package/esm2020/lib/components/stepper-horizontal/step-horizontal/step-horizontal.component.mjs +19 -0
  57. package/esm2020/lib/components/stepper-horizontal/stepper-horizontal.component.mjs +51 -0
  58. package/esm2020/lib/components/stepper-vertical/step-vertical/step-vertical.component.mjs +56 -0
  59. package/esm2020/lib/components/stepper-vertical/stepper-vertical.component.mjs +54 -0
  60. package/esm2020/lib/components/table-header-cell/table-header-cell.directive.mjs +58 -0
  61. package/esm2020/lib/components/tabs/tab-pane/tab-pane.component.mjs +31 -0
  62. package/esm2020/lib/components/tabs/tabs.component.mjs +353 -0
  63. package/esm2020/lib/content/content.module.mjs +20 -0
  64. package/esm2020/lib/content/icon/icon.component.mjs +17 -0
  65. package/esm2020/lib/festo-angular.module.mjs +65 -0
  66. package/esm2020/lib/forms/checkbox/checkbox.component.mjs +149 -0
  67. package/esm2020/lib/forms/color-indicator/color-indicator.component.mjs +68 -0
  68. package/esm2020/lib/forms/color-picker/color-helper.mjs +121 -0
  69. package/esm2020/lib/forms/color-picker/color-picker.component.mjs +273 -0
  70. package/esm2020/lib/forms/container-host.mjs +27 -0
  71. package/esm2020/lib/forms/date-picker/date-picker.component.mjs +199 -0
  72. package/esm2020/lib/forms/date-range-picker/date-range-picker.component.mjs +224 -0
  73. package/esm2020/lib/forms/forms.module.mjs +146 -0
  74. package/esm2020/lib/forms/radio/radio.component.mjs +346 -0
  75. package/esm2020/lib/forms/segment/segment-control/segment-control.component.mjs +57 -0
  76. package/esm2020/lib/forms/segment/segment.component.mjs +109 -0
  77. package/esm2020/lib/forms/select/chip-text.pipe.mjs +34 -0
  78. package/esm2020/lib/forms/select/select-option/select-option.component.mjs +22 -0
  79. package/esm2020/lib/forms/select/select.component.mjs +257 -0
  80. package/esm2020/lib/forms/slider/slider.component.mjs +110 -0
  81. package/esm2020/lib/forms/switch/switch.component.mjs +120 -0
  82. package/esm2020/lib/forms/text-area/text-area.component.mjs +180 -0
  83. package/esm2020/lib/forms/text-editor/text-editor.component.mjs +286 -0
  84. package/esm2020/lib/forms/text-input/text-input.component.mjs +183 -0
  85. package/esm2020/lib/forms/time-picker/time-picker-dropdown/time-picker-dropdown.component.mjs +89 -0
  86. package/esm2020/lib/forms/time-picker/time-picker.component.mjs +188 -0
  87. package/esm2020/lib/forms/unique-selection-dispatcher.mjs +39 -0
  88. package/esm2020/lib/forms/value-accessor-base.mjs +41 -0
  89. package/esm2020/lib/layout/layout.module.mjs +18 -0
  90. package/esm2020/lib/wrappers/flatpickr/flatpickr.component.mjs +59 -0
  91. package/fesm2015/festo-ui-angular.mjs +6172 -0
  92. package/fesm2015/festo-ui-angular.mjs.map +1 -0
  93. package/fesm2020/festo-ui-angular.mjs +6154 -0
  94. package/fesm2020/festo-ui-angular.mjs.map +1 -0
  95. package/index.d.ts +1 -0
  96. package/lib/components/accordion/accordion-header/accordion-header.component.d.ts +5 -0
  97. package/lib/components/accordion/accordion-item/accordion-item-body/accordion-item-body.component.d.ts +6 -0
  98. package/lib/components/accordion/accordion-item/accordion-item-header/accordion-item-header.component.d.ts +15 -0
  99. package/lib/components/accordion/accordion-item/accordion-item.component.d.ts +34 -0
  100. package/lib/components/accordion/accordion.component.d.ts +24 -0
  101. package/lib/components/accordion/index.d.ts +5 -0
  102. package/lib/components/components.module.d.ts +40 -20
  103. package/lib/components/image-gallery/image-gallery.component.d.ts +33 -0
  104. package/lib/components/image-gallery/image-gallery.module.d.ts +10 -0
  105. package/lib/components/mobile-flyout/mobile-flyout-item/mobile-flyout-item.component.d.ts +15 -0
  106. package/lib/components/mobile-flyout/mobile-flyout-page/mobile-flyout-page.component.d.ts +19 -0
  107. package/lib/components/mobile-flyout/mobile-flyout.component.d.ts +17 -0
  108. package/lib/components/modals/confirm/confirm.component.d.ts +1 -3
  109. package/lib/components/modals/custom-modal/custom-modal.component.d.ts +21 -0
  110. package/lib/components/modals/modal.service.d.ts +2 -0
  111. package/lib/components/modals/modals.module.d.ts +8 -5
  112. package/lib/components/popovers/tooltip/tooltip.directive.d.ts +5 -3
  113. package/lib/components/search-input/safe-html.pipe.d.ts +10 -0
  114. package/lib/components/search-input/search-input.component.d.ts +22 -5
  115. package/lib/components/stepper-horizontal/step-horizontal/step-horizontal.component.d.ts +7 -0
  116. package/lib/components/stepper-horizontal/stepper-horizontal.component.d.ts +14 -0
  117. package/lib/components/stepper-vertical/step-vertical/step-vertical.component.d.ts +18 -0
  118. package/lib/components/stepper-vertical/stepper-vertical.component.d.ts +14 -0
  119. package/lib/festo-angular.module.d.ts +2 -1
  120. package/package.json +41 -19
  121. package/scss/base/components/accordion/accordion-header/accordion-header.component.scss +12 -0
  122. package/scss/base/components/accordion/accordion-item/accordion-item-body/accordion-item-body.component.scss +109 -0
  123. package/scss/base/components/accordion/accordion-item/accordion-item-header/accordion-item-header.component.scss +9 -0
  124. package/scss/base/components/accordion/accordion-item/accordion-item.component.scss +71 -0
  125. package/scss/base/components/accordion/accordion.component.scss +6 -0
  126. package/scss/base/components/breadcrumb/breadcrumb.component.scss +0 -1
  127. package/scss/base/components/buttons/button/button.component.scss +5 -3
  128. package/scss/base/components/image-gallery/image-gallery.component.scss +0 -0
  129. package/scss/base/components/image-gallery/styles.scss +5 -0
  130. package/scss/base/components/modals/prompt/prompt.component.scss +0 -1
  131. package/scss/base/components/popovers/legend/legend.component.scss +2 -2
  132. package/scss/base/components/popovers/popover/styles.scss +2 -3
  133. package/scss/base/components/popovers/popover-content/popover-content.component.scss +1 -1
  134. package/scss/base/components/scroll/scroll-story-helper.scss +1 -3
  135. package/scss/base/components/search-input/search-input.component.scss +4 -0
  136. package/scss/base/components/snackbar/snackbar.component.scss +1 -1
  137. package/scss/base/components/stepper-horizontal/step-horizontal/step-horizontal.component.scss +23 -0
  138. package/scss/base/components/stepper-vertical/step-vertical/step-vertical.component.scss +6 -0
  139. package/scss/base/forms/color-indicator/color-indicator.component.scss +1 -1
  140. package/scss/base/forms/color-picker/color-picker.component.scss +15 -15
  141. package/scss/base/forms/date-picker/date-picker.component.scss +1 -1
  142. package/scss/base/forms/date-range-picker/date-range-picker.component.scss +1 -1
  143. package/scss/base/forms/text-area/text-area.component.scss +4 -4
  144. package/scss/base/forms/text-editor/text-editor.component.scss +8 -10
  145. package/scss/base/forms/time-picker/time-picker-dropdown/time-picker-dropdown.component.scss +1 -1
  146. package/bundles/festo-ui-angular.umd.js +0 -6429
  147. package/bundles/festo-ui-angular.umd.js.map +0 -1
  148. package/esm2015/festo-ui-angular.js +0 -5
  149. package/esm2015/festo-ui-angular.js.map +0 -1
  150. package/esm2015/index.js +0 -18
  151. package/esm2015/index.js.map +0 -1
  152. package/esm2015/lib/components/breadcrumb/breadcrumb.component.js +0 -27
  153. package/esm2015/lib/components/breadcrumb/breadcrumb.component.js.map +0 -1
  154. package/esm2015/lib/components/buttons/button/button.component.js +0 -46
  155. package/esm2015/lib/components/buttons/button/button.component.js.map +0 -1
  156. package/esm2015/lib/components/buttons/link-button/link-button.component.js +0 -38
  157. package/esm2015/lib/components/buttons/link-button/link-button.component.js.map +0 -1
  158. package/esm2015/lib/components/chips/chip/chip.component.js +0 -42
  159. package/esm2015/lib/components/chips/chip/chip.component.js.map +0 -1
  160. package/esm2015/lib/components/chips/chip-container/chip-container.component.js +0 -21
  161. package/esm2015/lib/components/chips/chip-container/chip-container.component.js.map +0 -1
  162. package/esm2015/lib/components/click-outside.directive.js +0 -28
  163. package/esm2015/lib/components/click-outside.directive.js.map +0 -1
  164. package/esm2015/lib/components/components.module.js +0 -155
  165. package/esm2015/lib/components/components.module.js.map +0 -1
  166. package/esm2015/lib/components/loading-indicator/loading-indicator.component.js +0 -21
  167. package/esm2015/lib/components/loading-indicator/loading-indicator.component.js.map +0 -1
  168. package/esm2015/lib/components/modals/alert/alert.component.js +0 -57
  169. package/esm2015/lib/components/modals/alert/alert.component.js.map +0 -1
  170. package/esm2015/lib/components/modals/confirm/confirm.component.js +0 -73
  171. package/esm2015/lib/components/modals/confirm/confirm.component.js.map +0 -1
  172. package/esm2015/lib/components/modals/index.js +0 -2
  173. package/esm2015/lib/components/modals/index.js.map +0 -1
  174. package/esm2015/lib/components/modals/modal.service.js +0 -91
  175. package/esm2015/lib/components/modals/modal.service.js.map +0 -1
  176. package/esm2015/lib/components/modals/modals.module.js +0 -28
  177. package/esm2015/lib/components/modals/modals.module.js.map +0 -1
  178. package/esm2015/lib/components/modals/prompt/prompt.component.js +0 -110
  179. package/esm2015/lib/components/modals/prompt/prompt.component.js.map +0 -1
  180. package/esm2015/lib/components/pagination/pagination.component.js +0 -60
  181. package/esm2015/lib/components/pagination/pagination.component.js.map +0 -1
  182. package/esm2015/lib/components/popovers/legend/legend.component.js +0 -46
  183. package/esm2015/lib/components/popovers/legend/legend.component.js.map +0 -1
  184. package/esm2015/lib/components/popovers/legend/legend.directive.js +0 -31
  185. package/esm2015/lib/components/popovers/legend/legend.directive.js.map +0 -1
  186. package/esm2015/lib/components/popovers/popover/popover.component.js +0 -35
  187. package/esm2015/lib/components/popovers/popover/popover.component.js.map +0 -1
  188. package/esm2015/lib/components/popovers/popover-content/popover-content.component.js +0 -86
  189. package/esm2015/lib/components/popovers/popover-content/popover-content.component.js.map +0 -1
  190. package/esm2015/lib/components/popovers/popover-content/popover-content.directive.js +0 -39
  191. package/esm2015/lib/components/popovers/popover-content/popover-content.directive.js.map +0 -1
  192. package/esm2015/lib/components/popovers/popover-menu/popover-menu.component.js +0 -72
  193. package/esm2015/lib/components/popovers/popover-menu/popover-menu.component.js.map +0 -1
  194. package/esm2015/lib/components/popovers/popover-ref.js +0 -25
  195. package/esm2015/lib/components/popovers/popover-ref.js.map +0 -1
  196. package/esm2015/lib/components/popovers/popover.defaults.js +0 -60
  197. package/esm2015/lib/components/popovers/popover.defaults.js.map +0 -1
  198. package/esm2015/lib/components/popovers/popover.models.js +0 -23
  199. package/esm2015/lib/components/popovers/popover.models.js.map +0 -1
  200. package/esm2015/lib/components/popovers/popover.service.js +0 -117
  201. package/esm2015/lib/components/popovers/popover.service.js.map +0 -1
  202. package/esm2015/lib/components/popovers/tooltip/tooltip.directive.js +0 -96
  203. package/esm2015/lib/components/popovers/tooltip/tooltip.directive.js.map +0 -1
  204. package/esm2015/lib/components/progress/progress.component.js +0 -23
  205. package/esm2015/lib/components/progress/progress.component.js.map +0 -1
  206. package/esm2015/lib/components/scroll/index.js +0 -2
  207. package/esm2015/lib/components/scroll/index.js.map +0 -1
  208. package/esm2015/lib/components/scroll/scrollable.directive.js +0 -73
  209. package/esm2015/lib/components/scroll/scrollable.directive.js.map +0 -1
  210. package/esm2015/lib/components/search-input/search-input.component.js +0 -155
  211. package/esm2015/lib/components/search-input/search-input.component.js.map +0 -1
  212. package/esm2015/lib/components/snackbar/snackbar-container.component.js +0 -26
  213. package/esm2015/lib/components/snackbar/snackbar-container.component.js.map +0 -1
  214. package/esm2015/lib/components/snackbar/snackbar-container.directive.js +0 -83
  215. package/esm2015/lib/components/snackbar/snackbar-container.directive.js.map +0 -1
  216. package/esm2015/lib/components/snackbar/snackbar.component.js +0 -85
  217. package/esm2015/lib/components/snackbar/snackbar.component.js.map +0 -1
  218. package/esm2015/lib/components/snackbar/snackbar.models.js +0 -2
  219. package/esm2015/lib/components/snackbar/snackbar.models.js.map +0 -1
  220. package/esm2015/lib/components/snackbar/snackbar.module.js +0 -26
  221. package/esm2015/lib/components/snackbar/snackbar.module.js.map +0 -1
  222. package/esm2015/lib/components/snackbar/snackbar.service.js +0 -23
  223. package/esm2015/lib/components/snackbar/snackbar.service.js.map +0 -1
  224. package/esm2015/lib/components/stepper/stepper.component.js +0 -28
  225. package/esm2015/lib/components/stepper/stepper.component.js.map +0 -1
  226. package/esm2015/lib/components/table-header-cell/table-header-cell.directive.js +0 -58
  227. package/esm2015/lib/components/table-header-cell/table-header-cell.directive.js.map +0 -1
  228. package/esm2015/lib/components/tabs/tab-pane/tab-pane.component.js +0 -35
  229. package/esm2015/lib/components/tabs/tab-pane/tab-pane.component.js.map +0 -1
  230. package/esm2015/lib/components/tabs/tabs.component.js +0 -362
  231. package/esm2015/lib/components/tabs/tabs.component.js.map +0 -1
  232. package/esm2015/lib/content/content.module.js +0 -24
  233. package/esm2015/lib/content/content.module.js.map +0 -1
  234. package/esm2015/lib/content/icon/icon.component.js +0 -23
  235. package/esm2015/lib/content/icon/icon.component.js.map +0 -1
  236. package/esm2015/lib/festo-angular.module.js +0 -58
  237. package/esm2015/lib/festo-angular.module.js.map +0 -1
  238. package/esm2015/lib/forms/checkbox/checkbox.component.js +0 -156
  239. package/esm2015/lib/forms/checkbox/checkbox.component.js.map +0 -1
  240. package/esm2015/lib/forms/color-indicator/color-indicator.component.js +0 -72
  241. package/esm2015/lib/forms/color-indicator/color-indicator.component.js.map +0 -1
  242. package/esm2015/lib/forms/color-picker/color-helper.js +0 -121
  243. package/esm2015/lib/forms/color-picker/color-helper.js.map +0 -1
  244. package/esm2015/lib/forms/color-picker/color-picker.component.js +0 -280
  245. package/esm2015/lib/forms/color-picker/color-picker.component.js.map +0 -1
  246. package/esm2015/lib/forms/container-host.js +0 -27
  247. package/esm2015/lib/forms/container-host.js.map +0 -1
  248. package/esm2015/lib/forms/date-picker/date-picker.component.js +0 -205
  249. package/esm2015/lib/forms/date-picker/date-picker.component.js.map +0 -1
  250. package/esm2015/lib/forms/date-range-picker/date-range-picker.component.js +0 -230
  251. package/esm2015/lib/forms/date-range-picker/date-range-picker.component.js.map +0 -1
  252. package/esm2015/lib/forms/forms.module.js +0 -146
  253. package/esm2015/lib/forms/forms.module.js.map +0 -1
  254. package/esm2015/lib/forms/radio/radio.component.js +0 -353
  255. package/esm2015/lib/forms/radio/radio.component.js.map +0 -1
  256. package/esm2015/lib/forms/segment/segment-control/segment-control.component.js +0 -58
  257. package/esm2015/lib/forms/segment/segment-control/segment-control.component.js.map +0 -1
  258. package/esm2015/lib/forms/segment/segment.component.js +0 -116
  259. package/esm2015/lib/forms/segment/segment.component.js.map +0 -1
  260. package/esm2015/lib/forms/select/chip-text.pipe.js +0 -34
  261. package/esm2015/lib/forms/select/chip-text.pipe.js.map +0 -1
  262. package/esm2015/lib/forms/select/select-option/select-option.component.js +0 -29
  263. package/esm2015/lib/forms/select/select-option/select-option.component.js.map +0 -1
  264. package/esm2015/lib/forms/select/select.component.js +0 -265
  265. package/esm2015/lib/forms/select/select.component.js.map +0 -1
  266. package/esm2015/lib/forms/slider/slider.component.js +0 -116
  267. package/esm2015/lib/forms/slider/slider.component.js.map +0 -1
  268. package/esm2015/lib/forms/switch/switch.component.js +0 -127
  269. package/esm2015/lib/forms/switch/switch.component.js.map +0 -1
  270. package/esm2015/lib/forms/text-area/text-area.component.js +0 -186
  271. package/esm2015/lib/forms/text-area/text-area.component.js.map +0 -1
  272. package/esm2015/lib/forms/text-editor/text-editor.component.js +0 -294
  273. package/esm2015/lib/forms/text-editor/text-editor.component.js.map +0 -1
  274. package/esm2015/lib/forms/text-input/text-input.component.js +0 -189
  275. package/esm2015/lib/forms/text-input/text-input.component.js.map +0 -1
  276. package/esm2015/lib/forms/time-picker/time-picker-dropdown/time-picker-dropdown.component.js +0 -103
  277. package/esm2015/lib/forms/time-picker/time-picker-dropdown/time-picker-dropdown.component.js.map +0 -1
  278. package/esm2015/lib/forms/time-picker/time-picker.component.js +0 -194
  279. package/esm2015/lib/forms/time-picker/time-picker.component.js.map +0 -1
  280. package/esm2015/lib/forms/unique-selection-dispatcher.js +0 -39
  281. package/esm2015/lib/forms/unique-selection-dispatcher.js.map +0 -1
  282. package/esm2015/lib/forms/value-accessor-base.js +0 -41
  283. package/esm2015/lib/forms/value-accessor-base.js.map +0 -1
  284. package/esm2015/lib/layout/layout.module.js +0 -18
  285. package/esm2015/lib/layout/layout.module.js.map +0 -1
  286. package/esm2015/lib/wrappers/flatpickr/flatpickr.component.js +0 -63
  287. package/esm2015/lib/wrappers/flatpickr/flatpickr.component.js.map +0 -1
  288. package/fesm2015/festo-ui-angular.js +0 -5596
  289. package/fesm2015/festo-ui-angular.js.map +0 -1
  290. package/lib/components/stepper/stepper.component.d.ts +0 -30
  291. package/scss/base/components/stepper/stepper.component.scss +0 -118
  292. package/scss/styles.scss +0 -2056
@@ -1,86 +0,0 @@
1
- import { Component, ViewChild, TemplateRef, Input, Output, EventEmitter, ElementRef } from '@angular/core';
2
- import { take } from 'rxjs/operators';
3
- import { PopoverService } from '../popover.service';
4
- import { PopoverTypes } from '../popover.models';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "../popover.service";
7
- import * as i2 from "@angular/common";
8
- export class PopoverContentComponent {
9
- constructor(popoverService) {
10
- this.popoverService = popoverService;
11
- this.options = {};
12
- this.close = new EventEmitter();
13
- this.actions = new EventEmitter();
14
- this.showDefault = false;
15
- this.offScreen = true;
16
- this.height = 16; // add default padding
17
- this.width = 16; // add default padding
18
- }
19
- ngOnDestroy() {
20
- if (this.closeSub) {
21
- this.closeSub.unsubscribe();
22
- }
23
- }
24
- ngAfterViewInit() {
25
- const parent = this.templateRef.elementRef.nativeElement.parentElement;
26
- parent.childNodes.forEach((node) => {
27
- if (null != node.dataset && undefined !== node.dataset.fngRoot) {
28
- this.width = this.width + node.getBoundingClientRect().width;
29
- this.height = this.height + node.getBoundingClientRect().height;
30
- }
31
- });
32
- }
33
- show(origin) {
34
- this.offScreen = false;
35
- this.popoverRef = this.popoverService.open({
36
- content: this.templateRef,
37
- origin,
38
- options: {
39
- positions: null != this.options && this.options.positions ? this.options.positions : null,
40
- width: this.width,
41
- height: this.height,
42
- type: PopoverTypes.Content,
43
- hasBackdrop: true
44
- }
45
- });
46
- this.actions.emit({
47
- close: () => {
48
- this.hide();
49
- }
50
- });
51
- if (this.closeSub) {
52
- this.closeSub.unsubscribe();
53
- }
54
- this.closeSub = this.popoverRef.afterClosed$.pipe(take(1)).subscribe(event => {
55
- this.close.emit(event);
56
- });
57
- }
58
- hide() {
59
- if (null != this.popoverRef) {
60
- this.popoverRef.close();
61
- }
62
- }
63
- }
64
- PopoverContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.0", ngImport: i0, type: PopoverContentComponent, deps: [{ token: i1.PopoverService }], target: i0.ɵɵFactoryTarget.Component });
65
- PopoverContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.0", type: PopoverContentComponent, selector: "fng-popover-content", inputs: { options: "options" }, outputs: { close: "close", actions: "actions" }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["tpl"], descendants: true }, { propertyName: "contentRef", first: true, predicate: ["fngContent"], descendants: true }], ngImport: i0, template: "<div #default *ngIf=\"showDefault; else tpl\"></div>\n<ng-template #tpl>\n <div data-fng-root [class.fng-off-screen]=\"offScreen\">\n <div #fngContent class=\"fng-content\">\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".fng-off-screen{position:absolute;top:-9999px;left:-9999px}.fng-content{font-size:14px;line-height:1rem}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
66
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.0", ngImport: i0, type: PopoverContentComponent, decorators: [{
67
- type: Component,
68
- args: [{
69
- selector: 'fng-popover-content',
70
- templateUrl: './popover-content.component.html',
71
- styleUrls: ['./popover-content.component.scss']
72
- }]
73
- }], ctorParameters: function () { return [{ type: i1.PopoverService }]; }, propDecorators: { options: [{
74
- type: Input
75
- }], close: [{
76
- type: Output
77
- }], actions: [{
78
- type: Output
79
- }], templateRef: [{
80
- type: ViewChild,
81
- args: ['tpl']
82
- }], contentRef: [{
83
- type: ViewChild,
84
- args: ['fngContent']
85
- }] } });
86
- //# sourceMappingURL=popover-content.component.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"popover-content.component.js","sourceRoot":"","sources":["../../../../../../../../libs/angular/src/lib/components/popovers/popover-content/popover-content.component.ts","../../../../../../../../libs/angular/src/lib/components/popovers/popover-content/popover-content.component.html"],"names":[],"mappings":"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","sourcesContent":["import { Component, ViewChild, TemplateRef, Input, Output, EventEmitter, OnDestroy, AfterViewInit, ElementRef } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\n\nimport { PopoverService } from '../popover.service';\nimport { PopoverRef } from '../popover-ref';\nimport { PopoverTypes, PopoverCloseEvent, PopoverPosition } from '../popover.models';\n\nexport interface PopoverContentOptions {\n positions?: PopoverPosition[];\n maxWidth?: string | number;\n minHeight?: string | number;\n}\n\nexport interface PopoverContentActions {\n close: () => void;\n}\n\n@Component({\n selector: 'fng-popover-content',\n templateUrl: './popover-content.component.html',\n styleUrls: ['./popover-content.component.scss']\n})\nexport class PopoverContentComponent implements AfterViewInit, OnDestroy {\n @Input() options: PopoverContentOptions = {};\n @Output() close: EventEmitter<PopoverCloseEvent> = new EventEmitter();\n @Output() actions: EventEmitter<PopoverContentActions> = new EventEmitter();\n @ViewChild('tpl') templateRef: TemplateRef<any>;\n @ViewChild('fngContent') contentRef: ElementRef;\n\n showDefault = false;\n offScreen = true;\n height = 16; // add default padding\n width = 16; // add default padding\n\n private closeSub: Subscription;\n private popoverRef: PopoverRef;\n\n constructor(private popoverService: PopoverService) {}\n\n ngOnDestroy(): void {\n if (this.closeSub) {\n this.closeSub.unsubscribe();\n }\n }\n\n ngAfterViewInit(): void {\n const parent: HTMLElement = this.templateRef.elementRef.nativeElement.parentElement;\n parent.childNodes.forEach((node: HTMLElement) => {\n if (null != node.dataset && undefined !== node.dataset.fngRoot) {\n this.width = this.width + node.getBoundingClientRect().width;\n this.height = this.height + node.getBoundingClientRect().height;\n }\n });\n }\n\n show(origin: HTMLElement) {\n this.offScreen = false;\n this.popoverRef = this.popoverService.open({\n content: this.templateRef,\n origin,\n options: {\n positions: null != this.options && this.options.positions ? this.options.positions : null,\n width: this.width,\n height: this.height,\n type: PopoverTypes.Content,\n hasBackdrop: true\n }\n });\n\n this.actions.emit({\n close: () => {\n this.hide();\n }\n });\n\n if (this.closeSub) {\n this.closeSub.unsubscribe();\n }\n this.closeSub = this.popoverRef.afterClosed$.pipe(take(1)).subscribe(event => {\n this.close.emit(event);\n });\n }\n\n hide() {\n if (null != this.popoverRef) {\n this.popoverRef.close();\n }\n }\n}\n","<div #default *ngIf=\"showDefault; else tpl\"></div>\n<ng-template #tpl>\n <div data-fng-root [class.fng-off-screen]=\"offScreen\">\n <div #fngContent class=\"fng-content\">\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n"]}
@@ -1,39 +0,0 @@
1
- import { Directive, ElementRef, HostListener, ContentChild } from '@angular/core';
2
- import { PopoverContentComponent } from './popover-content.component';
3
- import * as i0 from "@angular/core";
4
- export class PopoverContentDirective {
5
- constructor(elmenetRef) {
6
- this.elmenetRef = elmenetRef;
7
- }
8
- ngOnInit() {
9
- this.origin = this.elmenetRef.nativeElement;
10
- }
11
- show() {
12
- if (null != this.component) {
13
- this.component.show(this.origin);
14
- }
15
- }
16
- hide() {
17
- if (null != this.component) {
18
- this.component.hide();
19
- }
20
- }
21
- }
22
- PopoverContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.0", ngImport: i0, type: PopoverContentDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
23
- PopoverContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.0", type: PopoverContentDirective, selector: "[fngPopoverContent]", host: { listeners: { "click": "show()", "document:keydown.escape": "hide()" } }, queries: [{ propertyName: "component", first: true, predicate: ["fngComponent"], descendants: true }], ngImport: i0 });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.0", ngImport: i0, type: PopoverContentDirective, decorators: [{
25
- type: Directive,
26
- args: [{
27
- selector: '[fngPopoverContent]'
28
- }]
29
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { component: [{
30
- type: ContentChild,
31
- args: ['fngComponent']
32
- }], show: [{
33
- type: HostListener,
34
- args: ['click']
35
- }], hide: [{
36
- type: HostListener,
37
- args: ['document:keydown.escape']
38
- }] } });
39
- //# sourceMappingURL=popover-content.directive.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"popover-content.directive.js","sourceRoot":"","sources":["../../../../../../../../libs/angular/src/lib/components/popovers/popover-content/popover-content.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAU,YAAY,EAAE,MAAM,eAAe,CAAC;AAE1F,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;;AAKtE,MAAM,OAAO,uBAAuB;IAIlC,YAAoB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IAE9C,QAAQ;QACN,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;IAC9C,CAAC;IAGD,IAAI;QACF,IAAI,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE;YAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAClC;IACH,CAAC;IAGD,IAAI;QACF,IAAI,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE;YAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;SACvB;IACH,CAAC;;oHAtBU,uBAAuB;wGAAvB,uBAAuB;2FAAvB,uBAAuB;kBAHnC,SAAS;mBAAC;oBACT,QAAQ,EAAE,qBAAqB;iBAChC;iGAE+B,SAAS;sBAAtC,YAAY;uBAAC,cAAc;gBAU5B,IAAI;sBADH,YAAY;uBAAC,OAAO;gBAQrB,IAAI;sBADH,YAAY;uBAAC,yBAAyB","sourcesContent":["import { Directive, ElementRef, HostListener, OnInit, ContentChild } from '@angular/core';\n\nimport { PopoverContentComponent } from './popover-content.component';\n\n@Directive({\n selector: '[fngPopoverContent]'\n})\nexport class PopoverContentDirective implements OnInit {\n @ContentChild('fngComponent') component: PopoverContentComponent;\n private origin: HTMLElement;\n\n constructor(private elmenetRef: ElementRef) {}\n\n ngOnInit(): void {\n this.origin = this.elmenetRef.nativeElement;\n }\n\n @HostListener('click')\n show() {\n if (null != this.component) {\n this.component.show(this.origin);\n }\n }\n\n @HostListener('document:keydown.escape')\n hide() {\n if (null != this.component) {\n this.component.hide();\n }\n }\n}\n"]}
@@ -1,72 +0,0 @@
1
- import { Component, TemplateRef, Input, Output, EventEmitter, ViewChild, ElementRef, HostListener } from '@angular/core';
2
- import { PopoverService } from '../popover.service';
3
- import { PopoverTypes } from '../popover.models';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../popover.service";
6
- import * as i2 from "@angular/common";
7
- export class PopoverMenuComponent {
8
- constructor(popoverService) {
9
- this.popoverService = popoverService;
10
- this.icon = 'fwe-icon-menu-more fwe-icon-lg';
11
- this.menu = [];
12
- this.options = {};
13
- this.menuAction = new EventEmitter();
14
- this.itemHeight = 36;
15
- }
16
- show(event, content, origin) {
17
- event.stopPropagation();
18
- event.preventDefault();
19
- if (0 < this.menu.length) {
20
- this.popoverRef = this.popoverService.open({
21
- content,
22
- origin,
23
- options: {
24
- type: PopoverTypes.Menu,
25
- hasBackdrop: true,
26
- // height calc is needed for correct vertical positioning (+32 -> 2 * vertical padding 16px)
27
- height: +(this.itemHeight * this.menu.length + 32),
28
- positions: this.options != null && this.options.positions ? this.options.positions : null
29
- }
30
- });
31
- }
32
- }
33
- action(action, payload) {
34
- this.menuAction.emit({ action, payload });
35
- if (null != this.popoverRef) {
36
- this.popoverRef.close();
37
- }
38
- }
39
- hide() {
40
- if (null != this.popoverRef) {
41
- this.popoverRef.close();
42
- }
43
- }
44
- }
45
- PopoverMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.0", ngImport: i0, type: PopoverMenuComponent, deps: [{ token: i1.PopoverService }], target: i0.ɵɵFactoryTarget.Component });
46
- PopoverMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.0", type: PopoverMenuComponent, selector: "fng-popover-menu", inputs: { icon: "icon", menu: "menu", options: "options" }, outputs: { menuAction: "menuAction" }, host: { listeners: { "document:keydown.escape": "hide()" } }, viewQueries: [{ propertyName: "menuTpl", first: true, predicate: ["menuTpl"], descendants: true }, { propertyName: "origin", first: true, predicate: ["origin"], descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"0 < menu.length\">\n <button type=\"button\" class=\"fwe-btn fwe-btn-link fwe-dark origin\" (click)=\"show($event, menuTpl, origin)\" #origin>\n <i class=\"fwe-icon fwe-pr-0\" [ngClass]=\"icon\"></i>\n </button>\n <ng-template #menuTpl>\n <ul class=\"fwe-list-group\">\n <li *ngFor=\"let item of menu\" class=\"fwe-list-group-item\">\n <button type=\"button\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"action(item?.action, item?.data)\">\n <i class=\"fwe-icon\" [ngClass]=\"item?.icon\"></i>\n <span>{{ item?.text }}</span>\n </button>\n </li>\n </ul>\n </ng-template>\n</ng-container>\n", styles: [""], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.0", ngImport: i0, type: PopoverMenuComponent, decorators: [{
48
- type: Component,
49
- args: [{
50
- selector: 'fng-popover-menu',
51
- templateUrl: './popover-menu.component.html',
52
- styleUrls: ['./popover-menu.component.scss']
53
- }]
54
- }], ctorParameters: function () { return [{ type: i1.PopoverService }]; }, propDecorators: { icon: [{
55
- type: Input
56
- }], menu: [{
57
- type: Input
58
- }], options: [{
59
- type: Input
60
- }], menuAction: [{
61
- type: Output
62
- }], menuTpl: [{
63
- type: ViewChild,
64
- args: ['menuTpl']
65
- }], origin: [{
66
- type: ViewChild,
67
- args: ['origin']
68
- }], hide: [{
69
- type: HostListener,
70
- args: ['document:keydown.escape']
71
- }] } });
72
- //# sourceMappingURL=popover-menu.component.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"popover-menu.component.js","sourceRoot":"","sources":["../../../../../../../../libs/angular/src/lib/components/popovers/popover-menu/popover-menu.component.ts","../../../../../../../../libs/angular/src/lib/components/popovers/popover-menu/popover-menu.component.html"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEzH,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAmD,MAAM,mBAAmB,CAAC;;;;AAWlG,MAAM,OAAO,oBAAoB;IAa/B,YAAoB,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QAZzC,SAAI,GAAG,gCAAgC,CAAC;QACxC,SAAI,GAAkB,EAAE,CAAC;QACzB,YAAO,GAAuB,EAAE,CAAC;QAEhC,eAAU,GAAoC,IAAI,YAAY,EAAE,CAAC;QAMnE,eAAU,GAAG,EAAE,CAAC;IAE6B,CAAC;IAEtD,IAAI,CAAC,KAAY,EAAE,OAAyB,EAAE,MAAmB;QAC/D,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACxB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;gBACzC,OAAO;gBACP,MAAM;gBACN,OAAO,EAAE;oBACP,IAAI,EAAE,YAAY,CAAC,IAAI;oBACvB,WAAW,EAAE,IAAI;oBACjB,4FAA4F;oBAC5F,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;oBAClD,SAAS,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;iBAC1F;aACF,CAAC,CAAC;SACJ;IACH,CAAC;IAED,MAAM,CAAC,MAAc,EAAE,OAAY;QACjC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1C,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE;YAC3B,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;SACzB;IACH,CAAC;IAGD,IAAI;QACF,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE;YAC3B,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;SACzB;IACH,CAAC;;iHA7CU,oBAAoB;qGAApB,oBAAoB,gZCfjC,kqBAeA;2FDAa,oBAAoB;kBALhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,kBAAkB;oBAC5B,WAAW,EAAE,+BAA+B;oBAC5C,SAAS,EAAE,CAAC,+BAA+B,CAAC;iBAC7C;qGAEU,IAAI;sBAAZ,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,OAAO;sBAAf,KAAK;gBAEI,UAAU;sBAAnB,MAAM;gBAEe,OAAO;sBAA5B,SAAS;uBAAC,SAAS;gBACC,MAAM;sBAA1B,SAAS;uBAAC,QAAQ;gBAiCnB,IAAI;sBADH,YAAY;uBAAC,yBAAyB","sourcesContent":["import { Component, TemplateRef, Input, Output, EventEmitter, ViewChild, ElementRef, HostListener } from '@angular/core';\n\nimport { PopoverService } from '../popover.service';\nimport { PopoverRef } from '../popover-ref';\nimport { PopoverTypes, PopoverMenu, PopoverMenuAction, PopoverPosition } from '../popover.models';\n\nexport interface PopoverMenuOptions {\n positions?: PopoverPosition[];\n}\n\n@Component({\n selector: 'fng-popover-menu',\n templateUrl: './popover-menu.component.html',\n styleUrls: ['./popover-menu.component.scss']\n})\nexport class PopoverMenuComponent {\n @Input() icon = 'fwe-icon-menu-more fwe-icon-lg';\n @Input() menu: PopoverMenu[] = [];\n @Input() options: PopoverMenuOptions = {};\n\n @Output() menuAction: EventEmitter<PopoverMenuAction> = new EventEmitter();\n\n @ViewChild('menuTpl') menuTpl: TemplateRef<any>;\n @ViewChild('origin') origin: ElementRef;\n\n private popoverRef: PopoverRef;\n private itemHeight = 36;\n\n constructor(private popoverService: PopoverService) {}\n\n show(event: Event, content: TemplateRef<any>, origin: HTMLElement) {\n event.stopPropagation();\n event.preventDefault();\n if (0 < this.menu.length) {\n this.popoverRef = this.popoverService.open({\n content,\n origin,\n options: {\n type: PopoverTypes.Menu,\n hasBackdrop: true,\n // height calc is needed for correct vertical positioning (+32 -> 2 * vertical padding 16px)\n height: +(this.itemHeight * this.menu.length + 32),\n positions: this.options != null && this.options.positions ? this.options.positions : null\n }\n });\n }\n }\n\n action(action: string, payload: any) {\n this.menuAction.emit({ action, payload });\n if (null != this.popoverRef) {\n this.popoverRef.close();\n }\n }\n\n @HostListener('document:keydown.escape')\n hide() {\n if (null != this.popoverRef) {\n this.popoverRef.close();\n }\n }\n}\n","<ng-container *ngIf=\"0 < menu.length\">\n <button type=\"button\" class=\"fwe-btn fwe-btn-link fwe-dark origin\" (click)=\"show($event, menuTpl, origin)\" #origin>\n <i class=\"fwe-icon fwe-pr-0\" [ngClass]=\"icon\"></i>\n </button>\n <ng-template #menuTpl>\n <ul class=\"fwe-list-group\">\n <li *ngFor=\"let item of menu\" class=\"fwe-list-group-item\">\n <button type=\"button\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"action(item?.action, item?.data)\">\n <i class=\"fwe-icon\" [ngClass]=\"item?.icon\"></i>\n <span>{{ item?.text }}</span>\n </button>\n </li>\n </ul>\n </ng-template>\n</ng-container>\n"]}
@@ -1,25 +0,0 @@
1
- import { Subject } from 'rxjs';
2
- export class PopoverRef {
3
- constructor(overlay, content, data) {
4
- this.overlay = overlay;
5
- this.content = content;
6
- this.data = data;
7
- this.afterClosed = new Subject();
8
- this.afterClosed$ = this.afterClosed.asObservable();
9
- overlay.backdropClick().subscribe(() => {
10
- this._close('backdropClick', null);
11
- });
12
- }
13
- close(data) {
14
- this._close('close', data);
15
- }
16
- _close(type, data) {
17
- this.overlay.dispose();
18
- this.afterClosed.next({
19
- type,
20
- data
21
- });
22
- this.afterClosed.complete();
23
- }
24
- }
25
- //# sourceMappingURL=popover-ref.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"popover-ref.js","sourceRoot":"","sources":["../../../../../../../libs/angular/src/lib/components/popovers/popover-ref.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAI/B,MAAM,OAAO,UAAU;IAIrB,YAAmB,OAAmB,EAAS,OAAuB,EAAS,IAAO;QAAnE,YAAO,GAAP,OAAO,CAAY;QAAS,YAAO,GAAP,OAAO,CAAgB;QAAS,SAAI,GAAJ,IAAI,CAAG;QAH9E,gBAAW,GAAG,IAAI,OAAO,EAAwB,CAAC;QAC1D,iBAAY,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QAG7C,OAAO,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE;YACrC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAQ;QACZ,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;IAEO,MAAM,CAAC,IAA+B,EAAE,IAAQ;QACtD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;YACpB,IAAI;YACJ,IAAI;SACL,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;IAC9B,CAAC;CACF","sourcesContent":["import { OverlayRef } from '@angular/cdk/overlay';\nimport { Subject } from 'rxjs';\n\nimport { PopoverContent, PopoverCloseEvent } from './popover.models';\n\nexport class PopoverRef<T = any> {\n private afterClosed = new Subject<PopoverCloseEvent<T>>();\n afterClosed$ = this.afterClosed.asObservable();\n\n constructor(public overlay: OverlayRef, public content: PopoverContent, public data: T) {\n overlay.backdropClick().subscribe(() => {\n this._close('backdropClick', null);\n });\n }\n\n close(data?: T) {\n this._close('close', data);\n }\n\n private _close(type: PopoverCloseEvent['type'], data?: T) {\n this.overlay.dispose();\n this.afterClosed.next({\n type,\n data\n });\n this.afterClosed.complete();\n }\n}\n"]}
@@ -1,60 +0,0 @@
1
- import { PopoverPosition, PopoverTypes } from './popover.models';
2
- export const defaultPositions = {
3
- [PopoverPosition.Bottom]: {
4
- originX: 'center',
5
- originY: 'bottom',
6
- overlayX: 'center',
7
- overlayY: 'top',
8
- offsetY: 22
9
- },
10
- [PopoverPosition.Top]: {
11
- originX: 'center',
12
- originY: 'top',
13
- overlayX: 'center',
14
- overlayY: 'bottom',
15
- offsetY: -22
16
- },
17
- [PopoverPosition.Right]: {
18
- originX: 'end',
19
- originY: 'center',
20
- overlayX: 'start',
21
- overlayY: 'center',
22
- offsetX: 22
23
- },
24
- [PopoverPosition.Left]: {
25
- originX: 'start',
26
- originY: 'center',
27
- overlayX: 'end',
28
- overlayY: 'center',
29
- offsetX: -22
30
- },
31
- [PopoverPosition.LeftTop]: {
32
- originX: 'start',
33
- originY: 'center',
34
- overlayX: 'end',
35
- overlayY: 'top',
36
- offsetX: -22,
37
- offsetY: -32
38
- },
39
- [PopoverPosition.RightTop]: {
40
- originX: 'end',
41
- originY: 'center',
42
- overlayX: 'start',
43
- overlayY: 'top',
44
- offsetX: 22,
45
- offsetY: -32
46
- }
47
- };
48
- export const defaultClasses = {
49
- [PopoverTypes.Tooltip]: 'fng-popover-tooltip',
50
- [PopoverTypes.Menu]: 'fng-popover-menu',
51
- [PopoverTypes.Legend]: 'fng-popover-legend',
52
- [PopoverTypes.Content]: 'fng-popover-content',
53
- [PopoverPosition.Bottom]: 'fng-popover-bottom',
54
- [PopoverPosition.Top]: 'fng-popover-top',
55
- [PopoverPosition.Right]: 'fng-popover-right',
56
- [PopoverPosition.Left]: 'fng-popover-left',
57
- [PopoverPosition.RightTop]: 'fng-popover-right-top',
58
- [PopoverPosition.LeftTop]: 'fng-popover-left-top'
59
- };
60
- //# sourceMappingURL=popover.defaults.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"popover.defaults.js","sourceRoot":"","sources":["../../../../../../../libs/angular/src/lib/components/popovers/popover.defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEjE,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE;QACxB,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,QAAQ;QACjB,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,EAAE;KACZ;IACD,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE;QACrB,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,CAAC,EAAE;KACb;IACD,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;QACvB,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,QAAQ;QACjB,QAAQ,EAAE,OAAO;QACjB,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,EAAE;KACZ;IACD,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE;QACtB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,QAAQ;QACjB,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,CAAC,EAAE;KACb;IACD,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE;QACzB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,QAAQ;QACjB,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,CAAC,EAAE;QACZ,OAAO,EAAE,CAAC,EAAE;KACb;IACD,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE;QAC1B,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,QAAQ;QACjB,QAAQ,EAAE,OAAO;QACjB,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,EAAE;QACX,OAAO,EAAE,CAAC,EAAE;KACb;CACF,CAAC;AACF,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,qBAAqB;IAC7C,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,kBAAkB;IACvC,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,oBAAoB;IAC3C,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,qBAAqB;IAC7C,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,oBAAoB;IAC9C,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,iBAAiB;IACxC,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,mBAAmB;IAC5C,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,kBAAkB;IAC1C,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,uBAAuB;IACnD,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,sBAAsB;CAClD,CAAC","sourcesContent":["import { PopoverPosition, PopoverTypes } from './popover.models';\n\nexport const defaultPositions = {\n [PopoverPosition.Bottom]: {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n offsetY: 22\n },\n [PopoverPosition.Top]: {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n offsetY: -22\n },\n [PopoverPosition.Right]: {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'center',\n offsetX: 22\n },\n [PopoverPosition.Left]: {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'center',\n offsetX: -22\n },\n [PopoverPosition.LeftTop]: {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'top',\n offsetX: -22,\n offsetY: -32\n },\n [PopoverPosition.RightTop]: {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'top',\n offsetX: 22,\n offsetY: -32\n }\n};\nexport const defaultClasses = {\n [PopoverTypes.Tooltip]: 'fng-popover-tooltip',\n [PopoverTypes.Menu]: 'fng-popover-menu',\n [PopoverTypes.Legend]: 'fng-popover-legend',\n [PopoverTypes.Content]: 'fng-popover-content',\n [PopoverPosition.Bottom]: 'fng-popover-bottom',\n [PopoverPosition.Top]: 'fng-popover-top',\n [PopoverPosition.Right]: 'fng-popover-right',\n [PopoverPosition.Left]: 'fng-popover-left',\n [PopoverPosition.RightTop]: 'fng-popover-right-top',\n [PopoverPosition.LeftTop]: 'fng-popover-left-top'\n};\n"]}
@@ -1,23 +0,0 @@
1
- export var PopoverTypes;
2
- (function (PopoverTypes) {
3
- PopoverTypes["Tooltip"] = "tooltip";
4
- PopoverTypes["Menu"] = "menu";
5
- PopoverTypes["Legend"] = "legend";
6
- PopoverTypes["Content"] = "content";
7
- })(PopoverTypes || (PopoverTypes = {}));
8
- export var PopoverPosition;
9
- (function (PopoverPosition) {
10
- PopoverPosition["Top"] = "top";
11
- PopoverPosition["Bottom"] = "bottom";
12
- PopoverPosition["Right"] = "right";
13
- PopoverPosition["RightTop"] = "right-top";
14
- PopoverPosition["Left"] = "left";
15
- PopoverPosition["LeftTop"] = "left-top";
16
- })(PopoverPosition || (PopoverPosition = {}));
17
- export var PopoverContentTypes;
18
- (function (PopoverContentTypes) {
19
- PopoverContentTypes["Template"] = "template";
20
- PopoverContentTypes["Component"] = "component";
21
- PopoverContentTypes["Text"] = "text";
22
- })(PopoverContentTypes || (PopoverContentTypes = {}));
23
- //# sourceMappingURL=popover.models.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"popover.models.js","sourceRoot":"","sources":["../../../../../../../libs/angular/src/lib/components/popovers/popover.models.ts"],"names":[],"mappings":"AASA,MAAM,CAAN,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,mCAAmB,CAAA;IACnB,6BAAa,CAAA;IACb,iCAAiB,CAAA;IACjB,mCAAmB,CAAA;AACrB,CAAC,EALW,YAAY,KAAZ,YAAY,QAKvB;AAED,MAAM,CAAN,IAAY,eAOX;AAPD,WAAY,eAAe;IACzB,8BAAW,CAAA;IACX,oCAAiB,CAAA;IACjB,kCAAe,CAAA;IACf,yCAAsB,CAAA;IACtB,gCAAa,CAAA;IACb,uCAAoB,CAAA;AACtB,CAAC,EAPW,eAAe,KAAf,eAAe,QAO1B;AAoBD,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,4CAAqB,CAAA;IACrB,8CAAuB,CAAA;IACvB,oCAAa,CAAA;AACf,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B","sourcesContent":["import { TemplateRef, Type } from '@angular/core';\n\nexport interface PopoverParams<T> {\n origin: HTMLElement;\n content: PopoverContent;\n options?: PopoverOptions;\n data?: T;\n}\n\nexport enum PopoverTypes {\n Tooltip = 'tooltip',\n Menu = 'menu',\n Legend = 'legend',\n Content = 'content'\n}\n\nexport enum PopoverPosition {\n Top = 'top',\n Bottom = 'bottom',\n Right = 'right',\n RightTop = 'right-top',\n Left = 'left',\n LeftTop = 'left-top'\n}\n\nexport interface PopoverOptions {\n type: PopoverTypes;\n width?: string | number;\n height?: string | number;\n maxWidth?: string | number;\n maxHeight?: string | number;\n minWidth?: string | number;\n minHeight?: string | number;\n hasBackdrop?: boolean;\n backdropClass?: string;\n positions?: PopoverPosition[];\n}\n\nexport interface PopoverCloseEvent<T = any> {\n type: 'backdropClick' | 'close';\n data: T;\n}\n\nexport enum PopoverContentTypes {\n Template = 'template',\n Component = 'component',\n Text = 'text'\n}\n\nexport type PopoverContent = TemplateRef<any> | Type<any> | string;\n\nexport interface PopoverMenu<T = any> {\n text: string;\n icon: string;\n action: string;\n data?: T;\n}\n\nexport interface PopoverMenuAction<T = any> {\n action: string;\n payload: T;\n}\n\nexport interface PopoverMenuActionAware<T = any> {\n onMenuAction(event: PopoverMenuAction<T>): void;\n}\n"]}
@@ -1,117 +0,0 @@
1
- import { Injectable, Injector } from '@angular/core';
2
- import { Overlay, OverlayConfig } from '@angular/cdk/overlay';
3
- import { ComponentPortal } from '@angular/cdk/portal';
4
- import { PopoverRef } from './popover-ref';
5
- import { PopoverComponent } from './popover/popover.component';
6
- import { defaultPositions, defaultClasses } from './popover.defaults';
7
- import { PopoverTypes, PopoverPosition } from './popover.models';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "@angular/cdk/overlay";
10
- export class PopoverService {
11
- constructor(overlay, injector) {
12
- this.overlay = overlay;
13
- this.injector = injector;
14
- this.options = {
15
- type: PopoverTypes.Tooltip,
16
- width: null,
17
- height: null,
18
- maxWidth: null,
19
- maxHeight: null,
20
- minWidth: null,
21
- minHeight: null,
22
- hasBackdrop: false,
23
- backdropClass: 'fng-popover-backdrop',
24
- positions: null
25
- };
26
- }
27
- get defaultOptions() {
28
- return this.options;
29
- }
30
- open({ origin, content, data, options }) {
31
- if (null == options) {
32
- options = this.defaultOptions;
33
- }
34
- const overlayConfig = this.getOverlayConfig({ origin, options });
35
- const overlayRef = this.overlay.create(overlayConfig);
36
- const popoverRef = new PopoverRef(overlayRef, content, data);
37
- const injector = this.createInjector(popoverRef, this.injector);
38
- overlayRef.attach(new ComponentPortal(PopoverComponent, null, injector));
39
- return popoverRef;
40
- }
41
- getOverlayConfig({ origin, options }) {
42
- const type = null != options.type ? options.type : this.defaultOptions.type;
43
- const positions = null != options.positions ? options.positions : this.defaultOptions.positions;
44
- return new OverlayConfig({
45
- width: null != options.width ? options.width : this.defaultOptions.width,
46
- height: null != options.height ? options.height : this.defaultOptions.height,
47
- maxWidth: null != options.maxWidth ? options.maxWidth : this.defaultOptions.maxWidth,
48
- maxHeight: null != options.maxHeight ? options.maxHeight : this.defaultOptions.maxHeight,
49
- minWidth: null != options.minWidth ? options.minWidth : this.defaultOptions.minWidth,
50
- minHeight: null != options.minHeight ? options.minHeight : this.defaultOptions.minHeight,
51
- positionStrategy: this.getOverlayPosition(origin, type, positions),
52
- scrollStrategy: null != this.overlay && null != this.overlay.scrollStrategies ? this.overlay.scrollStrategies.block() : {},
53
- hasBackdrop: null != options.hasBackdrop ? options.hasBackdrop : this.defaultOptions.hasBackdrop,
54
- backdropClass: null != options.backdropClass ? options.backdropClass : this.defaultOptions.backdropClass
55
- });
56
- }
57
- getOverlayPosition(origin, type, positions) {
58
- const positionStrategy = this.overlay
59
- .position()
60
- .flexibleConnectedTo(origin)
61
- .withPositions(null != positions ? this.getPositions(type, positions) : this.getDefaultPositions(type))
62
- .withFlexibleDimensions(false)
63
- .withViewportMargin(16)
64
- .withPush(false);
65
- return positionStrategy;
66
- }
67
- createInjector(popoverRef, injector) {
68
- return Injector.create({
69
- parent: injector,
70
- providers: [{ provide: PopoverRef, useValue: popoverRef }]
71
- });
72
- }
73
- getDefaultPositions(type) {
74
- const pairs = [];
75
- let positions = [];
76
- const fn = (t, p) => p.map(position => {
77
- pairs.push(Object.assign(Object.assign({}, defaultPositions[position]), { panelClass: [defaultClasses[t], defaultClasses[position]] }));
78
- });
79
- switch (type) {
80
- case PopoverTypes.Tooltip:
81
- positions = [PopoverPosition.Bottom, PopoverPosition.Top];
82
- fn(PopoverTypes.Tooltip, positions);
83
- break;
84
- case PopoverTypes.Menu:
85
- positions = [PopoverPosition.Right, PopoverPosition.Left];
86
- fn(PopoverTypes.Menu, positions);
87
- break;
88
- case PopoverTypes.Legend:
89
- positions = [PopoverPosition.Bottom];
90
- fn(PopoverTypes.Legend, positions);
91
- break;
92
- case PopoverTypes.Content:
93
- positions = [PopoverPosition.Bottom];
94
- fn(PopoverTypes.Content, positions);
95
- break;
96
- default:
97
- break;
98
- }
99
- return pairs;
100
- }
101
- getPositions(type, positions) {
102
- const pairs = [];
103
- positions.map(position => {
104
- pairs.push(Object.assign(Object.assign({}, defaultPositions[position]), { panelClass: [defaultClasses[type], defaultClasses[position]] }));
105
- });
106
- return pairs;
107
- }
108
- }
109
- PopoverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.0", ngImport: i0, type: PopoverService, deps: [{ token: i1.Overlay }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
110
- PopoverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.0", ngImport: i0, type: PopoverService, providedIn: 'root' });
111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.0", ngImport: i0, type: PopoverService, decorators: [{
112
- type: Injectable,
113
- args: [{
114
- providedIn: 'root'
115
- }]
116
- }], ctorParameters: function () { return [{ type: i1.Overlay }, { type: i0.Injector }]; } });
117
- //# sourceMappingURL=popover.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"popover.service.js","sourceRoot":"","sources":["../../../../../../../libs/angular/src/lib/components/popovers/popover.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable, Injector } from '@angular/core';\nimport {\n Overlay,\n ConnectionPositionPair,\n OverlayConfig,\n FlexibleConnectedPositionStrategy,\n NoopScrollStrategy\n} from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\n\nimport { PopoverRef } from './popover-ref';\nimport { PopoverComponent } from './popover/popover.component';\nimport { defaultPositions, defaultClasses } from './popover.defaults';\nimport { PopoverParams, PopoverOptions, PopoverTypes, PopoverPosition } from './popover.models';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PopoverService {\n readonly options: PopoverOptions = {\n type: PopoverTypes.Tooltip,\n width: null,\n height: null,\n maxWidth: null,\n maxHeight: null,\n minWidth: null,\n minHeight: null,\n hasBackdrop: false,\n backdropClass: 'fng-popover-backdrop',\n positions: null\n };\n\n get defaultOptions() {\n return this.options;\n }\n\n constructor(private overlay: Overlay, private injector: Injector) {}\n\n open<T>({ origin, content, data, options }: PopoverParams<T>): PopoverRef<T> {\n if (null == options) {\n options = this.defaultOptions;\n }\n const overlayConfig = this.getOverlayConfig({ origin, options });\n const overlayRef = this.overlay.create(overlayConfig);\n const popoverRef = new PopoverRef<T>(overlayRef, content, data);\n const injector = this.createInjector(popoverRef, this.injector);\n\n overlayRef.attach(new ComponentPortal(PopoverComponent, null, injector));\n\n return popoverRef;\n }\n\n private getOverlayConfig({ origin, options }: { origin: HTMLElement; options: PopoverOptions }): OverlayConfig {\n const type = null != options.type ? options.type : this.defaultOptions.type;\n const positions = null != options.positions ? options.positions : this.defaultOptions.positions;\n return new OverlayConfig({\n width: null != options.width ? options.width : this.defaultOptions.width,\n height: null != options.height ? options.height : this.defaultOptions.height,\n maxWidth: null != options.maxWidth ? options.maxWidth : this.defaultOptions.maxWidth,\n maxHeight: null != options.maxHeight ? options.maxHeight : this.defaultOptions.maxHeight,\n minWidth: null != options.minWidth ? options.minWidth : this.defaultOptions.minWidth,\n minHeight: null != options.minHeight ? options.minHeight : this.defaultOptions.minHeight,\n positionStrategy: this.getOverlayPosition(origin, type, positions),\n scrollStrategy:\n null != this.overlay && null != this.overlay.scrollStrategies ? this.overlay.scrollStrategies.block() : ({} as NoopScrollStrategy),\n hasBackdrop: null != options.hasBackdrop ? options.hasBackdrop : this.defaultOptions.hasBackdrop,\n backdropClass: null != options.backdropClass ? options.backdropClass : this.defaultOptions.backdropClass\n });\n }\n\n private getOverlayPosition(origin: HTMLElement, type: PopoverTypes, positions: PopoverPosition[]): FlexibleConnectedPositionStrategy {\n const positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(origin)\n .withPositions(null != positions ? this.getPositions(type, positions) : this.getDefaultPositions(type))\n .withFlexibleDimensions(false)\n .withViewportMargin(16)\n .withPush(false);\n\n return positionStrategy;\n }\n\n private createInjector(popoverRef: PopoverRef, injector: Injector) {\n return Injector.create({\n parent: injector,\n providers: [{ provide: PopoverRef, useValue: popoverRef }]\n });\n }\n\n private getDefaultPositions(type: PopoverTypes): ConnectionPositionPair[] {\n const pairs: ConnectionPositionPair[] = [];\n let positions = [];\n const fn = (t: PopoverTypes, p: PopoverPosition[]) =>\n p.map(position => {\n pairs.push({\n ...defaultPositions[position as string],\n panelClass: [defaultClasses[t], defaultClasses[position]]\n });\n });\n switch (type) {\n case PopoverTypes.Tooltip:\n positions = [PopoverPosition.Bottom, PopoverPosition.Top];\n fn(PopoverTypes.Tooltip, positions);\n break;\n case PopoverTypes.Menu:\n positions = [PopoverPosition.Right, PopoverPosition.Left];\n fn(PopoverTypes.Menu, positions);\n break;\n case PopoverTypes.Legend:\n positions = [PopoverPosition.Bottom];\n fn(PopoverTypes.Legend, positions);\n break;\n case PopoverTypes.Content:\n positions = [PopoverPosition.Bottom];\n fn(PopoverTypes.Content, positions);\n break;\n default:\n break;\n }\n return pairs;\n }\n\n private getPositions(type: PopoverTypes, positions: PopoverPosition[]): ConnectionPositionPair[] {\n const pairs: ConnectionPositionPair[] = [];\n positions.map(position => {\n pairs.push({\n ...defaultPositions[position as string],\n panelClass: [defaultClasses[type], defaultClasses[position]]\n });\n });\n\n return pairs;\n }\n}\n"]}
@@ -1,96 +0,0 @@
1
- import { Directive, HostListener, Input, ElementRef } from '@angular/core';
2
- import { PopoverService } from '../popover.service';
3
- import { PopoverTypes } from '../popover.models';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../popover.service";
6
- export class TooltipDirective {
7
- constructor(elmenetRef, popoverService) {
8
- this.elmenetRef = elmenetRef;
9
- this.popoverService = popoverService;
10
- this.text = '';
11
- // eslint-disable-next-line @angular-eslint/no-input-rename
12
- this.isVisible = false;
13
- this.options = {
14
- maxWidth: 400,
15
- delay: 0
16
- };
17
- this.innerIsVisible = false;
18
- this.timeoutHandle = null;
19
- }
20
- ngOnChanges(changes) {
21
- var _a, _b;
22
- this.origin = this.elmenetRef.nativeElement;
23
- if (((_a = changes === null || changes === void 0 ? void 0 : changes.isVisible) === null || _a === void 0 ? void 0 : _a.currentValue) === true) {
24
- if (this.innerIsVisible === false) {
25
- this.open();
26
- }
27
- }
28
- if (((_b = changes === null || changes === void 0 ? void 0 : changes.isVisible) === null || _b === void 0 ? void 0 : _b.currentValue) === false) {
29
- if (this.innerIsVisible === true) {
30
- this.close();
31
- }
32
- }
33
- }
34
- ngOnDestroy() {
35
- this.hide();
36
- }
37
- show() {
38
- var _a, _b;
39
- if (((_a = this.options) === null || _a === void 0 ? void 0 : _a.delay) > 0) {
40
- this.timeoutHandle = setTimeout(() => {
41
- this.open();
42
- }, +((_b = this.options) === null || _b === void 0 ? void 0 : _b.delay));
43
- }
44
- else {
45
- this.open();
46
- }
47
- }
48
- hide() {
49
- if (this.timeoutHandle != null) {
50
- clearTimeout(this.timeoutHandle);
51
- }
52
- this.close();
53
- }
54
- open() {
55
- if (this.innerIsVisible === false) {
56
- this.popoverRef = this.popoverService.open({
57
- content: this.text,
58
- origin: this.origin,
59
- options: {
60
- type: PopoverTypes.Tooltip,
61
- maxWidth: this.options.maxWidth
62
- }
63
- });
64
- this.innerIsVisible = true;
65
- }
66
- }
67
- close() {
68
- if (this.popoverRef != null) {
69
- this.popoverRef.close();
70
- }
71
- this.innerIsVisible = false;
72
- }
73
- }
74
- TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.0", ngImport: i0, type: TooltipDirective, deps: [{ token: i0.ElementRef }, { token: i1.PopoverService }], target: i0.ɵɵFactoryTarget.Directive });
75
- TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.0", type: TooltipDirective, selector: "[fngTooltip]", inputs: { text: ["fngTooltip", "text"], isVisible: ["fngTooltipVisible", "isVisible"], options: "options" }, host: { listeners: { "mouseenter": "show()", "mouseleave": "hide()" } }, usesOnChanges: true, ngImport: i0 });
76
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.0", ngImport: i0, type: TooltipDirective, decorators: [{
77
- type: Directive,
78
- args: [{
79
- selector: '[fngTooltip]'
80
- }]
81
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.PopoverService }]; }, propDecorators: { text: [{
82
- type: Input,
83
- args: ['fngTooltip']
84
- }], isVisible: [{
85
- type: Input,
86
- args: ['fngTooltipVisible']
87
- }], options: [{
88
- type: Input
89
- }], show: [{
90
- type: HostListener,
91
- args: ['mouseenter']
92
- }], hide: [{
93
- type: HostListener,
94
- args: ['mouseleave']
95
- }] } });
96
- //# sourceMappingURL=tooltip.directive.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tooltip.directive.js","sourceRoot":"","sources":["../../../../../../../../libs/angular/src/lib/components/popovers/tooltip/tooltip.directive.ts"],"names":[],"mappings":"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","sourcesContent":["import { Directive, HostListener, Input, ElementRef, OnChanges, SimpleChanges, OnDestroy } from '@angular/core';\n\nimport { PopoverService } from '../popover.service';\nimport { PopoverRef } from '../popover-ref';\nimport { PopoverTypes } from '../popover.models';\n\nexport interface TooltipOptions {\n maxWidth?: string | number;\n delay?: number;\n}\n\n@Directive({\n selector: '[fngTooltip]'\n})\nexport class TooltipDirective implements OnChanges, OnDestroy {\n @Input('fngTooltip') text = '';\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('fngTooltipVisible') isVisible?: boolean = false;\n @Input() options: TooltipOptions = {\n maxWidth: 400,\n delay: 0\n };\n private origin: HTMLElement;\n private popoverRef: PopoverRef;\n private innerIsVisible = false;\n private timeoutHandle = null;\n\n constructor(private elmenetRef: ElementRef, private popoverService: PopoverService) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n this.origin = this.elmenetRef.nativeElement;\n\n if (changes?.isVisible?.currentValue === true) {\n if (this.innerIsVisible === false) {\n this.open();\n }\n }\n if (changes?.isVisible?.currentValue === false) {\n if (this.innerIsVisible === true) {\n this.close();\n }\n }\n }\n\n ngOnDestroy(): void {\n this.hide();\n }\n\n @HostListener('mouseenter')\n show() {\n if (this.options?.delay > 0) {\n this.timeoutHandle = setTimeout(() => {\n this.open();\n }, +this.options?.delay);\n } else {\n this.open();\n }\n }\n\n @HostListener('mouseleave')\n hide() {\n if (this.timeoutHandle != null) {\n clearTimeout(this.timeoutHandle);\n }\n this.close();\n }\n\n private open() {\n if (this.innerIsVisible === false) {\n this.popoverRef = this.popoverService.open({\n content: this.text,\n origin: this.origin,\n options: {\n type: PopoverTypes.Tooltip,\n maxWidth: this.options.maxWidth\n }\n });\n this.innerIsVisible = true;\n }\n }\n\n private close() {\n if (this.popoverRef != null) {\n this.popoverRef.close();\n }\n this.innerIsVisible = false;\n }\n}\n"]}