Sha256: 9f4c9cc5a845ba78b4557ba96461d743a47567a78291167b185126e09e959b7f

Contents?: true

Size: 883 Bytes

Versions: 2

Compression:

Stored size: 883 Bytes

Contents

// -----------------------------------------------------------------------------
// Theme constructor
// -----------------------------------------------------------------------------

$bem-theme-namespace: 't' !default;

@function _theme($themes...) {

    // If you try to hack a hack you can break the internet.
    // So please, no one try it.
    $recursive-test: should-not-be-called-recursively('theme');

    $selector: ();
    $namespace: if($bem-use-namespaces, $bem-theme-namespace + '-', '');

    @each $theme in $themes {
      $t: selector-nest('.#{$namespace}#{$theme}', &);
      $selector: append($selector, $t, 'comma');
    }

    $set-current: set-current-context('theme', $themes, $selector);

    @return $selector;
}

@mixin theme($themes...) {

    @at-root #{_theme($themes...)} {
      @content;
    }

    $unset-current: unset-current-context('theme');
}

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
bem-constructor-0.1.1 stylesheets/_theme.scss
bem-constructor-0.1 stylesheets/_theme.scss