Fix App.jsx two-page workflow JSX render and update study app layout

This commit is contained in:
nmemmert
2026-05-26 17:14:30 -04:00
commit f47a41ce6f
4459 changed files with 1059845 additions and 0 deletions
+10
View File
@@ -0,0 +1,10 @@
import { IContext, IXmlableObject, XmlComponent } from '../../xml-components';
import { ISectionPropertiesOptions } from './section-properties/section-properties';
export declare class Body extends XmlComponent {
private readonly sections;
constructor();
addSection(options: ISectionPropertiesOptions): void;
prepForXml(context: IContext): IXmlableObject | undefined;
push(component: XmlComponent): void;
private createSectionParagraph;
}
+1
View File
@@ -0,0 +1 @@
export {};
+2
View File
@@ -0,0 +1,2 @@
export * from './body';
export * from './section-properties';
@@ -0,0 +1,2 @@
export * from './section-properties';
export * from './properties';
@@ -0,0 +1,9 @@
import { XmlComponent } from '../../../../xml-components';
import { PositiveUniversalMeasure } from '../../../../../util/values';
export type IColumnAttributes = {
readonly width: number | PositiveUniversalMeasure;
readonly space?: number | PositiveUniversalMeasure;
};
export declare class Column extends XmlComponent {
constructor(options: IColumnAttributes);
}
@@ -0,0 +1,11 @@
import { XmlComponent } from '../../../../xml-components';
import { PositiveUniversalMeasure } from '../../../../../util/values';
import { Column } from './column';
export type IColumnsAttributes = {
readonly space?: number | PositiveUniversalMeasure;
readonly count?: number;
readonly separate?: boolean;
readonly equalWidth?: boolean;
readonly children?: readonly Column[];
};
export declare const createColumns: ({ space, count, separate, equalWidth, children }: IColumnsAttributes) => XmlComponent;
@@ -0,0 +1 @@
export {};
@@ -0,0 +1,13 @@
import { XmlComponent } from '../../../../xml-components';
export declare const DocumentGridType: {
readonly DEFAULT: "default";
readonly LINES: "lines";
readonly LINES_AND_CHARS: "linesAndChars";
readonly SNAP_TO_CHARS: "snapToChars";
};
export type IDocGridAttributesProperties = {
readonly type?: (typeof DocumentGridType)[keyof typeof DocumentGridType];
readonly linePitch: number;
readonly charSpace?: number;
};
export declare const createDocumentGrid: ({ type, linePitch, charSpace }: IDocGridAttributesProperties) => XmlComponent;
@@ -0,0 +1 @@
export {};
@@ -0,0 +1,15 @@
import { XmlComponent } from '../../../../xml-components';
export declare const HeaderFooterReferenceType: {
readonly DEFAULT: "default";
readonly FIRST: "first";
readonly EVEN: "even";
};
export type IHeaderFooterOptions = {
readonly type?: (typeof HeaderFooterReferenceType)[keyof typeof HeaderFooterReferenceType];
readonly id?: number;
};
export declare const HeaderFooterType: {
readonly HEADER: "w:headerReference";
readonly FOOTER: "w:footerReference";
};
export declare const createHeaderFooterReference: (type: (typeof HeaderFooterType)[keyof typeof HeaderFooterType], options: IHeaderFooterOptions) => XmlComponent;
@@ -0,0 +1 @@
export {};
@@ -0,0 +1,12 @@
export * from './column';
export * from './columns';
export * from './doc-grid';
export * from './page-size';
export * from './page-number';
export * from './page-borders';
export * from './page-margin';
export * from './page-borders';
export * from './page-text-direction';
export * from './line-number';
export * from './section-type';
export * from './header-footer-reference';
@@ -0,0 +1,14 @@
import { XmlComponent } from '../../../../xml-components';
import { PositiveUniversalMeasure } from '../../../../../util/values';
export declare const LineNumberRestartFormat: {
readonly NEW_PAGE: "newPage";
readonly NEW_SECTION: "newSection";
readonly CONTINUOUS: "continuous";
};
export type ILineNumberAttributes = {
readonly countBy?: number;
readonly start?: number;
readonly restart?: (typeof LineNumberRestartFormat)[keyof typeof LineNumberRestartFormat];
readonly distance?: number | PositiveUniversalMeasure;
};
export declare const createLineNumberType: ({ countBy, start, restart, distance }: ILineNumberAttributes) => XmlComponent;
@@ -0,0 +1 @@
export {};
@@ -0,0 +1,30 @@
import { IBorderOptions } from '../../../../border';
import { IgnoreIfEmptyXmlComponent } from '../../../../xml-components';
export declare const PageBorderDisplay: {
readonly ALL_PAGES: "allPages";
readonly FIRST_PAGE: "firstPage";
readonly NOT_FIRST_PAGE: "notFirstPage";
};
export declare const PageBorderOffsetFrom: {
readonly PAGE: "page";
readonly TEXT: "text";
};
export declare const PageBorderZOrder: {
readonly BACK: "back";
readonly FRONT: "front";
};
export type IPageBorderAttributes = {
readonly display?: (typeof PageBorderDisplay)[keyof typeof PageBorderDisplay];
readonly offsetFrom?: (typeof PageBorderOffsetFrom)[keyof typeof PageBorderOffsetFrom];
readonly zOrder?: (typeof PageBorderZOrder)[keyof typeof PageBorderZOrder];
};
export type IPageBordersOptions = {
readonly pageBorders?: IPageBorderAttributes;
readonly pageBorderTop?: IBorderOptions;
readonly pageBorderRight?: IBorderOptions;
readonly pageBorderBottom?: IBorderOptions;
readonly pageBorderLeft?: IBorderOptions;
};
export declare class PageBorders extends IgnoreIfEmptyXmlComponent {
constructor(options?: IPageBordersOptions);
}
@@ -0,0 +1 @@
export {};
@@ -0,0 +1,12 @@
import { XmlComponent } from '../../../../xml-components';
import { PositiveUniversalMeasure, UniversalMeasure } from '../../../../../util/values';
export type IPageMarginAttributes = {
readonly top?: number | UniversalMeasure;
readonly right?: number | PositiveUniversalMeasure;
readonly bottom?: number | UniversalMeasure;
readonly left?: number | PositiveUniversalMeasure;
readonly header?: number | PositiveUniversalMeasure;
readonly footer?: number | PositiveUniversalMeasure;
readonly gutter?: number | PositiveUniversalMeasure;
};
export declare const createPageMargin: (top: number | UniversalMeasure, right: number | PositiveUniversalMeasure, bottom: number | UniversalMeasure, left: number | PositiveUniversalMeasure, header: number | PositiveUniversalMeasure, footer: number | PositiveUniversalMeasure, gutter: number | PositiveUniversalMeasure) => XmlComponent;
@@ -0,0 +1,15 @@
import { NumberFormat } from '../../../../shared/number-format';
import { XmlComponent } from '../../../../xml-components';
export declare const PageNumberSeparator: {
readonly HYPHEN: "hyphen";
readonly PERIOD: "period";
readonly COLON: "colon";
readonly EM_DASH: "emDash";
readonly EN_DASH: "endash";
};
export type IPageNumberTypeAttributes = {
readonly start?: number;
readonly formatType?: (typeof NumberFormat)[keyof typeof NumberFormat];
readonly separator?: (typeof PageNumberSeparator)[keyof typeof PageNumberSeparator];
};
export declare const createPageNumberType: ({ start, formatType, separator }: IPageNumberTypeAttributes) => XmlComponent;
@@ -0,0 +1,13 @@
import { XmlComponent } from '../../../../xml-components';
import { PositiveUniversalMeasure } from '../../../../../util/values';
export declare const PageOrientation: {
readonly PORTRAIT: "portrait";
readonly LANDSCAPE: "landscape";
};
export type IPageSizeAttributes = {
readonly width: number | PositiveUniversalMeasure;
readonly height: number | PositiveUniversalMeasure;
readonly orientation?: (typeof PageOrientation)[keyof typeof PageOrientation];
readonly code?: number;
};
export declare const createPageSize: ({ width, height, orientation, code }: IPageSizeAttributes) => XmlComponent;
@@ -0,0 +1 @@
export {};
@@ -0,0 +1,8 @@
import { XmlComponent } from '../../../../xml-components';
export declare const PageTextDirectionType: {
readonly LEFT_TO_RIGHT_TOP_TO_BOTTOM: "lrTb";
readonly TOP_TO_BOTTOM_RIGHT_TO_LEFT: "tbRl";
};
export declare class PageTextDirection extends XmlComponent {
constructor(value: (typeof PageTextDirectionType)[keyof typeof PageTextDirectionType]);
}
@@ -0,0 +1 @@
export {};
@@ -0,0 +1,9 @@
import { XmlComponent } from '../../../../xml-components';
export declare const SectionType: {
readonly NEXT_PAGE: "nextPage";
readonly NEXT_COLUMN: "nextColumn";
readonly CONTINUOUS: "continuous";
readonly EVEN_PAGE: "evenPage";
readonly ODD_PAGE: "oddPage";
};
export declare const createSectionType: (value: (typeof SectionType)[keyof typeof SectionType]) => XmlComponent;
@@ -0,0 +1 @@
export {};
@@ -0,0 +1,61 @@
import { FooterWrapper } from '../../../footer-wrapper';
import { HeaderWrapper } from '../../../header-wrapper';
import { IChangedAttributesProperties } from '../../../track-revision/track-revision';
import { SectionVerticalAlign } from '../../../vertical-align';
import { XmlComponent } from '../../../xml-components';
import { IColumnsAttributes } from './properties/columns';
import { IDocGridAttributesProperties } from './properties/doc-grid';
import { ILineNumberAttributes } from './properties/line-number';
import { IPageBordersOptions } from './properties/page-borders';
import { IPageMarginAttributes } from './properties/page-margin';
import { IPageNumberTypeAttributes } from './properties/page-number';
import { IPageSizeAttributes } from './properties/page-size';
import { PageTextDirectionType } from './properties/page-text-direction';
import { SectionType } from './properties/section-type';
export type IHeaderFooterGroup<T> = {
readonly default?: T;
readonly first?: T;
readonly even?: T;
};
export type ISectionPropertiesOptionsBase = {
readonly page?: {
readonly size?: Partial<IPageSizeAttributes>;
readonly margin?: IPageMarginAttributes;
readonly pageNumbers?: IPageNumberTypeAttributes;
readonly borders?: IPageBordersOptions;
readonly textDirection?: (typeof PageTextDirectionType)[keyof typeof PageTextDirectionType];
};
readonly grid?: Partial<IDocGridAttributesProperties>;
readonly headerWrapperGroup?: IHeaderFooterGroup<HeaderWrapper>;
readonly footerWrapperGroup?: IHeaderFooterGroup<FooterWrapper>;
readonly lineNumbers?: ILineNumberAttributes;
readonly titlePage?: boolean;
readonly verticalAlign?: SectionVerticalAlign;
readonly column?: IColumnsAttributes;
readonly type?: (typeof SectionType)[keyof typeof SectionType];
};
export type ISectionPropertiesChangeOptions = IChangedAttributesProperties & ISectionPropertiesOptionsBase;
export type ISectionPropertiesOptions = {
readonly revision?: ISectionPropertiesChangeOptions;
} & ISectionPropertiesOptionsBase;
export declare const sectionMarginDefaults: {
TOP: number;
RIGHT: number;
BOTTOM: number;
LEFT: number;
HEADER: number;
FOOTER: number;
GUTTER: number;
};
export declare const sectionPageSizeDefaults: {
WIDTH: number;
HEIGHT: number;
ORIENTATION: "portrait";
};
export declare class SectionProperties extends XmlComponent {
constructor({ page: { size: { width, height, orientation, code, }, margin: { top, right, bottom, left, header, footer, gutter, }, pageNumbers, borders, textDirection, }, grid: { linePitch, charSpace, type: gridType }, headerWrapperGroup, footerWrapperGroup, lineNumbers, titlePage, verticalAlign, column, type, revision, }?: ISectionPropertiesOptions);
private addHeaderFooterGroup;
}
export declare class SectionPropertiesChange extends XmlComponent {
constructor(options: ISectionPropertiesChangeOptions);
}
@@ -0,0 +1 @@
export {};
+48
View File
@@ -0,0 +1,48 @@
import { AttributeMap, XmlAttributeComponent } from '../xml-components';
export declare const DocumentAttributeNamespaces: {
wpc: string;
mc: string;
o: string;
r: string;
m: string;
v: string;
wp14: string;
wp: string;
w10: string;
w: string;
w14: string;
w15: string;
wpg: string;
wpi: string;
wne: string;
wps: string;
cp: string;
dc: string;
dcterms: string;
dcmitype: string;
xsi: string;
cx: string;
cx1: string;
cx2: string;
cx3: string;
cx4: string;
cx5: string;
cx6: string;
cx7: string;
cx8: string;
aink: string;
am3d: string;
w16cex: string;
w16cid: string;
w16: string;
w16sdtdh: string;
w16se: string;
};
export type DocumentAttributeNamespace = keyof typeof DocumentAttributeNamespaces;
export type IDocumentAttributesProperties = Partial<Record<DocumentAttributeNamespace, string>> & {
readonly Ignorable?: string;
};
export declare class DocumentAttributes extends XmlAttributeComponent<IDocumentAttributesProperties> {
protected readonly xmlKeys: AttributeMap<IDocumentAttributesProperties>;
constructor(ns: readonly DocumentAttributeNamespace[], Ignorable?: string);
}
@@ -0,0 +1,23 @@
import { XmlAttributeComponent, XmlComponent } from '../../xml-components';
export declare class DocumentBackgroundAttributes extends XmlAttributeComponent<{
readonly color?: string;
readonly themeColor?: string;
readonly themeShade?: string;
readonly themeTint?: string;
}> {
protected readonly xmlKeys: {
color: string;
themeColor: string;
themeShade: string;
themeTint: string;
};
}
export type IDocumentBackgroundOptions = {
readonly color?: string;
readonly themeColor?: string;
readonly themeShade?: string;
readonly themeTint?: string;
};
export declare class DocumentBackground extends XmlComponent {
constructor(options: IDocumentBackgroundOptions);
}
@@ -0,0 +1 @@
export {};
+1
View File
@@ -0,0 +1 @@
export * from './document-background';
+15
View File
@@ -0,0 +1,15 @@
import { XmlComponent } from '../xml-components';
import { ConcreteHyperlink, Paragraph } from '../paragraph';
import { Table } from '../table';
import { TableOfContents } from '../table-of-contents';
import { Body } from './body';
import { IDocumentBackgroundOptions } from './document-background';
export type IDocumentOptions = {
readonly background?: IDocumentBackgroundOptions;
};
export declare class Document extends XmlComponent {
private readonly body;
constructor(options: IDocumentOptions);
add(item: Paragraph | Table | TableOfContents | ConcreteHyperlink): Document;
get Body(): Body;
}
+1
View File
@@ -0,0 +1 @@
export {};
+4
View File
@@ -0,0 +1,4 @@
export * from './document';
export * from './document-attributes';
export * from './body';
export * from './document-background';