콘텐츠로 이동
Data TableAPI Reference

Excel XLSX

comins-table@0.2.2Framework neutral

comins-table/xlsx는 일반 행의 Excel 입출력을 처리하는 별도 진입점입니다. 파일 선택·다운로드·Worker 실행은 애플리케이션이 담당하며 API는 바이트만 받거나 반환합니다.

import { inspectCominsXlsx, importCominsRowsFromXlsx, exportCominsRowsToXlsx } from 'comins-table/xlsx';
const bytes = await exportCominsRowsToXlsx({
rows: [{ id: '001', amount: 120 }],
columns: [{ id: 'id', value: row => row.id }, { id: 'amount', value: row => row.amount }],
sheetName: 'Data',
styles: { theme: 'comins', columns: { amount: { width: 16, body: { format: '#,##0', align: 'right' } } } },
});
const workbook = await inspectCominsXlsx({ bytes });
const rows = await importCominsRowsFromXlsx({
bytes, sheetName: 'Data', hasHeader: true,
mapRow: ({ cells }) => ({ id: String(cells[0]), amount: Number(cells[1]) }),
});
API 입력·출력
inspectCominsXlsx(options) bytes, limits? → Promise<CominsXlsxWorkbookInfo>
importCominsRowsFromXlsx<T>(options) bytes, sheetName?, hasHeader?, limits?, mapRow → Promise<T[]>
exportCominsRowsToXlsx<T>(options) rows, columns, sheetName?, maxCells?, styles? → Promise<Uint8Array>

mapRow는 검증된 행을 애플리케이션 타입으로 변환합니다. 숫자·boolean·문자열·null을 보존하고 수식은 저장된 결과만 읽으며 다시 계산하지 않습니다. 여러 visible sheet가 있으면 sheetName을 지정합니다. 숨겨진 sheet, 병합 셀, 캐시 결과가 없는 수식·오류 셀·지원하지 않는 값은 거부합니다. 매핑 실패를 포함해 전체 읽기가 성공해야 행 배열을 반환합니다.

기본 테마는 comins이며 plain으로 기본 장식을 끌 수 있습니다. header·body·열별 설정에서 글꼴, 색상, 테두리, 정렬, 줄바꿈과 number format을 지정합니다. 열 너비는 문자 단위, 행 높이는 point 단위입니다. CSS·HTML·vendor 객체는 받지 않습니다.

입력 제한은 maxBytes·maxUncompressedBytes·maxCells이며 실제 압축 해제 바이트와 CRC를 검증합니다. 오류는 CominsXlsxError.code로 구분합니다: INVALID_OPTIONS, UNSUPPORTED_FILE, INVALID_WORKBOOK, LIMIT_EXCEEDED, SHEET_SELECTION_REQUIRED, SHEET_NOT_FOUND, MERGED_CELLS, MISSING_FORMULA_RESULT, CELL_ERROR, UNSUPPORTED_VALUE.

파일 I/O·수식 실행·Tree/Group 전용 Excel export는 지원 범위가 아닙니다. 문자열은 수식으로 바꾸지 않고 문자 그대로 출력합니다. 입력 한도 기본값과 추가 계약은 Export 가이드 및 공개 타입 카탈로그를 참고하십시오.