diff --git a/src/LiveQueryClient.ts b/src/LiveQueryClient.ts index 44f1c552f..fc2ce18c9 100644 --- a/src/LiveQueryClient.ts +++ b/src/LiveQueryClient.ts @@ -183,8 +183,8 @@ class LiveQueryClient { * here for more details. The subscription you get is the same subscription you get * from our Standard API. * - * @param {ParseQuery} query - the ParseQuery you want to subscribe to - * @param {string} sessionToken (optional) + * @param {ParseQuery} query The `Parse.Query` to subscribe to. + * @param {string} [sessionToken] Optional session token to use for the subscription. * @returns {LiveQuerySubscription | undefined} */ subscribe(query: ParseQuery, sessionToken?: string): LiveQuerySubscription | undefined { @@ -196,6 +196,7 @@ class LiveQueryClient { const where = queryJSON.where; const keys = queryJSON.keys?.split(','); const watch = queryJSON.watch?.split(','); + const include = queryJSON.include?.split(','); const subscribeRequest = { op: OP_TYPES.SUBSCRIBE, requestId: this.requestId, @@ -204,6 +205,7 @@ class LiveQueryClient { where, keys, watch, + include, }, sessionToken: undefined as string | undefined, }; @@ -294,6 +296,7 @@ class LiveQueryClient { const where = queryJSON.where; const keys = queryJSON.keys?.split(','); const watch = queryJSON.watch?.split(','); + const include = queryJSON.include?.split(','); const className = query.className; const sessionToken = subscription.sessionToken; const subscribeRequest = { @@ -304,6 +307,7 @@ class LiveQueryClient { where, keys, watch, + include, }, sessionToken: undefined as string | undefined, }; diff --git a/src/__tests__/LiveQueryClient-test.js b/src/__tests__/LiveQueryClient-test.js index c8fa0ba0c..22cc1b3d1 100644 --- a/src/__tests__/LiveQueryClient-test.js +++ b/src/__tests__/LiveQueryClient-test.js @@ -789,6 +789,7 @@ describe('LiveQueryClient', () => { }; const query = new ParseQuery('Test'); query.equalTo('key', 'value'); + query.include(['key']); const subscribePromise = liveQueryClient.subscribe(query); const clientSub = liveQueryClient.subscriptions.get(1); @@ -809,6 +810,7 @@ describe('LiveQueryClient', () => { where: { key: 'value', }, + include: ['key'], }, }); }); @@ -826,6 +828,7 @@ describe('LiveQueryClient', () => { }; const query = new ParseQuery('Test'); query.equalTo('key', 'value'); + query.include(['key']); const subscribePromise = liveQueryClient.subscribe(query, 'mySessionToken'); const clientSub = liveQueryClient.subscriptions.get(1); @@ -848,6 +851,7 @@ describe('LiveQueryClient', () => { where: { key: 'value', }, + include: ['key'], }, }); }); @@ -946,6 +950,7 @@ describe('LiveQueryClient', () => { query.equalTo('key', 'value'); query.select(['key']); query.watch(['key']); + query.include(['key']); liveQueryClient.subscribe(query); liveQueryClient.connectPromise.resolve(); @@ -965,6 +970,7 @@ describe('LiveQueryClient', () => { }, keys: ['key'], watch: ['key'], + include: ['key'], }, }); }); @@ -984,6 +990,7 @@ describe('LiveQueryClient', () => { query.equalTo('key', 'value'); query.select(['key']); query.watch(['key']); + query.include(['key']); liveQueryClient.subscribe(query, 'mySessionToken'); liveQueryClient.connectPromise.resolve(); @@ -1004,6 +1011,7 @@ describe('LiveQueryClient', () => { }, keys: ['key'], watch: ['key'], + include: ['key'], }, }); }); diff --git a/types/LiveQueryClient.d.ts b/types/LiveQueryClient.d.ts index 4f41545dc..3a7801a81 100644 --- a/types/LiveQueryClient.d.ts +++ b/types/LiveQueryClient.d.ts @@ -92,8 +92,8 @@ declare class LiveQueryClient { * here for more details. The subscription you get is the same subscription you get * from our Standard API. * - * @param {ParseQuery} query - the ParseQuery you want to subscribe to - * @param {string} sessionToken (optional) + * @param {ParseQuery} query The `Parse.Query` to subscribe to. + * @param {string} [sessionToken] Optional session token to use for the subscription. * @returns {LiveQuerySubscription | undefined} */ subscribe(query: ParseQuery, sessionToken?: string): LiveQuerySubscription | undefined;