llms-py 2.0.35__py3-none-any.whl → 3.0.0__py3-none-any.whl

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 (206) hide show
  1. llms/__pycache__/__init__.cpython-312.pyc +0 -0
  2. llms/__pycache__/__init__.cpython-313.pyc +0 -0
  3. llms/__pycache__/__init__.cpython-314.pyc +0 -0
  4. llms/__pycache__/__main__.cpython-312.pyc +0 -0
  5. llms/__pycache__/__main__.cpython-314.pyc +0 -0
  6. llms/__pycache__/llms.cpython-312.pyc +0 -0
  7. llms/__pycache__/main.cpython-312.pyc +0 -0
  8. llms/__pycache__/main.cpython-313.pyc +0 -0
  9. llms/__pycache__/main.cpython-314.pyc +0 -0
  10. llms/__pycache__/plugins.cpython-314.pyc +0 -0
  11. llms/{ui/Analytics.mjs → extensions/analytics/ui/index.mjs} +154 -238
  12. llms/extensions/app/README.md +20 -0
  13. llms/extensions/app/__init__.py +530 -0
  14. llms/extensions/app/__pycache__/__init__.cpython-314.pyc +0 -0
  15. llms/extensions/app/__pycache__/db.cpython-314.pyc +0 -0
  16. llms/extensions/app/__pycache__/db_manager.cpython-314.pyc +0 -0
  17. llms/extensions/app/db.py +644 -0
  18. llms/extensions/app/db_manager.py +195 -0
  19. llms/extensions/app/requests.json +9073 -0
  20. llms/extensions/app/threads.json +15290 -0
  21. llms/{ui → extensions/app/ui}/Recents.mjs +91 -65
  22. llms/{ui/Sidebar.mjs → extensions/app/ui/index.mjs} +124 -58
  23. llms/extensions/app/ui/threadStore.mjs +411 -0
  24. llms/extensions/core_tools/CALCULATOR.md +32 -0
  25. llms/extensions/core_tools/__init__.py +598 -0
  26. llms/extensions/core_tools/__pycache__/__init__.cpython-314.pyc +0 -0
  27. llms/extensions/core_tools/ui/codemirror/addon/edit/closebrackets.js +201 -0
  28. llms/extensions/core_tools/ui/codemirror/addon/edit/closetag.js +185 -0
  29. llms/extensions/core_tools/ui/codemirror/addon/edit/continuelist.js +101 -0
  30. llms/extensions/core_tools/ui/codemirror/addon/edit/matchbrackets.js +160 -0
  31. llms/extensions/core_tools/ui/codemirror/addon/edit/matchtags.js +66 -0
  32. llms/extensions/core_tools/ui/codemirror/addon/edit/trailingspace.js +27 -0
  33. llms/extensions/core_tools/ui/codemirror/addon/selection/active-line.js +72 -0
  34. llms/extensions/core_tools/ui/codemirror/addon/selection/mark-selection.js +119 -0
  35. llms/extensions/core_tools/ui/codemirror/addon/selection/selection-pointer.js +98 -0
  36. llms/extensions/core_tools/ui/codemirror/doc/docs.css +225 -0
  37. llms/extensions/core_tools/ui/codemirror/doc/source_sans.woff +0 -0
  38. llms/extensions/core_tools/ui/codemirror/lib/codemirror.css +344 -0
  39. llms/extensions/core_tools/ui/codemirror/lib/codemirror.js +9884 -0
  40. llms/extensions/core_tools/ui/codemirror/mode/clike/clike.js +942 -0
  41. llms/extensions/core_tools/ui/codemirror/mode/javascript/index.html +118 -0
  42. llms/extensions/core_tools/ui/codemirror/mode/javascript/javascript.js +962 -0
  43. llms/extensions/core_tools/ui/codemirror/mode/javascript/typescript.html +62 -0
  44. llms/extensions/core_tools/ui/codemirror/mode/python/python.js +402 -0
  45. llms/extensions/core_tools/ui/codemirror/theme/dracula.css +40 -0
  46. llms/extensions/core_tools/ui/codemirror/theme/mocha.css +135 -0
  47. llms/extensions/core_tools/ui/index.mjs +650 -0
  48. llms/extensions/gallery/README.md +61 -0
  49. llms/extensions/gallery/__init__.py +61 -0
  50. llms/extensions/gallery/__pycache__/__init__.cpython-314.pyc +0 -0
  51. llms/extensions/gallery/__pycache__/db.cpython-314.pyc +0 -0
  52. llms/extensions/gallery/db.py +298 -0
  53. llms/extensions/gallery/ui/index.mjs +482 -0
  54. llms/extensions/katex/README.md +39 -0
  55. llms/extensions/katex/__init__.py +6 -0
  56. llms/extensions/katex/__pycache__/__init__.cpython-314.pyc +0 -0
  57. llms/extensions/katex/ui/README.md +125 -0
  58. llms/extensions/katex/ui/contrib/auto-render.js +338 -0
  59. llms/extensions/katex/ui/contrib/auto-render.min.js +1 -0
  60. llms/extensions/katex/ui/contrib/auto-render.mjs +244 -0
  61. llms/extensions/katex/ui/contrib/copy-tex.js +127 -0
  62. llms/extensions/katex/ui/contrib/copy-tex.min.js +1 -0
  63. llms/extensions/katex/ui/contrib/copy-tex.mjs +105 -0
  64. llms/extensions/katex/ui/contrib/mathtex-script-type.js +109 -0
  65. llms/extensions/katex/ui/contrib/mathtex-script-type.min.js +1 -0
  66. llms/extensions/katex/ui/contrib/mathtex-script-type.mjs +24 -0
  67. llms/extensions/katex/ui/contrib/mhchem.js +3213 -0
  68. llms/extensions/katex/ui/contrib/mhchem.min.js +1 -0
  69. llms/extensions/katex/ui/contrib/mhchem.mjs +3109 -0
  70. llms/extensions/katex/ui/contrib/render-a11y-string.js +887 -0
  71. llms/extensions/katex/ui/contrib/render-a11y-string.min.js +1 -0
  72. llms/extensions/katex/ui/contrib/render-a11y-string.mjs +800 -0
  73. llms/extensions/katex/ui/fonts/KaTeX_AMS-Regular.ttf +0 -0
  74. llms/extensions/katex/ui/fonts/KaTeX_AMS-Regular.woff +0 -0
  75. llms/extensions/katex/ui/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  76. llms/extensions/katex/ui/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
  77. llms/extensions/katex/ui/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
  78. llms/extensions/katex/ui/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  79. llms/extensions/katex/ui/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
  80. llms/extensions/katex/ui/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
  81. llms/extensions/katex/ui/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  82. llms/extensions/katex/ui/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
  83. llms/extensions/katex/ui/fonts/KaTeX_Fraktur-Bold.woff +0 -0
  84. llms/extensions/katex/ui/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  85. llms/extensions/katex/ui/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
  86. llms/extensions/katex/ui/fonts/KaTeX_Fraktur-Regular.woff +0 -0
  87. llms/extensions/katex/ui/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  88. llms/extensions/katex/ui/fonts/KaTeX_Main-Bold.ttf +0 -0
  89. llms/extensions/katex/ui/fonts/KaTeX_Main-Bold.woff +0 -0
  90. llms/extensions/katex/ui/fonts/KaTeX_Main-Bold.woff2 +0 -0
  91. llms/extensions/katex/ui/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
  92. llms/extensions/katex/ui/fonts/KaTeX_Main-BoldItalic.woff +0 -0
  93. llms/extensions/katex/ui/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  94. llms/extensions/katex/ui/fonts/KaTeX_Main-Italic.ttf +0 -0
  95. llms/extensions/katex/ui/fonts/KaTeX_Main-Italic.woff +0 -0
  96. llms/extensions/katex/ui/fonts/KaTeX_Main-Italic.woff2 +0 -0
  97. llms/extensions/katex/ui/fonts/KaTeX_Main-Regular.ttf +0 -0
  98. llms/extensions/katex/ui/fonts/KaTeX_Main-Regular.woff +0 -0
  99. llms/extensions/katex/ui/fonts/KaTeX_Main-Regular.woff2 +0 -0
  100. llms/extensions/katex/ui/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
  101. llms/extensions/katex/ui/fonts/KaTeX_Math-BoldItalic.woff +0 -0
  102. llms/extensions/katex/ui/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  103. llms/extensions/katex/ui/fonts/KaTeX_Math-Italic.ttf +0 -0
  104. llms/extensions/katex/ui/fonts/KaTeX_Math-Italic.woff +0 -0
  105. llms/extensions/katex/ui/fonts/KaTeX_Math-Italic.woff2 +0 -0
  106. llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
  107. llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Bold.woff +0 -0
  108. llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  109. llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
  110. llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Italic.woff +0 -0
  111. llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  112. llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
  113. llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Regular.woff +0 -0
  114. llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  115. llms/extensions/katex/ui/fonts/KaTeX_Script-Regular.ttf +0 -0
  116. llms/extensions/katex/ui/fonts/KaTeX_Script-Regular.woff +0 -0
  117. llms/extensions/katex/ui/fonts/KaTeX_Script-Regular.woff2 +0 -0
  118. llms/extensions/katex/ui/fonts/KaTeX_Size1-Regular.ttf +0 -0
  119. llms/extensions/katex/ui/fonts/KaTeX_Size1-Regular.woff +0 -0
  120. llms/extensions/katex/ui/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  121. llms/extensions/katex/ui/fonts/KaTeX_Size2-Regular.ttf +0 -0
  122. llms/extensions/katex/ui/fonts/KaTeX_Size2-Regular.woff +0 -0
  123. llms/extensions/katex/ui/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  124. llms/extensions/katex/ui/fonts/KaTeX_Size3-Regular.ttf +0 -0
  125. llms/extensions/katex/ui/fonts/KaTeX_Size3-Regular.woff +0 -0
  126. llms/extensions/katex/ui/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  127. llms/extensions/katex/ui/fonts/KaTeX_Size4-Regular.ttf +0 -0
  128. llms/extensions/katex/ui/fonts/KaTeX_Size4-Regular.woff +0 -0
  129. llms/extensions/katex/ui/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  130. llms/extensions/katex/ui/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
  131. llms/extensions/katex/ui/fonts/KaTeX_Typewriter-Regular.woff +0 -0
  132. llms/extensions/katex/ui/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  133. llms/extensions/katex/ui/index.mjs +92 -0
  134. llms/extensions/katex/ui/katex-swap.css +1230 -0
  135. llms/extensions/katex/ui/katex-swap.min.css +1 -0
  136. llms/extensions/katex/ui/katex.css +1230 -0
  137. llms/extensions/katex/ui/katex.js +19080 -0
  138. llms/extensions/katex/ui/katex.min.css +1 -0
  139. llms/extensions/katex/ui/katex.min.js +1 -0
  140. llms/extensions/katex/ui/katex.min.mjs +1 -0
  141. llms/extensions/katex/ui/katex.mjs +18547 -0
  142. llms/extensions/providers/__init__.py +18 -0
  143. llms/extensions/providers/__pycache__/__init__.cpython-314.pyc +0 -0
  144. llms/extensions/providers/__pycache__/anthropic.cpython-314.pyc +0 -0
  145. llms/extensions/providers/__pycache__/chutes.cpython-314.pyc +0 -0
  146. llms/extensions/providers/__pycache__/google.cpython-314.pyc +0 -0
  147. llms/extensions/providers/__pycache__/nvidia.cpython-314.pyc +0 -0
  148. llms/extensions/providers/__pycache__/openai.cpython-314.pyc +0 -0
  149. llms/extensions/providers/__pycache__/openrouter.cpython-314.pyc +0 -0
  150. llms/extensions/providers/anthropic.py +229 -0
  151. llms/extensions/providers/chutes.py +155 -0
  152. llms/extensions/providers/google.py +378 -0
  153. llms/extensions/providers/nvidia.py +105 -0
  154. llms/extensions/providers/openai.py +156 -0
  155. llms/extensions/providers/openrouter.py +72 -0
  156. llms/extensions/system_prompts/README.md +22 -0
  157. llms/extensions/system_prompts/__init__.py +45 -0
  158. llms/extensions/system_prompts/__pycache__/__init__.cpython-314.pyc +0 -0
  159. llms/extensions/system_prompts/ui/index.mjs +280 -0
  160. llms/extensions/system_prompts/ui/prompts.json +1067 -0
  161. llms/extensions/tools/__init__.py +5 -0
  162. llms/extensions/tools/__pycache__/__init__.cpython-314.pyc +0 -0
  163. llms/extensions/tools/ui/index.mjs +204 -0
  164. llms/index.html +35 -77
  165. llms/llms.json +357 -1186
  166. llms/main.py +2349 -591
  167. llms/providers-extra.json +356 -0
  168. llms/providers.json +1 -0
  169. llms/ui/App.mjs +151 -60
  170. llms/ui/ai.mjs +132 -60
  171. llms/ui/app.css +2173 -161
  172. llms/ui/ctx.mjs +365 -0
  173. llms/ui/index.mjs +129 -0
  174. llms/ui/lib/charts.mjs +9 -13
  175. llms/ui/lib/servicestack-vue.mjs +3 -3
  176. llms/ui/lib/vue.min.mjs +10 -9
  177. llms/ui/lib/vue.mjs +1796 -1635
  178. llms/ui/markdown.mjs +18 -7
  179. llms/ui/modules/chat/ChatBody.mjs +691 -0
  180. llms/ui/{SettingsDialog.mjs → modules/chat/SettingsDialog.mjs} +9 -9
  181. llms/ui/modules/chat/index.mjs +828 -0
  182. llms/ui/modules/layout.mjs +243 -0
  183. llms/ui/modules/model-selector.mjs +851 -0
  184. llms/ui/tailwind.input.css +496 -80
  185. llms/ui/utils.mjs +161 -93
  186. {llms_py-2.0.35.dist-info → llms_py-3.0.0.dist-info}/METADATA +1 -1
  187. llms_py-3.0.0.dist-info/RECORD +202 -0
  188. llms/ui/Avatar.mjs +0 -85
  189. llms/ui/Brand.mjs +0 -52
  190. llms/ui/ChatPrompt.mjs +0 -590
  191. llms/ui/Main.mjs +0 -823
  192. llms/ui/ModelSelector.mjs +0 -78
  193. llms/ui/OAuthSignIn.mjs +0 -92
  194. llms/ui/ProviderIcon.mjs +0 -30
  195. llms/ui/ProviderStatus.mjs +0 -105
  196. llms/ui/SignIn.mjs +0 -64
  197. llms/ui/SystemPromptEditor.mjs +0 -31
  198. llms/ui/SystemPromptSelector.mjs +0 -56
  199. llms/ui/Welcome.mjs +0 -8
  200. llms/ui/threadStore.mjs +0 -563
  201. llms/ui.json +0 -1069
  202. llms_py-2.0.35.dist-info/RECORD +0 -48
  203. {llms_py-2.0.35.dist-info → llms_py-3.0.0.dist-info}/WHEEL +0 -0
  204. {llms_py-2.0.35.dist-info → llms_py-3.0.0.dist-info}/entry_points.txt +0 -0
  205. {llms_py-2.0.35.dist-info → llms_py-3.0.0.dist-info}/licenses/LICENSE +0 -0
  206. {llms_py-2.0.35.dist-info → llms_py-3.0.0.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,8 @@
1
1
  /* tailwindcss -i ./tailwind.input.css -o ./ui/app.css --watch */
2
2
  @import "tailwindcss";
3
3
  @source "./lib/servicestack-vue.mjs";
4
+ @source "../../extensions";
5
+ @source "../../llms-home/extensions";
4
6
 
5
7
  @custom-variant dark (&:where(.dark, .dark *));
6
8
 
@@ -13,6 +15,7 @@
13
15
  --ring: 221.2 83.2% 53.3%;
14
16
  --radius: 0.5rem;
15
17
  }
18
+
16
19
  :root.dark {
17
20
  --background: 222.2 84% 4.9%;
18
21
  --foreground: 210 40% 98%;
@@ -28,6 +31,11 @@
28
31
  ::file-selector-button {
29
32
  border-color: hsl(var(--border));
30
33
  }
34
+
35
+ .reasoning .prose-xs p,
36
+ .reasoning .prose-xs li {
37
+ font-size: 13px;
38
+ }
31
39
  }
32
40
 
33
41
  @theme {
@@ -37,17 +45,37 @@
37
45
  @layer base {
38
46
 
39
47
  /*vue*/
40
- [v-cloak] {display:none}
48
+ [v-cloak] {
49
+ display: none
50
+ }
41
51
 
42
52
  /* override element defaults */
43
- b, strong { font-weight:600; }
44
- ::-webkit-scrollbar{width:8px;height:8px}
45
- ::-webkit-scrollbar-thumb{background-color:#ccc}
46
- .dark ::-webkit-scrollbar{background:#1f2937}
47
- .dark ::-webkit-scrollbar-thumb{background-color:#4b5563}
53
+ b,
54
+ strong {
55
+ font-weight: 600;
56
+ }
57
+
58
+ ::-webkit-scrollbar {
59
+ width: 8px;
60
+ height: 8px
61
+ }
62
+
63
+ ::-webkit-scrollbar-thumb {
64
+ background-color: #ccc
65
+ }
66
+
67
+ .dark ::-webkit-scrollbar {
68
+ background: #1f2937
69
+ }
70
+
71
+ .dark ::-webkit-scrollbar-thumb {
72
+ background-color: #4b5563
73
+ }
74
+
48
75
  [role=dialog].z-10 {
49
76
  z-index: 60;
50
77
  }
78
+
51
79
  em {
52
80
  color: #3b82f6;
53
81
  font-weight: 400;
@@ -58,18 +86,24 @@
58
86
  margin-right: 0.125em;
59
87
  font-style: normal;
60
88
  }
89
+
61
90
  .message em {
62
- background-color: #eff6ff;border:1px solid #3b83f680;border-radius: .25rem;padding: .2rem .25rem .1rem .25rem
91
+ background-color: #eff6ff;
92
+ border: 1px solid #3b83f680;
93
+ border-radius: .25rem;
94
+ padding: .2rem .25rem .1rem .25rem
63
95
  }
64
96
 
65
97
  /* Chat-specific styles */
66
98
  .prose {
67
99
  max-width: none;
68
100
  }
69
- .prose > pre {
101
+
102
+ .prose>pre {
70
103
  margin-top: 0;
71
104
  margin-bottom: 0;
72
105
  }
106
+
73
107
  .prose pre {
74
108
  background-color: #1f2937;
75
109
  color: #f9fafb;
@@ -77,6 +111,7 @@
77
111
  padding: 1rem;
78
112
  overflow-x: auto;
79
113
  }
114
+
80
115
  .prose code {
81
116
  background-color: #f3f4f6;
82
117
  color: #1f2937;
@@ -84,62 +119,216 @@
84
119
  border-radius: 0.25rem;
85
120
  font-size: 0.875em;
86
121
  }
122
+
87
123
  .prose pre code {
88
124
  background-color: transparent;
89
125
  color: inherit;
90
126
  padding: 0;
91
127
  }
128
+
92
129
  .prose blockquote {
93
130
  border-left: 4px solid #e5e7eb;
94
131
  padding-left: 1rem;
95
132
  font-style: italic;
96
133
  color: #6b7280;
97
134
  }
135
+
98
136
  .prose table {
99
137
  border-collapse: collapse;
100
138
  width: 100%;
101
139
  }
140
+
102
141
  .prose th,
103
142
  .prose td {
104
143
  border: 1px solid #e5e7eb;
105
144
  padding: 0.5rem;
106
145
  text-align: left;
107
146
  }
147
+
108
148
  .prose th {
109
149
  background-color: #f9fafb;
110
150
  font-weight: 600;
111
151
  }
112
152
 
153
+ /* Tool specific styles to override global prose */
154
+ .tool-arguments,
155
+ .tool-output {
156
+ margin: 0 !important;
157
+ padding: 0 !important;
158
+ background-color: transparent !important;
159
+ color: inherit !important;
160
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
161
+ font-size: 0.75rem !important;
162
+ white-space: pre-wrap !important;
163
+ word-break: break-all !important;
164
+ border: none !important;
165
+ border-radius: 0 !important;
166
+ overflow: auto !important;
167
+ }
168
+
113
169
  /* highlight.js - vs.css */
114
- .hljs {background:white;color:black}
115
- .hljs-comment,.hljs-quote,.hljs-variable{color:#008000}
116
- .hljs-keyword,.hljs-selector-tag,.hljs-built_in,.hljs-name,.hljs-tag{color:#00f}
117
- .hljs-string,.hljs-title,.hljs-section,.hljs-attribute,.hljs-literal,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-addition{color:#a31515}
118
- .hljs-deletion,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-meta{color:#2b91af}
119
- .hljs-doctag{color:#808080}
120
- .hljs-attr{color: #f00}
121
- .hljs-symbol,.hljs-bullet,.hljs-link{color:#00b0e8}
122
- .hljs-emphasis{font-style:italic}
123
- .hljs-strong{font-weight:bold}
170
+ .hljs {
171
+ background: white;
172
+ color: black
173
+ }
174
+
175
+ .hljs-comment,
176
+ .hljs-quote,
177
+ .hljs-variable {
178
+ color: #008000
179
+ }
180
+
181
+ .hljs-keyword,
182
+ .hljs-selector-tag,
183
+ .hljs-built_in,
184
+ .hljs-name,
185
+ .hljs-tag {
186
+ color: #00f
187
+ }
188
+
189
+ .hljs-string,
190
+ .hljs-title,
191
+ .hljs-section,
192
+ .hljs-attribute,
193
+ .hljs-literal,
194
+ .hljs-template-tag,
195
+ .hljs-template-variable,
196
+ .hljs-type,
197
+ .hljs-addition {
198
+ color: #a31515
199
+ }
200
+
201
+ .hljs-deletion,
202
+ .hljs-selector-attr,
203
+ .hljs-selector-pseudo,
204
+ .hljs-meta {
205
+ color: #2b91af
206
+ }
207
+
208
+ .hljs-doctag {
209
+ color: #808080
210
+ }
211
+
212
+ .hljs-attr {
213
+ color: #f00
214
+ }
215
+
216
+ .hljs-symbol,
217
+ .hljs-bullet,
218
+ .hljs-link {
219
+ color: #00b0e8
220
+ }
221
+
222
+ .hljs-emphasis {
223
+ font-style: italic
224
+ }
225
+
226
+ .hljs-strong {
227
+ font-weight: bold
228
+ }
124
229
 
125
230
  /* https://unpkg.com/@highlightjs/cdn-assets/styles/atom-one-dark.min.css */
126
- pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}
127
- .hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#c678dd}
128
- .hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst,.hljs-tag{color:#e06c75}
129
- .hljs-literal{color:#56b6c2}
130
- .hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}
131
- .hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}
132
- .hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}
133
- .hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}
134
- .hljs-link{text-decoration:underline}
231
+ pre code.hljs {
232
+ display: block;
233
+ overflow-x: auto;
234
+ padding: 1em
235
+ }
236
+
237
+ code.hljs {
238
+ padding: 3px 5px
239
+ }
240
+
241
+ .hljs {
242
+ color: #abb2bf;
243
+ background: #282c34
244
+ }
245
+
246
+ .hljs-comment,
247
+ .hljs-quote {
248
+ color: #5c6370;
249
+ font-style: italic
250
+ }
251
+
252
+ .hljs-doctag,
253
+ .hljs-formula,
254
+ .hljs-keyword {
255
+ color: #c678dd
256
+ }
257
+
258
+ .hljs-deletion,
259
+ .hljs-name,
260
+ .hljs-section,
261
+ .hljs-selector-tag,
262
+ .hljs-subst,
263
+ .hljs-tag {
264
+ color: #e06c75
265
+ }
266
+
267
+ .hljs-literal {
268
+ color: #56b6c2
269
+ }
270
+
271
+ .hljs-addition,
272
+ .hljs-attribute,
273
+ .hljs-meta .hljs-string,
274
+ .hljs-regexp,
275
+ .hljs-string {
276
+ color: #98c379
277
+ }
278
+
279
+ .hljs-attr,
280
+ .hljs-number,
281
+ .hljs-selector-attr,
282
+ .hljs-selector-class,
283
+ .hljs-selector-pseudo,
284
+ .hljs-template-variable,
285
+ .hljs-type,
286
+ .hljs-variable {
287
+ color: #d19a66
288
+ }
289
+
290
+ .hljs-bullet,
291
+ .hljs-link,
292
+ .hljs-meta,
293
+ .hljs-selector-id,
294
+ .hljs-symbol,
295
+ .hljs-title {
296
+ color: #61aeee
297
+ }
298
+
299
+ .hljs-built_in,
300
+ .hljs-class .hljs-title,
301
+ .hljs-title.class_ {
302
+ color: #e6c07b
303
+ }
304
+
305
+ .hljs-emphasis {
306
+ font-style: italic
307
+ }
308
+
309
+ .hljs-strong {
310
+ font-weight: 700
311
+ }
312
+
313
+ .hljs-link {
314
+ text-decoration: underline
315
+ }
135
316
 
136
317
  /*highlightjs*/
137
- .hljs, .prose :where(pre):not(:where([class~="not-prose"] *)) .hljs {
318
+ .hljs,
319
+ .prose :where(pre):not(:where([class~="not-prose"] *)) .hljs {
138
320
  color: #e5e7eb !important;
139
321
  background-color: #282c34 !important;
140
322
  }
141
- .hljs-comment, .hljs-quote {
142
- color: rgb(148 163 184); /*text-slate-400*/
323
+
324
+ .prose :where(h1):not(:where([class~="not-prose"] *)) {
325
+ font-weight: 700 !important;
326
+ }
327
+
328
+ .hljs-comment,
329
+ .hljs-quote {
330
+ color: rgb(148 163 184);
331
+ /*text-slate-400*/
143
332
  }
144
333
 
145
334
  pre {
@@ -153,17 +342,20 @@
153
342
  padding: .8571429em 1.1428571em;
154
343
  max-width: calc(100vw - 1rem);
155
344
  min-width: fit-content;
156
- background-color: #282c34 !important;
345
+ /* background-color: #282c34 !important; overrides CodeMirror */
157
346
  }
347
+
158
348
  pre code.hljs {
159
349
  display: block;
160
350
  overflow-x: auto;
161
351
  padding: 1em;
162
352
  }
353
+
163
354
  .message pre {
164
355
  max-width: 100%;
165
356
  min-width: auto;
166
357
  }
358
+
167
359
  .message pre code.hljs {
168
360
  overflow-x: unset;
169
361
  width: 100%;
@@ -182,57 +374,250 @@
182
374
  outline-offset: 2px;
183
375
  box-shadow: 0 0 0 2px #3b82f6;
184
376
  }
377
+
185
378
  /* @tailwindcss/forms css */
186
- [type='text'],[type='email'],[type='url'],[type='password'],[type='number'],[type='date'],[type='datetime-local'],[type='month'],[type='week'],[type='search'],[type='tel'],[type='time'],[type='color'],[multiple],textarea,select
187
- {-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-width:1px;padding:0.5rem 0.75rem;font-size:1rem}
188
- .dark [type='text'],.dark [type='email'],.dark [type='url'],.dark [type='password'],.dark [type='number'],.dark [type='date'],.dark [type='datetime-local'],.dark [type='month'],.dark [type='week'],.dark [type='search'],.dark [type='tel'],.dark [type='time'],.dark [type='color'],.dark [multiple],.dark textarea,.dark select
189
- {background-color:var(--color-gray-800)}
190
-
191
- [type='text']:focus,[type='email']:focus,[type='url']:focus,[type='password']:focus,[type='number']:focus,[type='date']:focus,[type='datetime-local']:focus,[type='month']:focus,[type='week']:focus,[type='search']:focus,[type='tel']:focus,[type='time']:focus,[type='color']:focus,[multiple]:focus,textarea:focus,select:focus{
192
- outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);
193
- --tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;
194
- --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
195
- --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
196
- box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);border-color:#2563eb;}
197
- input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}
198
- input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#6b7280;opacity:1}
199
- input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}
200
- select{
201
- background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
202
- background-position:right 0.5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;color-adjust:exact}
203
- [multiple]{
204
- background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;padding-right:0.75rem;-webkit-print-color-adjust:unset;color-adjust:unset;}
205
- [type='checkbox'],[type='radio']{
206
- -webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;color-adjust:exact;display:inline-block;
207
- vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;
208
- flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-width:1px}
209
- [type='radio']{border-radius:100%}
210
- [type='checkbox']:focus,[type='radio']:focus{
211
- outline:2px solid transparent;outline-offset:2px;
212
- --tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;
213
- --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
214
- --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
215
- box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)}
216
- [type='checkbox']:checked,[type='radio']:checked{
217
- border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}
218
- [type='checkbox']:checked{
219
- background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}
220
- [type='radio']:checked{
221
- background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")}
222
- [type='checkbox']:checked:hover,[type='checkbox']:checked:focus,[type='radio']:checked:hover,[type='radio']:checked:focus{
223
- border-color:transparent;background-color:currentColor}
224
- [type='checkbox']:indeterminate{
225
- background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");
226
- border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}
227
- [type='checkbox']:indeterminate:hover,[type='checkbox']:indeterminate:focus{border-color:transparent;background-color:currentColor}
228
- [type='file']{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}
229
- [type='file']:focus{outline:1px auto -webkit-focus-ring-color;}
230
- [type='color']{height:2.4rem;padding:2px 3px}
231
- [type='range']{height:2.4rem}
232
- [type='button'],button[type='submit']{cursor:pointer}
379
+ [type='text'],
380
+ [type='email'],
381
+ [type='url'],
382
+ [type='password'],
383
+ [type='number'],
384
+ [type='date'],
385
+ [type='datetime-local'],
386
+ [type='month'],
387
+ [type='week'],
388
+ [type='search'],
389
+ [type='tel'],
390
+ [type='time'],
391
+ [type='color'],
392
+ [multiple],
393
+ textarea,
394
+ select {
395
+ -webkit-appearance: none;
396
+ -moz-appearance: none;
397
+ appearance: none;
398
+ background-color: #fff;
399
+ border-width: 1px;
400
+ padding: 0.5rem 0.75rem;
401
+ font-size: 1rem
402
+ }
403
+
404
+ .dark [type='text'],
405
+ .dark [type='email'],
406
+ .dark [type='url'],
407
+ .dark [type='password'],
408
+ .dark [type='number'],
409
+ .dark [type='date'],
410
+ .dark [type='datetime-local'],
411
+ .dark [type='month'],
412
+ .dark [type='week'],
413
+ .dark [type='search'],
414
+ .dark [type='tel'],
415
+ .dark [type='time'],
416
+ .dark [type='color'],
417
+ .dark [multiple],
418
+ .dark textarea,
419
+ .dark select {
420
+ background-color: var(--color-gray-800)
421
+ }
422
+
423
+ [type='text']:focus,
424
+ [type='email']:focus,
425
+ [type='url']:focus,
426
+ [type='password']:focus,
427
+ [type='number']:focus,
428
+ [type='date']:focus,
429
+ [type='datetime-local']:focus,
430
+ [type='month']:focus,
431
+ [type='week']:focus,
432
+ [type='search']:focus,
433
+ [type='tel']:focus,
434
+ [type='time']:focus,
435
+ [type='color']:focus,
436
+ [multiple]:focus,
437
+ textarea:focus,
438
+ select:focus {
439
+ outline: 2px solid transparent;
440
+ outline-offset: 2px;
441
+ --tw-ring-inset: var(--tw-empty,
442
+ /*!*/
443
+ /*!*/
444
+ );
445
+ --tw-ring-offset-width: 0px;
446
+ --tw-ring-offset-color: #fff;
447
+ --tw-ring-color: #2563eb;
448
+ --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
449
+ --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
450
+ box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
451
+ border-color: #2563eb;
452
+ }
453
+
454
+ input::-moz-placeholder,
455
+ textarea::-moz-placeholder {
456
+ color: #6b7280;
457
+ opacity: 1
458
+ }
459
+
460
+ input:-ms-input-placeholder,
461
+ textarea:-ms-input-placeholder {
462
+ color: #6b7280;
463
+ opacity: 1
464
+ }
465
+
466
+ input::placeholder,
467
+ textarea::placeholder {
468
+ color: #6b7280;
469
+ opacity: 1
470
+ }
471
+
472
+ select {
473
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
474
+ background-position: right 0.5rem center;
475
+ background-repeat: no-repeat;
476
+ background-size: 1.5em 1.5em;
477
+ padding-right: 2.5rem;
478
+ -webkit-print-color-adjust: exact;
479
+ color-adjust: exact
480
+ }
481
+
482
+ [multiple] {
483
+ background-image: initial;
484
+ background-position: initial;
485
+ background-repeat: unset;
486
+ background-size: initial;
487
+ padding-right: 0.75rem;
488
+ -webkit-print-color-adjust: unset;
489
+ color-adjust: unset;
490
+ }
491
+
492
+ [type='checkbox'],
493
+ [type='radio'] {
494
+ -webkit-appearance: none;
495
+ -moz-appearance: none;
496
+ appearance: none;
497
+ padding: 0;
498
+ -webkit-print-color-adjust: exact;
499
+ color-adjust: exact;
500
+ display: inline-block;
501
+ vertical-align: middle;
502
+ background-origin: border-box;
503
+ -webkit-user-select: none;
504
+ -moz-user-select: none;
505
+ -ms-user-select: none;
506
+ user-select: none;
507
+ flex-shrink: 0;
508
+ height: 1rem;
509
+ width: 1rem;
510
+ color: #2563eb;
511
+ background-color: #fff;
512
+ border-width: 1px
513
+ }
514
+
515
+ [type='radio'] {
516
+ border-radius: 100%
517
+ }
518
+
519
+ [type='checkbox']:focus,
520
+ [type='radio']:focus {
521
+ outline: 2px solid transparent;
522
+ outline-offset: 2px;
523
+ --tw-ring-inset: var(--tw-empty,
524
+ /*!*/
525
+ /*!*/
526
+ );
527
+ --tw-ring-offset-width: 2px;
528
+ --tw-ring-offset-color: #fff;
529
+ --tw-ring-color: #2563eb;
530
+ --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
531
+ --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
532
+ box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)
533
+ }
534
+
535
+ [type='checkbox']:checked,
536
+ [type='radio']:checked {
537
+ border-color: transparent;
538
+ background-color: currentColor;
539
+ background-size: 100% 100%;
540
+ background-position: center;
541
+ background-repeat: no-repeat
542
+ }
543
+
544
+ [type='checkbox']:checked {
545
+ background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")
546
+ }
547
+
548
+ [type='radio']:checked {
549
+ background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")
550
+ }
551
+
552
+ [type='checkbox']:checked:hover,
553
+ [type='checkbox']:checked:focus,
554
+ [type='radio']:checked:hover,
555
+ [type='radio']:checked:focus {
556
+ border-color: transparent;
557
+ background-color: currentColor
558
+ }
559
+
560
+ [type='checkbox']:indeterminate {
561
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");
562
+ border-color: transparent;
563
+ background-color: currentColor;
564
+ background-size: 100% 100%;
565
+ background-position: center;
566
+ background-repeat: no-repeat
567
+ }
568
+
569
+ [type='checkbox']:indeterminate:hover,
570
+ [type='checkbox']:indeterminate:focus {
571
+ border-color: transparent;
572
+ background-color: currentColor
573
+ }
574
+
575
+ [type='file'] {
576
+ background: unset;
577
+ border-color: inherit;
578
+ border-width: 0;
579
+ border-radius: 0;
580
+ padding: 0;
581
+ font-size: unset;
582
+ line-height: inherit
583
+ }
584
+
585
+ [type='file']:focus {
586
+ outline: 1px auto -webkit-focus-ring-color;
587
+ }
588
+
589
+ [type='color'] {
590
+ height: 2.4rem;
591
+ padding: 2px 3px
592
+ }
593
+
594
+ [type='range'] {
595
+ height: 2.4rem
596
+ }
597
+
598
+ [type='button'],
599
+ button[type='submit'] {
600
+ cursor: pointer
601
+ }
233
602
 
234
603
  @media (min-width: 640px) {
235
- [type='text'],[type='email'],[type='url'],[type='password'],[type='number'],[type='date'],[type='datetime-local'],[type='month'],[type='week'],[type='search'],[type='tel'],[type='time'],[type='color'],[multiple],textarea,select {
604
+
605
+ [type='text'],
606
+ [type='email'],
607
+ [type='url'],
608
+ [type='password'],
609
+ [type='number'],
610
+ [type='date'],
611
+ [type='datetime-local'],
612
+ [type='month'],
613
+ [type='week'],
614
+ [type='search'],
615
+ [type='tel'],
616
+ [type='time'],
617
+ [type='color'],
618
+ [multiple],
619
+ textarea,
620
+ select {
236
621
  font-size: .875rem;
237
622
  line-height: 1.25rem;
238
623
  }
@@ -246,6 +631,7 @@
246
631
  transition: background-color 5000s ease-in-out 0s;
247
632
  -webkit-text-fill-color: #ffffff;
248
633
  }
634
+
249
635
  .dark input[data-autocompleted] {
250
636
  background-color: transparent !important;
251
637
  }
@@ -254,12 +640,14 @@
254
640
  .aspect-h-9 {
255
641
  --tw-aspect-h: 9;
256
642
  }
643
+
257
644
  .aspect-w-16 {
258
645
  position: relative;
259
646
  padding-bottom: calc(var(--tw-aspect-h) / var(--tw-aspect-w) * 100%);
260
647
  --tw-aspect-w: 16;
261
648
  }
262
- .aspect-w-16 > * {
649
+
650
+ .aspect-w-16>* {
263
651
  position: absolute;
264
652
  height: 100%;
265
653
  width: 100%;
@@ -269,4 +657,32 @@
269
657
  left: 0;
270
658
  }
271
659
 
660
+
661
+ @media (min-width: 640px) {
662
+ .message pre {
663
+ max-width: 500px !important;
664
+ }
665
+ }
666
+
667
+ @media (min-width: 768px) {
668
+ .message pre {
669
+ max-width: 600px !important;
670
+ }
671
+ }
672
+
673
+ @media (min-width: 1024px) {
674
+
675
+ .message pre,
676
+ .message .prose pre {
677
+ max-width: 700px !important;
678
+ }
679
+ }
680
+
681
+ @media (min-width: 1280px) {
682
+
683
+ .message pre,
684
+ .message .prose pre {
685
+ max-width: 800px !important;
686
+ }
687
+ }
272
688
  }