Skip to content

Commit 63cb3ca

Browse files
authored
Merge pull request #444 from GrahamDigital/master
2 parents db197ef + fac8e83 commit 63cb3ca

10 files changed

+108
-47
lines changed

Diff for: jest.config.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"preset": "ts-jest",
33
"testEnvironment": "jsdom",
44
"bail": true,
5-
"resolver": "<rootDir>/src/internal/utils/jest-ts-resolver.js",
5+
"resolver": "<rootDir>/src/internal/utils/jest-ts-resolver.cjs",
66
"collectCoverageFrom": [
77
"<rootDir>/src/**/*.ts",
88
"<rootDir>/scripts/**/*.ts",
@@ -27,7 +27,7 @@
2727
"diagnostics": false
2828
}
2929
},
30-
"reporters": [
30+
"reporters": [
3131
"default",
3232
["jest-html-reporters", {
3333
"publicPath" : "./public/progress/",

Diff for: package.json

+46-15
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
"test:unit:watch": "jest --watch --reporters default",
1212
"build": "bash ./scripts/build.sh",
1313
"test:types": "tsc --project tsconfig.test.json",
14-
"build:ESM": "tsc --project tsconfig.json",
15-
"build:UMD": "rollup -c",
14+
"build:ESM": "tsc --project tsconfig.json --outDir dist --declaration true",
15+
"build:rollup": "rollup -c",
1616
"build:docs": "node ./scripts/buildDocs.js",
1717
"build:entryPoints": "ts-node ./scripts/createEntrypoints.ts",
1818
"build:injectPackageVersion": "ts-node ./scripts/injectPackageVersionToDistFiles.ts",
@@ -33,9 +33,12 @@
3333
"@babel/core": "^7.9.0",
3434
"@babel/preset-env": "^7.9.0",
3535
"@release-it/bumper": "^2.0.0",
36+
"@rollup/plugin-babel": "^5.3.0",
37+
"@rollup/plugin-commonjs": "^21.0.0",
3638
"@rollup/plugin-json": "^4.1.0",
3739
"@rollup/plugin-node-resolve": "^7.1.1",
3840
"@rollup/plugin-replace": "^3.0.0",
41+
"@rollup/plugin-typescript": "^8.2.5",
3942
"@types/jest": "^25.2.3",
4043
"@types/mock-fs": "^4.10.0",
4144
"@types/node": "^15.14.2",
@@ -75,10 +78,8 @@
7578
"replace-in-file": "^6.2.0",
7679
"rimraf": "^3.0.2",
7780
"rollup": "^2.57.0",
78-
"rollup-plugin-babel": "^4.4.0",
79-
"rollup-plugin-commonjs": "^10.1.0",
81+
"rollup-plugin-multi-input": "^1.3.1",
8082
"rollup-plugin-serve": "^1.0.1",
81-
"rollup-plugin-typescript": "^1.0.1",
8283
"sanitize-html": "^1.18.2",
8384
"ts-jest": "^26.0.0",
8485
"ts-node": "^8.10.2",
@@ -90,16 +91,46 @@
9091
"exports": {
9192
"./bundles/umd/package.json": "./bundles/umd/package.json",
9293
"./package.json": "./package.json",
93-
"./actions/*": "./actions/*.js",
94-
"./assets/*": "./assets/*.js",
95-
"./backwards/*": "./backwards/*.js",
96-
"./bundles/*": "./bundles/*.js",
97-
"./config/*": "./config/*.js",
98-
"./instance/*": "./instance/*.js",
99-
"./qualifiers/*": "./qualifiers/*.js",
100-
"./sdkAnalytics/*": "./sdkAnalytics/*.js",
101-
"./transformation/*": "./transformation/*.js",
102-
"./types/*": "./types/*.js",
94+
"./actions/*": {
95+
"require": "./actions/*.cjs",
96+
"import": "./actions/*.js"
97+
},
98+
"./assets/*": {
99+
"require": "./assets/*.cjs",
100+
"import": "./assets/*.js"
101+
},
102+
"./backwards/*": {
103+
"require": "./backwards/*.cjs",
104+
"import": "./backwards/*.js"
105+
},
106+
"./bundles/*": {
107+
"require": "./bundles/*.cjs",
108+
"import": "./bundles/*.js"
109+
},
110+
"./config/*": {
111+
"require": "./config/*.cjs",
112+
"import": "./config/*.js"
113+
},
114+
"./instance/*": {
115+
"require": "./instance/*.cjs",
116+
"import": "./instance/*.js"
117+
},
118+
"./qualifiers/*": {
119+
"require": "./qualifiers/*.cjs",
120+
"import": "./qualifiers/*.js"
121+
},
122+
"./sdkAnalytics/*": {
123+
"require": "./sdkAnalytics/*.cjs",
124+
"import": "./sdkAnalytics/*.js"
125+
},
126+
"./transformation/*": {
127+
"require": "./transformation/*.cjs",
128+
"import": "./transformation/*.js"
129+
},
130+
"./types/*": {
131+
"require": "./types/*.cjs",
132+
"import": "./types/*.js"
133+
},
103134
".": {
104135
"node": "./index.js",
105136
"require": "./bundles/umd/base.js",

Diff for: rollup.config.js

+44-21
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,50 @@
11
import resolve from '@rollup/plugin-node-resolve';
2-
import typescript from 'rollup-plugin-typescript';
2+
import typescript from '@rollup/plugin-typescript';
33
import json from '@rollup/plugin-json';
4-
import commonjs from 'rollup-plugin-commonjs';
4+
import commonjs from '@rollup/plugin-commonjs';
55
import replace from '@rollup/plugin-replace';
6+
import multi from 'rollup-plugin-multi-input';
67
import {version} from './package.json';
78

8-
export default [{
9-
input: 'src/index.ts',
10-
output: [
11-
{
12-
file: 'dist/bundles/umd/base.js',
13-
format: 'umd',
14-
name:'CloudinaryBaseSDK'
15-
}
16-
],
17-
plugins: [
18-
json(),
19-
resolve(),
20-
replace({
21-
'PACKAGE_VERSION_INJECTED_DURING_BUILD': version
22-
}),
23-
typescript({ target: "es5"}),
24-
commonjs()
25-
]
26-
}];
9+
export default [
10+
{
11+
input: 'src/index.ts',
12+
output: [
13+
{
14+
file: 'dist/bundles/umd/base.js',
15+
format: 'umd',
16+
name: 'CloudinaryBaseSDK',
17+
},
18+
],
19+
plugins: [
20+
json(),
21+
resolve(),
22+
replace({
23+
'PACKAGE_VERSION_INJECTED_DURING_BUILD': version,
24+
}),
25+
typescript({ target: 'es5' }),
26+
commonjs(),
27+
],
28+
},
29+
{
30+
input: 'src/**/*.ts',
31+
output: {
32+
format: 'cjs',
33+
dir: 'dist',
34+
entryFileNames: '[name].cjs',
35+
chunkFileNames: '[name]-[hash].cjs',
36+
exports: 'auto',
37+
},
38+
plugins: [
39+
multi(),
40+
json(),
41+
resolve(),
42+
replace({
43+
'PACKAGE_VERSION_INJECTED_DURING_BUILD': version,
44+
}),
45+
typescript({ target: "es5" }),
46+
commonjs()
47+
]
48+
}
49+
];
2750

Diff for: rollup.dev.config.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import resolve from '@rollup/plugin-node-resolve';
2-
import babel from 'rollup-plugin-babel';
2+
import babel from '@rollup/plugin-babel';
33
import serve from 'rollup-plugin-serve';
4-
import typescript from "rollup-plugin-typescript";
4+
import typescript from "@rollup/plugin-typescript";
55
import json from '@rollup/plugin-json';
66
import replace from '@rollup/plugin-replace';
77
import {version} from './package.json';

Diff for: scripts/build.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ set -e;
33
rimraf ./dist
44
npm run lint
55
npm run build:ESM
6-
npm run build:UMD
6+
npm run build:rollup
77
npm run build:entryPoints
88
npm run build:docs
99
npm run build:injectPackageVersion

Diff for: scripts/injectPackageVersionToDistFiles.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ const {resolve} = require('path');
99

1010
const distFolder = resolve('./dist');
1111
const options = {
12-
files: [`${distFolder}/**/*.js`, `${distFolder}/**/*.ts`],
12+
files: [`${distFolder}/**/*.js`, `${distFolder}/**/*.cjs`, `${distFolder}/**/*.ts`],
1313
from: /PACKAGE_VERSION_INJECTED_DURING_BUILD/g,
1414
to: version
1515
};

Diff for: scripts/lib/entryPointsLib.ts

+1
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ function copyPackageJson(fileDestination = 'dist') {
3939
projectJson.main = './bundles/umd/base.js';
4040
projectJson.browser = './index.js';
4141
projectJson.module = './index.js';
42+
projectJson.type = 'module',
4243

4344
Object.assign(projectJson, commonPackageProperties);
4445
fs.writeFileSync(`./${fileDestination}/package.json`, JSON.stringify(projectJson, null, '\t'));

Diff for: scripts/updatePackageJsonExports.ts

+11-3
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,17 @@ const distSubDirectoriesArray: string[] = readdirSync(resolve('./dist'), {withFi
2727
// Sort alphabetically
2828
.sort();
2929

30-
// Convert directory string to object of {[directory/*]: directory/*.js}
31-
const distSubDirectoriesObj: Record<string, string> = distSubDirectoriesArray
32-
.reduce((obj, dir) => ({...obj, ...{[`${dir}/*`]: `${dir}/*.js`}}), {}); //
30+
// Convert directory string to object of {[./directory/*]: { require: "directory/*.mjs", import: "directory/*.js" }}
31+
const distSubDirectoriesObj: Record<
32+
string,
33+
Record<string, string>
34+
> = distSubDirectoriesArray.reduce(
35+
(obj, dir) => ({
36+
...obj,
37+
...{ [`${dir}/*`]: { require: `${dir}/*.cjs`, import: `${dir}/*.js` } },
38+
}),
39+
{}
40+
);
3341

3442
// Generate updated package json object
3543
const resultPackageJson = JSON.stringify({
File renamed without changes.

Diff for: tsconfig.json

-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
{
22
"compilerOptions": {
33
"noImplicitAny": true,
4-
"outDir": "./dist",
54
"target": "ES2015",
6-
"declaration": true,
75
"module": "ES2015",
86
"moduleResolution": "node",
97
"baseUrl": "src",

0 commit comments

Comments
 (0)