@siemens/ix 5.1.0 → 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.
- package/READMEOSS.html +1 -1
- package/components/index.js +1 -1
- package/components/ix-action-card.js +1 -1
- package/components/ix-application-header.js +1 -1
- package/components/ix-application-switch-modal.js +1 -1
- package/components/ix-application.js +1 -1
- package/components/ix-avatar.js +1 -1
- package/components/ix-badge.d.ts +11 -0
- package/components/ix-badge.js +1 -0
- package/components/ix-blind.js +1 -1
- package/components/ix-breadcrumb-item.js +1 -1
- package/components/ix-breadcrumb.js +1 -1
- package/components/ix-button.js +1 -1
- package/components/ix-card-accordion.js +1 -1
- package/components/ix-card-content.js +1 -1
- package/components/ix-card-list.js +1 -1
- package/components/ix-card-title.js +1 -1
- package/components/ix-card.js +1 -1
- package/components/ix-category-filter.js +1 -1
- package/components/ix-chat-ai-message.d.ts +11 -0
- package/components/ix-chat-ai-message.js +1 -0
- package/components/ix-chat-attachment.d.ts +11 -0
- package/components/ix-chat-attachment.js +1 -0
- package/components/ix-chat-input.d.ts +11 -0
- package/components/ix-chat-input.js +1 -0
- package/components/ix-chat-user-message.d.ts +11 -0
- package/components/ix-chat-user-message.js +1 -0
- package/components/ix-chat.d.ts +11 -0
- package/components/ix-chat.js +1 -0
- package/components/ix-checkbox-group.js +1 -1
- package/components/ix-checkbox.js +1 -1
- package/components/ix-chip.js +1 -1
- package/components/ix-col.js +1 -1
- package/components/ix-content-header.js +1 -1
- package/components/ix-content.js +1 -1
- package/components/ix-css-grid-item.js +1 -1
- package/components/ix-css-grid.js +1 -1
- package/components/ix-custom-field.js +1 -1
- package/components/ix-date-dropdown.js +1 -1
- package/components/ix-date-input.js +1 -1
- package/components/ix-date-picker.js +1 -1
- package/components/ix-date-time-card.js +1 -1
- package/components/ix-datetime-input.js +1 -1
- package/components/ix-datetime-picker.js +1 -1
- package/components/ix-divider.js +1 -1
- package/components/ix-dropdown-button.js +1 -1
- package/components/ix-dropdown-header.js +1 -1
- package/components/ix-dropdown-item.js +1 -1
- package/components/ix-dropdown-quick-actions.js +1 -1
- package/components/ix-dropdown.js +1 -1
- package/components/ix-empty-state.js +1 -1
- package/components/ix-event-list-item.js +1 -1
- package/components/ix-event-list.js +1 -1
- package/components/ix-expanding-search.js +1 -1
- package/components/ix-field-label.js +1 -1
- package/components/ix-field-wrapper.js +1 -1
- package/components/ix-filter-chip.js +1 -1
- package/components/ix-flip-tile-content.js +1 -1
- package/components/ix-flip-tile.js +1 -1
- package/components/ix-group-context-menu.js +1 -1
- package/components/ix-group-item.js +1 -1
- package/components/ix-group.js +1 -1
- package/components/ix-helper-text.js +1 -1
- package/components/ix-icon-button.js +1 -1
- package/components/ix-icon-toggle-button.js +1 -1
- package/components/ix-input.js +1 -1
- package/components/ix-key-value-list.js +1 -1
- package/components/ix-key-value.js +1 -1
- package/components/ix-kpi.js +1 -1
- package/components/ix-layout-auto.js +1 -1
- package/components/ix-layout-grid.js +1 -1
- package/components/ix-link-button.js +1 -1
- package/components/ix-menu-about-item.js +1 -1
- package/components/ix-menu-about-news.js +1 -1
- package/components/ix-menu-about.js +1 -1
- package/components/ix-menu-avatar-item.js +1 -1
- package/components/ix-menu-avatar.js +1 -1
- package/components/ix-menu-category.js +1 -1
- package/components/ix-menu-expand-icon.js +1 -1
- package/components/ix-menu-item.js +1 -1
- package/components/ix-menu-settings-item.js +1 -1
- package/components/ix-menu-settings.js +1 -1
- package/components/ix-menu.js +1 -1
- package/components/ix-message-bar.js +1 -1
- package/components/ix-modal-content.js +1 -1
- package/components/ix-modal-footer.js +1 -1
- package/components/ix-modal-header.js +1 -1
- package/components/ix-modal-loading.js +1 -1
- package/components/ix-modal.js +1 -1
- package/components/ix-number-input.js +1 -1
- package/components/ix-pagination.js +1 -1
- package/components/ix-pane-layout.js +1 -1
- package/components/ix-pane.js +1 -1
- package/components/ix-pill.js +1 -1
- package/components/ix-popover-content.js +1 -1
- package/components/ix-popover-footer.js +1 -1
- package/components/ix-popover-header.js +1 -1
- package/components/ix-popover-image.js +1 -1
- package/components/ix-popover.js +1 -1
- package/components/ix-progress-indicator.js +1 -1
- package/components/ix-push-card.js +1 -1
- package/components/ix-radio-group.js +1 -1
- package/components/ix-radio.js +1 -1
- package/components/ix-range-field.js +1 -1
- package/components/ix-row.js +1 -1
- package/components/ix-select-item.js +1 -1
- package/components/ix-select.js +1 -1
- package/components/ix-slider.js +1 -1
- package/components/ix-spinner.js +1 -1
- package/components/ix-split-button.js +1 -1
- package/components/ix-tab-item.js +1 -1
- package/components/ix-tab-panel.js +1 -1
- package/components/ix-tab-set.js +1 -1
- package/components/ix-tabs.js +1 -1
- package/components/ix-textarea.js +1 -1
- package/components/ix-tile.js +1 -1
- package/components/ix-time-input.js +1 -1
- package/components/ix-time-picker.js +1 -1
- package/components/ix-toast-container.js +1 -1
- package/components/ix-toast.js +1 -1
- package/components/ix-toggle-button.js +1 -1
- package/components/ix-toggle.js +1 -1
- package/components/ix-tooltip.js +1 -1
- package/components/ix-tree-item.js +1 -1
- package/components/ix-tree.js +1 -1
- package/components/ix-typography.js +1 -1
- package/components/ix-upload.js +1 -1
- package/components/ix-workflow-step.js +1 -1
- package/components/ix-workflow-steps.js +1 -1
- package/components/p-1FBWW6v2.js +1 -0
- package/components/p-3U_cSqu_.js +1 -0
- package/components/p-4ZsT_zIm.js +1 -0
- package/components/{p-CrLxhwo2.js → p-BC2PyjjU.js} +1 -1
- package/{dist/siemens-ix/p-wfVRhTWc.js → components/p-BDnx22Gp.js} +1 -1
- package/components/{p-DtOqKp7K.js → p-BGOtCwtj.js} +1 -1
- package/components/{p-CuFZ7CXu.js → p-BHjmN8zz.js} +1 -1
- package/components/p-BHoJOFM-.js +1 -0
- package/components/p-BHtNsBtM.js +1 -0
- package/components/p-BQ-hS49k.js +1 -0
- package/components/p-BTBxxgtF.js +1 -0
- package/components/{p-CT5pAQCz.js → p-BcbFeRB0.js} +1 -1
- package/components/p-BmZGQGZi.js +1 -0
- package/components/p-Bs5X90wM.js +1 -0
- package/components/p-C02EaF8C.js +1 -0
- package/components/p-CEE0wwD3.js +1 -0
- package/components/p-CLDB-pmj.js +1 -0
- package/components/p-CRtj-KBq.js +1 -0
- package/components/p-CTRSoM-z.js +1 -0
- package/components/p-CUpOF7jN.js +1 -0
- package/components/{p-GGleop6j.js → p-C_K74Xlt.js} +1 -1
- package/components/{p-CGHbrmJg.js → p-CatmTvkh.js} +1 -1
- package/components/{p-Dfd_ifAu.js → p-CgPr717U.js} +1 -1
- package/components/p-CtZAuwv3.js +1 -0
- package/components/p-Ctb1EExj.js +1 -0
- package/components/p-CvAmaEU2.js +1 -0
- package/components/p-Cxwq4WaV.js +1 -0
- package/components/p-D6O-bCyA.js +1 -0
- package/components/{p-BBCsPlPH.js → p-D7qfGAJ7.js} +1 -1
- package/components/p-D7sEY2UQ.js +1 -0
- package/components/{p-DtmgZu-S.js → p-DWOjSq8j.js} +1 -1
- package/components/p-D_HzQCU-.js +1 -0
- package/components/p-DdlGyKd2.js +1 -0
- package/components/p-DiYkfhDE.js +1 -0
- package/components/p-DmtgI24u.js +1 -0
- package/components/p-DpvAVNqZ.js +1 -0
- package/components/p-DsVj4Cd-.js +1 -0
- package/components/{p-BuBQiemL.js → p-DtWFUcZO.js} +1 -1
- package/components/p-DylHkzl6.js +1 -0
- package/components/p-NXyac9kC.js +1 -0
- package/components/p-OxstEnSC.js +1 -0
- package/components/{p-BNAvpXSk.js → p-R5tYZVVd.js} +1 -1
- package/components/{p-Czy7a3I4.js → p-WisOWbJ8.js} +1 -1
- package/components/{p-DhWkcMmR.js → p-YFmbQndr.js} +1 -1
- package/components/p-eGuQ8D3W.js +1 -0
- package/components/{p-CtDOTMOT.js → p-eN5fQtqO.js} +1 -1
- package/components/p-ePylRxs_.js +1 -0
- package/components/p-hf_zqlB1.js +1 -0
- package/components/p-l9UTiHpM.js +1 -0
- package/components/{p-CIA8i4dm.js → p-snX1FfdL.js} +1 -1
- package/components/p-tpMN9yTQ.js +1 -0
- package/components/p-v9vlPlkd.js +1 -0
- package/dist/cjs/chip.types-BD73fAij.js +22 -0
- package/dist/cjs/{helper-text-util-BkHm7ofh.js → helper-text-util-Ci_KFQZ4.js} +1 -1
- package/dist/cjs/{index-CwJ-mkQd.js → index-BQht1mLe.js} +20 -0
- package/dist/cjs/index-DnclGKUw.js +28 -4
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/{input.fc-DM-hX3xb.js → input.fc-xGzM_I6q.js} +1 -1
- package/dist/cjs/ix-action-card.cjs.entry.js +3 -3
- package/dist/cjs/ix-application-header.cjs.entry.js +11 -11
- package/dist/cjs/ix-application-switch-modal.cjs.entry.js +2 -2
- package/dist/cjs/ix-application.cjs.entry.js +4 -4
- package/dist/cjs/ix-avatar_2.cjs.entry.js +3 -3
- package/dist/cjs/ix-badge.cjs.entry.js +716 -0
- package/dist/cjs/ix-blind.cjs.entry.js +7 -7
- package/dist/cjs/ix-breadcrumb-item.cjs.entry.js +2 -2
- package/dist/cjs/ix-breadcrumb.cjs.entry.js +4 -4
- package/dist/cjs/ix-button.cjs.entry.js +3 -3
- package/dist/cjs/ix-card-accordion_2.cjs.entry.js +7 -7
- package/dist/cjs/ix-card-list.cjs.entry.js +63 -10
- package/dist/cjs/ix-card_2.cjs.entry.js +5 -5
- package/dist/cjs/ix-category-filter.cjs.entry.js +5 -5
- package/dist/cjs/ix-chat-ai-message.cjs.entry.js +35 -0
- package/dist/cjs/ix-chat-attachment.cjs.entry.js +110 -0
- package/dist/cjs/ix-chat-input.cjs.entry.js +406 -0
- package/dist/cjs/ix-chat-user-message.cjs.entry.js +66 -0
- package/dist/cjs/ix-chat.cjs.entry.js +28 -0
- package/dist/cjs/ix-checkbox-group.cjs.entry.js +3 -3
- package/dist/cjs/ix-checkbox.cjs.entry.js +5 -5
- package/dist/cjs/ix-chip.cjs.entry.js +10 -29
- package/dist/cjs/ix-col_4.cjs.entry.js +12 -12
- package/dist/cjs/ix-content-header.cjs.entry.js +4 -4
- package/dist/cjs/ix-content.cjs.entry.js +4 -4
- package/dist/cjs/ix-css-grid-item.cjs.entry.js +1 -1
- package/dist/cjs/ix-css-grid.cjs.entry.js +1 -1
- package/dist/cjs/ix-custom-field.cjs.entry.js +2 -2
- package/dist/cjs/ix-date-dropdown.cjs.entry.js +7 -7
- package/dist/cjs/ix-date-input.cjs.entry.js +7 -7
- package/dist/cjs/ix-date-picker.cjs.entry.js +9 -9
- package/dist/cjs/ix-date-time-card.cjs.entry.js +3 -3
- package/dist/cjs/ix-datetime-input.cjs.entry.js +7 -7
- package/dist/cjs/ix-datetime-picker.cjs.entry.js +4 -4
- package/dist/cjs/ix-divider.cjs.entry.js +1 -1
- package/dist/cjs/ix-dropdown-button.cjs.entry.js +6 -6
- package/dist/cjs/ix-dropdown-header.cjs.entry.js +2 -2
- package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js +1 -1
- package/dist/cjs/ix-dropdown_2.cjs.entry.js +7 -7
- package/dist/cjs/ix-empty-state.cjs.entry.js +2 -2
- package/dist/cjs/ix-event-list-item.cjs.entry.js +6 -6
- package/dist/cjs/ix-event-list.cjs.entry.js +8 -5
- package/dist/cjs/ix-expanding-search.cjs.entry.js +6 -6
- package/dist/cjs/ix-field-label_2.cjs.entry.js +7 -7
- package/dist/cjs/ix-filter-chip_2.cjs.entry.js +6 -6
- package/dist/cjs/ix-flip-tile-content.cjs.entry.js +1 -1
- package/dist/cjs/ix-flip-tile.cjs.entry.js +5 -5
- package/dist/cjs/ix-group-context-menu_2.cjs.entry.js +3 -3
- package/dist/cjs/ix-group.cjs.entry.js +9 -9
- package/dist/cjs/ix-helper-text.cjs.entry.js +4 -4
- package/dist/cjs/ix-icon-button_2.cjs.entry.js +5 -5
- package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +3 -3
- package/dist/cjs/ix-input.cjs.entry.js +8 -8
- package/dist/cjs/ix-key-value-list.cjs.entry.js +1 -1
- package/dist/cjs/ix-key-value.cjs.entry.js +1 -1
- package/dist/cjs/ix-kpi.cjs.entry.js +5 -5
- package/dist/cjs/ix-layout-auto.cjs.entry.js +1 -1
- package/dist/cjs/ix-link-button.cjs.entry.js +4 -4
- package/dist/cjs/ix-menu-about-item.cjs.entry.js +1 -1
- package/dist/cjs/ix-menu-about-news.cjs.entry.js +6 -6
- package/dist/cjs/ix-menu-about.cjs.entry.js +4 -4
- package/dist/cjs/ix-menu-avatar.cjs.entry.js +4 -4
- package/dist/cjs/ix-menu-category.cjs.entry.js +12 -9
- package/dist/cjs/ix-menu-expand-icon.cjs.entry.js +3 -3
- package/dist/cjs/ix-menu-item.cjs.entry.js +5 -5
- package/dist/cjs/ix-menu-settings-item.cjs.entry.js +1 -1
- package/dist/cjs/ix-menu-settings.cjs.entry.js +4 -4
- package/dist/cjs/ix-menu.cjs.entry.js +14 -14
- package/dist/cjs/ix-message-bar.cjs.entry.js +3 -3
- package/dist/cjs/ix-modal-content_2.cjs.entry.js +5 -5
- package/dist/cjs/ix-modal-footer.cjs.entry.js +2 -2
- package/dist/cjs/ix-modal-loading.cjs.entry.js +1 -1
- package/dist/cjs/ix-modal.cjs.entry.js +3 -3
- package/dist/cjs/ix-number-input.cjs.entry.js +9 -9
- package/dist/cjs/ix-pagination.cjs.entry.js +4 -4
- package/dist/cjs/ix-pane-layout.cjs.entry.js +2 -2
- package/dist/cjs/ix-pane.cjs.entry.js +9 -9
- package/dist/cjs/ix-pill_4.cjs.entry.js +20 -20
- package/dist/cjs/ix-popover-content.cjs.entry.js +2 -2
- package/dist/cjs/ix-popover-footer.cjs.entry.js +2 -2
- package/dist/cjs/ix-popover-header.cjs.entry.js +3 -3
- package/dist/cjs/ix-popover-image.cjs.entry.js +1 -1
- package/dist/cjs/ix-popover.cjs.entry.js +1 -1
- package/dist/cjs/ix-progress-indicator.cjs.entry.js +4 -4
- package/dist/cjs/ix-push-card.cjs.entry.js +2 -2
- package/dist/cjs/ix-radio-group.cjs.entry.js +3 -3
- package/dist/cjs/ix-radio.cjs.entry.js +5 -5
- package/dist/cjs/ix-range-field.cjs.entry.js +4 -4
- package/dist/cjs/ix-select.cjs.entry.js +17 -14
- package/dist/cjs/ix-slider.cjs.entry.js +8 -8
- package/dist/cjs/ix-split-button.cjs.entry.js +3 -3
- package/dist/cjs/ix-tab-panel.cjs.entry.js +2 -2
- package/dist/cjs/ix-textarea.cjs.entry.js +5 -5
- package/dist/cjs/ix-tile.cjs.entry.js +5 -5
- package/dist/cjs/ix-time-input.cjs.entry.js +7 -7
- package/dist/cjs/ix-toast-container.cjs.entry.js +3 -3
- package/dist/cjs/ix-toast.cjs.entry.js +4 -4
- package/dist/cjs/ix-toggle-button.cjs.entry.js +3 -3
- package/dist/cjs/ix-toggle.cjs.entry.js +5 -5
- package/dist/cjs/ix-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/ix-tree-item.cjs.entry.js +6 -6
- package/dist/cjs/ix-tree.cjs.entry.js +1 -1
- package/dist/cjs/ix-typography.cjs.entry.js +2 -2
- package/dist/cjs/ix-upload.cjs.entry.js +5 -5
- package/dist/cjs/ix-workflow-step.cjs.entry.js +5 -5
- package/dist/cjs/ix-workflow-steps.cjs.entry.js +2 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/siemens-ix.cjs.js +1 -1
- package/dist/cjs/{validation-DJaUH-UR.js → validation-B1izlD8M.js} +59 -3
- package/dist/collection/collection-manifest.json +6 -0
- package/dist/collection/components/action-card/action-card.css +11 -11
- package/dist/collection/components/action-card/action-card.js +3 -3
- package/dist/collection/components/application/application.css +11 -11
- package/dist/collection/components/application/application.js +10 -3
- package/dist/collection/components/application-header/application-header.css +11 -11
- package/dist/collection/components/application-header/application-header.js +10 -9
- package/dist/collection/components/application-header/application-switch-modal/application-switch-modal.css +11 -11
- package/dist/collection/components/avatar/avatar.css +19 -11
- package/dist/collection/components/avatar/avatar.js +3 -0
- package/dist/collection/components/badge/badge.css +622 -0
- package/dist/collection/components/badge/badge.js +815 -0
- package/dist/collection/components/badge/badge.status-icon.js +65 -0
- package/dist/collection/components/badge/badge.types.js +24 -0
- package/dist/collection/components/badge/badge.utils.js +57 -0
- package/dist/collection/components/badge/test/badge.page.js +190 -0
- package/dist/collection/components/blind/blind.css +119 -15
- package/dist/collection/components/blind/blind.js +10 -5
- package/dist/collection/components/breadcrumb/breadcrumb.css +11 -11
- package/dist/collection/components/breadcrumb/breadcrumb.js +5 -2
- package/dist/collection/components/breadcrumb-item/breadcrumb-item.css +52 -44
- package/dist/collection/components/breadcrumb-item/breadcrumb-item.js +3 -0
- package/dist/collection/components/button/button.css +30 -22
- package/dist/collection/components/button/button.js +5 -2
- package/dist/collection/components/card/card.css +11 -11
- package/dist/collection/components/card/card.js +6 -2
- package/dist/collection/components/card-accordion/card-accordion.css +61 -44
- package/dist/collection/components/card-accordion/card-accordion.js +7 -4
- package/dist/collection/components/card-content/card-content.css +11 -11
- package/dist/collection/components/card-content/card-content.js +4 -1
- package/dist/collection/components/card-list/card-list.css +23 -11
- package/dist/collection/components/card-list/card-list.js +70 -10
- package/dist/collection/components/card-title/card-title.js +2 -1
- package/dist/collection/components/category-filter/category-filter.css +41 -33
- package/dist/collection/components/category-filter/category-filter.js +3 -3
- package/dist/collection/components/chat/chat.css +114 -0
- package/dist/collection/components/chat/chat.js +47 -0
- package/dist/collection/components/chat-ai-message/chat-ai-message.css +139 -0
- package/dist/collection/components/chat-ai-message/chat-ai-message.js +56 -0
- package/dist/collection/components/chat-attachment/chat-attachment.css +135 -0
- package/dist/collection/components/chat-attachment/chat-attachment.js +284 -0
- package/dist/collection/components/chat-attachment/chat-attachment.types.js +1 -0
- package/dist/collection/components/chat-input/chat-input.css +323 -0
- package/dist/collection/components/chat-input/chat-input.js +878 -0
- package/dist/collection/components/chat-user-message/chat-user-message.css +145 -0
- package/dist/collection/components/chat-user-message/chat-user-message.js +112 -0
- package/dist/collection/components/checkbox/checkbox.css +11 -11
- package/dist/collection/components/checkbox/checkbox.js +4 -3
- package/dist/collection/components/checkbox-group/checkbox-group.js +3 -2
- package/dist/collection/components/chip/chip.css +28 -19
- package/dist/collection/components/chip/chip.js +10 -8
- package/dist/collection/components/col/col.css +11 -11
- package/dist/collection/components/col/col.js +5 -2
- package/dist/collection/components/content/content.css +11 -11
- package/dist/collection/components/content/content.js +4 -3
- package/dist/collection/components/content-header/content-header.js +4 -4
- package/dist/collection/components/css-grid/css-grid-item.js +2 -1
- package/dist/collection/components/css-grid/css-grid.js +2 -1
- package/dist/collection/components/custom-field/custom-field.js +4 -1
- package/dist/collection/components/date-dropdown/date-dropdown.css +30 -22
- package/dist/collection/components/date-dropdown/date-dropdown.js +5 -5
- package/dist/collection/components/date-input/date-input.css +23 -22
- package/dist/collection/components/date-input/date-input.js +3 -3
- package/dist/collection/components/date-picker/date-picker.css +19 -11
- package/dist/collection/components/date-picker/date-picker.js +7 -7
- package/dist/collection/components/date-time-card/date-time-card.css +11 -11
- package/dist/collection/components/date-time-card/date-time-card.js +2 -2
- package/dist/collection/components/datetime-input/datetime-input.css +23 -22
- package/dist/collection/components/datetime-input/datetime-input.js +3 -3
- package/dist/collection/components/datetime-picker/datetime-picker.css +11 -11
- package/dist/collection/components/datetime-picker/datetime-picker.js +3 -3
- package/dist/collection/components/divider/divider.js +1 -1
- package/dist/collection/components/dropdown/dropdown.css +11 -11
- package/dist/collection/components/dropdown/dropdown.js +4 -1
- package/dist/collection/components/dropdown-button/dropdown-button.css +326 -34
- package/dist/collection/components/dropdown-button/dropdown-button.js +8 -4
- package/dist/collection/components/dropdown-header/dropdown-header.css +11 -11
- package/dist/collection/components/dropdown-header/dropdown-header.js +1 -1
- package/dist/collection/components/dropdown-item/dropdown-item.css +12 -12
- package/dist/collection/components/dropdown-item/dropdown-item.js +6 -3
- package/dist/collection/components/dropdown-quick-actions/dropdown-quick-actions.js +4 -1
- package/dist/collection/components/empty-state/empty-state.css +11 -11
- package/dist/collection/components/empty-state/empty-state.js +1 -1
- package/dist/collection/components/event-list/event-list.css +11 -11
- package/dist/collection/components/event-list/event-list.js +10 -4
- package/dist/collection/components/event-list-item/event-list-item.css +11 -11
- package/dist/collection/components/event-list-item/event-list-item.js +7 -4
- package/dist/collection/components/expanding-search/expanding-search.css +11 -11
- package/dist/collection/components/expanding-search/expanding-search.js +4 -4
- package/dist/collection/components/field-label/field-label.js +5 -2
- package/dist/collection/components/field-wrapper/field-wrapper.js +2 -2
- package/dist/collection/components/filter-chip/filter-chip.css +11 -11
- package/dist/collection/components/filter-chip/filter-chip.js +5 -2
- package/dist/collection/components/flip-tile/flip-tile.css +11 -11
- package/dist/collection/components/flip-tile/flip-tile.js +8 -3
- package/dist/collection/components/flip-tile-content/flip-tile-content.js +4 -1
- package/dist/collection/components/group/group-context-menu.js +4 -1
- package/dist/collection/components/group/group.js +14 -8
- package/dist/collection/components/group-item/group-item.css +11 -11
- package/dist/collection/components/group-item/group-item.js +3 -0
- package/dist/collection/components/helper-text/helper-text.js +1 -1
- package/dist/collection/components/icon-button/icon-button.css +49 -39
- package/dist/collection/components/icon-button/icon-button.js +2 -2
- package/dist/collection/components/icon-toggle-button/icon-toggle-button.css +49 -39
- package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +2 -2
- package/dist/collection/components/input/input.css +12 -11
- package/dist/collection/components/input/input.js +4 -4
- package/dist/collection/components/input/number-input.css +12 -11
- package/dist/collection/components/input/number-input.js +5 -5
- package/dist/collection/components/input/textarea.css +12 -11
- package/dist/collection/components/input/textarea.js +2 -2
- package/dist/collection/components/ix-playground/ix-playground.js +1 -1
- package/dist/collection/components/key-value/key-value.js +1 -1
- package/dist/collection/components/key-value-list/key-value-list.js +4 -1
- package/dist/collection/components/kpi/kpi.css +11 -11
- package/dist/collection/components/kpi/kpi.js +3 -3
- package/dist/collection/components/layout-auto/layout-auto.js +4 -1
- package/dist/collection/components/layout-grid/layout-grid.js +5 -2
- package/dist/collection/components/link-button/link-button.js +6 -3
- package/dist/collection/components/menu/menu-expand-icon.css +30 -22
- package/dist/collection/components/menu/menu-expand-icon.js +1 -1
- package/dist/collection/components/menu/menu.css +11 -11
- package/dist/collection/components/menu/menu.js +20 -12
- package/dist/collection/components/menu-about/menu-about.css +11 -11
- package/dist/collection/components/menu-about/menu-about.js +5 -2
- package/dist/collection/components/menu-about-item/menu-about-item.js +2 -1
- package/dist/collection/components/menu-about-news/menu-about-news.css +11 -11
- package/dist/collection/components/menu-about-news/menu-about-news.js +7 -4
- package/dist/collection/components/menu-avatar/menu-avatar.css +11 -11
- package/dist/collection/components/menu-avatar/menu-avatar.js +5 -2
- package/dist/collection/components/menu-avatar-item/menu-avatar-item.css +11 -11
- package/dist/collection/components/menu-avatar-item/menu-avatar-item.js +1 -1
- package/dist/collection/components/menu-category/menu-category.css +11 -11
- package/dist/collection/components/menu-category/menu-category.js +15 -9
- package/dist/collection/components/menu-item/menu-item.js +5 -5
- package/dist/collection/components/menu-settings/menu-settings.css +11 -11
- package/dist/collection/components/menu-settings/menu-settings.js +5 -2
- package/dist/collection/components/menu-settings-item/menu-settings-item.js +2 -1
- package/dist/collection/components/message-bar/message-bar.css +11 -11
- package/dist/collection/components/message-bar/message-bar.js +4 -1
- package/dist/collection/components/modal/modal.js +6 -3
- package/dist/collection/components/modal-content/modal-content.css +11 -11
- package/dist/collection/components/modal-content/modal-content.js +4 -1
- package/dist/collection/components/modal-footer/modal-footer.css +11 -11
- package/dist/collection/components/modal-footer/modal-footer.js +4 -1
- package/dist/collection/components/modal-header/modal-header.css +11 -11
- package/dist/collection/components/modal-header/modal-header.js +4 -1
- package/dist/collection/components/modal-loading/modal-loading.js +1 -1
- package/dist/collection/components/pagination/pagination.css +60 -50
- package/dist/collection/components/pagination/pagination.js +2 -2
- package/dist/collection/components/pane/pane.css +11 -11
- package/dist/collection/components/pane/pane.js +8 -7
- package/dist/collection/components/pane-layout/pane-layout.css +11 -11
- package/dist/collection/components/pane-layout/pane-layout.js +9 -1
- package/dist/collection/components/pill/pill.css +11 -11
- package/dist/collection/components/pill/pill.js +7 -4
- package/dist/collection/components/popover/popover.js +2 -2
- package/dist/collection/components/popover-content/popover-content.css +11 -11
- package/dist/collection/components/popover-content/popover-content.js +2 -2
- package/dist/collection/components/popover-footer/popover-footer.css +11 -11
- package/dist/collection/components/popover-footer/popover-footer.js +2 -2
- package/dist/collection/components/popover-header/popover-header.css +11 -11
- package/dist/collection/components/popover-header/popover-header.js +2 -2
- package/dist/collection/components/popover-image/popover-image.css +11 -11
- package/dist/collection/components/progress-indicator/progress-indicator.js +5 -3
- package/dist/collection/components/push-card/push-card.css +70 -0
- package/dist/collection/components/push-card/push-card.js +5 -1
- package/dist/collection/components/radio/radio.css +11 -11
- package/dist/collection/components/radio/radio.js +4 -3
- package/dist/collection/components/radio-group/radio-group.js +3 -2
- package/dist/collection/components/range-field/range-field.css +11 -11
- package/dist/collection/components/range-field/range-field.js +5 -2
- package/dist/collection/components/row/row.js +4 -1
- package/dist/collection/components/select/select.css +11 -11
- package/dist/collection/components/select/select.js +16 -12
- package/dist/collection/components/select-item/select-item.js +2 -2
- package/dist/collection/components/slider/slider.css +11 -11
- package/dist/collection/components/slider/slider.js +6 -6
- package/dist/collection/components/spinner/spinner.css +55 -55
- package/dist/collection/components/spinner/spinner.js +1 -1
- package/dist/collection/components/split-button/split-button.css +11 -11
- package/dist/collection/components/split-button/split-button.js +4 -1
- package/dist/collection/components/tab-item/tab-item.css +17 -11
- package/dist/collection/components/tab-item/tab-item.js +8 -5
- package/dist/collection/components/tab-panel/tab-panel.css +11 -11
- package/dist/collection/components/tab-panel/tab-panel.js +1 -1
- package/dist/collection/components/tab-set/tab-set.css +11 -11
- package/dist/collection/components/tab-set/tab-set.js +1 -1
- package/dist/collection/components/tabs/tabs.css +11 -11
- package/dist/collection/components/tabs/tabs.js +8 -5
- package/dist/collection/components/tile/tile.css +11 -11
- package/dist/collection/components/tile/tile.js +10 -4
- package/dist/collection/components/time-input/time-input.css +23 -22
- package/dist/collection/components/time-input/time-input.js +3 -3
- package/dist/collection/components/time-picker/time-picker.css +11 -11
- package/dist/collection/components/time-picker/time-picker.js +5 -5
- package/dist/collection/components/toast/toast-container.css +11 -11
- package/dist/collection/components/toast/toast-container.js +5 -2
- package/dist/collection/components/toast/toast.css +11 -11
- package/dist/collection/components/toast/toast.js +6 -2
- package/dist/collection/components/toggle/toggle.css +11 -11
- package/dist/collection/components/toggle/toggle.js +3 -3
- package/dist/collection/components/toggle-button/toggle-button.css +41 -33
- package/dist/collection/components/toggle-button/toggle-button.js +5 -2
- package/dist/collection/components/tooltip/tooltip.js +2 -1
- package/dist/collection/components/tree/tree.js +4 -1
- package/dist/collection/components/tree-item/tree-item.css +11 -11
- package/dist/collection/components/tree-item/tree-item.js +7 -4
- package/dist/collection/components/typography/typography.css +11 -11
- package/dist/collection/components/typography/typography.js +4 -1
- package/dist/collection/components/upload/upload.css +11 -11
- package/dist/collection/components/upload/upload.js +3 -3
- package/dist/collection/components/utils/input/validation.js +58 -3
- package/dist/collection/components/workflow-step/workflow-step.css +11 -11
- package/dist/collection/components/workflow-step/workflow-step.js +7 -3
- package/dist/collection/components/workflow-steps/workflow-steps.css +11 -11
- package/dist/collection/components/workflow-steps/workflow-steps.js +4 -1
- package/dist/esm/chip.types-4ZsT_zIm.js +20 -0
- package/dist/esm/{helper-text-util-D0LEFZuB.js → helper-text-util-sQKO6RPJ.js} +1 -1
- package/dist/esm/{index-DgUGsIlh.js → index-BeX6RWvV.js} +11 -1
- package/dist/esm/index-EBgS4zhE.js +28 -4
- package/dist/esm/index.js +1 -1
- package/dist/esm/{input.fc-CE3kP-L_.js → input.fc-DliqEtCM.js} +1 -1
- package/dist/esm/ix-action-card.entry.js +3 -3
- package/dist/esm/ix-application-header.entry.js +11 -11
- package/dist/esm/ix-application-switch-modal.entry.js +2 -2
- package/dist/esm/ix-application.entry.js +4 -4
- package/dist/esm/ix-avatar_2.entry.js +3 -3
- package/dist/esm/ix-badge.entry.js +714 -0
- package/dist/esm/ix-blind.entry.js +7 -7
- package/dist/esm/ix-breadcrumb-item.entry.js +2 -2
- package/dist/esm/ix-breadcrumb.entry.js +4 -4
- package/dist/esm/ix-button.entry.js +3 -3
- package/dist/esm/ix-card-accordion_2.entry.js +7 -7
- package/dist/esm/ix-card-list.entry.js +63 -10
- package/dist/esm/ix-card_2.entry.js +5 -5
- package/dist/esm/ix-category-filter.entry.js +5 -5
- package/dist/esm/ix-chat-ai-message.entry.js +33 -0
- package/dist/esm/ix-chat-attachment.entry.js +108 -0
- package/dist/esm/ix-chat-input.entry.js +404 -0
- package/dist/esm/ix-chat-user-message.entry.js +64 -0
- package/dist/esm/ix-chat.entry.js +26 -0
- package/dist/esm/ix-checkbox-group.entry.js +3 -3
- package/dist/esm/ix-checkbox.entry.js +5 -5
- package/dist/esm/ix-chip.entry.js +9 -28
- package/dist/esm/ix-col_4.entry.js +12 -12
- package/dist/esm/ix-content-header.entry.js +4 -4
- package/dist/esm/ix-content.entry.js +4 -4
- package/dist/esm/ix-css-grid-item.entry.js +1 -1
- package/dist/esm/ix-css-grid.entry.js +1 -1
- package/dist/esm/ix-custom-field.entry.js +2 -2
- package/dist/esm/ix-date-dropdown.entry.js +7 -7
- package/dist/esm/ix-date-input.entry.js +7 -7
- package/dist/esm/ix-date-picker.entry.js +9 -9
- package/dist/esm/ix-date-time-card.entry.js +3 -3
- package/dist/esm/ix-datetime-input.entry.js +7 -7
- package/dist/esm/ix-datetime-picker.entry.js +4 -4
- package/dist/esm/ix-divider.entry.js +1 -1
- package/dist/esm/ix-dropdown-button.entry.js +6 -6
- package/dist/esm/ix-dropdown-header.entry.js +2 -2
- package/dist/esm/ix-dropdown-quick-actions.entry.js +1 -1
- package/dist/esm/ix-dropdown_2.entry.js +7 -7
- package/dist/esm/ix-empty-state.entry.js +2 -2
- package/dist/esm/ix-event-list-item.entry.js +6 -6
- package/dist/esm/ix-event-list.entry.js +8 -5
- package/dist/esm/ix-expanding-search.entry.js +6 -6
- package/dist/esm/ix-field-label_2.entry.js +7 -7
- package/dist/esm/ix-filter-chip_2.entry.js +6 -6
- package/dist/esm/ix-flip-tile-content.entry.js +1 -1
- package/dist/esm/ix-flip-tile.entry.js +5 -5
- package/dist/esm/ix-group-context-menu_2.entry.js +3 -3
- package/dist/esm/ix-group.entry.js +9 -9
- package/dist/esm/ix-helper-text.entry.js +4 -4
- package/dist/esm/ix-icon-button_2.entry.js +5 -5
- package/dist/esm/ix-icon-toggle-button.entry.js +3 -3
- package/dist/esm/ix-input.entry.js +8 -8
- package/dist/esm/ix-key-value-list.entry.js +1 -1
- package/dist/esm/ix-key-value.entry.js +1 -1
- package/dist/esm/ix-kpi.entry.js +5 -5
- package/dist/esm/ix-layout-auto.entry.js +1 -1
- package/dist/esm/ix-link-button.entry.js +4 -4
- package/dist/esm/ix-menu-about-item.entry.js +1 -1
- package/dist/esm/ix-menu-about-news.entry.js +6 -6
- package/dist/esm/ix-menu-about.entry.js +4 -4
- package/dist/esm/ix-menu-avatar.entry.js +4 -4
- package/dist/esm/ix-menu-category.entry.js +12 -9
- package/dist/esm/ix-menu-expand-icon.entry.js +3 -3
- package/dist/esm/ix-menu-item.entry.js +5 -5
- package/dist/esm/ix-menu-settings-item.entry.js +1 -1
- package/dist/esm/ix-menu-settings.entry.js +4 -4
- package/dist/esm/ix-menu.entry.js +14 -14
- package/dist/esm/ix-message-bar.entry.js +3 -3
- package/dist/esm/ix-modal-content_2.entry.js +5 -5
- package/dist/esm/ix-modal-footer.entry.js +2 -2
- package/dist/esm/ix-modal-loading.entry.js +1 -1
- package/dist/esm/ix-modal.entry.js +3 -3
- package/dist/esm/ix-number-input.entry.js +9 -9
- package/dist/esm/ix-pagination.entry.js +4 -4
- package/dist/esm/ix-pane-layout.entry.js +2 -2
- package/dist/esm/ix-pane.entry.js +9 -9
- package/dist/esm/ix-pill_4.entry.js +20 -20
- package/dist/esm/ix-popover-content.entry.js +2 -2
- package/dist/esm/ix-popover-footer.entry.js +2 -2
- package/dist/esm/ix-popover-header.entry.js +3 -3
- package/dist/esm/ix-popover-image.entry.js +1 -1
- package/dist/esm/ix-popover.entry.js +1 -1
- package/dist/esm/ix-progress-indicator.entry.js +4 -4
- package/dist/esm/ix-push-card.entry.js +2 -2
- package/dist/esm/ix-radio-group.entry.js +3 -3
- package/dist/esm/ix-radio.entry.js +5 -5
- package/dist/esm/ix-range-field.entry.js +4 -4
- package/dist/esm/ix-select.entry.js +17 -14
- package/dist/esm/ix-slider.entry.js +8 -8
- package/dist/esm/ix-split-button.entry.js +3 -3
- package/dist/esm/ix-tab-panel.entry.js +2 -2
- package/dist/esm/ix-textarea.entry.js +5 -5
- package/dist/esm/ix-tile.entry.js +5 -5
- package/dist/esm/ix-time-input.entry.js +7 -7
- package/dist/esm/ix-toast-container.entry.js +3 -3
- package/dist/esm/ix-toast.entry.js +4 -4
- package/dist/esm/ix-toggle-button.entry.js +3 -3
- package/dist/esm/ix-toggle.entry.js +5 -5
- package/dist/esm/ix-tooltip.entry.js +1 -1
- package/dist/esm/ix-tree-item.entry.js +6 -6
- package/dist/esm/ix-tree.entry.js +1 -1
- package/dist/esm/ix-typography.entry.js +2 -2
- package/dist/esm/ix-upload.entry.js +5 -5
- package/dist/esm/ix-workflow-step.entry.js +5 -5
- package/dist/esm/ix-workflow-steps.entry.js +2 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/siemens-ix.js +1 -1
- package/dist/esm/{validation-VVt5EFy0.js → validation-DXpftrw5.js} +59 -4
- package/dist/siemens-ix/index.esm.js +1 -1
- package/dist/siemens-ix/{p-71feb871.entry.js → p-0018f327.entry.js} +1 -1
- package/dist/siemens-ix/p-0329eb6e.entry.js +1 -0
- package/dist/siemens-ix/p-03745110.entry.js +1 -0
- package/dist/siemens-ix/p-0555a6fb.entry.js +1 -0
- package/dist/siemens-ix/{p-2f7b1e1e.entry.js → p-05c35730.entry.js} +1 -1
- package/dist/siemens-ix/p-0b10bb78.entry.js +1 -0
- package/dist/siemens-ix/p-0f2ac675.entry.js +1 -0
- package/dist/siemens-ix/{p-2202ae94.entry.js → p-12bce791.entry.js} +1 -1
- package/dist/siemens-ix/p-14554694.entry.js +1 -0
- package/dist/siemens-ix/p-1afa8fb3.entry.js +1 -0
- package/dist/siemens-ix/p-1bce1c19.entry.js +1 -0
- package/dist/siemens-ix/p-1d06e067.entry.js +1 -0
- package/dist/siemens-ix/{p-b181bf0b.entry.js → p-1fbb010f.entry.js} +1 -1
- package/dist/siemens-ix/p-1fddf959.entry.js +1 -0
- package/dist/siemens-ix/p-207d77b3.entry.js +1 -0
- package/dist/siemens-ix/{p-21b09017.entry.js → p-217dc62a.entry.js} +1 -1
- package/dist/siemens-ix/{p-f8561834.entry.js → p-222d3d93.entry.js} +1 -1
- package/dist/siemens-ix/p-2270cc5d.entry.js +1 -0
- package/dist/siemens-ix/p-29e8126a.entry.js +1 -0
- package/dist/siemens-ix/{p-34f61a28.entry.js → p-2b0ffba0.entry.js} +1 -1
- package/dist/siemens-ix/p-2e780c86.entry.js +1 -0
- package/dist/siemens-ix/p-30008054.entry.js +1 -0
- package/dist/siemens-ix/p-34d5185d.entry.js +1 -0
- package/dist/siemens-ix/p-34f2792e.entry.js +1 -0
- package/dist/siemens-ix/{p-12930fcd.entry.js → p-383e95ad.entry.js} +1 -1
- package/dist/siemens-ix/p-38e0953a.entry.js +1 -0
- package/dist/siemens-ix/p-39079ba7.entry.js +1 -0
- package/dist/siemens-ix/p-3c7a8e8b.entry.js +1 -0
- package/dist/siemens-ix/p-3ca5d3b9.entry.js +1 -0
- package/dist/siemens-ix/{p-646d5219.entry.js → p-4079292f.entry.js} +1 -1
- package/dist/siemens-ix/p-447d52de.entry.js +1 -0
- package/dist/siemens-ix/p-47e2c5a1.entry.js +1 -0
- package/dist/siemens-ix/{p-63491f83.entry.js → p-488b7074.entry.js} +1 -1
- package/dist/siemens-ix/p-49d8b129.entry.js +1 -0
- package/dist/siemens-ix/p-4ZsT_zIm.js +1 -0
- package/dist/siemens-ix/p-4b85292e.entry.js +1 -0
- package/dist/siemens-ix/p-4f02b8dd.entry.js +1 -0
- package/dist/siemens-ix/{p-d830e3d6.entry.js → p-5014b469.entry.js} +1 -1
- package/dist/siemens-ix/p-55a57ce6.entry.js +1 -0
- package/dist/siemens-ix/{p-b534dadd.entry.js → p-55ae6204.entry.js} +1 -1
- package/dist/siemens-ix/p-55e8ad3b.entry.js +1 -0
- package/dist/siemens-ix/p-58c6aa27.entry.js +1 -0
- package/dist/siemens-ix/p-5f48d238.entry.js +1 -0
- package/dist/siemens-ix/p-64432fa0.entry.js +1 -0
- package/dist/siemens-ix/p-66097da1.entry.js +1 -0
- package/dist/siemens-ix/p-66e92cdd.entry.js +1 -0
- package/dist/siemens-ix/p-6c25b44d.entry.js +1 -0
- package/dist/siemens-ix/p-6ebf66b8.entry.js +1 -0
- package/dist/siemens-ix/{p-080147bd.entry.js → p-6ffe8ec7.entry.js} +1 -1
- package/dist/siemens-ix/{p-d80e7d50.entry.js → p-7690a56d.entry.js} +1 -1
- package/dist/siemens-ix/p-7b9d9c0c.entry.js +1 -0
- package/dist/siemens-ix/{p-da2e0f0e.entry.js → p-7bc3af96.entry.js} +1 -1
- package/dist/siemens-ix/p-80d7a07a.entry.js +1 -0
- package/dist/siemens-ix/p-816bcf01.entry.js +1 -0
- package/dist/siemens-ix/{p-81248fd2.entry.js → p-836df58e.entry.js} +1 -1
- package/dist/siemens-ix/p-86ad005e.entry.js +1 -0
- package/dist/siemens-ix/{p-56d2d54c.entry.js → p-884fd236.entry.js} +1 -1
- package/dist/siemens-ix/p-89f6329b.entry.js +1 -0
- package/dist/siemens-ix/p-8a14750f.entry.js +1 -0
- package/dist/siemens-ix/p-8c3e7613.entry.js +1 -0
- package/dist/siemens-ix/p-8df1362f.entry.js +1 -0
- package/dist/siemens-ix/p-9094212f.entry.js +1 -0
- package/{components/p-BbW5EIKF.js → dist/siemens-ix/p-92804589.entry.js} +1 -1
- package/dist/siemens-ix/p-95625e2a.entry.js +1 -0
- package/dist/siemens-ix/p-99b97922.entry.js +1 -0
- package/dist/siemens-ix/p-99df3561.entry.js +1 -0
- package/dist/siemens-ix/p-BeX6RWvV.js +1 -0
- package/dist/siemens-ix/p-S-XikzrL.js +1 -0
- package/dist/siemens-ix/{p-2b9f7512.entry.js → p-a1d79970.entry.js} +1 -1
- package/dist/siemens-ix/{p-bc0f5cbe.entry.js → p-a23edbb6.entry.js} +1 -1
- package/dist/siemens-ix/{p-ee1617da.entry.js → p-a2a3d749.entry.js} +1 -1
- package/dist/siemens-ix/p-a7d695f5.entry.js +1 -0
- package/dist/siemens-ix/p-a87b0328.entry.js +1 -0
- package/dist/siemens-ix/{p-3bc384b7.entry.js → p-a92495b8.entry.js} +1 -1
- package/dist/siemens-ix/{p-9d9fec8c.entry.js → p-abe537f8.entry.js} +1 -1
- package/dist/siemens-ix/p-b299eca3.entry.js +1 -0
- package/dist/siemens-ix/{p-e9b37020.entry.js → p-b3eaf43d.entry.js} +1 -1
- package/dist/siemens-ix/p-b990c3f4.entry.js +1 -0
- package/dist/siemens-ix/p-baf74d39.entry.js +1 -0
- package/dist/siemens-ix/{p-4f0f97dd.entry.js → p-bd2f7002.entry.js} +1 -1
- package/dist/siemens-ix/p-bf75d77b.entry.js +1 -0
- package/dist/siemens-ix/{p-aec23f79.entry.js → p-bf827cb3.entry.js} +1 -1
- package/dist/siemens-ix/p-c1b669ae.entry.js +1 -0
- package/dist/siemens-ix/{p-8d73ddac.entry.js → p-c2d8ec4e.entry.js} +1 -1
- package/dist/siemens-ix/p-c3e44b4a.entry.js +1 -0
- package/dist/siemens-ix/p-c4379966.entry.js +1 -0
- package/dist/siemens-ix/{p-5685a2e6.entry.js → p-c6346987.entry.js} +1 -1
- package/dist/siemens-ix/p-c6987c42.entry.js +1 -0
- package/dist/siemens-ix/{p-d6c906b7.entry.js → p-ca4259c9.entry.js} +1 -1
- package/dist/siemens-ix/{p-b8beb613.entry.js → p-cb43f6e5.entry.js} +1 -1
- package/dist/siemens-ix/p-cc6305ab.entry.js +1 -0
- package/dist/siemens-ix/{p-264e971c.entry.js → p-ccea2ebf.entry.js} +1 -1
- package/dist/siemens-ix/p-cddc43e2.entry.js +1 -0
- package/dist/siemens-ix/{p-21e8ccb6.entry.js → p-cf56ddd5.entry.js} +1 -1
- package/dist/siemens-ix/{p-6f78e0f1.entry.js → p-cfd83faa.entry.js} +1 -1
- package/dist/siemens-ix/p-d0649c07.entry.js +1 -0
- package/dist/siemens-ix/p-d39c4aeb.entry.js +1 -0
- package/dist/siemens-ix/{p-a6a0b240.entry.js → p-d555f28a.entry.js} +1 -1
- package/dist/siemens-ix/p-e4f04831.entry.js +1 -0
- package/dist/siemens-ix/p-e789cd7e.entry.js +1 -0
- package/dist/siemens-ix/p-e7dedba9.entry.js +1 -0
- package/dist/siemens-ix/{p-ff1967de.entry.js → p-ea3b4ad4.entry.js} +1 -1
- package/dist/siemens-ix/p-eba11702.entry.js +1 -0
- package/dist/siemens-ix/p-eda419ea.entry.js +1 -0
- package/dist/siemens-ix/p-f3528209.entry.js +1 -0
- package/dist/siemens-ix/p-f3e24bb0.entry.js +1 -0
- package/dist/siemens-ix/p-f4575603.entry.js +1 -0
- package/dist/siemens-ix/p-f705bb97.entry.js +1 -0
- package/dist/siemens-ix/p-fff1f8b1.entry.js +1 -0
- package/dist/siemens-ix/{p-C518yBiI.js → p-kmPsIcs5.js} +1 -1
- package/{components/p-CAH3dF6j.js → dist/siemens-ix/p-yUgQMMln.js} +1 -1
- package/dist/siemens-ix/siemens-ix.css +11 -11
- package/dist/siemens-ix/siemens-ix.esm.js +1 -1
- package/dist/types/components/action-card/action-card.d.ts +1 -1
- package/dist/types/components/application/application.d.ts +7 -0
- package/dist/types/components/application-header/application-header.d.ts +1 -0
- package/dist/types/components/avatar/avatar.d.ts +3 -0
- package/dist/types/components/badge/badge.d.ts +210 -0
- package/dist/types/components/badge/badge.status-icon.d.ts +21 -0
- package/dist/types/components/badge/badge.types.d.ts +19 -0
- package/dist/types/components/badge/badge.utils.d.ts +10 -0
- package/dist/types/components/badge/test/badge.page.d.ts +67 -0
- package/dist/types/components/blind/blind.d.ts +5 -0
- package/dist/types/components/breadcrumb/breadcrumb.d.ts +3 -0
- package/dist/types/components/breadcrumb-item/breadcrumb-item.d.ts +3 -0
- package/dist/types/components/button/button.d.ts +3 -0
- package/dist/types/components/card/card.d.ts +4 -0
- package/dist/types/components/card-accordion/card-accordion.d.ts +3 -0
- package/dist/types/components/card-content/card-content.d.ts +3 -0
- package/dist/types/components/card-list/card-list.d.ts +7 -1
- package/dist/types/components/card-title/card-title.d.ts +1 -0
- package/dist/types/components/chat/chat.d.ts +11 -0
- package/dist/types/components/chat-ai-message/chat-ai-message.d.ts +14 -0
- package/dist/types/components/chat-attachment/chat-attachment.d.ts +47 -0
- package/dist/types/components/chat-attachment/chat-attachment.types.d.ts +1 -0
- package/dist/types/components/chat-input/chat-input.d.ts +175 -0
- package/dist/types/components/chat-user-message/chat-user-message.d.ts +23 -0
- package/dist/types/components/checkbox/checkbox.d.ts +1 -0
- package/dist/types/components/checkbox-group/checkbox-group.d.ts +1 -0
- package/dist/types/components/chip/chip.d.ts +4 -1
- package/dist/types/components/col/col.d.ts +3 -0
- package/dist/types/components/content/content.d.ts +1 -0
- package/dist/types/components/content-header/content-header.d.ts +1 -1
- package/dist/types/components/css-grid/css-grid-item.d.ts +1 -0
- package/dist/types/components/css-grid/css-grid.d.ts +1 -0
- package/dist/types/components/custom-field/custom-field.d.ts +3 -0
- package/dist/types/components/dropdown/dropdown.d.ts +3 -0
- package/dist/types/components/dropdown-button/dropdown-button.d.ts +4 -0
- package/dist/types/components/dropdown-item/dropdown-item.d.ts +3 -0
- package/dist/types/components/dropdown-quick-actions/dropdown-quick-actions.d.ts +3 -0
- package/dist/types/components/event-list/event-list.d.ts +3 -0
- package/dist/types/components/event-list-item/event-list-item.d.ts +3 -0
- package/dist/types/components/field-label/field-label.d.ts +3 -0
- package/dist/types/components/filter-chip/filter-chip.d.ts +3 -0
- package/dist/types/components/flip-tile/flip-tile.d.ts +5 -0
- package/dist/types/components/flip-tile-content/flip-tile-content.d.ts +3 -0
- package/dist/types/components/group/group-context-menu.d.ts +3 -0
- package/dist/types/components/group/group.d.ts +6 -0
- package/dist/types/components/group-item/group-item.d.ts +3 -0
- package/dist/types/components/key-value-list/key-value-list.d.ts +3 -0
- package/dist/types/components/layout-auto/layout-auto.d.ts +3 -0
- package/dist/types/components/layout-grid/layout-grid.d.ts +3 -0
- package/dist/types/components/link-button/link-button.d.ts +3 -0
- package/dist/types/components/menu/menu.d.ts +8 -0
- package/dist/types/components/menu-about/menu-about.d.ts +3 -0
- package/dist/types/components/menu-about-item/menu-about-item.d.ts +1 -0
- package/dist/types/components/menu-about-news/menu-about-news.d.ts +3 -0
- package/dist/types/components/menu-avatar/menu-avatar.d.ts +3 -0
- package/dist/types/components/menu-category/menu-category.d.ts +4 -1
- package/dist/types/components/menu-item/menu-item.d.ts +1 -1
- package/dist/types/components/menu-settings/menu-settings.d.ts +3 -0
- package/dist/types/components/menu-settings-item/menu-settings-item.d.ts +1 -0
- package/dist/types/components/message-bar/message-bar.d.ts +3 -0
- package/dist/types/components/modal/modal.d.ts +3 -0
- package/dist/types/components/modal-content/modal-content.d.ts +3 -0
- package/dist/types/components/modal-footer/modal-footer.d.ts +3 -0
- package/dist/types/components/modal-header/modal-header.d.ts +3 -0
- package/dist/types/components/pane/pane.d.ts +1 -0
- package/dist/types/components/pane-layout/pane-layout.d.ts +8 -0
- package/dist/types/components/pill/pill.d.ts +3 -0
- package/dist/types/components/popover/popover.d.ts +1 -1
- package/dist/types/components/popover-content/popover-content.d.ts +1 -1
- package/dist/types/components/popover-footer/popover-footer.d.ts +1 -1
- package/dist/types/components/popover-header/popover-header.d.ts +1 -1
- package/dist/types/components/progress-indicator/progress-indicator.d.ts +2 -0
- package/dist/types/components/push-card/push-card.d.ts +4 -0
- package/dist/types/components/radio/radio.d.ts +1 -0
- package/dist/types/components/radio-group/radio-group.d.ts +1 -0
- package/dist/types/components/range-field/range-field.d.ts +3 -0
- package/dist/types/components/row/row.d.ts +3 -0
- package/dist/types/components/select/select.d.ts +1 -0
- package/dist/types/components/split-button/split-button.d.ts +3 -0
- package/dist/types/components/tab-item/tab-item.d.ts +3 -0
- package/dist/types/components/tabs/tabs.d.ts +3 -0
- package/dist/types/components/tile/tile.d.ts +6 -0
- package/dist/types/components/toast/toast-container.d.ts +3 -0
- package/dist/types/components/toast/toast.d.ts +4 -0
- package/dist/types/components/toggle-button/toggle-button.d.ts +3 -0
- package/dist/types/components/tooltip/tooltip.d.ts +1 -0
- package/dist/types/components/tree/tree.d.ts +3 -0
- package/dist/types/components/tree-item/tree-item.d.ts +3 -0
- package/dist/types/components/typography/typography.d.ts +3 -0
- package/dist/types/components/utils/input/validation.d.ts +6 -0
- package/dist/types/components/workflow-step/workflow-step.d.ts +4 -0
- package/dist/types/components/workflow-steps/workflow-steps.d.ts +3 -0
- package/dist/types/components.d.ts +706 -5
- package/dist/types/public-api.d.ts +1 -0
- package/hydrate/index.js +2269 -457
- package/hydrate/index.mjs +2269 -457
- package/package.json +3 -3
- package/scss/mixins/_scrollbar.scss +21 -9
- package/components/p-3VG6z9c3.js +0 -1
- package/components/p-5ntkLbuJ.js +0 -1
- package/components/p-7HGOhDMX.js +0 -1
- package/components/p-B-O0ylt_.js +0 -1
- package/components/p-BDlGgfYh.js +0 -1
- package/components/p-BWH03B1n.js +0 -1
- package/components/p-BWknDysp.js +0 -1
- package/components/p-BtSt9tC5.js +0 -1
- package/components/p-BzFLbXmT.js +0 -1
- package/components/p-C-sZLWci.js +0 -1
- package/components/p-C0WZnIxc.js +0 -1
- package/components/p-C2jvmCOl.js +0 -1
- package/components/p-CDf5TQum.js +0 -1
- package/components/p-CG9cQxRO.js +0 -1
- package/components/p-CJoOEoc-.js +0 -1
- package/components/p-CMtwWb3-.js +0 -1
- package/components/p-CpOGS2e_.js +0 -1
- package/components/p-CrDBjFhu.js +0 -1
- package/components/p-Cy2KAdml.js +0 -1
- package/components/p-DDvuSQX3.js +0 -1
- package/components/p-DHydRnvu.js +0 -1
- package/components/p-DKH7tPDu.js +0 -1
- package/components/p-DM7ma3Eh.js +0 -1
- package/components/p-DiLKm3tq.js +0 -1
- package/components/p-Dwe6tWhq.js +0 -1
- package/components/p-DziPiOL3.js +0 -1
- package/components/p-GmOVROeD.js +0 -1
- package/components/p-ImMb0joA.js +0 -1
- package/components/p-Wr4Qf8LA.js +0 -1
- package/components/p-aUZgVnx5.js +0 -1
- package/components/p-wFiL3dN1.js +0 -1
- package/components/p-zqHenwXl.js +0 -1
- package/components/p-zyYHTdEN.js +0 -1
- package/dist/siemens-ix/p-074c8b24.entry.js +0 -1
- package/dist/siemens-ix/p-0d60bd71.entry.js +0 -1
- package/dist/siemens-ix/p-0eb3a12a.entry.js +0 -1
- package/dist/siemens-ix/p-18cae4df.entry.js +0 -1
- package/dist/siemens-ix/p-1a6b7e92.entry.js +0 -1
- package/dist/siemens-ix/p-2072682b.entry.js +0 -1
- package/dist/siemens-ix/p-247d2e7a.entry.js +0 -1
- package/dist/siemens-ix/p-24c54468.entry.js +0 -1
- package/dist/siemens-ix/p-321a10b6.entry.js +0 -1
- package/dist/siemens-ix/p-35bfaa91.entry.js +0 -1
- package/dist/siemens-ix/p-3854287c.entry.js +0 -1
- package/dist/siemens-ix/p-3bb5600a.entry.js +0 -1
- package/dist/siemens-ix/p-46768472.entry.js +0 -1
- package/dist/siemens-ix/p-46b2b660.entry.js +0 -1
- package/dist/siemens-ix/p-4bc4a175.entry.js +0 -1
- package/dist/siemens-ix/p-52dc064a.entry.js +0 -1
- package/dist/siemens-ix/p-54a22a58.entry.js +0 -1
- package/dist/siemens-ix/p-5ff289c7.entry.js +0 -1
- package/dist/siemens-ix/p-601224bd.entry.js +0 -1
- package/dist/siemens-ix/p-62a7ae9c.entry.js +0 -1
- package/dist/siemens-ix/p-641bc66c.entry.js +0 -1
- package/dist/siemens-ix/p-66b4875e.entry.js +0 -1
- package/dist/siemens-ix/p-705eded9.entry.js +0 -1
- package/dist/siemens-ix/p-710d32a6.entry.js +0 -1
- package/dist/siemens-ix/p-7c120d09.entry.js +0 -1
- package/dist/siemens-ix/p-7e6a5c38.entry.js +0 -1
- package/dist/siemens-ix/p-7fc7c67f.entry.js +0 -1
- package/dist/siemens-ix/p-8164a98b.entry.js +0 -1
- package/dist/siemens-ix/p-83f4cd88.entry.js +0 -1
- package/dist/siemens-ix/p-8900e229.entry.js +0 -1
- package/dist/siemens-ix/p-8969b2f9.entry.js +0 -1
- package/dist/siemens-ix/p-8c2365cc.entry.js +0 -1
- package/dist/siemens-ix/p-8cea823b.entry.js +0 -1
- package/dist/siemens-ix/p-8d05ae35.entry.js +0 -1
- package/dist/siemens-ix/p-90a5cda7.entry.js +0 -1
- package/dist/siemens-ix/p-957b77ec.entry.js +0 -1
- package/dist/siemens-ix/p-9a88ff9c.entry.js +0 -1
- package/dist/siemens-ix/p-DgUGsIlh.js +0 -1
- package/dist/siemens-ix/p-ae07f671.entry.js +0 -1
- package/dist/siemens-ix/p-b13f34d1.entry.js +0 -1
- package/dist/siemens-ix/p-b63d7f36.entry.js +0 -1
- package/dist/siemens-ix/p-b75db823.entry.js +0 -1
- package/dist/siemens-ix/p-b7f2f229.entry.js +0 -1
- package/dist/siemens-ix/p-ba9dcd79.entry.js +0 -1
- package/dist/siemens-ix/p-bc11adcd.entry.js +0 -1
- package/dist/siemens-ix/p-bfb758cb.entry.js +0 -1
- package/dist/siemens-ix/p-c0c6d772.entry.js +0 -1
- package/dist/siemens-ix/p-c0dc5a8e.entry.js +0 -1
- package/dist/siemens-ix/p-c6d63b3c.entry.js +0 -1
- package/dist/siemens-ix/p-c97c218d.entry.js +0 -1
- package/dist/siemens-ix/p-d13c0b78.entry.js +0 -1
- package/dist/siemens-ix/p-d1ab68b3.entry.js +0 -1
- package/dist/siemens-ix/p-d253dadb.entry.js +0 -1
- package/dist/siemens-ix/p-d74baa8a.entry.js +0 -1
- package/dist/siemens-ix/p-d770d8ba.entry.js +0 -1
- package/dist/siemens-ix/p-db105778.entry.js +0 -1
- package/dist/siemens-ix/p-dc16a32d.entry.js +0 -1
- package/dist/siemens-ix/p-de58069d.entry.js +0 -1
- package/dist/siemens-ix/p-e283d7d1.entry.js +0 -1
- package/dist/siemens-ix/p-e5d2a048.entry.js +0 -1
- package/dist/siemens-ix/p-e698e193.entry.js +0 -1
- package/dist/siemens-ix/p-f0d97723.entry.js +0 -1
- package/dist/siemens-ix/p-f1257e08.entry.js +0 -1
- package/dist/siemens-ix/p-f9628912.entry.js +0 -1
- package/dist/siemens-ix/p-fa5c236f.entry.js +0 -1
- package/dist/siemens-ix/p-fb1e66a7.entry.js +0 -1
- package/dist/siemens-ix/p-fdec73d4.entry.js +0 -1
- package/dist/siemens-ix/p-yZFaEeBW.js +0 -1
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { r as registerInstance, h, H as Host } from './index-EBgS4zhE.js';
|
|
2
|
+
|
|
3
|
+
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}`;
|
|
4
|
+
|
|
5
|
+
const ChatAiMessage = class {
|
|
6
|
+
constructor(hostRef) {
|
|
7
|
+
registerInstance(this, hostRef);
|
|
8
|
+
}
|
|
9
|
+
hasActions = false;
|
|
10
|
+
hasSources = false;
|
|
11
|
+
hasAssignedContent(slot) {
|
|
12
|
+
return slot.assignedNodes({ flatten: true }).some((node) => {
|
|
13
|
+
return node.nodeType === 1 || !!node.textContent?.trim();
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
handleActionsSlotChange(event) {
|
|
17
|
+
this.hasActions = this.hasAssignedContent(event.target);
|
|
18
|
+
}
|
|
19
|
+
handleSourcesSlotChange(event) {
|
|
20
|
+
this.hasSources = this.hasAssignedContent(event.target);
|
|
21
|
+
}
|
|
22
|
+
render() {
|
|
23
|
+
const hasMeta = this.hasActions || this.hasSources;
|
|
24
|
+
return (h(Host, { key: '7551fd7bf696992eff30a21efd2c6a1ad6934f05', class: {
|
|
25
|
+
'has-actions': this.hasActions,
|
|
26
|
+
'has-sources': this.hasSources,
|
|
27
|
+
'has-meta': hasMeta,
|
|
28
|
+
} }, h("div", { key: '4ae0ca33bb6f1575d802f081436f9b64cc84a860', class: "message" }, h("slot", { key: 'f9a97d3043c533da53c0a09335a0660ff2fc11ba' })), h("div", { key: '3ea7b4f8a3002c1b70ab6fc3f0038fd3d099a0cc', class: "meta", "aria-hidden": !hasMeta ? 'true' : undefined }, h("div", { key: 'dc13ff30a44ddbde25a9b984ecf534bd99c5f959', class: "actions" }, h("slot", { key: 'e0c8db109a43c9431c9684105b0576a1513f22ce', name: "actions", onSlotchange: (event) => this.handleActionsSlotChange(event) })), h("div", { key: '748966a8345e8dbdf9e4d8c3302577660ba6ec1b', class: "sources" }, h("slot", { key: '0457bbd2d685b6c0fd59251172a8e2fcef82daef', name: "sources", onSlotchange: (event) => this.handleSourcesSlotChange(event) })))));
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
ChatAiMessage.style = chatAiMessageCss();
|
|
32
|
+
|
|
33
|
+
export { ChatAiMessage as ix_chat_ai_message };
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, H as Host } from './index-EBgS4zhE.js';
|
|
2
|
+
import { y as iconTxtDocument, b as iconError } from './index-BeX6RWvV.js';
|
|
3
|
+
|
|
4
|
+
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)}`;
|
|
5
|
+
|
|
6
|
+
const ChatAttachment = class {
|
|
7
|
+
constructor(hostRef) {
|
|
8
|
+
registerInstance(this, hostRef);
|
|
9
|
+
this.attachmentClick = createEvent(this, "attachmentClick", 7);
|
|
10
|
+
this.removeClick = createEvent(this, "removeClick", 7);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Name of the attached file.
|
|
14
|
+
*/
|
|
15
|
+
fileName = '';
|
|
16
|
+
/**
|
|
17
|
+
* Upload status of the attachment.
|
|
18
|
+
*/
|
|
19
|
+
status = 'default';
|
|
20
|
+
/**
|
|
21
|
+
* Icon displayed before the file name.
|
|
22
|
+
*/
|
|
23
|
+
icon = iconTxtDocument;
|
|
24
|
+
/**
|
|
25
|
+
* Hide the remove action.
|
|
26
|
+
*/
|
|
27
|
+
hideRemoveButton = false;
|
|
28
|
+
/**
|
|
29
|
+
* Enable preview interaction for default attachments.
|
|
30
|
+
*/
|
|
31
|
+
previewSupported = false;
|
|
32
|
+
/**
|
|
33
|
+
* Accessible label for the remove action.
|
|
34
|
+
*/
|
|
35
|
+
removeAriaLabel = 'Remove attachment';
|
|
36
|
+
/**
|
|
37
|
+
* Event emitted when the attachment is clicked.
|
|
38
|
+
*/
|
|
39
|
+
attachmentClick;
|
|
40
|
+
/**
|
|
41
|
+
* Event emitted when the remove action is clicked.
|
|
42
|
+
*/
|
|
43
|
+
removeClick;
|
|
44
|
+
canPreview() {
|
|
45
|
+
return this.previewSupported && this.status === 'default';
|
|
46
|
+
}
|
|
47
|
+
splitFileName() {
|
|
48
|
+
const fileName = this.fileName.trim();
|
|
49
|
+
const extensionStart = fileName.lastIndexOf('.');
|
|
50
|
+
if (extensionStart <= 0 || extensionStart === fileName.length - 1) {
|
|
51
|
+
return { name: fileName, extension: '' };
|
|
52
|
+
}
|
|
53
|
+
return {
|
|
54
|
+
name: fileName.slice(0, extensionStart),
|
|
55
|
+
extension: fileName.slice(extensionStart),
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
renderFileName() {
|
|
59
|
+
const { name, extension } = this.splitFileName();
|
|
60
|
+
return (h("span", { class: "file-name", title: this.fileName }, h("span", { class: "file-name__base" }, name || this.fileName), !!extension && h("span", { class: "file-name__extension" }, extension)));
|
|
61
|
+
}
|
|
62
|
+
getChipVariant() {
|
|
63
|
+
if (this.status === 'failed') {
|
|
64
|
+
return 'alarm';
|
|
65
|
+
}
|
|
66
|
+
return 'neutral';
|
|
67
|
+
}
|
|
68
|
+
renderChipContent() {
|
|
69
|
+
if (this.status === 'loading') {
|
|
70
|
+
return (h("span", { class: "status-content" }, h("ix-spinner", { size: "xx-small", variant: "primary" }), h("span", { class: "status-label" }, this.fileName)));
|
|
71
|
+
}
|
|
72
|
+
if (this.status === 'failed') {
|
|
73
|
+
return h("span", { class: "status-label" }, this.fileName);
|
|
74
|
+
}
|
|
75
|
+
return this.renderFileName();
|
|
76
|
+
}
|
|
77
|
+
handleAttachmentClick() {
|
|
78
|
+
if (this.canPreview()) {
|
|
79
|
+
this.attachmentClick.emit();
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
getIcon() {
|
|
83
|
+
if (this.status === 'default') {
|
|
84
|
+
return this.icon;
|
|
85
|
+
}
|
|
86
|
+
if (this.status === 'loading') {
|
|
87
|
+
return undefined;
|
|
88
|
+
}
|
|
89
|
+
if (this.status === 'failed') {
|
|
90
|
+
return iconError;
|
|
91
|
+
}
|
|
92
|
+
return this.icon;
|
|
93
|
+
}
|
|
94
|
+
render() {
|
|
95
|
+
const isFailed = this.status === 'failed';
|
|
96
|
+
const isLoading = this.status === 'loading';
|
|
97
|
+
const canPreview = this.canPreview();
|
|
98
|
+
return (h(Host, { key: '6d228e12a51a06711a97f216a854432e44340590', class: {
|
|
99
|
+
failed: isFailed,
|
|
100
|
+
loading: isLoading,
|
|
101
|
+
'preview-supported': canPreview,
|
|
102
|
+
'has-remove-button': !this.hideRemoveButton,
|
|
103
|
+
} }, 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 }, h("span", { key: '51b3a72b579776c09587b1bd430aceb146e04e49', class: "content" }, this.renderChipContent()))));
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
ChatAttachment.style = chatAttachmentCss();
|
|
107
|
+
|
|
108
|
+
export { ChatAttachment as ix_chat_attachment };
|
|
@@ -0,0 +1,404 @@
|
|
|
1
|
+
import { M as Mixin, r as registerInstance, c as createEvent, g as getElement, h, H as Host } from './index-EBgS4zhE.js';
|
|
2
|
+
import { c as iconWarning, d as iconInfo, z as iconCircleStop, A as iconSendRightFilled } from './index-BeX6RWvV.js';
|
|
3
|
+
import { D as DefaultMixins } from './component-DqJSHc3A.js';
|
|
4
|
+
import { C as ComponentIdMixin } from './id.mixin-CUbYLenp.js';
|
|
5
|
+
import { m as makeRef } from './make-ref-Djkc69iv.js';
|
|
6
|
+
import { c as createMutationObserver } from './mutation-observer-CX81WQtk.js';
|
|
7
|
+
import { r as requestAnimationFrameNoNgZone } from './requestAnimationFrame-BEuV0Xpe.js';
|
|
8
|
+
import './focus-utilities-6ZxKp7Jn.js';
|
|
9
|
+
import './shadow-dom-BClJdFQP.js';
|
|
10
|
+
|
|
11
|
+
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}`;
|
|
12
|
+
|
|
13
|
+
const ChatInput = class extends Mixin(...DefaultMixins, ComponentIdMixin) {
|
|
14
|
+
constructor(hostRef) {
|
|
15
|
+
super();
|
|
16
|
+
registerInstance(this, hostRef);
|
|
17
|
+
this.valueChange = createEvent(this, "valueChange", 7);
|
|
18
|
+
this.ixBlur = createEvent(this, "ixBlur", 7);
|
|
19
|
+
this.ixChange = createEvent(this, "ixChange", 7);
|
|
20
|
+
this.promptSubmit = createEvent(this, "promptSubmit", 7);
|
|
21
|
+
if (hostRef.$hostElement$["s-ei"]) {
|
|
22
|
+
this.formInternals = hostRef.$hostElement$["s-ei"];
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
this.formInternals = hostRef.$hostElement$.attachInternals();
|
|
26
|
+
hostRef.$hostElement$["s-ei"] = this.formInternals;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
get hostElement() { return getElement(this); }
|
|
30
|
+
formInternals;
|
|
31
|
+
/**
|
|
32
|
+
* The state of the chat input, which can be either 'input' or 'processing'.
|
|
33
|
+
*/
|
|
34
|
+
state = 'input';
|
|
35
|
+
/**
|
|
36
|
+
* The name of the chat input.
|
|
37
|
+
*/
|
|
38
|
+
name;
|
|
39
|
+
/**
|
|
40
|
+
* The placeholder text for the chat input.
|
|
41
|
+
*/
|
|
42
|
+
placeholder = 'Enter a command, question or topic...';
|
|
43
|
+
/**
|
|
44
|
+
* The value of the chat input.
|
|
45
|
+
*/
|
|
46
|
+
value = '';
|
|
47
|
+
/**
|
|
48
|
+
* Specifies whether the chat input is disabled.
|
|
49
|
+
*/
|
|
50
|
+
disabled = false;
|
|
51
|
+
/**
|
|
52
|
+
* Specifies whether the chat input is readonly.
|
|
53
|
+
*/
|
|
54
|
+
readonly = false;
|
|
55
|
+
/**
|
|
56
|
+
* Accessible label for the native textarea.
|
|
57
|
+
*/
|
|
58
|
+
textareaLabel = 'Chat input';
|
|
59
|
+
/**
|
|
60
|
+
* The maximum length of the chat input.
|
|
61
|
+
*/
|
|
62
|
+
maxLength;
|
|
63
|
+
/**
|
|
64
|
+
* Character limit used for the optional inline character limit message.
|
|
65
|
+
* Falls back to `maxLength` when not set.
|
|
66
|
+
*/
|
|
67
|
+
characterLimit;
|
|
68
|
+
/**
|
|
69
|
+
* i18n label for the hard character limit message.
|
|
70
|
+
* Use `{current}` and `{limit}` placeholders to place the values in any order.
|
|
71
|
+
*/
|
|
72
|
+
// eslint-disable-next-line @stencil-community/decorators-style
|
|
73
|
+
i18nCharacterLimitReached = 'Character limit reached ({current} / {limit} characters)';
|
|
74
|
+
/**
|
|
75
|
+
* i18n label for the soft character limit warning.
|
|
76
|
+
* Use `{current}` and `{limit}` placeholders to place the values in any order.
|
|
77
|
+
*/
|
|
78
|
+
// eslint-disable-next-line @stencil-community/decorators-style
|
|
79
|
+
i18nCharacterLimitWarning = "You're nearing the limit ({current} / {limit} characters)";
|
|
80
|
+
/**
|
|
81
|
+
* Percentage of the character limit that triggers the soft warning. Define a number between 0 and 1 (e.g. 0.8 for 80%).
|
|
82
|
+
*/
|
|
83
|
+
characterLimitWarningThreshold = 0.9;
|
|
84
|
+
/**
|
|
85
|
+
* Minimum number of visible text rows.
|
|
86
|
+
*/
|
|
87
|
+
minRows = 1;
|
|
88
|
+
/**
|
|
89
|
+
* Maximum number of visible text rows before the input becomes scrollable.
|
|
90
|
+
*/
|
|
91
|
+
maxRows = 6;
|
|
92
|
+
/**
|
|
93
|
+
* If true, pressing Enter inserts a line break instead of submitting the prompt.
|
|
94
|
+
*/
|
|
95
|
+
insertLineBreakOnEnter = false;
|
|
96
|
+
/**
|
|
97
|
+
* Disclaimer text displayed below the chat input.
|
|
98
|
+
*/
|
|
99
|
+
disclaimer = 'This content is AI-generated. Always verify the information for accuracy.';
|
|
100
|
+
/**
|
|
101
|
+
* Event emitted when the value of the chat input changes.
|
|
102
|
+
*/
|
|
103
|
+
valueChange;
|
|
104
|
+
/**
|
|
105
|
+
* Event emitted when the chat input loses focus.
|
|
106
|
+
*/
|
|
107
|
+
ixBlur;
|
|
108
|
+
/**
|
|
109
|
+
* Event emitted when the chat input loses focus and the value has changed.
|
|
110
|
+
*/
|
|
111
|
+
ixChange;
|
|
112
|
+
/**
|
|
113
|
+
* Event emitted when the prompt is submitted by the send button or Enter key.
|
|
114
|
+
*/
|
|
115
|
+
promptSubmit;
|
|
116
|
+
/** @internal */
|
|
117
|
+
initialValue;
|
|
118
|
+
hasAttachments = false;
|
|
119
|
+
hasAttachmentScrollbar = false;
|
|
120
|
+
hasFollowUp = false;
|
|
121
|
+
attachmentsRef = makeRef((attachments) => {
|
|
122
|
+
this.initAttachmentResizeObserver(attachments);
|
|
123
|
+
this.scheduleAttachmentScrollbarUpdate();
|
|
124
|
+
});
|
|
125
|
+
textareaRef = makeRef((textarea) => {
|
|
126
|
+
this.updateTextareaHeight(textarea);
|
|
127
|
+
});
|
|
128
|
+
attachmentResizeObserver;
|
|
129
|
+
attachmentMutationObserver;
|
|
130
|
+
isAttachmentScrollbarUpdateQueued = false;
|
|
131
|
+
componentWillLoad() {
|
|
132
|
+
super.componentWillLoad();
|
|
133
|
+
this.updateFormInternalValue(this.value);
|
|
134
|
+
this.initialValue = this.value;
|
|
135
|
+
this.updateHasFollowUp();
|
|
136
|
+
}
|
|
137
|
+
componentDidLoad() {
|
|
138
|
+
super.componentDidLoad();
|
|
139
|
+
this.updateHasFollowUp();
|
|
140
|
+
this.initAttachmentMutationObserver();
|
|
141
|
+
this.scheduleAttachmentScrollbarUpdate();
|
|
142
|
+
this.updateTextareaHeight();
|
|
143
|
+
}
|
|
144
|
+
componentDidRender() {
|
|
145
|
+
super.componentDidRender();
|
|
146
|
+
this.scheduleAttachmentScrollbarUpdate();
|
|
147
|
+
this.updateTextareaHeight();
|
|
148
|
+
}
|
|
149
|
+
disconnectedCallback() {
|
|
150
|
+
super.disconnectedCallback();
|
|
151
|
+
this.attachmentResizeObserver?.disconnect();
|
|
152
|
+
this.attachmentMutationObserver?.disconnect();
|
|
153
|
+
}
|
|
154
|
+
onValueChange(value) {
|
|
155
|
+
this.formInternals.setFormValue(value);
|
|
156
|
+
this.updateTextareaHeight();
|
|
157
|
+
}
|
|
158
|
+
onRowsChange() {
|
|
159
|
+
this.updateTextareaHeight();
|
|
160
|
+
}
|
|
161
|
+
updateFormInternalValue(value) {
|
|
162
|
+
this.formInternals.setFormValue(value);
|
|
163
|
+
this.value = value;
|
|
164
|
+
}
|
|
165
|
+
/** @internal */
|
|
166
|
+
async getAssociatedFormElement() {
|
|
167
|
+
return this.formInternals.form;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Returns the native textarea element used by the chat input.
|
|
171
|
+
* @since 5.1.0
|
|
172
|
+
*/
|
|
173
|
+
async getNativeInputElement() {
|
|
174
|
+
return this.textareaRef.waitForCurrent();
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Focuses the chat input.
|
|
178
|
+
* @since 5.1.0
|
|
179
|
+
*/
|
|
180
|
+
async focusInput() {
|
|
181
|
+
return (await this.getNativeInputElement()).focus();
|
|
182
|
+
}
|
|
183
|
+
canSubmit() {
|
|
184
|
+
return !this.disabled && !this.readonly && this.value.trim().length > 0;
|
|
185
|
+
}
|
|
186
|
+
emitIxChangeIfNeeded() {
|
|
187
|
+
if (this.initialValue !== this.value) {
|
|
188
|
+
this.ixChange.emit(this.value);
|
|
189
|
+
this.initialValue = this.value;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
submitPrompt() {
|
|
193
|
+
if (!this.canSubmit()) {
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
196
|
+
this.emitIxChangeIfNeeded();
|
|
197
|
+
this.promptSubmit.emit(this.value);
|
|
198
|
+
}
|
|
199
|
+
updateTextareaHeight(textarea = this.textareaRef.current) {
|
|
200
|
+
if (!textarea) {
|
|
201
|
+
return;
|
|
202
|
+
}
|
|
203
|
+
const computedStyle = getComputedStyle(textarea);
|
|
204
|
+
const lineHeight = Number.parseFloat(computedStyle.lineHeight) || 24;
|
|
205
|
+
const minRows = Math.max(this.minRows, 1);
|
|
206
|
+
const maxRows = Math.max(this.maxRows, minRows);
|
|
207
|
+
const borderHeight = textarea.offsetHeight - textarea.clientHeight ||
|
|
208
|
+
Number.parseFloat(computedStyle.borderTopWidth) +
|
|
209
|
+
Number.parseFloat(computedStyle.borderBottomWidth);
|
|
210
|
+
const minHeight = lineHeight * minRows + borderHeight;
|
|
211
|
+
const maxHeight = lineHeight * maxRows + borderHeight;
|
|
212
|
+
textarea.style.height = 'auto';
|
|
213
|
+
textarea.style.minHeight = `${minHeight}px`;
|
|
214
|
+
const nextHeight = Math.min(Math.max(textarea.scrollHeight + borderHeight, minHeight), maxHeight);
|
|
215
|
+
textarea.style.height = `${nextHeight}px`;
|
|
216
|
+
textarea.style.overflowY =
|
|
217
|
+
textarea.scrollHeight + borderHeight > maxHeight ? 'auto' : 'hidden';
|
|
218
|
+
}
|
|
219
|
+
getCharacterLimit() {
|
|
220
|
+
const limit = this.characterLimit ?? this.maxLength;
|
|
221
|
+
return typeof limit === 'number' && Number.isFinite(limit) && limit > 0
|
|
222
|
+
? limit
|
|
223
|
+
: undefined;
|
|
224
|
+
}
|
|
225
|
+
getNormalizedCharacterLimitWarningThreshold() {
|
|
226
|
+
if (!Number.isFinite(this.characterLimitWarningThreshold)) {
|
|
227
|
+
return 0.9;
|
|
228
|
+
}
|
|
229
|
+
return Math.min(Math.max(this.characterLimitWarningThreshold, 0), 1);
|
|
230
|
+
}
|
|
231
|
+
isSoftCharacterLimitWarning() {
|
|
232
|
+
const limit = this.getCharacterLimit();
|
|
233
|
+
if (!limit || this.isCharacterLimitReached()) {
|
|
234
|
+
return false;
|
|
235
|
+
}
|
|
236
|
+
const warningLength = Math.ceil(limit * this.getNormalizedCharacterLimitWarningThreshold());
|
|
237
|
+
return this.value.length >= warningLength;
|
|
238
|
+
}
|
|
239
|
+
isCharacterLimitReached() {
|
|
240
|
+
const limit = this.getCharacterLimit();
|
|
241
|
+
if (!limit) {
|
|
242
|
+
return false;
|
|
243
|
+
}
|
|
244
|
+
return this.value.length >= limit;
|
|
245
|
+
}
|
|
246
|
+
getCharacterLimitMessage() {
|
|
247
|
+
const limit = this.getCharacterLimit();
|
|
248
|
+
const current = this.value.length;
|
|
249
|
+
if (!limit) {
|
|
250
|
+
return undefined;
|
|
251
|
+
}
|
|
252
|
+
if (this.isCharacterLimitReached()) {
|
|
253
|
+
return this.formatCharacterLimitMessage(this.i18nCharacterLimitReached, current, limit);
|
|
254
|
+
}
|
|
255
|
+
if (this.isSoftCharacterLimitWarning()) {
|
|
256
|
+
return this.formatCharacterLimitMessage(this.i18nCharacterLimitWarning, current, limit);
|
|
257
|
+
}
|
|
258
|
+
return undefined;
|
|
259
|
+
}
|
|
260
|
+
formatCharacterLimitMessage(template, current, limit) {
|
|
261
|
+
return template
|
|
262
|
+
.split('{current}')
|
|
263
|
+
.join(String(current))
|
|
264
|
+
.split('{limit}')
|
|
265
|
+
.join(String(limit));
|
|
266
|
+
}
|
|
267
|
+
getCharacterLimitState() {
|
|
268
|
+
if (this.isCharacterLimitReached()) {
|
|
269
|
+
return 'hard';
|
|
270
|
+
}
|
|
271
|
+
if (this.isSoftCharacterLimitWarning()) {
|
|
272
|
+
return 'soft';
|
|
273
|
+
}
|
|
274
|
+
return undefined;
|
|
275
|
+
}
|
|
276
|
+
handleKeyDown(event) {
|
|
277
|
+
if (event.key !== 'Enter' ||
|
|
278
|
+
event.shiftKey ||
|
|
279
|
+
event.altKey ||
|
|
280
|
+
event.ctrlKey ||
|
|
281
|
+
event.metaKey ||
|
|
282
|
+
this.insertLineBreakOnEnter ||
|
|
283
|
+
this.state === 'processing') {
|
|
284
|
+
return;
|
|
285
|
+
}
|
|
286
|
+
event.preventDefault();
|
|
287
|
+
this.submitPrompt();
|
|
288
|
+
}
|
|
289
|
+
renderCharacterLimit() {
|
|
290
|
+
const message = this.getCharacterLimitMessage();
|
|
291
|
+
const state = this.getCharacterLimitState();
|
|
292
|
+
if (!message || !state) {
|
|
293
|
+
return null;
|
|
294
|
+
}
|
|
295
|
+
return (h("ix-typography", { class: {
|
|
296
|
+
'character-limit': true,
|
|
297
|
+
'character-limit--soft': state === 'soft',
|
|
298
|
+
'character-limit--hard': state === 'hard',
|
|
299
|
+
}, textColor: 'std' }, h("ix-icon", { "aria-hidden": "true", name: state === 'hard' ? iconWarning : iconInfo, size: "16" }), message));
|
|
300
|
+
}
|
|
301
|
+
handleAttachmentsSlotChange(event) {
|
|
302
|
+
const slot = event.target;
|
|
303
|
+
this.hasAttachments =
|
|
304
|
+
slot.assignedElements({
|
|
305
|
+
flatten: true,
|
|
306
|
+
}).length > 0;
|
|
307
|
+
this.scheduleAttachmentScrollbarUpdate();
|
|
308
|
+
}
|
|
309
|
+
handleFollowUpSlotChange(event) {
|
|
310
|
+
this.hasFollowUp = this.hasAssignedContent(event.target);
|
|
311
|
+
}
|
|
312
|
+
hasAssignedContent(slot) {
|
|
313
|
+
return slot.assignedNodes({ flatten: true }).some((node) => {
|
|
314
|
+
return node.nodeType === 1 || !!node.textContent?.trim();
|
|
315
|
+
});
|
|
316
|
+
}
|
|
317
|
+
updateHasFollowUp() {
|
|
318
|
+
this.hasFollowUp =
|
|
319
|
+
this.hostElement.querySelectorAll('[slot="follow-up"]').length > 0;
|
|
320
|
+
}
|
|
321
|
+
initAttachmentResizeObserver(attachments) {
|
|
322
|
+
this.attachmentResizeObserver?.disconnect();
|
|
323
|
+
this.attachmentResizeObserver = new ResizeObserver(() => this.scheduleAttachmentScrollbarUpdate());
|
|
324
|
+
this.attachmentResizeObserver.observe(attachments);
|
|
325
|
+
}
|
|
326
|
+
initAttachmentMutationObserver() {
|
|
327
|
+
this.attachmentMutationObserver = createMutationObserver(() => {
|
|
328
|
+
this.updateHasFollowUp();
|
|
329
|
+
this.scheduleAttachmentScrollbarUpdate();
|
|
330
|
+
});
|
|
331
|
+
this.attachmentMutationObserver.observe(this.hostElement, {
|
|
332
|
+
attributes: true,
|
|
333
|
+
childList: true,
|
|
334
|
+
subtree: true,
|
|
335
|
+
});
|
|
336
|
+
}
|
|
337
|
+
scheduleAttachmentScrollbarUpdate() {
|
|
338
|
+
if (this.isAttachmentScrollbarUpdateQueued) {
|
|
339
|
+
return;
|
|
340
|
+
}
|
|
341
|
+
this.isAttachmentScrollbarUpdateQueued = true;
|
|
342
|
+
requestAnimationFrameNoNgZone(() => {
|
|
343
|
+
this.isAttachmentScrollbarUpdateQueued = false;
|
|
344
|
+
this.updateAttachmentScrollbar();
|
|
345
|
+
});
|
|
346
|
+
}
|
|
347
|
+
updateAttachmentScrollbar() {
|
|
348
|
+
const attachments = this.attachmentsRef.current;
|
|
349
|
+
if (!attachments) {
|
|
350
|
+
return;
|
|
351
|
+
}
|
|
352
|
+
const computedStyle = getComputedStyle(attachments);
|
|
353
|
+
const hasHorizontalScrollbar = ['auto', 'scroll'].includes(computedStyle.overflowX) &&
|
|
354
|
+
attachments.scrollWidth - attachments.clientWidth > 1;
|
|
355
|
+
const hasVerticalScrollbar = ['auto', 'scroll'].includes(computedStyle.overflowY) &&
|
|
356
|
+
attachments.scrollHeight - attachments.clientHeight > 1;
|
|
357
|
+
const hasAttachmentScrollbar = this.hasAttachments && (hasHorizontalScrollbar || hasVerticalScrollbar);
|
|
358
|
+
if (this.hasAttachmentScrollbar !== hasAttachmentScrollbar) {
|
|
359
|
+
this.hasAttachmentScrollbar = hasAttachmentScrollbar;
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
render() {
|
|
363
|
+
const isProcessing = this.state === 'processing';
|
|
364
|
+
const disabledSubmitButton = isProcessing || (!this.canSubmit() && this.state === 'input');
|
|
365
|
+
const submitButtonIcon = isProcessing
|
|
366
|
+
? iconCircleStop
|
|
367
|
+
: iconSendRightFilled;
|
|
368
|
+
return (h(Host, { key: '72c1e2139cdf152b32d84a4f8e5292361e63489c', class: {
|
|
369
|
+
disabled: this.disabled,
|
|
370
|
+
readonly: this.readonly,
|
|
371
|
+
'has-follow-up': this.hasFollowUp,
|
|
372
|
+
} }, h("div", { key: '88a8ccbdafceda33f39bc1266f50966af22fa830', class: "follow-up-prompts" }, h("slot", { key: '10cbddca520c0eaed028f05f9d6c14977e8043db', name: "follow-up", onSlotchange: (event) => this.handleFollowUpSlotChange(event) })), h("div", { key: '65235d296b9d6e452332746229300bdb9a766aec', class: "chat-input" }, h("div", { key: '856ae3152ac0c5665e8a83f250cfd7ad53a9d778', ref: this.attachmentsRef, class: {
|
|
373
|
+
attachments: true,
|
|
374
|
+
'attachments--scroll': true,
|
|
375
|
+
'has-attachment-scrollbar': this.hasAttachmentScrollbar,
|
|
376
|
+
'has-attachments': this.hasAttachments,
|
|
377
|
+
} }, h("slot", { key: 'c8c108ef47848cfaee5074c545ff9f9b7000a71d', name: "attachments", onSlotchange: (event) => this.handleAttachmentsSlotChange(event) })), 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: () => {
|
|
378
|
+
this.initialValue = this.value;
|
|
379
|
+
}, onInput: (event) => {
|
|
380
|
+
const textarea = event.target;
|
|
381
|
+
this.updateFormInternalValue(textarea.value);
|
|
382
|
+
this.valueChange.emit(textarea.value);
|
|
383
|
+
this.updateTextareaHeight(textarea);
|
|
384
|
+
}, onKeyDown: (event) => this.handleKeyDown(event), onBlur: () => {
|
|
385
|
+
this.ixBlur.emit();
|
|
386
|
+
this.emitIxChangeIfNeeded();
|
|
387
|
+
} }), this.renderCharacterLimit(), h("div", { key: '64844f6f38de39980e9ac250ea6edfad8599cb61', class: "action-row" }, h("div", { key: 'ae3d9b5bbc4828610f6d3ba27135eb0595325e2f', class: "left-actions" }, h("slot", { key: '36bd038c725a205671fdba70298c39899e7e35ac', name: "start" })), h("div", { key: '5d27e8d2dd186d73c7f2677f73221b5106159a9a', class: "right-actions" }, h("slot", { key: '54757427353728d8462137a645a1cc6c4133ebcc', name: "end" }), 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 && (h("ix-typography", { key: '572264e22f9d76d980299b163a961e2a6bf9deed', class: "disclaimer", format: "body-sm", textColor: "soft" }, this.disclaimer))));
|
|
388
|
+
}
|
|
389
|
+
static get formAssociated() { return true; }
|
|
390
|
+
static get watchers() { return {
|
|
391
|
+
"value": [{
|
|
392
|
+
"onValueChange": 0
|
|
393
|
+
}],
|
|
394
|
+
"minRows": [{
|
|
395
|
+
"onRowsChange": 0
|
|
396
|
+
}],
|
|
397
|
+
"maxRows": [{
|
|
398
|
+
"onRowsChange": 0
|
|
399
|
+
}]
|
|
400
|
+
}; }
|
|
401
|
+
};
|
|
402
|
+
ChatInput.style = chatInputCss();
|
|
403
|
+
|
|
404
|
+
export { ChatInput as ix_chat_input };
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { r as registerInstance, g as getElement, h, H as Host } from './index-EBgS4zhE.js';
|
|
2
|
+
|
|
3
|
+
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}`;
|
|
4
|
+
|
|
5
|
+
const ChatUserMessage = class {
|
|
6
|
+
constructor(hostRef) {
|
|
7
|
+
registerInstance(this, hostRef);
|
|
8
|
+
}
|
|
9
|
+
get hostElement() { return getElement(this); }
|
|
10
|
+
/**
|
|
11
|
+
* Text displayed in the user message bubble.
|
|
12
|
+
*/
|
|
13
|
+
message;
|
|
14
|
+
hasActions = false;
|
|
15
|
+
hasAttachments = false;
|
|
16
|
+
hasMessageContent = false;
|
|
17
|
+
componentWillLoad() {
|
|
18
|
+
this.updateHasMessageContent();
|
|
19
|
+
}
|
|
20
|
+
handleActionsSlotChange(event) {
|
|
21
|
+
const slot = event.target;
|
|
22
|
+
this.hasActions =
|
|
23
|
+
slot.assignedElements({
|
|
24
|
+
flatten: true,
|
|
25
|
+
}).length > 0;
|
|
26
|
+
}
|
|
27
|
+
handleAttachmentsSlotChange(event) {
|
|
28
|
+
const slot = event.target;
|
|
29
|
+
this.hasAttachments =
|
|
30
|
+
slot.assignedElements({
|
|
31
|
+
flatten: true,
|
|
32
|
+
}).length > 0;
|
|
33
|
+
}
|
|
34
|
+
handleMessageSlotChange(event) {
|
|
35
|
+
this.updateHasMessageContent(event.target);
|
|
36
|
+
}
|
|
37
|
+
hasAssignedMessageContent(slot) {
|
|
38
|
+
if (slot) {
|
|
39
|
+
return slot.assignedNodes({ flatten: true }).some((node) => {
|
|
40
|
+
return node.nodeType === 1 || !!node.textContent?.trim();
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
return Array.from(this.hostElement.childNodes).some((node) => {
|
|
44
|
+
if (node.nodeType === 1) {
|
|
45
|
+
return node.slot === '';
|
|
46
|
+
}
|
|
47
|
+
return !!node.textContent?.trim();
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
updateHasMessageContent(slot) {
|
|
51
|
+
this.hasMessageContent = this.hasAssignedMessageContent(slot);
|
|
52
|
+
}
|
|
53
|
+
render() {
|
|
54
|
+
return (h(Host, { key: 'e9376e0015376ada61acab85f71f2e4ecd6352ef', class: {
|
|
55
|
+
'has-actions': this.hasActions,
|
|
56
|
+
'has-attachments': this.hasAttachments,
|
|
57
|
+
}, tabIndex: this.hasActions ? 0 : undefined }, h("div", { key: '89f8e746ec79a7ec1e8489a7ea658055c807e37b', class: "attachments" }, h("slot", { key: '7d8162d206e2fa2f55d14982b78ae97e975f5bf4', name: "attachments", onSlotchange: (event) => this.handleAttachmentsSlotChange(event) })), h("div", { key: '2169c12123fa3e36933274dcdc79a55a87533f29', class: "message" }, h("ix-typography", { key: '8b502f9e39d9eba42cbe39919eb88388d0d4fbac', class: "message-text", format: "body", textColor: "std" }, this.message, h("span", { key: '3d8a626592b4ccdcbb4ad60025b10fba74882e70', style: {
|
|
58
|
+
display: this.hasMessageContent ? undefined : 'none',
|
|
59
|
+
} }, h("slot", { key: '4030806fcddb274fa0dd35dc89367ecf75cf2868', onSlotchange: (event) => this.handleMessageSlotChange(event) })))), h("div", { key: '3f740a55deaaa178d8939730d2553c7b32b1f21d', class: "actions", "aria-hidden": !this.hasActions ? 'true' : undefined }, h("slot", { key: '465edf12f452fe3c88f910e0d657b4c76894878c', name: "actions", onSlotchange: (event) => this.handleActionsSlotChange(event) }))));
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
ChatUserMessage.style = chatUserMessageCss();
|
|
63
|
+
|
|
64
|
+
export { ChatUserMessage as ix_chat_user_message };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { r as registerInstance, h, H as Host } from './index-EBgS4zhE.js';
|
|
2
|
+
|
|
3
|
+
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}`;
|
|
4
|
+
|
|
5
|
+
const Chat = class {
|
|
6
|
+
constructor(hostRef) {
|
|
7
|
+
registerInstance(this, hostRef);
|
|
8
|
+
}
|
|
9
|
+
hasPrompt = false;
|
|
10
|
+
hasAssignedContent(slot) {
|
|
11
|
+
return slot.assignedNodes({ flatten: true }).some((node) => {
|
|
12
|
+
return node.nodeType === 1 || !!node.textContent?.trim();
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
handlePromptSlotChange(event) {
|
|
16
|
+
this.hasPrompt = this.hasAssignedContent(event.target);
|
|
17
|
+
}
|
|
18
|
+
render() {
|
|
19
|
+
return (h(Host, { key: 'b4d659f28fb34320f986c5b046ff794c9b2a0742', class: {
|
|
20
|
+
'has-prompt': this.hasPrompt,
|
|
21
|
+
} }, h("div", { key: '0790bede975ba3cba978ec9425d80195fa380b83', class: "messages", part: "messages" }, h("slot", { key: 'f3a2c8f7e337fb3b93a19098a3f3556377692f7c' })), h("div", { key: '4975b7ed690b957d87307fcde8c8c785883bb2b0', class: "prompt", part: "prompt" }, h("slot", { key: 'd99a7efca4cff53916781d3bb1c089ba63f356c0', name: "prompt", onSlotchange: (event) => this.handlePromptSlotChange(event) }))));
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
Chat.style = chatCss();
|
|
25
|
+
|
|
26
|
+
export { Chat as ix_chat };
|