@lifecorner/angular-ui-kit 3.4.1 → 3.5.1

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 (340) hide show
  1. package/README.md +12 -2
  2. package/fesm2022/lifecorner-angular-ui-kit-accordion.mjs +454 -0
  3. package/fesm2022/lifecorner-angular-ui-kit-accordion.mjs.map +1 -0
  4. package/fesm2022/lifecorner-angular-ui-kit-alert.mjs +297 -0
  5. package/fesm2022/lifecorner-angular-ui-kit-alert.mjs.map +1 -0
  6. package/fesm2022/lifecorner-angular-ui-kit-app-shell.mjs +190 -0
  7. package/fesm2022/lifecorner-angular-ui-kit-app-shell.mjs.map +1 -0
  8. package/fesm2022/lifecorner-angular-ui-kit-area-chart.mjs +446 -0
  9. package/fesm2022/lifecorner-angular-ui-kit-area-chart.mjs.map +1 -0
  10. package/fesm2022/lifecorner-angular-ui-kit-avatar-group.mjs +158 -0
  11. package/fesm2022/lifecorner-angular-ui-kit-avatar-group.mjs.map +1 -0
  12. package/fesm2022/lifecorner-angular-ui-kit-avatar.mjs +216 -0
  13. package/fesm2022/lifecorner-angular-ui-kit-avatar.mjs.map +1 -0
  14. package/fesm2022/lifecorner-angular-ui-kit-badge.mjs +121 -0
  15. package/fesm2022/lifecorner-angular-ui-kit-badge.mjs.map +1 -0
  16. package/fesm2022/lifecorner-angular-ui-kit-bar-chart.mjs +360 -0
  17. package/fesm2022/lifecorner-angular-ui-kit-bar-chart.mjs.map +1 -0
  18. package/fesm2022/lifecorner-angular-ui-kit-bottom-nav.mjs +344 -0
  19. package/fesm2022/lifecorner-angular-ui-kit-bottom-nav.mjs.map +1 -0
  20. package/fesm2022/lifecorner-angular-ui-kit-breadcrumbs.mjs +191 -0
  21. package/fesm2022/lifecorner-angular-ui-kit-breadcrumbs.mjs.map +1 -0
  22. package/fesm2022/lifecorner-angular-ui-kit-button.mjs +423 -0
  23. package/fesm2022/lifecorner-angular-ui-kit-button.mjs.map +1 -0
  24. package/fesm2022/lifecorner-angular-ui-kit-calendar.mjs +368 -0
  25. package/fesm2022/lifecorner-angular-ui-kit-calendar.mjs.map +1 -0
  26. package/fesm2022/lifecorner-angular-ui-kit-callout.mjs +203 -0
  27. package/fesm2022/lifecorner-angular-ui-kit-callout.mjs.map +1 -0
  28. package/fesm2022/lifecorner-angular-ui-kit-card.mjs +323 -0
  29. package/fesm2022/lifecorner-angular-ui-kit-card.mjs.map +1 -0
  30. package/fesm2022/lifecorner-angular-ui-kit-chat.mjs +790 -0
  31. package/fesm2022/lifecorner-angular-ui-kit-chat.mjs.map +1 -0
  32. package/fesm2022/lifecorner-angular-ui-kit-checkbox.mjs +325 -0
  33. package/fesm2022/lifecorner-angular-ui-kit-checkbox.mjs.map +1 -0
  34. package/fesm2022/lifecorner-angular-ui-kit-chip.mjs +214 -0
  35. package/fesm2022/lifecorner-angular-ui-kit-chip.mjs.map +1 -0
  36. package/fesm2022/lifecorner-angular-ui-kit-choice-prompt.mjs +375 -0
  37. package/fesm2022/lifecorner-angular-ui-kit-choice-prompt.mjs.map +1 -0
  38. package/fesm2022/lifecorner-angular-ui-kit-code-block.mjs +518 -0
  39. package/fesm2022/lifecorner-angular-ui-kit-code-block.mjs.map +1 -0
  40. package/fesm2022/lifecorner-angular-ui-kit-color-picker.mjs +278 -0
  41. package/fesm2022/lifecorner-angular-ui-kit-color-picker.mjs.map +1 -0
  42. package/fesm2022/lifecorner-angular-ui-kit-combobox.mjs +688 -0
  43. package/fesm2022/lifecorner-angular-ui-kit-combobox.mjs.map +1 -0
  44. package/fesm2022/lifecorner-angular-ui-kit-confirm-dialog.mjs +494 -0
  45. package/fesm2022/lifecorner-angular-ui-kit-confirm-dialog.mjs.map +1 -0
  46. package/fesm2022/lifecorner-angular-ui-kit-container.mjs +103 -0
  47. package/fesm2022/lifecorner-angular-ui-kit-container.mjs.map +1 -0
  48. package/fesm2022/lifecorner-angular-ui-kit-copy-field.mjs +308 -0
  49. package/fesm2022/lifecorner-angular-ui-kit-copy-field.mjs.map +1 -0
  50. package/fesm2022/lifecorner-angular-ui-kit-date-range-picker.mjs +466 -0
  51. package/fesm2022/lifecorner-angular-ui-kit-date-range-picker.mjs.map +1 -0
  52. package/fesm2022/lifecorner-angular-ui-kit-datepicker.mjs +810 -0
  53. package/fesm2022/lifecorner-angular-ui-kit-datepicker.mjs.map +1 -0
  54. package/fesm2022/lifecorner-angular-ui-kit-dependency-viewer.mjs +1761 -0
  55. package/fesm2022/lifecorner-angular-ui-kit-dependency-viewer.mjs.map +1 -0
  56. package/fesm2022/lifecorner-angular-ui-kit-description-list.mjs +165 -0
  57. package/fesm2022/lifecorner-angular-ui-kit-description-list.mjs.map +1 -0
  58. package/fesm2022/lifecorner-angular-ui-kit-diff-viewer.mjs +356 -0
  59. package/fesm2022/lifecorner-angular-ui-kit-diff-viewer.mjs.map +1 -0
  60. package/fesm2022/lifecorner-angular-ui-kit-divider.mjs +119 -0
  61. package/fesm2022/lifecorner-angular-ui-kit-divider.mjs.map +1 -0
  62. package/fesm2022/lifecorner-angular-ui-kit-document-viewer.mjs +762 -0
  63. package/fesm2022/lifecorner-angular-ui-kit-document-viewer.mjs.map +1 -0
  64. package/fesm2022/lifecorner-angular-ui-kit-donut-chart.mjs +255 -0
  65. package/fesm2022/lifecorner-angular-ui-kit-donut-chart.mjs.map +1 -0
  66. package/fesm2022/lifecorner-angular-ui-kit-drawer.mjs +308 -0
  67. package/fesm2022/lifecorner-angular-ui-kit-drawer.mjs.map +1 -0
  68. package/fesm2022/lifecorner-angular-ui-kit-email-input.mjs +519 -0
  69. package/fesm2022/lifecorner-angular-ui-kit-email-input.mjs.map +1 -0
  70. package/fesm2022/lifecorner-angular-ui-kit-empty-state.mjs +143 -0
  71. package/fesm2022/lifecorner-angular-ui-kit-empty-state.mjs.map +1 -0
  72. package/fesm2022/lifecorner-angular-ui-kit-error-display.mjs +306 -0
  73. package/fesm2022/lifecorner-angular-ui-kit-error-display.mjs.map +1 -0
  74. package/fesm2022/lifecorner-angular-ui-kit-field-group.mjs +154 -0
  75. package/fesm2022/lifecorner-angular-ui-kit-field-group.mjs.map +1 -0
  76. package/fesm2022/lifecorner-angular-ui-kit-file-upload.mjs +281 -0
  77. package/fesm2022/lifecorner-angular-ui-kit-file-upload.mjs.map +1 -0
  78. package/fesm2022/lifecorner-angular-ui-kit-filter-bar.mjs +258 -0
  79. package/fesm2022/lifecorner-angular-ui-kit-filter-bar.mjs.map +1 -0
  80. package/fesm2022/lifecorner-angular-ui-kit-footer.mjs +200 -0
  81. package/fesm2022/lifecorner-angular-ui-kit-footer.mjs.map +1 -0
  82. package/fesm2022/lifecorner-angular-ui-kit-funnel-chart.mjs +292 -0
  83. package/fesm2022/lifecorner-angular-ui-kit-funnel-chart.mjs.map +1 -0
  84. package/fesm2022/lifecorner-angular-ui-kit-gallery.mjs +563 -0
  85. package/fesm2022/lifecorner-angular-ui-kit-gallery.mjs.map +1 -0
  86. package/fesm2022/lifecorner-angular-ui-kit-gantt-chart.mjs +314 -0
  87. package/fesm2022/lifecorner-angular-ui-kit-gantt-chart.mjs.map +1 -0
  88. package/fesm2022/lifecorner-angular-ui-kit-gauge.mjs +265 -0
  89. package/fesm2022/lifecorner-angular-ui-kit-gauge.mjs.map +1 -0
  90. package/fesm2022/lifecorner-angular-ui-kit-header.mjs +955 -0
  91. package/fesm2022/lifecorner-angular-ui-kit-header.mjs.map +1 -0
  92. package/fesm2022/lifecorner-angular-ui-kit-heatmap.mjs +305 -0
  93. package/fesm2022/lifecorner-angular-ui-kit-heatmap.mjs.map +1 -0
  94. package/fesm2022/lifecorner-angular-ui-kit-hero.mjs +168 -0
  95. package/fesm2022/lifecorner-angular-ui-kit-hero.mjs.map +1 -0
  96. package/fesm2022/lifecorner-angular-ui-kit-icon-names.mjs +9 -0
  97. package/fesm2022/lifecorner-angular-ui-kit-icon-names.mjs.map +1 -0
  98. package/fesm2022/lifecorner-angular-ui-kit-icon.mjs +1026 -0
  99. package/fesm2022/lifecorner-angular-ui-kit-icon.mjs.map +1 -0
  100. package/fesm2022/lifecorner-angular-ui-kit-input.mjs +595 -0
  101. package/fesm2022/lifecorner-angular-ui-kit-input.mjs.map +1 -0
  102. package/fesm2022/lifecorner-angular-ui-kit-internal-chart.mjs +105 -0
  103. package/fesm2022/lifecorner-angular-ui-kit-internal-chart.mjs.map +1 -0
  104. package/fesm2022/lifecorner-angular-ui-kit-internal-overlay.mjs +50 -0
  105. package/fesm2022/lifecorner-angular-ui-kit-internal-overlay.mjs.map +1 -0
  106. package/fesm2022/lifecorner-angular-ui-kit-internal-url.mjs +22 -0
  107. package/fesm2022/lifecorner-angular-ui-kit-internal-url.mjs.map +1 -0
  108. package/fesm2022/lifecorner-angular-ui-kit-kanban-board.mjs +319 -0
  109. package/fesm2022/lifecorner-angular-ui-kit-kanban-board.mjs.map +1 -0
  110. package/fesm2022/lifecorner-angular-ui-kit-line-chart.mjs +413 -0
  111. package/fesm2022/lifecorner-angular-ui-kit-line-chart.mjs.map +1 -0
  112. package/fesm2022/lifecorner-angular-ui-kit-list.mjs +338 -0
  113. package/fesm2022/lifecorner-angular-ui-kit-list.mjs.map +1 -0
  114. package/fesm2022/lifecorner-angular-ui-kit-log-viewer.mjs +813 -0
  115. package/fesm2022/lifecorner-angular-ui-kit-log-viewer.mjs.map +1 -0
  116. package/fesm2022/lifecorner-angular-ui-kit-logo.mjs +226 -0
  117. package/fesm2022/lifecorner-angular-ui-kit-logo.mjs.map +1 -0
  118. package/fesm2022/lifecorner-angular-ui-kit-markdown.mjs +756 -0
  119. package/fesm2022/lifecorner-angular-ui-kit-markdown.mjs.map +1 -0
  120. package/fesm2022/lifecorner-angular-ui-kit-menu.mjs +321 -0
  121. package/fesm2022/lifecorner-angular-ui-kit-menu.mjs.map +1 -0
  122. package/fesm2022/lifecorner-angular-ui-kit-modal.mjs +329 -0
  123. package/fesm2022/lifecorner-angular-ui-kit-modal.mjs.map +1 -0
  124. package/fesm2022/lifecorner-angular-ui-kit-models.mjs +0 -0
  125. package/fesm2022/lifecorner-angular-ui-kit-next-step-card.mjs +419 -0
  126. package/fesm2022/lifecorner-angular-ui-kit-next-step-card.mjs.map +1 -0
  127. package/fesm2022/lifecorner-angular-ui-kit-notification-center.mjs +644 -0
  128. package/fesm2022/lifecorner-angular-ui-kit-notification-center.mjs.map +1 -0
  129. package/fesm2022/lifecorner-angular-ui-kit-number-input.mjs +401 -0
  130. package/fesm2022/lifecorner-angular-ui-kit-number-input.mjs.map +1 -0
  131. package/fesm2022/lifecorner-angular-ui-kit-page-header.mjs +266 -0
  132. package/fesm2022/lifecorner-angular-ui-kit-page-header.mjs.map +1 -0
  133. package/fesm2022/lifecorner-angular-ui-kit-page-layout.mjs +127 -0
  134. package/fesm2022/lifecorner-angular-ui-kit-page-layout.mjs.map +1 -0
  135. package/fesm2022/lifecorner-angular-ui-kit-pagination.mjs +343 -0
  136. package/fesm2022/lifecorner-angular-ui-kit-pagination.mjs.map +1 -0
  137. package/fesm2022/lifecorner-angular-ui-kit-password-input.mjs +696 -0
  138. package/fesm2022/lifecorner-angular-ui-kit-password-input.mjs.map +1 -0
  139. package/fesm2022/lifecorner-angular-ui-kit-pie-chart.mjs +162 -0
  140. package/fesm2022/lifecorner-angular-ui-kit-pie-chart.mjs.map +1 -0
  141. package/fesm2022/lifecorner-angular-ui-kit-pipeline.mjs +159 -0
  142. package/fesm2022/lifecorner-angular-ui-kit-pipeline.mjs.map +1 -0
  143. package/fesm2022/lifecorner-angular-ui-kit-popover.mjs +190 -0
  144. package/fesm2022/lifecorner-angular-ui-kit-popover.mjs.map +1 -0
  145. package/fesm2022/lifecorner-angular-ui-kit-progress-bar.mjs +190 -0
  146. package/fesm2022/lifecorner-angular-ui-kit-progress-bar.mjs.map +1 -0
  147. package/fesm2022/lifecorner-angular-ui-kit-progress-ring.mjs +175 -0
  148. package/fesm2022/lifecorner-angular-ui-kit-progress-ring.mjs.map +1 -0
  149. package/fesm2022/lifecorner-angular-ui-kit-provider-button.mjs +255 -0
  150. package/fesm2022/lifecorner-angular-ui-kit-provider-button.mjs.map +1 -0
  151. package/fesm2022/lifecorner-angular-ui-kit-radar-chart.mjs +309 -0
  152. package/fesm2022/lifecorner-angular-ui-kit-radar-chart.mjs.map +1 -0
  153. package/fesm2022/lifecorner-angular-ui-kit-radio.mjs +708 -0
  154. package/fesm2022/lifecorner-angular-ui-kit-radio.mjs.map +1 -0
  155. package/fesm2022/lifecorner-angular-ui-kit-rating.mjs +327 -0
  156. package/fesm2022/lifecorner-angular-ui-kit-rating.mjs.map +1 -0
  157. package/fesm2022/lifecorner-angular-ui-kit-rich-text-editor.mjs +718 -0
  158. package/fesm2022/lifecorner-angular-ui-kit-rich-text-editor.mjs.map +1 -0
  159. package/fesm2022/lifecorner-angular-ui-kit-scatter-plot.mjs +415 -0
  160. package/fesm2022/lifecorner-angular-ui-kit-scatter-plot.mjs.map +1 -0
  161. package/fesm2022/lifecorner-angular-ui-kit-search-input.mjs +290 -0
  162. package/fesm2022/lifecorner-angular-ui-kit-search-input.mjs.map +1 -0
  163. package/fesm2022/lifecorner-angular-ui-kit-section.mjs +127 -0
  164. package/fesm2022/lifecorner-angular-ui-kit-section.mjs.map +1 -0
  165. package/fesm2022/lifecorner-angular-ui-kit-select.mjs +650 -0
  166. package/fesm2022/lifecorner-angular-ui-kit-select.mjs.map +1 -0
  167. package/fesm2022/lifecorner-angular-ui-kit-sidenav.mjs +691 -0
  168. package/fesm2022/lifecorner-angular-ui-kit-sidenav.mjs.map +1 -0
  169. package/fesm2022/lifecorner-angular-ui-kit-skeleton.mjs +144 -0
  170. package/fesm2022/lifecorner-angular-ui-kit-skeleton.mjs.map +1 -0
  171. package/fesm2022/lifecorner-angular-ui-kit-slider.mjs +204 -0
  172. package/fesm2022/lifecorner-angular-ui-kit-slider.mjs.map +1 -0
  173. package/fesm2022/lifecorner-angular-ui-kit-spacer.mjs +73 -0
  174. package/fesm2022/lifecorner-angular-ui-kit-spacer.mjs.map +1 -0
  175. package/fesm2022/lifecorner-angular-ui-kit-sparkline.mjs +318 -0
  176. package/fesm2022/lifecorner-angular-ui-kit-sparkline.mjs.map +1 -0
  177. package/fesm2022/lifecorner-angular-ui-kit-spinner.mjs +95 -0
  178. package/fesm2022/lifecorner-angular-ui-kit-spinner.mjs.map +1 -0
  179. package/fesm2022/lifecorner-angular-ui-kit-split-pane.mjs +298 -0
  180. package/fesm2022/lifecorner-angular-ui-kit-split-pane.mjs.map +1 -0
  181. package/fesm2022/lifecorner-angular-ui-kit-stack.mjs +162 -0
  182. package/fesm2022/lifecorner-angular-ui-kit-stack.mjs.map +1 -0
  183. package/fesm2022/lifecorner-angular-ui-kit-stacked-bar-chart.mjs +412 -0
  184. package/fesm2022/lifecorner-angular-ui-kit-stacked-bar-chart.mjs.map +1 -0
  185. package/fesm2022/lifecorner-angular-ui-kit-stage-list.mjs +186 -0
  186. package/fesm2022/lifecorner-angular-ui-kit-stage-list.mjs.map +1 -0
  187. package/fesm2022/lifecorner-angular-ui-kit-stat-trend.mjs +224 -0
  188. package/fesm2022/lifecorner-angular-ui-kit-stat-trend.mjs.map +1 -0
  189. package/fesm2022/lifecorner-angular-ui-kit-status-dot.mjs +122 -0
  190. package/fesm2022/lifecorner-angular-ui-kit-status-dot.mjs.map +1 -0
  191. package/fesm2022/lifecorner-angular-ui-kit-stepper.mjs +209 -0
  192. package/fesm2022/lifecorner-angular-ui-kit-stepper.mjs.map +1 -0
  193. package/fesm2022/lifecorner-angular-ui-kit-switch.mjs +249 -0
  194. package/fesm2022/lifecorner-angular-ui-kit-switch.mjs.map +1 -0
  195. package/fesm2022/lifecorner-angular-ui-kit-table.mjs +1434 -0
  196. package/fesm2022/lifecorner-angular-ui-kit-table.mjs.map +1 -0
  197. package/fesm2022/lifecorner-angular-ui-kit-tabs.mjs +407 -0
  198. package/fesm2022/lifecorner-angular-ui-kit-tabs.mjs.map +1 -0
  199. package/fesm2022/lifecorner-angular-ui-kit-tag-input.mjs +380 -0
  200. package/fesm2022/lifecorner-angular-ui-kit-tag-input.mjs.map +1 -0
  201. package/fesm2022/lifecorner-angular-ui-kit-textarea.mjs +440 -0
  202. package/fesm2022/lifecorner-angular-ui-kit-textarea.mjs.map +1 -0
  203. package/fesm2022/lifecorner-angular-ui-kit-theme.mjs +145 -0
  204. package/fesm2022/lifecorner-angular-ui-kit-theme.mjs.map +1 -0
  205. package/fesm2022/lifecorner-angular-ui-kit-timeline.mjs +262 -0
  206. package/fesm2022/lifecorner-angular-ui-kit-timeline.mjs.map +1 -0
  207. package/fesm2022/lifecorner-angular-ui-kit-toast.mjs +352 -0
  208. package/fesm2022/lifecorner-angular-ui-kit-toast.mjs.map +1 -0
  209. package/fesm2022/lifecorner-angular-ui-kit-toggle-group.mjs +215 -0
  210. package/fesm2022/lifecorner-angular-ui-kit-toggle-group.mjs.map +1 -0
  211. package/fesm2022/lifecorner-angular-ui-kit-tokens.mjs +134 -0
  212. package/fesm2022/lifecorner-angular-ui-kit-tokens.mjs.map +1 -0
  213. package/fesm2022/lifecorner-angular-ui-kit-toolbar.mjs +225 -0
  214. package/fesm2022/lifecorner-angular-ui-kit-toolbar.mjs.map +1 -0
  215. package/fesm2022/lifecorner-angular-ui-kit-tooltip.mjs +386 -0
  216. package/fesm2022/lifecorner-angular-ui-kit-tooltip.mjs.map +1 -0
  217. package/fesm2022/lifecorner-angular-ui-kit-tree-view.mjs +509 -0
  218. package/fesm2022/lifecorner-angular-ui-kit-tree-view.mjs.map +1 -0
  219. package/fesm2022/lifecorner-angular-ui-kit-typography.mjs +209 -0
  220. package/fesm2022/lifecorner-angular-ui-kit-typography.mjs.map +1 -0
  221. package/fesm2022/lifecorner-angular-ui-kit-verification-code-input.mjs +365 -0
  222. package/fesm2022/lifecorner-angular-ui-kit-verification-code-input.mjs.map +1 -0
  223. package/fesm2022/lifecorner-angular-ui-kit-waterfall-chart.mjs +371 -0
  224. package/fesm2022/lifecorner-angular-ui-kit-waterfall-chart.mjs.map +1 -0
  225. package/fesm2022/lifecorner-angular-ui-kit.mjs +109 -38925
  226. package/package.json +449 -1
  227. package/types/lifecorner-angular-ui-kit-accordion.d.ts +239 -0
  228. package/types/lifecorner-angular-ui-kit-alert.d.ts +189 -0
  229. package/types/lifecorner-angular-ui-kit-app-shell.d.ts +148 -0
  230. package/types/lifecorner-angular-ui-kit-area-chart.d.ts +180 -0
  231. package/types/lifecorner-angular-ui-kit-avatar-group.d.ts +62 -0
  232. package/types/lifecorner-angular-ui-kit-avatar.d.ts +131 -0
  233. package/types/lifecorner-angular-ui-kit-badge.d.ts +59 -0
  234. package/types/lifecorner-angular-ui-kit-bar-chart.d.ts +157 -0
  235. package/types/lifecorner-angular-ui-kit-bottom-nav.d.ts +184 -0
  236. package/types/lifecorner-angular-ui-kit-breadcrumbs.d.ts +55 -0
  237. package/types/lifecorner-angular-ui-kit-button.d.ts +181 -0
  238. package/types/lifecorner-angular-ui-kit-calendar.d.ts +136 -0
  239. package/types/lifecorner-angular-ui-kit-callout.d.ts +77 -0
  240. package/types/lifecorner-angular-ui-kit-card.d.ts +213 -0
  241. package/types/lifecorner-angular-ui-kit-chat.d.ts +379 -0
  242. package/types/lifecorner-angular-ui-kit-checkbox.d.ts +116 -0
  243. package/types/lifecorner-angular-ui-kit-chip.d.ts +104 -0
  244. package/types/lifecorner-angular-ui-kit-choice-prompt.d.ts +186 -0
  245. package/types/lifecorner-angular-ui-kit-code-block.d.ts +85 -0
  246. package/types/lifecorner-angular-ui-kit-color-picker.d.ts +88 -0
  247. package/types/lifecorner-angular-ui-kit-combobox.d.ts +222 -0
  248. package/types/lifecorner-angular-ui-kit-confirm-dialog.d.ts +211 -0
  249. package/types/lifecorner-angular-ui-kit-container.d.ts +47 -0
  250. package/types/lifecorner-angular-ui-kit-copy-field.d.ts +89 -0
  251. package/types/lifecorner-angular-ui-kit-date-range-picker.d.ts +126 -0
  252. package/types/lifecorner-angular-ui-kit-datepicker.d.ts +363 -0
  253. package/types/lifecorner-angular-ui-kit-dependency-viewer.d.ts +568 -0
  254. package/types/lifecorner-angular-ui-kit-description-list.d.ts +137 -0
  255. package/types/lifecorner-angular-ui-kit-diff-viewer.d.ts +93 -0
  256. package/types/lifecorner-angular-ui-kit-divider.d.ts +66 -0
  257. package/types/lifecorner-angular-ui-kit-document-viewer.d.ts +256 -0
  258. package/types/lifecorner-angular-ui-kit-donut-chart.d.ts +92 -0
  259. package/types/lifecorner-angular-ui-kit-drawer.d.ts +124 -0
  260. package/types/lifecorner-angular-ui-kit-email-input.d.ts +292 -0
  261. package/types/lifecorner-angular-ui-kit-empty-state.d.ts +81 -0
  262. package/types/lifecorner-angular-ui-kit-error-display.d.ts +157 -0
  263. package/types/lifecorner-angular-ui-kit-field-group.d.ts +69 -0
  264. package/types/lifecorner-angular-ui-kit-file-upload.d.ts +122 -0
  265. package/types/lifecorner-angular-ui-kit-filter-bar.d.ts +116 -0
  266. package/types/lifecorner-angular-ui-kit-footer.d.ts +97 -0
  267. package/types/lifecorner-angular-ui-kit-funnel-chart.d.ts +97 -0
  268. package/types/lifecorner-angular-ui-kit-gallery.d.ts +240 -0
  269. package/types/lifecorner-angular-ui-kit-gantt-chart.d.ts +133 -0
  270. package/types/lifecorner-angular-ui-kit-gauge.d.ts +94 -0
  271. package/types/lifecorner-angular-ui-kit-header.d.ts +496 -0
  272. package/types/lifecorner-angular-ui-kit-heatmap.d.ts +126 -0
  273. package/types/lifecorner-angular-ui-kit-hero.d.ts +121 -0
  274. package/types/lifecorner-angular-ui-kit-icon-names.d.ts +21 -0
  275. package/types/lifecorner-angular-ui-kit-icon.d.ts +260 -0
  276. package/types/lifecorner-angular-ui-kit-input.d.ts +346 -0
  277. package/types/lifecorner-angular-ui-kit-internal-chart.d.ts +86 -0
  278. package/types/lifecorner-angular-ui-kit-internal-overlay.d.ts +31 -0
  279. package/types/lifecorner-angular-ui-kit-internal-url.d.ts +22 -0
  280. package/types/lifecorner-angular-ui-kit-kanban-board.d.ts +111 -0
  281. package/types/lifecorner-angular-ui-kit-line-chart.d.ts +186 -0
  282. package/types/lifecorner-angular-ui-kit-list.d.ts +215 -0
  283. package/types/lifecorner-angular-ui-kit-log-viewer.d.ts +355 -0
  284. package/types/lifecorner-angular-ui-kit-logo.d.ts +182 -0
  285. package/types/lifecorner-angular-ui-kit-markdown.d.ts +278 -0
  286. package/types/lifecorner-angular-ui-kit-menu.d.ts +152 -0
  287. package/types/lifecorner-angular-ui-kit-modal.d.ts +207 -0
  288. package/types/lifecorner-angular-ui-kit-models.d.ts +62 -0
  289. package/types/lifecorner-angular-ui-kit-next-step-card.d.ts +262 -0
  290. package/types/lifecorner-angular-ui-kit-notification-center.d.ts +237 -0
  291. package/types/lifecorner-angular-ui-kit-number-input.d.ts +126 -0
  292. package/types/lifecorner-angular-ui-kit-page-header.d.ts +178 -0
  293. package/types/lifecorner-angular-ui-kit-page-layout.d.ts +61 -0
  294. package/types/lifecorner-angular-ui-kit-pagination.d.ts +141 -0
  295. package/types/lifecorner-angular-ui-kit-password-input.d.ts +361 -0
  296. package/types/lifecorner-angular-ui-kit-pie-chart.d.ts +58 -0
  297. package/types/lifecorner-angular-ui-kit-pipeline.d.ts +89 -0
  298. package/types/lifecorner-angular-ui-kit-popover.d.ts +104 -0
  299. package/types/lifecorner-angular-ui-kit-progress-bar.d.ts +116 -0
  300. package/types/lifecorner-angular-ui-kit-progress-ring.d.ts +67 -0
  301. package/types/lifecorner-angular-ui-kit-provider-button.d.ts +137 -0
  302. package/types/lifecorner-angular-ui-kit-radar-chart.d.ts +113 -0
  303. package/types/lifecorner-angular-ui-kit-radio.d.ts +297 -0
  304. package/types/lifecorner-angular-ui-kit-rating.d.ts +115 -0
  305. package/types/lifecorner-angular-ui-kit-rich-text-editor.d.ts +226 -0
  306. package/types/lifecorner-angular-ui-kit-scatter-plot.d.ts +190 -0
  307. package/types/lifecorner-angular-ui-kit-search-input.d.ts +137 -0
  308. package/types/lifecorner-angular-ui-kit-section.d.ts +34 -0
  309. package/types/lifecorner-angular-ui-kit-select.d.ts +274 -0
  310. package/types/lifecorner-angular-ui-kit-sidenav.d.ts +368 -0
  311. package/types/lifecorner-angular-ui-kit-skeleton.d.ts +61 -0
  312. package/types/lifecorner-angular-ui-kit-slider.d.ts +79 -0
  313. package/types/lifecorner-angular-ui-kit-spacer.d.ts +27 -0
  314. package/types/lifecorner-angular-ui-kit-sparkline.d.ts +113 -0
  315. package/types/lifecorner-angular-ui-kit-spinner.d.ts +50 -0
  316. package/types/lifecorner-angular-ui-kit-split-pane.d.ts +131 -0
  317. package/types/lifecorner-angular-ui-kit-stack.d.ts +49 -0
  318. package/types/lifecorner-angular-ui-kit-stacked-bar-chart.d.ts +171 -0
  319. package/types/lifecorner-angular-ui-kit-stage-list.d.ts +69 -0
  320. package/types/lifecorner-angular-ui-kit-stat-trend.d.ts +62 -0
  321. package/types/lifecorner-angular-ui-kit-status-dot.d.ts +62 -0
  322. package/types/lifecorner-angular-ui-kit-stepper.d.ts +113 -0
  323. package/types/lifecorner-angular-ui-kit-switch.d.ts +141 -0
  324. package/types/lifecorner-angular-ui-kit-table.d.ts +632 -0
  325. package/types/lifecorner-angular-ui-kit-tabs.d.ts +196 -0
  326. package/types/lifecorner-angular-ui-kit-tag-input.d.ts +123 -0
  327. package/types/lifecorner-angular-ui-kit-textarea.d.ts +225 -0
  328. package/types/lifecorner-angular-ui-kit-theme.d.ts +91 -0
  329. package/types/lifecorner-angular-ui-kit-timeline.d.ts +162 -0
  330. package/types/lifecorner-angular-ui-kit-toast.d.ts +204 -0
  331. package/types/lifecorner-angular-ui-kit-toggle-group.d.ts +100 -0
  332. package/types/lifecorner-angular-ui-kit-tokens.d.ts +134 -0
  333. package/types/lifecorner-angular-ui-kit-toolbar.d.ts +120 -0
  334. package/types/lifecorner-angular-ui-kit-tooltip.d.ts +120 -0
  335. package/types/lifecorner-angular-ui-kit-tree-view.d.ts +231 -0
  336. package/types/lifecorner-angular-ui-kit-typography.d.ts +126 -0
  337. package/types/lifecorner-angular-ui-kit-verification-code-input.d.ts +187 -0
  338. package/types/lifecorner-angular-ui-kit-waterfall-chart.d.ts +163 -0
  339. package/types/lifecorner-angular-ui-kit.d.ts +109 -17401
  340. package/fesm2022/lifecorner-angular-ui-kit.mjs.map +0 -1
@@ -0,0 +1,213 @@
1
+ import * as i0 from "@angular/core";
2
+ /** Visual variant of `lc-card`. */
3
+ export type CardVariant = 'elevated' | 'outlined' | 'flat' | 'raised' | 'dashed';
4
+ /** Heading level of `lc-card`'s built-in title. */
5
+ export type CardHeadingLevel = 2 | 3 | 4 | 5 | 6;
6
+ /**
7
+ * Card component for content grouping and visual hierarchy.
8
+ *
9
+ * Features:
10
+ * - Variant styles (elevated, outlined, flat, raised, dashed)
11
+ * - Configurable padding (none, xs, sm, md, lg)
12
+ * - Border radius options (none, sm, md, lg, xl, full)
13
+ * - Optional title display, with an optional leading icon tile
14
+ * - Content projection for flexible body content
15
+ *
16
+ * @example
17
+ * ```html
18
+ * <lc-card title="Card Title" variant="elevated" padding="md">
19
+ * <p>Card body content</p>
20
+ * </lc-card>
21
+ *
22
+ * <!-- With a leading brand-tile icon in the header -->
23
+ * <lc-card title="Repository" subtitle="Checkout &amp; profile" icon="git-branch">
24
+ * ...
25
+ * </lc-card>
26
+ * ```
27
+ */
28
+ export declare class CardComponent {
29
+ /**
30
+ * Optional title rendered as a styled header.
31
+ * For complex headers (e.g. title + action button), use content projection instead.
32
+ */
33
+ title: import("@angular/core").InputSignal<string | undefined>;
34
+ /**
35
+ * Optional subtitle rendered below the title.
36
+ */
37
+ subtitle: import("@angular/core").InputSignal<string | undefined>;
38
+ /**
39
+ * Optional leading icon (Tabler icon name) rendered as a teal brand tile to
40
+ * the left of the title. Only shown when `title` is set.
41
+ */
42
+ icon: import("@angular/core").InputSignal<string | undefined>;
43
+ /**
44
+ * Visual treatment of the leading icon tile.
45
+ * - brand: gradient teal tile with light ink (default)
46
+ * - subtle: translucent surface tile with brand-teal ink
47
+ * @default 'brand'
48
+ */
49
+ iconVariant: import("@angular/core").InputSignal<"brand" | "subtle">;
50
+ /**
51
+ * Size of the leading icon tile.
52
+ * - md: 2.25rem tile (default)
53
+ * - sm: compact ~1.75rem chip for dense card headers
54
+ * @default 'md'
55
+ */
56
+ iconSize: import("@angular/core").InputSignal<"sm" | "md">;
57
+ /**
58
+ * Optional badge text/count shown next to the title (e.g. item count).
59
+ * For a richer status badge (e.g. a leading status dot), project an
60
+ * `lc-badge` into the `card-badge` slot instead — the slot takes precedence.
61
+ */
62
+ badge: import("@angular/core").InputSignal<string | undefined>;
63
+ /**
64
+ * Badge color variant.
65
+ * @default 'default'
66
+ */
67
+ badgeVariant: import("@angular/core").InputSignal<"default" | "primary" | "success" | "warning" | "error">;
68
+ /**
69
+ * Visual variant of the card
70
+ * - elevated: Box shadow (default)
71
+ * - outlined: Border only (the hairline `--color-border`, no shadow) — the
72
+ * content card on the "Weite" sky with `borderRadius="xl"`
73
+ * - flat: No shadow or border
74
+ * - raised: plain surface, hairline border and the long, soft
75
+ * `--shadow-auth-card`, no accent line — the sign-in card
76
+ * - dashed: the muted "coming soon" tile — `--color-muted-tile` fill, 1 px
77
+ * dashed `--color-muted-tile-border`, secondary ink, icons in
78
+ * `--color-muted-tile-icon`. Never clickable: `clickable` is ignored
79
+ * @default 'elevated'
80
+ */
81
+ variant: import("@angular/core").InputSignal<CardVariant>;
82
+ /**
83
+ * Padding inside the card
84
+ * @default 'md'
85
+ */
86
+ padding: import("@angular/core").InputSignal<"sm" | "md" | "none" | "xs" | "lg">;
87
+ /**
88
+ * Whether the card is clickable (hover effects, cursor pointer)
89
+ * @default false
90
+ */
91
+ clickable: import("@angular/core").InputSignal<boolean>;
92
+ /**
93
+ * Whether the card is selected (if clickable)
94
+ * @default false
95
+ */
96
+ selected: import("@angular/core").InputSignal<boolean>;
97
+ /**
98
+ * Border radius size: `none`, `sm`, `md`, `lg` (18 px), `xl` (24 px, the
99
+ * "Weite" content card) or `full`.
100
+ * @default 'md'
101
+ */
102
+ borderRadius: import("@angular/core").InputSignal<"sm" | "md" | "none" | "lg" | "xl" | "full">;
103
+ /**
104
+ * Heading level of the built-in `title` (`h2`–`h6`), so the card fits the
105
+ * page's outline. Semantics only, the look stays the same.
106
+ * @default 3
107
+ */
108
+ headingLevel: import("@angular/core").InputSignal<CardHeadingLevel>;
109
+ /**
110
+ * ARIA label for accessibility
111
+ */
112
+ ariaLabel: import("@angular/core").InputSignal<string | undefined>;
113
+ /**
114
+ * Emitted when card is clicked (if clickable)
115
+ */
116
+ readonly cardClick: import("@angular/core").OutputEmitterRef<MouseEvent>;
117
+ /**
118
+ * Whether the card acts as a button: `clickable`, except for the dashed
119
+ * "coming soon" tile, which is never interactive.
120
+ */
121
+ protected isClickable: import("@angular/core").Signal<boolean>;
122
+ /**
123
+ * Compute card CSS classes based on inputs
124
+ */
125
+ protected cardClasses: import("@angular/core").Signal<string>;
126
+ /**
127
+ * Compute ARIA role based on clickable state
128
+ */
129
+ protected role: import("@angular/core").Signal<"button" | "article">;
130
+ /**
131
+ * Handle card click events
132
+ */
133
+ protected handleClick(event: MouseEvent): void;
134
+ /**
135
+ * Handle keyboard events for accessibility
136
+ */
137
+ protected handleKeydown(event: KeyboardEvent): void;
138
+ static ɵfac: i0.ɵɵFactoryDeclaration<CardComponent, never>;
139
+ static ɵcmp: i0.ɵɵComponentDeclaration<CardComponent, "lc-card", never, {
140
+ "title": {
141
+ "alias": "title";
142
+ "required": false;
143
+ "isSignal": true;
144
+ };
145
+ "subtitle": {
146
+ "alias": "subtitle";
147
+ "required": false;
148
+ "isSignal": true;
149
+ };
150
+ "icon": {
151
+ "alias": "icon";
152
+ "required": false;
153
+ "isSignal": true;
154
+ };
155
+ "iconVariant": {
156
+ "alias": "iconVariant";
157
+ "required": false;
158
+ "isSignal": true;
159
+ };
160
+ "iconSize": {
161
+ "alias": "iconSize";
162
+ "required": false;
163
+ "isSignal": true;
164
+ };
165
+ "badge": {
166
+ "alias": "badge";
167
+ "required": false;
168
+ "isSignal": true;
169
+ };
170
+ "badgeVariant": {
171
+ "alias": "badgeVariant";
172
+ "required": false;
173
+ "isSignal": true;
174
+ };
175
+ "variant": {
176
+ "alias": "variant";
177
+ "required": false;
178
+ "isSignal": true;
179
+ };
180
+ "padding": {
181
+ "alias": "padding";
182
+ "required": false;
183
+ "isSignal": true;
184
+ };
185
+ "clickable": {
186
+ "alias": "clickable";
187
+ "required": false;
188
+ "isSignal": true;
189
+ };
190
+ "selected": {
191
+ "alias": "selected";
192
+ "required": false;
193
+ "isSignal": true;
194
+ };
195
+ "borderRadius": {
196
+ "alias": "borderRadius";
197
+ "required": false;
198
+ "isSignal": true;
199
+ };
200
+ "headingLevel": {
201
+ "alias": "headingLevel";
202
+ "required": false;
203
+ "isSignal": true;
204
+ };
205
+ "ariaLabel": {
206
+ "alias": "ariaLabel";
207
+ "required": false;
208
+ "isSignal": true;
209
+ };
210
+ }, {
211
+ "cardClick": "cardClick";
212
+ }, never, ["[card-badge]", "[card-header-action]", "[card-header]", "*", "[card-footer]"], true, never>;
213
+ }
@@ -0,0 +1,379 @@
1
+ import * as i0 from "@angular/core";
2
+ import { TemplateRef } from "@angular/core";
3
+ export type ChatMessageRole = 'user' | 'agent' | 'system';
4
+ /**
5
+ * Semantic status of a chat message — orthogonal to `role` (role = *who*
6
+ * speaks; status = *what kind* of message). Reuses the semantic vocabulary of
7
+ * `lc-alert` / `lc-callout` and drives the rail dot/accent colour + a status
8
+ * icon. `'default'` (or omitted) reproduces the role-coloured behaviour exactly.
9
+ */
10
+ export type ChatMessageStatus = 'default' | 'info' | 'success' | 'warning' | 'error';
11
+ /**
12
+ * Controls which messages are rendered as Markdown via `<lc-markdown>`.
13
+ * - `false` (default): plain text rendering (legacy behavior)
14
+ * - `true` / `'all'`: render every role as Markdown
15
+ * - `'agent'`: only agent messages are rendered as Markdown (recommended)
16
+ */
17
+ export type ChatRenderMarkdown = boolean | 'agent' | 'all';
18
+ /**
19
+ * Represents a file attached to a chat message or pending in the input.
20
+ *
21
+ * The `file` reference is only available for attachments produced by the
22
+ * input (i.e. emitted via `messageSend` / `fileAttach`). Attachments
23
+ * coming from the server or message history typically rely on `url` only.
24
+ */
25
+ export interface ChatAttachment {
26
+ id: string;
27
+ name: string;
28
+ /** MIME type, e.g. `image/png`, `application/pdf`. */
29
+ type?: string;
30
+ /** Size in bytes. */
31
+ size?: number;
32
+ /** Object URL or remote URL to preview / download the file. */
33
+ url?: string;
34
+ /** Raw browser File reference (set for newly uploaded files). */
35
+ file?: File;
36
+ }
37
+ export interface ChatMessage {
38
+ id: string;
39
+ role: ChatMessageRole;
40
+ content: string;
41
+ timestamp?: Date | string;
42
+ avatar?: string;
43
+ name?: string;
44
+ streaming?: boolean;
45
+ /**
46
+ * Semantic status — colours the rail dot/accent and shows a status icon.
47
+ * Independent of `role`: a `role: 'agent'` message can be `status: 'error'`
48
+ * (failed reply) or `status: 'success'` (tool finished). Defaults to
49
+ * `'default'`, which reproduces today's role-coloured behaviour exactly.
50
+ * An `'error'` message never pulses and is announced assertively (`role="alert"`).
51
+ */
52
+ status?: ChatMessageStatus;
53
+ /** Optional file attachments associated with the message. */
54
+ attachments?: ChatAttachment[];
55
+ /** Arbitrary data passed to a custom messageTemplate. */
56
+ data?: Record<string, unknown>;
57
+ }
58
+ export interface ChatSendEvent {
59
+ content: string;
60
+ /** Files attached to the outgoing message, if any. */
61
+ attachments?: ChatAttachment[];
62
+ }
63
+ export interface ChatFileAttachEvent {
64
+ attachments: ChatAttachment[];
65
+ /** Files rejected because of `accept` / `maxFileSize` constraints. */
66
+ rejected: {
67
+ file: File;
68
+ reason: 'type' | 'size';
69
+ }[];
70
+ }
71
+ export declare class ChatComponent {
72
+ private static nextId;
73
+ /** Id of the composer textarea (links the visually-hidden label). */
74
+ protected readonly inputId: string;
75
+ /** Messages to display. */
76
+ messages: import("@angular/core").InputSignal<ChatMessage[]>;
77
+ /** Placeholder text for the input. */
78
+ placeholder: import("@angular/core").InputSignal<string>;
79
+ /** Accessible name of the composer textarea (visually hidden label). */
80
+ inputLabel: import("@angular/core").InputSignal<string>;
81
+ /** Title displayed in the header. */
82
+ title: import("@angular/core").InputSignal<string>;
83
+ /** Whether the agent is currently streaming / typing. */
84
+ isStreaming: import("@angular/core").InputSignal<boolean>;
85
+ /** Show the header bar. */
86
+ showHeader: import("@angular/core").InputSignal<boolean>;
87
+ /**
88
+ * Draw the chat's own border + rounded corners. Defaults to `true` (card
89
+ * style). Set `false` to render flush/edge-to-edge — e.g. when the chat is
90
+ * the full-height body of an `<lc-page-layout>` and should sit directly under
91
+ * a page header without a nested box.
92
+ */
93
+ bordered: import("@angular/core").InputSignal<boolean>;
94
+ /**
95
+ * Where messages stack when they don't fill the height.
96
+ * - `'top'` (default): messages grow from the top down.
97
+ * - `'bottom'`: messages anchor to the bottom (empty space above), like most
98
+ * messaging apps. Still scrolls to reveal the top once they overflow.
99
+ */
100
+ messageAnchor: import("@angular/core").InputSignal<"top" | "bottom">;
101
+ /**
102
+ * Width of the message thread and composer.
103
+ * - `'full'` (default): messages span the full available width.
104
+ * - `'narrow'`: a centered, readable column (~46rem) like a document-style chat.
105
+ */
106
+ contentWidth: import("@angular/core").InputSignal<"narrow" | "full">;
107
+ /** Disable the input. */
108
+ disabled: import("@angular/core").InputSignal<boolean>;
109
+ /** Show avatars next to messages. */
110
+ showAvatars: import("@angular/core").InputSignal<boolean>;
111
+ /** Show timestamps. */
112
+ showTimestamps: import("@angular/core").InputSignal<boolean>;
113
+ /**
114
+ * Render message content as Markdown using `<lc-markdown variant="chat">`.
115
+ * Defaults to `'agent'` so agent replies get rich formatting while user
116
+ * input stays as plain text. Pass `false` to opt out, or `true`/`'all'`
117
+ * to render every role as Markdown.
118
+ */
119
+ renderMarkdown: import("@angular/core").InputSignal<ChatRenderMarkdown>;
120
+ /** Enable the file-upload (paperclip) button in the input area. */
121
+ allowFileUpload: import("@angular/core").InputSignal<boolean>;
122
+ /**
123
+ * Comma-separated list of accepted file types, forwarded to the native
124
+ * `<input accept>` attribute. Examples: `image/*`, `.pdf,.docx`.
125
+ */
126
+ accept: import("@angular/core").InputSignal<string>;
127
+ /** Allow selecting multiple files at once. Defaults to `true`. */
128
+ multiple: import("@angular/core").InputSignal<boolean>;
129
+ /** Maximum file size in bytes. `0` disables the check. */
130
+ maxFileSize: import("@angular/core").InputSignal<number>;
131
+ /** BCP 47 locale of the message times (hour and minute). */
132
+ locale: import("@angular/core").InputSignal<string>;
133
+ /** Header badge while a message is streaming. */
134
+ streamingLabel: import("@angular/core").InputSignal<string>;
135
+ /** Accessible name of the attach button (`allowFileUpload`). */
136
+ attachAriaLabel: import("@angular/core").InputSignal<string>;
137
+ /** Accessible name of the send button. */
138
+ sendAriaLabel: import("@angular/core").InputSignal<string>;
139
+ /** Screen-reader prefix of messages with status `info`. */
140
+ statusInfoLabel: import("@angular/core").InputSignal<string>;
141
+ /** Screen-reader prefix of messages with status `success`. */
142
+ statusSuccessLabel: import("@angular/core").InputSignal<string>;
143
+ /** Screen-reader prefix of messages with status `warning`. */
144
+ statusWarningLabel: import("@angular/core").InputSignal<string>;
145
+ /** Screen-reader prefix of messages with status `error`. */
146
+ statusErrorLabel: import("@angular/core").InputSignal<string>;
147
+ /** Accessible name prefix of a pending attachment's remove button, followed by the file name. */
148
+ removeAttachmentAriaLabel: import("@angular/core").InputSignal<string>;
149
+ /** Emits when user sends a message. */
150
+ messageSend: import("@angular/core").OutputEmitterRef<ChatSendEvent>;
151
+ /** Emits whenever files are added to the pending attachments list. */
152
+ fileAttach: import("@angular/core").OutputEmitterRef<ChatFileAttachEvent>;
153
+ /** Custom template for rendering message content. Context: { $implicit: ChatMessage } */
154
+ messageTemplate?: TemplateRef<{
155
+ $implicit: ChatMessage;
156
+ }>;
157
+ protected readonly inputValue: import("@angular/core").WritableSignal<string>;
158
+ protected readonly pendingAttachments: import("@angular/core").WritableSignal<ChatAttachment[]>;
159
+ private attachmentCounter;
160
+ private readonly injector;
161
+ private readonly destroyRef;
162
+ private readonly ngZone;
163
+ /**
164
+ * Whether the reader is (near) the bottom of the thread. Auto-scroll only
165
+ * follows new content while this is true, so scrolling up to re-read is
166
+ * never fought. Plain field: updated from a passive scroll listener outside
167
+ * the zone, read untracked by the follow effect.
168
+ */
169
+ private atBottom;
170
+ /** Distance from the bottom (px) still counted as "at the bottom". */
171
+ private static readonly AT_BOTTOM_THRESHOLD;
172
+ private readonly scrollContainer;
173
+ private fileInput?;
174
+ private composerInput?;
175
+ /** Upper bound for the auto-growing composer before it starts scrolling (px). */
176
+ private static readonly INPUT_MAX_HEIGHT;
177
+ protected readonly formattedMessages: import("@angular/core").Signal<{
178
+ timestamp: Date | undefined;
179
+ id: string;
180
+ role: ChatMessageRole;
181
+ content: string;
182
+ avatar?: string;
183
+ name?: string;
184
+ streaming?: boolean;
185
+ /**
186
+ * Semantic status — colours the rail dot/accent and shows a status icon.
187
+ * Independent of `role`: a `role: 'agent'` message can be `status: 'error'`
188
+ * (failed reply) or `status: 'success'` (tool finished). Defaults to
189
+ * `'default'`, which reproduces today's role-coloured behaviour exactly.
190
+ * An `'error'` message never pulses and is announced assertively (`role="alert"`).
191
+ */
192
+ status?: ChatMessageStatus;
193
+ /** Optional file attachments associated with the message. */
194
+ attachments?: ChatAttachment[];
195
+ /** Arbitrary data passed to a custom messageTemplate. */
196
+ data?: Record<string, unknown>;
197
+ }[]>;
198
+ /**
199
+ * Text for the visually-hidden live region: the most recent *completed*
200
+ * non-user message. Streaming turns are announced once they finish (a
201
+ * token-by-token live region would be unusable); user turns were typed by
202
+ * the reader; semantic-status messages carry their own `aria-live`/`alert`.
203
+ */
204
+ protected readonly announcement: import("@angular/core").Signal<string>;
205
+ constructor();
206
+ protected onInput(event: Event): void;
207
+ /** Resize the textarea to fit its content so the composer hugs the text. */
208
+ private autoGrow;
209
+ protected onKeydown(event: KeyboardEvent): void;
210
+ protected send(): void;
211
+ protected openFilePicker(): void;
212
+ protected onFilesSelected(event: Event): void;
213
+ protected removeAttachment(id: string): void;
214
+ protected formatBytes(size: number | undefined): string;
215
+ protected isImage(att: ChatAttachment): boolean;
216
+ private addFiles;
217
+ private matchesAccept;
218
+ protected formatTime(date: Date | undefined): string;
219
+ /**
220
+ * Up to two uppercase initials from a name (first + last word), used for the
221
+ * user avatar monogram when no `avatar` image is provided. Returns `''` for an
222
+ * empty/whitespace name so the caller can skip rendering.
223
+ */
224
+ protected initials(name: string | undefined): string;
225
+ /**
226
+ * Whether to show an avatar on a user turn: only when avatars are enabled and
227
+ * the message carries either an image or a name we can build a monogram from.
228
+ * Keeps the labelless bubble clean when there's nothing to show.
229
+ */
230
+ protected showUserAvatar(msg: ChatMessage): boolean;
231
+ protected shouldRenderMarkdown(role: ChatMessageRole): boolean;
232
+ /** Whether a message carries a semantic (non-`default`) status. */
233
+ protected isSemanticStatus(status: ChatMessageStatus | undefined): boolean;
234
+ /** Rail icon for a semantic status — reuses the `lc-alert` icon names. */
235
+ protected statusIcon(status: ChatMessageStatus | undefined): string;
236
+ /** Semantic token colour for a status dot/icon. */
237
+ protected statusColor(status: ChatMessageStatus | undefined): string;
238
+ /** Visually-hidden prefix so colour/icon is never the only signal. */
239
+ protected statusLabel(status: ChatMessageStatus | undefined): string;
240
+ /** ARIA live priority: assertive for `error`, polite for other statuses. */
241
+ protected statusAriaLive(status: ChatMessageStatus | undefined): 'assertive' | 'polite' | null;
242
+ private scrollToBottom;
243
+ static ɵfac: i0.ɵɵFactoryDeclaration<ChatComponent, never>;
244
+ static ɵcmp: i0.ɵɵComponentDeclaration<ChatComponent, "lc-chat", never, {
245
+ "messages": {
246
+ "alias": "messages";
247
+ "required": false;
248
+ "isSignal": true;
249
+ };
250
+ "placeholder": {
251
+ "alias": "placeholder";
252
+ "required": false;
253
+ "isSignal": true;
254
+ };
255
+ "inputLabel": {
256
+ "alias": "inputLabel";
257
+ "required": false;
258
+ "isSignal": true;
259
+ };
260
+ "title": {
261
+ "alias": "title";
262
+ "required": false;
263
+ "isSignal": true;
264
+ };
265
+ "isStreaming": {
266
+ "alias": "isStreaming";
267
+ "required": false;
268
+ "isSignal": true;
269
+ };
270
+ "showHeader": {
271
+ "alias": "showHeader";
272
+ "required": false;
273
+ "isSignal": true;
274
+ };
275
+ "bordered": {
276
+ "alias": "bordered";
277
+ "required": false;
278
+ "isSignal": true;
279
+ };
280
+ "messageAnchor": {
281
+ "alias": "messageAnchor";
282
+ "required": false;
283
+ "isSignal": true;
284
+ };
285
+ "contentWidth": {
286
+ "alias": "contentWidth";
287
+ "required": false;
288
+ "isSignal": true;
289
+ };
290
+ "disabled": {
291
+ "alias": "disabled";
292
+ "required": false;
293
+ "isSignal": true;
294
+ };
295
+ "showAvatars": {
296
+ "alias": "showAvatars";
297
+ "required": false;
298
+ "isSignal": true;
299
+ };
300
+ "showTimestamps": {
301
+ "alias": "showTimestamps";
302
+ "required": false;
303
+ "isSignal": true;
304
+ };
305
+ "renderMarkdown": {
306
+ "alias": "renderMarkdown";
307
+ "required": false;
308
+ "isSignal": true;
309
+ };
310
+ "allowFileUpload": {
311
+ "alias": "allowFileUpload";
312
+ "required": false;
313
+ "isSignal": true;
314
+ };
315
+ "accept": {
316
+ "alias": "accept";
317
+ "required": false;
318
+ "isSignal": true;
319
+ };
320
+ "multiple": {
321
+ "alias": "multiple";
322
+ "required": false;
323
+ "isSignal": true;
324
+ };
325
+ "maxFileSize": {
326
+ "alias": "maxFileSize";
327
+ "required": false;
328
+ "isSignal": true;
329
+ };
330
+ "locale": {
331
+ "alias": "locale";
332
+ "required": false;
333
+ "isSignal": true;
334
+ };
335
+ "streamingLabel": {
336
+ "alias": "streamingLabel";
337
+ "required": false;
338
+ "isSignal": true;
339
+ };
340
+ "attachAriaLabel": {
341
+ "alias": "attachAriaLabel";
342
+ "required": false;
343
+ "isSignal": true;
344
+ };
345
+ "sendAriaLabel": {
346
+ "alias": "sendAriaLabel";
347
+ "required": false;
348
+ "isSignal": true;
349
+ };
350
+ "statusInfoLabel": {
351
+ "alias": "statusInfoLabel";
352
+ "required": false;
353
+ "isSignal": true;
354
+ };
355
+ "statusSuccessLabel": {
356
+ "alias": "statusSuccessLabel";
357
+ "required": false;
358
+ "isSignal": true;
359
+ };
360
+ "statusWarningLabel": {
361
+ "alias": "statusWarningLabel";
362
+ "required": false;
363
+ "isSignal": true;
364
+ };
365
+ "statusErrorLabel": {
366
+ "alias": "statusErrorLabel";
367
+ "required": false;
368
+ "isSignal": true;
369
+ };
370
+ "removeAttachmentAriaLabel": {
371
+ "alias": "removeAttachmentAriaLabel";
372
+ "required": false;
373
+ "isSignal": true;
374
+ };
375
+ }, {
376
+ "messageSend": "messageSend";
377
+ "fileAttach": "fileAttach";
378
+ }, ["messageTemplate"], never, true, never>;
379
+ }