@kungal/ui-vue 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/prose.css ADDED
@@ -0,0 +1,292 @@
1
+ /*
2
+ * @kungal/ui-vue/prose.css — OPT-IN editorial Markdown/prose typography.
3
+ *
4
+ * import '@kungal/ui-vue/prose.css'
5
+ *
6
+ * Styles any `.kun-prose` container (KunContent applies that class). It is a
7
+ * SEPARATE import on purpose: KunContent itself only ships *behavior* (sanitize,
8
+ * lightbox, spoilers, code-copy) in the main style.css, so a downstream that
9
+ * already owns its own `.kun-prose` typography (e.g. kun-galgame-forum, moyu,
10
+ * wiki) is NOT affected — it simply doesn't import this file. New consumers that
11
+ * want beautiful defaults opt in here.
12
+ *
13
+ * Token-driven, so it adapts to light/dark automatically. The theme stores
14
+ * colours as comma HSL *channels* (`--foreground: 202, 24%, 9%`), so alpha uses
15
+ * legacy `hsla(var(--x), a)` — NOT `hsl(var(--x) / a)`. `--color-kun-border` is
16
+ * already a full neutral `hsl()` colour. Neutral foreground/content tokens drive
17
+ * body + chrome; `--primary-*` only links and the blockquote rule.
18
+ *
19
+ * Pass `compact` to KunContent (or add `.kun-prose-compact`) for a tighter
20
+ * density — meant for comment / reply streams.
21
+ */
22
+
23
+ .kun-prose {
24
+ max-width: 40rem;
25
+ margin-inline: auto;
26
+ font-size: 1.0625rem; /* 17px — editorial body */
27
+ line-height: 1.8; /* generous leading, kind to CJK */
28
+ color: hsl(var(--foreground));
29
+ text-wrap: pretty;
30
+ overflow-wrap: break-word;
31
+ }
32
+ .kun-prose > :first-child {
33
+ margin-top: 0;
34
+ }
35
+ .kun-prose > :last-child {
36
+ margin-bottom: 0;
37
+ }
38
+
39
+ .kun-prose p {
40
+ margin: 1.25em 0;
41
+ }
42
+
43
+ /* Headings — modular scale ~1.25; top-margin ≫ bottom so a heading groups with
44
+ the content that follows it. */
45
+ .kun-prose h1,
46
+ .kun-prose h2,
47
+ .kun-prose h3,
48
+ .kun-prose h4,
49
+ .kun-prose h5,
50
+ .kun-prose h6 {
51
+ color: hsl(var(--foreground));
52
+ line-height: 1.3;
53
+ text-wrap: balance;
54
+ scroll-margin-top: 5rem;
55
+ }
56
+ .kun-prose h1 {
57
+ font-size: 2.125em; /* ~36px */
58
+ font-weight: 700;
59
+ line-height: 1.15;
60
+ letter-spacing: -0.012em;
61
+ margin: 0 0 0.7em;
62
+ }
63
+ .kun-prose h2 {
64
+ font-size: 1.53em; /* ~26px */
65
+ font-weight: 650;
66
+ letter-spacing: -0.01em;
67
+ margin: 2.4em 0 0.85em;
68
+ }
69
+ .kun-prose h3 {
70
+ font-size: 1.235em; /* ~21px */
71
+ font-weight: 600;
72
+ margin: 1.9em 0 0.6em;
73
+ }
74
+ .kun-prose h4 {
75
+ font-size: 1.06em; /* ~18px */
76
+ font-weight: 600;
77
+ line-height: 1.5;
78
+ margin: 1.6em 0 0.5em;
79
+ }
80
+ .kun-prose h5 {
81
+ font-size: 0.95em;
82
+ font-weight: 600;
83
+ margin: 1.5em 0 0.4em;
84
+ }
85
+ .kun-prose h6 {
86
+ font-size: 0.9em;
87
+ font-weight: 600;
88
+ color: hsla(var(--foreground), 0.65);
89
+ margin: 1.5em 0 0.4em;
90
+ }
91
+
92
+ /* Inline */
93
+ .kun-prose strong,
94
+ .kun-prose b {
95
+ font-weight: 650;
96
+ color: hsl(var(--foreground));
97
+ }
98
+ .kun-prose em,
99
+ .kun-prose i {
100
+ font-style: italic;
101
+ }
102
+ .kun-prose a {
103
+ color: hsl(var(--primary-600));
104
+ font-weight: 500;
105
+ text-decoration: underline;
106
+ text-decoration-thickness: 1px;
107
+ text-underline-offset: 2px;
108
+ transition: color 0.15s var(--ease-kun-standard, ease);
109
+ }
110
+ .kun-prose a:hover {
111
+ color: hsl(var(--primary-500));
112
+ }
113
+ .kun-prose mark {
114
+ background: hsla(var(--warning-300, 45, 93%, 64%), 0.55);
115
+ color: hsl(var(--foreground));
116
+ padding: 0.05em 0.25em;
117
+ border-radius: 0.25em;
118
+ }
119
+
120
+ /* Lists */
121
+ .kun-prose ul,
122
+ .kun-prose ol {
123
+ margin: 1.25em 0;
124
+ padding-left: 1.6em;
125
+ }
126
+ .kun-prose ul {
127
+ list-style: disc;
128
+ }
129
+ .kun-prose ol {
130
+ list-style: decimal;
131
+ }
132
+ .kun-prose li {
133
+ margin: 0.4em 0;
134
+ padding-left: 0.25em;
135
+ }
136
+ .kun-prose li::marker {
137
+ color: hsla(var(--foreground), 0.45);
138
+ }
139
+ .kun-prose ul ul,
140
+ .kun-prose ul ol,
141
+ .kun-prose ol ul,
142
+ .kun-prose ol ol {
143
+ margin: 0.4em 0;
144
+ }
145
+ .kun-prose li > p {
146
+ margin: 0.4em 0;
147
+ }
148
+
149
+ /* Blockquote — left rule + muted, upright (no italic, kinder to CJK) */
150
+ .kun-prose blockquote {
151
+ margin: 1.6em 0;
152
+ padding: 0.2em 0 0.2em 1.1em;
153
+ border-left: 3px solid hsl(var(--primary-400));
154
+ color: hsla(var(--foreground), 0.72);
155
+ font-style: normal;
156
+ }
157
+ .kun-prose blockquote p {
158
+ margin: 0.5em 0;
159
+ }
160
+
161
+ /* Code */
162
+ .kun-prose code {
163
+ font-family:
164
+ ui-monospace, SFMono-Regular, Menlo, Consolas, 'Liberation Mono', monospace;
165
+ font-size: 0.875em;
166
+ background: hsl(var(--content2));
167
+ border: 1px solid var(--color-kun-border, hsla(var(--foreground), 0.12));
168
+ border-radius: 0.375em;
169
+ padding: 0.12em 0.4em;
170
+ }
171
+ .kun-prose pre {
172
+ position: relative; /* anchors the injected copy button */
173
+ margin: 1.5em 0;
174
+ padding: 1em 1.15em;
175
+ background: hsl(var(--content2));
176
+ border: 1px solid var(--color-kun-border, hsla(var(--foreground), 0.12));
177
+ border-radius: 0.75rem;
178
+ overflow-x: auto;
179
+ font-size: 0.9em;
180
+ line-height: 1.7;
181
+ }
182
+ .kun-prose pre code {
183
+ background: none;
184
+ border: 0;
185
+ border-radius: 0;
186
+ padding: 0;
187
+ font-size: inherit;
188
+ }
189
+
190
+ /* Tables */
191
+ .kun-prose table {
192
+ width: 100%;
193
+ margin: 1.6em 0;
194
+ border-collapse: collapse;
195
+ font-size: 0.925em;
196
+ line-height: 1.5;
197
+ }
198
+ .kun-prose thead th {
199
+ text-align: left;
200
+ font-weight: 650;
201
+ padding: 0.6em 0.85em;
202
+ border-bottom: 2px solid var(--color-kun-border, hsla(var(--foreground), 0.16));
203
+ }
204
+ .kun-prose tbody td {
205
+ padding: 0.6em 0.85em;
206
+ border-bottom: 1px solid var(--color-kun-border, hsla(var(--foreground), 0.1));
207
+ }
208
+ .kun-prose tbody tr:last-child td {
209
+ border-bottom: 0;
210
+ }
211
+
212
+ /* Rule + media */
213
+ .kun-prose hr {
214
+ border: 0;
215
+ border-top: 1px solid var(--color-kun-border, hsla(var(--foreground), 0.12));
216
+ margin: 3em 0;
217
+ }
218
+ .kun-prose img,
219
+ .kun-prose video {
220
+ max-width: 100%;
221
+ height: auto;
222
+ border-radius: 0.75rem;
223
+ margin: 1.75em 0;
224
+ }
225
+
226
+ /* Keyboard key */
227
+ .kun-prose kbd {
228
+ font-family: ui-monospace, monospace;
229
+ font-size: 0.8em;
230
+ padding: 0.15em 0.45em;
231
+ border-radius: 0.375em;
232
+ background: hsl(var(--content2));
233
+ border: 1px solid var(--color-kun-border, hsla(var(--foreground), 0.14));
234
+ box-shadow: 0 1px 0 hsla(var(--foreground), 0.12);
235
+ }
236
+
237
+ /* ── Compact density (comment / reply streams) ───────────────────────────────
238
+ Tighter base, leading and spacing; smaller heading scale; fills its container
239
+ instead of centring on a 40rem measure. */
240
+ .kun-prose-compact {
241
+ max-width: none;
242
+ margin-inline: 0;
243
+ font-size: 0.9375rem; /* 15px */
244
+ line-height: 1.7;
245
+ }
246
+ .kun-prose-compact p {
247
+ margin: 0.7em 0;
248
+ }
249
+ .kun-prose-compact h1 {
250
+ font-size: 1.5em;
251
+ margin: 1.2em 0 0.5em;
252
+ }
253
+ .kun-prose-compact h2 {
254
+ font-size: 1.3em;
255
+ margin: 1.3em 0 0.5em;
256
+ }
257
+ .kun-prose-compact h3 {
258
+ font-size: 1.15em;
259
+ margin: 1.2em 0 0.4em;
260
+ }
261
+ .kun-prose-compact h4,
262
+ .kun-prose-compact h5,
263
+ .kun-prose-compact h6 {
264
+ font-size: 1em;
265
+ margin: 1em 0 0.35em;
266
+ }
267
+ .kun-prose-compact ul,
268
+ .kun-prose-compact ol {
269
+ margin: 0.7em 0;
270
+ padding-left: 1.4em;
271
+ }
272
+ .kun-prose-compact li {
273
+ margin: 0.25em 0;
274
+ }
275
+ .kun-prose-compact blockquote {
276
+ margin: 1em 0;
277
+ padding-left: 0.9em;
278
+ }
279
+ .kun-prose-compact pre {
280
+ margin: 1em 0;
281
+ padding: 0.8em 0.9em;
282
+ }
283
+ .kun-prose-compact table {
284
+ margin: 1em 0;
285
+ }
286
+ .kun-prose-compact hr {
287
+ margin: 1.6em 0;
288
+ }
289
+ .kun-prose-compact img,
290
+ .kun-prose-compact video {
291
+ margin: 1em 0;
292
+ }
package/dist/style.css CHANGED
@@ -1,2 +1,2 @@
1
- [data-v-44cd432d] *{color:inherit}.ripple[data-v-c00f084d]{animation:ripple-animation-c00f084d .6s var(--ease-kun-out);transform:scale(0)}@keyframes ripple-animation-c00f084d{to{opacity:0;transform:scale(2)}}.kun-modal-enter-active[data-v-856c1b6e]{transition:opacity var(--kun-dur-base) var(--ease-kun-out)}.kun-modal-leave-active[data-v-856c1b6e]{transition:opacity var(--kun-dur-exit) var(--ease-kun-in)}.kun-modal-enter-from[data-v-856c1b6e],.kun-modal-leave-to[data-v-856c1b6e]{opacity:0}.kun-modal-enter-active .kun-modal-panel[data-v-856c1b6e]{transition:transform var(--kun-dur-base) var(--ease-kun-out)}.kun-modal-leave-active .kun-modal-panel[data-v-856c1b6e]{transition:transform var(--kun-dur-exit) var(--ease-kun-in)}.kun-modal-enter-from .kun-modal-panel[data-v-856c1b6e],.kun-modal-leave-to .kun-modal-panel[data-v-856c1b6e]{transform:translateY(8px)scale(.96)}.kun-lightbox-image[data-v-81a536ec]{view-transition-name:kun-lightbox-image}.kun-lightbox-dialog[data-v-81a536ec]::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1f2937cc}.slide-next-enter-active[data-v-81a536ec],.slide-next-leave-active[data-v-81a536ec],.slide-prev-enter-active[data-v-81a536ec],.slide-prev-leave-active[data-v-81a536ec]{transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .35s cubic-bezier(.4,0,.2,1)}.slide-next-enter-from[data-v-81a536ec]{opacity:0;transform:translate(100%)}.slide-next-leave-to[data-v-81a536ec],.slide-prev-enter-from[data-v-81a536ec]{opacity:0;transform:translate(-100%)}.slide-prev-leave-to[data-v-81a536ec]{opacity:0;transform:translate(100%)}.kun-prose[data-v-c1062975] img{cursor:zoom-in}.kun-prose[data-v-c1062975] .kun-spoiler{vertical-align:middle;transition:color var(--kun-dur-base) var(--ease-kun-standard);display:inline-block;position:relative;overflow:hidden}.kun-prose[data-v-c1062975] div.kun-spoiler{width:fit-content;display:block}.kun-prose[data-v-c1062975] .kun-spoiler-hidden{cursor:pointer;-webkit-user-select:none;user-select:none;background-color:#9696962e;color:#0000!important}.kun-prose[data-v-c1062975] .kun-spoiler-hidden>:not(.kun-spoiler-canvas){visibility:hidden}.kun-prose[data-v-c1062975] .kun-spoiler-hidden:hover{background-color:#96969642}.kun-prose[data-v-c1062975] .kun-spoiler-hidden.kun-spoiler-live,.kun-prose[data-v-c1062975] .kun-spoiler-hidden.kun-spoiler-live:hover{background-color:#0000}.kun-drawer-left-enter-active[data-v-d875426c],.kun-drawer-right-enter-active[data-v-d875426c],.kun-drawer-top-enter-active[data-v-d875426c],.kun-drawer-bottom-enter-active[data-v-d875426c]{transition:opacity var(--kun-dur-base) var(--ease-kun-out)}.kun-drawer-left-leave-active[data-v-d875426c],.kun-drawer-right-leave-active[data-v-d875426c],.kun-drawer-top-leave-active[data-v-d875426c],.kun-drawer-bottom-leave-active[data-v-d875426c]{transition:opacity var(--kun-dur-exit) var(--ease-kun-in)}.kun-drawer-left-enter-active>div[data-v-d875426c]:last-child,.kun-drawer-right-enter-active>div[data-v-d875426c]:last-child,.kun-drawer-top-enter-active>div[data-v-d875426c]:last-child,.kun-drawer-bottom-enter-active>div[data-v-d875426c]:last-child{transition:transform var(--kun-dur-base) var(--ease-kun-emphasized)}.kun-drawer-left-leave-active>div[data-v-d875426c]:last-child,.kun-drawer-right-leave-active>div[data-v-d875426c]:last-child,.kun-drawer-top-leave-active>div[data-v-d875426c]:last-child,.kun-drawer-bottom-leave-active>div[data-v-d875426c]:last-child{transition:transform var(--kun-dur-exit) var(--ease-kun-in)}.kun-drawer-left-enter-from[data-v-d875426c],.kun-drawer-left-leave-to[data-v-d875426c]{opacity:0}.kun-drawer-left-enter-from>div[data-v-d875426c]:last-child,.kun-drawer-left-leave-to>div[data-v-d875426c]:last-child{transform:translate(-100%)}.kun-drawer-right-enter-from[data-v-d875426c],.kun-drawer-right-leave-to[data-v-d875426c]{opacity:0}.kun-drawer-right-enter-from>div[data-v-d875426c]:last-child,.kun-drawer-right-leave-to>div[data-v-d875426c]:last-child{transform:translate(100%)}.kun-drawer-top-enter-from[data-v-d875426c],.kun-drawer-top-leave-to[data-v-d875426c]{opacity:0}.kun-drawer-top-enter-from>div[data-v-d875426c]:last-child,.kun-drawer-top-leave-to>div[data-v-d875426c]:last-child{transform:translateY(-100%)}.kun-drawer-bottom-enter-from[data-v-d875426c],.kun-drawer-bottom-leave-to[data-v-d875426c]{opacity:0}.kun-drawer-bottom-enter-from>div[data-v-d875426c]:last-child,.kun-drawer-bottom-leave-to>div[data-v-d875426c]:last-child{transform:translateY(100%)}.kun-fade-expand[data-v-b563c3ba]{transition:grid-template-rows var(--kun-dur-slow) var(--ease-kun-standard), opacity var(--kun-dur-slow) var(--ease-kun-standard)}.kun-fade-collapsed[data-v-b563c3ba]{opacity:0;grid-template-rows:0fr!important}.loli[data-v-c4847e0a]{filter:drop-shadow(2px 4px 3px var(--color-primary-300))}.loli span[data-v-c4847e0a]{clip-path:polygon(10% 0%,90% 0%,100% 50%,90% 100%,10% 100%,0 50%)}.info[data-v-c4847e0a],.info[data-v-c22df434]{color:var(--color-white);text-shadow:0 1px var(--color-foreground), 1px 0 var(--color-foreground), -1px 0 var(--color-foreground), 0 -1px var(--color-foreground), 1px 2px var(--color-foreground)}[data-v-a80e8a61] *{color:inherit}@keyframes shrink-a80e8a61{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.progress-bar[data-v-a80e8a61]{animation:shrink-a80e8a61 var(--v665a68f1) linear forwards;animation-play-state:running}.message-list-move[data-v-2c1073e3]{transition:transform var(--kun-dur-base) var(--ease-kun-emphasized)}.message-list-enter-active[data-v-2c1073e3]{transition:opacity var(--kun-dur-slow) var(--ease-kun-out), transform var(--kun-dur-slow) var(--ease-kun-out)}.message-list-leave-active[data-v-2c1073e3]{transition:opacity var(--kun-dur-base) var(--ease-kun-in), transform var(--kun-dur-base) var(--ease-kun-in);width:100%;position:absolute}.message-list-enter-from[data-v-2c1073e3],.message-list-leave-to[data-v-2c1073e3]{opacity:0;transform:scale(.8)}[class*=top-] .message-list-enter-from[data-v-2c1073e3],[class*=top-] .message-list-leave-to[data-v-2c1073e3]{transform:translateY(-30px)scale(.8)}[class*=bottom-] .message-list-enter-from[data-v-2c1073e3],[class*=bottom-] .message-list-leave-to[data-v-2c1073e3]{transform:translateY(30px)scale(.8)}@keyframes progress-stripes-2d1f0813{0%{background-position:1rem 0}to{background-position:0 0}}@keyframes kun-progress-indeterminate{0%{transform:translate(-150%)}to{transform:translate(350%)}}[data-kun-tab-hidden][data-v-ccf67b4b]{content-visibility:hidden}.kun-text-block[data-v-e9ad81ae]{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.vue-advanced-cropper{text-align:center;-webkit-user-select:none;user-select:none;direction:ltr;max-width:100%;max-height:100%;position:relative}.vue-advanced-cropper__stretcher{pointer-events:none;max-width:100%;max-height:100%;position:relative}.vue-advanced-cropper__image{-webkit-user-select:none;user-select:none;transform-origin:50%;position:absolute;max-width:none!important}.vue-advanced-cropper__background,.vue-advanced-cropper__foreground{opacity:1;background:#000;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.vue-advanced-cropper__boundaries{opacity:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.vue-advanced-cropper__cropper-wrapper{width:100%;height:100%}.vue-advanced-cropper__image-wrapper{width:100%;height:100%;position:absolute;overflow:hidden}.vue-advanced-cropper__stencil-wrapper{position:absolute}.vue-simple-handler{background:#fff;width:10px;height:10px;display:block}.vue-handler-wrapper{width:30px;height:30px;position:absolute;transform:translate(-50%,-50%)}.vue-handler-wrapper__draggable{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.vue-handler-wrapper--west-north{cursor:nw-resize}.vue-handler-wrapper--north{cursor:n-resize}.vue-handler-wrapper--east-north{cursor:ne-resize}.vue-handler-wrapper--east{cursor:e-resize}.vue-handler-wrapper--east-south{cursor:se-resize}.vue-handler-wrapper--south{cursor:s-resize}.vue-handler-wrapper--west-south{cursor:sw-resize}.vue-handler-wrapper--west{cursor:w-resize}.vue-handler-wrapper--disabled{cursor:auto}.vue-line-wrapper{background:0 0;justify-content:center;align-items:center;display:flex;position:absolute}.vue-line-wrapper--north,.vue-line-wrapper--south{width:100%;height:12px;left:0;transform:translateY(-50%)}.vue-line-wrapper--north{cursor:n-resize;top:0}.vue-line-wrapper--south{cursor:s-resize;top:100%}.vue-line-wrapper--east,.vue-line-wrapper--west{width:12px;height:100%;top:0;transform:translate(-50%)}.vue-line-wrapper--east{cursor:e-resize;left:100%}.vue-line-wrapper--west{cursor:w-resize;left:0}.vue-line-wrapper--disabled{cursor:auto}.vue-bounding-box{width:100%;height:100%;position:relative}.vue-bounding-box__handler{position:absolute}.vue-bounding-box__handler--west-north{top:0;left:0}.vue-bounding-box__handler--north{top:0;left:50%}.vue-bounding-box__handler--east-north{top:0;left:100%}.vue-bounding-box__handler--east{top:50%;left:100%}.vue-bounding-box__handler--east-south{top:100%;left:100%}.vue-bounding-box__handler--south{top:100%;left:50%}.vue-bounding-box__handler--west-south{top:100%;left:0}.vue-bounding-box__handler--west{top:50%;left:0}.vue-draggable-area{position:relative}.vue-preview-result{box-sizing:border-box;width:100%;height:100%;position:absolute;overflow:hidden}.vue-preview-result__wrapper{position:absolute}.vue-preview-result__image{pointer-events:none;-webkit-user-select:none;user-select:none;transform-origin:50%;position:relative;max-width:none!important}.vue-rectangle-stencil{box-sizing:border-box;width:100%;height:100%;position:absolute}.vue-rectangle-stencil__preview{width:100%;height:100%;position:absolute}.vue-rectangle-stencil--movable{cursor:move}.vue-circle-stencil{box-sizing:content-box;cursor:move;width:100%;height:100%;position:absolute}.vue-circle-stencil__preview{border-radius:50%;width:100%;height:100%;position:absolute}.vue-circle-stencil--movable{cursor:move}.vue-preview{box-sizing:border-box;position:relative;overflow:hidden}.vue-preview--fill,.vue-preview__wrapper{width:100%;height:100%;position:absolute}.vue-preview__image{pointer-events:none;-webkit-user-select:none;user-select:none;transform-origin:50%;position:absolute;max-width:none!important}.vue-simple-line{background:0 0;border:0 solid #ffffff4d;transition:border .5s}.vue-simple-line--south,.vue-simple-line--north{width:100%;height:0}.vue-simple-line--east,.vue-simple-line--west{width:0;height:100%}.vue-simple-line--east{border-right-width:1px}.vue-simple-line--west{border-left-width:1px}.vue-simple-line--south{border-bottom-width:1px}.vue-simple-line--north{border-top-width:1px}.vue-simple-line--hover{opacity:1;border-color:#fff}.vue-advanced-cropper__foreground{opacity:.7}.vue-circle-stencil__preview:after,.vue-circle-stencil__preview:before,.vue-rectangle-stencil__preview:after,.vue-rectangle-stencil__preview:before{content:"";opacity:0;pointer-events:none;z-index:1;transition:opacity .25s;position:absolute}.vue-circle-stencil__preview:after,.vue-rectangle-stencil__preview:after{border-left:1px solid #fff;border-right:1px solid #fff;width:33%;height:100%;top:0;left:50%;transform:translate(-50%)}.vue-circle-stencil__preview:before,.vue-rectangle-stencil__preview:before{border-top:1px solid #fff;border-bottom:1px solid #fff;width:100%;height:33%;top:50%;left:0;transform:translateY(-50%)}.vue-circle-stencil--moving .vue-rectangle-stencil__preview:after,.vue-circle-stencil--moving .vue-rectangle-stencil__preview:before,.vue-circle-stencil--moving .vue-circle-stencil__preview:after,.vue-circle-stencil--moving .vue-circle-stencil__preview:before,.vue-circle-stencil--resizing .vue-rectangle-stencil__preview:after,.vue-circle-stencil--resizing .vue-rectangle-stencil__preview:before,.vue-circle-stencil--resizing .vue-circle-stencil__preview:after,.vue-circle-stencil--resizing .vue-circle-stencil__preview:before,.vue-rectangle-stencil--moving .vue-rectangle-stencil__preview:after,.vue-rectangle-stencil--moving .vue-rectangle-stencil__preview:before,.vue-rectangle-stencil--moving .vue-circle-stencil__preview:after,.vue-rectangle-stencil--moving .vue-circle-stencil__preview:before,.vue-rectangle-stencil--resizing .vue-rectangle-stencil__preview:after,.vue-rectangle-stencil--resizing .vue-rectangle-stencil__preview:before,.vue-rectangle-stencil--resizing .vue-circle-stencil__preview:after,.vue-rectangle-stencil--resizing .vue-circle-stencil__preview:before{opacity:.7}.vue-simple-line{border-color:#fffc}.vue-simple-handler-wrapper{width:24px;height:24px}.vue-simple-handler-wrapper--west-north{transform:translate(0)}.vue-simple-handler-wrapper--east-south{transform:translate(-100%,-100%)}.vue-simple-handler-wrapper--west-south{transform:translateY(-100%)}.vue-simple-handler-wrapper--east-north{transform:translate(-100%)}.vue-simple-handler{opacity:0;background:#fff;border:none;flex-shrink:0;width:4px;height:4px;transition:opacity .5s;display:block;position:relative;top:auto;left:auto}.vue-simple-handler--west-north,.vue-simple-handler--east-south,.vue-simple-handler--west-south,.vue-simple-handler--east-north{opacity:.7;background:0 0;width:16px;height:16px;display:block}.vue-simple-handler--west-north{border-top:2px solid #fff;border-left:2px solid #fff}.vue-simple-handler--east-south{border-bottom:2px solid #fff;border-right:2px solid #fff}.vue-simple-handler--west-south{border-bottom:2px solid #fff;border-left:2px solid #fff}.vue-simple-handler--east-north{border-top:2px solid #fff;border-right:2px solid #fff}.vue-simple-handler--hover{opacity:1}.vue-circle-stencil__preview{border:2px solid #fffc}.vue-circle-stencil .vue-simple-line{border-color:#ffffff4d}.vue-circle-stencil .vue-simple-handler--west-north,.vue-circle-stencil .vue-simple-handler--east-south,.vue-circle-stencil .vue-simple-handler--west-south,.vue-circle-stencil .vue-simple-handler--east-north{opacity:.4}.vue-circle-stencil .vue-simple-handler--hover{opacity:1}
1
+ [data-v-44cd432d] *{color:inherit}.ripple[data-v-c00f084d]{animation:ripple-animation-c00f084d .6s var(--ease-kun-out);transform:scale(0)}@keyframes ripple-animation-c00f084d{to{opacity:0;transform:scale(2)}}.kun-modal-enter-active[data-v-856c1b6e]{transition:opacity var(--kun-dur-base) var(--ease-kun-out)}.kun-modal-leave-active[data-v-856c1b6e]{transition:opacity var(--kun-dur-exit) var(--ease-kun-in)}.kun-modal-enter-from[data-v-856c1b6e],.kun-modal-leave-to[data-v-856c1b6e]{opacity:0}.kun-modal-enter-active .kun-modal-panel[data-v-856c1b6e]{transition:transform var(--kun-dur-base) var(--ease-kun-out)}.kun-modal-leave-active .kun-modal-panel[data-v-856c1b6e]{transition:transform var(--kun-dur-exit) var(--ease-kun-in)}.kun-modal-enter-from .kun-modal-panel[data-v-856c1b6e],.kun-modal-leave-to .kun-modal-panel[data-v-856c1b6e]{transform:translateY(8px)scale(.96)}.kun-lightbox-image[data-v-81a536ec]{view-transition-name:kun-lightbox-image}.kun-lightbox-dialog[data-v-81a536ec]::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1f2937cc}.slide-next-enter-active[data-v-81a536ec],.slide-next-leave-active[data-v-81a536ec],.slide-prev-enter-active[data-v-81a536ec],.slide-prev-leave-active[data-v-81a536ec]{transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .35s cubic-bezier(.4,0,.2,1)}.slide-next-enter-from[data-v-81a536ec]{opacity:0;transform:translate(100%)}.slide-next-leave-to[data-v-81a536ec],.slide-prev-enter-from[data-v-81a536ec]{opacity:0;transform:translate(-100%)}.slide-prev-leave-to[data-v-81a536ec]{opacity:0;transform:translate(100%)}.kun-prose[data-v-46502ad7] img{cursor:zoom-in}.kun-prose[data-v-46502ad7] .kun-spoiler{vertical-align:middle;transition:color var(--kun-dur-base) var(--ease-kun-standard);display:inline-block;position:relative;overflow:hidden}.kun-prose[data-v-46502ad7] div.kun-spoiler{width:fit-content;display:block}.kun-prose[data-v-46502ad7] .kun-spoiler-hidden{cursor:pointer;-webkit-user-select:none;user-select:none;background-color:#9696962e;color:#0000!important}.kun-prose[data-v-46502ad7] .kun-spoiler-hidden>:not(.kun-spoiler-canvas){visibility:hidden}.kun-prose[data-v-46502ad7] .kun-spoiler-hidden:hover{background-color:#96969642}.kun-prose[data-v-46502ad7] .kun-spoiler-hidden.kun-spoiler-live,.kun-prose[data-v-46502ad7] .kun-spoiler-hidden.kun-spoiler-live:hover{background-color:#0000}.kun-drawer-left-enter-active[data-v-d875426c],.kun-drawer-right-enter-active[data-v-d875426c],.kun-drawer-top-enter-active[data-v-d875426c],.kun-drawer-bottom-enter-active[data-v-d875426c]{transition:opacity var(--kun-dur-base) var(--ease-kun-out)}.kun-drawer-left-leave-active[data-v-d875426c],.kun-drawer-right-leave-active[data-v-d875426c],.kun-drawer-top-leave-active[data-v-d875426c],.kun-drawer-bottom-leave-active[data-v-d875426c]{transition:opacity var(--kun-dur-exit) var(--ease-kun-in)}.kun-drawer-left-enter-active>div[data-v-d875426c]:last-child,.kun-drawer-right-enter-active>div[data-v-d875426c]:last-child,.kun-drawer-top-enter-active>div[data-v-d875426c]:last-child,.kun-drawer-bottom-enter-active>div[data-v-d875426c]:last-child{transition:transform var(--kun-dur-base) var(--ease-kun-emphasized)}.kun-drawer-left-leave-active>div[data-v-d875426c]:last-child,.kun-drawer-right-leave-active>div[data-v-d875426c]:last-child,.kun-drawer-top-leave-active>div[data-v-d875426c]:last-child,.kun-drawer-bottom-leave-active>div[data-v-d875426c]:last-child{transition:transform var(--kun-dur-exit) var(--ease-kun-in)}.kun-drawer-left-enter-from[data-v-d875426c],.kun-drawer-left-leave-to[data-v-d875426c]{opacity:0}.kun-drawer-left-enter-from>div[data-v-d875426c]:last-child,.kun-drawer-left-leave-to>div[data-v-d875426c]:last-child{transform:translate(-100%)}.kun-drawer-right-enter-from[data-v-d875426c],.kun-drawer-right-leave-to[data-v-d875426c]{opacity:0}.kun-drawer-right-enter-from>div[data-v-d875426c]:last-child,.kun-drawer-right-leave-to>div[data-v-d875426c]:last-child{transform:translate(100%)}.kun-drawer-top-enter-from[data-v-d875426c],.kun-drawer-top-leave-to[data-v-d875426c]{opacity:0}.kun-drawer-top-enter-from>div[data-v-d875426c]:last-child,.kun-drawer-top-leave-to>div[data-v-d875426c]:last-child{transform:translateY(-100%)}.kun-drawer-bottom-enter-from[data-v-d875426c],.kun-drawer-bottom-leave-to[data-v-d875426c]{opacity:0}.kun-drawer-bottom-enter-from>div[data-v-d875426c]:last-child,.kun-drawer-bottom-leave-to>div[data-v-d875426c]:last-child{transform:translateY(100%)}.kun-fade-expand[data-v-b563c3ba]{transition:grid-template-rows var(--kun-dur-slow) var(--ease-kun-standard), opacity var(--kun-dur-slow) var(--ease-kun-standard)}.kun-fade-collapsed[data-v-b563c3ba]{opacity:0;grid-template-rows:0fr!important}.loli[data-v-c4847e0a]{filter:drop-shadow(2px 4px 3px var(--color-primary-300))}.loli span[data-v-c4847e0a]{clip-path:polygon(10% 0%,90% 0%,100% 50%,90% 100%,10% 100%,0 50%)}.info[data-v-c4847e0a],.info[data-v-c22df434]{color:var(--color-white);text-shadow:0 1px var(--color-foreground), 1px 0 var(--color-foreground), -1px 0 var(--color-foreground), 0 -1px var(--color-foreground), 1px 2px var(--color-foreground)}[data-v-a80e8a61] *{color:inherit}@keyframes shrink-a80e8a61{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.progress-bar[data-v-a80e8a61]{animation:shrink-a80e8a61 var(--v665a68f1) linear forwards;animation-play-state:running}.message-list-move[data-v-2c1073e3]{transition:transform var(--kun-dur-base) var(--ease-kun-emphasized)}.message-list-enter-active[data-v-2c1073e3]{transition:opacity var(--kun-dur-slow) var(--ease-kun-out), transform var(--kun-dur-slow) var(--ease-kun-out)}.message-list-leave-active[data-v-2c1073e3]{transition:opacity var(--kun-dur-base) var(--ease-kun-in), transform var(--kun-dur-base) var(--ease-kun-in);width:100%;position:absolute}.message-list-enter-from[data-v-2c1073e3],.message-list-leave-to[data-v-2c1073e3]{opacity:0;transform:scale(.8)}[class*=top-] .message-list-enter-from[data-v-2c1073e3],[class*=top-] .message-list-leave-to[data-v-2c1073e3]{transform:translateY(-30px)scale(.8)}[class*=bottom-] .message-list-enter-from[data-v-2c1073e3],[class*=bottom-] .message-list-leave-to[data-v-2c1073e3]{transform:translateY(30px)scale(.8)}@keyframes progress-stripes-2d1f0813{0%{background-position:1rem 0}to{background-position:0 0}}@keyframes kun-progress-indeterminate{0%{transform:translate(-150%)}to{transform:translate(350%)}}[data-kun-tab-hidden][data-v-ccf67b4b]{content-visibility:hidden}.kun-text-block[data-v-e9ad81ae]{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.vue-advanced-cropper{text-align:center;-webkit-user-select:none;user-select:none;direction:ltr;max-width:100%;max-height:100%;position:relative}.vue-advanced-cropper__stretcher{pointer-events:none;max-width:100%;max-height:100%;position:relative}.vue-advanced-cropper__image{-webkit-user-select:none;user-select:none;transform-origin:50%;position:absolute;max-width:none!important}.vue-advanced-cropper__background,.vue-advanced-cropper__foreground{opacity:1;background:#000;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.vue-advanced-cropper__boundaries{opacity:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.vue-advanced-cropper__cropper-wrapper{width:100%;height:100%}.vue-advanced-cropper__image-wrapper{width:100%;height:100%;position:absolute;overflow:hidden}.vue-advanced-cropper__stencil-wrapper{position:absolute}.vue-simple-handler{background:#fff;width:10px;height:10px;display:block}.vue-handler-wrapper{width:30px;height:30px;position:absolute;transform:translate(-50%,-50%)}.vue-handler-wrapper__draggable{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.vue-handler-wrapper--west-north{cursor:nw-resize}.vue-handler-wrapper--north{cursor:n-resize}.vue-handler-wrapper--east-north{cursor:ne-resize}.vue-handler-wrapper--east{cursor:e-resize}.vue-handler-wrapper--east-south{cursor:se-resize}.vue-handler-wrapper--south{cursor:s-resize}.vue-handler-wrapper--west-south{cursor:sw-resize}.vue-handler-wrapper--west{cursor:w-resize}.vue-handler-wrapper--disabled{cursor:auto}.vue-line-wrapper{background:0 0;justify-content:center;align-items:center;display:flex;position:absolute}.vue-line-wrapper--north,.vue-line-wrapper--south{width:100%;height:12px;left:0;transform:translateY(-50%)}.vue-line-wrapper--north{cursor:n-resize;top:0}.vue-line-wrapper--south{cursor:s-resize;top:100%}.vue-line-wrapper--east,.vue-line-wrapper--west{width:12px;height:100%;top:0;transform:translate(-50%)}.vue-line-wrapper--east{cursor:e-resize;left:100%}.vue-line-wrapper--west{cursor:w-resize;left:0}.vue-line-wrapper--disabled{cursor:auto}.vue-bounding-box{width:100%;height:100%;position:relative}.vue-bounding-box__handler{position:absolute}.vue-bounding-box__handler--west-north{top:0;left:0}.vue-bounding-box__handler--north{top:0;left:50%}.vue-bounding-box__handler--east-north{top:0;left:100%}.vue-bounding-box__handler--east{top:50%;left:100%}.vue-bounding-box__handler--east-south{top:100%;left:100%}.vue-bounding-box__handler--south{top:100%;left:50%}.vue-bounding-box__handler--west-south{top:100%;left:0}.vue-bounding-box__handler--west{top:50%;left:0}.vue-draggable-area{position:relative}.vue-preview-result{box-sizing:border-box;width:100%;height:100%;position:absolute;overflow:hidden}.vue-preview-result__wrapper{position:absolute}.vue-preview-result__image{pointer-events:none;-webkit-user-select:none;user-select:none;transform-origin:50%;position:relative;max-width:none!important}.vue-rectangle-stencil{box-sizing:border-box;width:100%;height:100%;position:absolute}.vue-rectangle-stencil__preview{width:100%;height:100%;position:absolute}.vue-rectangle-stencil--movable{cursor:move}.vue-circle-stencil{box-sizing:content-box;cursor:move;width:100%;height:100%;position:absolute}.vue-circle-stencil__preview{border-radius:50%;width:100%;height:100%;position:absolute}.vue-circle-stencil--movable{cursor:move}.vue-preview{box-sizing:border-box;position:relative;overflow:hidden}.vue-preview--fill,.vue-preview__wrapper{width:100%;height:100%;position:absolute}.vue-preview__image{pointer-events:none;-webkit-user-select:none;user-select:none;transform-origin:50%;position:absolute;max-width:none!important}.vue-simple-line{background:0 0;border:0 solid #ffffff4d;transition:border .5s}.vue-simple-line--south,.vue-simple-line--north{width:100%;height:0}.vue-simple-line--east,.vue-simple-line--west{width:0;height:100%}.vue-simple-line--east{border-right-width:1px}.vue-simple-line--west{border-left-width:1px}.vue-simple-line--south{border-bottom-width:1px}.vue-simple-line--north{border-top-width:1px}.vue-simple-line--hover{opacity:1;border-color:#fff}.vue-advanced-cropper__foreground{opacity:.7}.vue-circle-stencil__preview:after,.vue-circle-stencil__preview:before,.vue-rectangle-stencil__preview:after,.vue-rectangle-stencil__preview:before{content:"";opacity:0;pointer-events:none;z-index:1;transition:opacity .25s;position:absolute}.vue-circle-stencil__preview:after,.vue-rectangle-stencil__preview:after{border-left:1px solid #fff;border-right:1px solid #fff;width:33%;height:100%;top:0;left:50%;transform:translate(-50%)}.vue-circle-stencil__preview:before,.vue-rectangle-stencil__preview:before{border-top:1px solid #fff;border-bottom:1px solid #fff;width:100%;height:33%;top:50%;left:0;transform:translateY(-50%)}.vue-circle-stencil--moving .vue-rectangle-stencil__preview:after,.vue-circle-stencil--moving .vue-rectangle-stencil__preview:before,.vue-circle-stencil--moving .vue-circle-stencil__preview:after,.vue-circle-stencil--moving .vue-circle-stencil__preview:before,.vue-circle-stencil--resizing .vue-rectangle-stencil__preview:after,.vue-circle-stencil--resizing .vue-rectangle-stencil__preview:before,.vue-circle-stencil--resizing .vue-circle-stencil__preview:after,.vue-circle-stencil--resizing .vue-circle-stencil__preview:before,.vue-rectangle-stencil--moving .vue-rectangle-stencil__preview:after,.vue-rectangle-stencil--moving .vue-rectangle-stencil__preview:before,.vue-rectangle-stencil--moving .vue-circle-stencil__preview:after,.vue-rectangle-stencil--moving .vue-circle-stencil__preview:before,.vue-rectangle-stencil--resizing .vue-rectangle-stencil__preview:after,.vue-rectangle-stencil--resizing .vue-rectangle-stencil__preview:before,.vue-rectangle-stencil--resizing .vue-circle-stencil__preview:after,.vue-rectangle-stencil--resizing .vue-circle-stencil__preview:before{opacity:.7}.vue-simple-line{border-color:#fffc}.vue-simple-handler-wrapper{width:24px;height:24px}.vue-simple-handler-wrapper--west-north{transform:translate(0)}.vue-simple-handler-wrapper--east-south{transform:translate(-100%,-100%)}.vue-simple-handler-wrapper--west-south{transform:translateY(-100%)}.vue-simple-handler-wrapper--east-north{transform:translate(-100%)}.vue-simple-handler{opacity:0;background:#fff;border:none;flex-shrink:0;width:4px;height:4px;transition:opacity .5s;display:block;position:relative;top:auto;left:auto}.vue-simple-handler--west-north,.vue-simple-handler--east-south,.vue-simple-handler--west-south,.vue-simple-handler--east-north{opacity:.7;background:0 0;width:16px;height:16px;display:block}.vue-simple-handler--west-north{border-top:2px solid #fff;border-left:2px solid #fff}.vue-simple-handler--east-south{border-bottom:2px solid #fff;border-right:2px solid #fff}.vue-simple-handler--west-south{border-bottom:2px solid #fff;border-left:2px solid #fff}.vue-simple-handler--east-north{border-top:2px solid #fff;border-right:2px solid #fff}.vue-simple-handler--hover{opacity:1}.vue-circle-stencil__preview{border:2px solid #fffc}.vue-circle-stencil .vue-simple-line{border-color:#ffffff4d}.vue-circle-stencil .vue-simple-handler--west-north,.vue-circle-stencil .vue-simple-handler--east-south,.vue-circle-stencil .vue-simple-handler--west-south,.vue-circle-stencil .vue-simple-handler--east-north{opacity:.4}.vue-circle-stencil .vue-simple-handler--hover{opacity:1}
2
2
  /*$vite$:1*/
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kungal/ui-vue",
3
- "version": "1.3.0",
3
+ "version": "1.4.0",
4
4
  "description": "KunUI Vue 3 component layer — Nuxt-decoupled. Works in any Vue app; pairs with @kungal/ui-nuxt for Nuxt sugar.",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -39,7 +39,8 @@
39
39
  "types": "./dist/index.d.ts",
40
40
  "import": "./dist/index.js"
41
41
  },
42
- "./style.css": "./dist/style.css"
42
+ "./style.css": "./dist/style.css",
43
+ "./prose.css": "./dist/prose.css"
43
44
  },
44
45
  "dependencies": {
45
46
  "@floating-ui/vue": "^1.1.11",
@@ -48,7 +49,7 @@
48
49
  "date-fns": "^4.1.0",
49
50
  "focus-trap": "^8.2.1",
50
51
  "vue-advanced-cropper": "^2.8.9",
51
- "@kungal/ui-core": "1.3.0"
52
+ "@kungal/ui-core": "1.4.0"
52
53
  },
53
54
  "peerDependencies": {
54
55
  "vue": "^3.5.0"
@@ -60,10 +61,10 @@
60
61
  "vite": "^8.0.16",
61
62
  "vue": "^3.5.35",
62
63
  "vue-tsc": "^3.3.3",
63
- "@kungal/ui-tokens": "1.3.0"
64
+ "@kungal/ui-tokens": "1.4.0"
64
65
  },
65
66
  "scripts": {
66
- "build": "vite build && vue-tsc -p tsconfig.build.json",
67
+ "build": "vite build && cp src/prose.css dist/prose.css && vue-tsc -p tsconfig.build.json",
67
68
  "dev": "vite build --watch",
68
69
  "typecheck": "vue-tsc --noEmit -p tsconfig.json",
69
70
  "clean": "rm -rf dist"