-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpatch_audio.cjs
More file actions
25 lines (19 loc) · 1.28 KB
/
Copy pathpatch_audio.cjs
File metadata and controls
25 lines (19 loc) · 1.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
const fs = require('fs');
const file = 'src/components/PitchDeckShowcase.tsx';
let content = fs.readFileSync(file, 'utf8');
const oldAudio = ` const textToSpeak = isArabic
? (currentSlideData.godfatherScriptAr || \`\${currentSlideData.titleAr}. \${currentSlideData.quoteAr}. \${currentSlideData.bulletsAr.join('. ')}\`)
: \`\${currentSlideData.titleEn}. \${currentSlideData.quoteEn}. \${currentSlideData.bulletsEn.join('. ')}\`;
const utterance = new SpeechSynthesisUtterance(textToSpeak);
utterance.lang = isArabic ? 'ar-SA' : 'en-US';`;
const newAudio = ` // Force Arabic audio for Slide 2 (Founder Story) even if UI is in English
const forceArabicAudio = currentSlideData.num === 2;
const speakArabic = isArabic || forceArabicAudio;
const textToSpeak = speakArabic
? (currentSlideData.godfatherScriptAr || \`\${currentSlideData.titleAr}. \${currentSlideData.quoteAr}. \${currentSlideData.bulletsAr.join('. ')}\`)
: \`\${currentSlideData.titleEn}. \${currentSlideData.quoteEn}. \${currentSlideData.bulletsEn.join('. ')}\`;
const utterance = new SpeechSynthesisUtterance(textToSpeak);
utterance.lang = speakArabic ? 'ar-SA' : 'en-US';`;
content = content.replace(oldAudio, newAudio);
fs.writeFileSync(file, content);
console.log("Patched audio");