@blaze/toggles
v1.2.1
Published
Open Source UI Toolkit - Feature Toggles
Maintainers
Readme
Blaze Feature Toggles
Blaze is a framework-free open source UI toolkit. It provides great structure for building websites quickly with a scalable and maintainable foundation.
https://www.blazeui.com
Using the Toggles
Add the following to your <head></head>.
<script src="https://unpkg.com/@blaze/[email protected]/dist/collection/config.js"></script>
<script src="https://unpkg.com/@blaze/[email protected]/dist/toggles.js"></script>The x.x.x is the specific version of the library, you should use specifc versions to prevent against breaking changes.
Config
Next add some feature toggle config, e.g.
FeatureToggles.set({
welcomeMessage: true,
loginPage: {
rememberMe: 'alpha',
},
});You can call FeatureToggles.set({...}) at anytime to update config. Everytime FeatureToggles.set is called it raises a featureToggleChange event that you can hook into.
set also merges the config with the already set config.
Config values can be either booleans, strings or functions.
Promises are supported.
e.g. the below to toggle the feature after 2 seconds once the promise has resolved.
FeatureToggles.set({
welcomeMessage: true,
loginPage: {
rememberMe: () => new Promise((resolve) => setTimeout(() => resolve('alpha'), 2000)),
},
});HTML
<feature-toggle feature="welcomeMessage">
content will be VISIBLE
</feature-toggle>
<feature-toggle feature="loginPage.rememberMe" variant="alpha">
content will be VISIBLE
</feature-toggle>
<feature-toggle feature="loginPage.rememberMe" variant="beta">
content will be HIDDEN
</feature-toggle>| Setting | Description |
| :-------: | :--------------------------------------------------------------------- |
| feature | Feature config item, supports dot notation |
| variant | The value the toggle must be to turn on this feature (default: true) |
