@tableau/taco-toolkit
Version:
Tableau Connector Toolkit
14 lines (10 loc) • 576 B
text/typescript
import { ExcelUtils, DataContainer, ParseOptions, AsyncParser } from '@tableau/taco-toolkit/handlers'
export default class ExcelDataParser extends AsyncParser<Uint8Array> {
async parse(fetcherResult: Uint8Array, { dataContainer }: ParseOptions): Promise<DataContainer> {
// fetcherResult contains the Excel content yielded from Fetcher
const tables = await ExcelUtils.parse(fetcherResult)
const containerBuilder = AsyncParser.createContainerBuilder(dataContainer)
containerBuilder.appendTables(tables)
return containerBuilder.getDataContainer()
}
}