6.14.2 (2024-10-16)
- upload-client/types: make
UploadcareFile
instance properties non-nullable cause they're can't benull
actually (#529) (57c84a4)
6.14.1 (2024-03-08)
6.14.0 (2024-02-15)
- New package
@uploadcare/image-shrink
to reduce image size in the browser. See docs here.
6.13.0 (2024-02-06)
- rest-client: export
CancelError
from the package (83f10c6)
6.12.1 (2024-01-12)
6.12.0 (2023-12-22)
UploadcareNetworkError
is deprecated. Please useNetworkError
instead.UploadClientError
is deprecated. Please useUploadError
instead.
- api-client-utils: add base class
UploadcareError
for the errors (766586a) - rest-client: export
UploadcareError
andRestClientError
from the package module (6432653) - upload-client: export
CancelError
from the package (7adf799) - upload-client: rename
UploadcareNetworkError
export to theNetworkError
.UploadcareNetworkError
is deprecated but still exported. (62cc416) - upload-client: rename
UploadClientError
export to theUploadError
.UploadClientError
is deprecated but still exported. (7c03c3d)
6.11.1 (2023-12-19)
6.11.0 (2023-11-15)
- rest-client: add AWS Rekognition Moderation addon (67a01dc)
6.10.0 (2023-11-14)
6.9.0 (2023-11-14)
- rest-client: add Document Info endpoint (7f0c528)
6.8.0 (2023-10-30)
- upload-client: export
isReadyPoll
helper to wait for the file readiness (12cf9b1)
6.7.0 (2023-10-18)
- upload-client/queue: don't use private class fields due to bad support of bundling tools (d61dc47)
- upload-client/uploadFileGroup: do not request
fileInfo
before creating group from uuid (c3c8245) - upload-client/uploadFileGroup: support for the uuids with inline operations (c3c8245)
- upload-client/UploadcareGroup: filter
null
values from thefiles
property of group info (83c0b6c) - upload-client: fix package.json
react-native
field path (beee9c1)
- upload-client: add property
defaultEffects
to theUploadcareFile
instance returned byuploadFileGroup
method (abe39c4)
6.6.1 (2023-05-01)
- upload-client: do not use buffer for browser-like bundles to prevent polyfilling by cdn (#484)
6.6.0 (2023-05-01)
6.5.1 (2023-04-25)
6.5.0 (2023-04-25)
- set corresponding extension for the dynamic chunks (882741f)
6.4.1 (2023-03-17)
- upload-client/uploadFileGroup: accept
checkForUrlDuplicates
andsaveUrlForRecurrentUploads
(#470) (43e0ba9)
6.4.0 (2023-03-10)
There will be no impact unless you are using the @uploadcare/signed-uploads
package.
- @uploadcare/signed-uploads: update
generateSecureSignature
signature - BREAKING CHANGE without major bump (97f7ebb)
6.3.0 (2023-03-09)
- add
@uploadcare/signed-uploads
package containing helper to generate signature for signed uploads (#466) (dd48ee4)
6.2.1 (2023-01-23)
6.2.0 (2023-01-20)
6.1.0 (2023-01-10)
- upload-client: ensure that file name and type passed to the FormData (fe63607)
- upload-client: export all the types (d2bbd76)
- upload-client: support react-native asset file input (f586f84)
6.0.0 (2022-12-07)
- refactor(rest-client)!: merge document and video conversion methods into the two common ones -
convert
andconversionJobStatus
(beb2bb6) - fix(rest-client)!: do not change case of the
appdata
field and its content (92d785d) - feat(rest-client)!: accept boolean or "auto" for the
store
option (440e228)
- api-client-utils: add
timeout
option to thepoll
(f27f25a) - rest-client: add addon job status polling (8f2aec7)
- rest-client: add conversion api polling (41c6aa5)
- Methods
convertVideo
,convertDocument
,videoConversionJobStatus
anddocumentConversionJobStatus
are removed. Please useconvert
andconversionJobStatus
methods. Type of conversion (video or document) passed astype
option. - Now
appdata
field is returned as-is, without kebab -> camel case conversion - string ("true", "false", "1", "0") values for the
store
option ofconvertVideo
andconvertDocument
aren't accepted anymore. Please useboolean
value or "auto". It's "auto" by default"
5.2.0 (2022-11-26)
- rest-client: send
user-agent
instead ofx-uc-user-agent
header (#447) (759768a) - upload-client: read
retry-after
header instead ofx-throttle-wait-seconds
(81698df)
- rest-client: add pagination helpers (#450) (19f6d8f)
- rest-client: retry requests on network errors (#449) (846d8fd)
5.1.2 (2022-11-24)
- rest-client: pass-through outer headers when signing request with
UploadcareSimpleAuthSchema
(0c912e1)
5.1.1 (2022-10-28)
- add separate exports for
node
,browser
andreact-native
bundles. It's useful when you wanna explicitly import needed bundle instead of relying the bundler's choice (see PR #437)
5.1.0 (2022-09-13)
- rest-client: add
executeAddon
andaddonExecutionStatus
(5b7123f)
5.0.0 (2022-09-13)
- refactor(upload-client)!: drop
multipartMaxAttempts
option (178436e)
- api-client-utils: add
UploadcareNetworkError
(0e917d2) - upload-client: add
retryNetworkErrorMaxTimes
option to specify retries count on network errors (400fedd) - upload-client: throw
UploadcareNetworkError
instead ofError
(f7e3f55)
- option
multipartMaxAttempts
is dropped. UseretryNetworkErrorMaxTimes
instead. It will affect all the requests, not only multipart uploads.
4.3.1 (2022-08-24)
- force disable XHR sync mode (#420) (4dd9ecf)
- leave pathname from baseURL (#421) (58166d8)
- package.json: add default exports field (#419) (e9cf28f)
4.3.0 (2022-07-20)
- export
getUserAgent
method from@uploadcare/api-client-utils
package (78da195)
4.2.1 (2022-07-11)
4.2.0 (2022-07-05)
Repository was transformed into the monorepo. Now there are two packages:
@uploadcare/upload-client
and @uploadcare/rest-client
.
They have locked versioning. So @uploadcare/rest-client
is started from 4.2.0
,
and @uploadcare/upload-client
has no any visible changes (except for the internal ones).
At the current stage, there are no any high-level wrappers at @uploadcare/rest-client
.
Only low-level typed wrappers over API methods are available.
It means, that there are no pagination and no conversion job status polling,
just bare request wrappers.
4.1.0 (2022-06-29)
- Fix crashes when
null
metadata passed to the options (cbf5472)
4.0.1 (2022-06-10)
4.0.0 (2022-06-10)
- Drop < v16 Node support due to native
AbortController
usage (#377) - Removed CommonJS bundles (#377)
- Removed option
defaultEffects
(#376) - Removed property
cdnUrlModifiers
ofUploadcareFile
instance (#376) - Removed property
originalUrl
ofUploadcareFile
instance. UsecdnUrl
instead (#376) - Exported method
uploadBase
renamed touploadDirect
(#376)
- pass
contentType
down to the nodeform-data
(465722c) - react-native: module entry points for react-native (6d8a955)
- UploadcareFile: add
s3Bucket
property (#376) - UploadcareFile: add
s3Url
property (#376) - UploadClient: set empty options by default for method wrappers inside client instance (#375)
3.1.1 (2022-04-11)
3.1.0 (2022-04-11)
- accept option `multipartMinFileSize (679eb8f)
- calculate
store
parameter in a consistent way (2e423d2)
3.0.0 (2022-02-24)
value
property of progress info can beundefined
instead ofNaN
in case of uploading from URL. SeeisComputable
flag to detect whethervalue
is available.
2.2.0 (2021-12-22)
2.1.0 (2021-12-07)
2.0.0 (2021-11-15)
- feat!: add cjs and esm support (#283) (081f27e), closes #283
- feat!: replace CancelController with native AbortController (#282) (020e1ae), closes #282
- add mimeType to UploadcareFile type (33b6c58)
- export high-level upload methods (1354018)
- handle server error codes (948c9d1)
- add option
userAgent
to pass custom user agent string or function (d74fefb)
- remove default export because webpack can't handle it without bugs
- replace
cancel
key withsignal
in all cancelable methods - property
response
ofUploadClientError
now contains the whole response object ({ error: {...}}
)
1.1.5 (2021-06-28)
1.1.4 (2021-06-11)
- checkForUrlDuplicates & saveUrlForRecurrentUploads parameters passed into common uploadFile method (201ee07)
1.1.3 (2021-03-17)
- react-native: prevent app crashes while multipart uploading (#308) (5d305e6)
- react-native: support direct uploads through FormData (#307) (428b039)
1.1.2 (2020-04-20)
- multipart: implement retry for part uploading (#253) (e2330bb)
- multipart: add is ready pool for mulipart upload (#254) (fe7ca2a)
- multipart: implement multipart progress for node (#252) (b60eb83)
- multipart: use browser contentType if option is not passed (#251) (f5ab80a)
- multipart: use browser filename if option is not passed (#250) (749e4a9)
1.1.1 (2020-03-16)
1.1.0 (2020-03-03)
- implement push strategy with sockets for
uploadFromUrl
(#222) (4cafe97) - add deferred disconnect for push strategy (#229) (a9901f7)
- add strong typed event emitter (#217) (35b9eef)
- add custom race function (#177) (219c02a)
- make
fileName
optional and remove it from default settings (#233) (a28d181) - remove timeout from
uploadFromUrl
function (#226) (76db2e4) - use direct import for CancelController and rename callback to stopRace (#216) (ea4ef7a)
1.0.1 (2020-01-13)
1.0.0 (2019-12-23)
- All methods return a
Promise
now instead ofThenableInterface
SettingsInterface
was renamed toSettings
fileFrom
was renamed touploadFile
.groupFrom
was renamed touploadFileGroup
.request
low-level API method is not exported outside now.- Method
setSettings
ofUploadClient
was renamed toupdateSettings
. - Methods (
base
,fromUrl
,fromUrlStatus
,group
,groupInfo
,info
,multipartStart
,multipartUpload
,multipartComplete
,multipart
,uploadFile
,uploadGroup
) were exported fromindex.ts
to make the tree shaking better. - Methods (
base
,fromUrl
,fromUrlStatus
,group
,groupInfo
,info
,multipartStart
,multipartUpload
,multipartComplete
,multipart
,uploadFile
,uploadGroup
) acceptoptions
instead ofsettings
as a second argument. UploadClient
now contains all low-level API methods (base
,fromUrl
,fromUrlStatus
,group
,groupInfo
,info
,multipartStart
,multipartUpload
,multipartComplete
,multipart
,fileFrom
,groupFrom
).UploadcareGroup
files now containUploadcareFile[]
, but notFileInfo[]
.README.md
was updated according to library API.FileData
becameNodeFile
andBrowserFile
.
UploadAPI
class.Thenable
,CancelableThenable
,BaseThenable
,Upload
classes implementing respective interfaces.onReady
,onUploaded
callbacks.addUpdateSettingsListener
andremoveUpdateSettingsListener
fromUploadClientInterface
.from
param ofuploadFile
anduploadFileGroup
.FileFromEnum
andGroupFromEnum
.
CancelController
to make API calls cancellable. See README for how to use this feature. (#77)
- Support of multipart and big files uploading:
multipartStart
,multipartUpload
, andmultipartComplete
methods toUploadAPI
. - Support of canceling uploads and handling them for all API methods
(
info
,fromUrl
,fromUrlStatus
,group
,groupInfo
). DefaultSettingsInterface
with required properties.pollingTimeoutMilliseconds
toSettingsInterface
. Now you can adjust the timeout for checking is file ready, and checking is file being uploaded from URL.maxConcurrentRequests
setting that allows you to specify the number of concurrent requests.
FileFrom
enum was renamed toFileFromEnum
.GroupFrom
enum was renamed toGroupFromEnum
.Settings
was renamed toSettingsInterface
.FileInfo
was renamed toFileInfoInterface
.GroupInfo
was renamed toGroupInfoInfoInterface
.OriginalImageInfo
was renamed toOriginalImageInfoInterface
.RequestOptions
was renamed toRequestOptionsInterface
.ProgressStatus
was renamed toProgressStatusInterface
.Audio
type was renamed toAudioInterface
.Video
type was renamed toVideoInterface
.ErrorRequestInfo
type was renamed toErrorRequestInfoInterface
.ErrorResponseInfoInfo
type was renamed toErrorResponseInfoInterface
.ProgressState
was renamed toProgressStateEnum
.ProgressParams
was renamed toProgressParamsInterface
.base
method of Upload API now returnsBaseThenableInterface<BaseResponse>
instead ofDirectUploadInterface
.info
,fromUrl
,fromUrlStatus
,group
,groupInfo
now returnsCancelableThenableInterface
.- Progress is now calculated from 0 to 1 instead of 0 to 100
- Example with
directUpload.onProgress
inREADME.md
. - All tests are passing now.
- Mock server tests are passing now.
DirectUploadInterface
was removed in favor ofBaseThenableInterface<BaseResponse>
.BaseProgress
was removed in favor of nativeProgressEvent
.InfoResponse
was removed in favor ofFileInfoInterface
.- Old code in folder
./.back
.
- Wrappers for group paths of Upload API (
group
,groupInfo
). - The high-level function for group uploading, aka filesGroupFrom.
- Uploading progress for Node.js in the
base
method.
UploadFromInterface
was renamed toFileUploadInterface
.FileProgress
was renamed toProgressParams
.UploadcareFile
was renamed toUploadcareFileInterface
.
- Support
fileFrom
'uploaded' file (uuid
). - Support of
waiting
status from/from_url/status/
endpoint. - Export some main types from the
index.ts
file. So you can import them now directly from@uploadcare/upload-client
. - Throttling for
request
. retryThrottledMaxTimes
param to set count of max retries after throttled request (1 by default).Uuid
type.- Mock server for local testing.
- The default timeout for polling functions increased from 3s to 10s.
- Removed restrictions for timeout and interval.
- The project was moved from Flow notations to TypeScript.
- The
base
function now returns an object that implementsDirectUploadInterface
. - The
fileFrom
function now returns an object that implementsUploadFromInterface
. - The
UCFile
type renamed toUploadcareFile
. - The progress of
fileFrom
now based on theUploadingProgress
type.
- Low-level request wrappers for
/from_url/
and/from_url/status/
paths of Upload API. - Settings: the support of setting
baseCDN
,checkForUrlDuplicates
,saveUrlForRecurrentUploads
.
- Use the version from the
package.json
file to create Uploadcare User Agent.
- The
base
function returnsthenable
object calledDirectUpload
instead of using thepromise
property. - The
fileFrom
function returnsthenable
object calledFilePromise
instead of using thepromise
property. - The
FileInfo
type renamed toUCFile
and updated. - The
FilePromise
resolved with an object of theUploadcareFile
type. - The progress of
fileFrom
now based on theFilePromiseProgress
type. - Updated the
InfoResponse
type.
- The
checkFileIsReady
function to check if the file is ready on the CDN. - New properties for the object that the
fileFrom
function returns:onUploaded
,onReady
. - The
camelizeKeys
function for inner usage. - The
baseCDN
default setting
The first public alpha release.
- The
request
function to request to any path of Upload API. - Low-level request wrappers for
/base/
and/info/
paths of Upload API. UploadClient
class with settings andfileFrom
method that supports only direct uploads now.- Support of following Uploadcare Settings:
publicKey
,baseUrl
,doNotStore
,integration
,secureExpire
,secureSignature
. - Test environment for both Node.js and browsers