@seniorsistemas/angular-components 19.0.5 → 19.0.6

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 (439) hide show
  1. package/accordion/lib/accordion/accordion.component.d.ts +25 -0
  2. package/accordion/lib/accordion/components/accordion-panel/accordion-panel.component.d.ts +60 -0
  3. package/alert/lib/alert/alert.component.d.ts +40 -0
  4. package/autocomplete/lib/autocomplete/autocomplete.component.d.ts +51 -0
  5. package/badge/lib/badge/badge.component.d.ts +20 -0
  6. package/bignumber-input/lib/bignumber-input/bignumber-input.directive.d.ts +46 -1
  7. package/breadcrumb/lib/breadcrumb/breadcrumb.component.d.ts +12 -0
  8. package/button/lib/button/button.component.d.ts +101 -0
  9. package/calendar-mask/lib/calendar-mask/calendar-mask.directive.d.ts +24 -0
  10. package/card/lib/card/card.component.d.ts +18 -0
  11. package/chat/lib/chat/chat.component.d.ts +20 -2
  12. package/chat/lib/chat/components/chat-message/chat-message.component.d.ts +18 -2
  13. package/checkbox/lib/checkbox/checkbox.component.d.ts +23 -3
  14. package/checkbox-list/lib/checkbox-list/checkbox-list.component.d.ts +20 -0
  15. package/chips/lib/chips/chip-item/chip-item.component.d.ts +15 -0
  16. package/chips/lib/chips/chips/chips.component.d.ts +41 -0
  17. package/code-editor/lib/code-editor/code-editor.component.d.ts +40 -0
  18. package/collapse-link/lib/collapse-link/collapse-link.component.d.ts +18 -0
  19. package/common/lib/svg-factory/components/iassist-icon/iassist-icon.component.d.ts +5 -0
  20. package/confirm-dialog/lib/popup-confirm-dialog/popup-confirm-dialog.component.d.ts +19 -0
  21. package/content-generator/lib/content-generator/content-generator.component.d.ts +30 -0
  22. package/control-errors/lib/control-errors/control-errors.component.d.ts +36 -0
  23. package/country-phone-picker/lib/country-phone-picker/country-phone-picker.component.d.ts +36 -0
  24. package/currency/lib/currency.service.d.ts +15 -2
  25. package/custom-fields/lib/custom-fields/custom-fields.component.d.ts +31 -0
  26. package/dialog/lib/src/dialog/dialog.component.d.ts +51 -0
  27. package/dialog/lib/src/dialog/services/dialog.service.d.ts +2 -2
  28. package/dialog/lib/src/dialog/services/internal-dialog.service.d.ts +1 -1
  29. package/dynamic-form/dynamic-form/components/lookup/lookup.component.d.ts +6 -5
  30. package/dynamic-form/dynamic-form/components/lookup/models/lookup-api.model.d.ts +5 -0
  31. package/dynamic-form/dynamic-form/configurations/structure/fieldset.d.ts +14 -0
  32. package/dynamic-form/dynamic-form/configurations/structure/row.d.ts +67 -0
  33. package/dynamic-form/dynamic-form/configurations/structure/section.d.ts +8 -0
  34. package/dynamic-form/dynamic-form/configurations/structure/structure.d.ts +19 -0
  35. package/dynamic-form/dynamic-form/dynamic-form.component.d.ts +21 -1
  36. package/dynamic-form/dynamic-form/form-field/configurations/fields/autocomplete-field.d.ts +45 -0
  37. package/dynamic-form/dynamic-form/form-field/configurations/fields/bignumber-field.d.ts +59 -0
  38. package/dynamic-form/dynamic-form/form-field/configurations/fields/blob-field.d.ts +55 -0
  39. package/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-field.d.ts +35 -0
  40. package/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-switch-field.d.ts +17 -0
  41. package/dynamic-form/dynamic-form/form-field/configurations/fields/button-field.d.ts +23 -0
  42. package/dynamic-form/dynamic-form/form-field/configurations/fields/calendar-field.d.ts +66 -0
  43. package/dynamic-form/dynamic-form/form-field/configurations/fields/checkbox-field.d.ts +15 -0
  44. package/dynamic-form/dynamic-form/form-field/configurations/fields/chips-field.d.ts +30 -0
  45. package/dynamic-form/dynamic-form/form-field/configurations/fields/content-generator-field.d.ts +47 -2
  46. package/dynamic-form/dynamic-form/form-field/configurations/fields/country-phone-picker-field.d.ts +26 -0
  47. package/dynamic-form/dynamic-form/form-field/configurations/fields/currency-field.d.ts +18 -1
  48. package/dynamic-form/dynamic-form/form-field/configurations/fields/field.d.ts +44 -0
  49. package/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.d.ts +112 -4
  50. package/dynamic-form/dynamic-form/form-field/configurations/fields/number-field.d.ts +42 -3
  51. package/dynamic-form/dynamic-form/form-field/configurations/fields/password-field.d.ts +48 -0
  52. package/dynamic-form/dynamic-form/form-field/configurations/fields/profile-picture.d.ts +62 -0
  53. package/dynamic-form/dynamic-form/form-field/configurations/fields/radio-button-field.d.ts +34 -0
  54. package/dynamic-form/dynamic-form/form-field/configurations/fields/select-field.d.ts +63 -0
  55. package/dynamic-form/dynamic-form/form-field/configurations/fields/slider-field.d.ts +47 -1
  56. package/dynamic-form/dynamic-form/form-field/configurations/fields/star-rating-field.d.ts +23 -0
  57. package/dynamic-form/dynamic-form/form-field/configurations/fields/text-area-field.d.ts +37 -1
  58. package/dynamic-form/dynamic-form/form-field/configurations/fields/text-field.d.ts +65 -2
  59. package/dynamic-form/public-api.d.ts +1 -0
  60. package/editable-overlay/lib/editable-overlay/editable-overlay.directive.d.ts +16 -0
  61. package/empty-state/lib/empty-state/empty-state.component.d.ts +59 -0
  62. package/esm2022/accordion/lib/accordion/accordion.component.mjs +26 -1
  63. package/esm2022/accordion/lib/accordion/components/accordion-panel/accordion-panel.component.mjs +61 -1
  64. package/esm2022/alert/lib/alert/alert.component.mjs +41 -1
  65. package/esm2022/autocomplete/lib/autocomplete/autocomplete.component.mjs +52 -1
  66. package/esm2022/badge/lib/badge/badge.component.mjs +21 -1
  67. package/esm2022/bignumber-input/lib/bignumber-input/bignumber-input.directive.mjs +47 -2
  68. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.component.mjs +13 -1
  69. package/esm2022/button/lib/button/button.component.mjs +102 -1
  70. package/esm2022/calendar-mask/lib/calendar-mask/calendar-mask.directive.mjs +72 -47
  71. package/esm2022/card/lib/card/card.component.mjs +21 -6
  72. package/esm2022/chat/lib/chat/chat.component.mjs +23 -5
  73. package/esm2022/chat/lib/chat/components/chat-message/chat-message.component.mjs +20 -4
  74. package/esm2022/checkbox/lib/checkbox/checkbox.component.mjs +24 -4
  75. package/esm2022/checkbox-list/lib/checkbox-list/checkbox-list.component.mjs +22 -2
  76. package/esm2022/chips/lib/chips/chip-item/chip-item.component.mjs +17 -2
  77. package/esm2022/chips/lib/chips/chips/chips.component.mjs +42 -1
  78. package/esm2022/code-editor/lib/code-editor/code-editor.component.mjs +41 -1
  79. package/esm2022/collapse-link/lib/collapse-link/collapse-link.component.mjs +19 -1
  80. package/esm2022/common/lib/svg-factory/components/iassist-icon/iassist-icon.component.mjs +6 -1
  81. package/esm2022/confirm-dialog/lib/popup-confirm-dialog/popup-confirm-dialog.component.mjs +20 -1
  82. package/esm2022/content-generator/lib/content-generator/content-generator.component.mjs +31 -1
  83. package/esm2022/control-errors/lib/control-errors/control-errors.component.mjs +37 -1
  84. package/esm2022/country-phone-picker/lib/country-phone-picker/country-phone-picker.component.mjs +37 -1
  85. package/esm2022/currency/lib/currency.service.mjs +21 -8
  86. package/esm2022/custom-fields/lib/custom-fields/custom-fields.component.mjs +32 -1
  87. package/esm2022/dialog/lib/src/dialog/dialog.component.mjs +66 -11
  88. package/esm2022/dialog/lib/src/dialog/services/dialog.service.mjs +13 -10
  89. package/esm2022/dialog/lib/src/dialog/services/internal-dialog.service.mjs +3 -3
  90. package/esm2022/dynamic-form/dynamic-form/components/lookup/lookup.component.mjs +1 -1
  91. package/esm2022/dynamic-form/dynamic-form/components/lookup/models/lookup-api.model.mjs +2 -0
  92. package/esm2022/dynamic-form/dynamic-form/configurations/structure/fieldset.mjs +1 -1
  93. package/esm2022/dynamic-form/dynamic-form/configurations/structure/row.mjs +1 -1
  94. package/esm2022/dynamic-form/dynamic-form/configurations/structure/section.mjs +1 -1
  95. package/esm2022/dynamic-form/dynamic-form/configurations/structure/structure.mjs +1 -1
  96. package/esm2022/dynamic-form/dynamic-form/dynamic-form.component.mjs +22 -2
  97. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/autocomplete-field.mjs +1 -1
  98. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/bignumber-field.mjs +1 -1
  99. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/blob-field.mjs +1 -1
  100. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-field.mjs +1 -1
  101. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-switch-field.mjs +1 -1
  102. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/button-field.mjs +1 -1
  103. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/calendar-field.mjs +1 -1
  104. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/checkbox-field.mjs +1 -1
  105. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/chips-field.mjs +1 -1
  106. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/content-generator-field.mjs +1 -1
  107. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/country-phone-picker-field.mjs +1 -1
  108. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/currency-field.mjs +1 -1
  109. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/field.mjs +1 -2
  110. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.mjs +1 -1
  111. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/number-field.mjs +1 -1
  112. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/password-field.mjs +1 -1
  113. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/profile-picture.mjs +1 -1
  114. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/radio-button-field.mjs +6 -1
  115. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/select-field.mjs +1 -1
  116. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/slider-field.mjs +1 -1
  117. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/star-rating-field.mjs +1 -1
  118. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/text-area-field.mjs +1 -1
  119. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/text-field.mjs +1 -1
  120. package/esm2022/dynamic-form/dynamic-form/form-field/fields/text-area/text-area-field.component.mjs +3 -3
  121. package/esm2022/dynamic-form/public-api.mjs +2 -2
  122. package/esm2022/editable-overlay/lib/editable-overlay/editable-overlay.directive.mjs +17 -1
  123. package/esm2022/empty-state/lib/empty-state/empty-state.component.mjs +60 -1
  124. package/esm2022/fieldset/lib/fieldset/fieldset.component.mjs +25 -5
  125. package/esm2022/file-picker/lib/file-picker/file-picker.component.mjs +48 -1
  126. package/esm2022/gantt/lib/gantt/gantt.component.mjs +32 -1
  127. package/esm2022/global-search/lib/global-search/global-search.component.mjs +30 -1
  128. package/esm2022/grid-menu/lib/grid-menu/grid-menu.component.mjs +40 -1
  129. package/esm2022/help-popover/lib/help-popover/help-popover.directive.mjs +83 -27
  130. package/esm2022/image-cropper/lib/image-cropper/image-cropper.component.mjs +40 -3
  131. package/esm2022/infinite-scroll/lib/infinite-scroll/infinite-scroll.directive.mjs +18 -2
  132. package/esm2022/info-sign/lib/info-sign/info-sign.directive.mjs +33 -4
  133. package/esm2022/inline-edit/lib/inline-edit/inline-edit.component.mjs +16 -1
  134. package/esm2022/insights/lib/insights/insights.component.mjs +23 -1
  135. package/esm2022/interactive-content/lib/interactive-content/interactive-content.directive.mjs +21 -1
  136. package/esm2022/kanban/lib/kanban/kanban.component.mjs +34 -16
  137. package/esm2022/label-value/lib/label-value/label-value.component.mjs +14 -1
  138. package/esm2022/loading-state/lib/loading-state/loading-state.component.mjs +37 -1
  139. package/esm2022/loading-state/lib/loading-state/loading-state.directive.mjs +24 -1
  140. package/esm2022/locale/lib/locale/locale.service.mjs +8 -1
  141. package/esm2022/localized-number-input/lib/localized-number-input/localized-number-input.directive.mjs +17 -1
  142. package/esm2022/mask/lib/mask/mask-formatter.pipe.mjs +13 -1
  143. package/esm2022/mouse-events/lib/mouse-events/double-click.directive.mjs +16 -3
  144. package/esm2022/mouse-events/lib/mouse-events/long-press.directive.mjs +24 -10
  145. package/esm2022/navigation-button/lib/navigation-button/navigation-button.component.mjs +20 -1
  146. package/esm2022/number-input/lib/number-input/number-input.directive.mjs +32 -12
  147. package/esm2022/numeric/lib/numeric.pipe.mjs +16 -1
  148. package/esm2022/numeric/lib/numeric.service.mjs +21 -1
  149. package/esm2022/numeric-mask/lib/numeric-mask/numeric-mask.directive.mjs +9 -6
  150. package/esm2022/object-card/lib/object-card/object-card.component.mjs +24 -1
  151. package/esm2022/optional-fields/editor/editor-field.mjs +1 -1
  152. package/esm2022/paginator/lib/paginator/paginator.component.mjs +20 -1
  153. package/esm2022/panel/lib/panel/panel.component.mjs +44 -23
  154. package/esm2022/password-strength/lib/password-strength/password-strength.component.mjs +25 -1
  155. package/esm2022/password-strength/lib/password-strength/password-strength.directive.mjs +54 -1
  156. package/esm2022/picklist/lib/picklist/picklist.component.mjs +33 -2
  157. package/esm2022/pin-code-field/lib/pin-code-field/pin-code-field.component.mjs +29 -34
  158. package/esm2022/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.component.mjs +86 -2
  159. package/esm2022/progressbar/lib/progressbar/progressbar.component.mjs +53 -3
  160. package/esm2022/radio-button/lib/radio-button/radio-button.component.mjs +28 -1
  161. package/esm2022/radio-button/lib/radio-button-group/radio-button-group.component.mjs +27 -1
  162. package/esm2022/rating-scale/lib/rating-scale/rating-scale.component.mjs +39 -7
  163. package/esm2022/select/lib/select/select.component.mjs +35 -1
  164. package/esm2022/select-button/lib/select-button/select-button.component.mjs +35 -1
  165. package/esm2022/shared/lib/shared/border-button/border-button.component.mjs +11 -3
  166. package/esm2022/sidebar/lib/sidebar/sidebar.component.mjs +54 -1
  167. package/esm2022/slide-in-bar/lib/slide-in-bar/slide-in-bar.component.mjs +76 -36
  168. package/esm2022/slider/lib/slider/slider.component.mjs +90 -9
  169. package/esm2022/speech-recognition/lib/speech-recognition/speech-recognition/speech-recognition.component.mjs +25 -4
  170. package/esm2022/split-button/lib/split-button/split-button.component.mjs +24 -2
  171. package/esm2022/star-rating/star-rating/star-rating.component.mjs +17 -1
  172. package/esm2022/stats-card/lib/stats-card/stats-card.component.mjs +32 -10
  173. package/esm2022/stepper/lib/stepper/stepper.component.mjs +20 -1
  174. package/esm2022/structure/lib/structure/footer.component.mjs +11 -1
  175. package/esm2022/switch/lib/switch/switch.component.mjs +22 -2
  176. package/esm2022/table/lib/table/table-column/table-columns.component.mjs +16 -1
  177. package/esm2022/table-header/lib/table-header/table-header-checkbox.component.mjs +29 -3
  178. package/esm2022/tabs/lib/tab-item/tab-item.component.mjs +33 -2
  179. package/esm2022/tabs/lib/tabs/tabs.component.mjs +35 -3
  180. package/esm2022/template/lib/template/template.directive.mjs +14 -2
  181. package/esm2022/text-area/lib/text-area/text-area.component.mjs +28 -1
  182. package/esm2022/thumbnail/lib/thumbnail/thumbnail.component.mjs +25 -1
  183. package/esm2022/thumbnails/lib/thumbnails/thumbnails.component.mjs +28 -3
  184. package/esm2022/tiered-menu/lib/tiered-menu/tiered-menu.directive.mjs +30 -1
  185. package/esm2022/tile/lib/tile/tile.component.mjs +26 -1
  186. package/esm2022/timeline/lib/timeline/timeline.component.mjs +26 -3
  187. package/esm2022/toast/lib/toast/toast.component.mjs +24 -4
  188. package/esm2022/token-list/lib/token-list/token-list.component.mjs +22 -1
  189. package/esm2022/tooltip/lib/tooltip/tooltip.directive.mjs +66 -1
  190. package/esm2022/topbar/lib/topbar/topbar.component.mjs +18 -1
  191. package/esm2022/tree/lib/tree/tree.component.mjs +28 -1
  192. package/esm2022/workspace-switch/lib/workspace-switch/workspace-switch.component.mjs +47 -1
  193. package/fesm2022/seniorsistemas-angular-components-accordion.mjs +85 -0
  194. package/fesm2022/seniorsistemas-angular-components-accordion.mjs.map +1 -1
  195. package/fesm2022/seniorsistemas-angular-components-alert.mjs +40 -0
  196. package/fesm2022/seniorsistemas-angular-components-alert.mjs.map +1 -1
  197. package/fesm2022/seniorsistemas-angular-components-autocomplete.mjs +51 -0
  198. package/fesm2022/seniorsistemas-angular-components-autocomplete.mjs.map +1 -1
  199. package/fesm2022/seniorsistemas-angular-components-badge.mjs +20 -0
  200. package/fesm2022/seniorsistemas-angular-components-badge.mjs.map +1 -1
  201. package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs +46 -1
  202. package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs.map +1 -1
  203. package/fesm2022/seniorsistemas-angular-components-breadcrumb.mjs +12 -0
  204. package/fesm2022/seniorsistemas-angular-components-breadcrumb.mjs.map +1 -1
  205. package/fesm2022/seniorsistemas-angular-components-button.mjs +101 -0
  206. package/fesm2022/seniorsistemas-angular-components-button.mjs.map +1 -1
  207. package/fesm2022/seniorsistemas-angular-components-calendar-mask.mjs +71 -46
  208. package/fesm2022/seniorsistemas-angular-components-calendar-mask.mjs.map +1 -1
  209. package/fesm2022/seniorsistemas-angular-components-card.mjs +19 -4
  210. package/fesm2022/seniorsistemas-angular-components-card.mjs.map +1 -1
  211. package/fesm2022/seniorsistemas-angular-components-chat.mjs +39 -5
  212. package/fesm2022/seniorsistemas-angular-components-chat.mjs.map +1 -1
  213. package/fesm2022/seniorsistemas-angular-components-checkbox-list.mjs +21 -1
  214. package/fesm2022/seniorsistemas-angular-components-checkbox-list.mjs.map +1 -1
  215. package/fesm2022/seniorsistemas-angular-components-checkbox.mjs +23 -3
  216. package/fesm2022/seniorsistemas-angular-components-checkbox.mjs.map +1 -1
  217. package/fesm2022/seniorsistemas-angular-components-chips.mjs +57 -1
  218. package/fesm2022/seniorsistemas-angular-components-chips.mjs.map +1 -1
  219. package/fesm2022/seniorsistemas-angular-components-code-editor.mjs +40 -0
  220. package/fesm2022/seniorsistemas-angular-components-code-editor.mjs.map +1 -1
  221. package/fesm2022/seniorsistemas-angular-components-collapse-link.mjs +18 -0
  222. package/fesm2022/seniorsistemas-angular-components-collapse-link.mjs.map +1 -1
  223. package/fesm2022/seniorsistemas-angular-components-common.mjs +5 -0
  224. package/fesm2022/seniorsistemas-angular-components-common.mjs.map +1 -1
  225. package/fesm2022/seniorsistemas-angular-components-confirm-dialog.mjs +19 -0
  226. package/fesm2022/seniorsistemas-angular-components-confirm-dialog.mjs.map +1 -1
  227. package/fesm2022/seniorsistemas-angular-components-content-generator.mjs +30 -0
  228. package/fesm2022/seniorsistemas-angular-components-content-generator.mjs.map +1 -1
  229. package/fesm2022/seniorsistemas-angular-components-control-errors.mjs +36 -0
  230. package/fesm2022/seniorsistemas-angular-components-control-errors.mjs.map +1 -1
  231. package/fesm2022/seniorsistemas-angular-components-country-phone-picker.mjs +36 -0
  232. package/fesm2022/seniorsistemas-angular-components-country-phone-picker.mjs.map +1 -1
  233. package/fesm2022/seniorsistemas-angular-components-currency.mjs +19 -6
  234. package/fesm2022/seniorsistemas-angular-components-currency.mjs.map +1 -1
  235. package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs +31 -0
  236. package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs.map +1 -1
  237. package/fesm2022/seniorsistemas-angular-components-dialog.mjs +74 -16
  238. package/fesm2022/seniorsistemas-angular-components-dialog.mjs.map +1 -1
  239. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs +29 -4
  240. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs.map +1 -1
  241. package/fesm2022/seniorsistemas-angular-components-editable-overlay.mjs +16 -0
  242. package/fesm2022/seniorsistemas-angular-components-editable-overlay.mjs.map +1 -1
  243. package/fesm2022/seniorsistemas-angular-components-empty-state.mjs +59 -0
  244. package/fesm2022/seniorsistemas-angular-components-empty-state.mjs.map +1 -1
  245. package/fesm2022/seniorsistemas-angular-components-fieldset.mjs +21 -1
  246. package/fesm2022/seniorsistemas-angular-components-fieldset.mjs.map +1 -1
  247. package/fesm2022/seniorsistemas-angular-components-file-picker.mjs +47 -0
  248. package/fesm2022/seniorsistemas-angular-components-file-picker.mjs.map +1 -1
  249. package/fesm2022/seniorsistemas-angular-components-gantt.mjs +31 -0
  250. package/fesm2022/seniorsistemas-angular-components-gantt.mjs.map +1 -1
  251. package/fesm2022/seniorsistemas-angular-components-global-search.mjs +29 -0
  252. package/fesm2022/seniorsistemas-angular-components-global-search.mjs.map +1 -1
  253. package/fesm2022/seniorsistemas-angular-components-grid-menu.mjs +39 -0
  254. package/fesm2022/seniorsistemas-angular-components-grid-menu.mjs.map +1 -1
  255. package/fesm2022/seniorsistemas-angular-components-help-popover.mjs +80 -24
  256. package/fesm2022/seniorsistemas-angular-components-help-popover.mjs.map +1 -1
  257. package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs +38 -1
  258. package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs.map +1 -1
  259. package/fesm2022/seniorsistemas-angular-components-infinite-scroll.mjs +17 -1
  260. package/fesm2022/seniorsistemas-angular-components-infinite-scroll.mjs.map +1 -1
  261. package/fesm2022/seniorsistemas-angular-components-info-sign.mjs +30 -1
  262. package/fesm2022/seniorsistemas-angular-components-info-sign.mjs.map +1 -1
  263. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs +15 -0
  264. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs.map +1 -1
  265. package/fesm2022/seniorsistemas-angular-components-insights.mjs +22 -0
  266. package/fesm2022/seniorsistemas-angular-components-insights.mjs.map +1 -1
  267. package/fesm2022/seniorsistemas-angular-components-interactive-content.mjs +20 -0
  268. package/fesm2022/seniorsistemas-angular-components-interactive-content.mjs.map +1 -1
  269. package/fesm2022/seniorsistemas-angular-components-kanban.mjs +28 -10
  270. package/fesm2022/seniorsistemas-angular-components-kanban.mjs.map +1 -1
  271. package/fesm2022/seniorsistemas-angular-components-label-value.mjs +13 -0
  272. package/fesm2022/seniorsistemas-angular-components-label-value.mjs.map +1 -1
  273. package/fesm2022/seniorsistemas-angular-components-loading-state.mjs +59 -0
  274. package/fesm2022/seniorsistemas-angular-components-loading-state.mjs.map +1 -1
  275. package/fesm2022/seniorsistemas-angular-components-locale.mjs +7 -0
  276. package/fesm2022/seniorsistemas-angular-components-locale.mjs.map +1 -1
  277. package/fesm2022/seniorsistemas-angular-components-localized-number-input.mjs +16 -0
  278. package/fesm2022/seniorsistemas-angular-components-localized-number-input.mjs.map +1 -1
  279. package/fesm2022/seniorsistemas-angular-components-mask.mjs +12 -0
  280. package/fesm2022/seniorsistemas-angular-components-mask.mjs.map +1 -1
  281. package/fesm2022/seniorsistemas-angular-components-mouse-events.mjs +35 -8
  282. package/fesm2022/seniorsistemas-angular-components-mouse-events.mjs.map +1 -1
  283. package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs +19 -0
  284. package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs.map +1 -1
  285. package/fesm2022/seniorsistemas-angular-components-number-input.mjs +31 -11
  286. package/fesm2022/seniorsistemas-angular-components-number-input.mjs.map +1 -1
  287. package/fesm2022/seniorsistemas-angular-components-numeric-mask.mjs +8 -5
  288. package/fesm2022/seniorsistemas-angular-components-numeric-mask.mjs.map +1 -1
  289. package/fesm2022/seniorsistemas-angular-components-numeric.mjs +35 -0
  290. package/fesm2022/seniorsistemas-angular-components-numeric.mjs.map +1 -1
  291. package/fesm2022/seniorsistemas-angular-components-object-card.mjs +23 -0
  292. package/fesm2022/seniorsistemas-angular-components-object-card.mjs.map +1 -1
  293. package/fesm2022/seniorsistemas-angular-components-optional-fields-editor.mjs.map +1 -1
  294. package/fesm2022/seniorsistemas-angular-components-paginator.mjs +19 -0
  295. package/fesm2022/seniorsistemas-angular-components-paginator.mjs.map +1 -1
  296. package/fesm2022/seniorsistemas-angular-components-panel.mjs +39 -18
  297. package/fesm2022/seniorsistemas-angular-components-panel.mjs.map +1 -1
  298. package/fesm2022/seniorsistemas-angular-components-password-strength.mjs +77 -0
  299. package/fesm2022/seniorsistemas-angular-components-password-strength.mjs.map +1 -1
  300. package/fesm2022/seniorsistemas-angular-components-picklist.mjs +32 -1
  301. package/fesm2022/seniorsistemas-angular-components-picklist.mjs.map +1 -1
  302. package/fesm2022/seniorsistemas-angular-components-pin-code-field.mjs +28 -33
  303. package/fesm2022/seniorsistemas-angular-components-pin-code-field.mjs.map +1 -1
  304. package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs +85 -1
  305. package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs.map +1 -1
  306. package/fesm2022/seniorsistemas-angular-components-progressbar.mjs +52 -2
  307. package/fesm2022/seniorsistemas-angular-components-progressbar.mjs.map +1 -1
  308. package/fesm2022/seniorsistemas-angular-components-radio-button.mjs +53 -0
  309. package/fesm2022/seniorsistemas-angular-components-radio-button.mjs.map +1 -1
  310. package/fesm2022/seniorsistemas-angular-components-rating-scale.mjs +36 -4
  311. package/fesm2022/seniorsistemas-angular-components-rating-scale.mjs.map +1 -1
  312. package/fesm2022/seniorsistemas-angular-components-select-button.mjs +34 -0
  313. package/fesm2022/seniorsistemas-angular-components-select-button.mjs.map +1 -1
  314. package/fesm2022/seniorsistemas-angular-components-select.mjs +34 -0
  315. package/fesm2022/seniorsistemas-angular-components-select.mjs.map +1 -1
  316. package/fesm2022/seniorsistemas-angular-components-shared.mjs +9 -1
  317. package/fesm2022/seniorsistemas-angular-components-shared.mjs.map +1 -1
  318. package/fesm2022/seniorsistemas-angular-components-sidebar.mjs +53 -0
  319. package/fesm2022/seniorsistemas-angular-components-sidebar.mjs.map +1 -1
  320. package/fesm2022/seniorsistemas-angular-components-slide-in-bar.mjs +71 -31
  321. package/fesm2022/seniorsistemas-angular-components-slide-in-bar.mjs.map +1 -1
  322. package/fesm2022/seniorsistemas-angular-components-slider.mjs +89 -8
  323. package/fesm2022/seniorsistemas-angular-components-slider.mjs.map +1 -1
  324. package/fesm2022/seniorsistemas-angular-components-speech-recognition.mjs +24 -3
  325. package/fesm2022/seniorsistemas-angular-components-speech-recognition.mjs.map +1 -1
  326. package/fesm2022/seniorsistemas-angular-components-split-button.mjs +22 -0
  327. package/fesm2022/seniorsistemas-angular-components-split-button.mjs.map +1 -1
  328. package/fesm2022/seniorsistemas-angular-components-star-rating.mjs +16 -0
  329. package/fesm2022/seniorsistemas-angular-components-star-rating.mjs.map +1 -1
  330. package/fesm2022/seniorsistemas-angular-components-stats-card.mjs +30 -8
  331. package/fesm2022/seniorsistemas-angular-components-stats-card.mjs.map +1 -1
  332. package/fesm2022/seniorsistemas-angular-components-stepper.mjs +19 -0
  333. package/fesm2022/seniorsistemas-angular-components-stepper.mjs.map +1 -1
  334. package/fesm2022/seniorsistemas-angular-components-structure.mjs +10 -0
  335. package/fesm2022/seniorsistemas-angular-components-structure.mjs.map +1 -1
  336. package/fesm2022/seniorsistemas-angular-components-switch.mjs +20 -0
  337. package/fesm2022/seniorsistemas-angular-components-switch.mjs.map +1 -1
  338. package/fesm2022/seniorsistemas-angular-components-table-header.mjs +28 -2
  339. package/fesm2022/seniorsistemas-angular-components-table-header.mjs.map +1 -1
  340. package/fesm2022/seniorsistemas-angular-components-table.mjs +15 -0
  341. package/fesm2022/seniorsistemas-angular-components-table.mjs.map +1 -1
  342. package/fesm2022/seniorsistemas-angular-components-tabs.mjs +65 -2
  343. package/fesm2022/seniorsistemas-angular-components-tabs.mjs.map +1 -1
  344. package/fesm2022/seniorsistemas-angular-components-template.mjs +13 -1
  345. package/fesm2022/seniorsistemas-angular-components-template.mjs.map +1 -1
  346. package/fesm2022/seniorsistemas-angular-components-text-area.mjs +27 -0
  347. package/fesm2022/seniorsistemas-angular-components-text-area.mjs.map +1 -1
  348. package/fesm2022/seniorsistemas-angular-components-thumbnail.mjs +24 -0
  349. package/fesm2022/seniorsistemas-angular-components-thumbnail.mjs.map +1 -1
  350. package/fesm2022/seniorsistemas-angular-components-thumbnails.mjs +26 -1
  351. package/fesm2022/seniorsistemas-angular-components-thumbnails.mjs.map +1 -1
  352. package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs +29 -0
  353. package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs.map +1 -1
  354. package/fesm2022/seniorsistemas-angular-components-tile.mjs +25 -0
  355. package/fesm2022/seniorsistemas-angular-components-tile.mjs.map +1 -1
  356. package/fesm2022/seniorsistemas-angular-components-timeline.mjs +25 -2
  357. package/fesm2022/seniorsistemas-angular-components-timeline.mjs.map +1 -1
  358. package/fesm2022/seniorsistemas-angular-components-toast.mjs +22 -2
  359. package/fesm2022/seniorsistemas-angular-components-toast.mjs.map +1 -1
  360. package/fesm2022/seniorsistemas-angular-components-token-list.mjs +21 -0
  361. package/fesm2022/seniorsistemas-angular-components-token-list.mjs.map +1 -1
  362. package/fesm2022/seniorsistemas-angular-components-tooltip.mjs +65 -0
  363. package/fesm2022/seniorsistemas-angular-components-tooltip.mjs.map +1 -1
  364. package/fesm2022/seniorsistemas-angular-components-topbar.mjs +17 -0
  365. package/fesm2022/seniorsistemas-angular-components-topbar.mjs.map +1 -1
  366. package/fesm2022/seniorsistemas-angular-components-tree.mjs +27 -0
  367. package/fesm2022/seniorsistemas-angular-components-tree.mjs.map +1 -1
  368. package/fesm2022/seniorsistemas-angular-components-workspace-switch.mjs +46 -0
  369. package/fesm2022/seniorsistemas-angular-components-workspace-switch.mjs.map +1 -1
  370. package/fieldset/lib/fieldset/fieldset.component.d.ts +23 -3
  371. package/file-picker/lib/file-picker/file-picker.component.d.ts +47 -0
  372. package/gantt/lib/gantt/gantt.component.d.ts +31 -0
  373. package/global-search/lib/global-search/global-search.component.d.ts +29 -0
  374. package/grid-menu/lib/grid-menu/grid-menu.component.d.ts +39 -0
  375. package/help-popover/lib/help-popover/help-popover.directive.d.ts +67 -17
  376. package/image-cropper/lib/image-cropper/image-cropper.component.d.ts +38 -0
  377. package/infinite-scroll/lib/infinite-scroll/infinite-scroll.directive.d.ts +15 -0
  378. package/info-sign/lib/info-sign/info-sign.directive.d.ts +30 -1
  379. package/inline-edit/lib/inline-edit/inline-edit.component.d.ts +15 -0
  380. package/insights/lib/insights/insights.component.d.ts +22 -0
  381. package/interactive-content/lib/interactive-content/interactive-content.directive.d.ts +20 -0
  382. package/kanban/lib/kanban/kanban.component.d.ts +25 -5
  383. package/label-value/lib/label-value/label-value.component.d.ts +13 -0
  384. package/loading-state/lib/loading-state/loading-state.component.d.ts +36 -0
  385. package/loading-state/lib/loading-state/loading-state.directive.d.ts +23 -0
  386. package/locale/lib/locale/locale.service.d.ts +7 -0
  387. package/localized-number-input/lib/localized-number-input/localized-number-input.directive.d.ts +16 -0
  388. package/mask/lib/mask/mask-formatter.pipe.d.ts +12 -0
  389. package/mouse-events/lib/mouse-events/double-click.directive.d.ts +13 -0
  390. package/mouse-events/lib/mouse-events/long-press.directive.d.ts +16 -2
  391. package/navigation-button/lib/navigation-button/navigation-button.component.d.ts +19 -0
  392. package/number-input/lib/number-input/number-input.directive.d.ts +19 -1
  393. package/numeric/lib/numeric.pipe.d.ts +15 -0
  394. package/numeric/lib/numeric.service.d.ts +20 -0
  395. package/numeric-mask/lib/numeric-mask/numeric-mask.directive.d.ts +5 -4
  396. package/object-card/lib/object-card/object-card.component.d.ts +23 -0
  397. package/optional-fields/editor/editor-field.d.ts +19 -0
  398. package/package.json +12 -12
  399. package/paginator/lib/paginator/paginator.component.d.ts +19 -0
  400. package/panel/lib/panel/panel.component.d.ts +24 -3
  401. package/password-strength/lib/password-strength/password-strength.component.d.ts +24 -0
  402. package/password-strength/lib/password-strength/password-strength.directive.d.ts +53 -0
  403. package/picklist/lib/picklist/picklist.component.d.ts +29 -0
  404. package/pin-code-field/lib/pin-code-field/pin-code-field.component.d.ts +28 -33
  405. package/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.component.d.ts +85 -1
  406. package/progressbar/lib/progressbar/progressbar.component.d.ts +50 -0
  407. package/radio-button/lib/radio-button/radio-button.component.d.ts +27 -0
  408. package/radio-button/lib/radio-button-group/radio-button-group.component.d.ts +26 -0
  409. package/rating-scale/lib/rating-scale/rating-scale.component.d.ts +30 -2
  410. package/select/lib/select/select.component.d.ts +34 -0
  411. package/select-button/lib/select-button/select-button.component.d.ts +34 -0
  412. package/shared/lib/shared/border-button/border-button.component.d.ts +10 -2
  413. package/sidebar/lib/sidebar/sidebar.component.d.ts +53 -0
  414. package/slide-in-bar/lib/slide-in-bar/slide-in-bar.component.d.ts +53 -2
  415. package/slider/lib/slider/slider.component.d.ts +72 -0
  416. package/speech-recognition/lib/speech-recognition/speech-recognition/speech-recognition.component.d.ts +18 -0
  417. package/split-button/lib/split-button/split-button.component.d.ts +22 -0
  418. package/star-rating/star-rating/star-rating.component.d.ts +16 -0
  419. package/stats-card/lib/stats-card/stats-card.component.d.ts +28 -0
  420. package/stepper/lib/stepper/stepper.component.d.ts +19 -0
  421. package/structure/lib/structure/footer.component.d.ts +10 -0
  422. package/switch/lib/switch/switch.component.d.ts +20 -0
  423. package/table/lib/table/table-column/table-columns.component.d.ts +15 -0
  424. package/table-header/lib/table-header/table-header-checkbox.component.d.ts +18 -0
  425. package/tabs/lib/tab-item/tab-item.component.d.ts +31 -0
  426. package/tabs/lib/tabs/tabs.component.d.ts +28 -0
  427. package/template/lib/template/template.directive.d.ts +12 -0
  428. package/text-area/lib/text-area/text-area.component.d.ts +27 -0
  429. package/thumbnail/lib/thumbnail/thumbnail.component.d.ts +24 -0
  430. package/thumbnails/lib/thumbnails/thumbnails.component.d.ts +27 -2
  431. package/tiered-menu/lib/tiered-menu/tiered-menu.directive.d.ts +29 -0
  432. package/tile/lib/tile/tile.component.d.ts +25 -0
  433. package/timeline/lib/timeline/timeline.component.d.ts +24 -0
  434. package/toast/lib/toast/toast.component.d.ts +22 -2
  435. package/token-list/lib/token-list/token-list.component.d.ts +21 -0
  436. package/tooltip/lib/tooltip/tooltip.directive.d.ts +65 -0
  437. package/topbar/lib/topbar/topbar.component.d.ts +17 -0
  438. package/tree/lib/tree/tree.component.d.ts +27 -0
  439. package/workspace-switch/lib/workspace-switch/workspace-switch.component.d.ts +46 -0
@@ -1 +1 @@
1
- {"version":3,"file":"seniorsistemas-angular-components-timeline.mjs","sources":["../../projects/angular-components/timeline/src/lib/timeline/components/timeline-icon-item/timeline-icon-item.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/timeline-icon-item/timeline-icon-item.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/horizontal-timeline/horizontal-timeline.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/horizontal-timeline/horizontal-timeline.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/range-line/range-line.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/range-line/range-line.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/collapse-option/collapse-option.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/collapse-option/collapse-option.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/collapsed-items/collapsed-items.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/collapsed-items/collapsed-items.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/vertical-items/vertical-items.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/vertical-items/vertical-items.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/vertical-timeline.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/vertical-timeline.component.html","../../projects/angular-components/timeline/src/lib/timeline/timeline.component.ts","../../projects/angular-components/timeline/src/lib/timeline/timeline.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/timeline-icon-item/timeline-icon-item.module.ts","../../projects/angular-components/timeline/src/lib/timeline/components/horizontal-timeline/horizontal-timeline.module.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/vertical-timeline.module.ts","../../projects/angular-components/timeline/src/lib/timeline/timeline.module.ts","../../projects/angular-components/timeline/src/lib/timeline/models/timeline-item-severity.ts","../../projects/angular-components/timeline/src/lib/timeline/models/timeline-item-size.ts","../../projects/angular-components/timeline/src/lib/timeline/models/timeline-item.ts","../../projects/angular-components/timeline/src/seniorsistemas-angular-components-timeline.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\n\nimport { TimelineItem } from '../../models/timeline-item';\n\n@Component({\n selector: 's-timeline-icon-item',\n templateUrl: './timeline-icon-item.component.html',\n styleUrls: ['./timeline-icon-item.component.scss'],\n})\nexport class TimelineIconItemComponent {\n @Input({ required: true })\n public item!: TimelineItem;\n\n @Input()\n public isActive?: boolean;\n\n @Input()\n public highlightActive?: boolean;\n\n @Input()\n public isComplete?: boolean;\n}\n","@if (item) {\n <div\n class=\"timeline__icon-item\"\n [ngClass]=\"{\n 'timeline__icon-item--small': item.testSize('small'),\n 'timeline__icon-item--normal': item.testSize('normal'),\n 'timeline__icon-item--warning': item.testSeverity('warning'),\n 'timeline__icon-item--error': item.testSeverity('error'),\n 'timeline__icon-item--completed': isComplete,\n 'timeline__icon-item--active': isActive,\n 'timeline__icon-item--active--highlight':\n isActive && highlightActive,\n }\"\n >\n <div\n class=\"timeline__icon-item__icon\"\n [sTooltip]=\"item.tooltip\"\n [ngStyle]=\"{ backgroundColor: item.color }\"\n >\n @if (item.icon) {\n <span [ngClass]=\"item.icon\"></span>\n } @else {\n <span class=\"timeline__icon-item__icon__label\" [class.large_label]=\"(item.label?.length ?? 0) > 2\">\n {{ item.label }}\n </span>\n }\n </div>\n </div>\n}\n","import { Component, Input } from '@angular/core';\n\nimport { TimelineItem } from '../../models/timeline-item';\n\n@Component({\n selector: 's-horizontal-timeline',\n templateUrl: './horizontal-timeline.component.html',\n styleUrls: ['./horizontal-timeline.component.scss'],\n})\nexport class HorizontalTimelineComponent {\n @Input({ required: true })\n public items!: TimelineItem[];\n\n @Input()\n public activeIndex = 0;\n\n @Input()\n public highlightActiveItem?: boolean;\n}\n","<div class=\"horizontal-timeline\">\n @for (\n item of items;\n track item.id;\n let i = $index;\n let isFirst = $first;\n let isLast = $last\n ) {\n <div\n class=\"horizontal-timeline__item\"\n [ngClass]=\"{\n 'horizontal-timeline__item--small': item.testSize('small'),\n 'horizontal-timeline__item--normal': item.testSize('normal'),\n 'horizontal-timeline__item--warning':\n item.testSeverity('warning'),\n 'horizontal-timeline__item--error': item.testSeverity('error'),\n 'horizontal-timeline__item--completed': i < activeIndex,\n 'horizontal-timeline__item--active': i === activeIndex,\n }\"\n >\n <div class=\"horizontal-timeline__item__icon-wrapper\">\n <div\n class=\"horizontal-timeline__item__icon-wrapper__line horizontal-timeline__item__icon-wrapper__line--before\"\n [ngStyle]=\"{ visibility: isFirst ? 'hidden' : 'visible' }\"\n ></div>\n <s-timeline-icon-item\n [item]=\"item\"\n [isActive]=\"i === activeIndex\"\n [isComplete]=\"i < activeIndex\"\n [highlightActive]=\"highlightActiveItem\"\n >\n </s-timeline-icon-item>\n <div\n class=\"horizontal-timeline__item__icon-wrapper__line horizontal-timeline__item__icon-wrapper__line--after\"\n [ngStyle]=\"{ visibility: isLast ? 'hidden' : 'visible' }\"\n ></div>\n </div>\n <div class=\"horizontal-timeline__item__info\">\n <div\n class=\"horizontal-timeline__item__info__title\"\n [sTooltip]=\"item.title\"\n [showDelay]=\"1000\"\n >\n {{ item.title }}\n </div>\n <div\n class=\"horizontal-timeline__item__info__description\"\n [sTooltip]=\"item.description\"\n [showDelay]=\"1000\"\n >\n {{ item.description }}\n </div>\n </div>\n </div>\n }\n</div>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 's-range-line',\n templateUrl: './range-line.component.html',\n styleUrls: ['./range-line.component.scss'],\n})\nexport class RangeLineComponent {}\n","<div class=\"range-line\">\n <div class=\"range-line__horizontal\"></div>\n <div class=\"range-line__vertical\"></div>\n <div class=\"range-line__horizontal\"></div>\n</div>\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\n\n@Component({\n selector: 's-collapse-option',\n templateUrl: './collapse-option.component.html',\n styleUrls: ['./collapse-option.component.scss'],\n})\nexport class CollapseOptionComponent {\n @Input()\n public isCollapsed = false;\n\n @Output()\n public toggleCollapsed = new EventEmitter<boolean>();\n\n public onClick(): void {\n this.toggleCollapsed.emit(!this.isCollapsed);\n }\n}\n","<div\n class=\"collapse-option\"\n (click)=\"onClick()\"\n>\n <div class=\"collapse-option__icon\">\n <span\n class=\"fas\"\n [ngClass]=\"{\n 'fa-minus': !isCollapsed,\n 'fa-plus': isCollapsed,\n }\"\n >\n </span>\n </div>\n</div>\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\n\nimport { TimelineItem } from '../../../../models/timeline-item';\n\n@Component({\n selector: 's-collapsed-items',\n templateUrl: './collapsed-items.component.html',\n styleUrls: ['./collapsed-items.component.scss'],\n})\nexport class CollapsedItemsComponent {\n @Input({ required: true })\n public items!: TimelineItem[];\n\n @Input()\n public isCollapsed = false;\n\n @Input()\n public isCompleted?: boolean;\n\n @Input()\n public counterLabel?: string;\n\n @Output()\n public isCollapsedChange = new EventEmitter<boolean>();\n\n public onChange(event: boolean): void {\n this.isCollapsed = !this.isCollapsed;\n this.isCollapsedChange.emit(this.isCollapsed);\n }\n}\n","<div class=\"collapsed-items\">\n <div\n class=\"collapsed-items__item\"\n [ngClass]=\"{ 'collapsed-items__item--completed': isCompleted }\"\n >\n <div class=\"collapsed-items__item__icon-wrapper\">\n <s-collapse-option\n [isCollapsed]=\"isCollapsed\"\n (toggleCollapsed)=\"onChange($event)\"\n >\n </s-collapse-option>\n <div class=\"collapsed-items__item__icon-wrapper__line\"></div>\n </div>\n <div\n class=\"collapsed-items__item__info\"\n (click)=\"onChange(!isCollapsed)\"\n >\n <div class=\"collapsed-items__item__info__description\">\n {{ items.length }} {{ counterLabel }}\n </div>\n </div>\n </div>\n</div>\n","import { Component, Input } from '@angular/core';\n\nimport { TimelineItem } from '../../../../models/timeline-item';\n\n@Component({\n selector: 's-vertical-items',\n templateUrl: './vertical-items.component.html',\n styleUrls: ['./vertical-items.component.scss'],\n})\nexport class VerticalItemsComponent {\n @Input({ required: true })\n public items!: TimelineItem[];\n\n @Input()\n public isLast?: boolean;\n\n @Input()\n public isActive?: boolean;\n\n @Input()\n public highlightActive?: boolean;\n\n @Input()\n public isCompleted?: boolean;\n}\n","<div class=\"vertical-items\">\n @for (item of items; track item.id; let index = $index) {\n <div\n class=\"vertical-items__item\"\n [ngClass]=\"{\n 'vertical-items__item--small': item.testSize('small'),\n 'vertical-items__item--normal': item.testSize('normal'),\n 'vertical-items__item--completed': isCompleted,\n 'vertical-items__item--active': isActive,\n }\"\n >\n <div class=\"vertical-items__item__icon-wrapper\">\n <s-timeline-icon-item\n [item]=\"item\"\n [isComplete]=\"isCompleted\"\n [isActive]=\"isActive\"\n [highlightActive]=\"highlightActive\"\n >\n </s-timeline-icon-item>\n <div\n class=\"vertical-items__item__icon-wrapper__line\"\n [ngStyle]=\"{ visibility: isLast ? 'hidden' : 'visible' }\"\n ></div>\n </div>\n <div class=\"vertical-items__item__info\">\n <div class=\"vertical-timeline__item__info__title\">\n {{ item.title }}\n </div>\n <div class=\"vertical-items__item__info__description\">\n {{ item.description }}\n </div>\n </div>\n </div>\n }\n</div>\n","import { Component, Input } from '@angular/core';\n\nimport { TimelineItem } from '../../models/timeline-item';\n\n@Component({\n selector: 's-vertical-timeline',\n templateUrl: './vertical-timeline.component.html',\n styleUrls: ['./vertical-timeline.component.scss'],\n})\nexport class VerticalTimelineComponent {\n public static nextId = 0;\n private _activeIndex = 0;\n public isG1Collapsed = true;\n public isG2Collapsed = true;\n\n public firstItem: TimelineItem[] = [];\n public g1Items: TimelineItem[] = [];\n public activeItem: TimelineItem[] = [];\n public g2Items: TimelineItem[] = [];\n public lastItem: TimelineItem[] = [];\n\n @Input({ required: true })\n public set activeIndex(index: number) {\n this._activeIndex = index;\n this.groupItems();\n }\n\n public get activeIndex() {\n return this._activeIndex;\n }\n\n @Input()\n public highlightActiveItem?: boolean;\n\n @Input({ required: true })\n public items!: TimelineItem[];\n\n @Input()\n public counterLabel?: string;\n\n @Input()\n public collapsable?: boolean;\n\n public onChangeG1(event: boolean) {\n this.isG1Collapsed = event;\n }\n\n public onChangeG2(event: boolean) {\n this.isG2Collapsed = event;\n }\n\n public groupItems() {\n this.firstItem = this.activeIndex <= 0 ? [] : [this.items[0]];\n this.g1Items = this.items.slice(1, this.activeIndex < 0 ? 0 : this.activeIndex);\n this.activeItem = this.activeIndex >= 0 ? [this.items[this.activeIndex]] : [];\n this.g2Items = this.items.slice(this.activeIndex + 1, this.items.length - 1);\n this.lastItem = this.activeIndex === this.items.length - 1 ? [] : [this.items[this.items.length - 1]];\n }\n}\n","<div class=\"vertical-timeline\">\n @if (firstItem.length) {\n <div class=\"vertical-timeline__block\">\n <div class=\"vertical-timeline__block__prefix\"></div>\n <s-vertical-items\n [items]=\"firstItem\"\n [isLast]=\"false\"\n [isActive]=\"false\"\n [isCompleted]=\"true\"\n >\n </s-vertical-items>\n </div>\n }\n\n @if (g1Items.length) {\n <div class=\"vertical-timeline__block\">\n <div class=\"vertical-timeline__block__prefix\">\n @if (g1Items.length > 1 && !isG1Collapsed) {\n @if (collapsable) {\n <s-collapse-option\n [isCollapsed]=\"isG1Collapsed\"\n (toggleCollapsed)=\"onChangeG1($event)\"\n >\n </s-collapse-option>\n }\n <s-range-line\n class=\"vertical-timeline__block__prefix__line\"\n ></s-range-line>\n }\n </div>\n\n @if (isG1Collapsed && g1Items.length > 1 && collapsable) {\n <s-collapsed-items\n [items]=\"g1Items\"\n [(isCollapsed)]=\"isG1Collapsed\"\n [isCompleted]=\"true\"\n [counterLabel]=\"counterLabel\"\n >\n </s-collapsed-items>\n } @else {\n <s-vertical-items\n [items]=\"g1Items\"\n [isLast]=\"false\"\n [isActive]=\"false\"\n [isCompleted]=\"true\"\n >\n </s-vertical-items>\n }\n </div>\n }\n\n @if (activeItem.length) {\n <div class=\"vertical-timeline__block\">\n <div class=\"vertical-timeline__block__prefix\"></div>\n <s-vertical-items\n [items]=\"activeItem\"\n [isLast]=\"!lastItem.length\"\n [isActive]=\"true\"\n [highlightActive]=\"highlightActiveItem\"\n [isCompleted]=\"false\"\n >\n </s-vertical-items>\n </div>\n }\n\n @if (g2Items.length) {\n <div class=\"vertical-timeline__block\">\n <div class=\"vertical-timeline__block__prefix\">\n @if (g2Items.length > 1 && !isG2Collapsed) {\n @if (collapsable) {\n <s-collapse-option\n [isCollapsed]=\"isG2Collapsed\"\n (toggleCollapsed)=\"onChangeG2($event)\"\n >\n </s-collapse-option>\n }\n <s-range-line\n class=\"vertical-timeline__block__prefix__line\"\n ></s-range-line>\n }\n </div>\n\n @if (isG2Collapsed && g2Items.length > 1 && collapsable) {\n <s-collapsed-items\n [items]=\"g2Items\"\n [(isCollapsed)]=\"isG2Collapsed\"\n [isCompleted]=\"false\"\n [counterLabel]=\"counterLabel\"\n >\n </s-collapsed-items>\n } @else {\n <s-vertical-items\n [items]=\"g2Items\"\n [isLast]=\"false\"\n [isActive]=\"false\"\n [isCompleted]=\"false\"\n >\n </s-vertical-items>\n }\n </div>\n }\n\n @if (lastItem.length) {\n <div class=\"vertical-timeline__block\">\n <div class=\"vertical-timeline__block__prefix\"></div>\n <s-vertical-items\n [items]=\"lastItem\"\n [isLast]=\"true\"\n [isActive]=\"false\"\n [isCompleted]=\"false\"\n >\n </s-vertical-items>\n </div>\n }\n</div>\n","import { Component, HostListener, Input, OnInit } from '@angular/core';\n\nimport { TimelineItem } from './models/timeline-item';\n\nconst HORIZONTAL = 'horizontal';\nconst VERTICAL = 'vertical';\nconst MIN_ITEM_SIZE = 200;\n\n@Component({\n selector: 's-timeline',\n templateUrl: './timeline.component.html',\n})\nexport class TimelineComponent implements OnInit {\n private _innerWidth = 0;\n private _items: TimelineItem[] = [];\n\n public get items(): TimelineItem[] {\n return this._items;\n }\n\n @Input({ required: true })\n public set items(items: TimelineItem[]) {\n this._items = items;\n this.checkDuplicateIds();\n }\n\n @Input({ required: true })\n public activeIndex!: number;\n\n @Input()\n public highlightActiveItem = true;\n\n @Input()\n public direction: typeof HORIZONTAL | typeof VERTICAL = HORIZONTAL;\n\n @Input()\n public collapsable = true;\n\n @Input()\n public counterLabel = 'items';\n\n public ngOnInit(): void {\n this._innerWidth = window.innerWidth;\n }\n\n @HostListener('window:resize', ['$event'])\n public onResize(_: any): void {\n this._innerWidth = window.innerWidth;\n }\n\n public changeToVertical(): boolean {\n return (\n this.direction === VERTICAL ||\n this._innerWidth / this.items.length < MIN_ITEM_SIZE\n );\n }\n\n public checkDuplicateIds(): void {\n const ids = this.items.map((item) => {\n return item.id;\n });\n\n if (new Set(ids).size !== ids.length) {\n throw new Error('A duplicate id was found in the items list');\n }\n }\n}\n","<div>\n @if (changeToVertical()) {\n <s-vertical-timeline\n *ngIf=\"items?.length\"\n [items]=\"items\"\n [activeIndex]=\"activeIndex\"\n [highlightActiveItem]=\"highlightActiveItem\"\n [counterLabel]=\"counterLabel\"\n [collapsable]=\"collapsable\"\n [highlightActiveItem]=\"highlightActiveItem\"\n >\n </s-vertical-timeline>\n } @else {\n <s-horizontal-timeline\n *ngIf=\"items?.length\"\n [items]=\"items\"\n [activeIndex]=\"activeIndex\"\n [highlightActiveItem]=\"highlightActiveItem\"\n >\n </s-horizontal-timeline>\n }\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TooltipModule } from '@seniorsistemas/angular-components/tooltip';\n\nimport { TimelineIconItemComponent } from './timeline-icon-item.component';\n\n@NgModule({\n imports: [CommonModule, TooltipModule],\n declarations: [TimelineIconItemComponent],\n exports: [TimelineIconItemComponent],\n})\nexport class TimelineItemModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TooltipModule } from '@seniorsistemas/angular-components/tooltip';\n\nimport { TimelineItemModule } from '../timeline-icon-item/timeline-icon-item.module';\nimport { HorizontalTimelineComponent } from './horizontal-timeline.component';\n\n@NgModule({\n imports: [CommonModule, TooltipModule, TimelineItemModule],\n declarations: [HorizontalTimelineComponent],\n exports: [HorizontalTimelineComponent],\n})\nexport class HorizontalTimelineModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TimelineItemModule } from '../timeline-icon-item/timeline-icon-item.module';\nimport { VerticalTimelineComponent } from './vertical-timeline.component';\nimport { RangeLineComponent } from './components/range-line/range-line.component';\nimport { CollapseOptionComponent } from './components/collapse-option/collapse-option.component';\nimport { CollapsedItemsComponent } from './components/collapsed-items/collapsed-items.component';\nimport { VerticalItemsComponent } from './components/vertical-items/vertical-items.component';\n\n@NgModule({\n imports: [CommonModule, TimelineItemModule],\n declarations: [\n VerticalTimelineComponent,\n RangeLineComponent,\n CollapseOptionComponent,\n CollapsedItemsComponent,\n VerticalItemsComponent,\n ],\n exports: [VerticalTimelineComponent],\n})\nexport class VerticalTimelineModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TimelineComponent } from './timeline.component';\nimport { TimelineItemModule } from './components/timeline-icon-item/timeline-icon-item.module';\nimport { HorizontalTimelineModule } from './components/horizontal-timeline/horizontal-timeline.module';\nimport { VerticalTimelineModule } from './components/vertical-timeline/vertical-timeline.module';\n\n@NgModule({\n imports: [\n CommonModule,\n TimelineItemModule,\n HorizontalTimelineModule,\n VerticalTimelineModule,\n ],\n declarations: [TimelineComponent],\n exports: [TimelineComponent],\n})\nexport class TimelineModule {}\n","export enum TimelineItemSeverity {\n Normal = 'normal',\n Warning = 'warning',\n Error = 'error',\n}\n","export enum TimelineItemSize {\n Normal = 'normal',\n Small = 'small',\n}\n","import { TimelineItemSeverity } from './timeline-item-severity';\nimport { TimelineItemSize } from './timeline-item-size';\n\nconst LABEL_MAX_LENGTH = 3;\n\nexport class TimelineItem {\n public id: string;\n public title: string;\n public description: string;\n public icon?: string;\n public label?: string;\n public tooltip?: string;\n public size: TimelineItemSize;\n public severity: TimelineItemSeverity;\n public color?: string;\n\n constructor(params: {\n id: string;\n title: string;\n description: string;\n icon?: string;\n label?: string;\n size?: TimelineItemSize;\n severity?: TimelineItemSeverity;\n tooltip?: string;\n color?: string;\n }) {\n this.id = params.id;\n this.title = params.title;\n this.description = params.description;\n this.icon = params.icon;\n this.label = params.label;\n this.tooltip = params.tooltip;\n this.size = params.size || TimelineItemSize.Normal;\n this.severity = params.severity || TimelineItemSeverity.Normal;\n this.color = params.color;\n\n this.checkItemIconContent();\n }\n\n public checkItemIconContent() {\n if (!this.icon && !this.label) {\n throw new Error(\n 'No icon or label string was passed for the item. Enter an icon or label text',\n );\n }\n\n if (this.icon && this.label) {\n throw new Error(\n 'An icon and label string were passed to the item. Enter an icon or label text',\n );\n }\n\n if (this.label && this.label.length > LABEL_MAX_LENGTH) {\n throw new Error(\n 'Label text is expected to be a maximum of three characters long',\n );\n }\n }\n\n public testSize(value: string) {\n return this.size.valueOf() === value;\n }\n\n public testSeverity(value: string) {\n return this.severity?.valueOf() === value;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.TimelineIconItemComponent","i2.CollapseOptionComponent","i2.TimelineIconItemComponent","i1.RangeLineComponent","i3.CollapsedItemsComponent","i4.VerticalItemsComponent","i2.HorizontalTimelineComponent","i3.VerticalTimelineComponent"],"mappings":"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"}
1
+ {"version":3,"file":"seniorsistemas-angular-components-timeline.mjs","sources":["../../projects/angular-components/timeline/src/lib/timeline/components/timeline-icon-item/timeline-icon-item.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/timeline-icon-item/timeline-icon-item.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/horizontal-timeline/horizontal-timeline.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/horizontal-timeline/horizontal-timeline.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/range-line/range-line.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/range-line/range-line.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/collapse-option/collapse-option.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/collapse-option/collapse-option.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/collapsed-items/collapsed-items.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/collapsed-items/collapsed-items.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/vertical-items/vertical-items.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/vertical-items/vertical-items.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/vertical-timeline.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/vertical-timeline.component.html","../../projects/angular-components/timeline/src/lib/timeline/timeline.component.ts","../../projects/angular-components/timeline/src/lib/timeline/timeline.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/timeline-icon-item/timeline-icon-item.module.ts","../../projects/angular-components/timeline/src/lib/timeline/components/horizontal-timeline/horizontal-timeline.module.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/vertical-timeline.module.ts","../../projects/angular-components/timeline/src/lib/timeline/timeline.module.ts","../../projects/angular-components/timeline/src/lib/timeline/models/timeline-item-severity.ts","../../projects/angular-components/timeline/src/lib/timeline/models/timeline-item-size.ts","../../projects/angular-components/timeline/src/lib/timeline/models/timeline-item.ts","../../projects/angular-components/timeline/src/seniorsistemas-angular-components-timeline.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\n\nimport { TimelineItem } from '../../models/timeline-item';\n\n@Component({\n selector: 's-timeline-icon-item',\n templateUrl: './timeline-icon-item.component.html',\n styleUrls: ['./timeline-icon-item.component.scss'],\n})\nexport class TimelineIconItemComponent {\n @Input({ required: true })\n public item!: TimelineItem;\n\n @Input()\n public isActive?: boolean;\n\n @Input()\n public highlightActive?: boolean;\n\n @Input()\n public isComplete?: boolean;\n}\n","@if (item) {\n <div\n class=\"timeline__icon-item\"\n [ngClass]=\"{\n 'timeline__icon-item--small': item.testSize('small'),\n 'timeline__icon-item--normal': item.testSize('normal'),\n 'timeline__icon-item--warning': item.testSeverity('warning'),\n 'timeline__icon-item--error': item.testSeverity('error'),\n 'timeline__icon-item--completed': isComplete,\n 'timeline__icon-item--active': isActive,\n 'timeline__icon-item--active--highlight':\n isActive && highlightActive,\n }\"\n >\n <div\n class=\"timeline__icon-item__icon\"\n [sTooltip]=\"item.tooltip\"\n [ngStyle]=\"{ backgroundColor: item.color }\"\n >\n @if (item.icon) {\n <span [ngClass]=\"item.icon\"></span>\n } @else {\n <span class=\"timeline__icon-item__icon__label\" [class.large_label]=\"(item.label?.length ?? 0) > 2\">\n {{ item.label }}\n </span>\n }\n </div>\n </div>\n}\n","import { Component, Input } from '@angular/core';\n\nimport { TimelineItem } from '../../models/timeline-item';\n\n@Component({\n selector: 's-horizontal-timeline',\n templateUrl: './horizontal-timeline.component.html',\n styleUrls: ['./horizontal-timeline.component.scss'],\n})\nexport class HorizontalTimelineComponent {\n @Input({ required: true })\n public items!: TimelineItem[];\n\n @Input()\n public activeIndex = 0;\n\n @Input()\n public highlightActiveItem?: boolean;\n}\n","<div class=\"horizontal-timeline\">\n @for (\n item of items;\n track item.id;\n let i = $index;\n let isFirst = $first;\n let isLast = $last\n ) {\n <div\n class=\"horizontal-timeline__item\"\n [ngClass]=\"{\n 'horizontal-timeline__item--small': item.testSize('small'),\n 'horizontal-timeline__item--normal': item.testSize('normal'),\n 'horizontal-timeline__item--warning':\n item.testSeverity('warning'),\n 'horizontal-timeline__item--error': item.testSeverity('error'),\n 'horizontal-timeline__item--completed': i < activeIndex,\n 'horizontal-timeline__item--active': i === activeIndex,\n }\"\n >\n <div class=\"horizontal-timeline__item__icon-wrapper\">\n <div\n class=\"horizontal-timeline__item__icon-wrapper__line horizontal-timeline__item__icon-wrapper__line--before\"\n [ngStyle]=\"{ visibility: isFirst ? 'hidden' : 'visible' }\"\n ></div>\n <s-timeline-icon-item\n [item]=\"item\"\n [isActive]=\"i === activeIndex\"\n [isComplete]=\"i < activeIndex\"\n [highlightActive]=\"highlightActiveItem\"\n >\n </s-timeline-icon-item>\n <div\n class=\"horizontal-timeline__item__icon-wrapper__line horizontal-timeline__item__icon-wrapper__line--after\"\n [ngStyle]=\"{ visibility: isLast ? 'hidden' : 'visible' }\"\n ></div>\n </div>\n <div class=\"horizontal-timeline__item__info\">\n <div\n class=\"horizontal-timeline__item__info__title\"\n [sTooltip]=\"item.title\"\n [showDelay]=\"1000\"\n >\n {{ item.title }}\n </div>\n <div\n class=\"horizontal-timeline__item__info__description\"\n [sTooltip]=\"item.description\"\n [showDelay]=\"1000\"\n >\n {{ item.description }}\n </div>\n </div>\n </div>\n }\n</div>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 's-range-line',\n templateUrl: './range-line.component.html',\n styleUrls: ['./range-line.component.scss'],\n})\nexport class RangeLineComponent {}\n","<div class=\"range-line\">\n <div class=\"range-line__horizontal\"></div>\n <div class=\"range-line__vertical\"></div>\n <div class=\"range-line__horizontal\"></div>\n</div>\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\n\n@Component({\n selector: 's-collapse-option',\n templateUrl: './collapse-option.component.html',\n styleUrls: ['./collapse-option.component.scss'],\n})\nexport class CollapseOptionComponent {\n @Input()\n public isCollapsed = false;\n\n @Output()\n public toggleCollapsed = new EventEmitter<boolean>();\n\n public onClick(): void {\n this.toggleCollapsed.emit(!this.isCollapsed);\n }\n}\n","<div\n class=\"collapse-option\"\n (click)=\"onClick()\"\n>\n <div class=\"collapse-option__icon\">\n <span\n class=\"fas\"\n [ngClass]=\"{\n 'fa-minus': !isCollapsed,\n 'fa-plus': isCollapsed,\n }\"\n >\n </span>\n </div>\n</div>\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\n\nimport { TimelineItem } from '../../../../models/timeline-item';\n\n@Component({\n selector: 's-collapsed-items',\n templateUrl: './collapsed-items.component.html',\n styleUrls: ['./collapsed-items.component.scss'],\n})\nexport class CollapsedItemsComponent {\n @Input({ required: true })\n public items!: TimelineItem[];\n\n @Input()\n public isCollapsed = false;\n\n @Input()\n public isCompleted?: boolean;\n\n @Input()\n public counterLabel?: string;\n\n @Output()\n public isCollapsedChange = new EventEmitter<boolean>();\n\n public onChange(event: boolean): void {\n this.isCollapsed = !this.isCollapsed;\n this.isCollapsedChange.emit(this.isCollapsed);\n }\n}\n","<div class=\"collapsed-items\">\n <div\n class=\"collapsed-items__item\"\n [ngClass]=\"{ 'collapsed-items__item--completed': isCompleted }\"\n >\n <div class=\"collapsed-items__item__icon-wrapper\">\n <s-collapse-option\n [isCollapsed]=\"isCollapsed\"\n (toggleCollapsed)=\"onChange($event)\"\n >\n </s-collapse-option>\n <div class=\"collapsed-items__item__icon-wrapper__line\"></div>\n </div>\n <div\n class=\"collapsed-items__item__info\"\n (click)=\"onChange(!isCollapsed)\"\n >\n <div class=\"collapsed-items__item__info__description\">\n {{ items.length }} {{ counterLabel }}\n </div>\n </div>\n </div>\n</div>\n","import { Component, Input } from '@angular/core';\n\nimport { TimelineItem } from '../../../../models/timeline-item';\n\n@Component({\n selector: 's-vertical-items',\n templateUrl: './vertical-items.component.html',\n styleUrls: ['./vertical-items.component.scss'],\n})\nexport class VerticalItemsComponent {\n @Input({ required: true })\n public items!: TimelineItem[];\n\n @Input()\n public isLast?: boolean;\n\n @Input()\n public isActive?: boolean;\n\n @Input()\n public highlightActive?: boolean;\n\n @Input()\n public isCompleted?: boolean;\n}\n","<div class=\"vertical-items\">\n @for (item of items; track item.id; let index = $index) {\n <div\n class=\"vertical-items__item\"\n [ngClass]=\"{\n 'vertical-items__item--small': item.testSize('small'),\n 'vertical-items__item--normal': item.testSize('normal'),\n 'vertical-items__item--completed': isCompleted,\n 'vertical-items__item--active': isActive,\n }\"\n >\n <div class=\"vertical-items__item__icon-wrapper\">\n <s-timeline-icon-item\n [item]=\"item\"\n [isComplete]=\"isCompleted\"\n [isActive]=\"isActive\"\n [highlightActive]=\"highlightActive\"\n >\n </s-timeline-icon-item>\n <div\n class=\"vertical-items__item__icon-wrapper__line\"\n [ngStyle]=\"{ visibility: isLast ? 'hidden' : 'visible' }\"\n ></div>\n </div>\n <div class=\"vertical-items__item__info\">\n <div class=\"vertical-timeline__item__info__title\">\n {{ item.title }}\n </div>\n <div class=\"vertical-items__item__info__description\">\n {{ item.description }}\n </div>\n </div>\n </div>\n }\n</div>\n","import { Component, Input } from '@angular/core';\n\nimport { TimelineItem } from '../../models/timeline-item';\n\n@Component({\n selector: 's-vertical-timeline',\n templateUrl: './vertical-timeline.component.html',\n styleUrls: ['./vertical-timeline.component.scss'],\n})\nexport class VerticalTimelineComponent {\n public static nextId = 0;\n private _activeIndex = 0;\n public isG1Collapsed = true;\n public isG2Collapsed = true;\n\n public firstItem: TimelineItem[] = [];\n public g1Items: TimelineItem[] = [];\n public activeItem: TimelineItem[] = [];\n public g2Items: TimelineItem[] = [];\n public lastItem: TimelineItem[] = [];\n\n @Input({ required: true })\n public set activeIndex(index: number) {\n this._activeIndex = index;\n this.groupItems();\n }\n\n public get activeIndex() {\n return this._activeIndex;\n }\n\n @Input()\n public highlightActiveItem?: boolean;\n\n @Input({ required: true })\n public items!: TimelineItem[];\n\n @Input()\n public counterLabel?: string;\n\n @Input()\n public collapsable?: boolean;\n\n public onChangeG1(event: boolean) {\n this.isG1Collapsed = event;\n }\n\n public onChangeG2(event: boolean) {\n this.isG2Collapsed = event;\n }\n\n public groupItems() {\n this.firstItem = this.activeIndex <= 0 ? [] : [this.items[0]];\n this.g1Items = this.items.slice(1, this.activeIndex < 0 ? 0 : this.activeIndex);\n this.activeItem = this.activeIndex >= 0 ? [this.items[this.activeIndex]] : [];\n this.g2Items = this.items.slice(this.activeIndex + 1, this.items.length - 1);\n this.lastItem = this.activeIndex === this.items.length - 1 ? [] : [this.items[this.items.length - 1]];\n }\n}\n","<div class=\"vertical-timeline\">\n @if (firstItem.length) {\n <div class=\"vertical-timeline__block\">\n <div class=\"vertical-timeline__block__prefix\"></div>\n <s-vertical-items\n [items]=\"firstItem\"\n [isLast]=\"false\"\n [isActive]=\"false\"\n [isCompleted]=\"true\"\n >\n </s-vertical-items>\n </div>\n }\n\n @if (g1Items.length) {\n <div class=\"vertical-timeline__block\">\n <div class=\"vertical-timeline__block__prefix\">\n @if (g1Items.length > 1 && !isG1Collapsed) {\n @if (collapsable) {\n <s-collapse-option\n [isCollapsed]=\"isG1Collapsed\"\n (toggleCollapsed)=\"onChangeG1($event)\"\n >\n </s-collapse-option>\n }\n <s-range-line\n class=\"vertical-timeline__block__prefix__line\"\n ></s-range-line>\n }\n </div>\n\n @if (isG1Collapsed && g1Items.length > 1 && collapsable) {\n <s-collapsed-items\n [items]=\"g1Items\"\n [(isCollapsed)]=\"isG1Collapsed\"\n [isCompleted]=\"true\"\n [counterLabel]=\"counterLabel\"\n >\n </s-collapsed-items>\n } @else {\n <s-vertical-items\n [items]=\"g1Items\"\n [isLast]=\"false\"\n [isActive]=\"false\"\n [isCompleted]=\"true\"\n >\n </s-vertical-items>\n }\n </div>\n }\n\n @if (activeItem.length) {\n <div class=\"vertical-timeline__block\">\n <div class=\"vertical-timeline__block__prefix\"></div>\n <s-vertical-items\n [items]=\"activeItem\"\n [isLast]=\"!lastItem.length\"\n [isActive]=\"true\"\n [highlightActive]=\"highlightActiveItem\"\n [isCompleted]=\"false\"\n >\n </s-vertical-items>\n </div>\n }\n\n @if (g2Items.length) {\n <div class=\"vertical-timeline__block\">\n <div class=\"vertical-timeline__block__prefix\">\n @if (g2Items.length > 1 && !isG2Collapsed) {\n @if (collapsable) {\n <s-collapse-option\n [isCollapsed]=\"isG2Collapsed\"\n (toggleCollapsed)=\"onChangeG2($event)\"\n >\n </s-collapse-option>\n }\n <s-range-line\n class=\"vertical-timeline__block__prefix__line\"\n ></s-range-line>\n }\n </div>\n\n @if (isG2Collapsed && g2Items.length > 1 && collapsable) {\n <s-collapsed-items\n [items]=\"g2Items\"\n [(isCollapsed)]=\"isG2Collapsed\"\n [isCompleted]=\"false\"\n [counterLabel]=\"counterLabel\"\n >\n </s-collapsed-items>\n } @else {\n <s-vertical-items\n [items]=\"g2Items\"\n [isLast]=\"false\"\n [isActive]=\"false\"\n [isCompleted]=\"false\"\n >\n </s-vertical-items>\n }\n </div>\n }\n\n @if (lastItem.length) {\n <div class=\"vertical-timeline__block\">\n <div class=\"vertical-timeline__block__prefix\"></div>\n <s-vertical-items\n [items]=\"lastItem\"\n [isLast]=\"true\"\n [isActive]=\"false\"\n [isCompleted]=\"false\"\n >\n </s-vertical-items>\n </div>\n }\n</div>\n","import { Component, HostListener, Input, OnInit } from '@angular/core';\n\nimport { TimelineItem } from './models/timeline-item';\n\nconst HORIZONTAL = 'horizontal';\nconst VERTICAL = 'vertical';\nconst MIN_ITEM_SIZE = 200;\n\n/**\n * @description Componente de linha do tempo que renderiza itens de forma horizontal\n * ou vertical (ou autodetectável por largura de tela). Suporta navegação entre\n * etapas, destaque do item ativo e modo colapsável para muitos itens.\n *\n * @example\n * ```html\n * <s-timeline\n * [items]=\"etapas\"\n * [activeIndex]=\"etapaAtiva\"\n * direction=\"horizontal\" />\n * ```\n *\n * @category Structure\n */\n@Component({\n selector: 's-timeline',\n templateUrl: './timeline.component.html',\n})\nexport class TimelineComponent implements OnInit {\n private _innerWidth = 0;\n private _items: TimelineItem[] = [];\n\n public get items(): TimelineItem[] {\n return this._items;\n }\n\n /**\n * @description Lista de itens da linha do tempo. Campo obrigatório.\n * IDs duplicados são rejeitados com exceção.\n */\n @Input({ required: true })\n public set items(items: TimelineItem[]) {\n this._items = items;\n this.checkDuplicateIds();\n }\n\n /** @description Índice ativo (0-based) que define o item em destaque. Campo obrigatório. */\n @Input({ required: true })\n public activeIndex!: number;\n\n /** @description Aplica destaque visual ao item ativo. @default true */\n @Input()\n public highlightActiveItem = true;\n\n /** @description Direção de renderização: `'horizontal'` ou `'vertical'`. @default 'horizontal' */\n @Input()\n public direction: typeof HORIZONTAL | typeof VERTICAL = HORIZONTAL;\n\n /** @description Habilita o modo colapsável quando há muitos itens. @default true */\n @Input()\n public collapsable = true;\n\n /** @description Rótulo exibido no contador de itens colapsados. @default 'items' */\n @Input()\n public counterLabel = 'items';\n\n public ngOnInit(): void {\n this._innerWidth = window.innerWidth;\n }\n\n @HostListener('window:resize', ['$event'])\n public onResize(_: any): void {\n this._innerWidth = window.innerWidth;\n }\n\n public changeToVertical(): boolean {\n return this.direction === VERTICAL || this._innerWidth / this.items.length < MIN_ITEM_SIZE;\n }\n\n public checkDuplicateIds(): void {\n const ids = this.items.map((item) => {\n return item.id;\n });\n\n if (new Set(ids).size !== ids.length) {\n throw new Error('A duplicate id was found in the items list');\n }\n }\n}\n\n","<div>\n @if (changeToVertical()) {\n <s-vertical-timeline\n *ngIf=\"items?.length\"\n [items]=\"items\"\n [activeIndex]=\"activeIndex\"\n [highlightActiveItem]=\"highlightActiveItem\"\n [counterLabel]=\"counterLabel\"\n [collapsable]=\"collapsable\"\n [highlightActiveItem]=\"highlightActiveItem\"\n >\n </s-vertical-timeline>\n } @else {\n <s-horizontal-timeline\n *ngIf=\"items?.length\"\n [items]=\"items\"\n [activeIndex]=\"activeIndex\"\n [highlightActiveItem]=\"highlightActiveItem\"\n >\n </s-horizontal-timeline>\n }\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TooltipModule } from '@seniorsistemas/angular-components/tooltip';\n\nimport { TimelineIconItemComponent } from './timeline-icon-item.component';\n\n@NgModule({\n imports: [CommonModule, TooltipModule],\n declarations: [TimelineIconItemComponent],\n exports: [TimelineIconItemComponent],\n})\nexport class TimelineItemModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TooltipModule } from '@seniorsistemas/angular-components/tooltip';\n\nimport { TimelineItemModule } from '../timeline-icon-item/timeline-icon-item.module';\nimport { HorizontalTimelineComponent } from './horizontal-timeline.component';\n\n@NgModule({\n imports: [CommonModule, TooltipModule, TimelineItemModule],\n declarations: [HorizontalTimelineComponent],\n exports: [HorizontalTimelineComponent],\n})\nexport class HorizontalTimelineModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TimelineItemModule } from '../timeline-icon-item/timeline-icon-item.module';\nimport { VerticalTimelineComponent } from './vertical-timeline.component';\nimport { RangeLineComponent } from './components/range-line/range-line.component';\nimport { CollapseOptionComponent } from './components/collapse-option/collapse-option.component';\nimport { CollapsedItemsComponent } from './components/collapsed-items/collapsed-items.component';\nimport { VerticalItemsComponent } from './components/vertical-items/vertical-items.component';\n\n@NgModule({\n imports: [CommonModule, TimelineItemModule],\n declarations: [\n VerticalTimelineComponent,\n RangeLineComponent,\n CollapseOptionComponent,\n CollapsedItemsComponent,\n VerticalItemsComponent,\n ],\n exports: [VerticalTimelineComponent],\n})\nexport class VerticalTimelineModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TimelineComponent } from './timeline.component';\nimport { TimelineItemModule } from './components/timeline-icon-item/timeline-icon-item.module';\nimport { HorizontalTimelineModule } from './components/horizontal-timeline/horizontal-timeline.module';\nimport { VerticalTimelineModule } from './components/vertical-timeline/vertical-timeline.module';\n\n@NgModule({\n imports: [\n CommonModule,\n TimelineItemModule,\n HorizontalTimelineModule,\n VerticalTimelineModule,\n ],\n declarations: [TimelineComponent],\n exports: [TimelineComponent],\n})\nexport class TimelineModule {}\n","export enum TimelineItemSeverity {\n Normal = 'normal',\n Warning = 'warning',\n Error = 'error',\n}\n","export enum TimelineItemSize {\n Normal = 'normal',\n Small = 'small',\n}\n","import { TimelineItemSeverity } from './timeline-item-severity';\nimport { TimelineItemSize } from './timeline-item-size';\n\nconst LABEL_MAX_LENGTH = 3;\n\nexport class TimelineItem {\n public id: string;\n public title: string;\n public description: string;\n public icon?: string;\n public label?: string;\n public tooltip?: string;\n public size: TimelineItemSize;\n public severity: TimelineItemSeverity;\n public color?: string;\n\n constructor(params: {\n id: string;\n title: string;\n description: string;\n icon?: string;\n label?: string;\n size?: TimelineItemSize;\n severity?: TimelineItemSeverity;\n tooltip?: string;\n color?: string;\n }) {\n this.id = params.id;\n this.title = params.title;\n this.description = params.description;\n this.icon = params.icon;\n this.label = params.label;\n this.tooltip = params.tooltip;\n this.size = params.size || TimelineItemSize.Normal;\n this.severity = params.severity || TimelineItemSeverity.Normal;\n this.color = params.color;\n\n this.checkItemIconContent();\n }\n\n public checkItemIconContent() {\n if (!this.icon && !this.label) {\n throw new Error(\n 'No icon or label string was passed for the item. Enter an icon or label text',\n );\n }\n\n if (this.icon && this.label) {\n throw new Error(\n 'An icon and label string were passed to the item. Enter an icon or label text',\n );\n }\n\n if (this.label && this.label.length > LABEL_MAX_LENGTH) {\n throw new Error(\n 'Label text is expected to be a maximum of three characters long',\n );\n }\n }\n\n public testSize(value: string) {\n return this.size.valueOf() === value;\n }\n\n public testSeverity(value: string) {\n return this.severity?.valueOf() === value;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.TimelineIconItemComponent","i2.CollapseOptionComponent","i2.TimelineIconItemComponent","i1.RangeLineComponent","i3.CollapsedItemsComponent","i4.VerticalItemsComponent","i2.HorizontalTimelineComponent","i3.VerticalTimelineComponent"],"mappings":"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"}
@@ -3,8 +3,28 @@ import { EventEmitter, Component, Input, Output, HostBinding, NgModule, Injectab
3
3
  import { CommonModule } from '@angular/common';
4
4
  import { first } from 'rxjs/operators';
5
5
 
6
+ /**
7
+ * @description Componente individual de notificação (toast) que exibe uma mensagem temporária na tela.
8
+ * Gerencia automaticamente o timer de dismiss quando `toast.sticky` é `false`.
9
+ * Recomenda-se utilizar o `ToastService` para criar e empilhar toasts na aplicação.
10
+ *
11
+ * @example
12
+ * ```html
13
+ * <s-toast [toast]="toastData" (dismiss)="onDismiss()" />
14
+ * ```
15
+ *
16
+ * @category Feedback
17
+ */
6
18
  class ToastComponent {
19
+ /**
20
+ * @description Objeto com os dados da notificação a ser exibida.
21
+ * Inclui propriedades como `severity`, `summary`, `detail`, `duration` e `sticky`.
22
+ */
7
23
  toast;
24
+ /**
25
+ * @description Emitido quando a notificação é descartada, seja pelo timer automático
26
+ * (ao expirar `toast.duration`) ou pela ação manual do usuário.
27
+ */
8
28
  dismiss = new EventEmitter();
9
29
  isLeaving = false;
10
30
  timer = null;
@@ -37,14 +57,14 @@ class ToastComponent {
37
57
  }
38
58
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ToastComponent, decorators: [{
39
59
  type: Component,
40
- args: [{ selector: "s-toast", template: "<div\n class=\"toast\"\n [class.toast--info]=\"toast.severity === 'info'\"\n [class.toast--success]=\"toast.severity === 'success'\"\n [class.toast--warning]=\"toast.severity === 'warning'\"\n [class.toast--error]=\"toast.severity === 'error'\"\n>\n <div class=\"toast-content\">\n <i\n class=\"toast-icon fas fa-info\"\n [class.fa-info]=\"toast.severity === 'info'\"\n [class.fa-check]=\"toast.severity === 'success'\"\n [class.fa-exclamation-triangle]=\"toast.severity === 'warning'\"\n [class.fa-times]=\"toast.severity === 'error'\"\n ></i>\n <div class=\"text-container\">\n @if(toast.title) {\n <span class=\"toast-summary\" [innerHTML]=\"toast.title\"></span>\n }\n @if(toast.text) {\n <span [innerHTML]=\"toast.text\"></span>\n }\n </div>\n </div>\n @if(toast.closable) {\n <button class=\"toast-close-button\" (click)=\"dismissToast()\"><i class=\"fas fa-times\"></i></button>\n }\n</div>\n", styles: [":host{display:block}.toast{align-items:center;animation:fadeInDown .3s forwards;border-left:3px solid #428bca;border-radius:3px;box-shadow:0 1px 5px #00000040;color:#212533;display:flex;font-family:\"Open Sans\" sans-serif;font-size:14px;opacity:0;padding:10px 15px;position:relative;transform:translateY(-20px);width:400px}.toast .toast-content{align-items:center;flex-grow:1;display:flex;gap:15px}.toast .toast-content .toast-icon{align-items:center;background-color:#428bca;border-radius:50%;color:#fff;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.toast .toast-content .text-container{display:flex;flex-direction:column}.toast .toast-content .text-container .toast-summary{font-weight:700}.toast--success{background-color:#e0f0f0;border-left:3px solid #0c9348}.toast--success .toast-content .toast-icon{background-color:#0c9348}.toast--error{background-color:#fef0f0;border-left:3px solid #c13018}.toast--error .toast-content .toast-icon{background-color:#c13018}.toast--info{background-color:#f1f7f8;border-left:3px solid #428bca}.toast--info .toast-content .toast-icon{background-color:#428bca}.toast--warning{background-color:#fef4e3;border-left:3px solid #fcbf10}.toast--warning .toast-content .toast-icon{background-color:#fcbf10;color:#212533}.toast-close-button{background:none;border:none;color:#212533;font-size:1rem;cursor:pointer;margin-left:15px;transition:transform .2s ease-in-out}.toast-close-button:hover{transform:scale(1.1)}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOutUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}:host.toast--leaving{animation:fadeOutUp .3s forwards}@media (max-width: 440px){.toast{width:calc(100% - 40px)}}\n"] }]
60
+ args: [{ selector: 's-toast', template: "<div\n class=\"toast\"\n [class.toast--info]=\"toast.severity === 'info'\"\n [class.toast--success]=\"toast.severity === 'success'\"\n [class.toast--warning]=\"toast.severity === 'warning'\"\n [class.toast--error]=\"toast.severity === 'error'\"\n>\n <div class=\"toast-content\">\n <i\n class=\"toast-icon fas fa-info\"\n [class.fa-info]=\"toast.severity === 'info'\"\n [class.fa-check]=\"toast.severity === 'success'\"\n [class.fa-exclamation-triangle]=\"toast.severity === 'warning'\"\n [class.fa-times]=\"toast.severity === 'error'\"\n ></i>\n <div class=\"text-container\">\n @if(toast.title) {\n <span class=\"toast-summary\" [innerHTML]=\"toast.title\"></span>\n }\n @if(toast.text) {\n <span [innerHTML]=\"toast.text\"></span>\n }\n </div>\n </div>\n @if(toast.closable) {\n <button class=\"toast-close-button\" (click)=\"dismissToast()\"><i class=\"fas fa-times\"></i></button>\n }\n</div>\n", styles: [":host{display:block}.toast{align-items:center;animation:fadeInDown .3s forwards;border-left:3px solid #428bca;border-radius:3px;box-shadow:0 1px 5px #00000040;color:#212533;display:flex;font-family:\"Open Sans\" sans-serif;font-size:14px;opacity:0;padding:10px 15px;position:relative;transform:translateY(-20px);width:400px}.toast .toast-content{align-items:center;flex-grow:1;display:flex;gap:15px}.toast .toast-content .toast-icon{align-items:center;background-color:#428bca;border-radius:50%;color:#fff;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.toast .toast-content .text-container{display:flex;flex-direction:column}.toast .toast-content .text-container .toast-summary{font-weight:700}.toast--success{background-color:#e0f0f0;border-left:3px solid #0c9348}.toast--success .toast-content .toast-icon{background-color:#0c9348}.toast--error{background-color:#fef0f0;border-left:3px solid #c13018}.toast--error .toast-content .toast-icon{background-color:#c13018}.toast--info{background-color:#f1f7f8;border-left:3px solid #428bca}.toast--info .toast-content .toast-icon{background-color:#428bca}.toast--warning{background-color:#fef4e3;border-left:3px solid #fcbf10}.toast--warning .toast-content .toast-icon{background-color:#fcbf10;color:#212533}.toast-close-button{background:none;border:none;color:#212533;font-size:1rem;cursor:pointer;margin-left:15px;transition:transform .2s ease-in-out}.toast-close-button:hover{transform:scale(1.1)}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOutUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}:host.toast--leaving{animation:fadeOutUp .3s forwards}@media (max-width: 440px){.toast{width:calc(100% - 40px)}}\n"] }]
41
61
  }], propDecorators: { toast: [{
42
62
  type: Input
43
63
  }], dismiss: [{
44
64
  type: Output
45
65
  }], isLeaving: [{
46
66
  type: HostBinding,
47
- args: ["class.toast--leaving"]
67
+ args: ['class.toast--leaving']
48
68
  }] } });
49
69
 
50
70
  class ToastModule {
@@ -1 +1 @@
1
- {"version":3,"file":"seniorsistemas-angular-components-toast.mjs","sources":["../../projects/angular-components/toast/src/lib/toast/toast.component.ts","../../projects/angular-components/toast/src/lib/toast/toast.component.html","../../projects/angular-components/toast/src/lib/toast/toast.module.ts","../../projects/angular-components/toast/src/lib/toast/toast.service.ts","../../projects/angular-components/toast/src/seniorsistemas-angular-components-toast.ts"],"sourcesContent":["import { Component, Input, Output, EventEmitter, HostBinding, OnDestroy, OnInit } from \"@angular/core\"; // Adicionado HostBinding, OnDestroy\nimport { Toast } from \"./types/toast\";\n\n@Component({\n selector: \"s-toast\",\n templateUrl: \"./toast.component.html\",\n styleUrls: [\"./toast.component.scss\"],\n})\nexport class ToastComponent implements OnInit, OnDestroy {\n @Input()\n public toast!: Toast;\n\n @Output()\n public dismiss = new EventEmitter<void>();\n\n @HostBinding(\"class.toast--leaving\")\n public isLeaving = false;\n\n private timer: ReturnType<typeof setTimeout> | null = null;\n\n public ngOnInit(): void {\n if (!this.toast.sticky && this.toast.duration) {\n this.timer = setTimeout(() => {\n this.startDismissAnimation();\n }, this.toast.duration);\n }\n }\n\n public ngOnDestroy(): void {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n }\n\n public startDismissAnimation(): void {\n this.isLeaving = true;\n\n setTimeout(() => {\n this.dismiss.emit();\n }, 300);\n }\n\n public dismissToast(): void {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n this.startDismissAnimation();\n }\n}\n","<div\n class=\"toast\"\n [class.toast--info]=\"toast.severity === 'info'\"\n [class.toast--success]=\"toast.severity === 'success'\"\n [class.toast--warning]=\"toast.severity === 'warning'\"\n [class.toast--error]=\"toast.severity === 'error'\"\n>\n <div class=\"toast-content\">\n <i\n class=\"toast-icon fas fa-info\"\n [class.fa-info]=\"toast.severity === 'info'\"\n [class.fa-check]=\"toast.severity === 'success'\"\n [class.fa-exclamation-triangle]=\"toast.severity === 'warning'\"\n [class.fa-times]=\"toast.severity === 'error'\"\n ></i>\n <div class=\"text-container\">\n @if(toast.title) {\n <span class=\"toast-summary\" [innerHTML]=\"toast.title\"></span>\n }\n @if(toast.text) {\n <span [innerHTML]=\"toast.text\"></span>\n }\n </div>\n </div>\n @if(toast.closable) {\n <button class=\"toast-close-button\" (click)=\"dismissToast()\"><i class=\"fas fa-times\"></i></button>\n }\n</div>\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { ToastComponent } from \"./toast.component\";\n\n@NgModule({\n imports: [CommonModule],\n declarations: [ToastComponent],\n})\nexport class ToastModule {}\n","import { Injectable, ComponentRef, ApplicationRef, Injector, EmbeddedViewRef, ComponentFactoryResolver } from \"@angular/core\";\n\nimport { ToastComponent } from \"./toast.component\";\nimport { Toast } from \"./types/toast\";\nimport { first } from \"rxjs/operators\";\n\n@Injectable({\n providedIn: \"root\",\n})\nexport class ToastService {\n private activeToasts: ComponentRef<ToastComponent>[] = [];\n private globalToastHostElement: HTMLElement | null = null;\n\n constructor(\n private appRef: ApplicationRef,\n private injector: Injector,\n private componentFactoryResolver: ComponentFactoryResolver\n ) { }\n\n private ensureGlobalToastHost(): void {\n if (!this.globalToastHostElement) {\n this.globalToastHostElement = document.createElement(\"div\");\n document.body.appendChild(this.globalToastHostElement);\n\n this.globalToastHostElement.style.display = \"flex\";\n this.globalToastHostElement.style.flexDirection = \"column\";\n this.globalToastHostElement.style.position = \"fixed\";\n this.globalToastHostElement.style.right = \"20px\";\n this.globalToastHostElement.style.top = \"20px\";\n this.globalToastHostElement.style.zIndex = \"99999\";\n this.globalToastHostElement.style.gap = \"10px\";\n }\n }\n\n public show(toast: Toast): void {\n this.ensureGlobalToastHost();\n\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(ToastComponent);\n const componentRef = componentFactory.create(this.injector);\n\n this.appRef.attachView(componentRef.hostView);\n\n if (!toast.sticky) {\n toast.duration = toast.duration ?? 10000;\n }\n\n componentRef.instance.toast = {\n closable: true,\n ...toast,\n };\n\n const domElem = (componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0] as HTMLElement;\n this.globalToastHostElement!.appendChild(domElem);\n domElem.style.display = \"flex\";\n domElem.style.justifyContent = \"center\";\n\n componentRef.instance.dismiss.pipe(first()).subscribe(() => {\n const index = this.activeToasts.indexOf(componentRef);\n\n if (index !== -1) {\n this.appRef.detachView(componentRef.hostView);\n componentRef.destroy();\n this.activeToasts.splice(index, 1);\n }\n\n if (this.activeToasts.length === 0 && this.globalToastHostElement) {\n this.globalToastHostElement.remove();\n this.globalToastHostElement = null;\n }\n });\n\n this.activeToasts.push(componentRef);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"seniorsistemas-angular-components-toast.mjs","sources":["../../projects/angular-components/toast/src/lib/toast/toast.component.ts","../../projects/angular-components/toast/src/lib/toast/toast.component.html","../../projects/angular-components/toast/src/lib/toast/toast.module.ts","../../projects/angular-components/toast/src/lib/toast/toast.service.ts","../../projects/angular-components/toast/src/seniorsistemas-angular-components-toast.ts"],"sourcesContent":["import { Component, Input, Output, EventEmitter, HostBinding, OnDestroy, OnInit } from '@angular/core'; // Adicionado HostBinding, OnDestroy\nimport { Toast } from './types/toast';\n\n/**\n * @description Componente individual de notificação (toast) que exibe uma mensagem temporária na tela.\n * Gerencia automaticamente o timer de dismiss quando `toast.sticky` é `false`.\n * Recomenda-se utilizar o `ToastService` para criar e empilhar toasts na aplicação.\n *\n * @example\n * ```html\n * <s-toast [toast]=\"toastData\" (dismiss)=\"onDismiss()\" />\n * ```\n *\n * @category Feedback\n */\n@Component({\n selector: 's-toast',\n templateUrl: './toast.component.html',\n styleUrls: ['./toast.component.scss'],\n})\nexport class ToastComponent implements OnInit, OnDestroy {\n /**\n * @description Objeto com os dados da notificação a ser exibida.\n * Inclui propriedades como `severity`, `summary`, `detail`, `duration` e `sticky`.\n */\n @Input()\n public toast!: Toast;\n\n /**\n * @description Emitido quando a notificação é descartada, seja pelo timer automático\n * (ao expirar `toast.duration`) ou pela ação manual do usuário.\n */\n @Output()\n public dismiss = new EventEmitter<void>();\n\n @HostBinding('class.toast--leaving')\n public isLeaving = false;\n\n private timer: ReturnType<typeof setTimeout> | null = null;\n\n public ngOnInit(): void {\n if (!this.toast.sticky && this.toast.duration) {\n this.timer = setTimeout(() => {\n this.startDismissAnimation();\n }, this.toast.duration);\n }\n }\n\n public ngOnDestroy(): void {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n }\n\n public startDismissAnimation(): void {\n this.isLeaving = true;\n\n setTimeout(() => {\n this.dismiss.emit();\n }, 300);\n }\n\n public dismissToast(): void {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n this.startDismissAnimation();\n }\n}\n\n","<div\n class=\"toast\"\n [class.toast--info]=\"toast.severity === 'info'\"\n [class.toast--success]=\"toast.severity === 'success'\"\n [class.toast--warning]=\"toast.severity === 'warning'\"\n [class.toast--error]=\"toast.severity === 'error'\"\n>\n <div class=\"toast-content\">\n <i\n class=\"toast-icon fas fa-info\"\n [class.fa-info]=\"toast.severity === 'info'\"\n [class.fa-check]=\"toast.severity === 'success'\"\n [class.fa-exclamation-triangle]=\"toast.severity === 'warning'\"\n [class.fa-times]=\"toast.severity === 'error'\"\n ></i>\n <div class=\"text-container\">\n @if(toast.title) {\n <span class=\"toast-summary\" [innerHTML]=\"toast.title\"></span>\n }\n @if(toast.text) {\n <span [innerHTML]=\"toast.text\"></span>\n }\n </div>\n </div>\n @if(toast.closable) {\n <button class=\"toast-close-button\" (click)=\"dismissToast()\"><i class=\"fas fa-times\"></i></button>\n }\n</div>\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { ToastComponent } from \"./toast.component\";\n\n@NgModule({\n imports: [CommonModule],\n declarations: [ToastComponent],\n})\nexport class ToastModule {}\n","import { Injectable, ComponentRef, ApplicationRef, Injector, EmbeddedViewRef, ComponentFactoryResolver } from \"@angular/core\";\n\nimport { ToastComponent } from \"./toast.component\";\nimport { Toast } from \"./types/toast\";\nimport { first } from \"rxjs/operators\";\n\n@Injectable({\n providedIn: \"root\",\n})\nexport class ToastService {\n private activeToasts: ComponentRef<ToastComponent>[] = [];\n private globalToastHostElement: HTMLElement | null = null;\n\n constructor(\n private appRef: ApplicationRef,\n private injector: Injector,\n private componentFactoryResolver: ComponentFactoryResolver\n ) { }\n\n private ensureGlobalToastHost(): void {\n if (!this.globalToastHostElement) {\n this.globalToastHostElement = document.createElement(\"div\");\n document.body.appendChild(this.globalToastHostElement);\n\n this.globalToastHostElement.style.display = \"flex\";\n this.globalToastHostElement.style.flexDirection = \"column\";\n this.globalToastHostElement.style.position = \"fixed\";\n this.globalToastHostElement.style.right = \"20px\";\n this.globalToastHostElement.style.top = \"20px\";\n this.globalToastHostElement.style.zIndex = \"99999\";\n this.globalToastHostElement.style.gap = \"10px\";\n }\n }\n\n public show(toast: Toast): void {\n this.ensureGlobalToastHost();\n\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(ToastComponent);\n const componentRef = componentFactory.create(this.injector);\n\n this.appRef.attachView(componentRef.hostView);\n\n if (!toast.sticky) {\n toast.duration = toast.duration ?? 10000;\n }\n\n componentRef.instance.toast = {\n closable: true,\n ...toast,\n };\n\n const domElem = (componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0] as HTMLElement;\n this.globalToastHostElement!.appendChild(domElem);\n domElem.style.display = \"flex\";\n domElem.style.justifyContent = \"center\";\n\n componentRef.instance.dismiss.pipe(first()).subscribe(() => {\n const index = this.activeToasts.indexOf(componentRef);\n\n if (index !== -1) {\n this.appRef.detachView(componentRef.hostView);\n componentRef.destroy();\n this.activeToasts.splice(index, 1);\n }\n\n if (this.activeToasts.length === 0 && this.globalToastHostElement) {\n this.globalToastHostElement.remove();\n this.globalToastHostElement = null;\n }\n });\n\n this.activeToasts.push(componentRef);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -3,13 +3,34 @@ import { EventEmitter, Component, Input, Output, NgModule } from '@angular/core'
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
 
6
+ /**
7
+ * @description Componente de lista de tokens (etiquetas) clicáveis e opcionalmente
8
+ * removíveis. Emite eventos ao selecionar ou remover um token.
9
+ *
10
+ * @example
11
+ * ```html
12
+ * <s-token-list
13
+ * [tokens]="listaDeTokens"
14
+ * [removableTokens]="true"
15
+ * (tokenSelected)="onTokenSelecionado($event)"
16
+ * (tokenRemoved)="onTokenRemovido($event)" />
17
+ * ```
18
+ *
19
+ * @category Summary
20
+ */
6
21
  class TokenListComponent {
7
22
  static nextId = 0;
23
+ /** @description Identificador único do componente no DOM. Gerado automaticamente se não informado. */
8
24
  id = `s-token-list-${TokenListComponent.nextId++}`;
25
+ /** @description Lista de tokens exibidos. Campo obrigatório. */
9
26
  tokens;
27
+ /** @description Exibe o botão de remoção em cada token. @default false */
10
28
  removableTokens = false;
29
+ /** @description Quando `true`, remove os eventos de ponteiro (hover/clique) dos tokens. @default false */
11
30
  hidePointerEvents = false;
31
+ /** @description Emitido quando o usuário clica em um token não desabilitado. */
12
32
  tokenSelected = new EventEmitter();
33
+ /** @description Emitido quando o usuário remove um token não desabilitado. */
13
34
  tokenRemoved = new EventEmitter();
14
35
  onTokenSelected(token) {
15
36
  if (!token.disabled) {
@@ -1 +1 @@
1
- {"version":3,"file":"seniorsistemas-angular-components-token-list.mjs","sources":["../../projects/angular-components/token-list/src/lib/token-list/token-list.component.ts","../../projects/angular-components/token-list/src/lib/token-list/token-list.component.html","../../projects/angular-components/token-list/src/lib/token-list/token-list.module.ts","../../projects/angular-components/token-list/src/seniorsistemas-angular-components-token-list.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\n\nimport { IToken } from './models/token';\n\n@Component({\n selector: 's-token-list',\n templateUrl: './token-list.component.html',\n styleUrls: ['./token-list.component.scss'],\n})\nexport class TokenListComponent {\n public static nextId = 0;\n\n @Input()\n public id = `s-token-list-${TokenListComponent.nextId++}`;\n\n @Input({ required: true })\n public tokens!: IToken[];\n\n @Input()\n public removableTokens = false;\n\n @Input()\n public hidePointerEvents = false;\n\n @Output()\n public tokenSelected: EventEmitter<IToken> = new EventEmitter();\n\n @Output()\n public tokenRemoved: EventEmitter<IToken> = new EventEmitter();\n\n public onTokenSelected(token: IToken): void {\n if (!token.disabled) {\n this.tokenSelected.next(token);\n }\n }\n\n public onTokenRemoved(token: IToken): void {\n if (!token.disabled) {\n this.tokenRemoved.next(token);\n }\n }\n}\n","<div\n [id]=\"id\"\n class=\"token-list\"\n>\n @for (token of tokens; track $index) {\n <span\n [id]=\"token.id\"\n class=\"token\"\n [ngClass]=\"{\n 'no-pointer-events': hidePointerEvents,\n 'token--disabled': token.disabled,\n }\"\n >\n <a\n [id]=\"(token.id || 'token') + '-label'\"\n class=\"token-label\"\n (click)=\"onTokenSelected(token)\"\n >\n {{ token.label }}\n </a>\n @if (removableTokens && !token.notRemovable) {\n <span\n [id]=\"token.id + '-remove'\"\n class=\"far fa-times\"\n (click)=\"onTokenRemoved(token)\"\n >\n </span>\n }\n </span>\n }\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TokenListComponent } from './token-list.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [TokenListComponent],\n exports: [TokenListComponent],\n})\nexport class TokenListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;MASa,kBAAkB,CAAA;AACpB,IAAA,OAAO,MAAM,GAAG,CAAC,CAAC;AAGlB,IAAA,EAAE,GAAG,CAAgB,aAAA,EAAA,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC;AAGnD,IAAA,MAAM,CAAY;IAGlB,eAAe,GAAG,KAAK,CAAC;IAGxB,iBAAiB,GAAG,KAAK,CAAC;AAG1B,IAAA,aAAa,GAAyB,IAAI,YAAY,EAAE,CAAC;AAGzD,IAAA,YAAY,GAAyB,IAAI,YAAY,EAAE,CAAC;AAExD,IAAA,eAAe,CAAC,KAAa,EAAA;AAChC,QAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;AACjB,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAClC;KACJ;AAEM,IAAA,cAAc,CAAC,KAAa,EAAA;AAC/B,QAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;AACjB,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACjC;KACJ;wGA/BQ,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,mPCT/B,+3BA+BA,EAAA,MAAA,EAAA,CAAA,qxBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FDtBa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAL9B,SAAS;+BACI,cAAc,EAAA,QAAA,EAAA,+3BAAA,EAAA,MAAA,EAAA,CAAA,qxBAAA,CAAA,EAAA,CAAA;8BAQjB,EAAE,EAAA,CAAA;sBADR,KAAK;gBAIC,MAAM,EAAA,CAAA;sBADZ,KAAK;uBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;gBAIlB,eAAe,EAAA,CAAA;sBADrB,KAAK;gBAIC,iBAAiB,EAAA,CAAA;sBADvB,KAAK;gBAIC,aAAa,EAAA,CAAA;sBADnB,MAAM;gBAIA,YAAY,EAAA,CAAA;sBADlB,MAAM;;;MEjBE,eAAe,CAAA;wGAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EAHT,YAAA,EAAA,CAAA,kBAAkB,CADvB,EAAA,OAAA,EAAA,CAAA,YAAY,aAEZ,kBAAkB,CAAA,EAAA,CAAA,CAAA;AAEnB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,YAJd,YAAY,CAAA,EAAA,CAAA,CAAA;;4FAIb,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACN,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,kBAAkB,CAAC;oBAClC,OAAO,EAAE,CAAC,kBAAkB,CAAC;AAChC,iBAAA,CAAA;;;ACTD;;AAEG;;;;"}
1
+ {"version":3,"file":"seniorsistemas-angular-components-token-list.mjs","sources":["../../projects/angular-components/token-list/src/lib/token-list/token-list.component.ts","../../projects/angular-components/token-list/src/lib/token-list/token-list.component.html","../../projects/angular-components/token-list/src/lib/token-list/token-list.module.ts","../../projects/angular-components/token-list/src/seniorsistemas-angular-components-token-list.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\n\nimport { IToken } from './models/token';\n\n/**\n * @description Componente de lista de tokens (etiquetas) clicáveis e opcionalmente\n * removíveis. Emite eventos ao selecionar ou remover um token.\n *\n * @example\n * ```html\n * <s-token-list\n * [tokens]=\"listaDeTokens\"\n * [removableTokens]=\"true\"\n * (tokenSelected)=\"onTokenSelecionado($event)\"\n * (tokenRemoved)=\"onTokenRemovido($event)\" />\n * ```\n *\n * @category Summary\n */\n@Component({\n selector: 's-token-list',\n templateUrl: './token-list.component.html',\n styleUrls: ['./token-list.component.scss'],\n})\nexport class TokenListComponent {\n public static nextId = 0;\n\n /** @description Identificador único do componente no DOM. Gerado automaticamente se não informado. */\n @Input()\n public id = `s-token-list-${TokenListComponent.nextId++}`;\n\n /** @description Lista de tokens exibidos. Campo obrigatório. */\n @Input({ required: true })\n public tokens!: IToken[];\n\n /** @description Exibe o botão de remoção em cada token. @default false */\n @Input()\n public removableTokens = false;\n\n /** @description Quando `true`, remove os eventos de ponteiro (hover/clique) dos tokens. @default false */\n @Input()\n public hidePointerEvents = false;\n\n /** @description Emitido quando o usuário clica em um token não desabilitado. */\n @Output()\n public tokenSelected: EventEmitter<IToken> = new EventEmitter();\n\n /** @description Emitido quando o usuário remove um token não desabilitado. */\n @Output()\n public tokenRemoved: EventEmitter<IToken> = new EventEmitter();\n\n public onTokenSelected(token: IToken): void {\n if (!token.disabled) {\n this.tokenSelected.next(token);\n }\n }\n\n public onTokenRemoved(token: IToken): void {\n if (!token.disabled) {\n this.tokenRemoved.next(token);\n }\n }\n}\n\n","<div\n [id]=\"id\"\n class=\"token-list\"\n>\n @for (token of tokens; track $index) {\n <span\n [id]=\"token.id\"\n class=\"token\"\n [ngClass]=\"{\n 'no-pointer-events': hidePointerEvents,\n 'token--disabled': token.disabled,\n }\"\n >\n <a\n [id]=\"(token.id || 'token') + '-label'\"\n class=\"token-label\"\n (click)=\"onTokenSelected(token)\"\n >\n {{ token.label }}\n </a>\n @if (removableTokens && !token.notRemovable) {\n <span\n [id]=\"token.id + '-remove'\"\n class=\"far fa-times\"\n (click)=\"onTokenRemoved(token)\"\n >\n </span>\n }\n </span>\n }\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TokenListComponent } from './token-list.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [TokenListComponent],\n exports: [TokenListComponent],\n})\nexport class TokenListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -20,21 +20,86 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
20
20
  args: [{ template: "<div\n id=\"tooltip\"\n class=\"tooltip\"\n [ngClass]=\"['tooltip--' + position]\"\n [class.tooltip--visible]=\"visible\"\n [ngStyle]=\"{\n left: left + 'px',\n top: top + 'px',\n }\"\n>\n @if (escape) {\n <span class=\"tooltip__content\">\n {{ tooltip }}\n </span>\n } @else {\n <span\n class=\"tooltip__content\"\n [innerHTML]=\"tooltip\"\n >\n </span>\n }\n</div>\n", styles: [".tooltip{background-color:#000;border-radius:2px;color:#fff;font-family:Open Sans,sans-serif;font-size:14px;font-weight:400;line-height:21px;opacity:0;padding:8px;position:fixed;transform:translate(-50%);text-align:center;max-width:220px;word-wrap:break-word;z-index:99999;position:absolute}.tooltip--visible{opacity:1;transition:opacity .3s}.tooltip:before{content:\"\";height:0;position:absolute;width:0}.tooltip--bottom{margin-top:5px;transform:translate(-50%)}.tooltip--bottom:before{border:5px solid transparent;border-bottom:5px solid black;left:calc(50% - 5px);top:-10px}.tooltip--top{margin-bottom:5px;transform:translate(-50%,-100%)}.tooltip--top:before{border:5px solid transparent;border-top:5px solid black;left:calc(50% - 5px);bottom:-10px}.tooltip--left{margin-right:28px;transform:translate(calc(-100% - 7px),-50%)}.tooltip--left:before{border:5px solid transparent;border-left:5px solid black;right:-10px;bottom:calc(50% - 5px)}.tooltip--right{margin-left:7px;transform:translateY(-50%)}.tooltip--right:before{border:5px solid transparent;border-right:5px solid black;left:-10px;bottom:calc(50% - 5px)}\n"] }]
21
21
  }] });
22
22
 
23
+ /**
24
+ * @description Diretiva que exibe um tooltip (dica de ferramenta) flutuante ao interagir com o elemento hospedeiro.
25
+ * Posiciona-se automaticamente considerando o espaço disponível na tela.
26
+ * Suporta eventos de hover, click e focus, além de comportamentos customizados para mobile.
27
+ *
28
+ * @example
29
+ * ```html
30
+ * <button sTooltip="Clique aqui" tooltipPosition="top">Ação</button>
31
+ * ```
32
+ *
33
+ * @category Overlay
34
+ */
23
35
  class TooltipDirective {
24
36
  elementRef;
25
37
  appRef;
26
38
  debounceUtils;
27
39
  renderer;
28
40
  viewContainerRef;
41
+ /**
42
+ * @description Texto exibido no tooltip. Quando vazio ou `undefined`, o tooltip não é renderizado.
43
+ */
29
44
  tooltip;
45
+ /**
46
+ * @description Posição preferencial do tooltip em relação ao elemento hospedeiro.
47
+ * O tooltip se reposiciona automaticamente se não houver espaço suficiente.
48
+ *
49
+ * @default 'top'
50
+ */
30
51
  tooltipPosition = 'top';
52
+ /**
53
+ * @description Tempo em milissegundos antes do tooltip aparecer após o evento de ativação.
54
+ *
55
+ * @default 500
56
+ */
31
57
  showDelay = 500;
58
+ /**
59
+ * @description Tempo em milissegundos que o tooltip permanece visível após aparecer.
60
+ * Quando não informado, o tooltip permanece até o usuário sair do elemento.
61
+ */
32
62
  displayTime;
63
+ /**
64
+ * @description Evento do elemento hospedeiro que dispara a exibição do tooltip.
65
+ * - `'hover'`: exibe ao passar o mouse (padrão).
66
+ * - `'click'`: exibe ao clicar.
67
+ * - `'focus'`: exibe ao focar no elemento.
68
+ *
69
+ * @default 'hover'
70
+ */
33
71
  tooltipEvent = 'hover';
72
+ /**
73
+ * @description Quando `true`, o conteúdo HTML do tooltip é escapado antes de ser renderizado.
74
+ *
75
+ * @default false
76
+ */
34
77
  escape = false;
78
+ /**
79
+ * @description Quando `false`, o tooltip nunca é exibido, mesmo que haja interação do usuário.
80
+ * Útil para desabilitar tooltips dinamicamente.
81
+ *
82
+ * @default true
83
+ */
35
84
  visible = true;
85
+ /**
86
+ * @description Comportamento do tooltip em dispositivos móveis (touch).
87
+ * - `'pressing'`: exibe ao pressionar e manter o toque (padrão).
88
+ * - `'none'`: desabilita o tooltip em dispositivos táteis.
89
+ *
90
+ * @default 'pressing'
91
+ */
36
92
  mobileBehavior = 'pressing';
93
+ /**
94
+ * @description Referência a um input HTML para sincronizar a exibição do tooltip com o foco no campo.
95
+ */
37
96
  focusedInputRef = null;
97
+ /**
98
+ * @description Quando `true`, o tooltip só é exibido se o texto do elemento estiver truncado (overflow).
99
+ * Útil para cells de tabela ou elementos com `text-overflow: ellipsis`.
100
+ *
101
+ * @default false
102
+ */
38
103
  checkTruncatedText = input(false);
39
104
  componentRef = null;
40
105
  showTimeout;