From 092b08904cc9ef6c766f12b67cf92071c812edb5 Mon Sep 17 00:00:00 2001 From: Tim Shnaider Date: Fri, 1 Dec 2017 15:43:13 +1300 Subject: [PATCH] Support fields in Live Query subscriptions --- src/LiveQueryClient.js | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/LiveQueryClient.js b/src/LiveQueryClient.js index e6a43a273..3dcbb51e0 100644 --- a/src/LiveQueryClient.js +++ b/src/LiveQueryClient.js @@ -186,14 +186,17 @@ export default class LiveQueryClient extends EventEmitter { if (!query) { return; } - let where = query.toJSON().where; let className = query.className; + let queryJSON = query.toJSON(); + let where = queryJSON.where; + let fields = queryJSON.keys ? queryJSON.keys.split(',') : undefined; let subscribeRequest = { op: OP_TYPES.SUBSCRIBE, requestId: this.requestId, query: { className, - where + where, + fields } }; @@ -277,7 +280,9 @@ export default class LiveQueryClient extends EventEmitter { resubscribe() { this.subscriptions.forEach((subscription, requestId) => { let query = subscription.query; - let where = query.toJSON().where; + let queryJSON = query.toJSON(); + let where = queryJSON.where; + let fields = queryJSON.keys ? queryJSON.keys.split(',') : undefined; let className = query.className; let sessionToken = subscription.sessionToken; let subscribeRequest = { @@ -285,7 +290,8 @@ export default class LiveQueryClient extends EventEmitter { requestId, query: { className, - where + where, + fields } };