@blueking/chat-x 0.0.3-beta.1 → 0.0.3-beta.3

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.
@@ -36,6 +36,7 @@ export interface BaseMessage<T extends MessageType, C = string> {
36
36
  __value: string;
37
37
  context_type: 'checkbox' | 'input' | 'number' | 'radioGroup' | 'select' | 'switcher' | 'text' | 'textarea';
38
38
  } & Partial<OldShortcut>>[];
39
+ pause?: boolean;
39
40
  shortcut?: Partial<Shortcut>;
40
41
  };
41
42
  };
@@ -1,8 +1,10 @@
1
+ import type { AITippyProps } from '../../../types';
1
2
  import 'tippy.js/dist/tippy.css';
2
3
  export type FileUploadBtnProps = {
3
4
  accept?: string;
4
5
  maxFiles?: number;
5
6
  multiple?: boolean;
7
+ tippyOptions?: AITippyProps;
6
8
  };
7
9
  declare var __VLS_1: {};
8
10
  type __VLS_Slots = {} & {
@@ -1,5 +1,5 @@
1
1
  import { type UserMessage, MessageContentType, MessageStatus } from '../../ag-ui/types';
2
- import { type IAiSlashMenuItem, type Shortcut, type TagSchema, type UploadFile, UploadStatus } from '../../types';
2
+ import { type AITippyProps, type IAiSlashMenuItem, type Shortcut, type TagSchema, type UploadFile, UploadStatus } from '../../types';
3
3
  export type ChatInputProps = {
4
4
  defaultUploadFiles?: UploadFile[];
5
5
  inputMaxHeight?: number;
@@ -15,6 +15,8 @@ export type ChatInputProps = {
15
15
  resources?: IAiSlashMenuItem[];
16
16
  shortcutId?: string;
17
17
  shortcuts?: Shortcut[];
18
+ supportUpload?: boolean;
19
+ tippyOptions?: AITippyProps;
18
20
  };
19
21
  type __VLS_Props = ChatInputProps;
20
22
  type __VLS_ModelProps = {
@@ -94,6 +96,7 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {
94
96
  prompts: string[];
95
97
  resources: IAiSlashMenuItem[];
96
98
  inputMaxHeight: number;
99
+ supportUpload: boolean;
97
100
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
98
101
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
99
102
  declare const _default: typeof __VLS_export;
@@ -1,7 +1,9 @@
1
1
  import { MessageStatus } from '../../../ag-ui/types';
2
+ import type { AITippyProps } from '../../../types';
2
3
  import 'tippy.js/dist/tippy.css';
3
4
  type __VLS_Props = {
4
5
  messageState?: MessageStatus;
6
+ tippyOptions?: AITippyProps;
5
7
  };
6
8
  declare var __VLS_1: {}, __VLS_3: {};
7
9
  type __VLS_Slots = {} & {
@@ -91,6 +91,7 @@ declare var __VLS_9: {
91
91
  required?: boolean | undefined;
92
92
  rows?: number | undefined;
93
93
  }[];
94
+ pause?: boolean | undefined;
94
95
  shortcut?: {
95
96
  alias?: string | undefined;
96
97
  components?: ({
@@ -636,6 +637,7 @@ declare var __VLS_9: {
636
637
  required?: boolean | undefined;
637
638
  rows?: number | undefined;
638
639
  }[];
640
+ pause?: boolean | undefined;
639
641
  shortcut?: {
640
642
  alias?: string | undefined;
641
643
  components?: ({
@@ -1171,6 +1173,7 @@ declare var __VLS_9: {
1171
1173
  required?: boolean | undefined;
1172
1174
  rows?: number | undefined;
1173
1175
  }[];
1176
+ pause?: boolean | undefined;
1174
1177
  shortcut?: {
1175
1178
  alias?: string | undefined;
1176
1179
  components?: ({
@@ -1704,6 +1707,7 @@ declare var __VLS_9: {
1704
1707
  required?: boolean | undefined;
1705
1708
  rows?: number | undefined;
1706
1709
  }[];
1710
+ pause?: boolean | undefined;
1707
1711
  shortcut?: {
1708
1712
  alias?: string | undefined;
1709
1713
  components?: ({
@@ -2237,6 +2241,7 @@ declare var __VLS_9: {
2237
2241
  required?: boolean | undefined;
2238
2242
  rows?: number | undefined;
2239
2243
  }[];
2244
+ pause?: boolean | undefined;
2240
2245
  shortcut?: {
2241
2246
  alias?: string | undefined;
2242
2247
  components?: ({
@@ -2770,6 +2775,7 @@ declare var __VLS_9: {
2770
2775
  required?: boolean | undefined;
2771
2776
  rows?: number | undefined;
2772
2777
  }[];
2778
+ pause?: boolean | undefined;
2773
2779
  shortcut?: {
2774
2780
  alias?: string | undefined;
2775
2781
  components?: ({
@@ -3303,6 +3309,7 @@ declare var __VLS_9: {
3303
3309
  required?: boolean | undefined;
3304
3310
  rows?: number | undefined;
3305
3311
  }[];
3312
+ pause?: boolean | undefined;
3306
3313
  shortcut?: {
3307
3314
  alias?: string | undefined;
3308
3315
  components?: ({
@@ -3836,6 +3843,7 @@ declare var __VLS_9: {
3836
3843
  required?: boolean | undefined;
3837
3844
  rows?: number | undefined;
3838
3845
  }[];
3846
+ pause?: boolean | undefined;
3839
3847
  shortcut?: {
3840
3848
  alias?: string | undefined;
3841
3849
  components?: ({
@@ -4369,6 +4377,7 @@ declare var __VLS_9: {
4369
4377
  required?: boolean | undefined;
4370
4378
  rows?: number | undefined;
4371
4379
  }[];
4380
+ pause?: boolean | undefined;
4372
4381
  shortcut?: {
4373
4382
  alias?: string | undefined;
4374
4383
  components?: ({
@@ -4902,6 +4911,7 @@ declare var __VLS_9: {
4902
4911
  required?: boolean | undefined;
4903
4912
  rows?: number | undefined;
4904
4913
  }[];
4914
+ pause?: boolean | undefined;
4905
4915
  shortcut?: {
4906
4916
  alias?: string | undefined;
4907
4917
  components?: ({
@@ -5435,6 +5445,7 @@ declare var __VLS_9: {
5435
5445
  required?: boolean | undefined;
5436
5446
  rows?: number | undefined;
5437
5447
  }[];
5448
+ pause?: boolean | undefined;
5438
5449
  shortcut?: {
5439
5450
  alias?: string | undefined;
5440
5451
  components?: ({
@@ -5968,6 +5979,7 @@ declare var __VLS_9: {
5968
5979
  required?: boolean | undefined;
5969
5980
  rows?: number | undefined;
5970
5981
  }[];
5982
+ pause?: boolean | undefined;
5971
5983
  shortcut?: {
5972
5984
  alias?: string | undefined;
5973
5985
  components?: ({
@@ -6501,6 +6513,7 @@ declare var __VLS_9: {
6501
6513
  required?: boolean | undefined;
6502
6514
  rows?: number | undefined;
6503
6515
  }[];
6516
+ pause?: boolean | undefined;
6504
6517
  shortcut?: {
6505
6518
  alias?: string | undefined;
6506
6519
  components?: ({
@@ -7034,6 +7047,7 @@ declare var __VLS_9: {
7034
7047
  required?: boolean | undefined;
7035
7048
  rows?: number | undefined;
7036
7049
  }[];
7050
+ pause?: boolean | undefined;
7037
7051
  shortcut?: {
7038
7052
  alias?: string | undefined;
7039
7053
  components?: ({
@@ -7568,6 +7582,7 @@ declare var __VLS_9: {
7568
7582
  required?: boolean | undefined;
7569
7583
  rows?: number | undefined;
7570
7584
  }[];
7585
+ pause?: boolean | undefined;
7571
7586
  shortcut?: {
7572
7587
  alias?: string | undefined;
7573
7588
  components?: ({
@@ -8101,6 +8116,7 @@ declare var __VLS_9: {
8101
8116
  required?: boolean | undefined;
8102
8117
  rows?: number | undefined;
8103
8118
  }[];
8119
+ pause?: boolean | undefined;
8104
8120
  shortcut?: {
8105
8121
  alias?: string | undefined;
8106
8122
  components?: ({
@@ -8634,6 +8650,7 @@ declare var __VLS_9: {
8634
8650
  required?: boolean | undefined;
8635
8651
  rows?: number | undefined;
8636
8652
  }[];
8653
+ pause?: boolean | undefined;
8637
8654
  shortcut?: {
8638
8655
  alias?: string | undefined;
8639
8656
  components?: ({
@@ -9167,6 +9184,7 @@ declare var __VLS_9: {
9167
9184
  required?: boolean | undefined;
9168
9185
  rows?: number | undefined;
9169
9186
  }[];
9187
+ pause?: boolean | undefined;
9170
9188
  shortcut?: {
9171
9189
  alias?: string | undefined;
9172
9190
  components?: ({
@@ -9700,6 +9718,7 @@ declare var __VLS_9: {
9700
9718
  required?: boolean | undefined;
9701
9719
  rows?: number | undefined;
9702
9720
  }[];
9721
+ pause?: boolean | undefined;
9703
9722
  shortcut?: {
9704
9723
  alias?: string | undefined;
9705
9724
  components?: ({
@@ -10233,6 +10252,7 @@ declare var __VLS_9: {
10233
10252
  required?: boolean | undefined;
10234
10253
  rows?: number | undefined;
10235
10254
  }[];
10255
+ pause?: boolean | undefined;
10236
10256
  shortcut?: {
10237
10257
  alias?: string | undefined;
10238
10258
  components?: ({
@@ -10766,6 +10786,7 @@ declare var __VLS_9: {
10766
10786
  required?: boolean | undefined;
10767
10787
  rows?: number | undefined;
10768
10788
  }[];
10789
+ pause?: boolean | undefined;
10769
10790
  shortcut?: {
10770
10791
  alias?: string | undefined;
10771
10792
  components?: ({
@@ -11302,6 +11323,7 @@ declare var __VLS_9: {
11302
11323
  required?: boolean | undefined;
11303
11324
  rows?: number | undefined;
11304
11325
  }[];
11326
+ pause?: boolean | undefined;
11305
11327
  shortcut?: {
11306
11328
  alias?: string | undefined;
11307
11329
  components?: ({
@@ -11845,6 +11867,7 @@ declare var __VLS_9: {
11845
11867
  required?: boolean | undefined;
11846
11868
  rows?: number | undefined;
11847
11869
  }[];
11870
+ pause?: boolean | undefined;
11848
11871
  shortcut?: {
11849
11872
  alias?: string | undefined;
11850
11873
  components?: ({
@@ -0,0 +1,24 @@
1
+ type __VLS_Props = {
2
+ maskClosable?: boolean;
3
+ onDownload?: (url: string) => void;
4
+ showInfo?: boolean;
5
+ };
6
+ declare var __VLS_1: {}, __VLS_9: {};
7
+ type __VLS_Slots = {} & {
8
+ default?: (props: typeof __VLS_1) => any;
9
+ } & {
10
+ extra?: (props: typeof __VLS_9) => any;
11
+ };
12
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
13
+ showInfo: boolean;
14
+ onDownload: (url: string) => void;
15
+ maskClosable: boolean;
16
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
17
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
18
+ declare const _default: typeof __VLS_export;
19
+ export default _default;
20
+ type __VLS_WithSlots<T, S> = T & {
21
+ new (): {
22
+ $slots: S;
23
+ };
24
+ };
@@ -0,0 +1,36 @@
1
+ import type { ImageItem } from '../../types/image';
2
+ type __VLS_Props = {
3
+ images?: (File | ImageItem | string)[];
4
+ maskClosable?: boolean;
5
+ onDownload?: (url: string) => void;
6
+ showInfo?: boolean;
7
+ };
8
+ type __VLS_ModelProps = {
9
+ 'visible': boolean;
10
+ 'current'?: number;
11
+ };
12
+ type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
13
+ declare var __VLS_49: {};
14
+ type __VLS_Slots = {} & {
15
+ extra?: (props: typeof __VLS_49) => any;
16
+ };
17
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
+ "update:visible": (value: boolean) => any;
19
+ "update:current": (value: number) => any;
20
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
21
+ "onUpdate:visible"?: ((value: boolean) => any) | undefined;
22
+ "onUpdate:current"?: ((value: number) => any) | undefined;
23
+ }>, {
24
+ showInfo: boolean;
25
+ onDownload: (url: string) => void;
26
+ images: (File | ImageItem | string)[];
27
+ maskClosable: boolean;
28
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
29
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
30
+ declare const _default: typeof __VLS_export;
31
+ export default _default;
32
+ type __VLS_WithSlots<T, S> = T & {
33
+ new (): {
34
+ $slots: S;
35
+ };
36
+ };
@@ -0,0 +1,45 @@
1
+ import type { ImagePreviewConfig } from '../../types/image';
2
+ type __VLS_Props = {
3
+ alt?: string;
4
+ height?: number | string;
5
+ lazy?: boolean;
6
+ onDownload?: (url: string) => void;
7
+ preview?: boolean;
8
+ previewProps?: ImagePreviewConfig;
9
+ showInfo?: boolean;
10
+ src: string;
11
+ width?: number | string;
12
+ };
13
+ declare var __VLS_13: {}, __VLS_21: {};
14
+ type __VLS_Slots = {} & {
15
+ default?: (props: typeof __VLS_13) => any;
16
+ } & {
17
+ extra?: (props: typeof __VLS_21) => any;
18
+ };
19
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
20
+ previewVisible: import("vue").ShallowRef<boolean, boolean>;
21
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
22
+ error: (ev: Event) => any;
23
+ load: (ev: Event) => any;
24
+ preview: () => any;
25
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
26
+ onError?: ((ev: Event) => any) | undefined;
27
+ onLoad?: ((ev: Event) => any) | undefined;
28
+ onPreview?: (() => any) | undefined;
29
+ }>, {
30
+ width: number | string;
31
+ height: number | string;
32
+ alt: string;
33
+ lazy: boolean;
34
+ showInfo: boolean;
35
+ preview: boolean;
36
+ previewProps: ImagePreviewConfig;
37
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
38
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
39
+ declare const _default: typeof __VLS_export;
40
+ export default _default;
41
+ type __VLS_WithSlots<T, S> = T & {
42
+ new (): {
43
+ $slots: S;
44
+ };
45
+ };
@@ -0,0 +1,35 @@
1
+ type __VLS_Props = {
2
+ activeIndex: number;
3
+ currentImageInfo?: null | {
4
+ resolution?: string;
5
+ width?: number;
6
+ };
7
+ isMultiple: boolean;
8
+ showInfo: boolean;
9
+ total: number;
10
+ };
11
+ declare var __VLS_31: {};
12
+ type __VLS_Slots = {} & {
13
+ extra?: (props: typeof __VLS_31) => any;
14
+ };
15
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
16
+ reset: () => any;
17
+ zoomIn: () => any;
18
+ zoomOut: () => any;
19
+ rotate: () => any;
20
+ download: () => any;
21
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
22
+ onReset?: (() => any) | undefined;
23
+ onZoomIn?: (() => any) | undefined;
24
+ onZoomOut?: (() => any) | undefined;
25
+ onRotate?: (() => any) | undefined;
26
+ onDownload?: (() => any) | undefined;
27
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
28
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
29
+ declare const _default: typeof __VLS_export;
30
+ export default _default;
31
+ type __VLS_WithSlots<T, S> = T & {
32
+ new (): {
33
+ $slots: S;
34
+ };
35
+ };
@@ -0,0 +1,10 @@
1
+ import type { CSSProperties } from 'vue';
2
+ export declare function useImageTransform(): {
3
+ imageStyle: import("vue").ComputedRef<CSSProperties>;
4
+ resetTransform: () => void;
5
+ zoomIn: () => void;
6
+ zoomOut: () => void;
7
+ rotateCW: () => void;
8
+ handleWheel: (e: WheelEvent) => void;
9
+ handleDragStart: (e: MouseEvent) => void;
10
+ };
@@ -0,0 +1,8 @@
1
+ import type { Ref } from 'vue';
2
+ export interface PreviewKeyboardOptions {
3
+ visible: Ref<boolean>;
4
+ onClose: () => void;
5
+ onNext?: () => void;
6
+ onPrev?: () => void;
7
+ }
8
+ export declare function usePreviewKeyboard(options: PreviewKeyboardOptions): void;
@@ -6,6 +6,9 @@ import ContentRender from './chat-content/content-render/content-render.vue';
6
6
  import ChatInput from './chat-input/chat-input.vue';
7
7
  import MessageContainer from './chat-message/message-container/message-container.vue';
8
8
  import MessageRender from './chat-message/message-render/message-render.vue';
9
+ import ImagePreviewGroup from './image-preview/image-preview-group.vue';
10
+ import ImagePreview from './image-preview/image-preview.vue';
11
+ import AiImage from './image-preview/image.vue';
9
12
  import MessageTools from './message-tools/message-tools.vue';
10
13
  import MessageUserFeedback from './message-tools/user-feedback/user-feedback.vue';
11
- export { AiSelection, ChatInput, ContentRender, MessageContainer, MessageRender, MessageTools, MessageUserFeedback, ShortcutBtn, ShortcutBtns, ShortcutRender, };
14
+ export { AiImage, AiSelection, ChatInput, ContentRender, ImagePreview, ImagePreviewGroup, MessageContainer, MessageRender, MessageTools, MessageUserFeedback, ShortcutBtn, ShortcutBtns, ShortcutRender, };
@@ -1,13 +1,12 @@
1
- import { type TippyOptions } from 'vue-tippy';
2
1
  import { MessageToolsStatus } from '../../types/tool';
3
2
  import type { UserMessage } from '../../ag-ui/types/messages';
4
- import type { IToolBtn, TagSchema } from '../../types';
3
+ import type { AITippyProps, IToolBtn, TagSchema } from '../../types';
5
4
  import 'tippy.js/dist/tippy.css';
6
5
  export type MessageToolsProps = {
7
6
  messageTools?: IToolBtn[];
8
7
  messageToolsStatus?: MessageToolsStatus;
9
8
  onAction?: (tool: IToolBtn, content?: UserMessage['content'], docSchema?: TagSchema) => Promise<string[] | void>;
10
- tippyOptions?: Partial<Omit<TippyOptions, 'getReferenceClientRect' | 'triggerTarget'>>;
9
+ tippyOptions?: AITippyProps;
11
10
  updateTools?: IToolBtn[];
12
11
  };
13
12
  declare const __VLS_export: import("vue").DefineComponent<MessageToolsProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
@@ -0,0 +1,33 @@
1
+ export declare const ZoomInIcon: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
2
+ [key: string]: any;
3
+ }>;
4
+ export declare const ZoomOutIcon: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
5
+ [key: string]: any;
6
+ }>;
7
+ export declare const RotateIcon: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
8
+ [key: string]: any;
9
+ }>;
10
+ export declare const FitScreenIcon: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
11
+ [key: string]: any;
12
+ }>;
13
+ export declare const DownloadIcon: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
14
+ [key: string]: any;
15
+ }>;
16
+ export declare const PreviewCloseIcon: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
17
+ [key: string]: any;
18
+ }>;
19
+ export declare const ArrowLeftIcon: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
20
+ [key: string]: any;
21
+ }>;
22
+ export declare const ArrowRightPreviewIcon: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
23
+ [key: string]: any;
24
+ }>;
25
+ export declare const ReloadIcon: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
26
+ [key: string]: any;
27
+ }>;
28
+ export declare const ImageBrokenIcon: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
29
+ [key: string]: any;
30
+ }>;
31
+ export declare const ImageSizeIcon: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
32
+ [key: string]: any;
33
+ }>;
@@ -1,5 +1,6 @@
1
1
  export * from './ai';
2
2
  export * from './content';
3
+ export * from './image-preview';
3
4
  export * from './input';
4
5
  export * from './messages';
5
6
  export * from './shortcuts';