@seniorsistemas/angular-components 19.9.15-develop-11ab86f5 → 19.9.15

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 (502) hide show
  1. package/README.md +2 -84
  2. package/accordion/README.md +4 -5
  3. package/accordion/lib/accordion/accordion.module.d.ts +0 -7
  4. package/alert/lib/alert/alert.module.d.ts +0 -7
  5. package/badge/README.md +4 -5
  6. package/badge/lib/badge/badge.module.d.ts +0 -10
  7. package/bignumber-input/README.md +4 -5
  8. package/bignumber-input/lib/bignumber-input/bignumber-input.directive.d.ts +39 -16
  9. package/bignumber-input/lib/bignumber-input/bignumber-input.module.d.ts +0 -7
  10. package/breadcrumb/README.md +4 -5
  11. package/breadcrumb/lib/dynamic-breadcrumb/dynamic-breadcrumb.module.d.ts +1 -5
  12. package/button/lib/button/button.module.d.ts +0 -7
  13. package/calendar-mask/README.md +4 -5
  14. package/calendar-mask/lib/calendar-mask/calendar-mask.module.d.ts +0 -7
  15. package/card/README.md +5 -6
  16. package/card/lib/card/card.module.d.ts +0 -7
  17. package/chat/README.md +8 -11
  18. package/chat/lib/chat/chat.module.d.ts +0 -7
  19. package/checkbox-list/README.md +4 -5
  20. package/checkbox-list/lib/checkbox-list/checkbox-list.module.d.ts +0 -7
  21. package/chips/README.md +4 -5
  22. package/chips/lib/chips/chips.module.d.ts +0 -7
  23. package/code-editor/README.md +4 -5
  24. package/code-editor/lib/code-editor/code-editor.module.d.ts +0 -7
  25. package/collapse-link/README.md +4 -5
  26. package/collapse-link/lib/collapse-link/collapse-link.module.d.ts +0 -7
  27. package/common/lib/angular-components.module.d.ts +0 -9
  28. package/common/lib/svg-factory/svg-factory.module.d.ts +0 -7
  29. package/common/public-api.d.ts +0 -1
  30. package/content-generator/README.md +2 -2
  31. package/content-generator/lib/content-generator/content-generator.module.d.ts +0 -7
  32. package/control-errors/README.md +2 -2
  33. package/control-errors/lib/control-errors/control-errors.module.d.ts +0 -7
  34. package/country-phone-picker/README.md +2 -2
  35. package/country-phone-picker/lib/country-phone-picker/country-phone-picker.module.d.ts +0 -7
  36. package/currency/README.md +1 -1
  37. package/custom-fields/README.md +3 -14
  38. package/custom-fields/lib/custom-fields/custom-fields.module.d.ts +0 -7
  39. package/custom-fields/lib/custom-fields/models/index.d.ts +0 -1
  40. package/dialog/README.md +1 -1
  41. package/drawer/README.md +4 -8
  42. package/drawer/lib/drawer/drawer.module.d.ts +0 -10
  43. package/dynamic-form/README.md +2 -18
  44. package/dynamic-form/dynamic-form/dynamic-form.module.d.ts +0 -7
  45. package/dynamic-form/dynamic-form/form-field/addon-config.d.ts +1 -10
  46. package/dynamic-form/dynamic-form/form-field/configurations/fields/currency-field.d.ts +15 -15
  47. package/dynamic-form/dynamic-form/form-field/configurations/fields/number-field.d.ts +6 -8
  48. package/dynamic-form/dynamic-form/form-field/fields/bignumber/bignumber-field.component.d.ts +2 -5
  49. package/dynamic-form/dynamic-form/form-field/fields/currency/currency-field.component.d.ts +664 -0
  50. package/dynamic-form/dynamic-form/form-field/fields/number/number-field.component.d.ts +29 -0
  51. package/dynamic-form/public-api.d.ts +1 -0
  52. package/editable-overlay/README.md +2 -2
  53. package/editable-overlay/lib/editable-overlay/editable-overlay.module.d.ts +0 -7
  54. package/empty-state/README.md +2 -5
  55. package/empty-state/lib/empty-state/empty-state.module.d.ts +0 -7
  56. package/esm2022/accordion/lib/accordion/accordion.module.mjs +1 -8
  57. package/esm2022/alert/lib/alert/alert.module.mjs +1 -8
  58. package/esm2022/badge/lib/badge/badge.module.mjs +1 -11
  59. package/esm2022/bignumber-input/lib/bignumber-input/bignumber-input.directive.mjs +127 -19
  60. package/esm2022/bignumber-input/lib/bignumber-input/bignumber-input.module.mjs +1 -8
  61. package/esm2022/breadcrumb/lib/dynamic-breadcrumb/dynamic-breadcrumb.module.mjs +2 -6
  62. package/esm2022/button/lib/button/button.module.mjs +1 -8
  63. package/esm2022/calendar-mask/lib/calendar-mask/calendar-mask.module.mjs +1 -8
  64. package/esm2022/card/lib/card/card.module.mjs +1 -8
  65. package/esm2022/chat/lib/chat/chat.module.mjs +1 -8
  66. package/esm2022/checkbox-list/lib/checkbox-list/checkbox-list.module.mjs +1 -8
  67. package/esm2022/chips/lib/chips/chips.module.mjs +1 -8
  68. package/esm2022/code-editor/lib/code-editor/code-editor.component.mjs +1 -10
  69. package/esm2022/code-editor/lib/code-editor/code-editor.module.mjs +15 -9
  70. package/esm2022/collapse-link/lib/collapse-link/collapse-link.module.mjs +1 -8
  71. package/esm2022/common/lib/angular-components.module.mjs +1 -10
  72. package/esm2022/common/lib/svg-factory/svg-factory.module.mjs +1 -8
  73. package/esm2022/common/public-api.mjs +1 -2
  74. package/esm2022/content-generator/lib/content-generator/content-generator.module.mjs +1 -8
  75. package/esm2022/control-errors/lib/control-errors/control-errors.module.mjs +1 -8
  76. package/esm2022/country-phone-picker/lib/country-phone-picker/country-phone-picker.module.mjs +1 -8
  77. package/esm2022/country-phone-picker/lib/country-phone-picker/country-phone-picker.service.mjs +3 -4
  78. package/esm2022/custom-fields/lib/custom-fields/custom-fields.component.mjs +13 -17
  79. package/esm2022/custom-fields/lib/custom-fields/custom-fields.module.mjs +1 -8
  80. package/esm2022/custom-fields/lib/custom-fields/custom-fields.service.mjs +3 -4
  81. package/esm2022/custom-fields/lib/custom-fields/models/custom-field-type.mjs +2 -4
  82. package/esm2022/custom-fields/lib/custom-fields/models/index.mjs +1 -2
  83. package/esm2022/drawer/lib/drawer/drawer.module.mjs +1 -11
  84. package/esm2022/dynamic-form/dynamic-form/dynamic-form.module.mjs +1 -8
  85. package/esm2022/dynamic-form/dynamic-form/form-field/addon-config.mjs +2 -6
  86. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/currency-field.mjs +1 -1
  87. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/number-field.mjs +1 -1
  88. package/esm2022/dynamic-form/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs +10 -33
  89. package/esm2022/dynamic-form/dynamic-form/form-field/fields/currency/currency-field.component.mjs +96 -0
  90. package/esm2022/dynamic-form/dynamic-form/form-field/fields/number/number-field.component.mjs +124 -0
  91. package/esm2022/dynamic-form/public-api.mjs +7 -2
  92. package/esm2022/editable-overlay/lib/editable-overlay/editable-overlay.module.mjs +1 -8
  93. package/esm2022/empty-state/lib/empty-state/empty-state.module.mjs +1 -8
  94. package/esm2022/fieldset/lib/fieldset/fieldset.module.mjs +1 -8
  95. package/esm2022/file-picker/lib/file-picker/file-picker.module.mjs +1 -8
  96. package/esm2022/file-picker/lib/file-picker/file-picker.service.mjs +3 -4
  97. package/esm2022/gantt/lib/gantt/gantt.module.mjs +1 -8
  98. package/esm2022/global-search/lib/global-search/global-search.module.mjs +1 -19
  99. package/esm2022/grid-menu/lib/grid-menu/grid-menu.module.mjs +1 -8
  100. package/esm2022/help-popover/lib/help-popover/help-popover.module.mjs +1 -8
  101. package/esm2022/image-cropper/lib/image-cropper/image-cropper.module.mjs +1 -12
  102. package/esm2022/image-cropper/lib/image-cropper/image-cropper.service.mjs +3 -4
  103. package/esm2022/infinite-scroll/lib/infinite-scroll/infinite-scroll.module.mjs +1 -8
  104. package/esm2022/info-sign/lib/info-sign/info-sign.module.mjs +1 -8
  105. package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-number/inline-edit-number.component.mjs +5 -5
  106. package/esm2022/inline-edit/lib/inline-edit/inline-edit.module.mjs +1 -8
  107. package/esm2022/input-group/lib/input-group/input-group.module.mjs +1 -8
  108. package/esm2022/input-mask/lib/input-mask/input-mask.module.mjs +1 -8
  109. package/esm2022/input-text/lib/input-text/input-text.module.mjs +1 -8
  110. package/esm2022/insights/lib/insights/insights.module.mjs +1 -11
  111. package/esm2022/kanban/lib/kanban/kanban-event.service.mjs +3 -4
  112. package/esm2022/kanban/lib/kanban/kanban.module.mjs +1 -11
  113. package/esm2022/label-value/lib/label-value/label-value.module.mjs +1 -8
  114. package/esm2022/loading-state/lib/loading-state/loading-state.module.mjs +1 -8
  115. package/esm2022/locale/lib/locale/locale.module.mjs +1 -14
  116. package/esm2022/locale/lib/locale/locale.service.mjs +3 -4
  117. package/esm2022/locale/lib/locale/options/index.mjs +13 -1
  118. package/esm2022/locale/lib/locale/pipes/localized-bignumber-impure.pipe.mjs +1 -1
  119. package/esm2022/locale/lib/locale/pipes/localized-bignumber.pipe.mjs +2 -10
  120. package/esm2022/locale/public-api.mjs +1 -2
  121. package/esm2022/localized-number-input/lib/localized-number-input/localized-number-input.directive.mjs +1 -5
  122. package/esm2022/localized-number-input/lib/localized-number-input/localized-number-input.module.mjs +1 -8
  123. package/esm2022/mask/lib/mask/mask-formatter.module.mjs +1 -8
  124. package/esm2022/mouse-events/lib/mouse-events/mouse-events.module.mjs +1 -8
  125. package/esm2022/navigation-button/lib/navigation-button/navigation-button.module.mjs +1 -8
  126. package/esm2022/number-input/lib/number-input/number-input.directive.mjs +2 -2
  127. package/esm2022/number-input/lib/number-input/number-input.module.mjs +2 -9
  128. package/esm2022/numeric/lib/numeric.module.mjs +1 -8
  129. package/esm2022/numeric-mask/lib/numeric-mask/numeric-mask.directive.mjs +15 -178
  130. package/esm2022/numeric-mask/lib/numeric-mask/numeric-mask.module.mjs +1 -8
  131. package/esm2022/object-card/lib/object-card/object-card.module.mjs +1 -12
  132. package/esm2022/panel/lib/panel/panel.module.mjs +1 -11
  133. package/esm2022/password-strength/lib/password-strength/password-strength.module.mjs +1 -8
  134. package/esm2022/picklist/lib/picklist/picklist.module.mjs +1 -8
  135. package/esm2022/pin-code-field/lib/pin-code-field.module.mjs +1 -8
  136. package/esm2022/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.module.mjs +1 -8
  137. package/esm2022/progressbar/lib/progressbar/progressbar.module.mjs +1 -8
  138. package/esm2022/rating-scale/lib/rating-scale/rating-scale.module.mjs +1 -8
  139. package/esm2022/select/lib/select/select.component.mjs +3 -16
  140. package/esm2022/select-button/lib/select-button/select-button.module.mjs +1 -8
  141. package/esm2022/shared/lib/shared/border-button/border-button.module.mjs +1 -8
  142. package/esm2022/slide-in-bar/lib/slide-in-bar/slide-in-bar.module.mjs +1 -8
  143. package/esm2022/slide-in-bar/lib/slide-in-bar/slide-in-bar.service.mjs +3 -4
  144. package/esm2022/slider/lib/slider/slider.module.mjs +1 -8
  145. package/esm2022/speech-recognition/lib/speech-recognition/speech-recognition.module.mjs +1 -8
  146. package/esm2022/split-button/lib/split-button/split-button.module.mjs +1 -8
  147. package/esm2022/stats-card/lib/stats-card/stats-card.module.mjs +1 -8
  148. package/esm2022/stepper/lib/stepper/stepper.module.mjs +1 -8
  149. package/esm2022/structure/lib/structure/structure.module.mjs +1 -8
  150. package/esm2022/switch/lib/switch/switch.module.mjs +1 -8
  151. package/esm2022/table/lib/table/table.module.mjs +1 -9
  152. package/esm2022/table-header/lib/table-header/table-header-checkox.module.mjs +1 -8
  153. package/esm2022/template/lib/template/template.module.mjs +1 -8
  154. package/esm2022/text-area/lib/text-area.module.mjs +1 -8
  155. package/esm2022/thumbnail/lib/thumbnail/thumbnail.module.mjs +1 -8
  156. package/esm2022/thumbnails/lib/thumbnails/thumbnails.module.mjs +1 -8
  157. package/esm2022/tiered-menu/lib/tiered-menu/tiered-menu.module.mjs +1 -8
  158. package/esm2022/tile/lib/tile/tile.module.mjs +1 -11
  159. package/esm2022/timeline/lib/timeline/timeline.module.mjs +1 -8
  160. package/esm2022/toast/lib/toast/toast.module.mjs +1 -8
  161. package/esm2022/token-list/lib/token-list/token-list.module.mjs +1 -8
  162. package/esm2022/tooltip/lib/tooltip/tooltip.module.mjs +1 -8
  163. package/esm2022/topbar/lib/topbar/topbar.module.mjs +1 -11
  164. package/esm2022/tree/lib/tree/tree.module.mjs +1 -8
  165. package/esm2022/workspace-switch/lib/workspace-switch/workspace-switch.module.mjs +1 -8
  166. package/fesm2022/seniorsistemas-angular-components-accordion.mjs +0 -7
  167. package/fesm2022/seniorsistemas-angular-components-accordion.mjs.map +1 -1
  168. package/fesm2022/seniorsistemas-angular-components-alert.mjs +0 -7
  169. package/fesm2022/seniorsistemas-angular-components-alert.mjs.map +1 -1
  170. package/fesm2022/seniorsistemas-angular-components-badge.mjs +0 -10
  171. package/fesm2022/seniorsistemas-angular-components-badge.mjs.map +1 -1
  172. package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs +126 -25
  173. package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs.map +1 -1
  174. package/fesm2022/seniorsistemas-angular-components-breadcrumb.mjs +1 -5
  175. package/fesm2022/seniorsistemas-angular-components-breadcrumb.mjs.map +1 -1
  176. package/fesm2022/seniorsistemas-angular-components-button.mjs +0 -7
  177. package/fesm2022/seniorsistemas-angular-components-button.mjs.map +1 -1
  178. package/fesm2022/seniorsistemas-angular-components-calendar-mask.mjs +0 -7
  179. package/fesm2022/seniorsistemas-angular-components-calendar-mask.mjs.map +1 -1
  180. package/fesm2022/seniorsistemas-angular-components-card.mjs +0 -7
  181. package/fesm2022/seniorsistemas-angular-components-card.mjs.map +1 -1
  182. package/fesm2022/seniorsistemas-angular-components-chat.mjs +0 -7
  183. package/fesm2022/seniorsistemas-angular-components-chat.mjs.map +1 -1
  184. package/fesm2022/seniorsistemas-angular-components-checkbox-list.mjs +0 -7
  185. package/fesm2022/seniorsistemas-angular-components-checkbox-list.mjs.map +1 -1
  186. package/fesm2022/seniorsistemas-angular-components-chips.mjs +0 -7
  187. package/fesm2022/seniorsistemas-angular-components-chips.mjs.map +1 -1
  188. package/fesm2022/seniorsistemas-angular-components-code-editor.mjs +160 -164
  189. package/fesm2022/seniorsistemas-angular-components-code-editor.mjs.map +1 -1
  190. package/fesm2022/seniorsistemas-angular-components-collapse-link.mjs +0 -7
  191. package/fesm2022/seniorsistemas-angular-components-collapse-link.mjs.map +1 -1
  192. package/fesm2022/seniorsistemas-angular-components-common.mjs +2 -38
  193. package/fesm2022/seniorsistemas-angular-components-common.mjs.map +1 -1
  194. package/fesm2022/seniorsistemas-angular-components-content-generator.mjs +0 -7
  195. package/fesm2022/seniorsistemas-angular-components-content-generator.mjs.map +1 -1
  196. package/fesm2022/seniorsistemas-angular-components-control-errors.mjs +0 -7
  197. package/fesm2022/seniorsistemas-angular-components-control-errors.mjs.map +1 -1
  198. package/fesm2022/seniorsistemas-angular-components-country-phone-picker.mjs +2 -10
  199. package/fesm2022/seniorsistemas-angular-components-country-phone-picker.mjs.map +1 -1
  200. package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs +15 -75
  201. package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs.map +1 -1
  202. package/fesm2022/seniorsistemas-angular-components-drawer.mjs +0 -10
  203. package/fesm2022/seniorsistemas-angular-components-drawer.mjs.map +1 -1
  204. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs +208 -52
  205. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs.map +1 -1
  206. package/fesm2022/seniorsistemas-angular-components-editable-overlay.mjs +0 -7
  207. package/fesm2022/seniorsistemas-angular-components-editable-overlay.mjs.map +1 -1
  208. package/fesm2022/seniorsistemas-angular-components-empty-state.mjs +0 -7
  209. package/fesm2022/seniorsistemas-angular-components-empty-state.mjs.map +1 -1
  210. package/fesm2022/seniorsistemas-angular-components-fieldset.mjs +0 -7
  211. package/fesm2022/seniorsistemas-angular-components-fieldset.mjs.map +1 -1
  212. package/fesm2022/seniorsistemas-angular-components-file-picker.mjs +2 -10
  213. package/fesm2022/seniorsistemas-angular-components-file-picker.mjs.map +1 -1
  214. package/fesm2022/seniorsistemas-angular-components-gantt.mjs +0 -7
  215. package/fesm2022/seniorsistemas-angular-components-gantt.mjs.map +1 -1
  216. package/fesm2022/seniorsistemas-angular-components-global-search.mjs +0 -18
  217. package/fesm2022/seniorsistemas-angular-components-global-search.mjs.map +1 -1
  218. package/fesm2022/seniorsistemas-angular-components-grid-menu.mjs +0 -7
  219. package/fesm2022/seniorsistemas-angular-components-grid-menu.mjs.map +1 -1
  220. package/fesm2022/seniorsistemas-angular-components-help-popover.mjs +0 -7
  221. package/fesm2022/seniorsistemas-angular-components-help-popover.mjs.map +1 -1
  222. package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs +2 -14
  223. package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs.map +1 -1
  224. package/fesm2022/seniorsistemas-angular-components-infinite-scroll.mjs +0 -7
  225. package/fesm2022/seniorsistemas-angular-components-infinite-scroll.mjs.map +1 -1
  226. package/fesm2022/seniorsistemas-angular-components-info-sign.mjs +0 -7
  227. package/fesm2022/seniorsistemas-angular-components-info-sign.mjs.map +1 -1
  228. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs +4 -11
  229. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs.map +1 -1
  230. package/fesm2022/seniorsistemas-angular-components-input-group.mjs +0 -7
  231. package/fesm2022/seniorsistemas-angular-components-input-group.mjs.map +1 -1
  232. package/fesm2022/seniorsistemas-angular-components-input-mask.mjs +0 -7
  233. package/fesm2022/seniorsistemas-angular-components-input-mask.mjs.map +1 -1
  234. package/fesm2022/seniorsistemas-angular-components-input-text.mjs +0 -7
  235. package/fesm2022/seniorsistemas-angular-components-input-text.mjs.map +1 -1
  236. package/fesm2022/seniorsistemas-angular-components-insights.mjs +0 -10
  237. package/fesm2022/seniorsistemas-angular-components-insights.mjs.map +1 -1
  238. package/fesm2022/seniorsistemas-angular-components-kanban.mjs +2 -13
  239. package/fesm2022/seniorsistemas-angular-components-kanban.mjs.map +1 -1
  240. package/fesm2022/seniorsistemas-angular-components-label-value.mjs +0 -7
  241. package/fesm2022/seniorsistemas-angular-components-label-value.mjs.map +1 -1
  242. package/fesm2022/seniorsistemas-angular-components-loading-state.mjs +0 -7
  243. package/fesm2022/seniorsistemas-angular-components-loading-state.mjs.map +1 -1
  244. package/fesm2022/seniorsistemas-angular-components-locale.mjs +5 -58
  245. package/fesm2022/seniorsistemas-angular-components-locale.mjs.map +1 -1
  246. package/fesm2022/seniorsistemas-angular-components-localized-number-input.mjs +0 -11
  247. package/fesm2022/seniorsistemas-angular-components-localized-number-input.mjs.map +1 -1
  248. package/fesm2022/seniorsistemas-angular-components-mask.mjs +0 -7
  249. package/fesm2022/seniorsistemas-angular-components-mask.mjs.map +1 -1
  250. package/fesm2022/seniorsistemas-angular-components-mouse-events.mjs +0 -7
  251. package/fesm2022/seniorsistemas-angular-components-mouse-events.mjs.map +1 -1
  252. package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs +0 -7
  253. package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs.map +1 -1
  254. package/fesm2022/seniorsistemas-angular-components-number-input.mjs +2 -9
  255. package/fesm2022/seniorsistemas-angular-components-number-input.mjs.map +1 -1
  256. package/fesm2022/seniorsistemas-angular-components-numeric-mask.mjs +14 -184
  257. package/fesm2022/seniorsistemas-angular-components-numeric-mask.mjs.map +1 -1
  258. package/fesm2022/seniorsistemas-angular-components-numeric.mjs +0 -7
  259. package/fesm2022/seniorsistemas-angular-components-numeric.mjs.map +1 -1
  260. package/fesm2022/seniorsistemas-angular-components-object-card.mjs +0 -11
  261. package/fesm2022/seniorsistemas-angular-components-object-card.mjs.map +1 -1
  262. package/fesm2022/seniorsistemas-angular-components-panel.mjs +0 -10
  263. package/fesm2022/seniorsistemas-angular-components-panel.mjs.map +1 -1
  264. package/fesm2022/seniorsistemas-angular-components-password-strength.mjs +0 -7
  265. package/fesm2022/seniorsistemas-angular-components-password-strength.mjs.map +1 -1
  266. package/fesm2022/seniorsistemas-angular-components-picklist.mjs +0 -7
  267. package/fesm2022/seniorsistemas-angular-components-picklist.mjs.map +1 -1
  268. package/fesm2022/seniorsistemas-angular-components-pin-code-field.mjs +0 -7
  269. package/fesm2022/seniorsistemas-angular-components-pin-code-field.mjs.map +1 -1
  270. package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs +0 -7
  271. package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs.map +1 -1
  272. package/fesm2022/seniorsistemas-angular-components-progressbar.mjs +0 -7
  273. package/fesm2022/seniorsistemas-angular-components-progressbar.mjs.map +1 -1
  274. package/fesm2022/seniorsistemas-angular-components-rating-scale.mjs +0 -7
  275. package/fesm2022/seniorsistemas-angular-components-rating-scale.mjs.map +1 -1
  276. package/fesm2022/seniorsistemas-angular-components-select-button.mjs +0 -7
  277. package/fesm2022/seniorsistemas-angular-components-select-button.mjs.map +1 -1
  278. package/fesm2022/seniorsistemas-angular-components-select.mjs +2 -15
  279. package/fesm2022/seniorsistemas-angular-components-select.mjs.map +1 -1
  280. package/fesm2022/seniorsistemas-angular-components-shared.mjs +0 -7
  281. package/fesm2022/seniorsistemas-angular-components-shared.mjs.map +1 -1
  282. package/fesm2022/seniorsistemas-angular-components-slide-in-bar.mjs +2 -10
  283. package/fesm2022/seniorsistemas-angular-components-slide-in-bar.mjs.map +1 -1
  284. package/fesm2022/seniorsistemas-angular-components-slider.mjs +0 -7
  285. package/fesm2022/seniorsistemas-angular-components-slider.mjs.map +1 -1
  286. package/fesm2022/seniorsistemas-angular-components-speech-recognition.mjs +0 -7
  287. package/fesm2022/seniorsistemas-angular-components-speech-recognition.mjs.map +1 -1
  288. package/fesm2022/seniorsistemas-angular-components-split-button.mjs +0 -7
  289. package/fesm2022/seniorsistemas-angular-components-split-button.mjs.map +1 -1
  290. package/fesm2022/seniorsistemas-angular-components-stats-card.mjs +0 -7
  291. package/fesm2022/seniorsistemas-angular-components-stats-card.mjs.map +1 -1
  292. package/fesm2022/seniorsistemas-angular-components-stepper.mjs +0 -7
  293. package/fesm2022/seniorsistemas-angular-components-stepper.mjs.map +1 -1
  294. package/fesm2022/seniorsistemas-angular-components-structure.mjs +0 -7
  295. package/fesm2022/seniorsistemas-angular-components-structure.mjs.map +1 -1
  296. package/fesm2022/seniorsistemas-angular-components-switch.mjs +0 -7
  297. package/fesm2022/seniorsistemas-angular-components-switch.mjs.map +1 -1
  298. package/fesm2022/seniorsistemas-angular-components-table-header.mjs +0 -7
  299. package/fesm2022/seniorsistemas-angular-components-table-header.mjs.map +1 -1
  300. package/fesm2022/seniorsistemas-angular-components-table.mjs +0 -8
  301. package/fesm2022/seniorsistemas-angular-components-table.mjs.map +1 -1
  302. package/fesm2022/seniorsistemas-angular-components-template.mjs +0 -7
  303. package/fesm2022/seniorsistemas-angular-components-template.mjs.map +1 -1
  304. package/fesm2022/seniorsistemas-angular-components-text-area.mjs +0 -7
  305. package/fesm2022/seniorsistemas-angular-components-text-area.mjs.map +1 -1
  306. package/fesm2022/seniorsistemas-angular-components-thumbnail.mjs +0 -7
  307. package/fesm2022/seniorsistemas-angular-components-thumbnail.mjs.map +1 -1
  308. package/fesm2022/seniorsistemas-angular-components-thumbnails.mjs +0 -7
  309. package/fesm2022/seniorsistemas-angular-components-thumbnails.mjs.map +1 -1
  310. package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs +0 -7
  311. package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs.map +1 -1
  312. package/fesm2022/seniorsistemas-angular-components-tile.mjs +0 -10
  313. package/fesm2022/seniorsistemas-angular-components-tile.mjs.map +1 -1
  314. package/fesm2022/seniorsistemas-angular-components-timeline.mjs +0 -7
  315. package/fesm2022/seniorsistemas-angular-components-timeline.mjs.map +1 -1
  316. package/fesm2022/seniorsistemas-angular-components-toast.mjs +0 -7
  317. package/fesm2022/seniorsistemas-angular-components-toast.mjs.map +1 -1
  318. package/fesm2022/seniorsistemas-angular-components-token-list.mjs +0 -7
  319. package/fesm2022/seniorsistemas-angular-components-token-list.mjs.map +1 -1
  320. package/fesm2022/seniorsistemas-angular-components-tooltip.mjs +0 -7
  321. package/fesm2022/seniorsistemas-angular-components-tooltip.mjs.map +1 -1
  322. package/fesm2022/seniorsistemas-angular-components-topbar.mjs +0 -10
  323. package/fesm2022/seniorsistemas-angular-components-topbar.mjs.map +1 -1
  324. package/fesm2022/seniorsistemas-angular-components-tree.mjs +0 -7
  325. package/fesm2022/seniorsistemas-angular-components-tree.mjs.map +1 -1
  326. package/fesm2022/seniorsistemas-angular-components-workspace-switch.mjs +0 -7
  327. package/fesm2022/seniorsistemas-angular-components-workspace-switch.mjs.map +1 -1
  328. package/fieldset/README.md +2 -2
  329. package/fieldset/lib/fieldset/fieldset.module.d.ts +0 -7
  330. package/file-picker/README.md +2 -2
  331. package/file-picker/lib/file-picker/file-picker.module.d.ts +0 -7
  332. package/file-upload/README.md +1 -1
  333. package/gantt/README.md +2 -2
  334. package/gantt/lib/gantt/gantt.module.d.ts +0 -7
  335. package/global-search/README.md +2 -5
  336. package/global-search/lib/global-search/global-search.module.d.ts +0 -18
  337. package/grid-menu/README.md +4 -5
  338. package/grid-menu/lib/grid-menu/grid-menu.module.d.ts +0 -7
  339. package/help-popover/README.md +4 -5
  340. package/help-popover/lib/help-popover/help-popover.module.d.ts +0 -7
  341. package/ia-insight/README.md +1 -1
  342. package/image-cropper/README.md +5 -6
  343. package/image-cropper/lib/image-cropper/image-cropper.module.d.ts +0 -11
  344. package/infinite-scroll/README.md +4 -5
  345. package/infinite-scroll/lib/infinite-scroll/infinite-scroll.module.d.ts +0 -7
  346. package/info-sign/README.md +4 -5
  347. package/info-sign/lib/info-sign/info-sign.module.d.ts +0 -7
  348. package/inline-edit/README.md +4 -5
  349. package/inline-edit/lib/inline-edit/inline-edit.module.d.ts +0 -7
  350. package/input-group/lib/input-group/input-group.module.d.ts +0 -7
  351. package/input-mask/lib/input-mask/input-mask.module.d.ts +0 -7
  352. package/input-text/lib/input-text/input-text.module.d.ts +0 -7
  353. package/insights/README.md +4 -6
  354. package/insights/lib/insights/insights.module.d.ts +0 -10
  355. package/kanban/README.md +4 -6
  356. package/kanban/lib/kanban/kanban.module.d.ts +0 -10
  357. package/label-value/README.md +4 -5
  358. package/label-value/lib/label-value/label-value.module.d.ts +0 -7
  359. package/loading-state/README.md +5 -9
  360. package/loading-state/lib/loading-state/loading-state.module.d.ts +0 -7
  361. package/locale/lib/locale/locale.module.d.ts +0 -13
  362. package/locale/lib/locale/pipes/localized-bignumber-impure.pipe.d.ts +2 -2
  363. package/locale/lib/locale/pipes/localized-bignumber.pipe.d.ts +1 -20
  364. package/locale/public-api.d.ts +0 -1
  365. package/localized-number-input/README.md +8 -32
  366. package/localized-number-input/lib/localized-number-input/localized-number-input.directive.d.ts +0 -4
  367. package/localized-number-input/lib/localized-number-input/localized-number-input.module.d.ts +0 -7
  368. package/mask/lib/mask/mask-formatter.module.d.ts +0 -7
  369. package/mouse-events/README.md +4 -5
  370. package/mouse-events/lib/mouse-events/mouse-events.module.d.ts +0 -7
  371. package/navigation-button/README.md +4 -5
  372. package/navigation-button/lib/navigation-button/navigation-button.module.d.ts +0 -7
  373. package/number-input/lib/number-input/number-input.directive.d.ts +1 -1
  374. package/number-input/lib/number-input/number-input.module.d.ts +1 -8
  375. package/numeric/README.md +5 -6
  376. package/numeric/lib/numeric.module.d.ts +0 -7
  377. package/numeric-mask/README.md +1 -44
  378. package/numeric-mask/lib/numeric-mask/numeric-mask.directive.d.ts +4 -65
  379. package/numeric-mask/lib/numeric-mask/numeric-mask.module.d.ts +0 -7
  380. package/object-card/README.md +4 -11
  381. package/object-card/lib/object-card/object-card.module.d.ts +0 -11
  382. package/package.json +1 -1
  383. package/panel/README.md +4 -8
  384. package/panel/lib/panel/panel.module.d.ts +0 -10
  385. package/password-strength/README.md +3 -6
  386. package/password-strength/lib/password-strength/password-strength.module.d.ts +0 -7
  387. package/picklist/README.md +5 -8
  388. package/picklist/lib/picklist/picklist.module.d.ts +0 -7
  389. package/pin-code-field/lib/pin-code-field.module.d.ts +0 -7
  390. package/product-header/README.md +2 -2
  391. package/profile-picture-picker/README.md +3 -6
  392. package/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.module.d.ts +0 -7
  393. package/progressbar/README.md +3 -6
  394. package/progressbar/lib/progressbar/progressbar.module.d.ts +0 -7
  395. package/rating-scale/README.md +3 -6
  396. package/rating-scale/lib/rating-scale/rating-scale.module.d.ts +0 -7
  397. package/schematics/collection.json +0 -40
  398. package/schematics/migrations.json +1 -5
  399. package/schematics/utils/ast-utils.js +0 -16
  400. package/schematics/utils/ast-utils.js.map +1 -1
  401. package/select/lib/select/select.component.d.ts +0 -8
  402. package/select-button/README.md +3 -6
  403. package/select-button/lib/select-button/select-button.module.d.ts +0 -7
  404. package/shared/lib/shared/border-button/border-button.module.d.ts +0 -7
  405. package/sidebar/README.md +2 -2
  406. package/slide-in-bar/README.md +5 -5
  407. package/slide-in-bar/lib/slide-in-bar/slide-in-bar.module.d.ts +0 -7
  408. package/slider/README.md +3 -6
  409. package/slider/lib/slider/slider.module.d.ts +0 -7
  410. package/speech-recognition/README.md +3 -6
  411. package/speech-recognition/lib/speech-recognition/speech-recognition.module.d.ts +0 -7
  412. package/split-button/README.md +3 -6
  413. package/split-button/lib/split-button/split-button.module.d.ts +0 -7
  414. package/stats-card/README.md +3 -6
  415. package/stats-card/lib/stats-card/stats-card.module.d.ts +0 -7
  416. package/stepper/README.md +3 -6
  417. package/stepper/lib/stepper/stepper.module.d.ts +0 -7
  418. package/structure/lib/structure/structure.module.d.ts +0 -7
  419. package/switch/README.md +3 -6
  420. package/switch/lib/switch/switch.module.d.ts +0 -7
  421. package/table/README.md +4 -12
  422. package/table/lib/table/table.module.d.ts +0 -8
  423. package/table-header/lib/table-header/table-header-checkox.module.d.ts +0 -7
  424. package/template/README.md +11 -0
  425. package/template/lib/template/template.module.d.ts +0 -7
  426. package/text-area/lib/text-area.module.d.ts +0 -7
  427. package/text-area-ia/README.md +1 -1
  428. package/thumbnail/lib/thumbnail/thumbnail.module.d.ts +0 -7
  429. package/thumbnails/lib/thumbnails/thumbnails.module.d.ts +0 -7
  430. package/tiered-menu/lib/tiered-menu/tiered-menu.module.d.ts +0 -7
  431. package/tile/lib/tile/tile.module.d.ts +0 -10
  432. package/timeline/lib/timeline/timeline.module.d.ts +0 -7
  433. package/toast/lib/toast/toast.module.d.ts +0 -7
  434. package/token-list/lib/token-list/token-list.module.d.ts +0 -7
  435. package/tooltip/lib/tooltip/tooltip.module.d.ts +0 -7
  436. package/topbar/lib/topbar/topbar.module.d.ts +0 -10
  437. package/tree/lib/tree/tree.module.d.ts +0 -7
  438. package/workspace-switch/lib/workspace-switch/workspace-switch.module.d.ts +0 -7
  439. package/common/lib/provide-angular-components.d.ts +0 -19
  440. package/custom-fields/lib/custom-fields/models/custom-field-value-parser.d.ts +0 -21
  441. package/esm2022/common/lib/provide-angular-components.mjs +0 -22
  442. package/esm2022/custom-fields/lib/custom-fields/models/custom-field-value-parser.mjs +0 -46
  443. package/esm2022/locale/lib/locale/provide-locale.mjs +0 -42
  444. package/locale/lib/locale/provide-locale.d.ts +0 -18
  445. package/schematics/migrations/migrate-app-to-standalone/index.d.ts +0 -32
  446. package/schematics/migrations/migrate-app-to-standalone/index.js +0 -98
  447. package/schematics/migrations/migrate-app-to-standalone/index.js.map +0 -1
  448. package/schematics/migrations/migrate-deprecated-apis/index.d.ts +0 -49
  449. package/schematics/migrations/migrate-deprecated-apis/index.js +0 -660
  450. package/schematics/migrations/migrate-deprecated-apis/index.js.map +0 -1
  451. package/schematics/migrations/migrate-deprecated-datepicker/index.d.ts +0 -31
  452. package/schematics/migrations/migrate-deprecated-datepicker/index.js +0 -115
  453. package/schematics/migrations/migrate-deprecated-datepicker/index.js.map +0 -1
  454. package/schematics/migrations/migrate-deprecated-dynamic-form/index.d.ts +0 -52
  455. package/schematics/migrations/migrate-deprecated-dynamic-form/index.js +0 -661
  456. package/schematics/migrations/migrate-deprecated-dynamic-form/index.js.map +0 -1
  457. package/schematics/migrations/migrate-deprecated-imports/index.d.ts +0 -23
  458. package/schematics/migrations/migrate-deprecated-imports/index.js +0 -335
  459. package/schematics/migrations/migrate-deprecated-imports/index.js.map +0 -1
  460. package/schematics/migrations/migrate-deprecated-selectors/index.d.ts +0 -15
  461. package/schematics/migrations/migrate-deprecated-selectors/index.js +0 -76
  462. package/schematics/migrations/migrate-deprecated-selectors/index.js.map +0 -1
  463. package/schematics/migrations/migrate-modules-to-standalone/index.d.ts +0 -51
  464. package/schematics/migrations/migrate-modules-to-standalone/index.js +0 -632
  465. package/schematics/migrations/migrate-modules-to-standalone/index.js.map +0 -1
  466. package/schematics/migrations/migrate-modules-to-standalone/modules-map.json +0 -1656
  467. package/schematics/migrations/migrate-v20/index.d.ts +0 -9
  468. package/schematics/migrations/migrate-v20/index.js +0 -90
  469. package/schematics/migrations/migrate-v20/index.js.map +0 -1
  470. package/schematics/migrations/migrate-v20/items.d.ts +0 -7
  471. package/schematics/migrations/migrate-v20/items.js +0 -54
  472. package/schematics/migrations/migrate-v20/items.js.map +0 -1
  473. package/schematics/migrations/migrate-v20/plan.d.ts +0 -32
  474. package/schematics/migrations/migrate-v20/plan.js +0 -29
  475. package/schematics/migrations/migrate-v20/plan.js.map +0 -1
  476. package/schematics/schema/app-standalone.schema.json +0 -21
  477. package/schematics/schema/migrate-v20.schema.json +0 -33
  478. package/schematics/schema/scope.schema.json +0 -17
  479. package/schematics/utils/eol.d.ts +0 -5
  480. package/schematics/utils/eol.js +0 -17
  481. package/schematics/utils/eol.js.map +0 -1
  482. package/schematics/utils/prompt-utils.d.ts +0 -62
  483. package/schematics/utils/prompt-utils.js +0 -166
  484. package/schematics/utils/prompt-utils.js.map +0 -1
  485. package/schematics/utils/report.d.ts +0 -27
  486. package/schematics/utils/report.js +0 -70
  487. package/schematics/utils/report.js.map +0 -1
  488. package/schematics/utils/scope.d.ts +0 -17
  489. package/schematics/utils/scope.js +0 -55
  490. package/schematics/utils/scope.js.map +0 -1
  491. package/schematics/utils/selection.d.ts +0 -21
  492. package/schematics/utils/selection.js +0 -60
  493. package/schematics/utils/selection.js.map +0 -1
  494. package/schematics/utils/symbol-utils.d.ts +0 -31
  495. package/schematics/utils/symbol-utils.js +0 -202
  496. package/schematics/utils/symbol-utils.js.map +0 -1
  497. package/schematics/utils/template-utils.d.ts +0 -62
  498. package/schematics/utils/template-utils.js +0 -165
  499. package/schematics/utils/template-utils.js.map +0 -1
  500. package/schematics/utils/tsconfig-paths.d.ts +0 -5
  501. package/schematics/utils/tsconfig-paths.js +0 -73
  502. package/schematics/utils/tsconfig-paths.js.map +0 -1
@@ -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/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/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/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/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/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/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/timeline.component.ts","../../projects/angular-components/timeline/src/lib/timeline/timeline.component.html","../../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';\r\n\r\nimport { TimelineItem } from '../../models/timeline-item';\r\nimport { NgClass, NgStyle } from '@angular/common';\r\nimport { TooltipDirective } from '@seniorsistemas/angular-components/tooltip';\r\n\r\n@Component({\r\n selector: 's-timeline-icon-item',\r\n templateUrl: './timeline-icon-item.component.html',\r\n styleUrls: ['./timeline-icon-item.component.scss'],\r\n standalone: true,\r\n imports: [NgClass, TooltipDirective, NgStyle],\r\n})\r\nexport class TimelineIconItemComponent {\r\n @Input({ required: true })\r\n public item!: TimelineItem;\r\n\r\n @Input()\r\n public isActive?: boolean;\r\n\r\n @Input()\r\n public highlightActive?: boolean;\r\n\r\n @Input()\r\n public isComplete?: boolean;\r\n}\r\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';\r\n\r\nimport { TimelineItem } from '../../../../models/timeline-item';\r\nimport { NgClass, NgStyle } from '@angular/common';\r\nimport { TimelineIconItemComponent } from '../../../timeline-icon-item/timeline-icon-item.component';\r\n\r\n@Component({\r\n selector: 's-vertical-items',\r\n templateUrl: './vertical-items.component.html',\r\n styleUrls: ['./vertical-items.component.scss'],\r\n standalone: true,\r\n imports: [NgClass, TimelineIconItemComponent, NgStyle],\r\n})\r\nexport class VerticalItemsComponent {\r\n @Input({ required: true })\r\n public items!: TimelineItem[];\r\n\r\n @Input()\r\n public isLast?: boolean;\r\n\r\n @Input()\r\n public isActive?: boolean;\r\n\r\n @Input()\r\n public highlightActive?: boolean;\r\n\r\n @Input()\r\n public isCompleted?: boolean;\r\n}\r\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, Output, EventEmitter } from '@angular/core';\r\nimport { NgClass } from '@angular/common';\r\n\r\n@Component({\r\n selector: 's-collapse-option',\r\n templateUrl: './collapse-option.component.html',\r\n styleUrls: ['./collapse-option.component.scss'],\r\n standalone: true,\r\n imports: [NgClass],\r\n})\r\nexport class CollapseOptionComponent {\r\n @Input()\r\n public isCollapsed = false;\r\n\r\n @Output()\r\n public toggleCollapsed = new EventEmitter<boolean>();\r\n\r\n public onClick(): void {\r\n this.toggleCollapsed.emit(!this.isCollapsed);\r\n }\r\n}\r\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 } from '@angular/core';\r\n\r\n@Component({\r\n selector: 's-range-line',\r\n templateUrl: './range-line.component.html',\r\n styleUrls: ['./range-line.component.scss'],\r\n standalone: true,\r\n})\r\nexport class RangeLineComponent {}\r\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';\r\n\r\nimport { TimelineItem } from '../../../../models/timeline-item';\r\nimport { NgClass } from '@angular/common';\r\nimport { CollapseOptionComponent } from '../collapse-option/collapse-option.component';\r\n\r\n@Component({\r\n selector: 's-collapsed-items',\r\n templateUrl: './collapsed-items.component.html',\r\n styleUrls: ['./collapsed-items.component.scss'],\r\n standalone: true,\r\n imports: [NgClass, CollapseOptionComponent],\r\n})\r\nexport class CollapsedItemsComponent {\r\n @Input({ required: true })\r\n public items!: TimelineItem[];\r\n\r\n @Input()\r\n public isCollapsed = false;\r\n\r\n @Input()\r\n public isCompleted?: boolean;\r\n\r\n @Input()\r\n public counterLabel?: string;\r\n\r\n @Output()\r\n public isCollapsedChange = new EventEmitter<boolean>();\r\n\r\n public onChange(event: boolean): void {\r\n this.isCollapsed = !this.isCollapsed;\r\n this.isCollapsedChange.emit(this.isCollapsed);\r\n }\r\n}\r\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';\r\n\r\nimport { TimelineItem } from '../../models/timeline-item';\r\nimport { VerticalItemsComponent } from './components/vertical-items/vertical-items.component';\r\nimport { CollapseOptionComponent } from './components/collapse-option/collapse-option.component';\r\nimport { RangeLineComponent } from './components/range-line/range-line.component';\r\nimport { CollapsedItemsComponent } from './components/collapsed-items/collapsed-items.component';\r\n\r\n@Component({\r\n selector: 's-vertical-timeline',\r\n templateUrl: './vertical-timeline.component.html',\r\n styleUrls: ['./vertical-timeline.component.scss'],\r\n standalone: true,\r\n imports: [VerticalItemsComponent, CollapseOptionComponent, RangeLineComponent, CollapsedItemsComponent],\r\n})\r\nexport class VerticalTimelineComponent {\r\n public static nextId = 0;\r\n private _activeIndex = 0;\r\n public isG1Collapsed = true;\r\n public isG2Collapsed = true;\r\n\r\n public firstItem: TimelineItem[] = [];\r\n public g1Items: TimelineItem[] = [];\r\n public activeItem: TimelineItem[] = [];\r\n public g2Items: TimelineItem[] = [];\r\n public lastItem: TimelineItem[] = [];\r\n\r\n @Input({ required: true })\r\n public set activeIndex(index: number) {\r\n this._activeIndex = index;\r\n this.groupItems();\r\n }\r\n\r\n public get activeIndex() {\r\n return this._activeIndex;\r\n }\r\n\r\n @Input()\r\n public highlightActiveItem?: boolean;\r\n\r\n @Input({ required: true })\r\n public items!: TimelineItem[];\r\n\r\n @Input()\r\n public counterLabel?: string;\r\n\r\n @Input()\r\n public collapsable?: boolean;\r\n\r\n public onChangeG1(event: boolean) {\r\n this.isG1Collapsed = event;\r\n }\r\n\r\n public onChangeG2(event: boolean) {\r\n this.isG2Collapsed = event;\r\n }\r\n\r\n public groupItems() {\r\n this.firstItem = this.activeIndex <= 0 ? [] : [this.items[0]];\r\n this.g1Items = this.items.slice(1, this.activeIndex < 0 ? 0 : this.activeIndex);\r\n this.activeItem = this.activeIndex >= 0 ? [this.items[this.activeIndex]] : [];\r\n this.g2Items = this.items.slice(this.activeIndex + 1, this.items.length - 1);\r\n this.lastItem = this.activeIndex === this.items.length - 1 ? [] : [this.items[this.items.length - 1]];\r\n }\r\n}\r\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, Input } from '@angular/core';\r\n\r\nimport { TimelineItem } from '../../models/timeline-item';\r\nimport { NgClass, NgStyle } from '@angular/common';\r\nimport { TimelineIconItemComponent } from '../timeline-icon-item/timeline-icon-item.component';\r\nimport { TooltipDirective } from '@seniorsistemas/angular-components/tooltip';\r\n\r\n@Component({\r\n selector: 's-horizontal-timeline',\r\n templateUrl: './horizontal-timeline.component.html',\r\n styleUrls: ['./horizontal-timeline.component.scss'],\r\n standalone: true,\r\n imports: [NgClass, NgStyle, TimelineIconItemComponent, TooltipDirective],\r\n})\r\nexport class HorizontalTimelineComponent {\r\n @Input({ required: true })\r\n public items!: TimelineItem[];\r\n\r\n @Input()\r\n public activeIndex = 0;\r\n\r\n @Input()\r\n public highlightActiveItem?: boolean;\r\n}\r\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, HostListener, Input, OnInit } from '@angular/core';\r\n\r\nimport { TimelineItem } from './models/timeline-item';\r\n\r\nimport { VerticalTimelineComponent } from './components/vertical-timeline/vertical-timeline.component';\r\nimport { HorizontalTimelineComponent } from './components/horizontal-timeline/horizontal-timeline.component';\r\n\r\nconst HORIZONTAL = 'horizontal';\r\nconst VERTICAL = 'vertical';\r\nconst MIN_ITEM_SIZE = 200;\r\n\r\n/**\r\n * @description Componente de linha do tempo que renderiza itens de forma horizontal\r\n * ou vertical (ou autodetectável por largura de tela). Suporta navegação entre\r\n * etapas, destaque do item ativo e modo colapsável para muitos itens.\r\n *\r\n * @example\r\n * ```html\r\n * <s-timeline\r\n * [items]=\"etapas\"\r\n * [activeIndex]=\"etapaAtiva\"\r\n * direction=\"horizontal\" />\r\n * ```\r\n *\r\n * @category Structure\r\n */\r\n@Component({\r\n selector: 's-timeline',\r\n templateUrl: './timeline.component.html',\r\n standalone: true,\r\n imports: [VerticalTimelineComponent, HorizontalTimelineComponent],\r\n})\r\nexport class TimelineComponent implements OnInit {\r\n private _innerWidth = 0;\r\n private _items: TimelineItem[] = [];\r\n\r\n public get items(): TimelineItem[] {\r\n return this._items;\r\n }\r\n\r\n /**\r\n * @description Lista de itens da linha do tempo. Campo obrigatório.\r\n * IDs duplicados são rejeitados com exceção.\r\n */\r\n @Input({ required: true })\r\n public set items(items: TimelineItem[]) {\r\n this._items = items;\r\n this.checkDuplicateIds();\r\n }\r\n\r\n /** @description Índice ativo (0-based) que define o item em destaque. Campo obrigatório. */\r\n @Input({ required: true })\r\n public activeIndex!: number;\r\n\r\n /** @description Aplica destaque visual ao item ativo. @default true */\r\n @Input()\r\n public highlightActiveItem = true;\r\n\r\n /** @description Direção de renderização: `'horizontal'` ou `'vertical'`. @default 'horizontal' */\r\n @Input()\r\n public direction: typeof HORIZONTAL | typeof VERTICAL = HORIZONTAL;\r\n\r\n /** @description Habilita o modo colapsável quando há muitos itens. @default true */\r\n @Input()\r\n public collapsable = true;\r\n\r\n /** @description Rótulo exibido no contador de itens colapsados. @default 'items' */\r\n @Input()\r\n public counterLabel = 'items';\r\n\r\n public ngOnInit(): void {\r\n this._innerWidth = window.innerWidth;\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n public onResize(_: any): void {\r\n this._innerWidth = window.innerWidth;\r\n }\r\n\r\n public changeToVertical(): boolean {\r\n return this.direction === VERTICAL || this._innerWidth / this.items.length < MIN_ITEM_SIZE;\r\n }\r\n\r\n public checkDuplicateIds(): void {\r\n const ids = this.items.map((item) => {\r\n return item.id;\r\n });\r\n\r\n if (new Set(ids).size !== ids.length) {\r\n throw new Error('A duplicate id was found in the items list');\r\n }\r\n }\r\n}\r\n","<div>\r\n @if (changeToVertical()) {\r\n @if (items.length) {\r\n <s-vertical-timeline\r\n [items]=\"items\"\r\n [activeIndex]=\"activeIndex\"\r\n [highlightActiveItem]=\"highlightActiveItem\"\r\n [counterLabel]=\"counterLabel\"\r\n [collapsable]=\"collapsable\"\r\n [highlightActiveItem]=\"highlightActiveItem\"\r\n >\r\n </s-vertical-timeline>\r\n }\r\n } @else {\r\n @if (items.length) {\r\n <s-horizontal-timeline\r\n [items]=\"items\"\r\n [activeIndex]=\"activeIndex\"\r\n [highlightActiveItem]=\"highlightActiveItem\"\r\n >\r\n </s-horizontal-timeline>\r\n }\r\n }\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\n\r\nimport { TimelineComponent } from './timeline.component';\r\n\r\n/**\r\n * @deprecated Será removido na v20. Importe diretamente o standalone `TimelineComponent` (de\r\n * `@seniorsistemas/angular-components/timeline`) no lugar deste módulo.\r\n *\r\n * Migração automática (também executada pelo `ng update` na v20):\r\n * `ng generate @seniorsistemas/angular-components:migrate-modules-to-standalone`\r\n */\r\n@NgModule({\r\n imports: [TimelineComponent],\r\n exports: [TimelineComponent],\r\n})\r\nexport class TimelineModule {}\r\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":[],"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/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/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/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/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/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/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/timeline.component.ts","../../projects/angular-components/timeline/src/lib/timeline/timeline.component.html","../../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';\r\n\r\nimport { TimelineItem } from '../../models/timeline-item';\r\nimport { NgClass, NgStyle } from '@angular/common';\r\nimport { TooltipDirective } from '@seniorsistemas/angular-components/tooltip';\r\n\r\n@Component({\r\n selector: 's-timeline-icon-item',\r\n templateUrl: './timeline-icon-item.component.html',\r\n styleUrls: ['./timeline-icon-item.component.scss'],\r\n standalone: true,\r\n imports: [NgClass, TooltipDirective, NgStyle],\r\n})\r\nexport class TimelineIconItemComponent {\r\n @Input({ required: true })\r\n public item!: TimelineItem;\r\n\r\n @Input()\r\n public isActive?: boolean;\r\n\r\n @Input()\r\n public highlightActive?: boolean;\r\n\r\n @Input()\r\n public isComplete?: boolean;\r\n}\r\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';\r\n\r\nimport { TimelineItem } from '../../../../models/timeline-item';\r\nimport { NgClass, NgStyle } from '@angular/common';\r\nimport { TimelineIconItemComponent } from '../../../timeline-icon-item/timeline-icon-item.component';\r\n\r\n@Component({\r\n selector: 's-vertical-items',\r\n templateUrl: './vertical-items.component.html',\r\n styleUrls: ['./vertical-items.component.scss'],\r\n standalone: true,\r\n imports: [NgClass, TimelineIconItemComponent, NgStyle],\r\n})\r\nexport class VerticalItemsComponent {\r\n @Input({ required: true })\r\n public items!: TimelineItem[];\r\n\r\n @Input()\r\n public isLast?: boolean;\r\n\r\n @Input()\r\n public isActive?: boolean;\r\n\r\n @Input()\r\n public highlightActive?: boolean;\r\n\r\n @Input()\r\n public isCompleted?: boolean;\r\n}\r\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, Output, EventEmitter } from '@angular/core';\r\nimport { NgClass } from '@angular/common';\r\n\r\n@Component({\r\n selector: 's-collapse-option',\r\n templateUrl: './collapse-option.component.html',\r\n styleUrls: ['./collapse-option.component.scss'],\r\n standalone: true,\r\n imports: [NgClass],\r\n})\r\nexport class CollapseOptionComponent {\r\n @Input()\r\n public isCollapsed = false;\r\n\r\n @Output()\r\n public toggleCollapsed = new EventEmitter<boolean>();\r\n\r\n public onClick(): void {\r\n this.toggleCollapsed.emit(!this.isCollapsed);\r\n }\r\n}\r\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 } from '@angular/core';\r\n\r\n@Component({\r\n selector: 's-range-line',\r\n templateUrl: './range-line.component.html',\r\n styleUrls: ['./range-line.component.scss'],\r\n standalone: true,\r\n})\r\nexport class RangeLineComponent {}\r\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';\r\n\r\nimport { TimelineItem } from '../../../../models/timeline-item';\r\nimport { NgClass } from '@angular/common';\r\nimport { CollapseOptionComponent } from '../collapse-option/collapse-option.component';\r\n\r\n@Component({\r\n selector: 's-collapsed-items',\r\n templateUrl: './collapsed-items.component.html',\r\n styleUrls: ['./collapsed-items.component.scss'],\r\n standalone: true,\r\n imports: [NgClass, CollapseOptionComponent],\r\n})\r\nexport class CollapsedItemsComponent {\r\n @Input({ required: true })\r\n public items!: TimelineItem[];\r\n\r\n @Input()\r\n public isCollapsed = false;\r\n\r\n @Input()\r\n public isCompleted?: boolean;\r\n\r\n @Input()\r\n public counterLabel?: string;\r\n\r\n @Output()\r\n public isCollapsedChange = new EventEmitter<boolean>();\r\n\r\n public onChange(event: boolean): void {\r\n this.isCollapsed = !this.isCollapsed;\r\n this.isCollapsedChange.emit(this.isCollapsed);\r\n }\r\n}\r\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';\r\n\r\nimport { TimelineItem } from '../../models/timeline-item';\r\nimport { VerticalItemsComponent } from './components/vertical-items/vertical-items.component';\r\nimport { CollapseOptionComponent } from './components/collapse-option/collapse-option.component';\r\nimport { RangeLineComponent } from './components/range-line/range-line.component';\r\nimport { CollapsedItemsComponent } from './components/collapsed-items/collapsed-items.component';\r\n\r\n@Component({\r\n selector: 's-vertical-timeline',\r\n templateUrl: './vertical-timeline.component.html',\r\n styleUrls: ['./vertical-timeline.component.scss'],\r\n standalone: true,\r\n imports: [VerticalItemsComponent, CollapseOptionComponent, RangeLineComponent, CollapsedItemsComponent],\r\n})\r\nexport class VerticalTimelineComponent {\r\n public static nextId = 0;\r\n private _activeIndex = 0;\r\n public isG1Collapsed = true;\r\n public isG2Collapsed = true;\r\n\r\n public firstItem: TimelineItem[] = [];\r\n public g1Items: TimelineItem[] = [];\r\n public activeItem: TimelineItem[] = [];\r\n public g2Items: TimelineItem[] = [];\r\n public lastItem: TimelineItem[] = [];\r\n\r\n @Input({ required: true })\r\n public set activeIndex(index: number) {\r\n this._activeIndex = index;\r\n this.groupItems();\r\n }\r\n\r\n public get activeIndex() {\r\n return this._activeIndex;\r\n }\r\n\r\n @Input()\r\n public highlightActiveItem?: boolean;\r\n\r\n @Input({ required: true })\r\n public items!: TimelineItem[];\r\n\r\n @Input()\r\n public counterLabel?: string;\r\n\r\n @Input()\r\n public collapsable?: boolean;\r\n\r\n public onChangeG1(event: boolean) {\r\n this.isG1Collapsed = event;\r\n }\r\n\r\n public onChangeG2(event: boolean) {\r\n this.isG2Collapsed = event;\r\n }\r\n\r\n public groupItems() {\r\n this.firstItem = this.activeIndex <= 0 ? [] : [this.items[0]];\r\n this.g1Items = this.items.slice(1, this.activeIndex < 0 ? 0 : this.activeIndex);\r\n this.activeItem = this.activeIndex >= 0 ? [this.items[this.activeIndex]] : [];\r\n this.g2Items = this.items.slice(this.activeIndex + 1, this.items.length - 1);\r\n this.lastItem = this.activeIndex === this.items.length - 1 ? [] : [this.items[this.items.length - 1]];\r\n }\r\n}\r\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, Input } from '@angular/core';\r\n\r\nimport { TimelineItem } from '../../models/timeline-item';\r\nimport { NgClass, NgStyle } from '@angular/common';\r\nimport { TimelineIconItemComponent } from '../timeline-icon-item/timeline-icon-item.component';\r\nimport { TooltipDirective } from '@seniorsistemas/angular-components/tooltip';\r\n\r\n@Component({\r\n selector: 's-horizontal-timeline',\r\n templateUrl: './horizontal-timeline.component.html',\r\n styleUrls: ['./horizontal-timeline.component.scss'],\r\n standalone: true,\r\n imports: [NgClass, NgStyle, TimelineIconItemComponent, TooltipDirective],\r\n})\r\nexport class HorizontalTimelineComponent {\r\n @Input({ required: true })\r\n public items!: TimelineItem[];\r\n\r\n @Input()\r\n public activeIndex = 0;\r\n\r\n @Input()\r\n public highlightActiveItem?: boolean;\r\n}\r\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, HostListener, Input, OnInit } from '@angular/core';\r\n\r\nimport { TimelineItem } from './models/timeline-item';\r\n\r\nimport { VerticalTimelineComponent } from './components/vertical-timeline/vertical-timeline.component';\r\nimport { HorizontalTimelineComponent } from './components/horizontal-timeline/horizontal-timeline.component';\r\n\r\nconst HORIZONTAL = 'horizontal';\r\nconst VERTICAL = 'vertical';\r\nconst MIN_ITEM_SIZE = 200;\r\n\r\n/**\r\n * @description Componente de linha do tempo que renderiza itens de forma horizontal\r\n * ou vertical (ou autodetectável por largura de tela). Suporta navegação entre\r\n * etapas, destaque do item ativo e modo colapsável para muitos itens.\r\n *\r\n * @example\r\n * ```html\r\n * <s-timeline\r\n * [items]=\"etapas\"\r\n * [activeIndex]=\"etapaAtiva\"\r\n * direction=\"horizontal\" />\r\n * ```\r\n *\r\n * @category Structure\r\n */\r\n@Component({\r\n selector: 's-timeline',\r\n templateUrl: './timeline.component.html',\r\n standalone: true,\r\n imports: [VerticalTimelineComponent, HorizontalTimelineComponent],\r\n})\r\nexport class TimelineComponent implements OnInit {\r\n private _innerWidth = 0;\r\n private _items: TimelineItem[] = [];\r\n\r\n public get items(): TimelineItem[] {\r\n return this._items;\r\n }\r\n\r\n /**\r\n * @description Lista de itens da linha do tempo. Campo obrigatório.\r\n * IDs duplicados são rejeitados com exceção.\r\n */\r\n @Input({ required: true })\r\n public set items(items: TimelineItem[]) {\r\n this._items = items;\r\n this.checkDuplicateIds();\r\n }\r\n\r\n /** @description Índice ativo (0-based) que define o item em destaque. Campo obrigatório. */\r\n @Input({ required: true })\r\n public activeIndex!: number;\r\n\r\n /** @description Aplica destaque visual ao item ativo. @default true */\r\n @Input()\r\n public highlightActiveItem = true;\r\n\r\n /** @description Direção de renderização: `'horizontal'` ou `'vertical'`. @default 'horizontal' */\r\n @Input()\r\n public direction: typeof HORIZONTAL | typeof VERTICAL = HORIZONTAL;\r\n\r\n /** @description Habilita o modo colapsável quando há muitos itens. @default true */\r\n @Input()\r\n public collapsable = true;\r\n\r\n /** @description Rótulo exibido no contador de itens colapsados. @default 'items' */\r\n @Input()\r\n public counterLabel = 'items';\r\n\r\n public ngOnInit(): void {\r\n this._innerWidth = window.innerWidth;\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n public onResize(_: any): void {\r\n this._innerWidth = window.innerWidth;\r\n }\r\n\r\n public changeToVertical(): boolean {\r\n return this.direction === VERTICAL || this._innerWidth / this.items.length < MIN_ITEM_SIZE;\r\n }\r\n\r\n public checkDuplicateIds(): void {\r\n const ids = this.items.map((item) => {\r\n return item.id;\r\n });\r\n\r\n if (new Set(ids).size !== ids.length) {\r\n throw new Error('A duplicate id was found in the items list');\r\n }\r\n }\r\n}\r\n","<div>\r\n @if (changeToVertical()) {\r\n @if (items.length) {\r\n <s-vertical-timeline\r\n [items]=\"items\"\r\n [activeIndex]=\"activeIndex\"\r\n [highlightActiveItem]=\"highlightActiveItem\"\r\n [counterLabel]=\"counterLabel\"\r\n [collapsable]=\"collapsable\"\r\n [highlightActiveItem]=\"highlightActiveItem\"\r\n >\r\n </s-vertical-timeline>\r\n }\r\n } @else {\r\n @if (items.length) {\r\n <s-horizontal-timeline\r\n [items]=\"items\"\r\n [activeIndex]=\"activeIndex\"\r\n [highlightActiveItem]=\"highlightActiveItem\"\r\n >\r\n </s-horizontal-timeline>\r\n }\r\n }\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\n\r\nimport { TimelineComponent } from './timeline.component';\r\n\r\n@NgModule({\r\n imports: [TimelineComponent],\r\n exports: [TimelineComponent],\r\n})\r\nexport class TimelineModule {}\r\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":[],"mappings":"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"}
@@ -67,13 +67,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
67
67
  args: ['class.toast--leaving']
68
68
  }] } });
69
69
 
70
- /**
71
- * @deprecated Será removido na v20. Este módulo não reexporta nada que precise ser importado: basta removê-lo
72
- * do `imports`.
73
- *
74
- * Migração automática (também executada pelo `ng update` na v20):
75
- * `ng generate @seniorsistemas/angular-components:migrate-modules-to-standalone`
76
- */
77
70
  class ToastModule {
78
71
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ToastModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
79
72
  static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: ToastModule, imports: [CommonModule, ToastComponent] });
@@ -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, EventEmitter, HostBinding, Input, OnDestroy, OnInit, Output } from '@angular/core'; // Adicionado HostBinding, OnDestroy\r\n\r\nimport { Toast } from './types/toast';\r\n\r\n/**\r\n * @description Componente individual de notificação (toast) que exibe uma mensagem temporária na tela.\r\n * Gerencia automaticamente o timer de dismiss quando `toast.sticky` é `false`.\r\n * Recomenda-se utilizar o `ToastService` para criar e empilhar toasts na aplicação.\r\n *\r\n * @example\r\n * ```html\r\n * <s-toast [toast]=\"toastData\" (dismiss)=\"onDismiss()\" />\r\n * ```\r\n *\r\n * @category Feedback\r\n */\r\n@Component({\r\n selector: 's-toast',\r\n templateUrl: './toast.component.html',\r\n styleUrls: ['./toast.component.scss'],\r\n standalone: true,\r\n})\r\nexport class ToastComponent implements OnInit, OnDestroy {\r\n /**\r\n * @description Objeto com os dados da notificação a ser exibida.\r\n * Inclui propriedades como `severity`, `summary`, `detail`, `duration` e `sticky`.\r\n */\r\n @Input()\r\n public toast!: Toast;\r\n\r\n /**\r\n * @description Emitido quando a notificação é descartada, seja pelo timer automático\r\n * (ao expirar `toast.duration`) ou pela ação manual do usuário.\r\n */\r\n @Output()\r\n public dismiss = new EventEmitter<void>();\r\n\r\n @HostBinding('class.toast--leaving')\r\n public isLeaving = false;\r\n\r\n private timer: ReturnType<typeof setTimeout> | null = null;\r\n\r\n public ngOnInit(): void {\r\n if (!this.toast.sticky && this.toast.duration) {\r\n this.timer = setTimeout(() => {\r\n this.startDismissAnimation();\r\n }, this.toast.duration);\r\n }\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n if (this.timer) {\r\n clearTimeout(this.timer);\r\n }\r\n }\r\n\r\n public startDismissAnimation(): void {\r\n this.isLeaving = true;\r\n\r\n setTimeout(() => {\r\n this.dismiss.emit();\r\n }, 300);\r\n }\r\n\r\n public dismissToast(): void {\r\n if (this.timer) {\r\n clearTimeout(this.timer);\r\n }\r\n this.startDismissAnimation();\r\n }\r\n}\r\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 { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { ToastComponent } from './toast.component';\r\n\r\n/**\r\n * @deprecated Será removido na v20. Este módulo não reexporta nada que precise ser importado: basta removê-lo\r\n * do `imports`.\r\n *\r\n * Migração automática (também executada pelo `ng update` na v20):\r\n * `ng generate @seniorsistemas/angular-components:migrate-modules-to-standalone`\r\n */\r\n@NgModule({\r\n imports: [CommonModule, ToastComponent],\r\n})\r\nexport class ToastModule {}\r\n","import { Injectable, ComponentRef, ApplicationRef, Injector, EmbeddedViewRef, ComponentFactoryResolver, inject } 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 appRef = inject(ApplicationRef);\n private injector = inject(Injector);\n private componentFactoryResolver = inject(ComponentFactoryResolver);\n\n private activeToasts: ComponentRef<ToastComponent>[] = [];\n private globalToastHostElement: HTMLElement | null = null;\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 = \"40px\";\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":";;;;;AAIA;;;;;;;;;;;AAWG;MAOU,cAAc,CAAA;AACvB;;;AAGG;AAEI,IAAA,KAAK,CAAS;AAErB;;;AAGG;AAEI,IAAA,OAAO,GAAG,IAAI,YAAY,EAAQ,CAAC;IAGnC,SAAS,GAAG,KAAK,CAAC;IAEjB,KAAK,GAAyC,IAAI,CAAC;IAEpD,QAAQ,GAAA;AACX,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;AAC3C,YAAA,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,MAAK;gBACzB,IAAI,CAAC,qBAAqB,EAAE,CAAC;AACjC,aAAC,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SAC3B;KACJ;IAEM,WAAW,GAAA;AACd,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE;AACZ,YAAA,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC5B;KACJ;IAEM,qBAAqB,GAAA;AACxB,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,UAAU,CAAC,MAAK;AACZ,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;SACvB,EAAE,GAAG,CAAC,CAAC;KACX;IAEM,YAAY,GAAA;AACf,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE;AACZ,YAAA,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC5B;QACD,IAAI,CAAC,qBAAqB,EAAE,CAAC;KAChC;wGA/CQ,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,oMCtB3B,okCA4BA,EAAA,MAAA,EAAA,CAAA,+vDAAA,CAAA,EAAA,CAAA,CAAA;;4FDNa,cAAc,EAAA,UAAA,EAAA,CAAA;kBAN1B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,SAAS,cAGP,IAAI,EAAA,QAAA,EAAA,okCAAA,EAAA,MAAA,EAAA,CAAA,+vDAAA,CAAA,EAAA,CAAA;8BAQT,KAAK,EAAA,CAAA;sBADX,KAAK;gBAQC,OAAO,EAAA,CAAA;sBADb,MAAM;gBAIA,SAAS,EAAA,CAAA;sBADf,WAAW;uBAAC,sBAAsB,CAAA;;;AEhCvC;;;;;;AAMG;MAIU,WAAW,CAAA;wGAAX,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;yGAAX,WAAW,EAAA,OAAA,EAAA,CAFV,YAAY,EAAE,cAAc,CAAA,EAAA,CAAA,CAAA;AAE7B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,YAFV,YAAY,CAAA,EAAA,CAAA,CAAA;;4FAEb,WAAW,EAAA,UAAA,EAAA,CAAA;kBAHvB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,cAAc,CAAC;AAC1C,iBAAA,CAAA;;;MCLY,YAAY,CAAA;AACb,IAAA,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AAChC,IAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC5B,IAAA,wBAAwB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC;IAE5D,YAAY,GAAmC,EAAE,CAAC;IAClD,sBAAsB,GAAuB,IAAI,CAAC;IAElD,qBAAqB,GAAA;AACzB,QAAA,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE;YAC9B,IAAI,CAAC,sBAAsB,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC5D,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAEvD,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;YACnD,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,aAAa,GAAG,QAAQ,CAAC;YAC3D,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC;YACrD,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;YACjD,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC;YAC/C,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC;YACnD,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC;SAClD;KACJ;AAEM,IAAA,IAAI,CAAC,KAAY,EAAA;QACpB,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAE7B,MAAM,gBAAgB,GAAG,IAAI,CAAC,wBAAwB,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC;QAC/F,MAAM,YAAY,GAAG,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE5D,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;AAE9C,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACf,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC;SAC5C;AAED,QAAA,YAAY,CAAC,QAAQ,CAAC,KAAK,GAAG;AAC1B,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,GAAG,KAAK;SACX,CAAC;QAEF,MAAM,OAAO,GAAI,YAAY,CAAC,QAAiC,CAAC,SAAS,CAAC,CAAC,CAAgB,CAAC;AAC5F,QAAA,IAAI,CAAC,sBAAuB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAClD,QAAA,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;AAC/B,QAAA,OAAO,CAAC,KAAK,CAAC,cAAc,GAAG,QAAQ,CAAC;AAExC,QAAA,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAAC,MAAK;YACvD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;AAEtD,YAAA,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;gBAC9C,YAAY,CAAC,OAAO,EAAE,CAAC;gBACvB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;aACtC;AAED,YAAA,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,sBAAsB,EAAE;AAC/D,gBAAA,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,CAAC;AACrC,gBAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;aACtC;AACL,SAAC,CAAC,CAAC;AAEH,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KACxC;wGA7DQ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAZ,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,cAFT,MAAM,EAAA,CAAA,CAAA;;4FAET,YAAY,EAAA,UAAA,EAAA,CAAA;kBAHxB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;;ACRD;;AAEG;;;;"}
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, EventEmitter, HostBinding, Input, OnDestroy, OnInit, Output } from '@angular/core'; // Adicionado HostBinding, OnDestroy\r\n\r\nimport { Toast } from './types/toast';\r\n\r\n/**\r\n * @description Componente individual de notificação (toast) que exibe uma mensagem temporária na tela.\r\n * Gerencia automaticamente o timer de dismiss quando `toast.sticky` é `false`.\r\n * Recomenda-se utilizar o `ToastService` para criar e empilhar toasts na aplicação.\r\n *\r\n * @example\r\n * ```html\r\n * <s-toast [toast]=\"toastData\" (dismiss)=\"onDismiss()\" />\r\n * ```\r\n *\r\n * @category Feedback\r\n */\r\n@Component({\r\n selector: 's-toast',\r\n templateUrl: './toast.component.html',\r\n styleUrls: ['./toast.component.scss'],\r\n standalone: true,\r\n})\r\nexport class ToastComponent implements OnInit, OnDestroy {\r\n /**\r\n * @description Objeto com os dados da notificação a ser exibida.\r\n * Inclui propriedades como `severity`, `summary`, `detail`, `duration` e `sticky`.\r\n */\r\n @Input()\r\n public toast!: Toast;\r\n\r\n /**\r\n * @description Emitido quando a notificação é descartada, seja pelo timer automático\r\n * (ao expirar `toast.duration`) ou pela ação manual do usuário.\r\n */\r\n @Output()\r\n public dismiss = new EventEmitter<void>();\r\n\r\n @HostBinding('class.toast--leaving')\r\n public isLeaving = false;\r\n\r\n private timer: ReturnType<typeof setTimeout> | null = null;\r\n\r\n public ngOnInit(): void {\r\n if (!this.toast.sticky && this.toast.duration) {\r\n this.timer = setTimeout(() => {\r\n this.startDismissAnimation();\r\n }, this.toast.duration);\r\n }\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n if (this.timer) {\r\n clearTimeout(this.timer);\r\n }\r\n }\r\n\r\n public startDismissAnimation(): void {\r\n this.isLeaving = true;\r\n\r\n setTimeout(() => {\r\n this.dismiss.emit();\r\n }, 300);\r\n }\r\n\r\n public dismissToast(): void {\r\n if (this.timer) {\r\n clearTimeout(this.timer);\r\n }\r\n this.startDismissAnimation();\r\n }\r\n}\r\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 { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { ToastComponent } from './toast.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule, ToastComponent],\r\n})\r\nexport class ToastModule {}\r\n","import { Injectable, ComponentRef, ApplicationRef, Injector, EmbeddedViewRef, ComponentFactoryResolver, inject } 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 appRef = inject(ApplicationRef);\n private injector = inject(Injector);\n private componentFactoryResolver = inject(ComponentFactoryResolver);\n\n private activeToasts: ComponentRef<ToastComponent>[] = [];\n private globalToastHostElement: HTMLElement | null = null;\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 = \"40px\";\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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"}
@@ -85,13 +85,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
85
85
  type: Output
86
86
  }] } });
87
87
 
88
- /**
89
- * @deprecated Será removido na v20. Importe diretamente o standalone `TokenListComponent` (de
90
- * `@seniorsistemas/angular-components/token-list`) no lugar deste módulo.
91
- *
92
- * Migração automática (também executada pelo `ng update` na v20):
93
- * `ng generate @seniorsistemas/angular-components:migrate-modules-to-standalone`
94
- */
95
88
  class TokenListModule {
96
89
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TokenListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
97
90
  static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: TokenListModule, imports: [TokenListComponent], exports: [TokenListComponent] });
@@ -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 {\r\n AfterViewInit,\r\n Component,\r\n DestroyRef,\r\n EventEmitter,\r\n inject,\r\n Input,\r\n Output,\r\n QueryList,\r\n ViewChildren,\r\n} from '@angular/core';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\n\r\nimport { ChipItemComponent } from '@seniorsistemas/angular-components/chips';\r\nimport { restoreFocusAfterRemoval } from '@seniorsistemas/angular-components/shared';\r\nimport { IToken } from './models/token';\r\n\r\n/**\r\n * @description Componente de lista de tokens (etiquetas) clicáveis e opcionalmente\r\n * removíveis. Emite eventos ao selecionar ou remover um token.\r\n *\r\n * @example\r\n * ```html\r\n * <s-token-list\r\n * [tokens]=\"listaDeTokens\"\r\n * [removableTokens]=\"true\"\r\n * (tokenSelected)=\"onTokenSelecionado($event)\"\r\n * (tokenRemoved)=\"onTokenRemovido($event)\" />\r\n * ```\r\n *\r\n * @category Summary\r\n */\r\n@Component({\r\n selector: 's-token-list',\r\n templateUrl: './token-list.component.html',\r\n standalone: true,\r\n imports: [ChipItemComponent],\r\n})\r\nexport class TokenListComponent implements AfterViewInit {\r\n public static nextId = 0;\r\n\r\n private readonly destroyRef = inject(DestroyRef);\r\n private pendingFocusIndex: number | null = null;\r\n\r\n @ViewChildren(ChipItemComponent)\r\n private readonly chipItems!: QueryList<ChipItemComponent>;\r\n\r\n /** @description Identificador único do componente no DOM. Gerado automaticamente se não informado. */\r\n @Input()\r\n public id = `s-token-list-${TokenListComponent.nextId++}`;\r\n\r\n /** @description Lista de tokens exibidos. Campo obrigatório. */\r\n @Input({ required: true })\r\n public tokens!: IToken[];\r\n\r\n /** @description Exibe o botão de remoção em cada token. @default false */\r\n @Input()\r\n public removableTokens = false;\r\n\r\n /** @description Quando `true`, remove os eventos de ponteiro (hover/clique) dos tokens. @default false */\r\n @Input()\r\n public hidePointerEvents = false;\r\n\r\n /** @description Classe do ícone do botão de remover token. @default 'far fa-times' */\r\n @Input()\r\n public removeIconClass = 'far fa-times';\r\n\r\n /** @description Emitido quando o usuário clica em um token não desabilitado. */\r\n @Output()\r\n public tokenSelected: EventEmitter<IToken> = new EventEmitter();\r\n\r\n /** @description Emitido quando o usuário remove um token não desabilitado. */\r\n @Output()\r\n public tokenRemoved: EventEmitter<IToken> = new EventEmitter();\r\n\r\n public ngAfterViewInit(): void {\r\n this.chipItems.changes.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\r\n if (this.pendingFocusIndex === null) {\r\n return;\r\n }\r\n const focusIndex = this.pendingFocusIndex;\r\n this.pendingFocusIndex = null;\r\n restoreFocusAfterRemoval(this.chipItems.toArray(), focusIndex);\r\n });\r\n }\r\n\r\n public onTokenSelected(token: IToken): void {\r\n if (!token.disabled) {\r\n this.tokenSelected.next(token);\r\n }\r\n }\r\n\r\n public onTokenRemoved(token: IToken, index: number): void {\r\n if (!token.disabled) {\r\n this.pendingFocusIndex = index;\r\n this.tokenRemoved.next(token);\r\n }\r\n }\r\n}\r\n","<div\n [id]=\"id\"\n class=\"token-list inline-flex max-w-full flex-wrap items-center gap-2 px-[10px] py-0 normal-case\"\n>\n @for (token of tokens; track $index) {\n <s-chip-item\n [dataRender]=\"token.label\"\n [itemIndex]=\"$index\"\n [disabled]=\"token.disabled ?? false\"\n [showTooltip]=\"false\"\n [removeIconClass]=\"removeIconClass\"\n [hidePointerEvents]=\"hidePointerEvents\"\n [showRemove]=\"removableTokens && !token.notRemovable\"\n (clickRemove)=\"onTokenRemoved(token, $index)\"\n (chipClicked)=\"onTokenSelected(token)\"\n >\n </s-chip-item>\n }\n</div>\n\n","import { NgModule } from '@angular/core';\r\n\r\nimport { TokenListComponent } from './token-list.component';\r\n\r\n/**\r\n * @deprecated Será removido na v20. Importe diretamente o standalone `TokenListComponent` (de\r\n * `@seniorsistemas/angular-components/token-list`) no lugar deste módulo.\r\n *\r\n * Migração automática (também executada pelo `ng update` na v20):\r\n * `ng generate @seniorsistemas/angular-components:migrate-modules-to-standalone`\r\n */\r\n@NgModule({\r\n imports: [TokenListComponent],\r\n exports: [TokenListComponent],\r\n})\r\nexport class TokenListModule {}\r\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-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 {\r\n AfterViewInit,\r\n Component,\r\n DestroyRef,\r\n EventEmitter,\r\n inject,\r\n Input,\r\n Output,\r\n QueryList,\r\n ViewChildren,\r\n} from '@angular/core';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\n\r\nimport { ChipItemComponent } from '@seniorsistemas/angular-components/chips';\r\nimport { restoreFocusAfterRemoval } from '@seniorsistemas/angular-components/shared';\r\nimport { IToken } from './models/token';\r\n\r\n/**\r\n * @description Componente de lista de tokens (etiquetas) clicáveis e opcionalmente\r\n * removíveis. Emite eventos ao selecionar ou remover um token.\r\n *\r\n * @example\r\n * ```html\r\n * <s-token-list\r\n * [tokens]=\"listaDeTokens\"\r\n * [removableTokens]=\"true\"\r\n * (tokenSelected)=\"onTokenSelecionado($event)\"\r\n * (tokenRemoved)=\"onTokenRemovido($event)\" />\r\n * ```\r\n *\r\n * @category Summary\r\n */\r\n@Component({\r\n selector: 's-token-list',\r\n templateUrl: './token-list.component.html',\r\n standalone: true,\r\n imports: [ChipItemComponent],\r\n})\r\nexport class TokenListComponent implements AfterViewInit {\r\n public static nextId = 0;\r\n\r\n private readonly destroyRef = inject(DestroyRef);\r\n private pendingFocusIndex: number | null = null;\r\n\r\n @ViewChildren(ChipItemComponent)\r\n private readonly chipItems!: QueryList<ChipItemComponent>;\r\n\r\n /** @description Identificador único do componente no DOM. Gerado automaticamente se não informado. */\r\n @Input()\r\n public id = `s-token-list-${TokenListComponent.nextId++}`;\r\n\r\n /** @description Lista de tokens exibidos. Campo obrigatório. */\r\n @Input({ required: true })\r\n public tokens!: IToken[];\r\n\r\n /** @description Exibe o botão de remoção em cada token. @default false */\r\n @Input()\r\n public removableTokens = false;\r\n\r\n /** @description Quando `true`, remove os eventos de ponteiro (hover/clique) dos tokens. @default false */\r\n @Input()\r\n public hidePointerEvents = false;\r\n\r\n /** @description Classe do ícone do botão de remover token. @default 'far fa-times' */\r\n @Input()\r\n public removeIconClass = 'far fa-times';\r\n\r\n /** @description Emitido quando o usuário clica em um token não desabilitado. */\r\n @Output()\r\n public tokenSelected: EventEmitter<IToken> = new EventEmitter();\r\n\r\n /** @description Emitido quando o usuário remove um token não desabilitado. */\r\n @Output()\r\n public tokenRemoved: EventEmitter<IToken> = new EventEmitter();\r\n\r\n public ngAfterViewInit(): void {\r\n this.chipItems.changes.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\r\n if (this.pendingFocusIndex === null) {\r\n return;\r\n }\r\n const focusIndex = this.pendingFocusIndex;\r\n this.pendingFocusIndex = null;\r\n restoreFocusAfterRemoval(this.chipItems.toArray(), focusIndex);\r\n });\r\n }\r\n\r\n public onTokenSelected(token: IToken): void {\r\n if (!token.disabled) {\r\n this.tokenSelected.next(token);\r\n }\r\n }\r\n\r\n public onTokenRemoved(token: IToken, index: number): void {\r\n if (!token.disabled) {\r\n this.pendingFocusIndex = index;\r\n this.tokenRemoved.next(token);\r\n }\r\n }\r\n}\r\n","<div\n [id]=\"id\"\n class=\"token-list inline-flex max-w-full flex-wrap items-center gap-2 px-[10px] py-0 normal-case\"\n>\n @for (token of tokens; track $index) {\n <s-chip-item\n [dataRender]=\"token.label\"\n [itemIndex]=\"$index\"\n [disabled]=\"token.disabled ?? false\"\n [showTooltip]=\"false\"\n [removeIconClass]=\"removeIconClass\"\n [hidePointerEvents]=\"hidePointerEvents\"\n [showRemove]=\"removableTokens && !token.notRemovable\"\n (clickRemove)=\"onTokenRemoved(token, $index)\"\n (chipClicked)=\"onTokenSelected(token)\"\n >\n </s-chip-item>\n }\n</div>\n\n","import { NgModule } from '@angular/core';\r\n\r\nimport { TokenListComponent } from './token-list.component';\r\n\r\n@NgModule({\r\n imports: [TokenListComponent],\r\n exports: [TokenListComponent],\r\n})\r\nexport class TokenListModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;AAiBA;;;;;;;;;;;;;;AAcG;MAOU,kBAAkB,CAAA;AACpB,IAAA,OAAO,MAAM,GAAG,CAAC,CAAC;AAER,IAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IACzC,iBAAiB,GAAkB,IAAI,CAAC;AAG/B,IAAA,SAAS,CAAgC;;AAInD,IAAA,EAAE,GAAG,CAAgB,aAAA,EAAA,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC;;AAInD,IAAA,MAAM,CAAY;;IAIlB,eAAe,GAAG,KAAK,CAAC;;IAIxB,iBAAiB,GAAG,KAAK,CAAC;;IAI1B,eAAe,GAAG,cAAc,CAAC;;AAIjC,IAAA,aAAa,GAAyB,IAAI,YAAY,EAAE,CAAC;;AAIzD,IAAA,YAAY,GAAyB,IAAI,YAAY,EAAE,CAAC;IAExD,eAAe,GAAA;AAClB,QAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;AAC5E,YAAA,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,EAAE;gBACjC,OAAO;aACV;AACD,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC;AAC1C,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;AACnE,SAAC,CAAC,CAAC;KACN;AAEM,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;IAEM,cAAc,CAAC,KAAa,EAAE,KAAa,EAAA;AAC9C,QAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;AACjB,YAAA,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;AAC/B,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACjC;KACJ;wGA3DQ,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,EAMb,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,SAAA,EAAA,iBAAiB,EC5CnC,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,osBAoBA,4CDgBc,iBAAiB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,WAAA,EAAA,aAAA,EAAA,+BAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,mBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,EAAA,aAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAElB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAN9B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,EAEZ,UAAA,EAAA,IAAI,EACP,OAAA,EAAA,CAAC,iBAAiB,CAAC,EAAA,QAAA,EAAA,osBAAA,EAAA,CAAA;8BASX,SAAS,EAAA,CAAA;sBADzB,YAAY;uBAAC,iBAAiB,CAAA;gBAKxB,EAAE,EAAA,CAAA;sBADR,KAAK;gBAKC,MAAM,EAAA,CAAA;sBADZ,KAAK;uBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;gBAKlB,eAAe,EAAA,CAAA;sBADrB,KAAK;gBAKC,iBAAiB,EAAA,CAAA;sBADvB,KAAK;gBAKC,eAAe,EAAA,CAAA;sBADrB,KAAK;gBAKC,aAAa,EAAA,CAAA;sBADnB,MAAM;gBAKA,YAAY,EAAA,CAAA;sBADlB,MAAM;;;MEhEE,eAAe,CAAA;wGAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;yGAAf,eAAe,EAAA,OAAA,EAAA,CAHd,kBAAkB,CAAA,EAAA,OAAA,EAAA,CAClB,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,YAHd,kBAAkB,CAAA,EAAA,CAAA,CAAA;;4FAGnB,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACN,OAAO,EAAE,CAAC,kBAAkB,CAAC;oBAC7B,OAAO,EAAE,CAAC,kBAAkB,CAAC;AAChC,iBAAA,CAAA;;;ACPD;;AAEG;;;;"}
@@ -298,13 +298,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
298
298
  args: ['touchend']
299
299
  }] } });
300
300
 
301
- /**
302
- * @deprecated Será removido na v20. Importe diretamente o standalone `TooltipDirective` (de
303
- * `@seniorsistemas/angular-components/tooltip`) no lugar deste módulo.
304
- *
305
- * Migração automática (também executada pelo `ng update` na v20):
306
- * `ng generate @seniorsistemas/angular-components:migrate-modules-to-standalone`
307
- */
308
301
  class TooltipModule {
309
302
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
310
303
  static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: TooltipModule, imports: [TooltipDirective], exports: [TooltipDirective] });
@@ -1 +1 @@
1
- {"version":3,"file":"seniorsistemas-angular-components-tooltip.mjs","sources":["../../projects/angular-components/tooltip/src/lib/tooltip/tooltip.component.ts","../../projects/angular-components/tooltip/src/lib/tooltip/tooltip.component.html","../../projects/angular-components/tooltip/src/lib/tooltip/tooltip.directive.ts","../../projects/angular-components/tooltip/src/lib/tooltip/tooltip.module.ts","../../projects/angular-components/tooltip/src/seniorsistemas-angular-components-tooltip.ts"],"sourcesContent":["import { NgClass } from '@angular/common';\nimport { Component, input } from '@angular/core';\n\nimport { TooltipPositions } from './models/tooltip-position';\n\n/**\n * @description Componente de apresentação do tooltip. Utilizado internamente pela diretiva `TooltipDirective`.\n * O posicionamento é gerenciado pelo CDK Overlay via `TooltipDirective`.\n */\n@Component({\n selector: 's-tooltip',\n templateUrl: './tooltip.component.html',\n styleUrls: ['./tooltip.component.scss'],\n standalone: true,\n imports: [NgClass],\n})\nexport class TooltipComponent {\n /** @description Texto ou HTML a ser exibido no tooltip. */\n public readonly tooltip = input<string>('');\n\n /** @description Posição do tooltip — usada para renderizar a seta no lado correto. */\n public readonly position = input<TooltipPositions>('top');\n\n /** @description Controla a visibilidade (opacidade) do tooltip via transição CSS. */\n public readonly visible = input<boolean>(false);\n\n /** @description Quando `true`, o conteúdo é renderizado como texto puro (escapa HTML). */\n public readonly escape = input<boolean>(false);\n}\n\n","<div\n class=\"tooltip relative max-w-[220px] break-words rounded-xsmall bg-grayscale-100 p-2 text-center font-open-sans text-sm font-normal leading-normal text-grayscale-0 transition-opacity duration-300\"\n [class.opacity-0]=\"!visible()\"\n [class.opacity-100]=\"visible()\"\n [class.tooltip--visible]=\"visible()\"\n [ngClass]=\"'tooltip--' + position()\"\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\n","import { ConnectedPosition, FlexibleConnectedPositionStrategy, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport {\n ComponentRef,\n Directive,\n ElementRef,\n HostListener,\n OnDestroy,\n OnInit,\n Renderer2,\n inject,\n input,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { DebounceUtils } from '@seniorsistemas/angular-components/common';\nimport { MobileBehavior } from './models/mobile-behavior';\nimport { TooltipEvent } from './models/tooltip-event';\nimport { TooltipPositions } from './models/tooltip-position';\nimport { TooltipComponent } from './tooltip.component';\n\n/**\n * @description Diretiva que exibe um tooltip (dica de ferramenta) flutuante ao interagir com o elemento hospedeiro.\n * Posiciona-se automaticamente considerando o espaço disponível na tela, utilizando o CDK Overlay.\n * Suporta eventos de hover, click e focus, além de comportamentos customizados para mobile.\n *\n * @example\n * ```html\n * <button sTooltip=\"Clique aqui\" tooltipPosition=\"top\">Ação</button>\n * ```\n *\n * @category Overlay\n */\n@Directive({\n selector: '[sTooltip]',\n standalone: true,\n})\nexport class TooltipDirective implements OnInit, OnDestroy {\n /**\n * @description Texto exibido no tooltip. Quando vazio ou `undefined`, o tooltip não é renderizado.\n */\n public readonly tooltip = input<string | undefined>(undefined, { alias: 'sTooltip' });\n\n /**\n * @description Posição preferencial do tooltip em relação ao elemento hospedeiro.\n * O tooltip se reposiciona automaticamente se não houver espaço suficiente.\n *\n * @default 'top'\n */\n public readonly tooltipPosition = input<TooltipPositions>('top');\n\n /**\n * @description Tempo em milissegundos antes do tooltip aparecer após o evento de ativação.\n *\n * @default 500\n */\n public readonly showDelay = input<number>(500);\n\n /**\n * @description Tempo em milissegundos que o tooltip permanece visível após aparecer.\n * Quando não informado, o tooltip permanece até o usuário sair do elemento.\n */\n public readonly displayTime = input<number | undefined>(undefined);\n\n /**\n * @description Evento do elemento hospedeiro que dispara a exibição do tooltip.\n * - `'hover'`: exibe ao passar o mouse (padrão).\n * - `'click'`: exibe ao clicar.\n * - `'focus'`: exibe ao focar no elemento.\n *\n * @default 'hover'\n */\n public readonly tooltipEvent = input<TooltipEvent>('hover');\n\n /**\n * @description Quando `true`, o conteúdo HTML do tooltip é escapado antes de ser renderizado.\n *\n * @default false\n */\n public readonly escape = input<boolean>(false);\n\n /**\n * @description Quando `false`, o tooltip nunca é exibido, mesmo que haja interação do usuário.\n * Útil para desabilitar tooltips dinamicamente.\n *\n * @default true\n */\n public readonly visible = input<boolean>(true);\n\n /**\n * @description Comportamento do tooltip em dispositivos móveis (touch).\n * - `'pressing'`: exibe ao pressionar e manter o toque (padrão).\n * - `'none'`: desabilita o tooltip em dispositivos táteis.\n *\n * @default 'pressing'\n */\n public readonly mobileBehavior = input<MobileBehavior>('pressing');\n\n /**\n * @description Referência a um input HTML para sincronizar a exibição do tooltip com o foco no campo.\n */\n public readonly focusedInputRef = input<HTMLInputElement | null>(null);\n\n /**\n * @description Quando `true`, o tooltip só é exibido se o texto do elemento estiver truncado (overflow).\n * Útil para cells de tabela ou elementos com `text-overflow: ellipsis`.\n *\n * @default false\n */\n public readonly checkTruncatedText = input<boolean>(false);\n\n private readonly elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly overlay = inject(Overlay);\n private readonly debounceUtils = inject(DebounceUtils);\n private readonly renderer = inject(Renderer2);\n\n private overlayRef: OverlayRef | null = null;\n private componentRef: ComponentRef<TooltipComponent> | null = null;\n private positionChangeSubscription: Subscription | null = null;\n private showTimeout?: number;\n private touchTimeout?: number;\n private tooltipCreatedByFocus = false;\n private readonly debounceCreateTooltipFunction = this.debounceUtils.debounceLeading(() =>\n this._createTooltip(true, true),\n );\n\n public ngOnInit(): void {\n this.validatePosition();\n this.updateTooltipVisibilityWhenFocusOnInput();\n }\n\n public ngOnDestroy(): void {\n this.destroy();\n }\n\n // whenever the component with the tooltip is clicked I destroy the tooltip.\n // whenever a key is pressed on the component with the tooltip I destroy the tooltip.\n @HostListener('click')\n @HostListener('keydown')\n public onClick(): void {\n if (\n this.tooltipEvent() === 'hover' &&\n !navigator.userAgent.match(/Android/i) &&\n !navigator.userAgent.match(/iPhone/i)\n ) {\n this.destroy();\n }\n }\n\n @HostListener('focus')\n public onFocus(): void {\n if (this.tooltipEvent() === 'focus') {\n this._createTooltip(true, true);\n }\n }\n\n @HostListener('blur')\n public onBlur(): void {\n if (this.tooltipEvent() === 'focus') {\n this.destroy();\n }\n }\n\n @HostListener('mouseenter')\n public onMouseEnter(): void {\n if (this.tooltipEvent() === 'hover' || this.focusedInputRef()) {\n this.debounceCreateTooltipFunction();\n }\n }\n\n @HostListener('mouseleave')\n @HostListener('wheel')\n public onMouseLeave(): void {\n if ((this.tooltipEvent() === 'hover' || this.focusedInputRef()) && !this.tooltipCreatedByFocus) {\n this.destroy();\n }\n }\n\n @HostListener('touchstart')\n public onTouchStart(): void {\n if (this.tooltipEvent() === 'hover') {\n window.clearTimeout(this.touchTimeout);\n const delay = this.mobileBehavior() === 'pressing' ? this.showDelay() : 0;\n this.touchTimeout = window.setTimeout(() => {\n this._createTooltip(true, true);\n }, delay);\n }\n }\n\n @HostListener('touchend')\n public onTouchEnd(): void {\n if (this.tooltipEvent() === 'hover' && this.mobileBehavior() === 'pressing') {\n window.clearTimeout(this.touchTimeout);\n this.destroy();\n }\n }\n\n private validatePosition(): void {\n const containsPosition = ['top', 'right', 'bottom', 'left'].includes(this.tooltipPosition());\n if (!containsPosition) {\n throw new Error(`Tooltip position \"${this.tooltipPosition()}\" is unexpected`);\n }\n }\n\n /**\n * Manipula a visibilidade do tooltip quando houver uma referência de input.\n */\n private updateTooltipVisibilityWhenFocusOnInput(): void {\n const inputRef = this.focusedInputRef();\n if (!inputRef) return;\n\n this.renderer.listen(inputRef, 'focus', () => {\n this._createTooltip(false, false);\n this.tooltipCreatedByFocus = true;\n });\n this.renderer.listen(inputRef, 'blur', () => {\n this.destroy();\n this.tooltipCreatedByFocus = false;\n });\n }\n\n private _createTooltip(useShowDelay = false, autoDestroy = true): void {\n const tooltipValue = this.tooltip();\n const tooltipText = tooltipValue === undefined || tooltipValue === null ? '' : String(tooltipValue);\n if (!tooltipText.length || this.overlayRef !== null) return;\n\n if (this.checkTruncatedText() && !this.contentIsTruncated) return;\n\n const positionStrategy = this.buildPositionStrategy();\n const scrollStrategy = this.overlay.scrollStrategies.reposition();\n\n this.overlayRef = this.overlay.create({ positionStrategy, scrollStrategy });\n\n const portal = new ComponentPortal(TooltipComponent);\n this.componentRef = this.overlayRef.attach(portal);\n\n this.componentRef.setInput('tooltip', tooltipText);\n this.componentRef.setInput('escape', this.escape());\n this.componentRef.setInput('position', this.tooltipPosition());\n\n this.positionChangeSubscription = positionStrategy.positionChanges.subscribe((change) => {\n const mappedPosition = this.mapCdkPositionToTooltipPosition(change.connectionPair);\n this.componentRef?.setInput('position', mappedPosition);\n });\n\n const delay = useShowDelay ? this.showDelay() : 0;\n this.showTimeout = window.setTimeout(() => {\n this.componentRef?.setInput('visible', this.visible());\n }, delay);\n\n if (autoDestroy && this.displayTime()) {\n window.setTimeout(() => {\n this.destroy();\n }, this.displayTime()!);\n }\n }\n\n private buildPositionStrategy(): FlexibleConnectedPositionStrategy {\n const preferred = this.tooltipPosition();\n const allPositions: TooltipPositions[] = ['top', 'bottom', 'left', 'right'];\n const orderedPositions = [preferred, ...allPositions.filter((p) => p !== preferred)];\n\n return this.overlay\n .position()\n .flexibleConnectedTo(this.elementRef)\n .withPositions(orderedPositions.map((p) => this.getConnectedPosition(p)))\n .withFlexibleDimensions(false)\n .withPush(false);\n }\n\n private getConnectedPosition(pos: TooltipPositions): ConnectedPosition {\n const offset = 10;\n const positionMap: Record<TooltipPositions, ConnectedPosition> = {\n top: { originX: 'center', originY: 'top', overlayX: 'center', overlayY: 'bottom', offsetY: -offset },\n bottom: { originX: 'center', originY: 'bottom', overlayX: 'center', overlayY: 'top', offsetY: offset },\n left: { originX: 'start', originY: 'center', overlayX: 'end', overlayY: 'center', offsetX: -offset },\n right: { originX: 'end', originY: 'center', overlayX: 'start', overlayY: 'center', offsetX: offset },\n };\n return positionMap[pos];\n }\n\n private mapCdkPositionToTooltipPosition(pair: { overlayX: string; overlayY: string }): TooltipPositions {\n if (pair.overlayY === 'bottom') return 'top';\n if (pair.overlayY === 'top') return 'bottom';\n if (pair.overlayX === 'end') return 'left';\n return 'right';\n }\n\n private destroy(): void {\n window.clearTimeout(this.showTimeout);\n window.clearTimeout(this.touchTimeout);\n this.positionChangeSubscription?.unsubscribe();\n this.positionChangeSubscription = null;\n if (this.overlayRef) {\n this.overlayRef.dispose();\n this.overlayRef = null;\n this.componentRef = null;\n }\n }\n\n private get contentIsTruncated(): boolean {\n const element = this.elementRef.nativeElement as HTMLElement;\n return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n }\n}\n\n","import { NgModule } from '@angular/core';\r\n\r\nimport { TooltipDirective } from './tooltip.directive';\r\n\r\n/**\r\n * @deprecated Será removido na v20. Importe diretamente o standalone `TooltipDirective` (de\r\n * `@seniorsistemas/angular-components/tooltip`) no lugar deste módulo.\r\n *\r\n * Migração automática (também executada pelo `ng update` na v20):\r\n * `ng generate @seniorsistemas/angular-components:migrate-modules-to-standalone`\r\n */\r\n@NgModule({\r\n imports: [TooltipDirective],\r\n exports: [TooltipDirective],\r\n})\r\nexport class TooltipModule {}\r\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-tooltip.mjs","sources":["../../projects/angular-components/tooltip/src/lib/tooltip/tooltip.component.ts","../../projects/angular-components/tooltip/src/lib/tooltip/tooltip.component.html","../../projects/angular-components/tooltip/src/lib/tooltip/tooltip.directive.ts","../../projects/angular-components/tooltip/src/lib/tooltip/tooltip.module.ts","../../projects/angular-components/tooltip/src/seniorsistemas-angular-components-tooltip.ts"],"sourcesContent":["import { NgClass } from '@angular/common';\nimport { Component, input } from '@angular/core';\n\nimport { TooltipPositions } from './models/tooltip-position';\n\n/**\n * @description Componente de apresentação do tooltip. Utilizado internamente pela diretiva `TooltipDirective`.\n * O posicionamento é gerenciado pelo CDK Overlay via `TooltipDirective`.\n */\n@Component({\n selector: 's-tooltip',\n templateUrl: './tooltip.component.html',\n styleUrls: ['./tooltip.component.scss'],\n standalone: true,\n imports: [NgClass],\n})\nexport class TooltipComponent {\n /** @description Texto ou HTML a ser exibido no tooltip. */\n public readonly tooltip = input<string>('');\n\n /** @description Posição do tooltip — usada para renderizar a seta no lado correto. */\n public readonly position = input<TooltipPositions>('top');\n\n /** @description Controla a visibilidade (opacidade) do tooltip via transição CSS. */\n public readonly visible = input<boolean>(false);\n\n /** @description Quando `true`, o conteúdo é renderizado como texto puro (escapa HTML). */\n public readonly escape = input<boolean>(false);\n}\n\n","<div\n class=\"tooltip relative max-w-[220px] break-words rounded-xsmall bg-grayscale-100 p-2 text-center font-open-sans text-sm font-normal leading-normal text-grayscale-0 transition-opacity duration-300\"\n [class.opacity-0]=\"!visible()\"\n [class.opacity-100]=\"visible()\"\n [class.tooltip--visible]=\"visible()\"\n [ngClass]=\"'tooltip--' + position()\"\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\n","import { ConnectedPosition, FlexibleConnectedPositionStrategy, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport {\n ComponentRef,\n Directive,\n ElementRef,\n HostListener,\n OnDestroy,\n OnInit,\n Renderer2,\n inject,\n input,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { DebounceUtils } from '@seniorsistemas/angular-components/common';\nimport { MobileBehavior } from './models/mobile-behavior';\nimport { TooltipEvent } from './models/tooltip-event';\nimport { TooltipPositions } from './models/tooltip-position';\nimport { TooltipComponent } from './tooltip.component';\n\n/**\n * @description Diretiva que exibe um tooltip (dica de ferramenta) flutuante ao interagir com o elemento hospedeiro.\n * Posiciona-se automaticamente considerando o espaço disponível na tela, utilizando o CDK Overlay.\n * Suporta eventos de hover, click e focus, além de comportamentos customizados para mobile.\n *\n * @example\n * ```html\n * <button sTooltip=\"Clique aqui\" tooltipPosition=\"top\">Ação</button>\n * ```\n *\n * @category Overlay\n */\n@Directive({\n selector: '[sTooltip]',\n standalone: true,\n})\nexport class TooltipDirective implements OnInit, OnDestroy {\n /**\n * @description Texto exibido no tooltip. Quando vazio ou `undefined`, o tooltip não é renderizado.\n */\n public readonly tooltip = input<string | undefined>(undefined, { alias: 'sTooltip' });\n\n /**\n * @description Posição preferencial do tooltip em relação ao elemento hospedeiro.\n * O tooltip se reposiciona automaticamente se não houver espaço suficiente.\n *\n * @default 'top'\n */\n public readonly tooltipPosition = input<TooltipPositions>('top');\n\n /**\n * @description Tempo em milissegundos antes do tooltip aparecer após o evento de ativação.\n *\n * @default 500\n */\n public readonly showDelay = input<number>(500);\n\n /**\n * @description Tempo em milissegundos que o tooltip permanece visível após aparecer.\n * Quando não informado, o tooltip permanece até o usuário sair do elemento.\n */\n public readonly displayTime = input<number | undefined>(undefined);\n\n /**\n * @description Evento do elemento hospedeiro que dispara a exibição do tooltip.\n * - `'hover'`: exibe ao passar o mouse (padrão).\n * - `'click'`: exibe ao clicar.\n * - `'focus'`: exibe ao focar no elemento.\n *\n * @default 'hover'\n */\n public readonly tooltipEvent = input<TooltipEvent>('hover');\n\n /**\n * @description Quando `true`, o conteúdo HTML do tooltip é escapado antes de ser renderizado.\n *\n * @default false\n */\n public readonly escape = input<boolean>(false);\n\n /**\n * @description Quando `false`, o tooltip nunca é exibido, mesmo que haja interação do usuário.\n * Útil para desabilitar tooltips dinamicamente.\n *\n * @default true\n */\n public readonly visible = input<boolean>(true);\n\n /**\n * @description Comportamento do tooltip em dispositivos móveis (touch).\n * - `'pressing'`: exibe ao pressionar e manter o toque (padrão).\n * - `'none'`: desabilita o tooltip em dispositivos táteis.\n *\n * @default 'pressing'\n */\n public readonly mobileBehavior = input<MobileBehavior>('pressing');\n\n /**\n * @description Referência a um input HTML para sincronizar a exibição do tooltip com o foco no campo.\n */\n public readonly focusedInputRef = input<HTMLInputElement | null>(null);\n\n /**\n * @description Quando `true`, o tooltip só é exibido se o texto do elemento estiver truncado (overflow).\n * Útil para cells de tabela ou elementos com `text-overflow: ellipsis`.\n *\n * @default false\n */\n public readonly checkTruncatedText = input<boolean>(false);\n\n private readonly elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly overlay = inject(Overlay);\n private readonly debounceUtils = inject(DebounceUtils);\n private readonly renderer = inject(Renderer2);\n\n private overlayRef: OverlayRef | null = null;\n private componentRef: ComponentRef<TooltipComponent> | null = null;\n private positionChangeSubscription: Subscription | null = null;\n private showTimeout?: number;\n private touchTimeout?: number;\n private tooltipCreatedByFocus = false;\n private readonly debounceCreateTooltipFunction = this.debounceUtils.debounceLeading(() =>\n this._createTooltip(true, true),\n );\n\n public ngOnInit(): void {\n this.validatePosition();\n this.updateTooltipVisibilityWhenFocusOnInput();\n }\n\n public ngOnDestroy(): void {\n this.destroy();\n }\n\n // whenever the component with the tooltip is clicked I destroy the tooltip.\n // whenever a key is pressed on the component with the tooltip I destroy the tooltip.\n @HostListener('click')\n @HostListener('keydown')\n public onClick(): void {\n if (\n this.tooltipEvent() === 'hover' &&\n !navigator.userAgent.match(/Android/i) &&\n !navigator.userAgent.match(/iPhone/i)\n ) {\n this.destroy();\n }\n }\n\n @HostListener('focus')\n public onFocus(): void {\n if (this.tooltipEvent() === 'focus') {\n this._createTooltip(true, true);\n }\n }\n\n @HostListener('blur')\n public onBlur(): void {\n if (this.tooltipEvent() === 'focus') {\n this.destroy();\n }\n }\n\n @HostListener('mouseenter')\n public onMouseEnter(): void {\n if (this.tooltipEvent() === 'hover' || this.focusedInputRef()) {\n this.debounceCreateTooltipFunction();\n }\n }\n\n @HostListener('mouseleave')\n @HostListener('wheel')\n public onMouseLeave(): void {\n if ((this.tooltipEvent() === 'hover' || this.focusedInputRef()) && !this.tooltipCreatedByFocus) {\n this.destroy();\n }\n }\n\n @HostListener('touchstart')\n public onTouchStart(): void {\n if (this.tooltipEvent() === 'hover') {\n window.clearTimeout(this.touchTimeout);\n const delay = this.mobileBehavior() === 'pressing' ? this.showDelay() : 0;\n this.touchTimeout = window.setTimeout(() => {\n this._createTooltip(true, true);\n }, delay);\n }\n }\n\n @HostListener('touchend')\n public onTouchEnd(): void {\n if (this.tooltipEvent() === 'hover' && this.mobileBehavior() === 'pressing') {\n window.clearTimeout(this.touchTimeout);\n this.destroy();\n }\n }\n\n private validatePosition(): void {\n const containsPosition = ['top', 'right', 'bottom', 'left'].includes(this.tooltipPosition());\n if (!containsPosition) {\n throw new Error(`Tooltip position \"${this.tooltipPosition()}\" is unexpected`);\n }\n }\n\n /**\n * Manipula a visibilidade do tooltip quando houver uma referência de input.\n */\n private updateTooltipVisibilityWhenFocusOnInput(): void {\n const inputRef = this.focusedInputRef();\n if (!inputRef) return;\n\n this.renderer.listen(inputRef, 'focus', () => {\n this._createTooltip(false, false);\n this.tooltipCreatedByFocus = true;\n });\n this.renderer.listen(inputRef, 'blur', () => {\n this.destroy();\n this.tooltipCreatedByFocus = false;\n });\n }\n\n private _createTooltip(useShowDelay = false, autoDestroy = true): void {\n const tooltipValue = this.tooltip();\n const tooltipText = tooltipValue === undefined || tooltipValue === null ? '' : String(tooltipValue);\n if (!tooltipText.length || this.overlayRef !== null) return;\n\n if (this.checkTruncatedText() && !this.contentIsTruncated) return;\n\n const positionStrategy = this.buildPositionStrategy();\n const scrollStrategy = this.overlay.scrollStrategies.reposition();\n\n this.overlayRef = this.overlay.create({ positionStrategy, scrollStrategy });\n\n const portal = new ComponentPortal(TooltipComponent);\n this.componentRef = this.overlayRef.attach(portal);\n\n this.componentRef.setInput('tooltip', tooltipText);\n this.componentRef.setInput('escape', this.escape());\n this.componentRef.setInput('position', this.tooltipPosition());\n\n this.positionChangeSubscription = positionStrategy.positionChanges.subscribe((change) => {\n const mappedPosition = this.mapCdkPositionToTooltipPosition(change.connectionPair);\n this.componentRef?.setInput('position', mappedPosition);\n });\n\n const delay = useShowDelay ? this.showDelay() : 0;\n this.showTimeout = window.setTimeout(() => {\n this.componentRef?.setInput('visible', this.visible());\n }, delay);\n\n if (autoDestroy && this.displayTime()) {\n window.setTimeout(() => {\n this.destroy();\n }, this.displayTime()!);\n }\n }\n\n private buildPositionStrategy(): FlexibleConnectedPositionStrategy {\n const preferred = this.tooltipPosition();\n const allPositions: TooltipPositions[] = ['top', 'bottom', 'left', 'right'];\n const orderedPositions = [preferred, ...allPositions.filter((p) => p !== preferred)];\n\n return this.overlay\n .position()\n .flexibleConnectedTo(this.elementRef)\n .withPositions(orderedPositions.map((p) => this.getConnectedPosition(p)))\n .withFlexibleDimensions(false)\n .withPush(false);\n }\n\n private getConnectedPosition(pos: TooltipPositions): ConnectedPosition {\n const offset = 10;\n const positionMap: Record<TooltipPositions, ConnectedPosition> = {\n top: { originX: 'center', originY: 'top', overlayX: 'center', overlayY: 'bottom', offsetY: -offset },\n bottom: { originX: 'center', originY: 'bottom', overlayX: 'center', overlayY: 'top', offsetY: offset },\n left: { originX: 'start', originY: 'center', overlayX: 'end', overlayY: 'center', offsetX: -offset },\n right: { originX: 'end', originY: 'center', overlayX: 'start', overlayY: 'center', offsetX: offset },\n };\n return positionMap[pos];\n }\n\n private mapCdkPositionToTooltipPosition(pair: { overlayX: string; overlayY: string }): TooltipPositions {\n if (pair.overlayY === 'bottom') return 'top';\n if (pair.overlayY === 'top') return 'bottom';\n if (pair.overlayX === 'end') return 'left';\n return 'right';\n }\n\n private destroy(): void {\n window.clearTimeout(this.showTimeout);\n window.clearTimeout(this.touchTimeout);\n this.positionChangeSubscription?.unsubscribe();\n this.positionChangeSubscription = null;\n if (this.overlayRef) {\n this.overlayRef.dispose();\n this.overlayRef = null;\n this.componentRef = null;\n }\n }\n\n private get contentIsTruncated(): boolean {\n const element = this.elementRef.nativeElement as HTMLElement;\n return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n }\n}\n\n","import { NgModule } from '@angular/core';\r\n\r\nimport { TooltipDirective } from './tooltip.directive';\r\n\r\n@NgModule({\r\n imports: [TooltipDirective],\r\n exports: [TooltipDirective],\r\n})\r\nexport class TooltipModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -81,16 +81,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
81
81
  args: ['headerContainer', { static: false }]
82
82
  }] } });
83
83
 
84
- /**
85
- * @deprecated Será removido na v20. Importe diretamente o standalone `TopbarComponent` (de
86
- * `@seniorsistemas/angular-components/topbar`) no lugar deste módulo.
87
- *
88
- * Este módulo também reexportava `ThumbnailComponent` (`@seniorsistemas/angular-components/thumbnail`, usado
89
- * em templates por `<s-thumbnail>`). Se o seu template usa algum deles, importe-o diretamente.
90
- *
91
- * Migração automática (também executada pelo `ng update` na v20):
92
- * `ng generate @seniorsistemas/angular-components:migrate-modules-to-standalone`
93
- */
94
84
  class TopbarModule {
95
85
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TopbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
96
86
  static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: TopbarModule, imports: [ThumbnailModule, TopbarComponent], exports: [TopbarComponent, ThumbnailModule] });
@@ -1 +1 @@
1
- {"version":3,"file":"seniorsistemas-angular-components-topbar.mjs","sources":["../../projects/angular-components/topbar/src/lib/topbar/topbar.component.ts","../../projects/angular-components/topbar/src/lib/topbar/topbar.component.html","../../projects/angular-components/topbar/src/lib/topbar/topbar.module.ts","../../projects/angular-components/topbar/src/seniorsistemas-angular-components-topbar.ts"],"sourcesContent":["import { AfterViewInit, Component, ElementRef, Input, ViewChild } from '@angular/core';\r\n\r\nimport { DEPRECATED_CONFIG } from '@seniorsistemas/angular-components/common/deprecated-selector';\r\nimport { DeprecatedSelectorDirective } from '@seniorsistemas/angular-components/common/deprecated-selector';\r\n\r\n/**\r\n * @description Componente de barra superior (topbar) com título e suporte a\r\n * conteúdo transclusão. Também responde ao seletor legado `s-product-header`.\r\n *\r\n * @example\r\n * ```html\r\n * <s-topbar header=\"Minha Aplicação\">\r\n * <!-- ações e menus -->\r\n * </s-topbar>\r\n * ```\r\n *\r\n * @category Structure\r\n */\r\n@Component({\r\n selector: 's-topbar, s-product-header',\r\n templateUrl: './topbar.component.html',\r\n styleUrls: ['./topbar.component.scss'],\r\n hostDirectives: [DeprecatedSelectorDirective],\r\n providers: [\r\n {\r\n provide: DEPRECATED_CONFIG,\r\n useValue: {\r\n oldSelector: 's-product-header',\r\n newSelector: 's-topbar',\r\n removalVersion: '20.0.0',\r\n },\r\n },\r\n ],\r\n standalone: true,\r\n})\r\nexport class TopbarComponent implements AfterViewInit {\r\n public static readonly nextIdSeed = 0;\r\n private static _nextId = TopbarComponent.nextIdSeed;\r\n\r\n public static getNextId(): number {\r\n return this._nextId++;\r\n }\r\n\r\n /** @description Identificador único do componente no DOM. Gerado automaticamente se não informado. */\r\n @Input()\r\n public id = `s-topbar-${TopbarComponent.getNextId()}`;\r\n\r\n /** @description Título exibido na barra superior. Campo obrigatório. */\r\n @Input({ required: true })\r\n public header!: string;\r\n\r\n /** @description Z-index base aplicado ao componente. @default 0 */\r\n @Input()\r\n public baseZIndex = 0;\r\n\r\n /** @description Quando `true`, aplica borda inferior; quando `false`, aplica borda superior. @default true */\r\n @Input()\r\n public isHeaderFrame = true;\r\n\r\n @ViewChild('headerContainer', { static: false })\r\n public container: ElementRef | null = null;\r\n\r\n public ngAfterViewInit(): void {\r\n if (!this.container) {\r\n return;\r\n }\r\n\r\n if (this.isHeaderFrame) {\r\n this.container.nativeElement.style.borderBottom = '1px solid #ddd';\r\n } else {\r\n this.container.nativeElement.style.borderTop = '1px solid #ddd';\r\n }\r\n }\r\n}\r\n","<div [id]=\"id\" class=\"box\">\n <div\n #headerContainer\n class=\"sds-container\"\n [class]=\"isHeaderFrame ? 'header-frame' : 'primary-header'\"\n >\n <h1 [class]=\"isHeaderFrame ? 'title' : 'primary-title'\">{{ header }}</h1>\n <div class=\"content\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n","import { NgModule } from '@angular/core';\r\n\r\nimport { ThumbnailModule } from '@seniorsistemas/angular-components/thumbnail';\r\nimport { TopbarComponent } from './topbar.component';\r\n\r\n/**\r\n * @deprecated Será removido na v20. Importe diretamente o standalone `TopbarComponent` (de\r\n * `@seniorsistemas/angular-components/topbar`) no lugar deste módulo.\r\n *\r\n * Este módulo também reexportava `ThumbnailComponent` (`@seniorsistemas/angular-components/thumbnail`, usado\r\n * em templates por `<s-thumbnail>`). Se o seu template usa algum deles, importe-o diretamente.\r\n *\r\n * Migração automática (também executada pelo `ng update` na v20):\r\n * `ng generate @seniorsistemas/angular-components:migrate-modules-to-standalone`\r\n */\r\n@NgModule({\r\n imports: [ThumbnailModule, TopbarComponent],\r\n exports: [TopbarComponent, ThumbnailModule],\r\n})\r\nexport class TopbarModule {}\r\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-topbar.mjs","sources":["../../projects/angular-components/topbar/src/lib/topbar/topbar.component.ts","../../projects/angular-components/topbar/src/lib/topbar/topbar.component.html","../../projects/angular-components/topbar/src/lib/topbar/topbar.module.ts","../../projects/angular-components/topbar/src/seniorsistemas-angular-components-topbar.ts"],"sourcesContent":["import { AfterViewInit, Component, ElementRef, Input, ViewChild } from '@angular/core';\r\n\r\nimport { DEPRECATED_CONFIG } from '@seniorsistemas/angular-components/common/deprecated-selector';\r\nimport { DeprecatedSelectorDirective } from '@seniorsistemas/angular-components/common/deprecated-selector';\r\n\r\n/**\r\n * @description Componente de barra superior (topbar) com título e suporte a\r\n * conteúdo transclusão. Também responde ao seletor legado `s-product-header`.\r\n *\r\n * @example\r\n * ```html\r\n * <s-topbar header=\"Minha Aplicação\">\r\n * <!-- ações e menus -->\r\n * </s-topbar>\r\n * ```\r\n *\r\n * @category Structure\r\n */\r\n@Component({\r\n selector: 's-topbar, s-product-header',\r\n templateUrl: './topbar.component.html',\r\n styleUrls: ['./topbar.component.scss'],\r\n hostDirectives: [DeprecatedSelectorDirective],\r\n providers: [\r\n {\r\n provide: DEPRECATED_CONFIG,\r\n useValue: {\r\n oldSelector: 's-product-header',\r\n newSelector: 's-topbar',\r\n removalVersion: '20.0.0',\r\n },\r\n },\r\n ],\r\n standalone: true,\r\n})\r\nexport class TopbarComponent implements AfterViewInit {\r\n public static readonly nextIdSeed = 0;\r\n private static _nextId = TopbarComponent.nextIdSeed;\r\n\r\n public static getNextId(): number {\r\n return this._nextId++;\r\n }\r\n\r\n /** @description Identificador único do componente no DOM. Gerado automaticamente se não informado. */\r\n @Input()\r\n public id = `s-topbar-${TopbarComponent.getNextId()}`;\r\n\r\n /** @description Título exibido na barra superior. Campo obrigatório. */\r\n @Input({ required: true })\r\n public header!: string;\r\n\r\n /** @description Z-index base aplicado ao componente. @default 0 */\r\n @Input()\r\n public baseZIndex = 0;\r\n\r\n /** @description Quando `true`, aplica borda inferior; quando `false`, aplica borda superior. @default true */\r\n @Input()\r\n public isHeaderFrame = true;\r\n\r\n @ViewChild('headerContainer', { static: false })\r\n public container: ElementRef | null = null;\r\n\r\n public ngAfterViewInit(): void {\r\n if (!this.container) {\r\n return;\r\n }\r\n\r\n if (this.isHeaderFrame) {\r\n this.container.nativeElement.style.borderBottom = '1px solid #ddd';\r\n } else {\r\n this.container.nativeElement.style.borderTop = '1px solid #ddd';\r\n }\r\n }\r\n}\r\n","<div [id]=\"id\" class=\"box\">\n <div\n #headerContainer\n class=\"sds-container\"\n [class]=\"isHeaderFrame ? 'header-frame' : 'primary-header'\"\n >\n <h1 [class]=\"isHeaderFrame ? 'title' : 'primary-title'\">{{ header }}</h1>\n <div class=\"content\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n","import { NgModule } from '@angular/core';\r\n\r\nimport { ThumbnailModule } from '@seniorsistemas/angular-components/thumbnail';\r\nimport { TopbarComponent } from './topbar.component';\r\n\r\n@NgModule({\r\n imports: [ThumbnailModule, TopbarComponent],\r\n exports: [TopbarComponent, ThumbnailModule],\r\n})\r\nexport class TopbarModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -432,13 +432,6 @@ const parseInternalTreeNodeItem = (internalTreeNodeItem) => {
432
432
  return object;
433
433
  };
434
434
 
435
- /**
436
- * @deprecated Será removido na v20. Importe diretamente o standalone `TreeComponent` (de
437
- * `@seniorsistemas/angular-components/tree`) no lugar deste módulo.
438
- *
439
- * Migração automática (também executada pelo `ng update` na v20):
440
- * `ng generate @seniorsistemas/angular-components:migrate-modules-to-standalone`
441
- */
442
435
  class TreeModule {
443
436
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TreeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
444
437
  static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: TreeModule, imports: [TreeComponent], exports: [TreeComponent] });