āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā ā š shadcn/directory/udecode/plate/(plugins)/(serializing)/csv.cn ā āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā
npm install @platejs/csv
import { CsvPlugin } from '@platejs/csv';
import { createPlateEditor } from 'platejs/react';
const editor = createPlateEditor({
plugins: [
// ...otherPlugins,
CsvPlugin,
],
});
import { CsvPlugin } from '@platejs/csv';
import { createPlateEditor } from 'platejs/react';
const editor = createPlateEditor({
plugins: [
// ...otherPlugins,
CsvPlugin.configure({
options: {
errorTolerance: 0.1,
parseOptions: {
header: true,
skipEmptyLines: true,
delimiter: ',',
},
},
}),
],
});
options.errorTolerance: Percentage of rows that can contain errors (default: 0.25 for 25%)options.parseOptions: Configuration passed to PapaParse library for CSV parsingoptions.parseOptions.header: Treat first row as headers (default: true)Use the API method to deserialize CSV data:
// Deserialize CSV string to Plate format
const csvData = `Name,Age,City
John,30,New York
Jane,25,Boston`;
const nodes = editor.api.csv.deserialize({ data: csvData });
Plugin for CSV deserialization functionality.
<API name="CsvPlugin"> <APIOptions> <APIItem name="errorTolerance" type="number" optional> The tolerance for errors in the CSV data, represented as a percentage in decimal form. This value is calculated as the ratio of errors to the total number of rows.- **Default:** `0.25` (This indicates that up to 25% of the rows can contain errors.)
</APIItem>
<APIItem name="parseOptions" type="ParseConfig" optional>
Options to be passed to the PapaParse library for parsing CSV data.
- **Default:** `{ header: true }` (Indicating that the first row of the CSV data should be treated as a header.)
- See [PapaParse documentation](https://www.papaparse.com/docs#config) for more details about these options.
</APIItem>
</APIOptions>
</API>
Takes a CSV (Comma Separated Values) string and converts it into a Plate compatible format. This function uses the papaparse library to parse the CSV data.
Creates a table representation of the CSV data:
TablePlugin, TableCellHeaderPlugin, TableRowPlugin, and TableCellPluginā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā ā
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā