@mertdeveci55/univer-import-export
Version:
Excel/CSV import and export library for Univer spreadsheets with full format preservation
130 lines (129 loc) • 4.63 kB
TypeScript
/**
* Constants for Excel Export functionality
*
* This file contains all constants to avoid magic numbers and strings
* throughout the export codebase.
*/
export declare const EXCEL_COLUMN_CONSTANTS: {
readonly ALPHABET_SIZE: 26;
readonly ASCII_UPPERCASE_A: 65;
readonly MAX_COLUMNS: 16384;
readonly MAX_ROWS: 1048576;
};
export declare const EXCEL_SHEET_CONSTANTS: {
readonly MAX_NAME_LENGTH: 31;
readonly DEFAULT_SHEET_NAME: "Sheet1";
readonly RESERVED_NAMES: readonly ["History", "Print_Titles", "Print_Area", "Sheet_Title", "Consolidate_Area", "Auto_Open", "Auto_Close", "Extract", "Database", "Criteria", "Print_Settings", "Recorder", "Data_Form", "Auto_Activate", "Auto_Deactivate", "Sheet_Title"];
readonly INVALID_CHAR_MAPPING: {
readonly '\\': "_";
readonly '/': "_";
readonly '?': "_";
readonly '*': "_";
readonly '[': "(";
readonly ']': ")";
readonly ':': "_";
};
};
export declare const FORMULA_CONSTANTS: {
readonly ERROR_CODES: {
readonly REF: "#REF!";
readonly NAME: "#NAME?";
readonly VALUE: "#VALUE!";
readonly DIV0: "#DIV/0!";
readonly NULL: "#NULL!";
readonly NUM: "#NUM!";
readonly NA: "#N/A";
readonly GETTING_DATA: "#GETTING_DATA";
readonly SPILL: "#SPILL!";
};
readonly PREFIXES_TO_REMOVE: readonly ["_xlfn.", "_xlws.", "_xll.", "_xlpm."];
readonly SPECIAL_CHARS: {
readonly FORMULA_START: "=";
readonly CELL_ABSOLUTE: "$";
readonly RANGE_SEPARATOR: ":";
readonly ARGUMENT_SEPARATOR: ",";
readonly STRING_DELIMITER: "\"";
readonly ARRAY_ROW_SEPARATOR: ";";
readonly ARRAY_COLUMN_SEPARATOR: ",";
};
};
export declare const CHART_CONSTANTS: {
readonly PLUGIN_NAME: "SHEET_CHART_PLUGIN";
readonly TYPE_MAPPING: {
readonly column: "col";
readonly bar: "bar";
readonly line: "line";
readonly pie: "pie";
readonly doughnut: "doughnut";
readonly scatter: "scatter";
readonly area: "area";
readonly combo: "combo";
readonly radar: "radar";
readonly stock: "stock";
readonly surface: "surface";
readonly bubble: "bubble";
};
readonly DEFAULT_DIMENSIONS: {
readonly TOP: 100;
readonly LEFT: 100;
readonly WIDTH: 400;
readonly HEIGHT: 300;
};
readonly DEFAULT_PROPERTIES: {
readonly SERIES_NAME: "Series";
readonly TITLE_SIZE: 14;
readonly LEGEND_POSITION: "bottom";
};
};
export declare const HYPERLINK_CONSTANTS: {
readonly PLUGIN_NAME: "SHEET_HYPER_LINK_PLUGIN";
readonly URL_FRAGMENTS: {
readonly GID_PREFIX: "#gid=";
readonly RANGE_PREFIX: "range=";
readonly SHEET_SEPARATOR: "&";
readonly FRAGMENT_SEPARATOR: "#";
};
readonly LINK_TYPES: {
readonly EXTERNAL: "External";
readonly INTERNAL: "Internal";
readonly EMAIL: "Email";
readonly FILE: "File";
};
};
export declare const IMAGE_CONSTANTS: {
readonly DEFAULT_EXTENSION: "png";
readonly SUPPORTED_EXTENSIONS: readonly ["png", "jpg", "jpeg", "gif", "bmp", "svg"];
readonly MAX_IMAGE_SIZE: number;
};
export declare const NUMBER_FORMAT_CONSTANTS: {
readonly GENERAL: "General";
readonly TEXT: "@";
readonly NUMBER: "0";
readonly NUMBER_2_DECIMAL: "0.00";
readonly PERCENTAGE: "0%";
readonly PERCENTAGE_2_DECIMAL: "0.00%";
readonly DATE: "yyyy/mm/dd";
readonly TIME: "hh:mm:ss";
readonly CURRENCY: "$#,##0.00";
};
export declare const BOOLEAN_VALUES: {
readonly TRUE: 1;
readonly FALSE: 0;
};
export declare const INDEX_OFFSET: {
readonly ZERO_TO_ONE_BASED: 1;
};
export declare const RESOURCE_PLUGINS: {
readonly CHART: "SHEET_CHART_PLUGIN";
readonly HYPERLINK: "SHEET_HYPER_LINK_PLUGIN";
readonly IMAGE: "SHEET_IMAGE_PLUGIN";
readonly COMMENT: "SHEET_COMMENT_PLUGIN";
readonly CONDITIONAL_FORMAT: "SHEET_CONDITIONAL_FORMATTING_PLUGIN";
readonly DATA_VALIDATION: "SHEET_DATA_VALIDATION_PLUGIN";
readonly FILTER: "SHEET_FILTER_PLUGIN";
readonly PIVOT_TABLE: "SHEET_PIVOT_TABLE_PLUGIN";
};
export type ExcelErrorCode = typeof FORMULA_CONSTANTS.ERROR_CODES[keyof typeof FORMULA_CONSTANTS.ERROR_CODES];
export type ChartType = keyof typeof CHART_CONSTANTS.TYPE_MAPPING;
export type LinkType = typeof HYPERLINK_CONSTANTS.LINK_TYPES[keyof typeof HYPERLINK_CONSTANTS.LINK_TYPES];
export type ResourcePluginName = typeof RESOURCE_PLUGINS[keyof typeof RESOURCE_PLUGINS];