@seniorsistemas/angular-components 19.3.1 → 19.3.3

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 (260) hide show
  1. package/breadcrumb/lib/dynamic-breadcrumb/dynamic-breadcrumb.component.d.ts +1 -2
  2. package/calendar-mask/lib/calendar-mask/calendar-mask.directive.d.ts +0 -1
  3. package/chips/lib/chips/chips/chips.component.d.ts +1 -2
  4. package/code-editor/lib/code-editor/code-editor.component.d.ts +0 -2
  5. package/code-editor/lib/code-editor/infra/utils/custom-translations/custom-translations.module.d.ts +1 -3
  6. package/common/lib/svg-factory/svg-factory.directive.d.ts +1 -2
  7. package/content-generator/lib/content-generator/content-generator.component.d.ts +1 -6
  8. package/content-generator/lib/services/IAssist/iassist.service.d.ts +0 -3
  9. package/country-phone-picker/lib/country-phone-picker/country-phone-picker.component.d.ts +0 -3
  10. package/country-phone-picker/lib/country-phone-picker/country-phone-picker.service.d.ts +0 -2
  11. package/currency/lib/currency.service.d.ts +0 -2
  12. package/custom-fields/lib/custom-fields/custom-fields.component.d.ts +3 -7
  13. package/custom-fields/lib/custom-fields/custom-fields.service.d.ts +0 -2
  14. package/dynamic-form/dynamic-form/components/lookup/lookup.component.d.ts +2 -4
  15. package/dynamic-form/dynamic-form/components/lookup/types/lookup-models.d.ts +4 -0
  16. package/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.d.ts +2 -1
  17. package/dynamic-form/dynamic-form/form-field/fields/autocomplete/autocomplete-field.component.d.ts +1 -2
  18. package/dynamic-form/dynamic-form/form-field/fields/bignumber/bignumber-field.component.d.ts +1 -3
  19. package/dynamic-form/dynamic-form/form-field/fields/calendar/calendar-field.component.d.ts +1 -2
  20. package/dynamic-form/dynamic-form/form-field/fields/chips/chips-field.component.d.ts +1 -3
  21. package/dynamic-form/dynamic-form/form-field/fields/country-phone-picker/country-phone-picker-field.component.d.ts +1 -2
  22. package/dynamic-form/dynamic-form/form-field/fields/currency/currency-field.component.d.ts +1 -3
  23. package/dynamic-form/dynamic-form/form-field/fields/file-picker/file-picker-field.component.d.ts +1 -2
  24. package/dynamic-form/dynamic-form/form-field/fields/number/number-field.component.d.ts +1 -3
  25. package/dynamic-form/dynamic-form/form-field/fields/password/password-field.component.d.ts +1 -2
  26. package/dynamic-form/dynamic-form/form-field/fields/text/text-field.component.d.ts +1 -2
  27. package/dynamic-form/dynamic-form/form-field/fields/text-area/text-area-field.component.d.ts +1 -2
  28. package/dynamic-form/public-api.d.ts +1 -0
  29. package/empty-state/lib/empty-state/go-back/go-back.component.d.ts +0 -2
  30. package/esm2022/badge/lib/badge/badge.component.mjs +3 -3
  31. package/esm2022/breadcrumb/lib/dynamic-breadcrumb/dynamic-breadcrumb.component.mjs +10 -13
  32. package/esm2022/calendar-mask/lib/calendar-mask/calendar-mask.directive.mjs +7 -11
  33. package/esm2022/chips/lib/chips/chips/chips.component.mjs +5 -8
  34. package/esm2022/code-editor/lib/code-editor/code-editor.component.mjs +6 -9
  35. package/esm2022/code-editor/lib/code-editor/infra/utils/custom-translations/custom-translations.module.mjs +8 -13
  36. package/esm2022/common/lib/svg-factory/svg-factory.directive.mjs +6 -10
  37. package/esm2022/content-generator/lib/content-generator/content-generator.component.mjs +24 -30
  38. package/esm2022/content-generator/lib/services/IAssist/iassist.service.mjs +9 -12
  39. package/esm2022/country-phone-picker/lib/country-phone-picker/country-phone-picker.component.mjs +15 -23
  40. package/esm2022/country-phone-picker/lib/country-phone-picker/country-phone-picker.service.mjs +6 -9
  41. package/esm2022/currency/lib/currency.service.mjs +6 -9
  42. package/esm2022/custom-fields/lib/custom-fields/custom-fields.component.mjs +17 -25
  43. package/esm2022/custom-fields/lib/custom-fields/custom-fields.service.mjs +6 -9
  44. package/esm2022/dynamic-form/dynamic-form/components/lookup/lookup.component.mjs +26 -35
  45. package/esm2022/dynamic-form/dynamic-form/components/lookup/types/lookup-models.mjs +2 -0
  46. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.mjs +1 -1
  47. package/esm2022/dynamic-form/dynamic-form/form-field/fields/autocomplete/autocomplete-field.component.mjs +6 -10
  48. package/esm2022/dynamic-form/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs +12 -17
  49. package/esm2022/dynamic-form/dynamic-form/form-field/fields/calendar/calendar-field.component.mjs +5 -8
  50. package/esm2022/dynamic-form/dynamic-form/form-field/fields/chips/chips-field.component.mjs +12 -17
  51. package/esm2022/dynamic-form/dynamic-form/form-field/fields/country-phone-picker/country-phone-picker-field.component.mjs +5 -8
  52. package/esm2022/dynamic-form/dynamic-form/form-field/fields/currency/currency-field.component.mjs +13 -19
  53. package/esm2022/dynamic-form/dynamic-form/form-field/fields/file-picker/file-picker-field.component.mjs +6 -10
  54. package/esm2022/dynamic-form/dynamic-form/form-field/fields/number/number-field.component.mjs +14 -19
  55. package/esm2022/dynamic-form/dynamic-form/form-field/fields/password/password-field.component.mjs +5 -8
  56. package/esm2022/dynamic-form/dynamic-form/form-field/fields/text/text-field.component.mjs +5 -8
  57. package/esm2022/dynamic-form/dynamic-form/form-field/fields/text-area/text-area-field.component.mjs +5 -8
  58. package/esm2022/dynamic-form/public-api.mjs +1 -1
  59. package/esm2022/empty-state/lib/empty-state/go-back/go-back.component.mjs +8 -11
  60. package/esm2022/file-picker/lib/file-picker/file-picker.component.mjs +17 -21
  61. package/esm2022/gantt/lib/gantt/components/gantt/gantt.mjs +6 -2
  62. package/esm2022/gantt/lib/gantt/gantt.component.mjs +8 -4
  63. package/esm2022/global-search/lib/global-search/global-search.component.mjs +5 -8
  64. package/esm2022/image-cropper/lib/image-cropper/image-cropper.service.mjs +7 -12
  65. package/esm2022/infinite-scroll/lib/infinite-scroll/infinite-scroll.directive.mjs +5 -8
  66. package/esm2022/info-sign/lib/info-sign/info-sign.directive.mjs +6 -10
  67. package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-calendar/inline-edit-calendar.component.mjs +9 -12
  68. package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-number/inline-edit-number.component.mjs +14 -17
  69. package/esm2022/inline-edit/lib/inline-edit/components/inline-edit-item/inline-edit-item.component.mjs +12 -15
  70. package/esm2022/insights/lib/insights/components/insights-card/insights-card.component.mjs +15 -19
  71. package/esm2022/interactive-content/lib/interactive-content/interactive-content.directive.mjs +5 -8
  72. package/esm2022/kanban/lib/kanban/components/kanban-column/kanban-column.component.mjs +10 -13
  73. package/esm2022/kanban/lib/kanban/components/kanban-item/kanban-item.component.mjs +10 -13
  74. package/esm2022/kanban/lib/kanban/kanban.component.mjs +23 -17
  75. package/esm2022/loading-state/lib/loading-state/loading-state.directive.mjs +10 -16
  76. package/esm2022/locale/lib/locale/locale.service.mjs +8 -12
  77. package/esm2022/locale/lib/locale/pipes/localized-bignumber.pipe.mjs +6 -9
  78. package/esm2022/locale/lib/locale/pipes/localized-currency.pipe.mjs +6 -9
  79. package/esm2022/locale/lib/locale/pipes/localized-date.pipe.mjs +6 -9
  80. package/esm2022/locale/lib/locale/pipes/localized-number.pipe.mjs +6 -9
  81. package/esm2022/locale/lib/locale/pipes/localized-time.pipe.mjs +6 -9
  82. package/esm2022/localized-number-input/lib/localized-number-input/localized-number-input.directive.mjs +6 -9
  83. package/esm2022/navigation-button/lib/navigation-button/navigation-button.component.mjs +5 -8
  84. package/esm2022/numeric/lib/numeric.pipe.mjs +8 -12
  85. package/esm2022/numeric/lib/numeric.service.mjs +6 -9
  86. package/esm2022/password-strength/lib/password-strength/password-strength.component.mjs +8 -11
  87. package/esm2022/password-strength/lib/password-strength/password-strength.directive.mjs +10 -16
  88. package/esm2022/picklist/lib/picklist/picklist.component.mjs +5 -8
  89. package/esm2022/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.component.mjs +15 -19
  90. package/esm2022/progressbar/lib/progressbar/components/progressbar-determinate/progressbar-determinate.component.mjs +8 -11
  91. package/esm2022/progressbar/lib/progressbar/progressbar.module.mjs +5 -4
  92. package/esm2022/select-button/lib/select-button/select-button.component.mjs +3 -3
  93. package/esm2022/shared/lib/accessibility/paginator-accessibility.directive.mjs +8 -13
  94. package/esm2022/shared/lib/accessibility/table-checkbox-accessibility.directive.mjs +5 -8
  95. package/esm2022/slide-in-bar/lib/slide-in-bar/slide-in-bar.component.mjs +9 -12
  96. package/esm2022/speech-recognition/lib/speech-recognition/speech-recognition/speech-recognition.component.mjs +12 -16
  97. package/esm2022/speech-recognition/lib/speech-recognition/speech-recognition.service.mjs +12 -16
  98. package/esm2022/speech-recognition/lib/speech-recognition/text-to-speech.service.mjs +8 -10
  99. package/esm2022/split-button/lib/split-button/split-button.component.mjs +5 -8
  100. package/esm2022/table/lib/table/row-toggler/row-toggler.directive.mjs +7 -7
  101. package/esm2022/table/lib/table/table-column/table-columns.component.mjs +19 -28
  102. package/esm2022/table/lib/table/table-paging/table-paging.component.mjs +9 -16
  103. package/esm2022/table-header/lib/table-header/table-header-checkbox.component.mjs +11 -13
  104. package/esm2022/text-area/lib/text-area/text-area.component.mjs +5 -8
  105. package/esm2022/thumbnail/lib/thumbnail/thumbnail.component.mjs +8 -11
  106. package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu/tiered-menu.component.mjs +16 -24
  107. package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu-item/tiered-menu-item.component.mjs +8 -11
  108. package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu-nested/tiered-menu-nested.component.mjs +12 -16
  109. package/esm2022/tiered-menu/lib/tiered-menu/tiered-menu.directive.mjs +13 -25
  110. package/esm2022/toast/lib/toast/toast.service.mjs +7 -12
  111. package/esm2022/tree/lib/tree/components/tree-node-item/tree-node-item.component.mjs +10 -14
  112. package/esm2022/workspace-switch/lib/workspace-switch/workspace-switch.component.mjs +6 -10
  113. package/fesm2022/seniorsistemas-angular-components-badge.mjs +2 -2
  114. package/fesm2022/seniorsistemas-angular-components-badge.mjs.map +1 -1
  115. package/fesm2022/seniorsistemas-angular-components-breadcrumb.mjs +10 -12
  116. package/fesm2022/seniorsistemas-angular-components-breadcrumb.mjs.map +1 -1
  117. package/fesm2022/seniorsistemas-angular-components-calendar-mask.mjs +6 -10
  118. package/fesm2022/seniorsistemas-angular-components-calendar-mask.mjs.map +1 -1
  119. package/fesm2022/seniorsistemas-angular-components-chips.mjs +4 -7
  120. package/fesm2022/seniorsistemas-angular-components-chips.mjs.map +1 -1
  121. package/fesm2022/seniorsistemas-angular-components-code-editor.mjs +10 -18
  122. package/fesm2022/seniorsistemas-angular-components-code-editor.mjs.map +1 -1
  123. package/fesm2022/seniorsistemas-angular-components-common.mjs +5 -9
  124. package/fesm2022/seniorsistemas-angular-components-common.mjs.map +1 -1
  125. package/fesm2022/seniorsistemas-angular-components-content-generator.mjs +29 -40
  126. package/fesm2022/seniorsistemas-angular-components-content-generator.mjs.map +1 -1
  127. package/fesm2022/seniorsistemas-angular-components-country-phone-picker.mjs +16 -28
  128. package/fesm2022/seniorsistemas-angular-components-country-phone-picker.mjs.map +1 -1
  129. package/fesm2022/seniorsistemas-angular-components-currency.mjs +5 -8
  130. package/fesm2022/seniorsistemas-angular-components-currency.mjs.map +1 -1
  131. package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs +45 -59
  132. package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs.map +1 -1
  133. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs +111 -163
  134. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs.map +1 -1
  135. package/fesm2022/seniorsistemas-angular-components-empty-state.mjs +4 -8
  136. package/fesm2022/seniorsistemas-angular-components-empty-state.mjs.map +1 -1
  137. package/fesm2022/seniorsistemas-angular-components-file-picker.mjs +17 -22
  138. package/fesm2022/seniorsistemas-angular-components-file-picker.mjs.map +1 -1
  139. package/fesm2022/seniorsistemas-angular-components-gantt.mjs +12 -4
  140. package/fesm2022/seniorsistemas-angular-components-gantt.mjs.map +1 -1
  141. package/fesm2022/seniorsistemas-angular-components-global-search.mjs +4 -7
  142. package/fesm2022/seniorsistemas-angular-components-global-search.mjs.map +1 -1
  143. package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs +6 -11
  144. package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs.map +1 -1
  145. package/fesm2022/seniorsistemas-angular-components-infinite-scroll.mjs +4 -7
  146. package/fesm2022/seniorsistemas-angular-components-infinite-scroll.mjs.map +1 -1
  147. package/fesm2022/seniorsistemas-angular-components-info-sign.mjs +5 -9
  148. package/fesm2022/seniorsistemas-angular-components-info-sign.mjs.map +1 -1
  149. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs +29 -38
  150. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs.map +1 -1
  151. package/fesm2022/seniorsistemas-angular-components-insights.mjs +17 -22
  152. package/fesm2022/seniorsistemas-angular-components-insights.mjs.map +1 -1
  153. package/fesm2022/seniorsistemas-angular-components-interactive-content.mjs +4 -7
  154. package/fesm2022/seniorsistemas-angular-components-interactive-content.mjs.map +1 -1
  155. package/fesm2022/seniorsistemas-angular-components-kanban.mjs +30 -30
  156. package/fesm2022/seniorsistemas-angular-components-kanban.mjs.map +1 -1
  157. package/fesm2022/seniorsistemas-angular-components-loading-state.mjs +7 -15
  158. package/fesm2022/seniorsistemas-angular-components-loading-state.mjs.map +1 -1
  159. package/fesm2022/seniorsistemas-angular-components-locale.mjs +22 -41
  160. package/fesm2022/seniorsistemas-angular-components-locale.mjs.map +1 -1
  161. package/fesm2022/seniorsistemas-angular-components-localized-number-input.mjs +5 -8
  162. package/fesm2022/seniorsistemas-angular-components-localized-number-input.mjs.map +1 -1
  163. package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs +4 -7
  164. package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs.map +1 -1
  165. package/fesm2022/seniorsistemas-angular-components-numeric.mjs +9 -16
  166. package/fesm2022/seniorsistemas-angular-components-numeric.mjs.map +1 -1
  167. package/fesm2022/seniorsistemas-angular-components-password-strength.mjs +13 -24
  168. package/fesm2022/seniorsistemas-angular-components-password-strength.mjs.map +1 -1
  169. package/fesm2022/seniorsistemas-angular-components-picklist.mjs +4 -7
  170. package/fesm2022/seniorsistemas-angular-components-picklist.mjs.map +1 -1
  171. package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs +14 -21
  172. package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs.map +1 -1
  173. package/fesm2022/seniorsistemas-angular-components-progressbar.mjs +11 -14
  174. package/fesm2022/seniorsistemas-angular-components-progressbar.mjs.map +1 -1
  175. package/fesm2022/seniorsistemas-angular-components-select-button.mjs +2 -2
  176. package/fesm2022/seniorsistemas-angular-components-select-button.mjs.map +1 -1
  177. package/fesm2022/seniorsistemas-angular-components-shared.mjs +10 -18
  178. package/fesm2022/seniorsistemas-angular-components-shared.mjs.map +1 -1
  179. package/fesm2022/seniorsistemas-angular-components-slide-in-bar.mjs +7 -10
  180. package/fesm2022/seniorsistemas-angular-components-slide-in-bar.mjs.map +1 -1
  181. package/fesm2022/seniorsistemas-angular-components-speech-recognition.mjs +23 -34
  182. package/fesm2022/seniorsistemas-angular-components-speech-recognition.mjs.map +1 -1
  183. package/fesm2022/seniorsistemas-angular-components-split-button.mjs +4 -7
  184. package/fesm2022/seniorsistemas-angular-components-split-button.mjs.map +1 -1
  185. package/fesm2022/seniorsistemas-angular-components-table-header.mjs +10 -12
  186. package/fesm2022/seniorsistemas-angular-components-table-header.mjs.map +1 -1
  187. package/fesm2022/seniorsistemas-angular-components-table.mjs +29 -46
  188. package/fesm2022/seniorsistemas-angular-components-table.mjs.map +1 -1
  189. package/fesm2022/seniorsistemas-angular-components-text-area.mjs +4 -7
  190. package/fesm2022/seniorsistemas-angular-components-text-area.mjs.map +1 -1
  191. package/fesm2022/seniorsistemas-angular-components-thumbnail.mjs +6 -9
  192. package/fesm2022/seniorsistemas-angular-components-thumbnail.mjs.map +1 -1
  193. package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs +30 -55
  194. package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs.map +1 -1
  195. package/fesm2022/seniorsistemas-angular-components-toast.mjs +6 -11
  196. package/fesm2022/seniorsistemas-angular-components-toast.mjs.map +1 -1
  197. package/fesm2022/seniorsistemas-angular-components-tree.mjs +9 -14
  198. package/fesm2022/seniorsistemas-angular-components-tree.mjs.map +1 -1
  199. package/fesm2022/seniorsistemas-angular-components-workspace-switch.mjs +5 -9
  200. package/fesm2022/seniorsistemas-angular-components-workspace-switch.mjs.map +1 -1
  201. package/file-picker/lib/file-picker/file-picker.component.d.ts +0 -4
  202. package/file-upload/README.md +9 -37
  203. package/gantt/lib/gantt/gantt.component.d.ts +1 -0
  204. package/global-search/lib/global-search/global-search.component.d.ts +1 -2
  205. package/ia-insight/README.md +17 -0
  206. package/image-cropper/lib/image-cropper/image-cropper.service.d.ts +1 -2
  207. package/infinite-scroll/lib/infinite-scroll/infinite-scroll.directive.d.ts +1 -2
  208. package/info-sign/lib/info-sign/info-sign.directive.d.ts +1 -2
  209. package/inline-edit/lib/inline-edit/components/fields/inline-edit-calendar/inline-edit-calendar.component.d.ts +1 -2
  210. package/inline-edit/lib/inline-edit/components/fields/inline-edit-number/inline-edit-number.component.d.ts +0 -2
  211. package/inline-edit/lib/inline-edit/components/inline-edit-item/inline-edit-item.component.d.ts +0 -2
  212. package/insights/lib/insights/components/insights-card/insights-card.component.d.ts +0 -4
  213. package/interactive-content/lib/interactive-content/interactive-content.directive.d.ts +1 -2
  214. package/kanban/lib/kanban/components/kanban-column/kanban-column.component.d.ts +0 -2
  215. package/kanban/lib/kanban/components/kanban-item/kanban-item.component.d.ts +0 -2
  216. package/kanban/lib/kanban/kanban.component.d.ts +2 -2
  217. package/loading-state/lib/loading-state/loading-state.directive.d.ts +1 -2
  218. package/locale/lib/locale/locale.service.d.ts +0 -3
  219. package/locale/lib/locale/pipes/localized-bignumber.pipe.d.ts +0 -2
  220. package/locale/lib/locale/pipes/localized-currency.pipe.d.ts +0 -2
  221. package/locale/lib/locale/pipes/localized-date.pipe.d.ts +0 -2
  222. package/locale/lib/locale/pipes/localized-number.pipe.d.ts +0 -2
  223. package/locale/lib/locale/pipes/localized-time.pipe.d.ts +0 -2
  224. package/localized-number-input/lib/localized-number-input/localized-number-input.directive.d.ts +0 -2
  225. package/navigation-button/lib/navigation-button/navigation-button.component.d.ts +1 -2
  226. package/numeric/lib/numeric.pipe.d.ts +0 -3
  227. package/numeric/lib/numeric.service.d.ts +0 -2
  228. package/package.json +1 -1
  229. package/password-strength/lib/password-strength/password-strength.component.d.ts +0 -2
  230. package/password-strength/lib/password-strength/password-strength.directive.d.ts +1 -2
  231. package/picklist/lib/picklist/picklist.component.d.ts +1 -2
  232. package/product-header/README.md +17 -0
  233. package/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.component.d.ts +0 -4
  234. package/progressbar/lib/progressbar/components/progressbar-determinate/progressbar-determinate.component.d.ts +0 -2
  235. package/progressbar/lib/progressbar/progressbar.module.d.ts +2 -1
  236. package/shared/lib/accessibility/paginator-accessibility.directive.d.ts +1 -3
  237. package/shared/lib/accessibility/table-checkbox-accessibility.directive.d.ts +1 -2
  238. package/slide-in-bar/lib/slide-in-bar/slide-in-bar.component.d.ts +0 -2
  239. package/speech-recognition/lib/speech-recognition/speech-recognition/speech-recognition.component.d.ts +0 -4
  240. package/speech-recognition/lib/speech-recognition/speech-recognition.service.d.ts +1 -5
  241. package/speech-recognition/lib/speech-recognition/text-to-speech.service.d.ts +1 -3
  242. package/split-button/lib/split-button/split-button.component.d.ts +1 -2
  243. package/table/lib/table/row-toggler/row-toggler.directive.d.ts +1 -1
  244. package/table/lib/table/table-column/table-columns.component.d.ts +2 -6
  245. package/table/lib/table/table-paging/table-paging.component.d.ts +0 -3
  246. package/table-header/lib/table-header/table-header-checkbox.component.d.ts +1 -1
  247. package/text-area/lib/text-area/text-area.component.d.ts +1 -2
  248. package/text-area-ia/README.md +17 -0
  249. package/thumbnail/lib/thumbnail/thumbnail.component.d.ts +0 -2
  250. package/tiered-menu/lib/tiered-menu/components/tiered-menu/tiered-menu.component.d.ts +1 -3
  251. package/tiered-menu/lib/tiered-menu/components/tiered-menu-item/tiered-menu-item.component.d.ts +0 -2
  252. package/tiered-menu/lib/tiered-menu/components/tiered-menu-nested/tiered-menu-nested.component.d.ts +0 -2
  253. package/tiered-menu/lib/tiered-menu/tiered-menu.directive.d.ts +1 -5
  254. package/toast/lib/toast/toast.service.d.ts +0 -2
  255. package/tree/lib/tree/components/tree-node-item/tree-node-item.component.d.ts +1 -3
  256. package/workspace-switch/lib/workspace-switch/workspace-switch.component.d.ts +1 -2
  257. package/confirm-dialog/README.md +0 -226
  258. package/numeric-mask/README.md +0 -395
  259. package/pin-code-field/README.md +0 -366
  260. package/spotlight/README.md +0 -311
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, ViewContainerRef, Directive, Input, Injectable, input, Component, computed, ViewEncapsulation, viewChild, EventEmitter, forwardRef, Output, ViewChild, DestroyRef, HostListener, NgModule } from '@angular/core';
3
- import * as i1$1 from '@angular/forms';
2
+ import { inject, ViewContainerRef, Directive, Input, Injectable, input, Component, computed, ViewEncapsulation, ChangeDetectorRef, viewChild, EventEmitter, forwardRef, Output, ViewChild, ElementRef, DestroyRef, HostListener, NgModule } from '@angular/core';
3
+ import * as i2 from '@angular/forms';
4
4
  import { ReactiveFormsModule, FormControl, FormGroup, NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
5
5
  import { NgClass, AsyncPipe, NgIf, NgSwitch, NgTemplateOutlet, NgStyle, CommonModule } from '@angular/common';
6
6
  import { ButtonComponent } from '@seniorsistemas/angular-components/button';
@@ -9,83 +9,81 @@ import { ControlErrorsModule } from '@seniorsistemas/angular-components/control-
9
9
  import { isNullOrUndefined } from '@seniorsistemas/angular-components/utils';
10
10
  import { SpotlightTourService } from '@seniorsistemas/angular-components/spotlight';
11
11
  import { takeUntil, Subject, delay } from 'rxjs';
12
- import * as i1$2 from '@seniorsistemas/angular-components/fieldset';
12
+ import * as i1$1 from '@seniorsistemas/angular-components/fieldset';
13
13
  import { FieldsetModule } from '@seniorsistemas/angular-components/fieldset';
14
14
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
15
- import * as i3$1 from '@seniorsistemas/angular-components/tooltip';
15
+ import * as i3$2 from '@seniorsistemas/angular-components/tooltip';
16
16
  import { TooltipDirective, TooltipModule } from '@seniorsistemas/angular-components/tooltip';
17
17
  import { __decorate } from 'tslib';
18
18
  import { trigger, state, style, transition, group, query, animateChild, animate } from '@angular/animations';
19
- import * as i2 from '@ngx-translate/core';
20
- import { TranslateModule, TranslateService } from '@ngx-translate/core';
19
+ import * as i3 from '@ngx-translate/core';
20
+ import { TranslateService, TranslateModule } from '@ngx-translate/core';
21
21
  import { AutoCompleteMultipleKeyboardFixDirective } from '@seniorsistemas/angular-components/autocomplete';
22
- import * as i10 from '@seniorsistemas/angular-components/badge';
22
+ import * as i9 from '@seniorsistemas/angular-components/badge';
23
23
  import { BadgeModule } from '@seniorsistemas/angular-components/badge';
24
24
  import { DialogComponent } from '@seniorsistemas/angular-components/dialog';
25
- import * as i6 from '@seniorsistemas/angular-components/empty-state';
25
+ import * as i5 from '@seniorsistemas/angular-components/empty-state';
26
26
  import { EmptyStateModule } from '@seniorsistemas/angular-components/empty-state';
27
- import * as i8 from '@seniorsistemas/angular-components/loading-state';
27
+ import * as i7 from '@seniorsistemas/angular-components/loading-state';
28
28
  import { LoadingStateIndicators, LoadingStateModule } from '@seniorsistemas/angular-components/loading-state';
29
- import * as i1$4 from '@seniorsistemas/angular-components/locale';
30
- import { CalendarLocaleOptions, LocaleModule, NumberLocaleOptions } from '@seniorsistemas/angular-components/locale';
31
- import * as i11 from '@seniorsistemas/angular-components/mask';
29
+ import * as i8 from '@seniorsistemas/angular-components/locale';
30
+ import { CalendarLocaleOptions, LocaleModule, LocaleService, NumberLocaleOptions } from '@seniorsistemas/angular-components/locale';
31
+ import * as i10 from '@seniorsistemas/angular-components/mask';
32
32
  import { MaskFormatterModule } from '@seniorsistemas/angular-components/mask';
33
33
  import { CheckDisabled } from '@seniorsistemas/angular-components/shared';
34
- import * as i12 from '@seniorsistemas/angular-components/table-header';
34
+ import * as i11 from '@seniorsistemas/angular-components/table-header';
35
35
  import { TableHeaderCheckboxModule } from '@seniorsistemas/angular-components/table-header';
36
- import * as i13 from '@seniorsistemas/angular-components/template';
36
+ import * as i12 from '@seniorsistemas/angular-components/template';
37
37
  import { TemplateModule } from '@seniorsistemas/angular-components/template';
38
- import * as i1$3 from 'angular2-hotkeys';
39
- import { Hotkey } from 'angular2-hotkeys';
38
+ import { HotkeysService, Hotkey } from 'angular2-hotkeys';
40
39
  import BigNumber from 'bignumber.js';
41
- import * as i3 from 'primeng/autocomplete';
40
+ import * as i1$2 from 'primeng/autocomplete';
42
41
  import { AutoComplete, AutoCompleteModule } from 'primeng/autocomplete';
43
- import * as i7 from 'primeng/table';
42
+ import * as i6 from 'primeng/table';
44
43
  import { Table, TableModule } from 'primeng/table';
45
44
  import { takeUntil as takeUntil$1, first } from 'rxjs/operators';
46
- import * as i4 from 'primeng/api';
47
- import * as i1$5 from '@seniorsistemas/angular-components/info-sign';
45
+ import * as i2$1 from 'primeng/api';
46
+ import * as i1$3 from '@seniorsistemas/angular-components/info-sign';
48
47
  import { InfoSignModule } from '@seniorsistemas/angular-components/info-sign';
49
- import * as i2$1 from 'primeng/inputmask';
48
+ import * as i1$4 from 'primeng/inputmask';
50
49
  import { InputMaskModule, InputMask } from 'primeng/inputmask';
51
- import * as i4$1 from '@seniorsistemas/angular-components/bignumber-input';
50
+ import * as i3$1 from '@seniorsistemas/angular-components/bignumber-input';
52
51
  import { BignumberInputModule } from '@seniorsistemas/angular-components/bignumber-input';
53
- import * as i5 from 'primeng/inputtext';
52
+ import * as i4 from 'primeng/inputtext';
54
53
  import { InputTextModule, InputText } from 'primeng/inputtext';
55
54
  import { RadioButtonComponent } from '@seniorsistemas/angular-components/radio-button';
56
- import * as i1$6 from '@seniorsistemas/angular-components/switch';
55
+ import * as i1$5 from '@seniorsistemas/angular-components/switch';
57
56
  import { SwitchModule } from '@seniorsistemas/angular-components/switch';
58
57
  import { PrimeNG } from 'primeng/config';
59
58
  import * as i2$2 from 'primeng/datepicker';
60
59
  import { DatePickerModule } from 'primeng/datepicker';
61
60
  import * as i2$3 from '@seniorsistemas/angular-components/checkbox-list';
62
61
  import { CheckboxListModule } from '@seniorsistemas/angular-components/checkbox-list';
63
- import * as i2$4 from '@seniorsistemas/angular-components/chips';
62
+ import { Clipboard } from '@angular/cdk/clipboard';
63
+ import * as i1$6 from '@seniorsistemas/angular-components/chips';
64
64
  import { ChipsModule } from '@seniorsistemas/angular-components/chips';
65
- import * as i1$7 from '@angular/cdk/clipboard';
66
- import * as i1$8 from '@seniorsistemas/angular-components/content-generator';
65
+ import * as i1$7 from '@seniorsistemas/angular-components/content-generator';
67
66
  import { ContentGeneratorModule } from '@seniorsistemas/angular-components/content-generator';
68
- import * as i1$9 from '@seniorsistemas/angular-components/country-phone-picker';
67
+ import * as i1$8 from '@seniorsistemas/angular-components/country-phone-picker';
69
68
  import { CountryPhonePickerModule } from '@seniorsistemas/angular-components/country-phone-picker';
70
- import * as i1$a from '@seniorsistemas/angular-components/currency';
71
- import { currencies } from '@seniorsistemas/angular-components/currency';
72
- import * as i5$1 from '@seniorsistemas/angular-components/number-input';
69
+ import { CurrencyService, currencies } from '@seniorsistemas/angular-components/currency';
70
+ import * as i3$3 from '@seniorsistemas/angular-components/number-input';
73
71
  import { NumberAlignmentOption, NumberInputModule } from '@seniorsistemas/angular-components/number-input';
74
- import * as i1$b from '@seniorsistemas/angular-components/file-picker';
72
+ import * as i1$9 from '@seniorsistemas/angular-components/file-picker';
75
73
  import { FilePickerModule } from '@seniorsistemas/angular-components/file-picker';
76
- import * as i4$2 from '@seniorsistemas/angular-components/localized-number-input';
74
+ import * as i3$4 from '@seniorsistemas/angular-components/localized-number-input';
77
75
  import { LocalizedNumberInputModule } from '@seniorsistemas/angular-components/localized-number-input';
78
- import * as i2$5 from '@seniorsistemas/angular-components/password-strength';
76
+ import * as i2$4 from '@seniorsistemas/angular-components/password-strength';
79
77
  import { PasswordStrengthModule } from '@seniorsistemas/angular-components/password-strength';
80
- import * as i1$c from '@seniorsistemas/angular-components/profile-picture-picker';
78
+ import * as i1$a from '@seniorsistemas/angular-components/profile-picture-picker';
81
79
  import { ProfilePicturePickerModule } from '@seniorsistemas/angular-components/profile-picture-picker';
82
80
  import { SelectComponent } from '@seniorsistemas/angular-components/select';
83
- import * as i1$d from '@seniorsistemas/angular-components/slider';
81
+ import * as i1$b from '@seniorsistemas/angular-components/slider';
84
82
  import { SliderModule } from '@seniorsistemas/angular-components/slider';
85
83
  import { StarRatingComponent } from '@seniorsistemas/angular-components/star-rating';
86
- import * as i1$e from '@seniorsistemas/angular-components/text-area';
84
+ import * as i1$c from '@seniorsistemas/angular-components/text-area';
87
85
  import { TextAreaModule } from '@seniorsistemas/angular-components/text-area';
88
- import * as i4$3 from 'primeng/keyfilter';
86
+ import * as i4$1 from 'primeng/keyfilter';
89
87
  import { KeyFilterModule } from 'primeng/keyfilter';
90
88
 
91
89
  const STRUCTURE_TYPES_LIST = ['fieldset', 'row', 'section'];
@@ -365,7 +363,7 @@ class RowComponent {
365
363
  return '';
366
364
  }
367
365
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
368
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: RowComponent, isStandalone: true, selector: "s-row", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: true, transformFunction: null }, errorMessages: { classPropertyName: "errorMessages", publicName: "errorMessages", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div\n class=\"w-full\"\n [formGroup]=\"group()\"\n>\n @let rowConfig = config();\n @let rowIsVisible = formUtils.getFieldProperty(rowConfig.visible, true);\n @if (rowIsVisible) {\n <div class=\"grid w-screen max-w-full grid-cols-12 gap-4\">\n @for (field of config().fields; let i = $index; track i) {\n @let fieldName = getName(field);\n @if (fieldIsExpandedDynamicType(field)) {\n @let fieldVisible = formUtils.getFieldProperty(field.visible, true);\n @if (fieldVisible) {\n <div\n class=\"p-1\"\n [ngClass]=\"fieldGridClass(field)\"\n >\n <ng-container *sDynamicForm=\"{ id: id(), config: field, group: group() }\"></ng-container>\n\n @if (fieldName) {\n <s-control-errors\n [form]=\"group\"\n [control]=\"group().controls[fieldName]\"\n [errorMessages]=\"getErrorMessages(field.errorMessages)\"\n ></s-control-errors>\n }\n\n @if (field.footer) {\n @if (field.footer.help) {\n @let footerHelpVisible =\n field.footer.help.visible?.({\n abstractControl: group().controls[fieldName],\n formField: field,\n });\n @if (fieldName && field.footer.help.visible ? footerHelpVisible : true) {\n <span style=\"color: #888b99\">\n {{ field.footer.help.text }}\n </span>\n }\n }\n }\n\n @if (field.footer) {\n @let footerLinkVisible =\n field.footer.link?.visible?.({\n abstractControl: group().controls[fieldName],\n formField: field,\n });\n @if (fieldName && field.footer.link?.visible ? footerLinkVisible : true) {\n <div style=\"margin-left: -17px\">\n <s-button\n [label]=\"field.footer.link?.label\"\n priority=\"link\"\n (clicked)=\"\n field.footer.link?.onClick({\n abstractControl: group().controls[fieldName],\n formField: field,\n })\n \"\n [auxiliary]=\"true\"\n ></s-button>\n </div>\n }\n }\n @if (field.bottomTemplate) {\n <ng-template [ngTemplateOutlet]=\"field.bottomTemplate\"></ng-template>\n }\n </div>\n }\n } @else {\n @let gridClass = fieldGridClass(field);\n <div [ngClass]=\"gridClass\">\n <ng-container *sDynamicForm=\"{ id: id(), config: field, group: group() }\"></ng-container>\n </div>\n }\n }\n </div>\n }\n</div>\n\n", dependencies: [{ kind: "ngmodule", type: ControlErrorsModule }, { kind: "component", type: i1.ControlErrorsComponent, selector: "s-control-errors", inputs: ["id", "control", "errorMessages", "form"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "directive", type: DynamicFormDirective, selector: "[sDynamicForm]", inputs: ["sDynamicForm"] }] });
366
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: RowComponent, isStandalone: true, selector: "s-row", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: true, transformFunction: null }, errorMessages: { classPropertyName: "errorMessages", publicName: "errorMessages", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div\n class=\"w-full\"\n [formGroup]=\"group()\"\n>\n @let rowConfig = config();\n @let rowIsVisible = formUtils.getFieldProperty(rowConfig.visible, true);\n @if (rowIsVisible) {\n <div class=\"grid w-screen max-w-full grid-cols-12 gap-4\">\n @for (field of config().fields; let i = $index; track i) {\n @let fieldName = getName(field);\n @if (fieldIsExpandedDynamicType(field)) {\n @let fieldVisible = formUtils.getFieldProperty(field.visible, true);\n @if (fieldVisible) {\n <div\n class=\"p-1\"\n [ngClass]=\"fieldGridClass(field)\"\n >\n <ng-container *sDynamicForm=\"{ id: id(), config: field, group: group() }\"></ng-container>\n\n @if (fieldName) {\n <s-control-errors\n [form]=\"group\"\n [control]=\"group().controls[fieldName]\"\n [errorMessages]=\"getErrorMessages(field.errorMessages)\"\n ></s-control-errors>\n }\n\n @if (field.footer) {\n @if (field.footer.help) {\n @let footerHelpVisible =\n field.footer.help.visible?.({\n abstractControl: group().controls[fieldName],\n formField: field,\n });\n @if (fieldName && field.footer.help.visible ? footerHelpVisible : true) {\n <span style=\"color: #888b99\">\n {{ field.footer.help.text }}\n </span>\n }\n }\n }\n\n @if (field.footer) {\n @let footerLinkVisible =\n field.footer.link?.visible?.({\n abstractControl: group().controls[fieldName],\n formField: field,\n });\n @if (fieldName && field.footer.link?.visible ? footerLinkVisible : true) {\n <div style=\"margin-left: -17px\">\n <s-button\n [label]=\"field.footer.link?.label\"\n priority=\"link\"\n (clicked)=\"\n field.footer.link?.onClick({\n abstractControl: group().controls[fieldName],\n formField: field,\n })\n \"\n [auxiliary]=\"true\"\n ></s-button>\n </div>\n }\n }\n @if (field.bottomTemplate) {\n <ng-template [ngTemplateOutlet]=\"field.bottomTemplate\"></ng-template>\n }\n </div>\n }\n } @else {\n @let gridClass = fieldGridClass(field);\n <div [ngClass]=\"gridClass\">\n <ng-container *sDynamicForm=\"{ id: id(), config: field, group: group() }\"></ng-container>\n </div>\n }\n }\n </div>\n }\n</div>\n\n", dependencies: [{ kind: "ngmodule", type: ControlErrorsModule }, { kind: "component", type: i1.ControlErrorsComponent, selector: "s-control-errors", inputs: ["id", "control", "errorMessages", "form"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "directive", type: DynamicFormDirective, selector: "[sDynamicForm]", inputs: ["sDynamicForm"] }] });
369
367
  }
370
368
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RowComponent, decorators: [{
371
369
  type: Component,
@@ -378,7 +376,7 @@ class FieldsetComponent {
378
376
  group = input.required();
379
377
  errorMessages = input();
380
378
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FieldsetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
381
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FieldsetComponent, isStandalone: true, selector: "ng-component", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: true, transformFunction: null }, errorMessages: { classPropertyName: "errorMessages", publicName: "errorMessages", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@let _config = config();\n<s-fieldset\n [toggleable]=\"true\"\n (onBeforeToggle)=\"_config.beforeToggle ? _config.beforeToggle($event) : null\"\n (onAfterToggle)=\"_config.afterToggle ? _config.afterToggle($event) : null\"\n [legend]=\"_config.header ? _config.header : ''\"\n>\n @for (conf of _config.configs; let i = $index; track i) {\n <ng-container\n *sDynamicForm=\"{ id: id(), config: conf, group: group(), errorMessages: errorMessages() }\"\n ></ng-container>\n }\n</s-fieldset>\n\n", dependencies: [{ kind: "directive", type: DynamicFormDirective, selector: "[sDynamicForm]", inputs: ["sDynamicForm"] }, { kind: "ngmodule", type: FieldsetModule }, { kind: "component", type: i1$2.FieldsetComponent, selector: "s-fieldset", inputs: ["legend", "toggleable", "icon", "destroyOnHide"], outputs: ["beforeToggle", "afterToggle"] }] });
379
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FieldsetComponent, isStandalone: true, selector: "ng-component", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: true, transformFunction: null }, errorMessages: { classPropertyName: "errorMessages", publicName: "errorMessages", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@let _config = config();\n<s-fieldset\n [toggleable]=\"true\"\n (onBeforeToggle)=\"_config.beforeToggle ? _config.beforeToggle($event) : null\"\n (onAfterToggle)=\"_config.afterToggle ? _config.afterToggle($event) : null\"\n [legend]=\"_config.header ? _config.header : ''\"\n>\n @for (conf of _config.configs; let i = $index; track i) {\n <ng-container\n *sDynamicForm=\"{ id: id(), config: conf, group: group(), errorMessages: errorMessages() }\"\n ></ng-container>\n }\n</s-fieldset>\n\n", dependencies: [{ kind: "directive", type: DynamicFormDirective, selector: "[sDynamicForm]", inputs: ["sDynamicForm"] }, { kind: "ngmodule", type: FieldsetModule }, { kind: "component", type: i1$1.FieldsetComponent, selector: "s-fieldset", inputs: ["legend", "toggleable", "icon", "destroyOnHide"], outputs: ["beforeToggle", "afterToggle"] }] });
382
380
  }
383
381
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FieldsetComponent, decorators: [{
384
382
  type: Component,
@@ -471,9 +469,9 @@ const dynamicTypeToDynamicStructure = (dynamicTypes) => {
471
469
  };
472
470
 
473
471
  class LookupComponent {
474
- hotkeysService;
475
- translateService;
476
- changeDetectorRef;
472
+ hotkeysService = inject(HotkeysService);
473
+ translateService = inject(TranslateService);
474
+ changeDetectorRef = inject(ChangeDetectorRef);
477
475
  MAP_FORM_DIALOG_CONTROLS = new Map();
478
476
  lookupDialogContainer = viewChild('dialogContainer');
479
477
  rowType = 'Row';
@@ -534,11 +532,6 @@ class LookupComponent {
534
532
  onTouched;
535
533
  originalFormValues = {};
536
534
  ngUnsubscribe = new Subject();
537
- constructor(hotkeysService, translateService, changeDetectorRef) {
538
- this.hotkeysService = hotkeysService;
539
- this.translateService = translateService;
540
- this.changeDetectorRef = changeDetectorRef;
541
- }
542
535
  ngOnInit() {
543
536
  if (!this.searchGridFields.length) {
544
537
  this.searchGridFields = this.searchFields.map((item) => {
@@ -561,8 +554,8 @@ class LookupComponent {
561
554
  }));
562
555
  this.searchGridFields = this.searchGridFields.map((gridField) => {
563
556
  const gridType = gridField.type;
564
- if (gridField.label) {
565
- gridField['width'] = this.getColWidth(gridField.label);
557
+ if (gridField.label && !gridField.width) {
558
+ gridField.width = this.getColWidth(gridField.label);
566
559
  }
567
560
  if (gridType === 'date' || gridType === 'time') {
568
561
  const calendarOptions = new CalendarLocaleOptions({ ...gridField.calendarLocaleOptions });
@@ -809,9 +802,6 @@ class LookupComponent {
809
802
  else
810
803
  return false;
811
804
  }
812
- getFieldWidth(col) {
813
- return col.width;
814
- }
815
805
  getBooleanLabel(obj, path, optionsLabel) {
816
806
  if (!optionsLabel) {
817
807
  return;
@@ -948,14 +938,14 @@ class LookupComponent {
948
938
  this.onChange?.(newValue);
949
939
  });
950
940
  }
951
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LookupComponent, deps: [{ token: i1$3.HotkeysService }, { token: i2.TranslateService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
941
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LookupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
952
942
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: LookupComponent, isStandalone: true, selector: "s-lookup", inputs: { formControlName: { classPropertyName: "formControlName", publicName: "formControlName", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: false, isRequired: false, transformFunction: null }, autocompleteForceSelection: { classPropertyName: "autocompleteForceSelection", publicName: "autocompleteForceSelection", isSignal: false, isRequired: false, transformFunction: null }, maxlength: { classPropertyName: "maxlength", publicName: "maxlength", isSignal: false, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: false, isRequired: false, transformFunction: null }, dataKey: { classPropertyName: "dataKey", publicName: "dataKey", isSignal: false, isRequired: true, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, showSearch: { classPropertyName: "showSearch", publicName: "showSearch", isSignal: false, isRequired: false, transformFunction: null }, lookupSuggestions: { classPropertyName: "lookupSuggestions", publicName: "lookupSuggestions", isSignal: false, isRequired: false, transformFunction: null }, lookupDisplayField: { classPropertyName: "lookupDisplayField", publicName: "lookupDisplayField", isSignal: false, isRequired: false, transformFunction: null }, lookupDisplayFieldTooltip: { classPropertyName: "lookupDisplayFieldTooltip", publicName: "lookupDisplayFieldTooltip", isSignal: false, isRequired: false, transformFunction: null }, lookupEmptyMessage: { classPropertyName: "lookupEmptyMessage", publicName: "lookupEmptyMessage", isSignal: false, isRequired: false, transformFunction: null }, lookupAppendTo: { classPropertyName: "lookupAppendTo", publicName: "lookupAppendTo", isSignal: false, isRequired: false, transformFunction: (value) => value ?? 'body' }, searchEmptyDescription: { classPropertyName: "searchEmptyDescription", publicName: "searchEmptyDescription", isSignal: false, isRequired: false, transformFunction: null }, searchGridData: { classPropertyName: "searchGridData", publicName: "searchGridData", isSignal: false, isRequired: false, transformFunction: null }, searchTotalRecords: { classPropertyName: "searchTotalRecords", publicName: "searchTotalRecords", isSignal: false, isRequired: false, transformFunction: null }, searchFields: { classPropertyName: "searchFields", publicName: "searchFields", isSignal: false, isRequired: false, transformFunction: null }, searchGridFields: { classPropertyName: "searchGridFields", publicName: "searchGridFields", isSignal: false, isRequired: false, transformFunction: null }, multiSortMeta: { classPropertyName: "multiSortMeta", publicName: "multiSortMeta", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: false, isRequired: false, transformFunction: null }, sortableColumnsDisabled: { classPropertyName: "sortableColumnsDisabled", publicName: "sortableColumnsDisabled", isSignal: false, isRequired: false, transformFunction: null }, lookupRowProps: { classPropertyName: "lookupRowProps", publicName: "lookupRowProps", isSignal: false, isRequired: false, transformFunction: null }, defaultFilter: { classPropertyName: "defaultFilter", publicName: "defaultFilter", isSignal: false, isRequired: false, transformFunction: null }, showAddOption: { classPropertyName: "showAddOption", publicName: "showAddOption", isSignal: false, isRequired: false, transformFunction: null }, showEditOption: { classPropertyName: "showEditOption", publicName: "showEditOption", isSignal: false, isRequired: false, transformFunction: null }, showRemoveOption: { classPropertyName: "showRemoveOption", publicName: "showRemoveOption", isSignal: false, isRequired: false, transformFunction: null }, dialogFullScreen: { classPropertyName: "dialogFullScreen", publicName: "dialogFullScreen", isSignal: true, isRequired: false, transformFunction: null }, labelOptions: { classPropertyName: "labelOptions", publicName: "labelOptions", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { onLookupRequest: "onLookupRequest", onSearchRequest: "onSearchRequest", onFocus: "onFocus", onBlur: "onBlur", onKeyUp: "onKeyUp", onSelect: "onSelect", onUnselect: "onUnselect", onClear: "onClear", onAdd: "onAdd", onEdit: "onEdit", onRemove: "onRemove", onClearButtonClick: "onClearButtonClick" }, providers: [
953
943
  {
954
944
  provide: NG_VALUE_ACCESSOR,
955
945
  useExisting: forwardRef(() => LookupComponent),
956
946
  multi: true,
957
947
  },
958
- ], viewQueries: [{ propertyName: "lookupDialogContainer", first: true, predicate: ["dialogContainer"], descendants: true, isSignal: true }, { propertyName: "table", first: true, predicate: Table, descendants: true }, { propertyName: "autocomplete", first: true, predicate: AutoComplete, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div [ngClass]=\"{ inputgroup: showSearch, 'native-dropdown': !showSearch }\">\n <p-autoComplete\n #autocomplete\n sAutoCompleteMultipleFix\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n [dataKey]=\"dataKey\"\n [multiple]=\"multiple\"\n [inputId]=\"id + '-autocomplete'\"\n [forceSelection]=\"autocompleteForceSelection\"\n [maxlength]=\"maxlength\"\n [suggestions]=\"getLookupSuggestions()\"\n (completeMethod)=\"onCompleteMethod($event)\"\n (onSelect)=\"onSelect.next($event)\"\n (onBlur)=\"onBlur.next($event)\"\n (onFocus)=\"onFocus.next($event)\"\n (onUnselect)=\"onUnselect.next($event)\"\n (onClear)=\"onClear.next($event)\"\n (onKeyUp)=\"onKeyUp.next($event)\"\n [field]=\"lookupDisplayField\"\n [emptyMessage]=\"lookupEmptyMessage\"\n [dropdown]=\"!showSearch\"\n [appendTo]=\"lookupAppendTo\"\n [placeholder]=\"placeholder || ' '\"\n [autoHighlight]=\"true\"\n inputStyleClass=\"mousetrap\"\n >\n </p-autoComplete>\n @if (showSearch) {\n <button\n class=\"button-addon\"\n [class.button-addon--disabled]=\"disabled\"\n [disabled]=\"disabled\"\n (click)=\"showDialog()\"\n >\n <i class=\"fa fa-search\"></i>\n </button>\n }\n</div>\n\n<s-dialog\n [(visible)]=\"dialogVisible\"\n (visibleChange)=\"onVisibleChange($event!)\"\n [header]=\"labelOptions?.searchTitle || 'platform.angular_components.advanced_search' | translate\"\n contentClassName=\"s-lookup-modal\"\n [size]=\"dialogFullScreen() ? 'fullscreen' : 'xl'\"\n>\n @if (dialogVisible) {\n <div\n class=\"s-lookup-modal-container\"\n #dialogContainer\n >\n @if (searchFields && searchFields.length) {\n <div\n class=\"filter\"\n [@collapseContent]=\"\n collapsed\n ? { value: 'hidden', params: { transitionParams: transitionOptions } }\n : { value: 'visible', params: { transitionParams: transitionOptions } }\n \"\n (@collapseContent.done)=\"onToggleDone()\"\n >\n <form\n [formGroup]=\"formGroupDialog\"\n novalidate\n autocomplete=\"off\"\n >\n @if (!collapsed) {\n <div\n class=\"form-content\"\n [@childCollapseContent]=\"\n collapsed\n ? { value: ':leave', params: { transitionParams: transitionOptions } }\n : { value: ':enter', params: { transitionParams: transitionOptions } }\n \"\n >\n <div class=\"filter-title sds-section-title\">\n {{ labelOptions?.filterTitle || 'platform.angular_components.filters' | translate }}\n </div>\n <div class=\"form-fields\">\n <s-dynamic-form\n [configs]=\"searchFieldsDynamicStructure\"\n [form]=\"formGroupDialog\"\n >\n </s-dynamic-form>\n </div>\n <div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <s-button\n [id]=\"id + '-filter-button'\"\n type=\"submit\"\n [label]=\"\n labelOptions?.filterLabel || 'platform.angular_components.filter'\n | translate\n \"\n (clicked)=\"search()\"\n sTooltip=\"(ALT + SHIFT + F)\"\n >\n </s-button>\n <s-button\n [id]=\"id + '-clear-button'\"\n type=\"button\"\n [label]=\"\n labelOptions?.clearLabel || 'platform.angular_components.clear'\n | translate\n \"\n (clicked)=\"clear()\"\n priority=\"link\"\n sTooltip=\"(ALT + SHIFT + L)\"\n >\n </s-button>\n </div>\n </div>\n </div>\n }\n </form>\n </div>\n }\n @if (searchFields && searchFields.length) {\n <div class=\"filter-toggle\">\n <button\n [id]=\"id + '-filter-toggle-button'\"\n type=\"button\"\n (click)=\"filterToggle()\"\n >\n <span\n class=\"fa\"\n [ngClass]=\"{ 'fa-chevron-left': !collapsed, 'fa-chevron-right': collapsed }\"\n aria-hidden=\"true\"\n >\n </span>\n </button>\n </div>\n }\n @let isEmptyContent = !searchTotalRecords && !loading;\n <div\n class=\"content\"\n #contentContainer\n [ngClass]=\"{ 'empty-content': isEmptyContent }\"\n >\n @if (isEmptyContent) {\n <s-empty-state\n [id]=\"id + '-empty-state'\"\n [title]=\"\n labelOptions?.searchEmptyTitle || 'platform.angular_components.no_records_found' | translate\n \"\n [description]=\"searchEmptyDescription\"\n iconClass=\"fa fa-search\"\n >\n </s-empty-state>\n }\n <div class=\"content-child\">\n <p-table\n [dataKey]=\"dataKey\"\n [value]=\"getGridData()\"\n [columns]=\"searchGridFields\"\n [lazy]=\"true\"\n [scrollable]=\"true\"\n [paginator]=\"true\"\n sortMode=\"multiple\"\n [totalRecords]=\"searchTotalRecords\"\n [rows]=\"10\"\n [selection]=\"selected\"\n (onLazyLoad)=\"lazyLoadGrid($event)\"\n [multiSortMeta]=\"multiSortMeta\"\n [attr.data-hidden]=\"!searchTotalRecords && !loading\"\n [selectionMode]=\"multiple ? 'multiple' : 'single'\"\n (selectionChange)=\"onSelectionChange($event)\"\n *sLoadingState=\"{ loading: loading, indicator: indicatorLogo }\"\n >\n <ng-template pTemplate=\"caption\">\n <div>\n @if (showAddOption) {\n <s-button\n priority=\"default\"\n [label]=\"'platform.angular_components.add' | translate\"\n (clicked)=\"onAdd.emit()\"\n >\n </s-button>\n }\n @if (showEditOption) {\n <s-button\n priority=\"default\"\n [label]=\"'platform.angular_components.edit' | translate\"\n [disabled]=\"selected.length !== 1\"\n (clicked)=\"onEdit.emit(this.selected[0])\"\n >\n </s-button>\n }\n @if (showRemoveOption) {\n <s-button\n priority=\"default\"\n [label]=\"'platform.angular_components.remove' | translate\"\n [disabled]=\"!selected.length\"\n (clicked)=\"onRemove.emit(this.selected)\"\n >\n </s-button>\n }\n </div>\n </ng-template>\n <ng-template\n pTemplate=\"colgroup\"\n let-columns\n >\n <colgroup>\n @if (multiple) {\n <col style=\"width: 50px\" />\n }\n\n @for (col of columns; track $index) {\n <col [style.width]=\"col.width\" />\n }\n </colgroup>\n </ng-template>\n <ng-template\n pTemplate=\"header\"\n let-columns\n >\n <tr>\n @if (multiple) {\n <th style=\"width: 50px\">\n <s-table-header-checkbox\n [useAllObject]=\"lookupRowProps ? false : true\"\n [rowProps]=\"lookupRowProps\"\n >\n </s-table-header-checkbox>\n </th>\n }\n @for (col of columns; track $index) {\n <th\n [style.width]=\"col.width\"\n [pSortableColumn]=\"col.name\"\n [pSortableColumnDisabled]=\"sortableColumnsDisabled.includes(col.name)\"\n >\n <div class=\"senior-header\">\n <span class=\"senior-header-title\">{{ col.label }}</span>\n @if (!sortableColumnsDisabled.includes(col.name)) {\n <p-sortIcon [field]=\"col.name\"> </p-sortIcon>\n }\n </div>\n </th>\n }\n </tr>\n </ng-template>\n <ng-template\n pTemplate=\"body\"\n let-rowData\n let-columns\n let-rowIndex=\"rowIndex\"\n >\n <tr\n sNavigation\n [pSelectableRow]=\"rowData\"\n [pSelectableRowIndex]=\"rowIndex\"\n sDoubleClick\n (onDoubleClick)=\"onTableRowDoubleClick(rowData)\"\n >\n @if (multiple) {\n <td\n style=\"width: 50px\"\n tabindex=\"0\"\n >\n <p-tableCheckbox\n [value]=\"rowData\"\n [pSelectableRow]=\"rowData\"\n >\n </p-tableCheckbox>\n </td>\n }\n @for (col of searchGridFields; track $index) {\n <td\n [style.width]=\"getFieldWidth(col)\"\n [ngSwitch]=\"col.type\"\n tabindex=\"0\"\n >\n @switch (col.type) {\n @case ('boolean') {\n <ng-container\n *ngIf=\"isBooleanValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getBooleanLabel(rowData, col.name, col.optionsLabel)\n }}</span>\n </ng-container>\n }\n @case ('date') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name)\n | localizedDate\n : col.calendarLocaleOptions?.dateFormat || 'L'\n | async\n }}</span>\n </ng-container>\n }\n @case ('dateTime') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name) | localizedDate | async\n }}</span>\n </ng-container>\n }\n @case ('localDateTime') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name) | localizedDate | async\n }}</span>\n </ng-container>\n }\n @case ('time') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name)\n | localizedTime\n : col.calendarLocaleOptions?.dateFormat || 'LTS'\n | async\n }}</span>\n </ng-container>\n }\n @case ('integer') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getIntegerMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('double') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getDoubleMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('money') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getMoneyMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('number') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getNumberMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('enum') {\n <ng-container\n *ngIf=\"\n getLabelForValue(getFieldValue(rowData, col.name), col);\n else emptyTemplate\n \"\n >\n <ng-container\n *ngIf=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col);\n then withBadge;\n else withoutBadge\n \"\n ></ng-container>\n <ng-template #withBadge>\n <s-badge\n [text]=\"\n getLabelForValue(getFieldValue(rowData, col.name), col)\n \"\n [color]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.color\n \"\n [type]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.type\n \"\n [iconClass]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.iconClass\n \"\n [iconPosition]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.iconPosition\n \"\n >\n </s-badge>\n </ng-template>\n <ng-template #withoutBadge>\n <span>\n {{\n getLabelForValue(getFieldValue(rowData, col.name), col)\n }}\n </span>\n </ng-template>\n </ng-container>\n }\n @default {\n @if (fieldHasMask(col) && parseValueMaskValue(col, rowData)) {\n <ng-container\n *ngIf=\"\n isNumber(rowData, col.name) ||\n getFieldValue(rowData, col.name)\n \"\n >\n <span>{{\n getFieldValue(rowData, col.name)\n | sMaskFormatter: parseValueMaskValue(col, rowData)\n }}</span>\n </ng-container>\n } @else {\n <ng-container\n *ngIf=\"\n isNumber(rowData, col.name) ||\n getFieldValue(rowData, col.name);\n else emptyTemplate\n \"\n >\n <span>{{ getFieldValue(rowData, col.name) }}</span>\n </ng-container>\n }\n }\n }\n </td>\n }\n </tr>\n </ng-template>\n <ng-template pTemplate=\"paginatorright\">\n <span [attr.data-hidden]=\"loading\">\n {{ printRecordTotalizer() }}\n </span>\n </ng-template>\n </p-table>\n </div>\n </div>\n </div>\n\n <ng-template sTemplate=\"footer\">\n <div class=\"flex w-full justify-end\">\n <s-button\n [id]=\"id + '-cancel-button'\"\n type=\"button\"\n priority=\"link\"\n [label]=\"labelOptions?.cancelLabel || 'platform.angular_components.cancel' | translate\"\n (clicked)=\"hideDialog()\"\n sTooltip=\"(ALT + SHIFT + C)\"\n >\n </s-button>\n <s-button\n [id]=\"id + '-select-button'\"\n type=\"button\"\n [label]=\"labelOptions?.selectLabel || 'platform.angular_components.select' | translate\"\n (clicked)=\"select()\"\n sTooltip=\"(ALT + SHIFT + S)\"\n [disabled]=\"!selected.length\"\n >\n </s-button>\n </div>\n </ng-template>\n }\n</s-dialog>\n\n<ng-template #emptyTemplate>\n <span class=\"sds-empty-value\">\n {{ labelOptions?.emptyFieldLabel || 'platform.angular_components.not_informed' | translate }}\n </span>\n</ng-template>\n\n", styles: ["s-lookup.ng-dirty.ng-invalid .p-inputtext{border-color:#c13018}s-lookup .p-autocomplete-input-multiple{border-top-right-radius:0!important;border-bottom-right-radius:0!important}s-lookup .inputgroup p-autocomplete+button,s-lookup p-autocomplete .ui-autocomplete-dropdown.ui-button{background-color:#fff;border-color:#ccc;border-width:1px 1px 1px 0;color:#333;min-height:35px;height:auto!important;min-width:auto;width:35px!important;overflow:hidden;border-radius:0 4px 4px 0}s-lookup p-autocomplete span.ui-autocomplete-multiple,s-lookup .inputgroup{display:flex}s-lookup .inputgroup p-autocomplete{display:inline-block}s-lookup .native-dropdown p-autocomplete .p-autocomplete>.p-iconwrapper{position:relative;right:19px}s-lookup .inputgroup p-autocomplete .p-autocomplete-input{width:100%}body s-lookup .inputgroup:has(input:focus) .button-addon{border-color:#428bca!important}body s-lookup .inputgroup .button-addon--disabled{opacity:.5}s-lookup .inputgroup p-autocomplete+button:enabled:hover,s-lookup .inputgroup p-autocomplete+button:focus{background-color:highlight(#ccc);border-color:#ccc}s-lookup:not(.ng-dirty.ng-invalid) .inputgroup p-autocomplete .ui-widget .ui-inputtext{border-right-width:1px;border-right-style:solid}s-lookup .ui-autocomplete-input-token{width:100%}s-lookup .ui-autocomplete-input-token input{width:100%}s-lookup .ui-autocomplete .ui-autocomplete-token{max-width:100%}s-lookup .ui-autocomplete .ui-autocomplete-token-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body .s-lookup-modal.p-dialog .p-dialog-content{padding:0;margin-bottom:0;max-height:none}s-lookup .p-table-scrollable-body{min-width:100%}.s-lookup-modal main{padding:0}.s-lookup-modal .s-lookup-modal-container{height:85vh;display:flex;flex-direction:row;width:100%}.s-lookup-modal .s-lookup-modal-container .filter{width:30%;height:auto;flex-grow:0;flex-shrink:0;background-color:#e5eaea80;padding:.571rem}.s-lookup-modal .s-lookup-modal-container .filter form{width:100%;height:100%}.s-lookup-modal .s-lookup-modal-container .filter form .form-content{height:100%;display:flex;flex-direction:column}.s-lookup-modal .s-lookup-modal-container .filter form .form-content .filter-title{padding-left:.5rem}.s-lookup-modal .s-lookup-modal-container .filter form .form-content .form-fields{overflow-y:auto}.s-lookup-modal .s-lookup-modal-container .filter-toggle{margin-top:15px;flex-grow:0;flex-shrink:0;width:35px;border-radius:0 4px 4px 0}.s-lookup-modal .s-lookup-modal-container .filter-toggle button{align-items:center;position:relative;background-color:#e5eaea80;height:35px;width:100%;border:1px solid #e5eaea;outline:none;border-left:none;border-radius:0 4px 4px 0;cursor:pointer;text-decoration:none;text-transform:none;padding:7px;transition:background-color .2s ease-out,color .2s ease-out,border-color .2s ease-out}.s-lookup-modal .s-lookup-modal-container .filter-toggle button:hover,.s-lookup-modal .s-lookup-modal-container .filter-toggle button:focus{background-color:active(rgba(229,234,234,.5));border-color:active(#e5eaea)}.s-lookup-modal .s-lookup-modal-container .content{flex-grow:1;flex-basis:auto;overflow-x:auto;display:flex;flex-direction:column;padding:.5rem}.s-lookup-modal .s-lookup-modal-container .content-child{height:100%}.s-lookup-modal .s-lookup-modal-container .content s-loading-state{height:100%;display:block}.s-lookup-modal .s-lookup-modal-container .content .s-loading-state,.s-lookup-modal .s-lookup-modal-container .content .s-loading-state .state-contents{height:100%}.s-lookup-modal .s-lookup-modal-container .content.empty-content{align-self:center}.s-lookup-modal .s-lookup-modal-container .content.empty-content .content-child{display:none}.s-lookup-modal .s-lookup-modal-container .content p-table>.p-datatable{height:100%;display:flex;flex-direction:column}.s-lookup-modal .s-lookup-modal-container .content p-table>.p-datatable .p-datatable-table-container{flex:1;margin-bottom:0}.inputgroup p-autocomplete{width:calc(100% - 35px)}\n"], dependencies: [{ kind: "ngmodule", type: AutoCompleteModule }, { kind: "component", type: i3.AutoComplete, selector: "p-autoComplete, p-autocomplete, p-auto-complete", inputs: ["minLength", "delay", "style", "panelStyle", "styleClass", "panelStyleClass", "inputStyle", "inputId", "inputStyleClass", "placeholder", "readonly", "disabled", "scrollHeight", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "maxlength", "name", "required", "size", "appendTo", "autoHighlight", "forceSelection", "type", "autoZIndex", "baseZIndex", "ariaLabel", "dropdownAriaLabel", "ariaLabelledBy", "dropdownIcon", "unique", "group", "completeOnFocus", "showClear", "field", "dropdown", "showEmptyMessage", "dropdownMode", "multiple", "tabindex", "dataKey", "emptyMessage", "showTransitionOptions", "hideTransitionOptions", "autofocus", "autocomplete", "optionGroupChildren", "optionGroupLabel", "overlayOptions", "suggestions", "itemSize", "optionLabel", "optionValue", "id", "searchMessage", "emptySelectionMessage", "selectionMessage", "autoOptionFocus", "selectOnFocus", "searchLocale", "optionDisabled", "focusOnHover", "typeahead", "variant", "fluid"], outputs: ["completeMethod", "onSelect", "onUnselect", "onFocus", "onBlur", "onDropdownClick", "onClear", "onKeyUp", "onShow", "onHide", "onLazyLoad"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: AutoCompleteMultipleKeyboardFixDirective, selector: "p-autoComplete[sAutoCompleteMultipleFix], p-autocomplete[sAutoCompleteMultipleFix], p-auto-complete[sAutoCompleteMultipleFix]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: DialogComponent, selector: "s-dialog", inputs: ["header", "visible", "size", "contentClassName", "escapeOnEsc", "destroyClickOutside", "closeAriaLabel"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "component", type: DynamicFormComponent, selector: "s-dynamic-form", inputs: ["id", "configs", "fields", "form", "errorMessages"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: EmptyStateModule }, { kind: "component", type: i6.EmptyStateComponent, selector: "s-empty-state", inputs: ["id", "title", "iconClass", "description", "showPrimaryAction", "showSecondaryAction", "primaryActionLabel", "secondaryActionLabel", "primaryModel"], outputs: ["primaryAction", "secondaryAction"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i7.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "virtualRowHeight", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i7.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i7.SelectableRow, selector: "[pSelectableRow]", inputs: ["pSelectableRow", "pSelectableRowIndex", "pSelectableRowDisabled"] }, { kind: "component", type: i7.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i7.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "ngmodule", type: LoadingStateModule }, { kind: "directive", type: i8.LoadingStateDirective, selector: "[sLoadingState]", inputs: ["sLoadingState"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: LocaleModule }, { kind: "pipe", type: i1$4.LocalizedDatePipe, name: "localizedDate" }, { kind: "pipe", type: i1$4.LocalizedTimePipe, name: "localizedTime" }, { kind: "pipe", type: i1$4.LocalizedBignumberPipe, name: "localizedBignumber" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "component", type: i10.BadgeComponent, selector: "s-badge", inputs: ["type", "color", "title", "text", "selectable", "iconClass", "iconPosition", "infoSign", "enableTruncateText"], outputs: ["selected"] }, { kind: "ngmodule", type: MaskFormatterModule }, { kind: "pipe", type: i11.MaskFormatterPipe, name: "sMaskFormatter" }, { kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "ngmodule", type: TableHeaderCheckboxModule }, { kind: "component", type: i12.TableHeaderCheckboxComponent, selector: "s-table-header-checkbox", inputs: ["id", "disabled", "rowProps", "useAllObject"] }, { kind: "ngmodule", type: TemplateModule }, { kind: "directive", type: i13.TemplateDirective, selector: "[sTemplate]", inputs: ["sTemplate"] }], animations: [
948
+ ], viewQueries: [{ propertyName: "lookupDialogContainer", first: true, predicate: ["dialogContainer"], descendants: true, isSignal: true }, { propertyName: "table", first: true, predicate: Table, descendants: true }, { propertyName: "autocomplete", first: true, predicate: AutoComplete, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div [ngClass]=\"{ inputgroup: showSearch, 'native-dropdown': !showSearch }\">\n <p-autoComplete\n #autocomplete\n sAutoCompleteMultipleFix\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n [dataKey]=\"dataKey\"\n [multiple]=\"multiple\"\n [inputId]=\"id + '-autocomplete'\"\n [forceSelection]=\"autocompleteForceSelection\"\n [maxlength]=\"maxlength\"\n [suggestions]=\"getLookupSuggestions()\"\n (completeMethod)=\"onCompleteMethod($event)\"\n (onSelect)=\"onSelect.next($event)\"\n (onBlur)=\"onBlur.next($event)\"\n (onFocus)=\"onFocus.next($event)\"\n (onUnselect)=\"onUnselect.next($event)\"\n (onClear)=\"onClear.next($event)\"\n (onKeyUp)=\"onKeyUp.next($event)\"\n [field]=\"lookupDisplayField\"\n [emptyMessage]=\"lookupEmptyMessage\"\n [dropdown]=\"!showSearch\"\n [appendTo]=\"lookupAppendTo\"\n [placeholder]=\"placeholder || ' '\"\n [autoHighlight]=\"true\"\n inputStyleClass=\"mousetrap\"\n >\n </p-autoComplete>\n @if (showSearch) {\n <button\n class=\"button-addon\"\n [class.button-addon--disabled]=\"disabled\"\n [disabled]=\"disabled\"\n (click)=\"showDialog()\"\n >\n <i class=\"fa fa-search\"></i>\n </button>\n }\n</div>\n\n<s-dialog\n [(visible)]=\"dialogVisible\"\n (visibleChange)=\"onVisibleChange($event!)\"\n [header]=\"labelOptions?.searchTitle || 'platform.angular_components.advanced_search' | translate\"\n contentClassName=\"s-lookup-modal\"\n [size]=\"dialogFullScreen() ? 'fullscreen' : 'xl'\"\n>\n @if (dialogVisible) {\n <div\n class=\"s-lookup-modal-container\"\n #dialogContainer\n >\n @if (searchFields && searchFields.length) {\n <div\n class=\"filter\"\n [@collapseContent]=\"\n collapsed\n ? { value: 'hidden', params: { transitionParams: transitionOptions } }\n : { value: 'visible', params: { transitionParams: transitionOptions } }\n \"\n (@collapseContent.done)=\"onToggleDone()\"\n >\n <form\n [formGroup]=\"formGroupDialog\"\n novalidate\n autocomplete=\"off\"\n >\n @if (!collapsed) {\n <div\n class=\"form-content\"\n [@childCollapseContent]=\"\n collapsed\n ? { value: ':leave', params: { transitionParams: transitionOptions } }\n : { value: ':enter', params: { transitionParams: transitionOptions } }\n \"\n >\n <div class=\"filter-title sds-section-title\">\n {{ labelOptions?.filterTitle || 'platform.angular_components.filters' | translate }}\n </div>\n <div class=\"form-fields\">\n <s-dynamic-form\n [configs]=\"searchFieldsDynamicStructure\"\n [form]=\"formGroupDialog\"\n >\n </s-dynamic-form>\n </div>\n <div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <s-button\n [id]=\"id + '-filter-button'\"\n type=\"submit\"\n [label]=\"\n labelOptions?.filterLabel || 'platform.angular_components.filter'\n | translate\n \"\n (clicked)=\"search()\"\n sTooltip=\"(ALT + SHIFT + F)\"\n >\n </s-button>\n <s-button\n [id]=\"id + '-clear-button'\"\n type=\"button\"\n [label]=\"\n labelOptions?.clearLabel || 'platform.angular_components.clear'\n | translate\n \"\n (clicked)=\"clear()\"\n priority=\"link\"\n sTooltip=\"(ALT + SHIFT + L)\"\n >\n </s-button>\n </div>\n </div>\n </div>\n }\n </form>\n </div>\n }\n @if (searchFields && searchFields.length) {\n <div class=\"filter-toggle\">\n <button\n [id]=\"id + '-filter-toggle-button'\"\n type=\"button\"\n (click)=\"filterToggle()\"\n >\n <span\n class=\"fa\"\n [ngClass]=\"{ 'fa-chevron-left': !collapsed, 'fa-chevron-right': collapsed }\"\n aria-hidden=\"true\"\n >\n </span>\n </button>\n </div>\n }\n @let isEmptyContent = !searchTotalRecords && !loading;\n <div\n class=\"content\"\n #contentContainer\n [ngClass]=\"{ 'empty-content': isEmptyContent }\"\n >\n @if (isEmptyContent) {\n <s-empty-state\n [id]=\"id + '-empty-state'\"\n [title]=\"\n labelOptions?.searchEmptyTitle || 'platform.angular_components.no_records_found' | translate\n \"\n [description]=\"searchEmptyDescription\"\n iconClass=\"fa fa-search\"\n >\n </s-empty-state>\n }\n <div class=\"content-child\">\n <p-table\n [dataKey]=\"dataKey\"\n [value]=\"getGridData()\"\n [columns]=\"searchGridFields\"\n [lazy]=\"true\"\n [scrollable]=\"true\"\n [paginator]=\"true\"\n sortMode=\"multiple\"\n [totalRecords]=\"searchTotalRecords\"\n [rows]=\"10\"\n [selection]=\"selected\"\n (onLazyLoad)=\"lazyLoadGrid($event)\"\n [multiSortMeta]=\"multiSortMeta\"\n [attr.data-hidden]=\"!searchTotalRecords && !loading\"\n [selectionMode]=\"multiple ? 'multiple' : 'single'\"\n (selectionChange)=\"onSelectionChange($event)\"\n *sLoadingState=\"{ loading: loading, indicator: indicatorLogo }\"\n >\n <ng-template pTemplate=\"caption\">\n <div>\n @if (showAddOption) {\n <s-button\n priority=\"default\"\n [label]=\"'platform.angular_components.add' | translate\"\n (clicked)=\"onAdd.emit()\"\n >\n </s-button>\n }\n @if (showEditOption) {\n <s-button\n priority=\"default\"\n [label]=\"'platform.angular_components.edit' | translate\"\n [disabled]=\"selected.length !== 1\"\n (clicked)=\"onEdit.emit(this.selected[0])\"\n >\n </s-button>\n }\n @if (showRemoveOption) {\n <s-button\n priority=\"default\"\n [label]=\"'platform.angular_components.remove' | translate\"\n [disabled]=\"!selected.length\"\n (clicked)=\"onRemove.emit(this.selected)\"\n >\n </s-button>\n }\n </div>\n </ng-template>\n <ng-template\n pTemplate=\"colgroup\"\n let-columns\n >\n <colgroup>\n @if (multiple) {\n <col style=\"width: 50px\" />\n }\n\n @for (col of columns; track $index) {\n <col [style.width]=\"col.width\" />\n }\n </colgroup>\n </ng-template>\n <ng-template\n pTemplate=\"header\"\n let-columns\n >\n <tr>\n @if (multiple) {\n <th style=\"width: 50px\">\n <s-table-header-checkbox\n [useAllObject]=\"lookupRowProps ? false : true\"\n [rowProps]=\"lookupRowProps\"\n >\n </s-table-header-checkbox>\n </th>\n }\n @for (col of columns; track $index) {\n <th\n [style.width]=\"col.width\"\n [pSortableColumn]=\"col.name\"\n [pSortableColumnDisabled]=\"sortableColumnsDisabled.includes(col.name)\"\n >\n <div class=\"senior-header\">\n <span class=\"senior-header-title\">{{ col.label }}</span>\n @if (!sortableColumnsDisabled.includes(col.name)) {\n <p-sortIcon [field]=\"col.name\"> </p-sortIcon>\n }\n </div>\n </th>\n }\n </tr>\n </ng-template>\n <ng-template\n pTemplate=\"body\"\n let-rowData\n let-columns\n let-rowIndex=\"rowIndex\"\n >\n <tr\n sNavigation\n [pSelectableRow]=\"rowData\"\n [pSelectableRowIndex]=\"rowIndex\"\n sDoubleClick\n (onDoubleClick)=\"onTableRowDoubleClick(rowData)\"\n >\n @if (multiple) {\n <td\n style=\"width: 50px\"\n tabindex=\"0\"\n >\n <p-tableCheckbox\n [value]=\"rowData\"\n [pSelectableRow]=\"rowData\"\n >\n </p-tableCheckbox>\n </td>\n }\n @for (col of searchGridFields; track $index) {\n <td\n [style.width]=\"col.width\"\n [ngSwitch]=\"col.type\"\n tabindex=\"0\"\n >\n @switch (col.type) {\n @case ('boolean') {\n <ng-container\n *ngIf=\"isBooleanValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getBooleanLabel(rowData, col.name, col.optionsLabel)\n }}</span>\n </ng-container>\n }\n @case ('date') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name)\n | localizedDate\n : col.calendarLocaleOptions?.dateFormat || 'L'\n | async\n }}</span>\n </ng-container>\n }\n @case ('dateTime') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name) | localizedDate | async\n }}</span>\n </ng-container>\n }\n @case ('localDateTime') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name) | localizedDate | async\n }}</span>\n </ng-container>\n }\n @case ('time') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name)\n | localizedTime\n : col.calendarLocaleOptions?.dateFormat || 'LTS'\n | async\n }}</span>\n </ng-container>\n }\n @case ('integer') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getIntegerMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('double') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getDoubleMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('money') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getMoneyMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('number') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getNumberMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('enum') {\n <ng-container\n *ngIf=\"\n getLabelForValue(getFieldValue(rowData, col.name), col);\n else emptyTemplate\n \"\n >\n <ng-container\n *ngIf=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col);\n then withBadge;\n else withoutBadge\n \"\n ></ng-container>\n <ng-template #withBadge>\n <s-badge\n [text]=\"\n getLabelForValue(getFieldValue(rowData, col.name), col)\n \"\n [color]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.color\n \"\n [type]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.type\n \"\n [iconClass]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.iconClass\n \"\n [iconPosition]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.iconPosition\n \"\n >\n </s-badge>\n </ng-template>\n <ng-template #withoutBadge>\n <span>\n {{\n getLabelForValue(getFieldValue(rowData, col.name), col)\n }}\n </span>\n </ng-template>\n </ng-container>\n }\n @default {\n @if (fieldHasMask(col) && parseValueMaskValue(col, rowData)) {\n <ng-container\n *ngIf=\"\n isNumber(rowData, col.name) ||\n getFieldValue(rowData, col.name)\n \"\n >\n <span>{{\n getFieldValue(rowData, col.name)\n | sMaskFormatter: parseValueMaskValue(col, rowData)\n }}</span>\n </ng-container>\n } @else {\n <ng-container\n *ngIf=\"\n isNumber(rowData, col.name) ||\n getFieldValue(rowData, col.name);\n else emptyTemplate\n \"\n >\n <span>{{ getFieldValue(rowData, col.name) }}</span>\n </ng-container>\n }\n }\n }\n </td>\n }\n </tr>\n </ng-template>\n <ng-template pTemplate=\"paginatorright\">\n <span [attr.data-hidden]=\"loading\">\n {{ printRecordTotalizer() }}\n </span>\n </ng-template>\n </p-table>\n </div>\n </div>\n </div>\n\n <ng-template sTemplate=\"footer\">\n <div class=\"flex w-full justify-end\">\n <s-button\n [id]=\"id + '-cancel-button'\"\n type=\"button\"\n priority=\"link\"\n [label]=\"labelOptions?.cancelLabel || 'platform.angular_components.cancel' | translate\"\n (clicked)=\"hideDialog()\"\n sTooltip=\"(ALT + SHIFT + C)\"\n >\n </s-button>\n <s-button\n [id]=\"id + '-select-button'\"\n type=\"button\"\n [label]=\"labelOptions?.selectLabel || 'platform.angular_components.select' | translate\"\n (clicked)=\"select()\"\n sTooltip=\"(ALT + SHIFT + S)\"\n [disabled]=\"!selected.length\"\n >\n </s-button>\n </div>\n </ng-template>\n }\n</s-dialog>\n\n<ng-template #emptyTemplate>\n <span class=\"sds-empty-value\">\n {{ labelOptions?.emptyFieldLabel || 'platform.angular_components.not_informed' | translate }}\n </span>\n</ng-template>\n\n", styles: ["s-lookup.ng-dirty.ng-invalid .p-inputtext{border-color:#c13018}s-lookup .p-autocomplete-input-multiple{border-top-right-radius:0!important;border-bottom-right-radius:0!important}s-lookup .inputgroup p-autocomplete+button,s-lookup p-autocomplete .ui-autocomplete-dropdown.ui-button{background-color:#fff;border-color:#ccc;border-width:1px 1px 1px 0;color:#333;min-height:35px;height:auto!important;min-width:auto;width:35px!important;overflow:hidden;border-radius:0 4px 4px 0}s-lookup p-autocomplete span.ui-autocomplete-multiple,s-lookup .inputgroup{display:flex}s-lookup .inputgroup p-autocomplete{display:inline-block}s-lookup .native-dropdown p-autocomplete .p-autocomplete>.p-iconwrapper{position:relative;right:19px}s-lookup .inputgroup p-autocomplete .p-autocomplete-input{width:100%}body s-lookup .inputgroup:has(input:focus) .button-addon{border-color:#428bca!important}body s-lookup .inputgroup .button-addon--disabled{opacity:.5}s-lookup .inputgroup p-autocomplete+button:enabled:hover,s-lookup .inputgroup p-autocomplete+button:focus{background-color:highlight(#ccc);border-color:#ccc}s-lookup:not(.ng-dirty.ng-invalid) .inputgroup p-autocomplete .ui-widget .ui-inputtext{border-right-width:1px;border-right-style:solid}s-lookup .ui-autocomplete-input-token{width:100%}s-lookup .ui-autocomplete-input-token input{width:100%}s-lookup .ui-autocomplete .ui-autocomplete-token{max-width:100%}s-lookup .ui-autocomplete .ui-autocomplete-token-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body .s-lookup-modal.p-dialog .p-dialog-content{padding:0;margin-bottom:0;max-height:none}s-lookup .p-table-scrollable-body{min-width:100%}.s-lookup-modal main{padding:0}.s-lookup-modal .s-lookup-modal-container{height:85vh;display:flex;flex-direction:row;width:100%}.s-lookup-modal .s-lookup-modal-container .filter{width:30%;height:auto;flex-grow:0;flex-shrink:0;background-color:#e5eaea80;padding:.571rem}.s-lookup-modal .s-lookup-modal-container .filter form{width:100%;height:100%}.s-lookup-modal .s-lookup-modal-container .filter form .form-content{height:100%;display:flex;flex-direction:column}.s-lookup-modal .s-lookup-modal-container .filter form .form-content .filter-title{padding-left:.5rem}.s-lookup-modal .s-lookup-modal-container .filter form .form-content .form-fields{overflow-y:auto}.s-lookup-modal .s-lookup-modal-container .filter-toggle{margin-top:15px;flex-grow:0;flex-shrink:0;width:35px;border-radius:0 4px 4px 0}.s-lookup-modal .s-lookup-modal-container .filter-toggle button{align-items:center;position:relative;background-color:#e5eaea80;height:35px;width:100%;border:1px solid #e5eaea;outline:none;border-left:none;border-radius:0 4px 4px 0;cursor:pointer;text-decoration:none;text-transform:none;padding:7px;transition:background-color .2s ease-out,color .2s ease-out,border-color .2s ease-out}.s-lookup-modal .s-lookup-modal-container .filter-toggle button:hover,.s-lookup-modal .s-lookup-modal-container .filter-toggle button:focus{background-color:active(rgba(229,234,234,.5));border-color:active(#e5eaea)}.s-lookup-modal .s-lookup-modal-container .content{flex-grow:1;flex-basis:auto;overflow-x:auto;display:flex;flex-direction:column;padding:.5rem}.s-lookup-modal .s-lookup-modal-container .content-child{height:100%}.s-lookup-modal .s-lookup-modal-container .content s-loading-state{height:100%;display:block}.s-lookup-modal .s-lookup-modal-container .content .s-loading-state,.s-lookup-modal .s-lookup-modal-container .content .s-loading-state .state-contents{height:100%}.s-lookup-modal .s-lookup-modal-container .content.empty-content{align-self:center}.s-lookup-modal .s-lookup-modal-container .content.empty-content .content-child{display:none}.s-lookup-modal .s-lookup-modal-container .content p-table>.p-datatable{height:100%;display:flex;flex-direction:column}.s-lookup-modal .s-lookup-modal-container .content p-table>.p-datatable .p-datatable-table-container{flex:1;margin-bottom:0}.inputgroup p-autocomplete{width:calc(100% - 35px)}\n"], dependencies: [{ kind: "ngmodule", type: AutoCompleteModule }, { kind: "component", type: i1$2.AutoComplete, selector: "p-autoComplete, p-autocomplete, p-auto-complete", inputs: ["minLength", "delay", "style", "panelStyle", "styleClass", "panelStyleClass", "inputStyle", "inputId", "inputStyleClass", "placeholder", "readonly", "disabled", "scrollHeight", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "maxlength", "name", "required", "size", "appendTo", "autoHighlight", "forceSelection", "type", "autoZIndex", "baseZIndex", "ariaLabel", "dropdownAriaLabel", "ariaLabelledBy", "dropdownIcon", "unique", "group", "completeOnFocus", "showClear", "field", "dropdown", "showEmptyMessage", "dropdownMode", "multiple", "tabindex", "dataKey", "emptyMessage", "showTransitionOptions", "hideTransitionOptions", "autofocus", "autocomplete", "optionGroupChildren", "optionGroupLabel", "overlayOptions", "suggestions", "itemSize", "optionLabel", "optionValue", "id", "searchMessage", "emptySelectionMessage", "selectionMessage", "autoOptionFocus", "selectOnFocus", "searchLocale", "optionDisabled", "focusOnHover", "typeahead", "variant", "fluid"], outputs: ["completeMethod", "onSelect", "onUnselect", "onFocus", "onBlur", "onDropdownClick", "onClear", "onKeyUp", "onShow", "onHide", "onLazyLoad"] }, { kind: "directive", type: i2$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: AutoCompleteMultipleKeyboardFixDirective, selector: "p-autoComplete[sAutoCompleteMultipleFix], p-autocomplete[sAutoCompleteMultipleFix], p-auto-complete[sAutoCompleteMultipleFix]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: DialogComponent, selector: "s-dialog", inputs: ["header", "visible", "size", "contentClassName", "escapeOnEsc", "destroyClickOutside", "closeAriaLabel"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "component", type: DynamicFormComponent, selector: "s-dynamic-form", inputs: ["id", "configs", "fields", "form", "errorMessages"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: EmptyStateModule }, { kind: "component", type: i5.EmptyStateComponent, selector: "s-empty-state", inputs: ["id", "title", "iconClass", "description", "showPrimaryAction", "showSecondaryAction", "primaryActionLabel", "secondaryActionLabel", "primaryModel"], outputs: ["primaryAction", "secondaryAction"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i6.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "virtualRowHeight", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i6.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i6.SelectableRow, selector: "[pSelectableRow]", inputs: ["pSelectableRow", "pSelectableRowIndex", "pSelectableRowDisabled"] }, { kind: "component", type: i6.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i6.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "ngmodule", type: LoadingStateModule }, { kind: "directive", type: i7.LoadingStateDirective, selector: "[sLoadingState]", inputs: ["sLoadingState"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: LocaleModule }, { kind: "pipe", type: i8.LocalizedDatePipe, name: "localizedDate" }, { kind: "pipe", type: i8.LocalizedTimePipe, name: "localizedTime" }, { kind: "pipe", type: i8.LocalizedBignumberPipe, name: "localizedBignumber" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "component", type: i9.BadgeComponent, selector: "s-badge", inputs: ["type", "color", "title", "text", "selectable", "iconClass", "iconPosition", "infoSign", "enableTruncateText"], outputs: ["selected"] }, { kind: "ngmodule", type: MaskFormatterModule }, { kind: "pipe", type: i10.MaskFormatterPipe, name: "sMaskFormatter" }, { kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "ngmodule", type: TableHeaderCheckboxModule }, { kind: "component", type: i11.TableHeaderCheckboxComponent, selector: "s-table-header-checkbox", inputs: ["id", "disabled", "rowProps", "useAllObject"] }, { kind: "ngmodule", type: TemplateModule }, { kind: "directive", type: i12.TemplateDirective, selector: "[sTemplate]", inputs: ["sTemplate"] }], animations: [
959
949
  trigger('collapseContent', [
960
950
  state('hidden', style({
961
951
  width: '10px',
@@ -1033,8 +1023,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
1033
1023
  })),
1034
1024
  transition('* <=> *', animate('{{transitionParams}}')),
1035
1025
  ]),
1036
- ], template: "<div [ngClass]=\"{ inputgroup: showSearch, 'native-dropdown': !showSearch }\">\n <p-autoComplete\n #autocomplete\n sAutoCompleteMultipleFix\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n [dataKey]=\"dataKey\"\n [multiple]=\"multiple\"\n [inputId]=\"id + '-autocomplete'\"\n [forceSelection]=\"autocompleteForceSelection\"\n [maxlength]=\"maxlength\"\n [suggestions]=\"getLookupSuggestions()\"\n (completeMethod)=\"onCompleteMethod($event)\"\n (onSelect)=\"onSelect.next($event)\"\n (onBlur)=\"onBlur.next($event)\"\n (onFocus)=\"onFocus.next($event)\"\n (onUnselect)=\"onUnselect.next($event)\"\n (onClear)=\"onClear.next($event)\"\n (onKeyUp)=\"onKeyUp.next($event)\"\n [field]=\"lookupDisplayField\"\n [emptyMessage]=\"lookupEmptyMessage\"\n [dropdown]=\"!showSearch\"\n [appendTo]=\"lookupAppendTo\"\n [placeholder]=\"placeholder || ' '\"\n [autoHighlight]=\"true\"\n inputStyleClass=\"mousetrap\"\n >\n </p-autoComplete>\n @if (showSearch) {\n <button\n class=\"button-addon\"\n [class.button-addon--disabled]=\"disabled\"\n [disabled]=\"disabled\"\n (click)=\"showDialog()\"\n >\n <i class=\"fa fa-search\"></i>\n </button>\n }\n</div>\n\n<s-dialog\n [(visible)]=\"dialogVisible\"\n (visibleChange)=\"onVisibleChange($event!)\"\n [header]=\"labelOptions?.searchTitle || 'platform.angular_components.advanced_search' | translate\"\n contentClassName=\"s-lookup-modal\"\n [size]=\"dialogFullScreen() ? 'fullscreen' : 'xl'\"\n>\n @if (dialogVisible) {\n <div\n class=\"s-lookup-modal-container\"\n #dialogContainer\n >\n @if (searchFields && searchFields.length) {\n <div\n class=\"filter\"\n [@collapseContent]=\"\n collapsed\n ? { value: 'hidden', params: { transitionParams: transitionOptions } }\n : { value: 'visible', params: { transitionParams: transitionOptions } }\n \"\n (@collapseContent.done)=\"onToggleDone()\"\n >\n <form\n [formGroup]=\"formGroupDialog\"\n novalidate\n autocomplete=\"off\"\n >\n @if (!collapsed) {\n <div\n class=\"form-content\"\n [@childCollapseContent]=\"\n collapsed\n ? { value: ':leave', params: { transitionParams: transitionOptions } }\n : { value: ':enter', params: { transitionParams: transitionOptions } }\n \"\n >\n <div class=\"filter-title sds-section-title\">\n {{ labelOptions?.filterTitle || 'platform.angular_components.filters' | translate }}\n </div>\n <div class=\"form-fields\">\n <s-dynamic-form\n [configs]=\"searchFieldsDynamicStructure\"\n [form]=\"formGroupDialog\"\n >\n </s-dynamic-form>\n </div>\n <div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <s-button\n [id]=\"id + '-filter-button'\"\n type=\"submit\"\n [label]=\"\n labelOptions?.filterLabel || 'platform.angular_components.filter'\n | translate\n \"\n (clicked)=\"search()\"\n sTooltip=\"(ALT + SHIFT + F)\"\n >\n </s-button>\n <s-button\n [id]=\"id + '-clear-button'\"\n type=\"button\"\n [label]=\"\n labelOptions?.clearLabel || 'platform.angular_components.clear'\n | translate\n \"\n (clicked)=\"clear()\"\n priority=\"link\"\n sTooltip=\"(ALT + SHIFT + L)\"\n >\n </s-button>\n </div>\n </div>\n </div>\n }\n </form>\n </div>\n }\n @if (searchFields && searchFields.length) {\n <div class=\"filter-toggle\">\n <button\n [id]=\"id + '-filter-toggle-button'\"\n type=\"button\"\n (click)=\"filterToggle()\"\n >\n <span\n class=\"fa\"\n [ngClass]=\"{ 'fa-chevron-left': !collapsed, 'fa-chevron-right': collapsed }\"\n aria-hidden=\"true\"\n >\n </span>\n </button>\n </div>\n }\n @let isEmptyContent = !searchTotalRecords && !loading;\n <div\n class=\"content\"\n #contentContainer\n [ngClass]=\"{ 'empty-content': isEmptyContent }\"\n >\n @if (isEmptyContent) {\n <s-empty-state\n [id]=\"id + '-empty-state'\"\n [title]=\"\n labelOptions?.searchEmptyTitle || 'platform.angular_components.no_records_found' | translate\n \"\n [description]=\"searchEmptyDescription\"\n iconClass=\"fa fa-search\"\n >\n </s-empty-state>\n }\n <div class=\"content-child\">\n <p-table\n [dataKey]=\"dataKey\"\n [value]=\"getGridData()\"\n [columns]=\"searchGridFields\"\n [lazy]=\"true\"\n [scrollable]=\"true\"\n [paginator]=\"true\"\n sortMode=\"multiple\"\n [totalRecords]=\"searchTotalRecords\"\n [rows]=\"10\"\n [selection]=\"selected\"\n (onLazyLoad)=\"lazyLoadGrid($event)\"\n [multiSortMeta]=\"multiSortMeta\"\n [attr.data-hidden]=\"!searchTotalRecords && !loading\"\n [selectionMode]=\"multiple ? 'multiple' : 'single'\"\n (selectionChange)=\"onSelectionChange($event)\"\n *sLoadingState=\"{ loading: loading, indicator: indicatorLogo }\"\n >\n <ng-template pTemplate=\"caption\">\n <div>\n @if (showAddOption) {\n <s-button\n priority=\"default\"\n [label]=\"'platform.angular_components.add' | translate\"\n (clicked)=\"onAdd.emit()\"\n >\n </s-button>\n }\n @if (showEditOption) {\n <s-button\n priority=\"default\"\n [label]=\"'platform.angular_components.edit' | translate\"\n [disabled]=\"selected.length !== 1\"\n (clicked)=\"onEdit.emit(this.selected[0])\"\n >\n </s-button>\n }\n @if (showRemoveOption) {\n <s-button\n priority=\"default\"\n [label]=\"'platform.angular_components.remove' | translate\"\n [disabled]=\"!selected.length\"\n (clicked)=\"onRemove.emit(this.selected)\"\n >\n </s-button>\n }\n </div>\n </ng-template>\n <ng-template\n pTemplate=\"colgroup\"\n let-columns\n >\n <colgroup>\n @if (multiple) {\n <col style=\"width: 50px\" />\n }\n\n @for (col of columns; track $index) {\n <col [style.width]=\"col.width\" />\n }\n </colgroup>\n </ng-template>\n <ng-template\n pTemplate=\"header\"\n let-columns\n >\n <tr>\n @if (multiple) {\n <th style=\"width: 50px\">\n <s-table-header-checkbox\n [useAllObject]=\"lookupRowProps ? false : true\"\n [rowProps]=\"lookupRowProps\"\n >\n </s-table-header-checkbox>\n </th>\n }\n @for (col of columns; track $index) {\n <th\n [style.width]=\"col.width\"\n [pSortableColumn]=\"col.name\"\n [pSortableColumnDisabled]=\"sortableColumnsDisabled.includes(col.name)\"\n >\n <div class=\"senior-header\">\n <span class=\"senior-header-title\">{{ col.label }}</span>\n @if (!sortableColumnsDisabled.includes(col.name)) {\n <p-sortIcon [field]=\"col.name\"> </p-sortIcon>\n }\n </div>\n </th>\n }\n </tr>\n </ng-template>\n <ng-template\n pTemplate=\"body\"\n let-rowData\n let-columns\n let-rowIndex=\"rowIndex\"\n >\n <tr\n sNavigation\n [pSelectableRow]=\"rowData\"\n [pSelectableRowIndex]=\"rowIndex\"\n sDoubleClick\n (onDoubleClick)=\"onTableRowDoubleClick(rowData)\"\n >\n @if (multiple) {\n <td\n style=\"width: 50px\"\n tabindex=\"0\"\n >\n <p-tableCheckbox\n [value]=\"rowData\"\n [pSelectableRow]=\"rowData\"\n >\n </p-tableCheckbox>\n </td>\n }\n @for (col of searchGridFields; track $index) {\n <td\n [style.width]=\"getFieldWidth(col)\"\n [ngSwitch]=\"col.type\"\n tabindex=\"0\"\n >\n @switch (col.type) {\n @case ('boolean') {\n <ng-container\n *ngIf=\"isBooleanValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getBooleanLabel(rowData, col.name, col.optionsLabel)\n }}</span>\n </ng-container>\n }\n @case ('date') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name)\n | localizedDate\n : col.calendarLocaleOptions?.dateFormat || 'L'\n | async\n }}</span>\n </ng-container>\n }\n @case ('dateTime') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name) | localizedDate | async\n }}</span>\n </ng-container>\n }\n @case ('localDateTime') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name) | localizedDate | async\n }}</span>\n </ng-container>\n }\n @case ('time') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name)\n | localizedTime\n : col.calendarLocaleOptions?.dateFormat || 'LTS'\n | async\n }}</span>\n </ng-container>\n }\n @case ('integer') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getIntegerMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('double') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getDoubleMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('money') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getMoneyMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('number') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getNumberMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('enum') {\n <ng-container\n *ngIf=\"\n getLabelForValue(getFieldValue(rowData, col.name), col);\n else emptyTemplate\n \"\n >\n <ng-container\n *ngIf=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col);\n then withBadge;\n else withoutBadge\n \"\n ></ng-container>\n <ng-template #withBadge>\n <s-badge\n [text]=\"\n getLabelForValue(getFieldValue(rowData, col.name), col)\n \"\n [color]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.color\n \"\n [type]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.type\n \"\n [iconClass]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.iconClass\n \"\n [iconPosition]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.iconPosition\n \"\n >\n </s-badge>\n </ng-template>\n <ng-template #withoutBadge>\n <span>\n {{\n getLabelForValue(getFieldValue(rowData, col.name), col)\n }}\n </span>\n </ng-template>\n </ng-container>\n }\n @default {\n @if (fieldHasMask(col) && parseValueMaskValue(col, rowData)) {\n <ng-container\n *ngIf=\"\n isNumber(rowData, col.name) ||\n getFieldValue(rowData, col.name)\n \"\n >\n <span>{{\n getFieldValue(rowData, col.name)\n | sMaskFormatter: parseValueMaskValue(col, rowData)\n }}</span>\n </ng-container>\n } @else {\n <ng-container\n *ngIf=\"\n isNumber(rowData, col.name) ||\n getFieldValue(rowData, col.name);\n else emptyTemplate\n \"\n >\n <span>{{ getFieldValue(rowData, col.name) }}</span>\n </ng-container>\n }\n }\n }\n </td>\n }\n </tr>\n </ng-template>\n <ng-template pTemplate=\"paginatorright\">\n <span [attr.data-hidden]=\"loading\">\n {{ printRecordTotalizer() }}\n </span>\n </ng-template>\n </p-table>\n </div>\n </div>\n </div>\n\n <ng-template sTemplate=\"footer\">\n <div class=\"flex w-full justify-end\">\n <s-button\n [id]=\"id + '-cancel-button'\"\n type=\"button\"\n priority=\"link\"\n [label]=\"labelOptions?.cancelLabel || 'platform.angular_components.cancel' | translate\"\n (clicked)=\"hideDialog()\"\n sTooltip=\"(ALT + SHIFT + C)\"\n >\n </s-button>\n <s-button\n [id]=\"id + '-select-button'\"\n type=\"button\"\n [label]=\"labelOptions?.selectLabel || 'platform.angular_components.select' | translate\"\n (clicked)=\"select()\"\n sTooltip=\"(ALT + SHIFT + S)\"\n [disabled]=\"!selected.length\"\n >\n </s-button>\n </div>\n </ng-template>\n }\n</s-dialog>\n\n<ng-template #emptyTemplate>\n <span class=\"sds-empty-value\">\n {{ labelOptions?.emptyFieldLabel || 'platform.angular_components.not_informed' | translate }}\n </span>\n</ng-template>\n\n", styles: ["s-lookup.ng-dirty.ng-invalid .p-inputtext{border-color:#c13018}s-lookup .p-autocomplete-input-multiple{border-top-right-radius:0!important;border-bottom-right-radius:0!important}s-lookup .inputgroup p-autocomplete+button,s-lookup p-autocomplete .ui-autocomplete-dropdown.ui-button{background-color:#fff;border-color:#ccc;border-width:1px 1px 1px 0;color:#333;min-height:35px;height:auto!important;min-width:auto;width:35px!important;overflow:hidden;border-radius:0 4px 4px 0}s-lookup p-autocomplete span.ui-autocomplete-multiple,s-lookup .inputgroup{display:flex}s-lookup .inputgroup p-autocomplete{display:inline-block}s-lookup .native-dropdown p-autocomplete .p-autocomplete>.p-iconwrapper{position:relative;right:19px}s-lookup .inputgroup p-autocomplete .p-autocomplete-input{width:100%}body s-lookup .inputgroup:has(input:focus) .button-addon{border-color:#428bca!important}body s-lookup .inputgroup .button-addon--disabled{opacity:.5}s-lookup .inputgroup p-autocomplete+button:enabled:hover,s-lookup .inputgroup p-autocomplete+button:focus{background-color:highlight(#ccc);border-color:#ccc}s-lookup:not(.ng-dirty.ng-invalid) .inputgroup p-autocomplete .ui-widget .ui-inputtext{border-right-width:1px;border-right-style:solid}s-lookup .ui-autocomplete-input-token{width:100%}s-lookup .ui-autocomplete-input-token input{width:100%}s-lookup .ui-autocomplete .ui-autocomplete-token{max-width:100%}s-lookup .ui-autocomplete .ui-autocomplete-token-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body .s-lookup-modal.p-dialog .p-dialog-content{padding:0;margin-bottom:0;max-height:none}s-lookup .p-table-scrollable-body{min-width:100%}.s-lookup-modal main{padding:0}.s-lookup-modal .s-lookup-modal-container{height:85vh;display:flex;flex-direction:row;width:100%}.s-lookup-modal .s-lookup-modal-container .filter{width:30%;height:auto;flex-grow:0;flex-shrink:0;background-color:#e5eaea80;padding:.571rem}.s-lookup-modal .s-lookup-modal-container .filter form{width:100%;height:100%}.s-lookup-modal .s-lookup-modal-container .filter form .form-content{height:100%;display:flex;flex-direction:column}.s-lookup-modal .s-lookup-modal-container .filter form .form-content .filter-title{padding-left:.5rem}.s-lookup-modal .s-lookup-modal-container .filter form .form-content .form-fields{overflow-y:auto}.s-lookup-modal .s-lookup-modal-container .filter-toggle{margin-top:15px;flex-grow:0;flex-shrink:0;width:35px;border-radius:0 4px 4px 0}.s-lookup-modal .s-lookup-modal-container .filter-toggle button{align-items:center;position:relative;background-color:#e5eaea80;height:35px;width:100%;border:1px solid #e5eaea;outline:none;border-left:none;border-radius:0 4px 4px 0;cursor:pointer;text-decoration:none;text-transform:none;padding:7px;transition:background-color .2s ease-out,color .2s ease-out,border-color .2s ease-out}.s-lookup-modal .s-lookup-modal-container .filter-toggle button:hover,.s-lookup-modal .s-lookup-modal-container .filter-toggle button:focus{background-color:active(rgba(229,234,234,.5));border-color:active(#e5eaea)}.s-lookup-modal .s-lookup-modal-container .content{flex-grow:1;flex-basis:auto;overflow-x:auto;display:flex;flex-direction:column;padding:.5rem}.s-lookup-modal .s-lookup-modal-container .content-child{height:100%}.s-lookup-modal .s-lookup-modal-container .content s-loading-state{height:100%;display:block}.s-lookup-modal .s-lookup-modal-container .content .s-loading-state,.s-lookup-modal .s-lookup-modal-container .content .s-loading-state .state-contents{height:100%}.s-lookup-modal .s-lookup-modal-container .content.empty-content{align-self:center}.s-lookup-modal .s-lookup-modal-container .content.empty-content .content-child{display:none}.s-lookup-modal .s-lookup-modal-container .content p-table>.p-datatable{height:100%;display:flex;flex-direction:column}.s-lookup-modal .s-lookup-modal-container .content p-table>.p-datatable .p-datatable-table-container{flex:1;margin-bottom:0}.inputgroup p-autocomplete{width:calc(100% - 35px)}\n"] }]
1037
- }], ctorParameters: () => [{ type: i1$3.HotkeysService }, { type: i2.TranslateService }, { type: i0.ChangeDetectorRef }], propDecorators: { formControlName: [{
1026
+ ], template: "<div [ngClass]=\"{ inputgroup: showSearch, 'native-dropdown': !showSearch }\">\n <p-autoComplete\n #autocomplete\n sAutoCompleteMultipleFix\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n [dataKey]=\"dataKey\"\n [multiple]=\"multiple\"\n [inputId]=\"id + '-autocomplete'\"\n [forceSelection]=\"autocompleteForceSelection\"\n [maxlength]=\"maxlength\"\n [suggestions]=\"getLookupSuggestions()\"\n (completeMethod)=\"onCompleteMethod($event)\"\n (onSelect)=\"onSelect.next($event)\"\n (onBlur)=\"onBlur.next($event)\"\n (onFocus)=\"onFocus.next($event)\"\n (onUnselect)=\"onUnselect.next($event)\"\n (onClear)=\"onClear.next($event)\"\n (onKeyUp)=\"onKeyUp.next($event)\"\n [field]=\"lookupDisplayField\"\n [emptyMessage]=\"lookupEmptyMessage\"\n [dropdown]=\"!showSearch\"\n [appendTo]=\"lookupAppendTo\"\n [placeholder]=\"placeholder || ' '\"\n [autoHighlight]=\"true\"\n inputStyleClass=\"mousetrap\"\n >\n </p-autoComplete>\n @if (showSearch) {\n <button\n class=\"button-addon\"\n [class.button-addon--disabled]=\"disabled\"\n [disabled]=\"disabled\"\n (click)=\"showDialog()\"\n >\n <i class=\"fa fa-search\"></i>\n </button>\n }\n</div>\n\n<s-dialog\n [(visible)]=\"dialogVisible\"\n (visibleChange)=\"onVisibleChange($event!)\"\n [header]=\"labelOptions?.searchTitle || 'platform.angular_components.advanced_search' | translate\"\n contentClassName=\"s-lookup-modal\"\n [size]=\"dialogFullScreen() ? 'fullscreen' : 'xl'\"\n>\n @if (dialogVisible) {\n <div\n class=\"s-lookup-modal-container\"\n #dialogContainer\n >\n @if (searchFields && searchFields.length) {\n <div\n class=\"filter\"\n [@collapseContent]=\"\n collapsed\n ? { value: 'hidden', params: { transitionParams: transitionOptions } }\n : { value: 'visible', params: { transitionParams: transitionOptions } }\n \"\n (@collapseContent.done)=\"onToggleDone()\"\n >\n <form\n [formGroup]=\"formGroupDialog\"\n novalidate\n autocomplete=\"off\"\n >\n @if (!collapsed) {\n <div\n class=\"form-content\"\n [@childCollapseContent]=\"\n collapsed\n ? { value: ':leave', params: { transitionParams: transitionOptions } }\n : { value: ':enter', params: { transitionParams: transitionOptions } }\n \"\n >\n <div class=\"filter-title sds-section-title\">\n {{ labelOptions?.filterTitle || 'platform.angular_components.filters' | translate }}\n </div>\n <div class=\"form-fields\">\n <s-dynamic-form\n [configs]=\"searchFieldsDynamicStructure\"\n [form]=\"formGroupDialog\"\n >\n </s-dynamic-form>\n </div>\n <div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <s-button\n [id]=\"id + '-filter-button'\"\n type=\"submit\"\n [label]=\"\n labelOptions?.filterLabel || 'platform.angular_components.filter'\n | translate\n \"\n (clicked)=\"search()\"\n sTooltip=\"(ALT + SHIFT + F)\"\n >\n </s-button>\n <s-button\n [id]=\"id + '-clear-button'\"\n type=\"button\"\n [label]=\"\n labelOptions?.clearLabel || 'platform.angular_components.clear'\n | translate\n \"\n (clicked)=\"clear()\"\n priority=\"link\"\n sTooltip=\"(ALT + SHIFT + L)\"\n >\n </s-button>\n </div>\n </div>\n </div>\n }\n </form>\n </div>\n }\n @if (searchFields && searchFields.length) {\n <div class=\"filter-toggle\">\n <button\n [id]=\"id + '-filter-toggle-button'\"\n type=\"button\"\n (click)=\"filterToggle()\"\n >\n <span\n class=\"fa\"\n [ngClass]=\"{ 'fa-chevron-left': !collapsed, 'fa-chevron-right': collapsed }\"\n aria-hidden=\"true\"\n >\n </span>\n </button>\n </div>\n }\n @let isEmptyContent = !searchTotalRecords && !loading;\n <div\n class=\"content\"\n #contentContainer\n [ngClass]=\"{ 'empty-content': isEmptyContent }\"\n >\n @if (isEmptyContent) {\n <s-empty-state\n [id]=\"id + '-empty-state'\"\n [title]=\"\n labelOptions?.searchEmptyTitle || 'platform.angular_components.no_records_found' | translate\n \"\n [description]=\"searchEmptyDescription\"\n iconClass=\"fa fa-search\"\n >\n </s-empty-state>\n }\n <div class=\"content-child\">\n <p-table\n [dataKey]=\"dataKey\"\n [value]=\"getGridData()\"\n [columns]=\"searchGridFields\"\n [lazy]=\"true\"\n [scrollable]=\"true\"\n [paginator]=\"true\"\n sortMode=\"multiple\"\n [totalRecords]=\"searchTotalRecords\"\n [rows]=\"10\"\n [selection]=\"selected\"\n (onLazyLoad)=\"lazyLoadGrid($event)\"\n [multiSortMeta]=\"multiSortMeta\"\n [attr.data-hidden]=\"!searchTotalRecords && !loading\"\n [selectionMode]=\"multiple ? 'multiple' : 'single'\"\n (selectionChange)=\"onSelectionChange($event)\"\n *sLoadingState=\"{ loading: loading, indicator: indicatorLogo }\"\n >\n <ng-template pTemplate=\"caption\">\n <div>\n @if (showAddOption) {\n <s-button\n priority=\"default\"\n [label]=\"'platform.angular_components.add' | translate\"\n (clicked)=\"onAdd.emit()\"\n >\n </s-button>\n }\n @if (showEditOption) {\n <s-button\n priority=\"default\"\n [label]=\"'platform.angular_components.edit' | translate\"\n [disabled]=\"selected.length !== 1\"\n (clicked)=\"onEdit.emit(this.selected[0])\"\n >\n </s-button>\n }\n @if (showRemoveOption) {\n <s-button\n priority=\"default\"\n [label]=\"'platform.angular_components.remove' | translate\"\n [disabled]=\"!selected.length\"\n (clicked)=\"onRemove.emit(this.selected)\"\n >\n </s-button>\n }\n </div>\n </ng-template>\n <ng-template\n pTemplate=\"colgroup\"\n let-columns\n >\n <colgroup>\n @if (multiple) {\n <col style=\"width: 50px\" />\n }\n\n @for (col of columns; track $index) {\n <col [style.width]=\"col.width\" />\n }\n </colgroup>\n </ng-template>\n <ng-template\n pTemplate=\"header\"\n let-columns\n >\n <tr>\n @if (multiple) {\n <th style=\"width: 50px\">\n <s-table-header-checkbox\n [useAllObject]=\"lookupRowProps ? false : true\"\n [rowProps]=\"lookupRowProps\"\n >\n </s-table-header-checkbox>\n </th>\n }\n @for (col of columns; track $index) {\n <th\n [style.width]=\"col.width\"\n [pSortableColumn]=\"col.name\"\n [pSortableColumnDisabled]=\"sortableColumnsDisabled.includes(col.name)\"\n >\n <div class=\"senior-header\">\n <span class=\"senior-header-title\">{{ col.label }}</span>\n @if (!sortableColumnsDisabled.includes(col.name)) {\n <p-sortIcon [field]=\"col.name\"> </p-sortIcon>\n }\n </div>\n </th>\n }\n </tr>\n </ng-template>\n <ng-template\n pTemplate=\"body\"\n let-rowData\n let-columns\n let-rowIndex=\"rowIndex\"\n >\n <tr\n sNavigation\n [pSelectableRow]=\"rowData\"\n [pSelectableRowIndex]=\"rowIndex\"\n sDoubleClick\n (onDoubleClick)=\"onTableRowDoubleClick(rowData)\"\n >\n @if (multiple) {\n <td\n style=\"width: 50px\"\n tabindex=\"0\"\n >\n <p-tableCheckbox\n [value]=\"rowData\"\n [pSelectableRow]=\"rowData\"\n >\n </p-tableCheckbox>\n </td>\n }\n @for (col of searchGridFields; track $index) {\n <td\n [style.width]=\"col.width\"\n [ngSwitch]=\"col.type\"\n tabindex=\"0\"\n >\n @switch (col.type) {\n @case ('boolean') {\n <ng-container\n *ngIf=\"isBooleanValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getBooleanLabel(rowData, col.name, col.optionsLabel)\n }}</span>\n </ng-container>\n }\n @case ('date') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name)\n | localizedDate\n : col.calendarLocaleOptions?.dateFormat || 'L'\n | async\n }}</span>\n </ng-container>\n }\n @case ('dateTime') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name) | localizedDate | async\n }}</span>\n </ng-container>\n }\n @case ('localDateTime') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name) | localizedDate | async\n }}</span>\n </ng-container>\n }\n @case ('time') {\n <ng-container\n *ngIf=\"getFieldValue(rowData, col.name); else emptyTemplate\"\n >\n <span>{{\n getFieldValue(rowData, col.name)\n | localizedTime\n : col.calendarLocaleOptions?.dateFormat || 'LTS'\n | async\n }}</span>\n </ng-container>\n }\n @case ('integer') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getIntegerMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('double') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getDoubleMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('money') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getMoneyMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('number') {\n <ng-container *ngIf=\"isNumber(rowData, col.name); else emptyTemplate\">\n <span>\n {{\n getFieldValue(rowData, col.name)\n | localizedBignumber: getNumberMaskConfig(col)\n | async\n }}\n </span>\n </ng-container>\n }\n @case ('enum') {\n <ng-container\n *ngIf=\"\n getLabelForValue(getFieldValue(rowData, col.name), col);\n else emptyTemplate\n \"\n >\n <ng-container\n *ngIf=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col);\n then withBadge;\n else withoutBadge\n \"\n ></ng-container>\n <ng-template #withBadge>\n <s-badge\n [text]=\"\n getLabelForValue(getFieldValue(rowData, col.name), col)\n \"\n [color]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.color\n \"\n [type]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.type\n \"\n [iconClass]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.iconClass\n \"\n [iconPosition]=\"\n getBadgeFromValue(getFieldValue(rowData, col.name), col)\n ?.iconPosition\n \"\n >\n </s-badge>\n </ng-template>\n <ng-template #withoutBadge>\n <span>\n {{\n getLabelForValue(getFieldValue(rowData, col.name), col)\n }}\n </span>\n </ng-template>\n </ng-container>\n }\n @default {\n @if (fieldHasMask(col) && parseValueMaskValue(col, rowData)) {\n <ng-container\n *ngIf=\"\n isNumber(rowData, col.name) ||\n getFieldValue(rowData, col.name)\n \"\n >\n <span>{{\n getFieldValue(rowData, col.name)\n | sMaskFormatter: parseValueMaskValue(col, rowData)\n }}</span>\n </ng-container>\n } @else {\n <ng-container\n *ngIf=\"\n isNumber(rowData, col.name) ||\n getFieldValue(rowData, col.name);\n else emptyTemplate\n \"\n >\n <span>{{ getFieldValue(rowData, col.name) }}</span>\n </ng-container>\n }\n }\n }\n </td>\n }\n </tr>\n </ng-template>\n <ng-template pTemplate=\"paginatorright\">\n <span [attr.data-hidden]=\"loading\">\n {{ printRecordTotalizer() }}\n </span>\n </ng-template>\n </p-table>\n </div>\n </div>\n </div>\n\n <ng-template sTemplate=\"footer\">\n <div class=\"flex w-full justify-end\">\n <s-button\n [id]=\"id + '-cancel-button'\"\n type=\"button\"\n priority=\"link\"\n [label]=\"labelOptions?.cancelLabel || 'platform.angular_components.cancel' | translate\"\n (clicked)=\"hideDialog()\"\n sTooltip=\"(ALT + SHIFT + C)\"\n >\n </s-button>\n <s-button\n [id]=\"id + '-select-button'\"\n type=\"button\"\n [label]=\"labelOptions?.selectLabel || 'platform.angular_components.select' | translate\"\n (clicked)=\"select()\"\n sTooltip=\"(ALT + SHIFT + S)\"\n [disabled]=\"!selected.length\"\n >\n </s-button>\n </div>\n </ng-template>\n }\n</s-dialog>\n\n<ng-template #emptyTemplate>\n <span class=\"sds-empty-value\">\n {{ labelOptions?.emptyFieldLabel || 'platform.angular_components.not_informed' | translate }}\n </span>\n</ng-template>\n\n", styles: ["s-lookup.ng-dirty.ng-invalid .p-inputtext{border-color:#c13018}s-lookup .p-autocomplete-input-multiple{border-top-right-radius:0!important;border-bottom-right-radius:0!important}s-lookup .inputgroup p-autocomplete+button,s-lookup p-autocomplete .ui-autocomplete-dropdown.ui-button{background-color:#fff;border-color:#ccc;border-width:1px 1px 1px 0;color:#333;min-height:35px;height:auto!important;min-width:auto;width:35px!important;overflow:hidden;border-radius:0 4px 4px 0}s-lookup p-autocomplete span.ui-autocomplete-multiple,s-lookup .inputgroup{display:flex}s-lookup .inputgroup p-autocomplete{display:inline-block}s-lookup .native-dropdown p-autocomplete .p-autocomplete>.p-iconwrapper{position:relative;right:19px}s-lookup .inputgroup p-autocomplete .p-autocomplete-input{width:100%}body s-lookup .inputgroup:has(input:focus) .button-addon{border-color:#428bca!important}body s-lookup .inputgroup .button-addon--disabled{opacity:.5}s-lookup .inputgroup p-autocomplete+button:enabled:hover,s-lookup .inputgroup p-autocomplete+button:focus{background-color:highlight(#ccc);border-color:#ccc}s-lookup:not(.ng-dirty.ng-invalid) .inputgroup p-autocomplete .ui-widget .ui-inputtext{border-right-width:1px;border-right-style:solid}s-lookup .ui-autocomplete-input-token{width:100%}s-lookup .ui-autocomplete-input-token input{width:100%}s-lookup .ui-autocomplete .ui-autocomplete-token{max-width:100%}s-lookup .ui-autocomplete .ui-autocomplete-token-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body .s-lookup-modal.p-dialog .p-dialog-content{padding:0;margin-bottom:0;max-height:none}s-lookup .p-table-scrollable-body{min-width:100%}.s-lookup-modal main{padding:0}.s-lookup-modal .s-lookup-modal-container{height:85vh;display:flex;flex-direction:row;width:100%}.s-lookup-modal .s-lookup-modal-container .filter{width:30%;height:auto;flex-grow:0;flex-shrink:0;background-color:#e5eaea80;padding:.571rem}.s-lookup-modal .s-lookup-modal-container .filter form{width:100%;height:100%}.s-lookup-modal .s-lookup-modal-container .filter form .form-content{height:100%;display:flex;flex-direction:column}.s-lookup-modal .s-lookup-modal-container .filter form .form-content .filter-title{padding-left:.5rem}.s-lookup-modal .s-lookup-modal-container .filter form .form-content .form-fields{overflow-y:auto}.s-lookup-modal .s-lookup-modal-container .filter-toggle{margin-top:15px;flex-grow:0;flex-shrink:0;width:35px;border-radius:0 4px 4px 0}.s-lookup-modal .s-lookup-modal-container .filter-toggle button{align-items:center;position:relative;background-color:#e5eaea80;height:35px;width:100%;border:1px solid #e5eaea;outline:none;border-left:none;border-radius:0 4px 4px 0;cursor:pointer;text-decoration:none;text-transform:none;padding:7px;transition:background-color .2s ease-out,color .2s ease-out,border-color .2s ease-out}.s-lookup-modal .s-lookup-modal-container .filter-toggle button:hover,.s-lookup-modal .s-lookup-modal-container .filter-toggle button:focus{background-color:active(rgba(229,234,234,.5));border-color:active(#e5eaea)}.s-lookup-modal .s-lookup-modal-container .content{flex-grow:1;flex-basis:auto;overflow-x:auto;display:flex;flex-direction:column;padding:.5rem}.s-lookup-modal .s-lookup-modal-container .content-child{height:100%}.s-lookup-modal .s-lookup-modal-container .content s-loading-state{height:100%;display:block}.s-lookup-modal .s-lookup-modal-container .content .s-loading-state,.s-lookup-modal .s-lookup-modal-container .content .s-loading-state .state-contents{height:100%}.s-lookup-modal .s-lookup-modal-container .content.empty-content{align-self:center}.s-lookup-modal .s-lookup-modal-container .content.empty-content .content-child{display:none}.s-lookup-modal .s-lookup-modal-container .content p-table>.p-datatable{height:100%;display:flex;flex-direction:column}.s-lookup-modal .s-lookup-modal-container .content p-table>.p-datatable .p-datatable-table-container{flex:1;margin-bottom:0}.inputgroup p-autocomplete{width:calc(100% - 35px)}\n"] }]
1027
+ }], propDecorators: { formControlName: [{
1038
1028
  type: Input
1039
1029
  }], id: [{
1040
1030
  type: Input
@@ -1138,7 +1128,7 @@ class FieldLabelComponent {
1138
1128
  field;
1139
1129
  fieldContainerRef = null;
1140
1130
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FieldLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1141
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FieldLabelComponent, isStandalone: true, selector: "s-field-label", inputs: { field: "field", fieldContainerRef: "fieldContainerRef" }, ngImport: i0, template: "@if (field.label) {\n <span>\n <label\n *sInfoSign=\"\n field.infoSign ?? '';\n displayTime: field.displayTimeInfoSign ?? 0;\n focusedInputRef: fieldContainerRef;\n useFocusedInputRef: field.useInfoSignFocusedInputRef ?? false\n \"\n [for]=\"field.name\"\n class=\"inline-block\"\n [ngClass]=\"{ required: field.required?.() }\"\n >\n {{ field.label }}\n </label>\n </span>\n}\n\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: InfoSignModule }, { kind: "directive", type: i1$5.InfoSignDirective, selector: "[sInfoSign]", inputs: ["sInfoSign", "sInfoSignDisplayTime", "sInfoSignFocusedInputRef", "sInfoSignUseFocusedInputRef"] }] });
1131
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FieldLabelComponent, isStandalone: true, selector: "s-field-label", inputs: { field: "field", fieldContainerRef: "fieldContainerRef" }, ngImport: i0, template: "@if (field.label) {\n <span>\n <label\n *sInfoSign=\"\n field.infoSign ?? '';\n displayTime: field.displayTimeInfoSign ?? 0;\n focusedInputRef: fieldContainerRef;\n useFocusedInputRef: field.useInfoSignFocusedInputRef ?? false\n \"\n [for]=\"field.name\"\n class=\"inline-block\"\n [ngClass]=\"{ required: field.required?.() }\"\n >\n {{ field.label }}\n </label>\n </span>\n}\n\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: InfoSignModule }, { kind: "directive", type: i1$3.InfoSignDirective, selector: "[sInfoSign]", inputs: ["sInfoSign", "sInfoSignDisplayTime", "sInfoSignFocusedInputRef", "sInfoSignUseFocusedInputRef"] }] });
1142
1132
  }
1143
1133
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FieldLabelComponent, decorators: [{
1144
1134
  type: Component,
@@ -1151,17 +1141,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
1151
1141
  }] } });
1152
1142
 
1153
1143
  class AutocompleteFieldComponent {
1154
- changeDetectorRef;
1155
- elementRef;
1144
+ changeDetectorRef = inject(ChangeDetectorRef);
1145
+ elementRef = inject(ElementRef);
1156
1146
  destroyRef = inject(DestroyRef);
1157
1147
  suggestions = [];
1158
1148
  field = input.required();
1159
1149
  formControl = input.required();
1160
1150
  inputRef = null;
1161
- constructor(changeDetectorRef, elementRef) {
1162
- this.changeDetectorRef = changeDetectorRef;
1163
- this.elementRef = elementRef;
1164
- }
1165
1151
  ngOnInit() {
1166
1152
  const suggestionsObservable = this.field().suggestionsObservable;
1167
1153
  if (suggestionsObservable)
@@ -1176,17 +1162,17 @@ class AutocompleteFieldComponent {
1176
1162
  setInputRef() {
1177
1163
  this.inputRef = this.elementRef.nativeElement.querySelector('input');
1178
1164
  }
1179
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AutocompleteFieldComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
1180
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: AutocompleteFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<div [sTooltip]=\"_field.tooltip\">\n <s-lookup\n [id]=\"_field.id || _field.name\"\n [multiple]=\"_field.multiple!\"\n [placeholder]=\"_field.placeholder\"\n [formControl]=\"formControl()\"\n [lookupSuggestions]=\"suggestions\"\n [dataKey]=\"_field.dataKey!\"\n (onLookupRequest)=\"_field.onSearch ? _field.onSearch($event) : null\"\n [lookupDisplayField]=\"_field.displayField\"\n [showSearch]=\"false\"\n [lookupAppendTo]=\"_field.appendTo\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onUnselect)=\"_field.onUnselect ? _field.onUnselect($event) : null\"\n (onClear)=\"_field.onClear ? _field.onClear($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n [lookupEmptyMessage]=\"_field.emptyMessage\"\n >\n </s-lookup>\n</div>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "component", type: LookupComponent, selector: "s-lookup", inputs: ["formControlName", "id", "autocompleteForceSelection", "maxlength", "multiple", "dataKey", "disabled", "showSearch", "lookupSuggestions", "lookupDisplayField", "lookupDisplayFieldTooltip", "lookupEmptyMessage", "lookupAppendTo", "searchEmptyDescription", "searchGridData", "searchTotalRecords", "searchFields", "searchGridFields", "multiSortMeta", "placeholder", "sortableColumnsDisabled", "lookupRowProps", "defaultFilter", "showAddOption", "showEditOption", "showRemoveOption", "dialogFullScreen", "labelOptions"], outputs: ["onLookupRequest", "onSearchRequest", "onFocus", "onBlur", "onKeyUp", "onSelect", "onUnselect", "onClear", "onAdd", "onEdit", "onRemove", "onClearButtonClick"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }] });
1165
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AutocompleteFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1166
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: AutocompleteFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<div [sTooltip]=\"_field.tooltip\">\n <s-lookup\n [id]=\"_field.id || _field.name\"\n [multiple]=\"_field.multiple!\"\n [placeholder]=\"_field.placeholder\"\n [formControl]=\"formControl()\"\n [lookupSuggestions]=\"suggestions\"\n [dataKey]=\"_field.dataKey!\"\n (onLookupRequest)=\"_field.onSearch ? _field.onSearch($event) : null\"\n [lookupDisplayField]=\"_field.displayField\"\n [showSearch]=\"false\"\n [lookupAppendTo]=\"_field.appendTo\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onUnselect)=\"_field.onUnselect ? _field.onUnselect($event) : null\"\n (onClear)=\"_field.onClear ? _field.onClear($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n [lookupEmptyMessage]=\"_field.emptyMessage\"\n >\n </s-lookup>\n</div>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "component", type: LookupComponent, selector: "s-lookup", inputs: ["formControlName", "id", "autocompleteForceSelection", "maxlength", "multiple", "dataKey", "disabled", "showSearch", "lookupSuggestions", "lookupDisplayField", "lookupDisplayFieldTooltip", "lookupEmptyMessage", "lookupAppendTo", "searchEmptyDescription", "searchGridData", "searchTotalRecords", "searchFields", "searchGridFields", "multiSortMeta", "placeholder", "sortableColumnsDisabled", "lookupRowProps", "defaultFilter", "showAddOption", "showEditOption", "showRemoveOption", "dialogFullScreen", "labelOptions"], outputs: ["onLookupRequest", "onSearchRequest", "onFocus", "onBlur", "onKeyUp", "onSelect", "onUnselect", "onClear", "onAdd", "onEdit", "onRemove", "onClearButtonClick"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }] });
1181
1167
  }
1182
1168
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AutocompleteFieldComponent, decorators: [{
1183
1169
  type: Component,
1184
1170
  args: [{ standalone: true, imports: [FieldLabelComponent, LookupComponent, ReactiveFormsModule, TooltipDirective], template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<div [sTooltip]=\"_field.tooltip\">\n <s-lookup\n [id]=\"_field.id || _field.name\"\n [multiple]=\"_field.multiple!\"\n [placeholder]=\"_field.placeholder\"\n [formControl]=\"formControl()\"\n [lookupSuggestions]=\"suggestions\"\n [dataKey]=\"_field.dataKey!\"\n (onLookupRequest)=\"_field.onSearch ? _field.onSearch($event) : null\"\n [lookupDisplayField]=\"_field.displayField\"\n [showSearch]=\"false\"\n [lookupAppendTo]=\"_field.appendTo\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onUnselect)=\"_field.onUnselect ? _field.onUnselect($event) : null\"\n (onClear)=\"_field.onClear ? _field.onClear($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n [lookupEmptyMessage]=\"_field.emptyMessage\"\n >\n </s-lookup>\n</div>\n\n" }]
1185
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }] });
1171
+ }] });
1186
1172
 
1187
1173
  class BignumberFieldComponent {
1188
- localeService;
1189
- changeDetectorRef;
1174
+ localeService = inject(LocaleService);
1175
+ changeDetectorRef = inject(ChangeDetectorRef);
1190
1176
  field = input.required();
1191
1177
  formControl = input.required();
1192
1178
  fieldUtils = inject(FormFieldUtilsService);
@@ -1195,10 +1181,6 @@ class BignumberFieldComponent {
1195
1181
  onComplete = new EventEmitter();
1196
1182
  inputRef = null;
1197
1183
  ngUnsubscribe = new Subject();
1198
- constructor(localeService, changeDetectorRef) {
1199
- this.localeService = localeService;
1200
- this.changeDetectorRef = changeDetectorRef;
1201
- }
1202
1184
  ngOnInit() {
1203
1185
  const field = this.field();
1204
1186
  field.scale = field.scale ?? 2;
@@ -1272,8 +1254,8 @@ class BignumberFieldComponent {
1272
1254
  this.field().scale = this.field().type === 'integer' ? 0 : 2;
1273
1255
  }
1274
1256
  }
1275
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BignumberFieldComponent, deps: [{ token: i1$4.LocaleService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1276
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BignumberFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onInput: "onInput", onFocus: "onFocus", onComplete: "onComplete" }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true }], ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef!.nativeElement\"\n />\n}\n@if (_field.mask) {\n @let autoClear = _field.type === 'number' ? (_field.autoClear ?? true) : false;\n <p-inputMask\n #inputRef\n type=\"text\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [mask]=\"fieldUtils.getFieldPropertyMask(_field.mask)\"\n [placeholder]=\"_field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [autoClear]=\"autoClear\"\n >\n </p-inputMask>\n} @else {\n <div class=\"bignumber-field\">\n @if (_field.leftAddon) {\n <div class=\"button-left\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.leftAddon }\"></ng-container>\n </div>\n }\n @let allowNegative = _field.type === 'number' ? (_field.allowNegative ?? true) : false;\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sBignumberInput\n [allowNegative]=\"allowNegative\"\n [precision]=\"\n fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\n \"\n [scale]=\"fieldUtils.isFunction(_field.scale) ? fieldUtils.trigger(_field.scale) : _field.scale\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator ?? ''\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator ?? ''\"\n [alignTo]=\"_field.alignTo ?? 'left'\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n class=\"input-text\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n @if (_field.rightAddon) {\n <div class=\"button-right\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.rightAddon }\"></ng-container>\n </div>\n }\n </div>\n}\n\n<ng-template\n #addonRender\n let-button=\"button\"\n>\n <s-button\n [label]=\"button.label\"\n [priority]=\"button.priority ?? 'default'\"\n [iconClass]=\"button.icon\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(button.leftAddon)\"\n [auxiliary]=\"false\"\n (clicked)=\"button.callback?.()\"\n />\n</ng-template>\n\n", styles: ["s-number-field.ng-dirty.ng-invalid .p-inputtext{border-color:#c13018}s-number-field.ng-dirty.ng-invalid .p-inputtext:hover{border-color:highlight(#c13018)}.bignumber-field{display:flex;width:100%}.bignumber-field .input-text{width:auto;flex-grow:1}.bignumber-field:has(.button-left) .input-text{border-top-left-radius:0;border-bottom-left-radius:0}.bignumber-field:has(.button-left) .button-left button{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.bignumber-field:has(input:focus) .button-left button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-left button{border-color:#c13018!important}.bignumber-field:has(.button-right) .input-text{border-top-right-radius:0;border-bottom-right-radius:0}.bignumber-field:has(.button-right) .button-right button{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.bignumber-field:has(input:focus) .button-right button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-right button{border-color:#c13018!important}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: InputMaskModule }, { kind: "component", type: i2$1.InputMask, selector: "p-inputmask, p-inputMask, p-input-mask", inputs: ["type", "slotChar", "autoClear", "showClear", "style", "inputId", "styleClass", "placeholder", "size", "maxlength", "tabindex", "title", "variant", "ariaLabel", "ariaLabelledBy", "ariaRequired", "disabled", "readonly", "unmask", "name", "required", "characterPattern", "autofocus", "autoFocus", "autocomplete", "keepBuffer", "mask"], outputs: ["onComplete", "onFocus", "onBlur", "onInput", "onKeydown", "onClear"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: BignumberInputModule }, { kind: "directive", type: i4$1.BignumberInputDirective, selector: "input[sBignumberInput]", inputs: ["precision", "scale", "minDecimalPlaces", "maxDecimalPlaces", "decimalSeparator", "thousandsSeparator", "thousandSeparator", "alignTo", "allowNegative", "placeholder"], outputs: ["minDecimalPlacesChange", "maxDecimalPlacesChange", "decimalSeparatorChange", "thousandSeparatorChange", "placeholderChange", "pasteRejected"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i5.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None });
1257
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BignumberFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1258
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BignumberFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onInput: "onInput", onFocus: "onFocus", onComplete: "onComplete" }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true }], ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef!.nativeElement\"\n />\n}\n@if (_field.mask) {\n @let autoClear = _field.type === 'number' ? (_field.autoClear ?? true) : false;\n <p-inputMask\n #inputRef\n type=\"text\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [mask]=\"fieldUtils.getFieldPropertyMask(_field.mask)\"\n [placeholder]=\"_field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [autoClear]=\"autoClear\"\n >\n </p-inputMask>\n} @else {\n <div class=\"bignumber-field\">\n @if (_field.leftAddon) {\n <div class=\"button-left\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.leftAddon }\"></ng-container>\n </div>\n }\n @let allowNegative = _field.type === 'number' ? (_field.allowNegative ?? true) : false;\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sBignumberInput\n [allowNegative]=\"allowNegative\"\n [precision]=\"\n fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\n \"\n [scale]=\"fieldUtils.isFunction(_field.scale) ? fieldUtils.trigger(_field.scale) : _field.scale\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator ?? ''\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator ?? ''\"\n [alignTo]=\"_field.alignTo ?? 'left'\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n class=\"input-text\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n @if (_field.rightAddon) {\n <div class=\"button-right\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.rightAddon }\"></ng-container>\n </div>\n }\n </div>\n}\n\n<ng-template\n #addonRender\n let-button=\"button\"\n>\n <s-button\n [label]=\"button.label\"\n [priority]=\"button.priority ?? 'default'\"\n [iconClass]=\"button.icon\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(button.leftAddon)\"\n [auxiliary]=\"false\"\n (clicked)=\"button.callback?.()\"\n />\n</ng-template>\n\n", styles: ["s-number-field.ng-dirty.ng-invalid .p-inputtext{border-color:#c13018}s-number-field.ng-dirty.ng-invalid .p-inputtext:hover{border-color:highlight(#c13018)}.bignumber-field{display:flex;width:100%}.bignumber-field .input-text{width:auto;flex-grow:1}.bignumber-field:has(.button-left) .input-text{border-top-left-radius:0;border-bottom-left-radius:0}.bignumber-field:has(.button-left) .button-left button{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.bignumber-field:has(input:focus) .button-left button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-left button{border-color:#c13018!important}.bignumber-field:has(.button-right) .input-text{border-top-right-radius:0;border-bottom-right-radius:0}.bignumber-field:has(.button-right) .button-right button{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.bignumber-field:has(input:focus) .button-right button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-right button{border-color:#c13018!important}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: InputMaskModule }, { kind: "component", type: i1$4.InputMask, selector: "p-inputmask, p-inputMask, p-input-mask", inputs: ["type", "slotChar", "autoClear", "showClear", "style", "inputId", "styleClass", "placeholder", "size", "maxlength", "tabindex", "title", "variant", "ariaLabel", "ariaLabelledBy", "ariaRequired", "disabled", "readonly", "unmask", "name", "required", "characterPattern", "autofocus", "autoFocus", "autocomplete", "keepBuffer", "mask"], outputs: ["onComplete", "onFocus", "onBlur", "onInput", "onKeydown", "onClear"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: BignumberInputModule }, { kind: "directive", type: i3$1.BignumberInputDirective, selector: "input[sBignumberInput]", inputs: ["precision", "scale", "minDecimalPlaces", "maxDecimalPlaces", "decimalSeparator", "thousandsSeparator", "thousandSeparator", "alignTo", "allowNegative", "placeholder"], outputs: ["minDecimalPlacesChange", "maxDecimalPlacesChange", "decimalSeparatorChange", "thousandSeparatorChange", "placeholderChange", "pasteRejected"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None });
1277
1259
  }
1278
1260
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BignumberFieldComponent, decorators: [{
1279
1261
  type: Component,
@@ -1288,7 +1270,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
1288
1270
  InputTextModule,
1289
1271
  NgTemplateOutlet,
1290
1272
  ], template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef!.nativeElement\"\n />\n}\n@if (_field.mask) {\n @let autoClear = _field.type === 'number' ? (_field.autoClear ?? true) : false;\n <p-inputMask\n #inputRef\n type=\"text\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [mask]=\"fieldUtils.getFieldPropertyMask(_field.mask)\"\n [placeholder]=\"_field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [autoClear]=\"autoClear\"\n >\n </p-inputMask>\n} @else {\n <div class=\"bignumber-field\">\n @if (_field.leftAddon) {\n <div class=\"button-left\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.leftAddon }\"></ng-container>\n </div>\n }\n @let allowNegative = _field.type === 'number' ? (_field.allowNegative ?? true) : false;\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sBignumberInput\n [allowNegative]=\"allowNegative\"\n [precision]=\"\n fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\n \"\n [scale]=\"fieldUtils.isFunction(_field.scale) ? fieldUtils.trigger(_field.scale) : _field.scale\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator ?? ''\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator ?? ''\"\n [alignTo]=\"_field.alignTo ?? 'left'\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n class=\"input-text\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n @if (_field.rightAddon) {\n <div class=\"button-right\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.rightAddon }\"></ng-container>\n </div>\n }\n </div>\n}\n\n<ng-template\n #addonRender\n let-button=\"button\"\n>\n <s-button\n [label]=\"button.label\"\n [priority]=\"button.priority ?? 'default'\"\n [iconClass]=\"button.icon\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(button.leftAddon)\"\n [auxiliary]=\"false\"\n (clicked)=\"button.callback?.()\"\n />\n</ng-template>\n\n", styles: ["s-number-field.ng-dirty.ng-invalid .p-inputtext{border-color:#c13018}s-number-field.ng-dirty.ng-invalid .p-inputtext:hover{border-color:highlight(#c13018)}.bignumber-field{display:flex;width:100%}.bignumber-field .input-text{width:auto;flex-grow:1}.bignumber-field:has(.button-left) .input-text{border-top-left-radius:0;border-bottom-left-radius:0}.bignumber-field:has(.button-left) .button-left button{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.bignumber-field:has(input:focus) .button-left button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-left button{border-color:#c13018!important}.bignumber-field:has(.button-right) .input-text{border-top-right-radius:0;border-bottom-right-radius:0}.bignumber-field:has(.button-right) .button-right button{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.bignumber-field:has(input:focus) .button-right button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-right button{border-color:#c13018!important}\n"] }]
1291
- }], ctorParameters: () => [{ type: i1$4.LocaleService }, { type: i0.ChangeDetectorRef }], propDecorators: { onInput: [{
1273
+ }], propDecorators: { onInput: [{
1292
1274
  type: Output
1293
1275
  }], onFocus: [{
1294
1276
  type: Output
@@ -1306,7 +1288,7 @@ class BooleanFieldComponent {
1306
1288
  this.formControl().reset();
1307
1289
  }
1308
1290
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BooleanFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1309
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BooleanFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n<ng-template\n #radioButtonRender\n let-value=\"value\"\n let-label=\"label\"\n let-inputIdAppend=\"inputIdAppend\"\n>\n @let inputId = (_field.id || _field.name) + inputIdAppend;\n <s-radiobutton\n [name]=\"_field.name\"\n [value]=\"value\"\n [formControl]=\"formControl()\"\n [inputId]=\"inputId\"\n [label]=\"label\"\n (focusedInput)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (inputFocusLost)=\"_field.onBlur ? _field.onBlur($event) : null\"\n />\n</ng-template>\n\n<s-field-label [field]=\"_field\"></s-field-label>\n\n@if (_field.verticalAlignment) {\n <div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <ng-template\n *ngTemplateOutlet=\"\n radioButtonRender;\n context: { value: true, label: _field.optionsLabel.true, inputIdAppend: '-1' }\n \"\n />\n </div>\n <div class=\"ui-g-12\">\n <ng-template\n *ngTemplateOutlet=\"\n radioButtonRender;\n context: { value: false, label: _field.optionsLabel.false, inputIdAppend: '-2' }\n \"\n />\n </div>\n @if (!_field.showClear && !!_field.required && !_field.required()) {\n <div class=\"ui-g-12\">\n <ng-template\n *ngTemplateOutlet=\"\n radioButtonRender;\n context: { value: null, label: _field.optionsLabel.empty, inputIdAppend: '-3' }\n \"\n />\n </div>\n }\n <div>\n @if (_field.showClear && !_field.required?.() && !formControl().disabled) {\n <s-button\n [label]=\"_field.optionsLabel.clear || 'Clear selection'\"\n (clicked)=\"onClear()\"\n priority=\"link\"\n >\n </s-button>\n }\n </div>\n </div>\n} @else {\n <div class=\"ui-g horizontal-radio-buttons-container\">\n <ng-template\n *ngTemplateOutlet=\"\n radioButtonRender;\n context: { value: true, label: _field.optionsLabel.true, inputIdAppend: '-1' }\n \"\n />\n\n <ng-template\n *ngTemplateOutlet=\"\n radioButtonRender;\n context: { value: false, label: _field.optionsLabel.false, inputIdAppend: '-2' }\n \"\n />\n\n <ng-template\n *ngTemplateOutlet=\"\n radioButtonRender;\n context: { value: null, label: _field.optionsLabel.empty, inputIdAppend: '-3' }\n \"\n />\n\n @if (_field.showClear && !_field.required?.() && !formControl().disabled) {\n <s-button\n style=\"margin-left: 40px\"\n [label]=\"_field.optionsLabel.clear || 'Clear selection'\"\n (clicked)=\"onClear()\"\n priority=\"link\"\n >\n </s-button>\n }\n </div>\n}\n\n", styles: [".horizontal-radio-buttons-container{gap:20px 40px;.radio-button-item{margin:0}}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "component", type: RadioButtonComponent, selector: "s-radiobutton", inputs: ["buttonDisabled", "label", "name", "value", "inputId"], outputs: ["buttonDisabledChange", "valueChange", "focusedInput", "inputFocusLost"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }] });
1291
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BooleanFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n<ng-template\n #radioButtonRender\n let-value=\"value\"\n let-label=\"label\"\n let-inputIdAppend=\"inputIdAppend\"\n>\n @let inputId = (_field.id || _field.name) + inputIdAppend;\n <s-radiobutton\n [name]=\"_field.name\"\n [value]=\"value\"\n [formControl]=\"formControl()\"\n [inputId]=\"inputId\"\n [label]=\"label\"\n (focusedInput)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (inputFocusLost)=\"_field.onBlur ? _field.onBlur($event) : null\"\n />\n</ng-template>\n\n<s-field-label [field]=\"_field\"></s-field-label>\n\n@if (_field.verticalAlignment) {\n <div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <ng-template\n *ngTemplateOutlet=\"\n radioButtonRender;\n context: { value: true, label: _field.optionsLabel.true, inputIdAppend: '-1' }\n \"\n />\n </div>\n <div class=\"ui-g-12\">\n <ng-template\n *ngTemplateOutlet=\"\n radioButtonRender;\n context: { value: false, label: _field.optionsLabel.false, inputIdAppend: '-2' }\n \"\n />\n </div>\n @if (!_field.showClear && !!_field.required && !_field.required()) {\n <div class=\"ui-g-12\">\n <ng-template\n *ngTemplateOutlet=\"\n radioButtonRender;\n context: { value: null, label: _field.optionsLabel.empty, inputIdAppend: '-3' }\n \"\n />\n </div>\n }\n <div>\n @if (_field.showClear && !_field.required?.() && !formControl().disabled) {\n <s-button\n [label]=\"_field.optionsLabel.clear || 'Clear selection'\"\n (clicked)=\"onClear()\"\n priority=\"link\"\n >\n </s-button>\n }\n </div>\n </div>\n} @else {\n <div class=\"ui-g horizontal-radio-buttons-container\">\n <ng-template\n *ngTemplateOutlet=\"\n radioButtonRender;\n context: { value: true, label: _field.optionsLabel.true, inputIdAppend: '-1' }\n \"\n />\n\n <ng-template\n *ngTemplateOutlet=\"\n radioButtonRender;\n context: { value: false, label: _field.optionsLabel.false, inputIdAppend: '-2' }\n \"\n />\n\n <ng-template\n *ngTemplateOutlet=\"\n radioButtonRender;\n context: { value: null, label: _field.optionsLabel.empty, inputIdAppend: '-3' }\n \"\n />\n\n @if (_field.showClear && !_field.required?.() && !formControl().disabled) {\n <s-button\n style=\"margin-left: 40px\"\n [label]=\"_field.optionsLabel.clear || 'Clear selection'\"\n (clicked)=\"onClear()\"\n priority=\"link\"\n >\n </s-button>\n }\n </div>\n}\n\n", styles: [".horizontal-radio-buttons-container{gap:20px 40px;.radio-button-item{margin:0}}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "component", type: RadioButtonComponent, selector: "s-radiobutton", inputs: ["buttonDisabled", "label", "name", "value", "inputId"], outputs: ["buttonDisabledChange", "valueChange", "focusedInput", "inputFocusLost"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }] });
1310
1292
  }
1311
1293
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BooleanFieldComponent, decorators: [{
1312
1294
  type: Component,
@@ -1317,7 +1299,7 @@ class BooleanSwitchFieldComponent {
1317
1299
  field = input.required();
1318
1300
  formControl = input.required();
1319
1301
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BooleanSwitchFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1320
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BooleanSwitchFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n<div class=\"ui-grid ui-grid-responsive ui-grid-pad p-fluid\">\n <div class=\"ui-grid-row\">\n <div class=\"i-grid-col-1\">\n <s-switch\n [id]=\"_field.id || _field.name\"\n [inputName]=\"_field.name\"\n [formControl]=\"formControl()\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n (valueChanged)=\"_field.onChange ? _field.onChange($event) : null\"\n >\n </s-switch>\n </div>\n @if (_field.optionsLabel) {\n <div class=\"i-grid-col-1\">\n @if (formControl().value) {\n <span>{{ _field.optionsLabel.true }}</span>\n } @else {\n <span>{{ _field.optionsLabel.false }}</span>\n }\n </div>\n }\n </div>\n</div>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: SwitchModule }, { kind: "component", type: i1$6.SwitchComponent, selector: "s-switch", inputs: ["readonly", "trueLabel", "falseLabel", "inputId", "label", "inputName", "disabled", "value", "showStatusLabel"], outputs: ["valueChanged"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3$1.TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }] });
1302
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BooleanSwitchFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n<div class=\"ui-grid ui-grid-responsive ui-grid-pad p-fluid\">\n <div class=\"ui-grid-row\">\n <div class=\"i-grid-col-1\">\n <s-switch\n [id]=\"_field.id || _field.name\"\n [inputName]=\"_field.name\"\n [formControl]=\"formControl()\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n (valueChanged)=\"_field.onChange ? _field.onChange($event) : null\"\n >\n </s-switch>\n </div>\n @if (_field.optionsLabel) {\n <div class=\"i-grid-col-1\">\n @if (formControl().value) {\n <span>{{ _field.optionsLabel.true }}</span>\n } @else {\n <span>{{ _field.optionsLabel.false }}</span>\n }\n </div>\n }\n </div>\n</div>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: SwitchModule }, { kind: "component", type: i1$5.SwitchComponent, selector: "s-switch", inputs: ["readonly", "trueLabel", "falseLabel", "inputId", "label", "inputName", "disabled", "value", "showStatusLabel"], outputs: ["valueChanged"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3$2.TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }] });
1321
1303
  }
1322
1304
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BooleanSwitchFieldComponent, decorators: [{
1323
1305
  type: Component,
@@ -1350,7 +1332,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
1350
1332
  }] });
1351
1333
 
1352
1334
  class CalendarFieldComponent {
1353
- changeDetectorRef;
1335
+ changeDetectorRef = inject(ChangeDetectorRef);
1354
1336
  field = input.required();
1355
1337
  formControl = input.required();
1356
1338
  translateService = inject(TranslateService);
@@ -1417,9 +1399,6 @@ class CalendarFieldComponent {
1417
1399
  hourFormat: this.translateService.instant('platform.angular_components.hour_format'),
1418
1400
  };
1419
1401
  primengConfig = inject(PrimeNG);
1420
- constructor(changeDetectorRef) {
1421
- this.changeDetectorRef = changeDetectorRef;
1422
- }
1423
1402
  ngOnInit() {
1424
1403
  const field = this.field();
1425
1404
  if (isNullOrUndefined(field.selectionMode)) {
@@ -1461,13 +1440,13 @@ class CalendarFieldComponent {
1461
1440
  const type = this.field()?.type;
1462
1441
  return type === 'localDateTime' || type === 'dateTime' || type === 'time';
1463
1442
  }
1464
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CalendarFieldComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1465
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CalendarFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true }], ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n >\n </s-field-label>\n}\n\n@if (_field) {\n <div [sTooltip]=\"_field.tooltip\">\n <!-- A diretiva sCalendarMask n\u00E3o est\u00E1 suportando sele\u00E7\u00E3o m\u00FAltipla. A forma como ela foi escrita n\u00E3o permite identificar a quantidade de datas\n que est\u00E3o sendo selecionadas. Removi o uso dela quando est\u00E1 com selectionMode=multiple. Analisar a remove\u00E7\u00E3o completa desta diretiva. -->\n @if (_field.selectionMode !== 'multiple') {\n <p-datepicker\n #calendar\n sCalendarMask\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [showIcon]=\"true\"\n [timeOnly]=\"timeOnly\"\n [selectionMode]=\"_field.selectionMode\"\n [rangeSeparator]=\"_field.rangeSeparator ? _field.rangeSeparator : calendar.rangeSeparator\"\n [showTime]=\"showTime\"\n [showSeconds]=\"_field.showSeconds\"\n [showOnFocus]=\"_field.showOnFocus\"\n [formControl]=\"formControl()\"\n [icon]=\"timeOnly ? 'fa fa-clock' : 'fa fa-calendar'\"\n [minDate]=\"_field.minDate\"\n [maxDate]=\"_field.maxDate\"\n [defaultDate]=\"_field.defaultDate ? _field.defaultDate : calendar.defaultDate\"\n [dateFormat]=\"\n _field.calendarLocaleOptions?.dateFormat || 'platform.angular_components.date_format' | translate\n \"\n [hourFormat]=\"\n _field.calendarLocaleOptions?.hourFormat || 'platform.angular_components.hour_format' | translate\n \"\n [view]=\"_field.view ? _field.view : calendar.view\"\n [placeholder]=\"_field.placeholder\"\n inputStyleClass=\"mousetrap\"\n [appendTo]=\"_field.appendTo\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onClose)=\"_field.onClose ? _field.onClose($event) : null\"\n (onTodayClick)=\"_field.onTodayClick ? _field.onTodayClick($event) : null\"\n (onClearClick)=\"_field.onClearClick ? _field.onClearClick($event) : null\"\n (onMonthChange)=\"_field.onMonthChange ? _field.onMonthChange($event) : null\"\n (onYearChange)=\"_field.onYearChange ? _field.onYearChange($event) : null\"\n >\n </p-datepicker>\n } @else {\n <!-- A \u00FAnica diferen\u00E7a deste bloco \u00E9 a remo\u00E7\u00E3o da diretiva sCalendarMask. -->\n <p-datepicker\n #calendar\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [showIcon]=\"true\"\n [timeOnly]=\"timeOnly\"\n [selectionMode]=\"_field.selectionMode\"\n [rangeSeparator]=\"_field.rangeSeparator ? _field.rangeSeparator : calendar.rangeSeparator\"\n [showTime]=\"showTime\"\n [showSeconds]=\"_field.showSeconds\"\n [showOnFocus]=\"_field.showOnFocus\"\n [formControl]=\"formControl()\"\n [icon]=\"timeOnly ? 'fa fa-clock' : 'fa fa-calendar'\"\n [minDate]=\"_field.minDate\"\n [maxDate]=\"_field.maxDate\"\n [defaultDate]=\"_field.defaultDate ? _field.defaultDate : calendar.defaultDate\"\n [dateFormat]=\"\n _field.calendarLocaleOptions?.dateFormat || 'platform.angular_components.date_format' | translate\n \"\n [hourFormat]=\"\n _field.calendarLocaleOptions?.hourFormat || 'platform.angular_components.hour_format' | translate\n \"\n [view]=\"_field.view ? _field.view : calendar.view\"\n [placeholder]=\"_field.placeholder\"\n inputStyleClass=\"mousetrap\"\n [appendTo]=\"_field.appendTo\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onClose)=\"_field.onClose ? _field.onClose($event) : null\"\n (onTodayClick)=\"_field.onTodayClick ? _field.onTodayClick($event) : null\"\n (onClearClick)=\"_field.onClearClick ? _field.onClearClick($event) : null\"\n (onMonthChange)=\"_field.onMonthChange ? _field.onMonthChange($event) : null\"\n (onYearChange)=\"_field.onYearChange ? _field.onYearChange($event) : null\"\n [showTransitionOptions]=\"'0ms'\"\n [hideTransitionOptions]=\"'0ms'\"\n >\n </p-datepicker>\n }\n </div>\n}\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: DatePickerModule }, { kind: "component", type: i2$2.DatePicker, selector: "p-datePicker, p-datepicker, p-date-picker", inputs: ["iconDisplay", "style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "fluid", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "variant", "size", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] });
1443
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CalendarFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1444
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CalendarFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true }], ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n >\n </s-field-label>\n}\n\n@if (_field) {\n <div [sTooltip]=\"_field.tooltip\">\n <!-- A diretiva sCalendarMask n\u00E3o est\u00E1 suportando sele\u00E7\u00E3o m\u00FAltipla. A forma como ela foi escrita n\u00E3o permite identificar a quantidade de datas\n que est\u00E3o sendo selecionadas. Removi o uso dela quando est\u00E1 com selectionMode=multiple. Analisar a remove\u00E7\u00E3o completa desta diretiva. -->\n @if (_field.selectionMode !== 'multiple') {\n <p-datepicker\n #calendar\n sCalendarMask\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [showIcon]=\"true\"\n [timeOnly]=\"timeOnly\"\n [selectionMode]=\"_field.selectionMode\"\n [rangeSeparator]=\"_field.rangeSeparator ? _field.rangeSeparator : calendar.rangeSeparator\"\n [showTime]=\"showTime\"\n [showSeconds]=\"_field.showSeconds\"\n [showOnFocus]=\"_field.showOnFocus\"\n [formControl]=\"formControl()\"\n [icon]=\"timeOnly ? 'fa fa-clock' : 'fa fa-calendar'\"\n [minDate]=\"_field.minDate\"\n [maxDate]=\"_field.maxDate\"\n [defaultDate]=\"_field.defaultDate ? _field.defaultDate : calendar.defaultDate\"\n [dateFormat]=\"\n _field.calendarLocaleOptions?.dateFormat || 'platform.angular_components.date_format' | translate\n \"\n [hourFormat]=\"\n _field.calendarLocaleOptions?.hourFormat || 'platform.angular_components.hour_format' | translate\n \"\n [view]=\"_field.view ? _field.view : calendar.view\"\n [placeholder]=\"_field.placeholder\"\n inputStyleClass=\"mousetrap\"\n [appendTo]=\"_field.appendTo\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onClose)=\"_field.onClose ? _field.onClose($event) : null\"\n (onTodayClick)=\"_field.onTodayClick ? _field.onTodayClick($event) : null\"\n (onClearClick)=\"_field.onClearClick ? _field.onClearClick($event) : null\"\n (onMonthChange)=\"_field.onMonthChange ? _field.onMonthChange($event) : null\"\n (onYearChange)=\"_field.onYearChange ? _field.onYearChange($event) : null\"\n >\n </p-datepicker>\n } @else {\n <!-- A \u00FAnica diferen\u00E7a deste bloco \u00E9 a remo\u00E7\u00E3o da diretiva sCalendarMask. -->\n <p-datepicker\n #calendar\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [showIcon]=\"true\"\n [timeOnly]=\"timeOnly\"\n [selectionMode]=\"_field.selectionMode\"\n [rangeSeparator]=\"_field.rangeSeparator ? _field.rangeSeparator : calendar.rangeSeparator\"\n [showTime]=\"showTime\"\n [showSeconds]=\"_field.showSeconds\"\n [showOnFocus]=\"_field.showOnFocus\"\n [formControl]=\"formControl()\"\n [icon]=\"timeOnly ? 'fa fa-clock' : 'fa fa-calendar'\"\n [minDate]=\"_field.minDate\"\n [maxDate]=\"_field.maxDate\"\n [defaultDate]=\"_field.defaultDate ? _field.defaultDate : calendar.defaultDate\"\n [dateFormat]=\"\n _field.calendarLocaleOptions?.dateFormat || 'platform.angular_components.date_format' | translate\n \"\n [hourFormat]=\"\n _field.calendarLocaleOptions?.hourFormat || 'platform.angular_components.hour_format' | translate\n \"\n [view]=\"_field.view ? _field.view : calendar.view\"\n [placeholder]=\"_field.placeholder\"\n inputStyleClass=\"mousetrap\"\n [appendTo]=\"_field.appendTo\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onClose)=\"_field.onClose ? _field.onClose($event) : null\"\n (onTodayClick)=\"_field.onTodayClick ? _field.onTodayClick($event) : null\"\n (onClearClick)=\"_field.onClearClick ? _field.onClearClick($event) : null\"\n (onMonthChange)=\"_field.onMonthChange ? _field.onMonthChange($event) : null\"\n (onYearChange)=\"_field.onYearChange ? _field.onYearChange($event) : null\"\n [showTransitionOptions]=\"'0ms'\"\n [hideTransitionOptions]=\"'0ms'\"\n >\n </p-datepicker>\n }\n </div>\n}\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: DatePickerModule }, { kind: "component", type: i2$2.DatePicker, selector: "p-datePicker, p-datepicker, p-date-picker", inputs: ["iconDisplay", "style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "fluid", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "variant", "size", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
1466
1445
  }
1467
1446
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CalendarFieldComponent, decorators: [{
1468
1447
  type: Component,
1469
1448
  args: [{ standalone: true, imports: [FieldLabelComponent, ReactiveFormsModule, DatePickerModule, TooltipDirective, TranslateModule], template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n >\n </s-field-label>\n}\n\n@if (_field) {\n <div [sTooltip]=\"_field.tooltip\">\n <!-- A diretiva sCalendarMask n\u00E3o est\u00E1 suportando sele\u00E7\u00E3o m\u00FAltipla. A forma como ela foi escrita n\u00E3o permite identificar a quantidade de datas\n que est\u00E3o sendo selecionadas. Removi o uso dela quando est\u00E1 com selectionMode=multiple. Analisar a remove\u00E7\u00E3o completa desta diretiva. -->\n @if (_field.selectionMode !== 'multiple') {\n <p-datepicker\n #calendar\n sCalendarMask\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [showIcon]=\"true\"\n [timeOnly]=\"timeOnly\"\n [selectionMode]=\"_field.selectionMode\"\n [rangeSeparator]=\"_field.rangeSeparator ? _field.rangeSeparator : calendar.rangeSeparator\"\n [showTime]=\"showTime\"\n [showSeconds]=\"_field.showSeconds\"\n [showOnFocus]=\"_field.showOnFocus\"\n [formControl]=\"formControl()\"\n [icon]=\"timeOnly ? 'fa fa-clock' : 'fa fa-calendar'\"\n [minDate]=\"_field.minDate\"\n [maxDate]=\"_field.maxDate\"\n [defaultDate]=\"_field.defaultDate ? _field.defaultDate : calendar.defaultDate\"\n [dateFormat]=\"\n _field.calendarLocaleOptions?.dateFormat || 'platform.angular_components.date_format' | translate\n \"\n [hourFormat]=\"\n _field.calendarLocaleOptions?.hourFormat || 'platform.angular_components.hour_format' | translate\n \"\n [view]=\"_field.view ? _field.view : calendar.view\"\n [placeholder]=\"_field.placeholder\"\n inputStyleClass=\"mousetrap\"\n [appendTo]=\"_field.appendTo\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onClose)=\"_field.onClose ? _field.onClose($event) : null\"\n (onTodayClick)=\"_field.onTodayClick ? _field.onTodayClick($event) : null\"\n (onClearClick)=\"_field.onClearClick ? _field.onClearClick($event) : null\"\n (onMonthChange)=\"_field.onMonthChange ? _field.onMonthChange($event) : null\"\n (onYearChange)=\"_field.onYearChange ? _field.onYearChange($event) : null\"\n >\n </p-datepicker>\n } @else {\n <!-- A \u00FAnica diferen\u00E7a deste bloco \u00E9 a remo\u00E7\u00E3o da diretiva sCalendarMask. -->\n <p-datepicker\n #calendar\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [showIcon]=\"true\"\n [timeOnly]=\"timeOnly\"\n [selectionMode]=\"_field.selectionMode\"\n [rangeSeparator]=\"_field.rangeSeparator ? _field.rangeSeparator : calendar.rangeSeparator\"\n [showTime]=\"showTime\"\n [showSeconds]=\"_field.showSeconds\"\n [showOnFocus]=\"_field.showOnFocus\"\n [formControl]=\"formControl()\"\n [icon]=\"timeOnly ? 'fa fa-clock' : 'fa fa-calendar'\"\n [minDate]=\"_field.minDate\"\n [maxDate]=\"_field.maxDate\"\n [defaultDate]=\"_field.defaultDate ? _field.defaultDate : calendar.defaultDate\"\n [dateFormat]=\"\n _field.calendarLocaleOptions?.dateFormat || 'platform.angular_components.date_format' | translate\n \"\n [hourFormat]=\"\n _field.calendarLocaleOptions?.hourFormat || 'platform.angular_components.hour_format' | translate\n \"\n [view]=\"_field.view ? _field.view : calendar.view\"\n [placeholder]=\"_field.placeholder\"\n inputStyleClass=\"mousetrap\"\n [appendTo]=\"_field.appendTo\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onClose)=\"_field.onClose ? _field.onClose($event) : null\"\n (onTodayClick)=\"_field.onTodayClick ? _field.onTodayClick($event) : null\"\n (onClearClick)=\"_field.onClearClick ? _field.onClearClick($event) : null\"\n (onMonthChange)=\"_field.onMonthChange ? _field.onMonthChange($event) : null\"\n (onYearChange)=\"_field.onYearChange ? _field.onYearChange($event) : null\"\n [showTransitionOptions]=\"'0ms'\"\n [hideTransitionOptions]=\"'0ms'\"\n >\n </p-datepicker>\n }\n </div>\n}\n\n" }]
1470
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { calendar: [{
1449
+ }], propDecorators: { calendar: [{
1471
1450
  type: ViewChild,
1472
1451
  args: ['calendar']
1473
1452
  }] } });
@@ -1476,7 +1455,7 @@ class CheckboxFieldComponent {
1476
1455
  field = input.required();
1477
1456
  formControl = input.required();
1478
1457
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CheckboxFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1479
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: CheckboxFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<s-checkbox-list\n [data]=\"field().data\"\n [formControl]=\"formControl()\"\n>\n</s-checkbox-list>\n\n", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: CheckboxListModule }, { kind: "component", type: i2$3.CheckboxListComponent, selector: "s-checkbox-list", inputs: ["data"] }] });
1458
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: CheckboxFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<s-checkbox-list\n [data]=\"field().data\"\n [formControl]=\"formControl()\"\n>\n</s-checkbox-list>\n\n", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: CheckboxListModule }, { kind: "component", type: i2$3.CheckboxListComponent, selector: "s-checkbox-list", inputs: ["data"] }] });
1480
1459
  }
1481
1460
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CheckboxFieldComponent, decorators: [{
1482
1461
  type: Component,
@@ -1484,19 +1463,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
1484
1463
  }] });
1485
1464
 
1486
1465
  class ChipsFieldComponent {
1487
- clipboard;
1488
- changeDetectorRef;
1489
- elementRef;
1466
+ clipboard = inject(Clipboard);
1467
+ changeDetectorRef = inject(ChangeDetectorRef);
1468
+ elementRef = inject(ElementRef);
1490
1469
  field = input.required();
1491
1470
  formControl = input.required();
1492
1471
  feedbackMessageVisible = false;
1493
1472
  copyButtonVisible = true;
1494
1473
  inputRef = null;
1495
- constructor(clipboard, changeDetectorRef, elementRef) {
1496
- this.clipboard = clipboard;
1497
- this.changeDetectorRef = changeDetectorRef;
1498
- this.elementRef = elementRef;
1499
- }
1500
1474
  onCopyFieldContent() {
1501
1475
  if (this.formControl().value) {
1502
1476
  this.copyButtonVisible = false;
@@ -1519,19 +1493,19 @@ class ChipsFieldComponent {
1519
1493
  setInputRef() {
1520
1494
  this.inputRef = this.elementRef.nativeElement.querySelector('input');
1521
1495
  }
1522
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipsFieldComponent, deps: [{ token: i1$7.Clipboard }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
1523
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ChipsFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<div class=\"chips-field-wrapper\">\n <div style=\"width: 100%\">\n @if (_field.keyFilter) {\n <s-chips\n [inputId]=\"_field.id || _field.name\"\n [formControl]=\"formControl()\"\n [placeholder]=\"_field.placeholder\"\n [allowDuplicated]=\"false\"\n [addOnTab]=\"true\"\n [addOnBlur]=\"true\"\n (onAdd)=\"_field.onAdd ? _field.onAdd($event) : null\"\n (onRemove)=\"_field.onRemove ? _field.onRemove($event) : null\"\n (onChipClick)=\"_field.onChipClick ? _field.onChipClick($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n [keyFilter]=\"_field.keyFilter\"\n >\n <ng-template\n let-item\n pTemplate=\"item\"\n >\n <span\n class=\"chip-content\"\n [sTooltip]=\"item\"\n >\n {{ item }}\n </span>\n </ng-template>\n </s-chips>\n } @else {\n <s-chips\n [inputId]=\"_field.id || _field.name\"\n [formControl]=\"formControl()\"\n [placeholder]=\"_field.placeholder\"\n [allowDuplicated]=\"false\"\n [addOnTab]=\"true\"\n [addOnBlur]=\"true\"\n (onAdd)=\"_field.onAdd ? _field.onAdd($event) : null\"\n (onRemove)=\"_field.onRemove ? _field.onRemove($event) : null\"\n (onChipClick)=\"_field.onChipClick ? _field.onChipClick($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n >\n <ng-template\n let-item\n pTemplate=\"item\"\n >\n <span\n class=\"chip-content\"\n [sTooltip]=\"item\"\n >\n {{ item }}\n </span>\n </ng-template>\n </s-chips>\n }\n </div>\n\n @if (_field.showCopyButton && formControl().value?.length > 0 && copyButtonVisible) {\n <button\n class=\"copy-content-button\"\n (click)=\"onCopyFieldContent()\"\n >\n {{ 'platform.angular_components.copy_field_content' | translate }}\n </button>\n }\n\n @if (feedbackMessageVisible) {\n <span class=\"feedback-message\">\n {{ 'platform.angular_components.copied_to_clipboard' | translate }}\n </span>\n }\n</div>\n\n", styles: [".chips-field-wrapper{align-items:flex-start;display:flex;flex-direction:column}.chips-field-wrapper .chip-content{display:block;overflow:hidden;padding-right:1rem;text-overflow:ellipsis}.chips-field-wrapper .copy-content-button{background-color:transparent;border:none;color:#2a6496;cursor:pointer;margin-top:8px}.chips-field-wrapper .feedback-message{color:#0c9348;display:block;margin-top:8px;-webkit-user-select:none;user-select:none}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: ChipsModule }, { kind: "component", type: i2$4.ChipsComponent, selector: "s-chips", inputs: ["disabled", "field", "value", "placeholder", "max", "maxLength", "inputId", "allowDuplicated", "caseSensitiveDuplication", "addOnTab", "addOnBlur", "separator", "autofocus", "infoLabel", "keyFilter", "showTooltip", "maxLengthRenderWithoutTooltip"], outputs: ["added", "removed", "focused", "focusLost", "chipClicked", "valueChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }] });
1496
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipsFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1497
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ChipsFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<div class=\"chips-field-wrapper\">\n <div style=\"width: 100%\">\n @if (_field.keyFilter) {\n <s-chips\n [inputId]=\"_field.id || _field.name\"\n [formControl]=\"formControl()\"\n [placeholder]=\"_field.placeholder\"\n [allowDuplicated]=\"false\"\n [addOnTab]=\"true\"\n [addOnBlur]=\"true\"\n (onAdd)=\"_field.onAdd ? _field.onAdd($event) : null\"\n (onRemove)=\"_field.onRemove ? _field.onRemove($event) : null\"\n (onChipClick)=\"_field.onChipClick ? _field.onChipClick($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n [keyFilter]=\"_field.keyFilter\"\n >\n <ng-template\n let-item\n pTemplate=\"item\"\n >\n <span\n class=\"chip-content\"\n [sTooltip]=\"item\"\n >\n {{ item }}\n </span>\n </ng-template>\n </s-chips>\n } @else {\n <s-chips\n [inputId]=\"_field.id || _field.name\"\n [formControl]=\"formControl()\"\n [placeholder]=\"_field.placeholder\"\n [allowDuplicated]=\"false\"\n [addOnTab]=\"true\"\n [addOnBlur]=\"true\"\n (onAdd)=\"_field.onAdd ? _field.onAdd($event) : null\"\n (onRemove)=\"_field.onRemove ? _field.onRemove($event) : null\"\n (onChipClick)=\"_field.onChipClick ? _field.onChipClick($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n >\n <ng-template\n let-item\n pTemplate=\"item\"\n >\n <span\n class=\"chip-content\"\n [sTooltip]=\"item\"\n >\n {{ item }}\n </span>\n </ng-template>\n </s-chips>\n }\n </div>\n\n @if (_field.showCopyButton && formControl().value?.length > 0 && copyButtonVisible) {\n <button\n class=\"copy-content-button\"\n (click)=\"onCopyFieldContent()\"\n >\n {{ 'platform.angular_components.copy_field_content' | translate }}\n </button>\n }\n\n @if (feedbackMessageVisible) {\n <span class=\"feedback-message\">\n {{ 'platform.angular_components.copied_to_clipboard' | translate }}\n </span>\n }\n</div>\n\n", styles: [".chips-field-wrapper{align-items:flex-start;display:flex;flex-direction:column}.chips-field-wrapper .chip-content{display:block;overflow:hidden;padding-right:1rem;text-overflow:ellipsis}.chips-field-wrapper .copy-content-button{background-color:transparent;border:none;color:#2a6496;cursor:pointer;margin-top:8px}.chips-field-wrapper .feedback-message{color:#0c9348;display:block;margin-top:8px;-webkit-user-select:none;user-select:none}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: ChipsModule }, { kind: "component", type: i1$6.ChipsComponent, selector: "s-chips", inputs: ["disabled", "field", "value", "placeholder", "max", "maxLength", "inputId", "allowDuplicated", "caseSensitiveDuplication", "addOnTab", "addOnBlur", "separator", "autofocus", "infoLabel", "keyFilter", "showTooltip", "maxLengthRenderWithoutTooltip"], outputs: ["added", "removed", "focused", "focusLost", "chipClicked", "valueChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }] });
1524
1498
  }
1525
1499
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipsFieldComponent, decorators: [{
1526
1500
  type: Component,
1527
1501
  args: [{ standalone: true, imports: [FieldLabelComponent, ChipsModule, ReactiveFormsModule, TranslateModule, TooltipDirective], template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<div class=\"chips-field-wrapper\">\n <div style=\"width: 100%\">\n @if (_field.keyFilter) {\n <s-chips\n [inputId]=\"_field.id || _field.name\"\n [formControl]=\"formControl()\"\n [placeholder]=\"_field.placeholder\"\n [allowDuplicated]=\"false\"\n [addOnTab]=\"true\"\n [addOnBlur]=\"true\"\n (onAdd)=\"_field.onAdd ? _field.onAdd($event) : null\"\n (onRemove)=\"_field.onRemove ? _field.onRemove($event) : null\"\n (onChipClick)=\"_field.onChipClick ? _field.onChipClick($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n [keyFilter]=\"_field.keyFilter\"\n >\n <ng-template\n let-item\n pTemplate=\"item\"\n >\n <span\n class=\"chip-content\"\n [sTooltip]=\"item\"\n >\n {{ item }}\n </span>\n </ng-template>\n </s-chips>\n } @else {\n <s-chips\n [inputId]=\"_field.id || _field.name\"\n [formControl]=\"formControl()\"\n [placeholder]=\"_field.placeholder\"\n [allowDuplicated]=\"false\"\n [addOnTab]=\"true\"\n [addOnBlur]=\"true\"\n (onAdd)=\"_field.onAdd ? _field.onAdd($event) : null\"\n (onRemove)=\"_field.onRemove ? _field.onRemove($event) : null\"\n (onChipClick)=\"_field.onChipClick ? _field.onChipClick($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n >\n <ng-template\n let-item\n pTemplate=\"item\"\n >\n <span\n class=\"chip-content\"\n [sTooltip]=\"item\"\n >\n {{ item }}\n </span>\n </ng-template>\n </s-chips>\n }\n </div>\n\n @if (_field.showCopyButton && formControl().value?.length > 0 && copyButtonVisible) {\n <button\n class=\"copy-content-button\"\n (click)=\"onCopyFieldContent()\"\n >\n {{ 'platform.angular_components.copy_field_content' | translate }}\n </button>\n }\n\n @if (feedbackMessageVisible) {\n <span class=\"feedback-message\">\n {{ 'platform.angular_components.copied_to_clipboard' | translate }}\n </span>\n }\n</div>\n\n", styles: [".chips-field-wrapper{align-items:flex-start;display:flex;flex-direction:column}.chips-field-wrapper .chip-content{display:block;overflow:hidden;padding-right:1rem;text-overflow:ellipsis}.chips-field-wrapper .copy-content-button{background-color:transparent;border:none;color:#2a6496;cursor:pointer;margin-top:8px}.chips-field-wrapper .feedback-message{color:#0c9348;display:block;margin-top:8px;-webkit-user-select:none;user-select:none}\n"] }]
1528
- }], ctorParameters: () => [{ type: i1$7.Clipboard }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }] });
1502
+ }] });
1529
1503
 
1530
1504
  class ContentGeneratorFieldComponent {
1531
1505
  field = input.required();
1532
1506
  formControl = input.required();
1533
1507
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ContentGeneratorFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1534
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ContentGeneratorFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n\n@if (contentGenerator.textArea()?.renderTextArea) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"contentGenerator.textArea()?.textAreaElement?.nativeElement\"\n ></s-field-label>\n}\n\n<s-content-generator\n #contentGenerator\n [rows]=\"_field.rows ?? 5\"\n [formControl]=\"formControl()\"\n [id]=\"_field.name\"\n [readonly]=\"_field.readonly ? _field.readonly() : false\"\n [prompt]=\"_field.prompt ?? ''\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [label]=\"_field.label ?? ''\"\n [speechRecognition]=\"_field.speechRecognition ?? false\"\n [keepContext]=\"_field.keepContext\"\n [speechRecognitionPlaceholder]=\"_field.speechRecognitionPlaceholder\"\n [maxLength]=\"_field.maxLength ?? null\"\n></s-content-generator>\n", styles: [".footer-content{display:flex;flex-grow:0}.textarea-ia{display:flex;align-items:flex-end;gap:8px}.textarea-ia s-textarea{width:100%}.iassist-button{display:flex;justify-content:center;align-items:center;border:none;border-radius:50%;box-shadow:none;cursor:pointer;height:32px;width:32px}.dialog-header{display:flex;gap:12px}.dialog-header .iassist-icon{display:block;height:24px;width:24px}.speech-recognition{margin-bottom:12.5px}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: ContentGeneratorModule }, { kind: "component", type: i1$8.ContentGeneratorComponent, selector: "s-content-generator, s-text-area-ia", inputs: ["id", "label", "placeholder", "prompt", "readonly", "rows", "cols", "speechRecognition", "keepContext", "speechRecognitionPlaceholder", "maxLength", "textAreaStyle"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
1508
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ContentGeneratorFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n\n@if (contentGenerator.textArea()?.renderTextArea) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"contentGenerator.textArea()?.textAreaElement?.nativeElement\"\n ></s-field-label>\n}\n\n<s-content-generator\n #contentGenerator\n [rows]=\"_field.rows ?? 5\"\n [formControl]=\"formControl()\"\n [id]=\"_field.name\"\n [readonly]=\"_field.readonly ? _field.readonly() : false\"\n [prompt]=\"_field.prompt ?? ''\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [label]=\"_field.label ?? ''\"\n [speechRecognition]=\"_field.speechRecognition ?? false\"\n [keepContext]=\"_field.keepContext\"\n [speechRecognitionPlaceholder]=\"_field.speechRecognitionPlaceholder\"\n [maxLength]=\"_field.maxLength ?? null\"\n></s-content-generator>\n", styles: [".footer-content{display:flex;flex-grow:0}.textarea-ia{display:flex;align-items:flex-end;gap:8px}.textarea-ia s-textarea{width:100%}.iassist-button{display:flex;justify-content:center;align-items:center;border:none;border-radius:50%;box-shadow:none;cursor:pointer;height:32px;width:32px}.dialog-header{display:flex;gap:12px}.dialog-header .iassist-icon{display:block;height:24px;width:24px}.speech-recognition{margin-bottom:12.5px}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: ContentGeneratorModule }, { kind: "component", type: i1$7.ContentGeneratorComponent, selector: "s-content-generator, s-text-area-ia", inputs: ["id", "label", "placeholder", "prompt", "readonly", "rows", "cols", "speechRecognition", "keepContext", "speechRecognitionPlaceholder", "maxLength", "textAreaStyle"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
1535
1509
  }
1536
1510
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ContentGeneratorFieldComponent, decorators: [{
1537
1511
  type: Component,
@@ -1539,30 +1513,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
1539
1513
  }] });
1540
1514
 
1541
1515
  class CountryPhonePickerFieldComponent {
1542
- changeDetectorRef;
1516
+ changeDetectorRef = inject(ChangeDetectorRef);
1543
1517
  field = input.required();
1544
1518
  formControl = input.required();
1545
- constructor(changeDetectorRef) {
1546
- this.changeDetectorRef = changeDetectorRef;
1547
- }
1548
1519
  ngAfterViewInit() {
1549
1520
  this.changeDetectorRef.detectChanges();
1550
1521
  }
1551
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CountryPhonePickerFieldComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1552
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CountryPhonePickerFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n@if (countryPhonePicker.phoneInput?.nativeElement) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"countryPhonePicker.phoneInput?.nativeElement\"\n ></s-field-label>\n}\n\n<s-country-phone-picker\n #countryPhonePicker\n [formControl]=\"formControl()\"\n [ordination]=\"_field.ordination\"\n [countries]=\"_field.countries\"\n (selected)=\"_field.onSelected($event)\"\n (focusLost)=\"_field.onFocusLost ? _field.onFocusLost($event) : null\"\n>\n</s-country-phone-picker>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: CountryPhonePickerModule }, { kind: "component", type: i1$9.CountryPhonePickerComponent, selector: "s-country-phone-picker", inputs: ["countries", "ordination"], outputs: ["selected", "focusLost"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
1522
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CountryPhonePickerFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1523
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CountryPhonePickerFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n@if (countryPhonePicker.phoneInput?.nativeElement) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"countryPhonePicker.phoneInput?.nativeElement\"\n ></s-field-label>\n}\n\n<s-country-phone-picker\n #countryPhonePicker\n [formControl]=\"formControl()\"\n [ordination]=\"_field.ordination\"\n [countries]=\"_field.countries\"\n (selected)=\"_field.onSelected($event)\"\n (focusLost)=\"_field.onFocusLost ? _field.onFocusLost($event) : null\"\n>\n</s-country-phone-picker>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: CountryPhonePickerModule }, { kind: "component", type: i1$8.CountryPhonePickerComponent, selector: "s-country-phone-picker", inputs: ["countries", "ordination"], outputs: ["selected", "focusLost"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
1553
1524
  }
1554
1525
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CountryPhonePickerFieldComponent, decorators: [{
1555
1526
  type: Component,
1556
1527
  args: [{ standalone: true, imports: [FieldLabelComponent, CountryPhonePickerModule, ReactiveFormsModule], template: "@let _field = field();\n@if (countryPhonePicker.phoneInput?.nativeElement) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"countryPhonePicker.phoneInput?.nativeElement\"\n ></s-field-label>\n}\n\n<s-country-phone-picker\n #countryPhonePicker\n [formControl]=\"formControl()\"\n [ordination]=\"_field.ordination\"\n [countries]=\"_field.countries\"\n (selected)=\"_field.onSelected($event)\"\n (focusLost)=\"_field.onFocusLost ? _field.onFocusLost($event) : null\"\n>\n</s-country-phone-picker>\n\n" }]
1557
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }] });
1528
+ }] });
1558
1529
 
1559
1530
  /**
1560
1531
  * @deprecated Should use bignumber instead
1561
1532
  */
1562
1533
  class CurrencyFieldComponent {
1563
- currencyService;
1564
- localeService;
1565
- changeDetectorRef;
1534
+ currencyService = inject(CurrencyService);
1535
+ localeService = inject(LocaleService);
1536
+ changeDetectorRef = inject(ChangeDetectorRef);
1566
1537
  inputRefComponent = viewChild('inputRef');
1567
1538
  field = input.required();
1568
1539
  formControl = input.required();
@@ -1581,11 +1552,6 @@ class CurrencyFieldComponent {
1581
1552
  return inputRef.nativeElement;
1582
1553
  }
1583
1554
  });
1584
- constructor(currencyService, localeService, changeDetectorRef) {
1585
- this.currencyService = currencyService;
1586
- this.localeService = localeService;
1587
- this.changeDetectorRef = changeDetectorRef;
1588
- }
1589
1555
  ngOnInit() {
1590
1556
  this.onLocaleService();
1591
1557
  const field = this.field();
@@ -1632,24 +1598,20 @@ class CurrencyFieldComponent {
1632
1598
  parseAlignTo(field) {
1633
1599
  return field.alignTo === 'right' ? NumberAlignmentOption.RIGHT : NumberAlignmentOption.LEFT;
1634
1600
  }
1635
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CurrencyFieldComponent, deps: [{ token: i1$a.CurrencyService }, { token: i1$4.LocaleService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1636
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CurrencyFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "inputRefComponent", first: true, predicate: ["inputRef"], descendants: true, isSignal: true }], ngImport: i0, template: "@let _field = field();\n@if (inputRef()) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef()\"\n ></s-field-label>\n}\n@let hasMask = !!_field.mask;\n<div\n class=\"[input-is-invalid>.button-container>.button-container]:border-[1px] [input-is-invalid>.button-container>.button-container]:border-r-0 [input-is-invalid>.button-container>.button-container]:border-criticality-red [input-is-invalid>.button-container>input]:border-[1px] [input-is-invalid>.button-container>input]:border-criticality-red [input-has-focus>.button-container]:border-[1px] [input-has-focus>.button-container]:border-r-0 [input-has-focus>.button-container]:border-primary flex h-[35px] w-full\"\n [ngClass]=\"{\n '[&:has(.input-mask.ng-invalid.ng-dirty)>.button-container]:border-[1px] [&:has(.input-mask.ng-invalid.ng-dirty)>.button-container]:border-r-0 [&:has(.input-mask.ng-invalid.ng-dirty)>.button-container]:border-criticality-red [&:has(.input-mask.ng-invalid.ng-dirty)>input]:border-[1px] [&:has(.input-mask.ng-invalid.ng-dirty)>input]:border-criticality-red':\n hasMask,\n }\"\n>\n @if (_field.currency || _field.numberLocaleOptions?.currencySymbol) {\n <div\n class=\"button-container flex h-full min-w-10 items-center justify-center rounded-l-[3px] border border-r-0 border-[#c1c1cc] px-[8px]\"\n >\n <span class=\"text-[#212533]\">\n {{\n _field.currency\n ? currencyService.getCurrencySymbol({ currency: _field.currency() })\n : _field.numberLocaleOptions?.currencySymbol\n }}\n </span>\n </div>\n }\n\n @if (hasMask) {\n <p-inputMask\n class=\"input-mask\"\n #inputRef\n type=\"text\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [formControl]=\"formControl()\"\n [mask]=\"mask\"\n [placeholder]=\"_field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap !rounded-l-[0px]\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onComplete)=\"_field.onComplete ? _field.onComplete($event) : null\"\n (onInput)=\"_field.onInput ? _field.onInput($event) : null\"\n ></p-inputMask>\n } @else if (!hasMask) {\n <input\n #inputRef\n type=\"text\"\n [id]=\"_field.id || _field.name\"\n class=\"h-full w-full rounded-r-[3px] border border-[#c1c1cc] p-2 outline-none focus:border-[1px] focus:border-primary\"\n [name]=\"_field.name\"\n [formControl]=\"formControl()\"\n sNumberInput\n [precision]=\"\n _field.precision\n ? fieldUtils.isFunction(_field.precision)\n ? fieldUtils.trigger(_field.precision)\n : _field.precision\n : _field.currency && _field.currency()\n ? currencies[_field.currency()].precision\n : 15\n \"\n [scale]=\"\n _field.scale\n ? fieldUtils.isFunction(_field.scale)\n ? fieldUtils.trigger(_field.scale)\n : _field.scale\n : _field.currency && _field.currency()\n ? currencies[_field.currency()].scale\n : 2\n \"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator ?? ''\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator ?? ''\"\n [alignTo]=\"parseAlignTo(_field)\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n />\n }\n</div>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: InputMaskModule }, { kind: "component", type: i2$1.InputMask, selector: "p-inputmask, p-inputMask, p-input-mask", inputs: ["type", "slotChar", "autoClear", "showClear", "style", "inputId", "styleClass", "placeholder", "size", "maxlength", "tabindex", "title", "variant", "ariaLabel", "ariaLabelledBy", "ariaRequired", "disabled", "readonly", "unmask", "name", "required", "characterPattern", "autofocus", "autoFocus", "autocomplete", "keepBuffer", "mask"], outputs: ["onComplete", "onFocus", "onBlur", "onInput", "onKeydown", "onClear"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: NumberInputModule }, { kind: "directive", type: i5$1.NumberInputDirective, selector: "input[sNumberInput]" }] });
1601
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CurrencyFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1602
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CurrencyFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "inputRefComponent", first: true, predicate: ["inputRef"], descendants: true, isSignal: true }], ngImport: i0, template: "@let _field = field();\n@if (inputRef()) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef()\"\n ></s-field-label>\n}\n@let hasMask = !!_field.mask;\n<div\n class=\"[input-is-invalid>.button-container>.button-container]:border-[1px] [input-is-invalid>.button-container>.button-container]:border-r-0 [input-is-invalid>.button-container>.button-container]:border-criticality-red [input-is-invalid>.button-container>input]:border-[1px] [input-is-invalid>.button-container>input]:border-criticality-red [input-has-focus>.button-container]:border-[1px] [input-has-focus>.button-container]:border-r-0 [input-has-focus>.button-container]:border-primary flex h-[35px] w-full\"\n [ngClass]=\"{\n '[&:has(.input-mask.ng-invalid.ng-dirty)>.button-container]:border-[1px] [&:has(.input-mask.ng-invalid.ng-dirty)>.button-container]:border-r-0 [&:has(.input-mask.ng-invalid.ng-dirty)>.button-container]:border-criticality-red [&:has(.input-mask.ng-invalid.ng-dirty)>input]:border-[1px] [&:has(.input-mask.ng-invalid.ng-dirty)>input]:border-criticality-red':\n hasMask,\n }\"\n>\n @if (_field.currency || _field.numberLocaleOptions?.currencySymbol) {\n <div\n class=\"button-container flex h-full min-w-10 items-center justify-center rounded-l-[3px] border border-r-0 border-[#c1c1cc] px-[8px]\"\n >\n <span class=\"text-[#212533]\">\n {{\n _field.currency\n ? currencyService.getCurrencySymbol({ currency: _field.currency() })\n : _field.numberLocaleOptions?.currencySymbol\n }}\n </span>\n </div>\n }\n\n @if (hasMask) {\n <p-inputMask\n class=\"input-mask\"\n #inputRef\n type=\"text\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [formControl]=\"formControl()\"\n [mask]=\"mask\"\n [placeholder]=\"_field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap !rounded-l-[0px]\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onComplete)=\"_field.onComplete ? _field.onComplete($event) : null\"\n (onInput)=\"_field.onInput ? _field.onInput($event) : null\"\n ></p-inputMask>\n } @else if (!hasMask) {\n <input\n #inputRef\n type=\"text\"\n [id]=\"_field.id || _field.name\"\n class=\"h-full w-full rounded-r-[3px] border border-[#c1c1cc] p-2 outline-none focus:border-[1px] focus:border-primary\"\n [name]=\"_field.name\"\n [formControl]=\"formControl()\"\n sNumberInput\n [precision]=\"\n _field.precision\n ? fieldUtils.isFunction(_field.precision)\n ? fieldUtils.trigger(_field.precision)\n : _field.precision\n : _field.currency && _field.currency()\n ? currencies[_field.currency()].precision\n : 15\n \"\n [scale]=\"\n _field.scale\n ? fieldUtils.isFunction(_field.scale)\n ? fieldUtils.trigger(_field.scale)\n : _field.scale\n : _field.currency && _field.currency()\n ? currencies[_field.currency()].scale\n : 2\n \"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator ?? ''\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator ?? ''\"\n [alignTo]=\"parseAlignTo(_field)\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n />\n }\n</div>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: InputMaskModule }, { kind: "component", type: i1$4.InputMask, selector: "p-inputmask, p-inputMask, p-input-mask", inputs: ["type", "slotChar", "autoClear", "showClear", "style", "inputId", "styleClass", "placeholder", "size", "maxlength", "tabindex", "title", "variant", "ariaLabel", "ariaLabelledBy", "ariaRequired", "disabled", "readonly", "unmask", "name", "required", "characterPattern", "autofocus", "autoFocus", "autocomplete", "keepBuffer", "mask"], outputs: ["onComplete", "onFocus", "onBlur", "onInput", "onKeydown", "onClear"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: NumberInputModule }, { kind: "directive", type: i3$3.NumberInputDirective, selector: "input[sNumberInput]" }] });
1637
1603
  }
1638
1604
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CurrencyFieldComponent, decorators: [{
1639
1605
  type: Component,
1640
1606
  args: [{ standalone: true, imports: [FieldLabelComponent, NgClass, InputMaskModule, ReactiveFormsModule, TooltipDirective, NumberInputModule], template: "@let _field = field();\n@if (inputRef()) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef()\"\n ></s-field-label>\n}\n@let hasMask = !!_field.mask;\n<div\n class=\"[input-is-invalid>.button-container>.button-container]:border-[1px] [input-is-invalid>.button-container>.button-container]:border-r-0 [input-is-invalid>.button-container>.button-container]:border-criticality-red [input-is-invalid>.button-container>input]:border-[1px] [input-is-invalid>.button-container>input]:border-criticality-red [input-has-focus>.button-container]:border-[1px] [input-has-focus>.button-container]:border-r-0 [input-has-focus>.button-container]:border-primary flex h-[35px] w-full\"\n [ngClass]=\"{\n '[&:has(.input-mask.ng-invalid.ng-dirty)>.button-container]:border-[1px] [&:has(.input-mask.ng-invalid.ng-dirty)>.button-container]:border-r-0 [&:has(.input-mask.ng-invalid.ng-dirty)>.button-container]:border-criticality-red [&:has(.input-mask.ng-invalid.ng-dirty)>input]:border-[1px] [&:has(.input-mask.ng-invalid.ng-dirty)>input]:border-criticality-red':\n hasMask,\n }\"\n>\n @if (_field.currency || _field.numberLocaleOptions?.currencySymbol) {\n <div\n class=\"button-container flex h-full min-w-10 items-center justify-center rounded-l-[3px] border border-r-0 border-[#c1c1cc] px-[8px]\"\n >\n <span class=\"text-[#212533]\">\n {{\n _field.currency\n ? currencyService.getCurrencySymbol({ currency: _field.currency() })\n : _field.numberLocaleOptions?.currencySymbol\n }}\n </span>\n </div>\n }\n\n @if (hasMask) {\n <p-inputMask\n class=\"input-mask\"\n #inputRef\n type=\"text\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [formControl]=\"formControl()\"\n [mask]=\"mask\"\n [placeholder]=\"_field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap !rounded-l-[0px]\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onComplete)=\"_field.onComplete ? _field.onComplete($event) : null\"\n (onInput)=\"_field.onInput ? _field.onInput($event) : null\"\n ></p-inputMask>\n } @else if (!hasMask) {\n <input\n #inputRef\n type=\"text\"\n [id]=\"_field.id || _field.name\"\n class=\"h-full w-full rounded-r-[3px] border border-[#c1c1cc] p-2 outline-none focus:border-[1px] focus:border-primary\"\n [name]=\"_field.name\"\n [formControl]=\"formControl()\"\n sNumberInput\n [precision]=\"\n _field.precision\n ? fieldUtils.isFunction(_field.precision)\n ? fieldUtils.trigger(_field.precision)\n : _field.precision\n : _field.currency && _field.currency()\n ? currencies[_field.currency()].precision\n : 15\n \"\n [scale]=\"\n _field.scale\n ? fieldUtils.isFunction(_field.scale)\n ? fieldUtils.trigger(_field.scale)\n : _field.scale\n : _field.currency && _field.currency()\n ? currencies[_field.currency()].scale\n : 2\n \"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator ?? ''\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator ?? ''\"\n [alignTo]=\"parseAlignTo(_field)\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n />\n }\n</div>\n\n" }]
1641
- }], ctorParameters: () => [{ type: i1$a.CurrencyService }, { type: i1$4.LocaleService }, { type: i0.ChangeDetectorRef }] });
1607
+ }] });
1642
1608
 
1643
1609
  class FileUploadFieldComponent {
1644
- changeDetectorRef;
1645
- elementRef;
1610
+ changeDetectorRef = inject(ChangeDetectorRef);
1611
+ elementRef = inject(ElementRef);
1646
1612
  field = input.required();
1647
1613
  formControl = input.required();
1648
1614
  inputRef = null;
1649
- constructor(changeDetectorRef, elementRef) {
1650
- this.changeDetectorRef = changeDetectorRef;
1651
- this.elementRef = elementRef;
1652
- }
1653
1615
  onClick() {
1654
1616
  this.dispatchFocusInputRef();
1655
1617
  }
@@ -1668,13 +1630,13 @@ class FileUploadFieldComponent {
1668
1630
  dispatchFocusInputRef() {
1669
1631
  this.inputRef?.dispatchEvent(new Event('focus'));
1670
1632
  }
1671
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FileUploadFieldComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
1672
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FileUploadFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, host: { listeners: { "click": "onClick()", "document:click": "onDocumentClick($event)" } }, ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<s-file-picker\n [id]=\"_field.id || _field.name\"\n [accept]=\"_field.accept\"\n [files]=\"_field.files\"\n [multiple]=\"_field.multiple\"\n [chooseLabel]=\"_field.chooseLabel\"\n [removeLabel]=\"_field.removeLabel\"\n [cancelLabel]=\"_field.cancelLabel\"\n [successTooltip]=\"_field.successTooltip\"\n (uploadHandler)=\"_field.onUploadFile($event, _field)\"\n (removeFile)=\"_field.onRemoveFile($event.file, _field)\"\n (cancelUpload)=\"_field.onCancelUpload($event, _field)\"\n (downloadFile)=\"_field.onDownloadFile($event, _field)\"\n [formControl]=\"formControl()\"\n [showFileUploadDate]=\"_field.showFileUploadDate\"\n>\n</s-file-picker>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: FilePickerModule }, { kind: "component", type: i1$b.FilePickerComponent, selector: "s-file-picker, s-file-upload", inputs: ["id", "chooseLabel", "removeLabel", "cancelLabel", "successTooltip", "multiple", "accept", "supportedExtensions", "ariaLabelFileName", "maxFileSize", "maxCombinedFileSize", "fileLimit", "ariaLabelProgress", "ariaLabelSuccess", "ariaLabelError", "ariaLabelRemove", "formControl", "disabled", "showFileUploadDate", "permissions", "files"], outputs: ["uploadHandler", "removeFile", "cancelUpload", "downloadFile", "validateErrors"] }] });
1633
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FileUploadFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1634
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FileUploadFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, host: { listeners: { "click": "onClick()", "document:click": "onDocumentClick($event)" } }, ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<s-file-picker\n [id]=\"_field.id || _field.name\"\n [accept]=\"_field.accept\"\n [files]=\"_field.files\"\n [multiple]=\"_field.multiple\"\n [chooseLabel]=\"_field.chooseLabel\"\n [removeLabel]=\"_field.removeLabel\"\n [cancelLabel]=\"_field.cancelLabel\"\n [successTooltip]=\"_field.successTooltip\"\n (uploadHandler)=\"_field.onUploadFile($event, _field)\"\n (removeFile)=\"_field.onRemoveFile($event.file, _field)\"\n (cancelUpload)=\"_field.onCancelUpload($event, _field)\"\n (downloadFile)=\"_field.onDownloadFile($event, _field)\"\n [formControl]=\"formControl()\"\n [showFileUploadDate]=\"_field.showFileUploadDate\"\n>\n</s-file-picker>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: FilePickerModule }, { kind: "component", type: i1$9.FilePickerComponent, selector: "s-file-picker, s-file-upload", inputs: ["id", "chooseLabel", "removeLabel", "cancelLabel", "successTooltip", "multiple", "accept", "supportedExtensions", "ariaLabelFileName", "maxFileSize", "maxCombinedFileSize", "fileLimit", "ariaLabelProgress", "ariaLabelSuccess", "ariaLabelError", "ariaLabelRemove", "formControl", "disabled", "showFileUploadDate", "permissions", "files"], outputs: ["uploadHandler", "removeFile", "cancelUpload", "downloadFile", "validateErrors"] }] });
1673
1635
  }
1674
1636
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FileUploadFieldComponent, decorators: [{
1675
1637
  type: Component,
1676
1638
  args: [{ standalone: true, imports: [FieldLabelComponent, FilePickerModule], template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<s-file-picker\n [id]=\"_field.id || _field.name\"\n [accept]=\"_field.accept\"\n [files]=\"_field.files\"\n [multiple]=\"_field.multiple\"\n [chooseLabel]=\"_field.chooseLabel\"\n [removeLabel]=\"_field.removeLabel\"\n [cancelLabel]=\"_field.cancelLabel\"\n [successTooltip]=\"_field.successTooltip\"\n (uploadHandler)=\"_field.onUploadFile($event, _field)\"\n (removeFile)=\"_field.onRemoveFile($event.file, _field)\"\n (cancelUpload)=\"_field.onCancelUpload($event, _field)\"\n (downloadFile)=\"_field.onDownloadFile($event, _field)\"\n [formControl]=\"formControl()\"\n [showFileUploadDate]=\"_field.showFileUploadDate\"\n>\n</s-file-picker>\n\n" }]
1677
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }], propDecorators: { onClick: [{
1639
+ }], propDecorators: { onClick: [{
1678
1640
  type: HostListener,
1679
1641
  args: ['click']
1680
1642
  }], onDocumentClick: [{
@@ -1707,7 +1669,7 @@ class LookupFieldComponent {
1707
1669
  });
1708
1670
  }
1709
1671
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LookupFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1710
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: LookupFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n<div\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n>\n <s-lookup\n [id]=\"_field.id || _field.name\"\n [multiple]=\"_field.multiple ?? false\"\n [formControl]=\"formControl()\"\n [lookupSuggestions]=\"lookupSuggestions\"\n [dataKey]=\"_field.dataKey\"\n [placeholder]=\"_field.placeholder\"\n [showSearch]=\"_field.showSearch ?? true\"\n [searchFields]=\"_field.searchFields\"\n [searchGridFields]=\"_field.searchGridFields\"\n [searchGridData]=\"gridData\"\n (onLookupRequest)=\"_field.onLookupRequest($event)\"\n (onSearchRequest)=\"_field.onSearchRequest($event)\"\n [lookupDisplayField]=\"_field.lookupDisplayField\"\n [searchTotalRecords]=\"searchTotalRecords\"\n [labelOptions]=\"{\n recordsLabel: _field.recordsLabel,\n recordLabel: _field.recordLabel,\n emptyFieldLabel: _field.emptyFieldLabel,\n selectLabel: _field.selectLabel,\n cancelLabel: _field.cancelLabel,\n clearLabel: _field.clearLabel,\n filterLabel: _field.filterLabel,\n filterTitle: _field.filterTitle,\n searchTotalRecordsLabel: searchTotalRecordsLabel,\n searchEmptyTitle: _field.searchEmptyTitle,\n searchTitle: _field.searchTitle,\n }\"\n (onSelect)=\"_field.onSelect?.($event)\"\n (onUnselect)=\"_field.onUnselect?.($event)\"\n (onClear)=\"_field.onClear ? _field.onClear($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n [lookupAppendTo]=\"_field.appendTo\"\n [lookupEmptyMessage]=\"_field.emptyMessage\"\n [defaultFilter]=\"_field.defaultFilter ?? []\"\n [autocompleteForceSelection]=\"_field.autocompleteForceSelection ?? true\"\n [maxlength]=\"_field.maxlength ?? null\"\n [showAddOption]=\"_field.showAddOption ?? false\"\n [showEditOption]=\"_field.showEditOption ?? false\"\n [showRemoveOption]=\"_field.showRemoveOption ?? false\"\n [sortableColumnsDisabled]=\"_field.sortableColumnsDisabled ?? []\"\n (onAdd)=\"_field.onAdd ? _field.onAdd() : null\"\n (onEdit)=\"_field.onEdit ? _field.onEdit($event) : null\"\n (onRemove)=\"_field.onRemove ? _field.onRemove($event) : null\"\n (onClearButtonClick)=\"_field.onClearButtonClick ? _field.onClearButtonClick() : null\"\n >\n </s-lookup>\n</div>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "component", type: LookupComponent, selector: "s-lookup", inputs: ["formControlName", "id", "autocompleteForceSelection", "maxlength", "multiple", "dataKey", "disabled", "showSearch", "lookupSuggestions", "lookupDisplayField", "lookupDisplayFieldTooltip", "lookupEmptyMessage", "lookupAppendTo", "searchEmptyDescription", "searchGridData", "searchTotalRecords", "searchFields", "searchGridFields", "multiSortMeta", "placeholder", "sortableColumnsDisabled", "lookupRowProps", "defaultFilter", "showAddOption", "showEditOption", "showRemoveOption", "dialogFullScreen", "labelOptions"], outputs: ["onLookupRequest", "onSearchRequest", "onFocus", "onBlur", "onKeyUp", "onSelect", "onUnselect", "onClear", "onAdd", "onEdit", "onRemove", "onClearButtonClick"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
1672
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: LookupFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n<div\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n>\n <s-lookup\n [id]=\"_field.id || _field.name\"\n [multiple]=\"_field.multiple ?? false\"\n [formControl]=\"formControl()\"\n [lookupSuggestions]=\"lookupSuggestions\"\n [dataKey]=\"_field.dataKey\"\n [placeholder]=\"_field.placeholder\"\n [showSearch]=\"_field.showSearch ?? true\"\n [searchFields]=\"_field.searchFields\"\n [searchGridFields]=\"_field.searchGridFields\"\n [searchGridData]=\"gridData\"\n (onLookupRequest)=\"_field.onLookupRequest($event)\"\n (onSearchRequest)=\"_field.onSearchRequest($event)\"\n [lookupDisplayField]=\"_field.lookupDisplayField\"\n [searchTotalRecords]=\"searchTotalRecords\"\n [labelOptions]=\"{\n recordsLabel: _field.recordsLabel,\n recordLabel: _field.recordLabel,\n emptyFieldLabel: _field.emptyFieldLabel,\n selectLabel: _field.selectLabel,\n cancelLabel: _field.cancelLabel,\n clearLabel: _field.clearLabel,\n filterLabel: _field.filterLabel,\n filterTitle: _field.filterTitle,\n searchTotalRecordsLabel: searchTotalRecordsLabel,\n searchEmptyTitle: _field.searchEmptyTitle,\n searchTitle: _field.searchTitle,\n }\"\n (onSelect)=\"_field.onSelect?.($event)\"\n (onUnselect)=\"_field.onUnselect?.($event)\"\n (onClear)=\"_field.onClear ? _field.onClear($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n [lookupAppendTo]=\"_field.appendTo\"\n [lookupEmptyMessage]=\"_field.emptyMessage\"\n [defaultFilter]=\"_field.defaultFilter ?? []\"\n [autocompleteForceSelection]=\"_field.autocompleteForceSelection ?? true\"\n [maxlength]=\"_field.maxlength ?? null\"\n [showAddOption]=\"_field.showAddOption ?? false\"\n [showEditOption]=\"_field.showEditOption ?? false\"\n [showRemoveOption]=\"_field.showRemoveOption ?? false\"\n [sortableColumnsDisabled]=\"_field.sortableColumnsDisabled ?? []\"\n (onAdd)=\"_field.onAdd ? _field.onAdd() : null\"\n (onEdit)=\"_field.onEdit ? _field.onEdit($event) : null\"\n (onRemove)=\"_field.onRemove ? _field.onRemove($event) : null\"\n (onClearButtonClick)=\"_field.onClearButtonClick ? _field.onClearButtonClick() : null\"\n >\n </s-lookup>\n</div>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "component", type: LookupComponent, selector: "s-lookup", inputs: ["formControlName", "id", "autocompleteForceSelection", "maxlength", "multiple", "dataKey", "disabled", "showSearch", "lookupSuggestions", "lookupDisplayField", "lookupDisplayFieldTooltip", "lookupEmptyMessage", "lookupAppendTo", "searchEmptyDescription", "searchGridData", "searchTotalRecords", "searchFields", "searchGridFields", "multiSortMeta", "placeholder", "sortableColumnsDisabled", "lookupRowProps", "defaultFilter", "showAddOption", "showEditOption", "showRemoveOption", "dialogFullScreen", "labelOptions"], outputs: ["onLookupRequest", "onSearchRequest", "onFocus", "onBlur", "onKeyUp", "onSelect", "onUnselect", "onClear", "onAdd", "onEdit", "onRemove", "onClearButtonClick"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
1711
1673
  }
1712
1674
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LookupFieldComponent, decorators: [{
1713
1675
  type: Component,
@@ -1716,9 +1678,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
1716
1678
 
1717
1679
  /* eslint-disable @angular-eslint/no-output-on-prefix */
1718
1680
  class NumberFieldComponent {
1719
- localeService;
1720
- elementRef;
1721
- changeDetectorRef;
1681
+ localeService = inject(LocaleService);
1682
+ elementRef = inject(ElementRef);
1683
+ changeDetectorRef = inject(ChangeDetectorRef);
1722
1684
  field = input.required();
1723
1685
  formControl = input.required();
1724
1686
  fieldUtils = inject(FormFieldUtilsService);
@@ -1727,11 +1689,6 @@ class NumberFieldComponent {
1727
1689
  onComplete = new EventEmitter();
1728
1690
  inputRef = null;
1729
1691
  ngUnsubscribe = new Subject();
1730
- constructor(localeService, elementRef, changeDetectorRef) {
1731
- this.localeService = localeService;
1732
- this.elementRef = elementRef;
1733
- this.changeDetectorRef = changeDetectorRef;
1734
- }
1735
1692
  ngOnInit() {
1736
1693
  this.onLocaleService();
1737
1694
  this.onFocus.pipe(takeUntil$1(this.ngUnsubscribe)).subscribe((event) => {
@@ -1798,8 +1755,8 @@ class NumberFieldComponent {
1798
1755
  const input = this.elementRef.nativeElement.querySelector('input');
1799
1756
  this.inputRef = input;
1800
1757
  }
1801
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NumberFieldComponent, deps: [{ token: i1$4.LocaleService }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1802
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: NumberFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onInput: "onInput", onFocus: "onFocus", onComplete: "onComplete" }, ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef.nativeElement\"\n />\n}\n\n@let hasMask = !!_field.mask;\n@if (hasMask) {\n <p-inputMask\n #inputRef\n type=\"text\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [mask]=\"_field.mask ? fieldUtils.getFieldPropertyMask(_field.mask) : null\"\n [placeholder]=\"_field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n >\n </p-inputMask>\n} @else if (!hasMask) {\n <div class=\"ui-inputgroup\">\n @if (_field.leftAddon) {\n @if (_field.leftAddon.callback) {\n <span class=\"addon-button addon-button--left\">\n <s-button\n [label]=\"_field.leftAddon.label\"\n [iconClass]=\"_field.leftAddon.icon\"\n [priority]=\"_field.leftAddon.priority\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(_field.leftAddon)\"\n (clicked)=\"_field.leftAddon.callback()\"\n >\n </s-button>\n </span>\n }\n @if (!_field.leftAddon.callback) {\n <span class=\"ui-inputgroup-addon\">\n @if (_field.leftAddon.label) {\n <span>{{ _field.leftAddon.label }}</span>\n } @else if (!_field.leftAddon.label) {\n <span [ngClass]=\"_field.leftAddon.icon\"></span>\n }\n </span>\n }\n }\n\n @if (\n _field.type === 'legacyNumber' && _field.localizedNumber && _field.alignTo === numberAlignmentOption.LEFT\n ) {\n <ng-container *ngTemplateOutlet=\"localizedNumber\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n }\n\n @if (_field.rightAddon) {\n @if (_field.rightAddon.callback) {\n <span class=\"addon-button addon-button--right\">\n <s-button\n [label]=\"_field.rightAddon.label\"\n [iconClass]=\"_field.rightAddon.icon\"\n [priority]=\"_field.rightAddon.priority\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(_field.rightAddon)\"\n (clicked)=\"_field.rightAddon.callback()\"\n >\n </s-button>\n </span>\n }\n @if (!_field.rightAddon.callback) {\n <span class=\"ui-inputgroup-addon\">\n @if (_field.rightAddon.label) {\n {{ _field.rightAddon.label }}\n } @else if (!_field.rightAddon.label) {\n <span [ngClass]=\"_field.rightAddon.icon\"></span>\n }\n </span>\n }\n }\n </div>\n}\n\n<ng-template #input>\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sNumberInput\n [precision]=\"fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\"\n [scale]=\"fieldUtils.isFunction(_field.scale) ? fieldUtils.trigger(_field.scale) : _field.scale\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator ?? ''\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator ?? ''\"\n [alignTo]=\"_field.alignTo ?? numberAlignmentOption.LEFT\"\n ;\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n</ng-template>\n<ng-template #localizedNumber>\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sLocalizedNumberInput\n [precision]=\"fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n</ng-template>\n\n", styles: ["s-number-field.ng-dirty.ng-invalid .ui-inputtext{border-color:#c13018}s-number-field.ng-dirty.ng-invalid .ui-inputtext:hover{border-color:highlight(#c13018)}.addon-button{border:1px solid #c1c1cc}.addon-button s-button button,.addon-button s-button .s-button-with-text{height:100%;min-width:40px}.addon-button--left{border-radius:5px 0 0 5px;border-right:none}.addon-button--left s-button button{border-bottom-right-radius:0;border-top-right-radius:0}.addon-button--right{border-left:none;border-radius:0 5px 5px 0}.addon-button--right s-button button{border-bottom-left-radius:0;border-top-left-radius:0}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: InputMaskModule }, { kind: "component", type: i2$1.InputMask, selector: "p-inputmask, p-inputMask, p-input-mask", inputs: ["type", "slotChar", "autoClear", "showClear", "style", "inputId", "styleClass", "placeholder", "size", "maxlength", "tabindex", "title", "variant", "ariaLabel", "ariaLabelledBy", "ariaRequired", "disabled", "readonly", "unmask", "name", "required", "characterPattern", "autofocus", "autoFocus", "autocomplete", "keepBuffer", "mask"], outputs: ["onComplete", "onFocus", "onBlur", "onInput", "onKeydown", "onClear"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "ngmodule", type: LocalizedNumberInputModule }, { kind: "directive", type: i4$2.LocalizedNumberInputDirective, selector: "input[sLocalizedNumberInput]", inputs: ["decimalSeparator", "thousandsSeparator", "precision"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: NumberInputModule }, { kind: "directive", type: i5$1.NumberInputDirective, selector: "input[sNumberInput]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i5.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }], encapsulation: i0.ViewEncapsulation.None });
1758
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NumberFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1759
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: NumberFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onInput: "onInput", onFocus: "onFocus", onComplete: "onComplete" }, ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef.nativeElement\"\n />\n}\n\n@let hasMask = !!_field.mask;\n@if (hasMask) {\n <p-inputMask\n #inputRef\n type=\"text\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [mask]=\"_field.mask ? fieldUtils.getFieldPropertyMask(_field.mask) : null\"\n [placeholder]=\"_field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n >\n </p-inputMask>\n} @else if (!hasMask) {\n <div class=\"ui-inputgroup\">\n @if (_field.leftAddon) {\n @if (_field.leftAddon.callback) {\n <span class=\"addon-button addon-button--left\">\n <s-button\n [label]=\"_field.leftAddon.label\"\n [iconClass]=\"_field.leftAddon.icon\"\n [priority]=\"_field.leftAddon.priority\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(_field.leftAddon)\"\n (clicked)=\"_field.leftAddon.callback()\"\n >\n </s-button>\n </span>\n }\n @if (!_field.leftAddon.callback) {\n <span class=\"ui-inputgroup-addon\">\n @if (_field.leftAddon.label) {\n <span>{{ _field.leftAddon.label }}</span>\n } @else if (!_field.leftAddon.label) {\n <span [ngClass]=\"_field.leftAddon.icon\"></span>\n }\n </span>\n }\n }\n\n @if (\n _field.type === 'legacyNumber' && _field.localizedNumber && _field.alignTo === numberAlignmentOption.LEFT\n ) {\n <ng-container *ngTemplateOutlet=\"localizedNumber\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n }\n\n @if (_field.rightAddon) {\n @if (_field.rightAddon.callback) {\n <span class=\"addon-button addon-button--right\">\n <s-button\n [label]=\"_field.rightAddon.label\"\n [iconClass]=\"_field.rightAddon.icon\"\n [priority]=\"_field.rightAddon.priority\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(_field.rightAddon)\"\n (clicked)=\"_field.rightAddon.callback()\"\n >\n </s-button>\n </span>\n }\n @if (!_field.rightAddon.callback) {\n <span class=\"ui-inputgroup-addon\">\n @if (_field.rightAddon.label) {\n {{ _field.rightAddon.label }}\n } @else if (!_field.rightAddon.label) {\n <span [ngClass]=\"_field.rightAddon.icon\"></span>\n }\n </span>\n }\n }\n </div>\n}\n\n<ng-template #input>\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sNumberInput\n [precision]=\"fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\"\n [scale]=\"fieldUtils.isFunction(_field.scale) ? fieldUtils.trigger(_field.scale) : _field.scale\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator ?? ''\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator ?? ''\"\n [alignTo]=\"_field.alignTo ?? numberAlignmentOption.LEFT\"\n ;\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n</ng-template>\n<ng-template #localizedNumber>\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sLocalizedNumberInput\n [precision]=\"fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n</ng-template>\n\n", styles: ["s-number-field.ng-dirty.ng-invalid .ui-inputtext{border-color:#c13018}s-number-field.ng-dirty.ng-invalid .ui-inputtext:hover{border-color:highlight(#c13018)}.addon-button{border:1px solid #c1c1cc}.addon-button s-button button,.addon-button s-button .s-button-with-text{height:100%;min-width:40px}.addon-button--left{border-radius:5px 0 0 5px;border-right:none}.addon-button--left s-button button{border-bottom-right-radius:0;border-top-right-radius:0}.addon-button--right{border-left:none;border-radius:0 5px 5px 0}.addon-button--right s-button button{border-bottom-left-radius:0;border-top-left-radius:0}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: InputMaskModule }, { kind: "component", type: i1$4.InputMask, selector: "p-inputmask, p-inputMask, p-input-mask", inputs: ["type", "slotChar", "autoClear", "showClear", "style", "inputId", "styleClass", "placeholder", "size", "maxlength", "tabindex", "title", "variant", "ariaLabel", "ariaLabelledBy", "ariaRequired", "disabled", "readonly", "unmask", "name", "required", "characterPattern", "autofocus", "autoFocus", "autocomplete", "keepBuffer", "mask"], outputs: ["onComplete", "onFocus", "onBlur", "onInput", "onKeydown", "onClear"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "ngmodule", type: LocalizedNumberInputModule }, { kind: "directive", type: i3$4.LocalizedNumberInputDirective, selector: "input[sLocalizedNumberInput]", inputs: ["decimalSeparator", "thousandsSeparator", "precision"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: NumberInputModule }, { kind: "directive", type: i3$3.NumberInputDirective, selector: "input[sNumberInput]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }], encapsulation: i0.ViewEncapsulation.None });
1803
1760
  }
1804
1761
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NumberFieldComponent, decorators: [{
1805
1762
  type: Component,
@@ -1815,7 +1772,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
1815
1772
  NgTemplateOutlet,
1816
1773
  InputTextModule,
1817
1774
  ], encapsulation: ViewEncapsulation.None, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef.nativeElement\"\n />\n}\n\n@let hasMask = !!_field.mask;\n@if (hasMask) {\n <p-inputMask\n #inputRef\n type=\"text\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [mask]=\"_field.mask ? fieldUtils.getFieldPropertyMask(_field.mask) : null\"\n [placeholder]=\"_field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n >\n </p-inputMask>\n} @else if (!hasMask) {\n <div class=\"ui-inputgroup\">\n @if (_field.leftAddon) {\n @if (_field.leftAddon.callback) {\n <span class=\"addon-button addon-button--left\">\n <s-button\n [label]=\"_field.leftAddon.label\"\n [iconClass]=\"_field.leftAddon.icon\"\n [priority]=\"_field.leftAddon.priority\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(_field.leftAddon)\"\n (clicked)=\"_field.leftAddon.callback()\"\n >\n </s-button>\n </span>\n }\n @if (!_field.leftAddon.callback) {\n <span class=\"ui-inputgroup-addon\">\n @if (_field.leftAddon.label) {\n <span>{{ _field.leftAddon.label }}</span>\n } @else if (!_field.leftAddon.label) {\n <span [ngClass]=\"_field.leftAddon.icon\"></span>\n }\n </span>\n }\n }\n\n @if (\n _field.type === 'legacyNumber' && _field.localizedNumber && _field.alignTo === numberAlignmentOption.LEFT\n ) {\n <ng-container *ngTemplateOutlet=\"localizedNumber\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n }\n\n @if (_field.rightAddon) {\n @if (_field.rightAddon.callback) {\n <span class=\"addon-button addon-button--right\">\n <s-button\n [label]=\"_field.rightAddon.label\"\n [iconClass]=\"_field.rightAddon.icon\"\n [priority]=\"_field.rightAddon.priority\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(_field.rightAddon)\"\n (clicked)=\"_field.rightAddon.callback()\"\n >\n </s-button>\n </span>\n }\n @if (!_field.rightAddon.callback) {\n <span class=\"ui-inputgroup-addon\">\n @if (_field.rightAddon.label) {\n {{ _field.rightAddon.label }}\n } @else if (!_field.rightAddon.label) {\n <span [ngClass]=\"_field.rightAddon.icon\"></span>\n }\n </span>\n }\n }\n </div>\n}\n\n<ng-template #input>\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sNumberInput\n [precision]=\"fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\"\n [scale]=\"fieldUtils.isFunction(_field.scale) ? fieldUtils.trigger(_field.scale) : _field.scale\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator ?? ''\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator ?? ''\"\n [alignTo]=\"_field.alignTo ?? numberAlignmentOption.LEFT\"\n ;\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n</ng-template>\n<ng-template #localizedNumber>\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sLocalizedNumberInput\n [precision]=\"fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n</ng-template>\n\n", styles: ["s-number-field.ng-dirty.ng-invalid .ui-inputtext{border-color:#c13018}s-number-field.ng-dirty.ng-invalid .ui-inputtext:hover{border-color:highlight(#c13018)}.addon-button{border:1px solid #c1c1cc}.addon-button s-button button,.addon-button s-button .s-button-with-text{height:100%;min-width:40px}.addon-button--left{border-radius:5px 0 0 5px;border-right:none}.addon-button--left s-button button{border-bottom-right-radius:0;border-top-right-radius:0}.addon-button--right{border-left:none;border-radius:0 5px 5px 0}.addon-button--right s-button button{border-bottom-left-radius:0;border-top-left-radius:0}\n"] }]
1818
- }], ctorParameters: () => [{ type: i1$4.LocaleService }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }], propDecorators: { onInput: [{
1775
+ }], propDecorators: { onInput: [{
1819
1776
  type: Output
1820
1777
  }], onFocus: [{
1821
1778
  type: Output
@@ -1825,7 +1782,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
1825
1782
 
1826
1783
  /* eslint-disable @angular-eslint/no-output-on-prefix */
1827
1784
  class PasswordFieldComponent {
1828
- changeDetectorRef;
1785
+ changeDetectorRef = inject(ChangeDetectorRef);
1829
1786
  field = input.required();
1830
1787
  formControl = input.required();
1831
1788
  onInput = new EventEmitter();
@@ -1835,9 +1792,6 @@ class PasswordFieldComponent {
1835
1792
  ngUnsubscribe = new Subject();
1836
1793
  passwordVisible = false;
1837
1794
  formUtils = inject(FormFieldUtilsService);
1838
- constructor(changeDetectorRef) {
1839
- this.changeDetectorRef = changeDetectorRef;
1840
- }
1841
1795
  ngOnInit() {
1842
1796
  this.formUtils.switchEmptyStringToNull(this.formControl(), this.ngUnsubscribe);
1843
1797
  const field = this.field();
@@ -1867,8 +1821,8 @@ class PasswordFieldComponent {
1867
1821
  ngAfterViewInit() {
1868
1822
  this.changeDetectorRef.detectChanges();
1869
1823
  }
1870
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PasswordFieldComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1871
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: PasswordFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onInput: "onInput", onFocus: "onFocus", onComplete: "onComplete" }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true }], ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<div\n class=\"password-field\"\n [ngClass]=\"{ 'password-field--toggle': _field.showToggle }\"\n>\n <input\n #inputRef\n [type]=\"passwordVisible ? 'text' : 'password'\"\n [id]=\"_field.id || _field.name\"\n class=\"password-input\"\n [name]=\"_field.name\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [showDelay]=\"500\"\n [maxLength]=\"_field.maxLength ?? 9999999\"\n pInputText\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [ngStyle]=\"_field.style\"\n [sPasswordStrength]=\"_field.passwordStrength ? _field.passwordStrength : false\"\n [passwordStrengthDescription]=\"\n _field.passwordStrengthOptions?.description ? _field.passwordStrengthOptions!.description : ''\n \"\n [passwordStrengthWeakTitle]=\"\n _field.passwordStrengthOptions?.weakTitle ? _field.passwordStrengthOptions?.weakTitle : ''\n \"\n [passwordStrengthMediumTitle]=\"\n _field.passwordStrengthOptions?.mediumTitle ? _field.passwordStrengthOptions?.mediumTitle : ''\n \"\n [passwordStrengthStrongTitle]=\"\n _field.passwordStrengthOptions?.strongTitle ? _field.passwordStrengthOptions?.strongTitle : ''\n \"\n [passwordStrengthValidation]=\"_field.passwordStrengthOptions?.validation\"\n />\n @if (_field.showToggle) {\n <span class=\"toggle-button\">\n <s-button\n [iconClass]=\"passwordVisible ? 'fas fa-eye-slash' : 'fas fa-eye'\"\n priority=\"default\"\n (clicked)=\"onChangeVisible()\"\n >\n </s-button>\n </span>\n }\n</div>\n\n", styles: ["s-text-field.ng-dirty.ng-invalid .password-input{border-color:#c13018}s-text-field.ng-dirty.ng-invalid .password-input:hover{border-color:highlight(#c13018)}.password-field{display:flex}.password-field--toggle .password-input{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.password-field--toggle .toggle-button s-button button{border-bottom-left-radius:0;border-top-left-radius:0}.password-field:has(.password-input.ng-invalid.ng-dirty) s-button button{border:1px solid #c13018}.password-field:has(.password-input:focus) s-button button{border:1px solid #428bca}.password-field:has(.password-input:focus):has(button) .password-input{border-right:none}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: PasswordStrengthModule }, { kind: "directive", type: i2$5.PasswordStrengthDirective, selector: "[sPasswordStrength]", inputs: ["sPasswordStrength", "passwordStrengthValidation", "passwordStrengthPosition", "passwordStrengthWeakTitle", "passwordStrengthMediumTitle", "passwordStrengthStrongTitle", "passwordStrengthDescription"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i5.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }], encapsulation: i0.ViewEncapsulation.None });
1824
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PasswordFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1825
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: PasswordFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onInput: "onInput", onFocus: "onFocus", onComplete: "onComplete" }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true }], ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<div\n class=\"password-field\"\n [ngClass]=\"{ 'password-field--toggle': _field.showToggle }\"\n>\n <input\n #inputRef\n [type]=\"passwordVisible ? 'text' : 'password'\"\n [id]=\"_field.id || _field.name\"\n class=\"password-input\"\n [name]=\"_field.name\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [showDelay]=\"500\"\n [maxLength]=\"_field.maxLength ?? 9999999\"\n pInputText\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [ngStyle]=\"_field.style\"\n [sPasswordStrength]=\"_field.passwordStrength ? _field.passwordStrength : false\"\n [passwordStrengthDescription]=\"\n _field.passwordStrengthOptions?.description ? _field.passwordStrengthOptions!.description : ''\n \"\n [passwordStrengthWeakTitle]=\"\n _field.passwordStrengthOptions?.weakTitle ? _field.passwordStrengthOptions?.weakTitle : ''\n \"\n [passwordStrengthMediumTitle]=\"\n _field.passwordStrengthOptions?.mediumTitle ? _field.passwordStrengthOptions?.mediumTitle : ''\n \"\n [passwordStrengthStrongTitle]=\"\n _field.passwordStrengthOptions?.strongTitle ? _field.passwordStrengthOptions?.strongTitle : ''\n \"\n [passwordStrengthValidation]=\"_field.passwordStrengthOptions?.validation\"\n />\n @if (_field.showToggle) {\n <span class=\"toggle-button\">\n <s-button\n [iconClass]=\"passwordVisible ? 'fas fa-eye-slash' : 'fas fa-eye'\"\n priority=\"default\"\n (clicked)=\"onChangeVisible()\"\n >\n </s-button>\n </span>\n }\n</div>\n\n", styles: ["s-text-field.ng-dirty.ng-invalid .password-input{border-color:#c13018}s-text-field.ng-dirty.ng-invalid .password-input:hover{border-color:highlight(#c13018)}.password-field{display:flex}.password-field--toggle .password-input{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.password-field--toggle .toggle-button s-button button{border-bottom-left-radius:0;border-top-left-radius:0}.password-field:has(.password-input.ng-invalid.ng-dirty) s-button button{border:1px solid #c13018}.password-field:has(.password-input:focus) s-button button{border:1px solid #428bca}.password-field:has(.password-input:focus):has(button) .password-input{border-right:none}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: PasswordStrengthModule }, { kind: "directive", type: i2$4.PasswordStrengthDirective, selector: "[sPasswordStrength]", inputs: ["sPasswordStrength", "passwordStrengthValidation", "passwordStrengthPosition", "passwordStrengthWeakTitle", "passwordStrengthMediumTitle", "passwordStrengthStrongTitle", "passwordStrengthDescription"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }], encapsulation: i0.ViewEncapsulation.None });
1872
1826
  }
1873
1827
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PasswordFieldComponent, decorators: [{
1874
1828
  type: Component,
@@ -1882,7 +1836,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
1882
1836
  ButtonComponent,
1883
1837
  InputTextModule,
1884
1838
  ], template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<div\n class=\"password-field\"\n [ngClass]=\"{ 'password-field--toggle': _field.showToggle }\"\n>\n <input\n #inputRef\n [type]=\"passwordVisible ? 'text' : 'password'\"\n [id]=\"_field.id || _field.name\"\n class=\"password-input\"\n [name]=\"_field.name\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [showDelay]=\"500\"\n [maxLength]=\"_field.maxLength ?? 9999999\"\n pInputText\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [ngStyle]=\"_field.style\"\n [sPasswordStrength]=\"_field.passwordStrength ? _field.passwordStrength : false\"\n [passwordStrengthDescription]=\"\n _field.passwordStrengthOptions?.description ? _field.passwordStrengthOptions!.description : ''\n \"\n [passwordStrengthWeakTitle]=\"\n _field.passwordStrengthOptions?.weakTitle ? _field.passwordStrengthOptions?.weakTitle : ''\n \"\n [passwordStrengthMediumTitle]=\"\n _field.passwordStrengthOptions?.mediumTitle ? _field.passwordStrengthOptions?.mediumTitle : ''\n \"\n [passwordStrengthStrongTitle]=\"\n _field.passwordStrengthOptions?.strongTitle ? _field.passwordStrengthOptions?.strongTitle : ''\n \"\n [passwordStrengthValidation]=\"_field.passwordStrengthOptions?.validation\"\n />\n @if (_field.showToggle) {\n <span class=\"toggle-button\">\n <s-button\n [iconClass]=\"passwordVisible ? 'fas fa-eye-slash' : 'fas fa-eye'\"\n priority=\"default\"\n (clicked)=\"onChangeVisible()\"\n >\n </s-button>\n </span>\n }\n</div>\n\n", styles: ["s-text-field.ng-dirty.ng-invalid .password-input{border-color:#c13018}s-text-field.ng-dirty.ng-invalid .password-input:hover{border-color:highlight(#c13018)}.password-field{display:flex}.password-field--toggle .password-input{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.password-field--toggle .toggle-button s-button button{border-bottom-left-radius:0;border-top-left-radius:0}.password-field:has(.password-input.ng-invalid.ng-dirty) s-button button{border:1px solid #c13018}.password-field:has(.password-input:focus) s-button button{border:1px solid #428bca}.password-field:has(.password-input:focus):has(button) .password-input{border-right:none}\n"] }]
1885
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { onInput: [{
1839
+ }], propDecorators: { onInput: [{
1886
1840
  type: Output
1887
1841
  }], onFocus: [{
1888
1842
  type: Output
@@ -1897,7 +1851,7 @@ class ProfilePictureFieldComponent {
1897
1851
  field = input.required();
1898
1852
  formControl = input.required();
1899
1853
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProfilePictureFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1900
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: ProfilePictureFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n<s-profile-picture-picker\n [formControl]=\"formControl()\"\n [simpleTitle]=\"_field.simpleTitle\"\n [actionTitle]=\"_field.actionTitle\"\n [subtitle]=\"_field.subtitle\"\n [aspectRatio]=\"_field.aspectRatio\"\n [cropperLabelsConfig]=\"_field.cropperLabelsConfig\"\n [removeButtonLabel]=\"_field.removeButtonLabel\"\n [changeButtonLabel]=\"_field.changeButtonLabel\"\n [confirmationTexts]=\"_field.confirmationTexts\"\n [maxFileSize]=\"_field.maxFileSize\"\n [accept]=\"_field.accept\"\n [supportedExtensions]=\"_field.supportedExtensions ?? []\"\n (changedImage)=\"_field.onChangeImage ? _field.onChangeImage($event) : null\"\n (removedImage)=\"_field.onRemovedImage ? _field.onRemovedImage() : null\"\n (invalidFile)=\"_field.onInvalidFile ? _field.onInvalidFile($event) : null\"\n>\n</s-profile-picture-picker>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: ProfilePicturePickerModule }, { kind: "component", type: i1$c.ProfilePicturePickerComponent, selector: "s-profile-picture-picker", inputs: ["simpleTitle", "actionTitle", "subtitle", "aspectRatio", "cropperLabelsConfig", "removeButtonLabel", "changeButtonLabel", "confirmationTexts", "maxFileSize", "accept", "supportedExtensions", "image"], outputs: ["changedImage", "imageChange", "removedImage", "invalidFile"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
1854
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: ProfilePictureFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n<s-profile-picture-picker\n [formControl]=\"formControl()\"\n [simpleTitle]=\"_field.simpleTitle\"\n [actionTitle]=\"_field.actionTitle\"\n [subtitle]=\"_field.subtitle\"\n [aspectRatio]=\"_field.aspectRatio\"\n [cropperLabelsConfig]=\"_field.cropperLabelsConfig\"\n [removeButtonLabel]=\"_field.removeButtonLabel\"\n [changeButtonLabel]=\"_field.changeButtonLabel\"\n [confirmationTexts]=\"_field.confirmationTexts\"\n [maxFileSize]=\"_field.maxFileSize\"\n [accept]=\"_field.accept\"\n [supportedExtensions]=\"_field.supportedExtensions ?? []\"\n (changedImage)=\"_field.onChangeImage ? _field.onChangeImage($event) : null\"\n (removedImage)=\"_field.onRemovedImage ? _field.onRemovedImage() : null\"\n (invalidFile)=\"_field.onInvalidFile ? _field.onInvalidFile($event) : null\"\n>\n</s-profile-picture-picker>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: ProfilePicturePickerModule }, { kind: "component", type: i1$a.ProfilePicturePickerComponent, selector: "s-profile-picture-picker", inputs: ["simpleTitle", "actionTitle", "subtitle", "aspectRatio", "cropperLabelsConfig", "removeButtonLabel", "changeButtonLabel", "confirmationTexts", "maxFileSize", "accept", "supportedExtensions", "image"], outputs: ["changedImage", "imageChange", "removedImage", "invalidFile"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
1901
1855
  }
1902
1856
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProfilePictureFieldComponent, decorators: [{
1903
1857
  type: Component,
@@ -1932,7 +1886,7 @@ class RadioButtonFieldComponent {
1932
1886
  this.formControl().reset();
1933
1887
  }
1934
1888
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RadioButtonFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1935
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: RadioButtonFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onClick: "onClick", onFocus: "onFocus" }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n@if (_field.verticalAlignment) {\n <div class=\"ui-g\">\n @for (option of _field.options; let i = $index; track i) {\n <div class=\"ui-g-12\">\n <ng-container\n [ngTemplateOutlet]=\"radioButton\"\n [ngTemplateOutletContext]=\"{ option: option, index: i }\"\n >\n </ng-container>\n </div>\n }\n @if (_field.showClear && _field.required && !_field.required() && !formControl().disabled) {\n <s-button\n [label]=\"_field.clearLabel || 'Clear selection'\"\n (clicked)=\"onClear()\"\n priority=\"link\"\n >\n </s-button>\n }\n </div>\n} @else {\n <div class=\"ui-g horizontal-radio-buttons-container\">\n @for (option of _field.options; let i = $index; track i) {\n <ng-container\n [ngTemplateOutlet]=\"radioButton\"\n [ngTemplateOutletContext]=\"{ option: option, index: i }\"\n >\n </ng-container>\n }\n </div>\n @if (_field.showClear && _field.required && !_field.required() && !formControl().disabled) {\n <s-button\n class=\"horizontal-clear-option\"\n [label]=\"_field.clearLabel || 'Clear selection'\"\n (clicked)=\"onClear()\"\n priority=\"link\"\n >\n </s-button>\n }\n}\n\n<ng-template\n #radioButton\n let-option=\"option\"\n let-i=\"index\"\n>\n @let inputId = (_field.id || _field.name) + '-' + i;\n <s-radiobutton\n class=\"radio-button-item\"\n [name]=\"_field.name\"\n [value]=\"option.value\"\n [formControl]=\"formControl()\"\n [inputId]=\"inputId\"\n [sTooltip]=\"_field.tooltip\"\n [label]=\"option.label\"\n (focusedInput)=\"onFocus.next($event)\"\n (inputFocusLost)=\"_field.onBlur ? _field.onBlur($event) : null\"\n />\n</ng-template>\n\n", styles: ["s-button.horizontal-clear-option button{width:min-content!important}.horizontal-radio-buttons-container{gap:20px 40px;.radio-button-item{margin:0}}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "component", type: RadioButtonComponent, selector: "s-radiobutton", inputs: ["buttonDisabled", "label", "name", "value", "inputId"], outputs: ["buttonDisabledChange", "valueChange", "focusedInput", "inputFocusLost"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None });
1889
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: RadioButtonFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onClick: "onClick", onFocus: "onFocus" }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n@if (_field.verticalAlignment) {\n <div class=\"ui-g\">\n @for (option of _field.options; let i = $index; track i) {\n <div class=\"ui-g-12\">\n <ng-container\n [ngTemplateOutlet]=\"radioButton\"\n [ngTemplateOutletContext]=\"{ option: option, index: i }\"\n >\n </ng-container>\n </div>\n }\n @if (_field.showClear && _field.required && !_field.required() && !formControl().disabled) {\n <s-button\n [label]=\"_field.clearLabel || 'Clear selection'\"\n (clicked)=\"onClear()\"\n priority=\"link\"\n >\n </s-button>\n }\n </div>\n} @else {\n <div class=\"ui-g horizontal-radio-buttons-container\">\n @for (option of _field.options; let i = $index; track i) {\n <ng-container\n [ngTemplateOutlet]=\"radioButton\"\n [ngTemplateOutletContext]=\"{ option: option, index: i }\"\n >\n </ng-container>\n }\n </div>\n @if (_field.showClear && _field.required && !_field.required() && !formControl().disabled) {\n <s-button\n class=\"horizontal-clear-option\"\n [label]=\"_field.clearLabel || 'Clear selection'\"\n (clicked)=\"onClear()\"\n priority=\"link\"\n >\n </s-button>\n }\n}\n\n<ng-template\n #radioButton\n let-option=\"option\"\n let-i=\"index\"\n>\n @let inputId = (_field.id || _field.name) + '-' + i;\n <s-radiobutton\n class=\"radio-button-item\"\n [name]=\"_field.name\"\n [value]=\"option.value\"\n [formControl]=\"formControl()\"\n [inputId]=\"inputId\"\n [sTooltip]=\"_field.tooltip\"\n [label]=\"option.label\"\n (focusedInput)=\"onFocus.next($event)\"\n (inputFocusLost)=\"_field.onBlur ? _field.onBlur($event) : null\"\n />\n</ng-template>\n\n", styles: ["s-button.horizontal-clear-option button{width:min-content!important}.horizontal-radio-buttons-container{gap:20px 40px;.radio-button-item{margin:0}}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "component", type: RadioButtonComponent, selector: "s-radiobutton", inputs: ["buttonDisabled", "label", "name", "value", "inputId"], outputs: ["buttonDisabledChange", "valueChange", "focusedInput", "inputFocusLost"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None });
1936
1890
  }
1937
1891
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RadioButtonFieldComponent, decorators: [{
1938
1892
  type: Component,
@@ -1955,7 +1909,7 @@ class SelectFieldComponent {
1955
1909
  formControl = input.required();
1956
1910
  fieldUtils = inject(FormFieldUtilsService);
1957
1911
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SelectFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1958
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: SelectFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n<s-select\n [multiple]=\"_field.multiple ?? false\"\n [filter]=\"_field.filter ?? false\"\n [id]=\"_field.id || _field.name\"\n [options]=\"fieldUtils.getFieldProperty(_field.options)\"\n [placeholder]=\"_field.placeholder || ' '\"\n [formControl]=\"formControl()\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n [group]=\"_field.group ?? false\"\n [showClear]=\"_field.showClear ?? false\"\n [optionLabel]=\"_field.optionLabel ?? 'label'\"\n [optionValue]=\"_field.optionValue ?? 'value'\"\n (clicked)=\"_field.onClick ? _field.onClick($event) : null\"\n (onChange)=\"_field.onChange ? _field.onChange($event) : null\"\n [emptyMessage]=\"_field.emptyMessage ?? null\"\n>\n</s-select>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "component", type: SelectComponent, selector: "s-select", inputs: ["placeholder", "multiple", "options", "optionLabel", "optionValue", "showClear", "filter", "checkmark", "filterBy", "group", "virtualScroll", "virtualScrollItemSize", "emptyMessage", "disabled", "showOptions", "ariaLabel", "ariaLabelledBy"], outputs: ["disabledChange", "showOptionsChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }] });
1912
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: SelectFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n<s-select\n [multiple]=\"_field.multiple ?? false\"\n [filter]=\"_field.filter ?? false\"\n [id]=\"_field.id || _field.name\"\n [options]=\"fieldUtils.getFieldProperty(_field.options)\"\n [placeholder]=\"_field.placeholder || ' '\"\n [formControl]=\"formControl()\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n [group]=\"_field.group ?? false\"\n [showClear]=\"_field.showClear ?? false\"\n [optionLabel]=\"_field.optionLabel ?? 'label'\"\n [optionValue]=\"_field.optionValue ?? 'value'\"\n (clicked)=\"_field.onClick ? _field.onClick($event) : null\"\n (onChange)=\"_field.onChange ? _field.onChange($event) : null\"\n [emptyMessage]=\"_field.emptyMessage ?? null\"\n>\n</s-select>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "component", type: SelectComponent, selector: "s-select", inputs: ["placeholder", "multiple", "options", "optionLabel", "optionValue", "showClear", "filter", "checkmark", "filterBy", "group", "virtualScroll", "virtualScrollItemSize", "emptyMessage", "disabled", "showOptions", "ariaLabel", "ariaLabelledBy"], outputs: ["disabledChange", "showOptionsChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }] });
1959
1913
  }
1960
1914
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SelectFieldComponent, decorators: [{
1961
1915
  type: Component,
@@ -2056,7 +2010,7 @@ class SliderFieldComponent {
2056
2010
  return this.field().range ? this.getRangeLabel() : this.getNonRangeLabel();
2057
2011
  }
2058
2012
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SliderFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2059
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: SliderFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onChange: "onChange", onSlideEnd: "onSlideEnd" }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n<div class=\"slider-group\">\n <div class=\"slider-label\">\n <span>{{ label }}</span>\n </div>\n <s-slider\n #slider\n [id]=\"_field.id || _field.name\"\n [formControl]=\"formControl()\"\n [multiple]=\"_field.range ? _field.range : slider.multiple\"\n [min]=\"_field.min!\"\n [max]=\"_field.max!\"\n [step]=\"_field.step!\"\n (valueChange)=\"_field.onChange ? _field.onChange($event) : null\"\n >\n </s-slider>\n</div>\n\n", styles: [".slider-label{margin-bottom:5px;margin-left:-10px}.slider-group{margin-left:9px;margin-right:11px}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: SliderModule }, { kind: "component", type: i1$d.SliderComponent, selector: "s-slider", inputs: ["multiple", "value", "step", "hiddenThumb", "disabled", "min", "max", "minValueLabel", "maxValueLabel", "tabindex"], outputs: ["valueChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
2013
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: SliderFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onChange: "onChange", onSlideEnd: "onSlideEnd" }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n<div class=\"slider-group\">\n <div class=\"slider-label\">\n <span>{{ label }}</span>\n </div>\n <s-slider\n #slider\n [id]=\"_field.id || _field.name\"\n [formControl]=\"formControl()\"\n [multiple]=\"_field.range ? _field.range : slider.multiple\"\n [min]=\"_field.min!\"\n [max]=\"_field.max!\"\n [step]=\"_field.step!\"\n (valueChange)=\"_field.onChange ? _field.onChange($event) : null\"\n >\n </s-slider>\n</div>\n\n", styles: [".slider-label{margin-bottom:5px;margin-left:-10px}.slider-group{margin-left:9px;margin-right:11px}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: SliderModule }, { kind: "component", type: i1$b.SliderComponent, selector: "s-slider", inputs: ["multiple", "value", "step", "hiddenThumb", "disabled", "min", "max", "minValueLabel", "maxValueLabel", "tabindex"], outputs: ["valueChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
2060
2014
  }
2061
2015
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SliderFieldComponent, decorators: [{
2062
2016
  type: Component,
@@ -2076,7 +2030,7 @@ class StarRatingFieldComponent {
2076
2030
  }
2077
2031
  }
2078
2032
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StarRatingFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2079
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: StarRatingFieldComponent, isStandalone: true, selector: "s-star-rating-field", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<s-field-label [field]=\"field()\" />\n\n<s-star-rating\n [justifyContent]=\"field().justifyContent ?? 'start'\"\n [starsRange]=\"field().starRange\"\n [formControl]=\"formControl()\"\n (selectedStarChange)=\"onValueChange($event)\"\n>\n</s-star-rating>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "component", type: StarRatingComponent, selector: "s-star-rating", inputs: ["selectedStar", "starsRange", "justifyContent", "disabled"], outputs: ["selectedStarChange", "disabledChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
2033
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: StarRatingFieldComponent, isStandalone: true, selector: "s-star-rating-field", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<s-field-label [field]=\"field()\" />\n\n<s-star-rating\n [justifyContent]=\"field().justifyContent ?? 'start'\"\n [starsRange]=\"field().starRange\"\n [formControl]=\"formControl()\"\n (selectedStarChange)=\"onValueChange($event)\"\n>\n</s-star-rating>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "component", type: StarRatingComponent, selector: "s-star-rating", inputs: ["selectedStar", "starsRange", "justifyContent", "disabled"], outputs: ["selectedStarChange", "disabledChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
2080
2034
  }
2081
2035
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StarRatingFieldComponent, decorators: [{
2082
2036
  type: Component,
@@ -2084,14 +2038,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
2084
2038
  }] });
2085
2039
 
2086
2040
  class TextAreaFieldComponent {
2087
- changeDetectorRef;
2041
+ changeDetectorRef = inject(ChangeDetectorRef);
2088
2042
  field = input.required();
2089
2043
  formControl = input.required();
2090
2044
  formUtils = inject(FormFieldUtilsService);
2091
2045
  onDestroy$ = new Subject();
2092
- constructor(changeDetectorRef) {
2093
- this.changeDetectorRef = changeDetectorRef;
2094
- }
2095
2046
  ngOnInit() {
2096
2047
  this.formUtils.switchEmptyStringToNull(this.formControl(), this.onDestroy$);
2097
2048
  }
@@ -2102,17 +2053,17 @@ class TextAreaFieldComponent {
2102
2053
  this.onDestroy$.next();
2103
2054
  this.onDestroy$.complete();
2104
2055
  }
2105
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TextAreaFieldComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2106
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: TextAreaFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n@if (textArea.renderTextArea) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"textArea.textAreaElement.nativeElement\"\n ></s-field-label>\n}\n\n<s-textarea\n #textArea\n [inputId]=\"_field.id || _field.name\"\n [rows]=\"_field.rows ?? textArea.rows\"\n [formControl]=\"formControl()\"\n [inputStyle]=\"_field.style ?? {}\"\n [readOnly]=\"_field.readonly ? _field.readonly() : false\"\n [keyFilter]=\"_field.keyFilter\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [keepContext]=\"_field.keepContext ?? false\"\n [speechRecognitionPlaceholder]=\"_field.speechRecognitionPlaceholder ?? ''\"\n [maxLength]=\"_field.maxLength ?? null\"\n [speechRecognition]=\"_field.speechRecognition ?? false\"\n>\n</s-textarea>\n\n", styles: [".textarea-input{resize:vertical;width:100%;border:1px solid #c1c1cc;border-radius:3px;padding:8px}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: TextAreaModule }, { kind: "component", type: i1$e.TextAreaComponent, selector: "s-textarea", inputs: ["inputId", "rows", "speechRecognition", "keyFilter", "keepContext", "speechRecognitionPlaceholder", "maxLength", "placeholder", "inputStyle", "readOnly"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
2056
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TextAreaFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2057
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: TextAreaFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n@if (textArea.renderTextArea) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"textArea.textAreaElement.nativeElement\"\n ></s-field-label>\n}\n\n<s-textarea\n #textArea\n [inputId]=\"_field.id || _field.name\"\n [rows]=\"_field.rows ?? textArea.rows\"\n [formControl]=\"formControl()\"\n [inputStyle]=\"_field.style ?? {}\"\n [readOnly]=\"_field.readonly ? _field.readonly() : false\"\n [keyFilter]=\"_field.keyFilter\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [keepContext]=\"_field.keepContext ?? false\"\n [speechRecognitionPlaceholder]=\"_field.speechRecognitionPlaceholder ?? ''\"\n [maxLength]=\"_field.maxLength ?? null\"\n [speechRecognition]=\"_field.speechRecognition ?? false\"\n>\n</s-textarea>\n\n", styles: [".textarea-input{resize:vertical;width:100%;border:1px solid #c1c1cc;border-radius:3px;padding:8px}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: TextAreaModule }, { kind: "component", type: i1$c.TextAreaComponent, selector: "s-textarea", inputs: ["inputId", "rows", "speechRecognition", "keyFilter", "keepContext", "speechRecognitionPlaceholder", "maxLength", "placeholder", "inputStyle", "readOnly"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
2107
2058
  }
2108
2059
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TextAreaFieldComponent, decorators: [{
2109
2060
  type: Component,
2110
2061
  args: [{ standalone: true, imports: [FieldLabelComponent, TextAreaModule, ReactiveFormsModule], template: "@let _field = field();\n@if (textArea.renderTextArea) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"textArea.textAreaElement.nativeElement\"\n ></s-field-label>\n}\n\n<s-textarea\n #textArea\n [inputId]=\"_field.id || _field.name\"\n [rows]=\"_field.rows ?? textArea.rows\"\n [formControl]=\"formControl()\"\n [inputStyle]=\"_field.style ?? {}\"\n [readOnly]=\"_field.readonly ? _field.readonly() : false\"\n [keyFilter]=\"_field.keyFilter\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [keepContext]=\"_field.keepContext ?? false\"\n [speechRecognitionPlaceholder]=\"_field.speechRecognitionPlaceholder ?? ''\"\n [maxLength]=\"_field.maxLength ?? null\"\n [speechRecognition]=\"_field.speechRecognition ?? false\"\n>\n</s-textarea>\n\n", styles: [".textarea-input{resize:vertical;width:100%;border:1px solid #c1c1cc;border-radius:3px;padding:8px}\n"] }]
2111
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }] });
2062
+ }] });
2112
2063
 
2113
2064
  /* eslint-disable @angular-eslint/no-output-on-prefix */
2114
2065
  class TextFieldComponent {
2115
- changeDetectorRef;
2066
+ changeDetectorRef = inject(ChangeDetectorRef);
2116
2067
  field = input.required();
2117
2068
  formControl = input.required();
2118
2069
  fieldUtils = inject(FormFieldUtilsService);
@@ -2121,9 +2072,6 @@ class TextFieldComponent {
2121
2072
  onComplete = new EventEmitter();
2122
2073
  inputRef = null;
2123
2074
  ngUnsubscribe = new Subject();
2124
- constructor(changeDetectorRef) {
2125
- this.changeDetectorRef = changeDetectorRef;
2126
- }
2127
2075
  ngOnInit() {
2128
2076
  this.fieldUtils.switchEmptyStringToNull(this.formControl(), this.ngUnsubscribe);
2129
2077
  const field = this.field();
@@ -2158,8 +2106,8 @@ class TextFieldComponent {
2158
2106
  return this.inputRef?.nativeElement;
2159
2107
  }
2160
2108
  }
2161
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TextFieldComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2162
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: TextFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onInput: "onInput", onFocus: "onFocus", onComplete: "onComplete" }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true }], ngImport: i0, template: "@let _field = field();\n@if (inputElement) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputElement\"\n />\n}\n\n@if (_field.mask) {\n <p-inputMask\n #inputRef\n [type]=\"_field.inputType || 'text'\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [mask]=\"fieldUtils.getFieldPropertyMask(_field.mask)\"\n [characterPattern]=\"fieldUtils.getFieldProperty(_field.characterPattern ?? '[A-Za-z]')\"\n [unmask]=\"fieldUtils.getFieldProperty(_field.unmask ?? false)\"\n [placeholder]=\"_field.placeholder ?? ''\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [readonly]=\"_field.readonly ? _field.readonly() : false\"\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n >\n </p-inputMask>\n} @else {\n <div class=\"text-field\">\n @if (_field.leftAddon) {\n <div class=\"button-left\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.leftAddon }\"></ng-container>\n </div>\n }\n\n <ng-container *ngTemplateOutlet=\"_field.keyFilter ? inputKeyFilter : input\"></ng-container>\n\n @if (_field.rightAddon) {\n <div class=\"button-right\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.rightAddon }\"></ng-container>\n </div>\n }\n </div>\n}\n<ng-template #input>\n <input\n #inputRef\n [type]=\"_field.inputType || 'text'\"\n [id]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [showDelay]=\"500\"\n [maxLength]=\"_field.maxLength ?? 9999999\"\n pInputText\n class=\"input-text\"\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [ngStyle]=\"_field.style\"\n [readOnly]=\"_field.readonly ? _field.readonly() : false\"\n />\n</ng-template>\n<ng-template #inputKeyFilter>\n <input\n #inputText\n [type]=\"_field.inputType || 'text'\"\n [id]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [showDelay]=\"500\"\n [maxLength]=\"_field.maxLength ?? 9999999\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n class=\"input-text\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [pKeyFilter]=\"_field.keyFilter\"\n [formControl]=\"formControl()\"\n [ngStyle]=\"_field.style\"\n [readOnly]=\"_field.readonly ? _field.readonly() : false\"\n />\n</ng-template>\n\n<ng-template\n #addonRender\n let-button=\"button\"\n>\n <s-button\n [label]=\"button.label\"\n [priority]=\"button.priority ?? 'default'\"\n [iconClass]=\"button.icon\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(button.leftAddon)\"\n [auxiliary]=\"false\"\n (clicked)=\"button.callback?.()\"\n />\n</ng-template>\n", styles: ["s-text-field.ng-dirty.ng-invalid .p-inputtext{border-color:#c13018}s-text-field.ng-dirty.ng-invalid .p-inputtext:hover{border-color:highlight(#c13018)}.text-field{display:flex;width:100%}.text-field .input-text{width:auto;flex-grow:1}.text-field:has(.button-left) .input-text{border-top-left-radius:0;border-bottom-left-radius:0}.text-field:has(.button-left) .button-left button{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.text-field:has(input:focus) .button-left button{border-color:#428bca!important}.text-field:has(input.ng-invalid.ng-dirty) .button-left button{border-color:#c13018!important}.text-field:has(.button-right) .input-text{border-top-right-radius:0;border-bottom-right-radius:0}.text-field:has(.button-right) .button-right button{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.text-field:has(input:focus) .button-right button{border-color:#428bca!important}.text-field:has(input.ng-invalid.ng-dirty) .button-right button{border-color:#c13018!important}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: InputMaskModule }, { kind: "component", type: i2$1.InputMask, selector: "p-inputmask, p-inputMask, p-input-mask", inputs: ["type", "slotChar", "autoClear", "showClear", "style", "inputId", "styleClass", "placeholder", "size", "maxlength", "tabindex", "title", "variant", "ariaLabel", "ariaLabelledBy", "ariaRequired", "disabled", "readonly", "unmask", "name", "required", "characterPattern", "autofocus", "autoFocus", "autocomplete", "keepBuffer", "mask"], outputs: ["onComplete", "onFocus", "onBlur", "onInput", "onKeydown", "onClear"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3$1.TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: KeyFilterModule }, { kind: "directive", type: i4$3.KeyFilter, selector: "[pKeyFilter]", inputs: ["pValidateOnly", "pKeyFilter"], outputs: ["ngModelChange"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }], encapsulation: i0.ViewEncapsulation.None });
2109
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TextFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2110
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: TextFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onInput: "onInput", onFocus: "onFocus", onComplete: "onComplete" }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true }], ngImport: i0, template: "@let _field = field();\n@if (inputElement) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputElement\"\n />\n}\n\n@if (_field.mask) {\n <p-inputMask\n #inputRef\n [type]=\"_field.inputType || 'text'\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [mask]=\"fieldUtils.getFieldPropertyMask(_field.mask)\"\n [characterPattern]=\"fieldUtils.getFieldProperty(_field.characterPattern ?? '[A-Za-z]')\"\n [unmask]=\"fieldUtils.getFieldProperty(_field.unmask ?? false)\"\n [placeholder]=\"_field.placeholder ?? ''\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [readonly]=\"_field.readonly ? _field.readonly() : false\"\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n >\n </p-inputMask>\n} @else {\n <div class=\"text-field\">\n @if (_field.leftAddon) {\n <div class=\"button-left\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.leftAddon }\"></ng-container>\n </div>\n }\n\n <ng-container *ngTemplateOutlet=\"_field.keyFilter ? inputKeyFilter : input\"></ng-container>\n\n @if (_field.rightAddon) {\n <div class=\"button-right\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.rightAddon }\"></ng-container>\n </div>\n }\n </div>\n}\n<ng-template #input>\n <input\n #inputRef\n [type]=\"_field.inputType || 'text'\"\n [id]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [showDelay]=\"500\"\n [maxLength]=\"_field.maxLength ?? 9999999\"\n pInputText\n class=\"input-text\"\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [ngStyle]=\"_field.style\"\n [readOnly]=\"_field.readonly ? _field.readonly() : false\"\n />\n</ng-template>\n<ng-template #inputKeyFilter>\n <input\n #inputText\n [type]=\"_field.inputType || 'text'\"\n [id]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [showDelay]=\"500\"\n [maxLength]=\"_field.maxLength ?? 9999999\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n class=\"input-text\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [pKeyFilter]=\"_field.keyFilter\"\n [formControl]=\"formControl()\"\n [ngStyle]=\"_field.style\"\n [readOnly]=\"_field.readonly ? _field.readonly() : false\"\n />\n</ng-template>\n\n<ng-template\n #addonRender\n let-button=\"button\"\n>\n <s-button\n [label]=\"button.label\"\n [priority]=\"button.priority ?? 'default'\"\n [iconClass]=\"button.icon\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(button.leftAddon)\"\n [auxiliary]=\"false\"\n (clicked)=\"button.callback?.()\"\n />\n</ng-template>\n", styles: ["s-text-field.ng-dirty.ng-invalid .p-inputtext{border-color:#c13018}s-text-field.ng-dirty.ng-invalid .p-inputtext:hover{border-color:highlight(#c13018)}.text-field{display:flex;width:100%}.text-field .input-text{width:auto;flex-grow:1}.text-field:has(.button-left) .input-text{border-top-left-radius:0;border-bottom-left-radius:0}.text-field:has(.button-left) .button-left button{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.text-field:has(input:focus) .button-left button{border-color:#428bca!important}.text-field:has(input.ng-invalid.ng-dirty) .button-left button{border-color:#c13018!important}.text-field:has(.button-right) .input-text{border-top-right-radius:0;border-bottom-right-radius:0}.text-field:has(.button-right) .button-right button{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.text-field:has(input:focus) .button-right button{border-color:#428bca!important}.text-field:has(input.ng-invalid.ng-dirty) .button-right button{border-color:#c13018!important}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: InputMaskModule }, { kind: "component", type: i1$4.InputMask, selector: "p-inputmask, p-inputMask, p-input-mask", inputs: ["type", "slotChar", "autoClear", "showClear", "style", "inputId", "styleClass", "placeholder", "size", "maxlength", "tabindex", "title", "variant", "ariaLabel", "ariaLabelledBy", "ariaRequired", "disabled", "readonly", "unmask", "name", "required", "characterPattern", "autofocus", "autoFocus", "autocomplete", "keepBuffer", "mask"], outputs: ["onComplete", "onFocus", "onBlur", "onInput", "onKeydown", "onClear"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3$2.TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: KeyFilterModule }, { kind: "directive", type: i4$1.KeyFilter, selector: "[pKeyFilter]", inputs: ["pValidateOnly", "pKeyFilter"], outputs: ["ngModelChange"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }], encapsulation: i0.ViewEncapsulation.None });
2163
2111
  }
2164
2112
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TextFieldComponent, decorators: [{
2165
2113
  type: Component,
@@ -2175,7 +2123,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
2175
2123
  NgTemplateOutlet,
2176
2124
  InputText,
2177
2125
  ], template: "@let _field = field();\n@if (inputElement) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputElement\"\n />\n}\n\n@if (_field.mask) {\n <p-inputMask\n #inputRef\n [type]=\"_field.inputType || 'text'\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [mask]=\"fieldUtils.getFieldPropertyMask(_field.mask)\"\n [characterPattern]=\"fieldUtils.getFieldProperty(_field.characterPattern ?? '[A-Za-z]')\"\n [unmask]=\"fieldUtils.getFieldProperty(_field.unmask ?? false)\"\n [placeholder]=\"_field.placeholder ?? ''\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [readonly]=\"_field.readonly ? _field.readonly() : false\"\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n >\n </p-inputMask>\n} @else {\n <div class=\"text-field\">\n @if (_field.leftAddon) {\n <div class=\"button-left\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.leftAddon }\"></ng-container>\n </div>\n }\n\n <ng-container *ngTemplateOutlet=\"_field.keyFilter ? inputKeyFilter : input\"></ng-container>\n\n @if (_field.rightAddon) {\n <div class=\"button-right\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.rightAddon }\"></ng-container>\n </div>\n }\n </div>\n}\n<ng-template #input>\n <input\n #inputRef\n [type]=\"_field.inputType || 'text'\"\n [id]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [showDelay]=\"500\"\n [maxLength]=\"_field.maxLength ?? 9999999\"\n pInputText\n class=\"input-text\"\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [ngStyle]=\"_field.style\"\n [readOnly]=\"_field.readonly ? _field.readonly() : false\"\n />\n</ng-template>\n<ng-template #inputKeyFilter>\n <input\n #inputText\n [type]=\"_field.inputType || 'text'\"\n [id]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [showDelay]=\"500\"\n [maxLength]=\"_field.maxLength ?? 9999999\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n class=\"input-text\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [pKeyFilter]=\"_field.keyFilter\"\n [formControl]=\"formControl()\"\n [ngStyle]=\"_field.style\"\n [readOnly]=\"_field.readonly ? _field.readonly() : false\"\n />\n</ng-template>\n\n<ng-template\n #addonRender\n let-button=\"button\"\n>\n <s-button\n [label]=\"button.label\"\n [priority]=\"button.priority ?? 'default'\"\n [iconClass]=\"button.icon\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(button.leftAddon)\"\n [auxiliary]=\"false\"\n (clicked)=\"button.callback?.()\"\n />\n</ng-template>\n", styles: ["s-text-field.ng-dirty.ng-invalid .p-inputtext{border-color:#c13018}s-text-field.ng-dirty.ng-invalid .p-inputtext:hover{border-color:highlight(#c13018)}.text-field{display:flex;width:100%}.text-field .input-text{width:auto;flex-grow:1}.text-field:has(.button-left) .input-text{border-top-left-radius:0;border-bottom-left-radius:0}.text-field:has(.button-left) .button-left button{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.text-field:has(input:focus) .button-left button{border-color:#428bca!important}.text-field:has(input.ng-invalid.ng-dirty) .button-left button{border-color:#c13018!important}.text-field:has(.button-right) .input-text{border-top-right-radius:0;border-bottom-right-radius:0}.text-field:has(.button-right) .button-right button{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.text-field:has(input:focus) .button-right button{border-color:#428bca!important}.text-field:has(input.ng-invalid.ng-dirty) .button-right button{border-color:#c13018!important}\n"] }]
2178
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { onInput: [{
2126
+ }], propDecorators: { onInput: [{
2179
2127
  type: Output
2180
2128
  }], onFocus: [{
2181
2129
  type: Output