@turnkey/sdk-browser 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/LICENSE +201 -0
  3. package/README.md +38 -0
  4. package/dist/__generated__/sdk-client-base.d.ts +73 -0
  5. package/dist/__generated__/sdk-client-base.d.ts.map +1 -0
  6. package/dist/__generated__/sdk-client-base.js +600 -0
  7. package/dist/__generated__/sdk-client-base.js.map +1 -0
  8. package/dist/__generated__/sdk-client-base.mjs +598 -0
  9. package/dist/__generated__/sdk-client-base.mjs.map +1 -0
  10. package/dist/__generated__/sdk_api_types.d.ts +319 -0
  11. package/dist/__generated__/sdk_api_types.d.ts.map +1 -0
  12. package/dist/__generated__/version.d.ts +2 -0
  13. package/dist/__generated__/version.d.ts.map +1 -0
  14. package/dist/__generated__/version.js +6 -0
  15. package/dist/__generated__/version.js.map +1 -0
  16. package/dist/__generated__/version.mjs +4 -0
  17. package/dist/__generated__/version.mjs.map +1 -0
  18. package/dist/__inputs__/public_api.types.d.ts +3303 -0
  19. package/dist/__inputs__/public_api.types.d.ts.map +1 -0
  20. package/dist/__types__/base.d.ts +71 -0
  21. package/dist/__types__/base.d.ts.map +1 -0
  22. package/dist/__types__/base.js +23 -0
  23. package/dist/__types__/base.js.map +1 -0
  24. package/dist/__types__/base.mjs +21 -0
  25. package/dist/__types__/base.mjs.map +1 -0
  26. package/dist/constants.d.ts +4 -0
  27. package/dist/constants.d.ts.map +1 -0
  28. package/dist/constants.js +18 -0
  29. package/dist/constants.js.map +1 -0
  30. package/dist/constants.mjs +15 -0
  31. package/dist/constants.mjs.map +1 -0
  32. package/dist/index.d.ts +15 -0
  33. package/dist/index.d.ts.map +1 -0
  34. package/dist/index.js +60 -0
  35. package/dist/index.js.map +1 -0
  36. package/dist/index.mjs +7 -0
  37. package/dist/index.mjs.map +1 -0
  38. package/dist/models.d.ts +20 -0
  39. package/dist/models.d.ts.map +1 -0
  40. package/dist/sdk-client.d.ts +42 -0
  41. package/dist/sdk-client.d.ts.map +1 -0
  42. package/dist/sdk-client.js +263 -0
  43. package/dist/sdk-client.js.map +1 -0
  44. package/dist/sdk-client.mjs +260 -0
  45. package/dist/sdk-client.mjs.map +1 -0
  46. package/dist/storage.d.ts +16 -0
  47. package/dist/storage.d.ts.map +1 -0
  48. package/dist/storage.js +47 -0
  49. package/dist/storage.js.map +1 -0
  50. package/dist/storage.mjs +43 -0
  51. package/dist/storage.mjs.map +1 -0
  52. package/dist/turnkey-helpers.d.ts +10 -0
  53. package/dist/turnkey-helpers.d.ts.map +1 -0
  54. package/dist/turnkey-helpers.js +17 -0
  55. package/dist/turnkey-helpers.js.map +1 -0
  56. package/dist/turnkey-helpers.mjs +14 -0
  57. package/dist/turnkey-helpers.mjs.map +1 -0
  58. package/dist/utils.d.ts +4 -0
  59. package/dist/utils.d.ts.map +1 -0
  60. package/dist/utils.js +21 -0
  61. package/dist/utils.js.map +1 -0
  62. package/dist/utils.mjs +18 -0
  63. package/dist/utils.mjs.map +1 -0
  64. package/package.json +61 -0
@@ -0,0 +1,43 @@
1
+ var StorageKeys;
2
+ (function (StorageKeys) {
3
+ StorageKeys["CurrentSubOrganization"] = "@turnkey/current_sub_organization";
4
+ StorageKeys["CurrentUser"] = "@turnkey/current_user";
5
+ StorageKeys["CurrentSigningSession"] = "@turnkey/current_signing_session";
6
+ })(StorageKeys || (StorageKeys = {}));
7
+ var StorageLocation;
8
+ (function (StorageLocation) {
9
+ StorageLocation["Local"] = "local";
10
+ StorageLocation["Secure"] = "secure";
11
+ StorageLocation["Session"] = "session";
12
+ })(StorageLocation || (StorageLocation = {}));
13
+ const STORAGE_VALUE_LOCATIONS = {
14
+ [StorageKeys.CurrentSubOrganization]: StorageLocation.Local,
15
+ [StorageKeys.CurrentUser]: StorageLocation.Local,
16
+ [StorageKeys.CurrentSigningSession]: StorageLocation.Secure,
17
+ };
18
+ const STORAGE_LOCATIONS = {
19
+ [StorageLocation.Local]: localStorage,
20
+ [StorageLocation.Secure]: localStorage,
21
+ [StorageLocation.Session]: localStorage,
22
+ };
23
+ const getStorageValue = async (storageKey) => {
24
+ const storageLocation = STORAGE_VALUE_LOCATIONS[storageKey];
25
+ const browserStorageLocation = STORAGE_LOCATIONS[storageLocation];
26
+ const storageItem = browserStorageLocation.getItem(storageKey);
27
+ return storageItem ? JSON.parse(storageItem) : undefined;
28
+ };
29
+ const setStorageValue = async (storageKey, storageValue) => {
30
+ const storageLocation = STORAGE_VALUE_LOCATIONS[storageKey];
31
+ const browserStorageLocation = STORAGE_LOCATIONS[storageLocation];
32
+ browserStorageLocation.setItem(storageKey, JSON.stringify(storageValue));
33
+ // eventEmitter.emit('storageChange', { storageKey, storageValue });
34
+ };
35
+ const removeStorageValue = async (storageKey) => {
36
+ const storageLocation = STORAGE_VALUE_LOCATIONS[storageKey];
37
+ const browserStorageLocation = STORAGE_LOCATIONS[storageLocation];
38
+ browserStorageLocation.removeItem(storageKey);
39
+ // eventEmitter.emit('storageChange', { storageKey, storageValue: undefined });
40
+ };
41
+
42
+ export { StorageKeys, getStorageValue, removeStorageValue, setStorageValue };
43
+ //# sourceMappingURL=storage.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.mjs","sources":["../src/storage.ts"],"sourcesContent":[null],"names":[],"mappings":"IAEY,YAIX;AAJD,CAAA,UAAY,WAAW,EAAA;AACrB,IAAA,WAAA,CAAA,wBAAA,CAAA,GAAA,mCAA4D,CAAA;AAC5D,IAAA,WAAA,CAAA,aAAA,CAAA,GAAA,uBAAqC,CAAA;AACrC,IAAA,WAAA,CAAA,uBAAA,CAAA,GAAA,kCAA0D,CAAA;AAC5D,CAAC,EAJW,WAAW,KAAX,WAAW,GAItB,EAAA,CAAA,CAAA,CAAA;AAQD,IAAK,eAIJ,CAAA;AAJD,CAAA,UAAK,eAAe,EAAA;AAClB,IAAA,eAAA,CAAA,OAAA,CAAA,GAAA,OAAe,CAAA;AACf,IAAA,eAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,eAAA,CAAA,SAAA,CAAA,GAAA,SAAmB,CAAA;AACrB,CAAC,EAJI,eAAe,KAAf,eAAe,GAInB,EAAA,CAAA,CAAA,CAAA;AAED,MAAM,uBAAuB,GAAyC;AACpE,IAAA,CAAC,WAAW,CAAC,sBAAsB,GAAG,eAAe,CAAC,KAAK;AAC3D,IAAA,CAAC,WAAW,CAAC,WAAW,GAAG,eAAe,CAAC,KAAK;AAChD,IAAA,CAAC,WAAW,CAAC,qBAAqB,GAAG,eAAe,CAAC,MAAM;CAC5D,CAAC;AAEF,MAAM,iBAAiB,GAAG;AACxB,IAAA,CAAC,eAAe,CAAC,KAAK,GAAG,YAAY;AACrC,IAAA,CAAC,eAAe,CAAC,MAAM,GAAG,YAAY;AACtC,IAAA,CAAC,eAAe,CAAC,OAAO,GAAG,YAAY;CACxC,CAAC;MAEW,eAAe,GAAG,OAC7B,UAAa,KAC2B;AACxC,IAAA,MAAM,eAAe,GAAoB,uBAAuB,CAAC,UAAU,CAAC,CAAC;AAC7E,IAAA,MAAM,sBAAsB,GAAY,iBAAiB,CAAC,eAAe,CAAC,CAAC;IAC3E,MAAM,WAAW,GAAG,sBAAsB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAC/D,IAAA,OAAO,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC;AAC3D,EAAE;AAEW,MAAA,eAAe,GAAG,OAC7B,UAAa,EACb,YAA6B,KACb;AAChB,IAAA,MAAM,eAAe,GAAoB,uBAAuB,CAAC,UAAU,CAAC,CAAC;AAC7E,IAAA,MAAM,sBAAsB,GAAY,iBAAiB,CAAC,eAAe,CAAC,CAAC;AAC3E,IAAA,sBAAsB,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;;AAE3E,EAAE;MAEW,kBAAkB,GAAG,OAChC,UAAa,KACI;AACjB,IAAA,MAAM,eAAe,GAAoB,uBAAuB,CAAC,UAAU,CAAC,CAAC;AAC7E,IAAA,MAAM,sBAAsB,GAAY,iBAAiB,CAAC,eAAe,CAAC,CAAC;AAC3E,IAAA,sBAAsB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;;AAEhD;;;;"}
@@ -0,0 +1,10 @@
1
+ interface WalletAccount {
2
+ curve: "CURVE_SECP256K1" | "CURVE_ED25519";
3
+ pathFormat: "PATH_FORMAT_BIP32";
4
+ path: string;
5
+ addressFormat: "ADDRESS_FORMAT_ETHEREUM" | "ADDRESS_FORMAT_UNCOMPRESSED" | "ADDRESS_FORMAT_COMPRESSED" | "ADDRESS_FORMAT_SOLANA" | "ADDRESS_FORMAT_COSMOS" | "ADDRESS_FORMAT_TRON";
6
+ }
7
+ export declare const defaultEthereumAccountAtIndex: (pathIndex: number) => WalletAccount;
8
+ export declare const DEFAULT_ETHEREUM_ACCOUNTS: WalletAccount[];
9
+ export {};
10
+ //# sourceMappingURL=turnkey-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turnkey-helpers.d.ts","sourceRoot":"","sources":["../src/turnkey-helpers.ts"],"names":[],"mappings":"AAAA,UAAU,aAAa;IACrB,KAAK,EAAE,iBAAiB,GAAG,eAAe,CAAC;IAC3C,UAAU,EAAE,mBAAmB,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EACT,yBAAyB,GACzB,6BAA6B,GAC7B,2BAA2B,GAC3B,uBAAuB,GACvB,uBAAuB,GACvB,qBAAqB,CAAC;CAC3B;AAED,eAAO,MAAM,6BAA6B,cAC7B,MAAM,KAChB,aAOF,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,aAAa,EAEpD,CAAC"}
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ const defaultEthereumAccountAtIndex = (pathIndex) => {
4
+ return {
5
+ curve: "CURVE_SECP256K1",
6
+ pathFormat: "PATH_FORMAT_BIP32",
7
+ path: `m/44'/60'/${pathIndex}'/0/0`,
8
+ addressFormat: "ADDRESS_FORMAT_ETHEREUM",
9
+ };
10
+ };
11
+ const DEFAULT_ETHEREUM_ACCOUNTS = [
12
+ defaultEthereumAccountAtIndex(0),
13
+ ];
14
+
15
+ exports.DEFAULT_ETHEREUM_ACCOUNTS = DEFAULT_ETHEREUM_ACCOUNTS;
16
+ exports.defaultEthereumAccountAtIndex = defaultEthereumAccountAtIndex;
17
+ //# sourceMappingURL=turnkey-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turnkey-helpers.js","sources":["../src/turnkey-helpers.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAaa,MAAA,6BAA6B,GAAG,CAC3C,SAAiB,KACA;IACjB,OAAO;AACL,QAAA,KAAK,EAAE,iBAAiB;AACxB,QAAA,UAAU,EAAE,mBAAmB;QAC/B,IAAI,EAAE,CAAa,UAAA,EAAA,SAAS,CAAO,KAAA,CAAA;AACnC,QAAA,aAAa,EAAE,yBAAyB;KACzC,CAAC;AACJ,EAAE;AAEW,MAAA,yBAAyB,GAAoB;IACxD,6BAA6B,CAAC,CAAC,CAAC;;;;;;"}
@@ -0,0 +1,14 @@
1
+ const defaultEthereumAccountAtIndex = (pathIndex) => {
2
+ return {
3
+ curve: "CURVE_SECP256K1",
4
+ pathFormat: "PATH_FORMAT_BIP32",
5
+ path: `m/44'/60'/${pathIndex}'/0/0`,
6
+ addressFormat: "ADDRESS_FORMAT_ETHEREUM",
7
+ };
8
+ };
9
+ const DEFAULT_ETHEREUM_ACCOUNTS = [
10
+ defaultEthereumAccountAtIndex(0),
11
+ ];
12
+
13
+ export { DEFAULT_ETHEREUM_ACCOUNTS, defaultEthereumAccountAtIndex };
14
+ //# sourceMappingURL=turnkey-helpers.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turnkey-helpers.mjs","sources":["../src/turnkey-helpers.ts"],"sourcesContent":[null],"names":[],"mappings":"AAaa,MAAA,6BAA6B,GAAG,CAC3C,SAAiB,KACA;IACjB,OAAO;AACL,QAAA,KAAK,EAAE,iBAAiB;AACxB,QAAA,UAAU,EAAE,mBAAmB;QAC/B,IAAI,EAAE,CAAa,UAAA,EAAA,SAAS,CAAO,KAAA,CAAA;AACnC,QAAA,aAAa,EAAE,yBAAyB;KACzC,CAAC;AACJ,EAAE;AAEW,MAAA,yBAAyB,GAAoB;IACxD,6BAA6B,CAAC,CAAC,CAAC;;;;;"}
@@ -0,0 +1,4 @@
1
+ export declare const generateRandomBuffer: () => ArrayBuffer;
2
+ export declare const base64UrlEncode: (challenge: ArrayBuffer) => string;
3
+ export declare const bytesToHex: (bytes: Uint8Array) => string;
4
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB,QAAO,WAIvC,CAAC;AAEF,eAAO,MAAM,eAAe,cAAe,WAAW,KAAG,MAMxD,CAAC;AAMF,eAAO,MAAM,UAAU,UAAW,UAAU,KAAG,MAO9C,CAAC"}
package/dist/utils.js ADDED
@@ -0,0 +1,21 @@
1
+ 'use strict';
2
+
3
+ var buffer = require('buffer');
4
+
5
+ const generateRandomBuffer = () => {
6
+ const arr = new Uint8Array(32);
7
+ crypto.getRandomValues(arr);
8
+ return arr.buffer;
9
+ };
10
+ const base64UrlEncode = (challenge) => {
11
+ return buffer.Buffer.from(challenge)
12
+ .toString("base64")
13
+ .replace(/\+/g, "-")
14
+ .replace(/\//g, "_")
15
+ .replace(/=/g, "");
16
+ };
17
+ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, "0"));
18
+
19
+ exports.base64UrlEncode = base64UrlEncode;
20
+ exports.generateRandomBuffer = generateRandomBuffer;
21
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sources":["../src/utils.ts"],"sourcesContent":[null],"names":["Buffer"],"mappings":";;;;AAEO,MAAM,oBAAoB,GAAG,MAAkB;AACpD,IAAA,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;AAC/B,IAAA,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IAC5B,OAAO,GAAG,CAAC,MAAM,CAAC;AACpB,EAAE;AAEW,MAAA,eAAe,GAAG,CAAC,SAAsB,KAAY;AAChE,IAAA,OAAOA,aAAM,CAAC,IAAI,CAAC,SAAS,CAAC;SAC1B,QAAQ,CAAC,QAAQ,CAAC;AAClB,SAAA,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;AACnB,SAAA,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;AACnB,SAAA,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AACvB,EAAE;AAEgB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KACjD,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;;;;;"}
package/dist/utils.mjs ADDED
@@ -0,0 +1,18 @@
1
+ import { Buffer } from 'buffer';
2
+
3
+ const generateRandomBuffer = () => {
4
+ const arr = new Uint8Array(32);
5
+ crypto.getRandomValues(arr);
6
+ return arr.buffer;
7
+ };
8
+ const base64UrlEncode = (challenge) => {
9
+ return Buffer.from(challenge)
10
+ .toString("base64")
11
+ .replace(/\+/g, "-")
12
+ .replace(/\//g, "_")
13
+ .replace(/=/g, "");
14
+ };
15
+ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, "0"));
16
+
17
+ export { base64UrlEncode, generateRandomBuffer };
18
+ //# sourceMappingURL=utils.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.mjs","sources":["../src/utils.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAEO,MAAM,oBAAoB,GAAG,MAAkB;AACpD,IAAA,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;AAC/B,IAAA,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IAC5B,OAAO,GAAG,CAAC,MAAM,CAAC;AACpB,EAAE;AAEW,MAAA,eAAe,GAAG,CAAC,SAAsB,KAAY;AAChE,IAAA,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;SAC1B,QAAQ,CAAC,QAAQ,CAAC;AAClB,SAAA,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;AACnB,SAAA,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;AACnB,SAAA,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AACvB,EAAE;AAEgB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KACjD,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;;;;"}
package/package.json ADDED
@@ -0,0 +1,61 @@
1
+ {
2
+ "name": "@turnkey/sdk-browser",
3
+ "version": "0.0.1",
4
+ "main": "./dist/index.js",
5
+ "module": "./dist/index.mjs",
6
+ "exports": {
7
+ ".": {
8
+ "types": "./dist/index.d.ts",
9
+ "import": "./dist/index.mjs",
10
+ "require": "./dist/index.js",
11
+ "default": "./dist/index.mjs"
12
+ }
13
+ },
14
+ "types": "./dist/index.d.ts",
15
+ "license": "Apache-2.0",
16
+ "description": "Javascript Browser SDK",
17
+ "keywords": [
18
+ "Turnkey"
19
+ ],
20
+ "author": {
21
+ "name": "Turnkey",
22
+ "url": "https://turnkey.com"
23
+ },
24
+ "homepage": "https://github.com/tkhq/sdk",
25
+ "bugs": {
26
+ "url": "https://github.com/tkhq/sdk/issues"
27
+ },
28
+ "repository": {
29
+ "type": "git",
30
+ "url": "https://github.com/tkhq/sdk.git",
31
+ "directory": "packages/sdk-browser"
32
+ },
33
+ "files": [
34
+ "dist/",
35
+ "CHANGELOG.md"
36
+ ],
37
+ "publishConfig": {
38
+ "access": "public"
39
+ },
40
+ "dependencies": {
41
+ "buffer": "^6.0.3",
42
+ "elliptic": "^6.5.5",
43
+ "@turnkey/api-key-stamper": "0.4.0",
44
+ "@turnkey/http": "2.10.0",
45
+ "@turnkey/iframe-stamper": "1.2.0",
46
+ "@turnkey/webauthn-stamper": "0.5.0"
47
+ },
48
+ "devDependencies": {
49
+ "@types/elliptic": "^6.4.18",
50
+ "glob": "^8.0.3"
51
+ },
52
+ "engines": {
53
+ "node": ">=18.0.0"
54
+ },
55
+ "scripts": {
56
+ "version": "node -p \"'export const VERSION = ' + JSON.stringify(require('./package.json').name + '@' + require('./package.json').version) + ';'\" > src/__generated__/version.ts",
57
+ "build": "rollup -c",
58
+ "clean": "rimraf ./dist ./.cache",
59
+ "typecheck": "tsc -p tsconfig.typecheck.json"
60
+ }
61
+ }