Class: SvgoOptions

Inherits:
Object
  • Object
show all
Defined in:
lib/svgo.rb

Instance Method Summary collapse

Constructor Details

#initialize {|@options| ... } ⇒ SvgoOptions

Returns a new instance of SvgoOptions.

Yields:

  • (@options)


47
48
49
50
51
52
53
54
55
# File 'lib/svgo.rb', line 47

def initialize
    @options = OpenStruct.new(
        js2svg: OpenStruct.new(pretty: false),
        plugins: PLUGINS_DEFAULT,
        floatPrecision: 6,
        multipass: false
    )
    yield @options if block_given?
end

Instance Method Details

#[](key) ⇒ Object



99
100
101
# File 'lib/svgo.rb', line 99

def [](key)
    @options[key.to_sym]
end

#floatPrecisionObject



83
84
85
# File 'lib/svgo.rb', line 83

def floatPrecision
    @options.floatPrecision
end

#floatPrecision=(arg) ⇒ Object



87
88
89
# File 'lib/svgo.rb', line 87

def floatPrecision=(arg)
    @options.floatPrecision = arg
end

#get_options(*args) ⇒ Object



57
58
59
60
61
# File 'lib/svgo.rb', line 57

def get_options(*args)
    options = @options.to_h
    options[:js2svg] = options[:js2svg].to_h
    options
end

#js2svgObject



67
68
69
# File 'lib/svgo.rb', line 67

def js2svg
    @options.js2svg
end

#js2svg=(arg) ⇒ Object



71
72
73
# File 'lib/svgo.rb', line 71

def js2svg=(arg)
    @options.js2svg = arg
end

#multipassObject



91
92
93
# File 'lib/svgo.rb', line 91

def multipass
    @options.multipass
end

#multipass=(arg) ⇒ Object



95
96
97
# File 'lib/svgo.rb', line 95

def multipass=(arg)
    @options.multipass = arg
end

#pluginsObject



75
76
77
# File 'lib/svgo.rb', line 75

def plugins
    @options.plugins
end

#plugins=(arg) ⇒ Object



79
80
81
# File 'lib/svgo.rb', line 79

def plugins=(arg)
    @options.plugins = arg
end

#to_sObject



63
64
65
# File 'lib/svgo.rb', line 63

def to_s
    get_options.to_json
end