@instantdb/admin
Advanced tools
+18
-0
@@ -68,2 +68,9 @@ import { tx, TransactionChunk } from "@instantdb/core"; | ||
| }; | ||
| declare type ImpersonationOpts = { | ||
| email: string; | ||
| } | { | ||
| token: AuthToken; | ||
| } | { | ||
| guest: true; | ||
| }; | ||
| declare const id: any; | ||
@@ -103,4 +110,15 @@ /** | ||
| auth: Auth; | ||
| impersonationOpts?: ImpersonationOpts; | ||
| constructor(_config: Config); | ||
| /** | ||
| * Sometimes you want to scope queries to a specific user. | ||
| * | ||
| * You can provide a user's auth token, email, or impersonate a guest. | ||
| * | ||
| * @see https://docs.instantdb.com/docs/backend#impersonating-users | ||
| * @example | ||
| * await db.asUser({email: "stopa@instantdb.com"}).query({ goals: {} }) | ||
| */ | ||
| asUser: (opts: ImpersonationOpts) => InstantAdmin<Schema>; | ||
| /** | ||
| * Use this to query your data! | ||
@@ -107,0 +125,0 @@ * |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} |
+33
-4
@@ -49,5 +49,17 @@ "use strict"; | ||
| } | ||
| function authorizedHeaders(config) { | ||
| function withImpersonation(headers, opts) { | ||
| if ("email" in opts) { | ||
| headers["as-email"] = opts.email; | ||
| } | ||
| else if ("token" in opts) { | ||
| headers["as-token"] = opts.token; | ||
| } | ||
| else if ("guest" in opts) { | ||
| headers["as-guest"] = "true"; | ||
| } | ||
| return headers; | ||
| } | ||
| function authorizedHeaders(config, impersonationOpts) { | ||
| const { adminToken, appId } = config; | ||
| return { | ||
| const headers = { | ||
| "content-type": "application/json", | ||
@@ -57,2 +69,5 @@ authorization: `Bearer ${adminToken}`, | ||
| }; | ||
| return impersonationOpts | ||
| ? withImpersonation(headers, impersonationOpts) | ||
| : headers; | ||
| } | ||
@@ -104,2 +119,16 @@ function jsonFetch(input, init) { | ||
| /** | ||
| * Sometimes you want to scope queries to a specific user. | ||
| * | ||
| * You can provide a user's auth token, email, or impersonate a guest. | ||
| * | ||
| * @see https://docs.instantdb.com/docs/backend#impersonating-users | ||
| * @example | ||
| * await db.asUser({email: "stopa@instantdb.com"}).query({ goals: {} }) | ||
| */ | ||
| this.asUser = (opts) => { | ||
| const newClient = new InstantAdmin(Object.assign({}, this.config)); | ||
| newClient.impersonationOpts = opts; | ||
| return newClient; | ||
| }; | ||
| /** | ||
| * Use this to query your data! | ||
@@ -122,3 +151,3 @@ * | ||
| method: "POST", | ||
| headers: authorizedHeaders(this.config), | ||
| headers: authorizedHeaders(this.config, this.impersonationOpts), | ||
| body: JSON.stringify({ query: query }), | ||
@@ -155,3 +184,3 @@ }); | ||
| method: "POST", | ||
| headers: authorizedHeaders(this.config), | ||
| headers: authorizedHeaders(this.config, this.impersonationOpts), | ||
| body: JSON.stringify({ steps: steps }), | ||
@@ -158,0 +187,0 @@ }); |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} |
@@ -68,2 +68,9 @@ import { tx, TransactionChunk } from "@instantdb/core"; | ||
| }; | ||
| declare type ImpersonationOpts = { | ||
| email: string; | ||
| } | { | ||
| token: AuthToken; | ||
| } | { | ||
| guest: true; | ||
| }; | ||
| declare const id: any; | ||
@@ -103,4 +110,15 @@ /** | ||
| auth: Auth; | ||
| impersonationOpts?: ImpersonationOpts; | ||
| constructor(_config: Config); | ||
| /** | ||
| * Sometimes you want to scope queries to a specific user. | ||
| * | ||
| * You can provide a user's auth token, email, or impersonate a guest. | ||
| * | ||
| * @see https://docs.instantdb.com/docs/backend#impersonating-users | ||
| * @example | ||
| * await db.asUser({email: "stopa@instantdb.com"}).query({ goals: {} }) | ||
| */ | ||
| asUser: (opts: ImpersonationOpts) => InstantAdmin<Schema>; | ||
| /** | ||
| * Use this to query your data! | ||
@@ -107,0 +125,0 @@ * |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"} |
+33
-4
@@ -21,5 +21,17 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
| } | ||
| function authorizedHeaders(config) { | ||
| function withImpersonation(headers, opts) { | ||
| if ("email" in opts) { | ||
| headers["as-email"] = opts.email; | ||
| } | ||
| else if ("token" in opts) { | ||
| headers["as-token"] = opts.token; | ||
| } | ||
| else if ("guest" in opts) { | ||
| headers["as-guest"] = "true"; | ||
| } | ||
| return headers; | ||
| } | ||
| function authorizedHeaders(config, impersonationOpts) { | ||
| const { adminToken, appId } = config; | ||
| return { | ||
| const headers = { | ||
| "content-type": "application/json", | ||
@@ -29,2 +41,5 @@ authorization: `Bearer ${adminToken}`, | ||
| }; | ||
| return impersonationOpts | ||
| ? withImpersonation(headers, impersonationOpts) | ||
| : headers; | ||
| } | ||
@@ -75,2 +90,16 @@ function jsonFetch(input, init) { | ||
| /** | ||
| * Sometimes you want to scope queries to a specific user. | ||
| * | ||
| * You can provide a user's auth token, email, or impersonate a guest. | ||
| * | ||
| * @see https://docs.instantdb.com/docs/backend#impersonating-users | ||
| * @example | ||
| * await db.asUser({email: "stopa@instantdb.com"}).query({ goals: {} }) | ||
| */ | ||
| this.asUser = (opts) => { | ||
| const newClient = new InstantAdmin(Object.assign({}, this.config)); | ||
| newClient.impersonationOpts = opts; | ||
| return newClient; | ||
| }; | ||
| /** | ||
| * Use this to query your data! | ||
@@ -93,3 +122,3 @@ * | ||
| method: "POST", | ||
| headers: authorizedHeaders(this.config), | ||
| headers: authorizedHeaders(this.config, this.impersonationOpts), | ||
| body: JSON.stringify({ query: query }), | ||
@@ -126,3 +155,3 @@ }); | ||
| method: "POST", | ||
| headers: authorizedHeaders(this.config), | ||
| headers: authorizedHeaders(this.config, this.impersonationOpts), | ||
| body: JSON.stringify({ steps: steps }), | ||
@@ -129,0 +158,0 @@ }); |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,EAAE,EAAoB,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAiF7B,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;AAEnB,SAAS,kBAAkB,CAAC,MAAc;IACxC,MAAM,aAAa,GAAG;QACpB,MAAM,EAAE,2BAA2B;KACpC,CAAC;IACF,MAAM,CAAC,mCAAQ,aAAa,GAAK,MAAM,CAAE,CAAC;IAC1C,cAAc,GAAG,CAAC,CAAC;IACnB,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAoB;IAC7C,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IACrC,OAAO;QACL,cAAc,EAAE,kBAAkB;QAClC,aAAa,EAAE,UAAU,UAAU,EAAE;QACrC,QAAQ,EAAE,KAAK;KAChB,CAAC;AACJ,CAAC;AAED,SAAe,SAAS,CACtB,KAAkB,EAClB,IAA6B;;QAE7B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACrC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO,GAAG,CAAC,MAAM,KAAK,GAAG;YACvB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;YACvB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;CAAA;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAS,IAAI,CAAc,MAAc;IACvC,OAAO,IAAI,YAAY,CAAS,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,YAAY;IAIhB,YAAY,OAAe;QAK3B;;;;;;;;;;;;;;WAcG;QACH,UAAK,GAAG,CACN,KAAwB,EACW,EAAE;YACrC,OAAO,SAAS,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,cAAc,EAAE;gBACpD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC;gBACvC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;aACvC,CAAC,CAAC;QACL,CAAC,CAAC;QAEF;;;;;;;;;;;;;;;;;;;;;;WAsBG;QACH,aAAQ,GAAG,CAAC,WAAkD,EAAE,EAAE;YAChE,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YACxE,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YACjD,OAAO,SAAS,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,iBAAiB,EAAE;gBACvD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC;gBACvC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;aACvC,CAAC,CAAC;QACL,CAAC,CAAC;QA5DA,IAAI,CAAC,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;CA2DF;AAED,MAAM,IAAI;IAGR,YAAY,MAAoB;QAIhC;;;;;;;;;;;;;;WAcG;QACH,gBAAW,GAAG,CAAO,KAAa,EAAsB,EAAE;YACxD,MAAM,GAAG,GAAwC,MAAM,SAAS,CAC9D,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,uBAAuB,EAC5C;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC;gBACvC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;aAChC,CACF,CAAC;YACF,OAAO,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC;QAChC,CAAC,CAAA,CAAC;QAEF;;;;;;;;;;;;;;;WAeG;QACH,gBAAW,GAAG,CAAO,KAAgB,EAAiB,EAAE;YACtD,MAAM,GAAG,GAAG,MAAM,SAAS,CACzB,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,oCAAoC,EACzD;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;oBAC3B,eAAe,EAAE,KAAK;iBACvB,CAAC;aACH,CACF,CAAC;YACF,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC,CAAA,CAAC;QA3DA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CA2DF;AAED,OAAO,EACL,IAAI,EACJ,EAAE,EACF,EAAE,GAIH,CAAC;AAEF,qBAAqB;AAErB,SAAS,MAAM,CAAC,SAAc,EAAE,GAAY;IAC1C,IAAI,CAAC,SAAS,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,GAAG,CAAC,CAAC;KAC7C;AACH,CAAC;AAED;;GAEG;AACH,IAAI,cAAc,GAA6B,SAAS,CAAC;AAEzD,SAAS,SAAS;IAChB,MAAM,CACJ,cAAc,EACd,iEAAiE;QAC/D,0CAA0C,CAC7C,CAAC;IACF,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,IAAI,GAAG;IACX;;;;;;;;;;;;;;OAcG;IACG,WAAW,CAAC,KAAa;;YAC7B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAwC,MAAM,SAAS,CAC9D,GAAG,MAAM,CAAC,MAAM,uBAAuB,EACvC;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC;gBAClC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;aAChC,CACF,CAAC;YACF,OAAO,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC;QAChC,CAAC;KAAA;IACD;;;;;;;;;;;;;;;OAeG;IACG,WAAW,CAAC,KAAgB;;YAChC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAG,MAAM,SAAS,CACzB,GAAG,MAAM,CAAC,MAAM,oCAAoC,EACpD;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,QAAQ,EAAE,MAAM,CAAC,KAAK;oBACtB,eAAe,EAAE,KAAK;iBACvB,CAAC;aACH,CACF,CAAC;YACF,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC;KAAA;CACF,CAAC;AAEF;;;GAGG;AACH,SAAS,KAAK,CACZ,KAAwB;IAExB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,OAAO,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,cAAc,EAAE;QAC/C,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC;QAClC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;KACvC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAS,QAAQ,CAAC,WAAkD;IAClE,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACxE,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,OAAO,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,iBAAiB,EAAE;QAClD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC;QAClC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;KACvC,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC"} | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,EAAE,EAAoB,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAqF7B,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;AAEnB,SAAS,kBAAkB,CAAC,MAAc;IACxC,MAAM,aAAa,GAAG;QACpB,MAAM,EAAE,2BAA2B;KACpC,CAAC;IACF,MAAM,CAAC,mCAAQ,aAAa,GAAK,MAAM,CAAE,CAAC;IAC1C,cAAc,GAAG,CAAC,CAAC;IACnB,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,iBAAiB,CACxB,OAAkC,EAClC,IAAuB;IAEvB,IAAI,OAAO,IAAI,IAAI,EAAE;QACnB,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;KAClC;SAAM,IAAI,OAAO,IAAI,IAAI,EAAE;QAC1B,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;KAClC;SAAM,IAAI,OAAO,IAAI,IAAI,EAAE;QAC1B,OAAO,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC;KAC9B;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,iBAAiB,CACxB,MAAoB,EACpB,iBAAqC;IAErC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IACrC,MAAM,OAAO,GAAG;QACd,cAAc,EAAE,kBAAkB;QAClC,aAAa,EAAE,UAAU,UAAU,EAAE;QACrC,QAAQ,EAAE,KAAK;KAChB,CAAC;IACF,OAAO,iBAAiB;QACtB,CAAC,CAAC,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,CAAC;QAC/C,CAAC,CAAC,OAAO,CAAC;AACd,CAAC;AAED,SAAe,SAAS,CACtB,KAAkB,EAClB,IAA6B;;QAE7B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACrC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO,GAAG,CAAC,MAAM,KAAK,GAAG;YACvB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;YACvB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;CAAA;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAS,IAAI,CAAc,MAAc;IACvC,OAAO,IAAI,YAAY,CAAS,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,YAAY;IAKhB,YAAY,OAAe;QAK3B;;;;;;;;WAQG;QACH,WAAM,GAAG,CAAC,IAAuB,EAAwB,EAAE;YACzD,MAAM,SAAS,GAAG,IAAI,YAAY,mBAAc,IAAI,CAAC,MAAM,EAAG,CAAC;YAC/D,SAAS,CAAC,iBAAiB,GAAG,IAAI,CAAC;YACnC,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC;QAEF;;;;;;;;;;;;;;WAcG;QACH,UAAK,GAAG,CACN,KAAwB,EACW,EAAE;YACrC,OAAO,SAAS,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,cAAc,EAAE;gBACpD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC;gBAC/D,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;aACvC,CAAC,CAAC;QACL,CAAC,CAAC;QAEF;;;;;;;;;;;;;;;;;;;;;;WAsBG;QACH,aAAQ,GAAG,CAAC,WAAkD,EAAE,EAAE;YAChE,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YACxE,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YACjD,OAAO,SAAS,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,iBAAiB,EAAE;gBACvD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC;gBAC/D,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;aACvC,CAAC,CAAC;QACL,CAAC,CAAC;QA3EA,IAAI,CAAC,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;CA0EF;AAED,MAAM,IAAI;IAGR,YAAY,MAAoB;QAIhC;;;;;;;;;;;;;;WAcG;QACH,gBAAW,GAAG,CAAO,KAAa,EAAsB,EAAE;YACxD,MAAM,GAAG,GAAwC,MAAM,SAAS,CAC9D,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,uBAAuB,EAC5C;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC;gBACvC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;aAChC,CACF,CAAC;YACF,OAAO,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC;QAChC,CAAC,CAAA,CAAC;QAEF;;;;;;;;;;;;;;;WAeG;QACH,gBAAW,GAAG,CAAO,KAAgB,EAAiB,EAAE;YACtD,MAAM,GAAG,GAAG,MAAM,SAAS,CACzB,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,oCAAoC,EACzD;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;oBAC3B,eAAe,EAAE,KAAK;iBACvB,CAAC;aACH,CACF,CAAC;YACF,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC,CAAA,CAAC;QA3DA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CA2DF;AAED,OAAO,EACL,IAAI,EACJ,EAAE,EACF,EAAE,GAIH,CAAC;AAEF,qBAAqB;AAErB,SAAS,MAAM,CAAC,SAAc,EAAE,GAAY;IAC1C,IAAI,CAAC,SAAS,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,GAAG,CAAC,CAAC;KAC7C;AACH,CAAC;AAED;;GAEG;AACH,IAAI,cAAc,GAA6B,SAAS,CAAC;AAEzD,SAAS,SAAS;IAChB,MAAM,CACJ,cAAc,EACd,iEAAiE;QAC/D,0CAA0C,CAC7C,CAAC;IACF,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,IAAI,GAAG;IACX;;;;;;;;;;;;;;OAcG;IACG,WAAW,CAAC,KAAa;;YAC7B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAwC,MAAM,SAAS,CAC9D,GAAG,MAAM,CAAC,MAAM,uBAAuB,EACvC;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC;gBAClC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;aAChC,CACF,CAAC;YACF,OAAO,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC;QAChC,CAAC;KAAA;IACD;;;;;;;;;;;;;;;OAeG;IACG,WAAW,CAAC,KAAgB;;YAChC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAG,MAAM,SAAS,CACzB,GAAG,MAAM,CAAC,MAAM,oCAAoC,EACpD;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,QAAQ,EAAE,MAAM,CAAC,KAAK;oBACtB,eAAe,EAAE,KAAK;iBACvB,CAAC;aACH,CACF,CAAC;YACF,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC;KAAA;CACF,CAAC;AAEF;;;GAGG;AACH,SAAS,KAAK,CACZ,KAAwB;IAExB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,OAAO,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,cAAc,EAAE;QAC/C,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC;QAClC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;KACvC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAS,QAAQ,CAAC,WAAkD;IAClE,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACxE,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,OAAO,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,iBAAiB,EAAE;QAClD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC;QAClC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;KACvC,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC"} |
+2
-2
| { | ||
| "name": "@instantdb/admin", | ||
| "version": "0.10.4", | ||
| "version": "0.10.5", | ||
| "description": "Admin SDK for Instant DB", | ||
@@ -27,5 +27,5 @@ "main": "dist/index.js", | ||
| "dependencies": { | ||
| "@instantdb/core": "0.10.4", | ||
| "@instantdb/core": "0.10.5", | ||
| "uuid": "^9.0.1" | ||
| } | ||
| } |
+45
-5
@@ -74,3 +74,2 @@ import { tx, TransactionChunk, getOps } from "@instantdb/core"; | ||
| type Config = { | ||
@@ -84,2 +83,7 @@ appId: string; | ||
| type ImpersonationOpts = | ||
| | { email: string } | ||
| | { token: AuthToken } | ||
| | { guest: true }; | ||
| const id = uuid.v4; | ||
@@ -96,5 +100,22 @@ | ||
| function authorizedHeaders(config: FilledConfig) { | ||
| function withImpersonation( | ||
| headers: { [key: string]: string }, | ||
| opts: ImpersonationOpts, | ||
| ) { | ||
| if ("email" in opts) { | ||
| headers["as-email"] = opts.email; | ||
| } else if ("token" in opts) { | ||
| headers["as-token"] = opts.token; | ||
| } else if ("guest" in opts) { | ||
| headers["as-guest"] = "true"; | ||
| } | ||
| return headers; | ||
| } | ||
| function authorizedHeaders( | ||
| config: FilledConfig, | ||
| impersonationOpts?: ImpersonationOpts, | ||
| ) { | ||
| const { adminToken, appId } = config; | ||
| return { | ||
| const headers = { | ||
| "content-type": "application/json", | ||
@@ -104,2 +125,5 @@ authorization: `Bearer ${adminToken}`, | ||
| }; | ||
| return impersonationOpts | ||
| ? withImpersonation(headers, impersonationOpts) | ||
| : headers; | ||
| } | ||
@@ -154,2 +178,3 @@ | ||
| auth: Auth; | ||
| impersonationOpts?: ImpersonationOpts; | ||
@@ -162,2 +187,17 @@ constructor(_config: Config) { | ||
| /** | ||
| * Sometimes you want to scope queries to a specific user. | ||
| * | ||
| * You can provide a user's auth token, email, or impersonate a guest. | ||
| * | ||
| * @see https://docs.instantdb.com/docs/backend#impersonating-users | ||
| * @example | ||
| * await db.asUser({email: "stopa@instantdb.com"}).query({ goals: {} }) | ||
| */ | ||
| asUser = (opts: ImpersonationOpts): InstantAdmin<Schema> => { | ||
| const newClient = new InstantAdmin<Schema>({ ...this.config }); | ||
| newClient.impersonationOpts = opts; | ||
| return newClient; | ||
| }; | ||
| /** | ||
| * Use this to query your data! | ||
@@ -182,3 +222,3 @@ * | ||
| method: "POST", | ||
| headers: authorizedHeaders(this.config), | ||
| headers: authorizedHeaders(this.config, this.impersonationOpts), | ||
| body: JSON.stringify({ query: query }), | ||
@@ -216,3 +256,3 @@ }); | ||
| method: "POST", | ||
| headers: authorizedHeaders(this.config), | ||
| headers: authorizedHeaders(this.config, this.impersonationOpts), | ||
| body: JSON.stringify({ steps: steps }), | ||
@@ -219,0 +259,0 @@ }); |
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
69273
9.78%1596
9.02%7
40%+ Added
- Removed
Updated