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: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["getParameters"]; request?: { getParameters: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["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: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["getParameters"]; request?: { getParameters: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["getParameters"] }): CancellablePromise<void>
    • Parameters

      • Optional data: { clear?: boolean; params?: { getParameters: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["getParameters"]; request?: { getParameters: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["getParameters"] }
        • Optional clear?: boolean
        • Optional params?: { getParameters: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["getParameters"]
        • Optional request?: { getParameters: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["getParameters"]

      Returns CancellablePromise<void>

getSingle

getSingle: (data?: { params?: { getParameters: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["getSingleParameters"]; request?: { getParameters: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["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: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["getSingleParameters"]; request?: { getParameters: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["getSingleParameters"] }): CancellablePromise<void>
    • Parameters

      • Optional data: { params?: { getParameters: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["getSingleParameters"]; request?: { getParameters: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["getSingleParameters"] }
        • Optional params?: { getParameters: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["getSingleParameters"]
        • Optional request?: { getParameters: { after?: string; author?: string | number | string[] | number[]; author_exclude?: string | number | string[] | number[]; before?: string; categories?: number[]; categories_exclude?: number[]; context?: "view" | "embed" | "edit"; exclude?: number[]; include?: number[]; offset?: number; order?: "asc" | "desc"; orderby?: "author" | "date" | "id" | "include" | "modified" | "parent" | "relevance" | "slug" | "include_slugs" | "title" | string; page?: number; per_page?: number; search?: string; slug?: string | string[]; status?: PostStatus | PostStatus[]; sticky?: boolean; tags?: number[]; tags_exclude?: number[]; tax_relation?: "AND" | "OR" } & { rcb-cookie-group?: number | number[] | ""; rcb-cookie-group_exclude?: number | number[] }; getSingleParameters: { context?: "view" | "embed" | "edit"; id: number } & {}; model: CookieModel }["getSingleParameters"]

      Returns CancellablePromise<void>

orderCookies

orderCookies: (ids: number[]) => Promise<void> = flow(function* (this: CookieCollection, ids) {this.busy = true;try {yield request<RequestRouteCookiesOrderPut, ParamsRouteCookiesOrderPut, ResponseRouteCookiesOrderPut>({location: locationRestCookiesOrderPut,request: {ids}});// Apply the order to existing cached models instead of fetching againlet i = 0;for (const id of ids) {const cookie = this.entries.get(id);cookie.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

sortedCookies

  • Returns CookieModel[]

Methods

instance

  • Parameters

    • response: CookieModel["data"]

    Returns CookieModel

Static Optional annotate

  • Type parameters

    • T: { constructor: any }

    Parameters

    Returns (Anonymous function)

Generated using TypeDoc