fix(core): update
This commit is contained in:
8
ts/00_commitinfo_data.ts
Normal file
8
ts/00_commitinfo_data.ts
Normal file
@ -0,0 +1,8 @@
|
||||
/**
|
||||
* autocreated commitinfo by @pushrocks/commitinfo
|
||||
*/
|
||||
export const commitinfo = {
|
||||
name: '@pushrocks/lik',
|
||||
version: '5.0.5',
|
||||
description: 'light little helpers for node'
|
||||
}
|
18
ts/index.ts
18
ts/index.ts
@ -1,9 +1,9 @@
|
||||
export * from './lik.fastmap';
|
||||
export * from './lik.interestmap';
|
||||
export * from './lik.interestmap.interest';
|
||||
export * from './lik.limitedarray';
|
||||
export * from './lik.looptracker';
|
||||
export * from './lik.objectmap';
|
||||
export * from './lik.stringmap';
|
||||
export * from './lik.timedaggregator';
|
||||
export * from './lik.tree';
|
||||
export * from './lik.fastmap.js';
|
||||
export * from './lik.interestmap.js';
|
||||
export * from './lik.interestmap.interest.js';
|
||||
export * from './lik.limitedarray.js';
|
||||
export * from './lik.looptracker.js';
|
||||
export * from './lik.objectmap.js';
|
||||
export * from './lik.stringmap.js';
|
||||
export * from './lik.timedaggregator.js';
|
||||
export * from './lik.tree.js';
|
||||
|
@ -1,4 +1,9 @@
|
||||
import * as plugins from './lik.plugins';
|
||||
/* ============
|
||||
The FastMap has the goal of creating the fastes to use map possible in JS
|
||||
|
||||
============ */
|
||||
|
||||
import * as plugins from './lik.plugins.js';
|
||||
|
||||
/**
|
||||
* fast map allows for very quick lookups of objects with a unique key
|
||||
|
@ -1,6 +1,6 @@
|
||||
import * as plugins from './lik.plugins';
|
||||
import * as plugins from './lik.plugins.js';
|
||||
|
||||
import { InterestMap, IInterestComparisonFunc } from './lik.interestmap';
|
||||
import { InterestMap, IInterestComparisonFunc } from './lik.interestmap.js';
|
||||
|
||||
export interface IInterestOptions<DTInterestFullfillment> {
|
||||
markLostAfterDefault: number;
|
||||
|
@ -1,6 +1,17 @@
|
||||
import * as plugins from './lik.plugins';
|
||||
import { ObjectMap } from './lik.objectmap';
|
||||
import { Interest } from './lik.interestmap.interest';
|
||||
/* ===========
|
||||
The InterestMap is an mechanism that collects interests into something
|
||||
An interest is expressed by an object, string or number.
|
||||
A comparison func can be specified to make interests comparable
|
||||
|
||||
For every unique interestId an interest is created.
|
||||
Subssequent interests will be mapped to the same interest
|
||||
which is then is only fullfilled once.
|
||||
=========== */
|
||||
|
||||
|
||||
import * as plugins from './lik.plugins.js';
|
||||
import { ObjectMap } from './lik.objectmap.js';
|
||||
import { Interest } from './lik.interestmap.interest.js';
|
||||
|
||||
export type IInterestComparisonFunc<T> = (objectArg: T) => string;
|
||||
|
||||
@ -31,17 +42,17 @@ export class InterestMap<DTInterestId, DTInterestFullfillment> {
|
||||
|
||||
/**
|
||||
* adds an interest to the InterestMap
|
||||
* @param objectArg
|
||||
* @param interestId
|
||||
*/
|
||||
public async addInterest(
|
||||
objectArg: DTInterestId,
|
||||
interestId: DTInterestId,
|
||||
defaultFullfillmentArg?: DTInterestFullfillment
|
||||
): Promise<Interest<DTInterestId, DTInterestFullfillment>> {
|
||||
const comparisonString = this.comparisonFunc(objectArg);
|
||||
const comparisonString = this.comparisonFunc(interestId);
|
||||
let returnInterest: Interest<DTInterestId, DTInterestFullfillment>;
|
||||
const newInterest = new Interest<DTInterestId, DTInterestFullfillment>(
|
||||
this,
|
||||
objectArg,
|
||||
interestId,
|
||||
this.comparisonFunc,
|
||||
{
|
||||
markLostAfterDefault: this.options.markLostAfterDefault,
|
||||
@ -65,12 +76,10 @@ export class InterestMap<DTInterestId, DTInterestFullfillment> {
|
||||
return returnInterest;
|
||||
}
|
||||
|
||||
// tslint:disable-next-line:member-ordering
|
||||
public interestObservable = new plugins.smartrx.ObservableIntake<Interest<DTInterestId, any>>();
|
||||
|
||||
/**
|
||||
* removes an interest from the interest map
|
||||
* @param objectArg removes an interest from the InterestMap
|
||||
*/
|
||||
public removeInterest(interestArg: Interest<DTInterestId, DTInterestFullfillment>) {
|
||||
const interestToRemove = this.interestObjectMap.findOneAndRemoveSync((interestArg2) => {
|
||||
@ -114,10 +123,10 @@ export class InterestMap<DTInterestId, DTInterestFullfillment> {
|
||||
|
||||
/**
|
||||
* finds an interest
|
||||
* @param objectArg
|
||||
* @param interestId
|
||||
*/
|
||||
public findInterest(objectArg: DTInterestId): Interest<DTInterestId, DTInterestFullfillment> {
|
||||
const comparableString = this.comparisonFunc(objectArg);
|
||||
public findInterest(interestId: DTInterestId): Interest<DTInterestId, DTInterestFullfillment> {
|
||||
const comparableString = this.comparisonFunc(interestId);
|
||||
const interest = this.interestObjectMap.findSync((interestArg) => {
|
||||
return interestArg.comparisonString === comparableString;
|
||||
});
|
||||
|
@ -1,4 +1,4 @@
|
||||
import * as plugins from './lik.plugins';
|
||||
import * as plugins from './lik.plugins.js';
|
||||
|
||||
export class LimitedArray<T> {
|
||||
array: T[] = [];
|
||||
|
@ -1,6 +1,6 @@
|
||||
import * as plugins from './lik.plugins';
|
||||
import * as plugins from './lik.plugins.js';
|
||||
|
||||
import { ObjectMap } from './lik.objectmap';
|
||||
import { ObjectMap } from './lik.objectmap.js';
|
||||
|
||||
export class LoopTracker<T> {
|
||||
referenceObjectMap = new ObjectMap<any>();
|
||||
|
@ -1,5 +1,5 @@
|
||||
import * as plugins from './lik.plugins';
|
||||
import { FastMap } from './lik.fastmap';
|
||||
import * as plugins from './lik.plugins.js';
|
||||
import { FastMap } from './lik.fastmap.js';
|
||||
|
||||
export const uni = (prefix: string = 'uni') => {
|
||||
return `${prefix}xxxxxxxxxxx`.replace(/[xy]/g, (c) => {
|
||||
|
@ -12,6 +12,6 @@ export { smartdelay, smartmatch, smartpromise, smartrx, smarttime };
|
||||
// ==============
|
||||
// third party
|
||||
// ==============
|
||||
const symbolTree = require('symbol-tree');
|
||||
import symbolTree from 'symbol-tree';
|
||||
|
||||
export { symbolTree };
|
||||
|
@ -1,4 +1,4 @@
|
||||
import * as plugins from './lik.plugins';
|
||||
import * as plugins from './lik.plugins.js';
|
||||
|
||||
/**
|
||||
* allows you to easily keep track of a bunch of strings
|
||||
|
@ -1,4 +1,4 @@
|
||||
import * as plugins from './lik.plugins';
|
||||
import * as plugins from './lik.plugins.js';
|
||||
|
||||
export interface ITimedAggregatorOptions<T> {
|
||||
aggregationIntervalInMillis: number;
|
||||
|
@ -1,4 +1,4 @@
|
||||
import * as plugins from './lik.plugins';
|
||||
import * as plugins from './lik.plugins.js';
|
||||
|
||||
export class Tree<T> {
|
||||
symbolTree: any;
|
||||
|
Reference in New Issue
Block a user