Class: ModalStack::Configuration

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

Overview

Runtime configuration for the gem. A default instance is created on first access; override via ‘config/initializers/modal_stack.rb`:

ModalStack.configure do |config|
  config.css_provider = :bootstrap
  config.default_size = :lg
  config.replace_turbo_confirm = true
end

Constant Summary collapse

CSS_PROVIDERS =
%i[tailwind bootstrap vanilla none].freeze
ASSETS_MODES =
%i[importmap jsbundling sprockets auto].freeze
VARIANTS =
%i[modal drawer bottom_sheet confirmation].freeze
SIZES =
%i[sm md lg xl].freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/modal_stack/configuration.rb', line 33

def initialize
  @css_provider = :tailwind
  @assets_mode = :auto
  @default_variant = :modal
  @default_size = :md
  @default_dismissible = true
  @max_depth = 5
  @request_header = "X-Modal-Stack-Request"
  @dialog_id = "modal-stack-root"
  @stack_root_data_attribute = "modal-stack"
  @respect_reduced_motion = true
  @replace_turbo_confirm = false
  @i18n_scope = "modal_stack"
  @initializer_version = nil
  @silence_initializer_warning = false
  @default_classes = default_classes_hash
end

Instance Attribute Details

#assets_modeObject

Returns the value of attribute assets_mode.



31
32
33
# File 'lib/modal_stack/configuration.rb', line 31

def assets_mode
  @assets_mode
end

#css_providerObject

Returns the value of attribute css_provider.



31
32
33
# File 'lib/modal_stack/configuration.rb', line 31

def css_provider
  @css_provider
end

#default_classesObject

Returns the value of attribute default_classes.



19
20
21
# File 'lib/modal_stack/configuration.rb', line 19

def default_classes
  @default_classes
end

#default_dismissibleObject

Returns the value of attribute default_dismissible.



19
20
21
# File 'lib/modal_stack/configuration.rb', line 19

def default_dismissible
  @default_dismissible
end

#default_sizeObject

Returns the value of attribute default_size.



31
32
33
# File 'lib/modal_stack/configuration.rb', line 31

def default_size
  @default_size
end

#default_variantObject

Returns the value of attribute default_variant.



31
32
33
# File 'lib/modal_stack/configuration.rb', line 31

def default_variant
  @default_variant
end

#dialog_idObject

Returns the value of attribute dialog_id.



19
20
21
# File 'lib/modal_stack/configuration.rb', line 19

def dialog_id
  @dialog_id
end

#i18n_scopeObject

Returns the value of attribute i18n_scope.



19
20
21
# File 'lib/modal_stack/configuration.rb', line 19

def i18n_scope
  @i18n_scope
end

#initializer_versionObject

Returns the value of attribute initializer_version.



19
20
21
# File 'lib/modal_stack/configuration.rb', line 19

def initializer_version
  @initializer_version
end

#max_depthObject

Returns the value of attribute max_depth.



19
20
21
# File 'lib/modal_stack/configuration.rb', line 19

def max_depth
  @max_depth
end

#replace_turbo_confirmObject

Returns the value of attribute replace_turbo_confirm.



19
20
21
# File 'lib/modal_stack/configuration.rb', line 19

def replace_turbo_confirm
  @replace_turbo_confirm
end

#request_headerObject

Returns the value of attribute request_header.



19
20
21
# File 'lib/modal_stack/configuration.rb', line 19

def request_header
  @request_header
end

#respect_reduced_motionObject

Returns the value of attribute respect_reduced_motion.



19
20
21
# File 'lib/modal_stack/configuration.rb', line 19

def respect_reduced_motion
  @respect_reduced_motion
end

#silence_initializer_warningObject

Returns the value of attribute silence_initializer_warning.



19
20
21
# File 'lib/modal_stack/configuration.rb', line 19

def silence_initializer_warning
  @silence_initializer_warning
end

#stack_root_data_attributeObject

Returns the value of attribute stack_root_data_attribute.



19
20
21
# File 'lib/modal_stack/configuration.rb', line 19

def stack_root_data_attribute
  @stack_root_data_attribute
end