1.1.2 • Published 3 years ago

enum-ts v1.1.2

Weekly downloads
3
License
ISC
Repository
github
Last release
3 years ago

enum-ts

usage

import { Enum } from 'enum-ts';

let enumDefine = {
    week: {
        sunday: 0 as 0,
    },
    status: {
        enable: '0' as '0',
        disable: '1' as '1',
    },
    statusOperate: {
        disable: 'disable'
    }
};
let enumChangeDefine = {
    status: {
        [enumDefine.status.enable]: {
            [enumDefine.status.disable]: 'change to disable',
            disable: 'change to disable by operate'
        },
    }
};

let enumInst = Enum.createInstance(enumDefine, enumChangeDefine);
let { week, status } = enumInst;

console.log(`sunday is ${week.sunday}`);
//sunday is 0

try {
    console.log(week.getAllKey());
    //[ 'sunday' ]
    console.log(week.getAllValue());
    //[ 0 ]

    //check can srcEnum change to destEnum
    let result = status.enumChangeCheck(status.enable, status.disable);
    console.log(result);
    //change to disable

    result = status.enumChangeCheck(status.enable, enumDefine.statusOperate.disable);
    console.log(result);
    //change to disable by operate

    result = status.enumChangeCheck(status.disable, status.enable);
    //throw error: 
    //status:[1](disable) can not change to [0](enable)
} catch (e) {
    console.log(e);
}
1.1.2

3 years ago

1.1.1

5 years ago

1.1.0

5 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago