@chayns-components/core 5.0.0-beta.252 → 5.0.0-beta.258
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/api/image/post.js
CHANGED
|
@@ -14,6 +14,11 @@ const postImage = async _ref => {
|
|
|
14
14
|
file,
|
|
15
15
|
personId
|
|
16
16
|
} = _ref;
|
|
17
|
+
console.log('postImage', {
|
|
18
|
+
accessToken,
|
|
19
|
+
file,
|
|
20
|
+
personId
|
|
21
|
+
});
|
|
17
22
|
const body = await (0, _fileDialog.getFileAsArrayBuffer)(file);
|
|
18
23
|
const response = await fetch('https://api.tsimg.cloud/image', {
|
|
19
24
|
body,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post.js","names":["_fileDialog","require","postImage","_ref","accessToken","file","personId","body","getFileAsArrayBuffer","response","fetch","headers","Accept","Authorization","method","ok","json","Error","status","exports"],"sources":["../../../src/api/image/post.ts"],"sourcesContent":["import type { Meta } from '../../types/file';\nimport { getFileAsArrayBuffer } from '../../utils/fileDialog';\n\nexport interface PostImageResult {\n key: string;\n base: string;\n meta?: Meta;\n}\n\ninterface PostImageOptions {\n accessToken: string;\n file: File;\n personId: string;\n}\n\n/**\n * Uploads an image to the tsimg cloud service\n */\nexport const postImage = async ({\n accessToken,\n file,\n personId,\n}: PostImageOptions): Promise<PostImageResult> => {\n const body = await getFileAsArrayBuffer(file);\n\n const response = await fetch('https://api.tsimg.cloud/image', {\n body,\n headers: {\n Accept: 'application/json',\n Authorization: `bearer ${accessToken}`,\n 'Content-Type': 'image/*',\n 'X-Person-Id': personId,\n },\n method: 'POST',\n });\n\n if (response.ok) {\n return (await response.json()) as PostImageResult;\n }\n\n throw Error(`Failed to POST image (status code: ${response.status}).`);\n};\n"],"mappings":";;;;;;AACA,IAAAA,WAAA,GAAAC,OAAA;AAcA;AACA;AACA;AACO,MAAMC,SAAS,GAAG,MAAAC,IAAA,IAIyB;EAAA,IAJlB;IAC5BC,WAAW;IACXC,IAAI;IACJC;EACc,CAAC,GAAAH,IAAA;
|
|
1
|
+
{"version":3,"file":"post.js","names":["_fileDialog","require","postImage","_ref","accessToken","file","personId","console","log","body","getFileAsArrayBuffer","response","fetch","headers","Accept","Authorization","method","ok","json","Error","status","exports"],"sources":["../../../src/api/image/post.ts"],"sourcesContent":["import type { Meta } from '../../types/file';\nimport { getFileAsArrayBuffer } from '../../utils/fileDialog';\n\nexport interface PostImageResult {\n key: string;\n base: string;\n meta?: Meta;\n}\n\ninterface PostImageOptions {\n accessToken: string;\n file: File;\n personId: string;\n}\n\n/**\n * Uploads an image to the tsimg cloud service\n */\nexport const postImage = async ({\n accessToken,\n file,\n personId,\n}: PostImageOptions): Promise<PostImageResult> => {\n console.log('postImage', { accessToken, file, personId });\n\n const body = await getFileAsArrayBuffer(file);\n\n const response = await fetch('https://api.tsimg.cloud/image', {\n body,\n headers: {\n Accept: 'application/json',\n Authorization: `bearer ${accessToken}`,\n 'Content-Type': 'image/*',\n 'X-Person-Id': personId,\n },\n method: 'POST',\n });\n\n if (response.ok) {\n return (await response.json()) as PostImageResult;\n }\n\n throw Error(`Failed to POST image (status code: ${response.status}).`);\n};\n"],"mappings":";;;;;;AACA,IAAAA,WAAA,GAAAC,OAAA;AAcA;AACA;AACA;AACO,MAAMC,SAAS,GAAG,MAAAC,IAAA,IAIyB;EAAA,IAJlB;IAC5BC,WAAW;IACXC,IAAI;IACJC;EACc,CAAC,GAAAH,IAAA;EACfI,OAAO,CAACC,GAAG,CAAC,WAAW,EAAE;IAAEJ,WAAW;IAAEC,IAAI;IAAEC;EAAS,CAAC,CAAC;EAEzD,MAAMG,IAAI,GAAG,MAAM,IAAAC,gCAAoB,EAACL,IAAI,CAAC;EAE7C,MAAMM,QAAQ,GAAG,MAAMC,KAAK,CAAC,+BAA+B,EAAE;IAC1DH,IAAI;IACJI,OAAO,EAAE;MACLC,MAAM,EAAE,kBAAkB;MAC1BC,aAAa,EAAG,UAASX,WAAY,EAAC;MACtC,cAAc,EAAE,SAAS;MACzB,aAAa,EAAEE;IACnB,CAAC;IACDU,MAAM,EAAE;EACZ,CAAC,CAAC;EAEF,IAAIL,QAAQ,CAACM,EAAE,EAAE;IACb,OAAQ,MAAMN,QAAQ,CAACO,IAAI,CAAC,CAAC;EACjC;EAEA,MAAMC,KAAK,CAAE,sCAAqCR,QAAQ,CAACS,MAAO,IAAG,CAAC;AAC1E,CAAC;AAACC,OAAA,CAAAnB,SAAA,GAAAA,SAAA"}
|
package/lib/utils/fileDialog.js
CHANGED
|
@@ -25,15 +25,39 @@ const selectFiles = _ref => {
|
|
|
25
25
|
document.body.appendChild(input);
|
|
26
26
|
input.addEventListener('change', event => {
|
|
27
27
|
document.body.removeChild(input);
|
|
28
|
+
if (!event.target) {
|
|
29
|
+
resolve([]);
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
28
32
|
const target = event.target;
|
|
29
33
|
const {
|
|
30
34
|
files
|
|
31
35
|
} = target;
|
|
36
|
+
try {
|
|
37
|
+
const testFile = files === null || files === void 0 ? void 0 : files[0];
|
|
38
|
+
if (testFile) {
|
|
39
|
+
void getFileAsArrayBuffer(testFile).then(result => {
|
|
40
|
+
console.log('TEST with file from file list', result);
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
} catch (e) {
|
|
44
|
+
console.error('1: Failed to test get file as array buffer', e);
|
|
45
|
+
}
|
|
32
46
|
if (!files) {
|
|
33
47
|
resolve([]);
|
|
34
48
|
return;
|
|
35
49
|
}
|
|
36
50
|
const fileArray = Object.values(files);
|
|
51
|
+
try {
|
|
52
|
+
const testFile = fileArray[0];
|
|
53
|
+
if (testFile) {
|
|
54
|
+
void getFileAsArrayBuffer(testFile).then(result => {
|
|
55
|
+
console.log('TEST with file from array', result);
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
} catch (e) {
|
|
59
|
+
console.error('2: Failed to test get file as array buffer', e);
|
|
60
|
+
}
|
|
37
61
|
const filteredFileArray = fileArray.filter(file => {
|
|
38
62
|
const sizeInMB = file.size / 1024 / 1024;
|
|
39
63
|
if (file.type.includes('video/') && sizeInMB > 500) {
|
|
@@ -54,6 +78,7 @@ const selectFiles = _ref => {
|
|
|
54
78
|
};
|
|
55
79
|
exports.selectFiles = selectFiles;
|
|
56
80
|
const getFileAsArrayBuffer = file => new Promise((resolve, reject) => {
|
|
81
|
+
console.log('FILE', file);
|
|
57
82
|
const reader = new FileReader();
|
|
58
83
|
reader.onload = e => {
|
|
59
84
|
var _e$target;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fileDialog.js","names":["selectFiles","_ref","type","multiple","Promise","resolve","input","document","createElement","style","visibility","width","height","display","accept","body","appendChild","addEventListener","event","removeChild","target","files","fileArray","Object","values","filteredFileArray","filter","file","sizeInMB","size","includes","length","click","exports","
|
|
1
|
+
{"version":3,"file":"fileDialog.js","names":["selectFiles","_ref","type","multiple","Promise","resolve","input","document","createElement","style","visibility","width","height","display","accept","body","appendChild","addEventListener","event","removeChild","target","files","testFile","getFileAsArrayBuffer","then","result","console","log","e","error","fileArray","Object","values","filteredFileArray","filter","file","sizeInMB","size","includes","length","click","exports","reject","reader","FileReader","onload","_e$target","Error","onerror","readAsArrayBuffer"],"sources":["../../src/utils/fileDialog.ts"],"sourcesContent":["interface SelectFilesOptions {\n type?: string;\n multiple: boolean;\n}\n\nexport const selectFiles = ({ type, multiple }: SelectFilesOptions): Promise<File[]> =>\n new Promise((resolve) => {\n const input = document.createElement('input');\n\n input.type = 'file';\n input.style.visibility = 'none';\n input.style.width = '0';\n input.style.height = '0';\n input.style.display = 'none';\n\n if (type !== '*/*' && type) {\n input.accept = type;\n }\n\n if (multiple) {\n input.multiple = true;\n }\n\n document.body.appendChild(input);\n\n input.addEventListener('change', (event) => {\n document.body.removeChild(input);\n\n if (!event.target) {\n resolve([]);\n\n return;\n }\n\n const target = event.target as HTMLInputElement;\n\n const { files } = target;\n\n try {\n const testFile = files?.[0];\n\n if (testFile) {\n void getFileAsArrayBuffer(testFile).then((result) => {\n console.log('TEST with file from file list', result);\n });\n }\n } catch (e) {\n console.error('1: Failed to test get file as array buffer', e);\n }\n\n if (!files) {\n resolve([]);\n\n return;\n }\n\n const fileArray = Object.values(files);\n\n try {\n const testFile = fileArray[0];\n\n if (testFile) {\n void getFileAsArrayBuffer(testFile).then((result) => {\n console.log('TEST with file from array', result);\n });\n }\n } catch (e) {\n console.error('2: Failed to test get file as array buffer', e);\n }\n\n const filteredFileArray = fileArray.filter((file) => {\n const sizeInMB = file.size / 1024 / 1024;\n\n if (file.type.includes('video/') && sizeInMB > 500) {\n return false;\n }\n\n return !(file.type.includes('image/') && sizeInMB > 64);\n });\n\n if (fileArray.length !== filteredFileArray.length) {\n // ToDo show dialog that some files are to big\n }\n\n if (filteredFileArray.length === 0) {\n // ToDo show dialog that all files are to big\n }\n\n resolve(filteredFileArray);\n });\n\n input.click();\n });\n\nexport const getFileAsArrayBuffer = (file: File): Promise<string | ArrayBuffer> =>\n new Promise((resolve, reject) => {\n console.log('FILE', file);\n\n const reader = new FileReader();\n\n reader.onload = (e) => {\n if (e.target?.result) {\n resolve(e.target.result);\n } else {\n reject(Error('Could not get array buffer.'));\n }\n };\n\n reader.onerror = reject;\n\n reader.readAsArrayBuffer(file);\n });\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@chayns-components/core",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.258",
|
|
4
4
|
"description": "A set of beautiful React components for developing your own applications with chayns.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"chayns",
|
|
@@ -65,5 +65,5 @@
|
|
|
65
65
|
"publishConfig": {
|
|
66
66
|
"access": "public"
|
|
67
67
|
},
|
|
68
|
-
"gitHead": "
|
|
68
|
+
"gitHead": "e871adc2783d75433e882e8d6cad364151d43e37"
|
|
69
69
|
}
|