markdown-to-document-cli 1.1.4 → 1.2.7

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 (40) hide show
  1. package/README.md +54 -9
  2. package/dist/cli.d.ts +3 -0
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +476 -103
  5. package/dist/cli.js.map +1 -1
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +18 -0
  8. package/dist/index.js.map +1 -1
  9. package/dist/services/CoverService.d.ts +25 -3
  10. package/dist/services/CoverService.d.ts.map +1 -1
  11. package/dist/services/CoverService.js +226 -97
  12. package/dist/services/CoverService.js.map +1 -1
  13. package/dist/services/MarkdownPreprocessor.d.ts +5 -0
  14. package/dist/services/MarkdownPreprocessor.d.ts.map +1 -1
  15. package/dist/services/MarkdownPreprocessor.js +18 -7
  16. package/dist/services/MarkdownPreprocessor.js.map +1 -1
  17. package/dist/services/PandocService.d.ts +3 -1
  18. package/dist/services/PandocService.d.ts.map +1 -1
  19. package/dist/services/PandocService.js +31 -15
  20. package/dist/services/PandocService.js.map +1 -1
  21. package/dist/services/TypographyService.d.ts +8 -1
  22. package/dist/services/TypographyService.d.ts.map +1 -1
  23. package/dist/services/TypographyService.js +417 -57
  24. package/dist/services/TypographyService.js.map +1 -1
  25. package/dist/types/index.d.ts +37 -11
  26. package/dist/types/index.d.ts.map +1 -1
  27. package/dist/types/index.js +28 -1
  28. package/dist/types/index.js.map +1 -1
  29. package/dist/utils/constants.d.ts.map +1 -1
  30. package/dist/utils/constants.js +224 -0
  31. package/dist/utils/constants.js.map +1 -1
  32. package/dist/utils/cssBuilder.d.ts +93 -0
  33. package/dist/utils/cssBuilder.d.ts.map +1 -0
  34. package/dist/utils/cssBuilder.js +231 -0
  35. package/dist/utils/cssBuilder.js.map +1 -0
  36. package/dist/utils/themeUtils.d.ts +70 -0
  37. package/dist/utils/themeUtils.d.ts.map +1 -0
  38. package/dist/utils/themeUtils.js +141 -0
  39. package/dist/utils/themeUtils.js.map +1 -0
  40. package/package.json +2 -2
@@ -1,13 +1,12 @@
1
1
  /**
2
2
  * Typography Service - 타이포그래피 프리셋 관리 및 CSS 생성
3
+ * Refactored to use centralized CSS builders
3
4
  */
5
+ import { FONT_STACKS, buildFontImport, buildBoxSizingReset, buildBodyStyles, buildParagraphStyles, buildHeadingStyles, buildPdfPageRules, buildPdfTitleBlockHide, buildPdfImageStyles, buildCommonElementStyles } from '../utils/cssBuilder.js';
4
6
  export class TypographyService {
5
7
  presets;
6
- defaultFontStacks = {
7
- serif: '"Noto Serif KR", "Noto Serif CJK KR", "Source Han Serif KR", "Batang", "바탕", "AppleMyungjo", serif',
8
- sansSerif: '"Noto Sans KR", "Noto Sans CJK KR", "Source Han Sans KR", "Malgun Gothic", "맑은 고딕", "Apple SD Gothic Neo", sans-serif',
9
- monospace: '"Noto Sans Mono KR", "Noto Sans Mono CJK KR", "D2Coding", "Source Code Pro", monospace',
10
- };
8
+ // Use centralized font stacks from cssBuilder
9
+ defaultFontStacks = FONT_STACKS;
11
10
  constructor() {
12
11
  this.presets = new Map();
13
12
  this.initializePresets();
@@ -177,6 +176,366 @@ export class TypographyService {
177
176
  }
178
177
  `,
179
178
  });
179
+ // === Content-focused Presets ===
180
+ this.presets.set('text_heavy', {
181
+ id: 'text_heavy',
182
+ name: 'Text Heavy',
183
+ nameKr: '텍스트 중심',
184
+ description: '긴 글 위주의 문서에 최적화 - 좁은 여백, 촘촘한 줄간격',
185
+ settings: {
186
+ fontSize: '12pt',
187
+ lineHeight: 1.5,
188
+ textIndent: '1.5em',
189
+ paragraphSpacing: '0.3em',
190
+ pageMargins: {
191
+ top: '15mm',
192
+ bottom: '15mm',
193
+ left: '15mm',
194
+ right: '15mm',
195
+ },
196
+ fontFamily: this.defaultFontStacks.serif,
197
+ hyphenation: true,
198
+ justification: 'justify',
199
+ headingScale: {
200
+ h1: 1.5,
201
+ h2: 1.3,
202
+ h3: 1.2,
203
+ h4: 1.1,
204
+ h5: 1.05,
205
+ h6: 1.0,
206
+ },
207
+ },
208
+ cssRules: `
209
+ p { margin-bottom: 0.2em; }
210
+ h1, h2, h3, h4, h5, h6 { margin-top: 1em; margin-bottom: 0.3em; }
211
+ blockquote { margin: 0.8em 1em; font-size: 0.95em; }
212
+ `,
213
+ });
214
+ this.presets.set('table_heavy', {
215
+ id: 'table_heavy',
216
+ name: 'Table Heavy',
217
+ nameKr: '테이블 중심',
218
+ description: '표가 많은 문서에 최적화 - 넓은 여백, 작은 폰트',
219
+ settings: {
220
+ fontSize: '11pt',
221
+ lineHeight: 1.4,
222
+ paragraphSpacing: '0.5em',
223
+ pageMargins: {
224
+ top: '12mm',
225
+ bottom: '12mm',
226
+ left: '10mm',
227
+ right: '10mm',
228
+ },
229
+ fontFamily: this.defaultFontStacks.sansSerif,
230
+ hyphenation: false,
231
+ justification: 'left',
232
+ headingScale: {
233
+ h1: 1.6,
234
+ h2: 1.4,
235
+ h3: 1.2,
236
+ h4: 1.1,
237
+ h5: 1.0,
238
+ h6: 0.95,
239
+ },
240
+ },
241
+ cssRules: `
242
+ table {
243
+ width: 100%;
244
+ font-size: 10pt;
245
+ margin: 1em 0;
246
+ border-collapse: collapse;
247
+ }
248
+ th, td {
249
+ padding: 0.4em 0.6em;
250
+ border: 1px solid #ccc;
251
+ vertical-align: top;
252
+ }
253
+ th {
254
+ background: #f5f5f5;
255
+ font-weight: 600;
256
+ text-align: center;
257
+ }
258
+ caption {
259
+ font-size: 0.9em;
260
+ font-weight: bold;
261
+ margin-bottom: 0.5em;
262
+ text-align: left;
263
+ }
264
+ table + table { margin-top: 2em; }
265
+ `,
266
+ });
267
+ this.presets.set('image_heavy', {
268
+ id: 'image_heavy',
269
+ name: 'Image Heavy',
270
+ nameKr: '이미지 중심',
271
+ description: '이미지가 많은 문서에 최적화 - 이미지 최대화, 캡션 강조',
272
+ settings: {
273
+ fontSize: '13pt',
274
+ lineHeight: 1.5,
275
+ paragraphSpacing: '0.8em',
276
+ pageMargins: {
277
+ top: '15mm',
278
+ bottom: '20mm',
279
+ left: '12mm',
280
+ right: '12mm',
281
+ },
282
+ fontFamily: this.defaultFontStacks.sansSerif,
283
+ hyphenation: false,
284
+ justification: 'left',
285
+ headingScale: {
286
+ h1: 1.8,
287
+ h2: 1.5,
288
+ h3: 1.3,
289
+ h4: 1.15,
290
+ h5: 1.05,
291
+ h6: 1.0,
292
+ },
293
+ },
294
+ cssRules: `
295
+ img {
296
+ max-width: 100%;
297
+ height: auto;
298
+ display: block;
299
+ margin: 1.5em auto;
300
+ }
301
+ figure {
302
+ margin: 2em 0;
303
+ text-align: center;
304
+ break-inside: avoid;
305
+ }
306
+ figure img {
307
+ max-height: 80vh;
308
+ object-fit: contain;
309
+ }
310
+ figcaption {
311
+ font-size: 0.85em;
312
+ color: #555;
313
+ margin-top: 0.8em;
314
+ font-style: italic;
315
+ padding: 0 1em;
316
+ }
317
+ p { max-width: 90%; }
318
+ `,
319
+ });
320
+ this.presets.set('balanced', {
321
+ id: 'balanced',
322
+ name: 'Balanced',
323
+ nameKr: '균형 레이아웃',
324
+ description: '텍스트, 테이블, 이미지를 균형있게 배치 - 가독성과 레이아웃 최적화',
325
+ settings: {
326
+ fontSize: '12pt',
327
+ lineHeight: 1.55,
328
+ paragraphSpacing: '0.6em',
329
+ pageMargins: {
330
+ top: '18mm',
331
+ bottom: '18mm',
332
+ left: '16mm',
333
+ right: '16mm',
334
+ },
335
+ fontFamily: this.defaultFontStacks.sansSerif,
336
+ hyphenation: false,
337
+ justification: 'left',
338
+ headingScale: {
339
+ h1: 1.7,
340
+ h2: 1.45,
341
+ h3: 1.25,
342
+ h4: 1.1,
343
+ h5: 1.0,
344
+ h6: 0.95,
345
+ },
346
+ },
347
+ cssRules: `
348
+ img { max-width: 95%; margin: 1.2em auto; }
349
+ figure { margin: 1.5em 0; break-inside: avoid; }
350
+ figcaption { font-size: 0.9em; color: #666; text-align: center; margin-top: 0.5em; }
351
+ table { width: 100%; font-size: 11pt; margin: 1.2em 0; }
352
+ th, td { padding: 0.5em; border: 1px solid #ddd; }
353
+ th { background: #f8f8f8; }
354
+ blockquote { margin: 1em 1.5em; padding-left: 1em; border-left: 3px solid #ddd; }
355
+ pre { font-size: 0.9em; padding: 1em; overflow-x: auto; }
356
+ `,
357
+ });
358
+ // === Document Type Presets ===
359
+ this.presets.set('report', {
360
+ id: 'report',
361
+ name: 'Report',
362
+ nameKr: '보고서',
363
+ description: '비즈니스 보고서용 - 공식적, 구조화된 레이아웃',
364
+ settings: {
365
+ fontSize: '11pt',
366
+ lineHeight: 1.5,
367
+ paragraphSpacing: '0.7em',
368
+ pageMargins: {
369
+ top: '25mm',
370
+ bottom: '25mm',
371
+ left: '25mm',
372
+ right: '20mm',
373
+ },
374
+ fontFamily: this.defaultFontStacks.sansSerif,
375
+ hyphenation: false,
376
+ justification: 'justify',
377
+ headingScale: {
378
+ h1: 1.8,
379
+ h2: 1.5,
380
+ h3: 1.3,
381
+ h4: 1.15,
382
+ h5: 1.05,
383
+ h6: 1.0,
384
+ },
385
+ },
386
+ cssRules: `
387
+ h1 {
388
+ text-align: center;
389
+ border-bottom: 2px solid #333;
390
+ padding-bottom: 0.5em;
391
+ margin-bottom: 1em;
392
+ }
393
+ h2 {
394
+ color: #2c3e50;
395
+ border-bottom: 1px solid #bdc3c7;
396
+ padding-bottom: 0.3em;
397
+ }
398
+ h3 { color: #34495e; }
399
+ table { font-size: 10pt; }
400
+ th { background: #ecf0f1; }
401
+ .toc { margin: 2em 0; }
402
+ .toc a { color: inherit; text-decoration: none; }
403
+ `,
404
+ });
405
+ this.presets.set('manual', {
406
+ id: 'manual',
407
+ name: 'Manual',
408
+ nameKr: '매뉴얼',
409
+ description: '기술 문서/매뉴얼용 - 코드 블록, 단계별 설명 강조',
410
+ settings: {
411
+ fontSize: '11pt',
412
+ lineHeight: 1.6,
413
+ paragraphSpacing: '0.8em',
414
+ pageMargins: {
415
+ top: '20mm',
416
+ bottom: '20mm',
417
+ left: '20mm',
418
+ right: '20mm',
419
+ },
420
+ fontFamily: this.defaultFontStacks.sansSerif,
421
+ hyphenation: false,
422
+ justification: 'left',
423
+ headingScale: {
424
+ h1: 1.9,
425
+ h2: 1.6,
426
+ h3: 1.35,
427
+ h4: 1.2,
428
+ h5: 1.1,
429
+ h6: 1.0,
430
+ },
431
+ },
432
+ cssRules: `
433
+ h1, h2, h3 { color: #1a5276; }
434
+ h2 { border-left: 4px solid #3498db; padding-left: 0.5em; }
435
+ code {
436
+ background: #f4f4f4;
437
+ padding: 0.15em 0.4em;
438
+ border-radius: 3px;
439
+ font-family: ${this.defaultFontStacks.monospace};
440
+ font-size: 0.9em;
441
+ }
442
+ pre {
443
+ background: #2d2d2d;
444
+ color: #f8f8f2;
445
+ padding: 1em;
446
+ border-radius: 5px;
447
+ overflow-x: auto;
448
+ font-size: 0.85em;
449
+ }
450
+ pre code { background: transparent; color: inherit; padding: 0; }
451
+ ol { counter-reset: step; list-style: none; padding-left: 2em; }
452
+ ol > li { counter-increment: step; position: relative; }
453
+ ol > li::before {
454
+ content: counter(step) ".";
455
+ position: absolute;
456
+ left: -1.5em;
457
+ font-weight: bold;
458
+ color: #3498db;
459
+ }
460
+ blockquote {
461
+ background: #e8f4fc;
462
+ border-left: 4px solid #3498db;
463
+ padding: 0.8em 1em;
464
+ margin: 1em 0;
465
+ }
466
+ `,
467
+ });
468
+ this.presets.set('magazine', {
469
+ id: 'magazine',
470
+ name: 'Magazine',
471
+ nameKr: '매거진',
472
+ description: '잡지 스타일 - 다단 레이아웃, 드롭캡, 시각적 강조',
473
+ settings: {
474
+ fontSize: '11pt',
475
+ lineHeight: 1.5,
476
+ paragraphSpacing: '0.5em',
477
+ pageMargins: {
478
+ top: '15mm',
479
+ bottom: '20mm',
480
+ left: '15mm',
481
+ right: '15mm',
482
+ },
483
+ fontFamily: this.defaultFontStacks.serif,
484
+ hyphenation: true,
485
+ justification: 'justify',
486
+ headingScale: {
487
+ h1: 2.2,
488
+ h2: 1.7,
489
+ h3: 1.4,
490
+ h4: 1.2,
491
+ h5: 1.1,
492
+ h6: 1.0,
493
+ },
494
+ },
495
+ cssRules: `
496
+ h1 {
497
+ font-size: 2.5em;
498
+ font-weight: 900;
499
+ line-height: 1.1;
500
+ margin-bottom: 0.3em;
501
+ }
502
+ h2 {
503
+ font-weight: 700;
504
+ color: #c0392b;
505
+ }
506
+ p:first-of-type::first-letter {
507
+ font-size: 4em;
508
+ float: left;
509
+ line-height: 0.8;
510
+ margin: 0.05em 0.1em 0 0;
511
+ font-weight: bold;
512
+ color: #c0392b;
513
+ }
514
+ img {
515
+ max-width: 100%;
516
+ margin: 1em 0;
517
+ }
518
+ figure {
519
+ margin: 1.5em 0;
520
+ }
521
+ figcaption {
522
+ font-size: 0.8em;
523
+ color: #777;
524
+ border-bottom: 1px solid #ddd;
525
+ padding-bottom: 0.3em;
526
+ }
527
+ blockquote {
528
+ font-size: 1.3em;
529
+ font-style: italic;
530
+ color: #555;
531
+ border: none;
532
+ text-align: center;
533
+ margin: 1.5em 2em;
534
+ }
535
+ blockquote::before { content: '"'; font-size: 2em; color: #c0392b; }
536
+ blockquote::after { content: '"'; font-size: 2em; color: #c0392b; }
537
+ `,
538
+ });
180
539
  }
181
540
  getPreset(id) {
182
541
  return this.presets.get(id);
@@ -186,6 +545,7 @@ export class TypographyService {
186
545
  }
187
546
  /**
188
547
  * Generate CSS for a preset
548
+ * Refactored to use modular CSS builders for better maintainability
189
549
  */
190
550
  generatePresetCSS(presetId, options = {}) {
191
551
  const preset = this.presets.get(presetId);
@@ -194,71 +554,71 @@ export class TypographyService {
194
554
  }
195
555
  const settings = preset.settings;
196
556
  const format = options.outputFormat || 'epub';
557
+ // Build CSS using modular approach
558
+ const css = this.buildPresetCss(preset, settings, format, options, presetId);
559
+ return css.join('\n');
560
+ }
561
+ /**
562
+ * Build CSS array for a preset (extracted for testability)
563
+ */
564
+ buildPresetCss(preset, settings, format, options, presetId) {
197
565
  const css = [];
566
+ // Header comment
198
567
  css.push('/* Typography Preset: ' + preset.nameKr + ' */');
199
568
  css.push('');
200
- // Global styles
201
- css.push('body {');
202
- css.push(` font-family: ${settings.fontFamily};`);
203
- css.push(` font-size: ${settings.fontSize};`);
204
- css.push(` line-height: ${settings.lineHeight};`);
205
- css.push(` text-align: ${settings.justification};`);
206
- css.push(' color: #333;');
207
- css.push(' margin: 0;');
208
- if (settings.hyphenation) {
209
- css.push(' hyphens: auto;');
210
- css.push(' -webkit-hyphens: auto;');
211
- css.push(' -ms-hyphens: auto;');
212
- }
213
- css.push('}');
569
+ // PDF-specific setup (font import, box-sizing)
570
+ if (format === 'pdf') {
571
+ css.push(buildFontImport());
572
+ css.push('');
573
+ css.push(buildBoxSizingReset());
574
+ css.push('');
575
+ }
576
+ // Body styles using builder
577
+ css.push(...buildBodyStyles({
578
+ fontFamily: settings.fontFamily,
579
+ fontSize: settings.fontSize,
580
+ lineHeight: settings.lineHeight,
581
+ justification: settings.justification,
582
+ hyphenation: settings.hyphenation,
583
+ format: format
584
+ }));
214
585
  css.push('');
215
- // PDF specific page settings
216
- if (format === 'pdf' && options.includePageBreaks !== false) {
217
- css.push('@page {');
218
- css.push(` size: A4;`);
219
- css.push(` margin: ${settings.pageMargins.top} ${settings.pageMargins.right} ${settings.pageMargins.bottom} ${settings.pageMargins.left};`);
220
- css.push('}');
586
+ // PDF title block hide
587
+ if (format === 'pdf') {
588
+ css.push(buildPdfTitleBlockHide());
221
589
  css.push('');
222
590
  }
223
- // Paragraphs
224
- css.push('p {');
225
- css.push(` margin-top: 0;`);
226
- css.push(` margin-bottom: ${settings.paragraphSpacing};`);
227
- if (settings.textIndent && presetId === 'novel') {
228
- css.push(` text-indent: ${settings.textIndent};`);
591
+ // PDF page rules
592
+ if (format === 'pdf' && options.includePageBreaks !== false) {
593
+ css.push(...buildPdfPageRules(settings.pageMargins));
594
+ css.push('');
229
595
  }
230
- css.push('}');
231
- css.push('');
232
- // Headings
233
- for (const [level, scale] of Object.entries(settings.headingScale)) {
234
- css.push(`${level} {`);
235
- css.push(` font-size: ${scale}em;`);
236
- css.push(` margin-top: 1.5em;`);
237
- css.push(` margin-bottom: 0.5em;`);
238
- css.push(` font-weight: bold;`);
239
- css.push(` line-height: 1.2;`);
240
- css.push(` color: #1a1a1a;`);
241
- if (format === 'pdf' && level <= 'h3') {
242
- css.push(` page-break-after: avoid;`);
243
- }
244
- css.push('}');
596
+ // PDF-specific image styling for proper page layout
597
+ if (format === 'pdf') {
598
+ css.push(...buildPdfImageStyles());
245
599
  css.push('');
246
600
  }
247
- // Common elements
248
- css.push('img { max-width: 100%; height: auto; display: block; margin: 1em auto; }');
249
- css.push('blockquote { margin: 1.5em 0; padding: 0.5em 1em; border-left: 4px solid #ddd; color: #666; font-style: italic; }');
250
- css.push(`code { font-family: ${this.defaultFontStacks.monospace}; background-color: #f4f4f4; padding: 0.2em 0.4em; border-radius: 3px; font-size: 0.9em; }`);
251
- css.push('pre { background-color: #f4f4f4; padding: 1em; border-radius: 5px; overflow-x: auto; margin: 1.5em 0; }');
252
- css.push('pre code { background-color: transparent; padding: 0; font-size: 0.85em; }');
253
- css.push('table { width: 100%; border-collapse: collapse; margin: 1.5em 0; }');
254
- css.push('th, td { border: 1px solid #ddd; padding: 0.5em; text-align: left; }');
255
- css.push('th { background-color: #f9f9f9; }');
601
+ // Paragraph styles
602
+ const textIndent = (settings.textIndent && presetId === 'novel') ? settings.textIndent : undefined;
603
+ css.push(...buildParagraphStyles(settings.paragraphSpacing, textIndent));
604
+ css.push('');
605
+ // Heading styles using builder
606
+ css.push(...buildHeadingStyles(settings.headingScale, format));
607
+ // Common element styles (images, tables, code, blockquotes)
608
+ css.push(...buildCommonElementStyles(format));
256
609
  css.push('');
610
+ // Preset-specific custom CSS rules
257
611
  if (preset.cssRules) {
258
- css.push('/* Custom styles */');
612
+ css.push('/* Preset Custom Styles */');
259
613
  css.push(preset.cssRules);
260
614
  }
261
- return css.join('\n');
615
+ // Additional CSS (e.g., cover styles)
616
+ if (options.additionalCss) {
617
+ css.push('');
618
+ css.push('/* Additional Styles (Cover, etc.) */');
619
+ css.push(options.additionalCss);
620
+ }
621
+ return css;
262
622
  }
263
623
  }
264
624
  //# sourceMappingURL=TypographyService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TypographyService.js","sourceRoot":"","sources":["../../src/services/TypographyService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TypographyService.js","sourceRoot":"","sources":["../../src/services/TypographyService.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,29 @@
1
1
  /**
2
2
  * Type Definitions for Markdown to Document CLI
3
3
  */
4
+ export declare enum CoverThemeCategory {
5
+ Basic = "basic",
6
+ Professional = "professional",
7
+ Creative = "creative",
8
+ Seasonal = "seasonal",
9
+ Extended = "extended"
10
+ }
11
+ export declare enum CoverThemeStyle {
12
+ Minimal = "minimal",
13
+ Gradient = "gradient",
14
+ Dark = "dark",
15
+ Modern = "modern"
16
+ }
17
+ export declare enum TypographyPresetCategory {
18
+ Basic = "basic",
19
+ ContentFocused = "content",
20
+ DocumentType = "document"
21
+ }
22
+ export declare enum OutputFormat {
23
+ Epub = "epub",
24
+ Pdf = "pdf",
25
+ Both = "both"
26
+ }
4
27
  export interface ConversionOptions {
5
28
  inputPath: string;
6
29
  outputPath?: string;
@@ -11,7 +34,7 @@ export interface ConversionOptions {
11
34
  tocDepth?: number;
12
35
  includeToc?: boolean;
13
36
  paperSize?: 'a4' | 'letter';
14
- pdfEngine?: 'pdflatex' | 'xelatex' | 'weasyprint';
37
+ pdfEngine?: 'pdflatex' | 'xelatex' | 'weasyprint' | 'auto';
15
38
  validateContent?: boolean;
16
39
  autoFix?: boolean;
17
40
  generateCover?: boolean;
@@ -65,7 +88,7 @@ export interface ResolvedImage {
65
88
  width?: number;
66
89
  height?: number;
67
90
  }
68
- export type TypographyPresetId = 'novel' | 'presentation' | 'review' | 'ebook';
91
+ export type TypographyPresetId = 'novel' | 'presentation' | 'review' | 'ebook' | 'text_heavy' | 'table_heavy' | 'image_heavy' | 'balanced' | 'report' | 'manual' | 'magazine';
69
92
  export interface TypographyPreset {
70
93
  id: TypographyPresetId;
71
94
  name: string;
@@ -90,18 +113,21 @@ export interface PreprocessResult {
90
113
  resolvedImages: ResolvedImage[];
91
114
  warnings: string[];
92
115
  }
116
+ export interface CoverThemeColors {
117
+ primary: string;
118
+ secondary: string;
119
+ accent: string;
120
+ background: string;
121
+ text: string;
122
+ }
93
123
  export interface CoverTheme {
94
124
  id: string;
95
125
  name: string;
96
- category: 'basic' | 'extended';
126
+ category: CoverThemeCategory | 'basic' | 'professional' | 'creative' | 'seasonal' | 'extended';
97
127
  description: string;
98
- colors: {
99
- primary: string;
100
- secondary: string;
101
- accent: string;
102
- background: string;
103
- text: string;
104
- };
105
- style: 'minimal' | 'gradient' | 'dark' | 'modern';
128
+ colors: CoverThemeColors;
129
+ style: CoverThemeStyle | 'minimal' | 'gradient' | 'dark' | 'modern';
106
130
  }
131
+ export type CoverThemeId = string;
132
+ export type PresetCategory = 'basic' | 'content' | 'document';
107
133
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,iBAAiB;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,kBAAkB,CAAC;IACtC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,IAAI,GAAG,QAAQ,CAAC;IAC5B,SAAS,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,YAAY,CAAC;IAClD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACvC;AAED,MAAM,WAAW,gBAAgB;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,eAAe,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACnC,QAAQ,EAAE,aAAa,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,eAAe,CAAC;IAC9F,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,aAAa;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,cAAc,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE/E,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,kBAAkB,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;IACzC,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,QAAQ,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,GAAG,UAAU,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,EAAE,SAAS,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,CAAC;CACrD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}