@duskmoon-dev/el-markdown 0.2.0 → 0.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/cjs/index.js CHANGED
@@ -2006,6 +2006,7 @@ module.exports = __toCommonJS(exports_src);
2006
2006
 
2007
2007
  // src/el-dm-markdown.ts
2008
2008
  var import_el_core = require("@duskmoon-dev/el-core");
2009
+ var import_markdown_body = require("@duskmoon-dev/core/components/markdown-body");
2009
2010
 
2010
2011
  // ../../node_modules/.bun/bail@2.0.2/node_modules/bail/index.js
2011
2012
  function bail(error) {
@@ -27130,217 +27131,43 @@ var atomOneLight = `
27130
27131
  `;
27131
27132
 
27132
27133
  // src/el-dm-markdown.ts
27134
+ var coreStyles = import_markdown_body.css.replace(/@layer\s+components\s*\{/, "").replace(/\}\s*$/, "");
27133
27135
  var baseStyles = import_el_core.css`
27134
27136
  :host {
27135
27137
  display: block;
27136
27138
  font-family: var(
27137
27139
  --dm-markdown-font-family,
27138
- var(--dm-font-family, system-ui, -apple-system, sans-serif)
27140
+ var(--font-family, system-ui, -apple-system, sans-serif)
27139
27141
  );
27140
27142
  line-height: var(--dm-markdown-line-height, 1.6);
27141
- color: var(--dm-gray-900, #111827);
27143
+ color: var(--color-on-surface);
27142
27144
  }
27143
27145
 
27144
27146
  :host([hidden]) {
27145
27147
  display: none !important;
27146
27148
  }
27147
27149
 
27150
+ /* Import core markdown-body styles */
27151
+ ${coreStyles}
27152
+
27148
27153
  .container {
27149
27154
  width: 100%;
27150
27155
  }
27151
27156
 
27152
- .content {
27157
+ .markdown-body {
27153
27158
  overflow-wrap: break-word;
27154
27159
  word-wrap: break-word;
27155
27160
  }
27156
27161
 
27157
- /* Typography */
27158
- .content h1,
27159
- .content h2,
27160
- .content h3,
27161
- .content h4,
27162
- .content h5,
27163
- .content h6 {
27164
- margin-top: 1.5em;
27165
- margin-bottom: 0.5em;
27166
- font-weight: var(--dm-font-weight-semibold, 600);
27167
- line-height: 1.25;
27168
- }
27169
-
27170
- .content h1 {
27171
- font-size: 2em;
27172
- }
27173
- .content h2 {
27174
- font-size: 1.5em;
27175
- border-bottom: 1px solid var(--dm-gray-200, #e5e7eb);
27176
- padding-bottom: 0.3em;
27177
- }
27178
- .content h3 {
27179
- font-size: 1.25em;
27180
- }
27181
- .content h4 {
27182
- font-size: 1em;
27183
- }
27184
- .content h5 {
27185
- font-size: 0.875em;
27186
- }
27187
- .content h6 {
27188
- font-size: 0.85em;
27189
- color: var(--dm-gray-500, #6b7280);
27190
- }
27191
-
27192
- .content p {
27193
- margin-top: 0;
27194
- margin-bottom: 1em;
27195
- }
27196
-
27197
- .content a {
27198
- color: var(--dm-primary, #3b82f6);
27199
- text-decoration: none;
27200
- }
27201
-
27202
- .content a:hover {
27203
- text-decoration: underline;
27204
- }
27205
-
27206
- /* Lists */
27207
- .content ul,
27208
- .content ol {
27209
- margin-top: 0;
27210
- margin-bottom: 1em;
27211
- padding-left: 2em;
27212
- }
27213
-
27214
- .content li {
27215
- margin-bottom: 0.25em;
27216
- }
27217
-
27218
- .content li > * {
27219
- display: inline;
27220
- }
27221
-
27222
- .content li > ul,
27223
- .content li > ol {
27224
- display: block;
27225
- margin-top: 0.25em;
27226
- margin-bottom: 0;
27227
- }
27228
-
27229
- /* Task lists (GFM) */
27230
- .content ul.contains-task-list {
27231
- list-style: none;
27232
- padding-left: 1em;
27233
- }
27234
-
27235
- .content .task-list-item {
27236
- display: flex;
27237
- align-items: baseline;
27238
- gap: 0.5em;
27239
- }
27240
-
27241
- .content .task-list-item input[type='checkbox'] {
27242
- margin: 0;
27243
- }
27244
-
27245
- /* Code */
27246
- .content code {
27247
- font-family: var(
27248
- --dm-markdown-code-font-family,
27249
- ui-monospace,
27250
- SFMono-Regular,
27251
- Menlo,
27252
- Monaco,
27253
- Consolas,
27254
- monospace
27255
- );
27256
- font-size: 0.875em;
27257
- padding: 0.2em 0.4em;
27258
- background-color: var(--dm-gray-100, #f3f4f6);
27259
- border-radius: var(--dm-radius-sm, 0.25rem);
27260
- }
27261
-
27262
- .content pre {
27263
- margin-top: 0;
27264
- margin-bottom: 1em;
27265
- padding: 1em;
27266
- overflow-x: auto;
27267
- border-radius: var(--dm-radius-md, 0.5rem);
27268
- background-color: var(--dm-gray-100, #f3f4f6);
27269
- }
27270
-
27271
- .content pre code {
27272
- padding: 0;
27273
- background-color: transparent;
27274
- font-size: 0.875em;
27275
- line-height: 1.5;
27276
- }
27277
-
27278
- /* Blockquote */
27279
- .content blockquote {
27280
- margin: 0 0 1em;
27281
- padding: 0.5em 1em;
27282
- border-left: 4px solid var(--dm-gray-300, #d1d5db);
27283
- color: var(--dm-gray-600, #4b5563);
27284
- background-color: var(--dm-gray-50, #f9fafb);
27285
- }
27286
-
27287
- .content blockquote > :first-child {
27288
- margin-top: 0;
27289
- }
27290
-
27291
- .content blockquote > :last-child {
27292
- margin-bottom: 0;
27293
- }
27294
-
27295
- /* Tables */
27296
- .content table {
27297
- width: 100%;
27298
- margin-bottom: 1em;
27299
- border-collapse: collapse;
27300
- border-spacing: 0;
27301
- }
27302
-
27303
- .content th,
27304
- .content td {
27305
- padding: 0.5em 1em;
27306
- border: 1px solid var(--dm-gray-300, #d1d5db);
27307
- text-align: left;
27308
- }
27309
-
27310
- .content th {
27311
- font-weight: var(--dm-font-weight-semibold, 600);
27312
- background-color: var(--dm-gray-50, #f9fafb);
27313
- }
27314
-
27315
- .content tr:nth-child(even) {
27316
- background-color: var(--dm-gray-50, #f9fafb);
27317
- }
27318
-
27319
- /* Horizontal rule */
27320
- .content hr {
27321
- height: 0.25em;
27322
- margin: 1.5em 0;
27323
- padding: 0;
27324
- background-color: var(--dm-gray-200, #e5e7eb);
27325
- border: 0;
27326
- }
27327
-
27328
- /* Images */
27329
- .content img {
27330
- max-width: 100%;
27331
- height: auto;
27332
- border-radius: var(--dm-radius-md, 0.5rem);
27333
- }
27334
-
27335
27162
  /* Mermaid diagrams */
27336
- .content .language-mermaid {
27163
+ .markdown-body .language-mermaid {
27337
27164
  display: flex;
27338
27165
  justify-content: center;
27339
27166
  background: transparent !important;
27340
27167
  padding: 1em 0;
27341
27168
  }
27342
27169
 
27343
- .content .language-mermaid svg {
27170
+ .markdown-body .language-mermaid svg {
27344
27171
  max-width: 100%;
27345
27172
  height: auto;
27346
27173
  }
@@ -27351,7 +27178,7 @@ var baseStyles = import_el_core.css`
27351
27178
  align-items: center;
27352
27179
  justify-content: center;
27353
27180
  padding: 2em;
27354
- color: var(--dm-gray-500, #6b7280);
27181
+ color: var(--color-on-surface-variant);
27355
27182
  }
27356
27183
 
27357
27184
  .loading::after {
@@ -27359,8 +27186,8 @@ var baseStyles = import_el_core.css`
27359
27186
  width: 1.5em;
27360
27187
  height: 1.5em;
27361
27188
  margin-left: 0.5em;
27362
- border: 2px solid var(--dm-gray-300, #d1d5db);
27363
- border-top-color: var(--dm-primary, #3b82f6);
27189
+ border: 2px solid var(--color-outline);
27190
+ border-top-color: var(--color-primary);
27364
27191
  border-radius: 50%;
27365
27192
  animation: spin 0.6s linear infinite;
27366
27193
  }
@@ -27374,10 +27201,10 @@ var baseStyles = import_el_core.css`
27374
27201
  /* Error state */
27375
27202
  .error {
27376
27203
  padding: 1em;
27377
- color: var(--dm-error, #ef4444);
27378
- background-color: #fef2f2;
27379
- border: 1px solid #fecaca;
27380
- border-radius: var(--dm-radius-md, 0.5rem);
27204
+ color: var(--color-error);
27205
+ background-color: oklch(95% 0.05 25);
27206
+ border: 1px solid oklch(85% 0.1 25);
27207
+ border-radius: 0.5rem;
27381
27208
  }
27382
27209
 
27383
27210
  /* Streaming cursor */
@@ -27385,7 +27212,7 @@ var baseStyles = import_el_core.css`
27385
27212
  display: inline-block;
27386
27213
  width: 2px;
27387
27214
  height: 1.2em;
27388
- background-color: var(--dm-primary, #3b82f6);
27215
+ background-color: var(--color-primary);
27389
27216
  margin-left: 2px;
27390
27217
  vertical-align: text-bottom;
27391
27218
  animation: cursor-blink 1s step-end infinite;
@@ -27779,7 +27606,7 @@ class ElDmMarkdown extends import_el_core.BaseElement {
27779
27606
  const cursorHtml = this._isStreaming ? '<span class="streaming-cursor" aria-hidden="true"></span>' : "";
27780
27607
  return `
27781
27608
  <div class="container" part="container">
27782
- <div class="content" part="content">${this._fragment}${cursorHtml}</div>
27609
+ <div class="content markdown-body" part="content">${this._fragment}${cursorHtml}</div>
27783
27610
  </div>
27784
27611
  `;
27785
27612
  }
@@ -27791,5 +27618,5 @@ function register() {
27791
27618
  }
27792
27619
  }
27793
27620
 
27794
- //# debugId=3266F24C781F85EE64756E2164756E21
27621
+ //# debugId=3405415B764A12D464756E2164756E21
27795
27622
  //# sourceMappingURL=index.js.map