Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

Index

Constructors

constructor

Properties

Optional Readonly annotated

busy

busy: boolean = false

entries

entries: Map<T["model"]["key"], T["model"]> = new Map<T["model"]["key"], T["model"]>()

get

get: (data?: { clear?: boolean; params?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getParameters"]; request?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getParameters"] }) => CancellablePromise<void> = flow(function* (this: ClientCollection<any>, data) {const { request, params, clear = false } = data || {};this.busy = true;try {const { path, namespace } = this.annotated;const response: T["response"] = yield this.annotated.request<T["getParameters"],T["getParameters"],T["response"]>({location: {path,method: ERouteHttpVerb.GET,namespace},request,params});// Save cookies as modelsclear && this.entries.clear();for (const row of response) {const instance = this.instance(row) as T["model"];const existing = this.entries.get(instance.key);if (!existing) {this.entries.set(instance.key, instance);} else {// Update stale dataexisting.data = instance.data;}}} catch (e) {console.log(e);throw e;} finally {this.busy = false;}})

Type declaration

    • (data?: { clear?: boolean; params?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getParameters"]; request?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getParameters"] }): CancellablePromise<void>
    • Parameters

      • Optional data: { clear?: boolean; params?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getParameters"]; request?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getParameters"] }
        • Optional clear?: boolean
        • Optional params?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getParameters"]
        • Optional request?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getParameters"]

      Returns CancellablePromise<void>

getSingle

getSingle: (data?: { params?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getSingleParameters"]; request?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getSingleParameters"] }) => CancellablePromise<void> = flow(function* (this: ClientCollection<any>, data) {if (!this.annotated.singlePath) {throw new Error("There is no getSingle method allowed");}const { request, params } = data || {};this.busy = true;try {const { singlePath, namespace } = this.annotated;const row: T["response"] = yield this.annotated.request<T["getSingleParameters"],T["getSingleParameters"],T["response"]>({location: {path: singlePath,method: ERouteHttpVerb.GET,namespace},request,params});// Save cookie as modelconst instance = this.instance(row) as T["model"];this.entries.set(instance.key, instance);} catch (e) {console.log(e);throw e;} finally {this.busy = false;}})

Type declaration

    • (data?: { params?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getSingleParameters"]; request?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getSingleParameters"] }): CancellablePromise<void>
    • Parameters

      • Optional data: { params?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getSingleParameters"]; request?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getSingleParameters"] }
        • Optional params?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getSingleParameters"]
        • Optional request?: { getParameters: { context?: "view" | "embed" | "edit"; exclude?: number[]; hide_empty?: boolean; include?: number[]; order?: "asc" | "desc"; orderby?: "id" | "include" | "name" | "slug" | "include_slugs" | "term_group" | "description" | "count" | string; page?: number; parent?: number; per_page?: number; post?: number; search?: string; slug?: string | string[] } & {}; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieGroupModel }["getSingleParameters"]

      Returns CancellablePromise<void>

orderCookieGroups

orderCookieGroups: (ids: number[]) => Promise<void> = flow(function* (this: CookieGroupCollection, ids) {this.busy = true;try {yield request<RequestRouteCookieGroupOrderPut,ParamsRouteCookieGroupOrderPut,ResponseRouteCookieGroupOrderPut>({location: locationRestCookieGroupOrderPut,request: {ids}});// Apply the order to existing cached models instead of fetching againlet i = 0;for (const id of ids) {const group = this.entries.get(id);group.setOrder(i);i++;}} catch (e) {console.log(e);throw e;} finally {this.busy = false;}})

Type declaration

    • (ids: number[]): Promise<void>
    • Parameters

      • ids: number[]

      Returns Promise<void>

Readonly store

Accessors

sortedGroups

  • Returns CookieGroupModel[]

Methods

instance

  • Parameters

    • response: CookieGroupModel["data"]

    Returns CookieGroupModel

Static Optional annotate

  • Type parameters

    • T: { constructor: any }

    Parameters

    Returns (Anonymous function)

Generated using TypeDoc