Sha256: cba1f36bc79e8a2878a28fb6cc537272c970e05d383b9e8f90e6b781b4ae01a4

Contents?: true

Size: 728 Bytes

Versions: 2

Compression:

Stored size: 728 Bytes

Contents

require 'json'

module WebammToRails
  module Sources
    module PackageJson
      class Definition
        def initialize(waml_definition:)
          @waml_definition = waml_definition
        end

        def render
          template_path = File.expand_path('template.erb', __dir__)
          template_content = File.read(template_path)
          raw_content = ERB.new(template_content, trim_mode: '-').result(instance_eval { binding })

          JSON.parse(raw_content).to_json
        end

        private

        def use_actioncable?
          @waml_definition.authentication.present? && @waml_definition.authentication.any? { |auth| auth.features.include?('online_indication') }
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
webamm_to_rails-7.0.1 lib/webamm_to_rails/sources/package_json/definition.rb
webamm_to_rails-7.0.0 lib/webamm_to_rails/sources/package_json/definition.rb