private _resolveCursorResult()

in src/IndexedDbProvider.ts [1042:1065]


  private _resolveCursorResult(
    req: IDBRequest,
    limit?: number,
    offset?: number
  ): Promise<ItemType[]> {
    if (this._fakeComplicatedKeys && this._fakedOriginalStore) {
      // Get based on the keys from the index store, which have refkeys that point back to the original store
      return IndexedDbIndex.getFromCursorRequest<{ key: string; refkey: any }>(
        req,
        limit,
        offset
      ).then((rets) => {
        // Now get the original items using the refkeys from the index store, which are PKs on the main store
        const getters = map(rets, (ret) =>
          IndexedDbProvider.WrapRequest(
            this._fakedOriginalStore!!!.get(ret.refkey)
          )
        );
        return Promise.all(getters);
      });
    } else {
      return IndexedDbIndex.getFromCursorRequest(req, limit, offset);
    }
  }