@aakash58/chatbot 1.1.21 → 1.1.22
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/README.md +22 -298
- package/esm2022/aakash58-chatbot.mjs +5 -0
- package/esm2022/lib/app/chat/chat-ui-state.service.mjs +170 -0
- package/esm2022/lib/app/chat/chat.service.mjs +445 -0
- package/esm2022/lib/app/chat/components/chat-button/chat-button.component.mjs +50 -0
- package/esm2022/lib/app/chat/components/chat-footer/chat-footer.component.mjs +12 -0
- package/esm2022/lib/app/chat/components/chat-header/chat-header.component.mjs +66 -0
- package/esm2022/lib/app/chat/components/chat-history-sidebar/chat-history-sidebar.component.mjs +186 -0
- package/esm2022/lib/app/chat/components/chat-window/chat-window.component.mjs +312 -0
- package/esm2022/lib/app/chat/components/message-input/message-input.component.mjs +36 -0
- package/esm2022/lib/app/chat/components/message-list/message-list.component.mjs +115 -0
- package/esm2022/lib/app/chat/model/chat-history.model.mjs +2 -0
- package/esm2022/lib/app/chat/model/chat-request.model.mjs +2 -0
- package/esm2022/lib/app/chat/model/chat-response.model.mjs +2 -0
- package/esm2022/lib/app/chat/model/chat-session.model.mjs +2 -0
- package/esm2022/lib/app/chat/model/chat-stream-message.model.mjs +2 -0
- package/esm2022/lib/app/chat/model/chat-stream-response.model.mjs +2 -0
- package/esm2022/lib/app/chat/services/chat-api.service.mjs +61 -0
- package/esm2022/lib/app/chat/services/chat-audio.service.mjs +50 -0
- package/esm2022/lib/app/chat/services/chat-history.service.mjs +252 -0
- package/esm2022/lib/app/login/login-form.component.mjs +46 -0
- package/esm2022/lib/app/personalization/personalization-dialog.component.mjs +194 -0
- package/esm2022/lib/app/personalization/personalization.service.mjs +149 -0
- package/esm2022/lib/app/personalization/sections/account/account-section.component.mjs +122 -0
- package/esm2022/lib/app/personalization/sections/preferences/color-picker-dialog.component.mjs +86 -0
- package/esm2022/lib/app/personalization/sections/preferences/preferences-section.component.mjs +115 -0
- package/esm2022/lib/app/personalization/sections/profile/profile-section.component.mjs +29 -0
- package/esm2022/lib/app/personalization/sections/settings/setting-section.component.mjs +30 -0
- package/esm2022/lib/app/personalization/sections/terms/terms-section.component.mjs +12 -0
- package/esm2022/lib/constant/doohbot-constant.mjs +28 -0
- package/esm2022/lib/constant/html-entities.mjs +9 -0
- package/esm2022/lib/constant/utf8.mjs +10 -0
- package/esm2022/lib/core/app-const.mjs +61 -0
- package/esm2022/lib/core/auth/account-api.service.mjs +40 -0
- package/esm2022/lib/core/auth/auth.service.mjs +391 -0
- package/esm2022/lib/core/auth/models/auth-result.model.mjs +3 -0
- package/esm2022/lib/core/auth/models/federated-login-request.model.mjs +6 -0
- package/esm2022/lib/core/auth/models/login-request.model.mjs +6 -0
- package/esm2022/lib/core/auth/storage.service.mjs +110 -0
- package/esm2022/lib/core/directives/draggable/draggable-dialog.directive.mjs +112 -0
- package/esm2022/lib/core/directives/fullscreen/fullscreen.directive.mjs +55 -0
- package/esm2022/lib/core/directives/resizable/resizable-dialog.directive.mjs +179 -0
- package/esm2022/lib/core/environments/environment.mjs +15 -0
- package/esm2022/lib/core/environments/environment.prod.mjs +15 -0
- package/esm2022/lib/core/helpers/crypto-helper.service.mjs +52 -0
- package/esm2022/lib/core/http/http-stream.service.mjs +97 -0
- package/esm2022/lib/core/http/http.service.mjs +103 -0
- package/esm2022/lib/core/interceptors/auth.interceptor.mjs +96 -0
- package/esm2022/lib/core/interceptors/license.interceptor.mjs +44 -0
- package/esm2022/lib/core/models/api-config.model.mjs +18 -0
- package/esm2022/lib/core/models/api-request.model.mjs +2 -0
- package/esm2022/lib/core/models/api-response.model.mjs +8 -0
- package/esm2022/lib/core/models/doohbot-config.model.mjs +18 -0
- package/esm2022/lib/core/models/license.model.mjs +2 -0
- package/esm2022/lib/core/models/message.mjs +2 -0
- package/esm2022/lib/core/models/theme-config.model.mjs +2 -0
- package/esm2022/lib/core/services/core-config.service.mjs +52 -0
- package/esm2022/lib/core/services/license.service.mjs +145 -0
- package/esm2022/lib/core/services/markdown.service.mjs +64 -0
- package/esm2022/lib/core/services/theme.service.mjs +248 -0
- package/esm2022/lib/core/types/auth-mode.type.mjs +2 -0
- package/esm2022/lib/core/types/auth-status.type.mjs +5 -0
- package/esm2022/lib/core/types/chat-stream.type.mjs +2 -0
- package/esm2022/lib/core/types/message-role.type.mjs +2 -0
- package/esm2022/lib/core/types/prompt-mode.type.mjs +5 -0
- package/esm2022/lib/core/types/snackbar-error.type.mjs +5 -0
- package/esm2022/lib/core/types/tenant-resolution-strategy.type.mjs +2 -0
- package/esm2022/lib/core/utils/logger.service.mjs +42 -0
- package/esm2022/lib/doohbot-input.mjs +20 -0
- package/esm2022/lib/doohbot.component.mjs +444 -0
- package/esm2022/lib/predefined_messages.mjs +15 -0
- package/esm2022/lib/shared/chips/chips.component.mjs +28 -0
- package/esm2022/lib/shared/dialog/dialog.component.mjs +36 -0
- package/esm2022/lib/shared/dialog/dialog.service.mjs +64 -0
- package/esm2022/lib/shared/dialog/dialog.utils.mjs +85 -0
- package/esm2022/lib/shared/dropdown-menu/dropdown-menu.component.mjs +29 -0
- package/esm2022/lib/shared/input-dialog/input-dialog.component.mjs +38 -0
- package/esm2022/lib/shared/menu-item/menu-item.component.mjs +24 -0
- package/esm2022/lib/shared/pipes/simple-markdown.pipe.mjs +27 -0
- package/esm2022/lib/shared/snackbar/snackbar.component.mjs +43 -0
- package/esm2022/lib/shared/snackbar/snackbar.service.mjs +46 -0
- package/esm2022/lib/shared/snackbar/snackbar.utils.mjs +43 -0
- package/esm2022/public-api.mjs +37 -0
- package/fesm2022/aakash58-chatbot.mjs +5193 -0
- package/fesm2022/aakash58-chatbot.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/app/chat/chat-ui-state.service.d.ts +96 -0
- package/lib/app/chat/chat.service.d.ts +88 -0
- package/lib/app/chat/components/chat-button/chat-button.component.d.ts +16 -0
- package/lib/app/chat/components/chat-footer/chat-footer.component.d.ts +5 -0
- package/lib/app/chat/components/chat-header/chat-header.component.d.ts +24 -0
- package/lib/app/chat/components/chat-history-sidebar/chat-history-sidebar.component.d.ts +49 -0
- package/lib/app/chat/components/chat-window/chat-window.component.d.ts +107 -0
- package/lib/app/chat/components/message-input/message-input.component.d.ts +12 -0
- package/lib/app/chat/components/message-list/message-list.component.d.ts +40 -0
- package/lib/app/chat/model/chat-history.model.d.ts +51 -0
- package/lib/app/chat/model/chat-request.model.d.ts +10 -0
- package/lib/app/chat/model/chat-response.model.d.ts +9 -0
- package/lib/app/chat/model/chat-session.model.d.ts +12 -0
- package/{projects/doohbot/src/lib/app/chat/model/chat-stream-message.model.ts → lib/app/chat/model/chat-stream-message.model.d.ts} +5 -6
- package/lib/app/chat/model/chat-stream-response.model.d.ts +10 -0
- package/lib/app/chat/services/chat-api.service.d.ts +30 -0
- package/lib/app/chat/services/chat-audio.service.d.ts +19 -0
- package/lib/app/chat/services/chat-history.service.d.ts +53 -0
- package/lib/app/login/login-form.component.d.ts +20 -0
- package/lib/app/personalization/personalization-dialog.component.d.ts +53 -0
- package/lib/app/personalization/personalization.service.d.ts +66 -0
- package/lib/app/personalization/sections/account/account-section.component.d.ts +30 -0
- package/lib/app/personalization/sections/preferences/color-picker-dialog.component.d.ts +17 -0
- package/lib/app/personalization/sections/preferences/preferences-section.component.d.ts +27 -0
- package/lib/app/personalization/sections/profile/profile-section.component.d.ts +17 -0
- package/lib/app/personalization/sections/settings/setting-section.component.d.ts +10 -0
- package/lib/app/personalization/sections/terms/terms-section.component.d.ts +5 -0
- package/lib/constant/doohbot-constant.d.ts +12 -0
- package/lib/constant/html-entities.d.ts +8 -0
- package/lib/constant/utf8.d.ts +9 -0
- package/lib/core/app-const.d.ts +11 -0
- package/lib/core/auth/account-api.service.d.ts +20 -0
- package/lib/core/auth/auth.service.d.ts +90 -0
- package/lib/core/auth/models/auth-result.model.d.ts +4 -0
- package/lib/core/auth/models/federated-login-request.model.d.ts +5 -0
- package/lib/core/auth/models/login-request.model.d.ts +6 -0
- package/lib/core/auth/storage.service.d.ts +21 -0
- package/lib/core/directives/draggable/draggable-dialog.directive.d.ts +23 -0
- package/lib/core/directives/fullscreen/fullscreen.directive.d.ts +14 -0
- package/lib/core/directives/resizable/resizable-dialog.directive.d.ts +30 -0
- package/lib/core/environments/environment.d.ts +7 -0
- package/lib/core/environments/environment.prod.d.ts +7 -0
- package/lib/core/helpers/crypto-helper.service.d.ts +12 -0
- package/lib/core/http/http-stream.service.d.ts +18 -0
- package/lib/core/http/http.service.d.ts +20 -0
- package/lib/core/interceptors/auth.interceptor.d.ts +18 -0
- package/lib/core/interceptors/license.interceptor.d.ts +11 -0
- package/lib/core/models/api-config.model.d.ts +58 -0
- package/lib/core/models/api-request.model.d.ts +77 -0
- package/lib/core/models/api-response.model.d.ts +6 -0
- package/lib/core/models/doohbot-config.model.d.ts +81 -0
- package/{projects/doohbot/src/lib/core/models/license.model.ts → lib/core/models/license.model.d.ts} +23 -27
- package/lib/core/models/message.d.ts +16 -0
- package/lib/core/models/theme-config.model.d.ts +28 -0
- package/lib/core/services/core-config.service.d.ts +23 -0
- package/lib/core/services/license.service.d.ts +33 -0
- package/lib/core/services/markdown.service.d.ts +8 -0
- package/lib/core/services/theme.service.d.ts +40 -0
- package/{projects/doohbot/src/lib/core/types/auth-mode.type.ts → lib/core/types/auth-mode.type.d.ts} +4 -4
- package/{projects/doohbot/src/lib/core/types/auth-status.type.ts → lib/core/types/auth-status.type.d.ts} +4 -5
- package/{projects/doohbot/src/lib/core/types/chat-stream.type.ts → lib/core/types/chat-stream.type.d.ts} +4 -4
- package/{projects/doohbot/src/lib/core/types/message-role.type.ts → lib/core/types/message-role.type.d.ts} +4 -4
- package/{projects/doohbot/src/lib/core/types/prompt-mode.type.ts → lib/core/types/prompt-mode.type.d.ts} +4 -5
- package/{projects/doohbot/src/lib/core/types/snackbar-error.type.ts → lib/core/types/snackbar-error.type.d.ts} +4 -5
- package/{projects/doohbot/src/lib/core/types/tenant-resolution-strategy.type.ts → lib/core/types/tenant-resolution-strategy.type.d.ts} +4 -4
- package/lib/core/utils/logger.service.d.ts +11 -0
- package/lib/doohbot-input.d.ts +19 -0
- package/lib/doohbot.component.d.ts +108 -0
- package/lib/predefined_messages.d.ts +2 -0
- package/lib/shared/chips/chips.component.d.ts +10 -0
- package/lib/shared/dialog/dialog.component.d.ts +19 -0
- package/lib/shared/dialog/dialog.service.d.ts +29 -0
- package/lib/shared/dialog/dialog.utils.d.ts +41 -0
- package/lib/shared/dropdown-menu/dropdown-menu.component.d.ts +11 -0
- package/lib/shared/input-dialog/input-dialog.component.d.ts +20 -0
- package/lib/shared/menu-item/menu-item.component.d.ts +9 -0
- package/lib/shared/pipes/simple-markdown.pipe.d.ts +10 -0
- package/lib/shared/snackbar/snackbar.component.d.ts +14 -0
- package/lib/shared/snackbar/snackbar.service.d.ts +19 -0
- package/{projects/doohbot/src/lib/shared/snackbar/snackbar.utils.ts → lib/shared/snackbar/snackbar.utils.d.ts} +33 -49
- package/package.json +29 -75
- package/public-api.d.ts +11 -0
- package/.editorconfig +0 -17
- package/.vscode/extensions.json +0 -4
- package/.vscode/launch.json +0 -41
- package/.vscode/settings.json +0 -14
- package/.vscode/tasks.json +0 -60
- package/angular.json +0 -132
- package/docs/PUBLISHING_GUIDE.md +0 -104
- package/projects/app-doohbot/public/assets/const/app-const.json +0 -15
- package/projects/app-doohbot/public/assets/const/doohclick_license.json +0 -6
- package/projects/app-doohbot/public/favicon.ico +0 -0
- package/projects/app-doohbot/src/app/app.config.ts +0 -13
- package/projects/app-doohbot/src/app/app.html +0 -31
- package/projects/app-doohbot/src/app/app.routes.ts +0 -3
- package/projects/app-doohbot/src/app/app.scss +0 -279
- package/projects/app-doohbot/src/app/app.spec.ts +0 -23
- package/projects/app-doohbot/src/app/app.ts +0 -72
- package/projects/app-doohbot/src/index.html +0 -15
- package/projects/app-doohbot/src/main.ts +0 -6
- package/projects/app-doohbot/src/styles.scss +0 -15
- package/projects/app-doohbot/tsconfig.app.json +0 -15
- package/projects/app-doohbot/tsconfig.spec.json +0 -14
- package/projects/doohbot/README.md +0 -64
- package/projects/doohbot/docs/README.md +0 -140
- package/projects/doohbot/ng-package.json +0 -10
- package/projects/doohbot/package.json +0 -16
- package/projects/doohbot/src/lib/app/chat/chat-ui-state.service.ts +0 -194
- package/projects/doohbot/src/lib/app/chat/chat.service.ts +0 -547
- package/projects/doohbot/src/lib/app/chat/components/chat-button/chat-button.component.html +0 -27
- package/projects/doohbot/src/lib/app/chat/components/chat-button/chat-button.component.scss +0 -115
- package/projects/doohbot/src/lib/app/chat/components/chat-button/chat-button.component.ts +0 -35
- package/projects/doohbot/src/lib/app/chat/components/chat-footer/chat-footer.component.html +0 -3
- package/projects/doohbot/src/lib/app/chat/components/chat-footer/chat-footer.component.scss +0 -20
- package/projects/doohbot/src/lib/app/chat/components/chat-footer/chat-footer.component.ts +0 -12
- package/projects/doohbot/src/lib/app/chat/components/chat-header/chat-header.component.html +0 -34
- package/projects/doohbot/src/lib/app/chat/components/chat-header/chat-header.component.scss +0 -78
- package/projects/doohbot/src/lib/app/chat/components/chat-header/chat-header.component.ts +0 -52
- package/projects/doohbot/src/lib/app/chat/components/chat-history-sidebar/chat-history-sidebar.component.html +0 -77
- package/projects/doohbot/src/lib/app/chat/components/chat-history-sidebar/chat-history-sidebar.component.scss +0 -346
- package/projects/doohbot/src/lib/app/chat/components/chat-history-sidebar/chat-history-sidebar.component.ts +0 -188
- package/projects/doohbot/src/lib/app/chat/components/chat-window/chat-window.component.html +0 -146
- package/projects/doohbot/src/lib/app/chat/components/chat-window/chat-window.component.scss +0 -187
- package/projects/doohbot/src/lib/app/chat/components/chat-window/chat-window.component.ts +0 -256
- package/projects/doohbot/src/lib/app/chat/components/message-input/message-input.component.html +0 -17
- package/projects/doohbot/src/lib/app/chat/components/message-input/message-input.component.scss +0 -59
- package/projects/doohbot/src/lib/app/chat/components/message-input/message-input.component.ts +0 -28
- package/projects/doohbot/src/lib/app/chat/components/message-list/message-list.component.html +0 -138
- package/projects/doohbot/src/lib/app/chat/components/message-list/message-list.component.scss +0 -436
- package/projects/doohbot/src/lib/app/chat/components/message-list/message-list.component.ts +0 -106
- package/projects/doohbot/src/lib/app/chat/model/chat-history.model.ts +0 -57
- package/projects/doohbot/src/lib/app/chat/model/chat-request.model.ts +0 -17
- package/projects/doohbot/src/lib/app/chat/model/chat-response.model.ts +0 -9
- package/projects/doohbot/src/lib/app/chat/model/chat-session.model.ts +0 -14
- package/projects/doohbot/src/lib/app/chat/model/chat-stream-response.model.ts +0 -12
- package/projects/doohbot/src/lib/app/chat/services/chat-api.service.ts +0 -82
- package/projects/doohbot/src/lib/app/chat/services/chat-audio.service.ts +0 -44
- package/projects/doohbot/src/lib/app/chat/services/chat-history.service.ts +0 -303
- package/projects/doohbot/src/lib/app/login/login-form.component.html +0 -80
- package/projects/doohbot/src/lib/app/login/login-form.component.scss +0 -189
- package/projects/doohbot/src/lib/app/login/login-form.component.ts +0 -45
- package/projects/doohbot/src/lib/app/personalization/personalization-dialog.component.html +0 -81
- package/projects/doohbot/src/lib/app/personalization/personalization-dialog.component.scss +0 -179
- package/projects/doohbot/src/lib/app/personalization/personalization-dialog.component.ts +0 -217
- package/projects/doohbot/src/lib/app/personalization/personalization.service.ts +0 -197
- package/projects/doohbot/src/lib/app/personalization/sections/account/account-section.component.html +0 -111
- package/projects/doohbot/src/lib/app/personalization/sections/account/account-section.component.scss +0 -218
- package/projects/doohbot/src/lib/app/personalization/sections/account/account-section.component.ts +0 -121
- package/projects/doohbot/src/lib/app/personalization/sections/instructions/instructions-section.component.html +0 -46
- package/projects/doohbot/src/lib/app/personalization/sections/instructions/instructions-section.component.scss +0 -138
- package/projects/doohbot/src/lib/app/personalization/sections/instructions/instructions-section.component.ts +0 -28
- package/projects/doohbot/src/lib/app/personalization/sections/preferences/color-picker-dialog.component.ts +0 -92
- package/projects/doohbot/src/lib/app/personalization/sections/preferences/preferences-section.component.html +0 -198
- package/projects/doohbot/src/lib/app/personalization/sections/preferences/preferences-section.component.scss +0 -107
- package/projects/doohbot/src/lib/app/personalization/sections/preferences/preferences-section.component.ts +0 -103
- package/projects/doohbot/src/lib/app/personalization/sections/profile/profile-section.component.html +0 -46
- package/projects/doohbot/src/lib/app/personalization/sections/profile/profile-section.component.scss +0 -131
- package/projects/doohbot/src/lib/app/personalization/sections/profile/profile-section.component.ts +0 -23
- package/projects/doohbot/src/lib/app/personalization/sections/settings/setting-section.component.html +0 -33
- package/projects/doohbot/src/lib/app/personalization/sections/settings/setting-section.component.scss +0 -61
- package/projects/doohbot/src/lib/app/personalization/sections/settings/setting-section.component.ts +0 -20
- package/projects/doohbot/src/lib/app/personalization/sections/terms/terms-section.component.html +0 -30
- package/projects/doohbot/src/lib/app/personalization/sections/terms/terms-section.component.scss +0 -59
- package/projects/doohbot/src/lib/app/personalization/sections/terms/terms-section.component.ts +0 -12
- package/projects/doohbot/src/lib/constant/doohbot-constant.ts +0 -40
- package/projects/doohbot/src/lib/constant/html-entities.ts +0 -8
- package/projects/doohbot/src/lib/constant/utf8.ts +0 -9
- package/projects/doohbot/src/lib/core/app-const.ts +0 -63
- package/projects/doohbot/src/lib/core/auth/account-api.service.ts +0 -53
- package/projects/doohbot/src/lib/core/auth/auth.service.ts +0 -478
- package/projects/doohbot/src/lib/core/auth/models/auth-result.model.ts +0 -4
- package/projects/doohbot/src/lib/core/auth/models/federated-login-request.model.ts +0 -5
- package/projects/doohbot/src/lib/core/auth/models/login-request.model.ts +0 -6
- package/projects/doohbot/src/lib/core/auth/storage.service.ts +0 -113
- package/projects/doohbot/src/lib/core/directives/draggable/draggable-dialog.directive.ts +0 -123
- package/projects/doohbot/src/lib/core/directives/draggable/draggable-dialog.module.ts +0 -9
- package/projects/doohbot/src/lib/core/directives/fullscreen/fullscreen.directive.ts +0 -58
- package/projects/doohbot/src/lib/core/directives/fullscreen/fullscreen.module.ts +0 -9
- package/projects/doohbot/src/lib/core/directives/popout/popout.directive.ts +0 -169
- package/projects/doohbot/src/lib/core/directives/popout/popout.module.ts +0 -9
- package/projects/doohbot/src/lib/core/directives/resizable/resizable-dialog.directive.ts +0 -197
- package/projects/doohbot/src/lib/core/directives/resizable/resizable-dialog.module.ts +0 -9
- package/projects/doohbot/src/lib/core/enums/api-request-state.enum.ts +0 -9
- package/projects/doohbot/src/lib/core/environments/environment.prod.ts +0 -14
- package/projects/doohbot/src/lib/core/environments/environment.ts +0 -14
- package/projects/doohbot/src/lib/core/helpers/crypto-helper.service.ts +0 -72
- package/projects/doohbot/src/lib/core/http/http-stream.service.ts +0 -105
- package/projects/doohbot/src/lib/core/http/http.service.ts +0 -148
- package/projects/doohbot/src/lib/core/interceptors/auth.interceptor.ts +0 -118
- package/projects/doohbot/src/lib/core/interceptors/license.interceptor.ts +0 -50
- package/projects/doohbot/src/lib/core/models/api-config.model.ts +0 -82
- package/projects/doohbot/src/lib/core/models/api-request.model.ts +0 -92
- package/projects/doohbot/src/lib/core/models/api-response.model.ts +0 -13
- package/projects/doohbot/src/lib/core/models/doohbot-config.model.ts +0 -109
- package/projects/doohbot/src/lib/core/models/message.ts +0 -18
- package/projects/doohbot/src/lib/core/models/theme-config.model.ts +0 -48
- package/projects/doohbot/src/lib/core/services/core-config.service.ts +0 -53
- package/projects/doohbot/src/lib/core/services/doohbot-api.service.ts +0 -207
- package/projects/doohbot/src/lib/core/services/license.service.ts +0 -171
- package/projects/doohbot/src/lib/core/services/markdown.service.ts +0 -73
- package/projects/doohbot/src/lib/core/services/theme.service.ts +0 -305
- package/projects/doohbot/src/lib/core/utils/error-handler.util.ts +0 -31
- package/projects/doohbot/src/lib/core/utils/logger.service.ts +0 -45
- package/projects/doohbot/src/lib/doohbot-input.ts +0 -19
- package/projects/doohbot/src/lib/doohbot.component.html +0 -34
- package/projects/doohbot/src/lib/doohbot.component.scss +0 -17
- package/projects/doohbot/src/lib/doohbot.component.spec.ts +0 -31
- package/projects/doohbot/src/lib/doohbot.component.ts +0 -545
- package/projects/doohbot/src/lib/elements.ts +0 -25
- package/projects/doohbot/src/lib/predefined_messages.ts +0 -14
- package/projects/doohbot/src/lib/shared/chips/chips.component.html +0 -9
- package/projects/doohbot/src/lib/shared/chips/chips.component.scss +0 -29
- package/projects/doohbot/src/lib/shared/chips/chips.component.spec.ts +0 -22
- package/projects/doohbot/src/lib/shared/chips/chips.component.ts +0 -20
- package/projects/doohbot/src/lib/shared/dialog/dialog.component.html +0 -29
- package/projects/doohbot/src/lib/shared/dialog/dialog.component.scss +0 -100
- package/projects/doohbot/src/lib/shared/dialog/dialog.component.ts +0 -42
- package/projects/doohbot/src/lib/shared/dialog/dialog.service.ts +0 -62
- package/projects/doohbot/src/lib/shared/dialog/dialog.utils.ts +0 -102
- package/projects/doohbot/src/lib/shared/dropdown-menu/dropdown-menu.component.html +0 -30
- package/projects/doohbot/src/lib/shared/dropdown-menu/dropdown-menu.component.scss +0 -53
- package/projects/doohbot/src/lib/shared/dropdown-menu/dropdown-menu.component.spec.ts +0 -22
- package/projects/doohbot/src/lib/shared/dropdown-menu/dropdown-menu.component.ts +0 -35
- package/projects/doohbot/src/lib/shared/input-dialog/input-dialog.component.html +0 -16
- package/projects/doohbot/src/lib/shared/input-dialog/input-dialog.component.scss +0 -45
- package/projects/doohbot/src/lib/shared/input-dialog/input-dialog.component.ts +0 -46
- package/projects/doohbot/src/lib/shared/menu-item/menu-item.component.html +0 -5
- package/projects/doohbot/src/lib/shared/menu-item/menu-item.component.scss +0 -0
- package/projects/doohbot/src/lib/shared/menu-item/menu-item.component.spec.ts +0 -22
- package/projects/doohbot/src/lib/shared/menu-item/menu-item.component.ts +0 -20
- package/projects/doohbot/src/lib/shared/pipes/simple-markdown.pipe.ts +0 -19
- package/projects/doohbot/src/lib/shared/popout/popout.html +0 -1
- package/projects/doohbot/src/lib/shared/popout/popout.scss +0 -0
- package/projects/doohbot/src/lib/shared/popout/popout.spec.ts +0 -23
- package/projects/doohbot/src/lib/shared/popout/popout.ts +0 -11
- package/projects/doohbot/src/lib/shared/snackbar/snackbar.component.html +0 -7
- package/projects/doohbot/src/lib/shared/snackbar/snackbar.component.scss +0 -125
- package/projects/doohbot/src/lib/shared/snackbar/snackbar.component.spec.ts +0 -21
- package/projects/doohbot/src/lib/shared/snackbar/snackbar.component.ts +0 -44
- package/projects/doohbot/src/lib/shared/snackbar/snackbar.service.ts +0 -54
- package/projects/doohbot/src/lib/styles/_theme.scss +0 -132
- package/projects/doohbot/src/lib/styles/material-override.scss +0 -302
- package/projects/doohbot/src/lib/styles/utility.scss +0 -588
- package/projects/doohbot/src/public-api.ts +0 -42
- package/projects/doohbot/tsconfig.lib.json +0 -15
- package/projects/doohbot/tsconfig.lib.prod.json +0 -11
- package/projects/doohbot/tsconfig.spec.json +0 -10
- package/proxy.conf.json +0 -8
- package/publish.config.js +0 -25
- package/scripts/publishing/index.ts +0 -67
- package/scripts/publishing/pipeline/01-clean.ts +0 -11
- package/scripts/publishing/pipeline/02-validate-pre.ts +0 -8
- package/scripts/publishing/pipeline/03-build.ts +0 -7
- package/scripts/publishing/pipeline/04-validate-post.ts +0 -8
- package/scripts/publishing/pipeline/05-prepare-package.ts +0 -29
- package/scripts/publishing/pipeline/06-version.ts +0 -23
- package/scripts/publishing/pipeline/07-publish.ts +0 -14
- package/scripts/publishing/pipeline/08-cleanup.ts +0 -5
- package/scripts/publishing/types.ts +0 -36
- package/scripts/publishing/utils/command.ts +0 -15
- package/scripts/publishing/utils/config.ts +0 -17
- package/scripts/validate.ts +0 -166
- package/tsconfig.json +0 -45
- package/tsconfig.scripts.json +0 -15
- /package/{projects/doohbot/src → src}/assets/bot.mp3 +0 -0
package/index.d.ts
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { Signal } from '@angular/core';
|
|
2
|
+
import { Message } from '../../core/models/message';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* ChatUIStateService - Centralized UI state management
|
|
6
|
+
*
|
|
7
|
+
* Manages all UI-related state for the chat component including:
|
|
8
|
+
* - Chat window open/close state
|
|
9
|
+
* - History sidebar visibility
|
|
10
|
+
* - Unread message tracking
|
|
11
|
+
* - Fullscreen state
|
|
12
|
+
*
|
|
13
|
+
* This service uses Angular signals for reactive state management,
|
|
14
|
+
* allowing components to subscribe to state changes efficiently.
|
|
15
|
+
*/
|
|
16
|
+
export declare class ChatUIStateService {
|
|
17
|
+
/**
|
|
18
|
+
* Whether the chat window is currently open
|
|
19
|
+
*/
|
|
20
|
+
isChatOpen: import("@angular/core").WritableSignal<boolean>;
|
|
21
|
+
/**
|
|
22
|
+
* Whether the history sidebar is currently open
|
|
23
|
+
*/
|
|
24
|
+
isHistorySidebarOpen: import("@angular/core").WritableSignal<boolean>;
|
|
25
|
+
/**
|
|
26
|
+
* Whether the chat is in fullscreen mode
|
|
27
|
+
*/
|
|
28
|
+
isFullScreen: import("@angular/core").WritableSignal<boolean>;
|
|
29
|
+
/**
|
|
30
|
+
* ID of the last message that was read by the user
|
|
31
|
+
*/
|
|
32
|
+
private lastReadMessageId;
|
|
33
|
+
/**
|
|
34
|
+
* Reference to current messages (injected from outside)
|
|
35
|
+
*/
|
|
36
|
+
private messagesSignal;
|
|
37
|
+
/**
|
|
38
|
+
* Computed number of unread bot messages
|
|
39
|
+
*/
|
|
40
|
+
unreadCount: Signal<number>;
|
|
41
|
+
/**
|
|
42
|
+
* Effect to automatically mark messages as read when chat is opened
|
|
43
|
+
*/
|
|
44
|
+
markAsReadEffect: import("@angular/core").EffectRef;
|
|
45
|
+
/**
|
|
46
|
+
* Set the messages signal reference from an external source
|
|
47
|
+
* This allows the UI state service to track messages from MessageService
|
|
48
|
+
*/
|
|
49
|
+
setMessagesSignal(messagesSignal: Signal<Message[]>): void;
|
|
50
|
+
/**
|
|
51
|
+
* Toggle the chat window open/close state
|
|
52
|
+
*/
|
|
53
|
+
toggleChat(): void;
|
|
54
|
+
/**
|
|
55
|
+
* Toggle the history sidebar open/close state
|
|
56
|
+
*/
|
|
57
|
+
toggleHistorySidebar(): void;
|
|
58
|
+
/**
|
|
59
|
+
* Close the chat window
|
|
60
|
+
*/
|
|
61
|
+
closeChat(): void;
|
|
62
|
+
/**
|
|
63
|
+
* Open the chat window
|
|
64
|
+
*/
|
|
65
|
+
openChat(): void;
|
|
66
|
+
/**
|
|
67
|
+
* Close the history sidebar
|
|
68
|
+
*/
|
|
69
|
+
closeHistorySidebar(): void;
|
|
70
|
+
/**
|
|
71
|
+
* Open the history sidebar
|
|
72
|
+
*/
|
|
73
|
+
openHistorySidebar(): void;
|
|
74
|
+
/**
|
|
75
|
+
* Toggle fullscreen mode
|
|
76
|
+
*/
|
|
77
|
+
toggleFullscreen(): void;
|
|
78
|
+
/**
|
|
79
|
+
* Set fullscreen state
|
|
80
|
+
*/
|
|
81
|
+
setFullscreen(isFullscreen: boolean): void;
|
|
82
|
+
/**
|
|
83
|
+
* Manually mark messages as read up to a specific message ID
|
|
84
|
+
*/
|
|
85
|
+
markMessagesAsRead(messageId: string): void;
|
|
86
|
+
/**
|
|
87
|
+
* Reset last read message ID
|
|
88
|
+
*/
|
|
89
|
+
resetLastRead(): void;
|
|
90
|
+
/**
|
|
91
|
+
* Get the last read message ID
|
|
92
|
+
*/
|
|
93
|
+
getLastReadMessageId(): string | null;
|
|
94
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ChatUIStateService, never>;
|
|
95
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ChatUIStateService>;
|
|
96
|
+
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { ChatSession } from './model/chat-session.model';
|
|
2
|
+
import { ChatApiError } from '../../core/models/api-request.model';
|
|
3
|
+
import { Message } from '../../core/models/message';
|
|
4
|
+
import { PromptMode } from '../../core/types/prompt-mode.type';
|
|
5
|
+
import { ChatStreamMessage } from './model/chat-stream-message.model';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export declare class ChatService {
|
|
8
|
+
private apiService;
|
|
9
|
+
private authService;
|
|
10
|
+
private audioService;
|
|
11
|
+
private config;
|
|
12
|
+
private chatHistoryService;
|
|
13
|
+
private chatUIStateService;
|
|
14
|
+
private personalization;
|
|
15
|
+
private chatSessions;
|
|
16
|
+
messages: import("@angular/core").WritableSignal<Message[]>;
|
|
17
|
+
/**
|
|
18
|
+
* Determine if suggestion chips should be shown
|
|
19
|
+
*/
|
|
20
|
+
showSuggestionChips: import("@angular/core").Signal<boolean>;
|
|
21
|
+
private activeSession;
|
|
22
|
+
isLoadingApi: import("@angular/core").WritableSignal<boolean>;
|
|
23
|
+
apiError: import("@angular/core").WritableSignal<ChatApiError | null>;
|
|
24
|
+
isBotTyping: import("@angular/core").WritableSignal<boolean>;
|
|
25
|
+
promptMode: import("@angular/core").WritableSignal<PromptMode>;
|
|
26
|
+
isStreaming: import("@angular/core").WritableSignal<boolean>;
|
|
27
|
+
messagesStream: Array<ChatStreamMessage>;
|
|
28
|
+
currentResponse: string;
|
|
29
|
+
private streamSubscription?;
|
|
30
|
+
private cancelSubject;
|
|
31
|
+
getFallbackReply(): string;
|
|
32
|
+
getFallbackError(): string;
|
|
33
|
+
constructor();
|
|
34
|
+
/**
|
|
35
|
+
* Generate a unique session ID
|
|
36
|
+
*/
|
|
37
|
+
private generateSessionId;
|
|
38
|
+
/**
|
|
39
|
+
* Create a new chat session
|
|
40
|
+
*/
|
|
41
|
+
createSession(userId: string): ChatSession;
|
|
42
|
+
/**
|
|
43
|
+
* Start a new chat session
|
|
44
|
+
*/
|
|
45
|
+
startNewSession(): void;
|
|
46
|
+
/**
|
|
47
|
+
* Load an existing session
|
|
48
|
+
*/
|
|
49
|
+
loadSession(session: ChatSession): void;
|
|
50
|
+
/**
|
|
51
|
+
* Get active session
|
|
52
|
+
*/
|
|
53
|
+
getActiveSession(): ChatSession | null;
|
|
54
|
+
/**
|
|
55
|
+
* Clear messages for current session and start new one
|
|
56
|
+
*/
|
|
57
|
+
clearMessages(): void;
|
|
58
|
+
/**
|
|
59
|
+
* Add message to current session
|
|
60
|
+
*/
|
|
61
|
+
addMessage(message: Message): void;
|
|
62
|
+
/**
|
|
63
|
+
* Continue a chat session
|
|
64
|
+
*/
|
|
65
|
+
continueSession(sessionId: string): void;
|
|
66
|
+
/**
|
|
67
|
+
* Process a user message: add it, get bot reply, and add bot reply
|
|
68
|
+
*/
|
|
69
|
+
sendMessage(text: string, maxLength?: number): Promise<void>;
|
|
70
|
+
getBotReply(userText: string): Promise<string>;
|
|
71
|
+
/**
|
|
72
|
+
* Builds a chat request payload with the given user text and optional active session
|
|
73
|
+
* @param {string} userInput - The text provided by the user
|
|
74
|
+
* @returns {ChatRequest} - A chat request payload with the user text and optional active session
|
|
75
|
+
* @memberof ChatService
|
|
76
|
+
*/
|
|
77
|
+
private buildChatRequest;
|
|
78
|
+
private ask;
|
|
79
|
+
private stream;
|
|
80
|
+
cancelRequest(): void;
|
|
81
|
+
unlockAudio(): void;
|
|
82
|
+
/**
|
|
83
|
+
* Map local placeholder session ID to backend-generated ID
|
|
84
|
+
*/
|
|
85
|
+
private mapSessionId;
|
|
86
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ChatService, never>;
|
|
87
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ChatService>;
|
|
88
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class ChatButtonComponent {
|
|
4
|
+
buttonStyle: 'fab' | 'sidebar' | 'sidebar-top' | 'sidebar-bottom';
|
|
5
|
+
isChatOpen: boolean;
|
|
6
|
+
unreadCount: number;
|
|
7
|
+
appTitle: string;
|
|
8
|
+
appLogoUrl: string;
|
|
9
|
+
appTextLogoUrl: string;
|
|
10
|
+
toggle: EventEmitter<void>;
|
|
11
|
+
get isSidebar(): boolean;
|
|
12
|
+
get sidebarPosition(): 'top' | 'center' | 'bottom';
|
|
13
|
+
onToggle(): void;
|
|
14
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ChatButtonComponent, never>;
|
|
15
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ChatButtonComponent, "app-chat-button", never, { "buttonStyle": { "alias": "buttonStyle"; "required": false; }; "isChatOpen": { "alias": "isChatOpen"; "required": false; }; "unreadCount": { "alias": "unreadCount"; "required": false; }; "appTitle": { "alias": "appTitle"; "required": false; }; "appLogoUrl": { "alias": "appLogoUrl"; "required": false; }; "appTextLogoUrl": { "alias": "appTextLogoUrl"; "required": false; }; }, { "toggle": "toggle"; }, never, never, true, never>;
|
|
16
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class ChatFooterComponent {
|
|
3
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ChatFooterComponent, never>;
|
|
4
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ChatFooterComponent, "app-chat-footer", never, {}, {}, never, never, true, never>;
|
|
5
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { ThemeService } from '../../../../core/services/theme.service';
|
|
3
|
+
import { ChatService } from '../../chat.service';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class ChatHeaderComponent {
|
|
6
|
+
appHeaderLogoUrl: string;
|
|
7
|
+
isAuthenticated: boolean;
|
|
8
|
+
isFullScreen: boolean;
|
|
9
|
+
settingsMenu: any;
|
|
10
|
+
isNewChatDisabled: boolean;
|
|
11
|
+
toggleChat: EventEmitter<void>;
|
|
12
|
+
toggleFullScreen: EventEmitter<void>;
|
|
13
|
+
toggleHistorySidebar: EventEmitter<void>;
|
|
14
|
+
clearChat: EventEmitter<void>;
|
|
15
|
+
themeService: ThemeService;
|
|
16
|
+
chatService: ChatService;
|
|
17
|
+
private uiState;
|
|
18
|
+
onToggleChat(): void;
|
|
19
|
+
onToggleHistorySidebar(): void;
|
|
20
|
+
onToggleFullScreen(): void;
|
|
21
|
+
onStartNewConversation(): void;
|
|
22
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ChatHeaderComponent, never>;
|
|
23
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ChatHeaderComponent, "app-chat-header", never, { "appHeaderLogoUrl": { "alias": "appHeaderLogoUrl"; "required": false; }; "isAuthenticated": { "alias": "isAuthenticated"; "required": false; }; "isFullScreen": { "alias": "isFullScreen"; "required": false; }; "settingsMenu": { "alias": "settingsMenu"; "required": false; }; "isNewChatDisabled": { "alias": "isNewChatDisabled"; "required": false; }; }, { "toggleChat": "toggleChat"; "toggleFullScreen": "toggleFullScreen"; "toggleHistorySidebar": "toggleHistorySidebar"; "clearChat": "clearChat"; }, never, never, true, never>;
|
|
24
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { EventEmitter, OnInit, OnChanges, SimpleChanges } from '@angular/core';
|
|
2
|
+
import { DialogService } from '../../../../shared/dialog/dialog.service';
|
|
3
|
+
import { ChatSession, ChatSessionGroup } from '../../model/chat-session.model';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class ChatHistorySidebarComponent implements OnInit, OnChanges {
|
|
6
|
+
private dialogService;
|
|
7
|
+
sessions: ChatSession[];
|
|
8
|
+
isOpen: boolean;
|
|
9
|
+
userName: string;
|
|
10
|
+
isLoading: boolean;
|
|
11
|
+
hasMoreSessions: boolean;
|
|
12
|
+
isLoadingMore: boolean;
|
|
13
|
+
processingSessionId: string | null;
|
|
14
|
+
sessionSelected: EventEmitter<ChatSession>;
|
|
15
|
+
sessionDeleted: EventEmitter<string>;
|
|
16
|
+
closed: EventEmitter<void>;
|
|
17
|
+
loadMore: EventEmitter<void>;
|
|
18
|
+
refresh: EventEmitter<void>;
|
|
19
|
+
sessionRenamed: EventEmitter<{
|
|
20
|
+
sessionId: string;
|
|
21
|
+
newTitle: string;
|
|
22
|
+
}>;
|
|
23
|
+
deleteAll: EventEmitter<void>;
|
|
24
|
+
chatHistory: ChatSessionGroup[];
|
|
25
|
+
constructor(dialogService: DialogService);
|
|
26
|
+
ngOnInit(): void;
|
|
27
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
28
|
+
groupedSessions(): ChatSessionGroup[];
|
|
29
|
+
onSessionClick(session: ChatSession): void;
|
|
30
|
+
onEditClick(event: Event, session: ChatSession): void;
|
|
31
|
+
onDeleteClick(event: Event, sessionId: string): void;
|
|
32
|
+
onClose(): void;
|
|
33
|
+
formatTime(date: Date): string;
|
|
34
|
+
formatDate(date: Date): string;
|
|
35
|
+
/**
|
|
36
|
+
* Handle scroll event for infinite scroll
|
|
37
|
+
*/
|
|
38
|
+
onScroll(event: Event): void;
|
|
39
|
+
/**
|
|
40
|
+
* Handle manual refresh
|
|
41
|
+
*/
|
|
42
|
+
onRefresh(): void;
|
|
43
|
+
/**
|
|
44
|
+
* Handle clear all history
|
|
45
|
+
*/
|
|
46
|
+
onClearAllClick(): void;
|
|
47
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ChatHistorySidebarComponent, never>;
|
|
48
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ChatHistorySidebarComponent, "app-chat-history-sidebar", never, { "sessions": { "alias": "sessions"; "required": false; }; "isOpen": { "alias": "isOpen"; "required": false; }; "userName": { "alias": "userName"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; "hasMoreSessions": { "alias": "hasMoreSessions"; "required": false; }; "isLoadingMore": { "alias": "isLoadingMore"; "required": false; }; "processingSessionId": { "alias": "processingSessionId"; "required": false; }; }, { "sessionSelected": "sessionSelected"; "sessionDeleted": "sessionDeleted"; "closed": "closed"; "loadMore": "loadMore"; "refresh": "refresh"; "sessionRenamed": "sessionRenamed"; "deleteAll": "deleteAll"; }, never, never, true, never>;
|
|
49
|
+
}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { EventEmitter, TrackByFunction, OnDestroy, OnInit, SimpleChanges, OnChanges } from '@angular/core';
|
|
2
|
+
import { AuthService } from '../../../../core/auth/auth.service';
|
|
3
|
+
import { Message } from '../../../../core/models/message';
|
|
4
|
+
import { DoohbotThemeConfig } from '../../../../core/models/theme-config.model';
|
|
5
|
+
import { ThemeService } from '../../../../core/services/theme.service';
|
|
6
|
+
import { ChatSession } from '../../model/chat-session.model';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export declare class ChatWindowComponent implements OnInit, OnDestroy, OnChanges {
|
|
9
|
+
isChatOpen: boolean;
|
|
10
|
+
enableDrag: boolean;
|
|
11
|
+
enableResize: boolean;
|
|
12
|
+
isFullScreen: boolean;
|
|
13
|
+
isStreaming: boolean;
|
|
14
|
+
isAuthenticated: boolean;
|
|
15
|
+
appTitle: string;
|
|
16
|
+
appLogoUrl: string;
|
|
17
|
+
appTextLogoUrl: string;
|
|
18
|
+
appHeaderLogoUrl: string;
|
|
19
|
+
messages: Message[];
|
|
20
|
+
isBotTyping: boolean;
|
|
21
|
+
appSubtitle: string;
|
|
22
|
+
welcomeDesc: string;
|
|
23
|
+
predefinedMessages: string[];
|
|
24
|
+
suggestedMessages: string[];
|
|
25
|
+
botAvatarUrl: string;
|
|
26
|
+
userAvatarUrl: string;
|
|
27
|
+
userName: string;
|
|
28
|
+
trackByMessageId: TrackByFunction<Message>;
|
|
29
|
+
hintText: string;
|
|
30
|
+
messageError: string | null;
|
|
31
|
+
showSuggestionChips: boolean;
|
|
32
|
+
isHistorySidebarOpen: boolean;
|
|
33
|
+
chatSessions: ChatSession[];
|
|
34
|
+
chatHistoryUserName: string;
|
|
35
|
+
isLoggingIn: boolean;
|
|
36
|
+
authError: string | null;
|
|
37
|
+
authSuccess: string | null;
|
|
38
|
+
isLoadingSessions: boolean;
|
|
39
|
+
hasMoreSessions: boolean;
|
|
40
|
+
isLoadingMoreSessions: boolean;
|
|
41
|
+
processingSessionId: string | null;
|
|
42
|
+
themeConfig: DoohbotThemeConfig | undefined;
|
|
43
|
+
buttonStyle: string;
|
|
44
|
+
toggleChat: EventEmitter<void>;
|
|
45
|
+
toggleFullScreen: EventEmitter<void>;
|
|
46
|
+
toggleHistorySidebar: EventEmitter<void>;
|
|
47
|
+
openSettings: EventEmitter<void>;
|
|
48
|
+
suggestionClick: EventEmitter<string>;
|
|
49
|
+
send: EventEmitter<string>;
|
|
50
|
+
stop: EventEmitter<void>;
|
|
51
|
+
clearMessageError: EventEmitter<void>;
|
|
52
|
+
clearChat: EventEmitter<void>;
|
|
53
|
+
sessionSelected: EventEmitter<ChatSession>;
|
|
54
|
+
sessionDeleted: EventEmitter<string>;
|
|
55
|
+
loadMoreSessions: EventEmitter<void>;
|
|
56
|
+
refreshSessions: EventEmitter<void>;
|
|
57
|
+
sessionRenamed: EventEmitter<{
|
|
58
|
+
sessionId: string;
|
|
59
|
+
newTitle: string;
|
|
60
|
+
}>;
|
|
61
|
+
deleteAllSessions: EventEmitter<void>;
|
|
62
|
+
loginSubmit: EventEmitter<{
|
|
63
|
+
username: string;
|
|
64
|
+
password: string;
|
|
65
|
+
rememberMe: boolean;
|
|
66
|
+
}>;
|
|
67
|
+
logout: EventEmitter<void>;
|
|
68
|
+
themeService: ThemeService;
|
|
69
|
+
authService: AuthService;
|
|
70
|
+
private dialog;
|
|
71
|
+
showLoginForm: boolean;
|
|
72
|
+
get canDrag(): boolean;
|
|
73
|
+
get canResize(): boolean;
|
|
74
|
+
constructor();
|
|
75
|
+
onToggleChat(): void;
|
|
76
|
+
onToggleHistorySidebar(): void;
|
|
77
|
+
onLoginClick(): void;
|
|
78
|
+
onLoginSubmit(credentials: {
|
|
79
|
+
username: string;
|
|
80
|
+
password: string;
|
|
81
|
+
rememberMe: boolean;
|
|
82
|
+
}): void;
|
|
83
|
+
onCancelLogin(): void;
|
|
84
|
+
onToggleFullScreen(): void;
|
|
85
|
+
onOpenSettings(): void;
|
|
86
|
+
onOpenPersonalization(): void;
|
|
87
|
+
onSuggestionClick(text: string): void;
|
|
88
|
+
onSend(text: string): void;
|
|
89
|
+
onStop(): void;
|
|
90
|
+
onClearMessageError(): void;
|
|
91
|
+
onClearAuthError(): void;
|
|
92
|
+
onClearChat(): void;
|
|
93
|
+
onLogout(): void;
|
|
94
|
+
onSessionSelected(session: ChatSession): void;
|
|
95
|
+
onSessionDeleted(sessionId: string): void;
|
|
96
|
+
onSessionRenamed(event: {
|
|
97
|
+
sessionId: string;
|
|
98
|
+
newTitle: string;
|
|
99
|
+
}): void;
|
|
100
|
+
onDeleteAllSessions(): void;
|
|
101
|
+
onPopoutShown(win: Window): void;
|
|
102
|
+
ngOnInit(): void;
|
|
103
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
104
|
+
ngOnDestroy(): void;
|
|
105
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ChatWindowComponent, never>;
|
|
106
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ChatWindowComponent, "app-chat-window", never, { "isChatOpen": { "alias": "isChatOpen"; "required": false; }; "enableDrag": { "alias": "enableDrag"; "required": false; }; "enableResize": { "alias": "enableResize"; "required": false; }; "isFullScreen": { "alias": "isFullScreen"; "required": false; }; "isStreaming": { "alias": "isStreaming"; "required": false; }; "isAuthenticated": { "alias": "isAuthenticated"; "required": false; }; "appTitle": { "alias": "appTitle"; "required": false; }; "appLogoUrl": { "alias": "appLogoUrl"; "required": false; }; "appTextLogoUrl": { "alias": "appTextLogoUrl"; "required": false; }; "appHeaderLogoUrl": { "alias": "appHeaderLogoUrl"; "required": false; }; "messages": { "alias": "messages"; "required": false; }; "isBotTyping": { "alias": "isBotTyping"; "required": false; }; "appSubtitle": { "alias": "appSubtitle"; "required": false; }; "welcomeDesc": { "alias": "welcomeDesc"; "required": false; }; "predefinedMessages": { "alias": "predefinedMessages"; "required": false; }; "suggestedMessages": { "alias": "suggestedMessages"; "required": false; }; "botAvatarUrl": { "alias": "botAvatarUrl"; "required": false; }; "userAvatarUrl": { "alias": "userAvatarUrl"; "required": false; }; "userName": { "alias": "userName"; "required": false; }; "trackByMessageId": { "alias": "trackByMessageId"; "required": false; }; "hintText": { "alias": "hintText"; "required": false; }; "messageError": { "alias": "messageError"; "required": false; }; "showSuggestionChips": { "alias": "showSuggestionChips"; "required": false; }; "isHistorySidebarOpen": { "alias": "isHistorySidebarOpen"; "required": false; }; "chatSessions": { "alias": "chatSessions"; "required": false; }; "chatHistoryUserName": { "alias": "chatHistoryUserName"; "required": false; }; "isLoggingIn": { "alias": "isLoggingIn"; "required": false; }; "authError": { "alias": "authError"; "required": false; }; "authSuccess": { "alias": "authSuccess"; "required": false; }; "isLoadingSessions": { "alias": "isLoadingSessions"; "required": false; }; "hasMoreSessions": { "alias": "hasMoreSessions"; "required": false; }; "isLoadingMoreSessions": { "alias": "isLoadingMoreSessions"; "required": false; }; "processingSessionId": { "alias": "processingSessionId"; "required": false; }; "themeConfig": { "alias": "themeConfig"; "required": false; }; "buttonStyle": { "alias": "buttonStyle"; "required": false; }; }, { "toggleChat": "toggleChat"; "toggleFullScreen": "toggleFullScreen"; "toggleHistorySidebar": "toggleHistorySidebar"; "openSettings": "openSettings"; "suggestionClick": "suggestionClick"; "send": "send"; "stop": "stop"; "clearMessageError": "clearMessageError"; "clearChat": "clearChat"; "sessionSelected": "sessionSelected"; "sessionDeleted": "sessionDeleted"; "loadMoreSessions": "loadMoreSessions"; "refreshSessions": "refreshSessions"; "sessionRenamed": "sessionRenamed"; "deleteAllSessions": "deleteAllSessions"; "loginSubmit": "loginSubmit"; "logout": "logout"; }, never, never, true, never>;
|
|
107
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class MessageInputComponent {
|
|
4
|
+
isBotTyping: boolean;
|
|
5
|
+
hintText: string;
|
|
6
|
+
send: EventEmitter<string>;
|
|
7
|
+
stop: EventEmitter<void>;
|
|
8
|
+
onSend(text: string): void;
|
|
9
|
+
onStop(): void;
|
|
10
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<MessageInputComponent, never>;
|
|
11
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<MessageInputComponent, "app-message-input", never, { "isBotTyping": { "alias": "isBotTyping"; "required": false; }; "hintText": { "alias": "hintText"; "required": false; }; }, { "send": "send"; "stop": "stop"; }, never, never, true, never>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { AfterViewInit, ChangeDetectorRef, EventEmitter, OnDestroy, TrackByFunction } from '@angular/core';
|
|
2
|
+
import { Message } from '../../../../core/models/message';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class MessageListComponent implements AfterViewInit, OnDestroy {
|
|
5
|
+
private cdr;
|
|
6
|
+
messages: Message[];
|
|
7
|
+
isBotTyping: boolean;
|
|
8
|
+
isStreaming: boolean;
|
|
9
|
+
appLogoUrl: string;
|
|
10
|
+
appSubtitle: string;
|
|
11
|
+
welcomeDesc: string;
|
|
12
|
+
predefinedMessages: string[];
|
|
13
|
+
botAvatarUrl: string;
|
|
14
|
+
userAvatarUrl: string;
|
|
15
|
+
userName: string;
|
|
16
|
+
isAuthenticated: boolean;
|
|
17
|
+
isLoggingIn: boolean;
|
|
18
|
+
trackByMessageId: TrackByFunction<Message>;
|
|
19
|
+
suggestionClick: EventEmitter<string>;
|
|
20
|
+
loginClick: EventEmitter<void>;
|
|
21
|
+
private chatMessagesContainer;
|
|
22
|
+
private mutationObserver;
|
|
23
|
+
appEmoji: {
|
|
24
|
+
waveHand: string;
|
|
25
|
+
robotFace: string;
|
|
26
|
+
partyPopper: string;
|
|
27
|
+
thinkingFace: string;
|
|
28
|
+
thumbsUp: string;
|
|
29
|
+
thumbsDown: string;
|
|
30
|
+
redHeart: string;
|
|
31
|
+
};
|
|
32
|
+
constructor(cdr: ChangeDetectorRef);
|
|
33
|
+
ngAfterViewInit(): void;
|
|
34
|
+
private scrollToBottom;
|
|
35
|
+
onPredefinedClick(text: string): void;
|
|
36
|
+
copyMessage(message: Message): void;
|
|
37
|
+
ngOnDestroy(): void;
|
|
38
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<MessageListComponent, never>;
|
|
39
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<MessageListComponent, "app-message-list", never, { "messages": { "alias": "messages"; "required": false; }; "isBotTyping": { "alias": "isBotTyping"; "required": false; }; "isStreaming": { "alias": "isStreaming"; "required": false; }; "appLogoUrl": { "alias": "appLogoUrl"; "required": false; }; "appSubtitle": { "alias": "appSubtitle"; "required": false; }; "welcomeDesc": { "alias": "welcomeDesc"; "required": false; }; "predefinedMessages": { "alias": "predefinedMessages"; "required": false; }; "botAvatarUrl": { "alias": "botAvatarUrl"; "required": false; }; "userAvatarUrl": { "alias": "userAvatarUrl"; "required": false; }; "userName": { "alias": "userName"; "required": false; }; "isAuthenticated": { "alias": "isAuthenticated"; "required": false; }; "isLoggingIn": { "alias": "isLoggingIn"; "required": false; }; "trackByMessageId": { "alias": "trackByMessageId"; "required": false; }; }, { "suggestionClick": "suggestionClick"; "loginClick": "loginClick"; }, never, never, true, never>;
|
|
40
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { MessageRole } from '../../../core/types/message-role.type';
|
|
2
|
+
/**
|
|
3
|
+
* Chat History Request Model
|
|
4
|
+
*/
|
|
5
|
+
export interface ChatHistoryRequest {
|
|
6
|
+
limit: number;
|
|
7
|
+
offset: number;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Chat Message from API
|
|
11
|
+
*/
|
|
12
|
+
export interface ChatMessage {
|
|
13
|
+
message_id?: string;
|
|
14
|
+
role: MessageRole;
|
|
15
|
+
content: string;
|
|
16
|
+
model_name: string | null;
|
|
17
|
+
prompt_tokens: number | null;
|
|
18
|
+
completion_tokens: number | null;
|
|
19
|
+
created_at: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Chat Session from API
|
|
23
|
+
*/
|
|
24
|
+
export interface ChatSessionResponse {
|
|
25
|
+
response_id: string;
|
|
26
|
+
title: string;
|
|
27
|
+
last_message_at: string;
|
|
28
|
+
chat_session_id?: string;
|
|
29
|
+
is_active?: boolean;
|
|
30
|
+
created_at?: string;
|
|
31
|
+
updated_at?: string;
|
|
32
|
+
messages?: ChatMessage[];
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Chat History Data from API
|
|
36
|
+
*/
|
|
37
|
+
export interface ChatHistoryData {
|
|
38
|
+
sessions: ChatSessionResponse[];
|
|
39
|
+
total: number;
|
|
40
|
+
limit: number;
|
|
41
|
+
offset: number;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Chat History API Response
|
|
45
|
+
*/
|
|
46
|
+
export interface ChatHistoryResponse {
|
|
47
|
+
success: boolean;
|
|
48
|
+
message: string;
|
|
49
|
+
data: ChatHistoryData;
|
|
50
|
+
timestamp: string;
|
|
51
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { PromptMode } from '../../../core/types/prompt-mode.type';
|
|
2
|
+
export interface ChatRequest {
|
|
3
|
+
question: string;
|
|
4
|
+
temperature?: number;
|
|
5
|
+
max_tokens?: number;
|
|
6
|
+
prompt_mode?: PromptMode;
|
|
7
|
+
organization_id: string;
|
|
8
|
+
response_id?: string;
|
|
9
|
+
custom_instructions?: string;
|
|
10
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Message } from '../../../core/models/message';
|
|
2
|
+
export interface ChatSession {
|
|
3
|
+
id: string;
|
|
4
|
+
timestamp: Date;
|
|
5
|
+
title: string;
|
|
6
|
+
messages: Message[];
|
|
7
|
+
userId: string;
|
|
8
|
+
}
|
|
9
|
+
export interface ChatSessionGroup {
|
|
10
|
+
label: string;
|
|
11
|
+
sessions: ChatSession[];
|
|
12
|
+
}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { MessageRole } from '../../../core/types/message-role.type';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
}
|
|
1
|
+
import { MessageRole } from '../../../core/types/message-role.type';
|
|
2
|
+
export interface ChatStreamMessage {
|
|
3
|
+
role: MessageRole;
|
|
4
|
+
content: string;
|
|
5
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { ChatHistoryData, ChatHistoryRequest, ChatMessage } from '../model/chat-history.model';
|
|
3
|
+
import { HttpStreamService } from '../../../core/http/http-stream.service';
|
|
4
|
+
import { HttpService } from '../../../core/http/http.service';
|
|
5
|
+
import { ApiResponse } from '../../../core/models/api-response.model';
|
|
6
|
+
import { ChatRequest } from '../model/chat-request.model';
|
|
7
|
+
import { ChatResponse } from '../model/chat-response.model';
|
|
8
|
+
import { ChatStreamResponse } from '../model/chat-stream-response.model';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
export declare class ChatApiService {
|
|
11
|
+
private http;
|
|
12
|
+
private httpStreamService;
|
|
13
|
+
get apiUrl(): string;
|
|
14
|
+
constructor(http: HttpService, httpStreamService: HttpStreamService);
|
|
15
|
+
/**
|
|
16
|
+
* Send chat message and get full response
|
|
17
|
+
*/
|
|
18
|
+
sendMessage(request?: ChatRequest, showLoader?: boolean): Observable<ApiResponse<ChatResponse>>;
|
|
19
|
+
/**
|
|
20
|
+
* Send chat message and get streaming response
|
|
21
|
+
*/
|
|
22
|
+
sendMessageStream(request: ChatRequest): Observable<ChatStreamResponse>;
|
|
23
|
+
getChatHistory(request: ChatHistoryRequest, showLoader?: boolean): Observable<ApiResponse<ChatHistoryData>>;
|
|
24
|
+
getChatSession(chatSessionId: string, showLoader?: boolean): Observable<ApiResponse<ChatMessage[]>>;
|
|
25
|
+
deleteChatSession(chatSessionId: string, showLoader?: boolean): Observable<ApiResponse<void>>;
|
|
26
|
+
updateChatTitle(chatSessionId: string, title: string, showLoader?: boolean): Observable<ApiResponse<void>>;
|
|
27
|
+
clearChatHistory(request?: object, showLoader?: boolean): Observable<ApiResponse<void>>;
|
|
28
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ChatApiService, never>;
|
|
29
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ChatApiService>;
|
|
30
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class ChatAudioService {
|
|
3
|
+
private audioUnlocked;
|
|
4
|
+
constructor();
|
|
5
|
+
/**
|
|
6
|
+
* Unlock audio playback (required for autoplay in browsers)
|
|
7
|
+
*/
|
|
8
|
+
unlockAudio(): void;
|
|
9
|
+
/**
|
|
10
|
+
* Play bot message sound
|
|
11
|
+
*/
|
|
12
|
+
playBotSound(): void;
|
|
13
|
+
/**
|
|
14
|
+
* Check if audio is unlocked
|
|
15
|
+
*/
|
|
16
|
+
isAudioUnlocked(): boolean;
|
|
17
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ChatAudioService, never>;
|
|
18
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ChatAudioService>;
|
|
19
|
+
}
|