Sha256: 8333692a3ea48784b53ff1c8397feb5f76b7c00de0007b9c2706d9c12a19fa49
Contents?: true
Size: 1.6 KB
Versions: 3
Compression:
Stored size: 1.6 KB
Contents
# frozen_string_literal: true require 'chamber/configuration' require 'chamber/file_set' require 'chamber/settings' module Chamber class Instance attr_accessor :configuration, :files def initialize(**args) self.configuration = Configuration.new(**args) self.files = FileSet.new(**configuration.to_hash) end def settings @settings ||= files.to_settings { |settings| @settings = settings } end def [](key) settings.[](key) end def dig!(*args) settings.dig!(*args) end def dig(*args) settings.dig(*args) end def filenames files.filenames end def secure files.secure end def sign files.sign end def verify files.verify end def to_environment settings.to_environment end def to_s(**args) settings.to_s(**args) end def to_hash settings.to_hash end def namespaces settings.namespaces end def encrypt(data, **args) config = configuration.to_hash.merge(**args) Settings .new( **config.merge( settings: data, pre_filters: [Filters::EncryptionFilter], post_filters: [], ), ) .to_hash end def decrypt(data, **args) config = configuration.to_hash.merge(**args) Settings .new( **config.merge( settings: data, pre_filters: [Filters::NamespaceFilter], post_filters: [ Filters::DecryptionFilter, Filters::FailedDecryptionFilter, ], ), ) .to_hash end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
chamber-3.0.1 | lib/chamber/instance.rb |
chamber-3.0.0 | lib/chamber/instance.rb |
chamber-3.0.0rc2 | lib/chamber/instance.rb |