@agentiffai/design 0.1.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 (82) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/LICENSE +21 -0
  3. package/README.md +187 -0
  4. package/assets/layout/main-pane-section.png +0 -0
  5. package/assets/layout/nav-complete.png +0 -0
  6. package/assets/layout/nav-horizontal-section.png +0 -0
  7. package/assets/layout/nav-vertical-section.png +0 -0
  8. package/assets/layout/pane-section-dropdowns.png +0 -0
  9. package/assets/layout/pane-section-header.png +0 -0
  10. package/dist/Window-B6e_UfLV.d.ts +429 -0
  11. package/dist/Window-CgGFIYHS.d.cts +429 -0
  12. package/dist/chunk-CNVJ5UF2.js +2069 -0
  13. package/dist/chunk-CNVJ5UF2.js.map +1 -0
  14. package/dist/chunk-CVHHTWDQ.cjs +72 -0
  15. package/dist/chunk-CVHHTWDQ.cjs.map +1 -0
  16. package/dist/chunk-H4VHCHCP.cjs +1268 -0
  17. package/dist/chunk-H4VHCHCP.cjs.map +1 -0
  18. package/dist/chunk-JQ6Q7MDQ.js +67 -0
  19. package/dist/chunk-JQ6Q7MDQ.js.map +1 -0
  20. package/dist/chunk-KNSPBTTJ.cjs +2158 -0
  21. package/dist/chunk-KNSPBTTJ.cjs.map +1 -0
  22. package/dist/chunk-MNXQDDWP.js +2143 -0
  23. package/dist/chunk-MNXQDDWP.js.map +1 -0
  24. package/dist/chunk-P4Q3MHIY.cjs +2093 -0
  25. package/dist/chunk-P4Q3MHIY.cjs.map +1 -0
  26. package/dist/chunk-PAOXD7DF.js +1253 -0
  27. package/dist/chunk-PAOXD7DF.js.map +1 -0
  28. package/dist/copilotkit/index.cjs +611 -0
  29. package/dist/copilotkit/index.cjs.map +1 -0
  30. package/dist/copilotkit/index.d.cts +162 -0
  31. package/dist/copilotkit/index.d.ts +162 -0
  32. package/dist/copilotkit/index.js +538 -0
  33. package/dist/copilotkit/index.js.map +1 -0
  34. package/dist/icons/index.cjs +48 -0
  35. package/dist/icons/index.cjs.map +1 -0
  36. package/dist/icons/index.d.cts +375 -0
  37. package/dist/icons/index.d.ts +375 -0
  38. package/dist/icons/index.js +3 -0
  39. package/dist/icons/index.js.map +1 -0
  40. package/dist/index.cjs +536 -0
  41. package/dist/index.cjs.map +1 -0
  42. package/dist/index.d-DYU1eVeb.d.cts +252 -0
  43. package/dist/index.d-DYU1eVeb.d.ts +252 -0
  44. package/dist/index.d.cts +185 -0
  45. package/dist/index.d.ts +185 -0
  46. package/dist/index.js +358 -0
  47. package/dist/index.js.map +1 -0
  48. package/dist/layout/index.cjs +48 -0
  49. package/dist/layout/index.cjs.map +1 -0
  50. package/dist/layout/index.d.cts +206 -0
  51. package/dist/layout/index.d.ts +206 -0
  52. package/dist/layout/index.js +3 -0
  53. package/dist/layout/index.js.map +1 -0
  54. package/dist/theme/index.cjs +24 -0
  55. package/dist/theme/index.cjs.map +1 -0
  56. package/dist/theme/index.d.cts +95 -0
  57. package/dist/theme/index.d.ts +95 -0
  58. package/dist/theme/index.js +3 -0
  59. package/dist/theme/index.js.map +1 -0
  60. package/package.json +148 -0
  61. package/public/assets/bg-set/brand-logos/Google.svg +1 -0
  62. package/public/assets/bg-set/brand-logos/Google2.svg +1 -0
  63. package/public/assets/bg-set/brand-logos/Microsoft.svg +1 -0
  64. package/public/assets/bg-set/brand-logos/Microsoft2.svg +1 -0
  65. package/public/assets/bg-set/brand-logos/Slack.svg +1 -0
  66. package/public/assets/bg-set/brand-logos/Slack2.svg +1 -0
  67. package/public/assets/bg-set/brand-logos/YouTube.svg +1 -0
  68. package/public/assets/bg-set/brand-logos/YouTube2.svg +1 -0
  69. package/public/assets/bg-set/pattern/Size=lg, Type=Waves Rays2.svg +1 -0
  70. package/public/assets/bg-set/pattern/Size=md, Type=Waves Rays2.svg +1 -0
  71. package/public/assets/bg-set/pattern/Size=sm, Type=Waves Rays2.svg +1 -0
  72. package/public/assets/bg-set/pattern/Size=xl, Type=Waves Rays2.svg +1 -0
  73. package/public/assets/bg-set/pattern/Size=xs, Type=Waves Rays2.svg +1 -0
  74. package/public/assets/icon-set/Icon-add-circle-fill.svg +1 -0
  75. package/public/assets/icon-set/Icon-calendar-fill.svg +1 -0
  76. package/public/assets/icon-set/Icon-chat-1-fill.svg +1 -0
  77. package/public/assets/icon-set/Icon-download-2-fill.svg +1 -0
  78. package/public/assets/icon-set/Icon-home-fill.svg +1 -0
  79. package/public/assets/icon-set/Icon-mic-fill.svg +1 -0
  80. package/public/assets/icon-set/Icon-settings-3-fill.svg +1 -0
  81. package/public/assets/icon-set/Icon-settings-fill.svg +1 -0
  82. package/public/assets/icon-set/Icon-settings-line.svg +1 -0
@@ -0,0 +1,252 @@
1
+ import { MouseEvent, FocusEvent, SyntheticEvent, KeyboardEvent as KeyboardEvent$1, ElementType, ReactNode, JSXElementConstructor } from 'react';
2
+
3
+ /*
4
+ * Copyright 2020 Adobe. All rights reserved.
5
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License. You may obtain a copy
7
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * Unless required by applicable law or agreed to in writing, software distributed under
10
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
11
+ * OF ANY KIND, either express or implied. See the License for the specific language
12
+ * governing permissions and limitations under the License.
13
+ */
14
+
15
+
16
+
17
+ interface AriaLabelingProps {
18
+ /**
19
+ * Defines a string value that labels the current element.
20
+ */
21
+ 'aria-label'?: string,
22
+
23
+ /**
24
+ * Identifies the element (or elements) that labels the current element.
25
+ */
26
+ 'aria-labelledby'?: string,
27
+
28
+ /**
29
+ * Identifies the element (or elements) that describes the object.
30
+ */
31
+ 'aria-describedby'?: string,
32
+
33
+ /**
34
+ * Identifies the element (or elements) that provide a detailed, extended description for the object.
35
+ */
36
+ 'aria-details'?: string
37
+ }
38
+
39
+ // A set of common DOM props that are allowed on any component
40
+ // Ensure this is synced with DOMPropNames in filterDOMProps
41
+ interface DOMProps {
42
+ /**
43
+ * The element's unique identifier. See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/id).
44
+ */
45
+ id?: string
46
+ }
47
+
48
+ interface FocusableDOMProps extends DOMProps {
49
+ /**
50
+ * Whether to exclude the element from the sequential tab order. If true,
51
+ * the element will not be focusable via the keyboard by tabbing. This should
52
+ * be avoided except in rare scenarios where an alternative means of accessing
53
+ * the element or its functionality via the keyboard is available.
54
+ */
55
+ excludeFromTabOrder?: boolean
56
+ }
57
+
58
+ /** Any focusable element, including both HTML and SVG elements. */
59
+ interface FocusableElement extends Element, HTMLOrSVGElement {}
60
+
61
+ /*
62
+ * Copyright 2020 Adobe. All rights reserved.
63
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
64
+ * you may not use this file except in compliance with the License. You may obtain a copy
65
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
66
+ *
67
+ * Unless required by applicable law or agreed to in writing, software distributed under
68
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
69
+ * OF ANY KIND, either express or implied. See the License for the specific language
70
+ * governing permissions and limitations under the License.
71
+ */
72
+
73
+
74
+
75
+ // Event bubbling can be problematic in real-world applications, so the default for React Spectrum components
76
+ // is not to propagate. This can be overridden by calling continuePropagation() on the event.
77
+ type BaseEvent<T extends SyntheticEvent> = T & {
78
+ /**
79
+ * Use continuePropagation.
80
+ * @deprecated */
81
+ stopPropagation(): void,
82
+ continuePropagation(): void
83
+ }
84
+
85
+ type KeyboardEvent = BaseEvent<KeyboardEvent$1<any>>;
86
+
87
+ type PointerType = 'mouse' | 'pen' | 'touch' | 'keyboard' | 'virtual';
88
+
89
+ interface PressEvent {
90
+ /** The type of press event being fired. */
91
+ type: 'pressstart' | 'pressend' | 'pressup' | 'press',
92
+ /** The pointer type that triggered the press event. */
93
+ pointerType: PointerType,
94
+ /** The target element of the press event. */
95
+ target: Element,
96
+ /** Whether the shift keyboard modifier was held during the press event. */
97
+ shiftKey: boolean,
98
+ /** Whether the ctrl keyboard modifier was held during the press event. */
99
+ ctrlKey: boolean,
100
+ /** Whether the meta keyboard modifier was held during the press event. */
101
+ metaKey: boolean,
102
+ /** Whether the alt keyboard modifier was held during the press event. */
103
+ altKey: boolean,
104
+ /** X position relative to the target. */
105
+ x: number,
106
+ /** Y position relative to the target. */
107
+ y: number,
108
+ /**
109
+ * By default, press events stop propagation to parent elements.
110
+ * In cases where a handler decides not to handle a specific event,
111
+ * it can call `continuePropagation()` to allow a parent to handle it.
112
+ */
113
+ continuePropagation(): void
114
+ }
115
+
116
+ interface KeyboardEvents {
117
+ /** Handler that is called when a key is pressed. */
118
+ onKeyDown?: (e: KeyboardEvent) => void,
119
+ /** Handler that is called when a key is released. */
120
+ onKeyUp?: (e: KeyboardEvent) => void
121
+ }
122
+
123
+ interface FocusEvents<Target = Element> {
124
+ /** Handler that is called when the element receives focus. */
125
+ onFocus?: (e: FocusEvent<Target>) => void,
126
+ /** Handler that is called when the element loses focus. */
127
+ onBlur?: (e: FocusEvent<Target>) => void,
128
+ /** Handler that is called when the element's focus status changes. */
129
+ onFocusChange?: (isFocused: boolean) => void
130
+ }
131
+
132
+ interface PressEvents {
133
+ /** Handler that is called when the press is released over the target. */
134
+ onPress?: (e: PressEvent) => void,
135
+ /** Handler that is called when a press interaction starts. */
136
+ onPressStart?: (e: PressEvent) => void,
137
+ /**
138
+ * Handler that is called when a press interaction ends, either
139
+ * over the target or when the pointer leaves the target.
140
+ */
141
+ onPressEnd?: (e: PressEvent) => void,
142
+ /** Handler that is called when the press state changes. */
143
+ onPressChange?: (isPressed: boolean) => void,
144
+ /**
145
+ * Handler that is called when a press is released over the target, regardless of
146
+ * whether it started on the target or not.
147
+ */
148
+ onPressUp?: (e: PressEvent) => void,
149
+ /**
150
+ * **Not recommended – use `onPress` instead.** `onClick` is an alias for `onPress`
151
+ * provided for compatibility with other libraries. `onPress` provides
152
+ * additional event details for non-mouse interactions.
153
+ */
154
+ onClick?: (e: MouseEvent<FocusableElement>) => void
155
+ }
156
+
157
+ interface FocusableProps<Target = Element> extends FocusEvents<Target>, KeyboardEvents {
158
+ /** Whether the element should receive focus on render. */
159
+ autoFocus?: boolean
160
+ }
161
+
162
+ /*
163
+ * Copyright 2020 Adobe. All rights reserved.
164
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
165
+ * you may not use this file except in compliance with the License. You may obtain a copy
166
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
167
+ *
168
+ * Unless required by applicable law or agreed to in writing, software distributed under
169
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
170
+ * OF ANY KIND, either express or implied. See the License for the specific language
171
+ * governing permissions and limitations under the License.
172
+ */
173
+
174
+
175
+
176
+ interface ButtonProps extends PressEvents, FocusableProps {
177
+ /** Whether the button is disabled. */
178
+ isDisabled?: boolean,
179
+ /** The content to display in the button. */
180
+ children?: ReactNode
181
+ }
182
+
183
+ interface AriaButtonElementTypeProps<T extends ElementType = 'button'> {
184
+ /**
185
+ * The HTML element or React element used to render the button, e.g. 'div', 'a', or `RouterLink`.
186
+ * @default 'button'
187
+ */
188
+ elementType?: T | JSXElementConstructor<any>
189
+ }
190
+
191
+ interface LinkButtonProps<T extends ElementType = 'button'> extends AriaButtonElementTypeProps<T> {
192
+ /** A URL to link to if elementType="a". */
193
+ href?: string,
194
+ /** The target window for the link. */
195
+ target?: string,
196
+ /** The relationship between the linked resource and the current page. See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/rel). */
197
+ rel?: string
198
+ }
199
+
200
+ interface AriaBaseButtonProps extends FocusableDOMProps, AriaLabelingProps {
201
+ /** Indicates whether the element is disabled to users of assistive technology. */
202
+ 'aria-disabled'?: boolean | 'true' | 'false',
203
+ /** Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed. */
204
+ 'aria-expanded'?: boolean | 'true' | 'false',
205
+ /** Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element. */
206
+ 'aria-haspopup'?: boolean | 'menu' | 'listbox' | 'tree' | 'grid' | 'dialog' | 'true' | 'false',
207
+ /** Identifies the element (or elements) whose contents or presence are controlled by the current element. */
208
+ 'aria-controls'?: string,
209
+ /** Indicates the current "pressed" state of toggle buttons. */
210
+ 'aria-pressed'?: boolean | 'true' | 'false' | 'mixed',
211
+ /** Indicates whether this element represents the current item within a container or set of related elements. */
212
+ 'aria-current'?: boolean | 'true' | 'false' | 'page' | 'step' | 'location' | 'date' | 'time',
213
+ /**
214
+ * The behavior of the button when used in an HTML form.
215
+ * @default 'button'
216
+ */
217
+ type?: 'button' | 'submit' | 'reset',
218
+ /**
219
+ * Whether to prevent focus from moving to the button when pressing it.
220
+ *
221
+ * Caution, this can make the button inaccessible and should only be used when alternative keyboard interaction is provided,
222
+ * such as ComboBox's MenuTrigger or a NumberField's increment/decrement control.
223
+ */
224
+ preventFocusOnPress?: boolean,
225
+ /**
226
+ * The `<form>` element to associate the button with.
227
+ * The value of this attribute must be the id of a `<form>` in the same document.
228
+ * See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/button#form).
229
+ */
230
+ form?: string,
231
+ /**
232
+ * The URL that processes the information submitted by the button.
233
+ * Overrides the action attribute of the button's form owner.
234
+ */
235
+ formAction?: string,
236
+ /** Indicates how to encode the form data that is submitted. */
237
+ formEncType?: string,
238
+ /** Indicates the HTTP method used to submit the form. */
239
+ formMethod?: string,
240
+ /** Indicates that the form is not to be validated when it is submitted. */
241
+ formNoValidate?: boolean,
242
+ /** Overrides the target attribute of the button's form owner. */
243
+ formTarget?: string,
244
+ /** Submitted as a pair with the button's value as part of the form data. */
245
+ name?: string,
246
+ /** The value associated with the button's name when it's submitted with the form data. */
247
+ value?: string
248
+ }
249
+
250
+ interface AriaButtonProps<T extends ElementType = 'button'> extends ButtonProps, LinkButtonProps<T>, AriaBaseButtonProps {}
251
+
252
+ export type { AriaButtonProps as A };
@@ -0,0 +1,252 @@
1
+ import { MouseEvent, FocusEvent, SyntheticEvent, KeyboardEvent as KeyboardEvent$1, ElementType, ReactNode, JSXElementConstructor } from 'react';
2
+
3
+ /*
4
+ * Copyright 2020 Adobe. All rights reserved.
5
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License. You may obtain a copy
7
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * Unless required by applicable law or agreed to in writing, software distributed under
10
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
11
+ * OF ANY KIND, either express or implied. See the License for the specific language
12
+ * governing permissions and limitations under the License.
13
+ */
14
+
15
+
16
+
17
+ interface AriaLabelingProps {
18
+ /**
19
+ * Defines a string value that labels the current element.
20
+ */
21
+ 'aria-label'?: string,
22
+
23
+ /**
24
+ * Identifies the element (or elements) that labels the current element.
25
+ */
26
+ 'aria-labelledby'?: string,
27
+
28
+ /**
29
+ * Identifies the element (or elements) that describes the object.
30
+ */
31
+ 'aria-describedby'?: string,
32
+
33
+ /**
34
+ * Identifies the element (or elements) that provide a detailed, extended description for the object.
35
+ */
36
+ 'aria-details'?: string
37
+ }
38
+
39
+ // A set of common DOM props that are allowed on any component
40
+ // Ensure this is synced with DOMPropNames in filterDOMProps
41
+ interface DOMProps {
42
+ /**
43
+ * The element's unique identifier. See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/id).
44
+ */
45
+ id?: string
46
+ }
47
+
48
+ interface FocusableDOMProps extends DOMProps {
49
+ /**
50
+ * Whether to exclude the element from the sequential tab order. If true,
51
+ * the element will not be focusable via the keyboard by tabbing. This should
52
+ * be avoided except in rare scenarios where an alternative means of accessing
53
+ * the element or its functionality via the keyboard is available.
54
+ */
55
+ excludeFromTabOrder?: boolean
56
+ }
57
+
58
+ /** Any focusable element, including both HTML and SVG elements. */
59
+ interface FocusableElement extends Element, HTMLOrSVGElement {}
60
+
61
+ /*
62
+ * Copyright 2020 Adobe. All rights reserved.
63
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
64
+ * you may not use this file except in compliance with the License. You may obtain a copy
65
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
66
+ *
67
+ * Unless required by applicable law or agreed to in writing, software distributed under
68
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
69
+ * OF ANY KIND, either express or implied. See the License for the specific language
70
+ * governing permissions and limitations under the License.
71
+ */
72
+
73
+
74
+
75
+ // Event bubbling can be problematic in real-world applications, so the default for React Spectrum components
76
+ // is not to propagate. This can be overridden by calling continuePropagation() on the event.
77
+ type BaseEvent<T extends SyntheticEvent> = T & {
78
+ /**
79
+ * Use continuePropagation.
80
+ * @deprecated */
81
+ stopPropagation(): void,
82
+ continuePropagation(): void
83
+ }
84
+
85
+ type KeyboardEvent = BaseEvent<KeyboardEvent$1<any>>;
86
+
87
+ type PointerType = 'mouse' | 'pen' | 'touch' | 'keyboard' | 'virtual';
88
+
89
+ interface PressEvent {
90
+ /** The type of press event being fired. */
91
+ type: 'pressstart' | 'pressend' | 'pressup' | 'press',
92
+ /** The pointer type that triggered the press event. */
93
+ pointerType: PointerType,
94
+ /** The target element of the press event. */
95
+ target: Element,
96
+ /** Whether the shift keyboard modifier was held during the press event. */
97
+ shiftKey: boolean,
98
+ /** Whether the ctrl keyboard modifier was held during the press event. */
99
+ ctrlKey: boolean,
100
+ /** Whether the meta keyboard modifier was held during the press event. */
101
+ metaKey: boolean,
102
+ /** Whether the alt keyboard modifier was held during the press event. */
103
+ altKey: boolean,
104
+ /** X position relative to the target. */
105
+ x: number,
106
+ /** Y position relative to the target. */
107
+ y: number,
108
+ /**
109
+ * By default, press events stop propagation to parent elements.
110
+ * In cases where a handler decides not to handle a specific event,
111
+ * it can call `continuePropagation()` to allow a parent to handle it.
112
+ */
113
+ continuePropagation(): void
114
+ }
115
+
116
+ interface KeyboardEvents {
117
+ /** Handler that is called when a key is pressed. */
118
+ onKeyDown?: (e: KeyboardEvent) => void,
119
+ /** Handler that is called when a key is released. */
120
+ onKeyUp?: (e: KeyboardEvent) => void
121
+ }
122
+
123
+ interface FocusEvents<Target = Element> {
124
+ /** Handler that is called when the element receives focus. */
125
+ onFocus?: (e: FocusEvent<Target>) => void,
126
+ /** Handler that is called when the element loses focus. */
127
+ onBlur?: (e: FocusEvent<Target>) => void,
128
+ /** Handler that is called when the element's focus status changes. */
129
+ onFocusChange?: (isFocused: boolean) => void
130
+ }
131
+
132
+ interface PressEvents {
133
+ /** Handler that is called when the press is released over the target. */
134
+ onPress?: (e: PressEvent) => void,
135
+ /** Handler that is called when a press interaction starts. */
136
+ onPressStart?: (e: PressEvent) => void,
137
+ /**
138
+ * Handler that is called when a press interaction ends, either
139
+ * over the target or when the pointer leaves the target.
140
+ */
141
+ onPressEnd?: (e: PressEvent) => void,
142
+ /** Handler that is called when the press state changes. */
143
+ onPressChange?: (isPressed: boolean) => void,
144
+ /**
145
+ * Handler that is called when a press is released over the target, regardless of
146
+ * whether it started on the target or not.
147
+ */
148
+ onPressUp?: (e: PressEvent) => void,
149
+ /**
150
+ * **Not recommended – use `onPress` instead.** `onClick` is an alias for `onPress`
151
+ * provided for compatibility with other libraries. `onPress` provides
152
+ * additional event details for non-mouse interactions.
153
+ */
154
+ onClick?: (e: MouseEvent<FocusableElement>) => void
155
+ }
156
+
157
+ interface FocusableProps<Target = Element> extends FocusEvents<Target>, KeyboardEvents {
158
+ /** Whether the element should receive focus on render. */
159
+ autoFocus?: boolean
160
+ }
161
+
162
+ /*
163
+ * Copyright 2020 Adobe. All rights reserved.
164
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
165
+ * you may not use this file except in compliance with the License. You may obtain a copy
166
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
167
+ *
168
+ * Unless required by applicable law or agreed to in writing, software distributed under
169
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
170
+ * OF ANY KIND, either express or implied. See the License for the specific language
171
+ * governing permissions and limitations under the License.
172
+ */
173
+
174
+
175
+
176
+ interface ButtonProps extends PressEvents, FocusableProps {
177
+ /** Whether the button is disabled. */
178
+ isDisabled?: boolean,
179
+ /** The content to display in the button. */
180
+ children?: ReactNode
181
+ }
182
+
183
+ interface AriaButtonElementTypeProps<T extends ElementType = 'button'> {
184
+ /**
185
+ * The HTML element or React element used to render the button, e.g. 'div', 'a', or `RouterLink`.
186
+ * @default 'button'
187
+ */
188
+ elementType?: T | JSXElementConstructor<any>
189
+ }
190
+
191
+ interface LinkButtonProps<T extends ElementType = 'button'> extends AriaButtonElementTypeProps<T> {
192
+ /** A URL to link to if elementType="a". */
193
+ href?: string,
194
+ /** The target window for the link. */
195
+ target?: string,
196
+ /** The relationship between the linked resource and the current page. See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/rel). */
197
+ rel?: string
198
+ }
199
+
200
+ interface AriaBaseButtonProps extends FocusableDOMProps, AriaLabelingProps {
201
+ /** Indicates whether the element is disabled to users of assistive technology. */
202
+ 'aria-disabled'?: boolean | 'true' | 'false',
203
+ /** Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed. */
204
+ 'aria-expanded'?: boolean | 'true' | 'false',
205
+ /** Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element. */
206
+ 'aria-haspopup'?: boolean | 'menu' | 'listbox' | 'tree' | 'grid' | 'dialog' | 'true' | 'false',
207
+ /** Identifies the element (or elements) whose contents or presence are controlled by the current element. */
208
+ 'aria-controls'?: string,
209
+ /** Indicates the current "pressed" state of toggle buttons. */
210
+ 'aria-pressed'?: boolean | 'true' | 'false' | 'mixed',
211
+ /** Indicates whether this element represents the current item within a container or set of related elements. */
212
+ 'aria-current'?: boolean | 'true' | 'false' | 'page' | 'step' | 'location' | 'date' | 'time',
213
+ /**
214
+ * The behavior of the button when used in an HTML form.
215
+ * @default 'button'
216
+ */
217
+ type?: 'button' | 'submit' | 'reset',
218
+ /**
219
+ * Whether to prevent focus from moving to the button when pressing it.
220
+ *
221
+ * Caution, this can make the button inaccessible and should only be used when alternative keyboard interaction is provided,
222
+ * such as ComboBox's MenuTrigger or a NumberField's increment/decrement control.
223
+ */
224
+ preventFocusOnPress?: boolean,
225
+ /**
226
+ * The `<form>` element to associate the button with.
227
+ * The value of this attribute must be the id of a `<form>` in the same document.
228
+ * See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/button#form).
229
+ */
230
+ form?: string,
231
+ /**
232
+ * The URL that processes the information submitted by the button.
233
+ * Overrides the action attribute of the button's form owner.
234
+ */
235
+ formAction?: string,
236
+ /** Indicates how to encode the form data that is submitted. */
237
+ formEncType?: string,
238
+ /** Indicates the HTTP method used to submit the form. */
239
+ formMethod?: string,
240
+ /** Indicates that the form is not to be validated when it is submitted. */
241
+ formNoValidate?: boolean,
242
+ /** Overrides the target attribute of the button's form owner. */
243
+ formTarget?: string,
244
+ /** Submitted as a pair with the button's value as part of the form data. */
245
+ name?: string,
246
+ /** The value associated with the button's name when it's submitted with the form data. */
247
+ value?: string
248
+ }
249
+
250
+ interface AriaButtonProps<T extends ElementType = 'button'> extends ButtonProps, LinkButtonProps<T>, AriaBaseButtonProps {}
251
+
252
+ export type { AriaButtonProps as A };
@@ -0,0 +1,185 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { AriaTextFieldProps } from '@react-aria/textfield';
3
+ import React__default from 'react';
4
+ export { ActionButtons, ActionButtonsProps, BrandType, Icon, IconName, IconNames, IconProps, Layout, LayoutProps, NavHorizontal, NavHorizontalProps, NavVertical, NavVerticalProps, PaneMenus, PaneMenusProps, PaneSectionHeader, PaneSectionHeaderProps, ServiceBrand, ServiceIcon, ServiceIconProps, WorkflowStatusCard, WorkflowStatusCardProps } from './layout/index.cjs';
5
+ import { AriaButtonProps } from '@react-aria/button';
6
+ 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 Suggestions, S as SuggestionsProps, z as Window, W as WindowProps } from './Window-CgGFIYHS.cjs';
8
+ 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
+ import './index.d-DYU1eVeb.cjs';
10
+ import 'styled-components';
11
+ import 'styled-components/dist/types';
12
+
13
+ interface AssistantThinkingProps {
14
+ message?: string;
15
+ className?: string;
16
+ ariaLabel?: string;
17
+ }
18
+ declare function AssistantThinking({ message, className, ariaLabel, }: AssistantThinkingProps): react_jsx_runtime.JSX.Element;
19
+ declare namespace AssistantThinking {
20
+ var displayName: string;
21
+ }
22
+
23
+ interface Suggestion {
24
+ /** The text content of the suggestion */
25
+ text: string;
26
+ }
27
+ interface ChatInputProps extends Omit<AriaTextFieldProps, 'onChange'> {
28
+ /** Array of suggestion items to display above the input */
29
+ suggestions?: Suggestion[];
30
+ /** Callback when a suggestion is selected */
31
+ onSuggestionSelect?: (suggestion: string) => void;
32
+ /** Current message value */
33
+ value?: string;
34
+ /** Callback when message value changes */
35
+ onChange?: (value: string) => void;
36
+ /** Callback when message is submitted */
37
+ onSubmit?: (message: string) => void;
38
+ /** Placeholder text */
39
+ placeholder?: string;
40
+ /** Whether the input is disabled */
41
+ isDisabled?: boolean;
42
+ /** Whether the input is read-only */
43
+ isReadOnly?: boolean;
44
+ /** Whether to auto-focus the input */
45
+ autoFocus?: boolean;
46
+ /** Additional CSS class name */
47
+ className?: string;
48
+ /** ARIA label for the input */
49
+ 'aria-label'?: string;
50
+ }
51
+ /**
52
+ * ChatInput component with minimal pill-shaped suggestion buttons
53
+ *
54
+ * Features:
55
+ * - Horizontal pill-shaped suggestion buttons with minimal design
56
+ * - Single-line input with submit button
57
+ * - React ARIA for accessibility
58
+ * - Keyboard navigation support
59
+ * - Clean, modern design matching vendor image
60
+ *
61
+ * @example
62
+ * ```tsx
63
+ * <ChatInput
64
+ * suggestions={[
65
+ * { text: "Create in-depth analysis" },
66
+ * { text: "Identify actionable tasks" }
67
+ * ]}
68
+ * placeholder="Ask, write or search for anything..."
69
+ * onSubmit={(message) => console.log(message)}
70
+ * onSuggestionSelect={(suggestion) => console.log(suggestion)}
71
+ * />
72
+ * ```
73
+ */
74
+ declare const ChatInput: React__default.FC<ChatInputProps>;
75
+
76
+ interface NotificationItem {
77
+ /** Unique identifier for the item */
78
+ id: string;
79
+ /** The text content of the notification */
80
+ text: string;
81
+ /** Optional icon (can be emoji, SVG, or icon component) */
82
+ icon?: React__default.ReactNode;
83
+ /** Icon background color (for colored icons like Slack, Google Sheets) */
84
+ iconColor?: string;
85
+ /** Whether this item is currently selected/active */
86
+ isSelected?: boolean;
87
+ }
88
+ interface NotificationSection {
89
+ /** Section title (e.g., "Today", "Yesterday") */
90
+ title: string;
91
+ /** Whether the section is initially collapsed */
92
+ isCollapsed?: boolean;
93
+ /** Array of notification items in this section */
94
+ items: NotificationItem[];
95
+ }
96
+ interface NotificationCardProps {
97
+ /** Array of notification sections */
98
+ sections: NotificationSection[];
99
+ /** Callback when an item is clicked */
100
+ onItemClick?: (item: NotificationItem) => void;
101
+ /** Currently selected item ID */
102
+ selectedItemId?: string;
103
+ /** Callback when menu button is clicked (three-dot menu) */
104
+ onMenuClick?: (item: NotificationItem) => void;
105
+ /** Additional CSS class name */
106
+ className?: string;
107
+ /** ARIA label for the notification card */
108
+ 'aria-label'?: string;
109
+ }
110
+ /**
111
+ * NotificationCard component with collapsible sections
112
+ *
113
+ * Features:
114
+ * - Date-based sections with collapsible headers
115
+ * - Different item states (default, selected)
116
+ * - Icon variants (circle icon, colored app icons)
117
+ * - Three-dot menu on selected items
118
+ * - React ARIA for accessibility
119
+ * - Full keyboard navigation support
120
+ * - Clean design matching vendor image
121
+ *
122
+ * @example
123
+ * ```tsx
124
+ * <NotificationCard
125
+ * sections={[
126
+ * {
127
+ * title: "Today",
128
+ * items: [
129
+ * { id: "1", text: "Help me write a professional email." },
130
+ * { id: "2", text: "Write a letter to the work chat", icon: "💬", iconColor: "#4A90E2" }
131
+ * ]
132
+ * },
133
+ * {
134
+ * title: "Yesterday",
135
+ * items: [
136
+ * { id: "3", text: "Generate a 3D scene of robots", isSelected: true }
137
+ * ]
138
+ * }
139
+ * ]}
140
+ * selectedItemId="3"
141
+ * onItemClick={(item) => console.log(item)}
142
+ * onMenuClick={(item) => console.log("Menu clicked", item)}
143
+ * />
144
+ * ```
145
+ */
146
+ declare const NotificationCard: React__default.FC<NotificationCardProps>;
147
+
148
+ interface UserMessageProps extends AriaButtonProps {
149
+ /**
150
+ * The message text to display
151
+ */
152
+ children: React.ReactNode;
153
+ /**
154
+ * Additional CSS class name
155
+ */
156
+ className?: string;
157
+ /**
158
+ * Whether the message is in a pressed state
159
+ */
160
+ isPressed?: boolean;
161
+ /**
162
+ * Optional click handler
163
+ */
164
+ onPress?: () => void;
165
+ }
166
+ /**
167
+ * UserMessage component - Displays a user message in a gradient pill
168
+ *
169
+ * This component renders a user message with a purple-to-blue gradient background,
170
+ * pill-shaped design with fully rounded ends, and white text. It uses React ARIA
171
+ * for accessibility and supports keyboard navigation.
172
+ *
173
+ * @example
174
+ * ```tsx
175
+ * <UserMessage onPress={() => console.log('clicked')}>
176
+ * Can you export this as a CSV?
177
+ * </UserMessage>
178
+ * ```
179
+ */
180
+ declare function UserMessage({ children, className, isPressed, onPress, ...ariaProps }: UserMessageProps): react_jsx_runtime.JSX.Element;
181
+ declare namespace UserMessage {
182
+ var displayName: string;
183
+ }
184
+
185
+ export { AssistantThinking, type AssistantThinkingProps, ChatInput, type ChatInputProps, NotificationCard, type NotificationCardProps, UserMessage, type UserMessageProps };