BREAKING CHANGE(core): switch to esm

This commit is contained in:
Philipp Kunz 2022-03-25 12:14:49 +01:00
parent f50384947d
commit 835fa3663d
23 changed files with 6606 additions and 15315 deletions

21771
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -5,6 +5,7 @@
"description": "flexible task management. TypeScript ready!",
"main": "dist_ts/index.js",
"typings": "dist_ts/index.d.ts",
"type": "module",
"scripts": {
"test": "(tstest test/ --web)",
"build": "(tsbuild --web && tsbundle npm)"
@ -27,20 +28,20 @@
},
"homepage": "https://gitlab.com/pushrocks/taskbuffer#readme",
"dependencies": {
"@pushrocks/lik": "^5.0.0",
"@pushrocks/lik": "^5.0.4",
"@pushrocks/smartdelay": "^2.0.13",
"@pushrocks/smartlog": "^2.0.44",
"@pushrocks/smartpromise": "^3.1.6",
"@pushrocks/smartrx": "^2.0.19",
"@pushrocks/smarttime": "^3.0.43",
"@pushrocks/smartpromise": "^3.1.7",
"@pushrocks/smartrx": "^2.0.25",
"@pushrocks/smarttime": "^3.0.45",
"@types/cron": "^1.7.3"
},
"devDependencies": {
"@gitzone/tsbuild": "^2.1.28",
"@gitzone/tsbundle": "^1.0.88",
"@gitzone/tstest": "^1.0.60",
"@pushrocks/tapbundle": "^3.2.14",
"@types/node": "^16.11.7",
"@gitzone/tsbuild": "^2.1.61",
"@gitzone/tsbundle": "^1.0.101",
"@gitzone/tstest": "^1.0.70",
"@pushrocks/tapbundle": "^5.0.3",
"@types/node": "^17.0.23",
"tslint": "^6.1.3",
"tslint-config-prettier": "^1.18.0"
},

View File

@ -1,5 +1,6 @@
import { expect, tap } from '@pushrocks/tapbundle';
import taskbuffer = require('../ts/index');
import * as taskbuffer from '../ts/index.js';
import * as smartpromise from '@pushrocks/smartpromise';
import * as smartdelay from '@pushrocks/smartdelay';
@ -66,7 +67,7 @@ tap.test('new Task() should return a new task', async () => {
});
tap.test('expect testTask to be an instance of Task', async () => {
expect(testTask).to.be.instanceof(taskbuffer.Task);
expect(testTask).toBeInstanceOf(taskbuffer.Task);
});
tap.test('expect testTask.idle is true', async () => {
@ -76,13 +77,13 @@ tap.test('expect testTask.idle is true', async () => {
});
tap.test('testTask.running should be of type boolean and initially false', async () => {
expect(testTask.running).to.be.a('boolean');
expect(testTask.running).toBeTypeofBoolean();
// tslint:disable-next-line:no-unused-expression
expect(testTask.running).to.be.false;
expect(testTask.running).toBeFalse();
});
tap.test('testTask.trigger() should return Promise', async () => {
expect(testTask.trigger()).to.be.instanceof(Promise);
expect(testTask.trigger()).toBeInstanceOf(Promise);
});
tap.test('testTask.trigger() returned Promise should be fullfilled', async () => {

View File

@ -1,5 +1,6 @@
import { expect, tap } from '@pushrocks/tapbundle';
import taskbuffer = require('../ts/index');
import * as taskbuffer from '../ts/index.js';
import * as smartpromise from '@pushrocks/smartpromise';
import * as smartdelay from '@pushrocks/smartdelay';
@ -36,12 +37,12 @@ tap.test('expect run tasks in sequence', async () => {
const testPromise = testTaskchain.trigger();
await smartdelay.delayFor(2100);
// tslint:disable-next-line:no-unused-expression
expect(task1Executed).to.be.true;
expect(task1Executed).toBeTrue();
// tslint:disable-next-line:no-unused-expression
expect(task2Executed).to.be.false;
expect(task2Executed).toBeFalse();
await smartdelay.delayFor(2100);
// tslint:disable-next-line:no-unused-expression
expect(task2Executed).to.be.true;
expect(task2Executed).toBeTrue();
await testPromise;
});

View File

@ -1,7 +1,8 @@
import { expect, tap } from '@pushrocks/tapbundle';
import taskbuffer = require('../ts/index');
import * as smartdelay from '@pushrocks/smartdelay';
import * as taskbuffer from '../ts/index.js';
let task1Executed = false;
const task1 = new taskbuffer.Task({
taskFunction: async () => {

View File

@ -1,5 +1,6 @@
import { expect, tap } from '@pushrocks/tapbundle';
import taskbuffer = require('../ts/index');
import * as taskbuffer from '../ts/index.js';
import * as smartpromise from '@pushrocks/smartpromise';
import * as smartdelay from '@pushrocks/smartdelay';
@ -10,7 +11,7 @@ const taskDone = smartpromise.defer();
tap.test('should create an instance of TaskManager', async () => {
myTaskManager = new taskbuffer.TaskManager();
expect(myTaskManager).to.be.instanceof(taskbuffer.TaskManager);
expect(myTaskManager).toBeInstanceOf(taskbuffer.TaskManager);
});
tap.test('should run the task as expected', async () => {
@ -33,7 +34,7 @@ tap.test('should run the task as expected', async () => {
myTaskManager.start();
await myTaskManager.triggerTaskByName('myTask');
// tslint:disable-next-line:no-unused-expression
expect(referenceBoolean).to.be.true;
expect(referenceBoolean).toBeTrue();
});
tap.test('should schedule task', async () => {

View File

@ -1,5 +1,6 @@
import { expect, tap } from '@pushrocks/tapbundle';
import taskbuffer = require('../ts/index');
import * as taskbuffer from '../ts/index.js';
import * as smartpromise from '@pushrocks/smartpromise';
import * as smartdelay from '@pushrocks/smartdelay';
@ -43,22 +44,22 @@ const flowTask3 = new taskbuffer.Taskchain({
tap.test('should let a value flow through a task', async () => {
const result = await flowTask1.trigger(12);
expect(result).to.equal(12);
expect(result).toEqual(12);
});
tap.test('expect values to flow between tasks', async () => {
const result = await flowTask2.trigger(12);
expect(result).to.equal(12);
expect(result).toEqual(12);
});
tap.test('expect values to flow between tasks when buffered', async () => {
const result = await flowTaskBuffered.trigger(12);
expect(result).to.equal(12);
expect(result).toEqual(12);
});
tap.test('expect values to flow between tasks in Taskchain', async () => {
const result = await flowTask3.trigger(12);
expect(result).to.equal(12);
expect(result).toEqual(12);
});
tap.start();

View File

@ -1,6 +1,6 @@
import { expect, tap } from '@pushrocks/tapbundle';
import * as taskbuffer from '../ts/index';
import * as taskbuffer from '../ts/index.js';
let myNumber = 0;
let myTaskOnce: taskbuffer.TaskOnce;
@ -11,18 +11,18 @@ tap.test('should create a valid instance of TaskOnce', async () => {
myNumber++;
},
});
expect(myTaskOnce).to.be.instanceof(taskbuffer.TaskOnce);
expect(myTaskOnce).toBeInstanceOf(taskbuffer.TaskOnce);
});
tap.test('myNumber should still be 0', async () => {
expect(myNumber).to.equal(0);
expect(myNumber).toEqual(0);
});
tap.test('myTaskOnce should trigger once', async () => {
await myTaskOnce.trigger();
await myTaskOnce.trigger();
await myTaskOnce.trigger();
expect(myNumber).to.equal(1);
expect(myNumber).toEqual(1);
});
tap.start();

View File

@ -1,6 +1,6 @@
import { tap, expect } from '@pushrocks/tapbundle';
import * as taskbuffer from '../ts';
import * as taskbuffer from '../ts/index.js';
let preTask: taskbuffer.Task;
let afterTask: taskbuffer.Task;

View File

@ -1,6 +1,6 @@
import { tap, expect } from '@pushrocks/tapbundle';
import * as taskbuffer from '../ts';
import * as taskbuffer from '../ts/index.js';
let counter1 = 0;
let counter2 = 0;

View File

@ -1,5 +1,6 @@
import { tap, expect } from '@pushrocks/tapbundle';
import * as taskbuffer from '../ts/index';
import * as taskbuffer from '../ts/index.js';
let testTaskRunner: taskbuffer.TaskRunner;

View File

@ -1,7 +1,8 @@
export { Task, ITaskFunction } from './taskbuffer.classes.task';
export { Taskchain } from './taskbuffer.classes.taskchain';
export { Taskparallel } from './taskbuffer.classes.taskparallel';
export { TaskManager } from './taskbuffer.classes.taskmanager';
export { TaskOnce } from './taskbuffer.classes.taskonce';
export { TaskRunner } from './taskbuffer.classes.taskrunner';
export { TaskDebounced } from './taskbuffer.classes.taskdebounced';
export { Task } from './taskbuffer.classes.task.js';
export type { ITaskFunction } from './taskbuffer.classes.task.js'
export { Taskchain } from './taskbuffer.classes.taskchain.js';
export { Taskparallel } from './taskbuffer.classes.taskparallel.js';
export { TaskManager } from './taskbuffer.classes.taskmanager.js';
export { TaskOnce } from './taskbuffer.classes.taskonce.js';
export { TaskRunner } from './taskbuffer.classes.taskrunner.js';
export { TaskDebounced } from './taskbuffer.classes.taskdebounced.js';

View File

@ -1,4 +1,4 @@
import { Task } from './taskbuffer.classes.task';
import { Task } from './taskbuffer.classes.task.js';
export class BufferRunner {
public task: Task;

View File

@ -1,5 +1,5 @@
import * as plugins from './taskbuffer.plugins';
import { Task } from './taskbuffer.classes.task';
import * as plugins from './taskbuffer.plugins.js';
import { Task } from './taskbuffer.classes.task.js';
export interface ICycleObject {
cycleCounter: number;

View File

@ -1,8 +1,8 @@
import * as plugins from './taskbuffer.plugins';
import { BufferRunner } from './taskbuffer.classes.bufferrunner';
import { CycleCounter } from './taskbuffer.classes.cyclecounter';
import * as plugins from './taskbuffer.plugins.js';
import { BufferRunner } from './taskbuffer.classes.bufferrunner.js';
import { CycleCounter } from './taskbuffer.classes.cyclecounter.js';
import { logger } from './taskbuffer.logging';
import { logger } from './taskbuffer.logging.js';
export interface ITaskFunction {
(x?: any): PromiseLike<any>;

View File

@ -1,9 +1,9 @@
// TaskChain chains tasks
// and extends Task
import * as plugins from './taskbuffer.plugins';
import { Task } from './taskbuffer.classes.task';
import { logger } from './taskbuffer.logging';
import * as plugins from './taskbuffer.plugins.js';
import { Task } from './taskbuffer.classes.task.js';
import { logger } from './taskbuffer.logging.js';
export class Taskchain extends Task {
taskArray: Task[];

View File

@ -1,6 +1,6 @@
import * as plugins from './taskbuffer.plugins';
import * as plugins from './taskbuffer.plugins.js';
import { Task, ITaskFunction } from './taskbuffer.classes.task';
import { Task, ITaskFunction } from './taskbuffer.classes.task.js';
export class TaskDebounced<T = unknown> extends Task {
private _debouncedTaskFunction: ITaskFunction;

View File

@ -1,6 +1,5 @@
import * as plugins from './taskbuffer.plugins';
import { Task } from './taskbuffer.classes.task';
import { threadId } from 'worker_threads';
import * as plugins from './taskbuffer.plugins.js';
import { Task } from './taskbuffer.classes.task.js';
export interface ICronJob {
cronString: string;

View File

@ -1,6 +1,6 @@
import * as plugins from './taskbuffer.plugins';
import * as plugins from './taskbuffer.plugins.js';
import { Task, ITaskFunction } from './taskbuffer.classes.task';
import { Task, ITaskFunction } from './taskbuffer.classes.task.js';
/**
* TaskOnce is run exactly once, no matter how often it is triggered

View File

@ -1,5 +1,5 @@
import * as plugins from './taskbuffer.plugins';
import { Task } from './taskbuffer.classes.task';
import * as plugins from './taskbuffer.plugins.js';
import { Task } from './taskbuffer.classes.task.js';
export class Taskparallel extends Task {
public taskArray: Task[];

View File

@ -1,6 +1,6 @@
import * as plugins from './taskbuffer.plugins';
import * as plugins from './taskbuffer.plugins.js';
import { Task } from './taskbuffer.classes.task';
import { Task } from './taskbuffer.classes.task.js';
export class TaskRunner {
public maxParrallelJobs: number = 1;

View File

@ -1,3 +1,3 @@
import * as plugins from './taskbuffer.plugins';
import * as plugins from './taskbuffer.plugins.js';
export const logger = new plugins.smartlog.ConsoleLog();

View File

@ -1,17 +0,0 @@
{
"extends": ["tslint:latest", "tslint-config-prettier"],
"rules": {
"semicolon": [true, "always"],
"no-console": false,
"ordered-imports": false,
"object-literal-sort-keys": false,
"member-ordering": {
"options":{
"order": [
"static-method"
]
}
}
},
"defaultSeverity": "warning"
}