Sha256: 2ce28f7c4f186ae420394a78985a58b713edb5048fbce9e4148359f3e663f124

Contents?: true

Size: 1.12 KB

Versions: 249

Compression:

Stored size: 1.12 KB

Contents

////
/// @group tools/compatibility-mode
////

/// Conditional Compatibility Mixin
///
/// Selectively output a block (available to the mixin as @content) if a given
/// $product is also identified as being used in the project.
///
/// This can then be used to include styles that are only needed to override
/// styles provided by those other products (e.g. where govuk_template has a
/// very specific link selector that otherwise affects buttons).
///
/// @example scss
///   // Override .my-class if GOV.UK Template is also being used
///   @include govuk-compatibility(govuk_template) {
///     .my-class {
///       color: inherit;
///     }
///   }
///
/// @param {String} $product - Name of product that we are 'defending' against.
/// @content Passed content is outputted only if Frontend is being used with
///   this product
/// @throw Errors if product name is not recognised
/// @access public

@mixin govuk-compatibility($product) {
  @if map-has-key($_govuk-compatibility, $product) {
    @if map-get($_govuk-compatibility, $product) == true {
      @content;
    }
  } @else {
    @error "Non existent product '#{$product}'";
  }
}

Version data entries

249 entries across 246 versions & 4 rubygems

Version Path
defra_ruby_template-3.15.1 vendor/assets/stylesheets/tools/_compatibility.scss
defra_ruby_template-3.15.1 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
defra_ruby_template-3.15.0 vendor/assets/stylesheets/tools/_compatibility.scss
defra_ruby_template-3.15.0 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
dxw_govuk_frontend_rails-4.0.0 vendor/assets/stylesheets/tools/_compatibility.scss
govuk_publishing_components-32.1.0 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
govuk_publishing_components-32.0.0 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
govuk_publishing_components-31.2.0 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
govuk_publishing_components-31.1.2 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
govuk_publishing_components-31.1.1 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
govuk_publishing_components-31.1.0 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
govuk_publishing_components-31.0.0 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
govuk_publishing_components-30.7.3 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
govuk_publishing_components-30.7.2 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
govuk_publishing_components-30.7.1 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
govuk_publishing_components-30.7.0 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
govuk_publishing_components-30.6.1 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
govuk_publishing_components-30.6.0 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
govuk_publishing_components-30.5.2 node_modules/govuk-frontend/govuk/tools/_compatibility.scss
govuk_publishing_components-30.5.1 node_modules/govuk-frontend/govuk/tools/_compatibility.scss