Implementation of feature flags functionality in Typescript.
Package | mrlm-net/flagz |
---|---|
NPM name | @mrlm/flagz |
NPM version | |
Latest version | |
License |
I'm using
YARN
so examples will be using it, you can install this package via any Node Package Manager.
$ yarn add @mrlm/flagz
import Flagger from '@mrlm/flagz';
const flagger = new Flagger();
flagger.set('FEATURE_A', true);
console.log(flagger.get('FEATURE_A')); // true
console.log(flagger.get('FEATURE_B')); // false
const flagger = new Flagger();
flagger.set('FEATURE_A.SUB_FEATURE_A1', true);
console.log(flagger.get('FEATURE_A.SUB_FEATURE_A1')); // true
console.log(flagger.get('FEATURE_A.SUB_FEATURE_A2')); // false
const flagger = new Flagger({}, { separator: '/' });
flagger.set('FEATURE_A/SUB_FEATURE_A1', true);
console.log(flagger.get('FEATURE_A/SUB_FEATURE_A1')); // true
const flagger = new Flagger();
flagger.addFlags({ FEATURE_C: true, FEATURE_D: { SUB_FEATURE_D1: false } });
console.log(flagger.get('FEATURE_C')); // true
console.log(flagger.get('FEATURE_D.SUB_FEATURE_D1')); // false
const flagger = new Flagger();
flagger.setFlags({ FEATURE_E: true, FEATURE_F: { SUB_FEATURE_F1: false } });
console.log(flagger.get('FEATURE_E')); // true
console.log(flagger.get('FEATURE_F.SUB_FEATURE_F1')); // false
export interface FlaggerOptions {
separator?: string;
}
Contributions are welcomed and must follow Code of Conduct and common Contributions guidelines.
If you'd like to report security issue please follow security guidelines.
All rights reserved © Martin Hrášek <@marley-ma> and WANTED.solutions s.r.o. <@wanted-solutions>