filemail-sdk 9.0.4 → 9.0.6
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/dist/src/autoDownloader/newInboxTransfersRetriever/newInboxTransfer.d.ts +1 -0
- package/dist/src/autoDownloader/newInboxTransfersRetriever/newInboxTransfer.d.ts.map +1 -1
- package/dist/src/autoDownloader/newInboxTransfersRetriever/newInboxTransfer.js.map +1 -1
- package/dist/src/autoDownloader/newInboxTransfersRetriever/newInboxTransfersRetriever.d.ts.map +1 -1
- package/dist/src/autoDownloader/newInboxTransfersRetriever/newInboxTransfersRetriever.js +1 -0
- package/dist/src/autoDownloader/newInboxTransfersRetriever/newInboxTransfersRetriever.js.map +1 -1
- package/dist/src/autoDownloader/transferHandler/autoDownloaderNewTransferHandler.d.ts.map +1 -1
- package/dist/src/autoDownloader/transferHandler/autoDownloaderNewTransferHandler.js +1 -2
- package/dist/src/autoDownloader/transferHandler/autoDownloaderNewTransferHandler.js.map +1 -1
- package/dist/src/autoDownloader/transferHandler/autoDownloaderRecoverableTransferHandler.d.ts.map +1 -1
- package/dist/src/autoDownloader/transferHandler/autoDownloaderRecoverableTransferHandler.js +1 -2
- package/dist/src/autoDownloader/transferHandler/autoDownloaderRecoverableTransferHandler.js.map +1 -1
- package/dist/src/client/node/nodeFileDetailsProvider.js +2 -2
- package/dist/src/client/node/nodeFileDetailsProvider.js.map +1 -1
- package/dist/src/utils/promiseAll.d.ts +3 -2
- package/dist/src/utils/promiseAll.d.ts.map +1 -1
- package/dist/src/utils/promiseAll.js +14 -9
- package/dist/src/utils/promiseAll.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"newInboxTransfer.d.ts","sourceRoot":"","sources":["../../../../src/autoDownloader/newInboxTransfersRetriever/newInboxTransfer.ts"],"names":[],"mappings":"AAAA,UAAU,gBAAgB;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,eAAe,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"newInboxTransfer.d.ts","sourceRoot":"","sources":["../../../../src/autoDownloader/newInboxTransfersRetriever/newInboxTransfer.ts"],"names":[],"mappings":"AAAA,UAAU,gBAAgB;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,eAAe,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"newInboxTransfer.js","sourceRoot":"","sources":["../../../../src/autoDownloader/newInboxTransfersRetriever/newInboxTransfer.ts"],"names":[],"mappings":"","sourcesContent":["interface NewInboxTransfer {\r\n transferId: string;\r\n filesCount: number;\r\n sizeInBytes: number;\r\n sentDate: number;\r\n from?: string;\r\n message?: string;\r\n subject?: string;\r\n to?: string[];\r\n}\r\n\r\nexport default NewInboxTransfer;"]}
|
|
1
|
+
{"version":3,"file":"newInboxTransfer.js","sourceRoot":"","sources":["../../../../src/autoDownloader/newInboxTransfersRetriever/newInboxTransfer.ts"],"names":[],"mappings":"","sourcesContent":["interface NewInboxTransfer {\r\n transferId: string;\r\n trackId: string | undefined;\r\n filesCount: number;\r\n sizeInBytes: number;\r\n sentDate: number;\r\n from?: string;\r\n message?: string;\r\n subject?: string;\r\n to?: string[];\r\n}\r\n\r\nexport default NewInboxTransfer;"]}
|
package/dist/src/autoDownloader/newInboxTransfersRetriever/newInboxTransfersRetriever.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"newInboxTransfersRetriever.d.ts","sourceRoot":"","sources":["../../../../src/autoDownloader/newInboxTransfersRetriever/newInboxTransfersRetriever.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,8BAA8B,CAAC;AAG1D,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAC;AAI1D,cAAM,0BAA0B;;gBAOhB,mBAAmB,EAAE,OAAO,EAAE,gCAAgC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS;IASxG,IAAI,gCAAgC,CAAC,gCAAgC,EAAE,MAAM,EAM5E;IAED,IAAI,UAAU,CAAC,UAAU,EAAE,MAAM,EAEhC;IAED,IAAI,mBAAmB,CAAC,mBAAmB,EAAE,OAAO,EAEnD;IAEK,eAAe,CAAC,iBAAiB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"newInboxTransfersRetriever.d.ts","sourceRoot":"","sources":["../../../../src/autoDownloader/newInboxTransfersRetriever/newInboxTransfersRetriever.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,8BAA8B,CAAC;AAG1D,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAC;AAI1D,cAAM,0BAA0B;;gBAOhB,mBAAmB,EAAE,OAAO,EAAE,gCAAgC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS;IASxG,IAAI,gCAAgC,CAAC,gCAAgC,EAAE,MAAM,EAM5E;IAED,IAAI,UAAU,CAAC,UAAU,EAAE,MAAM,EAEhC;IAED,IAAI,mBAAmB,CAAC,mBAAmB,EAAE,OAAO,EAEnD;IAEK,eAAe,CAAC,iBAAiB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IA8BhI,OAAO,CAAC,+BAA+B;IAWvC,OAAO,CAAC,6BAA6B;IAMrC,OAAO,CAAC,gCAAgC;CAG3C;AAED,eAAe,0BAA0B,CAAC"}
|
|
@@ -36,6 +36,7 @@ class NewInboxTransfersRetriever {
|
|
|
36
36
|
.filter(t => !t.blockdownloads && !t.passwordprotected && !t.isexpired && !t.e2ee && !isTransferHandled(t.id))
|
|
37
37
|
.map(t => ({
|
|
38
38
|
transferId: t.id,
|
|
39
|
+
trackId: t.trackid,
|
|
39
40
|
filesCount: t.numberoffiles || 0,
|
|
40
41
|
sizeInBytes: t.size || 0,
|
|
41
42
|
sentDate: t.sentdate,
|
package/dist/src/autoDownloader/newInboxTransfersRetriever/newInboxTransfersRetriever.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"newInboxTransfersRetriever.js","sourceRoot":"","sources":["../../../../src/autoDownloader/newInboxTransfersRetriever/newInboxTransfersRetriever.ts"],"names":[],"mappings":"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","sourcesContent":["import type ApiClient from \"../../utils/api/apiClient.js\";\r\nimport type GetInboxTransfersRequest from \"../../utils/api/dtos/getInboxTransfersRequest.js\";\r\nimport AutoDownloaderError from \"../autoDownloaderError.js\";\r\nimport type NewInboxTransfer from \"./newInboxTransfer.js\";\r\n\r\nconst LastCheckSafeMarginAddition = 60 * 1000;\r\n\r\nclass NewInboxTransfersRetriever {\r\n #lastCheckDate: number | undefined;\r\n\r\n #downloadForAllUsers: boolean;\r\n #apiClient: ApiClient;\r\n #periodToRetrieveTransfersInHours: number;\r\n\r\n constructor(downloadForAllUsers: boolean, periodToRetrieveTransfersInHours: number, apiClient: ApiClient) {\r\n if (periodToRetrieveTransfersInHours <= 0)\r\n throw new AutoDownloaderError(`periodToRetrieveTransfersInHours must be a positive value`);\r\n\r\n this.#downloadForAllUsers = downloadForAllUsers;\r\n this.#apiClient = apiClient;\r\n this.#periodToRetrieveTransfersInHours = periodToRetrieveTransfersInHours;\r\n }\r\n\r\n set periodToRetrieveTransfersInHours(periodToRetrieveTransfersInHours: number) {\r\n if (periodToRetrieveTransfersInHours <= 0)\r\n throw new AutoDownloaderError(`periodToRetrieveTransfersInHours must be a positive value`);\r\n\r\n this.#periodToRetrieveTransfersInHours = periodToRetrieveTransfersInHours;\r\n this.#lastCheckDate = undefined;\r\n }\r\n\r\n set loginToken(loginToken: string) {\r\n this.#apiClient.setLoginToken(loginToken);\r\n }\r\n\r\n set downloadForAllUsers(downloadForAllUsers: boolean) {\r\n this.#downloadForAllUsers = downloadForAllUsers;\r\n }\r\n\r\n async getNewTransfers(isTransferHandled: (transferId: string) => boolean, abortSignal: AbortSignal): Promise<NewInboxTransfer[]> {\r\n const currentCheckDate = new Date().getTime();\r\n\r\n const request: GetInboxTransfersRequest = {\r\n getForAllUsers: this.#downloadForAllUsers,\r\n sinceUnixTime: this.getSinceUnixTimeApiRequestParam(),\r\n };\r\n\r\n const inbox = await this.#apiClient.getInboxTransfers(request, abortSignal);\r\n\r\n const inboxTransfers = inbox\r\n .transfers\r\n .filter(t => !t.blockdownloads && !t.passwordprotected && !t.isexpired && !t.e2ee && !isTransferHandled(t.id))\r\n .map(t => ({\r\n transferId: t.id,\r\n filesCount: t.numberoffiles || 0,\r\n sizeInBytes: t.size || 0,\r\n sentDate: t.sentdate,\r\n from: t.from,\r\n to: t.to,\r\n subject: t.subject,\r\n message: t.message,\r\n }));\r\n\r\n this.#lastCheckDate = currentCheckDate;\r\n\r\n return inboxTransfers;\r\n }\r\n\r\n private getSinceUnixTimeApiRequestParam(): number {\r\n const sinceBasedOnPeriod = this.getSinceUnixTimeBasedOnPeriod();\r\n\r\n if (!this.#lastCheckDate)\r\n return sinceBasedOnPeriod;\r\n\r\n const sinceBasedOnLastCheck = this.getSinceUnixTimeBasedOnLastCheck();\r\n\r\n return Math.max(sinceBasedOnLastCheck, sinceBasedOnPeriod);\r\n }\r\n\r\n private getSinceUnixTimeBasedOnPeriod() {\r\n const sinceDate = new Date();\r\n sinceDate.setHours(sinceDate.getHours() - this.#periodToRetrieveTransfersInHours);\r\n return sinceDate.getTime();\r\n }\r\n\r\n private getSinceUnixTimeBasedOnLastCheck() {\r\n return this.#lastCheckDate! - LastCheckSafeMarginAddition;\r\n }\r\n}\r\n\r\nexport default NewInboxTransfersRetriever;"]}
|
|
1
|
+
{"version":3,"file":"newInboxTransfersRetriever.js","sourceRoot":"","sources":["../../../../src/autoDownloader/newInboxTransfersRetriever/newInboxTransfersRetriever.ts"],"names":[],"mappings":"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","sourcesContent":["import type ApiClient from \"../../utils/api/apiClient.js\";\r\nimport type GetInboxTransfersRequest from \"../../utils/api/dtos/getInboxTransfersRequest.js\";\r\nimport AutoDownloaderError from \"../autoDownloaderError.js\";\r\nimport type NewInboxTransfer from \"./newInboxTransfer.js\";\r\n\r\nconst LastCheckSafeMarginAddition = 60 * 1000;\r\n\r\nclass NewInboxTransfersRetriever {\r\n #lastCheckDate: number | undefined;\r\n\r\n #downloadForAllUsers: boolean;\r\n #apiClient: ApiClient;\r\n #periodToRetrieveTransfersInHours: number;\r\n\r\n constructor(downloadForAllUsers: boolean, periodToRetrieveTransfersInHours: number, apiClient: ApiClient) {\r\n if (periodToRetrieveTransfersInHours <= 0)\r\n throw new AutoDownloaderError(`periodToRetrieveTransfersInHours must be a positive value`);\r\n\r\n this.#downloadForAllUsers = downloadForAllUsers;\r\n this.#apiClient = apiClient;\r\n this.#periodToRetrieveTransfersInHours = periodToRetrieveTransfersInHours;\r\n }\r\n\r\n set periodToRetrieveTransfersInHours(periodToRetrieveTransfersInHours: number) {\r\n if (periodToRetrieveTransfersInHours <= 0)\r\n throw new AutoDownloaderError(`periodToRetrieveTransfersInHours must be a positive value`);\r\n\r\n this.#periodToRetrieveTransfersInHours = periodToRetrieveTransfersInHours;\r\n this.#lastCheckDate = undefined;\r\n }\r\n\r\n set loginToken(loginToken: string) {\r\n this.#apiClient.setLoginToken(loginToken);\r\n }\r\n\r\n set downloadForAllUsers(downloadForAllUsers: boolean) {\r\n this.#downloadForAllUsers = downloadForAllUsers;\r\n }\r\n\r\n async getNewTransfers(isTransferHandled: (transferId: string) => boolean, abortSignal: AbortSignal): Promise<NewInboxTransfer[]> {\r\n const currentCheckDate = new Date().getTime();\r\n\r\n const request: GetInboxTransfersRequest = {\r\n getForAllUsers: this.#downloadForAllUsers,\r\n sinceUnixTime: this.getSinceUnixTimeApiRequestParam(),\r\n };\r\n\r\n const inbox = await this.#apiClient.getInboxTransfers(request, abortSignal);\r\n\r\n const inboxTransfers = inbox\r\n .transfers\r\n .filter(t => !t.blockdownloads && !t.passwordprotected && !t.isexpired && !t.e2ee && !isTransferHandled(t.id))\r\n .map(t => ({\r\n transferId: t.id,\r\n trackId: t.trackid,\r\n filesCount: t.numberoffiles || 0,\r\n sizeInBytes: t.size || 0,\r\n sentDate: t.sentdate,\r\n from: t.from,\r\n to: t.to,\r\n subject: t.subject,\r\n message: t.message,\r\n }));\r\n\r\n this.#lastCheckDate = currentCheckDate;\r\n\r\n return inboxTransfers;\r\n }\r\n\r\n private getSinceUnixTimeApiRequestParam(): number {\r\n const sinceBasedOnPeriod = this.getSinceUnixTimeBasedOnPeriod();\r\n\r\n if (!this.#lastCheckDate)\r\n return sinceBasedOnPeriod;\r\n\r\n const sinceBasedOnLastCheck = this.getSinceUnixTimeBasedOnLastCheck();\r\n\r\n return Math.max(sinceBasedOnLastCheck, sinceBasedOnPeriod);\r\n }\r\n\r\n private getSinceUnixTimeBasedOnPeriod() {\r\n const sinceDate = new Date();\r\n sinceDate.setHours(sinceDate.getHours() - this.#periodToRetrieveTransfersInHours);\r\n return sinceDate.getTime();\r\n }\r\n\r\n private getSinceUnixTimeBasedOnLastCheck() {\r\n return this.#lastCheckDate! - LastCheckSafeMarginAddition;\r\n }\r\n}\r\n\r\nexport default NewInboxTransfersRetriever;"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autoDownloaderNewTransferHandler.d.ts","sourceRoot":"","sources":["../../../../src/autoDownloader/transferHandler/autoDownloaderNewTransferHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"autoDownloaderNewTransferHandler.d.ts","sourceRoot":"","sources":["../../../../src/autoDownloader/transferHandler/autoDownloaderNewTransferHandler.ts"],"names":[],"mappings":"AAAA,OAAO,iCAAiC,MAAM,wCAAwC,CAAC;AAEvF,OAAO,KAAK,kBAAkB,MAAM,+CAA+C,CAAC;AACpF,OAAO,KAAK,YAAY,MAAM,uCAAuC,CAAC;AAEtE,OAAO,KAAK,gBAAgB,MAAM,mDAAmD,CAAC;AAEtF,cAAM,gCAAiC,SAAQ,iCAAiC;cACnD,2BAA2B,CAAC,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;cAaxF,sBAAsB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;CAG5G;AAED,eAAe,gCAAgC,CAAC"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { v4 as guid } from 'uuid';
|
|
2
1
|
import AutoDownloaderTransferHandlerBase from "./autoDownloaderTransferHandlerBase.js";
|
|
3
2
|
class AutoDownloaderNewTransferHandler extends AutoDownloaderTransferHandlerBase {
|
|
4
3
|
async startDownloadAndUpdateState(downloader) {
|
|
5
4
|
const options = {
|
|
6
5
|
transfer: this.transfer.transferId,
|
|
7
|
-
trackId:
|
|
6
|
+
trackId: this.transfer.trackId,
|
|
8
7
|
};
|
|
9
8
|
const downloadInfo = await downloader.downloadAllFiles(options);
|
|
10
9
|
this.state.transferStarted(this.transfer, downloader);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autoDownloaderNewTransferHandler.js","sourceRoot":"","sources":["../../../../src/autoDownloader/transferHandler/autoDownloaderNewTransferHandler.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"autoDownloaderNewTransferHandler.js","sourceRoot":"","sources":["../../../../src/autoDownloader/transferHandler/autoDownloaderNewTransferHandler.ts"],"names":[],"mappings":"AAAA,OAAO,iCAAiC,MAAM,wCAAwC,CAAC;AAOvF,MAAM,gCAAiC,SAAQ,iCAAiC;IACzD,KAAK,CAAC,2BAA2B,CAAC,UAA8B;QAC/E,MAAM,OAAO,GAAoB;YAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU;YAClC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO;SACjC,CAAC;QAEF,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAEhE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAEtD,OAAO,YAAY,CAAC;IACxB,CAAC;IAEkB,sBAAsB,CAAC,QAA0B,EAAE,KAAY,EAAE,MAAc;QAC9F,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACJ;AAED,eAAe,gCAAgC,CAAC","sourcesContent":["import AutoDownloaderTransferHandlerBase from \"./autoDownloaderTransferHandlerBase.js\";\r\n\r\nimport type TransferDownloader from \"../../client/downloader/transferDownloader.js\";\r\nimport type DownloadInfo from \"../../downloader/dtos/downloadInfo.js\";\r\nimport type DownloadCommand from \"../../downloader/dtos/downloadCommand.js\";\r\nimport type NewInboxTransfer from '../newInboxTransfersRetriever/newInboxTransfer.js';\r\n\r\nclass AutoDownloaderNewTransferHandler extends AutoDownloaderTransferHandlerBase {\r\n protected override async startDownloadAndUpdateState(downloader: TransferDownloader): Promise<DownloadInfo> {\r\n const options: DownloadCommand = {\r\n transfer: this.transfer.transferId,\r\n trackId: this.transfer.trackId,\r\n };\r\n\r\n const downloadInfo = await downloader.downloadAllFiles(options);\r\n\r\n this.state.transferStarted(this.transfer, downloader);\r\n\r\n return downloadInfo;\r\n }\r\n\r\n protected override transferStartingFailed(transfer: NewInboxTransfer, error: Error, reason: string): void {\r\n this.state.transferStartingFailed(transfer, error, reason);\r\n }\r\n}\r\n\r\nexport default AutoDownloaderNewTransferHandler;"]}
|
package/dist/src/autoDownloader/transferHandler/autoDownloaderRecoverableTransferHandler.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autoDownloaderRecoverableTransferHandler.d.ts","sourceRoot":"","sources":["../../../../src/autoDownloader/transferHandler/autoDownloaderRecoverableTransferHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"autoDownloaderRecoverableTransferHandler.d.ts","sourceRoot":"","sources":["../../../../src/autoDownloader/transferHandler/autoDownloaderRecoverableTransferHandler.ts"],"names":[],"mappings":"AAAA,OAAO,iCAAiC,MAAM,wCAAwC,CAAC;AAEvF,OAAO,KAAK,kBAAkB,MAAM,+CAA+C,CAAC;AACpF,OAAO,KAAK,YAAY,MAAM,uCAAuC,CAAC;AACtE,OAAO,KAAK,MAAM,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,yBAAyB,MAAM,iCAAiC,CAAC;AAC7E,OAAO,KAAK,mBAAmB,MAAM,iCAAiC,CAAC;AAEvE,OAAO,KAAK,gBAAgB,MAAM,mDAAmD,CAAC;AAEtF,cAAM,wCAAyC,SAAQ,iCAAiC;;gBAGxE,QAAQ,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,EAAE,MAAM;cAM/I,2BAA2B,CAAC,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;YAQ7F,aAAa;cAYR,sBAAsB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;CAG5G;AAED,eAAe,wCAAwC,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { v4 as guid } from 'uuid';
|
|
2
1
|
import AutoDownloaderTransferHandlerBase from "./autoDownloaderTransferHandlerBase.js";
|
|
3
2
|
class AutoDownloaderRecoverableTransferHandler extends AutoDownloaderTransferHandlerBase {
|
|
4
3
|
#downloadId;
|
|
@@ -16,7 +15,7 @@ class AutoDownloaderRecoverableTransferHandler extends AutoDownloaderTransferHan
|
|
|
16
15
|
return await downloader.recoverInterruptedDownload(this.#downloadId);
|
|
17
16
|
const options = {
|
|
18
17
|
transfer: this.transfer.transferId,
|
|
19
|
-
trackId:
|
|
18
|
+
trackId: this.transfer.trackId,
|
|
20
19
|
};
|
|
21
20
|
return await downloader.downloadAllFiles(options);
|
|
22
21
|
}
|
package/dist/src/autoDownloader/transferHandler/autoDownloaderRecoverableTransferHandler.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autoDownloaderRecoverableTransferHandler.js","sourceRoot":"","sources":["../../../../src/autoDownloader/transferHandler/autoDownloaderRecoverableTransferHandler.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"autoDownloaderRecoverableTransferHandler.js","sourceRoot":"","sources":["../../../../src/autoDownloader/transferHandler/autoDownloaderRecoverableTransferHandler.ts"],"names":[],"mappings":"AAAA,OAAO,iCAAiC,MAAM,wCAAwC,CAAC;AAUvF,MAAM,wCAAyC,SAAQ,iCAAiC;IACpF,WAAW,CAAU;IAErB,YAAY,QAA0B,EAAE,UAA8B,EAAE,KAA0B,EAAE,yBAAoD,EAAE,MAAc;QACpK,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,yBAAyB,EAAE,MAAM,CAAC,CAAC;QAE1D,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAClC,CAAC;IAEkB,KAAK,CAAC,2BAA2B,CAAC,UAA8B;QAC/E,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAE1D,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAExD,OAAO,YAAY,CAAC;IACxB,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,UAA8B;QACtD,IAAI,IAAI,CAAC,WAAW;YAChB,OAAO,MAAM,UAAU,CAAC,0BAA0B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEzE,MAAM,OAAO,GAAoB;YAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU;YAClC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO;SACjC,CAAC;QAEF,OAAO,MAAM,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IAEkB,sBAAsB,CAAC,QAA0B,EAAE,KAAY,EAAE,MAAc;QAC9F,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACJ;AAED,eAAe,wCAAwC,CAAC","sourcesContent":["import AutoDownloaderTransferHandlerBase from \"./autoDownloaderTransferHandlerBase.js\";\r\n\r\nimport type TransferDownloader from \"../../client/downloader/transferDownloader.js\";\r\nimport type DownloadInfo from \"../../downloader/dtos/downloadInfo.js\";\r\nimport type Logger from '../../client/loggers/logger.js';\r\nimport type TransferDownloaderFactory from '../transferDownloaderFactory.js';\r\nimport type AutoDownloaderState from '../state/autoDownloaderState.js';\r\nimport type DownloadCommand from '../../downloader/dtos/downloadCommand.js';\r\nimport type NewInboxTransfer from '../newInboxTransfersRetriever/newInboxTransfer.js';\r\n\r\nclass AutoDownloaderRecoverableTransferHandler extends AutoDownloaderTransferHandlerBase {\r\n #downloadId?: string;\r\n\r\n constructor(transfer: NewInboxTransfer, downloadId: string | undefined, state: AutoDownloaderState, transferDownloaderFactory: TransferDownloaderFactory, logger: Logger) {\r\n super(transfer, state, transferDownloaderFactory, logger);\r\n\r\n this.#downloadId = downloadId;\r\n }\r\n\r\n protected override async startDownloadAndUpdateState(downloader: TransferDownloader): Promise<DownloadInfo> {\r\n const downloadInfo = await this.startDownload(downloader);\r\n\r\n this.state.transferRecovered(this.transfer, downloader);\r\n\r\n return downloadInfo;\r\n }\r\n\r\n private async startDownload(downloader: TransferDownloader): Promise<DownloadInfo> {\r\n if (this.#downloadId)\r\n return await downloader.recoverInterruptedDownload(this.#downloadId);\r\n\r\n const options: DownloadCommand = {\r\n transfer: this.transfer.transferId,\r\n trackId: this.transfer.trackId,\r\n };\r\n\r\n return await downloader.downloadAllFiles(options);\r\n }\r\n\r\n protected override transferStartingFailed(transfer: NewInboxTransfer, error: Error, reason: string): void {\r\n this.state.transferRecoveryFailed(transfer, error, reason);\r\n }\r\n}\r\n\r\nexport default AutoDownloaderRecoverableTransferHandler;"]}
|
|
@@ -2,7 +2,7 @@ import fsPath from 'path';
|
|
|
2
2
|
import fs from 'fs/promises';
|
|
3
3
|
import { v4 as guid } from 'uuid';
|
|
4
4
|
import NodeFileDetails from '../../utils/fileSystem/node/nodeFileDetails.js';
|
|
5
|
-
import { promiseAll } from '../../utils/promiseAll.js';
|
|
5
|
+
import { promiseAll, promiseAllDeprecated } from '../../utils/promiseAll.js';
|
|
6
6
|
class NodeFileDetailsProvider {
|
|
7
7
|
#paths;
|
|
8
8
|
#fileDetails;
|
|
@@ -54,7 +54,7 @@ class NodeFileDetailsProvider {
|
|
|
54
54
|
const promise = NodeFileDetails.create(file.externalId, file.path, file.destinationFilePath);
|
|
55
55
|
promises.push(promise);
|
|
56
56
|
});
|
|
57
|
-
return await
|
|
57
|
+
return await promiseAllDeprecated(promises);
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
60
|
export default NodeFileDetailsProvider;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodeFileDetailsProvider.js","sourceRoot":"","sources":["../../../../src/client/node/nodeFileDetailsProvider.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,MAAM,CAAC;AAC1B,OAAO,EAAE,MAAM,aAAa,CAAC;AAE7B,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,eAAe,MAAM,gDAAgD,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"nodeFileDetailsProvider.js","sourceRoot":"","sources":["../../../../src/client/node/nodeFileDetailsProvider.ts"],"names":[],"mappings":"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","sourcesContent":["import fsPath from 'path';\r\nimport fs from 'fs/promises';\r\n\r\nimport { v4 as guid } from 'uuid';\r\n\r\nimport NodeFileDetails from '../../utils/fileSystem/node/nodeFileDetails.js';\r\nimport { promiseAll, promiseAllDeprecated } from '../../utils/promiseAll.js';\r\n\r\nclass NodeFileDetailsProvider {\r\n #paths: string[];\r\n #fileDetails: NodeFileDetails[];\r\n\r\n constructor(paths: string[]) {\r\n this.#fileDetails = [];\r\n\r\n this.#paths = paths;\r\n }\r\n\r\n async create(): Promise<NodeFileDetails[]> {\r\n const tasks: Promise<void>[] = [];\r\n\r\n for (const path of this.#paths)\r\n tasks.push(this.addPathToFileDetailsArray(path, ``));\r\n\r\n await promiseAll(tasks);\r\n\r\n return this.#fileDetails;\r\n }\r\n\r\n private async addPathToFileDetailsArray(path: string, destinationDirectoryPath: string) {\r\n if (await this.isDirectory(path))\r\n await this.addDirectory(path, destinationDirectoryPath);\r\n else\r\n await this.addFile(path, destinationDirectoryPath);\r\n }\r\n\r\n private async isDirectory(path: string): Promise<boolean> {\r\n try {\r\n const stats = await fs.stat(path);\r\n return stats.isDirectory();\r\n }\r\n catch {\r\n throw new Error(`Given path doesn't exist or application can't read it: ${path}`);\r\n }\r\n }\r\n\r\n private async addDirectory(directory: string, destinationDirectoryPath: string) {\r\n const directoryName = fsPath.basename(fsPath.resolve(directory));\r\n const destinationDirectoryPathForSubitems = fsPath.posix.join(destinationDirectoryPath, directoryName);\r\n\r\n const tasks: Promise<void>[] = [];\r\n\r\n const subItems = await fs.readdir(directory);\r\n\r\n for (const subItem of subItems) {\r\n const subItemPath = fsPath.join(directory, subItem);\r\n tasks.push(this.addPathToFileDetailsArray(subItemPath, destinationDirectoryPathForSubitems));\r\n }\r\n\r\n await promiseAll(tasks);\r\n }\r\n\r\n private async addFile(file: string, destinationFilePath: string) {\r\n const nodeFileDetails = await NodeFileDetails.create(guid(), file, destinationFilePath);\r\n this.#fileDetails.push(nodeFileDetails);\r\n }\r\n\r\n // TODO: This method can be removed after transfer compatibility mode is removed from Desktop\r\n static async recreate(files: { externalId: string | number, path: string, destinationFilePath: string }[]): Promise<NodeFileDetails[]> {\r\n const promises: Promise<NodeFileDetails>[] = [];\r\n\r\n files.forEach(file => {\r\n const promise = NodeFileDetails.create(file.externalId, file.path, file.destinationFilePath);\r\n promises.push(promise);\r\n });\r\n\r\n return await promiseAllDeprecated(promises);\r\n }\r\n}\r\n\r\nexport default NodeFileDetailsProvider;"]}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export declare function promiseAllSettled<T>(promises: Promise<T>[]): Promise<
|
|
2
|
-
export declare function promiseAll<T>(promises: Promise<T>[]): Promise<
|
|
1
|
+
export declare function promiseAllSettled<T>(promises: Promise<T>[]): Promise<void>;
|
|
2
|
+
export declare function promiseAll<T>(promises: Promise<T>[]): Promise<void>;
|
|
3
|
+
export declare function promiseAllDeprecated<T>(promises: Promise<T>[]): Promise<T[]>;
|
|
3
4
|
//# sourceMappingURL=promiseAll.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promiseAll.d.ts","sourceRoot":"","sources":["../../../src/utils/promiseAll.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"promiseAll.d.ts","sourceRoot":"","sources":["../../../src/utils/promiseAll.ts"],"names":[],"mappings":"AAIA,wBAAsB,iBAAiB,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAKhF;AAED,wBAAsB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAKzE;AAED,wBAAsB,oBAAoB,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAYlF"}
|
|
@@ -1,20 +1,25 @@
|
|
|
1
1
|
/* eslint-disable no-await-in-loop */
|
|
2
2
|
const MAX_PROMISES_COUNT = 2_000_000;
|
|
3
|
+
const SAFE_MAX_PROMISES_COUNT = MAX_PROMISES_COUNT / 3;
|
|
3
4
|
export async function promiseAllSettled(promises) {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const subArrayResults = await Promise.allSettled(subArray);
|
|
8
|
-
results.push(...subArrayResults);
|
|
5
|
+
for (let i = 0; i < promises.length; i += SAFE_MAX_PROMISES_COUNT) {
|
|
6
|
+
const subArray = promises.slice(i, i + SAFE_MAX_PROMISES_COUNT);
|
|
7
|
+
await Promise.allSettled(subArray);
|
|
9
8
|
}
|
|
10
|
-
return results;
|
|
11
9
|
}
|
|
12
10
|
export async function promiseAll(promises) {
|
|
11
|
+
for (let i = 0; i < promises.length; i += SAFE_MAX_PROMISES_COUNT) {
|
|
12
|
+
const subArray = promises.slice(i, i + SAFE_MAX_PROMISES_COUNT);
|
|
13
|
+
await Promise.all(subArray);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
export async function promiseAllDeprecated(promises) {
|
|
13
17
|
const results = [];
|
|
14
|
-
for (let i = 0; i < promises.length; i +=
|
|
15
|
-
const subArray = promises.slice(i, i +
|
|
18
|
+
for (let i = 0; i < promises.length; i += SAFE_MAX_PROMISES_COUNT) {
|
|
19
|
+
const subArray = promises.slice(i, i + SAFE_MAX_PROMISES_COUNT);
|
|
16
20
|
const subArrayResults = await Promise.all(subArray);
|
|
17
|
-
|
|
21
|
+
for (let j = 0; j < subArrayResults.length; j++)
|
|
22
|
+
results.push(subArrayResults[j]);
|
|
18
23
|
}
|
|
19
24
|
return results;
|
|
20
25
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promiseAll.js","sourceRoot":"","sources":["../../../src/utils/promiseAll.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,MAAM,kBAAkB,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"promiseAll.js","sourceRoot":"","sources":["../../../src/utils/promiseAll.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,MAAM,kBAAkB,GAAG,SAAS,CAAC;AACrC,MAAM,uBAAuB,GAAG,kBAAkB,GAAG,CAAC,CAAC;AAEvD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAI,QAAsB;IAC7D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,uBAAuB,EAAE,CAAC;QAChE,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,uBAAuB,CAAC,CAAC;QAChE,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAI,QAAsB;IACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,uBAAuB,EAAE,CAAC;QAChE,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,uBAAuB,CAAC,CAAC;QAChE,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAI,QAAsB;IAChE,MAAM,OAAO,GAAQ,EAAE,CAAC;IAExB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,uBAAuB,EAAE,CAAC;QAChE,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,uBAAuB,CAAC,CAAC;QAChE,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE;YAC3C,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC","sourcesContent":["/* eslint-disable no-await-in-loop */\r\nconst MAX_PROMISES_COUNT = 2_000_000;\r\nconst SAFE_MAX_PROMISES_COUNT = MAX_PROMISES_COUNT / 3;\r\n\r\nexport async function promiseAllSettled<T>(promises: Promise<T>[]): Promise<void> {\r\n for (let i = 0; i < promises.length; i += SAFE_MAX_PROMISES_COUNT) {\r\n const subArray = promises.slice(i, i + SAFE_MAX_PROMISES_COUNT);\r\n await Promise.allSettled(subArray);\r\n }\r\n}\r\n\r\nexport async function promiseAll<T>(promises: Promise<T>[]): Promise<void> {\r\n for (let i = 0; i < promises.length; i += SAFE_MAX_PROMISES_COUNT) {\r\n const subArray = promises.slice(i, i + SAFE_MAX_PROMISES_COUNT);\r\n await Promise.all(subArray);\r\n }\r\n}\r\n\r\nexport async function promiseAllDeprecated<T>(promises: Promise<T>[]): Promise<T[]> {\r\n const results: T[] = [];\r\n\r\n for (let i = 0; i < promises.length; i += SAFE_MAX_PROMISES_COUNT) {\r\n const subArray = promises.slice(i, i + SAFE_MAX_PROMISES_COUNT);\r\n const subArrayResults = await Promise.all(subArray);\r\n\r\n for (let j = 0; j < subArrayResults.length; j++)\r\n results.push(subArrayResults[j]);\r\n }\r\n\r\n return results;\r\n}"]}
|