Skip to content
Snippets Groups Projects
unit.factory.ts 834 B
Newer Older
  • Learn to ignore specific revisions
  • import { Page, Section, Unit } from '../interfaces/unit';
    
    export class UnitFactory {
      static generateEmptyUnit(): Unit {
        return {
          unitDefinitionType: 'TODO',
          pages: [UnitFactory.generateEmptyPage()]
        };
      }
    
      static generateEmptyPage(): Page {
        return {
          sections: [UnitFactory.generateEmptySection()],
          hasMaxWidth: false,
          maxWidth: 900,
          margin: 30,
          backgroundColor: '#ffffff',
          alwaysVisible: false,
          alwaysVisiblePagePosition: 'left',
          alwaysVisibleAspectRatio: 50
        };
      }
    
      static generateEmptySection(): Section {
        return {
          elements: [],
          height: 400,
          backgroundColor: 'white',
          dynamicPositioning: false,
          autoColumnSize: true,
          autoRowSize: true,
          gridColumnSizes: '1fr 1fr',
          gridRowSizes: '1fr'
        };
      }
    }