Sha256: f4c2c9cfd512db9b6a79160514ec9594d53d37953f65ab5a7545fc774d8078ba

Contents?: true

Size: 1.58 KB

Versions: 11

Compression:

Stored size: 1.58 KB

Contents

# frozen_string_literal: true

module Primer
  class Classify
    # Border specific functional colors
    # https://primer-css-git-mkt-color-modes-docs-primer.vercel.app/css/support/v16-migration#border
    class FunctionalBorderColors < FunctionalColors
      FUNCTIONAL_OPTIONS = {
        primary: :primary,
        secondary: :secondary,
        tertiary: :tertiary,
        info: :info,
        success: :success,
        warning: :warning,
        danger: :danger,
        inverse: :inverse,
        overlay: :overlay
      }.freeze

      MAPPINGS = {
        gray: FUNCTIONAL_OPTIONS[:primary],
        gray_light: FUNCTIONAL_OPTIONS[:secondary],
        gray_dark: FUNCTIONAL_OPTIONS[:tertiary],
        blue: FUNCTIONAL_OPTIONS[:info],
        green: FUNCTIONAL_OPTIONS[:success],
        yellow: FUNCTIONAL_OPTIONS[:warning],
        red: FUNCTIONAL_OPTIONS[:danger],
        white: FUNCTIONAL_OPTIONS[:inverse]
      }.freeze

      OPTIONS = FUNCTIONAL_OPTIONS.values.freeze
      OPTIONS_WITHOUT_MAPPINGS = [:gray_darker, :blue_light, :red_light, :purple, :black_fade, :white_fade].freeze
      DEPRECATED_OPTIONS = [*MAPPINGS.keys, *OPTIONS_WITHOUT_MAPPINGS].freeze

      class << self
        def color(val)
          functional_color(
            key: "border",
            value: val,
            mappings: MAPPINGS,
            non_functional_prefix: "border",
            functional_prefix: "color-border",
            number_prefix: "border",
            functional_options: OPTIONS,
            options_without_mappigs: OPTIONS_WITHOUT_MAPPINGS
          )
        end
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
primer_view_components-0.0.38 app/lib/primer/classify/functional_border_colors.rb
primer_view_components-0.0.37 app/lib/primer/classify/functional_border_colors.rb
primer_view_components-0.0.36 app/lib/primer/classify/functional_border_colors.rb
primer_view_components-0.0.35 app/lib/primer/classify/functional_border_colors.rb
primer_view_components-0.0.34 app/lib/primer/classify/functional_border_colors.rb
primer_view_components-0.0.33 app/lib/primer/classify/functional_border_colors.rb
primer_view_components-0.0.32 app/lib/primer/classify/functional_border_colors.rb
primer_view_components-0.0.31 app/lib/primer/classify/functional_border_colors.rb
primer_view_components-0.0.30 app/lib/primer/classify/functional_border_colors.rb
primer_view_components-0.0.29 app/lib/primer/classify/functional_border_colors.rb
primer_view_components-0.0.28 app/lib/primer/classify/functional_border_colors.rb