mirror of
https://github.com/gristlabs/grist-core.git
synced 2026-03-02 04:09:24 +00:00
(core) Improve encoding detection for csv imports, and make encoding an editable option.
Summary: - Using a sample of data was causing poor detection if the sample were cut mid-character. Switch to using line-based detection. - Add a simple option for changing encoding. No convenient UI is offered since config UI is auto-generated, but this at least makes it possible to recover from bad guesses. - Upgrades chardet library for good measure. - Also fixes python3-building step, to more reliably rebuild Python dependencies when requirements3.* files change. Test Plan: Added a python-side test case, and a browser test that encodings can be switched, errors are displayed, and wrong encodings fail recoverably. Reviewers: alexmojaki Reviewed By: alexmojaki Differential Revision: https://phab.getgrist.com/D3979
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import {bigBasicButton, bigPrimaryButton} from 'app/client/ui2018/buttons';
|
||||
import {squareCheckbox} from 'app/client/ui2018/checkbox';
|
||||
import {testId, theme} from 'app/client/ui2018/cssVars';
|
||||
import {makeLinks} from 'app/client/ui2018/links';
|
||||
import {cssModalButtons} from 'app/client/ui2018/modals';
|
||||
import {ParseOptionSchema} from 'app/plugin/FileParserAPI';
|
||||
import {Computed, dom, DomContents, IDisposableOwner, input, Observable, styled} from 'grainjs';
|
||||
@@ -60,7 +61,7 @@ export function buildParseOptionsForm(
|
||||
return [
|
||||
cssParseOptionForm(
|
||||
items.map((item) => cssParseOption(
|
||||
cssParseOptionName(item.label),
|
||||
cssParseOptionName(makeLinks(item.label)),
|
||||
optionToInput(owner, item.type, optionsMap.get(item.name)!),
|
||||
testId('parseopts-opt'),
|
||||
)),
|
||||
|
||||
Reference in New Issue
Block a user