Skip to content

Commit 4f4d116

Browse files
Merge pull request #269 from ahocevar/esm
Make sources and package ES module compliant
2 parents 39179ef + c512137 commit 4f4d116

26 files changed

+79
-67
lines changed

.eslintrc.js renamed to .eslintrc.cjs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ module.exports = {
3939
'max-classes-per-file': 0,
4040
'max-len': ['error', { code: 130 }],
4141
'import/prefer-default-export': 0,
42+
'import/extensions': ['error', 'always'],
4243
'prefer-default-export': 0,
4344
'func-names': 0,
4445
'arrow-body-style': 0,

package.json

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,17 @@
99
"image",
1010
"raster"
1111
],
12+
"type": "module",
1213
"main": "dist-node/geotiff.js",
1314
"module": "src/geotiff.js",
1415
"jsdelivr": "dist-browser/geotiff.js",
16+
"exports": {
17+
".": {
18+
"import": "./src/geotiff.js",
19+
"require": "./dist-node/geotiff.js",
20+
"browser": "./dist-browser/geotiff.js"
21+
}
22+
},
1523
"files": [
1624
"src",
1725
"dist-node",
@@ -64,7 +72,7 @@
6472
"dev": "parcel serve test/data/** test/index.html src/ --port 8090",
6573
"dev:clean": "rm -rf dist/ .cache/",
6674
"docs": "rm -rf docs/; jsdoc -c .jsdoc.json -r src README.md -d docs",
67-
"lint": "eslint src test *.js",
75+
"lint": "eslint src test .eslintrc.cjs",
6876
"lint:fix": "npm run lint -- --fix",
6977
"prepare": "npm run build",
7078
"pretest": "npm run lint",

src/compression/basedecoder.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { applyPredictor } from '../predictor';
1+
import { applyPredictor } from '../predictor.js';
22

33
export default class BaseDecoder {
44
async decode(fileDirectory, buffer) {

src/compression/deflate.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { inflate } from 'pako';
2-
import BaseDecoder from './basedecoder';
2+
import BaseDecoder from './basedecoder.js';
33

44
export default class DeflateDecoder extends BaseDecoder {
55
decodeBlock(buffer) {

src/compression/index.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,12 @@ export async function getDecoder(fileDirectory) {
1717
}
1818

1919
// Add default decoders to registry (end-user may override with other implementations)
20-
addDecoder([undefined, 1], () => import('./raw').then((m) => m.default));
21-
addDecoder(5, () => import('./lzw').then((m) => m.default));
20+
addDecoder([undefined, 1], () => import('./raw.js').then((m) => m.default));
21+
addDecoder(5, () => import('./lzw.js').then((m) => m.default));
2222
addDecoder(6, () => {
2323
throw new Error('old style JPEG compression is not supported.');
2424
});
25-
addDecoder(7, () => import('./jpeg').then((m) => m.default));
26-
addDecoder([8, 32946], () => import('./deflate').then((m) => m.default));
27-
addDecoder(32773, () => import('./packbits').then((m) => m.default));
28-
addDecoder(34887, () => import('./lerc').then((m) => m.default));
25+
addDecoder(7, () => import('./jpeg.js').then((m) => m.default));
26+
addDecoder([8, 32946], () => import('./deflate.js').then((m) => m.default));
27+
addDecoder(32773, () => import('./packbits.js').then((m) => m.default));
28+
addDecoder(34887, () => import('./lerc.js').then((m) => m.default));

src/compression/jpeg.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import BaseDecoder from './basedecoder';
1+
import BaseDecoder from './basedecoder.js';
22

33
/* -*- tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- /
44
/* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: */

src/compression/lerc.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { inflate } from 'pako';
22
import Lerc from 'lerc';
3-
import BaseDecoder from './basedecoder';
4-
import { LercParameters, LercAddCompression } from '../globals';
3+
import BaseDecoder from './basedecoder.js';
4+
import { LercParameters, LercAddCompression } from '../globals.js';
55

66
export default class LercDecoder extends BaseDecoder {
77
constructor(fileDirectory) {

src/compression/lzw.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import BaseDecoder from './basedecoder';
1+
import BaseDecoder from './basedecoder.js';
22

33
const MIN_BITS = 9;
44
const CLEAR_CODE = 256; // clear code

src/compression/packbits.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import BaseDecoder from './basedecoder';
1+
import BaseDecoder from './basedecoder.js';
22

33
export default class PackbitsDecoder extends BaseDecoder {
44
decodeBlock(buffer) {

src/compression/raw.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import BaseDecoder from './basedecoder';
1+
import BaseDecoder from './basedecoder.js';
22

33
export default class RawDecoder extends BaseDecoder {
44
decodeBlock(buffer) {

0 commit comments

Comments
 (0)