@seniorsistemas/angular-components 17.27.1-fix-interactive-content-22e06381 → 17.27.1-fixlookupteste-sds-110-61c171a4

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 (933) hide show
  1. package/dynamic-form/lib/dynamic-form/components/lookup/lookup.component.d.ts +2 -1
  2. package/dynamic-form/lib/dynamic-form/dynamic-form.module.d.ts +23 -23
  3. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/lookup-field.d.ts +2 -0
  4. package/dynamic-form/lib/dynamic-form/form-field/fields/radio-button/radio-button-field.component.d.ts +3 -3
  5. package/esm2022/accordion/lib/accordion/accordion.component.mjs +84 -0
  6. package/esm2022/accordion/lib/accordion/accordion.module.mjs +36 -0
  7. package/esm2022/accordion/lib/accordion/components/accordion-panel/accordion-panel.component.mjs +124 -0
  8. package/esm2022/accordion/lib/accordion/models/accordion-button-settings.mjs +2 -0
  9. package/esm2022/accordion/public-api.mjs +4 -0
  10. package/esm2022/accordion/seniorsistemas-angular-components-accordion.mjs +5 -0
  11. package/esm2022/alert/lib/alert/alert.component.mjs +44 -0
  12. package/esm2022/alert/lib/alert/alert.module.mjs +18 -0
  13. package/esm2022/alert/public-api.mjs +3 -0
  14. package/esm2022/alert/seniorsistemas-angular-components-alert.mjs +5 -0
  15. package/esm2022/badge/lib/badge/badge.component.mjs +46 -0
  16. package/esm2022/badge/lib/badge/badge.module.mjs +20 -0
  17. package/esm2022/badge/lib/badge/types/badge-colors.mjs +4 -0
  18. package/esm2022/badge/lib/badge/types/badge-types.mjs +2 -0
  19. package/esm2022/badge/public-api.mjs +3 -0
  20. package/esm2022/badge/seniorsistemas-angular-components-badge.mjs +5 -0
  21. package/esm2022/bignumber-input/lib/bignumber-input/bignumber-input.directive.mjs +156 -0
  22. package/esm2022/bignumber-input/lib/bignumber-input/bignumber-input.module.mjs +21 -0
  23. package/esm2022/bignumber-input/public-api.mjs +3 -0
  24. package/esm2022/bignumber-input/seniorsistemas-angular-components-bignumber-input.mjs +5 -0
  25. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.component.mjs +105 -0
  26. package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.module.mjs +20 -0
  27. package/esm2022/breadcrumb/public-api.mjs +3 -0
  28. package/esm2022/breadcrumb/seniorsistemas-angular-components-breadcrumb.mjs +5 -0
  29. package/esm2022/button/lib/button/button.component.mjs +106 -0
  30. package/esm2022/button/lib/button/button.module.mjs +18 -0
  31. package/esm2022/button/lib/button/models/button-animations.mjs +2 -0
  32. package/esm2022/button/lib/button/models/button-badge-config.mjs +2 -0
  33. package/esm2022/button/lib/button/models/button-priority.mjs +2 -0
  34. package/esm2022/button/lib/button/models/button-size.mjs +2 -0
  35. package/esm2022/button/lib/button/models/index.mjs +2 -0
  36. package/esm2022/button/public-api.mjs +4 -0
  37. package/esm2022/button/seniorsistemas-angular-components-button.mjs +5 -0
  38. package/esm2022/calendar-mask/lib/calendar-mask/calendar-mask.directive.mjs +611 -0
  39. package/esm2022/calendar-mask/lib/calendar-mask/calendar-mask.module.mjs +18 -0
  40. package/esm2022/calendar-mask/public-api.mjs +3 -0
  41. package/esm2022/calendar-mask/seniorsistemas-angular-components-calendar-mask.mjs +5 -0
  42. package/esm2022/card/lib/card/card.component.mjs +85 -0
  43. package/esm2022/card/lib/card/card.module.mjs +19 -0
  44. package/esm2022/card/public-api.mjs +3 -0
  45. package/esm2022/card/seniorsistemas-angular-components-card.mjs +5 -0
  46. package/esm2022/chat/lib/chat/chat.component.mjs +29 -0
  47. package/esm2022/chat/lib/chat/chat.module.mjs +22 -0
  48. package/esm2022/chat/lib/chat/components/chat-message/chat-message.component.mjs +29 -0
  49. package/esm2022/chat/lib/chat/types/chat-message.mjs +2 -0
  50. package/esm2022/chat/public-api.mjs +3 -0
  51. package/esm2022/chat/seniorsistemas-angular-components-chat.mjs +5 -0
  52. package/esm2022/checkbox/lib/checkbox/checkbox.component.mjs +67 -0
  53. package/esm2022/checkbox/public-api.mjs +2 -0
  54. package/esm2022/checkbox/seniorsistemas-angular-components-checkbox.mjs +5 -0
  55. package/esm2022/checkbox-list/lib/checkbox-list/checkbox-list.component.mjs +129 -0
  56. package/esm2022/checkbox-list/lib/checkbox-list/checkbox-list.module.mjs +19 -0
  57. package/esm2022/checkbox-list/lib/checkbox-list/models/checkbox-list-data.mjs +2 -0
  58. package/esm2022/checkbox-list/lib/checkbox-list/models/checkbox-list-state.mjs +2 -0
  59. package/esm2022/checkbox-list/public-api.mjs +3 -0
  60. package/esm2022/checkbox-list/seniorsistemas-angular-components-checkbox-list.mjs +5 -0
  61. package/esm2022/chips/lib/chips/chip-item/chip-item.component.mjs +67 -0
  62. package/esm2022/chips/lib/chips/chips/chips.component.mjs +241 -0
  63. package/esm2022/chips/lib/chips/chips.module.mjs +22 -0
  64. package/esm2022/chips/lib/chips/models/chip-models.mjs +2 -0
  65. package/esm2022/chips/public-api.mjs +3 -0
  66. package/esm2022/chips/seniorsistemas-angular-components-chips.mjs +5 -0
  67. package/esm2022/code-editor/lib/code-editor/code-editor.component.mjs +111 -0
  68. package/esm2022/code-editor/lib/code-editor/code-editor.module.mjs +32 -0
  69. package/esm2022/code-editor/lib/code-editor/core/facades/core-facade.mjs +85 -0
  70. package/esm2022/code-editor/lib/code-editor/core/facades/linter-facade.mjs +2 -0
  71. package/esm2022/code-editor/lib/code-editor/core/models/enums/marker-severity.mjs +7 -0
  72. package/esm2022/code-editor/lib/code-editor/core/models/index.mjs +5 -0
  73. package/esm2022/code-editor/lib/code-editor/core/models/interfaces/marker.mjs +2 -0
  74. package/esm2022/code-editor/lib/code-editor/core/use-cases/core-linters.mjs +11 -0
  75. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/codemirror-6-core.mjs +97 -0
  76. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/editor-languages.mjs +17 -0
  77. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/json/json.language.mjs +67 -0
  78. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-empty-state.mjs +29 -0
  79. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-loading-state.mjs +29 -0
  80. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-state-wrapper/autocomplete-state-wrapper-style.mjs +17 -0
  81. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-state-wrapper/autocomplete-state-wrapper.mjs +77 -0
  82. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/index.mjs +4 -0
  83. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-style.mjs +35 -0
  84. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete.mjs +334 -0
  85. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete.service.mjs +25 -0
  86. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/base-configs/base-configs.mjs +18 -0
  87. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/base-configs/grammar.mjs +37 -0
  88. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/completion-types.mjs +10 -0
  89. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/enum-type-order.mjs +8 -0
  90. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/keywords.mjs +12 -0
  91. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/meta-type.mjs +36 -0
  92. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/request-types.mjs +9 -0
  93. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/index.mjs +22 -0
  94. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/completion-Item.mjs +2 -0
  95. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/facade-metadata-name.mjs +2 -0
  96. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/fields-order-by.mjs +2 -0
  97. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/get-facade-metadata-by-path.mjs +2 -0
  98. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/list-context-metadata-by-id.mjs +2 -0
  99. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/list-expression-metadata.mjs +2 -0
  100. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/list-facade-metadata-names.mjs +2 -0
  101. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-expression-metadata.mjs +2 -0
  102. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-front-context-metadata.mjs +2 -0
  103. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-front-facade-metadata.mjs +2 -0
  104. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-front-field-metadata.mjs +2 -0
  105. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-page-request.mjs +2 -0
  106. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/safe-http-communication.mjs +2 -0
  107. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/tax-calculation-configs.mjs +2 -0
  108. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/tax-calculation-language-configs.mjs +11 -0
  109. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/tax-calculation.language.mjs +9 -0
  110. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/utils/get-language-configs.mjs +14 -0
  111. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/utils/get-safe-response.mjs +18 -0
  112. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/languages/tax-calculation/utils/index.mjs +3 -0
  113. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/models/index.mjs +4 -0
  114. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/models/types/diagnostic-severity.mjs +2 -0
  115. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/models/types/editor-theme.mjs +2 -0
  116. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/themes/editor-themes.mjs +15 -0
  117. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/autocomplete-tooltip.mjs +61 -0
  118. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/font-style.mjs +39 -0
  119. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/line-counter.mjs +25 -0
  120. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/scrollbars.mjs +18 -0
  121. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/themes/sds-light/sds-light-highlight-style.mjs +16 -0
  122. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/themes/sds-light/sds-light-style.mjs +13 -0
  123. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/themes/sds-light/sds-light-theme.mjs +22 -0
  124. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/utils/convert-markers-to-diagnostics.mjs +15 -0
  125. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/utils/index.mjs +3 -0
  126. package/esm2022/code-editor/lib/code-editor/infra/cores/codemirror-6/utils/is-current-position-inside-string.mjs +5 -0
  127. package/esm2022/code-editor/lib/code-editor/infra/utils/custom-http-client/custom-http-client.mjs +82 -0
  128. package/esm2022/code-editor/lib/code-editor/infra/utils/custom-http-client/json-response-formatters/format-blob-response.mjs +10 -0
  129. package/esm2022/code-editor/lib/code-editor/infra/utils/custom-http-client/json-response-formatters/format-json-response.mjs +9 -0
  130. package/esm2022/code-editor/lib/code-editor/infra/utils/custom-http-client/json-response-formatters/index.mjs +3 -0
  131. package/esm2022/code-editor/lib/code-editor/infra/utils/custom-translations/custom-translations-service.mjs +37 -0
  132. package/esm2022/code-editor/lib/code-editor/infra/utils/custom-translations/custom-translations.module.mjs +32 -0
  133. package/esm2022/code-editor/lib/code-editor/infra/utils/custom-translations/index.mjs +3 -0
  134. package/esm2022/code-editor/lib/code-editor/infra/utils/custom-translations/models/index.mjs +3 -0
  135. package/esm2022/code-editor/lib/code-editor/infra/utils/custom-translations/models/interfaces/translations.mjs +2 -0
  136. package/esm2022/code-editor/lib/code-editor/infra/utils/index.mjs +3 -0
  137. package/esm2022/code-editor/lib/code-editor/models/enums/languages.mjs +6 -0
  138. package/esm2022/code-editor/lib/code-editor/models/enums/themes.mjs +5 -0
  139. package/esm2022/code-editor/lib/code-editor/models/index.mjs +6 -0
  140. package/esm2022/code-editor/lib/code-editor/models/interfaces/editor-options.mjs +2 -0
  141. package/esm2022/code-editor/public-api.mjs +6 -0
  142. package/esm2022/code-editor/seniorsistemas-angular-components-code-editor.mjs +5 -0
  143. package/esm2022/collapse-link/lib/collapse-link/collapse-link.component.mjs +81 -0
  144. package/esm2022/collapse-link/lib/collapse-link/collapse-link.module.mjs +18 -0
  145. package/esm2022/collapse-link/public-api.mjs +3 -0
  146. package/esm2022/collapse-link/seniorsistemas-angular-components-collapse-link.mjs +5 -0
  147. package/esm2022/common/lib/angular-components.module.mjs +24 -0
  148. package/esm2022/common/lib/custom-http-client/custom-http-client.mjs +86 -0
  149. package/esm2022/common/lib/custom-http-client/json-response-formatters/format-blob-response.mjs +10 -0
  150. package/esm2022/common/lib/custom-http-client/json-response-formatters/format-json-response.mjs +9 -0
  151. package/esm2022/common/lib/debouce.mjs +35 -0
  152. package/esm2022/common/lib/svg-factory/components/iassist-icon/iassist-icon.component.mjs +11 -0
  153. package/esm2022/common/lib/svg-factory/components/senior-icon/senior-icon.component.mjs +11 -0
  154. package/esm2022/common/lib/svg-factory/components/svg-factory-icons.mjs +2 -0
  155. package/esm2022/common/lib/svg-factory/index.mjs +3 -0
  156. package/esm2022/common/lib/svg-factory/svg-factory.directive.mjs +44 -0
  157. package/esm2022/common/lib/svg-factory/svg-factory.module.mjs +26 -0
  158. package/esm2022/common/public-api.mjs +5 -0
  159. package/esm2022/common/seniorsistemas-angular-components-common.mjs +5 -0
  160. package/esm2022/confirm-dialog/lib/confirm-dialog.model.mjs +2 -0
  161. package/esm2022/confirm-dialog/lib/confirm-dialog.service.mjs +34 -0
  162. package/esm2022/confirm-dialog/lib/popup-confirm-dialog/popup-confirm-dialog.component.mjs +17 -0
  163. package/esm2022/confirm-dialog/public-api.mjs +2 -0
  164. package/esm2022/confirm-dialog/seniorsistemas-angular-components-confirm-dialog.mjs +5 -0
  165. package/esm2022/control-errors/lib/control-errors/control-errors.component.mjs +52 -0
  166. package/esm2022/control-errors/lib/control-errors/control-errors.module.mjs +19 -0
  167. package/esm2022/control-errors/public-api.mjs +3 -0
  168. package/esm2022/control-errors/seniorsistemas-angular-components-control-errors.mjs +5 -0
  169. package/esm2022/country-phone-picker/lib/country-phone-picker/country-phone-picker.component.mjs +319 -0
  170. package/esm2022/country-phone-picker/lib/country-phone-picker/country-phone-picker.module.mjs +41 -0
  171. package/esm2022/country-phone-picker/lib/country-phone-picker/country-phone-picker.service.mjs +42 -0
  172. package/esm2022/country-phone-picker/lib/country-phone-picker/models/country-phone-data.mjs +2 -0
  173. package/esm2022/country-phone-picker/lib/country-phone-picker/models/ordination.mjs +7 -0
  174. package/esm2022/country-phone-picker/lib/country-phone-picker/models/phone-selection-data.mjs +2 -0
  175. package/esm2022/country-phone-picker/lib/country-phone-picker/resources/countries.mjs +228 -0
  176. package/esm2022/country-phone-picker/public-api.mjs +5 -0
  177. package/esm2022/country-phone-picker/seniorsistemas-angular-components-country-phone-picker.mjs +5 -0
  178. package/esm2022/currency/lib/currency.service.mjs +25 -0
  179. package/esm2022/currency/lib/models/currencies.mjs +161 -0
  180. package/esm2022/currency/lib/types/currency.mjs +2 -0
  181. package/esm2022/currency/public-api.mjs +3 -0
  182. package/esm2022/currency/seniorsistemas-angular-components-currency.mjs +5 -0
  183. package/esm2022/custom-fields/lib/custom-fields/custom-fields.component.mjs +690 -0
  184. package/esm2022/custom-fields/lib/custom-fields/custom-fields.module.mjs +45 -0
  185. package/esm2022/custom-fields/lib/custom-fields/custom-fields.service.mjs +35 -0
  186. package/esm2022/custom-fields/lib/custom-fields/models/custom-field-type.mjs +17 -0
  187. package/esm2022/custom-fields/public-api.mjs +4 -0
  188. package/esm2022/custom-fields/seniorsistemas-angular-components-custom-fields.mjs +5 -0
  189. package/esm2022/dialog/lib/src/dialog/dialog.component.mjs +82 -0
  190. package/esm2022/dialog/lib/src/dialog/models/active-dialog.mjs +18 -0
  191. package/esm2022/dialog/lib/src/dialog/models/dialog-models.mjs +2 -0
  192. package/esm2022/dialog/lib/src/dialog/services/dialog.service.mjs +96 -0
  193. package/esm2022/dialog/lib/src/dialog/services/internal-dialog.service.mjs +29 -0
  194. package/esm2022/dialog/public-api.mjs +4 -0
  195. package/esm2022/dialog/seniorsistemas-angular-components-dialog.mjs +5 -0
  196. package/esm2022/dynamic-form/lib/dynamic-form/components/field-label/field-label.component.mjs +20 -0
  197. package/esm2022/dynamic-form/lib/dynamic-form/components/grid/row/row.component.mjs +41 -0
  198. package/esm2022/dynamic-form/lib/dynamic-form/components/lookup/lookup.component.mjs +632 -0
  199. package/esm2022/dynamic-form/lib/dynamic-form/components/lookup/types/default-filter.mjs +2 -0
  200. package/esm2022/dynamic-form/lib/dynamic-form/components/lookup/types/label-options.mjs +2 -0
  201. package/esm2022/dynamic-form/lib/dynamic-form/components/structure/base-structure-component.mjs +2 -0
  202. package/esm2022/dynamic-form/lib/dynamic-form/components/structure/fieldset/fieldset.component.mjs +27 -0
  203. package/esm2022/dynamic-form/lib/dynamic-form/components/structure/section/section.component.mjs +33 -0
  204. package/esm2022/dynamic-form/lib/dynamic-form/configurations/dynamic-config.mjs +71 -0
  205. package/esm2022/dynamic-form/lib/dynamic-form/configurations/dynamic-type.mjs +26 -0
  206. package/esm2022/dynamic-form/lib/dynamic-form/configurations/grid/grid.mjs +14 -0
  207. package/esm2022/dynamic-form/lib/dynamic-form/configurations/grid/row.mjs +10 -0
  208. package/esm2022/dynamic-form/lib/dynamic-form/configurations/grid-type.mjs +5 -0
  209. package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure/fieldset.mjs +10 -0
  210. package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure/section.mjs +31 -0
  211. package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure/structure.mjs +9 -0
  212. package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure-type.mjs +6 -0
  213. package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.component.mjs +41 -0
  214. package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.directive.mjs +107 -0
  215. package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.mjs +189 -0
  216. package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.module.mjs +289 -0
  217. package/esm2022/dynamic-form/lib/dynamic-form/form-field/addon-config.mjs +2 -0
  218. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/field-size.mjs +13 -0
  219. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/field-type.mjs +34 -0
  220. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/autocomplete-field.mjs +24 -0
  221. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/bignumber-field.mjs +37 -0
  222. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/blob-field.mjs +31 -0
  223. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/boolean-field.mjs +30 -0
  224. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/boolean-switch-field.mjs +15 -0
  225. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/button-field.mjs +47 -0
  226. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/calendar-field.mjs +56 -0
  227. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/checkbox-field.mjs +9 -0
  228. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/chips-field.mjs +25 -0
  229. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/country-phone-picker-field.mjs +15 -0
  230. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/currency-field.mjs +14 -0
  231. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/decimal-field.mjs +16 -0
  232. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/editor-field.mjs +15 -0
  233. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/field.mjs +64 -0
  234. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/lookup-field.mjs +66 -0
  235. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/number-field.mjs +38 -0
  236. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/password-field.mjs +33 -0
  237. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/profile-picture.mjs +35 -0
  238. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/radio-button-field.mjs +27 -0
  239. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/select-field.mjs +43 -0
  240. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/slider-field.mjs +30 -0
  241. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/star-rating-field.mjs +17 -0
  242. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-area-field.mjs +30 -0
  243. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-area-ia-field.mjs +32 -0
  244. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-field.mjs +38 -0
  245. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/autocomplete/autocomplete-field.component.mjs +36 -0
  246. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/base-field-component.mjs +22 -0
  247. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs +124 -0
  248. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/boolean/boolean-radio-field/boolean-field.component.mjs +27 -0
  249. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.mjs +23 -0
  250. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/button-field/button-field.component.mjs +31 -0
  251. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/calendar/calendar-field.component.mjs +118 -0
  252. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/checkbox/checkbox-field.component.mjs +21 -0
  253. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/chips/chips-field.component.mjs +59 -0
  254. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/country-phone-picker/country-phone-picker-field.component.mjs +29 -0
  255. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/currency/currency-field.component.mjs +90 -0
  256. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/editor/editor-field.component.mjs +23 -0
  257. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/file-upload/file-upload-field.component.mjs +56 -0
  258. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/lookup/lookup-field.component.mjs +23 -0
  259. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/number/number-field.component.mjs +121 -0
  260. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/password/password-field.component.mjs +75 -0
  261. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/profile-picture/profile-picture-field.component.mjs +22 -0
  262. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/radio-button/radio-button-field.component.mjs +52 -0
  263. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/select/select-field.component.mjs +24 -0
  264. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/slider/slider-field.component.mjs +103 -0
  265. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/star-rating/star-rating-field.component.mjs +25 -0
  266. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/text/text-field.component.mjs +88 -0
  267. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/text-area/text-area-field.component.mjs +29 -0
  268. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/text-area-ia/text-area-ia-field.component.mjs +22 -0
  269. package/esm2022/dynamic-form/lib/dynamic-form/form-field/form-field.mjs +243 -0
  270. package/esm2022/dynamic-form/lib/dynamic-form/services/dynamic-form-cache.mjs +150 -0
  271. package/esm2022/dynamic-form/public-api.mjs +44 -0
  272. package/esm2022/dynamic-form/seniorsistemas-angular-components-dynamic-form.mjs +5 -0
  273. package/esm2022/editable-overlay/lib/editable-overlay/editable-overlay.directive.mjs +44 -0
  274. package/esm2022/editable-overlay/lib/editable-overlay/editable-overlay.module.mjs +18 -0
  275. package/esm2022/editable-overlay/public-api.mjs +3 -0
  276. package/esm2022/editable-overlay/seniorsistemas-angular-components-editable-overlay.mjs +5 -0
  277. package/esm2022/empty-state/lib/empty-state/empty-state.component.mjs +51 -0
  278. package/esm2022/empty-state/lib/empty-state/empty-state.module.mjs +22 -0
  279. package/esm2022/empty-state/lib/empty-state/go-back/go-back.component.mjs +34 -0
  280. package/esm2022/empty-state/public-api.mjs +4 -0
  281. package/esm2022/empty-state/seniorsistemas-angular-components-empty-state.mjs +5 -0
  282. package/esm2022/fieldset/lib/fieldset/fieldset.component.mjs +78 -0
  283. package/esm2022/fieldset/lib/fieldset/fieldset.models.mjs +2 -0
  284. package/esm2022/fieldset/lib/fieldset/fieldset.module.mjs +19 -0
  285. package/esm2022/fieldset/public-api.mjs +3 -0
  286. package/esm2022/fieldset/seniorsistemas-angular-components-fieldset.mjs +5 -0
  287. package/esm2022/file-upload/lib/file-upload/file-upload.component.mjs +276 -0
  288. package/esm2022/file-upload/lib/file-upload/file-upload.module.mjs +38 -0
  289. package/esm2022/file-upload/lib/file-upload/file-upload.service.mjs +18 -0
  290. package/esm2022/file-upload/lib/file-upload/models/file-dto.mjs +2 -0
  291. package/esm2022/file-upload/lib/file-upload/models/file-upload-permissions.mjs +2 -0
  292. package/esm2022/file-upload/lib/file-upload/models/list-blob-metadata.mjs +2 -0
  293. package/esm2022/file-upload/lib/file-upload/models/uploadError.mjs +2 -0
  294. package/esm2022/file-upload/lib/file-upload/models/validate-errors.mjs +2 -0
  295. package/esm2022/file-upload/public-api.mjs +3 -0
  296. package/esm2022/file-upload/seniorsistemas-angular-components-file-upload.mjs +5 -0
  297. package/esm2022/gantt/lib/gantt/components/gantt/arrow.mjs +87 -0
  298. package/esm2022/gantt/lib/gantt/components/gantt/bar.mjs +294 -0
  299. package/esm2022/gantt/lib/gantt/components/gantt/gantt-options.mjs +20 -0
  300. package/esm2022/gantt/lib/gantt/components/gantt/gantt.mjs +812 -0
  301. package/esm2022/gantt/lib/gantt/components/gantt/popup.mjs +110 -0
  302. package/esm2022/gantt/lib/gantt/components/gantt/utils/date-utils.mjs +116 -0
  303. package/esm2022/gantt/lib/gantt/components/gantt/utils/svg-utils.mjs +111 -0
  304. package/esm2022/gantt/lib/gantt/components/side-table/side-table.component.mjs +32 -0
  305. package/esm2022/gantt/lib/gantt/gantt.component.mjs +146 -0
  306. package/esm2022/gantt/lib/gantt/gantt.module.mjs +24 -0
  307. package/esm2022/gantt/lib/gantt/models/index.mjs +2 -0
  308. package/esm2022/gantt/lib/gantt/models/options.mjs +2 -0
  309. package/esm2022/gantt/lib/gantt/models/task.mjs +2 -0
  310. package/esm2022/gantt/lib/gantt/models/view-mode.mjs +12 -0
  311. package/esm2022/gantt/public-api.mjs +4 -0
  312. package/esm2022/gantt/seniorsistemas-angular-components-gantt.mjs +5 -0
  313. package/esm2022/global-search/lib/global-search/components/dropdown/global-search-dropdown-item.component.mjs +73 -0
  314. package/esm2022/global-search/lib/global-search/global-search.component.mjs +140 -0
  315. package/esm2022/global-search/lib/global-search/global-search.module.mjs +78 -0
  316. package/esm2022/global-search/lib/global-search/types/global-search-size.enum.mjs +2 -0
  317. package/esm2022/global-search/public-api.mjs +5 -0
  318. package/esm2022/global-search/seniorsistemas-angular-components-global-search.mjs +5 -0
  319. package/esm2022/grid-menu/lib/grid-menu/components/grid-menu-item/grid-menu-item.component.mjs +34 -0
  320. package/esm2022/grid-menu/lib/grid-menu/grid-menu.component.mjs +19 -0
  321. package/esm2022/grid-menu/lib/grid-menu/grid-menu.module.mjs +19 -0
  322. package/esm2022/grid-menu/lib/grid-menu/types/grid-menu-item.mjs +2 -0
  323. package/esm2022/grid-menu/public-api.mjs +4 -0
  324. package/esm2022/grid-menu/seniorsistemas-angular-components-grid-menu.mjs +5 -0
  325. package/esm2022/help-popover/lib/help-popover/help-popover/help-popover.component.mjs +84 -0
  326. package/esm2022/help-popover/lib/help-popover/help-popover.directive.mjs +314 -0
  327. package/esm2022/help-popover/lib/help-popover/help-popover.module.mjs +25 -0
  328. package/esm2022/help-popover/lib/help-popover/models/help-popover.models.mjs +2 -0
  329. package/esm2022/help-popover/public-api.mjs +4 -0
  330. package/esm2022/help-popover/seniorsistemas-angular-components-help-popover.mjs +5 -0
  331. package/esm2022/ia-insight/lib/ia-insight/components/ia-insight-card/components/ia-insight-card-loader/ia-insight-card-loader.component.mjs +13 -0
  332. package/esm2022/ia-insight/lib/ia-insight/components/ia-insight-card/ia-insight-card.component.mjs +82 -0
  333. package/esm2022/ia-insight/lib/ia-insight/components/ia-insight-sidebar/ia-insight-sidebar.component.mjs +49 -0
  334. package/esm2022/ia-insight/lib/ia-insight/ia-insight.component.mjs +66 -0
  335. package/esm2022/ia-insight/lib/ia-insight/ia-insight.module.mjs +47 -0
  336. package/esm2022/ia-insight/lib/ia-insight/models/ia-insight-item.mjs +2 -0
  337. package/esm2022/ia-insight/lib/ia-insight/models/ia-insight-template-types.mjs +2 -0
  338. package/esm2022/ia-insight/lib/ia-insight/models/index.mjs +2 -0
  339. package/esm2022/ia-insight/public-api.mjs +4 -0
  340. package/esm2022/ia-insight/seniorsistemas-angular-components-ia-insight.mjs +5 -0
  341. package/esm2022/image-cropper/lib/image-cropper/image-cropper.component.mjs +179 -0
  342. package/esm2022/image-cropper/lib/image-cropper/image-cropper.module.mjs +23 -0
  343. package/esm2022/image-cropper/lib/image-cropper/image-cropper.service.mjs +73 -0
  344. package/esm2022/image-cropper/public-api.mjs +4 -0
  345. package/esm2022/image-cropper/seniorsistemas-angular-components-image-cropper.mjs +5 -0
  346. package/esm2022/infinite-scroll/lib/infinite-scroll/infinite-scroll.directive.mjs +28 -0
  347. package/esm2022/infinite-scroll/lib/infinite-scroll/infinite-scroll.module.mjs +18 -0
  348. package/esm2022/infinite-scroll/public-api.mjs +3 -0
  349. package/esm2022/infinite-scroll/seniorsistemas-angular-components-infinite-scroll.mjs +5 -0
  350. package/esm2022/info-sign/lib/info-sign/components/info-sign/info-sign.component.mjs +17 -0
  351. package/esm2022/info-sign/lib/info-sign/info-sign.directive.mjs +68 -0
  352. package/esm2022/info-sign/lib/info-sign/info-sign.module.mjs +20 -0
  353. package/esm2022/info-sign/public-api.mjs +3 -0
  354. package/esm2022/info-sign/seniorsistemas-angular-components-info-sign.mjs +5 -0
  355. package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-calendar/inline-edit-calendar.component.mjs +53 -0
  356. package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-lookup/inline-edit-lookup.component.mjs +32 -0
  357. package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-number/inline-edit-number.component.mjs +85 -0
  358. package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-text/inline-edit-text.component.mjs +32 -0
  359. package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-text-area/inline-edit-text-area.component.mjs +33 -0
  360. package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-text-area-ia/inline-edit-text-area-ia.component.mjs +32 -0
  361. package/esm2022/inline-edit/lib/inline-edit/components/index.mjs +8 -0
  362. package/esm2022/inline-edit/lib/inline-edit/components/inline-edit-item/inline-edit-item.component.mjs +105 -0
  363. package/esm2022/inline-edit/lib/inline-edit/fields/index.mjs +8 -0
  364. package/esm2022/inline-edit/lib/inline-edit/fields/inline-edit-calendar-field.mjs +45 -0
  365. package/esm2022/inline-edit/lib/inline-edit/fields/inline-edit-field.mjs +13 -0
  366. package/esm2022/inline-edit/lib/inline-edit/fields/inline-edit-lookup-field.mjs +60 -0
  367. package/esm2022/inline-edit/lib/inline-edit/fields/inline-edit-number-field.mjs +38 -0
  368. package/esm2022/inline-edit/lib/inline-edit/fields/inline-edit-text-area-field.mjs +15 -0
  369. package/esm2022/inline-edit/lib/inline-edit/fields/inline-edit-text-area-ia-field.mjs +7 -0
  370. package/esm2022/inline-edit/lib/inline-edit/fields/inline-edit-text-field.mjs +7 -0
  371. package/esm2022/inline-edit/lib/inline-edit/inline-edit.component.mjs +66 -0
  372. package/esm2022/inline-edit/lib/inline-edit/inline-edit.module.mjs +102 -0
  373. package/esm2022/inline-edit/lib/inline-edit/types/addon-config.mjs +2 -0
  374. package/esm2022/inline-edit/public-api.mjs +4 -0
  375. package/esm2022/inline-edit/seniorsistemas-angular-components-inline-edit.mjs +5 -0
  376. package/esm2022/interactive-content/lib/interactive-content/interactive-content.directive.mjs +63 -0
  377. package/esm2022/interactive-content/public-api.mjs +2 -0
  378. package/esm2022/interactive-content/seniorsistemas-angular-components-interactive-content.mjs +5 -0
  379. package/esm2022/kanban/lib/kanban/components/kanban-column/kanban-column.component.mjs +100 -0
  380. package/esm2022/kanban/lib/kanban/components/kanban-item/kanban-item.component.mjs +62 -0
  381. package/esm2022/kanban/lib/kanban/components/kanban-item-dragging/kanban-item-dragging.component.mjs +17 -0
  382. package/esm2022/kanban/lib/kanban/kanban-event.service.mjs +26 -0
  383. package/esm2022/kanban/lib/kanban/kanban.component.mjs +219 -0
  384. package/esm2022/kanban/lib/kanban/kanban.module.mjs +56 -0
  385. package/esm2022/kanban/lib/kanban/types/index.mjs +2 -0
  386. package/esm2022/kanban/lib/kanban/types/kanban-data.mjs +2 -0
  387. package/esm2022/kanban/lib/kanban/types/kanban-template-types.mjs +2 -0
  388. package/esm2022/kanban/public-api.mjs +3 -0
  389. package/esm2022/kanban/seniorsistemas-angular-components-kanban.mjs +5 -0
  390. package/esm2022/label-value/lib/label-value/label-value.component.mjs +35 -0
  391. package/esm2022/label-value/lib/label-value/label-value.module.mjs +22 -0
  392. package/esm2022/label-value/lib/label-value/types/label-value-configuration.mjs +2 -0
  393. package/esm2022/label-value/public-api.mjs +3 -0
  394. package/esm2022/label-value/seniorsistemas-angular-components-label-value.mjs +5 -0
  395. package/esm2022/lib/locale/fallback.mjs +333 -0
  396. package/esm2022/loading-state/lib/loading-state/components/dots-indicator/dots-indicator.components.mjs +11 -0
  397. package/esm2022/loading-state/lib/loading-state/components/loading-state-indicators.mjs +6 -0
  398. package/esm2022/loading-state/lib/loading-state/components/logo-indicator/logo-indicator.component.mjs +12 -0
  399. package/esm2022/loading-state/lib/loading-state/loading-state.component.mjs +74 -0
  400. package/esm2022/loading-state/lib/loading-state/loading-state.directive.mjs +62 -0
  401. package/esm2022/loading-state/lib/loading-state/loading-state.module.mjs +30 -0
  402. package/esm2022/loading-state/public-api.mjs +5 -0
  403. package/esm2022/loading-state/seniorsistemas-angular-components-loading-state.mjs +5 -0
  404. package/esm2022/locale/lib/locale/locale.module.mjs +85 -0
  405. package/esm2022/locale/lib/locale/locale.service.mjs +87 -0
  406. package/esm2022/locale/lib/locale/options/calendar.mjs +24 -0
  407. package/esm2022/locale/lib/locale/options/index.mjs +27 -0
  408. package/esm2022/locale/lib/locale/options/number.mjs +9 -0
  409. package/esm2022/locale/lib/locale/pipes/localized-bignumber-impure.pipe.mjs +18 -0
  410. package/esm2022/locale/lib/locale/pipes/localized-bignumber.pipe.mjs +38 -0
  411. package/esm2022/locale/lib/locale/pipes/localized-currency-impure.pipe.mjs +21 -0
  412. package/esm2022/locale/lib/locale/pipes/localized-currency.pipe.mjs +53 -0
  413. package/esm2022/locale/lib/locale/pipes/localized-date-impure.pipe.mjs +15 -0
  414. package/esm2022/locale/lib/locale/pipes/localized-date.pipe.mjs +23 -0
  415. package/esm2022/locale/lib/locale/pipes/localized-number.pipe.mjs +31 -0
  416. package/esm2022/locale/lib/locale/pipes/localized-time-impure.pipe.mjs +15 -0
  417. package/esm2022/locale/lib/locale/pipes/localized-time.pipe.mjs +23 -0
  418. package/esm2022/locale/public-api.mjs +13 -0
  419. package/esm2022/locale/seniorsistemas-angular-components-locale.mjs +5 -0
  420. package/esm2022/localized-number-input/lib/localized-number-input/localized-number-input.directive.mjs +63 -0
  421. package/esm2022/localized-number-input/lib/localized-number-input/localized-number-input.module.mjs +18 -0
  422. package/esm2022/localized-number-input/public-api.mjs +3 -0
  423. package/esm2022/localized-number-input/seniorsistemas-angular-components-localized-number-input.mjs +5 -0
  424. package/esm2022/mask/lib/mask/mask-formatter.module.mjs +16 -0
  425. package/esm2022/mask/lib/mask/mask-formatter.pipe.mjs +65 -0
  426. package/esm2022/mask/public-api.mjs +3 -0
  427. package/esm2022/mask/seniorsistemas-angular-components-mask.mjs +5 -0
  428. package/esm2022/mouse-events/lib/mouse-events/double-click.directive.mjs +37 -0
  429. package/esm2022/mouse-events/lib/mouse-events/long-press.directive.mjs +51 -0
  430. package/esm2022/mouse-events/lib/mouse-events/mouse-events.module.mjs +27 -0
  431. package/esm2022/mouse-events/public-api.mjs +4 -0
  432. package/esm2022/mouse-events/seniorsistemas-angular-components-mouse-events.mjs +5 -0
  433. package/esm2022/navigation-button/lib/navigation-button/models/index.mjs +2 -0
  434. package/esm2022/navigation-button/lib/navigation-button/models/navigation-button-item.mjs +2 -0
  435. package/esm2022/navigation-button/lib/navigation-button/models/navigation-button-step-changed-info.mjs +2 -0
  436. package/esm2022/navigation-button/lib/navigation-button/navigation-button.component.mjs +134 -0
  437. package/esm2022/navigation-button/lib/navigation-button/navigation-button.module.mjs +20 -0
  438. package/esm2022/navigation-button/public-api.mjs +4 -0
  439. package/esm2022/navigation-button/seniorsistemas-angular-components-navigation-button.mjs +5 -0
  440. package/esm2022/number-input/lib/number-input/number-input.directive.mjs +164 -0
  441. package/esm2022/number-input/lib/number-input/number-input.module.mjs +21 -0
  442. package/esm2022/number-input/public-api.mjs +3 -0
  443. package/esm2022/number-input/seniorsistemas-angular-components-number-input.mjs +5 -0
  444. package/esm2022/numeric/lib/numeric.module.mjs +18 -0
  445. package/esm2022/numeric/lib/numeric.pipe.mjs +29 -0
  446. package/esm2022/numeric/lib/numeric.service.mjs +92 -0
  447. package/esm2022/numeric/public-api.mjs +4 -0
  448. package/esm2022/numeric/seniorsistemas-angular-components-numeric.mjs +5 -0
  449. package/esm2022/object-card/lib/object-card/elements/field/object-card-field.component.mjs +51 -0
  450. package/esm2022/object-card/lib/object-card/elements/main/object-card-main.component.mjs +87 -0
  451. package/esm2022/object-card/lib/object-card/object-card.component.mjs +171 -0
  452. package/esm2022/object-card/lib/object-card/object-card.module.mjs +24 -0
  453. package/esm2022/object-card/public-api.mjs +5 -0
  454. package/esm2022/object-card/seniorsistemas-angular-components-object-card.mjs +5 -0
  455. package/esm2022/paginator/lib/models/paginator.models.mjs +2 -0
  456. package/esm2022/paginator/lib/paginator/paginator.component.mjs +138 -0
  457. package/esm2022/paginator/public-api.mjs +2 -0
  458. package/esm2022/paginator/seniorsistemas-angular-components-paginator.mjs +5 -0
  459. package/esm2022/panel/lib/panel/panel.component.mjs +91 -0
  460. package/esm2022/panel/lib/panel/panel.module.mjs +20 -0
  461. package/esm2022/panel/public-api.mjs +3 -0
  462. package/esm2022/panel/seniorsistemas-angular-components-panel.mjs +5 -0
  463. package/esm2022/password-strength/lib/password-strength/password-strength.component.mjs +92 -0
  464. package/esm2022/password-strength/lib/password-strength/password-strength.directive.mjs +210 -0
  465. package/esm2022/password-strength/lib/password-strength/password-strength.module.mjs +19 -0
  466. package/esm2022/password-strength/lib/password-strength/types/password-positions.mjs +2 -0
  467. package/esm2022/password-strength/lib/password-strength/types/password-strengths.mjs +2 -0
  468. package/esm2022/password-strength/public-api.mjs +4 -0
  469. package/esm2022/password-strength/seniorsistemas-angular-components-password-strength.mjs +5 -0
  470. package/esm2022/picklist/lib/picklist/picklist.component.mjs +299 -0
  471. package/esm2022/picklist/lib/picklist/picklist.module.mjs +36 -0
  472. package/esm2022/picklist/lib/picklist/types/index.mjs +2 -0
  473. package/esm2022/picklist/lib/picklist/types/picklist-item.mjs +2 -0
  474. package/esm2022/picklist/lib/picklist/types/picklist-template-types.mjs +2 -0
  475. package/esm2022/picklist/public-api.mjs +5 -0
  476. package/esm2022/picklist/seniorsistemas-angular-components-picklist.mjs +5 -0
  477. package/esm2022/product-header/lib/product-header/product-header.component.mjs +44 -0
  478. package/esm2022/product-header/lib/product-header/product-header.module.mjs +20 -0
  479. package/esm2022/product-header/public-api.mjs +3 -0
  480. package/esm2022/product-header/seniorsistemas-angular-components-product-header.mjs +5 -0
  481. package/esm2022/profile-picture-picker/lib/profile-picture-picker/models/confirmation-texts.mjs +2 -0
  482. package/esm2022/profile-picture-picker/lib/profile-picture-picker/models/cropper-labels-config.mjs +2 -0
  483. package/esm2022/profile-picture-picker/lib/profile-picture-picker/models/file-validation-errors.mjs +2 -0
  484. package/esm2022/profile-picture-picker/lib/profile-picture-picker/models/index.mjs +2 -0
  485. package/esm2022/profile-picture-picker/lib/profile-picture-picker/models/profile-picture-picker-data.mjs +2 -0
  486. package/esm2022/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.component.mjs +277 -0
  487. package/esm2022/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.module.mjs +25 -0
  488. package/esm2022/profile-picture-picker/lib/profile-picture-picker/validators/index.mjs +2 -0
  489. package/esm2022/profile-picture-picker/lib/profile-picture-picker/validators/validators.mjs +28 -0
  490. package/esm2022/profile-picture-picker/public-api.mjs +4 -0
  491. package/esm2022/profile-picture-picker/seniorsistemas-angular-components-profile-picture-picker.mjs +5 -0
  492. package/esm2022/progressbar/lib/progressbar/components/progressbar-determinate/progressbar-determinate.component.mjs +60 -0
  493. package/esm2022/progressbar/lib/progressbar/components/progressbar-indeterminate/progressbar-indeterminate.component.mjs +19 -0
  494. package/esm2022/progressbar/lib/progressbar/progressbar.component.mjs +57 -0
  495. package/esm2022/progressbar/lib/progressbar/progressbar.module.mjs +21 -0
  496. package/esm2022/progressbar/lib/progressbar/types/index.mjs +2 -0
  497. package/esm2022/progressbar/lib/progressbar/types/progressbar-colors.mjs +2 -0
  498. package/esm2022/progressbar/lib/progressbar/types/progressbar-mode.mjs +2 -0
  499. package/esm2022/progressbar/public-api.mjs +4 -0
  500. package/esm2022/progressbar/seniorsistemas-angular-components-progressbar.mjs +5 -0
  501. package/esm2022/public-api.mjs +2 -0
  502. package/esm2022/radio-button/lib/radio-button/radio-button.component.mjs +82 -0
  503. package/esm2022/radio-button/lib/radio-button-group/models/radio-button-group.models.mjs +2 -0
  504. package/esm2022/radio-button/lib/radio-button-group/radio-button-group.component.mjs +62 -0
  505. package/esm2022/radio-button/lib/services/radio-button-registry.service.mjs +38 -0
  506. package/esm2022/radio-button/public-api.mjs +3 -0
  507. package/esm2022/radio-button/seniorsistemas-angular-components-radio-button.mjs +5 -0
  508. package/esm2022/rating-scale/lib/rating-scale/models/index.mjs +2 -0
  509. package/esm2022/rating-scale/lib/rating-scale/models/rating-scale-node.mjs +2 -0
  510. package/esm2022/rating-scale/lib/rating-scale/rating-scale.component.mjs +54 -0
  511. package/esm2022/rating-scale/lib/rating-scale/rating-scale.module.mjs +24 -0
  512. package/esm2022/rating-scale/public-api.mjs +3 -0
  513. package/esm2022/rating-scale/seniorsistemas-angular-components-rating-scale.mjs +5 -0
  514. package/esm2022/select/lib/select/components/select-option/select-option.component.mjs +27 -0
  515. package/esm2022/select/lib/select/select.component.mjs +712 -0
  516. package/esm2022/select/public-api.mjs +2 -0
  517. package/esm2022/select/seniorsistemas-angular-components-select.mjs +5 -0
  518. package/esm2022/select-button/lib/select-button/components/select-button-item/select-button-item.component.mjs +28 -0
  519. package/esm2022/select-button/lib/select-button/models/select-button-item.mjs +2 -0
  520. package/esm2022/select-button/lib/select-button/select-button.component.mjs +122 -0
  521. package/esm2022/select-button/lib/select-button/select-button.module.mjs +23 -0
  522. package/esm2022/select-button/public-api.mjs +3 -0
  523. package/esm2022/select-button/seniorsistemas-angular-components-select-button.mjs +5 -0
  524. package/esm2022/seniorsistemas-angular-components.mjs +5 -0
  525. package/esm2022/shared/lib/shared/border-button/border-button.component.mjs +19 -0
  526. package/esm2022/shared/lib/shared/border-button/border-button.module.mjs +19 -0
  527. package/esm2022/shared/lib/shared/helpers.mjs +31 -0
  528. package/esm2022/shared/lib/shared/models/border-button-options.mjs +2 -0
  529. package/esm2022/shared/lib/shared/models/severities.mjs +9 -0
  530. package/esm2022/shared/public-api.mjs +5 -0
  531. package/esm2022/shared/seniorsistemas-angular-components-shared.mjs +5 -0
  532. package/esm2022/sidebar/lib/sidebar/sidebar.component.mjs +114 -0
  533. package/esm2022/sidebar/lib/sidebar/sidebar.module.mjs +20 -0
  534. package/esm2022/sidebar/public-api.mjs +3 -0
  535. package/esm2022/sidebar/seniorsistemas-angular-components-sidebar.mjs +5 -0
  536. package/esm2022/slide-panel/lib/slide-panel/slide-panel.component.mjs +137 -0
  537. package/esm2022/slide-panel/lib/slide-panel/slide-panel.module.mjs +20 -0
  538. package/esm2022/slide-panel/lib/slide-panel/slide-panel.service.mjs +26 -0
  539. package/esm2022/slide-panel/public-api.mjs +4 -0
  540. package/esm2022/slide-panel/seniorsistemas-angular-components-slide-panel.mjs +5 -0
  541. package/esm2022/slider/lib/slider/slider.component.mjs +601 -0
  542. package/esm2022/slider/lib/slider/slider.module.mjs +19 -0
  543. package/esm2022/slider/public-api.mjs +3 -0
  544. package/esm2022/slider/seniorsistemas-angular-components-slider.mjs +5 -0
  545. package/esm2022/speech-recognition/lib/speech-recognition/speech-recognition/speech-recognition.component.mjs +217 -0
  546. package/esm2022/speech-recognition/lib/speech-recognition/speech-recognition.module.mjs +24 -0
  547. package/esm2022/speech-recognition/lib/speech-recognition/speech-recognition.service.mjs +146 -0
  548. package/esm2022/speech-recognition/lib/speech-recognition/text-to-speech.service.mjs +81 -0
  549. package/esm2022/speech-recognition/public-api.mjs +5 -0
  550. package/esm2022/speech-recognition/seniorsistemas-angular-components-speech-recognition.mjs +5 -0
  551. package/esm2022/split-button/lib/split-button/models/index.mjs +2 -0
  552. package/esm2022/split-button/lib/split-button/models/split-button-option.mjs +2 -0
  553. package/esm2022/split-button/lib/split-button/models/split-button-type.mjs +2 -0
  554. package/esm2022/split-button/lib/split-button/split-button.component.mjs +64 -0
  555. package/esm2022/split-button/lib/split-button/split-button.module.mjs +18 -0
  556. package/esm2022/split-button/public-api.mjs +4 -0
  557. package/esm2022/split-button/seniorsistemas-angular-components-split-button.mjs +5 -0
  558. package/esm2022/star-rating/public-api.mjs +2 -0
  559. package/esm2022/star-rating/seniorsistemas-angular-components-star-rating.mjs +5 -0
  560. package/esm2022/star-rating/star-rating/star-rating-models.mjs +2 -0
  561. package/esm2022/star-rating/star-rating/star-rating.component.mjs +63 -0
  562. package/esm2022/stats-card/lib/stats-card/stats-card.component.mjs +119 -0
  563. package/esm2022/stats-card/lib/stats-card/stats-card.module.mjs +19 -0
  564. package/esm2022/stats-card/public-api.mjs +3 -0
  565. package/esm2022/stats-card/seniorsistemas-angular-components-stats-card.mjs +5 -0
  566. package/esm2022/steps/lib/steps/steps.component.mjs +122 -0
  567. package/esm2022/steps/lib/steps/steps.module.mjs +19 -0
  568. package/esm2022/steps/public-api.mjs +3 -0
  569. package/esm2022/steps/seniorsistemas-angular-components-steps.mjs +5 -0
  570. package/esm2022/structure/lib/structure/footer.component.mjs +14 -0
  571. package/esm2022/structure/lib/structure/header.component.mjs +14 -0
  572. package/esm2022/structure/lib/structure/structure.module.mjs +19 -0
  573. package/esm2022/structure/public-api.mjs +5 -0
  574. package/esm2022/structure/seniorsistemas-angular-components-structure.mjs +5 -0
  575. package/esm2022/switch/lib/switch/switch.component.mjs +93 -0
  576. package/esm2022/switch/lib/switch/switch.module.mjs +18 -0
  577. package/esm2022/switch/public-api.mjs +3 -0
  578. package/esm2022/switch/seniorsistemas-angular-components-switch.mjs +5 -0
  579. package/esm2022/table/lib/locale-utils.mjs +15 -0
  580. package/esm2022/table/lib/table/export-utils.mjs +112 -0
  581. package/esm2022/table/lib/table/navigation/navigation.directive.mjs +130 -0
  582. package/esm2022/table/lib/table/row-toggler/row-toggler.directive.mjs +38 -0
  583. package/esm2022/table/lib/table/table-column/index.mjs +3 -0
  584. package/esm2022/table/lib/table/table-column/models/badge-column.interface.mjs +2 -0
  585. package/esm2022/table/lib/table/table-column/models/badge-configs.interface.mjs +2 -0
  586. package/esm2022/table/lib/table/table-column/models/column-colors.mjs +2 -0
  587. package/esm2022/table/lib/table/table-column/models/column-values.interface.mjs +2 -0
  588. package/esm2022/table/lib/table/table-column/models/column.interface.mjs +2 -0
  589. package/esm2022/table/lib/table/table-column/models/dynamic-editable-grid.interface.mjs +2 -0
  590. package/esm2022/table/lib/table/table-column/models/enum-badge-colors.mjs +10 -0
  591. package/esm2022/table/lib/table/table-column/models/enum-column-field-type.mjs +13 -0
  592. package/esm2022/table/lib/table/table-column/models/index.mjs +11 -0
  593. package/esm2022/table/lib/table/table-column/models/locale-options.interface.mjs +2 -0
  594. package/esm2022/table/lib/table/table-column/models/number-locale-options.interface.mjs +2 -0
  595. package/esm2022/table/lib/table/table-column/table-columns.component.mjs +299 -0
  596. package/esm2022/table/lib/table/table-paging/index.mjs +3 -0
  597. package/esm2022/table/lib/table/table-paging/models/custom-action.interface.mjs +2 -0
  598. package/esm2022/table/lib/table/table-paging/models/index.mjs +2 -0
  599. package/esm2022/table/lib/table/table-paging/table-paging.component.mjs +321 -0
  600. package/esm2022/table/lib/table/table.module.mjs +27 -0
  601. package/esm2022/table/public-api.mjs +6 -0
  602. package/esm2022/table/seniorsistemas-angular-components-table.mjs +5 -0
  603. package/esm2022/table-header/lib/table-header/table-header-checkbox.component.mjs +151 -0
  604. package/esm2022/table-header/lib/table-header/table-header-checkox.module.mjs +20 -0
  605. package/esm2022/table-header/public-api.mjs +3 -0
  606. package/esm2022/table-header/seniorsistemas-angular-components-table-header.mjs +5 -0
  607. package/esm2022/tabs/lib/tab-item/tab-item.component.mjs +36 -0
  608. package/esm2022/tabs/lib/tabs/tabs.component.mjs +51 -0
  609. package/esm2022/tabs/public-api.mjs +3 -0
  610. package/esm2022/tabs/seniorsistemas-angular-components-tabs.mjs +5 -0
  611. package/esm2022/template/lib/template/template.directive.mjs +22 -0
  612. package/esm2022/template/lib/template/template.module.mjs +17 -0
  613. package/esm2022/template/public-api.mjs +3 -0
  614. package/esm2022/template/seniorsistemas-angular-components-template.mjs +5 -0
  615. package/esm2022/text-area/lib/text-area/text-area.component.mjs +116 -0
  616. package/esm2022/text-area/lib/text-area.module.mjs +35 -0
  617. package/esm2022/text-area/public-api.mjs +3 -0
  618. package/esm2022/text-area/seniorsistemas-angular-components-text-area.mjs +5 -0
  619. package/esm2022/text-area-ia/lib/services/IAssist/iassist.service.mjs +77 -0
  620. package/esm2022/text-area-ia/lib/services/IAssist/models/iassist-input-data.mjs +3 -0
  621. package/esm2022/text-area-ia/lib/services/IAssist/models/iassist-response.mjs +3 -0
  622. package/esm2022/text-area-ia/lib/text-area-ia/text-area-ia.component.mjs +150 -0
  623. package/esm2022/text-area-ia/lib/text-area-ia/text-area-ia.module.mjs +50 -0
  624. package/esm2022/text-area-ia/public-api.mjs +3 -0
  625. package/esm2022/text-area-ia/seniorsistemas-angular-components-text-area-ia.mjs +5 -0
  626. package/esm2022/thumbnail/lib/thumbnail/thumbnail-size.mjs +2 -0
  627. package/esm2022/thumbnail/lib/thumbnail/thumbnail.component.mjs +77 -0
  628. package/esm2022/thumbnail/lib/thumbnail/thumbnail.module.mjs +20 -0
  629. package/esm2022/thumbnail/lib/thumbnail/thumbnail.service.mjs +62 -0
  630. package/esm2022/thumbnail/public-api.mjs +4 -0
  631. package/esm2022/thumbnail/seniorsistemas-angular-components-thumbnail.mjs +5 -0
  632. package/esm2022/thumbnails/lib/thumbnails/components/thumbnail-item/components/thumbnail-item-image/thumbnail-item-image.component.mjs +17 -0
  633. package/esm2022/thumbnails/lib/thumbnails/components/thumbnail-item/components/thumbnail-item-video/thumbnail-item-video.component.mjs +42 -0
  634. package/esm2022/thumbnails/lib/thumbnails/components/thumbnail-item/thumbnail-item.component.mjs +64 -0
  635. package/esm2022/thumbnails/lib/thumbnails/models/thumbnails-item.mjs +2 -0
  636. package/esm2022/thumbnails/lib/thumbnails/thumbnails.component.mjs +48 -0
  637. package/esm2022/thumbnails/lib/thumbnails/thumbnails.module.mjs +24 -0
  638. package/esm2022/thumbnails/public-api.mjs +3 -0
  639. package/esm2022/thumbnails/seniorsistemas-angular-components-thumbnails.mjs +5 -0
  640. package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu/tiered-menu.component.mjs +303 -0
  641. package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu-divider/tiered-menu-divider.component.mjs +11 -0
  642. package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu-item/tiered-menu-item.component.mjs +73 -0
  643. package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu-nested/tiered-menu-nested.component.mjs +179 -0
  644. package/esm2022/tiered-menu/lib/tiered-menu/models/index.mjs +2 -0
  645. package/esm2022/tiered-menu/lib/tiered-menu/models/tiered-menu-item-data.mjs +2 -0
  646. package/esm2022/tiered-menu/lib/tiered-menu/models/tiered-menu-item-internal-data.mjs +2 -0
  647. package/esm2022/tiered-menu/lib/tiered-menu/services/tiered-menu.event.service.mjs +17 -0
  648. package/esm2022/tiered-menu/lib/tiered-menu/services/tiered-menu.global.service.mjs +11 -0
  649. package/esm2022/tiered-menu/lib/tiered-menu/services/tiered-menu.service.mjs +54 -0
  650. package/esm2022/tiered-menu/lib/tiered-menu/tiered-menu.directive.mjs +234 -0
  651. package/esm2022/tiered-menu/lib/tiered-menu/tiered-menu.module.mjs +34 -0
  652. package/esm2022/tiered-menu/public-api.mjs +6 -0
  653. package/esm2022/tiered-menu/seniorsistemas-angular-components-tiered-menu.mjs +5 -0
  654. package/esm2022/tile/lib/tile/tile.component.mjs +65 -0
  655. package/esm2022/tile/lib/tile/tile.module.mjs +20 -0
  656. package/esm2022/tile/public-api.mjs +3 -0
  657. package/esm2022/tile/seniorsistemas-angular-components-tile.mjs +5 -0
  658. package/esm2022/timeline/lib/timeline/components/horizontal-timeline/horizontal-timeline.component.mjs +24 -0
  659. package/esm2022/timeline/lib/timeline/components/horizontal-timeline/horizontal-timeline.module.mjs +20 -0
  660. package/esm2022/timeline/lib/timeline/components/timeline-icon-item/timeline-icon-item.component.mjs +26 -0
  661. package/esm2022/timeline/lib/timeline/components/timeline-icon-item/timeline-icon-item.module.mjs +19 -0
  662. package/esm2022/timeline/lib/timeline/components/vertical-timeline/components/collapse-option/collapse-option.component.mjs +21 -0
  663. package/esm2022/timeline/lib/timeline/components/vertical-timeline/components/collapsed-items/collapsed-items.component.mjs +33 -0
  664. package/esm2022/timeline/lib/timeline/components/vertical-timeline/components/range-line/range-line.component.mjs +11 -0
  665. package/esm2022/timeline/lib/timeline/components/vertical-timeline/components/vertical-items/vertical-items.component.mjs +29 -0
  666. package/esm2022/timeline/lib/timeline/components/vertical-timeline/vertical-timeline.component.mjs +60 -0
  667. package/esm2022/timeline/lib/timeline/components/vertical-timeline/vertical-timeline.module.mjs +33 -0
  668. package/esm2022/timeline/lib/timeline/models/timeline-item-severity.mjs +7 -0
  669. package/esm2022/timeline/lib/timeline/models/timeline-item-size.mjs +6 -0
  670. package/esm2022/timeline/lib/timeline/models/timeline-item.mjs +44 -0
  671. package/esm2022/timeline/lib/timeline/timeline.component.mjs +66 -0
  672. package/esm2022/timeline/lib/timeline/timeline.module.mjs +32 -0
  673. package/esm2022/timeline/public-api.mjs +6 -0
  674. package/esm2022/timeline/seniorsistemas-angular-components-timeline.mjs +5 -0
  675. package/esm2022/toast/lib/toast/toast.component.mjs +46 -0
  676. package/esm2022/toast/lib/toast/toast.module.mjs +17 -0
  677. package/esm2022/toast/lib/toast/toast.service.mjs +68 -0
  678. package/esm2022/toast/lib/toast/types/toast.mjs +2 -0
  679. package/esm2022/toast/public-api.mjs +4 -0
  680. package/esm2022/toast/seniorsistemas-angular-components-toast.mjs +5 -0
  681. package/esm2022/token-list/lib/token-list/models/index.mjs +2 -0
  682. package/esm2022/token-list/lib/token-list/models/token.mjs +2 -0
  683. package/esm2022/token-list/lib/token-list/token-list.component.mjs +42 -0
  684. package/esm2022/token-list/lib/token-list/token-list.module.mjs +18 -0
  685. package/esm2022/token-list/public-api.mjs +4 -0
  686. package/esm2022/token-list/seniorsistemas-angular-components-token-list.mjs +5 -0
  687. package/esm2022/tooltip/lib/tooltip/models/mobile-behavior.mjs +2 -0
  688. package/esm2022/tooltip/lib/tooltip/models/tooltip-event.mjs +2 -0
  689. package/esm2022/tooltip/lib/tooltip/models/tooltip-position.mjs +2 -0
  690. package/esm2022/tooltip/lib/tooltip/tooltip.component.mjs +18 -0
  691. package/esm2022/tooltip/lib/tooltip/tooltip.directive.mjs +339 -0
  692. package/esm2022/tooltip/lib/tooltip/tooltip.module.mjs +19 -0
  693. package/esm2022/tooltip/public-api.mjs +3 -0
  694. package/esm2022/tooltip/seniorsistemas-angular-components-tooltip.mjs +5 -0
  695. package/esm2022/utils/lib/utils/breakpoints.mjs +11 -0
  696. package/esm2022/utils/lib/utils/utils.mjs +51 -0
  697. package/esm2022/utils/public-api.mjs +3 -0
  698. package/esm2022/utils/seniorsistemas-angular-components-utils.mjs +5 -0
  699. package/esm2022/workspace-switch/lib/workspace-switch/models/index.mjs +2 -0
  700. package/esm2022/workspace-switch/lib/workspace-switch/models/workspace.mjs +2 -0
  701. package/esm2022/workspace-switch/lib/workspace-switch/workspace-switch.component.mjs +137 -0
  702. package/esm2022/workspace-switch/lib/workspace-switch/workspace-switch.module.mjs +18 -0
  703. package/esm2022/workspace-switch/public-api.mjs +3 -0
  704. package/esm2022/workspace-switch/seniorsistemas-angular-components-workspace-switch.mjs +5 -0
  705. package/fesm2022/seniorsistemas-angular-components-accordion.mjs +10 -10
  706. package/fesm2022/seniorsistemas-angular-components-accordion.mjs.map +1 -1
  707. package/fesm2022/seniorsistemas-angular-components-alert.mjs +7 -7
  708. package/fesm2022/seniorsistemas-angular-components-badge.mjs +7 -7
  709. package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs +7 -7
  710. package/fesm2022/seniorsistemas-angular-components-breadcrumb.mjs +7 -7
  711. package/fesm2022/seniorsistemas-angular-components-button.mjs +7 -7
  712. package/fesm2022/seniorsistemas-angular-components-button.mjs.map +1 -1
  713. package/fesm2022/seniorsistemas-angular-components-calendar-mask.mjs +7 -7
  714. package/fesm2022/seniorsistemas-angular-components-card.mjs +7 -7
  715. package/fesm2022/seniorsistemas-angular-components-chat.mjs +10 -10
  716. package/fesm2022/seniorsistemas-angular-components-checkbox-list.mjs +7 -7
  717. package/fesm2022/seniorsistemas-angular-components-checkbox.mjs +3 -3
  718. package/fesm2022/seniorsistemas-angular-components-chips.mjs +10 -10
  719. package/fesm2022/seniorsistemas-angular-components-chips.mjs.map +1 -1
  720. package/fesm2022/seniorsistemas-angular-components-code-editor.mjs +11 -11
  721. package/fesm2022/seniorsistemas-angular-components-collapse-link.mjs +7 -7
  722. package/fesm2022/seniorsistemas-angular-components-common.mjs +20 -20
  723. package/fesm2022/seniorsistemas-angular-components-confirm-dialog.mjs +6 -6
  724. package/fesm2022/seniorsistemas-angular-components-control-errors.mjs +8 -8
  725. package/fesm2022/seniorsistemas-angular-components-control-errors.mjs.map +1 -1
  726. package/fesm2022/seniorsistemas-angular-components-country-phone-picker.mjs +10 -10
  727. package/fesm2022/seniorsistemas-angular-components-currency.mjs +3 -3
  728. package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs +10 -10
  729. package/fesm2022/seniorsistemas-angular-components-dialog.mjs +9 -9
  730. package/fesm2022/seniorsistemas-angular-components-dialog.mjs.map +1 -1
  731. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs +125 -119
  732. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs.map +1 -1
  733. package/fesm2022/seniorsistemas-angular-components-editable-overlay.mjs +7 -7
  734. package/fesm2022/seniorsistemas-angular-components-empty-state.mjs +10 -10
  735. package/fesm2022/seniorsistemas-angular-components-fieldset.mjs +9 -10
  736. package/fesm2022/seniorsistemas-angular-components-fieldset.mjs.map +1 -1
  737. package/fesm2022/seniorsistemas-angular-components-file-upload.mjs +10 -10
  738. package/fesm2022/seniorsistemas-angular-components-gantt.mjs +10 -10
  739. package/fesm2022/seniorsistemas-angular-components-gantt.mjs.map +1 -1
  740. package/fesm2022/seniorsistemas-angular-components-global-search.mjs +10 -10
  741. package/fesm2022/seniorsistemas-angular-components-grid-menu.mjs +10 -10
  742. package/fesm2022/seniorsistemas-angular-components-help-popover.mjs +10 -10
  743. package/fesm2022/seniorsistemas-angular-components-ia-insight.mjs +16 -16
  744. package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs +10 -10
  745. package/fesm2022/seniorsistemas-angular-components-infinite-scroll.mjs +7 -7
  746. package/fesm2022/seniorsistemas-angular-components-info-sign.mjs +10 -10
  747. package/fesm2022/seniorsistemas-angular-components-info-sign.mjs.map +1 -1
  748. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs +28 -28
  749. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs.map +1 -1
  750. package/fesm2022/seniorsistemas-angular-components-interactive-content.mjs +7 -3
  751. package/fesm2022/seniorsistemas-angular-components-interactive-content.mjs.map +1 -1
  752. package/fesm2022/seniorsistemas-angular-components-kanban.mjs +19 -19
  753. package/fesm2022/seniorsistemas-angular-components-label-value.mjs +7 -7
  754. package/fesm2022/seniorsistemas-angular-components-loading-state.mjs +16 -16
  755. package/fesm2022/seniorsistemas-angular-components-locale.mjs +34 -34
  756. package/fesm2022/seniorsistemas-angular-components-localized-number-input.mjs +7 -7
  757. package/fesm2022/seniorsistemas-angular-components-mask.mjs +7 -7
  758. package/fesm2022/seniorsistemas-angular-components-mouse-events.mjs +10 -10
  759. package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs +8 -8
  760. package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs.map +1 -1
  761. package/fesm2022/seniorsistemas-angular-components-number-input.mjs +7 -7
  762. package/fesm2022/seniorsistemas-angular-components-numeric.mjs +10 -10
  763. package/fesm2022/seniorsistemas-angular-components-object-card.mjs +13 -13
  764. package/fesm2022/seniorsistemas-angular-components-object-card.mjs.map +1 -1
  765. package/fesm2022/seniorsistemas-angular-components-paginator.mjs +3 -3
  766. package/fesm2022/seniorsistemas-angular-components-paginator.mjs.map +1 -1
  767. package/fesm2022/seniorsistemas-angular-components-panel.mjs +7 -7
  768. package/fesm2022/seniorsistemas-angular-components-password-strength.mjs +10 -10
  769. package/fesm2022/seniorsistemas-angular-components-picklist.mjs +7 -7
  770. package/fesm2022/seniorsistemas-angular-components-product-header.mjs +7 -7
  771. package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs +7 -7
  772. package/fesm2022/seniorsistemas-angular-components-progressbar.mjs +13 -13
  773. package/fesm2022/seniorsistemas-angular-components-radio-button.mjs +182 -0
  774. package/fesm2022/seniorsistemas-angular-components-radio-button.mjs.map +1 -0
  775. package/fesm2022/seniorsistemas-angular-components-rating-scale.mjs +7 -7
  776. package/fesm2022/seniorsistemas-angular-components-select-button.mjs +10 -10
  777. package/fesm2022/seniorsistemas-angular-components-select.mjs +6 -6
  778. package/fesm2022/seniorsistemas-angular-components-shared.mjs +7 -7
  779. package/fesm2022/seniorsistemas-angular-components-shared.mjs.map +1 -1
  780. package/fesm2022/seniorsistemas-angular-components-sidebar.mjs +42 -23
  781. package/fesm2022/seniorsistemas-angular-components-sidebar.mjs.map +1 -1
  782. package/fesm2022/seniorsistemas-angular-components-slide-panel.mjs +10 -10
  783. package/fesm2022/seniorsistemas-angular-components-slider.mjs +8 -8
  784. package/fesm2022/seniorsistemas-angular-components-slider.mjs.map +1 -1
  785. package/fesm2022/seniorsistemas-angular-components-speech-recognition.mjs +13 -13
  786. package/fesm2022/seniorsistemas-angular-components-split-button.mjs +7 -7
  787. package/fesm2022/seniorsistemas-angular-components-star-rating.mjs +4 -4
  788. package/fesm2022/seniorsistemas-angular-components-star-rating.mjs.map +1 -1
  789. package/fesm2022/seniorsistemas-angular-components-stats-card.mjs +7 -7
  790. package/fesm2022/seniorsistemas-angular-components-stats-card.mjs.map +1 -1
  791. package/fesm2022/seniorsistemas-angular-components-steps.mjs +7 -7
  792. package/fesm2022/seniorsistemas-angular-components-steps.mjs.map +1 -1
  793. package/fesm2022/seniorsistemas-angular-components-structure.mjs +11 -11
  794. package/fesm2022/seniorsistemas-angular-components-structure.mjs.map +1 -1
  795. package/fesm2022/seniorsistemas-angular-components-switch.mjs +7 -7
  796. package/fesm2022/seniorsistemas-angular-components-table-header.mjs +7 -7
  797. package/fesm2022/seniorsistemas-angular-components-table.mjs +16 -16
  798. package/fesm2022/seniorsistemas-angular-components-table.mjs.map +1 -1
  799. package/fesm2022/seniorsistemas-angular-components-tabs.mjs +91 -0
  800. package/fesm2022/seniorsistemas-angular-components-tabs.mjs.map +1 -0
  801. package/fesm2022/seniorsistemas-angular-components-template.mjs +12 -15
  802. package/fesm2022/seniorsistemas-angular-components-template.mjs.map +1 -1
  803. package/fesm2022/seniorsistemas-angular-components-text-area-ia.mjs +10 -10
  804. package/fesm2022/seniorsistemas-angular-components-text-area.mjs +7 -7
  805. package/fesm2022/seniorsistemas-angular-components-thumbnail.mjs +10 -10
  806. package/fesm2022/seniorsistemas-angular-components-thumbnails.mjs +16 -16
  807. package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs +54 -92
  808. package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs.map +1 -1
  809. package/fesm2022/seniorsistemas-angular-components-tile.mjs +7 -7
  810. package/fesm2022/seniorsistemas-angular-components-tile.mjs.map +1 -1
  811. package/fesm2022/seniorsistemas-angular-components-timeline.mjs +40 -40
  812. package/fesm2022/seniorsistemas-angular-components-timeline.mjs.map +1 -1
  813. package/fesm2022/seniorsistemas-angular-components-toast.mjs +10 -10
  814. package/fesm2022/seniorsistemas-angular-components-token-list.mjs +7 -7
  815. package/fesm2022/seniorsistemas-angular-components-tooltip.mjs +24 -14
  816. package/fesm2022/seniorsistemas-angular-components-tooltip.mjs.map +1 -1
  817. package/fesm2022/seniorsistemas-angular-components-utils.mjs +13 -4
  818. package/fesm2022/seniorsistemas-angular-components-utils.mjs.map +1 -1
  819. package/fesm2022/seniorsistemas-angular-components-workspace-switch.mjs +7 -7
  820. package/fesm2022/seniorsistemas-angular-components.mjs +1 -0
  821. package/fesm2022/seniorsistemas-angular-components.mjs.map +1 -1
  822. package/fieldset/lib/fieldset/fieldset.component.d.ts +1 -1
  823. package/fieldset/lib/fieldset/fieldset.module.d.ts +1 -2
  824. package/index.d.ts +5 -0
  825. package/interactive-content/lib/interactive-content/interactive-content.directive.d.ts +2 -1
  826. package/lib/locale/fallback.d.ts +1 -0
  827. package/package.json +19 -95
  828. package/public-api.d.ts +1 -0
  829. package/radio-button/index.d.ts +5 -0
  830. package/radio-button/lib/radio-button/radio-button.component.d.ts +31 -0
  831. package/radio-button/lib/radio-button-group/models/radio-button-group.models.d.ts +5 -0
  832. package/radio-button/lib/radio-button-group/radio-button-group.component.d.ts +25 -0
  833. package/radio-button/lib/services/radio-button-registry.service.d.ts +12 -0
  834. package/radio-button/public-api.d.ts +3 -0
  835. package/select/index.d.ts +5 -0
  836. package/select/lib/select/components/select-option/select-option.component.d.ts +14 -0
  837. package/select/lib/select/select.component.d.ts +275 -0
  838. package/select/public-api.d.ts +1 -0
  839. package/sidebar/lib/sidebar/sidebar.component.d.ts +7 -6
  840. package/src/lib/styles/tailwind.scss +4 -0
  841. package/tabs/index.d.ts +5 -0
  842. package/tabs/lib/tab-item/tab-item.component.d.ts +18 -0
  843. package/tabs/lib/tabs/tabs.component.d.ts +16 -0
  844. package/tabs/public-api.d.ts +2 -0
  845. package/tailwind.css +455 -414
  846. package/template/lib/template/template.directive.d.ts +2 -3
  847. package/template/lib/template/template.module.d.ts +3 -3
  848. package/tooltip/lib/tooltip/tooltip.directive.d.ts +4 -2
  849. package/tooltip/lib/tooltip/tooltip.module.d.ts +3 -3
  850. package/utils/lib/utils/utils.d.ts +2 -0
  851. package/accordion/package.json +0 -3
  852. package/alert/package.json +0 -3
  853. package/badge/package.json +0 -3
  854. package/bignumber-input/package.json +0 -3
  855. package/breadcrumb/package.json +0 -3
  856. package/button/package.json +0 -3
  857. package/calendar-mask/package.json +0 -3
  858. package/card/package.json +0 -3
  859. package/chat/package.json +0 -3
  860. package/checkbox/package.json +0 -3
  861. package/checkbox-list/package.json +0 -3
  862. package/chips/package.json +0 -3
  863. package/code-editor/package.json +0 -3
  864. package/collapse-link/package.json +0 -3
  865. package/common/package.json +0 -3
  866. package/confirm-dialog/package.json +0 -3
  867. package/control-errors/package.json +0 -3
  868. package/country-phone-picker/package.json +0 -3
  869. package/currency/package.json +0 -3
  870. package/custom-fields/package.json +0 -3
  871. package/dialog/package.json +0 -3
  872. package/dynamic-form/package.json +0 -3
  873. package/editable-overlay/package.json +0 -3
  874. package/empty-state/package.json +0 -3
  875. package/fieldset/package.json +0 -3
  876. package/file-upload/package.json +0 -3
  877. package/gantt/package.json +0 -3
  878. package/global-search/package.json +0 -3
  879. package/grid-menu/package.json +0 -3
  880. package/help-popover/package.json +0 -3
  881. package/ia-insight/package.json +0 -3
  882. package/image-cropper/package.json +0 -3
  883. package/infinite-scroll/package.json +0 -3
  884. package/info-sign/package.json +0 -3
  885. package/inline-edit/package.json +0 -3
  886. package/interactive-content/package.json +0 -3
  887. package/kanban/package.json +0 -3
  888. package/label-value/package.json +0 -3
  889. package/loading-state/package.json +0 -3
  890. package/locale/package.json +0 -3
  891. package/localized-number-input/package.json +0 -3
  892. package/mask/package.json +0 -3
  893. package/mouse-events/package.json +0 -3
  894. package/navigation-button/package.json +0 -3
  895. package/number-input/package.json +0 -3
  896. package/numeric/package.json +0 -3
  897. package/object-card/package.json +0 -3
  898. package/paginator/package.json +0 -3
  899. package/panel/package.json +0 -3
  900. package/password-strength/package.json +0 -3
  901. package/picklist/package.json +0 -3
  902. package/product-header/package.json +0 -3
  903. package/profile-picture-picker/package.json +0 -3
  904. package/progressbar/package.json +0 -3
  905. package/rating-scale/package.json +0 -3
  906. package/select-button/package.json +0 -3
  907. package/shared/package.json +0 -3
  908. package/sidebar/package.json +0 -3
  909. package/slide-panel/package.json +0 -3
  910. package/slider/package.json +0 -3
  911. package/speech-recognition/package.json +0 -3
  912. package/split-button/package.json +0 -3
  913. package/star-rating/package.json +0 -3
  914. package/stats-card/package.json +0 -3
  915. package/steps/package.json +0 -3
  916. package/structure/package.json +0 -3
  917. package/switch/package.json +0 -3
  918. package/table/package.json +0 -3
  919. package/table-header/package.json +0 -3
  920. package/template/package.json +0 -3
  921. package/text-area/package.json +0 -3
  922. package/text-area-ia/package.json +0 -3
  923. package/thumbnail/package.json +0 -3
  924. package/thumbnails/package.json +0 -3
  925. package/tiered-menu/lib/tiered-menu/utils.d.ts +0 -2
  926. package/tiered-menu/package.json +0 -3
  927. package/tile/package.json +0 -3
  928. package/timeline/package.json +0 -3
  929. package/toast/package.json +0 -3
  930. package/token-list/package.json +0 -3
  931. package/tooltip/package.json +0 -3
  932. package/utils/package.json +0 -3
  933. package/workspace-switch/package.json +0 -3
@@ -1,7 +1,8 @@
1
1
  import { trigger, transition, style, animate } from '@angular/animations';
2
2
  import * as i0 from '@angular/core';
3
- import { EventEmitter, Component, ContentChildren, Input, Output, NgModule } from '@angular/core';
3
+ import { model, effect, Component, ContentChildren, Input, NgModule } from '@angular/core';
4
4
  import { TemplateDirective, TemplateModule } from '@seniorsistemas/angular-components/template';
5
+ import { disableScroll, enableScroll } from '@seniorsistemas/angular-components/utils';
5
6
  import * as i1 from '@angular/common';
6
7
  import { CommonModule } from '@angular/common';
7
8
  import * as i2 from '@angular/cdk/a11y';
@@ -9,7 +10,7 @@ import { A11yModule } from '@angular/cdk/a11y';
9
10
 
10
11
  class SidebarComponent {
11
12
  templates = null;
12
- visible = false;
13
+ visible = model(false);
13
14
  closable = true;
14
15
  dismissible = true;
15
16
  closeOnEscape = true;
@@ -19,21 +20,31 @@ class SidebarComponent {
19
20
  set registerConfirmClose(fn) {
20
21
  this._confirmClose = fn;
21
22
  }
22
- visibleChange = new EventEmitter();
23
23
  headerTemplate = null;
24
24
  bodyTemplate = null;
25
25
  footerTemplate = null;
26
26
  _confirmClose = () => true;
27
+ visibleEffect = effect(() => {
28
+ const visible = this.visible();
29
+ if (visible) {
30
+ disableScroll();
31
+ }
32
+ else {
33
+ enableScroll();
34
+ }
35
+ });
27
36
  ngAfterContentInit() {
28
37
  this._getTemplates();
29
38
  }
39
+ ngOnDestroy() {
40
+ this.visibleEffect.destroy();
41
+ }
30
42
  closeSidebar() {
31
43
  if (this._confirmClose()) {
32
- this.visible = false;
33
- this.visibleChange.emit(this.visible);
44
+ this.visible.set(false);
34
45
  }
35
46
  }
36
- handleEscape(_) {
47
+ handleEscape() {
37
48
  if (this.closeOnEscape) {
38
49
  this.closeSidebar();
39
50
  }
@@ -55,29 +66,39 @@ class SidebarComponent {
55
66
  this.bodyTemplate = this.getBodyTemplate();
56
67
  this.footerTemplate = this.getFooterTemplate();
57
68
  }
58
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SidebarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
59
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SidebarComponent, selector: "s-sidebar", inputs: { visible: "visible", closable: "closable", dismissible: "dismissible", closeOnEscape: "closeOnEscape", header: "header", largeSized: "largeSized", cache: "cache", registerConfirmClose: "registerConfirmClose" }, outputs: { visibleChange: "visibleChange" }, host: { listeners: { "document:keydown.escape": "handleEscape($event)" } }, queries: [{ propertyName: "templates", predicate: TemplateDirective }], ngImport: i0, template: "@if (visible) {\n\t<div\n\t\tclass=\"backdrop\"\n\t\t(click)=\"dismissible && closeSidebar()\"></div>\n}\n\n@if (cache || visible) {\n\t<div\n\t\tcdkTrapFocus\n\t\t[cdkTrapFocusAutoCapture]=\"visible\"\n\t\t[@visibilityChanged]\n\t\tclass=\"sidebar\"\n\t\t[class.sidebar--open]=\"visible\"\n\t\t[class.sidebar--large-size]=\"largeSized\">\n\t\t<div class=\"sidebar__header\">\n\t\t\t@if (headerTemplate) {\n\t\t\t\t<ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n\t\t\t} @else {\n\t\t\t\t<span class=\"sidebar__header__title\">{{ header }}</span>\n\t\t\t}\n\t\t\t@if (closable) {\n\t\t\t\t<button\n\t\t\t\t\tclass=\"sidebar__header__close fa-solid fa-xmark\"\n\t\t\t\t\t(click)=\"closeSidebar()\"></button>\n\t\t\t}\n\t\t</div>\n\t\t<div class=\"sidebar__body\">\n\t\t\t@if (bodyTemplate) {\n\t\t\t\t<ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n\t\t\t} @else {\n\t\t\t\t<ng-content></ng-content>\n\t\t\t}\n\t\t</div>\n\t\t@if (footerTemplate) {\n\t\t\t<div class=\"sidebar__footer\">\n\t\t\t\t<ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n\t\t\t</div>\n\t\t}\n\t</div>\n}\n", styles: [".backdrop{background-color:#00000080;height:100%;left:0;position:fixed;top:0;transition:opacity .3s;width:100%;z-index:9998}.sidebar{background-color:#fff;box-shadow:0 1px 5px #00000040;display:flex;flex-direction:column;height:100%;right:-100%;padding:1rem;position:fixed;top:0;transition:right .3s;width:100%;z-index:9999}.sidebar__header{border-bottom:1px solid #dedce5;display:flex;justify-content:space-between;padding-bottom:.75rem}.sidebar__header__title{color:#212533;font-family:Inter,sans-serif;font-size:1rem;text-transform:uppercase;-webkit-user-select:none;user-select:none}.sidebar__header__close{background-color:transparent;border:none;color:#212533;cursor:pointer;font-size:1rem;padding:.5rem}.sidebar__body{flex-grow:1;overflow:auto;padding:1rem .5rem}.sidebar__footer{border-top:1px solid #dedce5;padding-top:.75rem}.sidebar--open{right:0}@media (min-width: 768px){.sidebar{width:75%}}@media (min-width: 992px){.sidebar{width:50%}}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }], animations: [
69
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SidebarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
70
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SidebarComponent, selector: "s-sidebar", inputs: { visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null }, closable: { classPropertyName: "closable", publicName: "closable", isSignal: false, isRequired: false, transformFunction: null }, dismissible: { classPropertyName: "dismissible", publicName: "dismissible", isSignal: false, isRequired: false, transformFunction: null }, closeOnEscape: { classPropertyName: "closeOnEscape", publicName: "closeOnEscape", isSignal: false, isRequired: false, transformFunction: null }, header: { classPropertyName: "header", publicName: "header", isSignal: false, isRequired: false, transformFunction: null }, largeSized: { classPropertyName: "largeSized", publicName: "largeSized", isSignal: false, isRequired: false, transformFunction: null }, cache: { classPropertyName: "cache", publicName: "cache", isSignal: false, isRequired: false, transformFunction: null }, registerConfirmClose: { classPropertyName: "registerConfirmClose", publicName: "registerConfirmClose", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { visible: "visibleChange" }, host: { listeners: { "document:keydown.escape": "handleEscape()" } }, queries: [{ propertyName: "templates", predicate: TemplateDirective }], ngImport: i0, template: "@if (visible()) {\n <div\n class=\"backdrop\"\n (click)=\"dismissible && closeSidebar()\"\n ></div>\n}\n\n@if (cache || visible()) {\n <div\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"visible()\"\n [@visibilityChanged]\n class=\"sidebar\"\n [class.sidebar--open]=\"visible()\"\n [class.sidebar--large-size]=\"largeSized\"\n >\n <div class=\"sidebar__header\">\n @if (headerTemplate) {\n <ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n } @else {\n <span class=\"sidebar__header__title\">{{ header }}</span>\n }\n @if (closable) {\n <button\n class=\"sidebar__header__close fa-solid fa-xmark\"\n (click)=\"closeSidebar()\"\n ></button>\n }\n </div>\n <div class=\"sidebar__body\">\n @if (bodyTemplate) {\n <ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n } @else {\n <ng-content></ng-content>\n }\n </div>\n @if (footerTemplate) {\n <div class=\"sidebar__footer\">\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n </div>\n }\n </div>\n}\n", styles: [".backdrop{background-color:#00000080;height:100%;left:0;position:fixed;top:0;transition:opacity .3s;width:100%;z-index:998}.sidebar{background-color:#fff;box-shadow:0 1px 5px #00000040;display:flex;flex-direction:column;height:100%;right:-100%;padding:1rem;position:fixed;top:0;transition:right .3s;width:100%;z-index:999}.sidebar__header{border-bottom:1px solid #dedce5;display:flex;justify-content:space-between;padding-bottom:.75rem}.sidebar__header__title{color:#212533;font-family:Inter,sans-serif;font-size:1rem;text-transform:uppercase;-webkit-user-select:none;user-select:none}.sidebar__header__close{background-color:transparent;border:none;color:#212533;cursor:pointer;font-size:1rem;padding:.5rem}.sidebar__body{flex-grow:1;overflow:auto;padding:1rem .5rem}.sidebar__footer{border-top:1px solid #dedce5;padding-top:.75rem}.sidebar--open{right:0}@media (min-width: 768px){.sidebar{width:75%}}@media (min-width: 992px){.sidebar{width:50%}}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }], animations: [
60
71
  trigger('visibilityChanged', [
61
- transition(':enter', [style({ transform: 'translateX(100%)' }), animate('300ms', style({ transform: 'translateX(0)' }))]),
62
- transition(':leave', [style({ transform: 'translateX(0)' }), animate('300ms', style({ transform: 'translateX(100%)' }))]),
72
+ transition(':enter', [
73
+ style({ transform: 'translateX(100%)' }),
74
+ animate('300ms', style({ transform: 'translateX(0)' })),
75
+ ]),
76
+ transition(':leave', [
77
+ style({ transform: 'translateX(0)' }),
78
+ animate('300ms', style({ transform: 'translateX(100%)' })),
79
+ ]),
63
80
  ]),
64
81
  ] });
65
82
  }
66
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SidebarComponent, decorators: [{
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SidebarComponent, decorators: [{
67
84
  type: Component,
68
85
  args: [{ selector: 's-sidebar', host: {
69
- '(document:keydown.escape)': 'handleEscape($event)',
86
+ '(document:keydown.escape)': 'handleEscape()',
70
87
  }, animations: [
71
88
  trigger('visibilityChanged', [
72
- transition(':enter', [style({ transform: 'translateX(100%)' }), animate('300ms', style({ transform: 'translateX(0)' }))]),
73
- transition(':leave', [style({ transform: 'translateX(0)' }), animate('300ms', style({ transform: 'translateX(100%)' }))]),
89
+ transition(':enter', [
90
+ style({ transform: 'translateX(100%)' }),
91
+ animate('300ms', style({ transform: 'translateX(0)' })),
92
+ ]),
93
+ transition(':leave', [
94
+ style({ transform: 'translateX(0)' }),
95
+ animate('300ms', style({ transform: 'translateX(100%)' })),
96
+ ]),
74
97
  ]),
75
- ], template: "@if (visible) {\n\t<div\n\t\tclass=\"backdrop\"\n\t\t(click)=\"dismissible && closeSidebar()\"></div>\n}\n\n@if (cache || visible) {\n\t<div\n\t\tcdkTrapFocus\n\t\t[cdkTrapFocusAutoCapture]=\"visible\"\n\t\t[@visibilityChanged]\n\t\tclass=\"sidebar\"\n\t\t[class.sidebar--open]=\"visible\"\n\t\t[class.sidebar--large-size]=\"largeSized\">\n\t\t<div class=\"sidebar__header\">\n\t\t\t@if (headerTemplate) {\n\t\t\t\t<ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n\t\t\t} @else {\n\t\t\t\t<span class=\"sidebar__header__title\">{{ header }}</span>\n\t\t\t}\n\t\t\t@if (closable) {\n\t\t\t\t<button\n\t\t\t\t\tclass=\"sidebar__header__close fa-solid fa-xmark\"\n\t\t\t\t\t(click)=\"closeSidebar()\"></button>\n\t\t\t}\n\t\t</div>\n\t\t<div class=\"sidebar__body\">\n\t\t\t@if (bodyTemplate) {\n\t\t\t\t<ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n\t\t\t} @else {\n\t\t\t\t<ng-content></ng-content>\n\t\t\t}\n\t\t</div>\n\t\t@if (footerTemplate) {\n\t\t\t<div class=\"sidebar__footer\">\n\t\t\t\t<ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n\t\t\t</div>\n\t\t}\n\t</div>\n}\n", styles: [".backdrop{background-color:#00000080;height:100%;left:0;position:fixed;top:0;transition:opacity .3s;width:100%;z-index:9998}.sidebar{background-color:#fff;box-shadow:0 1px 5px #00000040;display:flex;flex-direction:column;height:100%;right:-100%;padding:1rem;position:fixed;top:0;transition:right .3s;width:100%;z-index:9999}.sidebar__header{border-bottom:1px solid #dedce5;display:flex;justify-content:space-between;padding-bottom:.75rem}.sidebar__header__title{color:#212533;font-family:Inter,sans-serif;font-size:1rem;text-transform:uppercase;-webkit-user-select:none;user-select:none}.sidebar__header__close{background-color:transparent;border:none;color:#212533;cursor:pointer;font-size:1rem;padding:.5rem}.sidebar__body{flex-grow:1;overflow:auto;padding:1rem .5rem}.sidebar__footer{border-top:1px solid #dedce5;padding-top:.75rem}.sidebar--open{right:0}@media (min-width: 768px){.sidebar{width:75%}}@media (min-width: 992px){.sidebar{width:50%}}\n"] }]
98
+ ], template: "@if (visible()) {\n <div\n class=\"backdrop\"\n (click)=\"dismissible && closeSidebar()\"\n ></div>\n}\n\n@if (cache || visible()) {\n <div\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"visible()\"\n [@visibilityChanged]\n class=\"sidebar\"\n [class.sidebar--open]=\"visible()\"\n [class.sidebar--large-size]=\"largeSized\"\n >\n <div class=\"sidebar__header\">\n @if (headerTemplate) {\n <ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n } @else {\n <span class=\"sidebar__header__title\">{{ header }}</span>\n }\n @if (closable) {\n <button\n class=\"sidebar__header__close fa-solid fa-xmark\"\n (click)=\"closeSidebar()\"\n ></button>\n }\n </div>\n <div class=\"sidebar__body\">\n @if (bodyTemplate) {\n <ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n } @else {\n <ng-content></ng-content>\n }\n </div>\n @if (footerTemplate) {\n <div class=\"sidebar__footer\">\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n </div>\n }\n </div>\n}\n", styles: [".backdrop{background-color:#00000080;height:100%;left:0;position:fixed;top:0;transition:opacity .3s;width:100%;z-index:998}.sidebar{background-color:#fff;box-shadow:0 1px 5px #00000040;display:flex;flex-direction:column;height:100%;right:-100%;padding:1rem;position:fixed;top:0;transition:right .3s;width:100%;z-index:999}.sidebar__header{border-bottom:1px solid #dedce5;display:flex;justify-content:space-between;padding-bottom:.75rem}.sidebar__header__title{color:#212533;font-family:Inter,sans-serif;font-size:1rem;text-transform:uppercase;-webkit-user-select:none;user-select:none}.sidebar__header__close{background-color:transparent;border:none;color:#212533;cursor:pointer;font-size:1rem;padding:.5rem}.sidebar__body{flex-grow:1;overflow:auto;padding:1rem .5rem}.sidebar__footer{border-top:1px solid #dedce5;padding-top:.75rem}.sidebar--open{right:0}@media (min-width: 768px){.sidebar{width:75%}}@media (min-width: 992px){.sidebar{width:50%}}\n"] }]
76
99
  }], propDecorators: { templates: [{
77
100
  type: ContentChildren,
78
101
  args: [TemplateDirective]
79
- }], visible: [{
80
- type: Input
81
102
  }], closable: [{
82
103
  type: Input
83
104
  }], dismissible: [{
@@ -92,16 +113,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
92
113
  type: Input
93
114
  }], registerConfirmClose: [{
94
115
  type: Input
95
- }], visibleChange: [{
96
- type: Output
97
116
  }] } });
98
117
 
99
118
  class SidebarModule {
100
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SidebarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
101
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: SidebarModule, declarations: [SidebarComponent], imports: [CommonModule, A11yModule], exports: [SidebarComponent, TemplateModule] });
102
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SidebarModule, imports: [CommonModule, A11yModule, TemplateModule] });
119
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SidebarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
120
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: SidebarModule, declarations: [SidebarComponent], imports: [CommonModule, A11yModule], exports: [SidebarComponent, TemplateModule] });
121
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SidebarModule, imports: [CommonModule, A11yModule, TemplateModule] });
103
122
  }
104
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SidebarModule, decorators: [{
123
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SidebarModule, decorators: [{
105
124
  type: NgModule,
106
125
  args: [{
107
126
  imports: [CommonModule, A11yModule],
@@ -1 +1 @@
1
- {"version":3,"file":"seniorsistemas-angular-components-sidebar.mjs","sources":["../../projects/angular-components/sidebar/src/lib/sidebar/sidebar.component.ts","../../projects/angular-components/sidebar/src/lib/sidebar/sidebar.component.html","../../projects/angular-components/sidebar/src/lib/sidebar/sidebar.module.ts","../../projects/angular-components/sidebar/src/seniorsistemas-angular-components-sidebar.ts"],"sourcesContent":["import { animate, style, transition, trigger } from '@angular/animations';\nimport { AfterContentInit, Component, ContentChildren, EventEmitter, Input, Output, QueryList, TemplateRef } from '@angular/core';\nimport { TemplateDirective } from '@seniorsistemas/angular-components/template';\n\n@Component({\n selector: 's-sidebar',\n templateUrl: './sidebar.component.html',\n styleUrls: ['./sidebar.component.scss'],\n host: {\n '(document:keydown.escape)': 'handleEscape($event)',\n },\n animations: [\n trigger('visibilityChanged', [\n transition(':enter', [style({ transform: 'translateX(100%)' }), animate('300ms', style({ transform: 'translateX(0)' }))]),\n transition(':leave', [style({ transform: 'translateX(0)' }), animate('300ms', style({ transform: 'translateX(100%)' }))]),\n ]),\n ],\n})\nexport class SidebarComponent implements AfterContentInit {\n @ContentChildren(TemplateDirective)\n public templates: QueryList<TemplateDirective> | null = null;\n\n @Input()\n public visible = false;\n\n @Input()\n public closable = true;\n\n @Input()\n public dismissible = true;\n\n @Input()\n public closeOnEscape = true;\n\n @Input()\n public header?: string;\n\n @Input()\n public largeSized = false;\n\n @Input()\n public cache = false;\n\n @Input()\n public set registerConfirmClose(fn: () => boolean) {\n this._confirmClose = fn;\n }\n\n @Output()\n public visibleChange = new EventEmitter<boolean>();\n\n public headerTemplate: TemplateRef<unknown> | null = null;\n public bodyTemplate: TemplateRef<unknown> | null = null;\n public footerTemplate: TemplateRef<unknown> | null = null;\n\n private _confirmClose = () => true;\n\n public ngAfterContentInit(): void {\n this._getTemplates();\n }\n\n public closeSidebar(): void {\n if (this._confirmClose()) {\n this.visible = false;\n this.visibleChange.emit(this.visible);\n }\n }\n\n public handleEscape(_: KeyboardEvent): void {\n if (this.closeOnEscape) {\n this.closeSidebar();\n }\n }\n\n private _getCustomTemplate(type: string): TemplateRef<any> | null {\n return this.templates?.find((template: TemplateDirective) => template.type === type)?.template ?? null;\n }\n\n private getHeaderTemplate(): TemplateRef<unknown> | null {\n return this._getCustomTemplate('header') ?? null;\n }\n\n private getBodyTemplate(): TemplateRef<unknown> | null {\n return this._getCustomTemplate('body') ?? null;\n }\n\n private getFooterTemplate(): TemplateRef<unknown> | null {\n return this._getCustomTemplate('footer') ?? null;\n }\n\n private _getTemplates(): void {\n this.headerTemplate = this.getHeaderTemplate();\n this.bodyTemplate = this.getBodyTemplate();\n this.footerTemplate = this.getFooterTemplate();\n }\n}\n","@if (visible) {\n\t<div\n\t\tclass=\"backdrop\"\n\t\t(click)=\"dismissible && closeSidebar()\"></div>\n}\n\n@if (cache || visible) {\n\t<div\n\t\tcdkTrapFocus\n\t\t[cdkTrapFocusAutoCapture]=\"visible\"\n\t\t[@visibilityChanged]\n\t\tclass=\"sidebar\"\n\t\t[class.sidebar--open]=\"visible\"\n\t\t[class.sidebar--large-size]=\"largeSized\">\n\t\t<div class=\"sidebar__header\">\n\t\t\t@if (headerTemplate) {\n\t\t\t\t<ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n\t\t\t} @else {\n\t\t\t\t<span class=\"sidebar__header__title\">{{ header }}</span>\n\t\t\t}\n\t\t\t@if (closable) {\n\t\t\t\t<button\n\t\t\t\t\tclass=\"sidebar__header__close fa-solid fa-xmark\"\n\t\t\t\t\t(click)=\"closeSidebar()\"></button>\n\t\t\t}\n\t\t</div>\n\t\t<div class=\"sidebar__body\">\n\t\t\t@if (bodyTemplate) {\n\t\t\t\t<ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n\t\t\t} @else {\n\t\t\t\t<ng-content></ng-content>\n\t\t\t}\n\t\t</div>\n\t\t@if (footerTemplate) {\n\t\t\t<div class=\"sidebar__footer\">\n\t\t\t\t<ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n\t\t\t</div>\n\t\t}\n\t</div>\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { A11yModule } from '@angular/cdk/a11y';\n\nimport { SidebarComponent } from './sidebar.component';\nimport { TemplateModule } from '@seniorsistemas/angular-components/template';\n\n@NgModule({\n imports: [CommonModule, A11yModule],\n declarations: [SidebarComponent],\n exports: [SidebarComponent, TemplateModule],\n})\nexport class SidebarModule {}\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-sidebar.mjs","sources":["../../projects/angular-components/sidebar/src/lib/sidebar/sidebar.component.ts","../../projects/angular-components/sidebar/src/lib/sidebar/sidebar.component.html","../../projects/angular-components/sidebar/src/lib/sidebar/sidebar.module.ts","../../projects/angular-components/sidebar/src/seniorsistemas-angular-components-sidebar.ts"],"sourcesContent":["import { animate, style, transition, trigger } from '@angular/animations';\nimport {\n AfterContentInit,\n Component,\n ContentChildren,\n effect,\n Input,\n model,\n OnDestroy,\n QueryList,\n TemplateRef,\n} from '@angular/core';\nimport { TemplateDirective } from '@seniorsistemas/angular-components/template';\nimport { disableScroll, enableScroll } from '@seniorsistemas/angular-components/utils';\n\n@Component({\n selector: 's-sidebar',\n templateUrl: './sidebar.component.html',\n styleUrls: ['./sidebar.component.scss'],\n host: {\n '(document:keydown.escape)': 'handleEscape()',\n },\n animations: [\n trigger('visibilityChanged', [\n transition(':enter', [\n style({ transform: 'translateX(100%)' }),\n animate('300ms', style({ transform: 'translateX(0)' })),\n ]),\n transition(':leave', [\n style({ transform: 'translateX(0)' }),\n animate('300ms', style({ transform: 'translateX(100%)' })),\n ]),\n ]),\n ],\n})\nexport class SidebarComponent implements AfterContentInit, OnDestroy {\n @ContentChildren(TemplateDirective)\n public templates: QueryList<TemplateDirective> | null = null;\n\n public visible = model<boolean>(false);\n\n @Input()\n public closable = true;\n\n @Input()\n public dismissible = true;\n\n @Input()\n public closeOnEscape = true;\n\n @Input()\n public header?: string;\n\n @Input()\n public largeSized = false;\n\n @Input()\n public cache = false;\n\n @Input()\n public set registerConfirmClose(fn: () => boolean) {\n this._confirmClose = fn;\n }\n\n public headerTemplate: TemplateRef<unknown> | null = null;\n public bodyTemplate: TemplateRef<unknown> | null = null;\n public footerTemplate: TemplateRef<unknown> | null = null;\n\n private _confirmClose = () => true;\n\n private readonly visibleEffect = effect(() => {\n const visible = this.visible();\n if (visible) {\n disableScroll();\n } else {\n enableScroll();\n }\n });\n\n public ngAfterContentInit(): void {\n this._getTemplates();\n }\n\n public ngOnDestroy(): void {\n this.visibleEffect.destroy();\n }\n\n public closeSidebar(): void {\n if (this._confirmClose()) {\n this.visible.set(false);\n }\n }\n\n public handleEscape(): void {\n if (this.closeOnEscape) {\n this.closeSidebar();\n }\n }\n\n private _getCustomTemplate(type: string): TemplateRef<any> | null {\n return this.templates?.find((template: TemplateDirective) => template.type === type)?.template ?? null;\n }\n\n private getHeaderTemplate(): TemplateRef<unknown> | null {\n return this._getCustomTemplate('header') ?? null;\n }\n\n private getBodyTemplate(): TemplateRef<unknown> | null {\n return this._getCustomTemplate('body') ?? null;\n }\n\n private getFooterTemplate(): TemplateRef<unknown> | null {\n return this._getCustomTemplate('footer') ?? null;\n }\n\n private _getTemplates(): void {\n this.headerTemplate = this.getHeaderTemplate();\n this.bodyTemplate = this.getBodyTemplate();\n this.footerTemplate = this.getFooterTemplate();\n }\n}\n","@if (visible()) {\n <div\n class=\"backdrop\"\n (click)=\"dismissible && closeSidebar()\"\n ></div>\n}\n\n@if (cache || visible()) {\n <div\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"visible()\"\n [@visibilityChanged]\n class=\"sidebar\"\n [class.sidebar--open]=\"visible()\"\n [class.sidebar--large-size]=\"largeSized\"\n >\n <div class=\"sidebar__header\">\n @if (headerTemplate) {\n <ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n } @else {\n <span class=\"sidebar__header__title\">{{ header }}</span>\n }\n @if (closable) {\n <button\n class=\"sidebar__header__close fa-solid fa-xmark\"\n (click)=\"closeSidebar()\"\n ></button>\n }\n </div>\n <div class=\"sidebar__body\">\n @if (bodyTemplate) {\n <ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n } @else {\n <ng-content></ng-content>\n }\n </div>\n @if (footerTemplate) {\n <div class=\"sidebar__footer\">\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n </div>\n }\n </div>\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { A11yModule } from '@angular/cdk/a11y';\n\nimport { SidebarComponent } from './sidebar.component';\nimport { TemplateModule } from '@seniorsistemas/angular-components/template';\n\n@NgModule({\n imports: [CommonModule, A11yModule],\n declarations: [SidebarComponent],\n exports: [SidebarComponent, TemplateModule],\n})\nexport class SidebarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -22,10 +22,10 @@ class SlidePanelService {
22
22
  subject.next();
23
23
  }
24
24
  }
25
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SlidePanelService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
26
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SlidePanelService });
25
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SlidePanelService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
26
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SlidePanelService });
27
27
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SlidePanelService, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SlidePanelService, decorators: [{
29
29
  type: Injectable
30
30
  }] });
31
31
 
@@ -100,8 +100,8 @@ class SlidePanelComponent {
100
100
  _checkOverBehavior() {
101
101
  this.isSlideOver = window.innerWidth <= SMALL_DEVICE_BREAKPOINT;
102
102
  }
103
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SlidePanelComponent, deps: [{ token: SlidePanelService }], target: i0.ɵɵFactoryTarget.Component });
104
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SlidePanelComponent, selector: "s-slide-panel", inputs: { id: "id", openIcon: "openIcon", closeIcon: "closeIcon", cache: "cache", createOpen: "createOpen", noOverlap: "noOverlap" }, outputs: { panelOpened: "panelOpened", panelClosed: "panelClosed" }, host: { listeners: { "window:resize": "onResize()" } }, ngImport: i0, template: "<div class=\"slide-panel\">\n <div\n class=\"slide-content\"\n [ngClass]=\"{\n 'slide-content--closed': !isOpen,\n 'slide-content--over': isSlideOver,\n 'slide-content--no-overlap': noOverlap,\n }\"\n >\n <div\n #mainContainer\n class=\"main-container\"\n >\n @if (cache) {\n <div\n class=\"content-container\"\n [@cacheAnimation]=\"isOpen\"\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cacheAnimation.start)=\"onContentAnimationStart()\"\n (@cacheAnimation.done)=\"onContentAnimationDone()\"\n >\n <ng-container [ngTemplateOutlet]=\"slideContentTemplate\"></ng-container>\n </div>\n } @else {\n @if (isOpen) {\n <div\n class=\"content-container\"\n @cachelessAnimation\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cachelessAnimation.start)=\"onContentAnimationStart()\"\n (@cachelessAnimation.done)=\"onContentAnimationDone()\"\n >\n <ng-container [ngTemplateOutlet]=\"slideContentTemplate\"></ng-container>\n </div>\n }\n }\n </div>\n <button\n class=\"button\"\n [ngClass]=\"isOpen ? closeIcon : openIcon\"\n (click)=\"onClickButton()\"\n ></button>\n </div>\n <div\n class=\"side-content\"\n >\n <ng-content select=\"[side-content]\"></ng-content>\n </div>\n</div>\n\n<ng-template #slideContentTemplate>\n <ng-content select=\"[slide-content]\"></ng-content>\n</ng-template>\n", styles: [".slide-panel{display:flex;width:100%}.slide-panel .slide-content{display:flex;position:relative}.slide-panel .slide-content .main-container{background-color:#eeebf2;display:flex;border:1px solid #ccc;overflow:hidden;position:relative}.slide-panel .slide-content .main-container .content-container{overflow-y:auto;overflow-x:hidden;padding:16px}.slide-panel .slide-content .button{align-items:center;background-color:#eeebf2;border:1px solid #ccc;border-left:none;border-radius:0 4px 4px 0;cursor:pointer;display:flex;font-family:\"Font Awesome 5 Pro\";font-size:16px;height:32px;justify-content:center;position:absolute;right:-32px;top:16px;width:32px;z-index:99}.slide-panel .slide-content--closed .main-container{border:none}.slide-panel .slide-content--over{position:absolute}.slide-panel .slide-content--no-overlap{margin-right:32px}.slide-panel .side-content{display:flex;height:max-content;overflow:auto;transition:width .1s linear}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
103
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SlidePanelComponent, deps: [{ token: SlidePanelService }], target: i0.ɵɵFactoryTarget.Component });
104
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SlidePanelComponent, selector: "s-slide-panel", inputs: { id: "id", openIcon: "openIcon", closeIcon: "closeIcon", cache: "cache", createOpen: "createOpen", noOverlap: "noOverlap" }, outputs: { panelOpened: "panelOpened", panelClosed: "panelClosed" }, host: { listeners: { "window:resize": "onResize()" } }, ngImport: i0, template: "<div class=\"slide-panel\">\n <div\n class=\"slide-content\"\n [ngClass]=\"{\n 'slide-content--closed': !isOpen,\n 'slide-content--over': isSlideOver,\n 'slide-content--no-overlap': noOverlap,\n }\"\n >\n <div\n #mainContainer\n class=\"main-container\"\n >\n @if (cache) {\n <div\n class=\"content-container\"\n [@cacheAnimation]=\"isOpen\"\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cacheAnimation.start)=\"onContentAnimationStart()\"\n (@cacheAnimation.done)=\"onContentAnimationDone()\"\n >\n <ng-container [ngTemplateOutlet]=\"slideContentTemplate\"></ng-container>\n </div>\n } @else {\n @if (isOpen) {\n <div\n class=\"content-container\"\n @cachelessAnimation\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cachelessAnimation.start)=\"onContentAnimationStart()\"\n (@cachelessAnimation.done)=\"onContentAnimationDone()\"\n >\n <ng-container [ngTemplateOutlet]=\"slideContentTemplate\"></ng-container>\n </div>\n }\n }\n </div>\n <button\n class=\"button\"\n [ngClass]=\"isOpen ? closeIcon : openIcon\"\n (click)=\"onClickButton()\"\n ></button>\n </div>\n <div\n class=\"side-content\"\n >\n <ng-content select=\"[side-content]\"></ng-content>\n </div>\n</div>\n\n<ng-template #slideContentTemplate>\n <ng-content select=\"[slide-content]\"></ng-content>\n</ng-template>\n", styles: [".slide-panel{display:flex;width:100%}.slide-panel .slide-content{display:flex;position:relative}.slide-panel .slide-content .main-container{background-color:#eeebf2;display:flex;border:1px solid #ccc;overflow:hidden;position:relative}.slide-panel .slide-content .main-container .content-container{overflow-y:auto;overflow-x:hidden;padding:16px}.slide-panel .slide-content .button{align-items:center;background-color:#eeebf2;border:1px solid #ccc;border-left:none;border-radius:0 4px 4px 0;cursor:pointer;display:flex;font-family:\"Font Awesome 5 Pro\";font-size:16px;height:32px;justify-content:center;position:absolute;right:-32px;top:16px;width:32px;z-index:99}.slide-panel .slide-content--closed .main-container{border:none}.slide-panel .slide-content--over{position:absolute}.slide-panel .slide-content--no-overlap{margin-right:32px}.slide-panel .side-content{display:flex;height:max-content;overflow:auto;transition:width .1s linear}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
105
105
  trigger("cachelessAnimation", [
106
106
  transition(":enter", [
107
107
  style({ width: "0" }),
@@ -119,7 +119,7 @@ class SlidePanelComponent {
119
119
  ]),
120
120
  ] });
121
121
  }
122
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SlidePanelComponent, decorators: [{
122
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SlidePanelComponent, decorators: [{
123
123
  type: Component,
124
124
  args: [{ selector: "s-slide-panel", animations: [
125
125
  trigger("cachelessAnimation", [
@@ -160,11 +160,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
160
160
  }] } });
161
161
 
162
162
  class SlidePanelModule {
163
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SlidePanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
164
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: SlidePanelModule, declarations: [SlidePanelComponent], imports: [CommonModule], exports: [SlidePanelComponent] });
165
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SlidePanelModule, providers: [SlidePanelService], imports: [CommonModule] });
163
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SlidePanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
164
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: SlidePanelModule, declarations: [SlidePanelComponent], imports: [CommonModule], exports: [SlidePanelComponent] });
165
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SlidePanelModule, providers: [SlidePanelService], imports: [CommonModule] });
166
166
  }
167
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SlidePanelModule, decorators: [{
167
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SlidePanelModule, decorators: [{
168
168
  type: NgModule,
169
169
  args: [{
170
170
  imports: [CommonModule],
@@ -528,16 +528,16 @@ class SliderComponent {
528
528
  get needParseValues() {
529
529
  return this.max !== this.MAX_RANGE_VALUE || this.min !== this.MIN_RANGE_VALUE;
530
530
  }
531
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SliderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
532
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SliderComponent, selector: "s-slider", inputs: { multiple: "multiple", value: "value", step: "step", hiddenThumb: "hiddenThumb", disabled: "disabled", min: "min", max: "max", minValueLabel: "minValueLabel", maxValueLabel: "maxValueLabel", tabindex: "tabindex" }, outputs: { valueChange: "valueChange" }, host: { listeners: { "document:keydown": "onKeydown($event)" } }, providers: [
531
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SliderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
532
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: SliderComponent, selector: "s-slider", inputs: { multiple: "multiple", value: "value", step: "step", hiddenThumb: "hiddenThumb", disabled: "disabled", min: "min", max: "max", minValueLabel: "minValueLabel", maxValueLabel: "maxValueLabel", tabindex: "tabindex" }, outputs: { valueChange: "valueChange" }, host: { listeners: { "document:keydown": "onKeydown($event)" } }, providers: [
533
533
  {
534
534
  provide: NG_VALUE_ACCESSOR,
535
535
  useExisting: forwardRef(() => SliderComponent),
536
536
  multi: true,
537
537
  },
538
- ], viewQueries: [{ propertyName: "track", first: true, predicate: ["track"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"slider-container\"\n [ngClass]=\"{ 'slider-container--disabled': disabled }\"\n [tabindex]=\"tabindex\"\n (click)=\"onTrackClick($event)\"\n (focus)=\"onFocusIn()\"\n (blur)=\"onBlur()\">\n <div\n #track\n class=\"slider-track\"\n [ngClass]=\"{\n 'slider-track--hidden-thumb': hiddenThumb,\n 'slider-track--moving-multiple-thumbs': movingProgressBar\n }\">\n <div\n class=\"slider-progress\"\n (mousedown)=\"onProgressMouseDown($event)\"\n [style.left.%]=\"progressLeft\"\n [style.width]=\"progressWidth\"\n ></div>\n <div\n *ngIf=\"multiple\"\n class=\"slider-thumb\"\n [sTooltip]=\"tooltipStartText\"\n [showDelay]=\"0\"\n (mousedown)=\"onMouseDown($event, 'start')\"\n [style.left.%]=\"startValue\"\n ></div>\n <div\n [sTooltip]=\"tooltipEndText\"\n class=\"slider-thumb\"\n [showDelay]=\"0\"\n (mousedown)=\"onMouseDown($event, 'end')\"\n [style.left.%]=\"endValue\"></div>\n </div>\n <div class=\"footer\">\n <span>{{ minValueLabel || min }}</span>\n <span>{{ maxValueLabel || max }}</span>\n </div>\n</div>\n", styles: [".slider-container{height:20px;padding:16px 0 40px;position:relative;-webkit-user-select:none;user-select:none;width:100%}.slider-container .slider-track{background-color:#ddd;border-radius:3px;cursor:pointer;height:6px;position:relative;width:100%}.slider-container .slider-track .slider-progress{background-color:#428bca;border-radius:3px;cursor:pointer;height:100%;left:0;position:absolute;top:0;width:0}.slider-container .slider-track .slider-thumb{background-color:#fff;border:2px solid #428bca;border-radius:50%;cursor:pointer;height:20px;position:absolute;transform:translateY(-50%);top:50%;width:20px}.slider-container .slider-track .slider-thumb:active{box-shadow:0 0 0 4px #428bca33}.slider-container .slider-track--hidden-thumb:not(:hover) .slider-thumb{opacity:0}.slider-container .slider-track--moving-multiple-thumbs .slider-thumb{box-shadow:0 0 0 4px #428bca33}.slider-container .footer{color:#212533;display:flex;font-family:Open Sans,sans-serif;font-size:14px;justify-content:space-between;margin-top:8px}.slider-container--disabled .slider-track{cursor:default}.slider-container--disabled .slider-track .slider-thumb{border-color:#a5a5b2;cursor:default}.slider-container--disabled .slider-track .slider-thumb:active{box-shadow:none}.slider-container--disabled .slider-track .slider-progress{background-color:#a5a5b2;cursor:default}.slider-container:focus-visible{outline:none}.slider-container:focus-visible .slider-thumb{box-shadow:0 0 0 4px #428bca33}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef"] }] });
538
+ ], viewQueries: [{ propertyName: "track", first: true, predicate: ["track"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"slider-container\"\n [ngClass]=\"{ 'slider-container--disabled': disabled }\"\n [tabindex]=\"tabindex\"\n (click)=\"onTrackClick($event)\"\n (focus)=\"onFocusIn()\"\n (blur)=\"onBlur()\">\n <div\n #track\n class=\"slider-track\"\n [ngClass]=\"{\n 'slider-track--hidden-thumb': hiddenThumb,\n 'slider-track--moving-multiple-thumbs': movingProgressBar\n }\">\n <div\n class=\"slider-progress\"\n (mousedown)=\"onProgressMouseDown($event)\"\n [style.left.%]=\"progressLeft\"\n [style.width]=\"progressWidth\"\n ></div>\n <div\n *ngIf=\"multiple\"\n class=\"slider-thumb\"\n [sTooltip]=\"tooltipStartText\"\n [showDelay]=\"0\"\n (mousedown)=\"onMouseDown($event, 'start')\"\n [style.left.%]=\"startValue\"\n ></div>\n <div\n [sTooltip]=\"tooltipEndText\"\n class=\"slider-thumb\"\n [showDelay]=\"0\"\n (mousedown)=\"onMouseDown($event, 'end')\"\n [style.left.%]=\"endValue\"></div>\n </div>\n <div class=\"footer\">\n <span>{{ minValueLabel || min }}</span>\n <span>{{ maxValueLabel || max }}</span>\n </div>\n</div>\n", styles: [".slider-container{height:20px;padding:16px 0 40px;position:relative;-webkit-user-select:none;user-select:none;width:100%}.slider-container .slider-track{background-color:#ddd;border-radius:3px;cursor:pointer;height:6px;position:relative;width:100%}.slider-container .slider-track .slider-progress{background-color:#428bca;border-radius:3px;cursor:pointer;height:100%;left:0;position:absolute;top:0;width:0}.slider-container .slider-track .slider-thumb{background-color:#fff;border:2px solid #428bca;border-radius:50%;cursor:pointer;height:20px;position:absolute;transform:translateY(-50%);top:50%;width:20px}.slider-container .slider-track .slider-thumb:active{box-shadow:0 0 0 4px #428bca33}.slider-container .slider-track--hidden-thumb:not(:hover) .slider-thumb{opacity:0}.slider-container .slider-track--moving-multiple-thumbs .slider-thumb{box-shadow:0 0 0 4px #428bca33}.slider-container .footer{color:#212533;display:flex;font-family:Open Sans,sans-serif;font-size:14px;justify-content:space-between;margin-top:8px}.slider-container--disabled .slider-track{cursor:default}.slider-container--disabled .slider-track .slider-thumb{border-color:#a5a5b2;cursor:default}.slider-container--disabled .slider-track .slider-thumb:active{box-shadow:none}.slider-container--disabled .slider-track .slider-progress{background-color:#a5a5b2;cursor:default}.slider-container:focus-visible{outline:none}.slider-container:focus-visible .slider-thumb{box-shadow:0 0 0 4px #428bca33}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }] });
539
539
  }
540
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SliderComponent, decorators: [{
540
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SliderComponent, decorators: [{
541
541
  type: Component,
542
542
  args: [{ selector: 's-slider', providers: [
543
543
  {
@@ -603,11 +603,11 @@ const getDifference = (end, start) => {
603
603
  };
604
604
 
605
605
  class SliderModule {
606
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SliderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
607
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: SliderModule, declarations: [SliderComponent], imports: [CommonModule, TooltipModule], exports: [SliderComponent] });
608
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SliderModule, imports: [CommonModule, TooltipModule] });
606
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SliderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
607
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: SliderModule, declarations: [SliderComponent], imports: [CommonModule, TooltipModule], exports: [SliderComponent] });
608
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SliderModule, imports: [CommonModule, TooltipModule] });
609
609
  }
610
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SliderModule, decorators: [{
610
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SliderModule, decorators: [{
611
611
  type: NgModule,
612
612
  args: [{
613
613
  imports: [CommonModule, TooltipModule],
@@ -1 +1 @@
1
- {"version":3,"file":"seniorsistemas-angular-components-slider.mjs","sources":["../../projects/angular-components/slider/src/lib/slider/slider.component.ts","../../projects/angular-components/slider/src/lib/slider/slider.component.html","../../projects/angular-components/slider/src/lib/slider/slider.module.ts","../../projects/angular-components/slider/src/seniorsistemas-angular-components-slider.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostListener,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n ViewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 's-slider',\n templateUrl: './slider.component.html',\n styleUrls: ['./slider.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SliderComponent),\n multi: true,\n },\n ],\n})\nexport class SliderComponent implements OnInit, AfterViewInit, ControlValueAccessor, OnChanges {\n private readonly MAX_RANGE_VALUE = 100;\n private readonly MIN_RANGE_VALUE = 0;\n @ViewChild('track')\n public track!: ElementRef;\n\n @Input()\n public multiple = false;\n\n @Input()\n public value: number | [number, number] = 0;\n\n @Output()\n public valueChange = new EventEmitter<number | [number, number]>();\n\n @Input()\n public step = 1;\n\n @Input()\n public hiddenThumb = false;\n\n @Input()\n public disabled = false;\n\n @Input()\n public min = this.MIN_RANGE_VALUE;\n\n @Input()\n public max = this.MAX_RANGE_VALUE;\n\n @Input()\n public minValueLabel?: string;\n\n @Input()\n public maxValueLabel?: string;\n\n @Input()\n public tabindex = 0;\n\n public startValue = 0;\n public endValue = 0;\n public movingProgressBar = false;\n public progressLeft = 0;\n public progressWidth = '';\n\n public onChange: (value: number | [number, number]) => void = () => {};\n public onTouched: (value: number | [number, number]) => void = () => {};\n\n private draggingThumb: 'start' | 'end' | null = null;\n private progressBarEventPositionStart = -1;\n private startValueBeforeProgressBarEvent = -1;\n private rangeBetweenElementsBeforeProgressBarEvent = -1;\n private totalRangeBeforeProgressBarEvent = -1;\n /**\n * Map of valid values for values in range.\n * @example\n * with min = -10 and max = 10 will have this map.\n * {\n * -10: { 0 },\n * -9: { 10 },\n * ...\n * 10: { 10 }\n * }\n */\n private mapRangeValuesForSlider: Map<number, number> = new Map();\n private activeMouseDown = false;\n private focusActive = false;\n\n public ngOnInit(): void {\n this.setUserRangeMapValues();\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n const hasChangesOnMin = changes['min'] && !changes['min'].firstChange;\n const hasChangesOnMax = changes['max'] && !changes['max'].firstChange;\n const hasChanges = hasChangesOnMin || hasChangesOnMax;\n if (hasChanges) {\n this.setUserRangeMapValues();\n setTimeout(() => {\n this.setRangeValues();\n });\n }\n }\n public ngAfterViewInit(): void {\n setTimeout(() => {\n this.setRangeValues();\n });\n }\n\n @HostListener('document:keydown', ['$event'])\n public onKeydown($event: KeyboardEvent) {\n if (this.focusActive && !this.disabled) {\n const isArrowKeyLeft = $event.key === 'ArrowLeft';\n const isArrowKeyRight = $event.key === 'ArrowRight';\n if (isArrowKeyLeft) {\n this.handleArrowKeyLeft();\n } else if (isArrowKeyRight) {\n this.handleArrowKeyRight();\n }\n }\n }\n\n public get tooltipStartText() {\n return Array.isArray(this.value) ? this.value[0]?.toString() : this.value?.toString();\n }\n\n public get tooltipEndText() {\n return Array.isArray(this.value) ? this.value[1]?.toString() : this.value?.toString();\n }\n\n public writeValue(obj: number | [number, number]): void {\n this.value = obj;\n this.setRangeValues();\n }\n\n public registerOnChange(fn: (value: number | [number, number]) => void): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n public setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n public onFocusIn() {\n this.focusActive = true;\n }\n\n public onBlur() {\n this.focusActive = false;\n }\n\n public onTrackClick(evt: MouseEvent) {\n if (this.disabled || this.movingProgressBar || this.activeMouseDown) {\n return;\n }\n const trackClickPercentage = this.getPercentageByEvent(evt);\n const trackClickToUserRange = this.getValueFromMapByValue(trackClickPercentage);\n const _trackClickValid = this.needParseValues ? trackClickToUserRange : trackClickPercentage;\n const _setEndValue = () => {\n const _endValueUserValue = this.getValueFromMapByValue(this.endValue);\n const _endValue = (this.needParseValues ? this.mapRangeValuesForSlider.get(trackClickToUserRange) : trackClickPercentage) ?? 0;\n if (this.needParseValues && _endValueUserValue !== trackClickToUserRange) {\n this.endValue = _endValue;\n } else if (!this.needParseValues) {\n this.endValue = trackClickPercentage;\n }\n };\n\n const _setStartValue = () => {\n const _startValueUserValue = this.getValueFromMapByValue(this.startValue);\n if (this.needParseValues && _startValueUserValue !== trackClickToUserRange) {\n const _startValue = (this.needParseValues ? this.mapRangeValuesForSlider.get(trackClickToUserRange) : trackClickPercentage) ?? 0;\n this.startValue = _startValue;\n } else if (!this.needParseValues) {\n this.startValue = trackClickPercentage;\n }\n };\n if (this.multiple) {\n const [start, end] = this.value as [number, number];\n const validStart = (this.needParseValues ? this.mapRangeValuesForSlider.get(start) : start) ?? 0;\n const validEnd = (this.needParseValues ? this.mapRangeValuesForSlider.get(end) : end) ?? 0;\n const _updateStart = () => {\n _setStartValue();\n this.setValue([trackClickPercentage, validEnd]);\n };\n\n const _updateEnd = () => {\n _setEndValue();\n this.setValue([validStart, trackClickPercentage]);\n };\n const clickPercentageBetweenRange = isInRange(_trackClickValid, start, end);\n if (_trackClickValid < start) {\n _updateStart();\n } else if (_trackClickValid > end) {\n _updateEnd();\n } else if (clickPercentageBetweenRange) {\n const middle = (start + end) / 2;\n const trackClickPercentageIsExactiddle = _trackClickValid === middle;\n if (trackClickPercentageIsExactiddle) {\n _updateStart();\n } else {\n const setStart = _trackClickValid < middle;\n const setEnd = _trackClickValid > middle;\n if (setStart) {\n _updateStart();\n } else if (setEnd) {\n _updateEnd();\n }\n }\n }\n } else {\n this.setValue(trackClickPercentage);\n _setEndValue();\n }\n\n this.setProgress();\n }\n\n public onProgressMouseDown(evt: MouseEvent) {\n if (!this.multiple || this.disabled) {\n return;\n }\n this.progressBarEventPositionStart = this.getPercentageByEvent(evt);\n this.startValueBeforeProgressBarEvent = this.startValue;\n this.rangeBetweenElementsBeforeProgressBarEvent = this.endValue - this.startValue;\n if (this.multiple) {\n const [start, end] = this.value as [number, number];\n this.totalRangeBeforeProgressBarEvent = end - start;\n }\n document.addEventListener('mousemove', this.handleProgressBarMove);\n document.addEventListener('mouseup', this.handleProgressBarMoveEnd);\n }\n\n public onMouseDown(_: MouseEvent, thumb: 'start' | 'end'): void {\n if (this.disabled) return;\n\n this.draggingThumb = thumb;\n this.activeMouseDown = true;\n document.addEventListener('mousemove', this.onThumbMove);\n document.addEventListener('mouseup', this.onMouseUp);\n }\n\n private setRangeValues(): void {\n const _setStartAndEndValue = (startValue: number, endValue: number) => {\n this.startValue = this.getClosestValueFromMapSlider(startValue);\n this.endValue = this.getClosestValueFromMapSlider(endValue);\n };\n if (this.value === null || this.value === undefined) {\n return;\n }\n if (Array.isArray(this.value) && !this.multiple) {\n throw new Error('You must use \"multiple\" with value as array');\n }\n if (this.multiple && Array.isArray(this.value)) {\n this.startValue = this.value[0];\n this.endValue = this.value[1];\n } else if (!this.multiple) {\n this.startValue = this.value as number;\n this.endValue = this.value as number;\n }\n _setStartAndEndValue(this.startValue, this.endValue);\n if (this.multiple) {\n let [_startValue, _endValue] = this.value as [number, number];\n const difference = getDifference(_endValue, _startValue);\n const endValueIsGreatherThanMax = _endValue > this.max;\n const startValueIsLessThanMin = _startValue < this.min;\n const needUpdateValues = endValueIsGreatherThanMax || startValueIsLessThanMin;\n if (endValueIsGreatherThanMax) {\n _endValue = this.max;\n _startValue = _endValue - difference;\n } else if (startValueIsLessThanMin) {\n _startValue = this.min;\n _endValue = _startValue + difference;\n }\n if (needUpdateValues) {\n _setStartAndEndValue(_startValue, _endValue);\n this.setValue([this.startValue, this.endValue]);\n }\n } else {\n let _value = this.value as number;\n const valueGreatherThanMax = _value > this.max;\n const valueLessThanMin = _value < this.min;\n const needUpdateValue = valueGreatherThanMax || valueLessThanMin;\n if (valueGreatherThanMax) {\n _value = this.max;\n } else if (valueLessThanMin) {\n _value = this.min;\n }\n if (needUpdateValue) {\n this.setValue(_value, false);\n }\n }\n this.setProgress();\n }\n\n private onThumbMove = (event: MouseEvent) => {\n if (this.movingProgressBar || !this.draggingThumb) return;\n\n let newPosition = this.getPercentageByEvent(event);\n if (\n (this.multiple && this.draggingThumb === 'start' && newPosition > this.endValue) ||\n (this.multiple && this.draggingThumb === 'end' && newPosition < this.startValue)\n ) {\n return;\n }\n\n const positionInUserRange = this.getValueFromMapByValue(newPosition);\n\n if (this.multiple) {\n if (this.draggingThumb === 'start') {\n this.startValue = (this.needParseValues ? this.mapRangeValuesForSlider.get(positionInUserRange) : newPosition) ?? 0;\n } else if (this.draggingThumb === 'end') {\n this.endValue = (this.needParseValues ? this.mapRangeValuesForSlider.get(positionInUserRange) : newPosition) ?? 0;\n }\n\n this.setValue([this.startValue, this.endValue]);\n\n const [start, end] = this.value as [number, number];\n\n if (start === end && this.draggingThumb === 'start') {\n this.startValue = this.endValue;\n } else if (start === end && this.draggingThumb === 'end') {\n this.endValue = this.startValue;\n }\n } else {\n const currentValue = this.value as number;\n const _value = this.needParseValues ? positionInUserRange : newPosition;\n const isAtSameValue = this.needParseValues ? positionInUserRange === this.value : false;\n const hasStep = this.step !== 0;\n const newValueIsValidByStep = hasStep ? currentValue + this.step === _value || currentValue - this.step === _value : false;\n if (isAtSameValue && !newValueIsValidByStep) {\n return;\n }\n this.endValue = (this.needParseValues ? this.mapRangeValuesForSlider.get(positionInUserRange) : newPosition) ?? 0;\n this.startValue = this.endValue;\n this.setValue(this.endValue);\n }\n this.setProgress();\n };\n\n private onMouseUp = () => {\n this.draggingThumb = null;\n document.removeEventListener('mousemove', this.onThumbMove);\n document.removeEventListener('mouseup', this.onMouseUp);\n setTimeout(() => {\n this.activeMouseDown = false;\n }, 150);\n };\n\n private handleProgressBarMove = (event: MouseEvent) => {\n this.movingProgressBar = true;\n const newCenter = this.getPercentageByEvent(event);\n const startPositionBeforeEvent = this.progressBarEventPositionStart;\n const startValueBeforeEvent = this.startValueBeforeProgressBarEvent;\n const range = this.rangeBetweenElementsBeforeProgressBarEvent;\n let { newStart, newEnd } = calculateNewRange(startValueBeforeEvent, startValueBeforeEvent + range, startPositionBeforeEvent, newCenter);\n if (newStart < this.MIN_RANGE_VALUE || newEnd > this.MAX_RANGE_VALUE) {\n return;\n }\n if (this.needParseValues) {\n const startValueBeforeEventUserRange = this.getValueFromMapByValue(startValueBeforeEvent);\n const startPositionBeforeEventUserRange = this.getValueFromMapByValue(startPositionBeforeEvent);\n const centerUserRange = this.getValueFromMapByValue(newCenter);\n const valueRange = this.totalRangeBeforeProgressBarEvent;\n let { newStart, newEnd } = calculateNewRange(\n startValueBeforeEventUserRange,\n startValueBeforeEventUserRange + valueRange,\n startPositionBeforeEventUserRange,\n centerUserRange,\n );\n if (newStart < this.min || newEnd > this.max) {\n return;\n }\n this.startValue = this.mapRangeValuesForSlider.get(newStart) ?? 0;\n this.endValue = this.mapRangeValuesForSlider.get(newEnd) ?? 0;\n } else {\n this.startValue = newStart;\n this.endValue = newEnd;\n }\n this.setValue([this.startValue, this.endValue]);\n this.setProgress();\n };\n\n private handleProgressBarMoveEnd = () => {\n this.progressBarEventPositionStart = -1;\n this.startValueBeforeProgressBarEvent = -1;\n this.rangeBetweenElementsBeforeProgressBarEvent = -1;\n this.totalRangeBeforeProgressBarEvent = -1;\n document.removeEventListener('mousemove', this.handleProgressBarMove);\n document.removeEventListener('mouseup', this.handleProgressBarMoveEnd);\n setTimeout(() => {\n this.movingProgressBar = false;\n }, 150);\n };\n\n private setProgress(): void {\n if (this.multiple) {\n this.progressLeft = this.startValue;\n this.progressWidth = `calc(${this.endValue - this.startValue}% + 10px)`;\n } else {\n this.progressLeft = 0;\n this.progressWidth = `calc(${this.endValue}% + 10px)`;\n }\n }\n\n /**\n * Get the percentage of a mouse event from the track's left edge\n * @param mouseEvent mouse event\n * @returns percentage from the left edge\n */\n private getPercentageByEvent(mouseEvent: MouseEvent | PointerEvent): number {\n const trackRect = this.track.nativeElement.getBoundingClientRect();\n let newLeft = Math.round(((mouseEvent.clientX - trackRect.left) / trackRect.width) * this.MAX_RANGE_VALUE);\n newLeft = Math.max(0, Math.min(newLeft, this.MAX_RANGE_VALUE));\n return newLeft;\n }\n\n private setValue(value: number | [number, number], parse = true) {\n if (this.disabled) {\n return;\n }\n\n if (this.needParseValues && parse) {\n if (Array.isArray(value)) {\n value = value.map((x) => this.getValueFromMapByValue(x)) as [number, number];\n } else {\n value = this.getValueFromMapByValue(value);\n }\n }\n this.value = value;\n this.valueChange.emit(value);\n this.writeValue(this.value);\n this.onChange(this.value);\n this.onTouched(this.value);\n }\n\n private setUserRangeMapValues() {\n const start = this.min;\n const end = this.max;\n if (start > end) {\n throw new Error('Max value must be greater than min value');\n }\n this.mapRangeValuesForSlider.clear();\n const range = end - start;\n const decimalPlaces = 2;\n const stepCount = Math.floor(range / this.step);\n const values: number[] = [];\n for (let value = start; value <= end; value += this.step) {\n values.push(value);\n }\n if (values[values.length - 1] !== end) {\n values.push(end);\n }\n const mappedValues = values.map((value) => {\n let mapped = ((value - start) / range) * this.MAX_RANGE_VALUE;\n return parseFloat(mapped.toFixed(decimalPlaces));\n });\n mappedValues[0] = 0;\n mappedValues[mappedValues.length - 1] = this.MAX_RANGE_VALUE;\n const error = this.MAX_RANGE_VALUE - mappedValues[mappedValues.length - 1];\n const errorPerStep = error / stepCount;\n for (let i = 1; i < mappedValues.length - 1; i++) {\n mappedValues[i] += errorPerStep;\n mappedValues[i] = parseFloat(mappedValues[i].toFixed(decimalPlaces));\n }\n values.forEach((value, index) => {\n this.mapRangeValuesForSlider.set(value, mappedValues[index]);\n });\n }\n\n /**\n * Returns the user value from the given slider value by using the map of range values.\n * @example\n * If the map is 0: { 0 }, 1: { 10 }, 2: { 30 }, 3: { 40 }, 4: { 50 }\n * and the sliderValue is 37, the function returns 3\n * or the slider value is 40, the function returns 4\n * @param sliderValue the value of the slider (values only between range MIN and MAX)\n * @returns the user value from the given slider value\n */\n private getValueFromMapByValue(sliderValue: number) {\n const mapToArray = Array.from(this.mapRangeValuesForSlider).map(([value, mapped]) => ({ value, mapped }));\n const exactValue = mapToArray.find((x) => x.mapped == sliderValue);\n const closest = mapToArray.reduce((prev, curr) => (Math.abs(curr.mapped - sliderValue) < Math.abs(prev.mapped - sliderValue) ? curr : prev));\n return exactValue ? exactValue.value : closest.value;\n }\n\n /**\n * Retrieves the key from the map that is closest to the given slider value.\n * @param userValue - The value to find the closest key for. (values only between 0 - 100)\n * @returns The key that corresponds to the closest mapped value.\n */\n private getClosestValueFromMapSlider(userValue: number): number {\n const mapToArray = Array.from(this.mapRangeValuesForSlider).map(([value, mapped]) => ({ value, mapped }));\n if (userValue >= this.max) {\n return mapToArray[mapToArray.length - 1].mapped;\n } else if (userValue <= this.min) {\n return mapToArray[0].mapped;\n }\n const exactValue = mapToArray.find((x) => x.value == userValue);\n const closestValue = mapToArray.reduce((prev, curr) => (Math.abs(curr.value - userValue) < Math.abs(prev.value - userValue) ? curr : prev));\n const item = exactValue || closestValue;\n const isFirstItem = mapToArray[0] === item;\n const isLastItem = mapToArray[mapToArray.length - 1] === item;\n if (isFirstItem && userValue > this.min) {\n return getMidpoint(item.mapped, mapToArray[1].mapped);\n } else if (isLastItem && userValue < this.max) {\n return getMidpoint(item.mapped, mapToArray[mapToArray.length - 2].mapped);\n } else {\n return item.mapped;\n }\n }\n\n private handleArrowKeyLeft() {\n if (this.multiple) {\n this._incrementOrDecrementStartAndEndValue(false);\n } else {\n this._incrementOrDecrementEndValue(false);\n }\n this.setProgress();\n }\n\n private handleArrowKeyRight() {\n if (this.multiple) {\n this._incrementOrDecrementStartAndEndValue(true);\n } else {\n this._incrementOrDecrementEndValue(true);\n }\n this.setProgress();\n }\n\n private _incrementOrDecrementStartAndEndValue(increment: boolean) {\n let [start, end] = this.value as [number, number];\n const difference = getDifference(end, start);\n if (increment) {\n start += this.step;\n end += this.step;\n } else {\n start -= this.step;\n end -= this.step;\n }\n const startLessThanMin = start < this.min;\n const endGreaterThanMax = end > this.max;\n if (startLessThanMin || endGreaterThanMax) {\n if (startLessThanMin) {\n start = this.min;\n end = start + difference;\n } else if (endGreaterThanMax) {\n end = this.max;\n start = end - difference;\n }\n }\n if (start < this.min || end > this.max) {\n return;\n }\n this.setValue([start, end], false);\n if (this.needParseValues) {\n start = this.getClosestValueFromMapSlider(start);\n end = this.getClosestValueFromMapSlider(end);\n }\n this.startValue = start;\n this.endValue = end;\n }\n\n private _incrementOrDecrementEndValue(increment: boolean) {\n let value = this.value as number;\n if (increment) {\n value += this.step;\n } else {\n value -= this.step;\n }\n let _newEndValue = value;\n if (this.needParseValues) {\n _newEndValue = this.getClosestValueFromMapSlider(_newEndValue);\n }\n if (_newEndValue < this.MIN_RANGE_VALUE || _newEndValue > this.MAX_RANGE_VALUE) {\n return;\n }\n this.endValue = _newEndValue;\n this.startValue = this.endValue;\n this.setValue(_newEndValue);\n }\n\n private get needParseValues() {\n return this.max !== this.MAX_RANGE_VALUE || this.min !== this.MIN_RANGE_VALUE;\n }\n}\n\n/**\n * Calculates a new range based on the old range and the positions clicked and finalized.\n *\n * @param oldStart - The starting value of the old range.\n * @param oldEnd - The ending value of the old range.\n * @param clickedPosition - The position where the click occurred.\n * @param finalPosition - The position where the range should end.\n * @returns An object containing the new start and end values of the range.\n */\nconst calculateNewRange = (oldStart: number, oldEnd: number, clickedPosition: number, finalPosition: number) => {\n const range = oldEnd - oldStart;\n const newStart = finalPosition - (clickedPosition - oldStart);\n const newEnd = newStart + range;\n return { newStart, newEnd };\n};\n\nconst isInRange = (value: number, rangeStart: number, rangeEnd: number): boolean => {\n const [min, max] = rangeStart < rangeEnd ? [rangeStart, rangeEnd] : [rangeEnd, rangeStart];\n return value >= min && value <= max;\n};\n\nconst getMidpoint = (start: number, end: number) => {\n const midpoint = (start + end) / 2;\n return parseFloat(midpoint.toFixed(2));\n};\nconst getDifference = (end: number, start: number) => {\n return Math.abs(end - start);\n};\n","<div\n class=\"slider-container\"\n [ngClass]=\"{ 'slider-container--disabled': disabled }\"\n [tabindex]=\"tabindex\"\n (click)=\"onTrackClick($event)\"\n (focus)=\"onFocusIn()\"\n (blur)=\"onBlur()\">\n <div\n #track\n class=\"slider-track\"\n [ngClass]=\"{\n 'slider-track--hidden-thumb': hiddenThumb,\n 'slider-track--moving-multiple-thumbs': movingProgressBar\n }\">\n <div\n class=\"slider-progress\"\n (mousedown)=\"onProgressMouseDown($event)\"\n [style.left.%]=\"progressLeft\"\n [style.width]=\"progressWidth\"\n ></div>\n <div\n *ngIf=\"multiple\"\n class=\"slider-thumb\"\n [sTooltip]=\"tooltipStartText\"\n [showDelay]=\"0\"\n (mousedown)=\"onMouseDown($event, 'start')\"\n [style.left.%]=\"startValue\"\n ></div>\n <div\n [sTooltip]=\"tooltipEndText\"\n class=\"slider-thumb\"\n [showDelay]=\"0\"\n (mousedown)=\"onMouseDown($event, 'end')\"\n [style.left.%]=\"endValue\"></div>\n </div>\n <div class=\"footer\">\n <span>{{ minValueLabel || min }}</span>\n <span>{{ maxValueLabel || max }}</span>\n </div>\n</div>\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { SliderComponent } from \"./slider.component\";\nimport { TooltipModule } from \"@seniorsistemas/angular-components/tooltip\";\n\n@NgModule({\n imports: [CommonModule, TooltipModule],\n declarations: [SliderComponent],\n exports: [SliderComponent],\n})\nexport class SliderModule { }\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-slider.mjs","sources":["../../projects/angular-components/slider/src/lib/slider/slider.component.ts","../../projects/angular-components/slider/src/lib/slider/slider.component.html","../../projects/angular-components/slider/src/lib/slider/slider.module.ts","../../projects/angular-components/slider/src/seniorsistemas-angular-components-slider.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostListener,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n ViewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 's-slider',\n templateUrl: './slider.component.html',\n styleUrls: ['./slider.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SliderComponent),\n multi: true,\n },\n ],\n})\nexport class SliderComponent implements OnInit, AfterViewInit, ControlValueAccessor, OnChanges {\n private readonly MAX_RANGE_VALUE = 100;\n private readonly MIN_RANGE_VALUE = 0;\n @ViewChild('track')\n public track!: ElementRef;\n\n @Input()\n public multiple = false;\n\n @Input()\n public value: number | [number, number] = 0;\n\n @Output()\n public valueChange = new EventEmitter<number | [number, number]>();\n\n @Input()\n public step = 1;\n\n @Input()\n public hiddenThumb = false;\n\n @Input()\n public disabled = false;\n\n @Input()\n public min = this.MIN_RANGE_VALUE;\n\n @Input()\n public max = this.MAX_RANGE_VALUE;\n\n @Input()\n public minValueLabel?: string;\n\n @Input()\n public maxValueLabel?: string;\n\n @Input()\n public tabindex = 0;\n\n public startValue = 0;\n public endValue = 0;\n public movingProgressBar = false;\n public progressLeft = 0;\n public progressWidth = '';\n\n public onChange: (value: number | [number, number]) => void = () => {};\n public onTouched: (value: number | [number, number]) => void = () => {};\n\n private draggingThumb: 'start' | 'end' | null = null;\n private progressBarEventPositionStart = -1;\n private startValueBeforeProgressBarEvent = -1;\n private rangeBetweenElementsBeforeProgressBarEvent = -1;\n private totalRangeBeforeProgressBarEvent = -1;\n /**\n * Map of valid values for values in range.\n * @example\n * with min = -10 and max = 10 will have this map.\n * {\n * -10: { 0 },\n * -9: { 10 },\n * ...\n * 10: { 10 }\n * }\n */\n private mapRangeValuesForSlider: Map<number, number> = new Map();\n private activeMouseDown = false;\n private focusActive = false;\n\n public ngOnInit(): void {\n this.setUserRangeMapValues();\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n const hasChangesOnMin = changes['min'] && !changes['min'].firstChange;\n const hasChangesOnMax = changes['max'] && !changes['max'].firstChange;\n const hasChanges = hasChangesOnMin || hasChangesOnMax;\n if (hasChanges) {\n this.setUserRangeMapValues();\n setTimeout(() => {\n this.setRangeValues();\n });\n }\n }\n public ngAfterViewInit(): void {\n setTimeout(() => {\n this.setRangeValues();\n });\n }\n\n @HostListener('document:keydown', ['$event'])\n public onKeydown($event: KeyboardEvent) {\n if (this.focusActive && !this.disabled) {\n const isArrowKeyLeft = $event.key === 'ArrowLeft';\n const isArrowKeyRight = $event.key === 'ArrowRight';\n if (isArrowKeyLeft) {\n this.handleArrowKeyLeft();\n } else if (isArrowKeyRight) {\n this.handleArrowKeyRight();\n }\n }\n }\n\n public get tooltipStartText() {\n return Array.isArray(this.value) ? this.value[0]?.toString() : this.value?.toString();\n }\n\n public get tooltipEndText() {\n return Array.isArray(this.value) ? this.value[1]?.toString() : this.value?.toString();\n }\n\n public writeValue(obj: number | [number, number]): void {\n this.value = obj;\n this.setRangeValues();\n }\n\n public registerOnChange(fn: (value: number | [number, number]) => void): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n public setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n public onFocusIn() {\n this.focusActive = true;\n }\n\n public onBlur() {\n this.focusActive = false;\n }\n\n public onTrackClick(evt: MouseEvent) {\n if (this.disabled || this.movingProgressBar || this.activeMouseDown) {\n return;\n }\n const trackClickPercentage = this.getPercentageByEvent(evt);\n const trackClickToUserRange = this.getValueFromMapByValue(trackClickPercentage);\n const _trackClickValid = this.needParseValues ? trackClickToUserRange : trackClickPercentage;\n const _setEndValue = () => {\n const _endValueUserValue = this.getValueFromMapByValue(this.endValue);\n const _endValue = (this.needParseValues ? this.mapRangeValuesForSlider.get(trackClickToUserRange) : trackClickPercentage) ?? 0;\n if (this.needParseValues && _endValueUserValue !== trackClickToUserRange) {\n this.endValue = _endValue;\n } else if (!this.needParseValues) {\n this.endValue = trackClickPercentage;\n }\n };\n\n const _setStartValue = () => {\n const _startValueUserValue = this.getValueFromMapByValue(this.startValue);\n if (this.needParseValues && _startValueUserValue !== trackClickToUserRange) {\n const _startValue = (this.needParseValues ? this.mapRangeValuesForSlider.get(trackClickToUserRange) : trackClickPercentage) ?? 0;\n this.startValue = _startValue;\n } else if (!this.needParseValues) {\n this.startValue = trackClickPercentage;\n }\n };\n if (this.multiple) {\n const [start, end] = this.value as [number, number];\n const validStart = (this.needParseValues ? this.mapRangeValuesForSlider.get(start) : start) ?? 0;\n const validEnd = (this.needParseValues ? this.mapRangeValuesForSlider.get(end) : end) ?? 0;\n const _updateStart = () => {\n _setStartValue();\n this.setValue([trackClickPercentage, validEnd]);\n };\n\n const _updateEnd = () => {\n _setEndValue();\n this.setValue([validStart, trackClickPercentage]);\n };\n const clickPercentageBetweenRange = isInRange(_trackClickValid, start, end);\n if (_trackClickValid < start) {\n _updateStart();\n } else if (_trackClickValid > end) {\n _updateEnd();\n } else if (clickPercentageBetweenRange) {\n const middle = (start + end) / 2;\n const trackClickPercentageIsExactiddle = _trackClickValid === middle;\n if (trackClickPercentageIsExactiddle) {\n _updateStart();\n } else {\n const setStart = _trackClickValid < middle;\n const setEnd = _trackClickValid > middle;\n if (setStart) {\n _updateStart();\n } else if (setEnd) {\n _updateEnd();\n }\n }\n }\n } else {\n this.setValue(trackClickPercentage);\n _setEndValue();\n }\n\n this.setProgress();\n }\n\n public onProgressMouseDown(evt: MouseEvent) {\n if (!this.multiple || this.disabled) {\n return;\n }\n this.progressBarEventPositionStart = this.getPercentageByEvent(evt);\n this.startValueBeforeProgressBarEvent = this.startValue;\n this.rangeBetweenElementsBeforeProgressBarEvent = this.endValue - this.startValue;\n if (this.multiple) {\n const [start, end] = this.value as [number, number];\n this.totalRangeBeforeProgressBarEvent = end - start;\n }\n document.addEventListener('mousemove', this.handleProgressBarMove);\n document.addEventListener('mouseup', this.handleProgressBarMoveEnd);\n }\n\n public onMouseDown(_: MouseEvent, thumb: 'start' | 'end'): void {\n if (this.disabled) return;\n\n this.draggingThumb = thumb;\n this.activeMouseDown = true;\n document.addEventListener('mousemove', this.onThumbMove);\n document.addEventListener('mouseup', this.onMouseUp);\n }\n\n private setRangeValues(): void {\n const _setStartAndEndValue = (startValue: number, endValue: number) => {\n this.startValue = this.getClosestValueFromMapSlider(startValue);\n this.endValue = this.getClosestValueFromMapSlider(endValue);\n };\n if (this.value === null || this.value === undefined) {\n return;\n }\n if (Array.isArray(this.value) && !this.multiple) {\n throw new Error('You must use \"multiple\" with value as array');\n }\n if (this.multiple && Array.isArray(this.value)) {\n this.startValue = this.value[0];\n this.endValue = this.value[1];\n } else if (!this.multiple) {\n this.startValue = this.value as number;\n this.endValue = this.value as number;\n }\n _setStartAndEndValue(this.startValue, this.endValue);\n if (this.multiple) {\n let [_startValue, _endValue] = this.value as [number, number];\n const difference = getDifference(_endValue, _startValue);\n const endValueIsGreatherThanMax = _endValue > this.max;\n const startValueIsLessThanMin = _startValue < this.min;\n const needUpdateValues = endValueIsGreatherThanMax || startValueIsLessThanMin;\n if (endValueIsGreatherThanMax) {\n _endValue = this.max;\n _startValue = _endValue - difference;\n } else if (startValueIsLessThanMin) {\n _startValue = this.min;\n _endValue = _startValue + difference;\n }\n if (needUpdateValues) {\n _setStartAndEndValue(_startValue, _endValue);\n this.setValue([this.startValue, this.endValue]);\n }\n } else {\n let _value = this.value as number;\n const valueGreatherThanMax = _value > this.max;\n const valueLessThanMin = _value < this.min;\n const needUpdateValue = valueGreatherThanMax || valueLessThanMin;\n if (valueGreatherThanMax) {\n _value = this.max;\n } else if (valueLessThanMin) {\n _value = this.min;\n }\n if (needUpdateValue) {\n this.setValue(_value, false);\n }\n }\n this.setProgress();\n }\n\n private onThumbMove = (event: MouseEvent) => {\n if (this.movingProgressBar || !this.draggingThumb) return;\n\n let newPosition = this.getPercentageByEvent(event);\n if (\n (this.multiple && this.draggingThumb === 'start' && newPosition > this.endValue) ||\n (this.multiple && this.draggingThumb === 'end' && newPosition < this.startValue)\n ) {\n return;\n }\n\n const positionInUserRange = this.getValueFromMapByValue(newPosition);\n\n if (this.multiple) {\n if (this.draggingThumb === 'start') {\n this.startValue = (this.needParseValues ? this.mapRangeValuesForSlider.get(positionInUserRange) : newPosition) ?? 0;\n } else if (this.draggingThumb === 'end') {\n this.endValue = (this.needParseValues ? this.mapRangeValuesForSlider.get(positionInUserRange) : newPosition) ?? 0;\n }\n\n this.setValue([this.startValue, this.endValue]);\n\n const [start, end] = this.value as [number, number];\n\n if (start === end && this.draggingThumb === 'start') {\n this.startValue = this.endValue;\n } else if (start === end && this.draggingThumb === 'end') {\n this.endValue = this.startValue;\n }\n } else {\n const currentValue = this.value as number;\n const _value = this.needParseValues ? positionInUserRange : newPosition;\n const isAtSameValue = this.needParseValues ? positionInUserRange === this.value : false;\n const hasStep = this.step !== 0;\n const newValueIsValidByStep = hasStep ? currentValue + this.step === _value || currentValue - this.step === _value : false;\n if (isAtSameValue && !newValueIsValidByStep) {\n return;\n }\n this.endValue = (this.needParseValues ? this.mapRangeValuesForSlider.get(positionInUserRange) : newPosition) ?? 0;\n this.startValue = this.endValue;\n this.setValue(this.endValue);\n }\n this.setProgress();\n };\n\n private onMouseUp = () => {\n this.draggingThumb = null;\n document.removeEventListener('mousemove', this.onThumbMove);\n document.removeEventListener('mouseup', this.onMouseUp);\n setTimeout(() => {\n this.activeMouseDown = false;\n }, 150);\n };\n\n private handleProgressBarMove = (event: MouseEvent) => {\n this.movingProgressBar = true;\n const newCenter = this.getPercentageByEvent(event);\n const startPositionBeforeEvent = this.progressBarEventPositionStart;\n const startValueBeforeEvent = this.startValueBeforeProgressBarEvent;\n const range = this.rangeBetweenElementsBeforeProgressBarEvent;\n let { newStart, newEnd } = calculateNewRange(startValueBeforeEvent, startValueBeforeEvent + range, startPositionBeforeEvent, newCenter);\n if (newStart < this.MIN_RANGE_VALUE || newEnd > this.MAX_RANGE_VALUE) {\n return;\n }\n if (this.needParseValues) {\n const startValueBeforeEventUserRange = this.getValueFromMapByValue(startValueBeforeEvent);\n const startPositionBeforeEventUserRange = this.getValueFromMapByValue(startPositionBeforeEvent);\n const centerUserRange = this.getValueFromMapByValue(newCenter);\n const valueRange = this.totalRangeBeforeProgressBarEvent;\n let { newStart, newEnd } = calculateNewRange(\n startValueBeforeEventUserRange,\n startValueBeforeEventUserRange + valueRange,\n startPositionBeforeEventUserRange,\n centerUserRange,\n );\n if (newStart < this.min || newEnd > this.max) {\n return;\n }\n this.startValue = this.mapRangeValuesForSlider.get(newStart) ?? 0;\n this.endValue = this.mapRangeValuesForSlider.get(newEnd) ?? 0;\n } else {\n this.startValue = newStart;\n this.endValue = newEnd;\n }\n this.setValue([this.startValue, this.endValue]);\n this.setProgress();\n };\n\n private handleProgressBarMoveEnd = () => {\n this.progressBarEventPositionStart = -1;\n this.startValueBeforeProgressBarEvent = -1;\n this.rangeBetweenElementsBeforeProgressBarEvent = -1;\n this.totalRangeBeforeProgressBarEvent = -1;\n document.removeEventListener('mousemove', this.handleProgressBarMove);\n document.removeEventListener('mouseup', this.handleProgressBarMoveEnd);\n setTimeout(() => {\n this.movingProgressBar = false;\n }, 150);\n };\n\n private setProgress(): void {\n if (this.multiple) {\n this.progressLeft = this.startValue;\n this.progressWidth = `calc(${this.endValue - this.startValue}% + 10px)`;\n } else {\n this.progressLeft = 0;\n this.progressWidth = `calc(${this.endValue}% + 10px)`;\n }\n }\n\n /**\n * Get the percentage of a mouse event from the track's left edge\n * @param mouseEvent mouse event\n * @returns percentage from the left edge\n */\n private getPercentageByEvent(mouseEvent: MouseEvent | PointerEvent): number {\n const trackRect = this.track.nativeElement.getBoundingClientRect();\n let newLeft = Math.round(((mouseEvent.clientX - trackRect.left) / trackRect.width) * this.MAX_RANGE_VALUE);\n newLeft = Math.max(0, Math.min(newLeft, this.MAX_RANGE_VALUE));\n return newLeft;\n }\n\n private setValue(value: number | [number, number], parse = true) {\n if (this.disabled) {\n return;\n }\n\n if (this.needParseValues && parse) {\n if (Array.isArray(value)) {\n value = value.map((x) => this.getValueFromMapByValue(x)) as [number, number];\n } else {\n value = this.getValueFromMapByValue(value);\n }\n }\n this.value = value;\n this.valueChange.emit(value);\n this.writeValue(this.value);\n this.onChange(this.value);\n this.onTouched(this.value);\n }\n\n private setUserRangeMapValues() {\n const start = this.min;\n const end = this.max;\n if (start > end) {\n throw new Error('Max value must be greater than min value');\n }\n this.mapRangeValuesForSlider.clear();\n const range = end - start;\n const decimalPlaces = 2;\n const stepCount = Math.floor(range / this.step);\n const values: number[] = [];\n for (let value = start; value <= end; value += this.step) {\n values.push(value);\n }\n if (values[values.length - 1] !== end) {\n values.push(end);\n }\n const mappedValues = values.map((value) => {\n let mapped = ((value - start) / range) * this.MAX_RANGE_VALUE;\n return parseFloat(mapped.toFixed(decimalPlaces));\n });\n mappedValues[0] = 0;\n mappedValues[mappedValues.length - 1] = this.MAX_RANGE_VALUE;\n const error = this.MAX_RANGE_VALUE - mappedValues[mappedValues.length - 1];\n const errorPerStep = error / stepCount;\n for (let i = 1; i < mappedValues.length - 1; i++) {\n mappedValues[i] += errorPerStep;\n mappedValues[i] = parseFloat(mappedValues[i].toFixed(decimalPlaces));\n }\n values.forEach((value, index) => {\n this.mapRangeValuesForSlider.set(value, mappedValues[index]);\n });\n }\n\n /**\n * Returns the user value from the given slider value by using the map of range values.\n * @example\n * If the map is 0: { 0 }, 1: { 10 }, 2: { 30 }, 3: { 40 }, 4: { 50 }\n * and the sliderValue is 37, the function returns 3\n * or the slider value is 40, the function returns 4\n * @param sliderValue the value of the slider (values only between range MIN and MAX)\n * @returns the user value from the given slider value\n */\n private getValueFromMapByValue(sliderValue: number) {\n const mapToArray = Array.from(this.mapRangeValuesForSlider).map(([value, mapped]) => ({ value, mapped }));\n const exactValue = mapToArray.find((x) => x.mapped == sliderValue);\n const closest = mapToArray.reduce((prev, curr) => (Math.abs(curr.mapped - sliderValue) < Math.abs(prev.mapped - sliderValue) ? curr : prev));\n return exactValue ? exactValue.value : closest.value;\n }\n\n /**\n * Retrieves the key from the map that is closest to the given slider value.\n * @param userValue - The value to find the closest key for. (values only between 0 - 100)\n * @returns The key that corresponds to the closest mapped value.\n */\n private getClosestValueFromMapSlider(userValue: number): number {\n const mapToArray = Array.from(this.mapRangeValuesForSlider).map(([value, mapped]) => ({ value, mapped }));\n if (userValue >= this.max) {\n return mapToArray[mapToArray.length - 1].mapped;\n } else if (userValue <= this.min) {\n return mapToArray[0].mapped;\n }\n const exactValue = mapToArray.find((x) => x.value == userValue);\n const closestValue = mapToArray.reduce((prev, curr) => (Math.abs(curr.value - userValue) < Math.abs(prev.value - userValue) ? curr : prev));\n const item = exactValue || closestValue;\n const isFirstItem = mapToArray[0] === item;\n const isLastItem = mapToArray[mapToArray.length - 1] === item;\n if (isFirstItem && userValue > this.min) {\n return getMidpoint(item.mapped, mapToArray[1].mapped);\n } else if (isLastItem && userValue < this.max) {\n return getMidpoint(item.mapped, mapToArray[mapToArray.length - 2].mapped);\n } else {\n return item.mapped;\n }\n }\n\n private handleArrowKeyLeft() {\n if (this.multiple) {\n this._incrementOrDecrementStartAndEndValue(false);\n } else {\n this._incrementOrDecrementEndValue(false);\n }\n this.setProgress();\n }\n\n private handleArrowKeyRight() {\n if (this.multiple) {\n this._incrementOrDecrementStartAndEndValue(true);\n } else {\n this._incrementOrDecrementEndValue(true);\n }\n this.setProgress();\n }\n\n private _incrementOrDecrementStartAndEndValue(increment: boolean) {\n let [start, end] = this.value as [number, number];\n const difference = getDifference(end, start);\n if (increment) {\n start += this.step;\n end += this.step;\n } else {\n start -= this.step;\n end -= this.step;\n }\n const startLessThanMin = start < this.min;\n const endGreaterThanMax = end > this.max;\n if (startLessThanMin || endGreaterThanMax) {\n if (startLessThanMin) {\n start = this.min;\n end = start + difference;\n } else if (endGreaterThanMax) {\n end = this.max;\n start = end - difference;\n }\n }\n if (start < this.min || end > this.max) {\n return;\n }\n this.setValue([start, end], false);\n if (this.needParseValues) {\n start = this.getClosestValueFromMapSlider(start);\n end = this.getClosestValueFromMapSlider(end);\n }\n this.startValue = start;\n this.endValue = end;\n }\n\n private _incrementOrDecrementEndValue(increment: boolean) {\n let value = this.value as number;\n if (increment) {\n value += this.step;\n } else {\n value -= this.step;\n }\n let _newEndValue = value;\n if (this.needParseValues) {\n _newEndValue = this.getClosestValueFromMapSlider(_newEndValue);\n }\n if (_newEndValue < this.MIN_RANGE_VALUE || _newEndValue > this.MAX_RANGE_VALUE) {\n return;\n }\n this.endValue = _newEndValue;\n this.startValue = this.endValue;\n this.setValue(_newEndValue);\n }\n\n private get needParseValues() {\n return this.max !== this.MAX_RANGE_VALUE || this.min !== this.MIN_RANGE_VALUE;\n }\n}\n\n/**\n * Calculates a new range based on the old range and the positions clicked and finalized.\n *\n * @param oldStart - The starting value of the old range.\n * @param oldEnd - The ending value of the old range.\n * @param clickedPosition - The position where the click occurred.\n * @param finalPosition - The position where the range should end.\n * @returns An object containing the new start and end values of the range.\n */\nconst calculateNewRange = (oldStart: number, oldEnd: number, clickedPosition: number, finalPosition: number) => {\n const range = oldEnd - oldStart;\n const newStart = finalPosition - (clickedPosition - oldStart);\n const newEnd = newStart + range;\n return { newStart, newEnd };\n};\n\nconst isInRange = (value: number, rangeStart: number, rangeEnd: number): boolean => {\n const [min, max] = rangeStart < rangeEnd ? [rangeStart, rangeEnd] : [rangeEnd, rangeStart];\n return value >= min && value <= max;\n};\n\nconst getMidpoint = (start: number, end: number) => {\n const midpoint = (start + end) / 2;\n return parseFloat(midpoint.toFixed(2));\n};\nconst getDifference = (end: number, start: number) => {\n return Math.abs(end - start);\n};\n","<div\n class=\"slider-container\"\n [ngClass]=\"{ 'slider-container--disabled': disabled }\"\n [tabindex]=\"tabindex\"\n (click)=\"onTrackClick($event)\"\n (focus)=\"onFocusIn()\"\n (blur)=\"onBlur()\">\n <div\n #track\n class=\"slider-track\"\n [ngClass]=\"{\n 'slider-track--hidden-thumb': hiddenThumb,\n 'slider-track--moving-multiple-thumbs': movingProgressBar\n }\">\n <div\n class=\"slider-progress\"\n (mousedown)=\"onProgressMouseDown($event)\"\n [style.left.%]=\"progressLeft\"\n [style.width]=\"progressWidth\"\n ></div>\n <div\n *ngIf=\"multiple\"\n class=\"slider-thumb\"\n [sTooltip]=\"tooltipStartText\"\n [showDelay]=\"0\"\n (mousedown)=\"onMouseDown($event, 'start')\"\n [style.left.%]=\"startValue\"\n ></div>\n <div\n [sTooltip]=\"tooltipEndText\"\n class=\"slider-thumb\"\n [showDelay]=\"0\"\n (mousedown)=\"onMouseDown($event, 'end')\"\n [style.left.%]=\"endValue\"></div>\n </div>\n <div class=\"footer\">\n <span>{{ minValueLabel || min }}</span>\n <span>{{ maxValueLabel || max }}</span>\n </div>\n</div>\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { SliderComponent } from \"./slider.component\";\nimport { TooltipModule } from \"@seniorsistemas/angular-components/tooltip\";\n\n@NgModule({\n imports: [CommonModule, TooltipModule],\n declarations: [SliderComponent],\n exports: [SliderComponent],\n})\nexport class SliderModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}