class Trailblazer::Activity::DSL::Linear::Sequence

{Sequence} consists of rows. {Sequence row} consisting of {[magnetic_to, task, connections_searches, data]}.

Public Class Methods

apply_adds(sequence, adds) click to toggle source
# File lib/trailblazer/activity/dsl/linear.rb, line 32
def self.apply_adds(sequence, adds)
  adds.each do |add|
    sequence = insert_row(sequence, **add)
  end

  sequence
end
create_row(task:, magnetic_to:, wirings:, **options) click to toggle source

Return {Sequence row} consisting of {[magnetic_to, task, connections_searches, data]}.

# File lib/trailblazer/activity/dsl/linear.rb, line 15
def self.create_row(task:, magnetic_to:, wirings:, **options)
  [
    magnetic_to,
    task,
    wirings,
    options # {id: "Start.success"}
  ]
end
insert_row(sequence, row:, insert:) click to toggle source

@returns Sequence New sequence instance TODO: name it {apply_adds or something}

# File lib/trailblazer/activity/dsl/linear.rb, line 26
def self.insert_row(sequence, row:, insert:)
  insert_function, *args = insert

  insert_function.(sequence, [row], *args)
end