diff --git a/CHANGELOG.md b/CHANGELOG.md index 2b4d622..24d7372 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,10 +5,11 @@ Performance tweaks. - major bump [`bpmn-elements@15`](https://github.com/paed01/bpmn-elements/blob/master/CHANGELOG.md) -- including major bump of [`smqp@9`](https://github.com/paed01/smqp/blob/default/CHANGELOG.md) +- major bump of [`smqp@9`](https://github.com/paed01/smqp/blob/default/CHANGELOG.md) ## Breaking +- drop support for node 14 and 16 - JavaScripts.Script property scripts is now a Map # 21.1.0 diff --git a/lib/index.cjs b/lib/index.cjs index fa5a479..690a68f 100644 --- a/lib/index.cjs +++ b/lib/index.cjs @@ -2,15 +2,15 @@ Object.defineProperty(exports, '__esModule', { value: true }); -var module$1 = require('module'); -var events = require('events'); -var url = require('url'); +var node_module = require('node:module'); +var node_events = require('node:events'); +var node_url = require('node:url'); var BpmnModdle = require('bpmn-moddle'); var Elements = require('bpmn-elements'); var smqp = require('smqp'); var serializer = require('moddle-context-serializer'); var Debug = require('debug'); -var vm = require('vm'); +var node_vm = require('node:vm'); var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null; function _interopNamespaceDefault(e) { @@ -85,7 +85,7 @@ Scripts.prototype.getScript = function getScript(language, { id }) { function JavaScript(language, filename, scriptBody, environment) { this.id = filename; - this.script = new vm.Script(scriptBody, { filename }); + this.script = new node_vm.Script(scriptBody, { filename }); this.language = language; this.environment = environment; } @@ -161,7 +161,7 @@ ProcessOutputDataObject.prototype.write = function writeDataObject(broker, excha return broker.publish(exchange, `${routingKeyPrefix}response`, { id, name, type, value }, messageProperties); }; -const nodeRequire = module$1.createRequire(url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.src || new URL('index.cjs', document.baseURI).href)))); +const nodeRequire = node_module.createRequire(node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.src || new URL('index.cjs', document.baseURI).href)))); const { version: engineVersion } = nodeRequire('../package.json'); const kEngine = Symbol.for('engine'); @@ -178,7 +178,7 @@ const kTypeResolver = Symbol.for('type resolver'); function Engine(options = {}) { if (!(this instanceof Engine)) return new Engine(options); - events.EventEmitter.call(this); + node_events.EventEmitter.call(this); const opts = (this.options = { Logger: Logger, @@ -215,7 +215,7 @@ function defaultTypeResolver(elementTypes) { elementTypes['bpmn:DataStoreReference'] = ProcessOutputDataObject; } -Engine.prototype = Object.create(events.EventEmitter.prototype); +Engine.prototype = Object.create(node_events.EventEmitter.prototype); Object.defineProperties(Engine.prototype, { name: { diff --git a/package.json b/package.json index 78f47c6..e857958 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ "url": "https://github.com/paed01" }, "engines": { - "node": ">=14" + "node": ">=18" }, "files": [ "lib/", diff --git a/rollup.config.js b/rollup.config.js index e1c7fa9..3a66d67 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -21,5 +21,5 @@ export default { footer: 'module.exports = Object.assign(exports.default, exports);', }, ], - external: ['module', 'url', 'vm', 'events', ...Object.keys(dependencies)], + external: ['node:module', 'node:url', 'node:vm', 'node:events', ...Object.keys(dependencies)], }; diff --git a/src/JavaScripts.js b/src/JavaScripts.js index 314fe00..4e1d705 100644 --- a/src/JavaScripts.js +++ b/src/JavaScripts.js @@ -1,4 +1,4 @@ -import { Script } from 'vm'; +import { Script } from 'node:vm'; export default function Scripts(disableDummy) { if (!(this instanceof Scripts)) return new Scripts(disableDummy); diff --git a/src/index.js b/src/index.js index 6bf424e..25a4dcd 100644 --- a/src/index.js +++ b/src/index.js @@ -1,6 +1,6 @@ -import { createRequire } from 'module'; -import { EventEmitter } from 'events'; -import { fileURLToPath } from 'url'; +import { createRequire } from 'node:module'; +import { EventEmitter } from 'node:events'; +import { fileURLToPath } from 'node:url'; import BpmnModdle from 'bpmn-moddle'; import * as Elements from 'bpmn-elements'; diff --git a/test/Engine-test.js b/test/Engine-test.js index 6b0fe6f..8ab873e 100644 --- a/test/Engine-test.js +++ b/test/Engine-test.js @@ -1,4 +1,4 @@ -import { EventEmitter } from 'events'; +import { EventEmitter } from 'node:events'; import * as Bpmn from '../src/index.js'; import * as factory from './helpers/factory.js'; import * as testHelpers from './helpers/testHelpers.js'; diff --git a/test/feature/Engine-feature.js b/test/feature/Engine-feature.js index 4cf1e3e..ac63b6a 100644 --- a/test/feature/Engine-feature.js +++ b/test/feature/Engine-feature.js @@ -1,4 +1,4 @@ -import { EventEmitter } from 'events'; +import { EventEmitter } from 'node:events'; import { Engine } from '../../src/index.js'; import * as factory from '../helpers/factory.js'; import { camundaBpmnModdle as camunda } from '../helpers/testHelpers.js'; diff --git a/test/feature/backward-compatibility-feature.js b/test/feature/backward-compatibility-feature.js index 27e64d5..c0447be 100644 --- a/test/feature/backward-compatibility-feature.js +++ b/test/feature/backward-compatibility-feature.js @@ -1,4 +1,4 @@ -import { EventEmitter } from 'events'; +import { EventEmitter } from 'node:events'; import { Engine } from '../../src/index.js'; Feature('Backward compatability', () => { diff --git a/test/feature/extend-feature.js b/test/feature/extend-feature.js index b8ed55a..c6f6f65 100644 --- a/test/feature/extend-feature.js +++ b/test/feature/extend-feature.js @@ -1,4 +1,4 @@ -import { EventEmitter } from 'events'; +import { EventEmitter } from 'node:events'; import { Activity } from 'bpmn-elements'; import { Engine } from '../../src/index.js'; import { camundaBpmnModdle as camunda } from '../helpers/testHelpers.js'; diff --git a/test/feature/issues-feature.js b/test/feature/issues-feature.js index c9e8793..dc943d6 100644 --- a/test/feature/issues-feature.js +++ b/test/feature/issues-feature.js @@ -1,5 +1,5 @@ +import { EventEmitter } from 'node:events'; import { Engine } from '../../src/index.js'; -import { EventEmitter } from 'events'; import * as factory from '../helpers/factory.js'; Feature('Issues', () => { diff --git a/test/feature/resume-feature.js b/test/feature/resume-feature.js index e0f4fa4..0ef8e62 100644 --- a/test/feature/resume-feature.js +++ b/test/feature/resume-feature.js @@ -1,4 +1,4 @@ -import { EventEmitter } from 'events'; +import { EventEmitter } from 'node:events'; import * as testHelpers from '../helpers/testHelpers.js'; import { Engine } from '../../src/index.js'; diff --git a/test/helpers/factory.js b/test/helpers/factory.js index d0b91df..0b694c9 100644 --- a/test/helpers/factory.js +++ b/test/helpers/factory.js @@ -1,5 +1,5 @@ -import fs from 'fs'; -import path from 'path'; +import fs from 'node:fs'; +import path from 'node:path'; export function valid(definitionId) { if (!definitionId) definitionId = 'valid'; diff --git a/test/issues-test.js b/test/issues-test.js index 54f2e5b..ae2cab1 100644 --- a/test/issues-test.js +++ b/test/issues-test.js @@ -1,5 +1,5 @@ +import { EventEmitter } from 'node:events'; import { Engine } from '../src/index.js'; -import { EventEmitter } from 'events'; import * as factory from './helpers/factory.js'; describe('issues', () => { diff --git a/types/bpmn-engine.d.ts b/types/bpmn-engine.d.ts index 9f43440..f2b6631 100644 --- a/types/bpmn-engine.d.ts +++ b/types/bpmn-engine.d.ts @@ -1,7 +1,7 @@ // Author : Saeed Tabrizi // Refactored by : Pål Edman -import { EventEmitter } from 'events'; +import { EventEmitter } from 'node:events'; import { Definitions as BpmnModdleDefinitions } from 'bpmn-moddle'; import { extendFn, SerializableContext } from 'moddle-context-serializer'; import {