claude-presentation-master 6.0.0 → 6.1.1
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/bin/cli.js +2 -2
- package/dist/index.d.mts +77 -13
- package/dist/index.d.ts +77 -13
- package/dist/index.js +286 -81
- package/dist/index.mjs +286 -81
- package/package.json +1 -1
package/bin/cli.js
CHANGED
|
@@ -20,7 +20,7 @@ const args = process.argv.slice(2);
|
|
|
20
20
|
|
|
21
21
|
// Help text
|
|
22
22
|
const helpText = `
|
|
23
|
-
Claude Presentation Master v6.
|
|
23
|
+
Claude Presentation Master v6.1.1
|
|
24
24
|
Generate world-class presentations using expert methodologies
|
|
25
25
|
|
|
26
26
|
100% FREE • Zero API Keys • Runs Locally
|
|
@@ -85,7 +85,7 @@ For more information: https://github.com/Stuinfla/claude-presentation-master
|
|
|
85
85
|
`;
|
|
86
86
|
|
|
87
87
|
// Version
|
|
88
|
-
const version = '6.
|
|
88
|
+
const version = '6.1.1';
|
|
89
89
|
|
|
90
90
|
// Parse arguments
|
|
91
91
|
function parseArgs(args) {
|
package/dist/index.d.mts
CHANGED
|
@@ -254,13 +254,41 @@ interface PresentationMetadata {
|
|
|
254
254
|
/** Themes/frameworks used */
|
|
255
255
|
frameworks: string[];
|
|
256
256
|
}
|
|
257
|
+
interface ContentSection$1 {
|
|
258
|
+
/** Section header text */
|
|
259
|
+
header: string;
|
|
260
|
+
/** Header level (1-6) */
|
|
261
|
+
level: number;
|
|
262
|
+
/** Body content */
|
|
263
|
+
content: string;
|
|
264
|
+
/** Bullet points */
|
|
265
|
+
bullets: string[];
|
|
266
|
+
/** Metrics extracted from section */
|
|
267
|
+
metrics: Array<{
|
|
268
|
+
value: string;
|
|
269
|
+
label: string;
|
|
270
|
+
context?: string;
|
|
271
|
+
}>;
|
|
272
|
+
}
|
|
257
273
|
interface ContentAnalysis$1 {
|
|
274
|
+
/** Detected presentation type */
|
|
275
|
+
detectedType: PresentationType$1;
|
|
276
|
+
/** Main title */
|
|
277
|
+
title: string;
|
|
278
|
+
/** Content sections */
|
|
279
|
+
sections: ContentSection$1[];
|
|
258
280
|
/** SCQA structure extracted */
|
|
259
281
|
scqa: SCQAStructure;
|
|
260
282
|
/** Sparkline narrative arc */
|
|
261
283
|
sparkline: SparklineStructure;
|
|
262
284
|
/** Key messages identified */
|
|
263
285
|
keyMessages: string[];
|
|
286
|
+
/** Data points (metrics, percentages, etc.) */
|
|
287
|
+
dataPoints: Array<{
|
|
288
|
+
value: string;
|
|
289
|
+
label: string;
|
|
290
|
+
context?: string;
|
|
291
|
+
}>;
|
|
264
292
|
/** Generated action titles */
|
|
265
293
|
titles: string[];
|
|
266
294
|
/** STAR moments identified */
|
|
@@ -611,7 +639,15 @@ declare class ContentAnalyzer {
|
|
|
611
639
|
private extractSCQA;
|
|
612
640
|
/**
|
|
613
641
|
* Extract STAR moments (Something They'll Always Remember)
|
|
614
|
-
* Per Nancy Duarte
|
|
642
|
+
* Per Nancy Duarte: These should be memorable, COMPLETE thoughts with impact
|
|
643
|
+
*
|
|
644
|
+
* CRITICAL REQUIREMENTS:
|
|
645
|
+
* - Must be complete sentences with subject + verb structure
|
|
646
|
+
* - Must have 5+ words minimum (no fragments!)
|
|
647
|
+
* - Must be 30+ characters
|
|
648
|
+
* - Must contain a verb
|
|
649
|
+
* - NOT fragments like "significant growth" or "cloud-first strategy"
|
|
650
|
+
* - NOT headers or topic labels
|
|
615
651
|
*/
|
|
616
652
|
private extractStarMoments;
|
|
617
653
|
/**
|
|
@@ -619,28 +655,27 @@ declare class ContentAnalyzer {
|
|
|
619
655
|
*/
|
|
620
656
|
private extractSparkline;
|
|
621
657
|
/**
|
|
622
|
-
* Extract key messages
|
|
658
|
+
* Extract key messages - the actual insights from the content
|
|
659
|
+
* Per Carmine Gallo: Rule of Three - max 3 key messages
|
|
660
|
+
* Per Barbara Minto: Messages should be actionable conclusions, not topics
|
|
623
661
|
*/
|
|
624
662
|
private extractKeyMessages;
|
|
625
663
|
/**
|
|
626
664
|
* Extract data points (metrics with values)
|
|
665
|
+
* IMPROVED: Smarter label extraction that understands markdown tables
|
|
627
666
|
*/
|
|
628
667
|
private extractDataPoints;
|
|
629
668
|
/**
|
|
630
|
-
*
|
|
669
|
+
* Extract a meaningful label from a line containing a metric
|
|
631
670
|
*/
|
|
632
|
-
private
|
|
633
|
-
/**
|
|
634
|
-
* Extract a label from surrounding context
|
|
635
|
-
* Fixes the "Century Interactive |" garbage issue by stripping table syntax
|
|
636
|
-
*/
|
|
637
|
-
private extractLabelFromContext;
|
|
671
|
+
private extractLabelFromLine;
|
|
638
672
|
/**
|
|
639
673
|
* Check if text contains any of the signals
|
|
640
674
|
*/
|
|
641
675
|
private containsSignals;
|
|
642
676
|
/**
|
|
643
677
|
* Extract first meaningful sentence from text
|
|
678
|
+
* CRITICAL: Must strip headers, CTA text, and fragments
|
|
644
679
|
*/
|
|
645
680
|
private extractFirstSentence;
|
|
646
681
|
}
|
|
@@ -664,8 +699,35 @@ declare class SlideFactory {
|
|
|
664
699
|
private isContentUsed;
|
|
665
700
|
/**
|
|
666
701
|
* Create slides from analyzed content.
|
|
702
|
+
*
|
|
703
|
+
* ARCHITECTURE (per KB expert methodologies):
|
|
704
|
+
* 1. Title slide - always first
|
|
705
|
+
* 2. Agenda slide - business mode only with 3+ sections
|
|
706
|
+
* 3. SCQA slides - Situation, Complication (per Minto)
|
|
707
|
+
* 4. Content slides - from sections with bullets/content
|
|
708
|
+
* 5. Metrics slide - if data points exist
|
|
709
|
+
* 6. Solution slide - SCQA answer
|
|
710
|
+
* 7. STAR moments - only if high-quality (per Duarte)
|
|
711
|
+
* 8. CTA slide - if call to action exists
|
|
712
|
+
* 9. Thank you slide - always last
|
|
667
713
|
*/
|
|
668
714
|
createSlides(analysis: ContentAnalysis$1, mode: PresentationMode$1): Promise<Slide[]>;
|
|
715
|
+
/**
|
|
716
|
+
* Create a slide from a section with bullets
|
|
717
|
+
*/
|
|
718
|
+
private createSectionBulletSlide;
|
|
719
|
+
/**
|
|
720
|
+
* Create a slide from a section with body content
|
|
721
|
+
*/
|
|
722
|
+
private createSectionContentSlide;
|
|
723
|
+
/**
|
|
724
|
+
* Extract first sentence from text
|
|
725
|
+
*/
|
|
726
|
+
private extractFirstSentence;
|
|
727
|
+
/**
|
|
728
|
+
* Create a metrics slide from data points
|
|
729
|
+
*/
|
|
730
|
+
private createMetricsSlide;
|
|
669
731
|
/**
|
|
670
732
|
* Create a title slide.
|
|
671
733
|
*/
|
|
@@ -707,11 +769,13 @@ declare class SlideFactory {
|
|
|
707
769
|
*/
|
|
708
770
|
private initializeTemplates;
|
|
709
771
|
/**
|
|
710
|
-
* Clean text by removing all content markers.
|
|
772
|
+
* Clean text by removing all markdown and content markers.
|
|
773
|
+
* CRITICAL: Must strip all formatting to prevent garbage in slides
|
|
711
774
|
*/
|
|
712
775
|
private cleanText;
|
|
713
776
|
/**
|
|
714
|
-
* Truncate text to max length at
|
|
777
|
+
* Truncate text to max length at sentence boundary when possible.
|
|
778
|
+
* CRITICAL: Never cut mid-number (99.5% should not become 99.)
|
|
715
779
|
*/
|
|
716
780
|
private truncate;
|
|
717
781
|
/**
|
|
@@ -723,7 +787,7 @@ declare class SlideFactory {
|
|
|
723
787
|
*/
|
|
724
788
|
private extractBullets;
|
|
725
789
|
/**
|
|
726
|
-
* Remove a statistic from text.
|
|
790
|
+
* Remove a statistic from text and clean thoroughly.
|
|
727
791
|
*/
|
|
728
792
|
private removeStatistic;
|
|
729
793
|
}
|
|
@@ -1359,4 +1423,4 @@ declare const _default: {
|
|
|
1359
1423
|
VERSION: string;
|
|
1360
1424
|
};
|
|
1361
1425
|
|
|
1362
|
-
export { type AccessibilityResults, type ChartData, type ChartDataset, ChartJsProvider, type ChartProvider, type ChartRequest, type ChartResult, type ChartType, type ColorPalette, CompositeChartProvider, CompositeImageProvider, type ContentAnalysis$1 as ContentAnalysis, ContentAnalyzer, type ContentQAResults, type ContrastIssue, type ExpertQAResults, type ExpertValidation, type FontSizeIssue, type GlanceTestResult, type ImageData, type ImageProvider, type ImageRequest, type ImageResult, KnowledgeGateway, LocalImageProvider, MermaidProvider, type MetricData, type OneIdeaResult, type OutputFormat, PlaceholderImageProvider, PowerPointGenerator, type PresentationConfig, PresentationEngine, type PresentationMetadata, type PresentationMode$1 as PresentationMode, type PresentationResult, type PresentationType, QAEngine, QAFailureError, type QAIssue, type QAResults, QuickChartProvider, RevealJsGenerator, type SCQAStructure, ScoreCalculator, type SignalNoiseResult, type Slide, type SlideContentScore, type SlideData, SlideFactory, type SlideTemplate, type SlideType, type SlideVisualScore, type SparklineStructure, TemplateEngine, TemplateNotFoundError, type ThemeName, UnsplashImageProvider, VERSION, ValidationError, type VisualQAResults, createDefaultChartProvider, createDefaultImageProvider, _default as default, generate, getKnowledgeGateway, validate };
|
|
1426
|
+
export { type AccessibilityResults, type ChartData, type ChartDataset, ChartJsProvider, type ChartProvider, type ChartRequest, type ChartResult, type ChartType, type ColorPalette, CompositeChartProvider, CompositeImageProvider, type ContentAnalysis$1 as ContentAnalysis, ContentAnalyzer, type ContentQAResults, type ContentSection$1 as ContentSection, type ContrastIssue, type ExpertQAResults, type ExpertValidation, type FontSizeIssue, type GlanceTestResult, type ImageData, type ImageProvider, type ImageRequest, type ImageResult, KnowledgeGateway, LocalImageProvider, MermaidProvider, type MetricData, type OneIdeaResult, type OutputFormat, PlaceholderImageProvider, PowerPointGenerator, type PresentationConfig, PresentationEngine, type PresentationMetadata, type PresentationMode$1 as PresentationMode, type PresentationResult, type PresentationType, QAEngine, QAFailureError, type QAIssue, type QAResults, QuickChartProvider, RevealJsGenerator, type SCQAStructure, ScoreCalculator, type SignalNoiseResult, type Slide, type SlideContentScore, type SlideData, SlideFactory, type SlideTemplate, type SlideType, type SlideVisualScore, type SparklineStructure, TemplateEngine, TemplateNotFoundError, type ThemeName, UnsplashImageProvider, VERSION, ValidationError, type VisualQAResults, createDefaultChartProvider, createDefaultImageProvider, _default as default, generate, getKnowledgeGateway, validate };
|
package/dist/index.d.ts
CHANGED
|
@@ -254,13 +254,41 @@ interface PresentationMetadata {
|
|
|
254
254
|
/** Themes/frameworks used */
|
|
255
255
|
frameworks: string[];
|
|
256
256
|
}
|
|
257
|
+
interface ContentSection$1 {
|
|
258
|
+
/** Section header text */
|
|
259
|
+
header: string;
|
|
260
|
+
/** Header level (1-6) */
|
|
261
|
+
level: number;
|
|
262
|
+
/** Body content */
|
|
263
|
+
content: string;
|
|
264
|
+
/** Bullet points */
|
|
265
|
+
bullets: string[];
|
|
266
|
+
/** Metrics extracted from section */
|
|
267
|
+
metrics: Array<{
|
|
268
|
+
value: string;
|
|
269
|
+
label: string;
|
|
270
|
+
context?: string;
|
|
271
|
+
}>;
|
|
272
|
+
}
|
|
257
273
|
interface ContentAnalysis$1 {
|
|
274
|
+
/** Detected presentation type */
|
|
275
|
+
detectedType: PresentationType$1;
|
|
276
|
+
/** Main title */
|
|
277
|
+
title: string;
|
|
278
|
+
/** Content sections */
|
|
279
|
+
sections: ContentSection$1[];
|
|
258
280
|
/** SCQA structure extracted */
|
|
259
281
|
scqa: SCQAStructure;
|
|
260
282
|
/** Sparkline narrative arc */
|
|
261
283
|
sparkline: SparklineStructure;
|
|
262
284
|
/** Key messages identified */
|
|
263
285
|
keyMessages: string[];
|
|
286
|
+
/** Data points (metrics, percentages, etc.) */
|
|
287
|
+
dataPoints: Array<{
|
|
288
|
+
value: string;
|
|
289
|
+
label: string;
|
|
290
|
+
context?: string;
|
|
291
|
+
}>;
|
|
264
292
|
/** Generated action titles */
|
|
265
293
|
titles: string[];
|
|
266
294
|
/** STAR moments identified */
|
|
@@ -611,7 +639,15 @@ declare class ContentAnalyzer {
|
|
|
611
639
|
private extractSCQA;
|
|
612
640
|
/**
|
|
613
641
|
* Extract STAR moments (Something They'll Always Remember)
|
|
614
|
-
* Per Nancy Duarte
|
|
642
|
+
* Per Nancy Duarte: These should be memorable, COMPLETE thoughts with impact
|
|
643
|
+
*
|
|
644
|
+
* CRITICAL REQUIREMENTS:
|
|
645
|
+
* - Must be complete sentences with subject + verb structure
|
|
646
|
+
* - Must have 5+ words minimum (no fragments!)
|
|
647
|
+
* - Must be 30+ characters
|
|
648
|
+
* - Must contain a verb
|
|
649
|
+
* - NOT fragments like "significant growth" or "cloud-first strategy"
|
|
650
|
+
* - NOT headers or topic labels
|
|
615
651
|
*/
|
|
616
652
|
private extractStarMoments;
|
|
617
653
|
/**
|
|
@@ -619,28 +655,27 @@ declare class ContentAnalyzer {
|
|
|
619
655
|
*/
|
|
620
656
|
private extractSparkline;
|
|
621
657
|
/**
|
|
622
|
-
* Extract key messages
|
|
658
|
+
* Extract key messages - the actual insights from the content
|
|
659
|
+
* Per Carmine Gallo: Rule of Three - max 3 key messages
|
|
660
|
+
* Per Barbara Minto: Messages should be actionable conclusions, not topics
|
|
623
661
|
*/
|
|
624
662
|
private extractKeyMessages;
|
|
625
663
|
/**
|
|
626
664
|
* Extract data points (metrics with values)
|
|
665
|
+
* IMPROVED: Smarter label extraction that understands markdown tables
|
|
627
666
|
*/
|
|
628
667
|
private extractDataPoints;
|
|
629
668
|
/**
|
|
630
|
-
*
|
|
669
|
+
* Extract a meaningful label from a line containing a metric
|
|
631
670
|
*/
|
|
632
|
-
private
|
|
633
|
-
/**
|
|
634
|
-
* Extract a label from surrounding context
|
|
635
|
-
* Fixes the "Century Interactive |" garbage issue by stripping table syntax
|
|
636
|
-
*/
|
|
637
|
-
private extractLabelFromContext;
|
|
671
|
+
private extractLabelFromLine;
|
|
638
672
|
/**
|
|
639
673
|
* Check if text contains any of the signals
|
|
640
674
|
*/
|
|
641
675
|
private containsSignals;
|
|
642
676
|
/**
|
|
643
677
|
* Extract first meaningful sentence from text
|
|
678
|
+
* CRITICAL: Must strip headers, CTA text, and fragments
|
|
644
679
|
*/
|
|
645
680
|
private extractFirstSentence;
|
|
646
681
|
}
|
|
@@ -664,8 +699,35 @@ declare class SlideFactory {
|
|
|
664
699
|
private isContentUsed;
|
|
665
700
|
/**
|
|
666
701
|
* Create slides from analyzed content.
|
|
702
|
+
*
|
|
703
|
+
* ARCHITECTURE (per KB expert methodologies):
|
|
704
|
+
* 1. Title slide - always first
|
|
705
|
+
* 2. Agenda slide - business mode only with 3+ sections
|
|
706
|
+
* 3. SCQA slides - Situation, Complication (per Minto)
|
|
707
|
+
* 4. Content slides - from sections with bullets/content
|
|
708
|
+
* 5. Metrics slide - if data points exist
|
|
709
|
+
* 6. Solution slide - SCQA answer
|
|
710
|
+
* 7. STAR moments - only if high-quality (per Duarte)
|
|
711
|
+
* 8. CTA slide - if call to action exists
|
|
712
|
+
* 9. Thank you slide - always last
|
|
667
713
|
*/
|
|
668
714
|
createSlides(analysis: ContentAnalysis$1, mode: PresentationMode$1): Promise<Slide[]>;
|
|
715
|
+
/**
|
|
716
|
+
* Create a slide from a section with bullets
|
|
717
|
+
*/
|
|
718
|
+
private createSectionBulletSlide;
|
|
719
|
+
/**
|
|
720
|
+
* Create a slide from a section with body content
|
|
721
|
+
*/
|
|
722
|
+
private createSectionContentSlide;
|
|
723
|
+
/**
|
|
724
|
+
* Extract first sentence from text
|
|
725
|
+
*/
|
|
726
|
+
private extractFirstSentence;
|
|
727
|
+
/**
|
|
728
|
+
* Create a metrics slide from data points
|
|
729
|
+
*/
|
|
730
|
+
private createMetricsSlide;
|
|
669
731
|
/**
|
|
670
732
|
* Create a title slide.
|
|
671
733
|
*/
|
|
@@ -707,11 +769,13 @@ declare class SlideFactory {
|
|
|
707
769
|
*/
|
|
708
770
|
private initializeTemplates;
|
|
709
771
|
/**
|
|
710
|
-
* Clean text by removing all content markers.
|
|
772
|
+
* Clean text by removing all markdown and content markers.
|
|
773
|
+
* CRITICAL: Must strip all formatting to prevent garbage in slides
|
|
711
774
|
*/
|
|
712
775
|
private cleanText;
|
|
713
776
|
/**
|
|
714
|
-
* Truncate text to max length at
|
|
777
|
+
* Truncate text to max length at sentence boundary when possible.
|
|
778
|
+
* CRITICAL: Never cut mid-number (99.5% should not become 99.)
|
|
715
779
|
*/
|
|
716
780
|
private truncate;
|
|
717
781
|
/**
|
|
@@ -723,7 +787,7 @@ declare class SlideFactory {
|
|
|
723
787
|
*/
|
|
724
788
|
private extractBullets;
|
|
725
789
|
/**
|
|
726
|
-
* Remove a statistic from text.
|
|
790
|
+
* Remove a statistic from text and clean thoroughly.
|
|
727
791
|
*/
|
|
728
792
|
private removeStatistic;
|
|
729
793
|
}
|
|
@@ -1359,4 +1423,4 @@ declare const _default: {
|
|
|
1359
1423
|
VERSION: string;
|
|
1360
1424
|
};
|
|
1361
1425
|
|
|
1362
|
-
export { type AccessibilityResults, type ChartData, type ChartDataset, ChartJsProvider, type ChartProvider, type ChartRequest, type ChartResult, type ChartType, type ColorPalette, CompositeChartProvider, CompositeImageProvider, type ContentAnalysis$1 as ContentAnalysis, ContentAnalyzer, type ContentQAResults, type ContrastIssue, type ExpertQAResults, type ExpertValidation, type FontSizeIssue, type GlanceTestResult, type ImageData, type ImageProvider, type ImageRequest, type ImageResult, KnowledgeGateway, LocalImageProvider, MermaidProvider, type MetricData, type OneIdeaResult, type OutputFormat, PlaceholderImageProvider, PowerPointGenerator, type PresentationConfig, PresentationEngine, type PresentationMetadata, type PresentationMode$1 as PresentationMode, type PresentationResult, type PresentationType, QAEngine, QAFailureError, type QAIssue, type QAResults, QuickChartProvider, RevealJsGenerator, type SCQAStructure, ScoreCalculator, type SignalNoiseResult, type Slide, type SlideContentScore, type SlideData, SlideFactory, type SlideTemplate, type SlideType, type SlideVisualScore, type SparklineStructure, TemplateEngine, TemplateNotFoundError, type ThemeName, UnsplashImageProvider, VERSION, ValidationError, type VisualQAResults, createDefaultChartProvider, createDefaultImageProvider, _default as default, generate, getKnowledgeGateway, validate };
|
|
1426
|
+
export { type AccessibilityResults, type ChartData, type ChartDataset, ChartJsProvider, type ChartProvider, type ChartRequest, type ChartResult, type ChartType, type ColorPalette, CompositeChartProvider, CompositeImageProvider, type ContentAnalysis$1 as ContentAnalysis, ContentAnalyzer, type ContentQAResults, type ContentSection$1 as ContentSection, type ContrastIssue, type ExpertQAResults, type ExpertValidation, type FontSizeIssue, type GlanceTestResult, type ImageData, type ImageProvider, type ImageRequest, type ImageResult, KnowledgeGateway, LocalImageProvider, MermaidProvider, type MetricData, type OneIdeaResult, type OutputFormat, PlaceholderImageProvider, PowerPointGenerator, type PresentationConfig, PresentationEngine, type PresentationMetadata, type PresentationMode$1 as PresentationMode, type PresentationResult, type PresentationType, QAEngine, QAFailureError, type QAIssue, type QAResults, QuickChartProvider, RevealJsGenerator, type SCQAStructure, ScoreCalculator, type SignalNoiseResult, type Slide, type SlideContentScore, type SlideData, SlideFactory, type SlideTemplate, type SlideType, type SlideVisualScore, type SparklineStructure, TemplateEngine, TemplateNotFoundError, type ThemeName, UnsplashImageProvider, VERSION, ValidationError, type VisualQAResults, createDefaultChartProvider, createDefaultImageProvider, _default as default, generate, getKnowledgeGateway, validate };
|