karmia-utility-sequence

0.2.0 • Public • Published

karmia-utility-sequence

Karmia utility sequence module

Usage

Number base sequence

const KarmiaUtilitySequence = require("karmia-utility-sequence");
const Sequence = KarmiaUtilitySequence.default;

const sequence = new Sequence();

Time base sequence

const KarmiaUtilitySequence = require("karmia-utility-sequence");
const Sequence = KarmiaUtilitySequence.default;
const AdapterTime = KarmiaUtilitySequence.KarmiaUtilitySequenceAdapterTime;

const sequence = new Sequence(new AdapterTime());

get

// async / await
const number = await sequence.get();

// Promise
sequence.get().then((number) => {
    // pass
});

How to

Change start number of sequence number

const KarmiaUtilitySequence = require("karmia-utility-sequence");
const Sequence = KarmiaUtilitySequence.default;
const AdapterNumber = KarmiaUtilitySequence.KarmiaUtilitySequenceAdapterNumber;

// In this example sequence number starts with 11
const adapter = new AdapterNumber(10);

const sequence = new Sequence(adapter);

Create own adapter

  1. Extends KarmiaUtilitSequenceAdapter class.
  2. Override init() and get() method.
const KarmiaUtilitySequence = require("karmia-utility-sequence");
const KarmiaUtilitySequenceAdapter = KarmiaUtilitySequence.KarmiaUtilitySequenceAdapter;

class MyAdapter extends KarmiaUtilitySequenceAdapter {
    constructor(initial_value=1) {
        super();
        this.init(initial_value);
    }
    
    init(value) {
        this.sequence = value;
    }
    
    async get() {
        const value = this.sequence * 2;
        this.sequence = value;
        
        return value;
    }
}

Readme

Keywords

none

Package Sidebar

Install

npm i karmia-utility-sequence

Weekly Downloads

4

Version

0.2.0

License

MIT

Unpacked Size

12.7 kB

Total Files

12

Last publish

Collaborators

  • fujimaki-k