@docyrus/ui-pro-ai-assistant 0.4.9 → 0.5.1

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.
@@ -3,6 +3,7 @@
3
3
  */
4
4
  interface RawMessage {
5
5
  id?: string;
6
+ message_id?: string;
6
7
  body_json?: string | object;
7
8
  body_text?: string;
8
9
  body?: string;
package/dist/styles.css CHANGED
@@ -1283,6 +1283,9 @@
1283
1283
  .min-h-30 {
1284
1284
  min-height: calc(var(--spacing) * 30);
1285
1285
  }
1286
+ .min-h-32 {
1287
+ min-height: calc(var(--spacing) * 32);
1288
+ }
1286
1289
  .min-h-50 {
1287
1290
  min-height: calc(var(--spacing) * 50);
1288
1291
  }
@@ -4656,11 +4659,6 @@
4656
4659
  opacity: 100%;
4657
4660
  }
4658
4661
  }
4659
- .group-data-horizontal\/tabs\:h-9 {
4660
- &:is(:where(.group\/tabs)[data-horizontal] *) {
4661
- height: calc(var(--spacing) * 9);
4662
- }
4663
- }
4664
4662
  .group-data-open\/navigation-menu-trigger\:rotate-180 {
4665
4663
  &:is(:where(.group\/navigation-menu-trigger)[data-open] *) {
4666
4664
  rotate: 180deg;
@@ -4676,26 +4674,6 @@
4676
4674
  color: var(--foreground);
4677
4675
  }
4678
4676
  }
4679
- .group-data-vertical\/tabs\:h-fit {
4680
- &:is(:where(.group\/tabs)[data-vertical] *) {
4681
- height: fit-content;
4682
- }
4683
- }
4684
- .group-data-vertical\/tabs\:w-full {
4685
- &:is(:where(.group\/tabs)[data-vertical] *) {
4686
- width: 100%;
4687
- }
4688
- }
4689
- .group-data-vertical\/tabs\:flex-col {
4690
- &:is(:where(.group\/tabs)[data-vertical] *) {
4691
- flex-direction: column;
4692
- }
4693
- }
4694
- .group-data-vertical\/tabs\:justify-start {
4695
- &:is(:where(.group\/tabs)[data-vertical] *) {
4696
- justify-content: flex-start;
4697
- }
4698
- }
4699
4677
  .group-data-\[active-item\=\'true\'\]\/menu-item\:inline-block {
4700
4678
  &:is(:where(.group\/menu-item)[data-active-item='true'] *) {
4701
4679
  display: inline-block;
@@ -4812,6 +4790,31 @@
4812
4790
  }
4813
4791
  }
4814
4792
  }
4793
+ .group-data-\[orientation\=horizontal\]\/tabs\:h-9 {
4794
+ &:is(:where(.group\/tabs)[data-orientation="horizontal"] *) {
4795
+ height: calc(var(--spacing) * 9);
4796
+ }
4797
+ }
4798
+ .group-data-\[orientation\=vertical\]\/tabs\:h-fit {
4799
+ &:is(:where(.group\/tabs)[data-orientation="vertical"] *) {
4800
+ height: fit-content;
4801
+ }
4802
+ }
4803
+ .group-data-\[orientation\=vertical\]\/tabs\:w-full {
4804
+ &:is(:where(.group\/tabs)[data-orientation="vertical"] *) {
4805
+ width: 100%;
4806
+ }
4807
+ }
4808
+ .group-data-\[orientation\=vertical\]\/tabs\:flex-col {
4809
+ &:is(:where(.group\/tabs)[data-orientation="vertical"] *) {
4810
+ flex-direction: column;
4811
+ }
4812
+ }
4813
+ .group-data-\[orientation\=vertical\]\/tabs\:justify-start {
4814
+ &:is(:where(.group\/tabs)[data-orientation="vertical"] *) {
4815
+ justify-content: flex-start;
4816
+ }
4817
+ }
4815
4818
  .group-data-\[pressed\=true\]\:bg-accent {
4816
4819
  &:is(:where(.group)[data-pressed="true"] *) {
4817
4820
  background-color: var(--accent);
@@ -5875,62 +5878,62 @@
5875
5878
  }
5876
5879
  }
5877
5880
  }
5878
- .group-data-horizontal\/tabs\:after\:inset-x-0 {
5879
- &:is(:where(.group\/tabs)[data-horizontal] *) {
5881
+ .group-data-\[collapsible\=offcanvas\]\:after\:inset-s-full {
5882
+ &:is(:where(.group)[data-collapsible="offcanvas"] *) {
5883
+ &::after {
5884
+ content: var(--tw-content);
5885
+ inset-inline-start: 100%;
5886
+ }
5887
+ }
5888
+ }
5889
+ .group-data-\[orientation\=horizontal\]\/tabs\:after\:inset-x-0 {
5890
+ &:is(:where(.group\/tabs)[data-orientation="horizontal"] *) {
5880
5891
  &::after {
5881
5892
  content: var(--tw-content);
5882
5893
  inset-inline: calc(var(--spacing) * 0);
5883
5894
  }
5884
5895
  }
5885
5896
  }
5886
- .group-data-horizontal\/tabs\:after\:bottom-\[-5px\] {
5887
- &:is(:where(.group\/tabs)[data-horizontal] *) {
5897
+ .group-data-\[orientation\=horizontal\]\/tabs\:after\:bottom-\[-5px\] {
5898
+ &:is(:where(.group\/tabs)[data-orientation="horizontal"] *) {
5888
5899
  &::after {
5889
5900
  content: var(--tw-content);
5890
5901
  bottom: -5px;
5891
5902
  }
5892
5903
  }
5893
5904
  }
5894
- .group-data-horizontal\/tabs\:after\:h-0\.5 {
5895
- &:is(:where(.group\/tabs)[data-horizontal] *) {
5905
+ .group-data-\[orientation\=horizontal\]\/tabs\:after\:h-0\.5 {
5906
+ &:is(:where(.group\/tabs)[data-orientation="horizontal"] *) {
5896
5907
  &::after {
5897
5908
  content: var(--tw-content);
5898
5909
  height: calc(var(--spacing) * 0.5);
5899
5910
  }
5900
5911
  }
5901
5912
  }
5902
- .group-data-vertical\/tabs\:after\:inset-y-0 {
5903
- &:is(:where(.group\/tabs)[data-vertical] *) {
5913
+ .group-data-\[orientation\=vertical\]\/tabs\:after\:inset-y-0 {
5914
+ &:is(:where(.group\/tabs)[data-orientation="vertical"] *) {
5904
5915
  &::after {
5905
5916
  content: var(--tw-content);
5906
5917
  inset-block: calc(var(--spacing) * 0);
5907
5918
  }
5908
5919
  }
5909
5920
  }
5910
- .group-data-vertical\/tabs\:after\:-inset-e-1 {
5911
- &:is(:where(.group\/tabs)[data-vertical] *) {
5921
+ .group-data-\[orientation\=vertical\]\/tabs\:after\:-inset-e-1 {
5922
+ &:is(:where(.group\/tabs)[data-orientation="vertical"] *) {
5912
5923
  &::after {
5913
5924
  content: var(--tw-content);
5914
5925
  inset-inline-end: calc(var(--spacing) * -1);
5915
5926
  }
5916
5927
  }
5917
5928
  }
5918
- .group-data-vertical\/tabs\:after\:w-0\.5 {
5919
- &:is(:where(.group\/tabs)[data-vertical] *) {
5929
+ .group-data-\[orientation\=vertical\]\/tabs\:after\:w-0\.5 {
5930
+ &:is(:where(.group\/tabs)[data-orientation="vertical"] *) {
5920
5931
  &::after {
5921
5932
  content: var(--tw-content);
5922
5933
  width: calc(var(--spacing) * 0.5);
5923
5934
  }
5924
5935
  }
5925
5936
  }
5926
- .group-data-\[collapsible\=offcanvas\]\:after\:inset-s-full {
5927
- &:is(:where(.group)[data-collapsible="offcanvas"] *) {
5928
- &::after {
5929
- content: var(--tw-content);
5930
- inset-inline-start: 100%;
5931
- }
5932
- }
5933
- }
5934
5937
  .first\:rounded-s-md {
5935
5938
  &:first-child {
5936
5939
  border-start-start-radius: var(--radius-md);
@@ -8262,6 +8265,11 @@
8262
8265
  width: calc(100% - (calc(var(--spacing) * 12)));
8263
8266
  }
8264
8267
  }
8268
+ .data-\[orientation\=horizontal\]\:flex-col {
8269
+ &[data-orientation="horizontal"] {
8270
+ flex-direction: column;
8271
+ }
8272
+ }
8265
8273
  .data-\[position\=popper\]\:h-\(--radix-select-trigger-height\) {
8266
8274
  &[data-position="popper"] {
8267
8275
  height: var(--radix-select-trigger-height);
@@ -31,6 +31,7 @@ interface AssistantViewCommonProps {
31
31
  recognition?: any;
32
32
  onMicrophoneClick?: () => void;
33
33
  onToolAction?: (event: ToolActionEvent) => void;
34
+ onEditPrompt?: (messageIndex: number, newText: string) => void;
34
35
  showWelcome?: boolean;
35
36
  recentSessions?: AssistantSession[];
36
37
  onSessionClick?: (session: AssistantSession) => void;
@@ -48,6 +48,7 @@ export interface ChatPanelProps {
48
48
  onToolAction?: (event: ToolActionEvent) => void;
49
49
  openCanvasView?: (options: CanvasViewOptions) => void;
50
50
  onSendSpreadsheetCommands?: (commands: any[]) => void;
51
+ onEditPrompt?: (messageIndex: number, newText: string) => void;
51
52
  renderThreadHeader?: () => ReactNode;
52
53
  messagesClassName?: string;
53
54
  compactToolbar?: boolean;
@@ -58,4 +59,4 @@ export interface ChatPanelProps {
58
59
  initialModelId?: string;
59
60
  initialFeatures?: InitialFeatureFlags;
60
61
  }
61
- export declare function ChatPanel({ messages, isLoading, input, onInputChange, onSendMessage, onStop, logo, userPhoto, userDisplayName, description, title, welcomeMessage, isLoadingAgent, placeholder, footerText, supportFiles, supportWebSearch, supportDocumentSearch, supportDeepResearch, supportThinking, supportWorkCanvas, supportMultiModels, deploymentId, tenantAiAgentId, enableMicrophone, enableVoice, isRecording, recognition, onMicrophoneClick, onToolAction, openCanvasView, onSendSpreadsheetCommands: _onSendSpreadsheetCommands, renderThreadHeader, messagesClassName, compactToolbar, showWelcome, recentSessions, onSessionClick, threadId, initialModelId, initialFeatures }: ChatPanelProps): import("react/jsx-runtime").JSX.Element;
62
+ export declare function ChatPanel({ messages, isLoading, input, onInputChange, onSendMessage, onStop, logo, userPhoto, userDisplayName, description, title, welcomeMessage, isLoadingAgent, placeholder, footerText, supportFiles, supportWebSearch, supportDocumentSearch, supportDeepResearch, supportThinking, supportWorkCanvas, supportMultiModels, deploymentId, tenantAiAgentId, enableMicrophone, enableVoice, isRecording, recognition, onMicrophoneClick, onToolAction, openCanvasView, onSendSpreadsheetCommands: _onSendSpreadsheetCommands, onEditPrompt, renderThreadHeader, messagesClassName, compactToolbar, showWelcome, recentSessions, onSessionClick, threadId, initialModelId, initialFeatures }: ChatPanelProps): import("react/jsx-runtime").JSX.Element;
@@ -27,6 +27,7 @@ interface MessageListProps {
27
27
  data?: any;
28
28
  state?: string;
29
29
  }) => void;
30
+ onEditPrompt?: (messageIndex: number, newText: string) => void;
30
31
  }
31
- export declare const MessageList: import("react").MemoExoticComponent<({ messages, isLoading, logo, userPhoto, userDisplayName, description, title, welcomeMessage, isLoadingAgent, agentId, className, agents, onToolAction, openCanvasView, onForwardToAgent, onUseWorkResult }: MessageListProps) => import("react/jsx-runtime").JSX.Element>;
32
+ export declare const MessageList: import("react").MemoExoticComponent<({ messages, isLoading, logo, userPhoto, userDisplayName, description, title, welcomeMessage, isLoadingAgent, agentId, className, agents, onToolAction, openCanvasView, onForwardToAgent, onUseWorkResult, onEditPrompt }: MessageListProps) => import("react/jsx-runtime").JSX.Element>;
32
33
  export {};
@@ -9,6 +9,7 @@ interface ProjectsPanelProps {
9
9
  onEditProject: (project: Project) => void;
10
10
  onDeleteProject: (project: Project) => void;
11
11
  compact?: boolean;
12
+ sidebarOffset?: boolean;
12
13
  t: (key: string, params?: Record<string, string>) => string;
13
14
  }
14
15
  export declare const AssistantProjectsPanel: FC<ProjectsPanelProps>;
@@ -16,6 +16,7 @@ interface SidebarContentProps {
16
16
  onShowMoreProjects: () => void;
17
17
  onNewProject?: () => void;
18
18
  onToggleSidebar?: () => void;
19
+ supportWorkCanvas?: boolean;
19
20
  t: (key: string) => string;
20
21
  }
21
22
  export declare const SidebarContent: FC<SidebarContentProps>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@docyrus/ui-pro-ai-assistant",
3
- "version": "0.4.9",
3
+ "version": "0.5.1",
4
4
  "description": "Docyrus AI Assistant component — full-featured chat UI with canvas, projects, and i18n support.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -140,11 +140,11 @@
140
140
  "tailwindcss": "4.2.1",
141
141
  "tsup": "8.5.1",
142
142
  "typescript": "5.9.3",
143
- "@docyrus/ui-pro-shared": "0.0.4"
143
+ "@docyrus/ui-pro-shared": "0.0.5"
144
144
  },
145
145
  "peerDependencies": {
146
146
  "@docyrus/api-client": ">=0.1.0",
147
- "@docyrus/ui-pro-shared": ">=0.0.4",
147
+ "@docyrus/ui-pro-shared": ">=0.0.5",
148
148
  "react": "19.2.4",
149
149
  "react-dom": "19.2.4",
150
150
  "vite": ">=5.0.0"