1.0.3 • Published 2 years ago

@nuskin/feature-toggle v1.0.3

Weekly downloads
-
License
-
Repository
-
Last release
2 years ago

This library is used to load the feature toggles and check if they are enabled

Installation

Via yarn

yarn add @nuskin/feature-toggle

Via npm

npm install @nuskin/feature-toggle

Usage

To get started on using this package you must first wrap your components with the FeatureToggleProvider

const Main = () => {
    
    return (
        <FeatureToggleProvider config={...some_config}>
            <MyComponent />
        </FeatureToggleProvider>
    )
};

Once it is wrap you can now proceed with using the useFeatureToggle (see example below)

const MyComponent = () => {
    const featureToggle = useFeatureToggle();

    return (
        featureToggle.isEnabled('key') && <Text>Some text here</Text>
    );
}

Types

FeatureItem

Type for each feature toggle

PropertyTypeDescription
fIdstringA unique identifier for the Feature
namestringAny string to easily identify the Feature.
enabledbooleanAct like a master switch that will indicated that the feature is turned on or off.
enabledForUserIdstring[]Enable the feature for the listed user id's (this override the disabledForMarket).
disabledForMarketstring[]Disable the feature for the listed markets.

FeatureToggleOption

Options use to determine whether to enabled / disabled the feature.

PropertyTypeDescription
distIdstringAny unique identifier of the user.
marketstringA valid ISO 3166-1 alpha-2 country code.

FeatureToggleConfig

Possible configuration for this package.

PropertyTypeRequiredDescription
baseUrlstringfalseBase url to be use. (default: https://graphql.contentstack.com)
stackApiKeystringtrueAs defined on client ContentStack
deliveryTokenstringtrueAs defined on client ContentStack
querystringfalseQuery string to be use
isDevbooleantrueIndicates if current configuration is for development only. (default: true)
environmentstringtrueEnvironment name as indicated on client ContentStack.
withPollingbooleanfalseIndicates whether to allow polling (default: false)
intervalnumberfalseInterval to which the poll will start in milliseconds. (default: 900000 )
1.0.3

2 years ago

1.0.3-0

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.1-test.0

2 years ago

1.0.0

2 years ago

0.0.1-test.5

2 years ago

0.0.1-test.4

2 years ago

0.0.1-test.3

2 years ago

0.0.1-test.2

2 years ago

0.0.1-test.1

2 years ago

0.0.1-test.0

2 years ago