Class: BlockStep

Inherits:
Dry::Struct
  • Object
show all
Defined in:
lib/schema.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.from_dynamic!(d) ⇒ Object



547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
# File 'lib/schema.rb', line 547

def self.from_dynamic!(d)
  d = Types::Hash[d]
  new(
    allow_dependency_failure: d["allow_dependency_failure"] ? AllowDependencyFailureUnion.from_dynamic!(d["allow_dependency_failure"]) : nil,
    block: d["block"],
    blocked_state: d["blocked_state"],
    branches: d["branches"] ? Branches.from_dynamic!(d["branches"]) : nil,
    depends_on: d["depends_on"] ? DependsOn.from_dynamic!(d["depends_on"]) : nil,
    fields: d["fields"]&.map { |x| Field.from_dynamic!(x) },
    id: d["id"],
    identifier: d["identifier"],
    block_step_if: d["if"],
    key: d["key"],
    label: d["label"],
    block_step_name: d["name"],
    prompt: d["prompt"],
    block_step_type: d["type"]
  )
end

.from_json!(json) ⇒ Object



567
568
569
# File 'lib/schema.rb', line 567

def self.from_json!(json)
  from_dynamic!(JSON.parse(json))
end

Instance Method Details

#to_dynamicObject



571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
# File 'lib/schema.rb', line 571

def to_dynamic
  {
    "allow_dependency_failure" => allow_dependency_failure&.to_dynamic,
    "block" => block,
    "blocked_state" => blocked_state,
    "branches" => branches&.to_dynamic,
    "depends_on" => depends_on&.to_dynamic,
    "fields" => fields&.map(&:to_dynamic),
    "id" => id,
    "identifier" => identifier,
    "if" => block_step_if,
    "key" => key,
    "label" => label,
    "name" => block_step_name,
    "prompt" => prompt,
    "type" => block_step_type
  }
end

#to_json(options = nil) ⇒ Object



590
591
592
# File 'lib/schema.rb', line 590

def to_json(options = nil)
  JSON.generate(to_dynamic, options)
end