Files
new-website-jekyll-theme/_plugins/to_sass_variable.rb
2025-03-03 17:54:25 -03:00

36 lines
772 B
Ruby

# frozen_string_literal: true
module ToSassVariable
# Convierte un valor de Ruby en una variable de SASS
#
# @param input [any]
def to_sass_variable(input)
case input
when Array
"(#{
input.map do |values|
to_sass_variable(values)
end.join(',')
})"
when Hash
"(#{
input.each_pair.map do |key, values|
"\"#{key}\": #{to_sass_variable(values)}"
end.join(',')
})"
else input
end
end
# Define variables globales de SASS a partir de un Hash
#
# @param input [Hash]
def to_sass_global(input)
input.each_pair.map do |key, values|
"$#{key}: #{to_sass_variable(values)}"
end.join(';') << ';'
end
end
Liquid::Template.register_filter(ToSassVariable)