@knime/product-features 2.2.2 → 2.3.0
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/CHANGELOG.md +23 -0
- package/dist/core-CVWznjtP.js +739 -0
- package/dist/core-CVWznjtP.js.map +1 -0
- package/dist/dataTransfer/core.js +2 -0
- package/dist/dataTransfer.css +12 -12
- package/dist/dataTransfer.js +420 -767
- package/dist/dataTransfer.js.map +1 -1
- package/dist/src/dataTransfer/core.d.ts +2 -0
- package/dist/src/dataTransfer/core.d.ts.map +1 -0
- package/dist/src/dataTransfer/index.d.ts +1 -2
- package/dist/src/dataTransfer/index.d.ts.map +1 -1
- package/dist/src/dataTransfer/upload/{ui/UploadProgressPanel.vue.d.ts → UploadProgressPanel.vue.d.ts} +2 -0
- package/dist/src/dataTransfer/upload/UploadProgressPanel.vue.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/{ui/UploadProgressPanelItem.vue.d.ts → UploadProgressPanelItem.vue.d.ts} +2 -1
- package/dist/src/dataTransfer/upload/UploadProgressPanelItem.vue.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/core/index.d.ts +3 -0
- package/dist/src/dataTransfer/upload/core/index.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/core/uploadClient/createUploadStatusPoller.d.ts +26 -0
- package/dist/src/dataTransfer/upload/core/uploadClient/createUploadStatusPoller.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/core/uploadClient/index.d.ts +3 -0
- package/dist/src/dataTransfer/upload/core/uploadClient/index.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/core/uploadClient/uploadClient.d.ts +59 -0
- package/dist/src/dataTransfer/upload/core/uploadClient/uploadClient.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/{manager/index.d.ts → core/uploadManager/chunkedUploadManager.d.ts} +21 -60
- package/dist/src/dataTransfer/upload/core/uploadManager/chunkedUploadManager.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/core/uploadManager/config.d.ts +12 -0
- package/dist/src/dataTransfer/upload/core/uploadManager/config.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/core/uploadManager/index.d.ts +5 -0
- package/dist/src/dataTransfer/upload/core/uploadManager/index.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/core/uploadManager/state.d.ts +30 -0
- package/dist/src/dataTransfer/upload/core/uploadManager/state.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/core/uploadManager/streamingUploadManager.d.ts +52 -0
- package/dist/src/dataTransfer/upload/core/uploadManager/streamingUploadManager.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/core/uploadManager/types.d.ts +46 -0
- package/dist/src/dataTransfer/upload/core/uploadManager/types.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/core/uploadManager/uploadPartBytes.d.ts +17 -0
- package/dist/src/dataTransfer/upload/core/uploadManager/uploadPartBytes.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/index.d.ts +6 -0
- package/dist/src/dataTransfer/upload/index.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/types.d.ts +80 -0
- package/dist/src/dataTransfer/upload/types.d.ts.map +1 -0
- package/dist/src/dataTransfer/upload/useFileUpload.d.ts +5 -13
- package/dist/src/dataTransfer/upload/useFileUpload.d.ts.map +1 -1
- package/dist/src/dataTransfer/upload/{ui/useUploadManager.d.ts → useUploadManager.d.ts} +17 -5
- package/dist/src/dataTransfer/upload/useUploadManager.d.ts.map +1 -0
- package/package.json +8 -4
- package/dist/src/dataTransfer/upload/manager/index.d.ts.map +0 -1
- package/dist/src/dataTransfer/upload/ui/UploadProgressPanel.vue.d.ts.map +0 -1
- package/dist/src/dataTransfer/upload/ui/UploadProgressPanelItem.vue.d.ts.map +0 -1
- package/dist/src/dataTransfer/upload/ui/index.d.ts +0 -5
- package/dist/src/dataTransfer/upload/ui/index.d.ts.map +0 -1
- package/dist/src/dataTransfer/upload/ui/types.d.ts +0 -60
- package/dist/src/dataTransfer/upload/ui/types.d.ts.map +0 -1
- package/dist/src/dataTransfer/upload/ui/useUploadManager.d.ts.map +0 -1
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { FetchOptions } from 'ofetch';
|
|
2
|
+
/**
|
|
3
|
+
* What `prepareUpload` actually needs to build a
|
|
4
|
+
* correct manifest request. Kept structural (rather than requiring a real
|
|
5
|
+
* `File`) so callers that don't have a materialized file - e.g. a streaming
|
|
6
|
+
* upload whose final size isn't known yet - can pass a plain metadata object
|
|
7
|
+
* instead.
|
|
8
|
+
*/
|
|
9
|
+
type UploadCandidate = {
|
|
10
|
+
name: string;
|
|
11
|
+
size: number;
|
|
12
|
+
type: string;
|
|
13
|
+
};
|
|
14
|
+
type PrepareUploadItem<T extends UploadCandidate> = {
|
|
15
|
+
/**
|
|
16
|
+
* The manifest key: the path (relative to `parentId`) this item should be
|
|
17
|
+
* created at.
|
|
18
|
+
*/
|
|
19
|
+
path: string;
|
|
20
|
+
file: T;
|
|
21
|
+
};
|
|
22
|
+
type CreateUploadClientOptions = {
|
|
23
|
+
/**
|
|
24
|
+
* Options to customize the fetch client used internally to make http requests.
|
|
25
|
+
* e.g: headers, baseUrl, etc
|
|
26
|
+
*/
|
|
27
|
+
customFetchClientOptions?: FetchOptions;
|
|
28
|
+
};
|
|
29
|
+
export type UploadClient = ReturnType<typeof createUploadClient>;
|
|
30
|
+
/**
|
|
31
|
+
* Creates the raw upload lifecycle client:
|
|
32
|
+
*
|
|
33
|
+
* (1) - prepare a batch of items for upload
|
|
34
|
+
* (2) - resolve a presigned URL for a given file part
|
|
35
|
+
* (3) - complete an upload once all its parts are uploaded, or cancel one in progress.
|
|
36
|
+
*/
|
|
37
|
+
export declare const createUploadClient: (options?: CreateUploadClientOptions) => {
|
|
38
|
+
prepareUpload: <T extends UploadCandidate>(parentId: string, items: Array<PrepareUploadItem<T>>) => Promise<Array<{
|
|
39
|
+
uploadId: string;
|
|
40
|
+
file: T;
|
|
41
|
+
path: string;
|
|
42
|
+
}>>;
|
|
43
|
+
resolveFilePartUploadURL: (uploadId: string, partNumber: number) => Promise<{
|
|
44
|
+
method: string;
|
|
45
|
+
url: string;
|
|
46
|
+
header: {
|
|
47
|
+
Host: string;
|
|
48
|
+
};
|
|
49
|
+
}>;
|
|
50
|
+
completeUpload: (uploadId: string, partIds: Record<number, string>) => Promise<void>;
|
|
51
|
+
cancelUpload: (uploadId: string) => Promise<any>;
|
|
52
|
+
getUploadStatus: (uploadIds: string[]) => Promise<{
|
|
53
|
+
uploadId: string;
|
|
54
|
+
status: "PREPARED" | "ANALYSIS_PENDING" | "COMPLETED" | "ABORTED" | "FAILED";
|
|
55
|
+
statusMessage: string;
|
|
56
|
+
}[]>;
|
|
57
|
+
};
|
|
58
|
+
export {};
|
|
59
|
+
//# sourceMappingURL=uploadClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uploadClient.d.ts","sourceRoot":"","sources":["../../../../../../src/dataTransfer/upload/core/uploadClient/uploadClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAM3C;;;;;;GAMG;AACH,KAAK,eAAe,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpE,KAAK,iBAAiB,CAAC,CAAC,SAAS,eAAe,IAAI;IAClD;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,CAAC,CAAC;CACT,CAAC;AAEF,KAAK,yBAAyB,GAAG;IAC/B;;;OAGG;IACH,wBAAwB,CAAC,EAAE,YAAY,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEjE;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,GAAI,UAAS,yBAA8B;oBAGjD,CAAC,SAAS,eAAe,YACpC,MAAM,SACT,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,KACjC,OAAO,CAAC,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;yCAsClB,MAAM,cAAc,MAAM;gBAE1D,MAAM;aACT,MAAM;gBACH;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE;;+BAUhB,MAAM,WACP,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;6BAQD,MAAM;iCAMF,MAAM,EAAE;kBAE9B,MAAM;gBAEd,UAAU,GAAG,kBAAkB,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ;uBACvD,MAAM;;CAkB1B,CAAC"}
|
|
@@ -1,50 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
readonly IN_PROGRESS: "inprogress";
|
|
4
|
-
readonly CANCELLED: "cancelled";
|
|
5
|
-
readonly FAILED: "failed";
|
|
6
|
-
readonly COMPLETE: "complete";
|
|
7
|
-
};
|
|
8
|
-
export type UploadStateName = (typeof UploadStates)[keyof typeof UploadStates];
|
|
9
|
-
export type PartUploadResponse = {
|
|
10
|
-
partId: string;
|
|
11
|
-
};
|
|
12
|
-
export type UploaderManagerConfig = {
|
|
13
|
-
/**
|
|
14
|
-
* Function to resolve the metadata for a request to upload a file part
|
|
15
|
-
* @param uploadId
|
|
16
|
-
* @param partNumber
|
|
17
|
-
* @returns
|
|
18
|
-
*/
|
|
19
|
-
resolveFilePartUploadURL: (uploadId: string, partNumber: number) => Promise<{
|
|
20
|
-
method: string;
|
|
21
|
-
url: string;
|
|
22
|
-
}>;
|
|
23
|
-
/**
|
|
24
|
-
* Callback that gets triggered when the whole file is uploaded.
|
|
25
|
-
* @param
|
|
26
|
-
* @returns
|
|
27
|
-
*/
|
|
28
|
-
onFileUploadComplete?: (payload: {
|
|
29
|
-
/**
|
|
30
|
-
* Identifier of the upload for this file (must be unique)
|
|
31
|
-
*/
|
|
32
|
-
uploadId: string;
|
|
33
|
-
/**
|
|
34
|
-
* Ids of all the uploaded file parts
|
|
35
|
-
*/
|
|
36
|
-
filePartIds: Record<number, string>;
|
|
37
|
-
}) => void;
|
|
38
|
-
/**
|
|
39
|
-
* Callback that gets triggered when an upload has failed.
|
|
40
|
-
* @param uploadId
|
|
41
|
-
* @param error the error that cause the failure if it exists
|
|
42
|
-
* @returns
|
|
43
|
-
*/
|
|
44
|
-
onFileUploadFailed?: (payload: {
|
|
45
|
-
uploadId: string;
|
|
46
|
-
error: Error;
|
|
47
|
-
}) => void;
|
|
1
|
+
import { BaseUploadManagerConfig } from './types';
|
|
2
|
+
export type ChunkUploadManagerConfig = BaseUploadManagerConfig & {
|
|
48
3
|
/**
|
|
49
4
|
* Callback that gets triggered when the progress of a file part upload
|
|
50
5
|
* for a specific upload id is updated
|
|
@@ -54,14 +9,6 @@ export type UploaderManagerConfig = {
|
|
|
54
9
|
*/
|
|
55
10
|
onProgress?: (uploadId: string, progress: number) => void;
|
|
56
11
|
};
|
|
57
|
-
type UploadState = {
|
|
58
|
-
uploadId: string;
|
|
59
|
-
file: File;
|
|
60
|
-
completedChunkCount: number;
|
|
61
|
-
uploadedByteCount: number;
|
|
62
|
-
state: UploadStateName;
|
|
63
|
-
abortController: AbortController;
|
|
64
|
-
};
|
|
65
12
|
/**
|
|
66
13
|
* Creates and returns an `uploadManager`, a comprehensive multi-file, multi-part upload handler.
|
|
67
14
|
*
|
|
@@ -85,8 +32,12 @@ type UploadState = {
|
|
|
85
32
|
* it manages retries and stops any failed uploads after the retry limit is reached, marking them as failed.
|
|
86
33
|
* This ensures that the promise it returns completes gracefully without uncaught exceptions.
|
|
87
34
|
*
|
|
35
|
+
* This is the "slice-based" manager: it needs each file's complete bytes to already be
|
|
36
|
+
* available (as a real `File`/`Blob` with a known `.size`), since it produces each part via
|
|
37
|
+
* `file.slice()`. For uploading from a source whose total size isn't known upfront (e.g. a
|
|
38
|
+
* stream of compressed output), see `createStreamingUploadManager` instead.
|
|
88
39
|
*/
|
|
89
|
-
export declare const createUploadManager: (config:
|
|
40
|
+
export declare const createUploadManager: (config: ChunkUploadManagerConfig) => {
|
|
90
41
|
uploadFiles: (files: Array<{
|
|
91
42
|
uploadId: string;
|
|
92
43
|
file: File;
|
|
@@ -95,11 +46,21 @@ export declare const createUploadManager: (config: UploaderManagerConfig) => {
|
|
|
95
46
|
cancelled: string[];
|
|
96
47
|
failed: string[];
|
|
97
48
|
}>;
|
|
98
|
-
getUploadState: (uploadId: string) =>
|
|
49
|
+
getUploadState: (uploadId: string) => {
|
|
50
|
+
uploadId: string;
|
|
51
|
+
fileDescriptor?: {
|
|
52
|
+
name: string;
|
|
53
|
+
type: string;
|
|
54
|
+
};
|
|
55
|
+
completedChunkCount: number;
|
|
56
|
+
uploadedByteCount: number;
|
|
57
|
+
state: import('./types').UploadStateName;
|
|
58
|
+
abortController: AbortController;
|
|
59
|
+
} | undefined;
|
|
99
60
|
isFailed: (uploadId: string) => boolean;
|
|
100
61
|
isCancelled: (uploadId: string) => boolean;
|
|
101
62
|
cancel: (uploadId: string) => void;
|
|
102
|
-
|
|
63
|
+
cancelAll: () => void;
|
|
64
|
+
setFailed: (uploadId: string) => void;
|
|
103
65
|
};
|
|
104
|
-
|
|
105
|
-
//# sourceMappingURL=index.d.ts.map
|
|
66
|
+
//# sourceMappingURL=chunkedUploadManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunkedUploadManager.d.ts","sourceRoot":"","sources":["../../../../../../src/dataTransfer/upload/core/uploadManager/chunkedUploadManager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAGvD,MAAM,MAAM,wBAAwB,GAAG,uBAAuB,GAAG;IAC/D;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3D,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,wBAAwB;yBA8GtC,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC;;;;;;;;;;;;;;;;;;;;;CAoBpE,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration constants shared by the upload managers
|
|
3
|
+
*/
|
|
4
|
+
export declare const CONFIG: Readonly<{
|
|
5
|
+
/** Size, in bytes, of each uploaded file part. */
|
|
6
|
+
CHUNK_SIZE: number;
|
|
7
|
+
/** Max number of retries for a failed request (part-url resolution or the chunk upload itself). */
|
|
8
|
+
DEFAULT_RETRY_COUNT: 5;
|
|
9
|
+
/** Delay, in ms, between retries. */
|
|
10
|
+
DEFAULT_RETRY_DELAY_MS: 50;
|
|
11
|
+
}>;
|
|
12
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../../src/dataTransfer/upload/core/uploadManager/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,MAAM;IACjB,kDAAkD;;IAElD,mGAAmG;;IAEnG,qCAAqC;;EAErC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/dataTransfer/upload/core/uploadManager/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { UploadStateName } from './types';
|
|
2
|
+
type UploadState = {
|
|
3
|
+
uploadId: string;
|
|
4
|
+
fileDescriptor?: {
|
|
5
|
+
name: string;
|
|
6
|
+
type: string;
|
|
7
|
+
};
|
|
8
|
+
completedChunkCount: number;
|
|
9
|
+
uploadedByteCount: number;
|
|
10
|
+
state: UploadStateName;
|
|
11
|
+
abortController: AbortController;
|
|
12
|
+
};
|
|
13
|
+
export declare const createStateManager: () => {
|
|
14
|
+
get: (uploadId: string) => UploadState | undefined;
|
|
15
|
+
set: (uploadId: string, state: Partial<UploadState>) => void;
|
|
16
|
+
isFailed: (uploadId: string) => boolean;
|
|
17
|
+
isCancelled: (uploadId: string) => boolean;
|
|
18
|
+
cancel: (uploadId: string) => void;
|
|
19
|
+
cancelAll: () => void;
|
|
20
|
+
setCompleted: (uploadId: string, completedChunkCount: number) => void;
|
|
21
|
+
setFailed: (uploadId: string) => void;
|
|
22
|
+
abortInFlightUpload: (uploadId: string, reason: string) => void;
|
|
23
|
+
flush: () => {
|
|
24
|
+
completed: string[];
|
|
25
|
+
cancelled: string[];
|
|
26
|
+
failed: string[];
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
export {};
|
|
30
|
+
//# sourceMappingURL=state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../../../src/dataTransfer/upload/core/uploadManager/state.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE/C,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,EAAE,eAAe,CAAC;IACvB,eAAe,EAAE,eAAe,CAAC;CAClC,CAAC;AAEF,eAAO,MAAM,kBAAkB;oBAWK,MAAM;oBACN,MAAM,SAAS,OAAO,CAAC,WAAW,CAAC;yBAOzC,MAAM;4BACH,MAAM;uBAgBX,MAAM;;6BAoBA,MAAM,uBAAuB,MAAM;0BAQtC,MAAM;oCA1CI,MAAM,UAAU,MAAM;;;;;;CAyF9D,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { BaseUploadManagerConfig } from './types';
|
|
2
|
+
export type StreamingUploadManagerConfig = BaseUploadManagerConfig & {
|
|
3
|
+
/**
|
|
4
|
+
* Callback triggered as bytes are uploaded. This reports an absolute byte count rather
|
|
5
|
+
* than a percentage: the total size isn't known upfront for a stream.
|
|
6
|
+
*/
|
|
7
|
+
onProgress?: (uploadId: string, uploadedBytes: number) => void;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Creates and returns a `streamingUploadManager` - a multi-part upload handler
|
|
11
|
+
* driven by a `ReadableStream<Uint8Array>` rather than a `File`/`Blob`.
|
|
12
|
+
*
|
|
13
|
+
* Unlike the chunkedUploadManager, this doesn't need to know the total size of the upload upfront.
|
|
14
|
+
* Instead, it accumulates stream chunks into a buffer and uploadsa part every time
|
|
15
|
+
* the buffer crosses the configured threshold for upload chunks, flushing whatever remains
|
|
16
|
+
* as a final (possibly smaller) part once the stream ends.
|
|
17
|
+
*
|
|
18
|
+
* This bounds memory to roughly one chunk's worth of buffered bytes, plus
|
|
19
|
+
* whatever the stream source itself buffers, regardless of the eventual
|
|
20
|
+
* total size - useful for sources whose size can't be known in advance,
|
|
21
|
+
* such as compressed output from a streaming zip encoder.
|
|
22
|
+
*
|
|
23
|
+
* Shares the same part-upload mechanics (retries, progress, abort) as
|
|
24
|
+
* the chunkedUploadManager
|
|
25
|
+
*/
|
|
26
|
+
export declare const createStreamingUploadManager: (config: StreamingUploadManagerConfig) => {
|
|
27
|
+
uploadStreams: (streams: Array<{
|
|
28
|
+
uploadId: string;
|
|
29
|
+
stream: ReadableStream<Uint8Array>;
|
|
30
|
+
}>) => Promise<{
|
|
31
|
+
completed: string[];
|
|
32
|
+
cancelled: string[];
|
|
33
|
+
failed: string[];
|
|
34
|
+
}>;
|
|
35
|
+
getUploadState: (uploadId: string) => {
|
|
36
|
+
uploadId: string;
|
|
37
|
+
fileDescriptor?: {
|
|
38
|
+
name: string;
|
|
39
|
+
type: string;
|
|
40
|
+
};
|
|
41
|
+
completedChunkCount: number;
|
|
42
|
+
uploadedByteCount: number;
|
|
43
|
+
state: import('./types').UploadStateName;
|
|
44
|
+
abortController: AbortController;
|
|
45
|
+
} | undefined;
|
|
46
|
+
isFailed: (uploadId: string) => boolean;
|
|
47
|
+
isCancelled: (uploadId: string) => boolean;
|
|
48
|
+
cancel: (uploadId: string) => void;
|
|
49
|
+
cancelAll: () => void;
|
|
50
|
+
setFailed: (uploadId: string) => void;
|
|
51
|
+
};
|
|
52
|
+
//# sourceMappingURL=streamingUploadManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"streamingUploadManager.d.ts","sourceRoot":"","sources":["../../../../../../src/dataTransfer/upload/core/uploadManager/streamingUploadManager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAGvD,MAAM,MAAM,4BAA4B,GAAG,uBAAuB,GAAG;IACnE;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,KAAK,IAAI,CAAC;CAChE,CAAC;AAgIF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,4BAA4B,GACvC,QAAQ,4BAA4B;6BAkFzB,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,CAAA;KAAE,CAAC;;;;;;;;;;;;;;;;;;;;;CAqB3E,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export type BaseUploadManagerConfig = {
|
|
2
|
+
/**
|
|
3
|
+
* Function to resolve the metadata for a request to upload a file part
|
|
4
|
+
* @param uploadId
|
|
5
|
+
* @param partNumber
|
|
6
|
+
* @returns
|
|
7
|
+
*/
|
|
8
|
+
resolveFilePartUploadURL: (uploadId: string, partNumber: number) => Promise<{
|
|
9
|
+
method: string;
|
|
10
|
+
url: string;
|
|
11
|
+
}>;
|
|
12
|
+
/**
|
|
13
|
+
* Callback that gets triggered when the whole file (or stream in streaming mode) is uploaded.
|
|
14
|
+
* @param
|
|
15
|
+
* @returns
|
|
16
|
+
*/
|
|
17
|
+
onFileUploadComplete?: (payload: {
|
|
18
|
+
/**
|
|
19
|
+
* Identifier of the upload for this file (must be unique)
|
|
20
|
+
*/
|
|
21
|
+
uploadId: string;
|
|
22
|
+
/**
|
|
23
|
+
* Ids of all the uploaded file parts
|
|
24
|
+
*/
|
|
25
|
+
filePartIds: Record<number, string>;
|
|
26
|
+
}) => void;
|
|
27
|
+
/**
|
|
28
|
+
* Callback that gets triggered when an upload has failed.
|
|
29
|
+
* @param uploadId
|
|
30
|
+
* @param error the error that cause the failure if it exists
|
|
31
|
+
* @returns
|
|
32
|
+
*/
|
|
33
|
+
onFileUploadFailed?: (payload: {
|
|
34
|
+
uploadId: string;
|
|
35
|
+
error: Error;
|
|
36
|
+
}) => void;
|
|
37
|
+
};
|
|
38
|
+
export declare const UploadStates: {
|
|
39
|
+
readonly IDLE: "idle";
|
|
40
|
+
readonly IN_PROGRESS: "inprogress";
|
|
41
|
+
readonly CANCELLED: "cancelled";
|
|
42
|
+
readonly FAILED: "failed";
|
|
43
|
+
readonly COMPLETE: "complete";
|
|
44
|
+
};
|
|
45
|
+
export type UploadStateName = (typeof UploadStates)[keyof typeof UploadStates];
|
|
46
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/dataTransfer/upload/core/uploadManager/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,uBAAuB,GAAG;IACpC;;;;;OAKG;IACH,wBAAwB,EAAE,CACxB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,KACf,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAE9C;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE;QAC/B;;WAEG;QACH,QAAQ,EAAE,MAAM,CAAC;QACjB;;WAEG;QACH,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACrC,KAAK,IAAI,CAAC;IAEX;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI,CAAC;CAC5E,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export type PartUploadResponse = {
|
|
2
|
+
partId: string;
|
|
3
|
+
};
|
|
4
|
+
/**
|
|
5
|
+
* Uploads a single file part via XHR, reporting upload progress and
|
|
6
|
+
* resolving with the part's identifying ETag (or an empty string if the
|
|
7
|
+
* backend doesn't return one).
|
|
8
|
+
*/
|
|
9
|
+
export declare const uploadPartBytesWithProgress: (params: {
|
|
10
|
+
method: string;
|
|
11
|
+
url: string;
|
|
12
|
+
partBytes: Blob;
|
|
13
|
+
partIndex: number;
|
|
14
|
+
onProgress: (progress: number) => void;
|
|
15
|
+
abortSignal: AbortSignal;
|
|
16
|
+
}) => Promise<PartUploadResponse>;
|
|
17
|
+
//# sourceMappingURL=uploadPartBytes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uploadPartBytes.d.ts","sourceRoot":"","sources":["../../../../../../src/dataTransfer/upload/core/uploadManager/uploadPartBytes.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,GAAI,QAAQ;IAClD,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,WAAW,EAAE,WAAW,CAAC;CAC1B,KAAG,OAAO,CAAC,kBAAkB,CAgD7B,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { default as UploadProgressPanel } from './UploadProgressPanel.vue';
|
|
2
|
+
export { UploadProgressPanel };
|
|
3
|
+
export type { DirectoryUploadItem, FileUploadItem, UploadItem, UploadItemStatus, UploadProgressPanelProps, } from './types';
|
|
4
|
+
export * from './useFileUpload';
|
|
5
|
+
export * from './useUploadManager';
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/dataTransfer/upload/index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAC/B,YAAY,EACV,mBAAmB,EACnB,cAAc,EACd,UAAU,EACV,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,SAAS,CAAC;AACjB,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { UploadStateName } from '../core';
|
|
2
|
+
export type UploadItemStatus = Exclude<UploadStateName, "idle"> | "processing" | "partial-success";
|
|
3
|
+
declare const UploadItemStatus: {
|
|
4
|
+
PROCESSING: "processing";
|
|
5
|
+
/** Some, but not all, of the items an upload is comprised of succeeded. */
|
|
6
|
+
PARTIAL_SUCCESS: "partial-success";
|
|
7
|
+
IN_PROGRESS: "inprogress";
|
|
8
|
+
CANCELLED: "cancelled";
|
|
9
|
+
FAILED: "failed";
|
|
10
|
+
COMPLETE: "complete";
|
|
11
|
+
};
|
|
12
|
+
type CommonProps = {
|
|
13
|
+
/** Unique identifier of the uploaded item. */
|
|
14
|
+
id: string;
|
|
15
|
+
/** File name of the uploaded item. */
|
|
16
|
+
name: string;
|
|
17
|
+
/** Id of the parent folder the item is uploaded into. */
|
|
18
|
+
parentId: string;
|
|
19
|
+
actions?: {
|
|
20
|
+
cancellable?: boolean;
|
|
21
|
+
inspectable?: boolean;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
type WithInProgress = {
|
|
25
|
+
status: typeof UploadItemStatus.IN_PROGRESS;
|
|
26
|
+
};
|
|
27
|
+
type WithComplete = {
|
|
28
|
+
status: typeof UploadItemStatus.COMPLETE;
|
|
29
|
+
};
|
|
30
|
+
type WithCancelled = {
|
|
31
|
+
/** Status indicating the upload was cancelled by the user. */
|
|
32
|
+
status: typeof UploadItemStatus.CANCELLED;
|
|
33
|
+
};
|
|
34
|
+
type WithFailure = {
|
|
35
|
+
status: typeof UploadItemStatus.FAILED;
|
|
36
|
+
/** Human-readable explanation of why the upload failed. */
|
|
37
|
+
failureDetails: string;
|
|
38
|
+
};
|
|
39
|
+
type WithProcessing = {
|
|
40
|
+
/** Status indicating the uploaded file is being processed server-side. */
|
|
41
|
+
status: typeof UploadItemStatus.PROCESSING;
|
|
42
|
+
};
|
|
43
|
+
type WithPartialSuccess = {
|
|
44
|
+
/**
|
|
45
|
+
* Status indicating that this item represents a group of uploads of
|
|
46
|
+
* which only some succeeded.
|
|
47
|
+
*/
|
|
48
|
+
status: typeof UploadItemStatus.PARTIAL_SUCCESS;
|
|
49
|
+
};
|
|
50
|
+
type WithDirectoryProgress = {
|
|
51
|
+
uploadedEntries: number;
|
|
52
|
+
totalEntries: number;
|
|
53
|
+
};
|
|
54
|
+
export type DirectoryUploadItem = CommonProps & {
|
|
55
|
+
type: "directory";
|
|
56
|
+
} & WithDirectoryProgress & (WithInProgress | WithComplete | WithFailure | WithCancelled | WithPartialSuccess);
|
|
57
|
+
type WithFileProgress = {
|
|
58
|
+
/**
|
|
59
|
+
* A value between 0-1, which indicates percentage that has been uploaded of this file.
|
|
60
|
+
* If omitted, no progress bar is shown
|
|
61
|
+
*/
|
|
62
|
+
progress?: number;
|
|
63
|
+
size: number;
|
|
64
|
+
};
|
|
65
|
+
export type FileUploadItem = CommonProps & {
|
|
66
|
+
type: "file";
|
|
67
|
+
} & WithFileProgress & (WithInProgress | WithComplete | WithProcessing | WithFailure | WithCancelled);
|
|
68
|
+
export type UploadItem = DirectoryUploadItem | FileUploadItem;
|
|
69
|
+
export type UploadProgressPanelProps = {
|
|
70
|
+
/**
|
|
71
|
+
* List of items that the upload is comprised of
|
|
72
|
+
*/
|
|
73
|
+
items: UploadItem[];
|
|
74
|
+
/**
|
|
75
|
+
* Indicates the number of items to show as placeholder skeletons
|
|
76
|
+
*/
|
|
77
|
+
placeholderItems?: number;
|
|
78
|
+
};
|
|
79
|
+
export {};
|
|
80
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/dataTransfer/upload/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAgB,MAAM,SAAS,CAAC;AAE7D,MAAM,MAAM,gBAAgB,GAC1B,OAAO,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,YAAY,GAAG,iBAAiB,CAAC;AAItE,QAAA,MAAM,gBAAgB;;IAGpB,2EAA2E;;;;;;CAE5E,CAAC;AAEF,KAAK,WAAW,GAAG;IACjB,8CAA8C;IAC9C,EAAE,EAAE,MAAM,CAAC;IACX,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,QAAQ,EAAE,MAAM,CAAC;IAEjB,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB,CAAC;CACH,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,MAAM,EAAE,OAAO,gBAAgB,CAAC,WAAW,CAAC;CAC7C,CAAC;AAEF,KAAK,YAAY,GAAG;IAClB,MAAM,EAAE,OAAO,gBAAgB,CAAC,QAAQ,CAAC;CAC1C,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,8DAA8D;IAC9D,MAAM,EAAE,OAAO,gBAAgB,CAAC,SAAS,CAAC;CAC3C,CAAC;AAEF,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,OAAO,gBAAgB,CAAC,MAAM,CAAC;IACvC,2DAA2D;IAC3D,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,0EAA0E;IAC1E,MAAM,EAAE,OAAO,gBAAgB,CAAC,UAAU,CAAC;CAC5C,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB;;;OAGG;IACH,MAAM,EAAE,OAAO,gBAAgB,CAAC,eAAe,CAAC;CACjD,CAAC;AAEF,KAAK,qBAAqB,GAAG;IAAE,eAAe,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/E,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG;IAC9C,IAAI,EAAE,WAAW,CAAC;CACnB,GAAG,qBAAqB,GACvB,CACI,cAAc,GACd,YAAY,GACZ,WAAW,GACX,aAAa,GACb,kBAAkB,CACrB,CAAC;AAEJ,KAAK,gBAAgB,GAAG;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,gBAAgB,GAC5E,CACE,cAAc,GAAG,YAAY,GAAG,cAAc,GAAG,WAAW,GAAG,aAAa,CAC7E,CAAC;AAEJ,MAAM,MAAM,UAAU,GAAG,mBAAmB,GAAG,cAAc,CAAC;AAE9D,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FetchOptions } from 'ofetch';
|
|
2
|
-
import { UploadItem } from './
|
|
2
|
+
import { UploadItem } from './types';
|
|
3
3
|
type UseFileUploadOptions = {
|
|
4
4
|
/**
|
|
5
5
|
* Max number of concurrent uploads allowed in the upload queue.
|
|
@@ -38,6 +38,7 @@ type UseFileUploadOptions = {
|
|
|
38
38
|
* e.g: headers, baseUrl, etc
|
|
39
39
|
*/
|
|
40
40
|
customFetchClientOptions?: FetchOptions;
|
|
41
|
+
isFileWithProcessing?: (fileName: string) => boolean;
|
|
41
42
|
};
|
|
42
43
|
/**
|
|
43
44
|
* This composable handles uploads of data to a hub repository item (space or workflow group).
|
|
@@ -90,24 +91,15 @@ type UseFileUploadOptions = {
|
|
|
90
91
|
* Alternative to completion, you can also cancel an upload. For this, the composable makes a DELETE request
|
|
91
92
|
* providing the corresponding `uploadId` which will effectively cancel it.
|
|
92
93
|
*
|
|
93
|
-
*
|
|
94
94
|
* For a usage example, refer to the Docs page in storybook.
|
|
95
95
|
*/
|
|
96
96
|
export declare const useFileUpload: (options?: UseFileUploadOptions) => {
|
|
97
97
|
uploadQueue: import('vue').ComputedRef<UploadItem[]>;
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
uploadId: string;
|
|
101
|
-
}) => void;
|
|
102
|
-
setProcessingFailed: ({ uploadId, error, }: {
|
|
103
|
-
uploadId: string;
|
|
104
|
-
error?: Error;
|
|
105
|
-
}) => void;
|
|
98
|
+
getItemFromQueue: (uploadId: string) => UploadItem | undefined;
|
|
99
|
+
updateItemInQueue: (uploadId: string, data: Partial<UploadItem>) => void;
|
|
106
100
|
isPreparingUpload: import('vue').ComputedRef<boolean>;
|
|
107
101
|
totalFilesBeingPrepared: import('vue').ComputedRef<number>;
|
|
108
|
-
start: (parentId: string, files: File[]
|
|
109
|
-
isFileWithProcessing?: (file: File) => boolean;
|
|
110
|
-
}) => Promise<string[]>;
|
|
102
|
+
start: (parentId: string, files: File[]) => Promise<string[]>;
|
|
111
103
|
cancel: (uploadId: string) => void;
|
|
112
104
|
hasPendingUploads: import('vue').ComputedRef<boolean>;
|
|
113
105
|
totalPendingUploads: import('vue').ComputedRef<number>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFileUpload.d.ts","sourceRoot":"","sources":["../../../../src/dataTransfer/upload/useFileUpload.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAc,YAAY,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"useFileUpload.d.ts","sourceRoot":"","sources":["../../../../src/dataTransfer/upload/useFileUpload.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAc,YAAY,EAAE,MAAM,QAAQ,CAAC;AAOvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAc1C,KAAK,oBAAoB,GAAG;IAC1B;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE;QAC/B,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACpC,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,IAAI,CAAC;IACX;;;OAGG;IACH,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE;QAC7B,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,KAAK,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KAClB,KAAK,IAAI,CAAC;IACX;;;;OAIG;IACH,yBAAyB,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D;;;OAGG;IACH,wBAAwB,CAAC,EAAE,YAAY,CAAC;IAExC,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;CACtD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,eAAO,MAAM,aAAa,GAAI,UAAS,oBAAyB;;iCAO1B,MAAM;kCAaL,MAAM,QAAQ,OAAO,CAAC,UAAU,CAAC;;;sBAmG5C,MAAM,SAAS,IAAI,EAAE;uBAuD1B,MAAM;;;;;;;CAO5B,CAAC"}
|
|
@@ -1,15 +1,23 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ChunkUploadManagerConfig } from '../core';
|
|
2
2
|
import { UploadItem } from './types';
|
|
3
|
-
type OnCompletePayload = Parameters<NonNullable<
|
|
3
|
+
type OnCompletePayload = Parameters<NonNullable<ChunkUploadManagerConfig["onFileUploadComplete"]>>[0] & {
|
|
4
4
|
parentId: string;
|
|
5
5
|
name: string;
|
|
6
6
|
};
|
|
7
|
-
type OnFailedPayload = Parameters<NonNullable<
|
|
7
|
+
type OnFailedPayload = Parameters<NonNullable<ChunkUploadManagerConfig["onFileUploadFailed"]>>[0] & {
|
|
8
8
|
parentId: string;
|
|
9
9
|
};
|
|
10
|
-
type UseUploadManagerOptions = Omit<
|
|
10
|
+
type UseUploadManagerOptions = Omit<ChunkUploadManagerConfig, "onProgress" | "onFileUploadComplete" | "onFileUploadFailed"> & {
|
|
11
11
|
onFileUploadComplete?: (payload: OnCompletePayload) => void;
|
|
12
12
|
onFileUploadFailed?: (payload: OnFailedPayload) => void;
|
|
13
|
+
/**
|
|
14
|
+
* Determines the status to assign a file once its raw upload finishes,
|
|
15
|
+
* before calling `onFileUploadComplete`. This helps for files that need further
|
|
16
|
+
* server-side processing
|
|
17
|
+
*
|
|
18
|
+
* Defaults to `complete`
|
|
19
|
+
*/
|
|
20
|
+
resolveCompleteStatus?: (payload: OnCompletePayload) => "complete" | "processing";
|
|
13
21
|
};
|
|
14
22
|
/**
|
|
15
23
|
* This composable wraps the `uploadManager` utility
|
|
@@ -25,7 +33,11 @@ export declare const useUploadManager: (options: UseUploadManagerOptions) => {
|
|
|
25
33
|
start: (parentId: string, uploadPayload: Array<{
|
|
26
34
|
uploadId: string;
|
|
27
35
|
file: File;
|
|
28
|
-
}>) => Promise<
|
|
36
|
+
}>) => Promise<never[] | {
|
|
37
|
+
completed: string[];
|
|
38
|
+
cancelled: string[];
|
|
39
|
+
failed: string[];
|
|
40
|
+
}>;
|
|
29
41
|
cancel: (uploadId: string) => void;
|
|
30
42
|
canCancel: (uploadId: string) => boolean;
|
|
31
43
|
removeItem: (uploadId: string) => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useUploadManager.d.ts","sourceRoot":"","sources":["../../../../src/dataTransfer/upload/useUploadManager.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,wBAAwB,EAAuB,MAAM,SAAS,CAAC;AAE7E,OAAO,KAAK,EAAkB,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1D,KAAK,iBAAiB,GAAG,UAAU,CACjC,WAAW,CAAC,wBAAwB,CAAC,sBAAsB,CAAC,CAAC,CAC9D,CAAC,CAAC,CAAC,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1C,KAAK,eAAe,GAAG,UAAU,CAC/B,WAAW,CAAC,wBAAwB,CAAC,oBAAoB,CAAC,CAAC,CAC5D,CAAC,CAAC,CAAC,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5B,KAAK,uBAAuB,GAAG,IAAI,CACjC,wBAAwB,EACxB,YAAY,GAAG,sBAAsB,GAAG,oBAAoB,CAC7D,GAAG;IACF,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC5D,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;IACxD;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,CACtB,OAAO,EAAE,iBAAiB,KACvB,UAAU,GAAG,YAAY,CAAC;CAChC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAAI,SAAS,uBAAuB;;;;sBAiCnD,MAAM,iBACD,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC;;;;;uBAsDnC,MAAM;0BAhCE,MAAM;2BAIL,MAAM;;0BAmCZ,MAAM,SAAS,KAAK;CAW7C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@knime/product-features",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.3.0",
|
|
4
4
|
"description": "Package containing composition patterns of KDS Components and KNIME business logic",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -25,6 +25,10 @@
|
|
|
25
25
|
"types": "./dist/src/dataTransfer/index.d.ts",
|
|
26
26
|
"import": "./dist/dataTransfer.js"
|
|
27
27
|
},
|
|
28
|
+
"./data-transfer/core": {
|
|
29
|
+
"types": "./dist/src/dataTransfer/core.d.ts",
|
|
30
|
+
"import": "./dist/dataTransfer/core.js"
|
|
31
|
+
},
|
|
28
32
|
"./nodes": {
|
|
29
33
|
"types": "./dist/src/nodes/index.d.ts",
|
|
30
34
|
"import": "./dist/nodes.js"
|
|
@@ -54,9 +58,9 @@
|
|
|
54
58
|
},
|
|
55
59
|
"dependencies": {
|
|
56
60
|
"consola": "^3.4.2",
|
|
57
|
-
"@knime/kds-components": "^6.
|
|
58
|
-
"@knime/kds-styles": "^6.
|
|
59
|
-
"@knime/utils": "^2.0.
|
|
61
|
+
"@knime/kds-components": "^6.9.0",
|
|
62
|
+
"@knime/kds-styles": "^6.9.0",
|
|
63
|
+
"@knime/utils": "^2.0.2"
|
|
60
64
|
},
|
|
61
65
|
"devDependencies": {
|
|
62
66
|
"@storybook/addon-docs": "^10.4.6",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/dataTransfer/upload/manager/index.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAE/E,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AA2DF,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;;;OAKG;IACH,wBAAwB,EAAE,CACxB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,KACf,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAE9C;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE;QAC/B;;WAEG;QACH,QAAQ,EAAE,MAAM,CAAC;QACjB;;WAEG;QACH,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACrC,KAAK,IAAI,CAAC;IAEX;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI,CAAC;IAE3E;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3D,CAAC;AAEF,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;IACX,mBAAmB,EAAE,MAAM,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,EAAE,eAAe,CAAC;IACvB,eAAe,EAAE,eAAe,CAAC;CAClC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,qBAAqB;yBAiLnC,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC;;;;;+BAjKjC,MAAM;yBAQZ,MAAM;4BACH,MAAM;uBAkBX,MAAM;0BAYH,MAAM,SAAS,KAAK;CAgKlD,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"UploadProgressPanel.vue.d.ts","sourceRoot":"","sources":["../../../../../src/dataTransfer/upload/ui/UploadProgressPanel.vue"],"names":[],"mappings":"AAiHA,OAAO,KAAK,EAAE,UAAU,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAEpE,KAAK,WAAW,GAAG,wBAAwB,CAAC;AAqC5C,KAAK,gBAAgB,GAAG;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAKF,KAAK,iBAAiB,GAAG,WAAW,GAAG,gBAAgB,CAAC;AA6JxD,QAAA,MAAM,YAAY;;;;;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"UploadProgressPanelItem.vue.d.ts","sourceRoot":"","sources":["../../../../../src/dataTransfer/upload/ui/UploadProgressPanelItem.vue"],"names":[],"mappings":"AA0HA,OAAO,KAAK,EAAE,UAAU,EAAkC,MAAM,SAAS,CAAC;AAE1E,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,UAAU,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AA6HF,QAAA,MAAM,YAAY;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { default as UploadProgressPanel } from './UploadProgressPanel.vue';
|
|
2
|
-
import { default as UploadProgressPanelItem } from './UploadProgressPanelItem.vue';
|
|
3
|
-
export { UploadProgressPanel, UploadProgressPanelItem };
|
|
4
|
-
export type * from './types';
|
|
5
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/dataTransfer/upload/ui/index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,2BAA2B,CAAC;AAC5D,OAAO,uBAAuB,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,CAAC;AACxD,mBAAmB,SAAS,CAAC"}
|