@gram-ai/elements 1.25.1 → 1.26.0

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 (177) hide show
  1. package/dist/components/Chat/stories/Charts.stories.d.ts +37 -0
  2. package/dist/components/Chat/stories/GenerativeUI.stories.d.ts +17 -0
  3. package/dist/components/Chat/stories/MessageFeedback.stories.d.ts +1 -1
  4. package/dist/components/ui/button.d.ts +1 -1
  5. package/dist/components/ui/buttonVariants.d.ts +1 -1
  6. package/dist/components/ui/charts.stories.d.ts +43 -0
  7. package/dist/components/ui/generative-ui.stories.d.ts +53 -0
  8. package/dist/contexts/ChatIdContext.d.ts +11 -0
  9. package/dist/contexts/contexts.d.ts +1 -0
  10. package/dist/elements.cjs +1 -1
  11. package/dist/elements.css +1 -1
  12. package/dist/elements.js +7 -6
  13. package/dist/index-BJnv49-A.js +37057 -0
  14. package/dist/index-BJnv49-A.js.map +1 -0
  15. package/dist/index-BpJstUh1.cjs +280 -0
  16. package/dist/index-BpJstUh1.cjs.map +1 -0
  17. package/dist/index-CUitXazZ.js +30426 -0
  18. package/dist/index-CUitXazZ.js.map +1 -0
  19. package/dist/index-ChW-CSuu.cjs +147 -0
  20. package/dist/index-ChW-CSuu.cjs.map +1 -0
  21. package/dist/index.d.ts +1 -0
  22. package/dist/plugins/chart/catalog.d.ts +123 -0
  23. package/dist/plugins/chart/index.d.ts +1 -1
  24. package/dist/plugins/chart/ui/area-chart.d.ts +16 -0
  25. package/dist/plugins/chart/ui/bar-chart.d.ts +16 -0
  26. package/dist/plugins/chart/ui/donut-chart.d.ts +17 -0
  27. package/dist/plugins/chart/ui/index.d.ts +7 -0
  28. package/dist/plugins/chart/ui/line-chart.d.ts +17 -0
  29. package/dist/plugins/chart/ui/pie-chart.d.ts +15 -0
  30. package/dist/plugins/chart/ui/radar-chart.d.ts +14 -0
  31. package/dist/plugins/chart/ui/scatter-chart.d.ts +18 -0
  32. package/dist/plugins/components/MacOSWindowFrame.d.ts +13 -0
  33. package/dist/plugins/components/PluginLoadingState.d.ts +1 -1
  34. package/dist/plugins/generative-ui/catalog.d.ts +293 -0
  35. package/dist/plugins/generative-ui/ui/accordion-wrapper.d.ts +18 -0
  36. package/dist/plugins/generative-ui/ui/accordion.d.ts +7 -0
  37. package/dist/plugins/generative-ui/ui/action-button.d.ts +10 -0
  38. package/dist/plugins/generative-ui/ui/alert-wrapper.d.ts +9 -0
  39. package/dist/plugins/generative-ui/ui/alert.d.ts +9 -0
  40. package/dist/plugins/generative-ui/ui/avatar-wrapper.d.ts +9 -0
  41. package/dist/plugins/generative-ui/ui/avatar.d.ts +11 -0
  42. package/dist/plugins/generative-ui/ui/badge.d.ts +12 -0
  43. package/dist/plugins/generative-ui/ui/button-wrapper.d.ts +15 -0
  44. package/dist/plugins/generative-ui/ui/button.d.ts +10 -0
  45. package/dist/plugins/generative-ui/ui/card-wrapper.d.ts +10 -0
  46. package/dist/plugins/generative-ui/ui/card.d.ts +9 -0
  47. package/dist/plugins/generative-ui/ui/checkbox-wrapper.d.ts +10 -0
  48. package/dist/plugins/generative-ui/ui/checkbox.d.ts +4 -0
  49. package/dist/plugins/generative-ui/ui/data-table.d.ts +10 -0
  50. package/dist/plugins/generative-ui/ui/dialog.d.ts +17 -0
  51. package/dist/plugins/generative-ui/ui/dropdown-menu.d.ts +25 -0
  52. package/dist/plugins/generative-ui/ui/grid.d.ts +6 -0
  53. package/dist/plugins/generative-ui/ui/index.d.ts +40 -0
  54. package/dist/plugins/generative-ui/ui/input-wrapper.d.ts +11 -0
  55. package/dist/plugins/generative-ui/ui/input.d.ts +3 -0
  56. package/dist/plugins/generative-ui/ui/label.d.ts +4 -0
  57. package/dist/plugins/generative-ui/ui/list.d.ts +6 -0
  58. package/dist/plugins/generative-ui/ui/metric.d.ts +7 -0
  59. package/dist/plugins/generative-ui/ui/pagination.d.ts +13 -0
  60. package/dist/plugins/generative-ui/ui/popover.d.ts +10 -0
  61. package/dist/plugins/generative-ui/ui/progress.d.ts +10 -0
  62. package/dist/plugins/generative-ui/ui/radio-group.d.ts +5 -0
  63. package/dist/plugins/generative-ui/ui/select-wrapper.d.ts +13 -0
  64. package/dist/plugins/generative-ui/ui/select.d.ts +15 -0
  65. package/dist/plugins/generative-ui/ui/separator.d.ts +4 -0
  66. package/dist/plugins/generative-ui/ui/skeleton-wrapper.d.ts +9 -0
  67. package/dist/plugins/generative-ui/ui/skeleton.d.ts +2 -0
  68. package/dist/plugins/generative-ui/ui/stack.d.ts +8 -0
  69. package/dist/plugins/generative-ui/ui/switch.d.ts +6 -0
  70. package/dist/plugins/generative-ui/ui/table.d.ts +10 -0
  71. package/dist/plugins/generative-ui/ui/tabs-wrapper.d.ts +21 -0
  72. package/dist/plugins/generative-ui/ui/tabs.d.ts +11 -0
  73. package/dist/plugins/generative-ui/ui/text.d.ts +7 -0
  74. package/dist/plugins/generative-ui/ui/textarea.d.ts +3 -0
  75. package/dist/plugins/generative-ui/ui/tooltip.d.ts +7 -0
  76. package/dist/plugins.cjs +1 -1
  77. package/dist/plugins.js +1 -1
  78. package/dist/{profiler-CijCgLrw.js → profiler-D4Tw5ecI.js} +2 -2
  79. package/dist/{profiler-CijCgLrw.js.map → profiler-D4Tw5ecI.js.map} +1 -1
  80. package/dist/{profiler-DAT0DL1W.cjs → profiler-DCWYDZ1F.cjs} +2 -2
  81. package/dist/{profiler-DAT0DL1W.cjs.map → profiler-DCWYDZ1F.cjs.map} +1 -1
  82. package/dist/{startRecording-DotsE8QT.cjs → startRecording-3sTskM3H.cjs} +2 -2
  83. package/dist/{startRecording-DotsE8QT.cjs.map → startRecording-3sTskM3H.cjs.map} +1 -1
  84. package/dist/{startRecording-gmhENmf0.js → startRecording-BHhcCWQE.js} +2 -2
  85. package/dist/{startRecording-gmhENmf0.js.map → startRecording-BHhcCWQE.js.map} +1 -1
  86. package/dist/types/index.d.ts +4 -4
  87. package/package.json +4 -1
  88. package/src/components/Chat/stories/Charts.stories.tsx +260 -0
  89. package/src/components/Chat/stories/ConnectionConfiguration.stories.tsx +6 -6
  90. package/src/components/Chat/stories/GenerativeUI.stories.tsx +113 -0
  91. package/src/components/Chat/stories/MessageFeedback.stories.tsx +6 -6
  92. package/src/components/Chat/stories/ToolApproval.stories.tsx +10 -10
  93. package/src/components/Chat/stories/Tools.stories.tsx +122 -104
  94. package/src/components/Chat/stories/Variants.stories.tsx +1 -1
  95. package/src/components/Replay.stories.tsx +1 -1
  96. package/src/components/Replay.tsx +18 -13
  97. package/src/components/ShadowRoot.tsx +5 -1
  98. package/src/components/assistant-ui/message-feedback.tsx +6 -7
  99. package/src/components/assistant-ui/thread.tsx +76 -11
  100. package/src/components/ui/charts.stories.tsx +246 -0
  101. package/src/components/ui/generative-ui.stories.tsx +557 -0
  102. package/src/components/ui/generative-ui.tsx +60 -360
  103. package/src/components/ui/tool-ui.stories.tsx +6 -3
  104. package/src/contexts/ChatIdContext.tsx +21 -0
  105. package/src/contexts/ElementsProvider.tsx +77 -37
  106. package/src/contexts/contexts.ts +2 -0
  107. package/src/hooks/useAuth.ts +18 -3
  108. package/src/hooks/useFollowOnSuggestions.ts +6 -1
  109. package/src/index.ts +1 -0
  110. package/src/plugins/chart/catalog.ts +141 -0
  111. package/src/plugins/chart/component.tsx +79 -125
  112. package/src/plugins/chart/index.ts +141 -89
  113. package/src/plugins/chart/ui/area-chart.tsx +133 -0
  114. package/src/plugins/chart/ui/bar-chart.tsx +137 -0
  115. package/src/plugins/chart/ui/donut-chart.tsx +167 -0
  116. package/src/plugins/chart/ui/index.ts +7 -0
  117. package/src/plugins/chart/ui/line-chart.tsx +135 -0
  118. package/src/plugins/chart/ui/pie-chart.tsx +148 -0
  119. package/src/plugins/chart/ui/radar-chart.tsx +105 -0
  120. package/src/plugins/chart/ui/scatter-chart.tsx +132 -0
  121. package/src/plugins/components/MacOSWindowFrame.tsx +55 -0
  122. package/src/plugins/components/PluginLoadingState.tsx +9 -13
  123. package/src/plugins/generative-ui/catalog.ts +277 -0
  124. package/src/plugins/generative-ui/component.tsx +112 -21
  125. package/src/plugins/generative-ui/index.ts +20 -141
  126. package/src/plugins/generative-ui/ui/accordion-wrapper.tsx +57 -0
  127. package/src/plugins/generative-ui/ui/accordion.tsx +66 -0
  128. package/src/plugins/generative-ui/ui/action-button.tsx +68 -0
  129. package/src/plugins/generative-ui/ui/alert-wrapper.tsx +26 -0
  130. package/src/plugins/generative-ui/ui/alert.tsx +66 -0
  131. package/src/plugins/generative-ui/ui/avatar-wrapper.tsx +22 -0
  132. package/src/plugins/generative-ui/ui/avatar.tsx +109 -0
  133. package/src/plugins/generative-ui/ui/badge.tsx +65 -0
  134. package/src/plugins/generative-ui/ui/button-wrapper.tsx +32 -0
  135. package/src/plugins/generative-ui/ui/button.tsx +65 -0
  136. package/src/plugins/generative-ui/ui/card-wrapper.tsx +36 -0
  137. package/src/plugins/generative-ui/ui/card.tsx +92 -0
  138. package/src/plugins/generative-ui/ui/checkbox-wrapper.tsx +39 -0
  139. package/src/plugins/generative-ui/ui/checkbox.tsx +32 -0
  140. package/src/plugins/generative-ui/ui/data-table.tsx +53 -0
  141. package/src/plugins/generative-ui/ui/dialog.tsx +158 -0
  142. package/src/plugins/generative-ui/ui/dropdown-menu.tsx +257 -0
  143. package/src/plugins/generative-ui/ui/grid.tsx +29 -0
  144. package/src/plugins/generative-ui/ui/index.ts +43 -0
  145. package/src/plugins/generative-ui/ui/input-wrapper.tsx +38 -0
  146. package/src/plugins/generative-ui/ui/input.tsx +21 -0
  147. package/src/plugins/generative-ui/ui/label.tsx +24 -0
  148. package/src/plugins/generative-ui/ui/list.tsx +34 -0
  149. package/src/plugins/generative-ui/ui/metric.tsx +53 -0
  150. package/src/plugins/generative-ui/ui/pagination.tsx +127 -0
  151. package/src/plugins/generative-ui/ui/popover.tsx +89 -0
  152. package/src/plugins/generative-ui/ui/progress.tsx +57 -0
  153. package/src/plugins/generative-ui/ui/radio-group.tsx +45 -0
  154. package/src/plugins/generative-ui/ui/select-wrapper.tsx +41 -0
  155. package/src/plugins/generative-ui/ui/select.tsx +190 -0
  156. package/src/plugins/generative-ui/ui/separator.tsx +28 -0
  157. package/src/plugins/generative-ui/ui/skeleton-wrapper.tsx +30 -0
  158. package/src/plugins/generative-ui/ui/skeleton.tsx +13 -0
  159. package/src/plugins/generative-ui/ui/stack.tsx +54 -0
  160. package/src/plugins/generative-ui/ui/switch.tsx +35 -0
  161. package/src/plugins/generative-ui/ui/table.tsx +116 -0
  162. package/src/plugins/generative-ui/ui/tabs-wrapper.tsx +51 -0
  163. package/src/plugins/generative-ui/ui/tabs.tsx +92 -0
  164. package/src/plugins/generative-ui/ui/text.tsx +33 -0
  165. package/src/plugins/generative-ui/ui/textarea.tsx +18 -0
  166. package/src/plugins/generative-ui/ui/tooltip.tsx +57 -0
  167. package/src/types/index.ts +4 -4
  168. package/dist/components/Chat/stories/Plugins.stories.d.ts +0 -12
  169. package/dist/index-C3UbmFRR.cjs +0 -178
  170. package/dist/index-C3UbmFRR.cjs.map +0 -1
  171. package/dist/index-CtyV0c-T.js +0 -27225
  172. package/dist/index-CtyV0c-T.js.map +0 -1
  173. package/dist/index-DxJwZ5Kc.js +0 -39975
  174. package/dist/index-DxJwZ5Kc.js.map +0 -1
  175. package/dist/index-iUSSoKFz.cjs +0 -251
  176. package/dist/index-iUSSoKFz.cjs.map +0 -1
  177. package/src/components/Chat/stories/Plugins.stories.tsx +0 -158
@@ -0,0 +1,37 @@
1
+ import { Meta, StoryFn } from '@storybook/react-vite';
2
+ import { Chat } from '..';
3
+ declare const meta: Meta<typeof Chat>;
4
+ export default meta;
5
+ type Story = StoryFn<typeof Chat>;
6
+ /**
7
+ * Bar chart demo - comparing categorical data using orders summary
8
+ */
9
+ export declare const BarChart: Story;
10
+ /**
11
+ * Line chart demo - showing trends over time
12
+ */
13
+ export declare const LineChart: Story;
14
+ /**
15
+ * Area chart demo - showing volume over time
16
+ */
17
+ export declare const AreaChart: Story;
18
+ /**
19
+ * Pie chart demo - showing proportions
20
+ */
21
+ export declare const PieChart: Story;
22
+ /**
23
+ * Donut chart demo - proportions with center metric
24
+ */
25
+ export declare const DonutChart: Story;
26
+ /**
27
+ * Scatter chart demo - showing correlation
28
+ */
29
+ export declare const ScatterChart: Story;
30
+ /**
31
+ * Radar chart demo - multi-dimensional comparison
32
+ */
33
+ export declare const RadarChart: Story;
34
+ /**
35
+ * All chart types overview
36
+ */
37
+ export declare const AllCharts: Story;
@@ -0,0 +1,17 @@
1
+ import { Meta, StoryFn } from '@storybook/react-vite';
2
+ import { Chat } from '..';
3
+ declare const meta: Meta<typeof Chat>;
4
+ export default meta;
5
+ type Story = StoryFn<typeof Chat>;
6
+ /**
7
+ * E-commerce store assistant with natural task-focused prompts.
8
+ */
9
+ export declare const StoreAssistant: Story;
10
+ /**
11
+ * Shopping assistant for product discovery.
12
+ */
13
+ export declare const ShoppingAssistant: Story;
14
+ /**
15
+ * Store management assistant.
16
+ */
17
+ export declare const StoreManager: Story;
@@ -1,5 +1,5 @@
1
- import { Chat } from '..';
2
1
  import { Meta, StoryFn } from '@storybook/react-vite';
2
+ import { Chat } from '..';
3
3
  declare const meta: Meta<typeof Chat>;
4
4
  export default meta;
5
5
  type Story = StoryFn<typeof Chat>;
@@ -1,7 +1,7 @@
1
1
  import { VariantProps } from 'class-variance-authority';
2
2
  import * as React from 'react';
3
3
  declare const Button: React.ForwardRefExoticComponent<Omit<React.ClassAttributes<HTMLButtonElement> & React.ButtonHTMLAttributes<HTMLButtonElement> & VariantProps<(props?: ({
4
- variant?: "default" | "link" | "secondary" | "outline" | "destructive" | "ghost" | null | undefined;
4
+ variant?: "default" | "link" | "destructive" | "secondary" | "outline" | "ghost" | null | undefined;
5
5
  size?: "default" | "icon" | "sm" | "lg" | "icon-sm" | "icon-lg" | null | undefined;
6
6
  } & import('class-variance-authority/types').ClassProp) | undefined) => string> & {
7
7
  asChild?: boolean;
@@ -1,4 +1,4 @@
1
1
  export declare const buttonVariants: (props?: ({
2
- variant?: "default" | "link" | "secondary" | "outline" | "destructive" | "ghost" | null | undefined;
2
+ variant?: "default" | "link" | "destructive" | "secondary" | "outline" | "ghost" | null | undefined;
3
3
  size?: "default" | "icon" | "sm" | "lg" | "icon-sm" | "icon-lg" | null | undefined;
4
4
  } & import('class-variance-authority/types').ClassProp) | undefined) => string;
@@ -0,0 +1,43 @@
1
+ import { Meta, StoryObj } from '@storybook/react-vite';
2
+ declare const meta: Meta;
3
+ export default meta;
4
+ /**
5
+ * Area chart showing trends over time with filled areas.
6
+ */
7
+ export declare const Area: StoryObj;
8
+ /**
9
+ * Stacked area chart comparing multiple data series.
10
+ */
11
+ export declare const AreaStacked: StoryObj;
12
+ /**
13
+ * Vertical bar chart for comparing categories.
14
+ */
15
+ export declare const Bar: StoryObj;
16
+ /**
17
+ * Horizontal bar chart layout.
18
+ */
19
+ export declare const BarHorizontal: StoryObj;
20
+ /**
21
+ * Line chart for tracking trends over time.
22
+ */
23
+ export declare const Line: StoryObj;
24
+ /**
25
+ * Curved line chart with smooth interpolation.
26
+ */
27
+ export declare const LineCurved: StoryObj;
28
+ /**
29
+ * Pie chart showing proportional data.
30
+ */
31
+ export declare const Pie: StoryObj;
32
+ /**
33
+ * Donut chart with center label.
34
+ */
35
+ export declare const Donut: StoryObj;
36
+ /**
37
+ * Radar chart for multi-dimensional comparison.
38
+ */
39
+ export declare const Radar: StoryObj;
40
+ /**
41
+ * Scatter chart for showing correlation between variables.
42
+ */
43
+ export declare const Scatter: StoryObj;
@@ -0,0 +1,53 @@
1
+ import { Meta, StoryObj } from '@storybook/react-vite';
2
+ import { GenerativeUI } from './generative-ui';
3
+ declare const meta: Meta<typeof GenerativeUI>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof GenerativeUI>;
6
+ /**
7
+ * Basic layout with Stack and Text components.
8
+ */
9
+ export declare const BasicLayout: Story;
10
+ /**
11
+ * Card with metrics displaying key statistics.
12
+ */
13
+ export declare const MetricsCard: Story;
14
+ /**
15
+ * Data table with headers and rows.
16
+ */
17
+ export declare const DataTable: Story;
18
+ /**
19
+ * Badges showing different status variants.
20
+ */
21
+ export declare const BadgeVariants: Story;
22
+ /**
23
+ * Alert messages for different contexts.
24
+ */
25
+ export declare const Alerts: Story;
26
+ /**
27
+ * Progress bars showing completion.
28
+ */
29
+ export declare const ProgressBars: Story;
30
+ /**
31
+ * Lists - ordered and unordered.
32
+ */
33
+ export declare const Lists: Story;
34
+ /**
35
+ * Accordion with collapsible sections.
36
+ */
37
+ export declare const AccordionExample: Story;
38
+ /**
39
+ * Tabs with multiple content panels.
40
+ */
41
+ export declare const TabsExample: Story;
42
+ /**
43
+ * Form elements - inputs, checkboxes, and selects.
44
+ */
45
+ export declare const FormElements: Story;
46
+ /**
47
+ * Avatar and skeleton loading states.
48
+ */
49
+ export declare const AvatarsAndSkeletons: Story;
50
+ /**
51
+ * Complete dashboard example combining multiple components.
52
+ */
53
+ export declare const Dashboard: Story;
@@ -0,0 +1,11 @@
1
+ export interface ChatIdContextValue {
2
+ chatId: string | null;
3
+ }
4
+ export declare const ChatIdContext: import('react').Context<ChatIdContextValue | null>;
5
+ /**
6
+ * Hook to access the current chat ID from the Elements context.
7
+ * Works in both history-enabled and history-disabled modes.
8
+ *
9
+ * @returns The current chat ID, or null if not yet initialized
10
+ */
11
+ export declare const useChatId: () => string | null;
@@ -2,3 +2,4 @@ import { ElementsContextType } from '../types';
2
2
  import { ToolApprovalContextType } from './ToolApprovalContext';
3
3
  export declare const ElementsContext: import('react').Context<ElementsContextType | undefined>;
4
4
  export declare const ToolApprovalContext: import('react').Context<ToolApprovalContextType | null>;
5
+ export { useChatId } from './ChatIdContext';
package/dist/elements.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-C3UbmFRR.cjs"),r=require("./index-iUSSoKFz.cjs");exports.Chat=e.Chat;exports.ChatHistory=e.ChatHistory;exports.ElementsProvider=e.ElementsProvider;exports.GramElementsProvider=e.ElementsProvider;exports.MODELS=e.MODELS;exports.Replay=e.Replay;exports.ShareButton=e.ShareButton;exports.defineFrontendTool=e.defineFrontendTool;exports.trackError=e.trackError;exports.useRecordCassette=e.useRecordCassette;exports.useThreadId=e.useThreadId;exports.useElements=r.useElements;exports.useGramElements=r.useElements;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-ChW-CSuu.cjs"),t=require("./index-BpJstUh1.cjs");exports.Chat=e.Chat;exports.ChatHistory=e.ChatHistory;exports.ElementsProvider=e.ElementsProvider;exports.GramElementsProvider=e.ElementsProvider;exports.MODELS=e.MODELS;exports.Replay=e.Replay;exports.ShareButton=e.ShareButton;exports.defineFrontendTool=e.defineFrontendTool;exports.trackError=e.trackError;exports.useRecordCassette=e.useRecordCassette;exports.useThreadId=e.useThreadId;exports.useChatId=t.useChatId;exports.useElements=t.useElements;exports.useGramElements=t.useElements;
2
2
  //# sourceMappingURL=elements.cjs.map