lib/isomorfeus/preact/config.rb in isomorfeus-preact-10.5.1 vs lib/isomorfeus/preact/config.rb in isomorfeus-preact-10.5.2

- old
+ new

@@ -59,10 +59,11 @@ client_init_after_store_class_names.each do |constant| constant.constantize.send(:init) end end + # server side env is set in isomorfeus-asset-manager def env=(env_string) @env = env_string ? env_string : 'development' @development = (@env == 'development') ? true : false @production = (@env == 'production') ? true : false @test = (@env == 'test') ? true : false @@ -110,11 +111,10 @@ else class << self attr_reader :component_cache_init_block attr_accessor :server_side_rendering attr_accessor :ssr_hot_asset_url - attr_reader :env attr_accessor :zeitwerk attr_accessor :zeitwerk_lock def component_cache_init(&block) @component_cache_init_block = block @@ -122,29 +122,10 @@ def configuration(&block) block.call(self) end - def env=(env_string) - @env = env_string ? env_string.to_s : 'development' - @development = (@env == 'development') ? true : false - @production = (@env == 'production') ? true : false - @test = (@env == 'test') ? true : false - end - - def development? - @development - end - - def production? - @production - end - - def test? - @test - end - def ssr_contexts @ssr_contexts ||= {} end def version @@ -158,31 +139,36 @@ end end end class << self - def raise_error(error_class: nil, message: nil, stack: nil) + def raise_error(error: nil, error_class: nil, message: nil, stack: nil) + error_class = error.class unless error == nil + error_class = RuntimeError unless error_class execution_environment = if on_browser? then 'on Browser' elsif on_ssr? then 'in Server Side Rendering' elsif on_server? then 'on Server' elsif on_mobile? then 'on Mobile' elsif on_database? then 'on Database' else 'on Client' end - error = error_class.new("Isomorfeus in #{env} #{execution_environment}:\n#{message}") - error.set_backtrace(stack) if stack + if error + message = error.message + stack = error.backtrace + else + error = error_class.new("Isomorfeus in #{env} #{execution_environment}:\n#{message}") + error.set_backtrace(stack) if stack + end - if Isomorfeus.development? - if RUBY_ENGINE == 'opal' - ecn = error_class ? error_class.name : '' - m = message ? message : '' - s = stack ? stack : '' - `console.error(ecn, m, s)` - else - STDERR.puts "#{ecn}: #{m}\n #{s}" - end + ecn = error_class ? error_class.name : '' + m = message ? message : '' + s = stack ? stack : '' + if RUBY_ENGINE == 'opal' + `console.error(ecn, m, s)` if Isomorfeus.development? + else + STDERR.puts "#{ecn}: #{m}\n #{s.is_a?(Array) ? s.join("\n") : s}" end raise error end end end