Sha256: 17053dbf9a6e9db0fd420709f1c2ae4e150c167d909e484e8129b3250a322fc2
Contents?: true
Size: 848 Bytes
Versions: 4
Compression:
Stored size: 848 Bytes
Contents
# frozen_string_literal: true module Script module Layers module Domain class ScriptJson attr_reader :content, :version, :title, :description, :configuration_ui, :configuration REQUIRED_FIELDS = %w(version title) def initialize(content:) validate_content!(content) @content = content @version = @content["version"].to_s @title = @content["title"] @description = @content["description"] @configuration_ui = @content.fetch("configurationUi", true) @configuration = @content["configuration"] end private def validate_content!(content) REQUIRED_FIELDS.each do |field| raise Errors::MissingScriptJsonFieldError, field if content[field].nil? end end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems