@mybricks/plugin-ai 0.0.2 → 0.0.3

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 (249) hide show
  1. package/dist/_virtual/_rollupPluginBabelHelpers.js +164 -0
  2. package/dist/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  3. package/dist/agents/app.js +335 -0
  4. package/dist/agents/app.js.map +1 -0
  5. package/dist/agents/common.js +483 -0
  6. package/dist/agents/common.js.map +1 -0
  7. package/dist/agents/custom.js +16 -0
  8. package/dist/agents/custom.js.map +1 -0
  9. package/dist/agents/index.js +38 -0
  10. package/dist/agents/index.js.map +1 -0
  11. package/dist/agents/knowledges/knowledge-base.js +579 -0
  12. package/dist/agents/knowledges/knowledge-base.js.map +1 -0
  13. package/dist/agents/knowledges/knowledge-node.js +228 -0
  14. package/dist/agents/knowledges/knowledge-node.js.map +1 -0
  15. package/dist/agents/knowledges/types.js +105 -0
  16. package/dist/agents/knowledges/types.js.map +1 -0
  17. package/dist/agents/utils/config.js +229 -0
  18. package/dist/agents/utils/config.js.map +1 -0
  19. package/dist/agents/workspace/coding-manager.js +20 -0
  20. package/dist/agents/workspace/coding-manager.js.map +1 -0
  21. package/dist/agents/workspace/components-manager.js +113 -0
  22. package/dist/agents/workspace/components-manager.js.map +1 -0
  23. package/dist/agents/workspace/outline-focus.js +167 -0
  24. package/dist/agents/workspace/outline-focus.js.map +1 -0
  25. package/dist/agents/workspace/outline-info.js +430 -0
  26. package/dist/agents/workspace/outline-info.js.map +1 -0
  27. package/dist/agents/workspace/page-tree-generator.js +70 -0
  28. package/dist/agents/workspace/page-tree-generator.js.map +1 -0
  29. package/dist/agents/workspace/workspace.js +251 -0
  30. package/dist/agents/workspace/workspace.js.map +1 -0
  31. package/dist/agents/workspace-by-knowledges/providers/component-docs-provider.js +100 -0
  32. package/dist/agents/workspace-by-knowledges/providers/component-docs-provider.js.map +1 -0
  33. package/dist/agents/workspace-by-knowledges/providers/focus-info-provider.js +120 -0
  34. package/dist/agents/workspace-by-knowledges/providers/focus-info-provider.js.map +1 -0
  35. package/dist/agents/workspace-by-knowledges/providers/project-info-provider.js +146 -0
  36. package/dist/agents/workspace-by-knowledges/providers/project-info-provider.js.map +1 -0
  37. package/dist/agents/workspace-by-knowledges/test.js +242 -0
  38. package/dist/agents/workspace-by-knowledges/test.js.map +1 -0
  39. package/dist/agents/workspace-by-knowledges/utils/components-manager.js +132 -0
  40. package/dist/agents/workspace-by-knowledges/utils/components-manager.js.map +1 -0
  41. package/dist/agents/workspace-by-knowledges/utils/outline-focus.js +167 -0
  42. package/dist/agents/workspace-by-knowledges/utils/outline-focus.js.map +1 -0
  43. package/dist/agents/workspace-by-knowledges/utils/outline-info.js +430 -0
  44. package/dist/agents/workspace-by-knowledges/utils/outline-info.js.map +1 -0
  45. package/dist/agents/workspace-by-knowledges/workspace.js +169 -0
  46. package/dist/agents/workspace-by-knowledges/workspace.js.map +1 -0
  47. package/dist/api/cloud-components.js +85 -0
  48. package/dist/api/cloud-components.js.map +1 -0
  49. package/dist/api-record-replay/manager.js +168 -0
  50. package/dist/api-record-replay/manager.js.map +1 -0
  51. package/{src/api-record-replay/recorder.ts → dist/api-record-replay/recorder.js} +22 -32
  52. package/dist/api-record-replay/recorder.js.map +1 -0
  53. package/dist/api-record-replay/replayer.js +136 -0
  54. package/dist/api-record-replay/replayer.js.map +1 -0
  55. package/dist/components/attachments/index.js +124 -0
  56. package/dist/components/attachments/index.js.map +1 -0
  57. package/dist/components/attachments/index.less.js +8 -0
  58. package/dist/components/attachments/index.less.js.map +1 -0
  59. package/dist/components/icons/index.js +112 -0
  60. package/dist/components/icons/index.js.map +1 -0
  61. package/dist/components/icons/index.less.js +8 -0
  62. package/dist/components/icons/index.less.js.map +1 -0
  63. package/dist/components/mention/index.js +19 -0
  64. package/dist/components/mention/index.js.map +1 -0
  65. package/dist/components/mention/index.less.js +8 -0
  66. package/dist/components/mention/index.less.js.map +1 -0
  67. package/dist/components/messages/index.js +429 -0
  68. package/dist/components/messages/index.js.map +1 -0
  69. package/dist/components/messages/index.less.js +8 -0
  70. package/dist/components/messages/index.less.js.map +1 -0
  71. package/dist/components/sender/index.js +244 -0
  72. package/dist/components/sender/index.js.map +1 -0
  73. package/dist/components/sender/index.less.js +8 -0
  74. package/dist/components/sender/index.less.js.map +1 -0
  75. package/dist/context/RequestStatusTracker.js +44 -0
  76. package/dist/context/RequestStatusTracker.js.map +1 -0
  77. package/dist/context/index.js +45 -0
  78. package/dist/context/index.js.map +1 -0
  79. package/dist/data.js +4 -0
  80. package/dist/data.js.map +1 -0
  81. package/dist/index.js +306 -0
  82. package/dist/index.js.map +1 -0
  83. package/dist/plugin-ai/node_modules/style-inject/dist/style-inject.es.js +27 -0
  84. package/dist/plugin-ai/node_modules/style-inject/dist/style-inject.es.js.map +1 -0
  85. package/dist/plugin-ai/package.json.js +8 -0
  86. package/dist/plugin-ai/package.json.js.map +1 -0
  87. package/dist/plugin-ai/test/index.js +206 -0
  88. package/dist/plugin-ai/test/index.js.map +1 -0
  89. package/dist/preset/createTemplates.js +29 -0
  90. package/dist/preset/createTemplates.js.map +1 -0
  91. package/dist/preset/index.js +13 -0
  92. package/dist/preset/index.js.map +1 -0
  93. package/dist/preset/prompts.js +34 -0
  94. package/dist/preset/prompts.js.map +1 -0
  95. package/{src/preset/user.ts → dist/preset/user.js} +4 -3
  96. package/dist/preset/user.js.map +1 -0
  97. package/dist/requestAsStream.js +269 -0
  98. package/dist/requestAsStream.js.map +1 -0
  99. package/dist/rxai/node_modules/idb/build/index.js +277 -0
  100. package/dist/rxai/node_modules/idb/build/index.js.map +1 -0
  101. package/dist/rxai/src/agent/base.js +16 -0
  102. package/dist/rxai/src/agent/base.js.map +1 -0
  103. package/dist/rxai/src/agent/planning.js +1076 -0
  104. package/dist/rxai/src/agent/planning.js.map +1 -0
  105. package/dist/rxai/src/agent/rxai.js +254 -0
  106. package/dist/rxai/src/agent/rxai.js.map +1 -0
  107. package/dist/rxai/src/error/base.js +39 -0
  108. package/dist/rxai/src/error/base.js.map +1 -0
  109. package/dist/rxai/src/prompt/base.js +11 -0
  110. package/dist/rxai/src/prompt/base.js.map +1 -0
  111. package/dist/rxai/src/prompt/planning.js +23 -0
  112. package/dist/rxai/src/prompt/planning.js.map +1 -0
  113. package/dist/rxai/src/prompt/tool.js +14 -0
  114. package/dist/rxai/src/prompt/tool.js.map +1 -0
  115. package/dist/rxai/src/request/request.js +123 -0
  116. package/dist/rxai/src/request/request.js.map +1 -0
  117. package/dist/rxai/src/tool/getHistoryRecords.js +65 -0
  118. package/dist/rxai/src/tool/getHistoryRecords.js.map +1 -0
  119. package/dist/rxai/src/tool/util.js +424 -0
  120. package/dist/rxai/src/tool/util.js.map +1 -0
  121. package/dist/rxai/src/utils/events.js +43 -0
  122. package/dist/rxai/src/utils/events.js.map +1 -0
  123. package/dist/rxai/src/utils/idb.js +240 -0
  124. package/dist/rxai/src/utils/idb.js.map +1 -0
  125. package/dist/rxai/src/utils/retry.js +32 -0
  126. package/dist/rxai/src/utils/retry.js.map +1 -0
  127. package/dist/rxai/src/utils/uuid.js +7 -0
  128. package/dist/rxai/src/utils/uuid.js.map +1 -0
  129. package/dist/startView/components/header/header.js +12 -0
  130. package/dist/startView/components/header/header.js.map +1 -0
  131. package/dist/startView/components/header/header.less.js +8 -0
  132. package/dist/startView/components/header/header.less.js.map +1 -0
  133. package/dist/startView/index.js +62 -0
  134. package/dist/startView/index.js.map +1 -0
  135. package/dist/startView/index.less.js +8 -0
  136. package/dist/startView/index.less.js.map +1 -0
  137. package/dist/tools/analyze-and-expand-prd.js +116 -0
  138. package/dist/tools/analyze-and-expand-prd.js.map +1 -0
  139. package/dist/tools/analyze-requirement-and-components.js +208 -0
  140. package/dist/tools/analyze-requirement-and-components.js.map +1 -0
  141. package/dist/tools/answer.js +33 -0
  142. package/dist/tools/answer.js.map +1 -0
  143. package/dist/tools/build-process.js +550 -0
  144. package/dist/tools/build-process.js.map +1 -0
  145. package/dist/tools/coding-subagent-as-tool.js +101 -0
  146. package/dist/tools/coding-subagent-as-tool.js.map +1 -0
  147. package/dist/tools/generate-ui-content.js +528 -0
  148. package/dist/tools/generate-ui-content.js.map +1 -0
  149. package/dist/tools/index.js +31 -0
  150. package/dist/tools/index.js.map +1 -0
  151. package/dist/tools/open-dsl.js +49 -0
  152. package/dist/tools/open-dsl.js.map +1 -0
  153. package/dist/tools/refactor-ui-content.js +292 -0
  154. package/dist/tools/refactor-ui-content.js.map +1 -0
  155. package/dist/tools/utils.js +832 -0
  156. package/dist/tools/utils.js.map +1 -0
  157. package/dist/types/index.js +8 -0
  158. package/dist/types/index.js.map +1 -0
  159. package/dist/view/components/header/header.js +59 -0
  160. package/dist/view/components/header/header.js.map +1 -0
  161. package/dist/view/components/header/header.less.js +8 -0
  162. package/dist/view/components/header/header.less.js.map +1 -0
  163. package/dist/view/index.js +184 -0
  164. package/dist/view/index.js.map +1 -0
  165. package/dist/view/index.less.js +8 -0
  166. package/dist/view/index.less.js.map +1 -0
  167. package/package.json +28 -6
  168. package/src/agents/app.ts +0 -301
  169. package/src/agents/common.ts +0 -471
  170. package/src/agents/custom.ts +0 -14
  171. package/src/agents/index.ts +0 -37
  172. package/src/agents/knowledges/README.md +0 -614
  173. package/src/agents/knowledges/SUMMARY.md +0 -527
  174. package/src/agents/knowledges/index.ts +0 -8
  175. package/src/agents/knowledges/knowledge-base.ts +0 -565
  176. package/src/agents/knowledges/knowledge-node.ts +0 -266
  177. package/src/agents/knowledges/types.ts +0 -208
  178. package/src/agents/utils/config.ts +0 -427
  179. package/src/agents/workspace/coding-manager.ts +0 -31
  180. package/src/agents/workspace/components-manager.ts +0 -124
  181. package/src/agents/workspace/outline-focus.ts +0 -188
  182. package/src/agents/workspace/outline-info.ts +0 -520
  183. package/src/agents/workspace/page-tree-generator.ts +0 -83
  184. package/src/agents/workspace/workspace.ts +0 -319
  185. package/src/agents/workspace-by-knowledges/MIGRATION.md +0 -568
  186. package/src/agents/workspace-by-knowledges/README.md +0 -521
  187. package/src/agents/workspace-by-knowledges/index.ts +0 -11
  188. package/src/agents/workspace-by-knowledges/providers/component-docs-provider.ts +0 -92
  189. package/src/agents/workspace-by-knowledges/providers/focus-info-provider.ts +0 -131
  190. package/src/agents/workspace-by-knowledges/providers/index.ts +0 -8
  191. package/src/agents/workspace-by-knowledges/providers/project-info-provider.ts +0 -151
  192. package/src/agents/workspace-by-knowledges/test.ts +0 -240
  193. package/src/agents/workspace-by-knowledges/types.ts +0 -56
  194. package/src/agents/workspace-by-knowledges/utils/components-manager.ts +0 -145
  195. package/src/agents/workspace-by-knowledges/utils/index.ts +0 -8
  196. package/src/agents/workspace-by-knowledges/utils/outline-focus.ts +0 -178
  197. package/src/agents/workspace-by-knowledges/utils/outline-info.ts +0 -521
  198. package/src/agents/workspace-by-knowledges/workspace.ts +0 -166
  199. package/src/api/cloud-components.ts +0 -129
  200. package/src/api-record-replay/README.md +0 -187
  201. package/src/api-record-replay/index.ts +0 -11
  202. package/src/api-record-replay/manager.ts +0 -168
  203. package/src/api-record-replay/replayer.ts +0 -148
  204. package/src/components/attachments/index.less +0 -117
  205. package/src/components/attachments/index.tsx +0 -136
  206. package/src/components/icons/index.less +0 -8
  207. package/src/components/icons/index.tsx +0 -44
  208. package/src/components/index.less +0 -34
  209. package/src/components/mention/index.less +0 -23
  210. package/src/components/mention/index.tsx +0 -19
  211. package/src/components/messages/index.less +0 -1013
  212. package/src/components/messages/index.tsx +0 -519
  213. package/src/components/sender/index.less +0 -203
  214. package/src/components/sender/index.tsx +0 -298
  215. package/src/components/types.ts +0 -31
  216. package/src/constants/index.ts +0 -8
  217. package/src/context/RequestStatusTracker.ts +0 -50
  218. package/src/context/index.ts +0 -83
  219. package/src/data.ts +0 -5
  220. package/src/global.d.ts +0 -100
  221. package/src/index.tsx +0 -264
  222. package/src/mock.ts +0 -1267
  223. package/src/preset/agents.ts +0 -380
  224. package/src/preset/createTemplates.ts +0 -25
  225. package/src/preset/index.ts +0 -12
  226. package/src/preset/prompts.ts +0 -235
  227. package/src/preset/requestAsStream.ts +0 -246
  228. package/src/startView/components/header/header.less +0 -17
  229. package/src/startView/components/header/header.tsx +0 -15
  230. package/src/startView/components/index.ts +0 -1
  231. package/src/startView/index.less +0 -34
  232. package/src/startView/index.tsx +0 -61
  233. package/src/tools/analyze-and-expand-prd.ts +0 -272
  234. package/src/tools/analyze-requirement-and-components.ts +0 -589
  235. package/src/tools/answer.ts +0 -59
  236. package/src/tools/build-process.ts +0 -1174
  237. package/src/tools/coding-subagent-as-tool.ts +0 -119
  238. package/src/tools/generate-ui-content.ts +0 -1083
  239. package/src/tools/index.ts +0 -28
  240. package/src/tools/open-dsl.ts +0 -69
  241. package/src/tools/refactor-ui-content.ts +0 -801
  242. package/src/tools/type.d.ts +0 -12
  243. package/src/tools/utils.ts +0 -914
  244. package/src/types/index.ts +0 -4
  245. package/src/view/components/header/header.less +0 -51
  246. package/src/view/components/header/header.tsx +0 -60
  247. package/src/view/components/index.ts +0 -1
  248. package/src/view/index.less +0 -5
  249. package/src/view/index.tsx +0 -168
@@ -1,1013 +0,0 @@
1
- @import url(../index.less);
2
-
3
- .ai-chat-messages {
4
- font-size: 12px;
5
- overflow: hidden auto;
6
- flex-grow: 1;
7
- display: flex;
8
- flex-direction: column;
9
-
10
- > .chat-bubble-container:nth-last-child(2) {
11
- display: table;
12
- }
13
-
14
- .scroll-bar();
15
-
16
- // &::-webkit-scrollbar {
17
- // width: 6px;
18
- // height: 0;
19
- // background-color: transparent
20
- // }
21
-
22
- // &::-webkit-scrollbar-track {
23
- // background-color: transparent
24
- // }
25
-
26
- // &::-webkit-scrollbar-thumb {
27
- // background-color: #c5c5c5;
28
- // border-radius: 6px
29
- // }
30
-
31
- &:has(.ai-chat-messages-skeleton) {
32
- padding: 16px
33
- }
34
-
35
- .ai-chat-messages-skeleton-header {
36
- display: flex;
37
- align-items: center;
38
- justify-content: start;
39
- gap: 8px;
40
- margin-bottom: 8px;
41
-
42
- &.user {
43
- flex-direction: row-reverse;
44
- justify-content: end;
45
-
46
- .uipaas-skeleton-paragraph {
47
- align-items: end
48
- }
49
- }
50
- }
51
-
52
- .ai-chat-messages-skeleton-item {
53
- width: 100%
54
- }
55
-
56
- .chat-bubble-container {
57
- width: 100%;
58
- }
59
-
60
- .chat-bubble {
61
- display: flex;
62
- flex-direction: column;
63
- color: #333;
64
- border-radius: 6px;
65
- border: 1px solid transparent;
66
- // padding: 16px 16px 0;
67
- padding: 8px 13px 0;
68
-
69
- &:has(.has-popover),
70
- &:hover {
71
- .chat-bubble-options {
72
- opacity: 1
73
- }
74
- }
75
-
76
- .chat-message-container:has(.user-message) {
77
- padding: 8px 13px
78
- }
79
-
80
- // .user-message img {
81
- // display: inline-block;
82
- // flex-shrink: 0;
83
- // width: auto;
84
- // height: 60px;
85
- // margin: 0;
86
- // object-fit: cover;
87
-
88
- // +& {
89
- // margin-left: 8px
90
- // }
91
- // }
92
-
93
- // .user-message p:has(img) {
94
- // display: flex;
95
- // align-items: center
96
- // }
97
- }
98
-
99
- .chat-bubble-action {
100
- display: flex;
101
- flex-direction: column;
102
- color: #AAA;
103
- border-radius: 6px;
104
- border: 1px solid transparent;
105
- padding: 0 13px;
106
-
107
- svg {
108
- width: 14px;
109
- height: 14px;
110
- }
111
-
112
- .chat-bubble-action-chat {
113
- cursor: pointer;
114
- width: 14px;
115
- height: 14px;
116
-
117
- &.focus {
118
- color: var(--mybricks-color-primary, #FA6400);
119
- }
120
-
121
- &:hover {
122
- color: var(--mybricks-color-primary, #FA6400);
123
- }
124
- }
125
- }
126
-
127
- .chat-bubble-header {
128
- display: flex;
129
- align-items: center;
130
- justify-content: start;
131
- gap: 8px;
132
- padding-bottom: 8px;
133
-
134
- .chat-bubble-header-avatar {
135
- display: inline-flex;
136
- align-items: center;
137
- justify-content: center;
138
- border-radius: 50%;
139
- width: 20px;
140
- height: 20px;
141
- box-sizing: content-box;
142
- // border: 2px solid #ffffff;
143
- border: 2px solid transparent;
144
-
145
- .copilot-avatar {
146
- .user-avatar();
147
- }
148
-
149
- .user-avatar {
150
- width: 20px;
151
- height: 20px;
152
- border-radius: 50%
153
- }
154
- }
155
-
156
- &:has(.user-avatar) {
157
- justify-content: end;
158
- flex-direction: row-reverse
159
- }
160
-
161
- .chat-bubble-header-name {
162
- font-size: 12px;
163
- color: #999
164
- }
165
- }
166
-
167
- .chat-message-container {
168
- user-select: text;
169
- width: 100%;
170
- font-size: 12px;
171
- border-radius: 6px;
172
- padding: 0;
173
-
174
- +& {
175
- margin-top: 8px
176
- }
177
-
178
- .chat-box-attachment-image {
179
- margin-bottom: 0
180
- }
181
-
182
- .chat-box-attachment-image-item {
183
- max-width: 100px;
184
- width: auto;
185
- height: auto
186
- }
187
- }
188
-
189
- .chat-bubble-options {
190
- padding: 10px 10px 0;
191
- opacity: 0;
192
-
193
- .chat-bubble-option-container {
194
- display: flex;
195
- align-items: center;
196
- justify-content: start
197
- }
198
- }
199
-
200
- .chat-bubble-option-icon {
201
- font-size: 12px;
202
- padding: 4px;
203
- color: #00000080;
204
-
205
- +& {
206
- margin-left: 6px
207
- }
208
-
209
- +.chat-bubble-option-more {
210
- margin-left: 6px
211
- }
212
- }
213
-
214
- .welcome-message {
215
- .welcome-message-self-introduction {
216
- margin-top: 8px;
217
- margin-bottom: 16px
218
- }
219
-
220
- .shortcuts {
221
- display: flex;
222
- flex-wrap: wrap;
223
- gap: 8px;
224
- margin-top: 8px;
225
-
226
- .shortcuts-item {
227
- flex-shrink: 0;
228
- cursor: pointer;
229
- display: inline-flex;
230
- align-items: center;
231
- padding: 4px 8px;
232
- border: 1px solid #eeeeee;
233
- border-radius: 6px;
234
- color: #666;
235
- background-color: #f3f3f3;
236
-
237
- .shortcuts-item-label {
238
- font-size: 12px
239
- }
240
-
241
- .shortcuts-item-icon {
242
- display: inline-flex;
243
- align-items: center;
244
- justify-content: center;
245
- width: 16px;
246
- height: 16px;
247
- margin-right: 8px;
248
- font-size: 12px;
249
- background: #666;
250
- border-radius: 6px
251
- }
252
-
253
- &.shortcuts-theme-blue {
254
- color: #0871f0;
255
- border-color: #d0e5ff;
256
- background-color: #ecf4ff;
257
-
258
- .shortcuts-item-icon {
259
- color: #fff;
260
- background-color: #2885f6
261
- }
262
- }
263
-
264
- &.shortcuts-theme-orange {
265
- color: #f9a254;
266
- border-color: #fae7d5;
267
- background-color: #fff4e2;
268
-
269
- .shortcuts-item-icon {
270
- background-color: #f9a254
271
- }
272
- }
273
-
274
- &.shortcuts-theme-green {
275
- color: #70bc70;
276
- border-color: #d4eed4;
277
- background-color: #ecffec;
278
-
279
- .shortcuts-item-icon {
280
- background-color: #70bc70
281
- }
282
- }
283
-
284
- &.shortcuts-theme-gray {
285
- border-color: transparent;
286
- // transition: .3s;
287
-
288
- &:hover {
289
- background-color: #f7f7f7
290
- }
291
- }
292
- }
293
- }
294
- }
295
-
296
- .user-message {
297
- width: fit-content;
298
- max-width: calc(100% - 16px);
299
- align-self: flex-end;
300
- align-items: end;
301
- // background: #ecf4ff;
302
- background: #fff;
303
- border-radius: 6px;
304
- padding: 8px;
305
- border-color: transparent;
306
-
307
- .chat-bubble-option-container {
308
- justify-content: end
309
- }
310
-
311
- .mentions-container {
312
- display: inline-flex;
313
- }
314
-
315
- span {
316
- font-size: 12px;
317
- line-height: 20px;
318
- white-space: pre-wrap;
319
- }
320
-
321
- &:has(.mentions-container) {
322
- span {
323
- margin-left: 4px;
324
- }
325
- }
326
-
327
- .attachments-list {
328
- padding-top: 8px;
329
- justify-content: flex-end;
330
- }
331
- }
332
-
333
- .mention {
334
- > :first-child {
335
- margin-right: 4px;
336
- }
337
- }
338
-
339
- .ai-message {
340
- width: 100%;
341
-
342
- &.error-message {
343
- background-color: #fff2f2;
344
- border-color: #fd9696;
345
- color: #f44
346
- }
347
- }
348
- }
349
-
350
- .ai-chat-markdown {
351
- color: #333;
352
- white-space: pre-wrap;
353
- word-break: break-word;
354
-
355
- p {
356
- margin: 8px 0
357
- }
358
-
359
- h1,
360
- h2,
361
- h3,
362
- h4,
363
- h5,
364
- h6 {
365
- margin-top: 20px;
366
- margin-bottom: 10px;
367
- font-weight: 600;
368
- line-height: 1.5
369
- }
370
-
371
- h1 {
372
- font-size: 2em;
373
- border-bottom: 1px solid #eaecef;
374
- padding-bottom: .3em
375
- }
376
-
377
- h2 {
378
- font-size: 1.5em;
379
- border-bottom: 1px solid #eaecef;
380
- padding-bottom: .3em
381
- }
382
-
383
- h3 {
384
- font-size: 1.25em
385
- }
386
-
387
- h4 {
388
- font-size: 1em
389
- }
390
-
391
- h5 {
392
- font-size: .875em
393
- }
394
-
395
- h6 {
396
- font-size: .85em;
397
- color: #6a737d
398
- }
399
-
400
- a {
401
- color: #0366d6;
402
- text-decoration: none;
403
-
404
- &:hover {
405
- text-decoration: underline
406
- }
407
- }
408
-
409
- img,
410
- .markdown-image {
411
- max-width: 100%;
412
- height: auto;
413
- margin: 10px 0;
414
- border-radius: 6px;
415
- display: block
416
- }
417
-
418
- .markdown-image-container {
419
- display: flex;
420
- justify-content: flex-start;
421
- align-items: center;
422
- width: 100%
423
- }
424
-
425
- .markdown-image-clickable {
426
- cursor: pointer;
427
- max-width: 100%;
428
- height: auto
429
- }
430
-
431
- .missing-image {
432
- color: #666;
433
- background-color: #f3f3f3;
434
- border: 1px dashed #ccc;
435
- border-radius: 6px;
436
- padding: 8px 12px;
437
- display: inline-block;
438
- margin: 10px 0
439
- }
440
-
441
- blockquote {
442
- padding: 0 1em;
443
- color: #6a737d;
444
- border-left: .25em solid #dfe2e5;
445
- margin: 16px 0;
446
-
447
- >p {
448
- margin-top: 0;
449
- margin-bottom: 0
450
- }
451
- }
452
-
453
- table {
454
- width: fit-content;
455
- border-collapse: separate;
456
- border-spacing: 0;
457
- margin: 16px 0;
458
- overflow-x: auto;
459
- display: block;
460
- font-size: 12px;
461
- border-radius: 6px;
462
- background-color: #fff;
463
- border: 1px solid #eaeaea
464
- }
465
-
466
- table thead td,
467
- table th,
468
- table td {
469
- padding: 10px 16px;
470
- border-bottom: 1px solid #eaeaea;
471
- border-right: none;
472
- text-align: left;
473
- word-break: break-word
474
- }
475
-
476
- table th:last-child,
477
- table td:last-child {
478
- border-right: none
479
- }
480
-
481
- table tr:last-child td {
482
- border-bottom: none
483
- }
484
-
485
- table th:first-child {
486
- border-top-left-radius: 4px
487
- }
488
-
489
- table th:last-child {
490
- border-top-right-radius: 4px
491
- }
492
-
493
- table tr:last-child td:first-child {
494
- border-bottom-left-radius: 4px
495
- }
496
-
497
- table tr:last-child td:last-child {
498
- border-bottom-right-radius: 4px
499
- }
500
-
501
- table th {
502
- background-color: #f6f8fa;
503
- font-weight: 600;
504
- border-bottom: 1px solid #eaeaea;
505
- position: sticky;
506
- top: 0;
507
- z-index: 1
508
- }
509
-
510
- table tr {
511
- // transition: background-color .2s ease
512
- }
513
-
514
- table tr:hover {
515
- background-color: #f1f8ff !important
516
- }
517
-
518
- ol,
519
- ul {
520
- margin-block-start: 0;
521
- margin-block-end: 0;
522
- margin-inline-start: 0;
523
- margin-inline-end: 0;
524
- padding-inline-start: 0;
525
- margin: 8px 0;
526
- padding-left: 0;
527
-
528
- ol,
529
- li {
530
- padding-left: 1em
531
- }
532
- }
533
-
534
- li {
535
- position: relative;
536
- margin: 4px 0;
537
- padding-left: 1rem;
538
- list-style-type: none
539
- }
540
-
541
- ul li:before {
542
- content: "";
543
- position: absolute;
544
- left: 4px;
545
- top: .75em;
546
- width: 3px;
547
- height: 3px;
548
- background-color: currentColor;
549
- border-radius: 50%
550
- }
551
-
552
- ol {
553
- counter-reset: item
554
- }
555
-
556
- ol li {
557
- padding-left: 0;
558
- counter-increment: item
559
- }
560
-
561
- ol li:before {
562
- content: counter(item) ".";
563
- margin-right: 4px
564
- }
565
-
566
- >*:first-child {
567
- margin-top: 0;
568
-
569
- >*:first-child {
570
- margin-top: 0
571
- }
572
- }
573
-
574
- >*:last-child {
575
- margin-bottom: 0;
576
-
577
- >*:last-child {
578
- margin-bottom: 0
579
- }
580
- }
581
-
582
- code {
583
- font-family: SFMono-Regular, Consolas, Liberation Mono, Menlo, monospace;
584
- background-color: #1b1f230d;
585
- border-radius: 6px;
586
- font-size: 85%;
587
- padding: .2em .4em;
588
- text-wrap: auto;
589
- }
590
-
591
- pre {
592
- margin: 0;
593
- overflow: hidden auto;
594
- white-space: pre-wrap;
595
- word-break: break-word;
596
-
597
- code {
598
- padding: 0;
599
- background-color: transparent;
600
- font-size: 100%;
601
- white-space: pre;
602
- text-wrap: auto;
603
- }
604
- }
605
-
606
- hr {
607
- border: 0;
608
- height: 1px;
609
- background-color: #eaecef;
610
- margin: 16px 0
611
- }
612
-
613
- .indent-2 {
614
- margin-left: 1rem
615
- }
616
-
617
- .indent-4 {
618
- margin-left: 2rem
619
- }
620
-
621
- .indent-6 {
622
- margin-left: 3rem
623
- }
624
-
625
- .indent-8 {
626
- margin-left: 4rem
627
- }
628
-
629
- li {
630
- margin-bottom: .25rem
631
- }
632
-
633
- strong {
634
- font-weight: 700
635
- }
636
-
637
- em {
638
- font-style: italic
639
- }
640
-
641
- code {
642
- background-color: #0000000d;
643
- border-radius: 6px;
644
- padding: .2em .4em;
645
- font-family: SFMono-Regular, Consolas, Liberation Mono, Menlo, monospace;
646
- font-size: 85%;
647
- text-wrap: auto;
648
- }
649
-
650
- .loading-shimmer {
651
- -webkit-text-fill-color: transparent;
652
- animation-delay: .5s;
653
- animation-duration: 3s;
654
- animation-iteration-count: infinite;
655
- animation-name: loading-shimmer;
656
- background: #adadad linear-gradient(to right, #adadad 0, #1a1a1abf 40%, #1a1a1abf 60%, #adadad 100%);
657
- -webkit-background-clip: text;
658
- background-clip: text;
659
- background-repeat: no-repeat;
660
- background-size: 50% 200%;
661
- display: inline-block
662
- }
663
-
664
-
665
- }
666
-
667
- .ai-chat-request-resource {
668
- display: flex;
669
- align-items: center;
670
- justify-content: space-between;
671
- color: #0366d6;
672
- background-color: #e3f2fd85;
673
- border-radius: 6px;
674
- padding: 4px 8px;
675
- font-size: 12px
676
- }
677
-
678
- .ai-chat-request-resource-message {
679
- display: flex;
680
- align-items: center;
681
- gap: 4px
682
- }
683
-
684
- .ai-chat-request-resource-button {
685
- display: flex;
686
- align-items: center;
687
- justify-content: center;
688
- gap: 4px;
689
- cursor: pointer
690
- }
691
-
692
- .ai-chat-request-resource-icon-success {
693
- font-size: 12px;
694
- color: #05aa2d
695
- }
696
-
697
- .ai-chat-request-resource-icon-failed {
698
- font-size: 12px;
699
- color: #d54941
700
- }
701
-
702
- .ai-chat-error-code-block {
703
- display: flex;
704
- align-items: center;
705
- justify-content: space-between;
706
- color: #d54941;
707
- background-color: #fff0ed;
708
- border-radius: 6px;
709
- border: 1px solid #ffd8d2;
710
- // padding: 8px;
711
- padding: 4px 8px;
712
- gap: 8px;
713
- }
714
-
715
- .ai-chat-error-code-block-retry {
716
- display: flex;
717
- align-items: center;
718
- justify-content: center;
719
- gap: 4px;
720
- // width: 70px;
721
- // min-width: 62px;
722
- min-width: fit-content;
723
- color: #d54941;
724
- background: #fff;
725
- cursor: pointer;
726
- font-size: 12px;
727
- padding: 0 8px;
728
- border: 1px solid #ffd8d2;
729
- border-radius: 6px;
730
-
731
- span {
732
- white-space: nowrap
733
- }
734
- }
735
-
736
- .ai-chat-error-code-block-retry:hover {
737
- border-radius: 6px
738
- }
739
-
740
- .ai-chat-error-code-block-message {
741
- display: flex;
742
- align-items: center;
743
- justify-content: center;
744
- gap: 8px;
745
- font-size: 12px;
746
- overflow: hidden;
747
-
748
- span {
749
- // line-height: 1.25;
750
- text-overflow: ellipsis;
751
- overflow: hidden;
752
- white-space: nowrap;
753
- }
754
- }
755
-
756
- .ai-chat-collapsible-code-block {
757
- cursor: pointer;
758
- background-color: #f3f3f3;
759
- border-radius: 6px;
760
- margin-bottom: 8px;
761
- padding: 6px;
762
- // transition: all .4s cubic-bezier(.25, .8, .25, 1);
763
- will-change: padding, height, transform;
764
- transform-origin: top;
765
-
766
- &:has(.collapsed) {
767
- padding: 4px 8px;
768
- transform: translateY(-1px)
769
- }
770
-
771
- .code-header {
772
- display: flex;
773
- align-items: center;
774
- justify-content: space-between;
775
- user-select: none;
776
- border-radius: 6px;
777
- min-height: 22px;
778
- padding-bottom: 8px;
779
- box-sizing: content-box;
780
- // transition: padding .4s cubic-bezier(.25, .8, .25, 1);
781
-
782
- &:has(.collapsed) {
783
- padding-bottom: 0
784
- }
785
-
786
- .code-title {
787
- margin: 0;
788
- display: flex;
789
- align-items: center;
790
- gap: 8px;
791
- color: currentColor;
792
- font-weight: 400
793
- }
794
-
795
- .code-title-status {
796
- display: inline-flex;
797
- align-items: center;
798
- justify-content: center;
799
-
800
- svg {
801
- width: 10px;
802
- height: 10px;
803
- }
804
-
805
- &.pending {
806
- transform: translate(-2px);
807
- }
808
-
809
- &.success {
810
- color: #05aa2d;
811
-
812
- svg {
813
- width: 14px;
814
- height: 14px;
815
- }
816
- }
817
-
818
- &.error {
819
- color: #d54941;
820
-
821
- svg {
822
- transform: translate(-2px, 0px);
823
- }
824
- }
825
-
826
- &.aborted {
827
- color: #faad14;
828
- }
829
- }
830
-
831
- .code-toggle-button {
832
- display: inline-flex;
833
- align-items: center;
834
- justify-content: center;
835
- width: 24px;
836
- height: 24px;
837
- cursor: pointer;
838
- border: none;
839
- color: #666;
840
- background-color: transparent;
841
- border-radius: 6px;
842
- // transition: transform .4s cubic-bezier(.25, .8, .25, 1), color .2s ease;
843
-
844
- &:hover {
845
- color: #333
846
- }
847
-
848
- &.expanded {
849
- transform: rotate(0)
850
- }
851
-
852
- &.collapsed {
853
- transform: rotate(-90deg)
854
- }
855
- }
856
- }
857
-
858
- .code-content {
859
- background-color: #fff;
860
- border-radius: 6px;
861
- width: 100%;
862
- // transition: height .4s cubic-bezier(.25, .8, .25, 1), opacity .3s ease, transform .4s cubic-bezier(.25, .8, .25, 1);
863
- overflow: hidden;
864
- transform-origin: top;
865
-
866
- .code-content-inner {
867
- padding: 8px 12px
868
- }
869
- }
870
- }
871
-
872
- .ai-chat-collapsible-response {
873
- margin-bottom: 8px;
874
- }
875
-
876
- .think {
877
- display: flex;
878
- align-items: center;
879
-
880
- svg {
881
- width: 10px;
882
- height: 10px;
883
- margin-left: 4px;
884
- }
885
- }
886
-
887
- .markdown-body {
888
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
889
- font-size: 12px;
890
- line-height: 1.6;
891
- color: #24292e;
892
- // background-color: #fff;
893
- word-wrap: break-word;
894
-
895
- >*:first-child {
896
- margin-top: 0;
897
-
898
- >*:first-child {
899
- margin-top: 0
900
- }
901
- }
902
-
903
- >*:last-child {
904
- margin-bottom: 0;
905
-
906
- >*:last-child {
907
- margin-bottom: 0
908
- }
909
- }
910
- }
911
-
912
- .markdown-body h1,
913
- .markdown-body h2,
914
- .markdown-body h3,
915
- .markdown-body h4,
916
- .markdown-body h5,
917
- .markdown-body h6 {
918
- margin-top: 16px;
919
- margin-bottom: 8px;
920
- font-weight: 600;
921
- line-height: 1;
922
- }
923
-
924
- .markdown-body h1 {
925
- // font-size: 2em;
926
- // border-bottom: 1px solid #eaecef;
927
- // padding-bottom: 0.3em;
928
- font-size: 14px;
929
- }
930
-
931
- .markdown-body h2 {
932
- // font-size: 1.5em;
933
- // border-bottom: 1px solid #eaecef;
934
- // padding-bottom: 0.3em;
935
- font-size: 13px;
936
- }
937
-
938
- .markdown-body p {
939
- margin-top: 0;
940
- margin-bottom: 8px;
941
- white-space: pre-wrap;
942
- }
943
-
944
- .markdown-body code {
945
- padding: 0.2em 0.4em;
946
- margin: 0;
947
- font-size: 12px;
948
- // background-color: rgba(27,31,35,0.05);
949
- border-radius: 6px;
950
- text-wrap: auto;
951
- }
952
-
953
- .markdown-body pre {
954
- padding: 16px;
955
- overflow: auto;
956
- font-size: 12px;
957
- line-height: 1.45;
958
- background-color: #f6f8fa;
959
- border-radius: 6px;
960
- }
961
-
962
- .markdown-body blockquote {
963
- padding: 0 1em;
964
- color: #6a737d;
965
- border-left: 0.25em solid #dfe2e5;
966
- margin: 0 0 16px 0;
967
- }
968
-
969
- .markdown-body table {
970
- border-spacing: 0;
971
- border-collapse: collapse;
972
- margin-top: 0;
973
- margin-bottom: 8px;
974
- }
975
-
976
- .markdown-body table th,
977
- .markdown-body table td {
978
- padding: 6px 13px;
979
- border: 1px solid #dfe2e5;
980
- }
981
-
982
- .markdown-body table th {
983
- font-weight: 600;
984
- background-color: #f6f8fa;
985
- }
986
-
987
- .markdown-body ul,
988
- .markdown-body ol {
989
- padding-left: 16px;
990
- margin-top: 0;
991
- margin-bottom: 8px;
992
- }
993
-
994
- .markdown-body li {
995
- word-wrap: break-all;
996
- list-style: outside;
997
- >*:first-child {
998
- margin-top: 0;
999
- margin-bottom: 0;
1000
-
1001
- >*:first-child {
1002
- margin-top: 0
1003
- }
1004
- }
1005
-
1006
- >*:last-child {
1007
- margin-bottom: 0;
1008
-
1009
- >*:last-child {
1010
- margin-bottom: 0
1011
- }
1012
- }
1013
- }