UNPKG

synapse-react-client

Version:

[![npm version](https://badge.fury.io/js/synapse-react-client.svg)](https://badge.fury.io/js/synapse-react-client) [![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettie

77 lines (76 loc) 1.83 kB
import { BUNDLE_MASK_LAST_UPDATED_ON as l, BUNDLE_MASK_SUM_FILES_SIZE_BYTES as _, BUNDLE_MASK_QUERY_FACETS as c, BUNDLE_MASK_QUERY_COLUMN_MODELS as E, BUNDLE_MASK_QUERY_MAX_ROWS_PER_PAGE as y, BUNDLE_MASK_QUERY_SELECT_COLUMNS as d, BUNDLE_MASK_QUERY_COUNT as S, BUNDLE_MASK_QUERY_RESULTS as a } from "../../../utils/SynapseConstants.js"; import { omit as U, cloneDeep as i } from "lodash-es"; import f from "../util/BasicMockedCrudService.js"; const m = { [a]: "queryResult", [S]: "queryCount", [d]: "selectColumns", [y]: "maxRowsPerPage", [E]: "columnModels", [c]: "facets", [_]: "sumFileSizes", [l]: "lastUpdatedOn" }, s = new f({ idField: "id", autoGenerateId: !0 }); function R(e, t) { const r = i(e); return Object.entries(m).forEach(([u, o]) => { (t & parseInt(u)) === 0 && delete r[o]; }), r; } function M(e, t = 25, r = 0) { const u = i(e); return u.queryResult?.queryResults.rows && (u.queryResult.queryResults.rows = u.queryResult.queryResults.rows.slice(r, r + t)), u; } function L(e, t) { let r = t; return r = R(r, e.partMask), r = M( r, e.query.limit, e.query.offset ), r; } function n(e) { return U(i(e), ["limit", "offset"]); } function A(e) { const t = s.getOneByField( "query", e.query ); t ? s.update(t.id, { ...e, id: t.id }) : s.create(e); } function D(e) { const t = n( e.query ), r = s.getOneByField( "query", t ); if (r == null) throw new Error( `mockTableQueryService does not have a query result for the given query: ${JSON.stringify( e, null, 2 )}` ); return L(e, r.result); } function N(e, t) { A({ query: n(e), result: t }); } export { D as getTableQueryResult, N as registerTableQueryResult }; //# sourceMappingURL=tableQueryService.js.map