# frozen_string_literal: true module SewingKit class Configuration attr_accessor :build_options, :dev_server_sewing_kit_bin, :manifest_name, :manifest_path attr_reader :test_manifest_mode def test_manifest_mode=(mode) valid_modes = [:return_no_assets, :use_precompiled_assets] raise "Unknown mode '#{mode}' (valid modes are: #{valid_modes})" unless valid_modes.include?(mode) @test_manifest_mode = mode end def initialize @build_options = nil @manifest_name = 'sewing-kit-manifest.json' @manifest_path = nil @dev_server_sewing_kit_bin = 'node_modules/.bin/sewing-kit' self.test_manifest_mode = :return_no_assets end end def self.configuration @configuration ||= Configuration.new end def self.configure yield(configuration) end end