@webitel/ui-chats 0.0.21 → 0.0.23

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webitel/ui-chats",
3
- "version": "0.0.21",
3
+ "version": "0.0.23",
4
4
  "description": "Reusable Webitel Frontend Code for Chats UI",
5
5
  "workspaces": [
6
6
  "../../",
@@ -15,5 +15,7 @@ const slots = defineSlots<{
15
15
  display: flex;
16
16
  flex-direction: column;
17
17
  gap: var(--spacing-2xs);
18
+ max-height: 50%;
19
+ position: relative;
18
20
  }
19
- </style>
21
+ </style>
@@ -1,5 +1,6 @@
1
1
  <template>
2
2
  <wt-chat-emoji
3
+ class="emoji-picker-action"
3
4
  :size="size"
4
5
  @insert-emoji="uiChatsEmitter!.emit('insertAtCursor', { text: $event })"
5
6
  />
@@ -16,3 +17,17 @@ import type { UiChatsEmitterEvents } from "../../../../../utils/emitter";
16
17
  const size = inject<ComponentSize>("size");
17
18
  const uiChatsEmitter = inject<Emitter<UiChatsEmitterEvents>>("uiChatsEmitter");
18
19
  </script>
20
+
21
+ <style lang="scss" scoped>
22
+ $input-height: 48px; // https://webitel.atlassian.net/browse/WTEL-6149 (comments)
23
+
24
+ .emoji-picker-action {
25
+ ::v-deep emoji-picker {
26
+ position: absolute;
27
+ z-index: calc(var(--popup-wrapper-z-index) - 1);
28
+ bottom: calc(100% + $input-height);
29
+ left: 100%;
30
+ transform: translateX(-50%);
31
+ }
32
+ }
33
+ </style>
@@ -93,11 +93,7 @@ const { image, media, document } = useChatMessageFile(props.message.file);
93
93
  const isSelfSide = computed<boolean>(
94
94
  () => props.message.member?.self || props.message.member?.type === "webitel",
95
95
  );
96
- const isBot = computed<boolean>(
97
- () =>
98
- props.message.member?.type === "bot" ||
99
- (!props.message.member?.type && !props.message.channelId),
100
- );
96
+ const isBot = computed<boolean>(() => props.message.member?.type === "bot");
101
97
 
102
98
  const getClientUsername = computed<string>(() => {
103
99
  return !isSelfSide.value ? props.username : ""; // need to show username avatar only for client
@@ -23,24 +23,24 @@
23
23
  <chat-footer-wrapper>
24
24
  <template #default>
25
25
  <chat-text-field
26
- v-model:text="draft"
26
+ v-model:text="draft"
27
27
  />
28
28
  <chat-input-actions-bar
29
29
  :actions="props.chatActions"
30
30
  @[ChatAction.SendMessage]="sendMessage"
31
31
  @[ChatAction.AttachFiles]="sendFile"
32
32
  >
33
- <template
34
- v-for="action in slottedChatActions"
35
- :key="action"
36
- #[action]="{ size }"
37
- >
38
- <slot
39
- :name="`action:${action}`"
40
- v-bind="{ size }"
41
- />
42
- </template>
43
- </chat-input-actions-bar>
33
+ <template
34
+ v-for="action in slottedChatActions"
35
+ :key="action"
36
+ #[action]="{ size }"
37
+ >
38
+ <slot
39
+ :name="`action:${action}`"
40
+ v-bind="{ size }"
41
+ />
42
+ </template>
43
+ </chat-input-actions-bar>
44
44
  </template>
45
45
  </chat-footer-wrapper>
46
46
  </slot>