Class WaitForEvent<Emitter, EventNames, EventName>

Waits for an event to be delivered, and decides to request a signal depending on the event value.

Handler

is a function of the event arguments, and should return either a signal or a boolean as to whether to signal or not

Type Parameters

  • Emitter extends object

  • EventNames extends Emitter extends ChipBase<infer _EventNames>
        ? _EventNames
        : BaseEventNames

  • EventName extends keyof EventNames & string

Hierarchy

Constructors

  • Type Parameters

    • Emitter extends object

    • EventNames extends BaseEventNames

    • EventName extends string

    Parameters

    • emitter: Emitter
    • eventName: EventName
    • handler: ((...args) => boolean | Signal<string>) = ...
        • (...args): boolean | Signal<string>
        • Parameters

          • Rest ...args: EventNames[EventName]

          Returns boolean | Signal<string>

    Returns WaitForEvent<Emitter, EventNames, EventName>

Properties

_chipContext: Readonly<Record<string, any>>
_eventListeners: IEventListener[] = []
_inputSignal?: Signal<string>
_lastTickInfo: TickInfo
_listeners: Listener<BaseChipBaseEvents, any>[]
_outputSignal?: Signal<string>
_reloadMemento?: ReloadMemento
_state: ChipState = "inactive"
emitter: Emitter
eventName: EventName
handler: ((...args) => boolean | Signal<string>) = ...

Type declaration

    • (...args): boolean | Signal<string>
    • Parameters

      • Rest ...args: EventNames[EventName]

      Returns boolean | Signal<string>

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 outputSignal(): undefined | Signal<string>
  • Once the chip is terminated, contains the signal

    Returns undefined | Signal<string>

Methods

  • Parameters

    • Rest ...args: EventNames[EventName]

    Returns void

  • 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: WaitForEvent<Emitter, EventNames, EventName>
          • 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: WaitForEvent<Emitter, EventNames, EventName>
          • 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

    Parameters

    Returns void

  • Type Parameters

    Parameters

    Returns void

  • Type Parameters

    Parameters

    Returns void

  • Type Parameters

    Parameters

    Returns void

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

    Returns void

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

    Parameters

    • outputSignal: Signal<string> = ...

    Returns void

Generated using TypeDoc