Options
All
  • Public
  • Public/Protected
  • All
Menu

External module "src/modules/todo/observables"

Index

Type aliases

Id

Id<T>: function

Type parameters

  • T

Type declaration

    • (id: T): T
    • Parameters

      • id: T

      Returns T

Variables

_newTodoOperation$

_newTodoOperation$: Observable<object | object | object>

Private Const events$

events$: Subject<object | object | object | object> = new Subject<TodoEvent>()

getNewTodoOperation

getNewTodoOperation: function

Type declaration

    • (): T
    • Returns T

Const handleEvents$

handleEvents$: Observable<never> = events$.pipe(groupBy(event => {if (isFetchEvent(event)) {return EventType.Fetch;} else {return event.todo.id;}},event => event,actionsByGroup$ =>actionsByGroup$.pipe(timeoutWith(15000, EMPTY),ignoreElements())),mergeMap(groupedEvent$ =>groupedEvent$.pipe(switchMap(event => {if (isFetchEvent(event)) {return handleReadEvent(event);} else if (isEditEvent(event)) {return handleEditEvent(event);} else if (isSaveEvent(event)) {return handleSaveEvent(event);}return handleDeleteEvent(event);}))),ignoreElements())
handleEvents$ :: Observable ()

Main observable for handling incoming events that have been dispatched to the events$ Subject. Kind of like a reducer in redux.

It groups the events by type EventType.Fetch or the id of the Todo. and uses switchMap for each group.

Private Const newTodoOperation$

newTodoOperation$: StateObservable<NewTodoOperation> = thruple(_newTodoOperation$.pipe(switchMap(state =>isPending(state)? from(create(state)).pipe(tap(runCreateOutcomeEffect(writeTodos)),map(nextState => (isBad(nextState) ? nextState : makeNoop(""))),startWith(state)): of(state))),setNewTodoOperation,getNewTodoOperation)

setNewTodoOperation

setNewTodoOperation: function

Type declaration

    • (next: T): void
    • Parameters

      • next: T

      Returns void

todos$

todos$: Observable<[object, object | object & object | object & object | object & object | object & object | object & object | object & object][]>

writeTodos

writeTodos: function

Type declaration

    • (next: T): void
    • Parameters

      • next: T

      Returns void

Functions

Const dispatch

Const dispatchFetch

  • dispatchFetch(): void

Const handleDeleteEvent

Const handleEditEvent

  • handleEditEvent(event: EditEvent): Observable<unknown>

Const handleReadEvent

Const handleSaveEvent

  • handleSaveEvent(event: SaveEvent): Observable<unknown>

Const resetOkAndBadTodos

Generated using TypeDoc