@convai/web-sdk 0.1.0 → 0.1.1-beta.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.
Files changed (177) hide show
  1. package/README.md +277 -185
  2. package/dist/components/ConvaiWidget.d.ts.map +1 -1
  3. package/dist/components/ConvaiWidget.js +13 -0
  4. package/dist/components/ConvaiWidget.js.map +1 -1
  5. package/dist/components/rtc-widget/components/AudioSettingsPanel.js +1 -1
  6. package/dist/components/rtc-widget/components/AudioSettingsPanel.js.map +1 -1
  7. package/dist/components/rtc-widget/styles/styledComponents.d.ts.map +1 -1
  8. package/dist/components/rtc-widget/styles/styledComponents.js +72 -51
  9. package/dist/components/rtc-widget/styles/styledComponents.js.map +1 -1
  10. package/dist/core/AudioManager.d.ts +75 -0
  11. package/dist/core/AudioManager.d.ts.map +1 -0
  12. package/dist/core/AudioManager.js +219 -0
  13. package/dist/core/AudioManager.js.map +1 -0
  14. package/dist/core/ConvaiClient.d.ts +122 -0
  15. package/dist/core/ConvaiClient.d.ts.map +1 -0
  16. package/dist/core/ConvaiClient.js +514 -0
  17. package/dist/core/ConvaiClient.js.map +1 -0
  18. package/dist/core/EventEmitter.d.ts +38 -0
  19. package/dist/core/EventEmitter.d.ts.map +1 -0
  20. package/dist/core/EventEmitter.js +68 -0
  21. package/dist/core/EventEmitter.js.map +1 -0
  22. package/dist/core/MessageHandler.d.ts +52 -0
  23. package/dist/core/MessageHandler.d.ts.map +1 -0
  24. package/dist/core/MessageHandler.js +281 -0
  25. package/dist/core/MessageHandler.js.map +1 -0
  26. package/dist/core/ScreenShareManager.d.ts +57 -0
  27. package/dist/core/ScreenShareManager.d.ts.map +1 -0
  28. package/dist/core/ScreenShareManager.js +206 -0
  29. package/dist/core/ScreenShareManager.js.map +1 -0
  30. package/dist/core/VideoManager.d.ts +69 -0
  31. package/dist/core/VideoManager.d.ts.map +1 -0
  32. package/dist/core/VideoManager.js +207 -0
  33. package/dist/core/VideoManager.js.map +1 -0
  34. package/dist/core/index.d.ts +9 -0
  35. package/dist/core/index.d.ts.map +1 -0
  36. package/dist/core/index.js +12 -0
  37. package/dist/core/index.js.map +1 -0
  38. package/dist/core/types.d.ts +311 -0
  39. package/dist/core/types.d.ts.map +1 -0
  40. package/dist/core/types.js +2 -0
  41. package/dist/core/types.js.map +1 -0
  42. package/dist/hooks/useAudioControls.d.ts.map +1 -1
  43. package/dist/hooks/useAudioControls.js +9 -1
  44. package/dist/hooks/useAudioControls.js.map +1 -1
  45. package/dist/hooks/useConvaiClient.d.ts.map +1 -1
  46. package/dist/hooks/useConvaiClient.js +32 -8
  47. package/dist/hooks/useConvaiClient.js.map +1 -1
  48. package/dist/hooks/useMessageHandler.d.ts.map +1 -1
  49. package/dist/hooks/useMessageHandler.js +39 -14
  50. package/dist/hooks/useMessageHandler.js.map +1 -1
  51. package/dist/index.d.ts +1 -5
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +3 -10
  54. package/dist/index.js.map +1 -1
  55. package/dist/react/components/ConvaiWidget.d.ts +59 -0
  56. package/dist/react/components/ConvaiWidget.d.ts.map +1 -0
  57. package/dist/react/components/ConvaiWidget.js +421 -0
  58. package/dist/react/components/ConvaiWidget.js.map +1 -0
  59. package/dist/react/components/index.d.ts +3 -0
  60. package/dist/react/components/index.d.ts.map +1 -0
  61. package/dist/react/components/index.js +5 -0
  62. package/dist/react/components/index.js.map +1 -0
  63. package/dist/react/components/rtc-widget/components/AudioSettingsPanel.d.ts +10 -0
  64. package/dist/react/components/rtc-widget/components/AudioSettingsPanel.d.ts.map +1 -0
  65. package/dist/react/components/rtc-widget/components/AudioSettingsPanel.js +316 -0
  66. package/dist/react/components/rtc-widget/components/AudioSettingsPanel.js.map +1 -0
  67. package/dist/react/components/rtc-widget/components/ConviMessage.d.ts +10 -0
  68. package/dist/react/components/rtc-widget/components/ConviMessage.d.ts.map +1 -0
  69. package/dist/react/components/rtc-widget/components/ConviMessage.js +14 -0
  70. package/dist/react/components/rtc-widget/components/ConviMessage.js.map +1 -0
  71. package/dist/react/components/rtc-widget/components/FloatingVideo.d.ts +9 -0
  72. package/dist/react/components/rtc-widget/components/FloatingVideo.d.ts.map +1 -0
  73. package/dist/react/components/rtc-widget/components/FloatingVideo.js +122 -0
  74. package/dist/react/components/rtc-widget/components/FloatingVideo.js.map +1 -0
  75. package/dist/react/components/rtc-widget/components/MarkdownRenderer.d.ts +7 -0
  76. package/dist/react/components/rtc-widget/components/MarkdownRenderer.d.ts.map +1 -0
  77. package/dist/react/components/rtc-widget/components/MarkdownRenderer.js +68 -0
  78. package/dist/react/components/rtc-widget/components/MarkdownRenderer.js.map +1 -0
  79. package/dist/react/components/rtc-widget/components/MessageBubble.d.ts +10 -0
  80. package/dist/react/components/rtc-widget/components/MessageBubble.d.ts.map +1 -0
  81. package/dist/react/components/rtc-widget/components/MessageBubble.js +23 -0
  82. package/dist/react/components/rtc-widget/components/MessageBubble.js.map +1 -0
  83. package/dist/react/components/rtc-widget/components/MessageList.d.ts +11 -0
  84. package/dist/react/components/rtc-widget/components/MessageList.d.ts.map +1 -0
  85. package/dist/react/components/rtc-widget/components/MessageList.js +89 -0
  86. package/dist/react/components/rtc-widget/components/MessageList.js.map +1 -0
  87. package/dist/react/components/rtc-widget/components/UserMessage.d.ts +9 -0
  88. package/dist/react/components/rtc-widget/components/UserMessage.d.ts.map +1 -0
  89. package/dist/react/components/rtc-widget/components/UserMessage.js +15 -0
  90. package/dist/react/components/rtc-widget/components/UserMessage.js.map +1 -0
  91. package/dist/react/components/rtc-widget/components/conviComponents/ConviButton.d.ts +6 -0
  92. package/dist/react/components/rtc-widget/components/conviComponents/ConviButton.d.ts.map +1 -0
  93. package/dist/react/components/rtc-widget/components/conviComponents/ConviButton.js +15 -0
  94. package/dist/react/components/rtc-widget/components/conviComponents/ConviButton.js.map +1 -0
  95. package/dist/react/components/rtc-widget/components/conviComponents/ConviFooter.d.ts +25 -0
  96. package/dist/react/components/rtc-widget/components/conviComponents/ConviFooter.d.ts.map +1 -0
  97. package/dist/react/components/rtc-widget/components/conviComponents/ConviFooter.js +172 -0
  98. package/dist/react/components/rtc-widget/components/conviComponents/ConviFooter.js.map +1 -0
  99. package/dist/react/components/rtc-widget/components/conviComponents/ConviHeader.d.ts +17 -0
  100. package/dist/react/components/rtc-widget/components/conviComponents/ConviHeader.d.ts.map +1 -0
  101. package/dist/react/components/rtc-widget/components/conviComponents/ConviHeader.js +66 -0
  102. package/dist/react/components/rtc-widget/components/conviComponents/ConviHeader.js.map +1 -0
  103. package/dist/react/components/rtc-widget/components/conviComponents/SettingsTray.d.ts +12 -0
  104. package/dist/react/components/rtc-widget/components/conviComponents/SettingsTray.d.ts.map +1 -0
  105. package/dist/react/components/rtc-widget/components/conviComponents/SettingsTray.js +68 -0
  106. package/dist/react/components/rtc-widget/components/conviComponents/SettingsTray.js.map +1 -0
  107. package/dist/react/components/rtc-widget/components/conviComponents/VoiceModeOverlay.d.ts +8 -0
  108. package/dist/react/components/rtc-widget/components/conviComponents/VoiceModeOverlay.d.ts.map +1 -0
  109. package/dist/react/components/rtc-widget/components/conviComponents/VoiceModeOverlay.js +199 -0
  110. package/dist/react/components/rtc-widget/components/conviComponents/VoiceModeOverlay.js.map +1 -0
  111. package/dist/react/components/rtc-widget/components/conviComponents/index.d.ts +6 -0
  112. package/dist/react/components/rtc-widget/components/conviComponents/index.d.ts.map +1 -0
  113. package/dist/react/components/rtc-widget/components/conviComponents/index.js +6 -0
  114. package/dist/react/components/rtc-widget/components/conviComponents/index.js.map +1 -0
  115. package/dist/react/components/rtc-widget/components/index.d.ts +8 -0
  116. package/dist/react/components/rtc-widget/components/index.d.ts.map +1 -0
  117. package/dist/react/components/rtc-widget/components/index.js +13 -0
  118. package/dist/react/components/rtc-widget/components/index.js.map +1 -0
  119. package/dist/react/components/rtc-widget/index.d.ts +6 -0
  120. package/dist/react/components/rtc-widget/index.d.ts.map +1 -0
  121. package/dist/react/components/rtc-widget/index.js +9 -0
  122. package/dist/react/components/rtc-widget/index.js.map +1 -0
  123. package/dist/react/components/rtc-widget/styles/framerConfig.d.ts +116 -0
  124. package/dist/react/components/rtc-widget/styles/framerConfig.d.ts.map +1 -0
  125. package/dist/react/components/rtc-widget/styles/framerConfig.js +73 -0
  126. package/dist/react/components/rtc-widget/styles/framerConfig.js.map +1 -0
  127. package/dist/react/components/rtc-widget/styles/icons.d.ts +28 -0
  128. package/dist/react/components/rtc-widget/styles/icons.d.ts.map +1 -0
  129. package/dist/react/components/rtc-widget/styles/icons.js +257 -0
  130. package/dist/react/components/rtc-widget/styles/icons.js.map +1 -0
  131. package/dist/react/components/rtc-widget/styles/index.d.ts +6 -0
  132. package/dist/react/components/rtc-widget/styles/index.d.ts.map +1 -0
  133. package/dist/react/components/rtc-widget/styles/index.js +9 -0
  134. package/dist/react/components/rtc-widget/styles/index.js.map +1 -0
  135. package/dist/react/components/rtc-widget/styles/styledComponents.d.ts +90 -0
  136. package/dist/react/components/rtc-widget/styles/styledComponents.d.ts.map +1 -0
  137. package/dist/react/components/rtc-widget/styles/styledComponents.js +661 -0
  138. package/dist/react/components/rtc-widget/styles/styledComponents.js.map +1 -0
  139. package/dist/react/components/rtc-widget/styles/theme.d.ts +188 -0
  140. package/dist/react/components/rtc-widget/styles/theme.d.ts.map +1 -0
  141. package/dist/react/components/rtc-widget/styles/theme.js +290 -0
  142. package/dist/react/components/rtc-widget/styles/theme.js.map +1 -0
  143. package/dist/react/components/rtc-widget/types/index.d.ts +60 -0
  144. package/dist/react/components/rtc-widget/types/index.d.ts.map +1 -0
  145. package/dist/react/components/rtc-widget/types/index.js +2 -0
  146. package/dist/react/components/rtc-widget/types/index.js.map +1 -0
  147. package/dist/react/hooks/index.d.ts +4 -0
  148. package/dist/react/hooks/index.d.ts.map +1 -0
  149. package/dist/react/hooks/index.js +6 -0
  150. package/dist/react/hooks/index.js.map +1 -0
  151. package/dist/react/hooks/useCharacterInfo.d.ts +17 -0
  152. package/dist/react/hooks/useCharacterInfo.d.ts.map +1 -0
  153. package/dist/react/hooks/useCharacterInfo.js +60 -0
  154. package/dist/react/hooks/useCharacterInfo.js.map +1 -0
  155. package/dist/react/hooks/useConvaiClient.d.ts +32 -0
  156. package/dist/react/hooks/useConvaiClient.d.ts.map +1 -0
  157. package/dist/react/hooks/useConvaiClient.js +140 -0
  158. package/dist/react/hooks/useConvaiClient.js.map +1 -0
  159. package/dist/react/hooks/useLocalCameraTrack.d.ts +22 -0
  160. package/dist/react/hooks/useLocalCameraTrack.d.ts.map +1 -0
  161. package/dist/react/hooks/useLocalCameraTrack.js +34 -0
  162. package/dist/react/hooks/useLocalCameraTrack.js.map +1 -0
  163. package/dist/react/index.d.ts +8 -0
  164. package/dist/react/index.d.ts.map +1 -0
  165. package/dist/react/index.js +15 -0
  166. package/dist/react/index.js.map +1 -0
  167. package/dist/types/index.d.ts +26 -0
  168. package/dist/types/index.d.ts.map +1 -1
  169. package/dist/utils/speakerManagement.d.ts +22 -0
  170. package/dist/utils/speakerManagement.d.ts.map +1 -0
  171. package/dist/utils/speakerManagement.js +69 -0
  172. package/dist/utils/speakerManagement.js.map +1 -0
  173. package/dist/vanilla/index.d.ts +3 -0
  174. package/dist/vanilla/index.d.ts.map +1 -0
  175. package/dist/vanilla/index.js +5 -0
  176. package/dist/vanilla/index.js.map +1 -0
  177. package/package.json +22 -5
@@ -0,0 +1,661 @@
1
+ import styled from "styled-components";
2
+ import { motion } from "framer-motion";
3
+ import { aeroTheme } from "./theme";
4
+ // Styled Components matching the original webChat exactly
5
+ export const ConvaiContainer = styled(motion.div) `
6
+ position: fixed !important;
7
+ bottom: 2rem !important;
8
+ right: 2rem !important;
9
+ z-index: 1000 !important;
10
+ isolation: isolate;
11
+ background: transparent !important;
12
+ pointer-events: none !important;
13
+
14
+ /* Override any inherited text styles */
15
+ * {
16
+ font-family: ${aeroTheme.typography.fontFamily.body} !important;
17
+ color-scheme: light !important;
18
+ font-synthesis: none !important;
19
+ text-rendering: optimizeLegibility !important;
20
+ -webkit-font-smoothing: antialiased !important;
21
+ -moz-osx-font-smoothing: grayscale !important;
22
+ -webkit-text-size-adjust: 100% !important;
23
+ }
24
+ `;
25
+ export const MorphingContainer = styled(motion.div) `
26
+ position: relative !important;
27
+ background: ${(props) => {
28
+ const opacity = props.$backgroundOpacity ?? 0.95;
29
+ // Slightly tinted for better universal contrast
30
+ return `rgba(252, 252, 253, ${opacity})`;
31
+ }} !important;
32
+ backdrop-filter: blur(20px) saturate(180%) !important;
33
+ // Subtle dual-tone border for visibility on any background
34
+ border: 1px solid rgba(0, 0, 0, 0.06) !important;
35
+ box-shadow:
36
+ 0 0 0 1px rgba(255, 255, 255, 0.8) inset, // Inner highlight
37
+ 0 8px 32px rgba(0, 0, 0, 0.12), // Main shadow for light backgrounds
38
+ 0 2px 8px rgba(0, 0, 0, 0.08) !important; // Subtle depth
39
+ display: flex !important;
40
+ flex-direction: column !important;
41
+ overflow: hidden !important;
42
+ isolation: isolate;
43
+ pointer-events: auto !important;
44
+ `;
45
+ export const ButtonContent = styled(motion.div) `
46
+ width: 100% !important;
47
+ height: 100% !important;
48
+ display: flex !important;
49
+ align-items: center !important;
50
+ justify-content: center !important;
51
+ position: absolute !important;
52
+ top: 0 !important;
53
+ left: 0 !important;
54
+ background: transparent !important;
55
+ isolation: isolate;
56
+ pointer-events: auto !important;
57
+ `;
58
+ export const Logo = styled(motion.div) `
59
+ width: 2rem !important;
60
+ height: 2rem !important;
61
+ display: flex !important;
62
+ align-items: center !important;
63
+ justify-content: center !important;
64
+ color: ${aeroTheme.colors.primary[500]} !important;
65
+ isolation: isolate;
66
+ contain: layout style paint;
67
+ `;
68
+ export const ChatContent = styled(motion.div) `
69
+ width: 100% !important;
70
+ height: 100% !important;
71
+ display: flex !important;
72
+ flex-direction: column !important;
73
+ position: absolute !important;
74
+ top: 0 !important;
75
+ left: 0 !important;
76
+ overflow: hidden !important;
77
+ background: transparent !important;
78
+ isolation: isolate;
79
+ pointer-events: auto !important;
80
+ `;
81
+ export const Header = styled(motion.div) `
82
+ padding: ${aeroTheme.spacing.md} !important;
83
+ border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
84
+ display: flex !important;
85
+ align-items: center !important;
86
+ justify-content: space-between !important;
87
+ background: rgba(255, 255, 255, 0.5) !important;
88
+ position: relative !important;
89
+ z-index: 10 !important;
90
+ isolation: isolate;
91
+ contain: layout style paint;
92
+ `;
93
+ export const Title = styled.h3 `
94
+ margin: 0 !important;
95
+ font-size: ${aeroTheme.typography.fontSize.lg} !important;
96
+ font-weight: ${aeroTheme.typography.fontWeight.semibold} !important;
97
+ font-family: ${aeroTheme.typography.fontFamily.body} !important;
98
+ color: ${aeroTheme.colors.text.primary} !important;
99
+ text-align: center !important;
100
+ display: flex !important;
101
+ align-items: center !important;
102
+ justify-content: center !important;
103
+ gap: 0.5rem !important;
104
+ flex: 1 !important;
105
+ font-synthesis: none !important;
106
+ text-rendering: optimizeLegibility !important;
107
+ -webkit-font-smoothing: antialiased !important;
108
+ -moz-osx-font-smoothing: grayscale !important;
109
+ -webkit-text-size-adjust: 100% !important;
110
+ isolation: isolate;
111
+ contain: layout style paint;
112
+ `;
113
+ export const HeaderLogo = styled.div `
114
+ display: flex !important;
115
+ align-items: center !important;
116
+ justify-content: center !important;
117
+ isolation: isolate;
118
+ contain: layout style paint;
119
+ `;
120
+ export const CloseButton = styled(motion.button) `
121
+ background: rgba(252, 252, 253, 0.95) !important;
122
+ backdrop-filter: blur(20px) saturate(180%);
123
+ border: 1px solid rgba(0, 0, 0, 0.06) !important;
124
+ border-radius: 50% !important;
125
+ width: 2rem;
126
+ height: 2rem;
127
+ display: flex;
128
+ align-items: center;
129
+ justify-content: center;
130
+ cursor: pointer !important;
131
+ color: ${aeroTheme.colors.text.primary} !important;
132
+ transition: ${aeroTheme.transitions.normal};
133
+ z-index: 1;
134
+ box-shadow:
135
+ 0 0 0 1px rgba(255, 255, 255, 0.8) inset,
136
+ 0 2px 8px rgba(0, 0, 0, 0.08);
137
+ outline: none !important;
138
+ padding: 0 !important;
139
+ font-size: inherit !important;
140
+ font-weight: inherit !important;
141
+ font-family: inherit !important;
142
+
143
+ &:hover {
144
+ background: rgba(255, 255, 255, 1) !important;
145
+ color: ${aeroTheme.colors.text.primary} !important;
146
+ box-shadow:
147
+ 0 0 0 1px rgba(255, 255, 255, 1) inset,
148
+ 0 4px 12px rgba(0, 0, 0, 0.12);
149
+ border-color: rgba(0, 0, 0, 0.08) !important;
150
+ }
151
+
152
+ &:focus {
153
+ outline: none !important;
154
+ }
155
+
156
+ &:focus-visible {
157
+ outline: none !important;
158
+ }
159
+ `;
160
+ export const SettingsButton = styled(motion.button) `
161
+ background: rgba(252, 252, 253, 0.95) !important;
162
+ backdrop-filter: blur(20px) saturate(180%);
163
+ border: 1px solid rgba(0, 0, 0, 0.06) !important;
164
+ border-radius: 50% !important;
165
+ width: 2rem;
166
+ height: 2rem;
167
+ display: flex;
168
+ align-items: center;
169
+ justify-content: center;
170
+ cursor: pointer !important;
171
+ color: ${aeroTheme.colors.text.primary} !important;
172
+ transition: ${aeroTheme.transitions.normal};
173
+ z-index: 1;
174
+ box-shadow:
175
+ 0 0 0 1px rgba(255, 255, 255, 0.8) inset,
176
+ 0 2px 8px rgba(0, 0, 0, 0.08);
177
+ outline: none !important;
178
+ padding: 0 !important;
179
+ font-size: inherit !important;
180
+ font-weight: inherit !important;
181
+ font-family: inherit !important;
182
+
183
+ &:hover {
184
+ background: rgba(255, 255, 255, 1) !important;
185
+ color: ${aeroTheme.colors.text.primary} !important;
186
+ box-shadow:
187
+ 0 0 0 1px rgba(255, 255, 255, 1) inset,
188
+ 0 4px 12px rgba(0, 0, 0, 0.12);
189
+ border-color: rgba(0, 0, 0, 0.08) !important;
190
+ }
191
+
192
+ &:focus {
193
+ outline: none !important;
194
+ }
195
+
196
+ &:focus-visible {
197
+ outline: none !important;
198
+ }
199
+ `;
200
+ export const SettingsTray = styled(motion.div) `
201
+ background: rgba(252, 252, 253, 0.98) !important;
202
+ backdrop-filter: blur(20px) saturate(180%) !important;
203
+ border: 1px solid rgba(0, 0, 0, 0.08) !important;
204
+ border-radius: ${aeroTheme.borderRadius.lg} !important;
205
+ box-shadow:
206
+ 0 0 0 1px rgba(255, 255, 255, 0.9) inset,
207
+ 0 8px 32px rgba(0, 0, 0, 0.15) !important;
208
+ padding: 0 !important;
209
+ min-width: 0 !important;
210
+ isolation: isolate;
211
+ contain: layout style paint;
212
+ `;
213
+ export const SettingsOption = styled(motion.button) `
214
+ padding: ${aeroTheme.spacing.sm} ${aeroTheme.spacing.md};
215
+ background: transparent;
216
+ border: none !important;
217
+ border-radius: ${aeroTheme.borderRadius.md} !important;
218
+ color: ${aeroTheme.colors.text.primary};
219
+ font-family: ${aeroTheme.typography.fontFamily.body} !important;
220
+ font-size: ${aeroTheme.typography.sizes.sm} !important;
221
+ font-weight: inherit !important;
222
+ cursor: pointer !important;
223
+ transition: ${aeroTheme.transitions.normal};
224
+ display: flex;
225
+ align-items: center;
226
+ justify-content: center;
227
+ gap: ${aeroTheme.spacing.sm};
228
+ outline: none !important;
229
+ flex: 1;
230
+ min-width: 2.5rem;
231
+
232
+ &:hover {
233
+ background: rgba(0, 0, 0, 0.05);
234
+ border-color: transparent !important;
235
+ }
236
+
237
+ &:active {
238
+ background: rgba(0, 0, 0, 0.1);
239
+ }
240
+
241
+ &:focus {
242
+ outline: none !important;
243
+ }
244
+
245
+ &:focus-visible {
246
+ outline: none !important;
247
+ }
248
+ `;
249
+ export const Content = styled(motion.div) `
250
+ flex: 1 !important;
251
+ padding: ${aeroTheme.spacing.md} !important;
252
+ display: flex !important;
253
+ flex-direction: column !important;
254
+ justify-content: space-between !important;
255
+ min-height: 0 !important;
256
+ z-index: 1 !important;
257
+ overflow: hidden !important;
258
+ isolation: isolate;
259
+ contain: layout style paint;
260
+ `;
261
+ export const Footer = styled(motion.div) `
262
+ padding: ${aeroTheme.spacing.md} !important;
263
+ border-top: 1px solid rgba(0, 0, 0, 0.05) !important;
264
+ background: rgba(255, 255, 255, 0.5) !important;
265
+ position: relative !important;
266
+ isolation: isolate;
267
+ contain: layout style paint;
268
+ `;
269
+ export const InputContainer = styled(motion.div) `
270
+ display: flex !important;
271
+ align-items: center !important;
272
+ gap: ${aeroTheme.spacing.sm} !important;
273
+ background: rgba(252, 252, 253, 0.95) !important;
274
+ backdrop-filter: blur(20px) saturate(180%) !important;
275
+ border: 1px solid rgba(0, 0, 0, 0.06) !important;
276
+ border-radius: ${aeroTheme.borderRadius.full} !important;
277
+ min-height: 3rem !important;
278
+ box-shadow:
279
+ 0 0 0 1px rgba(255, 255, 255, 0.8) inset,
280
+ 0 2px 12px rgba(0, 0, 0, 0.08) !important;
281
+ isolation: isolate;
282
+ contain: layout style paint;
283
+ `;
284
+ export const Input = styled.input `
285
+ flex: 1 !important;
286
+ background: transparent !important;
287
+ border: none !important;
288
+ outline: none !important;
289
+ color: ${aeroTheme.colors.text.primary} !important;
290
+ font-size: ${aeroTheme.typography.fontSize.sm} !important;
291
+ font-family: ${aeroTheme.typography.fontFamily.body} !important;
292
+ border-radius: ${aeroTheme.borderRadius.full} !important;
293
+ padding: 0.5rem 0.75rem !important;
294
+ line-height: 1.5 !important;
295
+ min-height: 2.25rem !important;
296
+ font-synthesis: none !important;
297
+ text-rendering: optimizeLegibility !important;
298
+ -webkit-font-smoothing: antialiased !important;
299
+ -moz-osx-font-smoothing: grayscale !important;
300
+ -webkit-text-size-adjust: 100% !important;
301
+ isolation: isolate;
302
+ contain: layout style paint;
303
+
304
+ &::placeholder {
305
+ color: ${aeroTheme.colors.text.tertiary} !important;
306
+ font-family: ${aeroTheme.typography.fontFamily.body} !important;
307
+ font-size: ${aeroTheme.typography.fontSize.sm} !important;
308
+ }
309
+
310
+ &:focus {
311
+ outline: none !important;
312
+ border: none !important;
313
+ }
314
+ `;
315
+ export const ActionButton = styled(motion.button) `
316
+ width: 2.25rem !important;
317
+ height: 2.25rem !important;
318
+ min-width: 2.25rem !important;
319
+ min-height: 2.25rem !important;
320
+ flex-shrink: 0 !important;
321
+ border-radius: 50% !important;
322
+ border: none !important;
323
+ background: ${(props) => props.$active
324
+ ? aeroTheme.colors.convai.light
325
+ : aeroTheme.colors.text.primary};
326
+ color: ${(props) => props.$active ? aeroTheme.colors.text.inverse : "white"};
327
+ display: flex !important;
328
+ align-items: center !important;
329
+ justify-content: center !important;
330
+ cursor: pointer !important;
331
+ transition: ${aeroTheme.transitions.normal} !important;
332
+ outline: none !important;
333
+ padding: 0 !important;
334
+ font-size: inherit !important;
335
+ font-weight: inherit !important;
336
+ font-family: inherit !important;
337
+ isolation: isolate;
338
+ contain: layout style paint;
339
+
340
+ &:hover {
341
+ transform: scale(1.05);
342
+ background: ${aeroTheme.colors.neutral[800]} !important;
343
+ border-color: transparent !important;
344
+ }
345
+
346
+ &:active {
347
+ transform: scale(0.95);
348
+ }
349
+
350
+ &:focus {
351
+ outline: none !important;
352
+ }
353
+
354
+ &:focus-visible {
355
+ outline: none !important;
356
+ }
357
+ `;
358
+ export const MessageList = styled.div `
359
+ flex: 1 !important;
360
+ overflow-y: auto !important;
361
+ padding: ${aeroTheme.spacing.md} !important;
362
+ display: flex !important;
363
+ flex-direction: column !important;
364
+ gap: ${aeroTheme.spacing.sm} !important;
365
+ isolation: isolate;
366
+ contain: layout style paint;
367
+ `;
368
+ export const Message = styled.div `
369
+ display: flex !important;
370
+ flex-direction: ${(props) => props.isUser ? "row-reverse" : "row"} !important;
371
+ align-items: flex-start !important;
372
+ gap: ${aeroTheme.spacing.sm} !important;
373
+ margin-bottom: ${aeroTheme.spacing.sm} !important;
374
+ isolation: isolate;
375
+ contain: layout style paint;
376
+ `;
377
+ export const MessageBubble = styled.div `
378
+ max-width: 70% !important;
379
+ padding: ${aeroTheme.spacing.sm} ${aeroTheme.spacing.md} !important;
380
+ background: ${(props) => props.isUser
381
+ ? aeroTheme.colors.primary[500]
382
+ : "rgba(255, 255, 255, 0.9)"} !important;
383
+ color: ${(props) => props.isUser ? "white" : aeroTheme.colors.text.primary} !important;
384
+ border-radius: ${aeroTheme.borderRadius.lg} !important;
385
+ font-size: ${aeroTheme.typography.fontSize.sm} !important;
386
+ font-family: ${aeroTheme.typography.fontFamily.body} !important;
387
+ line-height: 1.4 !important;
388
+ word-wrap: break-word !important;
389
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
390
+ font-synthesis: none !important;
391
+ text-rendering: optimizeLegibility !important;
392
+ -webkit-font-smoothing: antialiased !important;
393
+ -moz-osx-font-smoothing: grayscale !important;
394
+ -webkit-text-size-adjust: 100% !important;
395
+ isolation: isolate;
396
+ contain: layout style paint;
397
+ `;
398
+ export const MessageTime = styled.div `
399
+ font-size: ${aeroTheme.typography.fontSize.xs} !important;
400
+ font-family: ${aeroTheme.typography.fontFamily.body} !important;
401
+ color: ${aeroTheme.colors.text.secondary} !important;
402
+ margin-top: ${aeroTheme.spacing.xs} !important;
403
+ text-align: ${(props) => (props.isUser ? "right" : "left")} !important;
404
+ font-synthesis: none !important;
405
+ text-rendering: optimizeLegibility !important;
406
+ -webkit-font-smoothing: antialiased !important;
407
+ -moz-osx-font-smoothing: grayscale !important;
408
+ -webkit-text-size-adjust: 100% !important;
409
+ isolation: isolate;
410
+ contain: layout style paint;
411
+ `;
412
+ export const ButtonContainer = styled(motion.button) `
413
+ position: fixed !important;
414
+ bottom: 2rem !important;
415
+ right: 2rem !important;
416
+ width: 4rem !important;
417
+ height: 4rem !important;
418
+ border: none !important;
419
+ border-radius: 50% !important;
420
+ background: ${aeroTheme.colors.glass.backdrop} !important;
421
+ backdrop-filter: ${aeroTheme.glass.backdrop} !important;
422
+ border: ${aeroTheme.glass.border} !important;
423
+ box-shadow: ${aeroTheme.shadows.glass} !important;
424
+ cursor: pointer !important;
425
+ display: flex !important;
426
+ align-items: center !important;
427
+ justify-content: center !important;
428
+ z-index: 1000 !important;
429
+ isolation: isolate;
430
+ contain: layout style paint;
431
+
432
+ &:hover {
433
+ transform: scale(1.05) !important;
434
+ box-shadow: ${aeroTheme.shadows.xl} !important;
435
+ }
436
+ `;
437
+ export const ButtonLogo = styled(motion.div) `
438
+ width: 2rem !important;
439
+ height: 2rem !important;
440
+ display: flex !important;
441
+ align-items: center !important;
442
+ justify-content: center !important;
443
+ color: ${aeroTheme.colors.primary[500]} !important;
444
+ isolation: isolate;
445
+ contain: layout style paint;
446
+ `;
447
+ // Message Components
448
+ export const ConviBubble = styled.div `
449
+ background: rgba(252, 252, 253, 0.95) !important;
450
+ backdrop-filter: blur(20px) saturate(180%) !important;
451
+ border: 1px solid rgba(0, 0, 0, 0.06) !important;
452
+ border-radius: 12px 12px 12px 4px !important;
453
+ padding: 12px !important;
454
+ box-shadow:
455
+ 0 0 0 1px rgba(255, 255, 255, 0.8) inset,
456
+ 0 2px 8px rgba(0, 0, 0, 0.08) !important;
457
+ color: ${aeroTheme.colors.text.primary} !important;
458
+ font-family: ${aeroTheme.typography.fontFamily.body} !important;
459
+ font-size: 14px !important;
460
+ line-height: 1.5 !important;
461
+
462
+ /* Markdown styling */
463
+ strong {
464
+ font-weight: 600 !important;
465
+ color: ${aeroTheme.colors.text.primary} !important;
466
+ }
467
+
468
+ em {
469
+ font-style: italic !important;
470
+ }
471
+ word-wrap: break-word !important;
472
+ max-width: 100% !important;
473
+ font-synthesis: none !important;
474
+ text-rendering: optimizeLegibility !important;
475
+ -webkit-font-smoothing: antialiased !important;
476
+ -moz-osx-font-smoothing: grayscale !important;
477
+ -webkit-text-size-adjust: 100% !important;
478
+ isolation: isolate;
479
+ contain: layout style paint;
480
+ `;
481
+ export const ConviMessageContainer = styled.div `
482
+ display: flex !important;
483
+ flex-direction: column !important;
484
+ max-width: 70% !important;
485
+ margin-right: auto !important;
486
+ width: 100% !important;
487
+ isolation: isolate;
488
+ contain: layout style paint;
489
+ `;
490
+ export const MessageHeader = styled.div `
491
+ display: flex !important;
492
+ align-items: center !important;
493
+ gap: ${aeroTheme.spacing.xs} !important;
494
+ margin-bottom: ${aeroTheme.spacing.xs} !important;
495
+ isolation: isolate;
496
+ contain: layout style paint;
497
+ `;
498
+ export const ConviLabel = styled.span `
499
+ font-size: ${aeroTheme.typography.sizes.caption} !important;
500
+ color: #10b981 !important;
501
+ font-weight: 500 !important;
502
+ font-family: ${aeroTheme.typography.fontFamily.body} !important;
503
+ isolation: isolate;
504
+ contain: layout style paint;
505
+ `;
506
+ export const LogoWrapper = styled.div `
507
+ width: 1rem !important;
508
+ height: 1rem !important;
509
+ display: flex !important;
510
+ align-items: center !important;
511
+ justify-content: center !important;
512
+ isolation: isolate;
513
+ contain: layout style paint;
514
+ `;
515
+ export const UserBubble = styled.div `
516
+ background: rgba(252, 252, 253, 0.95) !important;
517
+ backdrop-filter: blur(20px) saturate(180%) !important;
518
+ border: 1px solid rgba(0, 0, 0, 0.06) !important;
519
+ border-radius: 12px 12px 4px 12px !important;
520
+ padding: 12px !important;
521
+ box-shadow:
522
+ 0 0 0 1px rgba(255, 255, 255, 0.8) inset,
523
+ 0 2px 8px rgba(0, 0, 0, 0.08) !important;
524
+ color: ${aeroTheme.colors.text.primary} !important;
525
+ font-family: ${aeroTheme.typography.fontFamily.body} !important;
526
+ font-size: 14px !important;
527
+ line-height: 1.5 !important;
528
+
529
+ /* Markdown styling */
530
+ strong {
531
+ font-weight: 600 !important;
532
+ color: ${aeroTheme.colors.text.primary} !important;
533
+ }
534
+
535
+ em {
536
+ font-style: italic !important;
537
+ }
538
+ word-wrap: break-word !important;
539
+ max-width: 100% !important;
540
+ font-synthesis: none !important;
541
+ text-rendering: optimizeLegibility !important;
542
+ -webkit-font-smoothing: antialiased !important;
543
+ -moz-osx-font-smoothing: grayscale !important;
544
+ -webkit-text-size-adjust: 100% !important;
545
+ isolation: isolate;
546
+ contain: layout style paint;
547
+ `;
548
+ export const UserMessageContainer = styled.div `
549
+ display: flex !important;
550
+ flex-direction: column !important;
551
+ max-width: 70% !important;
552
+ margin-left: auto !important;
553
+ width: 100% !important;
554
+ isolation: isolate;
555
+ contain: layout style paint;
556
+ `;
557
+ export const UserLabel = styled.span `
558
+ font-size: ${aeroTheme.typography.sizes.caption} !important;
559
+ color: ${aeroTheme.colors.convai.dark} !important;
560
+ font-weight: 500 !important;
561
+ font-family: ${aeroTheme.typography.fontFamily.body} !important;
562
+ isolation: isolate;
563
+ contain: layout style paint;
564
+ `;
565
+ export const BubbleContainer = styled(motion.div) `
566
+ display: flex !important;
567
+ flex-direction: column !important;
568
+ max-width: 70% !important;
569
+ margin: ${aeroTheme.spacing.sm} 0 !important;
570
+ align-self: ${(props) => props.$isUser ? "flex-end" : "flex-start"} !important;
571
+ isolation: isolate;
572
+ contain: layout style paint;
573
+ `;
574
+ export const Bubble = styled(motion.div) `
575
+ background: ${(props) => props.$isUser
576
+ ? "rgba(252, 252, 253, 0.95)"
577
+ : "rgba(248, 250, 252, 0.95)"} !important;
578
+ backdrop-filter: blur(20px) saturate(180%) !important;
579
+ border: 1px solid rgba(0, 0, 0, 0.06) !important;
580
+ border-radius: ${(props) => props.$isUser
581
+ ? `${aeroTheme.borderRadius.lg} ${aeroTheme.borderRadius.lg} ${aeroTheme.borderRadius.sm} ${aeroTheme.borderRadius.lg}`
582
+ : `${aeroTheme.borderRadius.lg} ${aeroTheme.borderRadius.lg} ${aeroTheme.borderRadius.lg} ${aeroTheme.borderRadius.sm}`} !important;
583
+ padding: ${aeroTheme.spacing.md} !important;
584
+ box-shadow:
585
+ 0 0 0 1px rgba(255, 255, 255, 0.8) inset,
586
+ 0 2px 8px rgba(0, 0, 0, 0.08) !important;
587
+ color: ${aeroTheme.colors.text.primary} !important;
588
+ font-family: ${aeroTheme.typography.fontFamily.body} !important;
589
+ font-size: ${aeroTheme.typography.sizes.body} !important;
590
+ line-height: 1.5 !important;
591
+ word-wrap: break-word !important;
592
+ position: relative !important;
593
+ font-synthesis: none !important;
594
+ text-rendering: optimizeLegibility !important;
595
+ -webkit-font-smoothing: antialiased !important;
596
+ -moz-osx-font-smoothing: grayscale !important;
597
+ -webkit-text-size-adjust: 100% !important;
598
+ isolation: isolate;
599
+ contain: layout style paint;
600
+ `;
601
+ export const Timestamp = styled.span `
602
+ font-size: ${aeroTheme.typography.sizes.caption} !important;
603
+ color: ${aeroTheme.colors.text.secondary} !important;
604
+ margin-top: ${aeroTheme.spacing.xs} !important;
605
+ align-self: ${(props) => props.$isUser ? "flex-end" : "flex-start"} !important;
606
+ font-family: ${aeroTheme.typography.fontFamily.body} !important;
607
+ isolation: isolate;
608
+ contain: layout style paint;
609
+ `;
610
+ export const MessageListContainer = styled.div `
611
+ display: flex !important;
612
+ flex-direction: column !important;
613
+ overflow-y: auto !important;
614
+ flex: 1 !important;
615
+ min-height: 0 !important;
616
+ width: 100% !important;
617
+ scroll-behavior: smooth !important;
618
+ isolation: isolate;
619
+ contain: layout style paint;
620
+
621
+ /* Custom scrollbar */
622
+ &::-webkit-scrollbar {
623
+ width: 4px !important;
624
+ }
625
+
626
+ &::-webkit-scrollbar-track {
627
+ background: transparent !important;
628
+ }
629
+
630
+ &::-webkit-scrollbar-thumb {
631
+ background: rgba(0, 0, 0, 0.1) !important;
632
+ border-radius: 2px !important;
633
+ }
634
+
635
+ &::-webkit-scrollbar-thumb:hover {
636
+ background: rgba(0, 0, 0, 0.2) !important;
637
+ }
638
+ `;
639
+ export const MessageWrapper = styled.div `
640
+ margin-bottom: 16px !important;
641
+ width: 100% !important;
642
+ isolation: isolate;
643
+ contain: layout style paint;
644
+
645
+ &:last-child {
646
+ margin-bottom: 0 !important;
647
+ }
648
+ `;
649
+ export const EmptyState = styled.div `
650
+ display: flex;
651
+ flex-direction: column;
652
+ align-items: center;
653
+ justify-content: center;
654
+ height: 100%;
655
+ color: ${aeroTheme.colors.text.secondary};
656
+ font-family: ${aeroTheme.typography.fontFamily.body};
657
+ font-size: ${aeroTheme.typography.sizes.body};
658
+ text-align: center;
659
+ padding: 32px;
660
+ `;
661
+ //# sourceMappingURL=styledComponents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styledComponents.js","sourceRoot":"","sources":["../../../../../src/react/components/rtc-widget/styles/styledComponents.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,0DAA0D;AAC1D,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;;;;;;;;;;;mBAW9B,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI;;;;;;;;CAQtD,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAEjD;;gBAEc,CAAC,KAAK,EAAE,EAAE;IACtB,MAAM,OAAO,GAAG,KAAK,CAAC,kBAAkB,IAAI,IAAI,CAAC;IACjD,gDAAgD;IAChD,OAAO,uBAAuB,OAAO,GAAG,CAAC;AAC3C,CAAC;;;;;;;;;;;;;CAaF,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;;;;;;;;;;;;CAY9C,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;;;;;;WAM3B,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;;;CAGvC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;;;;;;;;;;;;CAY5C,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;aAC3B,SAAS,CAAC,OAAO,CAAC,EAAE;;;;;;;;;;CAUhC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAA;;eAEf,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;iBAC9B,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ;iBACxC,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI;WAC1C,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;;;;;;;;;;;;;;CAcvC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;CAMnC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;;;;;;;;;;;WAWrC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;gBACxB,SAAS,CAAC,WAAW,CAAC,MAAM;;;;;;;;;;;;;aAa/B,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;;;;;;;;;;;;;;CAczC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;;;;;;;;;;;WAWxC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;gBACxB,SAAS,CAAC,WAAW,CAAC,MAAM;;;;;;;;;;;;;aAa/B,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;;;;;;;;;;;;;;CAczC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;;;;mBAI3B,SAAS,CAAC,YAAY,CAAC,EAAE;;;;;;;;CAQ3C,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;aACtC,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE;;;mBAGtC,SAAS,CAAC,YAAY,CAAC,EAAE;WACjC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;iBACvB,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI;eACtC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;;;gBAG5B,SAAS,CAAC,WAAW,CAAC,MAAM;;;;SAInC,SAAS,CAAC,OAAO,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;CAqB5B,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;;aAE5B,SAAS,CAAC,OAAO,CAAC,EAAE;;;;;;;;;CAShC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;aAC3B,SAAS,CAAC,OAAO,CAAC,EAAE;;;;;;CAMhC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;;;SAGvC,SAAS,CAAC,OAAO,CAAC,EAAE;;;;mBAIV,SAAS,CAAC,YAAY,CAAC,IAAI;;;;;;;CAO7C,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;;;;;WAKtB,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;eACzB,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;iBAC9B,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI;mBAClC,SAAS,CAAC,YAAY,CAAC,IAAI;;;;;;;;;;;;;aAajC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ;mBACxB,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI;iBACtC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;;;;;;;CAOhD,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAuB;;;;;;;;gBAQxD,CAAC,KAAK,EAAE,EAAE,CACtB,KAAK,CAAC,OAAO;IACX,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK;IAC/B,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;WAC1B,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;;;;;gBAK3C,SAAS,CAAC,WAAW,CAAC,MAAM;;;;;;;;;;;kBAW1B,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;CAe9C,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAA;;;aAGxB,SAAS,CAAC,OAAO,CAAC,EAAE;;;SAGxB,SAAS,CAAC,OAAO,CAAC,EAAE;;;CAG5B,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAqB;;oBAElC,CAAC,KAAK,EAAE,EAAE,CAC1B,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK;;SAE/B,SAAS,CAAC,OAAO,CAAC,EAAE;mBACV,SAAS,CAAC,OAAO,CAAC,EAAE;;;CAGtC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAqB;;aAE/C,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE;gBACzC,CAAC,KAAK,EAAE,EAAE,CACtB,KAAK,CAAC,MAAM;IACV,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;IAC/B,CAAC,CAAC,0BAA0B;WACvB,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;mBACvC,SAAS,CAAC,YAAY,CAAC,EAAE;eAC7B,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;iBAC9B,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI;;;;;;;;;;;CAWpD,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAqB;eAC3C,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;iBAC9B,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI;WAC1C,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS;gBAC1B,SAAS,CAAC,OAAO,CAAC,EAAE;gBACpB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;;;;;;;;CAQ3D,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;;;;;;;;gBAQpC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ;qBAC1B,SAAS,CAAC,KAAK,CAAC,QAAQ;YACjC,SAAS,CAAC,KAAK,CAAC,MAAM;gBAClB,SAAS,CAAC,OAAO,CAAC,KAAK;;;;;;;;;;;kBAWrB,SAAS,CAAC,OAAO,CAAC,EAAE;;CAErC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;;;;;;WAMjC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;;;CAGvC,CAAC;AAEF,qBAAqB;AACrB,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;WAS1B,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;iBACvB,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI;;;;;;;aAOxC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;;;;;;;;;;;;;;;CAezC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;CAQ9C,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAA;;;SAG9B,SAAS,CAAC,OAAO,CAAC,EAAE;mBACV,SAAS,CAAC,OAAO,CAAC,EAAE;;;CAGtC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAA;eACtB,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO;;;iBAGhC,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI;;;CAGpD,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;CAQpC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;WASzB,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;iBACvB,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI;;;;;;;aAOxC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;;;;;;;;;;;;;;;CAezC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;CAQ7C,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAA;eACrB,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO;WACtC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;;iBAEtB,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI;;;CAGpD,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAsB;;;;YAI3D,SAAS,CAAC,OAAO,CAAC,EAAE;gBAChB,CAAC,KAAK,EAAE,EAAE,CACtB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY;;;CAG5C,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAsB;gBAC9C,CAAC,KAAK,EAAE,EAAE,CACtB,KAAK,CAAC,OAAO;IACX,CAAC,CAAC,2BAA2B;IAC7B,CAAC,CAAC,2BAA2B;;;mBAGhB,CAAC,KAAK,EAAE,EAAE,CACzB,KAAK,CAAC,OAAO;IACX,CAAC,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAAE,IAAI,SAAS,CAAC,YAAY,CAAC,EAAE,IAAI,SAAS,CAAC,YAAY,CAAC,EAAE,IAAI,SAAS,CAAC,YAAY,CAAC,EAAE,EAAE;IACvH,CAAC,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAAE,IAAI,SAAS,CAAC,YAAY,CAAC,EAAE,IAAI,SAAS,CAAC,YAAY,CAAC,EAAE,IAAI,SAAS,CAAC,YAAY,CAAC,EAAE,EAAE;aAChH,SAAS,CAAC,OAAO,CAAC,EAAE;;;;WAItB,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;iBACvB,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI;eACtC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI;;;;;;;;;;;CAW7C,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAsB;eAC3C,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO;WACtC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS;gBAC1B,SAAS,CAAC,OAAO,CAAC,EAAE;gBACpB,CAAC,KAAK,EAAE,EAAE,CACtB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY;iBAC5B,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI;;;CAGpD,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4B7C,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;CASvC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;WAMzB,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS;iBACzB,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI;eACtC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI;;;CAG7C,CAAC"}