mirror of https://gitee.com/godoos/godoos.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3.5 KiB
3.5 KiB
Data Structure
interface IElement {
// basic
id?: string;
type?: {
TEXT = 'text',
IMAGE = 'image',
TABLE = 'table',
HYPERLINK = 'hyperlink',
SUPERSCRIPT = 'superscript',
SUBSCRIPT = 'subscript',
SEPARATOR = 'separator',
PAGE_BREAK = 'pageBreak',
CONTROL = 'control',
CHECKBOX = 'checkbox',
RADIO = 'radio',
LATEX = 'latex',
TAB = 'tab',
DATE = 'date',
BLOCK = 'block'
};
value: string;
valueList?: IElement[]; // Use of composite elements (hyperlinks, titles, lists, and so on).
extension?: unknown;
externalId?: string;
// style
font?: string;
size?: number;
width?: number;
height?: number;
bold?: boolean;
color?: string;
highlight?: string;
italic?: boolean;
underline?: boolean;
strikeout?: boolean;
rowFlex?: {
LEFT = 'left',
CENTER = 'center',
RIGHT = 'right',
ALIGNMENT = 'alignment',
JUSTIFY = 'justify'
};
rowMargin?: number;
letterSpacing?: number;
textDecoration?: {
style?: TextDecorationStyle;
};
// groupIds
groupIds?: string[];
// table
conceptId?: string;
colgroup?: {
width: number;
}[];
trList?: {
height: number;
pagingRepeat?: boolean;
extension?: unknown;
externalId?: string;
tdList: {
colspan: number;
rowspan: number;
conceptId?: string;
verticalAlign?: VerticalAlign;
backgroundColor?: string;
borderTypes?: TdBorder[];
slashTypes?: TdSlash[];
value: IElement[];
extension?: unknown;
externalId?: string;
disabled?: boolean;
deletable?: boolean;
}[];
}[];
borderType?: TableBorder;
// Hyperlinks
url?: string;
// Superscript and subscript
actualSize?: number;
// Dividing line
dashArray?: number[];
// control
control?: {
type: {
TEXT = 'text',
SELECT = 'select',
CHECKBOX = 'checkbox',
RADIO = 'radio',
DATE = 'date'
};
value: IElement[] | null;
placeholder?: string;
conceptId?: string;
prefix?: string;
postfix?: string;
minWidth?: number;
underline?: boolean;
border?: boolean;
extension?: unknown;
indentation?: ControlIndentation;
rowFlex?: RowFlex
deletable?: boolean;
disabled?: boolean;
pasteDisabled?: boolean;
code: string | null;
min?: number;
max?: number;
valueSets: {
value: string;
code: string;
}[];
dateFormat?: string;
font?: string;
size?: number;
bold?: boolean;
color?: string;
highlight?: string;
italic?: boolean;
strikeout?: boolean;
};
controlComponent?: {
PREFIX = 'prefix',
POSTFIX = 'postfix',
PLACEHOLDER = 'placeholder',
VALUE = 'value',
CHECKBOX = 'checkbox',
RADIO = 'radio'
};
// checkbox
checkbox?: {
value: boolean | null;
};
// radio
radio?: {
value: boolean | null;
};
// LaTeX
laTexSVG?: string;
// date
dateFormat?: string;
// picture
imgDisplay?: {
INLINE = 'inline',
BLOCK = 'block'
}
imgFloatPosition?: {
x: number;
y: number;
pageNo?: number;
}
// block
block?: {
type: {
IFRAME = 'iframe',
VIDEO = 'video'
};
iframeBlock?: {
src?: string;
srcdoc?: string;
};
videoBlock?: {
src: string;
};
};
// title
level?: TitleLevel;
title?: {
conceptId?: string;
deletable?: boolean;
disabled?: boolean;
};
// list
listType?: ListType;
listStyle?: ListStyle;
listWrap?: boolean;
}