From 91d2350415a9277869eec25077647187cde0e16c Mon Sep 17 00:00:00 2001 From: Brett Zamir Date: Fri, 14 May 2021 08:41:20 +0800 Subject: [PATCH] - Create as native ESM; refactor tests to ESM --- package.json | 16 ++++++++++++++-- rollup.config.js | 25 ++++++++++++++++--------- test/index.js | 4 ++-- 3 files changed, 32 insertions(+), 13 deletions(-) diff --git a/package.json b/package.json index 9966cc2..83e67f7 100644 --- a/package.json +++ b/package.json @@ -2,9 +2,18 @@ "name": "mockdate", "version": "3.0.5", "description": "A JavaScript mock Date object that can be used to change when \"now\" is.", - "main": "lib/mockdate.js", + "main": "./lib/mockdate.cjs", + "type": "module", "types": "lib/mockdate.d.ts", "dependencies": {}, + "exports": { + "types": "./lib/mockdate.d.ts", + "import": "./lib/mockdate.js", + "require": "./lib/mockdate.cjs" + }, + "engines": { + "node": ">=12.0.0" + }, "devDependencies": { "mocha": "7.1.2", "rollup": "2.42.4", @@ -30,12 +39,15 @@ "test" ], "author": "Bob Lauer ", + "contributors": [ + "Brett Zamir" + ], "license": "MIT", "bugs": { "url": "https://github.com/boblauer/MockDate/issues" }, "homepage": "https://github.com/boblauer/MockDate", "spm": { - "main": "lib/mockdate.js" + "main": "lib/mockdate.cjs" } } diff --git a/rollup.config.js b/rollup.config.js index bd939a9..617587c 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -1,13 +1,20 @@ import typescript from 'rollup-plugin-typescript2'; -export default { +export default [{ input: 'src/mockdate.ts', - output: [ - { - file: 'lib/mockdate.js', - format: 'umd', - name: 'MockDate', - }, - ], + output: { + exports: 'named', + file: 'lib/mockdate.cjs', + format: 'umd', + name: 'MockDate', + }, plugins: [typescript()], -}; +}, { + input: 'src/mockdate.ts', + output: { + file: 'lib/mockdate.js', + format: 'esm', + name: 'MockDate', + }, + plugins: [typescript()], +}]; diff --git a/test/index.js b/test/index.js index fe9988d..467e034 100644 --- a/test/index.js +++ b/test/index.js @@ -1,5 +1,5 @@ -const should = require('should'); -const MockDate = require('../lib/mockdate'); +import should from 'should'; +import MockDate from '../lib/mockdate.js'; describe('MockDate', function() { const mockDate = '1/1/2000';