Skip to content

Commit

Permalink
fix: resolved inconsistent exports in ESM (Automattic#2047)
Browse files Browse the repository at this point in the history
* feat: add ESM support

* docs: updated CHANGELOG

* refactor: destructure once

Co-authored-by: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>

* fix: use `exports.[name] = value` instead

Co-authored-by: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
  • Loading branch information
kyranet and VoltrexKeyva authored Jun 16, 2022
1 parent 9d8da5b commit 3f3af3a
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 33 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ project adheres to [Semantic Versioning](http://semver.org/).
### Changed
### Added
### Fixed
* Fixed ESM exports.

2.9.1
==================
Expand Down
64 changes: 31 additions & 33 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -55,40 +55,38 @@ function deregisterAllFonts () {
return Canvas._deregisterAllFonts()
}

module.exports = {
Canvas,
Context2d: CanvasRenderingContext2D, // Legacy/compat export
CanvasRenderingContext2D,
CanvasGradient: bindings.CanvasGradient,
CanvasPattern,
Image,
ImageData: bindings.ImageData,
PNGStream,
PDFStream,
JPEGStream,
DOMMatrix,
DOMPoint,
exports.Canvas = Canvas
exports.Context2d = CanvasRenderingContext2D // Legacy/compat export
exports.CanvasRenderingContext2D = CanvasRenderingContext2D
exports.CanvasGradient = bindings.CanvasGradient
exports.CanvasPattern = CanvasPattern
exports.Image = Image
exports.ImageData = bindings.ImageData
exports.PNGStream = PNGStream
exports.PDFStream = PDFStream
exports.JPEGStream = JPEGStream
exports.DOMMatrix = DOMMatrix
exports.DOMPoint = DOMPoint

registerFont,
deregisterAllFonts,
parseFont,
exports.registerFont = registerFont
exports.deregisterAllFonts = deregisterAllFonts
exports.parseFont = parseFont

createCanvas,
createImageData,
loadImage,
exports.createCanvas = createCanvas
exports.createImageData = createImageData
exports.loadImage = loadImage

backends: bindings.Backends,
exports.backends = bindings.Backends

/** Library version. */
version: packageJson.version,
/** Cairo version. */
cairoVersion: bindings.cairoVersion,
/** jpeglib version. */
jpegVersion: bindings.jpegVersion,
/** gif_lib version. */
gifVersion: bindings.gifVersion ? bindings.gifVersion.replace(/[^.\d]/g, '') : undefined,
/** freetype version. */
freetypeVersion: bindings.freetypeVersion,
/** rsvg version. */
rsvgVersion: bindings.rsvgVersion
}
/** Library version. */
exports.version = packageJson.version
/** Cairo version. */
exports.cairoVersion = bindings.cairoVersion
/** jpeglib version. */
exports.jpegVersion = bindings.jpegVersion
/** gif_lib version. */
exports.gifVersion = bindings.gifVersion ? bindings.gifVersion.replace(/[^.\d]/g, '') : undefined
/** freetype version. */
exports.freetypeVersion = bindings.freetypeVersion
/** rsvg version. */
exports.rsvgVersion = bindings.rsvgVersion

0 comments on commit 3f3af3a

Please sign in to comment.