@mobilon-dev/chotto 0.3.35 → 0.3.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/dist/chotto.css +1 -1
  2. package/dist/components/1_atoms/ContactContextMenu/ContactContextMenu.vue.js +7 -0
  3. package/dist/components/1_atoms/ContactContextMenu/ContactContextMenu.vue2.js +114 -0
  4. package/dist/components/1_atoms/ContextMenu/ContextMenu.vue.js +23 -19
  5. package/dist/components/1_atoms/Tooltip/Tooltip.vue.js +2 -2
  6. package/dist/components/1_atoms/Tooltip/Tooltip.vue2.js +62 -34
  7. package/dist/components/2_blocks/CommunicationPanel/CommunicationPanel.vue.js +262 -203
  8. package/dist/components/2_blocks/CommunicationPanel/composables/useCommunicationActions.js +56 -52
  9. package/dist/components/2_blocks/CommunicationPanel/composables/useCommunicationAttributes.js +20 -17
  10. package/dist/components/2_blocks/CommunicationPanel/composables/useCommunicationDialogSync.js +27 -23
  11. package/dist/components/2_chatinput_elements/StickerPicker/StickerPicker.vue.js +1 -1
  12. package/dist/components/2_chatinput_elements/StickerPicker/StickerPicker.vue2.js +176 -203
  13. package/dist/components/2_feed_elements/DelimiterMessage/DelimiterMessage.vue.js +7 -0
  14. package/dist/components/2_feed_elements/DelimiterMessage/DelimiterMessage.vue2.js +18 -0
  15. package/dist/components/2_feed_elements/MessageStatusIndicator/MessageStatusIndicator.vue.js +1 -1
  16. package/dist/components/3_compounds/ChatInput/ChatInput.vue.js +2 -2
  17. package/dist/components/3_compounds/ChatInput/ChatInput.vue2.js +71 -65
  18. package/dist/components/3_compounds/ChatList/composables/useChatListFilter.js +14 -17
  19. package/dist/components/3_compounds/Feed/composables/useFeedComponents.js +13 -11
  20. package/dist/index.js +239 -235
  21. package/dist/locale/en.js +4 -0
  22. package/dist/locale/ru.js +6 -2
  23. package/dist/themes/dark.css +1 -1
  24. package/dist/themes/default.css +1 -1
  25. package/dist/themes/glass.css +1 -1
  26. package/dist/themes/green.css +1 -1
  27. package/dist/themes/mobilon1.css +1 -1
  28. package/dist/types/components/1_atoms/ContactContextMenu/ContactContextMenu.vue.d.ts +59 -0
  29. package/dist/types/components/1_atoms/ContactContextMenu/stories/ContactContextMenu.stories.d.ts +10 -0
  30. package/dist/types/components/1_atoms/ContactContextMenu/styles/types.d.ts +67 -0
  31. package/dist/types/components/1_atoms/ContextMenu/styles/types.d.ts +6 -0
  32. package/dist/types/components/1_atoms/Tooltip/Tooltip.vue.d.ts +22 -1
  33. package/dist/types/components/2_blocks/CommunicationPanel/CommunicationPanel.vue.d.ts +6 -0
  34. package/dist/types/components/2_blocks/CommunicationPanel/composables/useCommunicationActions.d.ts +6 -2
  35. package/dist/types/components/2_blocks/CommunicationPanel/composables/useCommunicationDialogSync.d.ts +10 -2
  36. package/dist/types/components/2_blocks/CommunicationPanel/stories/CommunicationPanel.stories.d.ts +6 -0
  37. package/dist/types/components/2_chatlist_elements/ChatItem/styles/types.d.ts +8 -0
  38. package/dist/types/components/2_feed_elements/DelimiterMessage/DelimiterMessage.vue.d.ts +13 -0
  39. package/dist/types/components/2_feed_elements/DelimiterMessage/stories/DelimiterMessage.stories.d.ts +6 -0
  40. package/dist/types/components/2_feed_elements/DelimiterMessage/styles/types.d.ts +27 -0
  41. package/dist/types/components/2_feed_elements/types/messages.d.ts +4 -0
  42. package/dist/types/components/3_compounds/ChatList/ChatList.vue.d.ts +1 -1
  43. package/dist/types/components/3_compounds/ChatList/composables/useChatListFilter.d.ts +3 -3
  44. package/dist/types/components/4_layouts/BaseLayout/styles/types.d.ts +6 -0
  45. package/dist/types/components/index.d.ts +2 -0
  46. package/dist/types/locale/en.d.ts +4 -0
  47. package/dist/types/locale/ru.d.ts +4 -0
  48. package/package.json +1 -1
@@ -0,0 +1,59 @@
1
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ actions: {
3
+ type: ArrayConstructor;
4
+ required: true;
5
+ };
6
+ mode: {
7
+ type: StringConstructor;
8
+ required: false;
9
+ default: string;
10
+ };
11
+ disabled: {
12
+ type: BooleanConstructor;
13
+ default: boolean;
14
+ required: false;
15
+ };
16
+ menuSide: {
17
+ type: StringConstructor;
18
+ required: false;
19
+ default: string;
20
+ };
21
+ }>, {
22
+ updatePosition: () => void;
23
+ hideMenu: () => void;
24
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
25
+ click: (...args: any[]) => void;
26
+ buttonClick: (...args: any[]) => void;
27
+ menuMouseEnter: (...args: any[]) => void;
28
+ menuMouseLeave: (...args: any[]) => void;
29
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
30
+ actions: {
31
+ type: ArrayConstructor;
32
+ required: true;
33
+ };
34
+ mode: {
35
+ type: StringConstructor;
36
+ required: false;
37
+ default: string;
38
+ };
39
+ disabled: {
40
+ type: BooleanConstructor;
41
+ default: boolean;
42
+ required: false;
43
+ };
44
+ menuSide: {
45
+ type: StringConstructor;
46
+ required: false;
47
+ default: string;
48
+ };
49
+ }>> & Readonly<{
50
+ onClick?: ((...args: any[]) => any) | undefined;
51
+ onButtonClick?: ((...args: any[]) => any) | undefined;
52
+ onMenuMouseEnter?: ((...args: any[]) => any) | undefined;
53
+ onMenuMouseLeave?: ((...args: any[]) => any) | undefined;
54
+ }>, {
55
+ mode: string;
56
+ disabled: boolean;
57
+ menuSide: string;
58
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
59
+ export default _default;
@@ -0,0 +1,10 @@
1
+ import type { Meta, StoryObj } from '@storybook/vue3-vite';
2
+ import ContactContextMenu from '../ContactContextMenu.vue';
3
+ declare const meta: Meta<typeof ContactContextMenu>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof ContactContextMenu>;
6
+ export declare const Standard: Story;
7
+ export declare const WithIcons: Story;
8
+ export declare const WithPrimeIcons: Story;
9
+ export declare const ClickMode: Story;
10
+ export declare const Disabled: Story;
@@ -0,0 +1,67 @@
1
+ /**
2
+ * CSS переменные для компонента ContactContextMenu
3
+ */
4
+ export interface ContactContextMenuThemeCSSVariables {
5
+ /** Отображение обёртки контекстного меню контакта */
6
+ '--chotto-contactcontextmenu-wrapper-display': string;
7
+ /** Выравнивание по поперечной оси обёртки контекстного меню контакта */
8
+ '--chotto-contactcontextmenu-wrapper-align-items': string;
9
+ /** Выравнивание по главной оси обёртки контекстного меню контакта */
10
+ '--chotto-contactcontextmenu-wrapper-justify-content': string;
11
+ /** Отступ справа обёртки контекстного меню контакта */
12
+ '--chotto-contactcontextmenu-wrapper-margin-right': string;
13
+ /** Отступ слева обёртки контекстного меню контакта */
14
+ '--chotto-contactcontextmenu-wrapper-margin-left': string;
15
+ /** Фон кнопки контекстного меню контакта */
16
+ '--chotto-contactcontextmenu-button-bg': string;
17
+ /** Граница кнопки контекстного меню контакта */
18
+ '--chotto-contactcontextmenu-button-border': string;
19
+ /** Отступы кнопки контекстного меню контакта */
20
+ '--chotto-contactcontextmenu-button-padding': string;
21
+ /** Шрифт кнопки контекстного меню контакта */
22
+ '--chotto-contactcontextmenu-button-font': string;
23
+ /** Цвет кнопки контекстного меню контакта */
24
+ '--chotto-contactcontextmenu-button-color': string;
25
+ /** Курсор кнопки контекстного меню контакта */
26
+ '--chotto-contactcontextmenu-button-cursor': string;
27
+ /** Обводка кнопки контекстного меню контакта */
28
+ '--chotto-contactcontextmenu-button-outline': string;
29
+ /** Переход кнопки контекстного меню контакта */
30
+ '--chotto-contactcontextmenu-button-transition': string;
31
+ /** Радиус границы кнопки контекстного меню контакта */
32
+ '--chotto-contactcontextmenu-button-border-radius': string;
33
+ /** Ширина кнопки контекстного меню контакта */
34
+ '--chotto-contactcontextmenu-button-width': string;
35
+ /** Высота кнопки контекстного меню контакта */
36
+ '--chotto-contactcontextmenu-button-height': string;
37
+ /** Отображение кнопки контекстного меню контакта */
38
+ '--chotto-contactcontextmenu-button-display': string;
39
+ /** Выравнивание по поперечной оси кнопки контекстного меню контакта */
40
+ '--chotto-contactcontextmenu-button-align-items': string;
41
+ /** Выравнивание по главной оси кнопки контекстного меню контакта */
42
+ '--chotto-contactcontextmenu-button-justify-content': string;
43
+ /** Позиционирование кнопки контекстного меню контакта */
44
+ '--chotto-contactcontextmenu-button-position': string;
45
+ /** Цвет фона кнопки контекстного меню контакта при наведении */
46
+ '--chotto-contactcontextmenu-button-hover-bg': string;
47
+ /** Трансформация кнопки контекстного меню контакта при нажатии */
48
+ '--chotto-contactcontextmenu-button-active-transform': string;
49
+ /** Отображение иконки контекстного меню контакта */
50
+ '--chotto-contactcontextmenu-icon-display': string;
51
+ /** Выравнивание по поперечной оси иконки контекстного меню контакта */
52
+ '--chotto-contactcontextmenu-icon-align-items': string;
53
+ /** Выравнивание по главной оси иконки контекстного меню контакта */
54
+ '--chotto-contactcontextmenu-icon-justify-content': string;
55
+ /** Отображение контейнера контекстного меню контакта */
56
+ '--chotto-contactcontextmenu-container-display': string;
57
+ /** Выравнивание по поперечной оси контейнера контекстного меню контакта */
58
+ '--chotto-contactcontextmenu-container-align-items': string;
59
+ /** Выравнивание по главной оси контейнера контекстного меню контакта */
60
+ '--chotto-contactcontextmenu-container-justify-content': string;
61
+ /** Граница контейнера контекстного меню контакта */
62
+ '--chotto-contactcontextmenu-container-border': string;
63
+ /** Радиус границы контейнера контекстного меню контакта */
64
+ '--chotto-contactcontextmenu-container-border-radius': string;
65
+ /** Тень контейнера контекстного меню контакта */
66
+ '--chotto-contactcontextmenu-container-box-shadow': string;
67
+ }
@@ -52,6 +52,12 @@ export interface ContextMenuThemeCSSVariables {
52
52
  '--chotto-contextmenu-item-padding': string;
53
53
  /** Ширина элемента контекстного меню */
54
54
  '--chotto-contextmenu-item-width': string;
55
+ /** Промежуток между элементами внутри элемента контекстного меню */
56
+ '--chotto-contextmenu-item-gap': string;
57
+ /** Отступ справа иконки элемента контекстного меню */
58
+ '--chotto-contextmenu-item-icon-margin-right': string;
59
+ /** Коэффициент сжатия иконки элемента контекстного меню */
60
+ '--chotto-contextmenu-item-icon-flex-shrink': string;
55
61
  /** Цвет фона элемента контекстного меню при наведении */
56
62
  '--chotto-contextmenu-item-hover-background-color': string;
57
63
  /** Граница снизу элемента контекстного меню (не последний) */
@@ -15,7 +15,18 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
15
15
  type: NumberConstructor;
16
16
  default: number;
17
17
  };
18
- }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
18
+ trigger: {
19
+ type: StringConstructor;
20
+ default: string;
21
+ };
22
+ autoShowDuration: {
23
+ type: NumberConstructor;
24
+ default: number;
25
+ };
26
+ }>, {
27
+ startAutoShow: () => void;
28
+ clearAutoTimer: () => void;
29
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
19
30
  text: {
20
31
  type: StringConstructor;
21
32
  required: true;
@@ -28,9 +39,19 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
28
39
  type: NumberConstructor;
29
40
  default: number;
30
41
  };
42
+ trigger: {
43
+ type: StringConstructor;
44
+ default: string;
45
+ };
46
+ autoShowDuration: {
47
+ type: NumberConstructor;
48
+ default: number;
49
+ };
31
50
  }>> & Readonly<{}>, {
32
51
  position: string;
33
52
  offset: number;
53
+ trigger: string;
54
+ autoShowDuration: number;
34
55
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
35
56
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
36
57
  export default _default;
@@ -1,16 +1,22 @@
1
1
  declare const _default: import("vue").DefineComponent<{}, {
2
2
  $emit: (event: "select-attribute-channel" | "phone-call", ...args: any[]) => void;
3
3
  channels: unknown[];
4
+ messages: unknown[];
5
+ selectedChat: Record<string, any>;
4
6
  channelTooltips: Record<string, any>;
5
7
  contactAttributes: unknown[];
6
8
  recentAttributeChannels: Record<string, any>;
9
+ isNewDialog: boolean;
7
10
  selectedDialog: Record<string, any>;
8
11
  showChannelIcons: boolean;
9
12
  $props: {
10
13
  readonly channels?: unknown[] | undefined;
14
+ readonly messages?: unknown[] | undefined;
15
+ readonly selectedChat?: Record<string, any> | undefined;
11
16
  readonly channelTooltips?: Record<string, any> | undefined;
12
17
  readonly contactAttributes?: unknown[] | undefined;
13
18
  readonly recentAttributeChannels?: Record<string, any> | undefined;
19
+ readonly isNewDialog?: boolean | undefined;
14
20
  readonly selectedDialog?: Record<string, any> | undefined;
15
21
  readonly showChannelIcons?: boolean | undefined;
16
22
  };
@@ -39,14 +39,18 @@ interface UseCommunicationActionsOptions {
39
39
  hasMultipleChannels: (channelType: string) => boolean;
40
40
  getSingleChannelForType: (channelType: string) => Channel | null;
41
41
  getAvailableChannels: (channelType: string) => Channel[];
42
+ isChannelEmpty: (channelId: string) => boolean;
43
+ isNewDialog: ComputedRef<boolean>;
44
+ showDefaultChannelTooltipWithTimer: () => void;
45
+ clearDefaultChannelTooltip: () => void;
42
46
  emit: CommunicationActionsEmit;
43
47
  }
44
48
  /**
45
49
  * Инкапсулирует действия панели: звонок, выбор каналов, выбор атрибутов и работу с недавними атрибутами.
46
50
  */
47
- export declare function useCommunicationActions({ activeChannelType, channels, recentAttributeChannels, selectedChannel, selectedChannelType, isRecentAttributeHovered, hoveredAttribute, closeMenu, hasMultipleChannels, getSingleChannelForType, getAvailableChannels, emit, }: UseCommunicationActionsOptions): {
51
+ export declare function useCommunicationActions({ activeChannelType, channels, recentAttributeChannels, selectedChannel, selectedChannelType, isRecentAttributeHovered, hoveredAttribute, closeMenu, hasMultipleChannels, getSingleChannelForType, getAvailableChannels, isChannelEmpty, isNewDialog, showDefaultChannelTooltipWithTimer, clearDefaultChannelTooltip, emit, }: UseCommunicationActionsOptions): {
48
52
  handlePhoneCall: (attribute: ContactAttribute | null | undefined) => void;
49
- handleRecentAttributeClick: (recentAttribute: ContactAttribute | null) => void;
53
+ handleRecentAttributeClick: (recentAttributeValue: ContactAttribute | null) => void;
50
54
  handleAttributeClick: (attribute: ContactAttribute) => void;
51
55
  selectSingleChannel: (attribute: ContactAttribute, channelId: string) => void;
52
56
  selectChannelForRecentAttribute: (channelId: string, recentAttribute: ContactAttribute | null) => void;
@@ -1,4 +1,4 @@
1
- import { type Ref, type MaybeRef } from 'vue';
1
+ import { type Ref, type MaybeRef, type ComputedRef } from 'vue';
2
2
  interface Dialog {
3
3
  channelId?: string;
4
4
  [key: string]: unknown;
@@ -16,11 +16,19 @@ interface UseCommunicationDialogSyncOptions {
16
16
  channels: Ref<Channel[]>;
17
17
  /** Текущий выбранный диалог */
18
18
  selectedDialog: MaybeRef<Dialog | null | undefined>;
19
+ /** Функция проверки пустоты канала */
20
+ isChannelEmpty: (channelId: string) => boolean;
21
+ /** Флаг нового диалога */
22
+ isNewDialog: ComputedRef<boolean>;
23
+ /** Функция показа tooltip для нового диалога */
24
+ showDefaultChannelTooltipWithTimer: () => void;
25
+ /** Функция очистки tooltip */
26
+ clearDefaultChannelTooltip: () => void;
19
27
  }
20
28
  /**
21
29
  * Синхронизирует выбранный канал панели с внешним диалогом.
22
30
  */
23
- export declare function useCommunicationDialogSync({ selectedChannelType, selectedChannel, channels, selectedDialog, }: UseCommunicationDialogSyncOptions): {
31
+ export declare function useCommunicationDialogSync({ selectedChannelType, selectedChannel, channels, selectedDialog, isChannelEmpty, isNewDialog, showDefaultChannelTooltipWithTimer, clearDefaultChannelTooltip, }: UseCommunicationDialogSyncOptions): {
24
32
  updateSelectedChannelFromDialog: (dialog: Dialog | null | undefined) => void;
25
33
  };
26
34
  export {};
@@ -4,16 +4,22 @@ declare const meta: {
4
4
  component: import("vue").DefineComponent<{}, {
5
5
  $emit: (event: "select-attribute-channel" | "phone-call", ...args: any[]) => void;
6
6
  channels: unknown[];
7
+ messages: unknown[];
8
+ selectedChat: Record<string, any>;
7
9
  channelTooltips: Record<string, any>;
8
10
  contactAttributes: unknown[];
9
11
  recentAttributeChannels: Record<string, any>;
12
+ isNewDialog: boolean;
10
13
  selectedDialog: Record<string, any>;
11
14
  showChannelIcons: boolean;
12
15
  $props: {
13
16
  readonly channels?: unknown[] | undefined;
17
+ readonly messages?: unknown[] | undefined;
18
+ readonly selectedChat?: Record<string, any> | undefined;
14
19
  readonly channelTooltips?: Record<string, any> | undefined;
15
20
  readonly contactAttributes?: unknown[] | undefined;
16
21
  readonly recentAttributeChannels?: Record<string, any> | undefined;
22
+ readonly isNewDialog?: boolean | undefined;
17
23
  readonly selectedDialog?: Record<string, any> | undefined;
18
24
  readonly showChannelIcons?: boolean | undefined;
19
25
  };
@@ -178,6 +178,12 @@ export interface ChatItemThemeCSSVariables {
178
178
  '--chotto-chatitem-unread-justify': string;
179
179
  /** Выравнивание по поперечной оси непрочитанных сообщений */
180
180
  '--chotto-chatitem-unread-align': string;
181
+ /** Радиус границы бейджа непрочитанного */
182
+ '--chotto-chatitem-unread-border-radius': string;
183
+ /** Минимальная ширина бейджа непрочитанного */
184
+ '--chotto-chatitem-unread-min-width': string;
185
+ /** Минимальная высота бейджа непрочитанного */
186
+ '--chotto-chatitem-unread-min-height': string;
181
187
  /** Отступ слева от непрочитанных сообщений */
182
188
  '--chotto-chatitem-unread-margin-left': string;
183
189
  /** Отступ сверху от непрочитанных сообщений */
@@ -188,6 +194,8 @@ export interface ChatItemThemeCSSVariables {
188
194
  '--chotto-chatitem-unread-padding': string;
189
195
  /** Размер шрифта бейджа непрочитанного */
190
196
  '--chotto-chatitem-unread-font-size': string;
197
+ /** Толщина шрифта бейджа непрочитанного */
198
+ '--chotto-chatitem-unread-font-weight': string;
191
199
  /** Цвет текста бейджа непрочитанного */
192
200
  '--chotto-chatitem-unread-text-color': string;
193
201
  /** Цвет фона бейджа непрочитанного */
@@ -0,0 +1,13 @@
1
+ import { IDelimiterMessage } from '@types';
2
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
3
+ message: {
4
+ type: () => IDelimiterMessage;
5
+ required: true;
6
+ };
7
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
8
+ message: {
9
+ type: () => IDelimiterMessage;
10
+ required: true;
11
+ };
12
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
13
+ export default _default;
@@ -0,0 +1,6 @@
1
+ import type { Meta, StoryObj } from '@storybook/vue3-vite';
2
+ import DelimiterMessage from '../DelimiterMessage.vue';
3
+ declare const meta: Meta<typeof DelimiterMessage>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof DelimiterMessage>;
6
+ export declare const Standard: Story;
@@ -0,0 +1,27 @@
1
+ /**
2
+ * CSS variables for DelimiterMessage component
3
+ */
4
+ export interface DelimiterMessageThemeCSSVariables {
5
+ /** Отображение контейнера разделителя */
6
+ '--chotto-delimitermessage-display': string;
7
+ /** Выравнивание элементов по поперечной оси */
8
+ '--chotto-delimitermessage-align-items': string;
9
+ /** Выравнивание элементов по главной оси */
10
+ '--chotto-delimitermessage-justify-content': string;
11
+ /** Ширина контейнера разделителя */
12
+ '--chotto-delimitermessage-width': string;
13
+ /** Высота контейнера разделителя */
14
+ '--chotto-delimitermessage-height': string;
15
+ /** Отступы контейнера разделителя */
16
+ '--chotto-delimitermessage-margin': string;
17
+ /** Нижняя граница разделителя */
18
+ '--chotto-delimitermessage-border-bottom': string;
19
+ /** Размер шрифта текста разделителя */
20
+ '--chotto-delimitermessage-text-font-size': string;
21
+ /** Межстрочный интервал текста разделителя */
22
+ '--chotto-delimitermessage-text-line-height': string;
23
+ /** Выравнивание текста разделителя */
24
+ '--chotto-delimitermessage-text-align': string;
25
+ /** Цвет текста разделителя */
26
+ '--chotto-delimitermessage-text-color': string;
27
+ }
@@ -166,6 +166,10 @@ export interface ISystemMessage {
166
166
  messageId: string;
167
167
  text: string;
168
168
  }
169
+ export interface IDelimiterMessage {
170
+ messageId: string;
171
+ text: string;
172
+ }
169
173
  export interface ITextMessage {
170
174
  messageId: string;
171
175
  text: string;
@@ -4,7 +4,7 @@ type __VLS_WithSlots<T, S> = T & (new () => {
4
4
  $slots: S;
5
5
  });
6
6
  declare const __VLS_component: import("vue").DefineComponent<{}, {
7
- $emit: (event: "select" | "action" | "search" | "expand" | "tab-click" | "loadMoreChats" | "clear-search", ...args: any[]) => void;
7
+ $emit: (event: "select" | "search" | "action" | "expand" | "tab-click" | "loadMoreChats" | "clear-search", ...args: any[]) => void;
8
8
  chats: unknown[];
9
9
  searchQuery: string;
10
10
  showDialogs: boolean;
@@ -1,7 +1,7 @@
1
1
  /**
2
- * Композабл для фильтрации и сортировки списка чатов.
3
- * Инкапсулирует логику сортировки по времени активности и количеству
4
- * непрочитанных сообщений, фильтрации по табам, тегам и текстовому поиску.
2
+ * Композабл для фильтрации списка чатов.
3
+ * Инкапсулирует логику фильтрации по табам, тегам и текстовому поиску.
4
+ * Примечание: сортировка чатов выполняется в родительском компоненте.
5
5
  */
6
6
  /**
7
7
  * Тип элемента чата.
@@ -18,6 +18,8 @@ export interface BaseLayoutThemeCSSVariables {
18
18
  '--chotto-baselayout-container-border-top': string;
19
19
  /** Левая граница контейнера базового макета */
20
20
  '--chotto-baselayout-container-border-left': string;
21
+ /** Фон контейнера базового макета */
22
+ '--chotto-baselayout-container-background': string;
21
23
  /** Позиционирование первой колонки */
22
24
  '--chotto-baselayout-first-col-position': string;
23
25
  /** Колонка сетки первой колонки */
@@ -36,6 +38,8 @@ export interface BaseLayoutThemeCSSVariables {
36
38
  '--chotto-baselayout-first-col-border-bottom': string;
37
39
  /** Ширина первой колонки */
38
40
  '--chotto-baselayout-first-col-width': string;
41
+ /** Размытие/фильтр фона первой колонки */
42
+ '--chotto-baselayout-first-col-backdrop-filter': string;
39
43
  /** Позиционирование второй колонки */
40
44
  '--chotto-baselayout-second-col-position': string;
41
45
  /** Отображение второй колонки */
@@ -54,6 +58,8 @@ export interface BaseLayoutThemeCSSVariables {
54
58
  '--chotto-baselayout-second-col-border-right': string;
55
59
  /** Нижняя граница второй колонки */
56
60
  '--chotto-baselayout-second-col-border-bottom': string;
61
+ /** Размытие/фильтр фона второй колонки */
62
+ '--chotto-baselayout-second-col-backdrop-filter': string;
57
63
  /** Переход для активного состояния Vue Transition */
58
64
  '--chotto-baselayout-transition-enter-active-transition': string;
59
65
  /** Непрозрачность для активного состояния Vue Transition */
@@ -1,4 +1,5 @@
1
1
  export { default as ButtonContextMenu } from './1_atoms/ButtonContextMenu/ButtonContextMenu.vue';
2
+ export { default as ContactContextMenu } from './1_atoms/ContactContextMenu/ContactContextMenu.vue';
2
3
  export { default as ContextMenu } from './1_atoms/ContextMenu/ContextMenu.vue';
3
4
  export { default as EmbedPreview } from './1_atoms/EmbedPreview/EmbedPreview.vue';
4
5
  export { default as LinkPreview } from './1_atoms/LinkPreview/LinkPreview.vue';
@@ -46,6 +47,7 @@ export { default as BaseReplyMessage } from './2_feed_elements/BaseReplyMessage/
46
47
  export { default as CallMessage } from './2_feed_elements/CallMessage/CallMessage.vue';
47
48
  export { default as DateMessage } from './2_feed_elements/DateMessage/DateMessage.vue';
48
49
  export { default as DateMessageSticky } from './2_feed_elements/DateMessageSticky/DateMessageSticky.vue';
50
+ export { default as DelimiterMessage } from './2_feed_elements/DelimiterMessage/DelimiterMessage.vue';
49
51
  export { default as FeedKeyboard } from './2_feed_elements/FeedKeyboard/FeedKeyboard.vue';
50
52
  export { default as FileMessage } from './2_feed_elements/FileMessage/FileMessage.vue';
51
53
  export { default as ImageMessage } from './2_feed_elements/ImageMessage/ImageMessage.vue';
@@ -4,6 +4,10 @@ export const en: {
4
4
  'layout.ChatWrapper.noSelectedChat': string;
5
5
  'component.ChatItem.typing': string;
6
6
  'component.ChatInput.InputPlaceholder': string;
7
+ 'component.ChatInput.TelegramInputPlaceholder': string;
8
+ 'component.ChatInput.WhatsappInputPlaceholder': string;
9
+ 'component.ChatInput.SmsInputPlaceholder': string;
10
+ 'component.ChatInput.MaxInputPlaceholder': string;
7
11
  'component.FeedFoundObjects.results': string;
8
12
  'component.FeedFoundObjects.notFound': string;
9
13
  'component.FeedFoundObjects.notSearched': string;
@@ -4,6 +4,10 @@ export const ru: {
4
4
  'layout.ChatWrapper.noSelectedChat': string;
5
5
  'component.ChatItem.typing': string;
6
6
  'component.ChatInput.InputPlaceholder': string;
7
+ 'component.ChatInput.WhatsappInputPlaceholder': string;
8
+ 'component.ChatInput.TelegramInputPlaceholder': string;
9
+ 'component.ChatInput.SmsInputPlaceholder': string;
10
+ 'component.ChatInput.MaxInputPlaceholder': string;
7
11
  'component.FeedFoundObjects.results': string;
8
12
  'component.FeedFoundObjects.notFound': string;
9
13
  'component.FeedFoundObjects.notSearched': string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mobilon-dev/chotto",
3
- "version": "0.3.35",
3
+ "version": "0.3.37",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",