Class Sequence<SequenceEvents>

Runs one child chip after another. When done, terminates with output signal of the last chip in the sequence. Optionally can loop back to the first chip.

Type Parameters

Hierarchy

Constructors

Properties

_childChips: Record<string, Chip>
_chipActivationInfos: ChipActivationInfo[] = []
_chipContext: Readonly<Record<string, any>>
_currentChip?: Chip
_currentChipIndex: number = 0
_eventListeners: IEventListener[] = []
_inputSignal?: Signal<string>
_lastTickInfo: TickInfo
_listeners: Listener<SequenceEvents, any>[]
_options: SequenceOptions
_outputSignal?: Signal<string>
_preparation?: ChipResolvable
_reloadMemento?: ReloadMemento
_state: ChipState = "inactive"

Accessors

  • get children(): Record<string, Chip>
  • Children of this chip, if any

    Returns Record<string, Chip>

  • get chipContext(): Readonly<Record<string, any>>
  • Returns Readonly<Record<string, any>>

  • get defaultChildChipContext(): undefined | ChipContextResolvable
  • Template getter for the chip context provided to children. Overload to add extra attributes to the context.

    Returns undefined | ChipContextResolvable

  • get isReady(): boolean
  • Returns boolean

  • get outputSignal(): undefined | Signal<string>
  • Once the chip is terminated, contains the signal

    Returns undefined | Signal<string>

Methods

  • Template method called by resize()

    Parameters

    • width: number
    • height: number

    Returns void

  • Start listening to events of a certain type emitted by an object. The callback will be called with the chip as this. Works by default for both NodeJS- and DOM-style events. If you are interfacing with a different event system, you can provide a subscriptionHandler that knows how to handle it.

    Type Parameters

    • Emitter extends object

    • EventNames extends BaseEventNames

    • EventName extends string

    Parameters

    • emitter: Emitter
    • eventName: EventName
    • cb: ((this, ...args) => void)
        • (this, ...args): void
        • Parameters

          • this: Sequence<SequenceEvents>
          • Rest ...args: EventNames[EventName]

          Returns void

    • Optional subscriptionHandler: SubscriptionHandler

    Returns void

  • Listen to a single event emitted by an object, then stop. The callback will be called with the chip as this. Works by default for both NodeJS- and DOM-style events. If you are interfacing with a different event system, you can provide a subscriptionHandler that knows how to handle them.

    Type Parameters

    • Emitter extends object

    • EventNames extends BaseEventNames

    • EventName extends string

    Parameters

    • emitter: Emitter
    • eventName: EventName
    • cb: ((this, ...args) => void)
        • (this, ...args): void
        • Parameters

          • this: Sequence<SequenceEvents>
          • Rest ...args: EventNames[EventName]

          Returns void

    • Optional subscriptionHandler: SubscriptionHandler

    Returns void

  • Unsubscribe to a set of events. By default, unsubscribes to everything. If emitter, event, or cb is provided, unsubscribe only to those.

    Parameters

    • Optional emitter: NodeEventSource
    • Optional event: string
    • Optional cb: ((...args) => void)
        • (...args): void
        • Parameters

          • Rest ...args: unknown[]

          Returns void

    Returns void

  • Activate the chip, with a provided context and input signal. Should only be called from an inactive state

    Parameters

    • tickInfo: TickInfo
    • chipContext: Readonly<Record<string, any>>
    • Optional inputSignal: Signal<string>
    • Optional reloadMemento: ReloadMemento

    Returns void

  • Type Parameters

    • Name extends string | number | symbol

    Parameters

    • name: Name
    • Rest ...params: SequenceEvents[Name]

    Returns void

  • Type Parameters

    • Name extends string | number | symbol

    Parameters

    • Optional name: Name
    • Optional run: ListenerFunction<SequenceEvents, Name>

    Returns void

  • Type Parameters

    • Name extends string | number | symbol

    Parameters

    • name: Name
    • run: ListenerFunction<SequenceEvents, Name>

    Returns void

  • Type Parameters

    • Name extends string | number | symbol

    Parameters

    • name: Name
    • run: ListenerFunction<SequenceEvents, Name>

    Returns void

  • Pause the chip, informing it that it won't receive ticks for a while

    Returns void

  • Restart the sequence on the first chip

    Returns void

  • Terminate the chip. Should only be called from an active or paused state

    Parameters

    • outputSignal: Signal<string> = ...

    Returns void

  • By default, updates all child chips and remove those that have a signal Overload this method in subclasses to change the behavior

    Parameters

    Returns void

Generated using TypeDoc