- Fix deprecated
jQuery.isArray
- Allow to disable b-frames for video codec (#284)
- Add support for generating url with auth_token (#290)
- Fix support for start offset and end offset parameters (#289)
- Remove links to nonexistent mapfiles in js folder (#283)
- Update README
- Fix transparent video on safari 14.1 by using fetch instead of XHR (#282)
- Fix missing userAgent on Node.js (#281)
- Fix pictureTag arguments & add missing definitions (#278)
- Fix image srcset passed as attribute (#277)
- Fix transparent video on Safari (#280)
- Add support for variables in text style (#271)
- Fix README.md npm package links (#272)
- Refactor normalization of e_preview:duration (#270)
- Fix transformations with variable names containing predefined names (#265)
- Fix responsive URL generation for zero width images (#206)
- Fix incorrect readme text and broken links (#264)
- Add test for context metadata as user variables (#266)
- Fix js/jquery.cloudinary.js es5 compatibility by removing arrow functions
- Fix typescript declarations (#257)
- Revert Fix lazy loading of responsive images (#253)
- Add support for transparent video (#211)
- Fix lazy loading of responsive images (#253)
- Fix signature param support in ie11 (#252)
- Add test and pre commit hook to prevent js folder changes (#249) (#251)
- Fix bug where image width was set to 'null' for responsive images
- Refactor tests configuration and folder structure
- Fix ie11 support by removing usage of string.repeat() (#247)
- Update analytics param to be urlAnalytics (#245)
- Fix IE11 support by removing unsupported padStart function (#244)
- Fix normalize() in jquery library used by server-side sdks
- Fix title added to npm packages
- Update travis configuration to test on node 8,10,12,14 (#241)
- Add support for intersection detection.
- Add support for placeholder and accessibility to url() function (#236)
- Update responsive() to return a callback that removes the listener it adds
- Add SDK analytics signature to the URL (off by default)
- Update tsconfig to only test types folder (#237)
- Add support for OCR in transformation (#224)
- Add support for POW operator
- Fix fontAntialiasing type definition (#233)
- Fix Transformation normalization for predefined variables
- Fix Transformation normalization in browsers that do not support lookbehind in regular expressions (#228)
- Fix bug where preview:duration was shortened to preview:du
- Update test descriptions (#223)
- Update devDependencies packages
- Remove CoffeeScript and Grunt mentions from readme (#222)
- Remove unneeded file (#221)
- Update issue templates (#218)
- Fix - Add signature to list of url keys so that extractUrlParams() won't filter it
- Add test for package size using bundlewatch
- Fix spaces encoding of named transformations
- Align responsive function with cloudinary_angular's lazy load
- Add tests for special chars encoding in urls
- Fix tests for video offset
- Fix secure_distribution type definition
- Add watch mode to tests
- Refactor normalizeArray function
- Update puppeteer to version 2.1.1
- Add support for option to function (#198)
- Add npm package test (#187)
- Fix lodash imports
- Fix responsive and minified tests
- Fix files list for npm package in
- Add support for remote\local "pre" function invocation
- Fix responsive images in ie11
- Add pre release test for packages (#185)
- Fix cloudinary-core-shrinkwrap.js missing in release
- Fix cloudinary-react needed file not included in release
- Update copy_deployment script
- Update copybuilds script
- Feature/add video duration condition (#183)
- Support force_version parameter to include default version when generating delivery urls (#173)
- add support for antialiasing and hinting
- Add support for custom functions
- Add support of custom codecs in video tag (#161)
- Feature/configuration (#172)
- Update webpack and karma configuration
- Update npm scripts
- Add deployment files under a single repository
- Add pkg folder
- Add copybuilds script
- Add test for support of art:incognito effect (#168)
- Update jsdoc version (#182)
- Add duration to conditions in video (#178)
- Fix layer cloning (#163)
- Update inline documentation (#174)
- Add
fontAntiAliasing
andfontHinting
to TypeScript definition - Add
FetchLayer
to types - Fix TypeScript cloudinary import
- Add default export definition to TypeScript
- Bump lodash from 4.17.11 to 4.17.13 (#180)
- Bump js-yaml from 3.12.1 to 3.13.1 (#177)
- Fix/sample code (#170)
- Bump package versions in samples
- Add support for composite radius params
- Replace
object.assign
withutil.assign
(#169) - Escape quotes in html attributes (#166)
- Remove Safari from automated tests
- Fix test:all script
- Implement isEmpty, isString and fix default function values
- Update `.jshintrc to support ES6
- Add "join the Community"
- Use hardcoded list of method names. Fixes #153
- Use babel for development mode too
- Add test:all script
- Fix ES6 modules
Sources are now divided into JavaScript modules. However we can't change the public API of the package or its structure, including the "main" property of the package.json file, without a major release.
You can import cloudinary from the sources:
npm install cloudinary_js
import cloudinary from 'cloudinary_js/src';
const cl = cloudinary.Cloudinary.new({cloud_name: 'demo'});
The npm packages:
cloudinary-core
cloudinary-jquery
cloudinary-jquery-file-upload
Are still used to distribute the bundled library.
- Add picture tag and source tag
- Add support to
fps
transformation parameter (#139) - Replaced CoffeeScript with JavaScript
- Refactor code as modules
- Fix Fetch layer
- Remove grunt
- Update TypeScript configuration
- Remove PhantomJS and bower references
- Fix HTML tag test
- Fix fps test
- Support SEO urls
- Merge pull request #136 from ignatiusreza/lodash/diet
- selectively import lodash to avoid bundling the whole lodash
- Update
package-lock.json
- Support fetch URL in layers
- Support SEO suffix for private images
- Add documentation
- Refactor
btoa
; Add POJOisFunction
- Update Node version list to test; Remove env vars
- Update dependencies and configuration
- Fix CLOUDINARY_URL regex
- Update npm installation instructions
- Update dependencies
- Add TypeScript typings for cloudinary-core (merging #120 and #122)
- Remove redundant script tags.
- Add tests for gravity modes.
- Restore cloud_name when chaining transformations (#116)
- Add backward compatibility file
- Fix broken conditional transformations based on order to transformation keys
- Return node within loop so images is populated correctly (#119)
- Filter out
$attr
as a variable name - it is reserved in Angular
- Add User defined variables.
- Add
callback
andupload_preset
to configuration parameters
- Support ‘iw’ and ‘ih’ transformation parameters for indicating initial width or height (respectively) in
ImageTag
- Support responsive image tag in
ImageTag
- Replace
$
with jQuery - Replace require
- Add Client Hints meta tag helper
- Support public ID with special characters
- Don't convert parameters to CamelCase
- Remove using
@const
to avoid lint error on constant assignment - Edit instructions in README
- Encode
|
and=
in context values. - Merge pull request #110 from gvillenave/master
- Fix the "delay" transformation URL code
- Change client hints behavior. Fixes #107.
- Remove dependency on 'jquery.ui' Fixes #104.
- Refactor
grunt version
- Test width value 'ow' and height value 'oh'
- Update documentation
- Merge branch 'dpr_auto'
- preview URL shows dpr_1.0 when setting DPR to auto
- Re-introduce the copy:docs task
- Guard for null or empty param in
cloudinary_update
andprocessImageTags
as mentioned in #99 - Fix documentation for
processImageTags
as mentioned in #99
- Move
configuration
beforetransformation
in build and test scripts. - Refactor Util.
- Modify karma configuration to support coverage reporting.
- Fix typo.
- Make Layer classes support camelCase and snake_case parameters. Add Layer text.
- Add
baseutil.js
as a common source for lodash and jQuery utils. - Fix Layer tests
- Fix bug in
maxWidth
- Add TravisCI label for npm, bower and license.
- Add license file
- Add missing
rmargin
variable. Fixes #76 - Fix README reference to
fileupload()
- Merge pull request #95 from crazile/patch-1
- Remove shorthand jQuery reference ($)
- Update packages.
- Rename
short
toshortName
. Fixes #73.
- Add TravisCI configuration
- Allow browsers to be defined in commandline for karma runs.
- Remove map reference created by the coffee compiler from distribution files.
- New configuration parameter
:client_hints
- Enhanced auto
width
values - Enhanced
quality
values
- Use duck-typing to set/get attributes.
- Updated dependencies
- Add
client_hints
,width
,quality
tests - Create spec-helper.coffee. Add
sharedExamples
. - Fix assets compilation issue with Cloudinary GEM cloudinary/cloudinary_gem#203
- Remove map reference in
js
folder. Fixes cloudinary/cloudinary_gem#199
- Add structured overlay and underlay
- Add
keyframe_interval
andstreaming_profile
transformation parameters
- Fix missing
cloudinary-jquery-file-upload.coffee.js.map
error. Fixes cloudinary/cloudinary_gem#199. - Don't overwrite
root.cloudinary
when initializing. Allows the cloudinary upload widget to be loaded before the JS library. Fixes #88
- Create local variables for
lodash
and_
for the shrinkwrap version. - Add
face_count
andpage_count
to Condition. Use replace with callback to process condition. - Add
transformation-spec.js
to karma configuration - Add translation of parameter names in conditional transformation
- Fix responsive tests
- Update tests
- Set default
responsive_use_breakpoints
instead ofresponsive_use_stoppoints
.
- Conditional Transformations
- Set breakpoint steps to 100. Default
responsive_use_stoppoints
totrue
instead of"resize"
. - Round up DPR by default. Add
round_dpr
configuration parameter.
- Add
Condition
class. AddTransformation.if
,Transformation.endif
,Transformation.else
. - Use String.slice() instead of String.substring()
- Update Grunt
build
task to not delete the lodash artifacts. Updatecompile
task to not cleanjsdoc
. - Add
bootstrap
argument toresponsive()
. Support responsive_class in options (defaults tocld-responsive
). - Add
Util.removeAttribute
- Add
item == null
to jQuery utilsisEmpty
- Support webpack, browserify
- webpack example
- Minified version of source
- Shrinkwrapped core lib which includes a subset of the lodash functions
- Remove UMD constrcut from the individual source files.
- Fix module references for NodeJS
- Clone headers instead of modifying them. Fixes handling of multiple chunked uploads in parallel.
- Rename
lodash-shrinkwrapped
tolodash-shrinkwrap
. Fix documentation comments. - Update dependencies
- Update version number in backward compatibility library (no code changes)
- Merge branch 'master' of https://github.com/cloudinary/cloudinary_js
- Update README.md
- Add IDEA files to gitignore
- Merge pull request #71 from bradvogel/patch-2
- I think you mean this link?
- Create
namespace
folder. Move "-full
" files to the new folder and rename them. - Make root module nameless.
- Update dependencies and documentation of script tags.
- Check if jQuery.fn.fileupload exists before executing related methods. Used for backward compatibility. Fixes #67
- Add test runner for source ("un-packed") AMD.
- Don't use
file:
for Cloudinary URL. Modify resources URLs in the test files. - Remove
testWindow.removeEventListener handler
- it was causing the test to fail. - Fix reference to Configuration.
- Update backward compatibility files
- Bootstrap fileupload when loading the code directly. Required for backward compatibility.
- Verify that cloudinary domain exists when defining the Tranfsormation class
- Version 2.0.1
- Fix Links in
README.md
- Fix responsive and dpr.
- Create a web project for testing at
test/docRoot
. Add a bootstrap responsive html for tests. - Create a separate spec file for responsive tests.
- Remove "old" from the JS link in
bootstrap.html
- Fix algorithm used to calculate container width
The version 2.0.0 release refactors the Cloudinary JavaScript library, and the biggest news is that the newly introduced Core Library is jQuery-independent. The source code has been converted into CoffeeScript and rearranged into classes, and a new build script based on Grunt has been added. The build process produces 3 artifacts:
- A Core Library that is not dependent on jQuery
- A jQuery plugin that includes the Core Library
- A Blueimp plugin that includes the jQuery plugin and the Core Library
In order to publish these libraries in bower and NPM, 3 new Github repositories have been created:
+------------------------------------+-------------------------------+
| Repository | Package name |
+------------------------------------+-------------------------------+
| pkg-cloudinary-core | cloudinary-core |
| pkg-cloudinary-jquery | cloudinary-jquery |
| pkg-cloudinary-jquery-file-upload | cloudinary-jquery-file-upload |
+------------------------------------+-------------------------------+
The same package names are used in both bower and NPM.
The cloudinary-jquery-file-upload library is fully backward compatible with cloudinary_js library 1.0.25.
The relevant Blueimp files will still be found in the js
folder for backward compatibility. However if you rely on Blueimp files located in the repository's js
folder, make sure to update your links to load-image.all.min.js
which replaced the load-image.min.js
from previous versions.
We however encourage developers to utilize a dependency manager such as bower or NPM to install 3 party libraries and not rely on the files in the js
folder.
- Add lodash
- Add Blueimp distribution files.
- Replace
bower-*
repositories withpkg-*
. - Update
devDependencies
inpackage.json
- Fix files references in karma configuration files.
- Add
load-image.all.min.js
, removeload-image.min.js
. Fixuglify
task. Addcopy:doc
task. Modifybuild
task. - Add manually compiled Gruntfile.
- Optimize bundles to build dir. Dynamically build grunt tasks. Rename files to match repositories.
- Update documentation.
- Replace "stoppoints" with "breakpoints". Prefix HtmlTag attributes with "html_".
- Add format to documentation task. Fix documentation. Remove headers and footer.
- Add template files to be used by jsdoc
- Add grunt task to copy artifact to bower repositories
- Define modules for namespaces. Modify grunt script.
- Add requirejs tasks to grunt build file.
- Add UMD to all sources.
- Filter empty transformation values for the transformation parameter
- Add aspect_ratio transformation
- Update README
- Update gitignore file; Add new API information to README; update npm dependencies
- Split karma configuration
- Remove lodash and jQuery references where they shouldn't be.
- Don't fail on falsy public_id
- Redefine
cloudinary
scope and secure it internally; Add documentation - Remove automatic configuration from Cloudinary class. Will be enabled in jquery flavor for backward compatibility.
- Add utils.jquery
- Define
Util
domain for utility functions - Return DOM from
Cloudinary.image()
- Convert specs to coffee
- Add Karma runner to grunt.
- Add Transformation chains
- Change file paths in jasmine html files.
- Replace '$' with jQuery
- Move tags to separate folder. Add TODO.md.
- Add uglify to grunt.
- Add correct width algorithm.
- Add node modules to the ignore file
- Add node_nodules to gitignore
- Set innerText and textContent without using hasOwnProperty, in order to support IE and FF. Fixes #56
- Update README.md
- Re-fix issues lost in merge
- Fix poster options. Edit Documentation.
- Fix documentation
- Use jQuery width for responsive for correct handling of padding
- Support responsive_preserve_height configuration option
- Support video tag generation
- Add test for zoom.
- Refactored range code. Updated dependencies.
- Support resource_type and type parameters for cloudinary_fileupload
- Merge branch 'feat/video-support'
- Add support for video
- Add X-Unique-Upload-Id header to upload requests. Particularly useful for the upload_chunked endpoint
- Increment version to v1.0.22: Support root path for shared CDN
- Support root path for shared CDN
- support url_suffix and use_root_path for private_cdn URL building
- Fix potential XSS vulnerability on cloudinary_cors.html
- Upgrade to jquery.fileupload.js version 5.42.1
- Traverse ancestors in DOM to find clientWidth for responsive images
- Reading use_root_path also from global config
- Merge pull request #40 from zaption/xss-fix
- Support domain sharding for https in res.cloudinary.com
- Refactor tests
- Merge pull request #39 from sl4m/responsive-image-width
- Fix dpr cache to store by queue indexed by
- Fix issue #125 - find closest supported DPR value since zoom changes DPR
- Support for delete_by_token API call from the browser
- Responsive images support. Support passing cloud_name to unsigned_cloudinary_upload as part of upload_params hash.
- Automatically update dpr according to real devicePixelRatio when building or updating image
- Refactor generate_transformation_string. Add support for dpr parameter
- Support supplying cloud_name as option to upload methods. Support supplying multiple in unsigned upload methods
- Add unsigned_cloudinary_upload
- fix url generation if secure is false in a secure page
- fix object encoding in unsigned upload
- Merge pull request #29 from zvictor/master
- fix non-fileupload code
- Rename unsigned_upload to unsigned_upload_tag
- Support dynamically creating an unsigned_upload widget. Better absolutize for fetch urls
- Merge pull request #27 from eroh92/patch-1
- fix invalid JSON
- fix trailing ',', add .jshintrc, fix named transformations
- Bower manifest
- Added bower.json, for registration.
- Merge pull request #23 from aceunreal/master
- Upating the webp image to ensure the webpify function handles Android 4.1.2 version
- Better handling of fieldupload fields with multiple true
- trust_public_id - allow keeping file extension that looks like an image extension
- AMD support
- Updating links in jquery plugin definition
- Merge pull request #20 from luxedigital/allow_to_override_protocol
- Allow to set protocol using cloudinary config
- Allow to specify a protocol
- Fix tests follow change to secure urls under file:// change
- Secure option overrides window.location.protocol
- Add color parameter support
- Binding jQuery file upload events
- Bind other important events and expose to application
- Update client size resize and validation instructions
- Referring to cloudinary_angular in readme
- Escape public_ids even if not fetch
- Change secure urls to use *res.cloudinary.com