Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 1 addition & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -352,6 +352,7 @@ const Imperative = () => {
| readFilesContent | Ignores files content and omits reading process if set to false | true | true, false |
| validators | Add validation logic. You can use some of the [built-in validators](#built-in-validators) like FileAmountLimitValidator or create your own [custom validation](#custom-validation) logic | [] | [MyValidator, MySecondValidator] |
| initializeWithCustomParameters | allows for customization of the input element that is created by the file picker. It accepts a function that takes in the input element as a parameter and can be used to set any desired attributes or styles on the element. | n/a | (input) => input.setAttribute("disabled", "") |
| encoding | Specifies the encoding to use when reading text files. Only applicable when readAs is set to "Text". Available options include all standard encodings. | "utf-8" | "latin1", "utf-8", "windows-1252" |
| onFilesSelected | A callback function that is called when files are successfully selected. The function is passed an array of objects with information about each successfully selected file | n/a | (data) => console.log(data) |
| onFilesSuccessfullySelected | A callback function that is called when files are successfully selected. The function is passed an array of objects with information about each successfully selected file | n/a | (data) => console.log(data) |
| onFilesRejected | A callback function that is called when files are rejected due to validation errors or other issues. The function is passed an array of objects with information about each rejected file | n/a | (data) => console.log(data) |
Expand Down Expand Up @@ -462,12 +463,6 @@ class CustomValidator extends Validator {
- Github: [@MrKampla](https://github.com/MrKampla)
- LinkedIn: [@https://www.linkedin.com/in/kamil-planer/](https://www.linkedin.com/in/kamil-planer/)

👤 **Adam Dobrzeniewski**

- Twitter: [@twitter.com/xForsect](https://twitter.com/xForsect)
- Github: [@Forsect](https://github.com/Forsect)
- LinkedIn: [@https://www.linkedin.com/in/adam-dobrzeniewski](https://www.linkedin.com/in/adam-dobrzeniewski)

## [](https://github.com/Jaaneek/useFilePicker#-contributing)🤝 Contributing

Contributions, issues and feature requests are welcome!
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "use-file-picker",
"description": "Simple react hook to open browser file selector.",
"version": "2.1.3-canary.0",
"version": "2.1.3",
"license": "MIT",
"author": "Milosz Jankiewicz",
"homepage": "https://github.com/Jaaneek/useFilePicker",
Expand Down
324 changes: 324 additions & 0 deletions src/helpers/encodings.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,324 @@
export const ENCODINGS = [
{
encodings: [
{
labels: ['unicode-1-1-utf-8', 'unicode11utf8', 'unicode20utf8', 'utf-8', 'utf8', 'x-unicode20utf8'],
name: 'UTF-8',
},
],
heading: 'The Default Encoding',
},
{
encodings: [
{
labels: ['866', 'cp866', 'csibm866', 'ibm866'],
name: 'IBM866',
},
{
labels: [
'csisolatin2',
'iso-8859-2',
'iso-ir-101',
'iso8859-2',
'iso88592',
'iso_8859-2',
'iso_8859-2:1987',
'l2',
'latin2',
],
name: 'ISO-8859-2',
},
{
labels: [
'csisolatin3',
'iso-8859-3',
'iso-ir-109',
'iso8859-3',
'iso88593',
'iso_8859-3',
'iso_8859-3:1988',
'l3',
'latin3',
],
name: 'ISO-8859-3',
},
{
labels: [
'csisolatin4',
'iso-8859-4',
'iso-ir-110',
'iso8859-4',
'iso88594',
'iso_8859-4',
'iso_8859-4:1988',
'l4',
'latin4',
],
name: 'ISO-8859-4',
},
{
labels: [
'csisolatincyrillic',
'cyrillic',
'iso-8859-5',
'iso-ir-144',
'iso8859-5',
'iso88595',
'iso_8859-5',
'iso_8859-5:1988',
],
name: 'ISO-8859-5',
},
{
labels: [
'arabic',
'asmo-708',
'csiso88596e',
'csiso88596i',
'csisolatinarabic',
'ecma-114',
'iso-8859-6',
'iso-8859-6-e',
'iso-8859-6-i',
'iso-ir-127',
'iso8859-6',
'iso88596',
'iso_8859-6',
'iso_8859-6:1987',
],
name: 'ISO-8859-6',
},
{
labels: [
'csisolatingreek',
'ecma-118',
'elot_928',
'greek',
'greek8',
'iso-8859-7',
'iso-ir-126',
'iso8859-7',
'iso88597',
'iso_8859-7',
'iso_8859-7:1987',
'sun_eu_greek',
],
name: 'ISO-8859-7',
},
{
labels: [
'csiso88598e',
'csisolatinhebrew',
'hebrew',
'iso-8859-8',
'iso-8859-8-e',
'iso-ir-138',
'iso8859-8',
'iso88598',
'iso_8859-8',
'iso_8859-8:1988',
'visual',
],
name: 'ISO-8859-8',
},
{
labels: ['csiso88598i', 'iso-8859-8-i', 'logical'],
name: 'ISO-8859-8-I',
},
{
labels: ['csisolatin6', 'iso-8859-10', 'iso-ir-157', 'iso8859-10', 'iso885910', 'l6', 'latin6'],
name: 'ISO-8859-10',
},
{
labels: ['iso-8859-13', 'iso8859-13', 'iso885913'],
name: 'ISO-8859-13',
},
{
labels: ['iso-8859-14', 'iso8859-14', 'iso885914'],
name: 'ISO-8859-14',
},
{
labels: ['csisolatin9', 'iso-8859-15', 'iso8859-15', 'iso885915', 'iso_8859-15', 'l9'],
name: 'ISO-8859-15',
},
{
labels: ['iso-8859-16'],
name: 'ISO-8859-16',
},
{
labels: ['cskoi8r', 'koi', 'koi8', 'koi8-r', 'koi8_r'],
name: 'KOI8-R',
},
{
labels: ['koi8-ru', 'koi8-u'],
name: 'KOI8-U',
},
{
labels: ['csmacintosh', 'mac', 'macintosh', 'x-mac-roman'],
name: 'macintosh',
},
{
labels: ['dos-874', 'iso-8859-11', 'iso8859-11', 'iso885911', 'tis-620', 'windows-874'],
name: 'windows-874',
},
{
labels: ['cp1250', 'windows-1250', 'x-cp1250'],
name: 'windows-1250',
},
{
labels: ['cp1251', 'windows-1251', 'x-cp1251'],
name: 'windows-1251',
},
{
labels: [
'ansi_x3.4-1968',
'ascii',
'cp1252',
'cp819',
'csisolatin1',
'ibm819',
'iso-8859-1',
'iso-ir-100',
'iso8859-1',
'iso88591',
'iso_8859-1',
'iso_8859-1:1987',
'l1',
'latin1',
'us-ascii',
'windows-1252',
'x-cp1252',
],
name: 'windows-1252',
},
{
labels: ['cp1253', 'windows-1253', 'x-cp1253'],
name: 'windows-1253',
},
{
labels: [
'cp1254',
'csisolatin5',
'iso-8859-9',
'iso-ir-148',
'iso8859-9',
'iso88599',
'iso_8859-9',
'iso_8859-9:1989',
'l5',
'latin5',
'windows-1254',
'x-cp1254',
],
name: 'windows-1254',
},
{
labels: ['cp1255', 'windows-1255', 'x-cp1255'],
name: 'windows-1255',
},
{
labels: ['cp1256', 'windows-1256', 'x-cp1256'],
name: 'windows-1256',
},
{
labels: ['cp1257', 'windows-1257', 'x-cp1257'],
name: 'windows-1257',
},
{
labels: ['cp1258', 'windows-1258', 'x-cp1258'],
name: 'windows-1258',
},
{
labels: ['x-mac-cyrillic', 'x-mac-ukrainian'],
name: 'x-mac-cyrillic',
},
],
heading: 'Legacy single-byte encodings',
},
{
encodings: [
{
labels: [
'chinese',
'csgb2312',
'csiso58gb231280',
'gb2312',
'gb_2312',
'gb_2312-80',
'gbk',
'iso-ir-58',
'x-gbk',
],
name: 'GBK',
},
{
labels: ['gb18030'],
name: 'gb18030',
},
],
heading: 'Legacy multi-byte Chinese (simplified) encodings',
},
{
encodings: [
{
labels: ['big5', 'big5-hkscs', 'cn-big5', 'csbig5', 'x-x-big5'],
name: 'Big5',
},
],
heading: 'Legacy multi-byte Chinese (traditional) encodings',
},
{
encodings: [
{
labels: ['cseucpkdfmtjapanese', 'euc-jp', 'x-euc-jp'],
name: 'EUC-JP',
},
{
labels: ['csiso2022jp', 'iso-2022-jp'],
name: 'ISO-2022-JP',
},
{
labels: ['csshiftjis', 'ms932', 'ms_kanji', 'shift-jis', 'shift_jis', 'sjis', 'windows-31j', 'x-sjis'],
name: 'Shift_JIS',
},
],
heading: 'Legacy multi-byte Japanese encodings',
},
{
encodings: [
{
labels: [
'cseuckr',
'csksc56011987',
'euc-kr',
'iso-ir-149',
'korean',
'ks_c_5601-1987',
'ks_c_5601-1989',
'ksc5601',
'ksc_5601',
'windows-949',
],
name: 'EUC-KR',
},
],
heading: 'Legacy multi-byte Korean encodings',
},
{
encodings: [
{
labels: ['csiso2022kr', 'hz-gb-2312', 'iso-2022-cn', 'iso-2022-cn-ext', 'iso-2022-kr', 'replacement'],
name: 'replacement',
},
{
labels: ['unicodefffe', 'utf-16be'],
name: 'UTF-16BE',
},
{
labels: ['csunicode', 'iso-10646-ucs-2', 'ucs-2', 'unicode', 'unicodefeff', 'utf-16', 'utf-16le'],
name: 'UTF-16LE',
},
],
heading: 'Legacy miscellaneous encodings',
},
] as const;
Loading
Loading