igniteui-webcomponents 6.3.0-alpha.0 → 6.3.0-beta.0

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 (500) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/components/accordion/accordion.js +1 -4
  3. package/components/accordion/accordion.js.map +1 -1
  4. package/components/accordion/themes/accordion.base.css.js +1 -1
  5. package/components/accordion/themes/accordion.base.css.js.map +1 -1
  6. package/components/banner/themes/banner.base.css.js +1 -1
  7. package/components/banner/themes/banner.base.css.js.map +1 -1
  8. package/components/banner/themes/shared/banner.bootstrap.css.js +1 -1
  9. package/components/banner/themes/shared/banner.bootstrap.css.js.map +1 -1
  10. package/components/banner/themes/shared/banner.fluent.css.js +1 -1
  11. package/components/banner/themes/shared/banner.fluent.css.js.map +1 -1
  12. package/components/banner/themes/shared/banner.indigo.css.js +1 -1
  13. package/components/banner/themes/shared/banner.indigo.css.js.map +1 -1
  14. package/components/banner/themes/shared/banner.material.css.js +1 -1
  15. package/components/banner/themes/shared/banner.material.css.js.map +1 -1
  16. package/components/button/themes/button/button.base.css.js +1 -1
  17. package/components/button/themes/button/button.base.css.js.map +1 -1
  18. package/components/button/themes/button/shared/button.common.css.js +1 -1
  19. package/components/button/themes/button/shared/button.common.css.js.map +1 -1
  20. package/components/button/themes/button/shared/button.fluent.css.js +1 -1
  21. package/components/button/themes/button/shared/button.fluent.css.js.map +1 -1
  22. package/components/button/themes/button/shared/button.indigo.css.js +1 -1
  23. package/components/button/themes/button/shared/button.indigo.css.js.map +1 -1
  24. package/components/button/themes/icon-button/icon-button.base.css.js +1 -1
  25. package/components/button/themes/icon-button/icon-button.base.css.js.map +1 -1
  26. package/components/button/themes/icon-button/shared/icon-button.bootstrap.css.js +1 -1
  27. package/components/button/themes/icon-button/shared/icon-button.bootstrap.css.js.map +1 -1
  28. package/components/button/themes/icon-button/shared/icon-button.fluent.css.js +1 -1
  29. package/components/button/themes/icon-button/shared/icon-button.fluent.css.js.map +1 -1
  30. package/components/button/themes/icon-button/shared/icon-button.indigo.css.js +1 -1
  31. package/components/button/themes/icon-button/shared/icon-button.indigo.css.js.map +1 -1
  32. package/components/button/themes/icon-button/shared/icon-button.material.css.js +1 -1
  33. package/components/button/themes/icon-button/shared/icon-button.material.css.js.map +1 -1
  34. package/components/button-group/themes/shared/button/button.bootstrap.css.js +1 -1
  35. package/components/button-group/themes/shared/button/button.bootstrap.css.js.map +1 -1
  36. package/components/button-group/themes/shared/button/button.common.css.js +1 -1
  37. package/components/button-group/themes/shared/button/button.common.css.js.map +1 -1
  38. package/components/button-group/themes/shared/button/button.indigo.css.js +1 -1
  39. package/components/button-group/themes/shared/button/button.indigo.css.js.map +1 -1
  40. package/components/calendar/calendar.d.ts +1 -1
  41. package/components/calendar/days-view/days-view.js +1 -3
  42. package/components/calendar/days-view/days-view.js.map +1 -1
  43. package/components/calendar/months-view/months-view.js +1 -3
  44. package/components/calendar/months-view/months-view.js.map +1 -1
  45. package/components/calendar/themes/calendar.base.css.js +1 -1
  46. package/components/calendar/themes/calendar.base.css.js.map +1 -1
  47. package/components/calendar/themes/days-view.base.css.js +1 -1
  48. package/components/calendar/themes/days-view.base.css.js.map +1 -1
  49. package/components/calendar/themes/shared/bootstrap/calendar.bootstrap.css.js +1 -1
  50. package/components/calendar/themes/shared/bootstrap/calendar.bootstrap.css.js.map +1 -1
  51. package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js +1 -1
  52. package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js.map +1 -1
  53. package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js +1 -1
  54. package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js.map +1 -1
  55. package/components/calendar/themes/shared/fluent/calendar.fluent.css.js +1 -1
  56. package/components/calendar/themes/shared/fluent/calendar.fluent.css.js.map +1 -1
  57. package/components/calendar/themes/shared/indigo/calendar.indigo.css.js +1 -1
  58. package/components/calendar/themes/shared/indigo/calendar.indigo.css.js.map +1 -1
  59. package/components/calendar/themes/shared/material/calendar.material.css.js +1 -1
  60. package/components/calendar/themes/shared/material/calendar.material.css.js.map +1 -1
  61. package/components/calendar/themes/year-month-view.base.css.js +1 -1
  62. package/components/calendar/themes/year-month-view.base.css.js.map +1 -1
  63. package/components/calendar/years-view/years-view.js +1 -3
  64. package/components/calendar/years-view/years-view.js.map +1 -1
  65. package/components/card/themes/card.actions.base.css.js +1 -1
  66. package/components/card/themes/card.actions.base.css.js.map +1 -1
  67. package/components/card/themes/card.content.base.css.js +1 -1
  68. package/components/card/themes/card.content.base.css.js.map +1 -1
  69. package/components/card/themes/card.header.base.css.js +1 -1
  70. package/components/card/themes/card.header.base.css.js.map +1 -1
  71. package/components/card/themes/shared/actions/card.actions.bootstrap.css.js +1 -1
  72. package/components/card/themes/shared/actions/card.actions.bootstrap.css.js.map +1 -1
  73. package/components/card/themes/shared/actions/card.actions.indigo.css.js +1 -1
  74. package/components/card/themes/shared/actions/card.actions.indigo.css.js.map +1 -1
  75. package/components/card/themes/shared/container/card.bootstrap.css.js +1 -1
  76. package/components/card/themes/shared/container/card.bootstrap.css.js.map +1 -1
  77. package/components/card/themes/shared/container/card.indigo.css.js +1 -1
  78. package/components/card/themes/shared/container/card.indigo.css.js.map +1 -1
  79. package/components/card/themes/shared/content/card.content.bootstrap.css.js +1 -1
  80. package/components/card/themes/shared/content/card.content.bootstrap.css.js.map +1 -1
  81. package/components/card/themes/shared/header/card.header.fluent.css.js +1 -1
  82. package/components/card/themes/shared/header/card.header.fluent.css.js.map +1 -1
  83. package/components/card/themes/shared/header/card.header.indigo.css.js +1 -1
  84. package/components/card/themes/shared/header/card.header.indigo.css.js.map +1 -1
  85. package/components/carousel/carousel.js +0 -3
  86. package/components/carousel/carousel.js.map +1 -1
  87. package/components/carousel/themes/carousel.base.css.js +1 -1
  88. package/components/carousel/themes/carousel.base.css.js.map +1 -1
  89. package/components/carousel/themes/shared/carousel.indigo.css.js +1 -1
  90. package/components/carousel/themes/shared/carousel.indigo.css.js.map +1 -1
  91. package/components/chat/chat-input.d.ts +48 -28
  92. package/components/chat/chat-input.js +184 -199
  93. package/components/chat/chat-input.js.map +1 -1
  94. package/components/chat/chat-message.d.ts +22 -17
  95. package/components/chat/chat-message.js +137 -26
  96. package/components/chat/chat-message.js.map +1 -1
  97. package/components/chat/chat-state.d.ts +25 -47
  98. package/components/chat/chat-state.js +106 -77
  99. package/components/chat/chat-state.js.map +1 -1
  100. package/components/chat/chat.d.ts +54 -69
  101. package/components/chat/chat.js +226 -100
  102. package/components/chat/chat.js.map +1 -1
  103. package/components/chat/extras/markdown-renderer.d.ts +23 -0
  104. package/components/chat/extras/markdown-renderer.js +44 -0
  105. package/components/chat/extras/markdown-renderer.js.map +1 -0
  106. package/components/chat/message-attachments.d.ts +23 -12
  107. package/components/chat/message-attachments.js +87 -83
  108. package/components/chat/message-attachments.js.map +1 -1
  109. package/components/chat/themes/attachments.d.ts +2 -0
  110. package/components/chat/themes/attachments.js +14 -0
  111. package/components/chat/themes/attachments.js.map +1 -0
  112. package/components/chat/themes/chat.base.css.js +1 -1
  113. package/components/chat/themes/chat.base.css.js.map +1 -1
  114. package/components/chat/themes/dark/chat.bootstrap.css.js +1 -1
  115. package/components/chat/themes/dark/chat.bootstrap.css.js.map +1 -1
  116. package/components/chat/themes/dark/chat.fluent.css.js +1 -1
  117. package/components/chat/themes/dark/chat.fluent.css.js.map +1 -1
  118. package/components/chat/themes/dark/chat.indigo.css.js +1 -1
  119. package/components/chat/themes/dark/chat.indigo.css.js.map +1 -1
  120. package/components/chat/themes/input.base.css.js +1 -1
  121. package/components/chat/themes/input.base.css.js.map +1 -1
  122. package/components/chat/themes/light/chat.bootstrap.css.js +1 -1
  123. package/components/chat/themes/light/chat.bootstrap.css.js.map +1 -1
  124. package/components/chat/themes/light/chat.fluent.css.js +1 -1
  125. package/components/chat/themes/light/chat.fluent.css.js.map +1 -1
  126. package/components/chat/themes/light/chat.indigo.css.js +1 -1
  127. package/components/chat/themes/light/chat.indigo.css.js.map +1 -1
  128. package/components/chat/themes/light/chat.shared.css.js +1 -1
  129. package/components/chat/themes/light/chat.shared.css.js.map +1 -1
  130. package/components/chat/themes/message-attachments.base.css.js +1 -1
  131. package/components/chat/themes/message-attachments.base.css.js.map +1 -1
  132. package/components/chat/themes/message.base.css.js +1 -1
  133. package/components/chat/themes/message.base.css.js.map +1 -1
  134. package/components/chat/themes/message.d.ts +2 -0
  135. package/components/chat/themes/message.js +28 -0
  136. package/components/chat/themes/message.js.map +1 -0
  137. package/components/chat/themes/shared/chat-message/chat-message.bootstrap.css.js +3 -0
  138. package/components/chat/themes/shared/chat-message/chat-message.bootstrap.css.js.map +1 -0
  139. package/components/chat/themes/shared/chat-message/chat-message.common.css.js +3 -0
  140. package/components/chat/themes/shared/chat-message/chat-message.common.css.js.map +1 -0
  141. package/components/chat/themes/shared/chat-message/chat-message.fluent.css.js +3 -0
  142. package/components/chat/themes/shared/chat-message/chat-message.fluent.css.js.map +1 -0
  143. package/components/chat/themes/shared/chat-message/chat-message.indigo.css.js +3 -0
  144. package/components/chat/themes/shared/chat-message/chat-message.indigo.css.js.map +1 -0
  145. package/components/chat/themes/shared/chat.bootstrap.css.d.ts +1 -0
  146. package/components/chat/themes/shared/chat.bootstrap.css.js +3 -0
  147. package/components/chat/themes/shared/chat.bootstrap.css.js.map +1 -0
  148. package/components/chat/themes/shared/chat.common.css.js +1 -1
  149. package/components/chat/themes/shared/chat.common.css.js.map +1 -1
  150. package/components/chat/themes/shared/chat.fluent.css.d.ts +1 -0
  151. package/components/chat/themes/shared/chat.fluent.css.js +3 -0
  152. package/components/chat/themes/shared/chat.fluent.css.js.map +1 -0
  153. package/components/chat/themes/shared/chat.indigo.css.d.ts +1 -0
  154. package/components/chat/themes/shared/chat.indigo.css.js +3 -0
  155. package/components/chat/themes/shared/chat.indigo.css.js.map +1 -0
  156. package/components/chat/themes/shared/input/input.bootstrap.css.js +1 -1
  157. package/components/chat/themes/shared/input/input.bootstrap.css.js.map +1 -1
  158. package/components/chat/themes/shared/input/input.common.css.js +1 -1
  159. package/components/chat/themes/shared/input/input.common.css.js.map +1 -1
  160. package/components/chat/themes/shared/input/input.fluent.css.js +1 -1
  161. package/components/chat/themes/shared/input/input.fluent.css.js.map +1 -1
  162. package/components/chat/themes/shared/input/input.indigo.css.js +1 -1
  163. package/components/chat/themes/shared/input/input.indigo.css.js.map +1 -1
  164. package/components/chat/themes/shared/input/input.material.css.js +1 -1
  165. package/components/chat/themes/shared/input/input.material.css.js.map +1 -1
  166. package/components/chat/themes/shared/message-attachments/message-attachments.common.css.d.ts +1 -0
  167. package/components/chat/themes/shared/message-attachments/message-attachments.common.css.js +3 -0
  168. package/components/chat/themes/shared/message-attachments/message-attachments.common.css.js.map +1 -0
  169. package/components/chat/themes/shared/message-attachments/message-attachments.indigo.css.d.ts +1 -0
  170. package/components/chat/themes/shared/message-attachments/message-attachments.indigo.css.js +3 -0
  171. package/components/chat/themes/shared/message-attachments/message-attachments.indigo.css.js.map +1 -0
  172. package/components/chat/themes/themes.js +9 -6
  173. package/components/chat/themes/themes.js.map +1 -1
  174. package/components/chat/types.d.ts +32 -85
  175. package/components/chat/types.js +1 -7
  176. package/components/chat/types.js.map +1 -1
  177. package/components/chat/utils.d.ts +16 -0
  178. package/components/chat/utils.js +86 -0
  179. package/components/chat/utils.js.map +1 -0
  180. package/components/checkbox/checkbox-base.d.ts +1 -1
  181. package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js +1 -1
  182. package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js.map +1 -1
  183. package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js +1 -1
  184. package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js.map +1 -1
  185. package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js +1 -1
  186. package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js.map +1 -1
  187. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js +1 -1
  188. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js.map +1 -1
  189. package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js +1 -1
  190. package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js.map +1 -1
  191. package/components/checkbox/themes/shared/switch/switch.common.css.js +1 -1
  192. package/components/checkbox/themes/shared/switch/switch.common.css.js.map +1 -1
  193. package/components/checkbox/themes/shared/switch/switch.fluent.css.js +1 -1
  194. package/components/checkbox/themes/shared/switch/switch.fluent.css.js.map +1 -1
  195. package/components/checkbox/themes/shared/switch/switch.indigo.css.js +1 -1
  196. package/components/checkbox/themes/shared/switch/switch.indigo.css.js.map +1 -1
  197. package/components/chip/themes/chip.base.css.js +1 -1
  198. package/components/chip/themes/chip.base.css.js.map +1 -1
  199. package/components/chip/themes/shared/chip.indigo.css.js +1 -1
  200. package/components/chip/themes/shared/chip.indigo.css.js.map +1 -1
  201. package/components/combo/controllers/navigation.js +1 -1
  202. package/components/combo/controllers/navigation.js.map +1 -1
  203. package/components/combo/themes/combo-item.base.css.js +1 -1
  204. package/components/combo/themes/combo-item.base.css.js.map +1 -1
  205. package/components/combo/themes/combo.base.css.js +1 -1
  206. package/components/combo/themes/combo.base.css.js.map +1 -1
  207. package/components/combo/themes/shared/combo.bootstrap.css.js +1 -1
  208. package/components/combo/themes/shared/combo.bootstrap.css.js.map +1 -1
  209. package/components/combo/themes/shared/combo.common.css.js +1 -1
  210. package/components/combo/themes/shared/combo.common.css.js.map +1 -1
  211. package/components/combo/themes/shared/combo.fluent.css.js +1 -1
  212. package/components/combo/themes/shared/combo.fluent.css.js.map +1 -1
  213. package/components/combo/themes/shared/combo.indigo.css.js +1 -1
  214. package/components/combo/themes/shared/combo.indigo.css.js.map +1 -1
  215. package/components/combo/themes/shared/combo.material.css.js +1 -1
  216. package/components/combo/themes/shared/combo.material.css.js.map +1 -1
  217. package/components/common/context.d.ts +4 -1
  218. package/components/common/context.js +2 -1
  219. package/components/common/context.js.map +1 -1
  220. package/components/common/controllers/key-bindings.js +4 -3
  221. package/components/common/controllers/key-bindings.js.map +1 -1
  222. package/components/common/i18n/chat.resources.d.ts +8 -0
  223. package/components/common/i18n/chat.resources.js +8 -0
  224. package/components/common/i18n/chat.resources.js.map +1 -0
  225. package/components/common/util.d.ts +22 -0
  226. package/components/common/util.js +84 -2
  227. package/components/common/util.js.map +1 -1
  228. package/components/date-picker/date-picker.js +2 -2
  229. package/components/date-picker/date-picker.js.map +1 -1
  230. package/components/date-picker/themes/date-picker.base.css.js +1 -1
  231. package/components/date-picker/themes/date-picker.base.css.js.map +1 -1
  232. package/components/date-picker/themes/shared/date-picker.bootstrap.css.js +1 -1
  233. package/components/date-picker/themes/shared/date-picker.bootstrap.css.js.map +1 -1
  234. package/components/date-picker/themes/shared/date-picker.common.css.js +1 -1
  235. package/components/date-picker/themes/shared/date-picker.common.css.js.map +1 -1
  236. package/components/date-picker/themes/shared/date-picker.fluent.css.js +1 -1
  237. package/components/date-picker/themes/shared/date-picker.fluent.css.js.map +1 -1
  238. package/components/date-picker/themes/shared/date-picker.indigo.css.js +1 -1
  239. package/components/date-picker/themes/shared/date-picker.indigo.css.js.map +1 -1
  240. package/components/date-range-picker/date-range-picker.base.css.js +1 -1
  241. package/components/date-range-picker/date-range-picker.base.css.js.map +1 -1
  242. package/components/date-range-picker/date-range-picker.d.ts +1 -1
  243. package/components/date-range-picker/date-range-picker.js +0 -1
  244. package/components/date-range-picker/date-range-picker.js.map +1 -1
  245. package/components/date-range-picker/predefined-ranges-area.base.css.js +1 -1
  246. package/components/date-range-picker/predefined-ranges-area.base.css.js.map +1 -1
  247. package/components/date-range-picker/themes/shared/date-range-picker.bootstrap.css.js +1 -1
  248. package/components/date-range-picker/themes/shared/date-range-picker.bootstrap.css.js.map +1 -1
  249. package/components/date-range-picker/themes/shared/date-range-picker.common.css.js +1 -1
  250. package/components/date-range-picker/themes/shared/date-range-picker.common.css.js.map +1 -1
  251. package/components/date-range-picker/themes/shared/date-range-picker.fluent.css.js +1 -1
  252. package/components/date-range-picker/themes/shared/date-range-picker.fluent.css.js.map +1 -1
  253. package/components/date-range-picker/themes/shared/date-range-picker.indigo.css.js +1 -1
  254. package/components/date-range-picker/themes/shared/date-range-picker.indigo.css.js.map +1 -1
  255. package/components/date-time-input/date-time-input.js +1 -1
  256. package/components/date-time-input/date-time-input.js.map +1 -1
  257. package/components/dialog/themes/dialog.base.css.js +1 -1
  258. package/components/dialog/themes/dialog.base.css.js.map +1 -1
  259. package/components/dialog/themes/shared/dialog.bootstrap.css.js +1 -1
  260. package/components/dialog/themes/shared/dialog.bootstrap.css.js.map +1 -1
  261. package/components/dialog/themes/shared/dialog.common.css.js +1 -1
  262. package/components/dialog/themes/shared/dialog.common.css.js.map +1 -1
  263. package/components/dialog/themes/shared/dialog.fluent.css.js +1 -1
  264. package/components/dialog/themes/shared/dialog.fluent.css.js.map +1 -1
  265. package/components/dialog/themes/shared/dialog.indigo.css.js +1 -1
  266. package/components/dialog/themes/shared/dialog.indigo.css.js.map +1 -1
  267. package/components/dropdown/themes/dropdown-group.base.css.js +1 -1
  268. package/components/dropdown/themes/dropdown-group.base.css.js.map +1 -1
  269. package/components/dropdown/themes/dropdown-item.base.css.js +1 -1
  270. package/components/dropdown/themes/dropdown-item.base.css.js.map +1 -1
  271. package/components/dropdown/themes/shared/dropdown.indigo.css.js +1 -1
  272. package/components/dropdown/themes/shared/dropdown.indigo.css.js.map +1 -1
  273. package/components/dropdown/themes/shared/group/dropdown-group.fluent.css.js +1 -1
  274. package/components/dropdown/themes/shared/group/dropdown-group.fluent.css.js.map +1 -1
  275. package/components/dropdown/themes/shared/header/dropdown-header.common.css.js +1 -1
  276. package/components/dropdown/themes/shared/header/dropdown-header.common.css.js.map +1 -1
  277. package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.js +1 -1
  278. package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.js.map +1 -1
  279. package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js +1 -1
  280. package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js.map +1 -1
  281. package/components/expansion-panel/expansion-panel.js +0 -1
  282. package/components/expansion-panel/expansion-panel.js.map +1 -1
  283. package/components/expansion-panel/themes/expansion-panel.base.css.js +1 -1
  284. package/components/expansion-panel/themes/expansion-panel.base.css.js.map +1 -1
  285. package/components/expansion-panel/themes/shared/expansion-panel.indigo.css.js +1 -1
  286. package/components/expansion-panel/themes/shared/expansion-panel.indigo.css.js.map +1 -1
  287. package/components/file-input/file-input.d.ts +0 -4
  288. package/components/file-input/file-input.js +12 -15
  289. package/components/file-input/file-input.js.map +1 -1
  290. package/components/file-input/themes/shared/file-input.bootstrap.css.js +1 -1
  291. package/components/file-input/themes/shared/file-input.bootstrap.css.js.map +1 -1
  292. package/components/file-input/themes/shared/file-input.material.css.js +1 -1
  293. package/components/file-input/themes/shared/file-input.material.css.js.map +1 -1
  294. package/components/icon/icon-references.js +130 -0
  295. package/components/icon/icon-references.js.map +1 -1
  296. package/components/icon/internal-icons-lib.js +66 -0
  297. package/components/icon/internal-icons-lib.js.map +1 -1
  298. package/components/input/input.d.ts +0 -4
  299. package/components/input/input.js +9 -11
  300. package/components/input/input.js.map +1 -1
  301. package/components/input/themes/shared/input.bootstrap.css.js +1 -1
  302. package/components/input/themes/shared/input.bootstrap.css.js.map +1 -1
  303. package/components/input/themes/shared/input.common.css.js +1 -1
  304. package/components/input/themes/shared/input.common.css.js.map +1 -1
  305. package/components/input/themes/shared/input.fluent.css.js +1 -1
  306. package/components/input/themes/shared/input.fluent.css.js.map +1 -1
  307. package/components/input/themes/shared/input.indigo.css.js +1 -1
  308. package/components/input/themes/shared/input.indigo.css.js.map +1 -1
  309. package/components/input/themes/shared/input.material.css.js +1 -1
  310. package/components/input/themes/shared/input.material.css.js.map +1 -1
  311. package/components/list/themes/dark/container/list.indigo.css.js +1 -1
  312. package/components/list/themes/dark/container/list.indigo.css.js.map +1 -1
  313. package/components/list/themes/dark/header/list-header.indigo.css.js +1 -1
  314. package/components/list/themes/dark/header/list-header.indigo.css.js.map +1 -1
  315. package/components/list/themes/dark/item/list-item.indigo.css.js +1 -1
  316. package/components/list/themes/dark/item/list-item.indigo.css.js.map +1 -1
  317. package/components/list/themes/header.base.css.js +1 -1
  318. package/components/list/themes/header.base.css.js.map +1 -1
  319. package/components/list/themes/item.base.css.js +1 -1
  320. package/components/list/themes/item.base.css.js.map +1 -1
  321. package/components/list/themes/light/container/list.indigo.css.js +1 -1
  322. package/components/list/themes/light/container/list.indigo.css.js.map +1 -1
  323. package/components/list/themes/light/header/list-header.indigo.css.js +1 -1
  324. package/components/list/themes/light/header/list-header.indigo.css.js.map +1 -1
  325. package/components/list/themes/light/item/list-item.indigo.css.js +1 -1
  326. package/components/list/themes/light/item/list-item.indigo.css.js.map +1 -1
  327. package/components/list/themes/shared/header/list-header.indigo.css.js +1 -1
  328. package/components/list/themes/shared/header/list-header.indigo.css.js.map +1 -1
  329. package/components/list/themes/shared/item/list-item.indigo.css.js +1 -1
  330. package/components/list/themes/shared/item/list-item.indigo.css.js.map +1 -1
  331. package/components/nav-drawer/themes/shared/container/nav-drawer.bootstrap.css.js +1 -1
  332. package/components/nav-drawer/themes/shared/container/nav-drawer.bootstrap.css.js.map +1 -1
  333. package/components/nav-drawer/themes/shared/container/nav-drawer.indigo.css.js +1 -1
  334. package/components/nav-drawer/themes/shared/container/nav-drawer.indigo.css.js.map +1 -1
  335. package/components/nav-drawer/themes/shared/container/nav-drawer.material.css.js +1 -1
  336. package/components/nav-drawer/themes/shared/container/nav-drawer.material.css.js.map +1 -1
  337. package/components/nav-drawer/themes/shared/header-item/header-item.bootstrap.css.js +1 -1
  338. package/components/nav-drawer/themes/shared/header-item/header-item.bootstrap.css.js.map +1 -1
  339. package/components/nav-drawer/themes/shared/header-item/header-item.fluent.css.js +1 -1
  340. package/components/nav-drawer/themes/shared/header-item/header-item.fluent.css.js.map +1 -1
  341. package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.js +1 -1
  342. package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.js.map +1 -1
  343. package/components/nav-drawer/themes/shared/header-item/header-item.material.css.js +1 -1
  344. package/components/nav-drawer/themes/shared/header-item/header-item.material.css.js.map +1 -1
  345. package/components/nav-drawer/themes/shared/item/item.bootstrap.css.js +1 -1
  346. package/components/nav-drawer/themes/shared/item/item.bootstrap.css.js.map +1 -1
  347. package/components/nav-drawer/themes/shared/item/item.fluent.css.js +1 -1
  348. package/components/nav-drawer/themes/shared/item/item.fluent.css.js.map +1 -1
  349. package/components/nav-drawer/themes/shared/item/item.indigo.css.js +1 -1
  350. package/components/nav-drawer/themes/shared/item/item.indigo.css.js.map +1 -1
  351. package/components/nav-drawer/themes/shared/item/item.material.css.js +1 -1
  352. package/components/nav-drawer/themes/shared/item/item.material.css.js.map +1 -1
  353. package/components/navbar/themes/navbar.base.css.js +1 -1
  354. package/components/navbar/themes/navbar.base.css.js.map +1 -1
  355. package/components/navbar/themes/shared/navbar.bootstrap.css.js +1 -1
  356. package/components/navbar/themes/shared/navbar.bootstrap.css.js.map +1 -1
  357. package/components/navbar/themes/shared/navbar.indigo.css.js +1 -1
  358. package/components/navbar/themes/shared/navbar.indigo.css.js.map +1 -1
  359. package/components/progress/themes/linear/shared/linear.progress.fluent.css.js +1 -1
  360. package/components/progress/themes/linear/shared/linear.progress.fluent.css.js.map +1 -1
  361. package/components/progress/themes/linear/shared/linear.progress.indigo.css.js +1 -1
  362. package/components/progress/themes/linear/shared/linear.progress.indigo.css.js.map +1 -1
  363. package/components/radio/themes/shared/radio.bootstrap.css.js +1 -1
  364. package/components/radio/themes/shared/radio.bootstrap.css.js.map +1 -1
  365. package/components/radio/themes/shared/radio.fluent.css.js +1 -1
  366. package/components/radio/themes/shared/radio.fluent.css.js.map +1 -1
  367. package/components/radio/themes/shared/radio.indigo.css.js +1 -1
  368. package/components/radio/themes/shared/radio.indigo.css.js.map +1 -1
  369. package/components/radio/themes/shared/radio.material.css.js +1 -1
  370. package/components/radio/themes/shared/radio.material.css.js.map +1 -1
  371. package/components/radio-group/themes/radio-group.base.css.js +1 -1
  372. package/components/radio-group/themes/radio-group.base.css.js.map +1 -1
  373. package/components/radio-group/themes/shared/radio-group.bootstrap.css.js +1 -1
  374. package/components/radio-group/themes/shared/radio-group.bootstrap.css.js.map +1 -1
  375. package/components/radio-group/themes/shared/radio-group.fluent.css.js +1 -1
  376. package/components/radio-group/themes/shared/radio-group.fluent.css.js.map +1 -1
  377. package/components/radio-group/themes/shared/radio-group.indigo.css.js +1 -1
  378. package/components/radio-group/themes/shared/radio-group.indigo.css.js.map +1 -1
  379. package/components/radio-group/themes/shared/radio-group.material.css.js +1 -1
  380. package/components/radio-group/themes/shared/radio-group.material.css.js.map +1 -1
  381. package/components/rating/rating.js +0 -1
  382. package/components/rating/rating.js.map +1 -1
  383. package/components/rating/themes/rating.base.css.js +1 -1
  384. package/components/rating/themes/rating.base.css.js.map +1 -1
  385. package/components/rating/themes/shared/rating.indigo.css.js +1 -1
  386. package/components/rating/themes/shared/rating.indigo.css.js.map +1 -1
  387. package/components/resize-container/resize-container.d.ts +1 -1
  388. package/components/select/select.js +0 -1
  389. package/components/select/select.js.map +1 -1
  390. package/components/select/themes/dark/select.bootstrap.css.js +1 -1
  391. package/components/select/themes/dark/select.bootstrap.css.js.map +1 -1
  392. package/components/select/themes/light/select.bootstrap.css.js +1 -1
  393. package/components/select/themes/light/select.bootstrap.css.js.map +1 -1
  394. package/components/select/themes/shared/select.bootstrap.css.js +1 -1
  395. package/components/select/themes/shared/select.bootstrap.css.js.map +1 -1
  396. package/components/select/themes/shared/select.common.css.js +1 -1
  397. package/components/select/themes/shared/select.common.css.js.map +1 -1
  398. package/components/select/themes/shared/select.fluent.css.js +1 -1
  399. package/components/select/themes/shared/select.fluent.css.js.map +1 -1
  400. package/components/select/themes/shared/select.indigo.css.js +1 -1
  401. package/components/select/themes/shared/select.indigo.css.js.map +1 -1
  402. package/components/select/themes/shared/select.material.css.js +1 -1
  403. package/components/select/themes/shared/select.material.css.js.map +1 -1
  404. package/components/slider/slider-base.js +0 -1
  405. package/components/slider/slider-base.js.map +1 -1
  406. package/components/slider/themes/shared/slider.common.css.js +1 -1
  407. package/components/slider/themes/shared/slider.common.css.js.map +1 -1
  408. package/components/slider/themes/slider.base.css.js +1 -1
  409. package/components/slider/themes/slider.base.css.js.map +1 -1
  410. package/components/snackbar/themes/shared/snackbar.indigo.css.js +1 -1
  411. package/components/snackbar/themes/shared/snackbar.indigo.css.js.map +1 -1
  412. package/components/snackbar/themes/snackbar.base.css.js +1 -1
  413. package/components/snackbar/themes/snackbar.base.css.js.map +1 -1
  414. package/components/stepper/step.d.ts +1 -1
  415. package/components/tabs/tabs.js +0 -1
  416. package/components/tabs/tabs.js.map +1 -1
  417. package/components/tabs/themes/shared/tab/tab.bootstrap.css.js +1 -1
  418. package/components/tabs/themes/shared/tab/tab.bootstrap.css.js.map +1 -1
  419. package/components/tabs/themes/shared/tab/tab.fluent.css.js +1 -1
  420. package/components/tabs/themes/shared/tab/tab.fluent.css.js.map +1 -1
  421. package/components/tabs/themes/shared/tab/tab.indigo.css.js +1 -1
  422. package/components/tabs/themes/shared/tab/tab.indigo.css.js.map +1 -1
  423. package/components/tabs/themes/shared/tab/tab.material.css.js +1 -1
  424. package/components/tabs/themes/shared/tab/tab.material.css.js.map +1 -1
  425. package/components/textarea/textarea.d.ts +1 -1
  426. package/components/textarea/themes/shared/textarea.bootstrap.css.js +1 -1
  427. package/components/textarea/themes/shared/textarea.bootstrap.css.js.map +1 -1
  428. package/components/textarea/themes/shared/textarea.common.css.js +1 -1
  429. package/components/textarea/themes/shared/textarea.common.css.js.map +1 -1
  430. package/components/textarea/themes/shared/textarea.fluent.css.js +1 -1
  431. package/components/textarea/themes/shared/textarea.fluent.css.js.map +1 -1
  432. package/components/textarea/themes/shared/textarea.indigo.css.js +1 -1
  433. package/components/textarea/themes/shared/textarea.indigo.css.js.map +1 -1
  434. package/components/textarea/themes/shared/textarea.material.css.js +1 -1
  435. package/components/textarea/themes/shared/textarea.material.css.js.map +1 -1
  436. package/components/textarea/themes/textarea.base.css.js +1 -1
  437. package/components/textarea/themes/textarea.base.css.js.map +1 -1
  438. package/components/tile-manager/resize-state.js +1 -1
  439. package/components/tile-manager/resize-state.js.map +1 -1
  440. package/components/toast/themes/shared/toast.bootstrap.css.js +1 -1
  441. package/components/toast/themes/shared/toast.bootstrap.css.js.map +1 -1
  442. package/components/toast/themes/shared/toast.common.css.js +1 -1
  443. package/components/toast/themes/shared/toast.common.css.js.map +1 -1
  444. package/components/toast/themes/shared/toast.fluent.css.js +1 -1
  445. package/components/toast/themes/shared/toast.fluent.css.js.map +1 -1
  446. package/components/toast/themes/toast.base.css.js +1 -1
  447. package/components/toast/themes/toast.base.css.js.map +1 -1
  448. package/components/tooltip/themes/tooltip.base.css.js +1 -1
  449. package/components/tooltip/themes/tooltip.base.css.js.map +1 -1
  450. package/components/tree/themes/item.base.css.js +1 -1
  451. package/components/tree/themes/item.base.css.js.map +1 -1
  452. package/components/tree/themes/shared/item.common.css.js +1 -1
  453. package/components/tree/themes/shared/item.common.css.js.map +1 -1
  454. package/components/tree/themes/shared/item.indigo.css.js +1 -1
  455. package/components/tree/themes/shared/item.indigo.css.js.map +1 -1
  456. package/components/tree/themes/shared/item.material.css.js +1 -1
  457. package/components/tree/themes/shared/item.material.css.js.map +1 -1
  458. package/components/tree/tree.js +3 -1
  459. package/components/tree/tree.js.map +1 -1
  460. package/components/tree/tree.navigation.js +3 -3
  461. package/components/tree/tree.navigation.js.map +1 -1
  462. package/components/tree/tree.selection.js +6 -2
  463. package/components/tree/tree.selection.js.map +1 -1
  464. package/custom-elements.json +18515 -18333
  465. package/extras/index.d.ts +1 -0
  466. package/extras/index.js +2 -0
  467. package/extras/index.js.map +1 -0
  468. package/igniteui-webcomponents.css-data.json +1 -1
  469. package/igniteui-webcomponents.html-data.json +1 -1
  470. package/index.d.ts +2 -1
  471. package/index.js +1 -0
  472. package/index.js.map +1 -1
  473. package/package.json +6 -2
  474. package/themes/dark/bootstrap.css +1 -1
  475. package/themes/dark/fluent.css +1 -1
  476. package/themes/dark/indigo.css +1 -1
  477. package/themes/dark/material.css +1 -1
  478. package/themes/light/bootstrap.css +1 -1
  479. package/themes/light/fluent.css +1 -1
  480. package/themes/light/indigo.css +1 -1
  481. package/themes/light/material.css +1 -1
  482. package/web-types.json +2 -2
  483. package/components/chat/chat-message-list.d.ts +0 -111
  484. package/components/chat/chat-message-list.js +0 -178
  485. package/components/chat/chat-message-list.js.map +0 -1
  486. package/components/chat/markdown-util.d.ts +0 -2
  487. package/components/chat/markdown-util.js +0 -22
  488. package/components/chat/markdown-util.js.map +0 -1
  489. package/components/chat/themes/message-list.base.css.js +0 -3
  490. package/components/chat/themes/message-list.base.css.js.map +0 -1
  491. package/components/chat/themes/shared/chat-message.common.css.js +0 -3
  492. package/components/chat/themes/shared/chat-message.common.css.js.map +0 -1
  493. package/components/chat/themes/shared/message-attachments.common.css.js +0 -3
  494. package/components/chat/themes/shared/message-attachments.common.css.js.map +0 -1
  495. package/components/chat/themes/shared/message-list.common.css.js +0 -3
  496. package/components/chat/themes/shared/message-list.common.css.js.map +0 -1
  497. /package/components/chat/themes/{message-list.base.css.d.ts → shared/chat-message/chat-message.bootstrap.css.d.ts} +0 -0
  498. /package/components/chat/themes/shared/{chat-message.common.css.d.ts → chat-message/chat-message.common.css.d.ts} +0 -0
  499. /package/components/chat/themes/shared/{message-attachments.common.css.d.ts → chat-message/chat-message.fluent.css.d.ts} +0 -0
  500. /package/components/chat/themes/shared/{message-list.common.css.d.ts → chat-message/chat-message.indigo.css.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-message.fluent.css.js","sourceRoot":"","sources":["../../../../../../src/components/chat/themes/shared/chat-message/chat-message.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css``;\n"]}
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `[part~=sent]{border-radius:.5rem}`;
3
+ //# sourceMappingURL=chat-message.indigo.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-message.indigo.css.js","sourceRoot":"","sources":["../../../../../../src/components/chat/themes/shared/chat-message/chat-message.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,mCAAmC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=sent]{border-radius:.5rem}`;\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `:host ::part(text-input){--textarea-height: 3.5rem}[part=header]{box-shadow:none;border-block-end:.0625rem solid var(--header-border)}igc-list{border:none}`;
3
+ //# sourceMappingURL=chat.bootstrap.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/chat/themes/shared/chat.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,6JAA6J,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host ::part(text-input){--textarea-height: 3.5rem}[part=header]{box-shadow:none;border-block-end:.0625rem solid var(--header-border)}igc-list{border:none}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{background:var(--background)}[part=header]{background:var(--header-background);color:var(--header-color)}`;
2
+ export const styles = css `:host{background:var(--background)}[part=header]{background:var(--header-background);color:var(--header-color)}[part=typing-dot]::after{background:var(--progress-indicator-color)}`;
3
3
  //# sourceMappingURL=chat.common.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat.common.css.js","sourceRoot":"","sources":["../../../../../src/components/chat/themes/shared/chat.common.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,iHAAiH,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{background:var(--background)}[part=header]{background:var(--header-background);color:var(--header-color)}`;\n"]}
1
+ {"version":3,"file":"chat.common.css.js","sourceRoot":"","sources":["../../../../../src/components/chat/themes/shared/chat.common.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,qLAAqL,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{background:var(--background)}[part=header]{background:var(--header-background);color:var(--header-color)}[part=typing-dot]::after{background:var(--progress-indicator-color)}`;\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `:host ::part(text-input){--textarea-height: 2rem}`;
3
+ //# sourceMappingURL=chat.fluent.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/chat/themes/shared/chat.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,mDAAmD,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host ::part(text-input){--textarea-height: 2rem}`;\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `:host ::part(text-input){--textarea-height: 1.75rem}[part=header]{box-shadow:none;border-block-end:.0625rem solid var(--header-border)}[part=title]{font-family:var(--ig-h5-font-family, var(--ig-font-family));font-size:var(--ig-h5-font-size);font-weight:var(--ig-h5-font-weight);font-style:var(--ig-h5-font-style);line-height:var(--ig-h5-line-height);letter-spacing:var(--ig-h5-letter-spacing);text-transform:var(--ig-h5-text-transform);margin-top:var(--ig-h5-margin-top);margin-bottom:var(--ig-h5-margin-bottom);margin:0}igc-list{--ig-size: 2}`;
3
+ //# sourceMappingURL=chat.indigo.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/chat/themes/shared/chat.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,iiBAAiiB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host ::part(text-input){--textarea-height: 1.75rem}[part=header]{box-shadow:none;border-block-end:.0625rem solid var(--header-border)}[part=title]{font-family:var(--ig-h5-font-family, var(--ig-font-family));font-size:var(--ig-h5-font-size);font-weight:var(--ig-h5-font-weight);font-style:var(--ig-h5-font-style);line-height:var(--ig-h5-line-height);letter-spacing:var(--ig-h5-letter-spacing);text-transform:var(--ig-h5-text-transform);margin-top:var(--ig-h5-margin-top);margin-bottom:var(--ig-h5-margin-bottom);margin:0}igc-list{--ig-size: 2}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `[part~=dragging] igc-textarea::part(input){border:.0625rem solid var(--focused-border-color);box-shadow:0 0 0 .25rem var(--focused-secondary-color)}`;
2
+ export const styles = css `igc-textarea::part(input){max-height:10.375rem}[part~=dragging] igc-textarea::part(input){border:.0625rem solid var(--focused-border-color);box-shadow:0 0 0 .25rem var(--focused-secondary-color)}`;
3
3
  //# sourceMappingURL=input.bootstrap.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input.bootstrap.css.js","sourceRoot":"","sources":["../../../../../../src/components/chat/themes/shared/input/input.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,sJAAsJ,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=dragging] igc-textarea::part(input){border:.0625rem solid var(--focused-border-color);box-shadow:0 0 0 .25rem var(--focused-secondary-color)}`;\n"]}
1
+ {"version":3,"file":"input.bootstrap.css.js","sourceRoot":"","sources":["../../../../../../src/components/chat/themes/shared/input/input.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,qMAAqM,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`igc-textarea::part(input){max-height:10.375rem}[part~=dragging] igc-textarea::part(input){border:.0625rem solid var(--focused-border-color);box-shadow:0 0 0 .25rem var(--focused-secondary-color)}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{border-block-start:.0625rem solid var(--ig-gray-300)}`;
2
+ export const styles = css `[part~=input-container]{border:.0625rem solid var(--chat-input-border)}`;
3
3
  //# sourceMappingURL=input.common.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input.common.css.js","sourceRoot":"","sources":["../../../../../../src/components/chat/themes/shared/input/input.common.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,6DAA6D,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{border-block-start:.0625rem solid var(--ig-gray-300)}`;\n"]}
1
+ {"version":3,"file":"input.common.css.js","sourceRoot":"","sources":["../../../../../../src/components/chat/themes/shared/input/input.common.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,yEAAyE,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=input-container]{border:.0625rem solid var(--chat-input-border)}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `[part~=dragging] igc-textarea::part(container)::before{box-shadow:inset 0 0 0 .125rem var(--focused-border-color)}`;
2
+ export const styles = css `igc-textarea::part(input){max-height:9rem}[part~=dragging] igc-textarea::part(container)::before{box-shadow:inset 0 0 0 .125rem var(--focused-border-color)}`;
3
3
  //# sourceMappingURL=input.fluent.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input.fluent.css.js","sourceRoot":"","sources":["../../../../../../src/components/chat/themes/shared/input/input.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,oHAAoH,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=dragging] igc-textarea::part(container)::before{box-shadow:inset 0 0 0 .125rem var(--focused-border-color)}`;\n"]}
1
+ {"version":3,"file":"input.fluent.css.js","sourceRoot":"","sources":["../../../../../../src/components/chat/themes/shared/input/input.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,8JAA8J,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`igc-textarea::part(input){max-height:9rem}[part~=dragging] igc-textarea::part(container)::before{box-shadow:inset 0 0 0 .125rem var(--focused-border-color)}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `[part~=dragging] igc-textarea::part(container){background:var(--box-background-hover)}[part~=dragging] igc-textarea::part(container)::after{border-block-end-color:var(--focused-bottom-line-color)}[part~=dragging] igc-textarea::part(input){color:var(--focused-text-color)}`;
2
+ export const styles = css `igc-textarea::part(input){max-height:8.75rem}[part~=dragging] igc-textarea::part(container){background:var(--box-background-hover)}[part~=dragging] igc-textarea::part(container)::after{border-block-end-color:var(--focused-bottom-line-color)}[part~=dragging] igc-textarea::part(input){color:var(--focused-text-color)}[part=attachment-wrapper] igc-chip{--ig-size: 1}`;
3
3
  //# sourceMappingURL=input.indigo.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input.indigo.css.js","sourceRoot":"","sources":["../../../../../../src/components/chat/themes/shared/input/input.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,iRAAiR,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=dragging] igc-textarea::part(container){background:var(--box-background-hover)}[part~=dragging] igc-textarea::part(container)::after{border-block-end-color:var(--focused-bottom-line-color)}[part~=dragging] igc-textarea::part(input){color:var(--focused-text-color)}`;\n"]}
1
+ {"version":3,"file":"input.indigo.css.js","sourceRoot":"","sources":["../../../../../../src/components/chat/themes/shared/input/input.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,8WAA8W,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`igc-textarea::part(input){max-height:8.75rem}[part~=dragging] igc-textarea::part(container){background:var(--box-background-hover)}[part~=dragging] igc-textarea::part(container)::after{border-block-end-color:var(--focused-bottom-line-color)}[part~=dragging] igc-textarea::part(input){color:var(--focused-text-color)}[part=attachment-wrapper] igc-chip{--ig-size: 1}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `[part~=dragging] igc-textarea::part(container){background:var(--box-background-focus)}[part~=dragging] igc-textarea::part(container)::after{border-block-end:.125rem solid var(--focused-bottom-line-color)}`;
2
+ export const styles = css `[part~=dragging] igc-textarea::part(container){background:var(--box-background-focus)}[part~=dragging] igc-textarea::part(container)::after{border-block-end:.125rem solid var(--focused-bottom-line-color)}igc-textarea::part(input){margin-block-start:unset;padding-block:.75rem}`;
3
3
  //# sourceMappingURL=input.material.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input.material.css.js","sourceRoot":"","sources":["../../../../../../src/components/chat/themes/shared/input/input.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,8MAA8M,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=dragging] igc-textarea::part(container){background:var(--box-background-focus)}[part~=dragging] igc-textarea::part(container)::after{border-block-end:.125rem solid var(--focused-bottom-line-color)}`;\n"]}
1
+ {"version":3,"file":"input.material.css.js","sourceRoot":"","sources":["../../../../../../src/components/chat/themes/shared/input/input.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,sRAAsR,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=dragging] igc-textarea::part(container){background:var(--box-background-focus)}[part~=dragging] igc-textarea::part(container)::after{border-block-end:.125rem solid var(--focused-bottom-line-color)}igc-textarea::part(input){margin-block-start:unset;padding-block:.75rem}`;\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `[part=attachment-header],[part=attachment-content],[part="attachment-content sent"]{border:.0625rem solid var(--image-border)}[part=attachment-header]{background:var(--image-background);border-block-end:none}[part~=attachment-content]{background:var(--file-background)}[part=attachment-content]{border-block-start:none}[part~=attachment-icon]{color:var(--image-attachment-icon)}[part=file-attachment]{--color: var(--file-icon-color);--accent-color: var(--file-icon-accent-color)}`;
3
+ //# sourceMappingURL=message-attachments.common.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-attachments.common.css.js","sourceRoot":"","sources":["../../../../../../src/components/chat/themes/shared/message-attachments/message-attachments.common.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,ieAAie,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part=attachment-header],[part=attachment-content],[part=\"attachment-content sent\"]{border:.0625rem solid var(--image-border)}[part=attachment-header]{background:var(--image-background);border-block-end:none}[part~=attachment-content]{background:var(--file-background)}[part=attachment-content]{border-block-start:none}[part~=attachment-icon]{color:var(--image-attachment-icon)}[part=file-attachment]{--color: var(--file-icon-color);--accent-color: var(--file-icon-accent-color)}`;\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `[part~=attachment-icon]{--ig-size: 2}`;
3
+ //# sourceMappingURL=message-attachments.indigo.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-attachments.indigo.css.js","sourceRoot":"","sources":["../../../../../../src/components/chat/themes/shared/message-attachments/message-attachments.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,uCAAuC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=attachment-icon]{--ig-size: 2}`;\n"]}
@@ -8,21 +8,24 @@ import { styles as fluentLight } from './light/chat.fluent.css.js';
8
8
  import { styles as indigoLight } from './light/chat.indigo.css.js';
9
9
  import { styles as materialLight } from './light/chat.material.css.js';
10
10
  import { styles as shared } from './light/chat.shared.css.js';
11
+ import { styles as bootstrap } from './shared/chat.bootstrap.css.js';
12
+ import { styles as fluent } from './shared/chat.fluent.css.js';
13
+ import { styles as indigo } from './shared/chat.indigo.css.js';
11
14
  const light = {
12
15
  shared: css `
13
16
  ${shared}
14
17
  `,
15
18
  bootstrap: css `
16
- ${bootstrapLight}
19
+ ${bootstrap} ${bootstrapLight}
17
20
  `,
18
21
  material: css `
19
22
  ${materialLight}
20
23
  `,
21
24
  fluent: css `
22
- ${fluentLight}
25
+ ${fluent} ${fluentLight}
23
26
  `,
24
27
  indigo: css `
25
- ${indigoLight}
28
+ ${indigo} ${indigoLight}
26
29
  `,
27
30
  };
28
31
  const dark = {
@@ -30,16 +33,16 @@ const dark = {
30
33
  ${shared}
31
34
  `,
32
35
  bootstrap: css `
33
- ${bootstrapDark}
36
+ ${bootstrap} ${bootstrapDark}
34
37
  `,
35
38
  material: css `
36
39
  ${materialDark}
37
40
  `,
38
41
  fluent: css `
39
- ${fluentDark}
42
+ ${fluent} ${fluentDark}
40
43
  `,
41
44
  indigo: css `
42
- ${indigoDark}
45
+ ${indigo} ${indigoDark}
43
46
  `,
44
47
  };
45
48
  export const all = { light, dark };
@@ -1 +1 @@
1
- {"version":3,"file":"themes.js","sourceRoot":"","sources":["../../../../src/components/chat/themes/themes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAI1B,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAE9D,MAAM,KAAK,GAAG;IACZ,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,SAAS,EAAE,GAAG,CAAA;MACV,cAAc;GACjB;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,aAAa;GAChB;IACD,MAAM,EAAE,GAAG,CAAA;MACP,WAAW;GACd;IACD,MAAM,EAAE,GAAG,CAAA;MACP,WAAW;GACd;CACF,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,SAAS,EAAE,GAAG,CAAA;MACV,aAAa;GAChB;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,YAAY;GACf;IACD,MAAM,EAAE,GAAG,CAAA;MACP,UAAU;GACb;IACD,MAAM,EAAE,GAAG,CAAA;MACP,UAAU;GACb;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,GAAG,GAAW,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nimport type { Themes } from '../../../theming/types.js';\n// Dark Overrides\nimport { styles as bootstrapDark } from './dark/chat.bootstrap.css.js';\nimport { styles as fluentDark } from './dark/chat.fluent.css.js';\nimport { styles as indigoDark } from './dark/chat.indigo.css.js';\nimport { styles as materialDark } from './dark/chat.material.css.js';\n// Light Overrides\nimport { styles as bootstrapLight } from './light/chat.bootstrap.css.js';\nimport { styles as fluentLight } from './light/chat.fluent.css.js';\nimport { styles as indigoLight } from './light/chat.indigo.css.js';\nimport { styles as materialLight } from './light/chat.material.css.js';\nimport { styles as shared } from './light/chat.shared.css.js';\n\nconst light = {\n shared: css`\n ${shared}\n `,\n bootstrap: css`\n ${bootstrapLight}\n `,\n material: css`\n ${materialLight}\n `,\n fluent: css`\n ${fluentLight}\n `,\n indigo: css`\n ${indigoLight}\n `,\n};\n\nconst dark = {\n shared: css`\n ${shared}\n `,\n bootstrap: css`\n ${bootstrapDark}\n `,\n material: css`\n ${materialDark}\n `,\n fluent: css`\n ${fluentDark}\n `,\n indigo: css`\n ${indigoDark}\n `,\n};\n\nexport const all: Themes = { light, dark };\n"]}
1
+ {"version":3,"file":"themes.js","sourceRoot":"","sources":["../../../../src/components/chat/themes/themes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAI1B,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAEvE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAE/D,MAAM,KAAK,GAAG;IACZ,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,SAAS,EAAE,GAAG,CAAA;MACV,SAAS,IAAI,cAAc;GAC9B;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,aAAa;GAChB;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,WAAW;GACxB;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,WAAW;GACxB;CACF,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,SAAS,EAAE,GAAG,CAAA;MACV,SAAS,IAAI,aAAa;GAC7B;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,YAAY;GACf;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,UAAU;GACvB;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,UAAU;GACvB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,GAAG,GAAW,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nimport type { Themes } from '../../../theming/types.js';\n// Dark Overrides\nimport { styles as bootstrapDark } from './dark/chat.bootstrap.css.js';\nimport { styles as fluentDark } from './dark/chat.fluent.css.js';\nimport { styles as indigoDark } from './dark/chat.indigo.css.js';\nimport { styles as materialDark } from './dark/chat.material.css.js';\n// Light Overrides\nimport { styles as bootstrapLight } from './light/chat.bootstrap.css.js';\nimport { styles as fluentLight } from './light/chat.fluent.css.js';\nimport { styles as indigoLight } from './light/chat.indigo.css.js';\nimport { styles as materialLight } from './light/chat.material.css.js';\n// Shared Styles\nimport { styles as shared } from './light/chat.shared.css.js';\nimport { styles as bootstrap } from './shared/chat.bootstrap.css.js';\nimport { styles as fluent } from './shared/chat.fluent.css.js';\nimport { styles as indigo } from './shared/chat.indigo.css.js';\n\nconst light = {\n shared: css`\n ${shared}\n `,\n bootstrap: css`\n ${bootstrap} ${bootstrapLight}\n `,\n material: css`\n ${materialLight}\n `,\n fluent: css`\n ${fluent} ${fluentLight}\n `,\n indigo: css`\n ${indigo} ${indigoLight}\n `,\n};\n\nconst dark = {\n shared: css`\n ${shared}\n `,\n bootstrap: css`\n ${bootstrap} ${bootstrapDark}\n `,\n material: css`\n ${materialDark}\n `,\n fluent: css`\n ${fluent} ${fluentDark}\n `,\n indigo: css`\n ${indigo} ${indigoDark}\n `,\n};\n\nexport const all: Themes = { light, dark };\n"]}
@@ -1,4 +1,3 @@
1
- import type { TemplateResult } from 'lit';
2
1
  /**
3
2
  * Represents a single chat message in the conversation.
4
3
  */
@@ -24,6 +23,10 @@ export interface IgcMessage {
24
23
  * such as images, files, or links.
25
24
  */
26
25
  attachments?: IgcMessageAttachment[];
26
+ /**
27
+ * Optional list of reactions associated with the message.
28
+ */
29
+ reactions?: string[];
27
30
  }
28
31
  /**
29
32
  * Represents an attachment associated with a chat message.
@@ -55,26 +58,6 @@ export interface IgcMessageAttachment {
55
58
  */
56
59
  thumbnail?: string;
57
60
  }
58
- /**
59
- * A function type used to render a group of attachments in a chat message.
60
- *
61
- * This allows consumers to customize how message attachments are displayed
62
- * (e.g. rendering thumbnails, file icons, or download links).
63
- *
64
- * @param {IgcMessageAttachment[]} attachments - The list of attachments to render.
65
- * @returns {unknown} A custom rendered representation of the attachments.
66
- */
67
- export type AttachmentTemplate = (attachments: IgcMessageAttachment[]) => unknown;
68
- /**
69
- * A function type used to render a single chat message.
70
- *
71
- * This allows consumers to fully customize the display of a message,
72
- * including its text, sender info, timestamp, and any attachments.
73
- *
74
- * @param {IgcMessage} message - The chat message to render.
75
- * @returns {unknown} A custom rendered representation of the message.
76
- */
77
- export type MessageTemplate = (message: IgcMessage) => unknown;
78
61
  /**
79
62
  * Configuration options for customizing the behavior and appearance of the chat component.
80
63
  */
@@ -91,11 +74,11 @@ export type IgcChatOptions = {
91
74
  * If `true`, disables the ability to upload and send attachments.
92
75
  * Defaults to `false`.
93
76
  */
94
- disableAttachments?: boolean;
77
+ disableInputAttachments?: boolean;
95
78
  /**
96
- * Indicates whether the other user is currently typing or composing a message.
79
+ * Indicates whether the other user is currently typing a message.
97
80
  */
98
- isComposing?: boolean;
81
+ isTyping?: boolean;
99
82
  /**
100
83
  * The accepted files that could be attached.
101
84
  * Defines the file types as a list of comma-separated values (e.g. "image/*,.pdf") that the file input should accept.
@@ -124,67 +107,31 @@ export type IgcChatOptions = {
124
107
  */
125
108
  suggestionsPosition?: 'below-input' | 'below-messages';
126
109
  /**
127
- * A set of template override functions used to customize rendering of messages, attachments, etc.
110
+ * Time in milliseconds to wait before dispatching a stop typing event.
111
+ * Default is `3000`.
128
112
  */
129
- templates?: IgcChatTemplates;
130
- markdownRenderer?: (text: string) => TemplateResult;
113
+ stopTypingDelay?: number;
114
+ renderers?: Partial<ChatRenderers>;
131
115
  };
132
- /**
133
- * A collection of template functions used to customize different parts of the chat component.
134
- * Each template allows you to override the rendering of a specific part of the component.
135
- */
136
- export type IgcChatTemplates = {
137
- /**
138
- * Template for rendering an attachment in a message.
139
- */
140
- attachmentTemplate?: MessageTemplate;
141
- /**
142
- * Template for rendering a custom header above the attachment in a message.
143
- */
144
- attachmentHeaderTemplate?: MessageTemplate;
145
- /**
146
- * Template for rendering custom action buttons or controls related to an attachment
147
- * (e.g. download, preview, delete).
148
- */
149
- attachmentActionsTemplate?: MessageTemplate;
150
- /**
151
- * Template for rendering the main content of an attachment, such as a thumbnail or file preview.
152
- */
153
- attachmentContentTemplate?: MessageTemplate;
154
- /**
155
- * Template for rendering a single chat message.
156
- * Use this to customize message layout, formatting, or metadata.
157
- */
158
- messageTemplate?: MessageTemplate;
159
- /**
160
- * Template for rendering message-specific actions such as edit, delete, reply, etc.
161
- */
162
- messageActionsTemplate?: MessageTemplate;
163
- /**
164
- * Template used to show an indicator when the other user is typing (e.g. “User is typing...”).
165
- */
166
- composingIndicatorTemplate?: unknown;
167
- /**
168
- * Template for customizing the text input element (usually a `<textarea>` or `<input>`).
169
- *
170
- * @param text - The current value of the text input.
171
- * @returns {unknown} A custom rendered representation of the text input.
172
- */
173
- textInputTemplate?: (text: string) => unknown;
174
- /**
175
- * Template for rendering additional controls in the message input area,
176
- * such as send buttons, emoji pickers, or voice recorders.
177
- */
178
- textAreaActionsTemplate?: unknown;
179
- /**
180
- * Template for rendering attachments that are currently queued for sending (in the input area).
181
- */
182
- textAreaAttachmentsTemplate?: AttachmentTemplate;
116
+ export type ChatRenderers = {
117
+ attachment?: ChatTemplateRenderer<IgcMessageAttachment>;
118
+ attachmentHeader?: ChatTemplateRenderer<IgcMessageAttachment>;
119
+ attachmentContent?: ChatTemplateRenderer<IgcMessageAttachment>;
120
+ message?: ChatTemplateRenderer<IgcMessage>;
121
+ messageHeader?: ChatTemplateRenderer<IgcMessage>;
122
+ messageContent?: ChatTemplateRenderer<IgcMessage>;
123
+ messageAttachments?: ChatTemplateRenderer<IgcMessage>;
124
+ messageActions?: ChatTemplateRenderer<IgcMessage>;
125
+ attachments?: ChatTemplateRenderer<IgcMessageAttachment[]>;
126
+ typingIndicator?: ChatTemplateRenderer<void>;
127
+ input?: ChatTemplateRenderer<string>;
128
+ inputActions?: ChatTemplateRenderer<void>;
129
+ inputAttachments?: ChatTemplateRenderer<IgcMessageAttachment[]>;
130
+ fileUploadButton?: ChatTemplateRenderer<void>;
131
+ sendButton?: ChatTemplateRenderer<void>;
183
132
  };
184
- export declare const attachmentIcon = "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\" width=\"24px\" fill=\"#e3e3e3\"><path d=\"M720-330q0 104-73 177T470-80q-104 0-177-73t-73-177v-370q0-75 52.5-127.5T400-880q75 0 127.5 52.5T580-700v350q0 46-32 78t-78 32q-46 0-78-32t-32-78v-370h80v370q0 13 8.5 21.5T470-320q13 0 21.5-8.5T500-350v-350q-1-42-29.5-71T400-800q-42 0-71 29t-29 71v370q-1 71 49 120.5T470-160q70 0 119-49.5T640-330v-390h80v390Z\"/></svg>";
185
- export declare const sendButtonIcon = "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\" width=\"24px\" fill=\"#e3e3e3\"><path d=\"M120-160v-640l760 320-760 320Zm80-120 474-200-474-200v140l240 60-240 60v140Zm0 0v-400 400Z\"/></svg>";
186
- export declare const closeIcon = "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\" width=\"24px\" fill=\"#e3e3e3\"><path d=\"m256-200-56-56 224-224-224-224 56-56 224 224 224-224 56 56-224 224 224 224-56 56-224-224-224 224Z\"/></svg>";
187
- export declare const fileIcon = "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\" width=\"24px\" fill=\"#e3e3e3\"><path d=\"M240-80q-33 0-56.5-23.5T160-160v-640q0-33 23.5-56.5T240-880h320l240 240v480q0 33-23.5 56.5T720-80H240Zm280-520v-200H240v640h480v-440H520ZM240-800v200-200 640-640Z\"/></svg>";
188
- export declare const imageIcon = "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\" width=\"24px\" fill=\"#e3e3e3\"><path d=\"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm40-80h480L570-480 450-320l-90-120-120 160Zm-40 80v-560 560Z\"/></svg>";
189
- export declare const moreIcon = "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\" width=\"24px\" fill=\"#e3e3e3\"><path d=\"M240-400q-33 0-56.5-23.5T160-480q0-33 23.5-56.5T240-560q33 0 56.5 23.5T320-480q0 33-23.5 56.5T240-400Zm240 0q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm240 0q-33 0-56.5-23.5T640-480q0-33 23.5-56.5T720-560q33 0 56.5 23.5T800-480q0 33-23.5 56.5T720-400Z\"/></svg>";
190
- export declare const previewIcon = "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\" width=\"24px\" fill=\"#e3e3e3\"><path d=\"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h280v80H200v560h560v-280h80v280q0 33-23.5 56.5T760-120H200Zm188-212-56-56 372-372H560v-80h280v280h-80v-144L388-332Z\"/></svg>";
133
+ export type ChatTemplateRenderer<T> = (ctx: {
134
+ param: T;
135
+ defaults: Partial<ChatRenderers>;
136
+ options?: IgcChatOptions;
137
+ }) => unknown;
@@ -1,8 +1,2 @@
1
- export const attachmentIcon = '<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e3e3e3"><path d="M720-330q0 104-73 177T470-80q-104 0-177-73t-73-177v-370q0-75 52.5-127.5T400-880q75 0 127.5 52.5T580-700v350q0 46-32 78t-78 32q-46 0-78-32t-32-78v-370h80v370q0 13 8.5 21.5T470-320q13 0 21.5-8.5T500-350v-350q-1-42-29.5-71T400-800q-42 0-71 29t-29 71v370q-1 71 49 120.5T470-160q70 0 119-49.5T640-330v-390h80v390Z"/></svg>';
2
- export const sendButtonIcon = '<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e3e3e3"><path d="M120-160v-640l760 320-760 320Zm80-120 474-200-474-200v140l240 60-240 60v140Zm0 0v-400 400Z"/></svg>';
3
- export const closeIcon = '<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e3e3e3"><path d="m256-200-56-56 224-224-224-224 56-56 224 224 224-224 56 56-224 224 224 224-56 56-224-224-224 224Z"/></svg>';
4
- export const fileIcon = '<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e3e3e3"><path d="M240-80q-33 0-56.5-23.5T160-160v-640q0-33 23.5-56.5T240-880h320l240 240v480q0 33-23.5 56.5T720-80H240Zm280-520v-200H240v640h480v-440H520ZM240-800v200-200 640-640Z"/></svg>';
5
- export const imageIcon = '<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e3e3e3"><path d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm40-80h480L570-480 450-320l-90-120-120 160Zm-40 80v-560 560Z"/></svg>';
6
- export const moreIcon = '<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e3e3e3"><path d="M240-400q-33 0-56.5-23.5T160-480q0-33 23.5-56.5T240-560q33 0 56.5 23.5T320-480q0 33-23.5 56.5T240-400Zm240 0q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm240 0q-33 0-56.5-23.5T640-480q0-33 23.5-56.5T720-560q33 0 56.5 23.5T800-480q0 33-23.5 56.5T720-400Z"/></svg>';
7
- export const previewIcon = '<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e3e3e3"><path d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h280v80H200v560h560v-280h80v280q0 33-23.5 56.5T760-120H200Zm188-212-56-56 372-372H560v-80h280v280h-80v-144L388-332Z"/></svg>';
1
+ export {};
8
2
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/chat/types.ts"],"names":[],"mappings":"AAqNA,MAAM,CAAC,MAAM,cAAc,GACzB,mbAAmb,CAAC;AACtb,MAAM,CAAC,MAAM,cAAc,GACzB,yNAAyN,CAAC;AAC5N,MAAM,CAAC,MAAM,SAAS,GACpB,gOAAgO,CAAC;AACnO,MAAM,CAAC,MAAM,QAAQ,GACnB,iSAAiS,CAAC;AACpS,MAAM,CAAC,MAAM,SAAS,GACpB,yUAAyU,CAAC;AAC5U,MAAM,CAAC,MAAM,QAAQ,GACnB,6aAA6a,CAAC;AAChb,MAAM,CAAC,MAAM,WAAW,GACtB,8SAA8S,CAAC","sourcesContent":["import type { TemplateResult } from 'lit';\n\n/**\n * Represents a single chat message in the conversation.\n */\nexport interface IgcMessage {\n /**\n * A unique identifier for the message.\n */\n id: string;\n\n /**\n * The textual content of the message.\n */\n text: string;\n\n /**\n * The identifier or name of the sender of the message.\n */\n sender: string;\n\n /**\n * The timestamp indicating when the message was sent.\n */\n timestamp: Date;\n\n /**\n * Optional list of attachments associated with the message,\n * such as images, files, or links.\n */\n attachments?: IgcMessageAttachment[];\n}\n\n/**\n * Represents an attachment associated with a chat message.\n */\nexport interface IgcMessageAttachment {\n /**\n * A unique identifier for the attachment.\n */\n id: string;\n\n /**\n * The display name of the attachment (e.g. file name).\n */\n name: string;\n\n /**\n * The URL from which the attachment can be downloaded or viewed.\n * Typically used for attachments stored on a server or CDN.\n */\n url?: string;\n\n /**\n * The actual File object, if the attachment was provided locally (e.g. via upload).\n */\n file?: File;\n\n /**\n * The MIME type or a custom type identifier for the attachment (e.g. \"image/png\", \"pdf\", \"audio\").\n */\n type?: string;\n\n /**\n * Optional URL to a thumbnail preview of the attachment (e.g. for images or videos).\n */\n thumbnail?: string;\n}\n\n/**\n * A function type used to render a group of attachments in a chat message.\n *\n * This allows consumers to customize how message attachments are displayed\n * (e.g. rendering thumbnails, file icons, or download links).\n *\n * @param {IgcMessageAttachment[]} attachments - The list of attachments to render.\n * @returns {unknown} A custom rendered representation of the attachments.\n */\nexport type AttachmentTemplate = (\n attachments: IgcMessageAttachment[]\n) => unknown;\n\n/**\n * A function type used to render a single chat message.\n *\n * This allows consumers to fully customize the display of a message,\n * including its text, sender info, timestamp, and any attachments.\n *\n * @param {IgcMessage} message - The chat message to render.\n * @returns {unknown} A custom rendered representation of the message.\n */\nexport type MessageTemplate = (message: IgcMessage) => unknown;\n\n// export type MarkdownRenderer = (text: string) => TemplateResult;\n\n/**\n * Configuration options for customizing the behavior and appearance of the chat component.\n */\nexport type IgcChatOptions = {\n /**\n * The ID of the current user. Used to differentiate between incoming and outgoing messages.\n */\n currentUserId?: string;\n /**\n * If `true`, prevents the chat from automatically scrolling to the latest message.\n */\n disableAutoScroll?: boolean;\n /**\n * If `true`, disables the ability to upload and send attachments.\n * Defaults to `false`.\n */\n disableAttachments?: boolean;\n /**\n * Indicates whether the other user is currently typing or composing a message.\n */\n isComposing?: boolean;\n /**\n * The accepted files that could be attached.\n * Defines the file types as a list of comma-separated values (e.g. \"image/*,.pdf\") that the file input should accept.\n */\n acceptedFiles?: string;\n /**\n * Optional header text to display at the top of the chat component.\n */\n headerText?: string;\n /**\n * Optional placeholder text for the chat input area.\n * Provides a hint to the user about what they can type (e.g. \"Type a message...\").\n */\n inputPlaceholder?: string;\n /**\n * Suggested text snippets or quick replies that can be shown as user-selectable options.\n */\n suggestions?: string[];\n /**\n * Controls the position of the chat suggestions within the component layout.\n *\n * - `\"below-input\"`: Renders suggestions below the chat input area.\n * - `\"below-messages\"`: Renders suggestions below the chat messages area.\n *\n * Default is `\"below-messages\"`.\n */\n suggestionsPosition?: 'below-input' | 'below-messages';\n\n /**\n * A set of template override functions used to customize rendering of messages, attachments, etc.\n */\n templates?: IgcChatTemplates;\n markdownRenderer?: (text: string) => TemplateResult; //TODO: Remove when highlighter is implemented\n};\n\n/**\n * A collection of template functions used to customize different parts of the chat component.\n * Each template allows you to override the rendering of a specific part of the component.\n */\nexport type IgcChatTemplates = {\n /**\n * Template for rendering an attachment in a message.\n */\n attachmentTemplate?: MessageTemplate;\n\n /**\n * Template for rendering a custom header above the attachment in a message.\n */\n attachmentHeaderTemplate?: MessageTemplate;\n\n /**\n * Template for rendering custom action buttons or controls related to an attachment\n * (e.g. download, preview, delete).\n */\n attachmentActionsTemplate?: MessageTemplate;\n\n /**\n * Template for rendering the main content of an attachment, such as a thumbnail or file preview.\n */\n attachmentContentTemplate?: MessageTemplate;\n\n /**\n * Template for rendering a single chat message.\n * Use this to customize message layout, formatting, or metadata.\n */\n messageTemplate?: MessageTemplate;\n\n /**\n * Template for rendering message-specific actions such as edit, delete, reply, etc.\n */\n messageActionsTemplate?: MessageTemplate;\n\n /**\n * Template used to show an indicator when the other user is typing (e.g. “User is typing...”).\n */\n composingIndicatorTemplate?: unknown;\n\n /**\n * Template for customizing the text input element (usually a `<textarea>` or `<input>`).\n *\n * @param text - The current value of the text input.\n * @returns {unknown} A custom rendered representation of the text input.\n */\n textInputTemplate?: (text: string) => unknown;\n\n /**\n * Template for rendering additional controls in the message input area,\n * such as send buttons, emoji pickers, or voice recorders.\n */\n textAreaActionsTemplate?: unknown;\n\n /**\n * Template for rendering attachments that are currently queued for sending (in the input area).\n */\n textAreaAttachmentsTemplate?: AttachmentTemplate;\n};\n\nexport const attachmentIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\" width=\"24px\" fill=\"#e3e3e3\"><path d=\"M720-330q0 104-73 177T470-80q-104 0-177-73t-73-177v-370q0-75 52.5-127.5T400-880q75 0 127.5 52.5T580-700v350q0 46-32 78t-78 32q-46 0-78-32t-32-78v-370h80v370q0 13 8.5 21.5T470-320q13 0 21.5-8.5T500-350v-350q-1-42-29.5-71T400-800q-42 0-71 29t-29 71v370q-1 71 49 120.5T470-160q70 0 119-49.5T640-330v-390h80v390Z\"/></svg>';\nexport const sendButtonIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\" width=\"24px\" fill=\"#e3e3e3\"><path d=\"M120-160v-640l760 320-760 320Zm80-120 474-200-474-200v140l240 60-240 60v140Zm0 0v-400 400Z\"/></svg>';\nexport const closeIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\" width=\"24px\" fill=\"#e3e3e3\"><path d=\"m256-200-56-56 224-224-224-224 56-56 224 224 224-224 56 56-224 224 224 224-56 56-224-224-224 224Z\"/></svg>';\nexport const fileIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\" width=\"24px\" fill=\"#e3e3e3\"><path d=\"M240-80q-33 0-56.5-23.5T160-160v-640q0-33 23.5-56.5T240-880h320l240 240v480q0 33-23.5 56.5T720-80H240Zm280-520v-200H240v640h480v-440H520ZM240-800v200-200 640-640Z\"/></svg>';\nexport const imageIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\" width=\"24px\" fill=\"#e3e3e3\"><path d=\"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm40-80h480L570-480 450-320l-90-120-120 160Zm-40 80v-560 560Z\"/></svg>';\nexport const moreIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\" width=\"24px\" fill=\"#e3e3e3\"><path d=\"M240-400q-33 0-56.5-23.5T160-480q0-33 23.5-56.5T240-560q33 0 56.5 23.5T320-480q0 33-23.5 56.5T240-400Zm240 0q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm240 0q-33 0-56.5-23.5T640-480q0-33 23.5-56.5T720-560q33 0 56.5 23.5T800-480q0 33-23.5 56.5T720-400Z\"/></svg>';\nexport const previewIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\" width=\"24px\" fill=\"#e3e3e3\"><path d=\"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h280v80H200v560h560v-280h80v280q0 33-23.5 56.5T760-120H200Zm188-212-56-56 372-372H560v-80h280v280h-80v-144L388-332Z\"/></svg>';\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/chat/types.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * Represents a single chat message in the conversation.\n */\nexport interface IgcMessage {\n /**\n * A unique identifier for the message.\n */\n id: string;\n\n /**\n * The textual content of the message.\n */\n text: string;\n\n /**\n * The identifier or name of the sender of the message.\n */\n sender: string;\n\n /**\n * The timestamp indicating when the message was sent.\n */\n timestamp: Date;\n\n /**\n * Optional list of attachments associated with the message,\n * such as images, files, or links.\n */\n attachments?: IgcMessageAttachment[];\n\n /**\n * Optional list of reactions associated with the message.\n */\n reactions?: string[];\n}\n\n/**\n * Represents an attachment associated with a chat message.\n */\nexport interface IgcMessageAttachment {\n /**\n * A unique identifier for the attachment.\n */\n id: string;\n\n /**\n * The display name of the attachment (e.g. file name).\n */\n name: string;\n\n /**\n * The URL from which the attachment can be downloaded or viewed.\n * Typically used for attachments stored on a server or CDN.\n */\n url?: string;\n\n /**\n * The actual File object, if the attachment was provided locally (e.g. via upload).\n */\n file?: File;\n\n /**\n * The MIME type or a custom type identifier for the attachment (e.g. \"image/png\", \"pdf\", \"audio\").\n */\n type?: string;\n\n /**\n * Optional URL to a thumbnail preview of the attachment (e.g. for images or videos).\n */\n thumbnail?: string;\n}\n\n/**\n * Configuration options for customizing the behavior and appearance of the chat component.\n */\nexport type IgcChatOptions = {\n /**\n * The ID of the current user. Used to differentiate between incoming and outgoing messages.\n */\n currentUserId?: string;\n /**\n * If `true`, prevents the chat from automatically scrolling to the latest message.\n */\n disableAutoScroll?: boolean;\n /**\n * If `true`, disables the ability to upload and send attachments.\n * Defaults to `false`.\n */\n disableInputAttachments?: boolean;\n /**\n * Indicates whether the other user is currently typing a message.\n */\n isTyping?: boolean;\n /**\n * The accepted files that could be attached.\n * Defines the file types as a list of comma-separated values (e.g. \"image/*,.pdf\") that the file input should accept.\n */\n acceptedFiles?: string;\n /**\n * Optional header text to display at the top of the chat component.\n */\n headerText?: string;\n /**\n * Optional placeholder text for the chat input area.\n * Provides a hint to the user about what they can type (e.g. \"Type a message...\").\n */\n inputPlaceholder?: string;\n /**\n * Suggested text snippets or quick replies that can be shown as user-selectable options.\n */\n suggestions?: string[];\n /**\n * Controls the position of the chat suggestions within the component layout.\n *\n * - `\"below-input\"`: Renders suggestions below the chat input area.\n * - `\"below-messages\"`: Renders suggestions below the chat messages area.\n *\n * Default is `\"below-messages\"`.\n */\n suggestionsPosition?: 'below-input' | 'below-messages';\n /**\n * Time in milliseconds to wait before dispatching a stop typing event.\n * Default is `3000`.\n */\n stopTypingDelay?: number;\n\n renderers?: Partial<ChatRenderers>;\n};\n\nexport type ChatRenderers = {\n attachment?: ChatTemplateRenderer<IgcMessageAttachment>;\n attachmentHeader?: ChatTemplateRenderer<IgcMessageAttachment>;\n attachmentContent?: ChatTemplateRenderer<IgcMessageAttachment>;\n message?: ChatTemplateRenderer<IgcMessage>;\n messageHeader?: ChatTemplateRenderer<IgcMessage>;\n messageContent?: ChatTemplateRenderer<IgcMessage>;\n messageAttachments?: ChatTemplateRenderer<IgcMessage>;\n messageActions?: ChatTemplateRenderer<IgcMessage>;\n attachments?: ChatTemplateRenderer<IgcMessageAttachment[]>;\n typingIndicator?: ChatTemplateRenderer<void>;\n input?: ChatTemplateRenderer<string>;\n inputActions?: ChatTemplateRenderer<void>;\n inputAttachments?: ChatTemplateRenderer<IgcMessageAttachment[]>;\n fileUploadButton?: ChatTemplateRenderer<void>;\n sendButton?: ChatTemplateRenderer<void>;\n};\n\nexport type ChatTemplateRenderer<T> = (ctx: {\n param: T;\n defaults: Partial<ChatRenderers>;\n options?: IgcChatOptions;\n}) => unknown;\n"]}
@@ -0,0 +1,16 @@
1
+ import type IgcChatMessageComponent from './chat-message.js';
2
+ import type { IgcMessageAttachment } from './types.js';
3
+ export type ChatAcceptedFileTypes = {
4
+ extensions: Set<string>;
5
+ mimeTypes: Set<string>;
6
+ wildcardTypes: Set<string>;
7
+ };
8
+ export declare const ChatFileTypeIcons: Map<string, string>;
9
+ export declare function parseAcceptedFileTypes(fileTypes: string): ChatAcceptedFileTypes;
10
+ export declare function isAcceptedFileType(file: File, accepted: ChatAcceptedFileTypes | null): boolean;
11
+ export declare function getChatAcceptedFiles(event: DragEvent, accepted: ChatAcceptedFileTypes | null): File[];
12
+ export declare function getIconName(fileType?: string): "attach_document" | "attach_image";
13
+ export declare function createAttachmentURL(attachment: IgcMessageAttachment): string;
14
+ export declare function getFileExtension(name: string): string;
15
+ export declare function showChatActionsTooltip(target: Element, message: string): void;
16
+ export declare function chatMessageAdoptPageStyles(message: IgcChatMessageComponent): void;
@@ -0,0 +1,86 @@
1
+ import { adoptStyles } from 'lit';
2
+ import { last } from '../common/util.js';
3
+ import IgcTooltipComponent from '../tooltip/tooltip.js';
4
+ let actionsTooltip;
5
+ export const ChatFileTypeIcons = new Map(Object.entries({
6
+ css: 'file_css',
7
+ csv: 'file_csv',
8
+ doc: 'file_doc',
9
+ docx: 'file_doc',
10
+ htm: 'file_htm',
11
+ html: 'file_html',
12
+ js: 'file_js',
13
+ json: 'file_json',
14
+ pdf: 'file_pdf',
15
+ rtf: 'file_rtf',
16
+ svg: 'file_svg',
17
+ txt: 'file_txt',
18
+ url: 'file_link',
19
+ xls: 'file_xls',
20
+ xlsx: 'file_xls',
21
+ xml: 'file_xml',
22
+ zip: 'file_zip',
23
+ default: 'file_generic',
24
+ }));
25
+ export function parseAcceptedFileTypes(fileTypes) {
26
+ const types = fileTypes.split(',').map((each) => each.trim().toLowerCase());
27
+ return {
28
+ extensions: new Set(types.filter((t) => t.startsWith('.'))),
29
+ mimeTypes: new Set(types.filter((t) => !t.startsWith('.') && !t.endsWith('/*'))),
30
+ wildcardTypes: new Set(types.filter((t) => t.endsWith('/*')).map((t) => t.slice(0, -2))),
31
+ };
32
+ }
33
+ export function isAcceptedFileType(file, accepted) {
34
+ if (!(accepted && file)) {
35
+ return true;
36
+ }
37
+ const { extensions, mimeTypes, wildcardTypes } = accepted;
38
+ const fileType = file.type.toLowerCase();
39
+ const fileExtension = `.${last(file.name.split('.'))?.toLowerCase()}`;
40
+ const [fileBaseType] = fileType.split('/');
41
+ return (extensions.has(fileExtension) ||
42
+ mimeTypes.has(fileType) ||
43
+ wildcardTypes.has(fileBaseType));
44
+ }
45
+ export function getChatAcceptedFiles(event, accepted) {
46
+ return Array.from(event.dataTransfer?.files ?? []).filter((file) => isAcceptedFileType(file, accepted));
47
+ }
48
+ export function getIconName(fileType) {
49
+ return fileType?.startsWith('image') ? 'attach_image' : 'attach_document';
50
+ }
51
+ export function createAttachmentURL(attachment) {
52
+ if (attachment.file) {
53
+ return URL.createObjectURL(attachment.file);
54
+ }
55
+ return attachment.url || '';
56
+ }
57
+ export function getFileExtension(name) {
58
+ const parts = name.split('.');
59
+ return parts.length > 1 ? last(parts) : '';
60
+ }
61
+ export function showChatActionsTooltip(target, message) {
62
+ if (!actionsTooltip) {
63
+ actionsTooltip = document.createElement(IgcTooltipComponent.tagName);
64
+ actionsTooltip.hideTriggers = 'pointerleave,click,blur';
65
+ actionsTooltip.hideDelay = 100;
66
+ document.body.appendChild(actionsTooltip);
67
+ }
68
+ actionsTooltip.message = message;
69
+ actionsTooltip.show(target);
70
+ }
71
+ export function chatMessageAdoptPageStyles(message) {
72
+ const sheets = [];
73
+ for (const sheet of document.styleSheets) {
74
+ try {
75
+ const constructed = new CSSStyleSheet();
76
+ for (const rule of sheet.cssRules) {
77
+ constructed.insertRule(rule.cssText);
78
+ }
79
+ sheets.push(constructed);
80
+ }
81
+ catch { }
82
+ }
83
+ const ctor = message.constructor;
84
+ adoptStyles(message.shadowRoot, [...ctor.elementStyles, ...sheets]);
85
+ }
86
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/components/chat/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAmB,MAAM,KAAK,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AAIxD,IAAI,cAAmC,CAAC;AAQxC,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,GAAG,CACtC,MAAM,CAAC,OAAO,CAAC;IACb,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,UAAU;IACf,IAAI,EAAE,UAAU;IAChB,GAAG,EAAE,UAAU;IACf,IAAI,EAAE,WAAW;IACjB,EAAE,EAAE,SAAS;IACb,IAAI,EAAE,WAAW;IACjB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,UAAU;IACf,IAAI,EAAE,UAAU;IAChB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,UAAU;IACf,OAAO,EAAE,cAAc;CACxB,CAAC,CACH,CAAC;AAEF,MAAM,UAAU,sBAAsB,CACpC,SAAiB;IAEjB,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IAC5E,OAAO;QACL,UAAU,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3D,SAAS,EAAE,IAAI,GAAG,CAChB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAC7D;QACD,aAAa,EAAE,IAAI,GAAG,CACpB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CACjE;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,IAAU,EACV,QAAsC;IAEtC,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,QAAQ,CAAC;IAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IACzC,MAAM,aAAa,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,CAAC;IACtE,MAAM,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE3C,OAAO,CACL,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC;QAC7B,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC;QACvB,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAChC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,KAAgB,EAChB,QAAsC;IAEtC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CACjE,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,CACnC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,QAAiB;IAC3C,OAAO,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,CAAC;AAC5E,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,UAAgC;IAClE,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;QACpB,OAAO,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,UAAU,CAAC,GAAG,IAAI,EAAE,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAe,EAAE,OAAe;IACrE,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACrE,cAAc,CAAC,YAAY,GAAG,yBAAyB,CAAC;QACxD,cAAc,CAAC,SAAS,GAAG,GAAG,CAAC;QAC/B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAC5C,CAAC;IACD,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC;IACjC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC;AAGD,MAAM,UAAU,0BAA0B,CACxC,OAAgC;IAEhC,MAAM,MAAM,GAAoB,EAAE,CAAC;IAEnC,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,aAAa,EAAE,CAAC;YACxC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAClC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvC,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,WAAgC,CAAC;IACtD,WAAW,CAAC,OAAO,CAAC,UAAW,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC;AACvE,CAAC","sourcesContent":["import { adoptStyles, type LitElement } from 'lit';\nimport { last } from '../common/util.js';\nimport IgcTooltipComponent from '../tooltip/tooltip.js';\nimport type IgcChatMessageComponent from './chat-message.js';\nimport type { IgcMessageAttachment } from './types.js';\n\nlet actionsTooltip: IgcTooltipComponent;\n\nexport type ChatAcceptedFileTypes = {\n extensions: Set<string>;\n mimeTypes: Set<string>;\n wildcardTypes: Set<string>;\n};\n\nexport const ChatFileTypeIcons = new Map(\n Object.entries({\n css: 'file_css',\n csv: 'file_csv',\n doc: 'file_doc',\n docx: 'file_doc',\n htm: 'file_htm',\n html: 'file_html',\n js: 'file_js',\n json: 'file_json',\n pdf: 'file_pdf',\n rtf: 'file_rtf',\n svg: 'file_svg',\n txt: 'file_txt',\n url: 'file_link',\n xls: 'file_xls',\n xlsx: 'file_xls',\n xml: 'file_xml',\n zip: 'file_zip',\n default: 'file_generic',\n })\n);\n\nexport function parseAcceptedFileTypes(\n fileTypes: string\n): ChatAcceptedFileTypes {\n const types = fileTypes.split(',').map((each) => each.trim().toLowerCase());\n return {\n extensions: new Set(types.filter((t) => t.startsWith('.'))),\n mimeTypes: new Set(\n types.filter((t) => !t.startsWith('.') && !t.endsWith('/*'))\n ),\n wildcardTypes: new Set(\n types.filter((t) => t.endsWith('/*')).map((t) => t.slice(0, -2))\n ),\n };\n}\n\nexport function isAcceptedFileType(\n file: File,\n accepted: ChatAcceptedFileTypes | null\n): boolean {\n if (!(accepted && file)) {\n return true;\n }\n\n const { extensions, mimeTypes, wildcardTypes } = accepted;\n const fileType = file.type.toLowerCase();\n const fileExtension = `.${last(file.name.split('.'))?.toLowerCase()}`;\n const [fileBaseType] = fileType.split('/');\n\n return (\n extensions.has(fileExtension) ||\n mimeTypes.has(fileType) ||\n wildcardTypes.has(fileBaseType)\n );\n}\n\nexport function getChatAcceptedFiles(\n event: DragEvent,\n accepted: ChatAcceptedFileTypes | null\n): File[] {\n return Array.from(event.dataTransfer?.files ?? []).filter((file) =>\n isAcceptedFileType(file, accepted)\n );\n}\n\nexport function getIconName(fileType?: string) {\n return fileType?.startsWith('image') ? 'attach_image' : 'attach_document';\n}\n\nexport function createAttachmentURL(attachment: IgcMessageAttachment): string {\n if (attachment.file) {\n return URL.createObjectURL(attachment.file);\n }\n\n return attachment.url || '';\n}\n\nexport function getFileExtension(name: string): string {\n const parts = name.split('.');\n return parts.length > 1 ? last(parts) : '';\n}\n\nexport function showChatActionsTooltip(target: Element, message: string): void {\n if (!actionsTooltip) {\n actionsTooltip = document.createElement(IgcTooltipComponent.tagName);\n actionsTooltip.hideTriggers = 'pointerleave,click,blur';\n actionsTooltip.hideDelay = 100;\n document.body.appendChild(actionsTooltip);\n }\n actionsTooltip.message = message;\n actionsTooltip.show(target);\n}\n\n// REVIEW: Maybe put that behind a configuration flag as this is nasty.\nexport function chatMessageAdoptPageStyles(\n message: IgcChatMessageComponent\n): void {\n const sheets: CSSStyleSheet[] = [];\n\n for (const sheet of document.styleSheets) {\n try {\n const constructed = new CSSStyleSheet();\n for (const rule of sheet.cssRules) {\n constructed.insertRule(rule.cssText);\n }\n sheets.push(constructed);\n } catch {}\n }\n\n const ctor = message.constructor as typeof LitElement;\n adoptStyles(message.shadowRoot!, [...ctor.elementStyles, ...sheets]);\n}\n"]}
@@ -13,7 +13,7 @@ export interface IgcCheckboxComponentEventMap {
13
13
  declare const IgcCheckboxBaseComponent_base: Constructor<import("../common/mixins/forms/types.js").FormRequiredInterface & import("../common/mixins/forms/types.js").FormAssociatedCheckboxElementInterface> & Constructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcCheckboxComponentEventMap>> & Constructor<LitElement>;
14
14
  export declare class IgcCheckboxBaseComponent extends IgcCheckboxBaseComponent_base {
15
15
  protected get __validators(): import("../common/validators.js").Validator<IgcCheckboxBaseComponent>[];
16
- protected readonly _slots: import("../common/controllers/slot.js").SlotController<"invalid" | "[default]" | "helper-text" | "value-missing" | "custom-error">;
16
+ protected readonly _slots: import("../common/controllers/slot.js").SlotController<"invalid" | "helper-text" | "[default]" | "value-missing" | "custom-error">;
17
17
  protected readonly _focusRingManager: import("../common/controllers/focus-ring.js").KeyboardFocusRingController;
18
18
  protected readonly _formValue: import("../common/mixins/forms/form-value.js").FormValue<boolean>;
19
19
  protected _value: string;