claude-presentation-master 3.8.0 → 3.8.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.
@@ -0,0 +1,17 @@
1
+ import {
2
+ applyExtends,
3
+ esm_default,
4
+ hideBin,
5
+ lib_default
6
+ } from "./chunk-4MOE77QU.mjs";
7
+ import "./chunk-HEBXNMVQ.mjs";
8
+
9
+ // node_modules/yargs/helpers/helpers.mjs
10
+ var applyExtends2 = (config, cwd, mergeExtends) => {
11
+ return applyExtends(config, cwd, mergeExtends, esm_default);
12
+ };
13
+ export {
14
+ lib_default as Parser,
15
+ applyExtends2 as applyExtends,
16
+ hideBin
17
+ };
package/dist/index.d.mts CHANGED
@@ -711,7 +711,10 @@ declare class SlideGeneratorV2 {
711
711
  private splitIntoSections;
712
712
  /**
713
713
  * Process section content into slides.
714
- * Tables become table slides. Lists become bullet slides.
714
+ * RULES:
715
+ * 1. Tables ALWAYS become table slides - NEVER extract to metrics
716
+ * 2. Empty sections are SKIPPED - no blank divider slides
717
+ * 3. Sections with minimal content are combined into statement slides
715
718
  */
716
719
  private processSectionContent;
717
720
  /**
@@ -720,9 +723,17 @@ declare class SlideGeneratorV2 {
720
723
  private createTableSlide;
721
724
  /**
722
725
  * Create bullet slides from list content.
723
- * NEVER truncate bullets. Split into multiple slides if needed.
726
+ * RULES:
727
+ * 1. NEVER truncate bullets
728
+ * 2. NEVER create slides with only 1-2 bullets (orphan slides)
729
+ * 3. If there are fewer than minBulletsToKeep bullets, combine them into a statement slide
724
730
  */
725
731
  private createBulletSlides;
732
+ /**
733
+ * Split bullets into chunks without creating orphan slides.
734
+ * If the last chunk would have fewer than minBullets, steal from previous chunk.
735
+ */
736
+ private splitBulletsWithoutOrphans;
726
737
  /**
727
738
  * Get complete text from a list item, including nested content.
728
739
  * NEVER truncate.
@@ -1285,11 +1296,12 @@ declare function initRenderer(): Promise<Renderer>;
1285
1296
  /**
1286
1297
  * Renderer V2 - Clean, Professional, No Garbage
1287
1298
  *
1288
- * Renders slides to HTML with:
1299
+ * Renders slides to HTML and PDF with:
1289
1300
  * - Tables as actual tables (not mangled metrics)
1290
1301
  * - Complete bullets (never truncated)
1291
1302
  * - Clean professional CSS (no random stock photos)
1292
1303
  * - McKinsey/BCG style dark theme
1304
+ * - Automatic PDF generation alongside HTML
1293
1305
  */
1294
1306
 
1295
1307
  declare class RendererV2 {
@@ -1297,6 +1309,27 @@ declare class RendererV2 {
1297
1309
  * Render slides to complete HTML document.
1298
1310
  */
1299
1311
  render(slides: SlideV2[], title?: string): string;
1312
+ /**
1313
+ * Render slides to both HTML and PDF files.
1314
+ * Always generates both formats for easy sharing.
1315
+ */
1316
+ renderToFiles(slides: SlideV2[], outputPath: string, title?: string): Promise<{
1317
+ htmlPath: string;
1318
+ pdfPath: string;
1319
+ }>;
1320
+ /**
1321
+ * Render slides directly to PDF using Puppeteer.
1322
+ * Creates a printable PDF with one slide per page.
1323
+ */
1324
+ renderToPDF(slides: SlideV2[], outputPath: string, title?: string): Promise<Uint8Array>;
1325
+ /**
1326
+ * Render HTML optimized for PDF printing (no reveal.js, static pages).
1327
+ */
1328
+ private renderForPrint;
1329
+ /**
1330
+ * Render slide content (shared between HTML and PDF renderers).
1331
+ */
1332
+ private renderSlideContent;
1300
1333
  /**
1301
1334
  * Render a single slide.
1302
1335
  */
package/dist/index.d.ts CHANGED
@@ -711,7 +711,10 @@ declare class SlideGeneratorV2 {
711
711
  private splitIntoSections;
712
712
  /**
713
713
  * Process section content into slides.
714
- * Tables become table slides. Lists become bullet slides.
714
+ * RULES:
715
+ * 1. Tables ALWAYS become table slides - NEVER extract to metrics
716
+ * 2. Empty sections are SKIPPED - no blank divider slides
717
+ * 3. Sections with minimal content are combined into statement slides
715
718
  */
716
719
  private processSectionContent;
717
720
  /**
@@ -720,9 +723,17 @@ declare class SlideGeneratorV2 {
720
723
  private createTableSlide;
721
724
  /**
722
725
  * Create bullet slides from list content.
723
- * NEVER truncate bullets. Split into multiple slides if needed.
726
+ * RULES:
727
+ * 1. NEVER truncate bullets
728
+ * 2. NEVER create slides with only 1-2 bullets (orphan slides)
729
+ * 3. If there are fewer than minBulletsToKeep bullets, combine them into a statement slide
724
730
  */
725
731
  private createBulletSlides;
732
+ /**
733
+ * Split bullets into chunks without creating orphan slides.
734
+ * If the last chunk would have fewer than minBullets, steal from previous chunk.
735
+ */
736
+ private splitBulletsWithoutOrphans;
726
737
  /**
727
738
  * Get complete text from a list item, including nested content.
728
739
  * NEVER truncate.
@@ -1285,11 +1296,12 @@ declare function initRenderer(): Promise<Renderer>;
1285
1296
  /**
1286
1297
  * Renderer V2 - Clean, Professional, No Garbage
1287
1298
  *
1288
- * Renders slides to HTML with:
1299
+ * Renders slides to HTML and PDF with:
1289
1300
  * - Tables as actual tables (not mangled metrics)
1290
1301
  * - Complete bullets (never truncated)
1291
1302
  * - Clean professional CSS (no random stock photos)
1292
1303
  * - McKinsey/BCG style dark theme
1304
+ * - Automatic PDF generation alongside HTML
1293
1305
  */
1294
1306
 
1295
1307
  declare class RendererV2 {
@@ -1297,6 +1309,27 @@ declare class RendererV2 {
1297
1309
  * Render slides to complete HTML document.
1298
1310
  */
1299
1311
  render(slides: SlideV2[], title?: string): string;
1312
+ /**
1313
+ * Render slides to both HTML and PDF files.
1314
+ * Always generates both formats for easy sharing.
1315
+ */
1316
+ renderToFiles(slides: SlideV2[], outputPath: string, title?: string): Promise<{
1317
+ htmlPath: string;
1318
+ pdfPath: string;
1319
+ }>;
1320
+ /**
1321
+ * Render slides directly to PDF using Puppeteer.
1322
+ * Creates a printable PDF with one slide per page.
1323
+ */
1324
+ renderToPDF(slides: SlideV2[], outputPath: string, title?: string): Promise<Uint8Array>;
1325
+ /**
1326
+ * Render HTML optimized for PDF printing (no reveal.js, static pages).
1327
+ */
1328
+ private renderForPrint;
1329
+ /**
1330
+ * Render slide content (shared between HTML and PDF renderers).
1331
+ */
1332
+ private renderSlideContent;
1300
1333
  /**
1301
1334
  * Render a single slide.
1302
1335
  */