Launch Week Day 5: Introducing Reachability for PHP.Learn More
Socket
Book a DemoSign in
Socket

@instantdb/admin

Package Overview
Dependencies
Maintainers
4
Versions
2835
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@instantdb/admin - npm Package Compare versions

Comparing version
0.10.4
to
0.10.5
+18
-0
dist/index.d.ts

@@ -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

@@ -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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"}

@@ -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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAA+D;AA2R7D,mFA3RO,SAAE,OA2RP;AA1RJ,2CAA6B;AAiF7B,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;AAwMjB,gBAAE;AAtMJ,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;AAkJC,oBAAI;AAhJN;;;;;;;;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,IAAA,aAAM,EAAC,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;AAWD,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;AAgCO,oBAAI;AA9Bb;;;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;AAiBc,sBAAK;AAfpB;;;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,IAAA,aAAM,EAAC,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;AAEqB,4BAAQ"}
{"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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"}

@@ -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":"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"}
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
{
"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"
}
}

@@ -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 @@ });