(frontend) adapt export to divider block

We have a new block type, the divider block.
We have to adapt the export to handle this
new block type.
This commit is contained in:
Anthony LC
2025-03-11 12:24:22 +01:00
committed by Anthony LC
parent 534085439f
commit 4316b4e67d
7 changed files with 100 additions and 1 deletions

View File

@@ -0,0 +1,24 @@
import { Paragraph } from 'docx';
import { useCunninghamTheme } from '@/cunningham';
import { DocsExporterDocx } from '../types';
export const blockMappingDividerDocx: DocsExporterDocx['mappings']['blockMapping']['divider'] =
() => {
const { colorsTokens } = useCunninghamTheme.getState();
return new Paragraph({
spacing: {
before: 200,
},
border: {
top: {
color: colorsTokens()['greyscale-300'],
size: 1,
style: 'single',
space: 1,
},
},
});
};

View File

@@ -0,0 +1,20 @@
import { Text } from '@react-pdf/renderer';
import { useCunninghamTheme } from '@/cunningham';
import { DocsExporterPDF } from '../types';
export const blockMappingDividerPDF: DocsExporterPDF['mappings']['blockMapping']['divider'] =
() => {
const { colorsTokens } = useCunninghamTheme.getState();
return (
<Text
style={{
marginVertical: 10,
backgroundColor: colorsTokens()['greyscale-300'],
height: '2px',
}}
/>
);
};

View File

@@ -1,3 +1,5 @@
export * from './dividerDocx';
export * from './dividerPDF';
export * from './headingPDF';
export * from './paragraphPDF';
export * from './quoteDocx';

View File

@@ -1,12 +1,16 @@
import { docxDefaultSchemaMappings } from '@blocknote/xl-docx-exporter';
import { blockMappingQuoteDocx } from './blocks-mapping/';
import {
blockMappingDividerDocx,
blockMappingQuoteDocx,
} from './blocks-mapping/';
import { DocsExporterDocx } from './types';
export const docxDocsSchemaMappings: DocsExporterDocx['mappings'] = {
...docxDefaultSchemaMappings,
blockMapping: {
...docxDefaultSchemaMappings.blockMapping,
divider: blockMappingDividerDocx,
quote: blockMappingQuoteDocx,
},
};

View File

@@ -1,6 +1,7 @@
import { pdfDefaultSchemaMappings } from '@blocknote/xl-pdf-exporter';
import {
blockMappingDividerPDF,
blockMappingHeadingPDF,
blockMappingParagraphPDF,
blockMappingQuotePDF,
@@ -14,6 +15,7 @@ export const pdfDocsSchemaMappings: DocsExporterPDF['mappings'] = {
...pdfDefaultSchemaMappings.blockMapping,
heading: blockMappingHeadingPDF,
paragraph: blockMappingParagraphPDF,
divider: blockMappingDividerPDF,
quote: blockMappingQuotePDF,
table: blockMappingTablePDF,
},