@thebase/ui 0.0.4 → 0.0.6

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 (214) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/README.md +49 -8
  3. package/bin/create-baseui-app.mjs +268 -0
  4. package/dist/baseui.esm.js +2 -2
  5. package/dist/baseui.min.css +1 -1
  6. package/dist/baseui.min.js +2 -2
  7. package/dist/baseui.registry.json +6 -7
  8. package/dist/icons/lucide.json +2 -2
  9. package/dist/runtime/marked/marked.min.js +69 -0
  10. package/dist/runtime/mermaid/mermaid.esm.min.mjs +3593 -0
  11. package/dist/runtime/milkdown/apl-2VCEVXBO.js +1 -0
  12. package/dist/runtime/milkdown/asciiarmor-ND4TKJ2V.js +1 -0
  13. package/dist/runtime/milkdown/asn1-5NCC72L6.js +1 -0
  14. package/dist/runtime/milkdown/asterisk-V3QQOGYS.js +1 -0
  15. package/dist/runtime/milkdown/block-B3H3PJID.js +1 -0
  16. package/dist/runtime/milkdown/brainfuck-SETQDLAI.js +1 -0
  17. package/dist/runtime/milkdown/chunk-23NN352E.js +1 -0
  18. package/dist/runtime/milkdown/chunk-373V6XMI.js +1 -0
  19. package/dist/runtime/milkdown/chunk-37CATSBM.js +1 -0
  20. package/dist/runtime/milkdown/chunk-3EORQGKQ.js +1 -0
  21. package/dist/runtime/milkdown/chunk-6HASM4ZR.js +1 -0
  22. package/dist/runtime/milkdown/chunk-6RGD2KUU.js +1 -0
  23. package/dist/runtime/milkdown/chunk-7CVS4AGG.js +3 -0
  24. package/dist/runtime/milkdown/chunk-BV6CAHIM.js +4 -0
  25. package/dist/runtime/milkdown/chunk-CS3PHHYU.js +0 -0
  26. package/dist/runtime/milkdown/chunk-E5R7FPWA.js +5 -0
  27. package/dist/runtime/milkdown/chunk-E6JE25ZM.js +0 -0
  28. package/dist/runtime/milkdown/chunk-FGZNEC46.js +1 -0
  29. package/dist/runtime/milkdown/chunk-FOZORPFE.js +1 -0
  30. package/dist/runtime/milkdown/chunk-GAWLLGNO.js +5 -0
  31. package/dist/runtime/milkdown/chunk-GHRUWTEV.js +1 -0
  32. package/dist/runtime/milkdown/chunk-GVZW4OO4.js +1 -0
  33. package/dist/runtime/milkdown/chunk-HDKYYBRG.js +0 -0
  34. package/dist/runtime/milkdown/chunk-KJCZ4UN6.js +1 -0
  35. package/dist/runtime/milkdown/chunk-KOCVWYBK.js +1 -0
  36. package/dist/runtime/milkdown/chunk-KXKDEYCC.js +1 -0
  37. package/dist/runtime/milkdown/chunk-LIY3GISO.js +13 -0
  38. package/dist/runtime/milkdown/chunk-MSEQNMGN.js +0 -0
  39. package/dist/runtime/milkdown/chunk-PSGXCQNW.js +1 -0
  40. package/dist/runtime/milkdown/chunk-Q5FF4VKZ.js +1 -0
  41. package/dist/runtime/milkdown/chunk-R7FZKCAV.js +1 -0
  42. package/dist/runtime/milkdown/chunk-SFCQEU26.js +1 -0
  43. package/dist/runtime/milkdown/chunk-SMRDMV2Q.js +1 -0
  44. package/dist/runtime/milkdown/chunk-TTCZLSO2.js +1 -0
  45. package/dist/runtime/milkdown/chunk-UBIXYWAI.js +13 -0
  46. package/dist/runtime/milkdown/chunk-UPNN5QP4.js +3 -0
  47. package/dist/runtime/milkdown/chunk-VBVMNS5A.js +3 -0
  48. package/dist/runtime/milkdown/chunk-VKELS2FZ.js +41 -0
  49. package/dist/runtime/milkdown/chunk-VPKKXG6L.js +1 -0
  50. package/dist/runtime/milkdown/chunk-VYL5RGSY.js +0 -0
  51. package/dist/runtime/milkdown/chunk-WGUKYDQQ.js +1 -0
  52. package/dist/runtime/milkdown/chunk-XOIKFU3P.js +4 -0
  53. package/dist/runtime/milkdown/chunk-XOU65PX7.js +1 -0
  54. package/dist/runtime/milkdown/clike-WKR6QU6G.js +1 -0
  55. package/dist/runtime/milkdown/clipboard-SGEGWVIL.js +1 -0
  56. package/dist/runtime/milkdown/clojure-7C5XMSLE.js +1 -0
  57. package/dist/runtime/milkdown/cmake-VX6UCCMV.js +1 -0
  58. package/dist/runtime/milkdown/cobol-IUBDOVSU.js +1 -0
  59. package/dist/runtime/milkdown/coffeescript-OEAM3K5M.js +1 -0
  60. package/dist/runtime/milkdown/commonlisp-LRFHKBQZ.js +1 -0
  61. package/dist/runtime/milkdown/commonmark-KYRQSFY7.js +1 -0
  62. package/dist/runtime/milkdown/core-SZ3VAN2E.js +1 -0
  63. package/dist/runtime/milkdown/crystal-7XKMI75H.js +1 -0
  64. package/dist/runtime/milkdown/css-DTJ74K4A.js +1 -0
  65. package/dist/runtime/milkdown/cursor-4RIJS7XF.js +1 -0
  66. package/dist/runtime/milkdown/cypher-Y7ZMLKQ4.js +1 -0
  67. package/dist/runtime/milkdown/d-NSEMXQMQ.js +1 -0
  68. package/dist/runtime/milkdown/diff-BO3JC62N.js +1 -0
  69. package/dist/runtime/milkdown/diff-WJOHA5PX.js +1 -0
  70. package/dist/runtime/milkdown/dist-5HJGMMBO.js +1 -0
  71. package/dist/runtime/milkdown/dist-63GMFB3D.js +1 -0
  72. package/dist/runtime/milkdown/dist-6JDVYEX3.js +1 -0
  73. package/dist/runtime/milkdown/dist-7277C2KF.js +1 -0
  74. package/dist/runtime/milkdown/dist-EG2OA4VS.js +7 -0
  75. package/dist/runtime/milkdown/dist-EHUNF6M5.js +1 -0
  76. package/dist/runtime/milkdown/dist-I3JGQGWS.js +3 -0
  77. package/dist/runtime/milkdown/dist-I3LMG6JF.js +1 -0
  78. package/dist/runtime/milkdown/dist-IIRHY5PY.js +6 -0
  79. package/dist/runtime/milkdown/dist-J2KSREXK.js +1 -0
  80. package/dist/runtime/milkdown/dist-KY7AL6FL.js +1 -0
  81. package/dist/runtime/milkdown/dist-QB3U2COU.js +1 -0
  82. package/dist/runtime/milkdown/dist-QMASZW6X.js +1 -0
  83. package/dist/runtime/milkdown/dist-RS6ERIZS.js +1 -0
  84. package/dist/runtime/milkdown/dist-TKSPPVS4.js +1 -0
  85. package/dist/runtime/milkdown/dist-U6ZG6DV6.js +1 -0
  86. package/dist/runtime/milkdown/dist-UHXLU77N.js +1 -0
  87. package/dist/runtime/milkdown/dist-WNQ5J4WR.js +2 -0
  88. package/dist/runtime/milkdown/dist-WWUPY2DM.js +1 -0
  89. package/dist/runtime/milkdown/dist-X2CT5LDV.js +1 -0
  90. package/dist/runtime/milkdown/dist-ZBCFN6O5.js +1 -0
  91. package/dist/runtime/milkdown/dockerfile-NAEEVAQU.js +1 -0
  92. package/dist/runtime/milkdown/dtd-3HSCMPBI.js +1 -0
  93. package/dist/runtime/milkdown/dylan-UCUZF6KU.js +1 -0
  94. package/dist/runtime/milkdown/ebnf-3LHOCFAJ.js +1 -0
  95. package/dist/runtime/milkdown/ecl-5R3NXF6N.js +1 -0
  96. package/dist/runtime/milkdown/eiffel-CQ4L5MSH.js +1 -0
  97. package/dist/runtime/milkdown/elm-6QYNGBQ3.js +1 -0
  98. package/dist/runtime/milkdown/erlang-6NH23EDV.js +1 -0
  99. package/dist/runtime/milkdown/esm-W3C6FIFD.js +997 -0
  100. package/dist/runtime/milkdown/factor-MYKNDQPQ.js +1 -0
  101. package/dist/runtime/milkdown/fcl-ACRUXLOI.js +1 -0
  102. package/dist/runtime/milkdown/forth-MGVKD22I.js +1 -0
  103. package/dist/runtime/milkdown/fortran-Y2LH5YJY.js +1 -0
  104. package/dist/runtime/milkdown/gas-DGW2BQT5.js +1 -0
  105. package/dist/runtime/milkdown/gfm-E3RPWLDM.js +1 -0
  106. package/dist/runtime/milkdown/gherkin-YE56IVZ5.js +1 -0
  107. package/dist/runtime/milkdown/groovy-ACMNYCLF.js +1 -0
  108. package/dist/runtime/milkdown/haskell-MIB6HZSL.js +1 -0
  109. package/dist/runtime/milkdown/haxe-TANQRBYK.js +1 -0
  110. package/dist/runtime/milkdown/history-MXXSC4BB.js +1 -0
  111. package/dist/runtime/milkdown/http-QUK2BL6J.js +1 -0
  112. package/dist/runtime/milkdown/idl-54U6ONEE.js +1 -0
  113. package/dist/runtime/milkdown/indent-DPZPSW7O.js +1 -0
  114. package/dist/runtime/milkdown/javascript-43PROIAY.js +1 -0
  115. package/dist/runtime/milkdown/julia-7E2ZIO2U.js +1 -0
  116. package/dist/runtime/milkdown/lib-OHEPSUTR.js +1 -0
  117. package/dist/runtime/milkdown/lib-ULUU3LBY.js +1 -0
  118. package/dist/runtime/milkdown/listener-YERMSFXE.js +1 -0
  119. package/dist/runtime/milkdown/livescript-SUEXR7PK.js +1 -0
  120. package/dist/runtime/milkdown/lua-QNGITPQK.js +1 -0
  121. package/dist/runtime/milkdown/mathematica-HJQQXVFC.js +1 -0
  122. package/dist/runtime/milkdown/mbox-F6SUCJVD.js +1 -0
  123. package/dist/runtime/milkdown/milkdown-editor.js +1 -0
  124. package/dist/runtime/milkdown/milkdown-text-editor.js +1 -0
  125. package/dist/runtime/milkdown/mirc-7S5H76VB.js +1 -0
  126. package/dist/runtime/milkdown/mllike-TTW7I7W4.js +1 -0
  127. package/dist/runtime/milkdown/model-YUHBWZ3A.js +1 -0
  128. package/dist/runtime/milkdown/modelica-3POMKZFY.js +1 -0
  129. package/dist/runtime/milkdown/mscgen-IKAT43RT.js +1 -0
  130. package/dist/runtime/milkdown/mumps-XZE3RMGJ.js +1 -0
  131. package/dist/runtime/milkdown/nginx-QCVWU6DV.js +1 -0
  132. package/dist/runtime/milkdown/nsis-2G5LLGBI.js +1 -0
  133. package/dist/runtime/milkdown/ntriples-T6AMEY2C.js +1 -0
  134. package/dist/runtime/milkdown/octave-64EAJHKR.js +1 -0
  135. package/dist/runtime/milkdown/oz-7QHCZG72.js +1 -0
  136. package/dist/runtime/milkdown/pascal-KWNZTZKE.js +1 -0
  137. package/dist/runtime/milkdown/perl-KX75FRG7.js +1 -0
  138. package/dist/runtime/milkdown/pig-YA2LFBUW.js +1 -0
  139. package/dist/runtime/milkdown/powershell-SONNWKJG.js +1 -0
  140. package/dist/runtime/milkdown/properties-MEUWSNZY.js +1 -0
  141. package/dist/runtime/milkdown/protobuf-RKCPHWGY.js +1 -0
  142. package/dist/runtime/milkdown/pug-VWTHDU4H.js +1 -0
  143. package/dist/runtime/milkdown/puppet-JMZDB2TG.js +1 -0
  144. package/dist/runtime/milkdown/python-GVEPBHD7.js +1 -0
  145. package/dist/runtime/milkdown/q-QBK3FAEX.js +1 -0
  146. package/dist/runtime/milkdown/r-QZYPZHNL.js +1 -0
  147. package/dist/runtime/milkdown/rpm-DU7TLFAI.js +1 -0
  148. package/dist/runtime/milkdown/ruby-DMEPZV6P.js +1 -0
  149. package/dist/runtime/milkdown/sas-UQCOIXSD.js +1 -0
  150. package/dist/runtime/milkdown/scheme-ABXYL6GU.js +1 -0
  151. package/dist/runtime/milkdown/shell-M3XELTMZ.js +1 -0
  152. package/dist/runtime/milkdown/sieve-MUKKCDBZ.js +1 -0
  153. package/dist/runtime/milkdown/slash-WRZAFLVA.js +1 -0
  154. package/dist/runtime/milkdown/smalltalk-P4FKOVAU.js +1 -0
  155. package/dist/runtime/milkdown/solr-HHKG4NNK.js +1 -0
  156. package/dist/runtime/milkdown/sparql-5YJAIBWN.js +1 -0
  157. package/dist/runtime/milkdown/spreadsheet-M3SEYOFV.js +1 -0
  158. package/dist/runtime/milkdown/sql-Z6C3KTS5.js +1 -0
  159. package/dist/runtime/milkdown/stex-MO67FBMF.js +1 -0
  160. package/dist/runtime/milkdown/streaming-ODT2C2AX.js +1 -0
  161. package/dist/runtime/milkdown/stylus-JEMVT3OU.js +1 -0
  162. package/dist/runtime/milkdown/swift-HP7RYRJA.js +1 -0
  163. package/dist/runtime/milkdown/tcl-WPHRLNQC.js +1 -0
  164. package/dist/runtime/milkdown/textile-3LZDM6IW.js +1 -0
  165. package/dist/runtime/milkdown/theme/common/@milkdown/kit/prose/gapcursor/style/gapcursor.css +25 -0
  166. package/dist/runtime/milkdown/theme/common/@milkdown/kit/prose/tables/style/tables.css +48 -0
  167. package/dist/runtime/milkdown/theme/common/@milkdown/kit/prose/view/style/prosemirror.css +54 -0
  168. package/dist/runtime/milkdown/theme/common/ai.css +446 -0
  169. package/dist/runtime/milkdown/theme/common/block-edit.css +131 -0
  170. package/dist/runtime/milkdown/theme/common/code-mirror.css +347 -0
  171. package/dist/runtime/milkdown/theme/common/cursor.css +22 -0
  172. package/dist/runtime/milkdown/theme/common/diff.css +177 -0
  173. package/dist/runtime/milkdown/theme/common/image-block.css +384 -0
  174. package/dist/runtime/milkdown/theme/common/latex.css +42 -0
  175. package/dist/runtime/milkdown/theme/common/link-tooltip.css +107 -0
  176. package/dist/runtime/milkdown/theme/common/list-item.css +50 -0
  177. package/dist/runtime/milkdown/theme/common/placeholder.css +11 -0
  178. package/dist/runtime/milkdown/theme/common/prosemirror-virtual-cursor/style/virtual-cursor.css +51 -0
  179. package/dist/runtime/milkdown/theme/common/prosemirror.css +1 -0
  180. package/dist/runtime/milkdown/theme/common/reset.css +289 -0
  181. package/dist/runtime/milkdown/theme/common/style.css +15 -0
  182. package/dist/runtime/milkdown/theme/common/table.css +219 -0
  183. package/dist/runtime/milkdown/theme/common/toolbar.css +50 -0
  184. package/dist/runtime/milkdown/theme/common/top-bar.css +152 -0
  185. package/dist/runtime/milkdown/tiddlywiki-LMGAXCWG.js +1 -0
  186. package/dist/runtime/milkdown/tiki-SC7NYLRG.js +1 -0
  187. package/dist/runtime/milkdown/toml-VBRI3ILD.js +1 -0
  188. package/dist/runtime/milkdown/tooltip-MQR7E3GN.js +1 -0
  189. package/dist/runtime/milkdown/troff-MZNIC3MS.js +1 -0
  190. package/dist/runtime/milkdown/ttcn-ZUOU74GM.js +1 -0
  191. package/dist/runtime/milkdown/ttcn-cfg-2JJUM5CY.js +1 -0
  192. package/dist/runtime/milkdown/turtle-SNBPEJHA.js +1 -0
  193. package/dist/runtime/milkdown/upload-4DLRUKG7.js +1 -0
  194. package/dist/runtime/milkdown/utils-RGFMAFOI.js +1 -0
  195. package/dist/runtime/milkdown/vb-U45Y75DV.js +1 -0
  196. package/dist/runtime/milkdown/vbscript-XTRRB36U.js +1 -0
  197. package/dist/runtime/milkdown/velocity-Y7TX26SP.js +1 -0
  198. package/dist/runtime/milkdown/verilog-IFT4S6MZ.js +1 -0
  199. package/dist/runtime/milkdown/vhdl-CK4X465M.js +1 -0
  200. package/dist/runtime/milkdown/webidl-N7XOMHHB.js +1 -0
  201. package/dist/runtime/milkdown/xquery-EPMIEXTW.js +1 -0
  202. package/dist/runtime/milkdown/y-webrtc-MVXVFPYO.js +2 -0
  203. package/dist/runtime/milkdown/yacas-A74LVH45.js +1 -0
  204. package/dist/runtime/milkdown/yjs-L4ZX4CJ5.js +1 -0
  205. package/dist/runtime/milkdown/z80-NVBCD5FV.js +1 -0
  206. package/docs/blocks.md +4 -2
  207. package/docs/components/markdown.md +2 -2
  208. package/docs/components/text-editor.md +37 -3
  209. package/docs/icons.md +4 -2
  210. package/docs/installation.md +36 -28
  211. package/docs/owl-components.md +7 -5
  212. package/docs/theming.md +2 -2
  213. package/docs/usage-guide.md +64 -60
  214. package/package.json +8 -2
@@ -0,0 +1,446 @@
1
+ /* Every selector lives under `.milkdown` so the AI feature's class names
2
+ (which include generic ones like `.ai-instruction-*`) can't leak into
3
+ host applications that happen to reuse the same names. Mirrors the
4
+ pattern used by the other Crepe theme files. */
5
+
6
+ /* AI Instruction Tooltip */
7
+ .milkdown .milkdown-ai-instruction {
8
+ position: absolute;
9
+ z-index: 10;
10
+ }
11
+
12
+ .milkdown .milkdown-ai-instruction[data-show='false'] {
13
+ display: none;
14
+ }
15
+
16
+ .milkdown .milkdown-ai-instruction > .ai-instruction {
17
+ width: 360px;
18
+ background: var(--crepe-color-surface);
19
+ border-radius: 12px;
20
+ box-shadow: var(--crepe-shadow-2);
21
+ font-family: var(--crepe-font-default);
22
+ font-size: calc(var(--crepe-base-font-size, 16px) * 0.875);
23
+ color: var(--crepe-color-on-background);
24
+ overflow: hidden;
25
+ }
26
+
27
+ .milkdown .ai-instruction-input {
28
+ display: flex;
29
+ align-items: center;
30
+ gap: 8px;
31
+ margin: 8px;
32
+ padding: 4px 4px 4px 12px;
33
+ background: var(--crepe-color-background);
34
+ border: 1px solid
35
+ color-mix(in srgb, var(--crepe-color-primary) 35%, transparent);
36
+ border-radius: 999px;
37
+ }
38
+
39
+ .milkdown .ai-instruction-input-prefix {
40
+ display: inline-flex;
41
+ align-items: center;
42
+ flex-shrink: 0;
43
+ color: var(--crepe-color-primary);
44
+ }
45
+
46
+ .milkdown .ai-instruction-input-prefix svg {
47
+ width: 18px;
48
+ height: 18px;
49
+ color: var(--crepe-color-primary);
50
+ fill: var(--crepe-color-primary);
51
+ }
52
+
53
+ .milkdown .ai-instruction-input-field {
54
+ flex: 1;
55
+ min-width: 0;
56
+ outline: none;
57
+ border: none;
58
+ background: transparent;
59
+ font-family: inherit;
60
+ font-size: calc(var(--crepe-base-font-size, 16px) * 0.875);
61
+ line-height: 20px;
62
+ color: var(--crepe-color-on-background);
63
+ padding: 4px 0;
64
+ }
65
+
66
+ .milkdown .ai-instruction-input-field::-moz-placeholder {
67
+ color: var(--crepe-color-outline);
68
+ }
69
+
70
+ .milkdown .ai-instruction-input-field::placeholder {
71
+ color: var(--crepe-color-outline);
72
+ }
73
+
74
+ .milkdown .ai-instruction-submit {
75
+ display: inline-flex;
76
+ align-items: center;
77
+ justify-content: center;
78
+ width: 28px;
79
+ height: 28px;
80
+ border-radius: 50%;
81
+ background: var(--crepe-color-primary);
82
+ color: var(--crepe-color-on-inverse);
83
+ border: none;
84
+ cursor: pointer;
85
+ flex-shrink: 0;
86
+ padding: 0;
87
+ }
88
+
89
+ .milkdown .ai-instruction-submit svg {
90
+ width: 16px;
91
+ height: 16px;
92
+ color: var(--crepe-color-on-inverse);
93
+ fill: var(--crepe-color-on-inverse);
94
+ }
95
+
96
+ .milkdown .ai-instruction-submit:hover:not(:disabled) {
97
+ background: color-mix(in srgb, var(--crepe-color-primary) 85%, white);
98
+ }
99
+
100
+ .milkdown .ai-instruction-submit:disabled {
101
+ opacity: 0.4;
102
+ cursor: not-allowed;
103
+ }
104
+
105
+ .milkdown .ai-instruction-list {
106
+ max-height: 320px;
107
+ overflow-y: auto;
108
+ padding-bottom: 6px;
109
+ }
110
+
111
+ .milkdown .ai-instruction-back {
112
+ /* Rendered as a real <button> for keyboard / screen-reader access;
113
+ reset the user-agent button styling so it visually matches the
114
+ surrounding palette chrome. */
115
+ -webkit-appearance: none;
116
+ -moz-appearance: none;
117
+ appearance: none;
118
+ background: transparent;
119
+ border: none;
120
+ width: 100%;
121
+ text-align: left;
122
+ font-family: inherit;
123
+ display: flex;
124
+ align-items: center;
125
+ gap: 6px;
126
+ padding: 6px 12px 4px;
127
+ cursor: pointer;
128
+ color: var(--crepe-color-outline);
129
+ font-size: calc(var(--crepe-base-font-size, 16px) * 0.75);
130
+ font-weight: 500;
131
+ -webkit-user-select: none;
132
+ -moz-user-select: none;
133
+ user-select: none;
134
+ }
135
+
136
+ .milkdown .ai-instruction-back:hover {
137
+ color: var(--crepe-color-on-background);
138
+ }
139
+
140
+ .milkdown .ai-instruction-back-icon {
141
+ display: inline-flex;
142
+ }
143
+
144
+ .milkdown .ai-instruction-back-icon svg {
145
+ width: 16px;
146
+ height: 16px;
147
+ stroke: currentColor;
148
+ }
149
+
150
+ .milkdown .ai-instruction-section {
151
+ display: flex;
152
+ flex-direction: column;
153
+ }
154
+
155
+ .milkdown .ai-instruction-section-header {
156
+ padding: 6px 16px 4px;
157
+ font-size: calc(var(--crepe-base-font-size, 16px) * 0.6875);
158
+ font-weight: 600;
159
+ letter-spacing: 0.08em;
160
+ color: var(--crepe-color-outline);
161
+ text-transform: uppercase;
162
+ -webkit-user-select: none;
163
+ -moz-user-select: none;
164
+ user-select: none;
165
+ }
166
+
167
+ .milkdown .ai-instruction-item {
168
+ display: flex;
169
+ align-items: center;
170
+ gap: 12px;
171
+ padding: 8px 16px;
172
+ cursor: pointer;
173
+ -webkit-user-select: none;
174
+ -moz-user-select: none;
175
+ user-select: none;
176
+ color: var(--crepe-color-on-background);
177
+ }
178
+
179
+ .milkdown .ai-instruction-item.active {
180
+ background: var(--crepe-color-hover);
181
+ }
182
+
183
+ .milkdown .ai-instruction-item-icon {
184
+ display: inline-flex;
185
+ align-items: center;
186
+ justify-content: center;
187
+ flex-shrink: 0;
188
+ width: 20px;
189
+ height: 20px;
190
+ }
191
+
192
+ .milkdown .ai-instruction-item-icon svg {
193
+ width: 18px;
194
+ height: 18px;
195
+ color: var(--crepe-color-on-surface-variant);
196
+ fill: var(--crepe-color-on-surface-variant);
197
+ stroke: var(--crepe-color-on-surface-variant);
198
+ }
199
+
200
+ .milkdown .ai-instruction-item-label {
201
+ flex: 1;
202
+ font-size: calc(var(--crepe-base-font-size, 16px) * 0.875);
203
+ line-height: 20px;
204
+ overflow: hidden;
205
+ text-overflow: ellipsis;
206
+ white-space: nowrap;
207
+ }
208
+
209
+ .milkdown .ai-instruction-item-label mark {
210
+ background: var(--crepe-color-secondary);
211
+ color: inherit;
212
+ border-radius: 2px;
213
+ padding: 0 1px;
214
+ }
215
+
216
+ .milkdown .ai-instruction-item-arrow {
217
+ display: inline-flex;
218
+ flex-shrink: 0;
219
+ color: var(--crepe-color-outline);
220
+ }
221
+
222
+ .milkdown .ai-instruction-item-arrow svg {
223
+ width: 14px;
224
+ height: 14px;
225
+ stroke: currentColor;
226
+ }
227
+
228
+ .milkdown .ai-instruction-item-prompt .ai-instruction-item-label {
229
+ color: var(--crepe-color-primary);
230
+ }
231
+
232
+ .milkdown .ai-instruction-item-prompt .ai-instruction-item-icon svg {
233
+ color: var(--crepe-color-primary);
234
+ fill: var(--crepe-color-primary);
235
+ }
236
+
237
+ .milkdown .ai-instruction-item-quote {
238
+ font-weight: 500;
239
+ }
240
+
241
+ .milkdown .ai-instruction-item-shortcut {
242
+ display: inline-flex;
243
+ align-items: center;
244
+ justify-content: center;
245
+ min-width: 24px;
246
+ height: 20px;
247
+ padding: 0 4px;
248
+ border-radius: 4px;
249
+ background: var(--crepe-color-surface-low);
250
+ color: var(--crepe-color-outline);
251
+ flex-shrink: 0;
252
+ }
253
+
254
+ .milkdown .ai-instruction-item-shortcut svg {
255
+ width: 14px;
256
+ height: 14px;
257
+ color: var(--crepe-color-outline);
258
+ fill: var(--crepe-color-outline);
259
+ }
260
+
261
+ /* Streaming Indicator */
262
+ .milkdown .milkdown-ai-streaming-indicator {
263
+ display: inline-flex;
264
+ align-items: center;
265
+ gap: 8px;
266
+ padding: 4px 6px 4px 12px;
267
+ margin: 4px 0;
268
+ border-radius: 999px;
269
+ border: 1px solid
270
+ color-mix(in srgb, var(--crepe-color-primary) 20%, transparent);
271
+ background: var(--crepe-color-surface);
272
+ vertical-align: middle;
273
+ white-space: nowrap;
274
+ -webkit-user-select: none;
275
+ -moz-user-select: none;
276
+ user-select: none;
277
+ font-family: var(--crepe-font-default);
278
+ }
279
+
280
+ .milkdown .milkdown-ai-streaming-spinner {
281
+ width: 14px;
282
+ height: 14px;
283
+ border-radius: 50%;
284
+ border: 1.5px solid
285
+ color-mix(in srgb, var(--crepe-color-primary) 25%, transparent);
286
+ border-top-color: var(--crepe-color-primary);
287
+ flex-shrink: 0;
288
+ /* Rotation is driven by requestAnimationFrame in JS so it survives
289
+ DOM re-mounts when the indicator's position advances. */
290
+ will-change: transform;
291
+ }
292
+
293
+ .milkdown .milkdown-ai-streaming-label {
294
+ font-size: calc(var(--crepe-base-font-size, 16px) * 0.8125);
295
+ line-height: 18px;
296
+ color: var(--crepe-color-on-background);
297
+ }
298
+
299
+ .milkdown .milkdown-ai-streaming-esc {
300
+ font-family: var(--crepe-font-code, ui-monospace, monospace);
301
+ font-size: calc(var(--crepe-base-font-size, 16px) * 0.6875);
302
+ line-height: 1;
303
+ padding: 4px 8px;
304
+ border-radius: 999px;
305
+ background: var(--crepe-color-surface-low);
306
+ color: var(--crepe-color-outline);
307
+ }
308
+
309
+ /* Diff Actions Panel — appended to the editor's `.milkdown` host so the
310
+ descendant selector below matches even though `position: fixed` takes
311
+ the panel out of normal flow. */
312
+ .milkdown .milkdown-ai-diff-actions {
313
+ position: fixed;
314
+ bottom: 24px;
315
+ left: 50%;
316
+ transform: translateX(-50%);
317
+ z-index: 11;
318
+ display: flex;
319
+ align-items: center;
320
+ gap: 4px;
321
+ padding: 6px;
322
+ background: var(--crepe-color-surface);
323
+ border: 1px solid
324
+ color-mix(in srgb, var(--crepe-color-primary) 18%, transparent);
325
+ border-radius: 999px;
326
+ box-shadow: var(--crepe-shadow-2);
327
+ font-family: var(--crepe-font-default);
328
+ -webkit-user-select: none;
329
+ -moz-user-select: none;
330
+ user-select: none;
331
+ }
332
+
333
+ .milkdown .milkdown-ai-diff-actions[data-show='false'] {
334
+ display: none;
335
+ }
336
+
337
+ .milkdown .milkdown-ai-diff-actions-btn {
338
+ display: inline-flex;
339
+ align-items: center;
340
+ gap: 6px;
341
+ padding: 8px 14px;
342
+ border: none;
343
+ border-radius: 999px;
344
+ background: transparent;
345
+ font-family: inherit;
346
+ font-size: calc(var(--crepe-base-font-size, 16px) * 0.8125);
347
+ font-weight: 500;
348
+ line-height: 1;
349
+ color: var(--crepe-color-on-background);
350
+ cursor: pointer;
351
+ white-space: nowrap;
352
+ }
353
+
354
+ .milkdown .milkdown-ai-diff-actions-btn:hover {
355
+ background: var(--crepe-color-hover);
356
+ }
357
+
358
+ .milkdown .milkdown-ai-diff-actions-btn:disabled {
359
+ opacity: 0.4;
360
+ cursor: not-allowed;
361
+ }
362
+
363
+ .milkdown .milkdown-ai-diff-actions-btn:disabled:hover {
364
+ background: transparent;
365
+ }
366
+
367
+ .milkdown .milkdown-ai-diff-actions-icon {
368
+ display: inline-flex;
369
+ align-items: center;
370
+ justify-content: center;
371
+ width: 18px;
372
+ height: 18px;
373
+ }
374
+
375
+ .milkdown .milkdown-ai-diff-actions-icon svg {
376
+ width: 16px;
377
+ height: 16px;
378
+ color: currentColor;
379
+ fill: currentColor;
380
+ }
381
+
382
+ .milkdown .milkdown-ai-diff-actions-btn-retry {
383
+ color: var(--crepe-color-on-surface-variant);
384
+ }
385
+
386
+ .milkdown .milkdown-ai-diff-actions-btn-reject {
387
+ color: var(--crepe-color-diff-removed-text, #ba1a1a);
388
+ background: color-mix(
389
+ in srgb,
390
+ var(--crepe-color-diff-removed, #ef4444) 8%,
391
+ transparent
392
+ );
393
+ }
394
+
395
+ .milkdown .milkdown-ai-diff-actions-btn-reject:hover {
396
+ background: color-mix(
397
+ in srgb,
398
+ var(--crepe-color-diff-removed, #ef4444) 16%,
399
+ transparent
400
+ );
401
+ }
402
+
403
+ .milkdown .milkdown-ai-diff-actions-btn-accept {
404
+ color: var(--crepe-color-diff-added-text, #166534);
405
+ background: color-mix(
406
+ in srgb,
407
+ var(--crepe-color-diff-added, #22c55e) 12%,
408
+ transparent
409
+ );
410
+ }
411
+
412
+ .milkdown .milkdown-ai-diff-actions-btn-accept:hover {
413
+ background: color-mix(
414
+ in srgb,
415
+ var(--crepe-color-diff-added, #22c55e) 22%,
416
+ transparent
417
+ );
418
+ }
419
+
420
+ .milkdown .milkdown-ai-diff-actions-shortcut {
421
+ display: inline-flex;
422
+ align-items: center;
423
+ gap: 2px;
424
+ margin-left: 4px;
425
+ padding: 3px 6px;
426
+ border-radius: 4px;
427
+ background: color-mix(
428
+ in srgb,
429
+ var(--crepe-color-diff-added, #22c55e) 14%,
430
+ transparent
431
+ );
432
+ font-family: var(--crepe-font-code, ui-monospace, monospace);
433
+ font-size: calc(var(--crepe-base-font-size, 16px) * 0.6875);
434
+ color: inherit;
435
+ }
436
+
437
+ .milkdown .milkdown-ai-diff-actions-shortcut-icon {
438
+ display: inline-flex;
439
+ }
440
+
441
+ .milkdown .milkdown-ai-diff-actions-shortcut-icon svg {
442
+ width: 12px;
443
+ height: 12px;
444
+ color: currentColor;
445
+ fill: currentColor;
446
+ }
@@ -0,0 +1,131 @@
1
+ .milkdown .milkdown-block-handle[data-show='false'] {
2
+ opacity: 0;
3
+ pointer-events: none;
4
+ }
5
+ .milkdown .milkdown-block-handle {
6
+ transition: all 0.2s;
7
+ position: absolute;
8
+ cursor: pointer;
9
+ display: flex;
10
+ justify-content: center;
11
+ align-items: center;
12
+ gap: 2px;
13
+ }
14
+ .milkdown .milkdown-block-handle .operation-item {
15
+ border-radius: 4px;
16
+ width: 32px;
17
+ height: 32px;
18
+ padding: 4px;
19
+ }
20
+ .milkdown .milkdown-block-handle .operation-item svg {
21
+ width: 24px;
22
+ height: 24px;
23
+ fill: var(--crepe-color-outline);
24
+ }
25
+ .milkdown .milkdown-block-handle .operation-item:hover {
26
+ background: var(--crepe-color-hover);
27
+ }
28
+ .milkdown .milkdown-block-handle .operation-item.active {
29
+ background: var(--crepe-color-selected);
30
+ }
31
+ .milkdown .milkdown-slash-menu[data-show='false'] {
32
+ display: none;
33
+ }
34
+ .milkdown .milkdown-slash-menu {
35
+ position: absolute;
36
+ z-index: 10;
37
+ display: block;
38
+ font-family: var(--crepe-font-default);
39
+ color: var(--crepe-color-on-surface);
40
+ background: var(--crepe-color-surface);
41
+ border-radius: 12px;
42
+ box-shadow: var(--crepe-shadow-1);
43
+ }
44
+ .milkdown .milkdown-slash-menu ul {
45
+ list-style-type: none;
46
+ }
47
+ .milkdown .milkdown-slash-menu ul li {
48
+ cursor: pointer;
49
+ border-radius: 8px;
50
+ }
51
+ .milkdown .milkdown-slash-menu .tab-group {
52
+ border-bottom: 1px solid
53
+ color-mix(in srgb, var(--crepe-color-outline), transparent 80%);
54
+ padding: 12px 12px 0;
55
+ }
56
+ .milkdown .milkdown-slash-menu .tab-group ul {
57
+ padding: 8px 10px;
58
+ display: flex;
59
+ gap: 10px;
60
+ flex-wrap: nowrap;
61
+ }
62
+ .milkdown .milkdown-slash-menu .tab-group ul li {
63
+ padding: 6px 10px;
64
+ font-size: calc(var(--crepe-base-font-size, 16px) * 0.875);
65
+ font-style: normal;
66
+ font-weight: 600;
67
+ line-height: 20px;
68
+ }
69
+ .milkdown .milkdown-slash-menu .tab-group ul li:hover {
70
+ background: var(--crepe-color-hover);
71
+ }
72
+ .milkdown .milkdown-slash-menu .tab-group ul li.selected {
73
+ background: var(--crepe-color-selected);
74
+ }
75
+ .milkdown .milkdown-slash-menu .menu-groups {
76
+ padding: 0 12px 12px;
77
+ max-height: 420px;
78
+ overflow: auto;
79
+ overscroll-behavior: contain;
80
+ scroll-behavior: smooth;
81
+ }
82
+ .milkdown .milkdown-slash-menu .menu-groups .menu-group h6 {
83
+ font-size: calc(var(--crepe-base-font-size, 16px) * 0.875);
84
+ font-style: normal;
85
+ font-weight: 600;
86
+ line-height: 20px;
87
+ padding: 14px 10px;
88
+ text-transform: uppercase;
89
+ color: color-mix(
90
+ in srgb,
91
+ var(--crepe-color-on-surface),
92
+ transparent 40%
93
+ );
94
+ }
95
+ .milkdown .milkdown-slash-menu .menu-groups .menu-group li {
96
+ min-width: 220px;
97
+ display: flex;
98
+ justify-content: flex-start;
99
+ align-items: center;
100
+ gap: 16px;
101
+ padding: 14px 10px;
102
+ }
103
+ .milkdown .milkdown-slash-menu .menu-groups .menu-group li.hover {
104
+ background: var(--crepe-color-hover);
105
+ }
106
+ .milkdown .milkdown-slash-menu .menu-groups .menu-group li.active {
107
+ background: var(--crepe-color-selected);
108
+ }
109
+ .milkdown .milkdown-slash-menu .menu-groups .menu-group li svg {
110
+ width: 24px;
111
+ height: 24px;
112
+ color: var(--crepe-color-outline);
113
+ fill: var(--crepe-color-outline);
114
+ }
115
+ .milkdown .milkdown-slash-menu .menu-groups .menu-group li > span {
116
+ font-size: calc(var(--crepe-base-font-size, 16px) * 0.875);
117
+ font-style: normal;
118
+ font-weight: 600;
119
+ line-height: 20px;
120
+ }
121
+ .milkdown .milkdown-slash-menu .menu-groups .menu-group + .menu-group::before {
122
+ content: '';
123
+ display: block;
124
+ height: 1px;
125
+ background: color-mix(
126
+ in srgb,
127
+ var(--crepe-color-outline),
128
+ transparent 80%
129
+ );
130
+ margin: 0 10px;
131
+ }