From 2b7d80c348ca68d28948a31d1db4b200b5ed339c Mon Sep 17 00:00:00 2001 From: peterpeterparker Date: Thu, 23 Jul 2020 12:52:18 +0200 Subject: [PATCH] fix: missing clean footer and header and correct regexp --- .../editor/events/deck/deck-events.handler.tsx | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/studio/src/app/handlers/editor/events/deck/deck-events.handler.tsx b/studio/src/app/handlers/editor/events/deck/deck-events.handler.tsx index f88526496..f4ca11414 100644 --- a/studio/src/app/handlers/editor/events/deck/deck-events.handler.tsx +++ b/studio/src/app/handlers/editor/events/deck/deck-events.handler.tsx @@ -767,14 +767,23 @@ export class DeckEventsHandler { let result: string = await cleanContent(content); - if (!slide.hasAttribute('custom-background')) { - result = result.replace(/
(.*?)<\/div>/g, ''); - } + result = await this.cleanSlideCustomSlots(slide, result, 'background'); + result = await this.cleanSlideCustomSlots(slide, result, 'header'); + result = await this.cleanSlideCustomSlots(slide, result, 'footer'); resolve(result); }); } + private async cleanSlideCustomSlots(slide: HTMLElement, content: string, customAttribute: 'background' | 'header' | 'footer'): Promise { + if (!slide.hasAttribute(`custom-${customAttribute}`)) { + const regex: RegExp = new RegExp(`
`, 'g'); + content = content.replace(regex, ''); + } + + return content; + } + private filterSlideContentSlots(slide: HTMLElement): Promise { return new Promise((resolve) => { if (!slide || !document) {