Socket
Socket
Sign inDemoInstall

dialog-settings

Package Overview
Dependencies
0
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    dialog-settings

SASS/SCSS module settings


Version published
Weekly downloads
8
decreased by-46.67%
Maintainers
1
Created
Weekly downloads
 

Readme

Source

dialog(settings)

dialog(settings) :book:

GitHub version npm version travis build

A simple key value store for module settings, to make modules more portable. With the nice side-effect that all settings can be rendered as native CSS variables. Play with the demo.

Why ⁉️️

  1. Easy way to switch between rendered values and CSS variables.
  2. Better portabily: Only have to rename one string, not tons of variable names as well, when renaming/moving a module.
  3. Warn when variables are missing instead of failing the build. Allows to mock the CSS for a module withought knowing the values for each property.

Before

$module-name: 'mymodule';

$mymodule-background: $colors-dark;
$mymodule-color: $colors-contrast;
$mymodule-margin: 2rem;

.#{$module-name} {
  color: $mymodule-color;
  background: $mymodule-background;
  margin: $mymodule-margin;
}

With dialog(settings)

$module-name: 'mymodule';

@include settings((
  color: $colors-dark,
  background: $colors-contrast,
  margin: 2rem
));

.#{$module-name} {
  color: setting(color);
  background: setting(background);
  margin: setting(margin);
}

Installation 💾

npm install dialog-settings

Basic usage ☝️

  1. Import dialog-settings.scss

    @import 'dialog-settings/dist/dialog-settings';
    

    PS: make sure to add node_modules to your import paths

  2. Setup your module by setting a name-space and calling the setting mixin

    $module-name: 'somerandommodule';
    
    @include settings((
      gutter         : 1rem,
      color          : silver,
      color-contrast : gold
    ));
    
  3. Call the setting() function.

    .#{$module-name} {
      padding: setting('gutter');
      &__submodule {
        color: setting(color);
      }
    }
    
  4. By setting the global variable $module-cssvariables the variable are rendered as CSS variables.

License 👮🏼

Created with ♥ by meodai. Licensed under the MIT License.

Keywords

FAQs

Last updated on 15 Feb 2017

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc