@agentiffai/design 0.1.9 → 0.1.11
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/dist/{Window-CF5y1_Og.d.cts → Window-BcTRumpc.d.cts} +3 -26
- package/dist/{Window-CF5y1_Og.d.ts → Window-BcTRumpc.d.ts} +3 -26
- package/dist/copilotkit/index.cjs +72 -40
- package/dist/copilotkit/index.cjs.map +1 -1
- package/dist/copilotkit/index.d.cts +4 -27
- package/dist/copilotkit/index.d.ts +4 -27
- package/dist/copilotkit/index.js +74 -42
- package/dist/copilotkit/index.js.map +1 -1
- package/dist/index.cjs +117 -69
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +15 -8
- package/dist/index.d.ts +15 -8
- package/dist/index.js +118 -70
- package/dist/index.js.map +1 -1
- package/dist/layout/index.cjs +7 -4
- package/dist/layout/index.cjs.map +1 -1
- package/dist/layout/index.d.cts +2 -1
- package/dist/layout/index.d.ts +2 -1
- package/dist/layout/index.js +7 -4
- package/dist/layout/index.js.map +1 -1
- package/dist/workflow/index.cjs +3 -1
- package/dist/workflow/index.cjs.map +1 -1
- package/dist/workflow/index.js +3 -1
- package/dist/workflow/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.d.cts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { AriaTextFieldProps } from '@react-aria/textfield';
|
|
3
|
-
import
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import React__default, { ReactNode } from 'react';
|
|
4
5
|
export { ActionButtons, ActionButtonsProps, BrandType, CategoryItem, CategoryNav, CategoryNavProps, CategorySubItem, Icon, IconName, IconNames, IconProps, Layout, LayoutProps, NavHorizontal, NavHorizontalProps, NavVertical, NavVerticalProps, OAuthConnectionData, PaneMenus, PaneMenusProps, PaneSectionHeader, PaneSectionHeaderProps, ServiceBrand, ServiceIcon, ServiceIconProps, WorkflowStatusCard, WorkflowStatusCardProps } from './layout/index.cjs';
|
|
5
6
|
import { AriaButtonProps } from '@react-aria/button';
|
|
6
7
|
export { GlobalStyle, darkTheme, lightTheme, tokens } from './theme/index.cjs';
|
|
7
|
-
export { A as Action, c as ActionVariant, d as Actions, a as ActionsLayout, b as ActionsProps, f as AgentState, e as AgentStateProps, q as AssistantMessage, m as AssistantMessageProps, i as Button, B as ButtonProps, g as ButtonSize, h as ButtonVariant, w as CopilotUserMessage, U as CopilotUserMessageProps, r as FileAttachment, n as FileAttachmentProps, j as Footer, F as FooterProps, k as Header, H as HeaderProps, l as Input, I as InputProps, M as Message, s as Messages, t as MessagesList, u as MessagesListContainer, v as MessagesListContent, o as MessagesListProps, p as MessagesProps, x as Response, R as ResponseProps, y as StreamErrorMessage, S as StreamErrorMessageProps, E as StreamStatusIndicator, D as StreamStatusIndicatorProps, C as StreamingText, z as StreamingTextProps, J as Suggestions, G as SuggestionsProps, K as Window, W as WindowProps } from './Window-
|
|
8
|
+
export { A as Action, c as ActionVariant, d as Actions, a as ActionsLayout, b as ActionsProps, f as AgentState, e as AgentStateProps, q as AssistantMessage, m as AssistantMessageProps, i as Button, B as ButtonProps, g as ButtonSize, h as ButtonVariant, w as CopilotUserMessage, U as CopilotUserMessageProps, r as FileAttachment, n as FileAttachmentProps, j as Footer, F as FooterProps, k as Header, H as HeaderProps, l as Input, I as InputProps, M as Message, s as Messages, t as MessagesList, u as MessagesListContainer, v as MessagesListContent, o as MessagesListProps, p as MessagesProps, x as Response, R as ResponseProps, y as StreamErrorMessage, S as StreamErrorMessageProps, E as StreamStatusIndicator, D as StreamStatusIndicatorProps, C as StreamingText, z as StreamingTextProps, J as Suggestions, G as SuggestionsProps, K as Window, W as WindowProps } from './Window-BcTRumpc.cjs';
|
|
8
9
|
export { FacebookIcon, FacebookIconProps, FacebookIconVariant, GmailIcon, GmailIconProps, GmailIconVariant, InstagramIcon, InstagramIconProps, InstagramVariant, LinkedInIcon, LinkedInIconProps, LinkedInIconVariant, RedditIcon, RedditIconProps, RedditIconVariant, SlackIcon, SlackIconProps, SlackIconVariant, TelegramIcon, TelegramIconProps, TelegramIconVariant, WhatsAppIcon, WhatsAppIconProps, WhatsAppIconVariant, XIcon, XIconProps, XIconVariant, YouTubeIcon, YouTubeIconProps, YouTubeIconVariant } from './icons/index.cjs';
|
|
9
10
|
export { WorkflowCard, WorkflowCardProps, WorkflowErrorAlert, WorkflowErrorAlertProps, WorkflowIntegration, WorkflowProgressBar, WorkflowProgressBarProps, WorkflowResultPanel, WorkflowResultPanelProps, WorkflowStatusBadge, WorkflowStatusBadgeProps } from './workflow/index.cjs';
|
|
10
11
|
import '@react-types/button';
|
|
@@ -163,7 +164,7 @@ interface UserMessageProps extends AriaButtonProps {
|
|
|
163
164
|
/**
|
|
164
165
|
* The message text to display
|
|
165
166
|
*/
|
|
166
|
-
children:
|
|
167
|
+
children: ReactNode;
|
|
167
168
|
/**
|
|
168
169
|
* Additional CSS class name
|
|
169
170
|
*/
|
|
@@ -184,6 +185,8 @@ interface UserMessageProps extends AriaButtonProps {
|
|
|
184
185
|
* pill-shaped design with fully rounded ends, and white text. It uses React ARIA
|
|
185
186
|
* for accessibility and supports keyboard navigation.
|
|
186
187
|
*
|
|
188
|
+
* Memoized to prevent unnecessary re-renders during parent updates.
|
|
189
|
+
*
|
|
187
190
|
* @example
|
|
188
191
|
* ```tsx
|
|
189
192
|
* <UserMessage onPress={() => console.log('clicked')}>
|
|
@@ -191,10 +194,8 @@ interface UserMessageProps extends AriaButtonProps {
|
|
|
191
194
|
* </UserMessage>
|
|
192
195
|
* ```
|
|
193
196
|
*/
|
|
194
|
-
declare function
|
|
195
|
-
declare
|
|
196
|
-
var displayName: string;
|
|
197
|
-
}
|
|
197
|
+
declare function UserMessageBase({ children, className, isPressed, onPress, ...ariaProps }: UserMessageProps): react_jsx_runtime.JSX.Element;
|
|
198
|
+
declare const UserMessage: React.MemoExoticComponent<typeof UserMessageBase>;
|
|
198
199
|
|
|
199
200
|
/**
|
|
200
201
|
* ConnectionStatusBadge Component
|
|
@@ -475,6 +476,10 @@ interface PlatformGridProps {
|
|
|
475
476
|
onEditContentChange?: (content: string) => void;
|
|
476
477
|
/** Whether content is being loaded/generated */
|
|
477
478
|
isLoading?: boolean;
|
|
479
|
+
/** Currently active/selected post index */
|
|
480
|
+
activeIndex?: number;
|
|
481
|
+
/** Callback when a post is clicked/selected */
|
|
482
|
+
onActiveChange?: (index: number) => void;
|
|
478
483
|
}
|
|
479
484
|
/**
|
|
480
485
|
* PlatformGrid displays all proposed posts in a responsive grid layout.
|
|
@@ -504,7 +509,7 @@ interface SocialMediaCanvasProps {
|
|
|
504
509
|
emptyTitle?: string;
|
|
505
510
|
/** Empty state description */
|
|
506
511
|
emptyDescription?: string;
|
|
507
|
-
/** Callback when active post changes
|
|
512
|
+
/** Callback when active post changes */
|
|
508
513
|
onActiveChange?: (index: number) => void;
|
|
509
514
|
/** Whether to show the view mode toggle */
|
|
510
515
|
showViewToggle?: boolean;
|
|
@@ -516,6 +521,8 @@ interface SocialMediaCanvasProps {
|
|
|
516
521
|
onEditContentChange?: (content: string) => void;
|
|
517
522
|
/** Whether content is being loaded/generated */
|
|
518
523
|
isLoading?: boolean;
|
|
524
|
+
/** Currently active post index (for grid mode) */
|
|
525
|
+
activeIndex?: number;
|
|
519
526
|
}
|
|
520
527
|
/**
|
|
521
528
|
* SocialMediaCanvas displays social media post previews in carousel or grid mode.
|
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { AriaTextFieldProps } from '@react-aria/textfield';
|
|
3
|
-
import
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import React__default, { ReactNode } from 'react';
|
|
4
5
|
export { ActionButtons, ActionButtonsProps, BrandType, CategoryItem, CategoryNav, CategoryNavProps, CategorySubItem, Icon, IconName, IconNames, IconProps, Layout, LayoutProps, NavHorizontal, NavHorizontalProps, NavVertical, NavVerticalProps, OAuthConnectionData, PaneMenus, PaneMenusProps, PaneSectionHeader, PaneSectionHeaderProps, ServiceBrand, ServiceIcon, ServiceIconProps, WorkflowStatusCard, WorkflowStatusCardProps } from './layout/index.js';
|
|
5
6
|
import { AriaButtonProps } from '@react-aria/button';
|
|
6
7
|
export { GlobalStyle, darkTheme, lightTheme, tokens } from './theme/index.js';
|
|
7
|
-
export { A as Action, c as ActionVariant, d as Actions, a as ActionsLayout, b as ActionsProps, f as AgentState, e as AgentStateProps, q as AssistantMessage, m as AssistantMessageProps, i as Button, B as ButtonProps, g as ButtonSize, h as ButtonVariant, w as CopilotUserMessage, U as CopilotUserMessageProps, r as FileAttachment, n as FileAttachmentProps, j as Footer, F as FooterProps, k as Header, H as HeaderProps, l as Input, I as InputProps, M as Message, s as Messages, t as MessagesList, u as MessagesListContainer, v as MessagesListContent, o as MessagesListProps, p as MessagesProps, x as Response, R as ResponseProps, y as StreamErrorMessage, S as StreamErrorMessageProps, E as StreamStatusIndicator, D as StreamStatusIndicatorProps, C as StreamingText, z as StreamingTextProps, J as Suggestions, G as SuggestionsProps, K as Window, W as WindowProps } from './Window-
|
|
8
|
+
export { A as Action, c as ActionVariant, d as Actions, a as ActionsLayout, b as ActionsProps, f as AgentState, e as AgentStateProps, q as AssistantMessage, m as AssistantMessageProps, i as Button, B as ButtonProps, g as ButtonSize, h as ButtonVariant, w as CopilotUserMessage, U as CopilotUserMessageProps, r as FileAttachment, n as FileAttachmentProps, j as Footer, F as FooterProps, k as Header, H as HeaderProps, l as Input, I as InputProps, M as Message, s as Messages, t as MessagesList, u as MessagesListContainer, v as MessagesListContent, o as MessagesListProps, p as MessagesProps, x as Response, R as ResponseProps, y as StreamErrorMessage, S as StreamErrorMessageProps, E as StreamStatusIndicator, D as StreamStatusIndicatorProps, C as StreamingText, z as StreamingTextProps, J as Suggestions, G as SuggestionsProps, K as Window, W as WindowProps } from './Window-BcTRumpc.js';
|
|
8
9
|
export { FacebookIcon, FacebookIconProps, FacebookIconVariant, GmailIcon, GmailIconProps, GmailIconVariant, InstagramIcon, InstagramIconProps, InstagramVariant, LinkedInIcon, LinkedInIconProps, LinkedInIconVariant, RedditIcon, RedditIconProps, RedditIconVariant, SlackIcon, SlackIconProps, SlackIconVariant, TelegramIcon, TelegramIconProps, TelegramIconVariant, WhatsAppIcon, WhatsAppIconProps, WhatsAppIconVariant, XIcon, XIconProps, XIconVariant, YouTubeIcon, YouTubeIconProps, YouTubeIconVariant } from './icons/index.js';
|
|
9
10
|
export { WorkflowCard, WorkflowCardProps, WorkflowErrorAlert, WorkflowErrorAlertProps, WorkflowIntegration, WorkflowProgressBar, WorkflowProgressBarProps, WorkflowResultPanel, WorkflowResultPanelProps, WorkflowStatusBadge, WorkflowStatusBadgeProps } from './workflow/index.js';
|
|
10
11
|
import '@react-types/button';
|
|
@@ -163,7 +164,7 @@ interface UserMessageProps extends AriaButtonProps {
|
|
|
163
164
|
/**
|
|
164
165
|
* The message text to display
|
|
165
166
|
*/
|
|
166
|
-
children:
|
|
167
|
+
children: ReactNode;
|
|
167
168
|
/**
|
|
168
169
|
* Additional CSS class name
|
|
169
170
|
*/
|
|
@@ -184,6 +185,8 @@ interface UserMessageProps extends AriaButtonProps {
|
|
|
184
185
|
* pill-shaped design with fully rounded ends, and white text. It uses React ARIA
|
|
185
186
|
* for accessibility and supports keyboard navigation.
|
|
186
187
|
*
|
|
188
|
+
* Memoized to prevent unnecessary re-renders during parent updates.
|
|
189
|
+
*
|
|
187
190
|
* @example
|
|
188
191
|
* ```tsx
|
|
189
192
|
* <UserMessage onPress={() => console.log('clicked')}>
|
|
@@ -191,10 +194,8 @@ interface UserMessageProps extends AriaButtonProps {
|
|
|
191
194
|
* </UserMessage>
|
|
192
195
|
* ```
|
|
193
196
|
*/
|
|
194
|
-
declare function
|
|
195
|
-
declare
|
|
196
|
-
var displayName: string;
|
|
197
|
-
}
|
|
197
|
+
declare function UserMessageBase({ children, className, isPressed, onPress, ...ariaProps }: UserMessageProps): react_jsx_runtime.JSX.Element;
|
|
198
|
+
declare const UserMessage: React.MemoExoticComponent<typeof UserMessageBase>;
|
|
198
199
|
|
|
199
200
|
/**
|
|
200
201
|
* ConnectionStatusBadge Component
|
|
@@ -475,6 +476,10 @@ interface PlatformGridProps {
|
|
|
475
476
|
onEditContentChange?: (content: string) => void;
|
|
476
477
|
/** Whether content is being loaded/generated */
|
|
477
478
|
isLoading?: boolean;
|
|
479
|
+
/** Currently active/selected post index */
|
|
480
|
+
activeIndex?: number;
|
|
481
|
+
/** Callback when a post is clicked/selected */
|
|
482
|
+
onActiveChange?: (index: number) => void;
|
|
478
483
|
}
|
|
479
484
|
/**
|
|
480
485
|
* PlatformGrid displays all proposed posts in a responsive grid layout.
|
|
@@ -504,7 +509,7 @@ interface SocialMediaCanvasProps {
|
|
|
504
509
|
emptyTitle?: string;
|
|
505
510
|
/** Empty state description */
|
|
506
511
|
emptyDescription?: string;
|
|
507
|
-
/** Callback when active post changes
|
|
512
|
+
/** Callback when active post changes */
|
|
508
513
|
onActiveChange?: (index: number) => void;
|
|
509
514
|
/** Whether to show the view mode toggle */
|
|
510
515
|
showViewToggle?: boolean;
|
|
@@ -516,6 +521,8 @@ interface SocialMediaCanvasProps {
|
|
|
516
521
|
onEditContentChange?: (content: string) => void;
|
|
517
522
|
/** Whether content is being loaded/generated */
|
|
518
523
|
isLoading?: boolean;
|
|
524
|
+
/** Currently active post index (for grid mode) */
|
|
525
|
+
activeIndex?: number;
|
|
519
526
|
}
|
|
520
527
|
/**
|
|
521
528
|
* SocialMediaCanvas displays social media post previews in carousel or grid mode.
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useRef, useState,
|
|
1
|
+
import { memo, useRef, useState, useEffect, useCallback, useId, useMemo } from 'react';
|
|
2
2
|
import styled11, { keyframes, css, createGlobalStyle } from 'styled-components';
|
|
3
3
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
4
4
|
import { useButton } from '@react-aria/button';
|
|
@@ -1050,8 +1050,10 @@ var Container2 = styled11.nav`
|
|
|
1050
1050
|
right: 0;
|
|
1051
1051
|
background-color: ${tokens.colors.background.darker};
|
|
1052
1052
|
border-top: 1px solid ${tokens.colors.border.subtle};
|
|
1053
|
-
/*
|
|
1054
|
-
|
|
1053
|
+
/* Use safe-area-inset-bottom for Android navigation buttons.
|
|
1054
|
+
The env() value will be 0 on devices without soft nav buttons.
|
|
1055
|
+
Fallback to 0 if env() is not supported. */
|
|
1056
|
+
padding-bottom: env(safe-area-inset-bottom, 0px);
|
|
1055
1057
|
z-index: ${tokens.zIndex.sticky};
|
|
1056
1058
|
|
|
1057
1059
|
/* Dark theme support */
|
|
@@ -2938,7 +2940,8 @@ function PaneMenus({
|
|
|
2938
2940
|
isOAuthConnecting = false,
|
|
2939
2941
|
isOAuthLoading = false,
|
|
2940
2942
|
connectionsSlot,
|
|
2941
|
-
workflowsSlot
|
|
2943
|
+
workflowsSlot,
|
|
2944
|
+
usageSlot
|
|
2942
2945
|
}) {
|
|
2943
2946
|
const state = useTabListState({
|
|
2944
2947
|
selectedKey: activeTab,
|
|
@@ -2950,7 +2953,7 @@ function PaneMenus({
|
|
|
2950
2953
|
children: /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2951
2954
|
workflowsSlot && /* @__PURE__ */ jsx(Item, { title: "Workflows", children: workflowsSlot }, "workflows"),
|
|
2952
2955
|
/* @__PURE__ */ jsx(Item, { title: "Runs", children: /* @__PURE__ */ jsx(RunsTabContent, { runs, onRunSelect }) }, "runs"),
|
|
2953
|
-
/* @__PURE__ */ jsx(Item, { title: "Usage", children: /* @__PURE__ */ jsx(UsageTabContent, { currentUsage, maxUsage }) }, "usage"),
|
|
2956
|
+
/* @__PURE__ */ jsx(Item, { title: "Usage", children: usageSlot || /* @__PURE__ */ jsx(UsageTabContent, { currentUsage, maxUsage }) }, "usage"),
|
|
2954
2957
|
/* @__PURE__ */ jsx(Item, { title: "Connections", children: connectionsSlot || /* @__PURE__ */ jsx(
|
|
2955
2958
|
ConnectionsTabContent,
|
|
2956
2959
|
{
|
|
@@ -3723,7 +3726,7 @@ var StyledUserMessage = styled11.button`
|
|
|
3723
3726
|
}
|
|
3724
3727
|
}
|
|
3725
3728
|
`;
|
|
3726
|
-
function
|
|
3729
|
+
function UserMessageBase({
|
|
3727
3730
|
children,
|
|
3728
3731
|
className,
|
|
3729
3732
|
isPressed = false,
|
|
@@ -3754,6 +3757,7 @@ function UserMessage({
|
|
|
3754
3757
|
}
|
|
3755
3758
|
);
|
|
3756
3759
|
}
|
|
3760
|
+
var UserMessage = memo(UserMessageBase);
|
|
3757
3761
|
UserMessage.displayName = "UserMessage";
|
|
3758
3762
|
|
|
3759
3763
|
// src/theme/darkTheme.ts
|
|
@@ -3945,25 +3949,28 @@ var IntegrationCard = ({
|
|
|
3945
3949
|
className
|
|
3946
3950
|
}) => {
|
|
3947
3951
|
return /* @__PURE__ */ jsxs(Card, { className, "data-testid": "integration-card", children: [
|
|
3948
|
-
/* @__PURE__ */
|
|
3952
|
+
status && /* @__PURE__ */ jsx(StatusRow, { children: status }),
|
|
3953
|
+
/* @__PURE__ */ jsxs(ContentHeader, { children: [
|
|
3949
3954
|
/* @__PURE__ */ jsx(IconWrapper3, { children: typeof icon === "string" ? /* @__PURE__ */ jsx(IconImage, { src: icon, alt: name }) : icon }),
|
|
3950
3955
|
/* @__PURE__ */ jsxs(Info, { children: [
|
|
3951
3956
|
/* @__PURE__ */ jsx(Name, { children: name }),
|
|
3952
3957
|
description && /* @__PURE__ */ jsx(Description, { children: description })
|
|
3953
|
-
] })
|
|
3954
|
-
status && /* @__PURE__ */ jsx(StatusWrapper, { children: status })
|
|
3958
|
+
] })
|
|
3955
3959
|
] }),
|
|
3956
|
-
children && /* @__PURE__ */
|
|
3957
|
-
|
|
3960
|
+
(children || actions) && /* @__PURE__ */ jsxs(ActionsRow, { children: [
|
|
3961
|
+
children,
|
|
3962
|
+
actions
|
|
3963
|
+
] })
|
|
3958
3964
|
] });
|
|
3959
3965
|
};
|
|
3960
3966
|
IntegrationCard.displayName = "IntegrationCard";
|
|
3961
3967
|
var Card = styled11.div`
|
|
3962
|
-
display:
|
|
3968
|
+
display: flex;
|
|
3969
|
+
flex-direction: column;
|
|
3963
3970
|
gap: ${tokens.spacing.sm};
|
|
3964
3971
|
padding: ${tokens.spacing.md};
|
|
3965
3972
|
background: ${tokens.colors.background.dark};
|
|
3966
|
-
border-radius: ${tokens.borderRadius.
|
|
3973
|
+
border-radius: ${tokens.borderRadius.xl};
|
|
3967
3974
|
border: 1px solid ${tokens.colors.border.default};
|
|
3968
3975
|
font-family: ${tokens.typography.fontFamily.primary};
|
|
3969
3976
|
transition: border-color ${tokens.transitions.fast};
|
|
@@ -3972,10 +3979,13 @@ var Card = styled11.div`
|
|
|
3972
3979
|
border-color: ${tokens.colors.border.hover};
|
|
3973
3980
|
}
|
|
3974
3981
|
`;
|
|
3975
|
-
var
|
|
3976
|
-
display:
|
|
3977
|
-
|
|
3978
|
-
|
|
3982
|
+
var StatusRow = styled11.div`
|
|
3983
|
+
display: flex;
|
|
3984
|
+
align-items: center;
|
|
3985
|
+
`;
|
|
3986
|
+
var ContentHeader = styled11.div`
|
|
3987
|
+
display: flex;
|
|
3988
|
+
align-items: flex-start;
|
|
3979
3989
|
gap: ${tokens.spacing.sm};
|
|
3980
3990
|
`;
|
|
3981
3991
|
var IconWrapper3 = styled11.div`
|
|
@@ -3998,7 +4008,7 @@ var Info = styled11.div`
|
|
|
3998
4008
|
flex-direction: column;
|
|
3999
4009
|
gap: 2px;
|
|
4000
4010
|
min-width: 0;
|
|
4001
|
-
|
|
4011
|
+
flex: 1;
|
|
4002
4012
|
`;
|
|
4003
4013
|
var Name = styled11.h3`
|
|
4004
4014
|
margin: 0;
|
|
@@ -4013,21 +4023,10 @@ var Description = styled11.p`
|
|
|
4013
4023
|
color: ${tokens.colors.text.tertiary};
|
|
4014
4024
|
line-height: ${tokens.typography.lineHeight.normal};
|
|
4015
4025
|
`;
|
|
4016
|
-
var StatusWrapper = styled11.div`
|
|
4017
|
-
flex-shrink: 0;
|
|
4018
|
-
padding-top: 2px;
|
|
4019
|
-
`;
|
|
4020
|
-
var ContentRow = styled11.div`
|
|
4021
|
-
display: flex;
|
|
4022
|
-
gap: ${tokens.spacing.sm};
|
|
4023
|
-
align-items: center;
|
|
4024
|
-
padding-left: calc(40px + ${tokens.spacing.sm});
|
|
4025
|
-
`;
|
|
4026
4026
|
var ActionsRow = styled11.div`
|
|
4027
4027
|
display: flex;
|
|
4028
|
+
flex-direction: column;
|
|
4028
4029
|
gap: ${tokens.spacing.sm};
|
|
4029
|
-
justify-content: flex-end;
|
|
4030
|
-
padding-top: ${tokens.spacing.xs};
|
|
4031
4030
|
`;
|
|
4032
4031
|
var EyeIcon = () => /* @__PURE__ */ jsxs("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: [
|
|
4033
4032
|
/* @__PURE__ */ jsx("title", { children: "Show" }),
|
|
@@ -4945,7 +4944,7 @@ var ActionButton2 = styled11.button`
|
|
|
4945
4944
|
display: block;
|
|
4946
4945
|
}
|
|
4947
4946
|
`;
|
|
4948
|
-
var
|
|
4947
|
+
var Header = ({
|
|
4949
4948
|
title,
|
|
4950
4949
|
subtitle,
|
|
4951
4950
|
streamStatus,
|
|
@@ -5022,7 +5021,7 @@ var Header2 = ({
|
|
|
5022
5021
|
] })
|
|
5023
5022
|
] });
|
|
5024
5023
|
};
|
|
5025
|
-
|
|
5024
|
+
Header.displayName = "Header";
|
|
5026
5025
|
var InputContainer = styled11.div`
|
|
5027
5026
|
display: flex;
|
|
5028
5027
|
flex-direction: column;
|
|
@@ -5251,7 +5250,7 @@ var Cursor = styled11.span`
|
|
|
5251
5250
|
}
|
|
5252
5251
|
}
|
|
5253
5252
|
`;
|
|
5254
|
-
var
|
|
5253
|
+
var StreamingTextBase = ({
|
|
5255
5254
|
content,
|
|
5256
5255
|
isStreaming = false,
|
|
5257
5256
|
typingSpeed: _typingSpeed = 50,
|
|
@@ -5261,25 +5260,27 @@ var StreamingText2 = ({
|
|
|
5261
5260
|
onStreamComplete,
|
|
5262
5261
|
className
|
|
5263
5262
|
}) => {
|
|
5264
|
-
const [displayedText, setDisplayedText] = useState(
|
|
5263
|
+
const [displayedText, setDisplayedText] = useState(content);
|
|
5264
|
+
const wasStreamingRef = useRef(isStreaming);
|
|
5265
|
+
const completionCalledRef = useRef(false);
|
|
5265
5266
|
useEffect(() => {
|
|
5266
|
-
|
|
5267
|
-
|
|
5268
|
-
|
|
5267
|
+
setDisplayedText(content);
|
|
5268
|
+
if (wasStreamingRef.current && !isStreaming && !completionCalledRef.current) {
|
|
5269
|
+
completionCalledRef.current = true;
|
|
5270
|
+
onStreamComplete?.();
|
|
5269
5271
|
}
|
|
5270
|
-
if (
|
|
5271
|
-
|
|
5272
|
-
if (onStreamComplete) {
|
|
5273
|
-
onStreamComplete();
|
|
5274
|
-
}
|
|
5272
|
+
if (isStreaming) {
|
|
5273
|
+
completionCalledRef.current = false;
|
|
5275
5274
|
}
|
|
5276
|
-
|
|
5275
|
+
wasStreamingRef.current = isStreaming;
|
|
5276
|
+
}, [content, isStreaming, onStreamComplete]);
|
|
5277
5277
|
const showCursor = isStreaming && cursor;
|
|
5278
5278
|
return /* @__PURE__ */ jsxs(Container12, { variant, className, children: [
|
|
5279
5279
|
displayedText,
|
|
5280
5280
|
showCursor && /* @__PURE__ */ jsx(Cursor, {})
|
|
5281
5281
|
] });
|
|
5282
5282
|
};
|
|
5283
|
+
var StreamingText2 = memo(StreamingTextBase);
|
|
5283
5284
|
StreamingText2.displayName = "StreamingText";
|
|
5284
5285
|
var MessageContainer = styled11.div`
|
|
5285
5286
|
display: flex;
|
|
@@ -5567,7 +5568,7 @@ var StreamingIndicator = styled11.span`
|
|
|
5567
5568
|
}
|
|
5568
5569
|
}
|
|
5569
5570
|
`;
|
|
5570
|
-
var
|
|
5571
|
+
var AssistantMessageBase = ({
|
|
5571
5572
|
content = "",
|
|
5572
5573
|
avatarUrl,
|
|
5573
5574
|
avatarInitials: _avatarInitials = "AI",
|
|
@@ -5614,6 +5615,8 @@ var AssistantMessage = ({
|
|
|
5614
5615
|
/* @__PURE__ */ jsx(ContentContainer, { children: renderContent() })
|
|
5615
5616
|
] });
|
|
5616
5617
|
};
|
|
5618
|
+
var AssistantMessage = memo(AssistantMessageBase);
|
|
5619
|
+
AssistantMessage.displayName = "AssistantMessage";
|
|
5617
5620
|
var MessagesContainer = styled11.div`
|
|
5618
5621
|
display: flex;
|
|
5619
5622
|
flex-direction: column;
|
|
@@ -7569,7 +7572,7 @@ var PostApprovalControls = ({
|
|
|
7569
7572
|
setIsEditing(false);
|
|
7570
7573
|
};
|
|
7571
7574
|
return /* @__PURE__ */ jsxs(Container13, { "data-testid": "post-approval-controls", children: [
|
|
7572
|
-
/* @__PURE__ */ jsxs(
|
|
7575
|
+
/* @__PURE__ */ jsxs(Header2, { onClick: () => !isEditing && setIsCollapsed(!isCollapsed), children: [
|
|
7573
7576
|
/* @__PURE__ */ jsx(StatusBadge, { $color: statusConfig.color, children: statusConfig.label }),
|
|
7574
7577
|
/* @__PURE__ */ jsxs(MetaInfo, { children: [
|
|
7575
7578
|
postId && /* @__PURE__ */ jsxs(PostId, { children: [
|
|
@@ -7638,7 +7641,7 @@ var Container13 = styled11.div`
|
|
|
7638
7641
|
font-family: ${tokens.typography.fontFamily.primary};
|
|
7639
7642
|
transition: border-color ${tokens.transitions.fast};
|
|
7640
7643
|
`;
|
|
7641
|
-
var
|
|
7644
|
+
var Header2 = styled11.div`
|
|
7642
7645
|
display: grid;
|
|
7643
7646
|
grid-template-columns: auto 1fr auto;
|
|
7644
7647
|
align-items: center;
|
|
@@ -7893,6 +7896,16 @@ var PostPreviewCard = ({
|
|
|
7893
7896
|
);
|
|
7894
7897
|
};
|
|
7895
7898
|
PostPreviewCard.displayName = "PostPreviewCard";
|
|
7899
|
+
var fadeIn2 = keyframes`
|
|
7900
|
+
from {
|
|
7901
|
+
opacity: 0;
|
|
7902
|
+
transform: translateY(4px);
|
|
7903
|
+
}
|
|
7904
|
+
to {
|
|
7905
|
+
opacity: 1;
|
|
7906
|
+
transform: translateY(0);
|
|
7907
|
+
}
|
|
7908
|
+
`;
|
|
7896
7909
|
var CardContainer = styled11.div`
|
|
7897
7910
|
background: ${tokens.colors.background.dark};
|
|
7898
7911
|
border-radius: ${tokens.borderRadius.lg};
|
|
@@ -7956,6 +7969,8 @@ var PostContent = styled11.div`
|
|
|
7956
7969
|
word-break: break-word;
|
|
7957
7970
|
margin-bottom: ${tokens.spacing.sm};
|
|
7958
7971
|
letter-spacing: 0.01em;
|
|
7972
|
+
/* Smooth fade-in animation when content appears */
|
|
7973
|
+
animation: ${fadeIn2} 0.4s ease-out;
|
|
7959
7974
|
`;
|
|
7960
7975
|
var PostContentEditable = styled11.textarea`
|
|
7961
7976
|
width: 100%;
|
|
@@ -8250,23 +8265,46 @@ var PlatformGrid = ({
|
|
|
8250
8265
|
editingIndex,
|
|
8251
8266
|
editContent,
|
|
8252
8267
|
onEditContentChange,
|
|
8253
|
-
isLoading = false
|
|
8268
|
+
isLoading = false,
|
|
8269
|
+
activeIndex = 0,
|
|
8270
|
+
onActiveChange
|
|
8254
8271
|
}) => {
|
|
8255
8272
|
if (posts.length === 0) {
|
|
8256
8273
|
return /* @__PURE__ */ jsx(EmptyState2, { children: /* @__PURE__ */ jsx(EmptyStateText, { children: "No posts to display" }) });
|
|
8257
8274
|
}
|
|
8275
|
+
const handlePostClick = (index) => {
|
|
8276
|
+
onActiveChange?.(index);
|
|
8277
|
+
};
|
|
8258
8278
|
return /* @__PURE__ */ jsx(Grid, { "data-testid": "platform-grid", children: posts.map((post, index) => {
|
|
8259
8279
|
const isEditing = editingIndex === index;
|
|
8260
|
-
|
|
8261
|
-
|
|
8280
|
+
const isActive = activeIndex === index;
|
|
8281
|
+
return /* @__PURE__ */ jsx(
|
|
8282
|
+
GridCell,
|
|
8262
8283
|
{
|
|
8263
|
-
|
|
8264
|
-
|
|
8265
|
-
|
|
8266
|
-
|
|
8267
|
-
|
|
8268
|
-
|
|
8269
|
-
|
|
8284
|
+
$isActive: isActive,
|
|
8285
|
+
onClick: () => handlePostClick(index),
|
|
8286
|
+
role: "button",
|
|
8287
|
+
tabIndex: 0,
|
|
8288
|
+
onKeyDown: (e) => {
|
|
8289
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
8290
|
+
e.preventDefault();
|
|
8291
|
+
handlePostClick(index);
|
|
8292
|
+
}
|
|
8293
|
+
},
|
|
8294
|
+
children: /* @__PURE__ */ jsx(
|
|
8295
|
+
PostPreviewCard,
|
|
8296
|
+
{
|
|
8297
|
+
post,
|
|
8298
|
+
isActive,
|
|
8299
|
+
isEditing,
|
|
8300
|
+
editContent: isEditing ? editContent : void 0,
|
|
8301
|
+
onContentChange: isEditing ? onEditContentChange : void 0,
|
|
8302
|
+
isLoading
|
|
8303
|
+
}
|
|
8304
|
+
)
|
|
8305
|
+
},
|
|
8306
|
+
post.platform
|
|
8307
|
+
);
|
|
8270
8308
|
}) });
|
|
8271
8309
|
};
|
|
8272
8310
|
PlatformGrid.displayName = "PlatformGrid";
|
|
@@ -8290,6 +8328,13 @@ var Grid = styled11.div`
|
|
|
8290
8328
|
`;
|
|
8291
8329
|
var GridCell = styled11.div`
|
|
8292
8330
|
min-width: 0; /* Prevent grid blowout with long content */
|
|
8331
|
+
cursor: pointer;
|
|
8332
|
+
border-radius: ${tokens.borderRadius.lg};
|
|
8333
|
+
transition: transform ${tokens.transitions.fast};
|
|
8334
|
+
|
|
8335
|
+
&:hover {
|
|
8336
|
+
transform: translateY(-2px);
|
|
8337
|
+
}
|
|
8293
8338
|
`;
|
|
8294
8339
|
var EmptyState2 = styled11.div`
|
|
8295
8340
|
display: flex;
|
|
@@ -8310,7 +8355,7 @@ var Container14 = styled11.div`
|
|
|
8310
8355
|
flex-direction: column;
|
|
8311
8356
|
height: 100%;
|
|
8312
8357
|
width: 100%;
|
|
8313
|
-
padding: ${tokens.spacing.md};
|
|
8358
|
+
padding: ${tokens.spacing.md} ${tokens.spacing.md} 0 ${tokens.spacing.md};
|
|
8314
8359
|
box-sizing: border-box;
|
|
8315
8360
|
background: linear-gradient(
|
|
8316
8361
|
180deg,
|
|
@@ -8319,7 +8364,7 @@ var Container14 = styled11.div`
|
|
|
8319
8364
|
);
|
|
8320
8365
|
overflow: auto;
|
|
8321
8366
|
`;
|
|
8322
|
-
var
|
|
8367
|
+
var Header3 = styled11.div`
|
|
8323
8368
|
display: flex;
|
|
8324
8369
|
justify-content: space-between;
|
|
8325
8370
|
align-items: center;
|
|
@@ -8408,7 +8453,8 @@ var SocialMediaCanvas = ({
|
|
|
8408
8453
|
editingIndex,
|
|
8409
8454
|
editContent,
|
|
8410
8455
|
onEditContentChange,
|
|
8411
|
-
isLoading = false
|
|
8456
|
+
isLoading = false,
|
|
8457
|
+
activeIndex = 0
|
|
8412
8458
|
}) => {
|
|
8413
8459
|
const [viewMode, setViewMode] = useState(initialViewMode);
|
|
8414
8460
|
const handleActiveChange = (index) => {
|
|
@@ -8422,7 +8468,7 @@ var SocialMediaCanvas = ({
|
|
|
8422
8468
|
] }) });
|
|
8423
8469
|
}
|
|
8424
8470
|
return /* @__PURE__ */ jsxs(Container14, { children: [
|
|
8425
|
-
/* @__PURE__ */ jsxs(
|
|
8471
|
+
/* @__PURE__ */ jsxs(Header3, { children: [
|
|
8426
8472
|
/* @__PURE__ */ jsxs(Title, { children: [
|
|
8427
8473
|
title,
|
|
8428
8474
|
" ",
|
|
@@ -8470,7 +8516,9 @@ var SocialMediaCanvas = ({
|
|
|
8470
8516
|
editingIndex,
|
|
8471
8517
|
editContent,
|
|
8472
8518
|
onEditContentChange,
|
|
8473
|
-
isLoading
|
|
8519
|
+
isLoading,
|
|
8520
|
+
activeIndex,
|
|
8521
|
+
onActiveChange: handleActiveChange
|
|
8474
8522
|
}
|
|
8475
8523
|
) })
|
|
8476
8524
|
] });
|
|
@@ -8533,7 +8581,7 @@ function TokenUsageCard({
|
|
|
8533
8581
|
);
|
|
8534
8582
|
const usageLevel = useMemo(() => getUsageLevel(percentage), [percentage]);
|
|
8535
8583
|
return /* @__PURE__ */ jsxs(Card2, { className, "data-testid": "token-usage-card", children: [
|
|
8536
|
-
/* @__PURE__ */ jsxs(
|
|
8584
|
+
/* @__PURE__ */ jsxs(Header4, { children: [
|
|
8537
8585
|
/* @__PURE__ */ jsx(Title2, { children: "Token Usage" }),
|
|
8538
8586
|
/* @__PURE__ */ jsx(Period, { children: periodLabel })
|
|
8539
8587
|
] }),
|
|
@@ -8576,10 +8624,10 @@ var Card2 = styled11.div`
|
|
|
8576
8624
|
gap: ${tokens.spacing.md};
|
|
8577
8625
|
padding: ${tokens.spacing.lg};
|
|
8578
8626
|
background: ${tokens.colors.background.dark};
|
|
8579
|
-
border-radius: ${tokens.borderRadius.
|
|
8627
|
+
border-radius: ${tokens.borderRadius.xl};
|
|
8580
8628
|
border: 1px solid ${tokens.colors.border.default};
|
|
8581
8629
|
`;
|
|
8582
|
-
var
|
|
8630
|
+
var Header4 = styled11.div`
|
|
8583
8631
|
display: flex;
|
|
8584
8632
|
justify-content: space-between;
|
|
8585
8633
|
align-items: center;
|
|
@@ -8799,7 +8847,7 @@ var Card3 = styled11.button`
|
|
|
8799
8847
|
gap: ${tokens.spacing.sm};
|
|
8800
8848
|
padding: ${tokens.spacing.md};
|
|
8801
8849
|
background: ${tokens.colors.background.dark};
|
|
8802
|
-
border-radius: ${tokens.borderRadius.
|
|
8850
|
+
border-radius: ${tokens.borderRadius.xl};
|
|
8803
8851
|
border: 1px solid ${tokens.colors.border.default};
|
|
8804
8852
|
cursor: pointer;
|
|
8805
8853
|
text-align: left;
|
|
@@ -8949,7 +8997,7 @@ var ModalContent = styled11.div`
|
|
|
8949
8997
|
width: 100%;
|
|
8950
8998
|
box-shadow: ${tokens.shadows.xl};
|
|
8951
8999
|
`;
|
|
8952
|
-
var
|
|
9000
|
+
var Header5 = styled11.div`
|
|
8953
9001
|
display: flex;
|
|
8954
9002
|
align-items: flex-start;
|
|
8955
9003
|
gap: ${tokens.spacing.md};
|
|
@@ -9174,7 +9222,7 @@ var WorkflowErrorAlert = ({
|
|
|
9174
9222
|
return /* @__PURE__ */ jsx(InfoIcon, {});
|
|
9175
9223
|
}
|
|
9176
9224
|
};
|
|
9177
|
-
const alertContent = /* @__PURE__ */ jsx(AlertContainer, { variant, severity, className, role: "alert", children: /* @__PURE__ */ jsxs(
|
|
9225
|
+
const alertContent = /* @__PURE__ */ jsx(AlertContainer, { variant, severity, className, role: "alert", children: /* @__PURE__ */ jsxs(Header5, { children: [
|
|
9178
9226
|
/* @__PURE__ */ jsx(IconContainer2, { severity, "aria-hidden": "true", children: getIcon() }),
|
|
9179
9227
|
/* @__PURE__ */ jsxs(Content5, { children: [
|
|
9180
9228
|
/* @__PURE__ */ jsx(Title3, { children: displayTitle }),
|
|
@@ -9483,7 +9531,7 @@ var Panel = styled11.div`
|
|
|
9483
9531
|
overflow: hidden;
|
|
9484
9532
|
font-family: ${tokens.typography.fontFamily.primary};
|
|
9485
9533
|
`;
|
|
9486
|
-
var
|
|
9534
|
+
var Header6 = styled11.div`
|
|
9487
9535
|
display: flex;
|
|
9488
9536
|
justify-content: space-between;
|
|
9489
9537
|
align-items: center;
|
|
@@ -9676,7 +9724,7 @@ var WorkflowResultPanel = ({
|
|
|
9676
9724
|
}
|
|
9677
9725
|
};
|
|
9678
9726
|
return /* @__PURE__ */ jsxs(Panel, { collapsible, expanded, className, children: [
|
|
9679
|
-
/* @__PURE__ */ jsxs(
|
|
9727
|
+
/* @__PURE__ */ jsxs(Header6, { collapsible, onClick: handleToggle, children: [
|
|
9680
9728
|
/* @__PURE__ */ jsxs(Title4, { children: [
|
|
9681
9729
|
title,
|
|
9682
9730
|
collapsible && /* @__PURE__ */ jsx(CollapseIcon2, { expanded, children: /* @__PURE__ */ jsx(ChevronIcon4, {}) })
|
|
@@ -9904,6 +9952,6 @@ var WorkflowStatusBadge = ({
|
|
|
9904
9952
|
};
|
|
9905
9953
|
WorkflowStatusBadge.displayName = "WorkflowStatusBadge";
|
|
9906
9954
|
|
|
9907
|
-
export { ActionButtons, Actions, AgentState, AssistantMessage, AssistantThinking, Button2 as Button, CATEGORY_CONFIGS, CategoryNav, ChatInput, ConnectionStatusBadge, UserMessage2 as CopilotUserMessage, DarkNotificationCard, FacebookIcon, FileAttachment, Footer, GlobalStyle, GmailIcon,
|
|
9955
|
+
export { ActionButtons, Actions, AgentState, AssistantMessage, AssistantThinking, Button2 as Button, CATEGORY_CONFIGS, CategoryNav, ChatInput, ConnectionStatusBadge, UserMessage2 as CopilotUserMessage, DarkNotificationCard, FacebookIcon, FileAttachment, Footer, GlobalStyle, GmailIcon, Header, Icon, IconNames, Input2 as Input, InstagramIcon, IntegrationCard, Layout, LinkedInIcon, Messages, MessagesList, MessagesListContainer, MessagesListContent, NavHorizontal, NavVertical, NotificationCard, PLATFORM_CONFIGS, PaneMenus, PaneSectionHeader, PlatformCarousel, PlatformGrid, PostApprovalControls, PostPreviewCard, RedditIcon, Response, SecretInput, ServiceIcon, SlackIcon, SocialMediaCanvas, StreamErrorMessage, StreamStatusIndicator, StreamingText2 as StreamingText, Suggestions, TelegramIcon, TokenUsageCard, UserMessage, WhatsAppIcon, Window, WorkflowCard, WorkflowErrorAlert, WorkflowProgressBar, WorkflowResultPanel, WorkflowStatusBadge, WorkflowStatusCard, XIcon, YouTubeIcon, categorizeProgress, darkTheme, getCategoryColor, getCategoryIcon, getCharacterCount, getCharacterLimitColor, getCharacterLimitPercentage, isWithinCharLimit, lightTheme, normalizePlatform, tokens };
|
|
9908
9956
|
//# sourceMappingURL=index.js.map
|
|
9909
9957
|
//# sourceMappingURL=index.js.map
|