@siemens/ix 5.1.1 → 5.2.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 (853) hide show
  1. package/READMEOSS.html +1 -1
  2. package/components/index.js +1 -1
  3. package/components/ix-action-card.js +1 -1
  4. package/components/ix-application-header.js +1 -1
  5. package/components/ix-application-switch-modal.js +1 -1
  6. package/components/ix-application.js +1 -1
  7. package/components/ix-avatar.js +1 -1
  8. package/components/ix-badge.d.ts +11 -0
  9. package/components/ix-badge.js +1 -0
  10. package/components/ix-blind.js +1 -1
  11. package/components/ix-breadcrumb-item.js +1 -1
  12. package/components/ix-breadcrumb.js +1 -1
  13. package/components/ix-button.js +1 -1
  14. package/components/ix-card-accordion.js +1 -1
  15. package/components/ix-card-content.js +1 -1
  16. package/components/ix-card-list.js +1 -1
  17. package/components/ix-card-title.js +1 -1
  18. package/components/ix-card.js +1 -1
  19. package/components/ix-category-filter.js +1 -1
  20. package/components/ix-chat-ai-message.d.ts +11 -0
  21. package/components/ix-chat-ai-message.js +1 -0
  22. package/components/ix-chat-attachment.d.ts +11 -0
  23. package/components/ix-chat-attachment.js +1 -0
  24. package/components/ix-chat-input.d.ts +11 -0
  25. package/components/ix-chat-input.js +1 -0
  26. package/components/ix-chat-user-message.d.ts +11 -0
  27. package/components/ix-chat-user-message.js +1 -0
  28. package/components/ix-chat.d.ts +11 -0
  29. package/components/ix-chat.js +1 -0
  30. package/components/ix-checkbox-group.js +1 -1
  31. package/components/ix-checkbox.js +1 -1
  32. package/components/ix-chip.js +1 -1
  33. package/components/ix-col.js +1 -1
  34. package/components/ix-content-header.js +1 -1
  35. package/components/ix-content.js +1 -1
  36. package/components/ix-css-grid-item.js +1 -1
  37. package/components/ix-css-grid.js +1 -1
  38. package/components/ix-custom-field.js +1 -1
  39. package/components/ix-date-dropdown.js +1 -1
  40. package/components/ix-date-input.js +1 -1
  41. package/components/ix-date-picker.js +1 -1
  42. package/components/ix-date-time-card.js +1 -1
  43. package/components/ix-datetime-input.js +1 -1
  44. package/components/ix-datetime-picker.js +1 -1
  45. package/components/ix-divider.js +1 -1
  46. package/components/ix-dropdown-button.js +1 -1
  47. package/components/ix-dropdown-header.js +1 -1
  48. package/components/ix-dropdown-item.js +1 -1
  49. package/components/ix-dropdown-quick-actions.js +1 -1
  50. package/components/ix-dropdown.js +1 -1
  51. package/components/ix-empty-state.js +1 -1
  52. package/components/ix-event-list-item.js +1 -1
  53. package/components/ix-event-list.js +1 -1
  54. package/components/ix-expanding-search.js +1 -1
  55. package/components/ix-field-label.js +1 -1
  56. package/components/ix-field-wrapper.js +1 -1
  57. package/components/ix-filter-chip.js +1 -1
  58. package/components/ix-flip-tile-content.js +1 -1
  59. package/components/ix-flip-tile.js +1 -1
  60. package/components/ix-group-context-menu.js +1 -1
  61. package/components/ix-group-item.js +1 -1
  62. package/components/ix-group.js +1 -1
  63. package/components/ix-helper-text.js +1 -1
  64. package/components/ix-icon-button.js +1 -1
  65. package/components/ix-icon-toggle-button.js +1 -1
  66. package/components/ix-input.js +1 -1
  67. package/components/ix-key-value-list.js +1 -1
  68. package/components/ix-key-value.js +1 -1
  69. package/components/ix-kpi.js +1 -1
  70. package/components/ix-layout-auto.js +1 -1
  71. package/components/ix-layout-grid.js +1 -1
  72. package/components/ix-link-button.js +1 -1
  73. package/components/ix-menu-about-item.js +1 -1
  74. package/components/ix-menu-about-news.js +1 -1
  75. package/components/ix-menu-about.js +1 -1
  76. package/components/ix-menu-avatar-item.js +1 -1
  77. package/components/ix-menu-avatar.js +1 -1
  78. package/components/ix-menu-category.js +1 -1
  79. package/components/ix-menu-expand-icon.js +1 -1
  80. package/components/ix-menu-item.js +1 -1
  81. package/components/ix-menu-settings-item.js +1 -1
  82. package/components/ix-menu-settings.js +1 -1
  83. package/components/ix-menu.js +1 -1
  84. package/components/ix-message-bar.js +1 -1
  85. package/components/ix-modal-content.js +1 -1
  86. package/components/ix-modal-footer.js +1 -1
  87. package/components/ix-modal-header.js +1 -1
  88. package/components/ix-modal-loading.js +1 -1
  89. package/components/ix-modal.js +1 -1
  90. package/components/ix-number-input.js +1 -1
  91. package/components/ix-pagination.js +1 -1
  92. package/components/ix-pane-layout.js +1 -1
  93. package/components/ix-pane.js +1 -1
  94. package/components/ix-pill.js +1 -1
  95. package/components/ix-popover-content.js +1 -1
  96. package/components/ix-popover-footer.js +1 -1
  97. package/components/ix-popover-header.js +1 -1
  98. package/components/ix-popover-image.js +1 -1
  99. package/components/ix-popover.js +1 -1
  100. package/components/ix-progress-indicator.js +1 -1
  101. package/components/ix-push-card.js +1 -1
  102. package/components/ix-radio-group.js +1 -1
  103. package/components/ix-radio.js +1 -1
  104. package/components/ix-range-field.js +1 -1
  105. package/components/ix-row.js +1 -1
  106. package/components/ix-select-item.js +1 -1
  107. package/components/ix-select.js +1 -1
  108. package/components/ix-slider.js +1 -1
  109. package/components/ix-spinner.js +1 -1
  110. package/components/ix-split-button.js +1 -1
  111. package/components/ix-tab-item.js +1 -1
  112. package/components/ix-tab-panel.js +1 -1
  113. package/components/ix-tab-set.js +1 -1
  114. package/components/ix-tabs.js +1 -1
  115. package/components/ix-textarea.js +1 -1
  116. package/components/ix-tile.js +1 -1
  117. package/components/ix-time-input.js +1 -1
  118. package/components/ix-time-picker.js +1 -1
  119. package/components/ix-toast-container.js +1 -1
  120. package/components/ix-toast.js +1 -1
  121. package/components/ix-toggle-button.js +1 -1
  122. package/components/ix-toggle.js +1 -1
  123. package/components/ix-tooltip.js +1 -1
  124. package/components/ix-tree-item.js +1 -1
  125. package/components/ix-tree.js +1 -1
  126. package/components/ix-typography.js +1 -1
  127. package/components/ix-upload.js +1 -1
  128. package/components/ix-workflow-step.js +1 -1
  129. package/components/ix-workflow-steps.js +1 -1
  130. package/components/p-1FBWW6v2.js +1 -0
  131. package/components/p-3U_cSqu_.js +1 -0
  132. package/components/p-4ZsT_zIm.js +1 -0
  133. package/components/{p-CUvmGsh_.js → p-BC2PyjjU.js} +1 -1
  134. package/{dist/siemens-ix/p-wfVRhTWc.js → components/p-BDnx22Gp.js} +1 -1
  135. package/components/{p-baqpOH0g.js → p-BGOtCwtj.js} +1 -1
  136. package/components/{p-CuFZ7CXu.js → p-BHjmN8zz.js} +1 -1
  137. package/components/p-BHoJOFM-.js +1 -0
  138. package/components/{p-CbbabcAR.js → p-BHtNsBtM.js} +1 -1
  139. package/components/p-BQ-hS49k.js +1 -0
  140. package/components/p-BTBxxgtF.js +1 -0
  141. package/components/{p-Cvpz1Ji5.js → p-BcbFeRB0.js} +1 -1
  142. package/components/p-BmZGQGZi.js +1 -0
  143. package/components/p-Bs5X90wM.js +1 -0
  144. package/components/p-C02EaF8C.js +1 -0
  145. package/components/p-CEE0wwD3.js +1 -0
  146. package/components/p-CLDB-pmj.js +1 -0
  147. package/components/p-CRtj-KBq.js +1 -0
  148. package/components/p-CTRSoM-z.js +1 -0
  149. package/components/p-CUpOF7jN.js +1 -0
  150. package/components/{p-GGleop6j.js → p-C_K74Xlt.js} +1 -1
  151. package/components/{p-BRoFUwzJ.js → p-CatmTvkh.js} +1 -1
  152. package/components/{p-Dl_YKIKl.js → p-CgPr717U.js} +1 -1
  153. package/components/p-CtZAuwv3.js +1 -0
  154. package/components/p-Ctb1EExj.js +1 -0
  155. package/components/p-CvAmaEU2.js +1 -0
  156. package/components/p-Cxwq4WaV.js +1 -0
  157. package/components/p-D6O-bCyA.js +1 -0
  158. package/components/{p-BBCsPlPH.js → p-D7qfGAJ7.js} +1 -1
  159. package/components/p-D7sEY2UQ.js +1 -0
  160. package/components/{p-DtmgZu-S.js → p-DWOjSq8j.js} +1 -1
  161. package/components/p-D_HzQCU-.js +1 -0
  162. package/components/p-DdlGyKd2.js +1 -0
  163. package/components/p-DiYkfhDE.js +1 -0
  164. package/components/p-DmtgI24u.js +1 -0
  165. package/components/p-DpvAVNqZ.js +1 -0
  166. package/components/p-DsVj4Cd-.js +1 -0
  167. package/components/{p-Bj_6nynP.js → p-DtWFUcZO.js} +1 -1
  168. package/components/p-DylHkzl6.js +1 -0
  169. package/components/p-NXyac9kC.js +1 -0
  170. package/components/p-OxstEnSC.js +1 -0
  171. package/components/p-R5tYZVVd.js +1 -0
  172. package/components/{p-Czy7a3I4.js → p-WisOWbJ8.js} +1 -1
  173. package/components/{p-1KOHyx-1.js → p-YFmbQndr.js} +1 -1
  174. package/components/p-eGuQ8D3W.js +1 -0
  175. package/components/{p-CtDOTMOT.js → p-eN5fQtqO.js} +1 -1
  176. package/components/p-ePylRxs_.js +1 -0
  177. package/components/p-hf_zqlB1.js +1 -0
  178. package/components/p-l9UTiHpM.js +1 -0
  179. package/components/{p-BZgc6bzH.js → p-snX1FfdL.js} +1 -1
  180. package/components/p-tpMN9yTQ.js +1 -0
  181. package/components/p-v9vlPlkd.js +1 -0
  182. package/dist/cjs/chip.types-BD73fAij.js +22 -0
  183. package/dist/cjs/{helper-text-util-BkHm7ofh.js → helper-text-util-Ci_KFQZ4.js} +1 -1
  184. package/dist/cjs/{index-CwJ-mkQd.js → index-BQht1mLe.js} +20 -0
  185. package/dist/cjs/index-DnclGKUw.js +28 -4
  186. package/dist/cjs/index.cjs.js +1 -1
  187. package/dist/cjs/{input.fc-DM-hX3xb.js → input.fc-xGzM_I6q.js} +1 -1
  188. package/dist/cjs/ix-action-card.cjs.entry.js +1 -1
  189. package/dist/cjs/ix-application-header.cjs.entry.js +2 -2
  190. package/dist/cjs/ix-application-switch-modal.cjs.entry.js +2 -2
  191. package/dist/cjs/ix-application.cjs.entry.js +1 -1
  192. package/dist/cjs/ix-avatar_2.cjs.entry.js +3 -3
  193. package/dist/cjs/ix-badge.cjs.entry.js +716 -0
  194. package/dist/cjs/ix-blind.cjs.entry.js +7 -7
  195. package/dist/cjs/ix-breadcrumb-item.cjs.entry.js +2 -2
  196. package/dist/cjs/ix-breadcrumb.cjs.entry.js +4 -4
  197. package/dist/cjs/ix-button.cjs.entry.js +1 -1
  198. package/dist/cjs/ix-card-accordion_2.cjs.entry.js +7 -7
  199. package/dist/cjs/ix-card-list.cjs.entry.js +63 -10
  200. package/dist/cjs/ix-card_2.cjs.entry.js +5 -5
  201. package/dist/cjs/ix-category-filter.cjs.entry.js +5 -5
  202. package/dist/cjs/ix-chat-ai-message.cjs.entry.js +35 -0
  203. package/dist/cjs/ix-chat-attachment.cjs.entry.js +110 -0
  204. package/dist/cjs/ix-chat-input.cjs.entry.js +406 -0
  205. package/dist/cjs/ix-chat-user-message.cjs.entry.js +66 -0
  206. package/dist/cjs/ix-chat.cjs.entry.js +28 -0
  207. package/dist/cjs/ix-checkbox-group.cjs.entry.js +3 -3
  208. package/dist/cjs/ix-checkbox.cjs.entry.js +5 -5
  209. package/dist/cjs/ix-chip.cjs.entry.js +10 -29
  210. package/dist/cjs/ix-col_4.cjs.entry.js +12 -12
  211. package/dist/cjs/ix-content-header.cjs.entry.js +4 -4
  212. package/dist/cjs/ix-content.cjs.entry.js +4 -4
  213. package/dist/cjs/ix-css-grid-item.cjs.entry.js +1 -1
  214. package/dist/cjs/ix-css-grid.cjs.entry.js +1 -1
  215. package/dist/cjs/ix-custom-field.cjs.entry.js +2 -2
  216. package/dist/cjs/ix-date-dropdown.cjs.entry.js +7 -7
  217. package/dist/cjs/ix-date-input.cjs.entry.js +7 -7
  218. package/dist/cjs/ix-date-picker.cjs.entry.js +9 -9
  219. package/dist/cjs/ix-date-time-card.cjs.entry.js +3 -3
  220. package/dist/cjs/ix-datetime-input.cjs.entry.js +7 -7
  221. package/dist/cjs/ix-datetime-picker.cjs.entry.js +4 -4
  222. package/dist/cjs/ix-divider.cjs.entry.js +1 -1
  223. package/dist/cjs/ix-dropdown-button.cjs.entry.js +6 -6
  224. package/dist/cjs/ix-dropdown-header.cjs.entry.js +2 -2
  225. package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js +1 -1
  226. package/dist/cjs/ix-dropdown_2.cjs.entry.js +7 -7
  227. package/dist/cjs/ix-empty-state.cjs.entry.js +2 -2
  228. package/dist/cjs/ix-event-list-item.cjs.entry.js +6 -6
  229. package/dist/cjs/ix-event-list.cjs.entry.js +8 -5
  230. package/dist/cjs/ix-expanding-search.cjs.entry.js +6 -6
  231. package/dist/cjs/ix-field-label_2.cjs.entry.js +7 -7
  232. package/dist/cjs/ix-filter-chip_2.cjs.entry.js +6 -6
  233. package/dist/cjs/ix-flip-tile-content.cjs.entry.js +1 -1
  234. package/dist/cjs/ix-flip-tile.cjs.entry.js +5 -5
  235. package/dist/cjs/ix-group-context-menu_2.cjs.entry.js +3 -3
  236. package/dist/cjs/ix-group.cjs.entry.js +9 -9
  237. package/dist/cjs/ix-helper-text.cjs.entry.js +4 -4
  238. package/dist/cjs/ix-icon-button_2.cjs.entry.js +5 -5
  239. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +3 -3
  240. package/dist/cjs/ix-input.cjs.entry.js +8 -8
  241. package/dist/cjs/ix-key-value-list.cjs.entry.js +1 -1
  242. package/dist/cjs/ix-key-value.cjs.entry.js +1 -1
  243. package/dist/cjs/ix-kpi.cjs.entry.js +5 -5
  244. package/dist/cjs/ix-layout-auto.cjs.entry.js +1 -1
  245. package/dist/cjs/ix-link-button.cjs.entry.js +4 -4
  246. package/dist/cjs/ix-menu-about-item.cjs.entry.js +1 -1
  247. package/dist/cjs/ix-menu-about-news.cjs.entry.js +6 -6
  248. package/dist/cjs/ix-menu-about.cjs.entry.js +4 -4
  249. package/dist/cjs/ix-menu-avatar.cjs.entry.js +4 -4
  250. package/dist/cjs/ix-menu-category.cjs.entry.js +12 -9
  251. package/dist/cjs/ix-menu-expand-icon.cjs.entry.js +3 -3
  252. package/dist/cjs/ix-menu-item.cjs.entry.js +5 -5
  253. package/dist/cjs/ix-menu-settings-item.cjs.entry.js +1 -1
  254. package/dist/cjs/ix-menu-settings.cjs.entry.js +4 -4
  255. package/dist/cjs/ix-menu.cjs.entry.js +14 -14
  256. package/dist/cjs/ix-message-bar.cjs.entry.js +3 -3
  257. package/dist/cjs/ix-modal-content_2.cjs.entry.js +5 -5
  258. package/dist/cjs/ix-modal-footer.cjs.entry.js +2 -2
  259. package/dist/cjs/ix-modal-loading.cjs.entry.js +1 -1
  260. package/dist/cjs/ix-modal.cjs.entry.js +3 -3
  261. package/dist/cjs/ix-number-input.cjs.entry.js +9 -9
  262. package/dist/cjs/ix-pagination.cjs.entry.js +4 -4
  263. package/dist/cjs/ix-pane-layout.cjs.entry.js +2 -2
  264. package/dist/cjs/ix-pane.cjs.entry.js +9 -9
  265. package/dist/cjs/ix-pill_4.cjs.entry.js +20 -20
  266. package/dist/cjs/ix-popover-content.cjs.entry.js +2 -2
  267. package/dist/cjs/ix-popover-footer.cjs.entry.js +2 -2
  268. package/dist/cjs/ix-popover-header.cjs.entry.js +3 -3
  269. package/dist/cjs/ix-popover-image.cjs.entry.js +1 -1
  270. package/dist/cjs/ix-popover.cjs.entry.js +1 -1
  271. package/dist/cjs/ix-progress-indicator.cjs.entry.js +4 -4
  272. package/dist/cjs/ix-push-card.cjs.entry.js +2 -2
  273. package/dist/cjs/ix-radio-group.cjs.entry.js +3 -3
  274. package/dist/cjs/ix-radio.cjs.entry.js +5 -5
  275. package/dist/cjs/ix-range-field.cjs.entry.js +4 -4
  276. package/dist/cjs/ix-select.cjs.entry.js +12 -12
  277. package/dist/cjs/ix-slider.cjs.entry.js +8 -8
  278. package/dist/cjs/ix-split-button.cjs.entry.js +3 -3
  279. package/dist/cjs/ix-tab-panel.cjs.entry.js +2 -2
  280. package/dist/cjs/ix-textarea.cjs.entry.js +5 -5
  281. package/dist/cjs/ix-tile.cjs.entry.js +5 -5
  282. package/dist/cjs/ix-time-input.cjs.entry.js +7 -7
  283. package/dist/cjs/ix-toast-container.cjs.entry.js +3 -3
  284. package/dist/cjs/ix-toast.cjs.entry.js +4 -4
  285. package/dist/cjs/ix-toggle-button.cjs.entry.js +1 -1
  286. package/dist/cjs/ix-toggle.cjs.entry.js +5 -5
  287. package/dist/cjs/ix-tooltip.cjs.entry.js +1 -1
  288. package/dist/cjs/ix-tree-item.cjs.entry.js +6 -6
  289. package/dist/cjs/ix-tree.cjs.entry.js +1 -1
  290. package/dist/cjs/ix-typography.cjs.entry.js +2 -2
  291. package/dist/cjs/ix-upload.cjs.entry.js +5 -5
  292. package/dist/cjs/ix-workflow-step.cjs.entry.js +5 -5
  293. package/dist/cjs/ix-workflow-steps.cjs.entry.js +2 -2
  294. package/dist/cjs/loader.cjs.js +1 -1
  295. package/dist/cjs/siemens-ix.cjs.js +1 -1
  296. package/dist/cjs/{validation-DJaUH-UR.js → validation-B1izlD8M.js} +59 -3
  297. package/dist/collection/collection-manifest.json +6 -0
  298. package/dist/collection/components/action-card/action-card.css +11 -11
  299. package/dist/collection/components/application/application.css +11 -11
  300. package/dist/collection/components/application-header/application-header.css +11 -11
  301. package/dist/collection/components/application-header/application-switch-modal/application-switch-modal.css +11 -11
  302. package/dist/collection/components/avatar/avatar.css +19 -11
  303. package/dist/collection/components/badge/badge.css +622 -0
  304. package/dist/collection/components/badge/badge.js +815 -0
  305. package/dist/collection/components/badge/badge.status-icon.js +65 -0
  306. package/dist/collection/components/badge/badge.types.js +24 -0
  307. package/dist/collection/components/badge/badge.utils.js +57 -0
  308. package/dist/collection/components/badge/test/badge.page.js +190 -0
  309. package/dist/collection/components/blind/blind.css +119 -15
  310. package/dist/collection/components/blind/blind.js +5 -5
  311. package/dist/collection/components/breadcrumb/breadcrumb.css +11 -11
  312. package/dist/collection/components/breadcrumb/breadcrumb.js +2 -2
  313. package/dist/collection/components/breadcrumb-item/breadcrumb-item.css +52 -44
  314. package/dist/collection/components/button/button.css +30 -22
  315. package/dist/collection/components/card/card.css +11 -11
  316. package/dist/collection/components/card/card.js +2 -2
  317. package/dist/collection/components/card-accordion/card-accordion.css +61 -44
  318. package/dist/collection/components/card-accordion/card-accordion.js +4 -4
  319. package/dist/collection/components/card-content/card-content.css +11 -11
  320. package/dist/collection/components/card-content/card-content.js +1 -1
  321. package/dist/collection/components/card-list/card-list.css +23 -11
  322. package/dist/collection/components/card-list/card-list.js +67 -10
  323. package/dist/collection/components/card-title/card-title.js +1 -1
  324. package/dist/collection/components/category-filter/category-filter.css +41 -33
  325. package/dist/collection/components/category-filter/category-filter.js +3 -3
  326. package/dist/collection/components/chat/chat.css +114 -0
  327. package/dist/collection/components/chat/chat.js +47 -0
  328. package/dist/collection/components/chat-ai-message/chat-ai-message.css +139 -0
  329. package/dist/collection/components/chat-ai-message/chat-ai-message.js +56 -0
  330. package/dist/collection/components/chat-attachment/chat-attachment.css +135 -0
  331. package/dist/collection/components/chat-attachment/chat-attachment.js +284 -0
  332. package/dist/collection/components/chat-attachment/chat-attachment.types.js +1 -0
  333. package/dist/collection/components/chat-input/chat-input.css +323 -0
  334. package/dist/collection/components/chat-input/chat-input.js +878 -0
  335. package/dist/collection/components/chat-user-message/chat-user-message.css +145 -0
  336. package/dist/collection/components/chat-user-message/chat-user-message.js +112 -0
  337. package/dist/collection/components/checkbox/checkbox.css +11 -11
  338. package/dist/collection/components/checkbox/checkbox.js +3 -3
  339. package/dist/collection/components/checkbox-group/checkbox-group.js +2 -2
  340. package/dist/collection/components/chip/chip.css +28 -19
  341. package/dist/collection/components/chip/chip.js +7 -8
  342. package/dist/collection/components/col/col.css +11 -11
  343. package/dist/collection/components/col/col.js +2 -2
  344. package/dist/collection/components/content/content.css +11 -11
  345. package/dist/collection/components/content/content.js +3 -3
  346. package/dist/collection/components/content-header/content-header.js +3 -3
  347. package/dist/collection/components/css-grid/css-grid-item.js +1 -1
  348. package/dist/collection/components/css-grid/css-grid.js +1 -1
  349. package/dist/collection/components/custom-field/custom-field.js +1 -1
  350. package/dist/collection/components/date-dropdown/date-dropdown.css +30 -22
  351. package/dist/collection/components/date-dropdown/date-dropdown.js +5 -5
  352. package/dist/collection/components/date-input/date-input.css +22 -22
  353. package/dist/collection/components/date-input/date-input.js +3 -3
  354. package/dist/collection/components/date-picker/date-picker.css +19 -11
  355. package/dist/collection/components/date-picker/date-picker.js +7 -7
  356. package/dist/collection/components/date-time-card/date-time-card.css +11 -11
  357. package/dist/collection/components/date-time-card/date-time-card.js +2 -2
  358. package/dist/collection/components/datetime-input/datetime-input.css +22 -22
  359. package/dist/collection/components/datetime-input/datetime-input.js +3 -3
  360. package/dist/collection/components/datetime-picker/datetime-picker.css +11 -11
  361. package/dist/collection/components/datetime-picker/datetime-picker.js +3 -3
  362. package/dist/collection/components/divider/divider.js +1 -1
  363. package/dist/collection/components/dropdown/dropdown.css +11 -11
  364. package/dist/collection/components/dropdown/dropdown.js +1 -1
  365. package/dist/collection/components/dropdown-button/dropdown-button.css +326 -34
  366. package/dist/collection/components/dropdown-button/dropdown-button.js +4 -4
  367. package/dist/collection/components/dropdown-header/dropdown-header.css +11 -11
  368. package/dist/collection/components/dropdown-header/dropdown-header.js +1 -1
  369. package/dist/collection/components/dropdown-item/dropdown-item.css +12 -12
  370. package/dist/collection/components/dropdown-item/dropdown-item.js +3 -3
  371. package/dist/collection/components/dropdown-quick-actions/dropdown-quick-actions.js +1 -1
  372. package/dist/collection/components/empty-state/empty-state.css +11 -11
  373. package/dist/collection/components/empty-state/empty-state.js +1 -1
  374. package/dist/collection/components/event-list/event-list.css +11 -11
  375. package/dist/collection/components/event-list/event-list.js +7 -4
  376. package/dist/collection/components/event-list-item/event-list-item.css +11 -11
  377. package/dist/collection/components/event-list-item/event-list-item.js +4 -4
  378. package/dist/collection/components/expanding-search/expanding-search.css +11 -11
  379. package/dist/collection/components/expanding-search/expanding-search.js +4 -4
  380. package/dist/collection/components/field-label/field-label.js +2 -2
  381. package/dist/collection/components/field-wrapper/field-wrapper.js +2 -2
  382. package/dist/collection/components/filter-chip/filter-chip.css +11 -11
  383. package/dist/collection/components/filter-chip/filter-chip.js +2 -2
  384. package/dist/collection/components/flip-tile/flip-tile.css +11 -11
  385. package/dist/collection/components/flip-tile/flip-tile.js +3 -3
  386. package/dist/collection/components/flip-tile-content/flip-tile-content.js +1 -1
  387. package/dist/collection/components/group/group-context-menu.js +1 -1
  388. package/dist/collection/components/group/group.js +8 -8
  389. package/dist/collection/components/group-item/group-item.css +11 -11
  390. package/dist/collection/components/helper-text/helper-text.js +1 -1
  391. package/dist/collection/components/icon-button/icon-button.css +49 -39
  392. package/dist/collection/components/icon-button/icon-button.js +2 -2
  393. package/dist/collection/components/icon-toggle-button/icon-toggle-button.css +49 -39
  394. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +2 -2
  395. package/dist/collection/components/input/input.css +11 -11
  396. package/dist/collection/components/input/input.js +4 -4
  397. package/dist/collection/components/input/number-input.css +11 -11
  398. package/dist/collection/components/input/number-input.js +5 -5
  399. package/dist/collection/components/input/textarea.css +11 -11
  400. package/dist/collection/components/input/textarea.js +2 -2
  401. package/dist/collection/components/ix-playground/ix-playground.js +1 -1
  402. package/dist/collection/components/key-value/key-value.js +1 -1
  403. package/dist/collection/components/key-value-list/key-value-list.js +1 -1
  404. package/dist/collection/components/kpi/kpi.css +11 -11
  405. package/dist/collection/components/kpi/kpi.js +3 -3
  406. package/dist/collection/components/layout-auto/layout-auto.js +1 -1
  407. package/dist/collection/components/layout-grid/layout-grid.js +2 -2
  408. package/dist/collection/components/link-button/link-button.js +3 -3
  409. package/dist/collection/components/menu/menu-expand-icon.css +30 -22
  410. package/dist/collection/components/menu/menu-expand-icon.js +1 -1
  411. package/dist/collection/components/menu/menu.css +11 -11
  412. package/dist/collection/components/menu/menu.js +12 -12
  413. package/dist/collection/components/menu-about/menu-about.css +11 -11
  414. package/dist/collection/components/menu-about/menu-about.js +2 -2
  415. package/dist/collection/components/menu-about-item/menu-about-item.js +1 -1
  416. package/dist/collection/components/menu-about-news/menu-about-news.css +11 -11
  417. package/dist/collection/components/menu-about-news/menu-about-news.js +4 -4
  418. package/dist/collection/components/menu-avatar/menu-avatar.css +11 -11
  419. package/dist/collection/components/menu-avatar/menu-avatar.js +2 -2
  420. package/dist/collection/components/menu-avatar-item/menu-avatar-item.css +11 -11
  421. package/dist/collection/components/menu-avatar-item/menu-avatar-item.js +1 -1
  422. package/dist/collection/components/menu-category/menu-category.css +11 -11
  423. package/dist/collection/components/menu-category/menu-category.js +12 -9
  424. package/dist/collection/components/menu-item/menu-item.js +4 -4
  425. package/dist/collection/components/menu-settings/menu-settings.css +11 -11
  426. package/dist/collection/components/menu-settings/menu-settings.js +2 -2
  427. package/dist/collection/components/menu-settings-item/menu-settings-item.js +1 -1
  428. package/dist/collection/components/message-bar/message-bar.css +11 -11
  429. package/dist/collection/components/message-bar/message-bar.js +1 -1
  430. package/dist/collection/components/modal/modal.js +3 -3
  431. package/dist/collection/components/modal-content/modal-content.css +11 -11
  432. package/dist/collection/components/modal-content/modal-content.js +1 -1
  433. package/dist/collection/components/modal-footer/modal-footer.css +11 -11
  434. package/dist/collection/components/modal-footer/modal-footer.js +1 -1
  435. package/dist/collection/components/modal-header/modal-header.css +11 -11
  436. package/dist/collection/components/modal-header/modal-header.js +1 -1
  437. package/dist/collection/components/modal-loading/modal-loading.js +1 -1
  438. package/dist/collection/components/pagination/pagination.css +60 -50
  439. package/dist/collection/components/pagination/pagination.js +2 -2
  440. package/dist/collection/components/pane/pane.css +11 -11
  441. package/dist/collection/components/pane/pane.js +7 -7
  442. package/dist/collection/components/pane-layout/pane-layout.css +11 -11
  443. package/dist/collection/components/pane-layout/pane-layout.js +1 -1
  444. package/dist/collection/components/pill/pill.css +11 -11
  445. package/dist/collection/components/pill/pill.js +4 -4
  446. package/dist/collection/components/popover/popover.js +1 -1
  447. package/dist/collection/components/popover-content/popover-content.css +11 -11
  448. package/dist/collection/components/popover-content/popover-content.js +1 -1
  449. package/dist/collection/components/popover-footer/popover-footer.css +11 -11
  450. package/dist/collection/components/popover-footer/popover-footer.js +1 -1
  451. package/dist/collection/components/popover-header/popover-header.css +11 -11
  452. package/dist/collection/components/popover-header/popover-header.js +1 -1
  453. package/dist/collection/components/popover-image/popover-image.css +11 -11
  454. package/dist/collection/components/progress-indicator/progress-indicator.js +3 -3
  455. package/dist/collection/components/push-card/push-card.css +70 -0
  456. package/dist/collection/components/push-card/push-card.js +1 -1
  457. package/dist/collection/components/radio/radio.css +11 -11
  458. package/dist/collection/components/radio/radio.js +3 -3
  459. package/dist/collection/components/radio-group/radio-group.js +2 -2
  460. package/dist/collection/components/range-field/range-field.css +11 -11
  461. package/dist/collection/components/range-field/range-field.js +2 -2
  462. package/dist/collection/components/row/row.js +1 -1
  463. package/dist/collection/components/select/select.css +11 -11
  464. package/dist/collection/components/select/select.js +10 -10
  465. package/dist/collection/components/select-item/select-item.js +2 -2
  466. package/dist/collection/components/slider/slider.css +11 -11
  467. package/dist/collection/components/slider/slider.js +6 -6
  468. package/dist/collection/components/spinner/spinner.css +55 -55
  469. package/dist/collection/components/spinner/spinner.js +1 -1
  470. package/dist/collection/components/split-button/split-button.css +11 -11
  471. package/dist/collection/components/split-button/split-button.js +1 -1
  472. package/dist/collection/components/tab-item/tab-item.css +17 -11
  473. package/dist/collection/components/tab-item/tab-item.js +5 -5
  474. package/dist/collection/components/tab-panel/tab-panel.css +11 -11
  475. package/dist/collection/components/tab-panel/tab-panel.js +1 -1
  476. package/dist/collection/components/tab-set/tab-set.css +11 -11
  477. package/dist/collection/components/tab-set/tab-set.js +1 -1
  478. package/dist/collection/components/tabs/tabs.css +11 -11
  479. package/dist/collection/components/tabs/tabs.js +5 -5
  480. package/dist/collection/components/tile/tile.css +11 -11
  481. package/dist/collection/components/tile/tile.js +4 -4
  482. package/dist/collection/components/time-input/time-input.css +22 -22
  483. package/dist/collection/components/time-input/time-input.js +3 -3
  484. package/dist/collection/components/time-picker/time-picker.css +11 -11
  485. package/dist/collection/components/time-picker/time-picker.js +5 -5
  486. package/dist/collection/components/toast/toast-container.css +11 -11
  487. package/dist/collection/components/toast/toast-container.js +2 -2
  488. package/dist/collection/components/toast/toast.css +11 -11
  489. package/dist/collection/components/toast/toast.js +2 -2
  490. package/dist/collection/components/toggle/toggle.css +11 -11
  491. package/dist/collection/components/toggle/toggle.js +3 -3
  492. package/dist/collection/components/toggle-button/toggle-button.css +41 -33
  493. package/dist/collection/components/tooltip/tooltip.js +1 -1
  494. package/dist/collection/components/tree/tree.js +1 -1
  495. package/dist/collection/components/tree-item/tree-item.css +11 -11
  496. package/dist/collection/components/tree-item/tree-item.js +4 -4
  497. package/dist/collection/components/typography/typography.css +11 -11
  498. package/dist/collection/components/typography/typography.js +1 -1
  499. package/dist/collection/components/upload/upload.css +11 -11
  500. package/dist/collection/components/upload/upload.js +3 -3
  501. package/dist/collection/components/utils/input/validation.js +58 -3
  502. package/dist/collection/components/workflow-step/workflow-step.css +11 -11
  503. package/dist/collection/components/workflow-step/workflow-step.js +3 -3
  504. package/dist/collection/components/workflow-steps/workflow-steps.css +11 -11
  505. package/dist/collection/components/workflow-steps/workflow-steps.js +1 -1
  506. package/dist/esm/chip.types-4ZsT_zIm.js +20 -0
  507. package/dist/esm/{helper-text-util-D0LEFZuB.js → helper-text-util-sQKO6RPJ.js} +1 -1
  508. package/dist/esm/{index-DgUGsIlh.js → index-BeX6RWvV.js} +11 -1
  509. package/dist/esm/index-EBgS4zhE.js +28 -4
  510. package/dist/esm/index.js +1 -1
  511. package/dist/esm/{input.fc-CE3kP-L_.js → input.fc-DliqEtCM.js} +1 -1
  512. package/dist/esm/ix-action-card.entry.js +1 -1
  513. package/dist/esm/ix-application-header.entry.js +2 -2
  514. package/dist/esm/ix-application-switch-modal.entry.js +2 -2
  515. package/dist/esm/ix-application.entry.js +1 -1
  516. package/dist/esm/ix-avatar_2.entry.js +3 -3
  517. package/dist/esm/ix-badge.entry.js +714 -0
  518. package/dist/esm/ix-blind.entry.js +7 -7
  519. package/dist/esm/ix-breadcrumb-item.entry.js +2 -2
  520. package/dist/esm/ix-breadcrumb.entry.js +4 -4
  521. package/dist/esm/ix-button.entry.js +1 -1
  522. package/dist/esm/ix-card-accordion_2.entry.js +7 -7
  523. package/dist/esm/ix-card-list.entry.js +63 -10
  524. package/dist/esm/ix-card_2.entry.js +5 -5
  525. package/dist/esm/ix-category-filter.entry.js +5 -5
  526. package/dist/esm/ix-chat-ai-message.entry.js +33 -0
  527. package/dist/esm/ix-chat-attachment.entry.js +108 -0
  528. package/dist/esm/ix-chat-input.entry.js +404 -0
  529. package/dist/esm/ix-chat-user-message.entry.js +64 -0
  530. package/dist/esm/ix-chat.entry.js +26 -0
  531. package/dist/esm/ix-checkbox-group.entry.js +3 -3
  532. package/dist/esm/ix-checkbox.entry.js +5 -5
  533. package/dist/esm/ix-chip.entry.js +9 -28
  534. package/dist/esm/ix-col_4.entry.js +12 -12
  535. package/dist/esm/ix-content-header.entry.js +4 -4
  536. package/dist/esm/ix-content.entry.js +4 -4
  537. package/dist/esm/ix-css-grid-item.entry.js +1 -1
  538. package/dist/esm/ix-css-grid.entry.js +1 -1
  539. package/dist/esm/ix-custom-field.entry.js +2 -2
  540. package/dist/esm/ix-date-dropdown.entry.js +7 -7
  541. package/dist/esm/ix-date-input.entry.js +7 -7
  542. package/dist/esm/ix-date-picker.entry.js +9 -9
  543. package/dist/esm/ix-date-time-card.entry.js +3 -3
  544. package/dist/esm/ix-datetime-input.entry.js +7 -7
  545. package/dist/esm/ix-datetime-picker.entry.js +4 -4
  546. package/dist/esm/ix-divider.entry.js +1 -1
  547. package/dist/esm/ix-dropdown-button.entry.js +6 -6
  548. package/dist/esm/ix-dropdown-header.entry.js +2 -2
  549. package/dist/esm/ix-dropdown-quick-actions.entry.js +1 -1
  550. package/dist/esm/ix-dropdown_2.entry.js +7 -7
  551. package/dist/esm/ix-empty-state.entry.js +2 -2
  552. package/dist/esm/ix-event-list-item.entry.js +6 -6
  553. package/dist/esm/ix-event-list.entry.js +8 -5
  554. package/dist/esm/ix-expanding-search.entry.js +6 -6
  555. package/dist/esm/ix-field-label_2.entry.js +7 -7
  556. package/dist/esm/ix-filter-chip_2.entry.js +6 -6
  557. package/dist/esm/ix-flip-tile-content.entry.js +1 -1
  558. package/dist/esm/ix-flip-tile.entry.js +5 -5
  559. package/dist/esm/ix-group-context-menu_2.entry.js +3 -3
  560. package/dist/esm/ix-group.entry.js +9 -9
  561. package/dist/esm/ix-helper-text.entry.js +4 -4
  562. package/dist/esm/ix-icon-button_2.entry.js +5 -5
  563. package/dist/esm/ix-icon-toggle-button.entry.js +3 -3
  564. package/dist/esm/ix-input.entry.js +8 -8
  565. package/dist/esm/ix-key-value-list.entry.js +1 -1
  566. package/dist/esm/ix-key-value.entry.js +1 -1
  567. package/dist/esm/ix-kpi.entry.js +5 -5
  568. package/dist/esm/ix-layout-auto.entry.js +1 -1
  569. package/dist/esm/ix-link-button.entry.js +4 -4
  570. package/dist/esm/ix-menu-about-item.entry.js +1 -1
  571. package/dist/esm/ix-menu-about-news.entry.js +6 -6
  572. package/dist/esm/ix-menu-about.entry.js +4 -4
  573. package/dist/esm/ix-menu-avatar.entry.js +4 -4
  574. package/dist/esm/ix-menu-category.entry.js +12 -9
  575. package/dist/esm/ix-menu-expand-icon.entry.js +3 -3
  576. package/dist/esm/ix-menu-item.entry.js +5 -5
  577. package/dist/esm/ix-menu-settings-item.entry.js +1 -1
  578. package/dist/esm/ix-menu-settings.entry.js +4 -4
  579. package/dist/esm/ix-menu.entry.js +14 -14
  580. package/dist/esm/ix-message-bar.entry.js +3 -3
  581. package/dist/esm/ix-modal-content_2.entry.js +5 -5
  582. package/dist/esm/ix-modal-footer.entry.js +2 -2
  583. package/dist/esm/ix-modal-loading.entry.js +1 -1
  584. package/dist/esm/ix-modal.entry.js +3 -3
  585. package/dist/esm/ix-number-input.entry.js +9 -9
  586. package/dist/esm/ix-pagination.entry.js +4 -4
  587. package/dist/esm/ix-pane-layout.entry.js +2 -2
  588. package/dist/esm/ix-pane.entry.js +9 -9
  589. package/dist/esm/ix-pill_4.entry.js +20 -20
  590. package/dist/esm/ix-popover-content.entry.js +2 -2
  591. package/dist/esm/ix-popover-footer.entry.js +2 -2
  592. package/dist/esm/ix-popover-header.entry.js +3 -3
  593. package/dist/esm/ix-popover-image.entry.js +1 -1
  594. package/dist/esm/ix-popover.entry.js +1 -1
  595. package/dist/esm/ix-progress-indicator.entry.js +4 -4
  596. package/dist/esm/ix-push-card.entry.js +2 -2
  597. package/dist/esm/ix-radio-group.entry.js +3 -3
  598. package/dist/esm/ix-radio.entry.js +5 -5
  599. package/dist/esm/ix-range-field.entry.js +4 -4
  600. package/dist/esm/ix-select.entry.js +12 -12
  601. package/dist/esm/ix-slider.entry.js +8 -8
  602. package/dist/esm/ix-split-button.entry.js +3 -3
  603. package/dist/esm/ix-tab-panel.entry.js +2 -2
  604. package/dist/esm/ix-textarea.entry.js +5 -5
  605. package/dist/esm/ix-tile.entry.js +5 -5
  606. package/dist/esm/ix-time-input.entry.js +7 -7
  607. package/dist/esm/ix-toast-container.entry.js +3 -3
  608. package/dist/esm/ix-toast.entry.js +4 -4
  609. package/dist/esm/ix-toggle-button.entry.js +1 -1
  610. package/dist/esm/ix-toggle.entry.js +5 -5
  611. package/dist/esm/ix-tooltip.entry.js +1 -1
  612. package/dist/esm/ix-tree-item.entry.js +6 -6
  613. package/dist/esm/ix-tree.entry.js +1 -1
  614. package/dist/esm/ix-typography.entry.js +2 -2
  615. package/dist/esm/ix-upload.entry.js +5 -5
  616. package/dist/esm/ix-workflow-step.entry.js +5 -5
  617. package/dist/esm/ix-workflow-steps.entry.js +2 -2
  618. package/dist/esm/loader.js +1 -1
  619. package/dist/esm/siemens-ix.js +1 -1
  620. package/dist/esm/{validation-VVt5EFy0.js → validation-DXpftrw5.js} +59 -4
  621. package/dist/siemens-ix/index.esm.js +1 -1
  622. package/dist/siemens-ix/{p-71feb871.entry.js → p-0018f327.entry.js} +1 -1
  623. package/dist/siemens-ix/p-0329eb6e.entry.js +1 -0
  624. package/dist/siemens-ix/{p-c69036b1.entry.js → p-03745110.entry.js} +1 -1
  625. package/dist/siemens-ix/p-0555a6fb.entry.js +1 -0
  626. package/dist/siemens-ix/{p-71a31d92.entry.js → p-05c35730.entry.js} +1 -1
  627. package/dist/siemens-ix/p-0b10bb78.entry.js +1 -0
  628. package/dist/siemens-ix/p-0f2ac675.entry.js +1 -0
  629. package/dist/siemens-ix/{p-427f85c3.entry.js → p-12bce791.entry.js} +1 -1
  630. package/dist/siemens-ix/p-14554694.entry.js +1 -0
  631. package/dist/siemens-ix/p-1afa8fb3.entry.js +1 -0
  632. package/dist/siemens-ix/p-1bce1c19.entry.js +1 -0
  633. package/dist/siemens-ix/p-1d06e067.entry.js +1 -0
  634. package/dist/siemens-ix/{p-c0d56b86.entry.js → p-1fbb010f.entry.js} +1 -1
  635. package/dist/siemens-ix/p-1fddf959.entry.js +1 -0
  636. package/dist/siemens-ix/p-207d77b3.entry.js +1 -0
  637. package/dist/siemens-ix/{p-21b09017.entry.js → p-217dc62a.entry.js} +1 -1
  638. package/dist/siemens-ix/{p-2753ed4e.entry.js → p-222d3d93.entry.js} +1 -1
  639. package/dist/siemens-ix/p-2270cc5d.entry.js +1 -0
  640. package/dist/siemens-ix/p-29e8126a.entry.js +1 -0
  641. package/dist/siemens-ix/{p-ea9691c1.entry.js → p-2b0ffba0.entry.js} +1 -1
  642. package/dist/siemens-ix/p-2e780c86.entry.js +1 -0
  643. package/dist/siemens-ix/p-30008054.entry.js +1 -0
  644. package/dist/siemens-ix/p-34d5185d.entry.js +1 -0
  645. package/dist/siemens-ix/p-34f2792e.entry.js +1 -0
  646. package/dist/siemens-ix/{p-ac804eb2.entry.js → p-383e95ad.entry.js} +1 -1
  647. package/dist/siemens-ix/{p-e5e220c7.entry.js → p-38e0953a.entry.js} +1 -1
  648. package/dist/siemens-ix/p-39079ba7.entry.js +1 -0
  649. package/dist/siemens-ix/{p-ab202c45.entry.js → p-3c7a8e8b.entry.js} +1 -1
  650. package/dist/siemens-ix/p-3ca5d3b9.entry.js +1 -0
  651. package/dist/siemens-ix/{p-34eaf010.entry.js → p-4079292f.entry.js} +1 -1
  652. package/dist/siemens-ix/p-447d52de.entry.js +1 -0
  653. package/dist/siemens-ix/p-47e2c5a1.entry.js +1 -0
  654. package/dist/siemens-ix/{p-e3da7c67.entry.js → p-488b7074.entry.js} +1 -1
  655. package/dist/siemens-ix/p-49d8b129.entry.js +1 -0
  656. package/dist/siemens-ix/p-4ZsT_zIm.js +1 -0
  657. package/dist/siemens-ix/p-4b85292e.entry.js +1 -0
  658. package/dist/siemens-ix/p-4f02b8dd.entry.js +1 -0
  659. package/dist/siemens-ix/{p-d16ee3bd.entry.js → p-5014b469.entry.js} +1 -1
  660. package/dist/siemens-ix/p-55a57ce6.entry.js +1 -0
  661. package/dist/siemens-ix/{p-b534dadd.entry.js → p-55ae6204.entry.js} +1 -1
  662. package/dist/siemens-ix/p-55e8ad3b.entry.js +1 -0
  663. package/dist/siemens-ix/p-58c6aa27.entry.js +1 -0
  664. package/dist/siemens-ix/p-5f48d238.entry.js +1 -0
  665. package/dist/siemens-ix/p-64432fa0.entry.js +1 -0
  666. package/dist/siemens-ix/p-66097da1.entry.js +1 -0
  667. package/dist/siemens-ix/p-66e92cdd.entry.js +1 -0
  668. package/dist/siemens-ix/p-6c25b44d.entry.js +1 -0
  669. package/dist/siemens-ix/p-6ebf66b8.entry.js +1 -0
  670. package/dist/siemens-ix/{p-a2aa806e.entry.js → p-6ffe8ec7.entry.js} +1 -1
  671. package/dist/siemens-ix/{p-6aa5adb4.entry.js → p-7690a56d.entry.js} +1 -1
  672. package/dist/siemens-ix/p-7b9d9c0c.entry.js +1 -0
  673. package/dist/siemens-ix/{p-da2e0f0e.entry.js → p-7bc3af96.entry.js} +1 -1
  674. package/dist/siemens-ix/p-80d7a07a.entry.js +1 -0
  675. package/dist/siemens-ix/p-816bcf01.entry.js +1 -0
  676. package/dist/siemens-ix/p-836df58e.entry.js +1 -0
  677. package/dist/siemens-ix/p-86ad005e.entry.js +1 -0
  678. package/dist/siemens-ix/{p-d1cd3cb9.entry.js → p-884fd236.entry.js} +1 -1
  679. package/dist/siemens-ix/p-89f6329b.entry.js +1 -0
  680. package/dist/siemens-ix/p-8a14750f.entry.js +1 -0
  681. package/dist/siemens-ix/p-8c3e7613.entry.js +1 -0
  682. package/dist/siemens-ix/p-8df1362f.entry.js +1 -0
  683. package/dist/siemens-ix/p-9094212f.entry.js +1 -0
  684. package/{components/p-DkAUNod9.js → dist/siemens-ix/p-92804589.entry.js} +1 -1
  685. package/dist/siemens-ix/p-95625e2a.entry.js +1 -0
  686. package/dist/siemens-ix/p-99b97922.entry.js +1 -0
  687. package/dist/siemens-ix/p-99df3561.entry.js +1 -0
  688. package/dist/siemens-ix/p-BeX6RWvV.js +1 -0
  689. package/dist/siemens-ix/p-S-XikzrL.js +1 -0
  690. package/dist/siemens-ix/{p-57678563.entry.js → p-a1d79970.entry.js} +1 -1
  691. package/dist/siemens-ix/{p-bc0f5cbe.entry.js → p-a23edbb6.entry.js} +1 -1
  692. package/dist/siemens-ix/{p-f43c97cf.entry.js → p-a2a3d749.entry.js} +1 -1
  693. package/dist/siemens-ix/p-a7d695f5.entry.js +1 -0
  694. package/dist/siemens-ix/p-a87b0328.entry.js +1 -0
  695. package/dist/siemens-ix/{p-8f72a218.entry.js → p-a92495b8.entry.js} +1 -1
  696. package/dist/siemens-ix/{p-0e74e65c.entry.js → p-abe537f8.entry.js} +1 -1
  697. package/dist/siemens-ix/p-b299eca3.entry.js +1 -0
  698. package/dist/siemens-ix/{p-e9b37020.entry.js → p-b3eaf43d.entry.js} +1 -1
  699. package/dist/siemens-ix/p-b990c3f4.entry.js +1 -0
  700. package/dist/siemens-ix/p-baf74d39.entry.js +1 -0
  701. package/dist/siemens-ix/{p-4faa3c03.entry.js → p-bd2f7002.entry.js} +1 -1
  702. package/dist/siemens-ix/p-bf75d77b.entry.js +1 -0
  703. package/dist/siemens-ix/{p-b2fe56c7.entry.js → p-bf827cb3.entry.js} +1 -1
  704. package/dist/siemens-ix/p-c1b669ae.entry.js +1 -0
  705. package/dist/siemens-ix/{p-95e8951f.entry.js → p-c2d8ec4e.entry.js} +1 -1
  706. package/dist/siemens-ix/p-c3e44b4a.entry.js +1 -0
  707. package/dist/siemens-ix/p-c4379966.entry.js +1 -0
  708. package/dist/siemens-ix/{p-52096875.entry.js → p-c6346987.entry.js} +1 -1
  709. package/dist/siemens-ix/p-c6987c42.entry.js +1 -0
  710. package/dist/siemens-ix/{p-7655c4c2.entry.js → p-ca4259c9.entry.js} +1 -1
  711. package/dist/siemens-ix/{p-7899597f.entry.js → p-cb43f6e5.entry.js} +1 -1
  712. package/dist/siemens-ix/p-cc6305ab.entry.js +1 -0
  713. package/dist/siemens-ix/{p-5d7ede96.entry.js → p-ccea2ebf.entry.js} +1 -1
  714. package/dist/siemens-ix/p-cddc43e2.entry.js +1 -0
  715. package/dist/siemens-ix/{p-a44b1452.entry.js → p-cf56ddd5.entry.js} +1 -1
  716. package/dist/siemens-ix/{p-d45ff0a0.entry.js → p-cfd83faa.entry.js} +1 -1
  717. package/dist/siemens-ix/p-d0649c07.entry.js +1 -0
  718. package/dist/siemens-ix/p-d39c4aeb.entry.js +1 -0
  719. package/dist/siemens-ix/{p-d699bb26.entry.js → p-d555f28a.entry.js} +1 -1
  720. package/dist/siemens-ix/p-e4f04831.entry.js +1 -0
  721. package/dist/siemens-ix/p-e789cd7e.entry.js +1 -0
  722. package/dist/siemens-ix/p-e7dedba9.entry.js +1 -0
  723. package/dist/siemens-ix/{p-b7570885.entry.js → p-ea3b4ad4.entry.js} +1 -1
  724. package/dist/siemens-ix/p-eba11702.entry.js +1 -0
  725. package/dist/siemens-ix/p-eda419ea.entry.js +1 -0
  726. package/dist/siemens-ix/p-f3528209.entry.js +1 -0
  727. package/dist/siemens-ix/p-f3e24bb0.entry.js +1 -0
  728. package/dist/siemens-ix/{p-eac237a1.entry.js → p-f4575603.entry.js} +1 -1
  729. package/dist/siemens-ix/p-f705bb97.entry.js +1 -0
  730. package/dist/siemens-ix/p-fff1f8b1.entry.js +1 -0
  731. package/dist/siemens-ix/{p-C518yBiI.js → p-kmPsIcs5.js} +1 -1
  732. package/{components/p-CAH3dF6j.js → dist/siemens-ix/p-yUgQMMln.js} +1 -1
  733. package/dist/siemens-ix/siemens-ix.css +11 -11
  734. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  735. package/dist/types/components/badge/badge.d.ts +210 -0
  736. package/dist/types/components/badge/badge.status-icon.d.ts +21 -0
  737. package/dist/types/components/badge/badge.types.d.ts +19 -0
  738. package/dist/types/components/badge/badge.utils.d.ts +10 -0
  739. package/dist/types/components/badge/test/badge.page.d.ts +67 -0
  740. package/dist/types/components/card-list/card-list.d.ts +4 -1
  741. package/dist/types/components/chat/chat.d.ts +11 -0
  742. package/dist/types/components/chat-ai-message/chat-ai-message.d.ts +14 -0
  743. package/dist/types/components/chat-attachment/chat-attachment.d.ts +47 -0
  744. package/dist/types/components/chat-attachment/chat-attachment.types.d.ts +1 -0
  745. package/dist/types/components/chat-input/chat-input.d.ts +175 -0
  746. package/dist/types/components/chat-user-message/chat-user-message.d.ts +23 -0
  747. package/dist/types/components/chip/chip.d.ts +1 -1
  748. package/dist/types/components/menu-category/menu-category.d.ts +1 -1
  749. package/dist/types/components/utils/input/validation.d.ts +6 -0
  750. package/dist/types/components.d.ts +706 -5
  751. package/dist/types/public-api.d.ts +1 -0
  752. package/hydrate/index.js +2020 -430
  753. package/hydrate/index.mjs +2020 -430
  754. package/package.json +3 -3
  755. package/scss/mixins/_scrollbar.scss +21 -9
  756. package/components/p-3VG6z9c3.js +0 -1
  757. package/components/p-7HGOhDMX.js +0 -1
  758. package/components/p-BH2Yhp3V.js +0 -1
  759. package/components/p-BIcWFids.js +0 -1
  760. package/components/p-BWH03B1n.js +0 -1
  761. package/components/p-BWknDysp.js +0 -1
  762. package/components/p-B_MBGj0b.js +0 -1
  763. package/components/p-BtSt9tC5.js +0 -1
  764. package/components/p-BzFLbXmT.js +0 -1
  765. package/components/p-C7MRPZvZ.js +0 -1
  766. package/components/p-CHV-_J6i.js +0 -1
  767. package/components/p-Ca8JFa1v.js +0 -1
  768. package/components/p-CgHioxG-.js +0 -1
  769. package/components/p-CkIELF-1.js +0 -1
  770. package/components/p-D1sONqtj.js +0 -1
  771. package/components/p-D69Mojvn.js +0 -1
  772. package/components/p-DKH7tPDu.js +0 -1
  773. package/components/p-DLe8Pp58.js +0 -1
  774. package/components/p-DM7ma3Eh.js +0 -1
  775. package/components/p-DO3HtUke.js +0 -1
  776. package/components/p-DfdjJL6W.js +0 -1
  777. package/components/p-DjIyhGBC.js +0 -1
  778. package/components/p-DuMiVxY1.js +0 -1
  779. package/components/p-Dwe6tWhq.js +0 -1
  780. package/components/p-DwmHytZi.js +0 -1
  781. package/components/p-DziPiOL3.js +0 -1
  782. package/components/p-GmOVROeD.js +0 -1
  783. package/components/p-LbnItC1h.js +0 -1
  784. package/components/p-R1AQtGdV.js +0 -1
  785. package/components/p-_f_q2Etu.js +0 -1
  786. package/components/p-f1jZqaUz.js +0 -1
  787. package/components/p-olkZUb1j.js +0 -1
  788. package/components/p-z19mjzlp.js +0 -1
  789. package/dist/siemens-ix/p-03215d55.entry.js +0 -1
  790. package/dist/siemens-ix/p-04a42013.entry.js +0 -1
  791. package/dist/siemens-ix/p-0b24f8d0.entry.js +0 -1
  792. package/dist/siemens-ix/p-0fd5baf1.entry.js +0 -1
  793. package/dist/siemens-ix/p-18cae4df.entry.js +0 -1
  794. package/dist/siemens-ix/p-1a6b7e92.entry.js +0 -1
  795. package/dist/siemens-ix/p-1cd9a45a.entry.js +0 -1
  796. package/dist/siemens-ix/p-1ea183fb.entry.js +0 -1
  797. package/dist/siemens-ix/p-227ba1b8.entry.js +0 -1
  798. package/dist/siemens-ix/p-2eb094c0.entry.js +0 -1
  799. package/dist/siemens-ix/p-39fb1c9e.entry.js +0 -1
  800. package/dist/siemens-ix/p-3bb5600a.entry.js +0 -1
  801. package/dist/siemens-ix/p-3bfa4bbc.entry.js +0 -1
  802. package/dist/siemens-ix/p-3f5ac9f7.entry.js +0 -1
  803. package/dist/siemens-ix/p-4154d18a.entry.js +0 -1
  804. package/dist/siemens-ix/p-45106215.entry.js +0 -1
  805. package/dist/siemens-ix/p-4ceb3543.entry.js +0 -1
  806. package/dist/siemens-ix/p-4d179abe.entry.js +0 -1
  807. package/dist/siemens-ix/p-50a44cb9.entry.js +0 -1
  808. package/dist/siemens-ix/p-54a22a58.entry.js +0 -1
  809. package/dist/siemens-ix/p-5ff289c7.entry.js +0 -1
  810. package/dist/siemens-ix/p-601224bd.entry.js +0 -1
  811. package/dist/siemens-ix/p-703c7e7c.entry.js +0 -1
  812. package/dist/siemens-ix/p-71a5fae5.entry.js +0 -1
  813. package/dist/siemens-ix/p-747d14a2.entry.js +0 -1
  814. package/dist/siemens-ix/p-7c120d09.entry.js +0 -1
  815. package/dist/siemens-ix/p-8164a98b.entry.js +0 -1
  816. package/dist/siemens-ix/p-83f4cd88.entry.js +0 -1
  817. package/dist/siemens-ix/p-8658717f.entry.js +0 -1
  818. package/dist/siemens-ix/p-8900e229.entry.js +0 -1
  819. package/dist/siemens-ix/p-8b839f30.entry.js +0 -1
  820. package/dist/siemens-ix/p-8cea823b.entry.js +0 -1
  821. package/dist/siemens-ix/p-8d535dc9.entry.js +0 -1
  822. package/dist/siemens-ix/p-96a3b3df.entry.js +0 -1
  823. package/dist/siemens-ix/p-9f2905df.entry.js +0 -1
  824. package/dist/siemens-ix/p-DgUGsIlh.js +0 -1
  825. package/dist/siemens-ix/p-a25f267b.entry.js +0 -1
  826. package/dist/siemens-ix/p-a7f5e11e.entry.js +0 -1
  827. package/dist/siemens-ix/p-a8911648.entry.js +0 -1
  828. package/dist/siemens-ix/p-aa904521.entry.js +0 -1
  829. package/dist/siemens-ix/p-af808244.entry.js +0 -1
  830. package/dist/siemens-ix/p-b004e845.entry.js +0 -1
  831. package/dist/siemens-ix/p-b63d7f36.entry.js +0 -1
  832. package/dist/siemens-ix/p-bddd1cca.entry.js +0 -1
  833. package/dist/siemens-ix/p-bfb758cb.entry.js +0 -1
  834. package/dist/siemens-ix/p-c0c6d772.entry.js +0 -1
  835. package/dist/siemens-ix/p-c1c209f6.entry.js +0 -1
  836. package/dist/siemens-ix/p-c9718f0d.entry.js +0 -1
  837. package/dist/siemens-ix/p-cd42c4e6.entry.js +0 -1
  838. package/dist/siemens-ix/p-d02d2e49.entry.js +0 -1
  839. package/dist/siemens-ix/p-d13c0b78.entry.js +0 -1
  840. package/dist/siemens-ix/p-d5761950.entry.js +0 -1
  841. package/dist/siemens-ix/p-d770d8ba.entry.js +0 -1
  842. package/dist/siemens-ix/p-daf43138.entry.js +0 -1
  843. package/dist/siemens-ix/p-dc16a32d.entry.js +0 -1
  844. package/dist/siemens-ix/p-ddcc8627.entry.js +0 -1
  845. package/dist/siemens-ix/p-e58ae892.entry.js +0 -1
  846. package/dist/siemens-ix/p-e6046255.entry.js +0 -1
  847. package/dist/siemens-ix/p-eff190ad.entry.js +0 -1
  848. package/dist/siemens-ix/p-f1cd82bd.entry.js +0 -1
  849. package/dist/siemens-ix/p-f507157f.entry.js +0 -1
  850. package/dist/siemens-ix/p-fa5c236f.entry.js +0 -1
  851. package/dist/siemens-ix/p-fbd006be.entry.js +0 -1
  852. package/dist/siemens-ix/p-fdec73d4.entry.js +0 -1
  853. package/dist/siemens-ix/p-yZFaEeBW.js +0 -1
@@ -0,0 +1,35 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-DnclGKUw.js');
4
+
5
+ const chatAiMessageCss = () => `:host{display:flex;flex-direction:column;align-items:flex-start;width:100%;min-width:0;gap:var(--theme-space-3);box-sizing:border-box;color:var(--theme-color-std-text)}:host *,:host *::after,:host *::before{box-sizing:border-box}:host *::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host *{}:host *::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host *{}:host *::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host *::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host *{}:host *::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host *{}:host *::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host *::-webkit-scrollbar-corner{display:none}:host .message{display:flex;flex-direction:column;align-items:stretch;width:100%;min-width:0;gap:var(--theme-space-3);font-size:var(--theme-font-size-l);line-height:1.5;overflow-wrap:anywhere}:host .message ::slotted(*){margin:0;color:inherit;overflow-wrap:anywhere}:host .message ::slotted(h1),:host .message ::slotted(h2),:host .message ::slotted(h3),:host .message ::slotted(h4),:host .message ::slotted(h5),:host .message ::slotted(h6){font-size:var(--theme-font-size-l);font-weight:var(--theme-font-weight-bold);line-height:1.2}:host .meta{display:none;align-items:center;gap:var(--theme-space-3);width:100%;min-height:2rem}:host .actions{display:none;align-items:center;gap:0.25rem}:host .sources{display:none;align-items:center}:host .actions ::slotted(ix-icon-button),:host .sources ::slotted(*){flex:0 0 auto}:host(.has-meta) .meta{display:flex}:host(.has-actions) .actions{display:flex}:host(.has-sources) .sources{display:flex}`;
6
+
7
+ const ChatAiMessage = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ }
11
+ hasActions = false;
12
+ hasSources = false;
13
+ hasAssignedContent(slot) {
14
+ return slot.assignedNodes({ flatten: true }).some((node) => {
15
+ return node.nodeType === 1 || !!node.textContent?.trim();
16
+ });
17
+ }
18
+ handleActionsSlotChange(event) {
19
+ this.hasActions = this.hasAssignedContent(event.target);
20
+ }
21
+ handleSourcesSlotChange(event) {
22
+ this.hasSources = this.hasAssignedContent(event.target);
23
+ }
24
+ render() {
25
+ const hasMeta = this.hasActions || this.hasSources;
26
+ return (index.h(index.Host, { key: '7551fd7bf696992eff30a21efd2c6a1ad6934f05', class: {
27
+ 'has-actions': this.hasActions,
28
+ 'has-sources': this.hasSources,
29
+ 'has-meta': hasMeta,
30
+ } }, index.h("div", { key: '4ae0ca33bb6f1575d802f081436f9b64cc84a860', class: "message" }, index.h("slot", { key: 'f9a97d3043c533da53c0a09335a0660ff2fc11ba' })), index.h("div", { key: '3ea7b4f8a3002c1b70ab6fc3f0038fd3d099a0cc', class: "meta", "aria-hidden": !hasMeta ? 'true' : undefined }, index.h("div", { key: 'dc13ff30a44ddbde25a9b984ecf534bd99c5f959', class: "actions" }, index.h("slot", { key: 'e0c8db109a43c9431c9684105b0576a1513f22ce', name: "actions", onSlotchange: (event) => this.handleActionsSlotChange(event) })), index.h("div", { key: '748966a8345e8dbdf9e4d8c3302577660ba6ec1b', class: "sources" }, index.h("slot", { key: '0457bbd2d685b6c0fd59251172a8e2fcef82daef', name: "sources", onSlotchange: (event) => this.handleSourcesSlotChange(event) })))));
31
+ }
32
+ };
33
+ ChatAiMessage.style = chatAiMessageCss();
34
+
35
+ exports.ix_chat_ai_message = ChatAiMessage;
@@ -0,0 +1,110 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-DnclGKUw.js');
4
+ var index$1 = require('./index-BQht1mLe.js');
5
+
6
+ const chatAttachmentCss = () => `:host{display:inline-block}:host *,:host *::after,:host *::before{box-sizing:border-box}:host *::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host *{}:host *::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host *{}:host *::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host *::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host *{}:host *::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host *{}:host *::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host *::-webkit-scrollbar-corner{display:none}:host .attachment-chip{display:block;width:100%;max-width:20rem}:host .content,:host .status-content{display:inline-flex;align-items:center;min-width:0}:host .content{flex:1 1 auto;max-width:100%;width:100%}:host .status-content{gap:var(--theme-space-1)}:host .status-content ix-spinner{scale:1.7;margin-left:0.1875rem}:host .file-name{display:inline-flex;flex:1 1 auto;min-width:0;max-width:100%;overflow:hidden}:host .file-name__base{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:end}:host .file-name__extension{flex:0 0 auto;white-space:nowrap}:host .status-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host ix-icon{flex:0 0 auto}:host ix-spinner{flex:0 0 auto}:host(.preview-supported){cursor:pointer}:host(.has-remove-button){gap:var(--theme-space-0)}`;
7
+
8
+ const ChatAttachment = class {
9
+ constructor(hostRef) {
10
+ index.registerInstance(this, hostRef);
11
+ this.attachmentClick = index.createEvent(this, "attachmentClick", 7);
12
+ this.removeClick = index.createEvent(this, "removeClick", 7);
13
+ }
14
+ /**
15
+ * Name of the attached file.
16
+ */
17
+ fileName = '';
18
+ /**
19
+ * Upload status of the attachment.
20
+ */
21
+ status = 'default';
22
+ /**
23
+ * Icon displayed before the file name.
24
+ */
25
+ icon = index$1.iconTxtDocument;
26
+ /**
27
+ * Hide the remove action.
28
+ */
29
+ hideRemoveButton = false;
30
+ /**
31
+ * Enable preview interaction for default attachments.
32
+ */
33
+ previewSupported = false;
34
+ /**
35
+ * Accessible label for the remove action.
36
+ */
37
+ removeAriaLabel = 'Remove attachment';
38
+ /**
39
+ * Event emitted when the attachment is clicked.
40
+ */
41
+ attachmentClick;
42
+ /**
43
+ * Event emitted when the remove action is clicked.
44
+ */
45
+ removeClick;
46
+ canPreview() {
47
+ return this.previewSupported && this.status === 'default';
48
+ }
49
+ splitFileName() {
50
+ const fileName = this.fileName.trim();
51
+ const extensionStart = fileName.lastIndexOf('.');
52
+ if (extensionStart <= 0 || extensionStart === fileName.length - 1) {
53
+ return { name: fileName, extension: '' };
54
+ }
55
+ return {
56
+ name: fileName.slice(0, extensionStart),
57
+ extension: fileName.slice(extensionStart),
58
+ };
59
+ }
60
+ renderFileName() {
61
+ const { name, extension } = this.splitFileName();
62
+ return (index.h("span", { class: "file-name", title: this.fileName }, index.h("span", { class: "file-name__base" }, name || this.fileName), !!extension && index.h("span", { class: "file-name__extension" }, extension)));
63
+ }
64
+ getChipVariant() {
65
+ if (this.status === 'failed') {
66
+ return 'alarm';
67
+ }
68
+ return 'neutral';
69
+ }
70
+ renderChipContent() {
71
+ if (this.status === 'loading') {
72
+ return (index.h("span", { class: "status-content" }, index.h("ix-spinner", { size: "xx-small", variant: "primary" }), index.h("span", { class: "status-label" }, this.fileName)));
73
+ }
74
+ if (this.status === 'failed') {
75
+ return index.h("span", { class: "status-label" }, this.fileName);
76
+ }
77
+ return this.renderFileName();
78
+ }
79
+ handleAttachmentClick() {
80
+ if (this.canPreview()) {
81
+ this.attachmentClick.emit();
82
+ }
83
+ }
84
+ getIcon() {
85
+ if (this.status === 'default') {
86
+ return this.icon;
87
+ }
88
+ if (this.status === 'loading') {
89
+ return undefined;
90
+ }
91
+ if (this.status === 'failed') {
92
+ return index$1.iconError;
93
+ }
94
+ return this.icon;
95
+ }
96
+ render() {
97
+ const isFailed = this.status === 'failed';
98
+ const isLoading = this.status === 'loading';
99
+ const canPreview = this.canPreview();
100
+ return (index.h(index.Host, { key: '6d228e12a51a06711a97f216a854432e44340590', class: {
101
+ failed: isFailed,
102
+ loading: isLoading,
103
+ 'preview-supported': canPreview,
104
+ 'has-remove-button': !this.hideRemoveButton,
105
+ } }, index.h("ix-chip", { key: 'a3369a7981eb355f606162efc1a01c290f49076c', "aria-label": canPreview ? this.fileName : undefined, ariaLabelCloseButton: this.removeAriaLabel, class: "attachment-chip", closable: !this.hideRemoveButton, icon: this.getIcon(), variant: this.getChipVariant(), outline: true, onClick: () => this.handleAttachmentClick(), onCloseChip: () => this.removeClick.emit(), inactive: !canPreview }, index.h("span", { key: '51b3a72b579776c09587b1bd430aceb146e04e49', class: "content" }, this.renderChipContent()))));
106
+ }
107
+ };
108
+ ChatAttachment.style = chatAttachmentCss();
109
+
110
+ exports.ix_chat_attachment = ChatAttachment;
@@ -0,0 +1,406 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-DnclGKUw.js');
4
+ var index$1 = require('./index-BQht1mLe.js');
5
+ var component = require('./component-DgA9FH-W.js');
6
+ var id_mixin = require('./id.mixin-DINDQztK.js');
7
+ var makeRef = require('./make-ref-CHsa3FY7.js');
8
+ var mutationObserver = require('./mutation-observer-DE0YMfYu.js');
9
+ var requestAnimationFrame = require('./requestAnimationFrame-B0rWQ3G-.js');
10
+ require('./focus-utilities-5SZMxJg4.js');
11
+ require('./shadow-dom-BL5F7RFW.js');
12
+
13
+ const chatInputCss = () => `:host{display:block;width:100%}:host *,:host *::after,:host *::before{box-sizing:border-box}:host *::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host *{}:host *::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host *{}:host *::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host *::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host *{}:host *::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host *{}:host *::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host *::-webkit-scrollbar-corner{display:none}:host .chat-input{display:flex;flex-direction:column;width:100%;min-height:8rem;padding:var(--theme-space-2);box-sizing:border-box;background-color:var(--theme-input--background);border:var(--theme-input--border-thickness) solid var(--theme-input--border-color);border-radius:var(--theme-input--border-radius);box-shadow:var(--theme-input--box-shadow);color:var(--theme-input--color)}:host .follow-up-prompts{display:none;flex-wrap:wrap;align-items:flex-start;gap:var(--theme-space-1);width:100%;margin-bottom:var(--theme-space-1)}:host .follow-up-prompts ::slotted(*){flex:0 1 auto}:host .follow-up-prompts ::slotted(ix-button){max-width:25rem;min-width:5rem}:host .follow-up-prompts ::slotted(ix-icon-button){flex:0 0 auto}:host .chat-input:hover{border-color:var(--theme-input--border-color--hover);background-color:var(--theme-input--background--hover)}:host .chat-input:focus-within{outline:1px solid var(--theme-color-focus-bdr);outline-offset:var(--theme-input--focus--outline-offset);border-color:var(--theme-input--border-color--focus)}:host .attachments{display:none;box-sizing:border-box;width:100%;max-width:100%;gap:var(--theme-space-2);margin-bottom:var(--theme-space-2)}:host .attachments.has-attachments{display:flex}:host .attachments--wrap{flex-wrap:wrap;max-height:calc(4rem + var(--theme-space-2));overflow:hidden}:host .attachments--scroll{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden}:host .attachments--scroll *::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host .attachments--scroll *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host .attachments--scroll *{}:host .attachments--scroll *::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host .attachments--scroll *{}:host .attachments--scroll *::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host .attachments--scroll *::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host .attachments--scroll *{}:host .attachments--scroll *::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host .attachments--scroll *{}:host .attachments--scroll *::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host .attachments--scroll *::-webkit-scrollbar-corner{display:none}:host .attachments--scroll::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host .attachments--scroll{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host .attachments--scroll{}:host .attachments--scroll::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host .attachments--scroll{}:host .attachments--scroll::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host .attachments--scroll::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host .attachments--scroll{}:host .attachments--scroll::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host .attachments--scroll{}:host .attachments--scroll::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host .attachments--scroll::-webkit-scrollbar-corner{display:none}:host .attachments.has-attachment-scrollbar{padding-bottom:0.25rem}:host .attachments ::slotted(ix-chat-attachment){flex:0 1 auto}:host .attachments--scroll ::slotted(ix-chat-attachment){flex:0 0 auto}:host textarea{flex:1 1 auto;width:100%;min-height:2rem;padding:0;border:0;outline:0;box-sizing:border-box;resize:none;background:transparent;color:inherit;font:inherit}:host textarea::-moz-placeholder{color:var(--theme-input-hint--color)}:host textarea::placeholder{color:var(--theme-input-hint--color)}:host .character-limit{display:flex;align-items:center;gap:var(--theme-space-1);width:100%;margin-top:var(--theme-space-2)}:host .character-limit ix-icon{flex:0 0 auto}:host .character-limit--soft ix-icon{color:var(--theme-color-info)}:host .character-limit--hard ix-icon{color:var(--theme-color-warning)}:host .action-row{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:2rem;margin-top:var(--theme-space-1)}:host .left-actions,:host .right-actions{display:flex;align-items:center;gap:var(--theme-space-1)}:host .left-actions{flex:1 1 auto;min-width:0}:host .right-actions{flex:0 0 auto;justify-content:flex-end}:host .disclaimer{display:block;width:100%;margin-top:var(--theme-space-1);text-align:center}:host(.has-follow-up) .follow-up-prompts{display:flex}:host(.disabled){pointer-events:none}:host(.disabled) .chat-input{border-color:var(--theme-input--border-color--disabled);box-shadow:none;color:var(--theme-input--color--disabled);background-color:transparent}:host(.disabled) textarea::-moz-placeholder{color:transparent}:host(.disabled) textarea::placeholder{color:transparent}:host(.readonly) .chat-input{border-color:var(--theme-input--border-color--readonly);box-shadow:none;background-color:transparent}:host(.readonly) .chat-input:hover,:host(.readonly) .chat-input:focus-within{border-color:var(--theme-input--border-color--readonly);outline:none}`;
14
+
15
+ const ChatInput = class extends index.Mixin(...component.DefaultMixins, id_mixin.ComponentIdMixin) {
16
+ constructor(hostRef) {
17
+ super();
18
+ index.registerInstance(this, hostRef);
19
+ this.valueChange = index.createEvent(this, "valueChange", 7);
20
+ this.ixBlur = index.createEvent(this, "ixBlur", 7);
21
+ this.ixChange = index.createEvent(this, "ixChange", 7);
22
+ this.promptSubmit = index.createEvent(this, "promptSubmit", 7);
23
+ if (hostRef.$hostElement$["s-ei"]) {
24
+ this.formInternals = hostRef.$hostElement$["s-ei"];
25
+ }
26
+ else {
27
+ this.formInternals = hostRef.$hostElement$.attachInternals();
28
+ hostRef.$hostElement$["s-ei"] = this.formInternals;
29
+ }
30
+ }
31
+ get hostElement() { return index.getElement(this); }
32
+ formInternals;
33
+ /**
34
+ * The state of the chat input, which can be either 'input' or 'processing'.
35
+ */
36
+ state = 'input';
37
+ /**
38
+ * The name of the chat input.
39
+ */
40
+ name;
41
+ /**
42
+ * The placeholder text for the chat input.
43
+ */
44
+ placeholder = 'Enter a command, question or topic...';
45
+ /**
46
+ * The value of the chat input.
47
+ */
48
+ value = '';
49
+ /**
50
+ * Specifies whether the chat input is disabled.
51
+ */
52
+ disabled = false;
53
+ /**
54
+ * Specifies whether the chat input is readonly.
55
+ */
56
+ readonly = false;
57
+ /**
58
+ * Accessible label for the native textarea.
59
+ */
60
+ textareaLabel = 'Chat input';
61
+ /**
62
+ * The maximum length of the chat input.
63
+ */
64
+ maxLength;
65
+ /**
66
+ * Character limit used for the optional inline character limit message.
67
+ * Falls back to `maxLength` when not set.
68
+ */
69
+ characterLimit;
70
+ /**
71
+ * i18n label for the hard character limit message.
72
+ * Use `{current}` and `{limit}` placeholders to place the values in any order.
73
+ */
74
+ // eslint-disable-next-line @stencil-community/decorators-style
75
+ i18nCharacterLimitReached = 'Character limit reached ({current} / {limit} characters)';
76
+ /**
77
+ * i18n label for the soft character limit warning.
78
+ * Use `{current}` and `{limit}` placeholders to place the values in any order.
79
+ */
80
+ // eslint-disable-next-line @stencil-community/decorators-style
81
+ i18nCharacterLimitWarning = "You're nearing the limit ({current} / {limit} characters)";
82
+ /**
83
+ * Percentage of the character limit that triggers the soft warning. Define a number between 0 and 1 (e.g. 0.8 for 80%).
84
+ */
85
+ characterLimitWarningThreshold = 0.9;
86
+ /**
87
+ * Minimum number of visible text rows.
88
+ */
89
+ minRows = 1;
90
+ /**
91
+ * Maximum number of visible text rows before the input becomes scrollable.
92
+ */
93
+ maxRows = 6;
94
+ /**
95
+ * If true, pressing Enter inserts a line break instead of submitting the prompt.
96
+ */
97
+ insertLineBreakOnEnter = false;
98
+ /**
99
+ * Disclaimer text displayed below the chat input.
100
+ */
101
+ disclaimer = 'This content is AI-generated. Always verify the information for accuracy.';
102
+ /**
103
+ * Event emitted when the value of the chat input changes.
104
+ */
105
+ valueChange;
106
+ /**
107
+ * Event emitted when the chat input loses focus.
108
+ */
109
+ ixBlur;
110
+ /**
111
+ * Event emitted when the chat input loses focus and the value has changed.
112
+ */
113
+ ixChange;
114
+ /**
115
+ * Event emitted when the prompt is submitted by the send button or Enter key.
116
+ */
117
+ promptSubmit;
118
+ /** @internal */
119
+ initialValue;
120
+ hasAttachments = false;
121
+ hasAttachmentScrollbar = false;
122
+ hasFollowUp = false;
123
+ attachmentsRef = makeRef.makeRef((attachments) => {
124
+ this.initAttachmentResizeObserver(attachments);
125
+ this.scheduleAttachmentScrollbarUpdate();
126
+ });
127
+ textareaRef = makeRef.makeRef((textarea) => {
128
+ this.updateTextareaHeight(textarea);
129
+ });
130
+ attachmentResizeObserver;
131
+ attachmentMutationObserver;
132
+ isAttachmentScrollbarUpdateQueued = false;
133
+ componentWillLoad() {
134
+ super.componentWillLoad();
135
+ this.updateFormInternalValue(this.value);
136
+ this.initialValue = this.value;
137
+ this.updateHasFollowUp();
138
+ }
139
+ componentDidLoad() {
140
+ super.componentDidLoad();
141
+ this.updateHasFollowUp();
142
+ this.initAttachmentMutationObserver();
143
+ this.scheduleAttachmentScrollbarUpdate();
144
+ this.updateTextareaHeight();
145
+ }
146
+ componentDidRender() {
147
+ super.componentDidRender();
148
+ this.scheduleAttachmentScrollbarUpdate();
149
+ this.updateTextareaHeight();
150
+ }
151
+ disconnectedCallback() {
152
+ super.disconnectedCallback();
153
+ this.attachmentResizeObserver?.disconnect();
154
+ this.attachmentMutationObserver?.disconnect();
155
+ }
156
+ onValueChange(value) {
157
+ this.formInternals.setFormValue(value);
158
+ this.updateTextareaHeight();
159
+ }
160
+ onRowsChange() {
161
+ this.updateTextareaHeight();
162
+ }
163
+ updateFormInternalValue(value) {
164
+ this.formInternals.setFormValue(value);
165
+ this.value = value;
166
+ }
167
+ /** @internal */
168
+ async getAssociatedFormElement() {
169
+ return this.formInternals.form;
170
+ }
171
+ /**
172
+ * Returns the native textarea element used by the chat input.
173
+ * @since 5.1.0
174
+ */
175
+ async getNativeInputElement() {
176
+ return this.textareaRef.waitForCurrent();
177
+ }
178
+ /**
179
+ * Focuses the chat input.
180
+ * @since 5.1.0
181
+ */
182
+ async focusInput() {
183
+ return (await this.getNativeInputElement()).focus();
184
+ }
185
+ canSubmit() {
186
+ return !this.disabled && !this.readonly && this.value.trim().length > 0;
187
+ }
188
+ emitIxChangeIfNeeded() {
189
+ if (this.initialValue !== this.value) {
190
+ this.ixChange.emit(this.value);
191
+ this.initialValue = this.value;
192
+ }
193
+ }
194
+ submitPrompt() {
195
+ if (!this.canSubmit()) {
196
+ return;
197
+ }
198
+ this.emitIxChangeIfNeeded();
199
+ this.promptSubmit.emit(this.value);
200
+ }
201
+ updateTextareaHeight(textarea = this.textareaRef.current) {
202
+ if (!textarea) {
203
+ return;
204
+ }
205
+ const computedStyle = getComputedStyle(textarea);
206
+ const lineHeight = Number.parseFloat(computedStyle.lineHeight) || 24;
207
+ const minRows = Math.max(this.minRows, 1);
208
+ const maxRows = Math.max(this.maxRows, minRows);
209
+ const borderHeight = textarea.offsetHeight - textarea.clientHeight ||
210
+ Number.parseFloat(computedStyle.borderTopWidth) +
211
+ Number.parseFloat(computedStyle.borderBottomWidth);
212
+ const minHeight = lineHeight * minRows + borderHeight;
213
+ const maxHeight = lineHeight * maxRows + borderHeight;
214
+ textarea.style.height = 'auto';
215
+ textarea.style.minHeight = `${minHeight}px`;
216
+ const nextHeight = Math.min(Math.max(textarea.scrollHeight + borderHeight, minHeight), maxHeight);
217
+ textarea.style.height = `${nextHeight}px`;
218
+ textarea.style.overflowY =
219
+ textarea.scrollHeight + borderHeight > maxHeight ? 'auto' : 'hidden';
220
+ }
221
+ getCharacterLimit() {
222
+ const limit = this.characterLimit ?? this.maxLength;
223
+ return typeof limit === 'number' && Number.isFinite(limit) && limit > 0
224
+ ? limit
225
+ : undefined;
226
+ }
227
+ getNormalizedCharacterLimitWarningThreshold() {
228
+ if (!Number.isFinite(this.characterLimitWarningThreshold)) {
229
+ return 0.9;
230
+ }
231
+ return Math.min(Math.max(this.characterLimitWarningThreshold, 0), 1);
232
+ }
233
+ isSoftCharacterLimitWarning() {
234
+ const limit = this.getCharacterLimit();
235
+ if (!limit || this.isCharacterLimitReached()) {
236
+ return false;
237
+ }
238
+ const warningLength = Math.ceil(limit * this.getNormalizedCharacterLimitWarningThreshold());
239
+ return this.value.length >= warningLength;
240
+ }
241
+ isCharacterLimitReached() {
242
+ const limit = this.getCharacterLimit();
243
+ if (!limit) {
244
+ return false;
245
+ }
246
+ return this.value.length >= limit;
247
+ }
248
+ getCharacterLimitMessage() {
249
+ const limit = this.getCharacterLimit();
250
+ const current = this.value.length;
251
+ if (!limit) {
252
+ return undefined;
253
+ }
254
+ if (this.isCharacterLimitReached()) {
255
+ return this.formatCharacterLimitMessage(this.i18nCharacterLimitReached, current, limit);
256
+ }
257
+ if (this.isSoftCharacterLimitWarning()) {
258
+ return this.formatCharacterLimitMessage(this.i18nCharacterLimitWarning, current, limit);
259
+ }
260
+ return undefined;
261
+ }
262
+ formatCharacterLimitMessage(template, current, limit) {
263
+ return template
264
+ .split('{current}')
265
+ .join(String(current))
266
+ .split('{limit}')
267
+ .join(String(limit));
268
+ }
269
+ getCharacterLimitState() {
270
+ if (this.isCharacterLimitReached()) {
271
+ return 'hard';
272
+ }
273
+ if (this.isSoftCharacterLimitWarning()) {
274
+ return 'soft';
275
+ }
276
+ return undefined;
277
+ }
278
+ handleKeyDown(event) {
279
+ if (event.key !== 'Enter' ||
280
+ event.shiftKey ||
281
+ event.altKey ||
282
+ event.ctrlKey ||
283
+ event.metaKey ||
284
+ this.insertLineBreakOnEnter ||
285
+ this.state === 'processing') {
286
+ return;
287
+ }
288
+ event.preventDefault();
289
+ this.submitPrompt();
290
+ }
291
+ renderCharacterLimit() {
292
+ const message = this.getCharacterLimitMessage();
293
+ const state = this.getCharacterLimitState();
294
+ if (!message || !state) {
295
+ return null;
296
+ }
297
+ return (index.h("ix-typography", { class: {
298
+ 'character-limit': true,
299
+ 'character-limit--soft': state === 'soft',
300
+ 'character-limit--hard': state === 'hard',
301
+ }, textColor: 'std' }, index.h("ix-icon", { "aria-hidden": "true", name: state === 'hard' ? index$1.iconWarning : index$1.iconInfo, size: "16" }), message));
302
+ }
303
+ handleAttachmentsSlotChange(event) {
304
+ const slot = event.target;
305
+ this.hasAttachments =
306
+ slot.assignedElements({
307
+ flatten: true,
308
+ }).length > 0;
309
+ this.scheduleAttachmentScrollbarUpdate();
310
+ }
311
+ handleFollowUpSlotChange(event) {
312
+ this.hasFollowUp = this.hasAssignedContent(event.target);
313
+ }
314
+ hasAssignedContent(slot) {
315
+ return slot.assignedNodes({ flatten: true }).some((node) => {
316
+ return node.nodeType === 1 || !!node.textContent?.trim();
317
+ });
318
+ }
319
+ updateHasFollowUp() {
320
+ this.hasFollowUp =
321
+ this.hostElement.querySelectorAll('[slot="follow-up"]').length > 0;
322
+ }
323
+ initAttachmentResizeObserver(attachments) {
324
+ this.attachmentResizeObserver?.disconnect();
325
+ this.attachmentResizeObserver = new ResizeObserver(() => this.scheduleAttachmentScrollbarUpdate());
326
+ this.attachmentResizeObserver.observe(attachments);
327
+ }
328
+ initAttachmentMutationObserver() {
329
+ this.attachmentMutationObserver = mutationObserver.createMutationObserver(() => {
330
+ this.updateHasFollowUp();
331
+ this.scheduleAttachmentScrollbarUpdate();
332
+ });
333
+ this.attachmentMutationObserver.observe(this.hostElement, {
334
+ attributes: true,
335
+ childList: true,
336
+ subtree: true,
337
+ });
338
+ }
339
+ scheduleAttachmentScrollbarUpdate() {
340
+ if (this.isAttachmentScrollbarUpdateQueued) {
341
+ return;
342
+ }
343
+ this.isAttachmentScrollbarUpdateQueued = true;
344
+ requestAnimationFrame.requestAnimationFrameNoNgZone(() => {
345
+ this.isAttachmentScrollbarUpdateQueued = false;
346
+ this.updateAttachmentScrollbar();
347
+ });
348
+ }
349
+ updateAttachmentScrollbar() {
350
+ const attachments = this.attachmentsRef.current;
351
+ if (!attachments) {
352
+ return;
353
+ }
354
+ const computedStyle = getComputedStyle(attachments);
355
+ const hasHorizontalScrollbar = ['auto', 'scroll'].includes(computedStyle.overflowX) &&
356
+ attachments.scrollWidth - attachments.clientWidth > 1;
357
+ const hasVerticalScrollbar = ['auto', 'scroll'].includes(computedStyle.overflowY) &&
358
+ attachments.scrollHeight - attachments.clientHeight > 1;
359
+ const hasAttachmentScrollbar = this.hasAttachments && (hasHorizontalScrollbar || hasVerticalScrollbar);
360
+ if (this.hasAttachmentScrollbar !== hasAttachmentScrollbar) {
361
+ this.hasAttachmentScrollbar = hasAttachmentScrollbar;
362
+ }
363
+ }
364
+ render() {
365
+ const isProcessing = this.state === 'processing';
366
+ const disabledSubmitButton = isProcessing || (!this.canSubmit() && this.state === 'input');
367
+ const submitButtonIcon = isProcessing
368
+ ? index$1.iconCircleStop
369
+ : index$1.iconSendRightFilled;
370
+ return (index.h(index.Host, { key: '72c1e2139cdf152b32d84a4f8e5292361e63489c', class: {
371
+ disabled: this.disabled,
372
+ readonly: this.readonly,
373
+ 'has-follow-up': this.hasFollowUp,
374
+ } }, index.h("div", { key: '88a8ccbdafceda33f39bc1266f50966af22fa830', class: "follow-up-prompts" }, index.h("slot", { key: '10cbddca520c0eaed028f05f9d6c14977e8043db', name: "follow-up", onSlotchange: (event) => this.handleFollowUpSlotChange(event) })), index.h("div", { key: '65235d296b9d6e452332746229300bdb9a766aec', class: "chat-input" }, index.h("div", { key: '856ae3152ac0c5665e8a83f250cfd7ad53a9d778', ref: this.attachmentsRef, class: {
375
+ attachments: true,
376
+ 'attachments--scroll': true,
377
+ 'has-attachment-scrollbar': this.hasAttachmentScrollbar,
378
+ 'has-attachments': this.hasAttachments,
379
+ } }, index.h("slot", { key: 'c8c108ef47848cfaee5074c545ff9f9b7000a71d', name: "attachments", onSlotchange: (event) => this.handleAttachmentsSlotChange(event) })), index.h("textarea", { key: '55cb475c3ea359f198f26f04b0c89d6a972e1799', id: this.getHostElementId() + '-textarea', ref: this.textareaRef, readOnly: this.readonly, disabled: this.disabled, maxLength: this.getCharacterLimit(), rows: this.minRows, value: this.value, placeholder: this.placeholder, "aria-label": this.textareaLabel, onFocus: () => {
380
+ this.initialValue = this.value;
381
+ }, onInput: (event) => {
382
+ const textarea = event.target;
383
+ this.updateFormInternalValue(textarea.value);
384
+ this.valueChange.emit(textarea.value);
385
+ this.updateTextareaHeight(textarea);
386
+ }, onKeyDown: (event) => this.handleKeyDown(event), onBlur: () => {
387
+ this.ixBlur.emit();
388
+ this.emitIxChangeIfNeeded();
389
+ } }), this.renderCharacterLimit(), index.h("div", { key: '64844f6f38de39980e9ac250ea6edfad8599cb61', class: "action-row" }, index.h("div", { key: 'ae3d9b5bbc4828610f6d3ba27135eb0595325e2f', class: "left-actions" }, index.h("slot", { key: '36bd038c725a205671fdba70298c39899e7e35ac', name: "start" })), index.h("div", { key: '5d27e8d2dd186d73c7f2677f73221b5106159a9a', class: "right-actions" }, index.h("slot", { key: '54757427353728d8462137a645a1cc6c4133ebcc', name: "end" }), index.h("ix-icon-button", { key: 'ac42d94d4999731a1b76a1163083781258f82573', "aria-label": isProcessing ? 'Stop processing' : 'Submit prompt', class: "submit-button", disabled: disabledSubmitButton, icon: submitButtonIcon, size: "24", variant: "tertiary", onClick: () => this.submitPrompt() })))), this.disclaimer && (index.h("ix-typography", { key: '572264e22f9d76d980299b163a961e2a6bf9deed', class: "disclaimer", format: "body-sm", textColor: "soft" }, this.disclaimer))));
390
+ }
391
+ static get formAssociated() { return true; }
392
+ static get watchers() { return {
393
+ "value": [{
394
+ "onValueChange": 0
395
+ }],
396
+ "minRows": [{
397
+ "onRowsChange": 0
398
+ }],
399
+ "maxRows": [{
400
+ "onRowsChange": 0
401
+ }]
402
+ }; }
403
+ };
404
+ ChatInput.style = chatInputCss();
405
+
406
+ exports.ix_chat_input = ChatInput;
@@ -0,0 +1,66 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-DnclGKUw.js');
4
+
5
+ const chatUserMessageCss = () => `:host{display:flex;flex-direction:column;align-items:flex-end;width:100%;min-width:0;box-sizing:border-box}:host *,:host *::after,:host *::before{box-sizing:border-box}:host *::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host *{}:host *::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host *{}:host *::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host *::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host *{}:host *::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host *{}:host *::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host *::-webkit-scrollbar-corner{display:none}:host .message{width:-moz-fit-content;width:fit-content;min-width:max(15.375rem, 45%);max-width:80%;box-sizing:border-box;padding:var(--theme-space-2) var(--theme-space-3);border-radius:var(--theme-default-border-radius);background-color:var(--theme-color-component-8);color:var(--theme-color-std-text)}:host .attachments{display:none;justify-content:flex-end;flex-wrap:wrap;gap:var(--theme-space-1) 0;width:100%;max-width:75%;margin-bottom:var(--theme-space-1);overflow:hidden}:host .attachments ::slotted(ix-chat-attachment){flex:0 1 6.375rem;padding-left:var(--theme-space-1)}:host .attachment-overflow{margin-bottom:var(--theme-space-1);--ix-dropdown-button-border-radius-left:var(--theme-small-border-radius);--ix-dropdown-button-border-radius-right:var(--theme-small-border-radius)}:host .message-text{display:block;overflow-wrap:anywhere;white-space:pre-wrap}:host .actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--theme-space-1);min-height:2rem;margin-top:var(--theme-space-1);opacity:0;transition:opacity 0.2s ease-in-out}:host .actions ::slotted(ix-icon-button){flex:0 0 auto}:host(.has-attachments) .attachments{display:flex}:host(:focus-visible){outline:none}:host(:focus-visible) .message{outline:1px solid var(--theme-color-focus-bdr);outline-offset:var(--theme-focus-outline-offset)}:host(.has-actions:focus) .actions,:host(.has-actions:hover) .actions,:host(.has-actions:focus-within) .actions{opacity:1}`;
6
+
7
+ const ChatUserMessage = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ }
11
+ get hostElement() { return index.getElement(this); }
12
+ /**
13
+ * Text displayed in the user message bubble.
14
+ */
15
+ message;
16
+ hasActions = false;
17
+ hasAttachments = false;
18
+ hasMessageContent = false;
19
+ componentWillLoad() {
20
+ this.updateHasMessageContent();
21
+ }
22
+ handleActionsSlotChange(event) {
23
+ const slot = event.target;
24
+ this.hasActions =
25
+ slot.assignedElements({
26
+ flatten: true,
27
+ }).length > 0;
28
+ }
29
+ handleAttachmentsSlotChange(event) {
30
+ const slot = event.target;
31
+ this.hasAttachments =
32
+ slot.assignedElements({
33
+ flatten: true,
34
+ }).length > 0;
35
+ }
36
+ handleMessageSlotChange(event) {
37
+ this.updateHasMessageContent(event.target);
38
+ }
39
+ hasAssignedMessageContent(slot) {
40
+ if (slot) {
41
+ return slot.assignedNodes({ flatten: true }).some((node) => {
42
+ return node.nodeType === 1 || !!node.textContent?.trim();
43
+ });
44
+ }
45
+ return Array.from(this.hostElement.childNodes).some((node) => {
46
+ if (node.nodeType === 1) {
47
+ return node.slot === '';
48
+ }
49
+ return !!node.textContent?.trim();
50
+ });
51
+ }
52
+ updateHasMessageContent(slot) {
53
+ this.hasMessageContent = this.hasAssignedMessageContent(slot);
54
+ }
55
+ render() {
56
+ return (index.h(index.Host, { key: 'e9376e0015376ada61acab85f71f2e4ecd6352ef', class: {
57
+ 'has-actions': this.hasActions,
58
+ 'has-attachments': this.hasAttachments,
59
+ }, tabIndex: this.hasActions ? 0 : undefined }, index.h("div", { key: '89f8e746ec79a7ec1e8489a7ea658055c807e37b', class: "attachments" }, index.h("slot", { key: '7d8162d206e2fa2f55d14982b78ae97e975f5bf4', name: "attachments", onSlotchange: (event) => this.handleAttachmentsSlotChange(event) })), index.h("div", { key: '2169c12123fa3e36933274dcdc79a55a87533f29', class: "message" }, index.h("ix-typography", { key: '8b502f9e39d9eba42cbe39919eb88388d0d4fbac', class: "message-text", format: "body", textColor: "std" }, this.message, index.h("span", { key: '3d8a626592b4ccdcbb4ad60025b10fba74882e70', style: {
60
+ display: this.hasMessageContent ? undefined : 'none',
61
+ } }, index.h("slot", { key: '4030806fcddb274fa0dd35dc89367ecf75cf2868', onSlotchange: (event) => this.handleMessageSlotChange(event) })))), index.h("div", { key: '3f740a55deaaa178d8939730d2553c7b32b1f21d', class: "actions", "aria-hidden": !this.hasActions ? 'true' : undefined }, index.h("slot", { key: '465edf12f452fe3c88f910e0d657b4c76894878c', name: "actions", onSlotchange: (event) => this.handleActionsSlotChange(event) }))));
62
+ }
63
+ };
64
+ ChatUserMessage.style = chatUserMessageCss();
65
+
66
+ exports.ix_chat_user_message = ChatUserMessage;
@@ -0,0 +1,28 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-DnclGKUw.js');
4
+
5
+ const chatCss = () => `:host{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;min-width:27rem;max-width:calc(45rem + var(--theme-space-5));box-sizing:border-box}:host *,:host *::after,:host *::before{box-sizing:border-box}:host *::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host *{}:host *::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host *{}:host *::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host *::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host *{}:host *::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host *{}:host *::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host *::-webkit-scrollbar-corner{display:none}:host .messages{display:flex;flex:1 1 auto;flex-direction:column;align-items:center;gap:var(--theme-space-5);min-height:0;width:100%;padding:var(--theme-space-5);box-sizing:border-box;overflow-y:auto}:host .messages ::slotted(*){width:100%;max-width:45rem;flex:0 0 auto}:host .prompt{display:none;flex:0 0 auto;width:100%;padding:var(--theme-space-5);box-sizing:border-box}:host .prompt ::slotted(*){width:100%;max-width:45rem}:host(.has-prompt) .prompt{display:flex;justify-content:center}`;
6
+
7
+ const Chat = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ }
11
+ hasPrompt = false;
12
+ hasAssignedContent(slot) {
13
+ return slot.assignedNodes({ flatten: true }).some((node) => {
14
+ return node.nodeType === 1 || !!node.textContent?.trim();
15
+ });
16
+ }
17
+ handlePromptSlotChange(event) {
18
+ this.hasPrompt = this.hasAssignedContent(event.target);
19
+ }
20
+ render() {
21
+ return (index.h(index.Host, { key: 'b4d659f28fb34320f986c5b046ff794c9b2a0742', class: {
22
+ 'has-prompt': this.hasPrompt,
23
+ } }, index.h("div", { key: '0790bede975ba3cba978ec9425d80195fa380b83', class: "messages", part: "messages" }, index.h("slot", { key: 'f3a2c8f7e337fb3b93a19098a3f3556377692f7c' })), index.h("div", { key: '4975b7ed690b957d87307fcde8c8c785883bb2b0', class: "prompt", part: "prompt" }, index.h("slot", { key: 'd99a7efca4cff53916781d3bb1c089ba63f356c0', name: "prompt", onSlotchange: (event) => this.handlePromptSlotChange(event) }))));
24
+ }
25
+ };
26
+ Chat.style = chatCss();
27
+
28
+ exports.ix_chat = Chat;